projects
/
dcpomatic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
57202d2
)
Provide option of default DCI name details (#42).
author
Carl Hetherington
<cth@carlh.net>
Fri, 25 Jan 2013 19:29:50 +0000
(19:29 +0000)
committer
Carl Hetherington
<cth@carlh.net>
Fri, 25 Jan 2013 19:29:50 +0000
(19:29 +0000)
ChangeLog
patch
|
blob
|
history
src/lib/config.cc
patch
|
blob
|
history
src/lib/config.h
patch
|
blob
|
history
src/lib/film.cc
patch
|
blob
|
history
src/wx/config_dialog.cc
patch
|
blob
|
history
src/wx/config_dialog.h
patch
|
blob
|
history
diff --git
a/ChangeLog
b/ChangeLog
index 73e7eb85fd038c45e4ab455ef94cf50f6ff5c2d9..96813f774ccfc18cad200f807cec0d1da0d0dcf5 100644
(file)
--- a/
ChangeLog
+++ b/
ChangeLog
@@
-1,3
+1,9
@@
+2013-01-25 Carl Hetherington <cth@carlh.net>
+
+ * Add option to specify default details
+ for the DCI name details dialog in new
+ Films (#42).
+
2013-01-24 Carl Hetherington <cth@carlh.net>
* Version 0.72 released.
2013-01-24 Carl Hetherington <cth@carlh.net>
* Version 0.72 released.
diff --git
a/src/lib/config.cc
b/src/lib/config.cc
index 65d01bf00b64654e0e96762d6fb0f43f43e2aec6..c4659eecf6d66722c00ca4e5fbb467a1ad01d23a 100644
(file)
--- a/
src/lib/config.cc
+++ b/
src/lib/config.cc
@@
-86,6
+86,8
@@
Config::Config ()
} else if (k == "sound_processor") {
_sound_processor = SoundProcessor::from_id (v);
}
} else if (k == "sound_processor") {
_sound_processor = SoundProcessor::from_id (v);
}
+
+ _default_dci_metadata.read (k, v);
}
}
}
}
@@
-132,7
+134,9
@@
Config::write () const
f << "tms_path " << _tms_path << "\n";
f << "tms_user " << _tms_user << "\n";
f << "tms_password " << _tms_password << "\n";
f << "tms_path " << _tms_path << "\n";
f << "tms_user " << _tms_user << "\n";
f << "tms_password " << _tms_password << "\n";
- f << "sound_processor " << _sound_processor->id ();
+ f << "sound_processor " << _sound_processor->id () << "\n";
+
+ _default_dci_metadata.write (f);
}
string
}
string
diff --git
a/src/lib/config.h
b/src/lib/config.h
index c84ce76b514bf64cf6e370c8231871857832c534..98cbf67e576b3da04bdb648496ce154bc1d81177 100644
(file)
--- a/
src/lib/config.h
+++ b/
src/lib/config.h
@@
-27,6
+27,7
@@
#include <vector>
#include <boost/shared_ptr.hpp>
#include <boost/signals2.hpp>
#include <vector>
#include <boost/shared_ptr.hpp>
#include <boost/signals2.hpp>
+#include "dci_metadata.h"
class ServerDescription;
class Scaler;
class ServerDescription;
class Scaler;
@@
-94,6
+95,10
@@
public:
return _sound_processor;
}
return _sound_processor;
}
+ DCIMetadata default_dci_metadata () const {
+ return _default_dci_metadata;
+ }
+
/** @param n New number of local encoding threads */
void set_num_local_encoding_threads (int n) {
_num_local_encoding_threads = n;
/** @param n New number of local encoding threads */
void set_num_local_encoding_threads (int n) {
_num_local_encoding_threads = n;
@@
-140,6
+145,10
@@
public:
void set_tms_password (std::string p) {
_tms_password = p;
}
void set_tms_password (std::string p) {
_tms_password = p;
}
+
+ void set_default_dci_metadata (DCIMetadata d) {
+ _default_dci_metadata = d;
+ }
void write () const;
void write () const;
@@
-172,6
+181,8
@@
private:
std::string _tms_password;
/** Our sound processor */
SoundProcessor const * _sound_processor;
std::string _tms_password;
/** Our sound processor */
SoundProcessor const * _sound_processor;
+ /** Default DCI metadata for newly-created Films */
+ DCIMetadata _default_dci_metadata;
/** Singleton instance, or 0 */
static Config* _instance;
/** Singleton instance, or 0 */
static Config* _instance;
diff --git
a/src/lib/film.cc
b/src/lib/film.cc
index df89a2552592f1d3865024f00c199413e374c9f5..f5522b74a1add591d2829cc2e00b4c0e5176d09a 100644
(file)
--- a/
src/lib/film.cc
+++ b/
src/lib/film.cc
@@
-101,6
+101,7
@@
Film::Film (string d, bool must_exist)
, _subtitle_scale (1)
, _colour_lut (0)
, _j2k_bandwidth (200000000)
, _subtitle_scale (1)
, _colour_lut (0)
, _j2k_bandwidth (200000000)
+ , _dci_metadata (Config::instance()->default_dci_metadata ())
, _frames_per_second (0)
, _dirty (false)
{
, _frames_per_second (0)
, _dirty (false)
{
diff --git
a/src/wx/config_dialog.cc
b/src/wx/config_dialog.cc
index 9de8e700194642eaeff484c075f098c486b66919..8886fa160f1fcb76b9d985c6527df7a81276a4f8 100644
(file)
--- a/
src/wx/config_dialog.cc
+++ b/
src/wx/config_dialog.cc
@@
-35,6
+35,7
@@
#include "filter_dialog.h"
#include "server_dialog.h"
#include "dir_picker_ctrl.h"
#include "filter_dialog.h"
#include "server_dialog.h"
#include "dir_picker_ctrl.h"
+#include "dci_metadata_dialog.h"
using namespace std;
using boost::bind;
using namespace std;
using boost::bind;
@@
-79,6
+80,11
@@
ConfigDialog::ConfigDialog (wxWindow* parent)
table->Add (_default_directory, 1, wxEXPAND);
table->AddSpacer (0);
table->Add (_default_directory, 1, wxEXPAND);
table->AddSpacer (0);
+ add_label_to_sizer (table, this, "Default DCI name details");
+ _default_dci_metadata_button = new wxButton (this, wxID_ANY, _("Edit..."));
+ table->Add (_default_dci_metadata_button);
+ table->AddSpacer (1);
+
add_label_to_sizer (table, this, "Reference scaler for A/B");
_reference_scaler = new wxComboBox (this, wxID_ANY);
vector<Scaler const *> const sc = Scaler::all ();
add_label_to_sizer (table, this, "Reference scaler for A/B");
_reference_scaler = new wxComboBox (this, wxID_ANY);
vector<Scaler const *> const sc = Scaler::all ();
@@
-142,6
+148,8
@@
ConfigDialog::ConfigDialog (wxWindow* parent)
_default_directory->SetPath (std_to_wx (config->default_directory_or (wx_to_std (wxStandardPaths::Get().GetDocumentsDir()))));
_default_directory->Connect (wxID_ANY, wxEVT_COMMAND_DIRPICKER_CHANGED, wxCommandEventHandler (ConfigDialog::default_directory_changed), 0, this);
_default_directory->SetPath (std_to_wx (config->default_directory_or (wx_to_std (wxStandardPaths::Get().GetDocumentsDir()))));
_default_directory->Connect (wxID_ANY, wxEVT_COMMAND_DIRPICKER_CHANGED, wxCommandEventHandler (ConfigDialog::default_directory_changed), 0, this);
+ _default_dci_metadata_button->Connect (wxID_ANY, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (ConfigDialog::edit_default_dci_metadata_clicked), 0, this);
+
_reference_scaler->SetSelection (Scaler::as_index (config->reference_scaler ()));
_reference_scaler->Connect (wxID_ANY, wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler (ConfigDialog::reference_scaler_changed), 0, this);
_reference_scaler->SetSelection (Scaler::as_index (config->reference_scaler ()));
_reference_scaler->Connect (wxID_ANY, wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler (ConfigDialog::reference_scaler_changed), 0, this);
@@
-307,3
+315,12
@@
ConfigDialog::reference_filters_changed (vector<Filter const *> f)
pair<string, string> p = Filter::ffmpeg_strings (Config::instance()->reference_filters ());
_reference_filters->SetLabel (std_to_wx (p.first + " " + p.second));
}
pair<string, string> p = Filter::ffmpeg_strings (Config::instance()->reference_filters ());
_reference_filters->SetLabel (std_to_wx (p.first + " " + p.second));
}
+
+void
+ConfigDialog::edit_default_dci_metadata_clicked (wxCommandEvent &)
+{
+ DCIMetadataDialog* d = new DCIMetadataDialog (this, Config::instance()->default_dci_metadata ());
+ d->ShowModal ();
+ Config::instance()->set_default_dci_metadata (d->dci_metadata ());
+ d->Destroy ();
+}
diff --git
a/src/wx/config_dialog.h
b/src/wx/config_dialog.h
index 32123a0d7eb92748d3b0e3cd701dca15c614bb53..fdbe99a4c843671ebdc0353e77e5085941ca8ccb 100644
(file)
--- a/
src/wx/config_dialog.h
+++ b/
src/wx/config_dialog.h
@@
-45,6
+45,7
@@
private:
void tms_password_changed (wxCommandEvent &);
void num_local_encoding_threads_changed (wxCommandEvent &);
void default_directory_changed (wxCommandEvent &);
void tms_password_changed (wxCommandEvent &);
void num_local_encoding_threads_changed (wxCommandEvent &);
void default_directory_changed (wxCommandEvent &);
+ void edit_default_dci_metadata_clicked (wxCommandEvent &);
void reference_scaler_changed (wxCommandEvent &);
void edit_reference_filters_clicked (wxCommandEvent &);
void reference_filters_changed (std::vector<Filter const *>);
void reference_scaler_changed (wxCommandEvent &);
void edit_reference_filters_clicked (wxCommandEvent &);
void reference_filters_changed (std::vector<Filter const *>);
@@
-64,7
+65,8
@@
private:
DirPickerCtrl* _default_directory;
#else
wxDirPickerCtrl* _default_directory;
DirPickerCtrl* _default_directory;
#else
wxDirPickerCtrl* _default_directory;
-#endif
+#endif
+ wxButton* _default_dci_metadata_button;
wxComboBox* _reference_scaler;
wxStaticText* _reference_filters;
wxButton* _reference_filters_button;
wxComboBox* _reference_scaler;
wxStaticText* _reference_filters;
wxButton* _reference_filters_button;