Move labelling out of LanguageTagWidget.
authorCarl Hetherington <cth@carlh.net>
Tue, 17 Nov 2020 21:06:49 +0000 (22:06 +0100)
committerCarl Hetherington <cth@carlh.net>
Fri, 20 Nov 2020 21:57:59 +0000 (22:57 +0100)
src/wx/language_tag_widget.cc
src/wx/language_tag_widget.h
src/wx/smpte_metadata_dialog.cc

index 592741b4d4f589e92c99a75f943e69c1800e430a..f2f59f6888adcc5eef19ad22da9bf6888122d055 100644 (file)
 #include <wx/wx.h>
 
 
-LanguageTagWidget::LanguageTagWidget (wxWindow* parent, wxSizer* sizer, wxString label, wxString tooltip, dcp::LanguageTag tag)
+LanguageTagWidget::LanguageTagWidget (wxWindow* parent, wxString tooltip, dcp::LanguageTag tag)
        : _parent (parent)
+       , _sizer (new wxBoxSizer(wxHORIZONTAL))
 {
-       add_label_to_sizer(sizer, parent, label, true, 0, wxLEFT | wxRIGHT | wxALIGN_CENTER_VERTICAL);
-       wxSizer* s = new wxBoxSizer (wxHORIZONTAL);
        _language = new wxStaticText (parent, wxID_ANY, wxT(""));
        _language->SetToolTip (tooltip);
        set (tag);
-       s->Add (_language, 1, wxLEFT | wxALIGN_CENTER_VERTICAL, DCPOMATIC_SIZER_X_GAP);
+       _sizer->Add (_language, 1, wxLEFT | wxALIGN_CENTER_VERTICAL, DCPOMATIC_SIZER_X_GAP);
        _edit = new Button (parent, _("Edit..."));
-       s->Add (_edit, 0, wxLEFT, DCPOMATIC_SIZER_GAP);
-       sizer->Add (s, 0, wxEXPAND);
+       _sizer->Add (_edit, 0, wxLEFT, DCPOMATIC_SIZER_GAP);
 
        _edit->Bind (wxEVT_BUTTON, boost::bind(&LanguageTagWidget::edit, this));
 }
index eee72f6a087296370ea2978a0a3787878ec6fda1..3cfca013df4ef6eef10d69fda56f86a892bcbf5d 100644 (file)
@@ -34,7 +34,11 @@ class wxWindow;
 class LanguageTagWidget : public boost::noncopyable
 {
 public:
-       LanguageTagWidget (wxWindow* parent, wxSizer* sizer, wxString label, wxString tooltip, dcp::LanguageTag tag);
+       LanguageTagWidget (wxWindow* parent, wxString tooltip, dcp::LanguageTag tag);
+
+       wxSizer* sizer () const {
+               return _sizer;
+       }
 
        void set (dcp::LanguageTag tag);
 
@@ -47,5 +51,6 @@ private:
        wxButton* _edit;
        wxWindow* _parent;
        dcp::LanguageTag _tag;
+       wxSizer* _sizer;
 };
 
index 7ff9c6c52286634bbd0a62621b2025333accb99b..3011cb2832e09d8b44a3e4a7802e7fb579b3c18c 100644 (file)
@@ -67,21 +67,21 @@ SMPTEMetadataDialog::SMPTEMetadataDialog (wxWindow* parent, weak_ptr<Film> weak_
        wxFlexGridSizer* sizer = new wxFlexGridSizer (2, DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
        sizer->AddGrowableCol (1, 1);
 
+       add_label_to_sizer (sizer, this, _("Title language"), true, 0, wxLEFT | wxRIGHT | wxALIGN_CENTER_VERTICAL);
        _name_language = new LanguageTagWidget(
                this,
-               sizer,
-               _("Title language"),
                wxString::Format(_("The language that the film's title (\"%s\") is in"), std_to_wx(film()->name())),
                film()->name_language()
                );
+       sizer->Add (_name_language->sizer(), 0, wxEXPAND);
 
+       add_label_to_sizer (sizer, this, _("Audio language"), true, 0, wxLEFT | wxRIGHT | wxALIGN_CENTER_VERTICAL);
        _audio_language = new LanguageTagWidget(
                this,
-               sizer,
-               _("Audio language"),
                _("The main language that is spoken in the film's soundtrack"),
                film()->audio_language()
                );
+       sizer->Add (_audio_language->sizer(), 0, wxEXPAND);
 
        Button* edit_release_territory = 0;
        add_label_to_sizer (sizer, this, _("Release territory"), true, 0, wxLEFT | wxRIGHT | wxALIGN_CENTER_VERTICAL);