_tms_password = v;
} else if (k == N_("sound_processor")) {
_sound_processor = SoundProcessor::from_id (v);
+ } else if (k == "language") {
+ _language = v;
}
_default_dci_metadata.read (k, v);
ofstream f (file().c_str ());
f << N_("num_local_encoding_threads ") << _num_local_encoding_threads << N_("\n")
<< N_("default_directory ") << _default_directory << N_("\n")
- << N_("server_port ") << _server_port << N_("\n")
- << N_("reference_scaler ") << _reference_scaler->id () << N_("\n");
+ << N_("server_port ") << _server_port << N_("\n");
+
+ if (_reference_scaler) {
+ f << "reference_scaler " << _reference_scaler->id () << "\n";
+ }
for (vector<Filter const *>::const_iterator i = _reference_filters.begin(); i != _reference_filters.end(); ++i) {
f << N_("reference_filter ") << (*i)->id () << N_("\n");
f << N_("tms_path ") << _tms_path << N_("\n");
f << N_("tms_user ") << _tms_user << N_("\n");
f << N_("tms_password ") << _tms_password << N_("\n");
- f << N_("sound_processor ") << _sound_processor->id () << N_("\n");
+ if (_sound_processor) {
+ f << "sound_processor " << _sound_processor->id () << "\n";
+ }
+ if (_language) {
+ f << "language " << _language.get() << "\n";
+ }
_default_dci_metadata.write (f);
}
return _default_dci_metadata;
}
+ boost::optional<std::string> language () const {
+ return _language;
+ }
+
/** @param n New number of local encoding threads */
void set_num_local_encoding_threads (int n) {
_num_local_encoding_threads = n;
void set_default_dci_metadata (DCIMetadata d) {
_default_dci_metadata = d;
}
+
+ void set_language (std::string l) {
+ _language = l;
+ }
void write () const;
std::list<int> _allowed_dcp_frame_rates;
/** Default DCI metadata for newly-created Films */
DCIMetadata _default_dci_metadata;
+ boost::optional<std::string> _language;
/** Singleton instance, or 0 */
static Config* _instance;
setup_i18n ()
{
int language = wxLANGUAGE_DEFAULT;
+
+ if (Config::instance()->language()) {
+ wxLanguageInfo const * li = wxLocale::FindLanguageInfo (std_to_wx (Config::instance()->language().get()));
+ language = li->Language;
+ }
if (wxLocale::IsAvailable (language)) {
locale = new wxLocale (language, wxLOCALE_LOAD_DEFAULT);