diff options
author | Jan Lentfer <jan.lentfer@web.de> | 2018-08-20 21:43:21 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2018-08-22 19:56:10 +0200 |
commit | 266c5fbc16b7cad0aa042334c8606c49b1c8caa6 (patch) | |
tree | 5c4776d4911a04bec8cf6e579c15ee13eb3145d7 /libs | |
parent | fa7c8f60137b08969e5162065104ee7c1b5ef44c (diff) |
LCXL: Mixbus secondary function for Ctrl buttons
In Mixbus holding Device and pressing
one (or many) of the Track Control buttons
will toggle the Master Assignment for the
corresponding track
Diffstat (limited to 'libs')
-rw-r--r-- | libs/surfaces/launch_control_xl/controllers.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libs/surfaces/launch_control_xl/controllers.cc b/libs/surfaces/launch_control_xl/controllers.cc index 764f801edf..9552fd7150 100644 --- a/libs/surfaces/launch_control_xl/controllers.cc +++ b/libs/surfaces/launch_control_xl/controllers.cc @@ -485,6 +485,20 @@ LaunchControlXL::button_track_control(uint8_t n) { if (!stripable[n]) { return; } + + if (buttons_down.find(Device) != buttons_down.end()) { + DEBUG_TRACE (DEBUG::LaunchControlXL, "DEVICE BUTTON HOLD\n"); +#ifdef MIXBUS + if (stripable[n] != master) { + DEBUG_TRACE (DEBUG::LaunchControlXL, "MIXBUS Master Assign\n"); + stripable[n]->master_send_enable_controllable()->set_value (!stripable[n]->master_send_enable_controllable()->get_value(), PBD::Controllable::UseGroup); + } +#else + /* something useful for Ardour */ +#endif + return; + } + boost::shared_ptr<AutomationControl> ac = get_ac_by_state(n); if (ac) { |