diff options
| author | Carl Hetherington <cth@carlh.net> | 2020-11-20 16:52:56 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2020-11-20 23:47:03 +0100 |
| commit | d5bdc5cf073987043ace62378b02ffee5af818bd (patch) | |
| tree | 4192a00f8d073149a145fe768d07c0abb4360686 | |
| parent | 4347d97b703cfddcd322051092ccfcd5b5a6b941 (diff) | |
Use a LanguageTag for closed caption tracks.
| -rw-r--r-- | src/lib/reel_writer.cc | 2 | ||||
| -rw-r--r-- | src/wx/dcp_text_track_dialog.cc | 12 | ||||
| -rw-r--r-- | src/wx/dcp_text_track_dialog.h | 6 |
3 files changed, 15 insertions, 5 deletions
diff --git a/src/lib/reel_writer.cc b/src/lib/reel_writer.cc index 345bcdeb3..fa84180f0 100644 --- a/src/lib/reel_writer.cc +++ b/src/lib/reel_writer.cc @@ -608,7 +608,7 @@ ReelWriter::create_reel (list<ReferencedReelAsset> const & refs, list<shared_ptr ); if (a) { a->set_annotation_text (i->first.name); - a->set_language (i->first.language); + a->set_language (dcp::LanguageTag(i->first.language)); } } diff --git a/src/wx/dcp_text_track_dialog.cc b/src/wx/dcp_text_track_dialog.cc index d48b3be26..3e8750cd5 100644 --- a/src/wx/dcp_text_track_dialog.cc +++ b/src/wx/dcp_text_track_dialog.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2018 Carl Hetherington <cth@carlh.net> + Copyright (C) 2020 Carl Hetherington <cth@carlh.net> This file is part of DCP-o-matic. @@ -18,24 +18,30 @@ */ + #include "dcp_text_track_dialog.h" +#include "language_tag_widget.h" #include <boost/algorithm/string.hpp> + using std::string; + DCPTextTrackDialog::DCPTextTrackDialog (wxWindow* parent) : TableDialog (parent, _("DCP Text Track"), 2, 1, true) { add (_("Name"), true); add (_name = new wxTextCtrl (this, wxID_ANY, wxT(""), wxDefaultPosition, wxSize(300, -1))); add (_("Language"), true); - add (_language = new wxTextCtrl (this, wxID_ANY, wxT(""), wxDefaultPosition, wxSize(150, -1))); + _language = new LanguageTagWidget (this, wxT(""), dcp::LanguageTag("en-US")); + add (_language->sizer()); layout (); } + DCPTextTrack DCPTextTrackDialog::get () const { - return DCPTextTrack(wx_to_std(_name->GetValue()), wx_to_std(_language->GetValue())); + return DCPTextTrack(wx_to_std(_name->GetValue()), _language->get().to_string()); } diff --git a/src/wx/dcp_text_track_dialog.h b/src/wx/dcp_text_track_dialog.h index dd4894aeb..c07369637 100644 --- a/src/wx/dcp_text_track_dialog.h +++ b/src/wx/dcp_text_track_dialog.h @@ -25,6 +25,10 @@ #include "wx_util.h" #include "lib/dcp_text_track.h" + +class LanguageTagWidget; + + class DCPTextTrackDialog : public TableDialog { public: @@ -34,7 +38,7 @@ public: private: wxTextCtrl* _name; - wxTextCtrl* _language; + LanguageTagWidget* _language; }; #endif |
