diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-09-14 20:35:36 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-09-14 20:35:36 +0100 |
| commit | 53c7f717da44c6ff681bde8946875e4f39764b25 (patch) | |
| tree | ba5a2976b36ff9d7d24bf82cf556afac731d2257 /src/lib/config.cc | |
| parent | 8e4486a37ae3ddc1f46e07c9113fed6ad042e3a3 (diff) | |
Allow configurable start mode for player.
Diffstat (limited to 'src/lib/config.cc')
| -rw-r--r-- | src/lib/config.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/lib/config.cc b/src/lib/config.cc index 0baaf487c..30271283b 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -163,6 +163,7 @@ Config::set_defaults () _gdc_username = optional<string>(); _gdc_password = optional<string>(); _interface_complexity = INTERFACE_SIMPLE; + _player_mode = PLAYER_MODE_WINDOW; _allowed_dcp_frame_rates.clear (); _allowed_dcp_frame_rates.push_back (24); @@ -481,6 +482,14 @@ try 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; + } /* Replace any cinemas from config.xml with those from the configured file */ if (boost::filesystem::exists (_cinemas_file)) { @@ -855,6 +864,18 @@ Config::write_config () const 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; + } + try { doc.write_to_file_formatted(config_file().string()); } catch (xmlpp::exception& e) { |
