X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fisdcf_metadata_dialog.cc;h=3d79f3bf6db5f6377538cdb43fbad686ca4a7176;hb=017bb6a9c8521092c245739e12925dd50f7581ff;hp=297f54fa1316aad8560e9027b3b938daae2e4310;hpb=9c1bb2e5ca7c80c4e26b1b2e41159aa171360a94;p=dcpomatic.git diff --git a/src/wx/isdcf_metadata_dialog.cc b/src/wx/isdcf_metadata_dialog.cc index 297f54fa1..3d79f3bf6 100644 --- a/src/wx/isdcf_metadata_dialog.cc +++ b/src/wx/isdcf_metadata_dialog.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2018 Carl Hetherington + Copyright (C) 2012-2019 Carl Hetherington This file is part of DCP-o-matic. @@ -41,8 +41,15 @@ ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm, bo add (_("Audio Language (e.g. EN)"), true); _audio_language = add (new wxTextCtrl (this, wxID_ANY)); - add (_("Subtitle Language (e.g. FR)"), true); - _subtitle_language = add (new wxTextCtrl (this, wxID_ANY)); + _enable_subtitle_language = add (new wxCheckBox(this, wxID_ANY, _("Subtitle language (e.g. FR)"))); + _subtitle_language = add (new wxTextCtrl(this, wxID_ANY)); + + wxStaticText* subtitle_note = add (_("(use this to override languages specified\nin the 'timed text' tab)"), false); + wxFont font = subtitle_note->GetFont(); + font.SetStyle (wxFONTSTYLE_ITALIC); + font.SetPointSize (font.GetPointSize() - 1); + subtitle_note->SetFont (font); + add_spacer (); add (_("Territory (e.g. UK)"), true); _territory = add (new wxTextCtrl (this, wxID_ANY)); @@ -82,7 +89,8 @@ ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm, bo _content_version->SetValue (dm.content_version); _audio_language->SetValue (std_to_wx (dm.audio_language)); - _subtitle_language->SetValue (std_to_wx (dm.subtitle_language)); + _enable_subtitle_language->SetValue (static_cast(dm.subtitle_language)); + _subtitle_language->SetValue (std_to_wx(dm.subtitle_language.get_value_or(""))); _territory->SetValue (std_to_wx (dm.territory)); _rating->SetValue (std_to_wx (dm.rating)); _studio->SetValue (std_to_wx (dm.studio)); @@ -94,9 +102,19 @@ ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm, bo _two_d_version_of_three_d->SetValue (dm.two_d_version_of_three_d); _mastered_luminance->SetValue (std_to_wx (dm.mastered_luminance)); + _enable_subtitle_language->Bind (wxEVT_CHECKBOX, boost::bind(&ISDCFMetadataDialog::setup_sensitivity, this)); + + setup_sensitivity (); + layout (); } +void +ISDCFMetadataDialog::setup_sensitivity () +{ + _subtitle_language->Enable (_enable_subtitle_language->GetValue()); +} + ISDCFMetadata ISDCFMetadataDialog::isdcf_metadata () const { @@ -104,7 +122,9 @@ ISDCFMetadataDialog::isdcf_metadata () const dm.content_version = _content_version->GetValue (); dm.audio_language = wx_to_std (_audio_language->GetValue ()); - dm.subtitle_language = wx_to_std (_subtitle_language->GetValue ()); + if (_enable_subtitle_language->GetValue()) { + dm.subtitle_language = wx_to_std (_subtitle_language->GetValue()); + } dm.territory = wx_to_std (_territory->GetValue ()); dm.rating = wx_to_std (_rating->GetValue ()); dm.studio = wx_to_std (_studio->GetValue ());