Change bitmap_path to take a full name with extension.
[dcpomatic.git] / src / wx / config_dialog.h
index 818ab4def911545f714138859779832495f436f2..c767929f75f76fc9558bade2ca846b890e3e3620 100644 (file)
 
 */
 
+
 #ifndef DCPOMATIC_CONFIG_DIALOG_H
 #define DCPOMATIC_CONFIG_DIALOG_H
 
-#include "wx_util.h"
+
 #include "editable_list.h"
 #include "make_chain_dialog.h"
+#include "wx_util.h"
 #include "lib/config.h"
-#include "lib/ratio.h"
-#include "lib/filter.h"
+#include "lib/cross.h"
 #include "lib/dcp_content_type.h"
+#include "lib/exceptions.h"
+#include "lib/filter.h"
 #include "lib/log.h"
+#include "lib/ratio.h"
 #include "lib/util.h"
-#include "lib/cross.h"
-#include "lib/exceptions.h"
-#include "lib/warnings.h"
-#include <dcp/locale_convert.h>
-#include <dcp/exceptions.h>
 #include <dcp/certificate_chain.h>
-DCPOMATIC_DISABLE_WARNINGS
-#include <wx/stdpaths.h>
+#include <dcp/exceptions.h>
+#include <dcp/locale_convert.h>
+#include <dcp/warnings.h>
+LIBDCP_DISABLE_WARNINGS
+#include <wx/filepicker.h>
 #include <wx/preferences.h>
 #include <wx/spinctrl.h>
-#include <wx/filepicker.h>
-DCPOMATIC_ENABLE_WARNINGS
+#include <wx/stdpaths.h>
 #include <RtAudio.h>
+LIBDCP_ENABLE_WARNINGS
 #include <boost/filesystem.hpp>
-#include <iostream>
+
 
 class AudioMappingView;
 
+
 class Page : public wxPreferencesPage
 {
 public:
        Page (wxSize panel_size, int border);
        virtual ~Page () {}
 
-       wxWindow* CreateWindow (wxWindow* parent);
+       wxWindow* CreateWindow (wxWindow* parent) override;
 
 protected:
        wxWindow* create_window (wxWindow* parent);
@@ -74,24 +77,25 @@ private:
        bool _window_exists;
 };
 
+
 class GeneralPage : public Page
 {
 public:
        GeneralPage (wxSize panel_size, int border);
 
-       wxString GetName () const;
+       wxString GetName () const override;
 
 #ifdef DCPOMATIC_OSX
-       wxBitmap GetLargeIcon () const
+       wxBitmap GetLargeIcon () const override
        {
-               return wxBitmap ("general", wxBITMAP_TYPE_PNG_RESOURCE);
+               return wxBitmap(bitmap_path("general.png"), wxBITMAP_TYPE_PNG);
        }
 #endif
 
 protected:
        void add_language_controls (wxGridBagSizer* table, int& r);
        void add_update_controls (wxGridBagSizer* table, int& r);
-       virtual void config_changed ();
+       void config_changed () override;
 
 private:
        void setup_sensitivity ();
@@ -106,6 +110,7 @@ private:
        wxCheckBox* _check_for_test_updates;
 };
 
+
 class CertificateChainEditor : public wxDialog
 {
 public:
@@ -113,9 +118,9 @@ public:
                wxWindow* parent,
                wxString title,
                int border,
-               boost::function<void (std::shared_ptr<dcp::CertificateChain>)> set,
-               boost::function<std::shared_ptr<const dcp::CertificateChain> (void)> get,
-               boost::function<bool (void)> nag_alter
+               std::function<void (std::shared_ptr<dcp::CertificateChain>)> set,
+               std::function<std::shared_ptr<const dcp::CertificateChain> (void)> get,
+               std::function<bool (void)> nag_alter
                );
 
        void add_button (wxWindow* button);
@@ -144,9 +149,9 @@ private:
        wxStaticText* _private_key_bad;
        wxSizer* _sizer;
        wxBoxSizer* _button_sizer;
-       boost::function<void (std::shared_ptr<dcp::CertificateChain>)> _set;
-       boost::function<std::shared_ptr<const dcp::CertificateChain> (void)> _get;
-       boost::function<bool (void)> _nag_alter;
+       std::function<void (std::shared_ptr<dcp::CertificateChain>)> _set;
+       std::function<std::shared_ptr<const dcp::CertificateChain> (void)> _get;
+       std::function<bool (void)> _nag_alter;
 };
 
 class KeysPage : public Page
@@ -156,26 +161,27 @@ public:
                : Page (panel_size, border)
        {}
 
-       wxString GetName () const;
+       wxString GetName () const override;
 
 #ifdef DCPOMATIC_OSX
-       wxBitmap GetLargeIcon () const
+       wxBitmap GetLargeIcon () const override
        {
-               return wxBitmap ("keys", wxBITMAP_TYPE_PNG_RESOURCE);
+               return wxBitmap(bitmap_path("keys.png"), wxBITMAP_TYPE_PNG);
        }
 #endif
 
 private:
 
-       void setup ();
+       void setup () override;
 
        void export_decryption_certificate ();
-       void config_changed () {}
+       void config_changed () override {}
        bool nag_alter_decryption_chain ();
        void decryption_advanced ();
        void signing_advanced ();
        void export_decryption_chain_and_key ();
        void import_decryption_chain_and_key ();
+       void remake_signing ();
 };
 
 
@@ -186,19 +192,19 @@ public:
                : Page (panel_size, border)
        {}
 
-       wxString GetName() const;
+       wxString GetName() const override;
 
 #ifdef DCPOMATIC_OSX
-       wxBitmap GetLargeIcon () const
+       wxBitmap GetLargeIcon () const override
        {
-               return wxBitmap ("sound", wxBITMAP_TYPE_PNG_RESOURCE);
+               return wxBitmap(bitmap_path("sound.png"), wxBITMAP_TYPE_PNG);
        }
 #endif
 
 private:
 
-       void setup ();
-       void config_changed ();
+       void setup () override;
+       void config_changed () override;
         boost::optional<std::string> get_sound_output ();
        void sound_changed ();
        void sound_output_changed ();
@@ -213,20 +219,21 @@ private:
        Button* _reset_to_default;
 };
 
+
 class LocationsPage : public Page
 {
 public:
        LocationsPage (wxSize panel_size, int border);
 
-       wxString GetName () const;
+       wxString GetName () const override;
 
 #ifdef DCPOMATIC_OSX
-       wxBitmap GetLargeIcon () const;
+       wxBitmap GetLargeIcon () const override;
 #endif
 
 private:
-       void setup ();
-       void config_changed ();
+       void setup () override;
+       void config_changed () override;
        void content_directory_changed ();
        void playlist_directory_changed ();
        void kdm_directory_changed ();
@@ -235,4 +242,5 @@ private:
        wxDirPickerCtrl* _playlist_directory;
        wxDirPickerCtrl* _kdm_directory;
 };
+
 #endif