_christie_password = optional<string>();
_gdc_username = optional<string>();
_gdc_password = optional<string>();
+ _interface_complexity = INTERFACE_SIMPLE;
+ _player_mode = PLAYER_MODE_WINDOW;
+ _respect_kdm_validity_periods = false;
_allowed_dcp_frame_rates.clear ();
_allowed_dcp_frame_rates.push_back (24);
_gdc_username = f.optional_string_child("GDCUsername");
_gdc_password = f.optional_string_child("GDCPassword");
+ optional<string> ic = f.optional_string_child("InterfaceComplexity");
+ if (ic && *ic == "full") {
+ _interface_complexity = INTERFACE_FULL;
+ }
+ optional<string> pm = f.optional_string_child("PlayerMode");
+ if (pm && *pm == "window") {
+ _player_mode = PLAYER_MODE_WINDOW;
+ } else if (pm && *pm == "full") {
+ _player_mode = PLAYER_MODE_FULL;
+ } else if (pm && *pm == "dual") {
+ _player_mode = PLAYER_MODE_DUAL;
+ }
+
+ _respect_kdm_validity_periods = f.optional_bool_child("RespectKDMValidityPeriods").get_value_or(false);
+
/* Replace any cinemas from config.xml with those from the configured file */
if (boost::filesystem::exists (_cinemas_file)) {
cxml::Document f ("Cinemas");
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;
+ }
+
+ switch (_player_mode) {
+ case PLAYER_MODE_WINDOW:
+ root->add_child("PlayerMode")->add_child_text("window");
+ break;
+ case PLAYER_MODE_FULL:
+ root->add_child("PlayerMode")->add_child_text("full");
+ break;
+ case PLAYER_MODE_DUAL:
+ root->add_child("PlayerMode")->add_child_text("dual");
+ break;
+ }
+
+ root->add_child("RespectKDMValidityPeriods")->add_child_text(_respect_kdm_validity_periods ? "1" : "0");
+
try {
doc.write_to_file_formatted(config_file().string());
} catch (xmlpp::exception& e) {