add editor to Theme Manager for modifiers
[ardour.git] / gtk2_ardour / stereo_panner.cc
index 718d5f38ee9465d4e3cebcbc66aa60deaa590651..43dd294d4372a6fd7b1f152c2718d1ad839bbde4 100644 (file)
@@ -37,6 +37,8 @@
 #include "ardour/panner.h"
 #include "ardour/panner_shell.h"
 
+#include "canvas/colors.h"
+
 #include "ardour_ui.h"
 #include "global_signals.h"
 #include "stereo_panner.h"
@@ -49,6 +51,7 @@
 using namespace std;
 using namespace Gtk;
 using namespace Gtkmm2ext;
+using namespace ARDOUR_UI_UTILS;
 
 static const int pos_box_size = 8;
 static const int lr_box_size = 15;
@@ -86,9 +89,7 @@ StereoPanner::StereoPanner (boost::shared_ptr<PannerShell> p)
        if (!have_font) {
                Pango::FontDescription font;
                Pango::AttrFontDesc* font_attr;
-               font = Pango::FontDescription ("ArdourMono");
-               font.set_weight (Pango::WEIGHT_BOLD);
-               font.set_size(9 * PANGO_SCALE);
+               font = Pango::FontDescription (ARDOUR_UI::config()->get_SmallBoldMonospaceFont());
                font_attr = new Pango::AttrFontDesc (Pango::Attribute::create_attr_font_desc (font));
                panner_font_attributes.change(*font_attr);
                delete font_attr;
@@ -178,6 +179,12 @@ StereoPanner::on_expose_event (GdkEventExpose*)
                r  = 0x606060ff;
        }
 
+       if (_send_mode) {
+               b = ARDOUR_UI::config()->color ("send strip base");
+               // b = rgba_from_style("SendStripBase",
+               // UINT_RGBA_R(b), UINT_RGBA_G(b), UINT_RGBA_B(b), 255,
+               // "fg");
+       }
        /* background */
 
        context->set_source_rgba (UINT_RGBA_R_FLT(b), UINT_RGBA_G_FLT(b), UINT_RGBA_B_FLT(b), UINT_RGBA_A_FLT(b));
@@ -663,23 +670,24 @@ StereoPanner::on_key_press_event (GdkEventKey* ev)
 void
 StereoPanner::set_colors ()
 {
-       colors[Normal].fill = ARDOUR_UI::config()->get_canvasvar_StereoPannerFill();
-       colors[Normal].outline = ARDOUR_UI::config()->get_canvasvar_StereoPannerOutline();
-       colors[Normal].text = ARDOUR_UI::config()->get_canvasvar_StereoPannerText();
-       colors[Normal].background = ARDOUR_UI::config()->get_canvasvar_StereoPannerBackground();
-       colors[Normal].rule = ARDOUR_UI::config()->get_canvasvar_StereoPannerRule();
-
-       colors[Mono].fill = ARDOUR_UI::config()->get_canvasvar_StereoPannerMonoFill();
-       colors[Mono].outline = ARDOUR_UI::config()->get_canvasvar_StereoPannerMonoOutline();
-       colors[Mono].text = ARDOUR_UI::config()->get_canvasvar_StereoPannerMonoText();
-       colors[Mono].background = ARDOUR_UI::config()->get_canvasvar_StereoPannerMonoBackground();
-       colors[Mono].rule = ARDOUR_UI::config()->get_canvasvar_StereoPannerRule();
-
-       colors[Inverted].fill = ARDOUR_UI::config()->get_canvasvar_StereoPannerInvertedFill();
-       colors[Inverted].outline = ARDOUR_UI::config()->get_canvasvar_StereoPannerInvertedOutline();
-       colors[Inverted].text = ARDOUR_UI::config()->get_canvasvar_StereoPannerInvertedText();
-       colors[Inverted].background = ARDOUR_UI::config()->get_canvasvar_StereoPannerInvertedBackground();
-       colors[Inverted].rule = ARDOUR_UI::config()->get_canvasvar_StereoPannerRule();
+       colors[Normal].fill = ARDOUR_UI::config()->color_mod ("stereo panner fill", "panner fill");
+       // colors[Normal].outline = ARDOUR_UI::config()->color ("stereo panner outline");
+       colors[Normal].outline = ArdourCanvas::HSV (colors[Normal].fill).outline().color ();
+       colors[Normal].text = ARDOUR_UI::config()->color ("stereo panner text");
+       colors[Normal].background = ARDOUR_UI::config()->color ("stereo panner bg");
+       colors[Normal].rule = ARDOUR_UI::config()->color ("stereo panner rule");
+
+       colors[Mono].fill = ARDOUR_UI::config()->color ("stereo panner mono fill");
+       colors[Mono].outline = ARDOUR_UI::config()->color ("stereo panner mono outline");
+       colors[Mono].text = ARDOUR_UI::config()->color ("stereo panner mono text");
+       colors[Mono].background = ARDOUR_UI::config()->color ("stereo panner mono bg");
+       colors[Mono].rule = ARDOUR_UI::config()->color ("stereo panner rule");
+
+       colors[Inverted].fill = ARDOUR_UI::config()->color_mod ("stereo panner inverted fill", "stereo panner inverted");
+       colors[Inverted].outline = ARDOUR_UI::config()->color ("stereo panner inverted outline");
+       colors[Inverted].text = ARDOUR_UI::config()->color ("stereo panner inverted text");
+       colors[Inverted].background = ARDOUR_UI::config()->color_mod ("stereo panner inverted bg", "stereo panner inverted bg");
+       colors[Inverted].rule = ARDOUR_UI::config()->color ("stereo panner rule");
 }
 
 void