+ typedef std::map<std::string,Gtkmm2ext::Color> Colors;
+ typedef std::map<std::string,std::string> ColorAliases;
+ typedef std::map<std::string,Gtkmm2ext::SVAModifier> Modifiers;
+
+ Colors colors;
+ ColorAliases color_aliases;
+ Modifiers modifiers;
+
+ void set_alias (std::string const & name, std::string const & alias);
+ void set_color (const std::string& name, Gtkmm2ext::Color);
+ void set_modifier (std::string const &, Gtkmm2ext::SVAModifier svam);
+
+ std::string color_as_alias (Gtkmm2ext::Color c);
+ Gtkmm2ext::Color quantized (Gtkmm2ext::Color) const;
+
+ Gtkmm2ext::Color color (const std::string&, bool* failed = 0) const;
+ Gtkmm2ext::Color color_mod (std::string const & color, std::string const & modifier) const;
+ Gtkmm2ext::Color color_mod (const Gtkmm2ext::Color& color, std::string const & modifier) const;
+ Gtkmm2ext::HSV color_hsv (const std::string&) const;
+ Gtkmm2ext::SVAModifier modifier (const std::string&) const;
+
+ static std::string color_to_hex_string (Gtkmm2ext::Color c);
+ static std::string color_to_hex_string_no_alpha (Gtkmm2ext::Color c);
+
+ void reset_dpi ();
+ float get_ui_scale ();
+
+ sigc::signal<void,std::string> ParameterChanged;
+ void map_parameters (boost::function<void (std::string)>&);
+
+ void parameter_changed (std::string);
+
+ /** called before initializing any part of the GUI. Sets up
+ * any runtime environment required to make the GUI work
+ * in specific ways.
+ */
+ int pre_gui_init ();
+
+ /** called after the GUI toolkit has been initialized. */
+ UIConfiguration* post_gui_init ();
+
+#undef UI_CONFIG_VARIABLE
+#define UI_CONFIG_VARIABLE(Type,var,name,value) \
+ Type get_##var () const { return var.get(); } \
+ bool set_##var (Type val) { bool ret = var.set (val); if (ret) { ParameterChanged (name); } return ret; }