From 6bebe1d886820c5eb18914507a2c90f3e6c2d555 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 14 Jan 2014 23:08:34 +0100 Subject: update panGUI connections (panner-shell vs pannable vs panner) --- gtk2_ardour/mono_panner.cc | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'gtk2_ardour/mono_panner.cc') diff --git a/gtk2_ardour/mono_panner.cc b/gtk2_ardour/mono_panner.cc index 1559aacd99..d82d236b32 100644 --- a/gtk2_ardour/mono_panner.cc +++ b/gtk2_ardour/mono_panner.cc @@ -89,9 +89,10 @@ MonoPanner::MonoPanner (boost::shared_ptr p) have_font = true; } - position_control->Changed.connect (connections, invalidator(*this), boost::bind (&MonoPanner::value_change, this), gui_context()); + position_control->Changed.connect (panvalue_connections, invalidator(*this), boost::bind (&MonoPanner::value_change, this), gui_context()); - _panner_shell->Changed.connect (connections, invalidator (*this), boost::bind (&MonoPanner::bypass_handler, this), gui_context()); + _panner_shell->Changed.connect (panshell_connections, invalidator (*this), boost::bind (&MonoPanner::bypass_handler, this), gui_context()); + _panner_shell->PannableChanged.connect (panshell_connections, invalidator (*this), boost::bind (&MonoPanner::pannable_handler, this), gui_context()); ColorsChanged.connect (sigc::mem_fun (*this, &MonoPanner::color_handler)); set_tooltip (); @@ -505,7 +506,17 @@ MonoPanner::bypass_handler () queue_draw (); } - PannerEditor* +void +MonoPanner::pannable_handler () +{ + panvalue_connections.drop_connections(); + position_control = _panner->pannable()->pan_azimuth_control; + position_binder.set_controllable(position_control); + position_control->Changed.connect (panvalue_connections, invalidator(*this), boost::bind (&MonoPanner::value_change, this), gui_context()); + queue_draw (); +} + +PannerEditor* MonoPanner::editor () { return new MonoPannerEditor (this); -- cgit v1.2.3