Try to enable some WGL stuff.
[dcpomatic.git] / src / wx / config_dialog.h
index 77389c375ef3d8c94bfdf0d2c67d6a5ee1b5329f..ac90cd42da2af4ae7a2356485a2aedde6ceb1858 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2012-2017 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2012-2018 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
@@ -107,11 +107,12 @@ private:
        wxChoice* _language;
        wxCheckBox* _sound;
        wxChoice* _sound_output;
+       wxStaticText* _sound_output_details;
        wxCheckBox* _check_for_updates;
        wxCheckBox* _check_for_test_updates;
 };
 
-class CertificateChainEditor : public wxPanel
+class CertificateChainEditor : public wxDialog
 {
 public:
        CertificateChainEditor (
@@ -120,10 +121,9 @@ public:
                int border,
                boost::function<void (boost::shared_ptr<dcp::CertificateChain>)> set,
                boost::function<boost::shared_ptr<const dcp::CertificateChain> (void)> get,
-               boost::function<void (void)> nag_remake
+               boost::function<bool (void)> nag_alter
                );
 
-       void config_changed ();
        void add_button (wxWindow* button);
 
 private:
@@ -134,8 +134,9 @@ private:
        void remake_certificates ();
        void update_sensitivity ();
        void update_private_key ();
-       void load_private_key ();
+       void import_private_key ();
        void export_private_key ();
+       void export_chain ();
 
        wxListCtrl* _certificates;
        wxButton* _add_certificate;
@@ -143,23 +144,22 @@ private:
        wxButton* _remove_certificate;
        wxButton* _remake_certificates;
        wxStaticText* _private_key;
-       wxButton* _load_private_key;
+       wxButton* _import_private_key;
        wxButton* _export_private_key;
+       wxButton* _export_chain;
        wxStaticText* _private_key_bad;
        wxSizer* _sizer;
        wxBoxSizer* _button_sizer;
-       boost::shared_ptr<dcp::CertificateChain> _chain;
        boost::function<void (boost::shared_ptr<dcp::CertificateChain>)> _set;
        boost::function<boost::shared_ptr<const dcp::CertificateChain> (void)> _get;
-       boost::function<void (void)> _nag_remake;
+       boost::function<bool (void)> _nag_alter;
 };
 
 class KeysPage : public StandardPage
 {
 public:
-       KeysPage (wxSize panel_size, int border, bool sign)
+       KeysPage (wxSize panel_size, int border)
                : StandardPage (panel_size, border)
-               , _sign (sign)
        {}
 
        wxString GetName () const;
@@ -176,15 +176,12 @@ private:
        void setup ();
 
        void export_decryption_certificate ();
-       void export_decryption_chain ();
-       void config_changed ();
-       void nag_remake_decryption_chain ();
-
-       CertificateChainEditor* _signer;
-       CertificateChainEditor* _decryption;
-       wxButton* _export_decryption_certificate;
-       wxButton* _export_decryption_chain;
-       bool _sign;
+       void config_changed () {}
+       bool nag_alter_decryption_chain ();
+       void decryption_advanced ();
+       void signing_advanced ();
+       void export_decryption_chain_and_key ();
+       void import_decryption_chain_and_key ();
 };