13
0
Commit Graph

19251 Commits

Author SHA1 Message Date
20d74585fd mackie: implement trim, monitoring, solo iso and solo safe for trackview submode 2016-01-31 21:54:01 -05:00
9cfd76c026 mackie: make shift-click use InverseGroup semantics as intended, not NoGroup 2016-01-31 21:53:29 -05:00
23f457e81e NOOP: comment fix 2016-01-31 21:52:46 -05:00
27b565d5cc mackie: make vselect events and pot events handle toggle/enumeration controls correctly (or more correctly 2016-01-31 21:52:14 -05:00
dd40138d38 make Session::rt_set_monitoring() conform to new Track API 2016-01-31 21:49:59 -05:00
c56058b9de provide route solo isolate and solo safe automation controls 2016-01-31 21:49:18 -05:00
d4258b1358 add new automation type enums 2016-01-31 21:48:32 -05:00
5ea5e513a4 make Track::set_monitoring() use a GroupControlDisposition; expose an AutomationControl for track monitoring choice 2016-01-31 21:47:19 -05:00
9128fbd68f add a new constructor for RouteAutomationControllable that takes a ParameterDescriptor 2016-01-31 21:45:36 -05:00
e2a085190f break out Route controllables code into its own source module 2016-01-31 13:20:18 -05:00
69b4228176 mackie: partially working trackview submode.
More controls/pots to come
2016-01-31 13:20:18 -05:00
da665a5dc5 mackie: fix bug that prevents global view mode from working without first banking 2016-01-31 13:20:18 -05:00
f44acc4857 mackie: fix some awful cut-n-paste errors 2016-01-31 13:20:18 -05:00
3631cc1532 mackie: remove Trim pot mode, and add skeleton for TrackView subview mode 2016-01-31 13:20:18 -05:00
e8348ecc1c Mackie protocol: XTouch profile with expanded editing options 2016-01-31 11:21:55 -06:00
d3dfd74497 mackie: strengthen behaviour of clear solo button 2016-01-31 11:36:46 -05:00
2491549923 mackie: make replace (finish-range) LED flash at the right time 2016-01-31 11:36:31 -05:00
6780b7eb54 mackie: make nudge work as modifier and on its own 2016-01-31 11:17:23 -05:00
b78be4d705 mackie: hard-code drop+replace buttons to start/finish-range-from-playhead
With some LED action that would even better with blinking
2016-01-31 11:02:21 -05:00
af1028bd90 mackie: make marker button work as Mackie intends it (as a modifier for rewind/ffwd) 2016-01-31 11:01:41 -05:00
2b56dc17e3 mackie: add "clean" method to invoke GUI actions from button events, in code 2016-01-31 11:00:16 -05:00
ef793d3762 mackie: shift-stop additionally requests MIDI Panic, as well as regular stop 2016-01-31 09:11:43 -05:00
0fa208015e Mackie Control: Make Monitor send not show in Sends subview. 2016-01-30 21:05:45 -08:00
e622f3e5b6 Mackie protocol: Fix stuck-on Read LED. 2016-01-30 21:38:18 -06:00
73d901d889 Add track select buttons to Launchkey map. 2016-01-30 11:18:56 -06:00
9115a2c5d2 Surfaces with separate meters should meter even when stopped. 2016-01-30 09:46:37 -06:00
f762cbff35 mackie: remove mention of "blinkers" concept 2016-01-29 18:40:56 -05:00
d5a8825ce8 mackie: basically (fully?) operation fader automatio control for first selected route 2016-01-29 18:37:03 -05:00
da35f58218 mackie: initial attempt at making automation-related buttons set fader automation state for selected routes 2016-01-29 16:29:52 -05:00
22a14a56f3 use new selection API to avoid double signal when a track or tracks are SET as the selection 2016-01-29 16:15:41 -05:00
fbe236999d modify Selection API to provide (default-valued) "with_signal" argument to all ::clear_*() methods
This allows the clear methods to be used before calling ::add(), to avoid the
emission of a signal saying "there are no <foo> selected right now".

There should be no side-effects from this commit.

Note that correct use of this new API is complex, and requires avoiding the use
of wrapper methods like clear_objects().
2016-01-29 16:15:41 -05:00
9fe4b7a92a mackie: if a subview mode is not OK because there's no selection, show no message 2016-01-29 16:15:41 -05:00
4a6724868d NOOP: change brace placement to avoid confusing emacs 2016-01-29 16:15:41 -05:00
42fbb96674 mackie: make group button (appear) to do something 2016-01-29 16:15:41 -05:00
9088944db2 Mackie protocol: More LED indicator fixes. 2016-01-29 14:26:08 -06:00
17301b87f9 mixbus: don't assert(ch_post()) in case we use various methods on "odd" Routes in the future 2016-01-29 13:02:00 -05:00
39a61dba83 mixbus: vpot press in non-subview mode should toggle master bus send 2016-01-29 12:58:50 -05:00
fd291d1fa5 add new Route API ::master_send_enable_controllable() to provide generic access to a mixbus-centric control 2016-01-29 12:58:15 -05:00
c6ea3515d1 mackie: in Sends subview mode, the enable control for the send should be looked upin the subview route, not the strip's own route 2016-01-29 12:41:50 -05:00
4b70a0aa0d Button::AudioInstruments should not be lit without good reason. 2016-01-29 11:28:15 -06:00
0a2377e9b4 mackie: redesign display logic entirely
Strips now maintain a pair of pending display strings (upper and lower).
A periodic timeout writes the pending value to the actual hardware if it
differs from the current string. This new design makes it easy to put a
message on the display and then after some period of time, revert to
whatever was there before.
2016-01-29 12:27:46 -05:00
1972cf966e Another attempt fixing crash at exit on windows. 2016-01-29 18:22:57 +01:00
b40717604c Mackie Protocol: HasSeparateMeters flag for X-Touch devices 2016-01-29 10:31:47 -06:00
c064135436 Added Behringer X-Touch device files. 2016-01-29 10:10:17 -06:00
8aaa027ed3 mackie: fix Global View button function
Bug introduced changing logic for set_view_mode()
2016-01-28 23:20:03 -05:00
d0668e5511 mackie: don't overload "Audio Instruments" and "Instruments" buttons.
With the MCU Pro, the button labelled "Instruments" uses the Dyn button ID.
The one labelled "Audio Instruments" does not.

This may break Nucleus support - needs to be checked
2016-01-28 23:05:28 -05:00
e862be7300 mackie: use Route::send_name() rather than Route::nth_send() 2016-01-28 23:05:28 -05:00
f1ed01b97f mackie: fix display of send level value 2016-01-28 23:05:28 -05:00
4a5b81a838 add new API to Route to get name of "well-known" nth-send
Route::nth_send() has the wrong semantics in Mixbus for this purpose. Probably
need to revisit this at some point
2016-01-28 23:05:28 -05:00
c0a843a905 fix device-list update concurrency issue.
It may happen that during push_state_to_backend() a device is
reconfigured in a way that triggers a "Device Changed" callback before
the engine is started. This callback can trigger a change to the
configuration that will be used when the engine is actually started.

This has been seen on OSX in conjunction with Aggregate Devices
(even if the aggregate is not used, but the device which is used
is also part of an aggregate) 

example: HW changed callback arrives, device-list is re-populated,
*A*irplay" is at the top of the list, Airplay supports only 44.1K,
Samplerate changes... later save also writes this new rate to the file.
2016-01-29 01:12:53 +01:00