diff options
| author | Carl Hetherington <cth@carlh.net> | 2020-05-07 00:02:26 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2020-05-07 00:02:26 +0200 |
| commit | 47e29203daec51d313ed8ab8ef759752bce18d45 (patch) | |
| tree | 2b34f05ffe9ad73c49225e82d91a8dede9f3d6de /src/wx/kdm_output_panel.cc | |
| parent | e81c5eb9e8ff875240dde9fdaaab0a46f99af615 (diff) | |
| parent | 581797d640af1572f884ddf4395924894b745b3a (diff) | |
Add a new "Add DKDM" dialogue (#1637).
The basic motivation here is to avoid having to tell people to
"just" create a cinema with a screen in it just to be able to make
a DKDM. Here you can just have a recipient, with emails etc.
and make DKDMs for them. I hope this makes things clearer from the
user POV even if it does muddy the waters a bit with respect to
DKDMs just being KDMs (really).
Diffstat (limited to 'src/wx/kdm_output_panel.cc')
| -rw-r--r-- | src/wx/kdm_output_panel.cc | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/src/wx/kdm_output_panel.cc b/src/wx/kdm_output_panel.cc index d76a27359..a345d0e96 100644 --- a/src/wx/kdm_output_panel.cc +++ b/src/wx/kdm_output_panel.cc @@ -20,7 +20,6 @@ #include "lib/config.h" #include "lib/cinema.h" -#include "lib/cinema_kdms.h" #include "lib/send_kdm_email_job.h" #include "kdm_output_panel.h" #include "kdm_timing_panel.h" @@ -54,6 +53,7 @@ KDMOutputPanel::KDMOutputPanel (wxWindow* parent, bool interop) , _forensic_mark_audio_up_to (12) { wxFlexGridSizer* table = new wxFlexGridSizer (2, DCPOMATIC_SIZER_X_GAP, 0); + table->AddGrowableCol (1); add_label_to_sizer (table, this, _("KDM type"), true); @@ -183,10 +183,10 @@ KDMOutputPanel::kdm_write_type_changed () pair<shared_ptr<Job>, int> KDMOutputPanel::make ( - list<shared_ptr<ScreenKDM> > screen_kdms, string name, KDMTimingPanel* timing, function<bool (boost::filesystem::path)> confirm_overwrite + list<KDMWithMetadataPtr> kdms, string name, function<bool (boost::filesystem::path)> confirm_overwrite ) { - list<CinemaKDMs> const cinema_kdms = CinemaKDMs::collect (screen_kdms); + list<list<KDMWithMetadataPtr> > const cinema_kdms = collect (kdms); /* Decide whether to proceed */ @@ -200,8 +200,8 @@ KDMOutputPanel::make ( } bool cinemas_with_no_email = false; - BOOST_FOREACH (CinemaKDMs i, cinema_kdms) { - if (i.cinema->emails.empty ()) { + BOOST_FOREACH (list<KDMWithMetadataPtr> i, cinema_kdms) { + if (i.front()->emails().empty()) { cinemas_with_no_email = true; } } @@ -215,8 +215,8 @@ KDMOutputPanel::make ( if (proceed && Config::instance()->confirm_kdm_email ()) { list<string> emails; - BOOST_FOREACH (CinemaKDMs i, cinema_kdms) { - BOOST_FOREACH (string j, i.cinema->emails) { + BOOST_FOREACH (list<KDMWithMetadataPtr> const& i, cinema_kdms) { + BOOST_FOREACH (string j, i.front()->emails()) { emails.push_back (j); } } @@ -240,36 +240,29 @@ KDMOutputPanel::make ( shared_ptr<Job> job; try { - dcp::NameFormat::Map name_values; - name_values['f'] = name; - name_values['b'] = dcp::LocalTime(timing->from()).date() + " " + dcp::LocalTime(timing->from()).time_of_day(false, false); - name_values['e'] = dcp::LocalTime(timing->until()).date() + " " + dcp::LocalTime(timing->until()).time_of_day(false, false); if (_write_to->GetValue()) { if (_write_flat->GetValue()) { - written = ScreenKDM::write_files ( - screen_kdms, + written = write_files ( + kdms, directory(), _filename_format->get(), - name_values, confirm_overwrite ); } else if (_write_folder->GetValue()) { - written = CinemaKDMs::write_directories ( - CinemaKDMs::collect (screen_kdms), + written = write_directories ( + collect (kdms), directory(), _container_name_format->get(), _filename_format->get(), - name_values, confirm_overwrite ); } else if (_write_zip->GetValue()) { - written = CinemaKDMs::write_zip_files ( - CinemaKDMs::collect (screen_kdms), + written = write_zip_files ( + collect (kdms), directory(), _container_name_format->get(), _filename_format->get(), - name_values, confirm_overwrite ); } @@ -281,7 +274,6 @@ KDMOutputPanel::make ( cinema_kdms, _container_name_format->get(), _filename_format->get(), - name_values, name ) ); |
