X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fconfig_dialog.h;h=5203af609f8e13673968d50dca03610cdf8496ee;hb=0b94724919f01edc7fc91e899ef179a7d94da039;hp=896b463d819d01af0c889035bc41559f90b9ef6a;hpb=0fb8f8c4ec481e342d26a332595d39fcf8cd4e94;p=dcpomatic.git diff --git a/src/wx/config_dialog.h b/src/wx/config_dialog.h index 896b463d8..5203af609 100644 --- a/src/wx/config_dialog.h +++ b/src/wx/config_dialog.h @@ -44,6 +44,8 @@ #include #include +class AudioMappingView; + class Page { public: @@ -89,24 +91,18 @@ public: protected: void add_language_controls (wxGridBagSizer* table, int& r); - void add_play_sound_controls (wxGridBagSizer* table, int& r); void add_update_controls (wxGridBagSizer* table, int& r); virtual void config_changed (); private: void setup_sensitivity (); - boost::optional get_sound_output (); void set_language_changed (); void language_changed (); void check_for_updates_changed (); void check_for_test_updates_changed (); - void sound_changed (); - void sound_output_changed (); wxCheckBox* _set_language; wxChoice* _language; - wxCheckBox* _sound; - wxChoice* _sound_output; wxCheckBox* _check_for_updates; wxCheckBox* _check_for_test_updates; }; @@ -120,7 +116,7 @@ public: int border, boost::function)> set, boost::function (void)> get, - boost::function nag_remake + boost::function nag_alter ); void add_button (wxWindow* button); @@ -151,7 +147,7 @@ private: wxBoxSizer* _button_sizer; boost::function)> _set; boost::function (void)> _get; - boost::function _nag_remake; + boost::function _nag_alter; }; class KeysPage : public StandardPage @@ -176,7 +172,7 @@ private: void export_decryption_certificate (); void config_changed () {} - bool nag_remake_decryption_chain (); + bool nag_alter_decryption_chain (); void decryption_advanced (); void signing_advanced (); void export_decryption_chain_and_key (); @@ -184,4 +180,67 @@ private: }; +class SoundPage : public StandardPage +{ +public: + SoundPage (wxSize panel_size, int border) + : StandardPage (panel_size, border) + {} + + wxString GetName() const; + +#ifdef DCPOMATIC_OSX + wxBitmap GetLargeIcon () const + { + return wxBitmap ("sound", wxBITMAP_TYPE_PNG_RESOURCE); + } +#endif + +private: + + void setup (); + void config_changed (); + boost::optional get_sound_output (); + void sound_changed (); + void sound_output_changed (); + void setup_sensitivity (); + void map_changed (AudioMapping m); + void reset_to_default (); + + wxCheckBox* _sound; + wxChoice* _sound_output; + wxStaticText* _sound_output_details; + AudioMappingView* _map; + Button* _reset_to_default; +}; + +class LocationsPage : public StandardPage +{ +public: + LocationsPage (wxSize panel_size, int border); + + wxString GetName () const; + +#ifdef DCPOMATIC_OSX + wxBitmap GetLargeIcon () const; +#endif + +private: + void setup (); + void config_changed (); + void content_directory_changed (); + void playlist_directory_changed (); + void kdm_directory_changed (); + +#ifdef DCPOMATIC_VARIANT_SWAROOP + void background_image_changed (); +#endif + + wxDirPickerCtrl* _content_directory; + wxDirPickerCtrl* _playlist_directory; + wxDirPickerCtrl* _kdm_directory; +#ifdef DCPOMATIC_VARIANT_SWAROOP + FilePickerCtrl* _background_image; +#endif +}; #endif