diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2011-01-07 17:36:01 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2011-01-07 17:36:01 +0000 |
commit | 7d252dbbb9f6698619e6592025824d81a83cffba (patch) | |
tree | 53edfdd3ee488d3d2c7b054c0282fdde28d74baf /gtk2_ardour/stereo_panner.cc | |
parent | 603d07a80bb293cb7819e50397111674a96b142c (diff) |
new mono panner widget; make stereo panner respond to changes in colors immediately
git-svn-id: svn://localhost/ardour2/branches/3.0@8474 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/stereo_panner.cc')
-rw-r--r-- | gtk2_ardour/stereo_panner.cc | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/gtk2_ardour/stereo_panner.cc b/gtk2_ardour/stereo_panner.cc index 83ebb18742..70190cc859 100644 --- a/gtk2_ardour/stereo_panner.cc +++ b/gtk2_ardour/stereo_panner.cc @@ -52,7 +52,6 @@ static const int top_step = 2; StereoPanner::ColorScheme StereoPanner::colors[3]; bool StereoPanner::have_colors = false; -PBD::Signal0<void> StereoPanner::color_change; StereoPanner::StereoPanner (boost::shared_ptr<PBD::Controllable> position, boost::shared_ptr<PBD::Controllable> width) : position_control (position) @@ -86,7 +85,7 @@ StereoPanner::StereoPanner (boost::shared_ptr<PBD::Controllable> position, boost Gdk::SCROLL_MASK| Gdk::POINTER_MOTION_MASK); - color_change.connect (connections, invalidator (*this), boost::bind (&DrawingArea::queue_draw, this), gui_context()); + ColorsChanged.connect (sigc::mem_fun (*this, &StereoPanner::color_handler)); } StereoPanner::~StereoPanner () @@ -621,16 +620,24 @@ StereoPanner::set_colors () colors[Normal].outline = ARDOUR_UI::config()->canvasvar_StereoPannerOutline.get(); colors[Normal].text = ARDOUR_UI::config()->canvasvar_StereoPannerText.get(); colors[Normal].background = ARDOUR_UI::config()->canvasvar_StereoPannerBackground.get(); + colors[Normal].rule = ARDOUR_UI::config()->canvasvar_StereoPannerRule.get(); colors[Mono].fill = ARDOUR_UI::config()->canvasvar_StereoPannerMonoFill.get(); colors[Mono].outline = ARDOUR_UI::config()->canvasvar_StereoPannerMonoOutline.get(); colors[Mono].text = ARDOUR_UI::config()->canvasvar_StereoPannerMonoText.get(); colors[Mono].background = ARDOUR_UI::config()->canvasvar_StereoPannerMonoBackground.get(); + colors[Mono].rule = ARDOUR_UI::config()->canvasvar_StereoPannerRule.get(); colors[Inverted].fill = ARDOUR_UI::config()->canvasvar_StereoPannerInvertedFill.get(); colors[Inverted].outline = ARDOUR_UI::config()->canvasvar_StereoPannerInvertedOutline.get(); colors[Inverted].text = ARDOUR_UI::config()->canvasvar_StereoPannerInvertedText.get(); colors[Inverted].background = ARDOUR_UI::config()->canvasvar_StereoPannerInvertedBackground.get(); + colors[Inverted].rule = ARDOUR_UI::config()->canvasvar_StereoPannerRule.get(); +} - color_change (); /* EMIT SIGNAL */ +void +StereoPanner::color_handler () +{ + set_colors (); + queue_draw (); } |