summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/film.cc5
-rw-r--r--src/wx/config_dialog.cc2
-rw-r--r--src/wx/dcp_panel.cc2
-rw-r--r--src/wx/isdcf_metadata_dialog.cc15
-rw-r--r--src/wx/isdcf_metadata_dialog.h8
5 files changed, 21 insertions, 11 deletions
diff --git a/src/lib/film.cc b/src/lib/film.cc
index 4de7a12a5..405d8cc9b 100644
--- a/src/lib/film.cc
+++ b/src/lib/film.cc
@@ -781,6 +781,11 @@ Film::set_three_d (bool t)
{
_three_d = t;
signal_changed (THREE_D);
+
+ if (_three_d && _isdcf_metadata.two_d_version_of_three_d) {
+ _isdcf_metadata.two_d_version_of_three_d = false;
+ signal_changed (ISDCF_METADATA);
+ }
}
void
diff --git a/src/wx/config_dialog.cc b/src/wx/config_dialog.cc
index 652f8dacb..aabaa0fba 100644
--- a/src/wx/config_dialog.cc
+++ b/src/wx/config_dialog.cc
@@ -455,7 +455,7 @@ private:
void edit_isdcf_metadata_clicked ()
{
- ISDCFMetadataDialog* d = new ISDCFMetadataDialog (_panel, Config::instance()->default_isdcf_metadata ());
+ ISDCFMetadataDialog* d = new ISDCFMetadataDialog (_panel, Config::instance()->default_isdcf_metadata (), false);
d->ShowModal ();
Config::instance()->set_default_isdcf_metadata (d->isdcf_metadata ());
d->Destroy ();
diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc
index b38476dd7..31c019c93 100644
--- a/src/wx/dcp_panel.cc
+++ b/src/wx/dcp_panel.cc
@@ -501,7 +501,7 @@ DCPPanel::edit_isdcf_button_clicked ()
return;
}
- ISDCFMetadataDialog* d = new ISDCFMetadataDialog (_panel, _film->isdcf_metadata ());
+ ISDCFMetadataDialog* d = new ISDCFMetadataDialog (_panel, _film->isdcf_metadata (), _film->three_d ());
d->ShowModal ();
_film->set_isdcf_metadata (d->isdcf_metadata ());
d->Destroy ();
diff --git a/src/wx/isdcf_metadata_dialog.cc b/src/wx/isdcf_metadata_dialog.cc
index 47d159cb9..65f3b53ff 100644
--- a/src/wx/isdcf_metadata_dialog.cc
+++ b/src/wx/isdcf_metadata_dialog.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -17,16 +17,17 @@
*/
+#include "isdcf_metadata_dialog.h"
+#include "wx_util.h"
+#include "lib/film.h"
#include <wx/wx.h>
#include <wx/sizer.h>
#include <wx/spinctrl.h>
-#include "lib/film.h"
-#include "isdcf_metadata_dialog.h"
-#include "wx_util.h"
using boost::shared_ptr;
-ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm)
+/** @param threed true if the film is in 3D */
+ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm, bool threed)
: TableDialog (parent, _("ISDCF name"), 2, true)
{
add (_("Content version"), true);
@@ -68,6 +69,10 @@ ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm)
_two_d_version_of_three_d = add (new wxCheckBox (this, wxID_ANY, _("2D version of content available in 3D")));
add_spacer ();
+ if (threed) {
+ _two_d_version_of_three_d->Enable (false);
+ }
+
add (_("Mastered luminance (e.g. 14fl)"), true);
_mastered_luminance = add (new wxTextCtrl (this, wxID_ANY));
diff --git a/src/wx/isdcf_metadata_dialog.h b/src/wx/isdcf_metadata_dialog.h
index 516f83231..db34a7fca 100644
--- a/src/wx/isdcf_metadata_dialog.h
+++ b/src/wx/isdcf_metadata_dialog.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2012-2014 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -17,10 +17,10 @@
*/
+#include "table_dialog.h"
+#include "lib/isdcf_metadata.h"
#include <wx/textctrl.h>
#include <boost/shared_ptr.hpp>
-#include "lib/isdcf_metadata.h"
-#include "table_dialog.h"
class wxSpinCtrl;
class Film;
@@ -28,7 +28,7 @@ class Film;
class ISDCFMetadataDialog : public TableDialog
{
public:
- ISDCFMetadataDialog (wxWindow *, ISDCFMetadata);
+ ISDCFMetadataDialog (wxWindow *, ISDCFMetadata, bool threed);
ISDCFMetadata isdcf_metadata () const;