summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2022-11-24 23:56:38 +0100
committerCarl Hetherington <cth@carlh.net>2022-11-24 23:56:38 +0100
commitf28e2730421afc168a3c6026f30bccf7118b2bb2 (patch)
treedbf59779a4e19feeb29f14ab2ada2e1394f4e67a /src
parentde75a5f4affe3d81ff6a0cb12bf8c25de9a643de (diff)
Extract RegionSubtagDialog to its own files.
Diffstat (limited to 'src')
-rw-r--r--src/wx/full_language_tag_dialog.cc26
-rw-r--r--src/wx/full_language_tag_dialog.h13
-rw-r--r--src/wx/metadata_dialog.cc1
-rw-r--r--src/wx/region_subtag_dialog.cc54
-rw-r--r--src/wx/region_subtag_dialog.h42
-rw-r--r--src/wx/wscript1
6 files changed, 98 insertions, 39 deletions
diff --git a/src/wx/full_language_tag_dialog.cc b/src/wx/full_language_tag_dialog.cc
index c88044088..5f0aca1e5 100644
--- a/src/wx/full_language_tag_dialog.cc
+++ b/src/wx/full_language_tag_dialog.cc
@@ -287,29 +287,3 @@ FullLanguageTagDialog::setup_sensitivity ()
_remove->Enable (selected > 0);
}
-
-RegionSubtagDialog::RegionSubtagDialog (wxWindow* parent, dcp::LanguageTag::RegionSubtag region)
- : wxDialog (parent, wxID_ANY, _("Region"), wxDefaultPosition, wxSize(-1, 500))
- , _panel (new LanguageSubtagPanel (this))
-{
- auto sizer = new wxBoxSizer (wxVERTICAL);
- sizer->Add (_panel, 1);
-
- auto buttons = CreateSeparatedButtonSizer (wxOK);
- if (buttons) {
- sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
- }
-
- SetSizer (sizer);
-
- _panel->set (dcp::LanguageTag::SubtagType::REGION, "", *dcp::LanguageTag::get_subtag_data(region));
-}
-
-
-optional<dcp::LanguageTag::RegionSubtag>
-RegionSubtagDialog::get () const
-{
- return _panel->get ();
-}
-
-
diff --git a/src/wx/full_language_tag_dialog.h b/src/wx/full_language_tag_dialog.h
index 99f1c3267..1dbdeacb1 100644
--- a/src/wx/full_language_tag_dialog.h
+++ b/src/wx/full_language_tag_dialog.h
@@ -76,17 +76,4 @@ private:
};
-
-class RegionSubtagDialog : public wxDialog
-{
-public:
- RegionSubtagDialog (wxWindow* parent, dcp::LanguageTag::RegionSubtag region);
-
- boost::optional<dcp::LanguageTag::RegionSubtag> get () const;
-
-private:
- LanguageSubtagPanel* _panel;
-};
-
-
#endif
diff --git a/src/wx/metadata_dialog.cc b/src/wx/metadata_dialog.cc
index b7156adc3..2b9c967f9 100644
--- a/src/wx/metadata_dialog.cc
+++ b/src/wx/metadata_dialog.cc
@@ -27,6 +27,7 @@
#include "language_tag_widget.h"
#include "metadata_dialog.h"
#include "rating_dialog.h"
+#include "region_subtag_dialog.h"
#include "wx_util.h"
#include "lib/film.h"
#include <dcp/warnings.h>
diff --git a/src/wx/region_subtag_dialog.cc b/src/wx/region_subtag_dialog.cc
new file mode 100644
index 000000000..96048cb06
--- /dev/null
+++ b/src/wx/region_subtag_dialog.cc
@@ -0,0 +1,54 @@
+/*
+ Copyright (C) 2020-2021 Carl Hetherington <cth@carlh.net>
+
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ DCP-o-matic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#include "language_subtag_panel.h"
+#include "region_subtag_dialog.h"
+#include <wx/wx.h>
+
+
+using boost::optional;
+
+
+RegionSubtagDialog::RegionSubtagDialog(wxWindow* parent, dcp::LanguageTag::RegionSubtag region)
+ : wxDialog(parent, wxID_ANY, _("Region"), wxDefaultPosition, wxSize(-1, 500))
+ , _panel(new LanguageSubtagPanel (this))
+{
+ auto sizer = new wxBoxSizer(wxVERTICAL);
+ sizer->Add (_panel, 1);
+
+ auto buttons = CreateSeparatedButtonSizer(wxOK);
+ if (buttons) {
+ sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
+ }
+
+ SetSizer(sizer);
+
+ _panel->set(dcp::LanguageTag::SubtagType::REGION, "", *dcp::LanguageTag::get_subtag_data(region));
+}
+
+
+optional<dcp::LanguageTag::RegionSubtag>
+RegionSubtagDialog::get () const
+{
+ return _panel->get();
+}
+
+
diff --git a/src/wx/region_subtag_dialog.h b/src/wx/region_subtag_dialog.h
new file mode 100644
index 000000000..2a0204ee0
--- /dev/null
+++ b/src/wx/region_subtag_dialog.h
@@ -0,0 +1,42 @@
+/*
+ Copyright (C) 2020-2021 Carl Hetherington <cth@carlh.net>
+
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ DCP-o-matic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#include <dcp/language_tag.h>
+#include <wx/wx.h>
+#include <boost/optional.hpp>
+
+
+class LanguageSubtagPanel;
+
+
+class RegionSubtagDialog : public wxDialog
+{
+public:
+ RegionSubtagDialog (wxWindow* parent, dcp::LanguageTag::RegionSubtag region);
+
+ boost::optional<dcp::LanguageTag::RegionSubtag> get () const;
+
+private:
+ LanguageSubtagPanel* _panel;
+};
+
+
+
diff --git a/src/wx/wscript b/src/wx/wscript
index adbdcad44..5677a9cda 100644
--- a/src/wx/wscript
+++ b/src/wx/wscript
@@ -126,6 +126,7 @@ sources = """
recipients_panel.cc
recipient_dialog.cc
recreate_chain_dialog.cc
+ region_subtag_dialog.cc
repeat_dialog.cc
report_problem_dialog.cc
rename_template_dialog.cc