X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fconfig.cc;h=8c76671d4f4062702e1be17ff4524595e8d49919;hb=b688d7362de5c0319284a74f46d17928b1be91eb;hp=7e2cdabf649970355fccdf0c81160f6aa692244b;hpb=f82bdaa6ffe1a9e62a010de405f8bbb7ea392f00;p=dcpomatic.git diff --git a/src/lib/config.cc b/src/lib/config.cc index 7e2cdabf6..8c76671d4 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -156,6 +156,13 @@ Config::set_defaults () for (int i = 0; i < NOTIFICATION_COUNT; ++i) { _notification[i] = false; } + _barco_username = optional(); + _barco_password = optional(); + _christie_username = optional(); + _christie_password = optional(); + _gdc_username = optional(); + _gdc_password = optional(); + _interface_complexity = INTERFACE_SIMPLE; _allowed_dcp_frame_rates.clear (); _allowed_dcp_frame_rates.push_back (24); @@ -463,6 +470,18 @@ try } } + _barco_username = f.optional_string_child("BarcoUsername"); + _barco_password = f.optional_string_child("BarcoPassword"); + _christie_username = f.optional_string_child("ChristieUsername"); + _christie_password = f.optional_string_child("ChristiePassword"); + _gdc_username = f.optional_string_child("GDCUsername"); + _gdc_password = f.optional_string_child("GDCPassword"); + + optional ic = f.optional_string_child("InterfaceComplexity"); + if (ic && *ic == "simple") { + _interface_complexity = INTERFACE_SIMPLE; + } + /* Replace any cinemas from config.xml with those from the configured file */ if (boost::filesystem::exists (_cinemas_file)) { cxml::Document f ("Cinemas"); @@ -806,6 +825,36 @@ Config::write_config () const e->add_child_text (_notification[i] ? "1" : "0"); } + if (_barco_username) { + root->add_child("BarcoUsername")->add_child_text(*_barco_username); + } + if (_barco_password) { + root->add_child("BarcoPassword")->add_child_text(*_barco_password); + } + + if (_christie_username) { + root->add_child("ChristieUsername")->add_child_text(*_christie_username); + } + if (_christie_password) { + root->add_child("ChristiePassword")->add_child_text(*_christie_password); + } + + if (_gdc_username) { + root->add_child("GDCUsername")->add_child_text(*_gdc_username); + } + if (_gdc_password) { + root->add_child("GDCPassword")->add_child_text(*_gdc_password); + } + + switch (_interface_complexity) { + case INTERFACE_SIMPLE: + root->add_child("InterfaceComplexity")->add_child_text("simple"); + break; + case INTERFACE_FULL: + root->add_child("InterfaceComplexity")->add_child_text("full"); + break; + } + try { doc.write_to_file_formatted(config_file().string()); } catch (xmlpp::exception& e) {