Merge master.
[dcpomatic.git] / src / wx / config_dialog.h
index c9ca8034faf4dd069d58716c802792af30c44491..459d64dd701327c2e8bd07f6f5f9e027aae58ebd 100644 (file)
 */
 
 /** @file src/config_dialog.h
- *  @brief A dialogue to edit DVD-o-matic configuration.
+ *  @brief A dialogue to edit DCP-o-matic configuration.
  */
 
 #include <wx/wx.h>
 #include <wx/spinctrl.h>
 #include <wx/listctrl.h>
+#include <wx/filepicker.h>
+#include "wx_util.h"
 
-class Screen;
-class Server;
+class DirPickerCtrl;
+class wxNotebook;
+
+class ServerDescription;
 
 /** @class ConfigDialog
- *  @brief A dialogue to edit DVD-o-matic configuration.
+ *  @brief A dialogue to edit DCP-o-matic configuration.
  */
 class ConfigDialog : public wxDialog
 {
@@ -37,36 +41,59 @@ public:
        ConfigDialog (wxWindow *);
 
 private:
+       void set_language_changed (wxCommandEvent &);
+       void language_changed (wxCommandEvent &);
        void tms_ip_changed (wxCommandEvent &);
        void tms_path_changed (wxCommandEvent &);
        void tms_user_changed (wxCommandEvent &);
        void tms_password_changed (wxCommandEvent &);
        void num_local_encoding_threads_changed (wxCommandEvent &);
-       void colour_lut_changed (wxCommandEvent &);
-       void j2k_bandwidth_changed (wxCommandEvent &);
-       void reference_scaler_changed (wxCommandEvent &);
-       void edit_reference_filters_clicked (wxCommandEvent &);
-       void reference_filters_changed (std::vector<Filter const *>);
+       void default_still_length_changed (wxCommandEvent &);
+       void default_directory_changed (wxCommandEvent &);
+       void edit_default_dci_metadata_clicked (wxCommandEvent &);
        void add_server_clicked (wxCommandEvent &);
        void edit_server_clicked (wxCommandEvent &);
        void remove_server_clicked (wxCommandEvent &);
        void server_selection_changed (wxListEvent &);
+       void default_container_changed (wxCommandEvent &);
+       void default_dcp_content_type_changed (wxCommandEvent &);
+       void issuer_changed (wxCommandEvent &);
+       void creator_changed (wxCommandEvent &);
+
+       void add_server_to_control (ServerDescription *);
+       void setup_language_sensitivity ();
+
+       void make_misc_panel ();
+       void make_tms_panel ();
+       void make_metadata_panel ();
+       void make_servers_panel ();
 
-       void add_server_to_control (Server *);
-       
+       wxNotebook* _notebook;
+       wxPanel* _misc_panel;
+       wxPanel* _tms_panel;
+       wxPanel* _servers_panel;
+       wxPanel* _metadata_panel;
+       wxCheckBox* _set_language;
+       wxChoice* _language;
+       wxChoice* _default_container;
+       wxChoice* _default_dcp_content_type;
        wxTextCtrl* _tms_ip;
        wxTextCtrl* _tms_path;
        wxTextCtrl* _tms_user;
        wxTextCtrl* _tms_password;
        wxSpinCtrl* _num_local_encoding_threads;
-       wxComboBox* _colour_lut;
-       wxSpinCtrl* _j2k_bandwidth;
-       wxComboBox* _reference_scaler;
-       wxStaticText* _reference_filters;
-       wxButton* _reference_filters_button;
+       wxSpinCtrl* _default_still_length;
+#ifdef DCPOMATIC_USE_OWN_DIR_PICKER
+       DirPickerCtrl* _default_directory;
+#else
+       wxDirPickerCtrl* _default_directory;
+#endif
+       wxButton* _default_dci_metadata_button;
        wxListCtrl* _servers;
        wxButton* _add_server;
        wxButton* _edit_server;
        wxButton* _remove_server;
+       wxTextCtrl* _issuer;
+       wxTextCtrl* _creator;
 };