diff options
author | Robin Gareus <robin@gareus.org> | 2017-07-23 19:44:45 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-07-24 01:59:03 +0200 |
commit | 25df9f1ba5c65fbe89cafffd1dc02dc44e60ec77 (patch) | |
tree | 6f04127c629e95401f2d219fdf68b3bfcec7b3ca /gtk2_ardour/processor_box.cc | |
parent | 183351f33359b0d110dcc12a8121b6fac112bc14 (diff) |
Start/end touch for generic-UI knob and proc-box inline ctrls
Diffstat (limited to 'gtk2_ardour/processor_box.cc')
-rw-r--r-- | gtk2_ardour/processor_box.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc index fa1b300e7b..8b353c040e 100644 --- a/gtk2_ardour/processor_box.cc +++ b/gtk2_ardour/processor_box.cc @@ -851,6 +851,9 @@ ProcessorEntry::Control::Control (boost::shared_ptr<AutomationControl> c, string _adjustment.set_page_increment (largestep); _slider.set_default_value (normal); + _slider.StartGesture.connect(sigc::mem_fun(*this, &Control::start_touch)); + _slider.StopGesture.connect(sigc::mem_fun(*this, &Control::end_touch)); + _adjustment.signal_value_changed().connect (sigc::mem_fun (*this, &Control::slider_adjusted)); c->Changed.connect (_connections, invalidator (*this), boost::bind (&Control::control_changed, this), gui_context ()); if (c->alist ()) { @@ -902,6 +905,26 @@ ProcessorEntry::Control::slider_adjusted () } void +ProcessorEntry::Control::start_touch () +{ + boost::shared_ptr<AutomationControl> c = _control.lock (); + if (!c) { + return; + } + c->start_touch (c->session().transport_frame()); +} + +void +ProcessorEntry::Control::end_touch () +{ + boost::shared_ptr<AutomationControl> c = _control.lock (); + if (!c) { + return; + } + c->stop_touch (true, c->session().transport_frame()); +} + +void ProcessorEntry::Control::button_clicked () { boost::shared_ptr<AutomationControl> c = _control.lock (); |