#include "wx/properties_dialog.h"
#include "wx/wx_ui_signaller.h"
#include "wx/about_dialog.h"
+#include "wx/kdm_dialog.h"
#include "lib/film.h"
#include "lib/config.h"
#include "lib/util.h"
#include "lib/log.h"
#include "lib/job_manager.h"
#include "lib/transcode_job.h"
+#include "lib/exceptions.h"
using std::cout;
using std::string;
ID_file_save,
ID_file_properties,
ID_jobs_make_dcp,
+ ID_jobs_make_kdms,
ID_jobs_send_dcp_to_tms,
ID_jobs_show_dcp,
};
jobs_menu = new wxMenu;
add_item (jobs_menu, _("&Make DCP"), ID_jobs_make_dcp, NEEDS_FILM | NOT_DURING_DCP_CREATION);
+ add_item (jobs_menu, _("Make &KDMs..."), ID_jobs_make_kdms, NEEDS_FILM);
add_item (jobs_menu, _("&Send DCP to TMS"), ID_jobs_send_dcp_to_tms, NEEDS_FILM | NOT_DURING_DCP_CREATION);
add_item (jobs_menu, _("S&how DCP"), ID_jobs_show_dcp, NEEDS_FILM | NOT_DURING_DCP_CREATION);
Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::file_exit, this), wxID_EXIT);
Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::edit_preferences, this), wxID_PREFERENCES);
Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::jobs_make_dcp, this), ID_jobs_make_dcp);
+ Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::jobs_make_kdms, this), ID_jobs_make_kdms);
Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::jobs_send_dcp_to_tms, this), ID_jobs_send_dcp_to_tms);
Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::jobs_show_dcp, this), ID_jobs_show_dcp);
Bind (wxEVT_COMMAND_MENU_SELECTED, boost::bind (&Frame::help_about, this), wxID_ABOUT);
return;
}
- bool const have_dcp = film && film->have_dcp();
+ bool const have_dcp = false;//film && film->have_dcp();
jobs_menu->Enable (ID_jobs_send_dcp_to_tms, have_dcp);
jobs_menu->Enable (ID_jobs_show_dcp, have_dcp);
}
{
JobWrapper::make_dcp (this, film);
}
+
+ void jobs_make_kdms ()
+ {
+ if (!film) {
+ return;
+ }
+
+ KDMDialog* d = new KDMDialog (this);
+ if (d->ShowModal () == wxID_OK) {
+ try {
+ film->make_kdms (
+ d->screens (),
+ d->from (),
+ d->until (),
+ d->directory ()
+ );
+ } catch (KDMError& e) {
+ error_dialog (this, e.what ());
+ }
+ }
+
+ d->Destroy ();
+ }
void jobs_send_dcp_to_tms ()
{