LedState
MackieControlProtocol::play_press (Button &)
{
- /* if we're already rolling, and we're pressed
+ /* if we're already rolling at normal speed, and we're pressed
again, jump back to where we started last time
*/
- transport_play (session->transport_rolling());
+ transport_play (session->transport_rolling() == 1.0);
return none;
}
LedState
MackieControlProtocol::rewind_press (Button &)
{
- DEBUG_TRACE (DEBUG::MackieControl, "REWIND PRESS\n");
rewind ();
return none;
}
LedState
MackieControlProtocol::user_a_press (Button &)
{
+ transport_play (session->transport_speed() == 1.0);
return off;
}
LedState
LedState
MackieControlProtocol::user_b_press (Button &)
{
+ transport_stop();
return off;
}
LedState
if (_route) {
_route_locked = !_route_locked;
}
+ } else if (_surface->mcp().modifier_state() == MackieControlProtocol::MODIFIER_SHIFT) {
+ /* reset gain value to unity */
+ _route->set_gain (1.0, this);
} else {
_surface->mcp().select_track (_route);
}