diff options
Diffstat (limited to 'src/wx/kdm_dialog.cc')
| -rw-r--r-- | src/wx/kdm_dialog.cc | 36 |
1 files changed, 32 insertions, 4 deletions
diff --git a/src/wx/kdm_dialog.cc b/src/wx/kdm_dialog.cc index 5ab13b4ce..1a9c564d4 100644 --- a/src/wx/kdm_dialog.cc +++ b/src/wx/kdm_dialog.cc @@ -29,6 +29,7 @@ #include "screens_panel.h" #include "static_text.h" #include "wx_util.h" +#include "wx_variant.h" #include "lib/cinema.h" #include "lib/config.h" #include "lib/film.h" @@ -125,7 +126,7 @@ KDMDialog::KDMDialog (wxWindow* parent, shared_ptr<const Film> film) /* Bind */ - _screens->ScreensChanged.connect (boost::bind (&KDMDialog::setup_sensitivity, this)); + _screens->ScreensChanged.connect(boost::bind(&KDMDialog::screens_changed, this)); _timing->TimingChanged.connect (boost::bind (&KDMDialog::setup_sensitivity, this)); _make->Bind (wxEVT_BUTTON, boost::bind (&KDMDialog::make_clicked, this)); _cpl->Changed.connect(boost::bind(&KDMDialog::cpl_changed, this)); @@ -140,6 +141,14 @@ KDMDialog::KDMDialog (wxWindow* parent, shared_ptr<const Film> film) void +KDMDialog::screens_changed() +{ + _timing->suggest_utc_offset(_screens->best_utc_offset()); + setup_sensitivity(); +} + + +void KDMDialog::cpl_changed() { try { @@ -196,8 +205,21 @@ KDMDialog::make_clicked () return film->make_kdm(_cpl->cpl(), begin, end); }; - for (auto i: _screens->screens()) { - auto p = kdm_for_screen(make_kdm, i, _timing->from(), _timing->until(), _output->formulation(), !_output->forensic_mark_video(), for_audio, period_checks); + CinemaList cinemas; + + for (auto screen: _screens->screens()) { + auto p = kdm_for_screen( + make_kdm, + screen.first, + *cinemas.cinema(screen.first), + *cinemas.screen(screen.second), + _timing->from(), + _timing->until(), + _output->formulation(), + !_output->forensic_mark_video(), + for_audio, + period_checks + ); if (p) { kdms.push_back (p); } @@ -219,7 +241,13 @@ KDMDialog::make_clicked () if (e.starts_too_early()) { error_dialog (this, _("The KDM start period is before (or close to) the start of the signing certificate's validity period. Use a later start time for this KDM.")); } else { - error_dialog (this, _("The KDM end period is after (or close to) the end of the signing certificates' validity period. Either use an earlier end time for this KDM or re-create your signing certificates in the DCP-o-matic preferences window.")); + error_dialog( + this, + variant::wx::insert_dcpomatic( + _("The KDM end period is after (or close to) the end of the signing certificates' validity " + "period. Either use an earlier end time for this KDM or re-create your signing certificates " + "in the %s preferences window.")) + ); } return; } catch (runtime_error& e) { |
