diff options
author | Robin Gareus <robin@gareus.org> | 2017-04-15 21:20:51 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-04-15 21:20:51 +0200 |
commit | 8a3d9317bd1dc259f1e4debb1fb0559cf0466d5b (patch) | |
tree | 53518e4dbc6c43d23f4a8fb980bb5b3021ebc290 /libs/surfaces/faderport8/actions.cc | |
parent | 18dcd4d7ff2855e87fc78395f2009ebafd24cc7a (diff) |
FaderPort8 details:
* make shift buttons equivalent
* 2 x stop: move to session-start
* RTZ: return to zero (not session-start)
* in Pan mode: encoder controls pan-width (w/o shift)
Diffstat (limited to 'libs/surfaces/faderport8/actions.cc')
-rw-r--r-- | libs/surfaces/faderport8/actions.cc | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/libs/surfaces/faderport8/actions.cc b/libs/surfaces/faderport8/actions.cc index 0d95b3cdc7..e6ad7fd062 100644 --- a/libs/surfaces/faderport8/actions.cc +++ b/libs/surfaces/faderport8/actions.cc @@ -118,7 +118,11 @@ FaderPort8::button_play () void FaderPort8::button_stop () { - transport_stop (); + if (session->transport_rolling ()) { + transport_stop (); + } else { + AccessAction ("Transport", "GotoStart"); + } } void @@ -205,7 +209,7 @@ FaderPort8::button_varispeed (bool ffw) // stop key-repeat dynamic_cast<FP8RepeatButton*>(&b_ffw)->stop_repeat(); dynamic_cast<FP8RepeatButton*>(&b_rew)->stop_repeat(); - AccessAction ("Transport", "GotoStart"); + session->request_locate (0, false); return; } @@ -443,7 +447,7 @@ FaderPort8::button_parameter () boost::shared_ptr<Stripable> s = first_selected_stripable(); if (s) { boost::shared_ptr<AutomationControl> ac; - if (shift_mod ()) { + if (shift_mod () || _ctrls.fader_mode() == ModePan) { ac = s->pan_width_control (); } else { ac = s->pan_azimuth_control (); @@ -475,7 +479,7 @@ FaderPort8::encoder_parameter (bool neg, int steps) boost::shared_ptr<Stripable> s = first_selected_stripable(); if (s) { boost::shared_ptr<AutomationControl> ac; - if (shift_mod ()) { + if (shift_mod () || _ctrls.fader_mode() == ModePan) { ac = s->pan_width_control (); } else { ac = s->pan_azimuth_control (); |