change all GUI config files (GTK RC and our own XML config files) to use product...
[ardour.git] / gtk2_ardour / theme_manager.h
index 6e4adc57a078980e35e911ce45efeaa4190abdbc..dee5b705c05a26684588ffb26e35bae5f139cce1 100644 (file)
 #define __ardour_gtk_color_manager_h__
 
 #include <gtkmm/treeview.h>
-#include <gtkmm/liststore.h>
+#include <gtkmm/treestore.h>
 #include <gtkmm/scrolledwindow.h>
 #include <gtkmm/colorselection.h>
 #include <gtkmm/radiobutton.h>
 #include <gtkmm/button.h>
+#include <gtkmm/scale.h>
 #include <gtkmm/rc.h>
-#include "ardour_dialog.h"
+#include "ardour_window.h"
 #include "ui_config.h"
 
-class ThemeManager : public ArdourDialog
+class ThemeManager : public ArdourWindow
 {
   public:
        ThemeManager();
@@ -42,33 +43,51 @@ class ThemeManager : public ArdourDialog
 
        void on_dark_theme_button_toggled ();
        void on_light_theme_button_toggled ();
+       void on_flat_buttons_toggled ();
+       void on_blink_rec_arm_toggled ();
+        void on_region_color_toggled ();
+        void on_show_clip_toggled ();
+        void on_waveform_gradient_depth_change ();
+        void on_timeline_item_gradient_depth_change ();
+       void on_all_dialogs_toggled ();
+       void on_icon_set_changed ();
 
   private:
        struct ColorDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
            ColorDisplayModelColumns() {
                    add (name);
-                   add (color);
                    add (gdkcolor);
-                       add (pVar);
+                   add (pVar);
                    add (rgba);
            }
 
            Gtk::TreeModelColumn<std::string>  name;
-           Gtk::TreeModelColumn<std::string>  color;
-           Gtk::TreeModelColumn<Gdk::Color>     gdkcolor;
-           Gtk::TreeModelColumn<UIConfigVariable<uint32_t> *> pVar;
-           Gtk::TreeModelColumn<uint32_t>       rgba;
+           Gtk::TreeModelColumn<Gdk::Color>   gdkcolor;
+           Gtk::TreeModelColumn<ColorVariable<uint32_t> *> pVar;
+           Gtk::TreeModelColumn<uint32_t>     rgba;
        };
 
        ColorDisplayModelColumns columns;
        Gtk::TreeView color_display;
-       Glib::RefPtr<Gtk::ListStore> color_list;
+       Glib::RefPtr<Gtk::TreeStore> color_list;
        Gtk::ColorSelectionDialog color_dialog;
        Gtk::ScrolledWindow scroller;
        Gtk::HBox theme_selection_hbox;
        Gtk::RadioButton dark_button;
        Gtk::RadioButton light_button;
        Gtk::Button reset_button;
+       Gtk::CheckButton flat_buttons;
+       Gtk::CheckButton blink_rec_button;
+       Gtk::CheckButton region_color_button;
+       Gtk::CheckButton show_clipping_button;
+        Gtk::HScale waveform_gradient_depth;
+        Gtk::Label waveform_gradient_depth_label;
+        Gtk::HScale timeline_item_gradient_depth;
+        Gtk::Label timeline_item_gradient_depth_label;
+       Gtk::CheckButton all_dialogs;
+       Gtk::CheckButton gradient_waveforms;
+       Gtk::Label icon_set_label;
+       Gtk::ComboBoxText icon_set_dropdown;
 
        bool button_press_event (GdkEventButton*);
 };