void
TextPanel::film_changed (Film::Property property)
{
- if (property == Film::CONTENT || property == Film::REEL_TYPE) {
+ if (property == Film::CONTENT || property == Film::REEL_TYPE || property == Film::INTEROP) {
setup_sensitivity ();
}
}
string why_not;
bool const can_reference = dcp && dcp->can_reference_text (_parent->film(), _original_type, why_not);
- setup_refer_button (_reference, _reference_note, dcp, can_reference, why_not);
+ wxString cannot;
+ if (why_not.empty()) {
+ cannot = _("Cannot reference this DCP's subtitles or captions.");
+ } else {
+ cannot = _("Cannot reference this DCP's subtitles or captions: ") + std_to_wx(why_not);
+ }
+ setup_refer_button (_reference, _reference_note, dcp, can_reference, cannot);
bool const reference = _reference->GetValue ();
ContentList c = _parent->selected_text ();
DCPOMATIC_ASSERT (c.size() == 1);
- shared_ptr<Decoder> decoder = decoder_factory (_parent->film(), c.front(), false, shared_ptr<Decoder>());
+ shared_ptr<Decoder> decoder = decoder_factory (_parent->film(), c.front(), false, false, shared_ptr<Decoder>());
if (decoder) {
_text_view = new TextView (this, _parent->film(), c.front(), c.front()->text_of_original_type(_original_type), decoder, _parent->film_viewer());