summaryrefslogtreecommitdiff
path: root/src/wx
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-05-03 11:17:34 +0200
committerCarl Hetherington <cth@carlh.net>2021-05-03 20:18:04 +0200
commit689fa55d1529ad88449ca464e9107c4dcc54d1cb (patch)
treeedd1264941263f2fa25a98d61f98c87876c5b667 /src/wx
parent0aabe4060ea4bad7c7caac633aef0737fccff8c2 (diff)
C++11 tidying.
Diffstat (limited to 'src/wx')
-rw-r--r--src/wx/cinema_dialog.cc62
-rw-r--r--src/wx/cinema_dialog.h6
-rw-r--r--src/wx/dcp_panel.cc163
-rw-r--r--src/wx/dcp_panel.h9
-rw-r--r--src/wx/file_dialog_wrapper.h7
-rw-r--r--src/wx/filter_dialog.cc40
-rw-r--r--src/wx/filter_dialog.h6
-rw-r--r--src/wx/fonts_dialog.cc27
-rw-r--r--src/wx/fonts_dialog.h5
-rw-r--r--src/wx/i18n_hook.cc9
-rw-r--r--src/wx/i18n_hook.h6
-rw-r--r--src/wx/screen_dialog.cc64
-rw-r--r--src/wx/screen_dialog.h7
-rw-r--r--src/wx/system_font_dialog.cc34
-rw-r--r--src/wx/system_font_dialog.h6
15 files changed, 267 insertions, 184 deletions
diff --git a/src/wx/cinema_dialog.cc b/src/wx/cinema_dialog.cc
index e67fe77ed..0e684334f 100644
--- a/src/wx/cinema_dialog.cc
+++ b/src/wx/cinema_dialog.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2016 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,53 +18,50 @@
*/
+
#include "cinema_dialog.h"
#include "wx_util.h"
#include "lib/dcpomatic_assert.h"
#include "lib/util.h"
-using std::string;
-using std::vector;
-using std::copy;
+
using std::back_inserter;
-using std::list;
+using std::copy;
using std::cout;
+using std::list;
+using std::string;
+using std::vector;
using boost::bind;
#if BOOST_VERSION >= 106100
using namespace boost::placeholders;
#endif
-static string
-column (string s)
-{
- return s;
-}
CinemaDialog::CinemaDialog (wxWindow* parent, wxString title, string name, list<string> emails, string notes, int utc_offset_hour, int utc_offset_minute)
: wxDialog (parent, wxID_ANY, title)
{
- wxBoxSizer* overall_sizer = new wxBoxSizer (wxVERTICAL);
+ auto overall_sizer = new wxBoxSizer (wxVERTICAL);
SetSizer (overall_sizer);
- wxGridBagSizer* sizer = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
+ auto sizer = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
int r = 0;
- add_label_to_sizer (sizer, this, _("Name"), true, wxGBPosition (r, 0));
- _name = new wxTextCtrl (this, wxID_ANY, std_to_wx (name), wxDefaultPosition, wxSize (500, -1));
- sizer->Add (_name, wxGBPosition (r, 1));
+ add_label_to_sizer (sizer, this, _("Name"), true, wxGBPosition(r, 0));
+ _name = new wxTextCtrl (this, wxID_ANY, std_to_wx(name), wxDefaultPosition, wxSize(500, -1));
+ sizer->Add (_name, wxGBPosition(r, 1));
++r;
- add_label_to_sizer (sizer, this, _("UTC offset (time zone)"), true, wxGBPosition (r, 0));
+ add_label_to_sizer (sizer, this, _("UTC offset (time zone)"), true, wxGBPosition(r, 0));
_utc_offset = new wxChoice (this, wxID_ANY);
- sizer->Add (_utc_offset, wxGBPosition (r, 1));
+ sizer->Add (_utc_offset, wxGBPosition(r, 1));
++r;
- add_label_to_sizer (sizer, this, _("Notes"), true, wxGBPosition (r, 0));
- _notes = new wxTextCtrl (this, wxID_ANY, std_to_wx (notes), wxDefaultPosition, wxSize (500, -1));
- sizer->Add (_notes, wxGBPosition (r, 1));
+ add_label_to_sizer (sizer, this, _("Notes"), true, wxGBPosition(r, 0));
+ _notes = new wxTextCtrl (this, wxID_ANY, std_to_wx(notes), wxDefaultPosition, wxSize(500, -1));
+ sizer->Add (_notes, wxGBPosition(r, 1));
++r;
- add_label_to_sizer (sizer, this, _("Email addresses for KDM delivery"), false, wxGBPosition (r, 0), wxGBSpan (1, 2));
+ add_label_to_sizer (sizer, this, _("Email addresses for KDM delivery"), false, wxGBPosition(r, 0), wxGBSpan(1, 2));
++r;
copy (emails.begin(), emails.end(), back_inserter (_emails));
@@ -72,15 +69,17 @@ CinemaDialog::CinemaDialog (wxWindow* parent, wxString title, string name, list<
vector<EditableListColumn> columns;
columns.push_back (EditableListColumn(_("Address")));
_email_list = new EditableList<string, EmailDialog> (
- this, columns, bind (&CinemaDialog::get_emails, this), bind (&CinemaDialog::set_emails, this, _1), bind (&column, _1)
+ this, columns, bind (&CinemaDialog::get_emails, this), bind (&CinemaDialog::set_emails, this, _1), [](string s, int) {
+ return s;
+ }
);
- sizer->Add (_email_list, wxGBPosition (r, 0), wxGBSpan (1, 2), wxEXPAND);
+ sizer->Add (_email_list, wxGBPosition(r, 0), wxGBSpan(1, 2), wxEXPAND);
++r;
overall_sizer->Add (sizer, 1, wxEXPAND | wxALL, DCPOMATIC_DIALOG_BORDER);
- wxSizer* buttons = CreateSeparatedButtonSizer (wxOK | wxCANCEL);
+ auto buttons = CreateSeparatedButtonSizer (wxOK | wxCANCEL);
if (buttons) {
overall_sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
}
@@ -102,56 +101,63 @@ CinemaDialog::CinemaDialog (wxWindow* parent, wxString title, string name, list<
_name->SetFocus ();
}
+
string
CinemaDialog::name () const
{
return wx_to_std (_name->GetValue());
}
+
void
CinemaDialog::set_emails (vector<string> e)
{
_emails = e;
}
+
vector<string>
CinemaDialog::get_emails () const
{
return _emails;
}
+
list<string>
CinemaDialog::emails () const
{
list<string> e;
- copy (_emails.begin(), _emails.end(), back_inserter (e));
+ copy (_emails.begin(), _emails.end(), back_inserter(e));
return e;
}
+
int
CinemaDialog::utc_offset_hour () const
{
int const sel = _utc_offset->GetSelection();
- if (sel < 0 || sel > int (_offsets.size())) {
+ if (sel < 0 || sel > int(_offsets.size())) {
return 0;
}
return _offsets[sel].hour;
}
+
int
CinemaDialog::utc_offset_minute () const
{
int const sel = _utc_offset->GetSelection();
- if (sel < 0 || sel > int (_offsets.size())) {
+ if (sel < 0 || sel > int(_offsets.size())) {
return 0;
}
return _offsets[sel].minute;
}
+
string
CinemaDialog::notes () const
{
- return wx_to_std (_notes->GetValue ());
+ return wx_to_std (_notes->GetValue());
}
diff --git a/src/wx/cinema_dialog.h b/src/wx/cinema_dialog.h
index d16b0ba9c..e0594b5d8 100644
--- a/src/wx/cinema_dialog.h
+++ b/src/wx/cinema_dialog.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2016 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,13 +18,15 @@
*/
-#include "table_dialog.h"
+
#include "editable_list.h"
#include "email_dialog.h"
+#include "table_dialog.h"
#include <wx/wx.h>
#include <list>
#include <vector>
+
class CinemaDialog : public wxDialog
{
public:
diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc
index aa3cf4b22..4421b81b2 100644
--- a/src/wx/dcp_panel.cc
+++ b/src/wx/dcp_panel.cc
@@ -18,6 +18,7 @@
*/
+
#include "audio_dialog.h"
#include "check_box.h"
#include "check_box.h"
@@ -49,6 +50,7 @@
#include <boost/lexical_cast.hpp>
#include <iostream>
+
using std::cout;
using std::list;
using std::string;
@@ -64,12 +66,9 @@ using namespace boost::placeholders;
#endif
using dcp::locale_convert;
+
DCPPanel::DCPPanel (wxNotebook* n, shared_ptr<Film> film, weak_ptr<FilmViewer> viewer)
- : _audio_dialog (0)
- , _markers_dialog (0)
- , _interop_metadata_dialog (0)
- , _smpte_metadata_dialog (0)
- , _film (film)
+ : _film (film)
, _viewer (viewer)
, _generally_sensitive (true)
{
@@ -123,19 +122,19 @@ DCPPanel::DCPPanel (wxNotebook* n, shared_ptr<Film> film, weak_ptr<FilmViewer> v
_notebook->AddPage (make_video_panel (), _("Video"), false);
_notebook->AddPage (make_audio_panel (), _("Audio"), false);
- _name->Bind (wxEVT_TEXT, boost::bind (&DCPPanel::name_changed, this));
- _use_isdcf_name->Bind (wxEVT_CHECKBOX, boost::bind (&DCPPanel::use_isdcf_name_toggled, this));
- _copy_isdcf_name_button->Bind(wxEVT_BUTTON, boost::bind (&DCPPanel::copy_isdcf_name_button_clicked, this));
- _dcp_content_type->Bind (wxEVT_CHOICE, boost::bind (&DCPPanel::dcp_content_type_changed, this));
- _encrypted->Bind (wxEVT_CHECKBOX, boost::bind (&DCPPanel::encrypted_toggled, this));
- _reel_type->Bind (wxEVT_CHOICE, boost::bind (&DCPPanel::reel_type_changed, this));
- _reel_length->Bind (wxEVT_SPINCTRL, boost::bind (&DCPPanel::reel_length_changed, this));
- _standard->Bind (wxEVT_CHOICE, boost::bind (&DCPPanel::standard_changed, this));
- _markers->Bind (wxEVT_BUTTON, boost::bind (&DCPPanel::markers_clicked, this));
- _metadata->Bind (wxEVT_BUTTON, boost::bind (&DCPPanel::metadata_clicked, this));
+ _name->Bind (wxEVT_TEXT, boost::bind(&DCPPanel::name_changed, this));
+ _use_isdcf_name->Bind (wxEVT_CHECKBOX, boost::bind(&DCPPanel::use_isdcf_name_toggled, this));
+ _copy_isdcf_name_button->Bind(wxEVT_BUTTON, boost::bind(&DCPPanel::copy_isdcf_name_button_clicked, this));
+ _dcp_content_type->Bind (wxEVT_CHOICE, boost::bind(&DCPPanel::dcp_content_type_changed, this));
+ _encrypted->Bind (wxEVT_CHECKBOX, boost::bind(&DCPPanel::encrypted_toggled, this));
+ _reel_type->Bind (wxEVT_CHOICE, boost::bind(&DCPPanel::reel_type_changed, this));
+ _reel_length->Bind (wxEVT_SPINCTRL, boost::bind(&DCPPanel::reel_length_changed, this));
+ _standard->Bind (wxEVT_CHOICE, boost::bind(&DCPPanel::standard_changed, this));
+ _markers->Bind (wxEVT_BUTTON, boost::bind(&DCPPanel::markers_clicked, this));
+ _metadata->Bind (wxEVT_BUTTON, boost::bind(&DCPPanel::metadata_clicked, this));
for (auto i: DCPContentType::all()) {
- _dcp_content_type->Append (std_to_wx (i->pretty_name ()));
+ _dcp_content_type->Append (std_to_wx(i->pretty_name()));
}
_reel_type->Append (_("Single reel"));
@@ -148,7 +147,7 @@ DCPPanel::DCPPanel (wxNotebook* n, shared_ptr<Film> film, weak_ptr<FilmViewer> v
_standard->Append (_("SMPTE"));
_standard->Append (_("Interop"));
- Config::instance()->Changed.connect (boost::bind (&DCPPanel::config_changed, this, _1));
+ Config::instance()->Changed.connect (boost::bind(&DCPPanel::config_changed, this, _1));
add_to_grid ();
}
@@ -169,39 +168,39 @@ DCPPanel::add_to_grid ()
flags |= wxALIGN_RIGHT;
#endif
- _grid->Add (_use_isdcf_name, wxGBPosition (r, 0), wxDefaultSpan, flags);
+ _grid->Add (_use_isdcf_name, wxGBPosition(r, 0), wxDefaultSpan, flags);
{
auto s = new wxBoxSizer (wxHORIZONTAL);
s->Add (_copy_isdcf_name_button, 0, wxLEFT, DCPOMATIC_SIZER_X_GAP);
- _grid->Add (s, wxGBPosition (r, 1), wxDefaultSpan, wxEXPAND);
+ _grid->Add (s, wxGBPosition(r, 1), wxDefaultSpan, wxEXPAND);
}
++r;
_grid->Add (_dcp_name, wxGBPosition(r, 0), wxGBSpan(1, 2), wxALIGN_CENTER_VERTICAL | wxEXPAND);
++r;
- add_label_to_sizer (_grid, _dcp_content_type_label, true, wxGBPosition (r, 0));
- _grid->Add (_dcp_content_type, wxGBPosition (r, 1));
+ add_label_to_sizer (_grid, _dcp_content_type_label, true, wxGBPosition(r, 0));
+ _grid->Add (_dcp_content_type, wxGBPosition(r, 1));
++r;
- _grid->Add (_encrypted, wxGBPosition (r, 0), wxGBSpan (1, 2));
+ _grid->Add (_encrypted, wxGBPosition(r, 0), wxGBSpan(1, 2));
++r;
- add_label_to_sizer (_grid, _reels_label, true, wxGBPosition (r, 0));
- _grid->Add (_reel_type, wxGBPosition (r, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
+ add_label_to_sizer (_grid, _reels_label, true, wxGBPosition(r, 0));
+ _grid->Add (_reel_type, wxGBPosition(r, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
++r;
- add_label_to_sizer (_grid, _reel_length_label, true, wxGBPosition (r, 0));
+ add_label_to_sizer (_grid, _reel_length_label, true, wxGBPosition(r, 0));
{
- wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+ auto s = new wxBoxSizer (wxHORIZONTAL);
s->Add (_reel_length);
add_label_to_sizer (s, _reel_length_gb_label, false, 0, wxLEFT | wxALIGN_CENTER_VERTICAL);
- _grid->Add (s, wxGBPosition (r, 1));
+ _grid->Add (s, wxGBPosition(r, 1));
}
++r;
- add_label_to_sizer (_grid, _standard_label, true, wxGBPosition (r, 0));
- _grid->Add (_standard, wxGBPosition (r, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
+ add_label_to_sizer (_grid, _standard_label, true, wxGBPosition(r, 0));
+ _grid->Add (_standard, wxGBPosition(r, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
++r;
auto extra = new wxBoxSizer (wxHORIZONTAL);
@@ -211,6 +210,7 @@ DCPPanel::add_to_grid ()
++r;
}
+
void
DCPPanel::name_changed ()
{
@@ -218,9 +218,10 @@ DCPPanel::name_changed ()
return;
}
- _film->set_name (string (_name->GetValue().mb_str()));
+ _film->set_name (string(_name->GetValue().mb_str()));
}
+
void
DCPPanel::j2k_bandwidth_changed ()
{
@@ -231,6 +232,7 @@ DCPPanel::j2k_bandwidth_changed ()
_film->set_j2k_bandwidth (_j2k_bandwidth->GetValue() * 1000000);
}
+
void
DCPPanel::encrypted_toggled ()
{
@@ -238,9 +240,10 @@ DCPPanel::encrypted_toggled ()
return;
}
- _film->set_encrypted (_encrypted->GetValue ());
+ _film->set_encrypted (_encrypted->GetValue());
}
+
/** Called when the frame rate choice widget has been changed */
void
DCPPanel::frame_rate_choice_changed ()
@@ -257,6 +260,7 @@ DCPPanel::frame_rate_choice_changed ()
);
}
+
/** Called when the frame rate spin widget has been changed */
void
DCPPanel::frame_rate_spin_changed ()
@@ -265,9 +269,10 @@ DCPPanel::frame_rate_spin_changed ()
return;
}
- _film->set_video_frame_rate (_frame_rate_spin->GetValue ());
+ _film->set_video_frame_rate (_frame_rate_spin->GetValue());
}
+
void
DCPPanel::audio_channels_changed ()
{
@@ -275,9 +280,10 @@ DCPPanel::audio_channels_changed ()
return;
}
- _film->set_audio_channels (locale_convert<int> (string_client_data (_audio_channels->GetClientObject (_audio_channels->GetSelection ()))));
+ _film->set_audio_channels (locale_convert<int>(string_client_data(_audio_channels->GetClientObject(_audio_channels->GetSelection()))));
}
+
void
DCPPanel::resolution_changed ()
{
@@ -288,6 +294,7 @@ DCPPanel::resolution_changed ()
_film->set_resolution (_resolution->GetSelection() == 0 ? Resolution::TWO_K : Resolution::FOUR_K);
}
+
void
DCPPanel::standard_changed ()
{
@@ -296,6 +303,7 @@ DCPPanel::standard_changed ()
}
_film->set_interop (_standard->GetSelection() == 1);
+
}
void
@@ -303,20 +311,21 @@ DCPPanel::markers_clicked ()
{
if (_markers_dialog) {
_markers_dialog->Destroy ();
- _markers_dialog = 0;
+ _markers_dialog = nullptr;
}
_markers_dialog = new MarkersDialog (_panel, _film, _viewer);
_markers_dialog->Show();
}
+
void
DCPPanel::metadata_clicked ()
{
if (_film->interop()) {
if (_interop_metadata_dialog) {
_interop_metadata_dialog->Destroy ();
- _interop_metadata_dialog = 0;
+ _interop_metadata_dialog = nullptr;
}
_interop_metadata_dialog = new InteropMetadataDialog (_panel, _film);
@@ -325,7 +334,7 @@ DCPPanel::metadata_clicked ()
} else {
if (_smpte_metadata_dialog) {
_smpte_metadata_dialog->Destroy ();
- _smpte_metadata_dialog = 0;
+ _smpte_metadata_dialog = nullptr;
}
_smpte_metadata_dialog = new SMPTEMetadataDialog (_panel, _film);
@@ -334,6 +343,7 @@ DCPPanel::metadata_clicked ()
}
}
+
void
DCPPanel::film_changed (Film::Property p)
{
@@ -348,9 +358,13 @@ DCPPanel::film_changed (Film::Property p)
setup_dcp_name ();
break;
case Film::Property::DCP_CONTENT_TYPE:
- checked_set (_dcp_content_type, DCPContentType::as_index (_film->dcp_content_type ()));
+ {
+ auto index = DCPContentType::as_index(_film->dcp_content_type());
+ DCPOMATIC_ASSERT (index);
+ checked_set (_dcp_content_type, *index);
setup_dcp_name ();
break;
+ }
case Film::Property::ENCRYPTED:
checked_set (_encrypted, _film->encrypted ());
break;
@@ -364,7 +378,7 @@ DCPPanel::film_changed (Film::Property p)
break;
case Film::Property::USE_ISDCF_NAME:
{
- checked_set (_use_isdcf_name, _film->use_isdcf_name ());
+ checked_set (_use_isdcf_name, _film->use_isdcf_name());
if (_film->use_isdcf_name()) {
/* We are going back to using an ISDCF name. Remove anything after a _ in the current name,
in case the user has clicked 'Copy as name' then re-ticked 'Use ISDCF name' (#1513).
@@ -382,7 +396,7 @@ DCPPanel::film_changed (Film::Property p)
{
bool done = false;
for (unsigned int i = 0; i < _frame_rate_choice->GetCount(); ++i) {
- if (wx_to_std (_frame_rate_choice->GetString(i)) == boost::lexical_cast<string> (_film->video_frame_rate())) {
+ if (wx_to_std(_frame_rate_choice->GetString(i)) == boost::lexical_cast<string>(_film->video_frame_rate())) {
checked_set (_frame_rate_choice, i);
done = true;
break;
@@ -400,15 +414,15 @@ DCPPanel::film_changed (Film::Property p)
break;
}
case Film::Property::AUDIO_CHANNELS:
- if (_film->audio_channels () < minimum_allowed_audio_channels ()) {
- _film->set_audio_channels (minimum_allowed_audio_channels ());
+ if (_film->audio_channels() < minimum_allowed_audio_channels()) {
+ _film->set_audio_channels (minimum_allowed_audio_channels());
} else {
- checked_set (_audio_channels, locale_convert<string> (max (minimum_allowed_audio_channels(), _film->audio_channels ())));
+ checked_set (_audio_channels, locale_convert<string>(max(minimum_allowed_audio_channels(), _film->audio_channels())));
setup_dcp_name ();
}
break;
case Film::Property::THREE_D:
- checked_set (_three_d, _film->three_d ());
+ checked_set (_three_d, _film->three_d());
setup_dcp_name ();
break;
case Film::Property::REENCODE_J2K:
@@ -420,12 +434,12 @@ DCPPanel::film_changed (Film::Property p)
_markers->Enable (!_film->interop());
break;
case Film::Property::AUDIO_PROCESSOR:
- if (_film->audio_processor ()) {
+ if (_film->audio_processor()) {
checked_set (_audio_processor, _film->audio_processor()->id());
} else {
checked_set (_audio_processor, 0);
}
- setup_audio_channels_choice (_audio_channels, minimum_allowed_audio_channels ());
+ setup_audio_channels_choice (_audio_channels, minimum_allowed_audio_channels());
film_changed (Film::Property::AUDIO_CHANNELS);
break;
case Film::Property::REEL_TYPE:
@@ -458,6 +472,7 @@ DCPPanel::film_changed (Film::Property p)
}
}
+
void
DCPPanel::film_content_changed (int property)
{
@@ -482,25 +497,26 @@ void
DCPPanel::setup_container ()
{
int n = 0;
- vector<Ratio const *> ratios = Ratio::containers ();
- vector<Ratio const *>::iterator i = ratios.begin ();
- while (i != ratios.end() && *i != _film->container ()) {
+ auto ratios = Ratio::containers ();
+ auto i = ratios.begin ();
+ while (i != ratios.end() && *i != _film->container()) {
++i;
++n;
}
if (i == ratios.end()) {
checked_set (_container, -1);
- checked_set (_container_size, wxT (""));
+ checked_set (_container_size, wxT(""));
} else {
checked_set (_container, n);
- dcp::Size const size = fit_ratio_within (_film->container()->ratio(), _film->full_frame ());
- checked_set (_container_size, wxString::Format ("%dx%d", size.width, size.height));
+ auto const size = fit_ratio_within (_film->container()->ratio(), _film->full_frame ());
+ checked_set (_container_size, wxString::Format("%dx%d", size.width, size.height));
}
setup_dcp_name ();
}
+
/** Called when the container widget has been changed */
void
DCPPanel::container_changed ()
@@ -511,12 +527,13 @@ DCPPanel::container_changed ()
int const n = _container->GetSelection ();
if (n >= 0) {
- vector<Ratio const *> ratios = Ratio::containers ();
- DCPOMATIC_ASSERT (n < int (ratios.size()));
+ auto ratios = Ratio::containers ();
+ DCPOMATIC_ASSERT (n < int(ratios.size()));
_film->set_container (ratios[n]);
}
}
+
/** Called when the DCP content type widget has been changed */
void
DCPPanel::dcp_content_type_changed ()
@@ -527,10 +544,11 @@ DCPPanel::dcp_content_type_changed ()
int const n = _dcp_content_type->GetSelection ();
if (n != wxNOT_FOUND) {
- _film->set_dcp_content_type (DCPContentType::from_index (n));
+ _film->set_dcp_content_type (DCPContentType::from_index(n));
}
}
+
void
DCPPanel::set_film (shared_ptr<Film> film)
{
@@ -582,6 +600,7 @@ DCPPanel::set_film (shared_ptr<Film> film)
set_general_sensitivity(static_cast<bool>(_film));
}
+
void
DCPPanel::set_general_sensitivity (bool s)
{
@@ -589,6 +608,7 @@ DCPPanel::set_general_sensitivity (bool s)
setup_sensitivity ();
}
+
void
DCPPanel::setup_sensitivity ()
{
@@ -629,6 +649,7 @@ DCPPanel::setup_sensitivity ()
_show_audio->Enable (_generally_sensitive && _film);
}
+
void
DCPPanel::use_isdcf_name_toggled ()
{
@@ -636,16 +657,17 @@ DCPPanel::use_isdcf_name_toggled ()
return;
}
- _film->set_use_isdcf_name (_use_isdcf_name->GetValue ());
+ _film->set_use_isdcf_name (_use_isdcf_name->GetValue());
}
void
DCPPanel::setup_dcp_name ()
{
- _dcp_name->SetLabel (std_to_wx (_film->dcp_name (true)));
- _dcp_name->SetToolTip (std_to_wx (_film->dcp_name (true)));
+ _dcp_name->SetLabel (std_to_wx(_film->dcp_name(true)));
+ _dcp_name->SetToolTip (std_to_wx(_film->dcp_name(true)));
}
+
void
DCPPanel::best_frame_rate_clicked ()
{
@@ -653,9 +675,10 @@ DCPPanel::best_frame_rate_clicked ()
return;
}
- _film->set_video_frame_rate (_film->best_video_frame_rate ());
+ _film->set_video_frame_rate (_film->best_video_frame_rate());
}
+
void
DCPPanel::three_d_changed ()
{
@@ -663,9 +686,10 @@ DCPPanel::three_d_changed ()
return;
}
- _film->set_three_d (_three_d->GetValue ());
+ _film->set_three_d (_three_d->GetValue());
}
+
void
DCPPanel::reencode_j2k_changed ()
{
@@ -676,6 +700,7 @@ DCPPanel::reencode_j2k_changed ()
_film->set_reencode_j2k (_reencode_j2k->GetValue());
}
+
void
DCPPanel::config_changed (Config::Property p)
{
@@ -691,10 +716,11 @@ DCPPanel::config_changed (Config::Property p)
}
}
+
void
DCPPanel::setup_frame_rate_widget ()
{
- if (Config::instance()->allow_any_dcp_frame_rate ()) {
+ if (Config::instance()->allow_any_dcp_frame_rate()) {
_frame_rate_choice->Hide ();
_frame_rate_spin->Show ();
} else {
@@ -703,6 +729,7 @@ DCPPanel::setup_frame_rate_widget ()
}
}
+
wxPanel *
DCPPanel::make_video_panel ()
{
@@ -769,6 +796,7 @@ DCPPanel::make_video_panel ()
return panel;
}
+
void
DCPPanel::add_video_panel_to_grid ()
{
@@ -776,7 +804,7 @@ DCPPanel::add_video_panel_to_grid ()
add_label_to_sizer (_video_grid, _container_label, true, wxGBPosition (r, 0));
{
- wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+ auto s = new wxBoxSizer (wxHORIZONTAL);
s->Add (_container, 1, wxEXPAND | wxRIGHT, DCPOMATIC_SIZER_X_GAP);
s->Add (_container_size, 1, wxLEFT | wxALIGN_CENTER_VERTICAL);
_video_grid->Add (s, wxGBPosition(r, 1));
@@ -809,6 +837,7 @@ DCPPanel::add_video_panel_to_grid ()
_video_grid->Add (_reencode_j2k, wxGBPosition(r, 0), wxGBSpan(1, 2));
}
+
int
DCPPanel::minimum_allowed_audio_channels () const
{
@@ -824,6 +853,7 @@ DCPPanel::minimum_allowed_audio_channels () const
return min;
}
+
wxPanel *
DCPPanel::make_audio_panel ()
{
@@ -852,6 +882,7 @@ DCPPanel::make_audio_panel ()
return panel;
}
+
void
DCPPanel::add_audio_panel_to_grid ()
{
@@ -869,6 +900,7 @@ DCPPanel::add_audio_panel_to_grid ()
++r;
}
+
void
DCPPanel::copy_isdcf_name_button_clicked ()
{
@@ -876,6 +908,7 @@ DCPPanel::copy_isdcf_name_button_clicked ()
_film->set_use_isdcf_name (false);
}
+
void
DCPPanel::audio_processor_changed ()
{
@@ -887,6 +920,7 @@ DCPPanel::audio_processor_changed ()
_film->set_audio_processor (AudioProcessor::from_id (s));
}
+
void
DCPPanel::show_audio_clicked ()
{
@@ -903,6 +937,7 @@ DCPPanel::show_audio_clicked ()
d->Show ();
}
+
void
DCPPanel::reel_type_changed ()
{
@@ -910,9 +945,10 @@ DCPPanel::reel_type_changed ()
return;
}
- _film->set_reel_type (static_cast<ReelType> (_reel_type->GetSelection ()));
+ _film->set_reel_type (static_cast<ReelType>(_reel_type->GetSelection()));
}
+
void
DCPPanel::reel_length_changed ()
{
@@ -923,10 +959,11 @@ DCPPanel::reel_length_changed ()
_film->set_reel_length (_reel_length->GetValue() * 1000000000LL);
}
+
void
DCPPanel::add_audio_processors ()
{
- _audio_processor->Append (_("None"), new wxStringClientData (N_("none")));
+ _audio_processor->Append (_("None"), new wxStringClientData(N_("none")));
for (auto ap: AudioProcessor::visible()) {
_audio_processor->Append (std_to_wx(ap->name()), new wxStringClientData(std_to_wx(ap->id())));
}
diff --git a/src/wx/dcp_panel.h b/src/wx/dcp_panel.h
index a076e4bb4..dc5e9bcbf 100644
--- a/src/wx/dcp_panel.h
+++ b/src/wx/dcp_panel.h
@@ -43,6 +43,7 @@ class Film;
class FilmViewer;
class Ratio;
+
class DCPPanel
{
public:
@@ -149,10 +150,10 @@ private:
wxButton* _metadata;
wxSizer* _audio_panel_sizer;
- AudioDialog* _audio_dialog;
- MarkersDialog* _markers_dialog;
- InteropMetadataDialog* _interop_metadata_dialog;
- SMPTEMetadataDialog* _smpte_metadata_dialog;
+ AudioDialog* _audio_dialog = nullptr;
+ MarkersDialog* _markers_dialog = nullptr;
+ InteropMetadataDialog* _interop_metadata_dialog = nullptr;
+ SMPTEMetadataDialog* _smpte_metadata_dialog = nullptr;
std::shared_ptr<Film> _film;
std::weak_ptr<FilmViewer> _viewer;
diff --git a/src/wx/file_dialog_wrapper.h b/src/wx/file_dialog_wrapper.h
index dd63ff2da..8223371db 100644
--- a/src/wx/file_dialog_wrapper.h
+++ b/src/wx/file_dialog_wrapper.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,8 +18,11 @@
*/
+
+#include "wx_util.h"
#include <dcp/util.h>
+
template <class T>
class FileDialogWrapper
{
@@ -34,7 +37,7 @@ public:
boost::optional<T> get ()
{
- return T (dcp::file_to_string (wx_to_std (_dialog->GetPath ())));
+ return T (dcp::file_to_string(wx_to_std(_dialog->GetPath())));
}
int ShowModal ()
diff --git a/src/wx/filter_dialog.cc b/src/wx/filter_dialog.cc
index a65f5153a..3dbb48236 100644
--- a/src/wx/filter_dialog.cc
+++ b/src/wx/filter_dialog.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,10 +18,12 @@
*/
+
/** @file src/filter_dialog.cc
* @brief A dialog to select FFmpeg filters.
*/
+
#include "check_box.h"
#include "filter_dialog.h"
#include "static_text.h"
@@ -37,35 +39,31 @@ using boost::bind;
FilterDialog::FilterDialog (wxWindow* parent, vector<Filter const *> const & active)
: wxDialog (parent, wxID_ANY, wxString(_("Filters")))
{
- wxPanel* panel = new wxPanel (this);
- wxBoxSizer* sizer = new wxBoxSizer (wxVERTICAL);
+ auto panel = new wxPanel (this);
+ auto sizer = new wxBoxSizer (wxVERTICAL);
- vector<Filter const *> filters = Filter::all ();
+ auto filters = Filter::all ();
- typedef map<string, list<Filter const *> > CategoryMap;
- CategoryMap categories;
+ map<string, list<Filter const *>> categories;
for (auto i: filters) {
- CategoryMap::iterator j = categories.find (i->category());
+ auto j = categories.find (i->category());
if (j == categories.end ()) {
- list<Filter const *> c;
- c.push_back (i);
- categories[i->category()] = c;
+ categories[i->category()] = { i };
} else {
j->second.push_back (i);
}
}
- for (CategoryMap::iterator i = categories.begin(); i != categories.end(); ++i) {
-
- wxStaticText* c = new StaticText (panel, std_to_wx(i->first));
- wxFont font = c->GetFont();
+ for (auto const& i: categories) {
+ auto c = new StaticText (panel, std_to_wx(i.first));
+ auto font = c->GetFont();
font.SetWeight(wxFONTWEIGHT_BOLD);
c->SetFont(font);
sizer->Add (c, 1, wxTOP | wxBOTTOM, DCPOMATIC_SIZER_GAP);
- for (auto j: i->second) {
- wxCheckBox* b = new CheckBox(panel, std_to_wx(j->name()));
+ for (auto j: i.second) {
+ auto b = new CheckBox(panel, std_to_wx(j->name()));
bool const a = find (active.begin(), active.end(), j) != active.end();
b->SetValue (a);
_filters[j] = b;
@@ -76,14 +74,14 @@ FilterDialog::FilterDialog (wxWindow* parent, vector<Filter const *> const & act
sizer->AddSpacer (6);
}
- wxSizer* buttons = CreateSeparatedButtonSizer (wxOK);
+ auto buttons = CreateSeparatedButtonSizer (wxOK);
if (buttons) {
sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
}
panel->SetSizer (sizer);
- wxBoxSizer* overall_sizer = new wxBoxSizer (wxVERTICAL);
+ auto overall_sizer = new wxBoxSizer (wxVERTICAL);
overall_sizer->Add (panel, 1, wxTOP | wxLEFT | wxRIGHT, DCPOMATIC_SIZER_GAP);
SetSizerAndFit (overall_sizer);
}
@@ -100,9 +98,9 @@ vector<Filter const*>
FilterDialog::active () const
{
vector<Filter const *> active;
- for (map<Filter const *, wxCheckBox*>::const_iterator i = _filters.begin(); i != _filters.end(); ++i) {
- if (i->second->IsChecked()) {
- active.push_back(i->first);
+ for (auto const& i: _filters) {
+ if (i.second->IsChecked()) {
+ active.push_back(i.first);
}
}
diff --git a/src/wx/filter_dialog.h b/src/wx/filter_dialog.h
index 775995f38..33f92c0a6 100644
--- a/src/wx/filter_dialog.h
+++ b/src/wx/filter_dialog.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2020 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,19 +18,23 @@
*/
+
/** @file src/filter_dialog.h
* @brief A dialog to select FFmpeg filters.
*/
+
#include "lib/warnings.h"
DCPOMATIC_DISABLE_WARNINGS
#include <wx/wx.h>
DCPOMATIC_ENABLE_WARNINGS
#include <boost/signals2.hpp>
+
class Film;
class Filter;
+
/** @class FilterDialog
* @brief A dialog to select FFmpeg filters.
*/
diff --git a/src/wx/fonts_dialog.cc b/src/wx/fonts_dialog.cc
index 29af6a739..e61055ad7 100644
--- a/src/wx/fonts_dialog.cc
+++ b/src/wx/fonts_dialog.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2014-2018 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2014-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,6 +18,7 @@
*/
+
#include "fonts_dialog.h"
#include "wx_util.h"
#include "system_font_dialog.h"
@@ -28,12 +29,14 @@
#include <wx/wx.h>
#include <iostream>
+
using std::list;
using std::string;
using std::cout;
using std::shared_ptr;
using namespace dcpomatic;
+
FontsDialog::FontsDialog (wxWindow* parent, shared_ptr<Content> content, shared_ptr<TextContent> caption)
: wxDialog (parent, wxID_ANY, _("Fonts"))
, _content (content)
@@ -57,16 +60,16 @@ FontsDialog::FontsDialog (wxWindow* parent, shared_ptr<Content> content, shared_
_fonts->InsertColumn (1, ip);
}
- wxBoxSizer* sizer = new wxBoxSizer (wxHORIZONTAL);
+ auto sizer = new wxBoxSizer (wxHORIZONTAL);
sizer->Add (_fonts, 1, wxEXPAND | wxLEFT | wxRIGHT, DCPOMATIC_SIZER_X_GAP);
_edit = new Button (this, _("Edit..."));
sizer->Add (_edit, 0, wxTOP | wxBOTTOM, DCPOMATIC_BUTTON_STACK_GAP);
- wxBoxSizer* overall_sizer = new wxBoxSizer (wxVERTICAL);
+ auto overall_sizer = new wxBoxSizer (wxVERTICAL);
overall_sizer->Add (sizer, 1, wxEXPAND | wxALL, DCPOMATIC_SIZER_X_GAP);
- wxSizer* buttons = CreateSeparatedButtonSizer (wxOK);
+ auto buttons = CreateSeparatedButtonSizer (wxOK);
if (buttons) {
overall_sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
}
@@ -80,11 +83,12 @@ FontsDialog::FontsDialog (wxWindow* parent, shared_ptr<Content> content, shared_
setup ();
}
+
void
FontsDialog::setup ()
{
- shared_ptr<Content> content = _content.lock ();
- shared_ptr<TextContent> caption = _caption.lock ();
+ auto content = _content.lock ();
+ auto caption = _caption.lock ();
if (!content || !caption) {
return;
}
@@ -105,12 +109,14 @@ FontsDialog::setup ()
setup_sensitivity ();
}
+
void
FontsDialog::selection_changed ()
{
setup_sensitivity ();
}
+
void
FontsDialog::setup_sensitivity ()
{
@@ -118,17 +124,18 @@ FontsDialog::setup_sensitivity ()
_edit->Enable (item != -1);
}
+
void
FontsDialog::edit_clicked ()
{
- shared_ptr<Content> content = _content.lock ();
- shared_ptr<TextContent> caption = _caption.lock ();
+ auto content = _content.lock ();
+ auto caption = _caption.lock ();
if (!content || !caption) {
return;
}
int const item = _fonts->GetNextItem (-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
- string const id = wx_to_std (_fonts->GetItemText (item, 0));
+ auto const id = wx_to_std (_fonts->GetItemText(item, 0));
shared_ptr<Font> font;
for (auto i: caption->fonts()) {
if (i->id() == id) {
@@ -155,7 +162,7 @@ FontsDialog::edit_clicked ()
default_dir = "/System/Library/Fonts";
#endif
- wxFileDialog* d = new wxFileDialog (this, _("Choose a font file"), default_dir, wxT(""), wxT("*.ttf;*.otf"), wxFD_CHANGE_DIR);
+ auto d = new wxFileDialog (this, _("Choose a font file"), default_dir, wxT(""), wxT("*.ttf;*.otf"), wxFD_CHANGE_DIR);
int const r = d->ShowModal ();
if (r != wxID_OK) {
diff --git a/src/wx/fonts_dialog.h b/src/wx/fonts_dialog.h
index 0ef3658cf..a77684cb9 100644
--- a/src/wx/fonts_dialog.h
+++ b/src/wx/fonts_dialog.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2014-2018 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2014-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,6 +18,7 @@
*/
+
#include "lib/warnings.h"
DCPOMATIC_DISABLE_WARNINGS
#include <wx/listctrl.h>
@@ -25,9 +26,11 @@ DCPOMATIC_DISABLE_WARNINGS
DCPOMATIC_ENABLE_WARNINGS
#include <boost/filesystem.hpp>
+
class Content;
class TextContent;
+
class FontsDialog : public wxDialog
{
public:
diff --git a/src/wx/i18n_hook.cc b/src/wx/i18n_hook.cc
index 827e81bc9..f6b963622 100644
--- a/src/wx/i18n_hook.cc
+++ b/src/wx/i18n_hook.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2018-2019 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2018-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,6 +18,7 @@
*/
+
#include "i18n_hook.h"
#include "instant_i18n_dialog.h"
#include "wx_util.h"
@@ -25,6 +26,7 @@
#include <wx/wx.h>
#include <boost/bind/bind.hpp>
+
using std::map;
using std::string;
#if BOOST_VERSION >= 106100
@@ -41,15 +43,16 @@ I18NHook::I18NHook (wxWindow* window, wxString original)
_window->Bind (wxEVT_MIDDLE_DOWN, bind(&I18NHook::handle, this, _1));
}
+
void
I18NHook::handle (wxMouseEvent& ev)
{
- InstantI18NDialog* d = new InstantI18NDialog (_window, get_text());
+ auto d = new InstantI18NDialog (_window, get_text());
d->ShowModal();
set_text (d->get());
d->Destroy ();
- wxWindow* w = _window;
+ auto w = _window;
while (w) {
if (w->GetContainingSizer()) {
w->GetContainingSizer()->Layout();
diff --git a/src/wx/i18n_hook.h b/src/wx/i18n_hook.h
index b2de66172..bb1bc8227 100644
--- a/src/wx/i18n_hook.h
+++ b/src/wx/i18n_hook.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2018-2019 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2018-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,15 +18,18 @@
*/
+
#ifndef DCPOMATIC_I18N_HOOK_H
#define DCPOMATIC_I18N_HOOK_H
+
#include "lib/warnings.h"
DCPOMATIC_DISABLE_WARNINGS
#include <wx/wx.h>
DCPOMATIC_ENABLE_WARNINGS
#include <map>
+
class I18NHook
{
public:
@@ -48,4 +51,5 @@ private:
static std::map<std::string, std::string> _translations;
};
+
#endif
diff --git a/src/wx/screen_dialog.cc b/src/wx/screen_dialog.cc
index 030098920..8da8f061e 100644
--- a/src/wx/screen_dialog.cc
+++ b/src/wx/screen_dialog.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2018 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,13 +18,14 @@
*/
-#include "screen_dialog.h"
-#include "wx_util.h"
+
+#include "dcpomatic_button.h"
+#include "download_certificate_dialog.h"
#include "file_dialog_wrapper.h"
+#include "screen_dialog.h"
#include "static_text.h"
-#include "download_certificate_dialog.h"
#include "table_dialog.h"
-#include "dcpomatic_button.h"
+#include "wx_util.h"
#include "lib/compose.hpp"
#include "lib/util.h"
#include "lib/warnings.h"
@@ -36,6 +37,7 @@ DCPOMATIC_DISABLE_WARNINGS
DCPOMATIC_ENABLE_WARNINGS
#include <iostream>
+
using std::string;
using std::cout;
using std::vector;
@@ -45,11 +47,6 @@ using boost::bind;
using namespace boost::placeholders;
#endif
-static string
-column (TrustedDevice d)
-{
- return d.thumbprint ();
-}
class TrustedDeviceDialog : public TableDialog
{
@@ -68,7 +65,7 @@ public:
void load_certificate ()
{
- wxFileDialog* d = new wxFileDialog (this, _("Trusted Device certificate"));
+ auto d = new wxFileDialog (this, _("Trusted Device certificate"));
if (d->ShowModal() == wxID_OK) {
try {
_certificate = dcp::Certificate(dcp::file_to_string(wx_to_std(d->GetPath())));
@@ -87,14 +84,14 @@ public:
optional<TrustedDevice> get ()
{
- string const t = wx_to_std (_thumbprint->GetValue ());
+ auto const t = wx_to_std (_thumbprint->GetValue());
if (_certificate && _certificate->thumbprint() == t) {
return TrustedDevice (*_certificate);
} else if (t.length() == 28) {
return TrustedDevice (t);
}
- return optional<TrustedDevice> ();
+ return {};
}
private:
@@ -103,6 +100,7 @@ private:
boost::optional<dcp::Certificate> _certificate;
};
+
ScreenDialog::ScreenDialog (
wxWindow* parent, wxString title, string name, string notes, optional<dcp::Certificate> recipient, vector<TrustedDevice> trusted_devices
)
@@ -110,30 +108,30 @@ ScreenDialog::ScreenDialog (
, _recipient (recipient)
, _trusted_devices (trusted_devices)
{
- wxBoxSizer* overall_sizer = new wxBoxSizer (wxVERTICAL);
+ auto overall_sizer = new wxBoxSizer (wxVERTICAL);
SetSizer (overall_sizer);
_sizer = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
int r = 0;
- add_label_to_sizer (_sizer, this, _("Name"), true, wxGBPosition (r, 0));
+ add_label_to_sizer (_sizer, this, _("Name"), true, wxGBPosition(r, 0));
_name = new wxTextCtrl (this, wxID_ANY, std_to_wx (name), wxDefaultPosition, wxSize (320, -1));
_sizer->Add (_name, wxGBPosition (r, 1));
++r;
- add_label_to_sizer (_sizer, this, _("Notes"), true, wxGBPosition (r, 0));
- _notes = new wxTextCtrl (this, wxID_ANY, std_to_wx (notes), wxDefaultPosition, wxSize (320, -1));
- _sizer->Add (_notes, wxGBPosition (r, 1));
+ add_label_to_sizer (_sizer, this, _("Notes"), true, wxGBPosition(r, 0));
+ _notes = new wxTextCtrl (this, wxID_ANY, std_to_wx(notes), wxDefaultPosition, wxSize(320, -1));
+ _sizer->Add (_notes, wxGBPosition(r, 1));
++r;
wxClientDC dc (this);
wxFont font = _name->GetFont ();
font.SetFamily (wxFONTFAMILY_TELETYPE);
dc.SetFont (font);
- wxSize size = dc.GetTextExtent (wxT ("1234567890123456789012345678"));
+ wxSize size = dc.GetTextExtent (wxT("1234567890123456789012345678"));
size.SetHeight (-1);
- add_label_to_sizer (_sizer, this, _("Recipient certificate"), true, wxGBPosition (r, 0));
+ add_label_to_sizer (_sizer, this, _("Recipient certificate"), true, wxGBPosition(r, 0));
wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
_recipient_thumbprint = new StaticText (this, wxT (""), wxDefaultPosition, size);
_recipient_thumbprint->SetFont (font);
@@ -156,7 +154,9 @@ ScreenDialog::ScreenDialog (
columns,
bind (&ScreenDialog::trusted_devices, this),
bind (&ScreenDialog::set_trusted_devices, this, _1),
- bind (&column, _1),
+ [] (TrustedDevice const& d, int) {
+ return d.thumbprint();
+ },
false
);
@@ -180,30 +180,34 @@ ScreenDialog::ScreenDialog (
setup_sensitivity ();
}
+
string
ScreenDialog::name () const
{
return wx_to_std (_name->GetValue());
}
+
string
ScreenDialog::notes () const
{
return wx_to_std (_notes->GetValue());
}
+
optional<dcp::Certificate>
ScreenDialog::recipient () const
{
return _recipient;
}
+
void
ScreenDialog::load_recipient (boost::filesystem::path file)
{
try {
/* Load this as a chain, in case it is one, and then pick the leaf certificate */
- dcp::CertificateChain c (dcp::file_to_string (file));
+ dcp::CertificateChain c (dcp::file_to_string(file));
if (c.unordered().empty()) {
error_dialog (this, _("Could not read certificate file."));
return;
@@ -214,38 +218,42 @@ ScreenDialog::load_recipient (boost::filesystem::path file)
}
}
+
void
ScreenDialog::get_recipient_from_file ()
{
- wxFileDialog* d = new wxFileDialog (this, _("Select Certificate File"));
- if (d->ShowModal () == wxID_OK) {
- load_recipient (boost::filesystem::path (wx_to_std (d->GetPath ())));
+ auto d = new wxFileDialog (this, _("Select Certificate File"));
+ if (d->ShowModal() == wxID_OK) {
+ load_recipient (boost::filesystem::path(wx_to_std(d->GetPath())));
}
d->Destroy ();
setup_sensitivity ();
}
+
void
ScreenDialog::download_recipient ()
{
- DownloadCertificateDialog* d = new DownloadCertificateDialog (this);
+ auto d = new DownloadCertificateDialog (this);
if (d->ShowModal() == wxID_OK) {
- set_recipient (d->certificate ());
+ set_recipient (d->certificate());
}
d->Destroy ();
setup_sensitivity ();
}
+
void
ScreenDialog::setup_sensitivity ()
{
- wxButton* ok = dynamic_cast<wxButton*> (FindWindowById (wxID_OK, this));
+ auto ok = dynamic_cast<wxButton*> (FindWindowById(wxID_OK, this));
if (ok) {
ok->Enable (static_cast<bool>(_recipient) && !_name->GetValue().IsEmpty());
}
}
+
void
ScreenDialog::set_recipient (optional<dcp::Certificate> r)
{
diff --git a/src/wx/screen_dialog.h b/src/wx/screen_dialog.h
index 6665ef398..2c2d8b8bf 100644
--- a/src/wx/screen_dialog.h
+++ b/src/wx/screen_dialog.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2018 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,15 +18,18 @@
*/
+
#include "editable_list.h"
#include "lib/screen.h"
#include <dcp/certificate.h>
#include <wx/wx.h>
#include <boost/optional.hpp>
+
class Progress;
class TrustedDeviceDialog;
+
class ScreenDialog : public wxDialog
{
public:
@@ -35,7 +38,7 @@ public:
wxString,
std::string name = "",
std::string notes = "",
- boost::optional<dcp::Certificate> c = boost::optional<dcp::Certificate> (),
+ boost::optional<dcp::Certificate> c = boost::optional<dcp::Certificate>(),
std::vector<TrustedDevice> d = std::vector<TrustedDevice>()
);
diff --git a/src/wx/system_font_dialog.cc b/src/wx/system_font_dialog.cc
index 6a98ecec6..df5b8e21b 100644
--- a/src/wx/system_font_dialog.cc
+++ b/src/wx/system_font_dialog.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2015 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2015-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,42 +18,40 @@
*/
+
#include "system_font_dialog.h"
#include "wx_util.h"
#include <wx/listctrl.h>
#include <boost/filesystem.hpp>
#include <iostream>
+
using std::cout;
using std::string;
using boost::optional;
+
SystemFontDialog::SystemFontDialog (wxWindow* parent)
: wxDialog (parent, wxID_ANY, _("Choose a font"))
{
- wxSizer* sizer = new wxBoxSizer (wxVERTICAL);
+ auto sizer = new wxBoxSizer (wxVERTICAL);
boost::filesystem::path fonts = "c:\\Windows\\Fonts";
- char* windir = getenv ("windir");
+ auto windir = getenv ("windir");
if (windir) {
fonts = boost::filesystem::path (windir) / "Fonts";
}
- for (
- boost::filesystem::directory_iterator i = boost::filesystem::directory_iterator (fonts);
- i != boost::filesystem::directory_iterator ();
- ++i
- ) {
-
- string ext = i->path().extension().string ();
+ for (auto i: boost::filesystem::directory_iterator (fonts)) {
+ auto ext = i.path().extension().string();
transform (ext.begin(), ext.end(), ext.begin(), ::tolower);
if (ext == ".ttf") {
- _fonts.push_back (i->path());
+ _fonts.push_back (i.path());
}
}
- sort (_fonts.begin (), _fonts.end ());
+ sort (_fonts.begin(), _fonts.end());
_list = new wxListCtrl (this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_REPORT | wxLC_NO_HEADER);
_list->InsertColumn (0, wxT (""));
@@ -65,7 +63,7 @@ SystemFontDialog::SystemFontDialog (wxWindow* parent)
_list->InsertItem (n++, std_to_wx (i.leaf().stem().string ()));
}
- wxSizer* buttons = CreateSeparatedButtonSizer (wxOK | wxCANCEL);
+ auto buttons = CreateSeparatedButtonSizer (wxOK | wxCANCEL);
if (buttons) {
sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
}
@@ -78,25 +76,27 @@ SystemFontDialog::SystemFontDialog (wxWindow* parent)
setup_sensitivity ();
}
+
optional<boost::filesystem::path>
SystemFontDialog::get_font () const
{
int const s = _list->GetNextItem (-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
if (s == -1) {
- return optional<boost::filesystem::path> ();
+ return {};
}
- if (s < int (_fonts.size ())) {
+ if (s < int(_fonts.size())) {
return _fonts[s];
}
- return optional<boost::filesystem::path> ();
+ return {};
}
+
void
SystemFontDialog::setup_sensitivity ()
{
- wxButton* ok = dynamic_cast<wxButton *> (FindWindowById (wxID_OK, this));
+ auto ok = dynamic_cast<wxButton *> (FindWindowById(wxID_OK, this));
if (ok) {
ok->Enable (_list->GetNextItem (-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED) != -1);
}
diff --git a/src/wx/system_font_dialog.h b/src/wx/system_font_dialog.h
index da51c9c3a..59639d2b0 100644
--- a/src/wx/system_font_dialog.h
+++ b/src/wx/system_font_dialog.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2015 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2015-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
@@ -18,6 +18,7 @@
*/
+
/** @class SystemFontDialog
* @brief A dialog box to select one of the "system" fonts on Windows.
*
@@ -26,6 +27,7 @@
* one of those fonts.
*/
+
#include "lib/warnings.h"
DCPOMATIC_DISABLE_WARNINGS
#include <wx/wx.h>
@@ -34,8 +36,10 @@ DCPOMATIC_ENABLE_WARNINGS
#include <boost/optional.hpp>
#include <vector>
+
class wxListCtrl;
+
class SystemFontDialog : public wxDialog
{
public: