X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fsmpte_metadata_dialog.cc;h=470e9317e8073a26a61ac77d66bc523d47b55af4;hb=e0a70cd5cfb11fc2de167f3146acdd437a6faa82;hp=36cf4848918d756e8b088c9ee83637819446ce4d;hpb=8640da877450479a85c73b2a921897d83b478c84;p=dcpomatic.git diff --git a/src/wx/smpte_metadata_dialog.cc b/src/wx/smpte_metadata_dialog.cc index 36cf48489..470e9317e 100644 --- a/src/wx/smpte_metadata_dialog.cc +++ b/src/wx/smpte_metadata_dialog.cc @@ -91,38 +91,6 @@ SMPTEMetadataDialog::main_panel (wxWindow* parent) ); sizer->Add (_audio_language->sizer(), 0, wxEXPAND); - _enable_main_subtitle_language = new wxCheckBox (panel, wxID_ANY, _("Main subtitle language")); - sizer->Add (_enable_main_subtitle_language, 0, wxRIGHT | wxALIGN_CENTER_VERTICAL, DCPOMATIC_SIZER_GAP); - auto subtitle_languages = film()->subtitle_languages(); - _main_subtitle_language = new LanguageTagWidget( - panel, - _("The main language that is displayed in the film's subtitles"), - subtitle_languages.empty() ? dcp::LanguageTag("en-US") : subtitle_languages.front() - ); - sizer->Add (_main_subtitle_language->sizer(), 0, wxEXPAND); - - { - int flags = wxALIGN_TOP | wxRIGHT | wxTOP; -#ifdef __WXOSX__ - flags |= wxALIGN_RIGHT; -#endif - auto m = create_label (panel, _("Additional subtitle languages"), true); - sizer->Add (m, 0, flags, DCPOMATIC_SIZER_GAP); - } - - vector columns; - columns.push_back (EditableListColumn("Language", 250, true)); - _additional_subtitle_languages = new EditableList ( - panel, - columns, - boost::bind(&SMPTEMetadataDialog::additional_subtitle_languages, this), - boost::bind(&SMPTEMetadataDialog::set_additional_subtitle_languages, this, _1), - boost::bind(&additional_subtitle_language_column, _1, _2), - true, - false - ); - sizer->Add (_additional_subtitle_languages, 1, wxEXPAND); - { int flags = wxALIGN_TOP | wxRIGHT | wxTOP; #ifdef __WXOSX__ @@ -132,7 +100,7 @@ SMPTEMetadataDialog::main_panel (wxWindow* parent) sizer->Add (m, 0, flags, DCPOMATIC_SIZER_GAP); } - columns.clear (); + vector columns; columns.push_back (EditableListColumn("Agency", 200, true)); columns.push_back (EditableListColumn("Label", 50, true)); _ratings = new EditableList ( @@ -267,9 +235,7 @@ SMPTEMetadataDialog::SMPTEMetadataDialog (wxWindow* parent, weak_ptr weak_ _name_language->Changed.connect (boost::bind(&SMPTEMetadataDialog::name_language_changed, this, _1)); _audio_language->Changed.connect (boost::bind(&SMPTEMetadataDialog::audio_language_changed, this, _1)); - _enable_main_subtitle_language->Bind (wxEVT_CHECKBOX, boost::bind(&SMPTEMetadataDialog::enable_main_subtitle_changed, this)); _edit_release_territory->Bind (wxEVT_BUTTON, boost::bind(&SMPTEMetadataDialog::edit_release_territory, this)); - _main_subtitle_language->Changed.connect (boost::bind(&SMPTEMetadataDialog::main_subtitle_language_changed, this, _1)); _version_number->Bind (wxEVT_SPINCTRL, boost::bind(&SMPTEMetadataDialog::version_number_changed, this)); _status->Bind (wxEVT_CHOICE, boost::bind(&SMPTEMetadataDialog::status_changed, this)); _enable_chain->Bind (wxEVT_CHECKBOX, boost::bind(&SMPTEMetadataDialog::enable_chain_changed, this)); @@ -362,14 +328,6 @@ SMPTEMetadataDialog::film_changed (ChangeType type, Film::Property property) checked_set (_luminance_value, 4.5); checked_set (_luminance_unit, 1); } - } else if (property == Film::Property::SUBTITLE_LANGUAGES) { - auto languages = film()->subtitle_languages(); - checked_set (_enable_main_subtitle_language, !languages.empty()); - if (!languages.empty()) { - _main_subtitle_language->set (languages.front()); - } else { - _main_subtitle_language->set (dcp::LanguageTag("en-US")); - } } } @@ -495,20 +453,6 @@ SMPTEMetadataDialog::luminance_changed () } -void -SMPTEMetadataDialog::enable_main_subtitle_changed () -{ - setup_sensitivity (); - if (_enable_main_subtitle_language->GetValue()) { - film()->set_subtitle_language (_main_subtitle_language->get()); - } else { - set_additional_subtitle_languages (vector()); - _additional_subtitle_languages->refresh (); - film()->unset_subtitle_language (); - } -} - - void SMPTEMetadataDialog::setup_sensitivity () { @@ -521,49 +465,6 @@ SMPTEMetadataDialog::setup_sensitivity () _chain->Enable (_enable_chain->GetValue()); _distributor->Enable (_enable_distributor->GetValue()); _facility->Enable (_enable_facility->GetValue()); - - { - auto const enabled = _enable_main_subtitle_language->GetValue(); - _main_subtitle_language->enable (enabled); - _additional_subtitle_languages->Enable (enabled); - } -} - - -void -SMPTEMetadataDialog::main_subtitle_language_changed (dcp::LanguageTag tag) -{ - auto existing = film()->subtitle_languages(); - if (existing.empty()) { - existing.push_back (tag); - } else { - existing[0] = tag; - } - - film()->set_subtitle_languages (existing); -} - - -vector -SMPTEMetadataDialog::additional_subtitle_languages () -{ - auto all = film()->subtitle_languages(); - if (all.empty()) { - return all; - } - - return vector(all.begin() + 1, all.end()); -} - - -void -SMPTEMetadataDialog::set_additional_subtitle_languages (vector languages) -{ - auto all = film()->subtitle_languages(); - DCPOMATIC_ASSERT (!all.empty()); - all.resize (1); - copy (languages.begin(), languages.end(), back_inserter(all)); - film()->set_subtitle_languages (all); }