diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-04-26 22:10:32 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-04-26 22:10:32 +0000 |
commit | ae2e8c67657daccb2cdafc3ddfeb7d9df126ed8f (patch) | |
tree | 8046fa3beb086b7c69e5d0d51b72823ea2c7689e /libs/surfaces/mackie/mackie_control_protocol.cc | |
parent | cafbc632fb71db817d399dce5f18be7528573a6f (diff) |
MCP: ctrl-select toggle selections status, analogous to GUI op
git-svn-id: svn://localhost/ardour2/branches/3.0@12102 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/surfaces/mackie/mackie_control_protocol.cc')
-rw-r--r-- | libs/surfaces/mackie/mackie_control_protocol.cc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc index ccd29a4d39..a5bcefcb17 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.cc +++ b/libs/surfaces/mackie/mackie_control_protocol.cc @@ -1247,10 +1247,15 @@ MackieControlProtocol::select_range () if (!routes.empty()) { for (RouteList::iterator r = routes.begin(); r != routes.end(); ++r) { - if (r == routes.begin()) { - SetRouteSelection ((*r)->remote_control_id()); + + if (_modifier_state == MODIFIER_CONTROL) { + ToggleRouteSelection ((*r)->remote_control_id ()); } else { - AddRouteToSelection ((*r)->remote_control_id()); + if (r == routes.begin()) { + SetRouteSelection ((*r)->remote_control_id()); + } else { + AddRouteToSelection ((*r)->remote_control_id()); + } } } } |