X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Fwx%2Fplayer_config_dialog.cc;h=258db9a5734b61ed0fa87016673cf0103569320f;hp=a7d4ab71c0b86a77492d6902efa7d0bbd48fdd90;hb=53c7f717da44c6ff681bde8946875e4f39764b25;hpb=8e4486a37ae3ddc1f46e07c9113fed6ad042e3a3 diff --git a/src/wx/player_config_dialog.cc b/src/wx/player_config_dialog.cc index a7d4ab71c..258db9a57 100644 --- a/src/wx/player_config_dialog.cc +++ b/src/wx/player_config_dialog.cc @@ -85,7 +85,52 @@ private: add_language_controls (table, r); add_play_sound_controls (table, r); add_update_controls (table, r); + + add_label_to_sizer (table, _panel, _("Start player as"), true, wxGBPosition(r, 0)); + _player_mode = new wxChoice (_panel, wxID_ANY); + _player_mode->Append (_("window")); + _player_mode->Append (_("full screen")); + _player_mode->Append (_("full screen with controls on second monitor")); + table->Add (_player_mode, wxGBPosition(r, 1)); + ++r; + + _player_mode->Bind (wxEVT_CHOICE, bind(&PlayerGeneralPage::player_mode_changed, this)); + } + + void config_changed () + { + GeneralPage::config_changed (); + + switch (Config::instance()->player_mode()) { + case Config::PLAYER_MODE_WINDOW: + checked_set (_player_mode, 0); + break; + case Config::PLAYER_MODE_FULL: + checked_set (_player_mode, 1); + break; + case Config::PLAYER_MODE_DUAL: + checked_set (_player_mode, 2); + break; + } } + +private: + void player_mode_changed () + { + switch (_player_mode->GetSelection()) { + case 0: + Config::instance()->set_player_mode(Config::PLAYER_MODE_WINDOW); + break; + case 1: + Config::instance()->set_player_mode(Config::PLAYER_MODE_FULL); + break; + case 2: + Config::instance()->set_player_mode(Config::PLAYER_MODE_DUAL); + break; + } + } + + wxChoice* _player_mode; }; wxPreferencesEditor*