summaryrefslogtreecommitdiff
path: root/src/wx/kdm_dialog.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/wx/kdm_dialog.cc')
-rw-r--r--src/wx/kdm_dialog.cc18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/wx/kdm_dialog.cc b/src/wx/kdm_dialog.cc
index c15156eee..c88a1ac40 100644
--- a/src/wx/kdm_dialog.cc
+++ b/src/wx/kdm_dialog.cc
@@ -37,6 +37,7 @@
#include "lib/kdm_util.h"
#include "lib/screen.h"
#include <libcxml/cxml.h>
+#include <dcp/cpl.h>
#include <dcp/exceptions.h>
#include <dcp/warnings.h>
LIBDCP_DISABLE_WARNINGS
@@ -127,8 +128,9 @@ KDMDialog::KDMDialog (wxWindow* parent, shared_ptr<const Film> film)
_screens->ScreensChanged.connect (boost::bind (&KDMDialog::setup_sensitivity, 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::setup_sensitivity, this));
+ _cpl->Changed.connect(boost::bind(&KDMDialog::cpl_changed, this));
+ cpl_changed();
setup_sensitivity ();
SetSizer (overall_sizer);
@@ -138,6 +140,20 @@ KDMDialog::KDMDialog (wxWindow* parent, shared_ptr<const Film> film)
void
+KDMDialog::cpl_changed()
+{
+ try {
+ dcp::CPL cpl(_cpl->cpl());
+ if (auto text = cpl.annotation_text()) {
+ _output->set_annotation_text(*text);
+ }
+ } catch (...) {}
+
+ setup_sensitivity();
+}
+
+
+void
KDMDialog::setup_sensitivity ()
{
_screens->setup_sensitivity ();