diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2014-01-14 21:13:21 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2014-01-14 21:13:21 -0500 |
commit | 37b1f5017e904005fae6b815b1519b3fa595d8d3 (patch) | |
tree | 35f4da37569cfadc1554f5f212efa54e8ec89d91 /gtk2_ardour/mono_panner.cc | |
parent | adc2edc05cf2357d911c4767f6bb63bcf53145d8 (diff) | |
parent | 35c170937de6150ae09154f96e4920d30e83f6ce (diff) |
merge with master
Diffstat (limited to 'gtk2_ardour/mono_panner.cc')
-rw-r--r-- | gtk2_ardour/mono_panner.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/gtk2_ardour/mono_panner.cc b/gtk2_ardour/mono_panner.cc index 1a2b685aeb..e136c05153 100644 --- a/gtk2_ardour/mono_panner.cc +++ b/gtk2_ardour/mono_panner.cc @@ -89,9 +89,10 @@ MonoPanner::MonoPanner (boost::shared_ptr<ARDOUR::PannerShell> 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,6 +506,16 @@ MonoPanner::bypass_handler () queue_draw (); } +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 () { |