Paul Davis
eb3f50e15c
change the way ControlProtocols (control surfaces) are notified and handle Stripable selection changes
...
The Editor continues to notify them, but via a direct call to ControlProtocolManager, not a signal.
The CP Manager calls the ControlProtocol static method to set up static data structures holding
selection info for all surfaces and then notifies each surface/protocol that selection has changed.
2017-05-12 14:51:39 +01:00
Ben Loftis
8ba868e933
MCU: F-keys are reserved only for user-defined actions; no need for explicit handling.
2017-05-12 15:43:55 +02:00
Ben Loftis
e6e2b6800e
MCP: Momentarily light buttons when they are used to trigger a defined action.
...
*This is mainly for F-keys
*If a button is not assigned an action, it will not light,
hopefully indicating to the user that it is unmapped.
2017-05-12 15:43:52 +02:00
Paul Davis
0c035778e1
libardour now has CoreSelection object to manage selection status of Stripables and AutomationControls
2017-05-05 18:56:25 +01:00
Tim Mayberry
86f403cbbd
Use XMLNode::get/set_property API in MackieControlProtocol class
2017-04-19 09:36:54 +10:00
Paul Davis
8243aeb3a1
remove debugging stacktrace from mackie code
2017-02-09 12:47:25 +01:00
Paul Davis
bb74bba1c7
mackie: catch data on what presentation info aspects changed; don't change banks on a PI change
2017-02-01 10:27:34 +01:00
Paul Davis
9e7652ca62
debugging with markk: stacktrace on bank switch in mackie code
2017-01-31 20:12:04 +01:00
Paul Davis
1c9df390bc
stop DEBUG_TRACE for MackieControl crashing in some conditions
2017-01-31 19:16:35 +01:00
Paul Davis
7c517f6566
mackie: check modifier bits for button AFTER identifying possibly remapped button ID
2017-01-31 18:08:44 +01:00
Paul Davis
58c1ff368c
mackie: more debug tracing
2017-01-31 17:48:49 +01:00
Paul Davis
9dc2ef28be
mackie: more debug tracing for remapped buttons
2017-01-31 17:43:33 +01:00
Paul Davis
8f13d33efe
Revert "mackie: make profile-mapped keys maybe actually do something"
...
This reverts commit 0d7f88afbd .
2017-01-31 17:37:45 +01:00
Paul Davis
de189721e8
Revert "mackie: improve previous commit - use button_id not button.bid() to make remapping work"
...
This reverts commit 16804e20c8 .
2017-01-31 17:37:23 +01:00
Paul Davis
16804e20c8
mackie: improve previous commit - use button_id not button.bid() to make remapping work
2017-01-31 17:31:10 +01:00
Paul Davis
0d7f88afbd
mackie: make profile-mapped keys maybe actually do something
2017-01-31 17:23:45 +01:00
Paul Davis
404686d258
more mackie debug tracing
2017-01-31 17:05:30 +01:00
Robin Gareus
1de584961a
NO-OP; Backport changes from Mixbus branch
2016-11-27 22:54:23 +01:00
Paul Davis
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
Paul Davis
44fcbd988c
mackie: ensure that the strip where select was pressed ends up as the first_selected_stripable
2016-07-06 21:40:29 -04:00
Paul Davis
2047ee527c
restore/extend/simplify ControlProtocol API to allow tracking of selection
2016-07-06 13:39:10 -04:00
Paul Davis
291aec468f
use session stripable selection API
...
and remove old ControlProtocol signals to talk to GUI etc.
2016-07-04 12:45:53 -04:00
Paul Davis
a8d7b0fca3
redesign/reimplement selection knowledge in MackieControlProtocol object
...
strips listen to Stripable::presentation_info().PropertyChange, and forward selected status changes
to the MCP object
2016-06-12 08:19:16 -04:00
Paul Davis
4717080aee
reduce verbosity of -D mackie in the presence of continued handshaking/keepalive messages.
2016-06-12 08:18:01 -04:00
Paul Davis
2d4358ddb5
Various changes to PresentationInfo and a small consolidation of sorters.
...
The semantics for sorting PresentationInfo are up to the caller, not the
PresentationInfo object, so operator<() was removed and callers specifically
invoke ::order() for sorting.
2016-06-10 13:57:18 -04:00
Paul Davis
3eaa6c0389
remove certain ControlProtocol signals related to stripable selection
...
includes change to Mackie support so that strips listen for PropertyChange
on the stripables they represent, no global selection change used anymore.
2016-06-10 13:57:18 -04:00
Paul Davis
91ad3ef81d
don't connect to individual PresentationInfo signals per Stripable; we only reorder strips once, when the global signal arrives
2016-06-05 16:33:02 -04:00
Paul Davis
dfcc8fd547
Stripable signals moved to PresentationInfo
2016-06-05 16:33:02 -04:00
Paul Davis
ee0f073e8d
move from PresentationInfo::global_order() to PresentationInfo::order
2016-06-03 15:15:39 -04:00
Paul Davis
f03f2e5c3f
use new record safe control in surface support
2016-05-31 15:30:45 -04:00
Paul Davis
28afaebdc4
fix SNAFU in which Stripable::rec_enable_control() was incorrectly defined as ::recenable_control()
...
Make Mackie support code use the Stripable to access the rec-enable control while we're here
2016-05-31 15:30:45 -04:00
Paul Davis
4b0a235f91
manually fix rebase/merge issues for Mackie Control support
2016-05-31 15:30:42 -04:00
Paul Davis
4b7bbacaaa
make mackie surfaces aware of VCAs
2016-05-31 15:30:42 -04:00
Paul Davis
c34ad3a723
convert Mackie Control Surface support to use Stripable, not Route
2016-05-31 15:30:42 -04:00
Paul Davis
e0ff70cf86
first vaguely working version using PresentationInfo
...
remote control ID and "order keys" have been removed.
2016-05-31 15:30:42 -04:00
Paul Davis
672528baf4
fix shared_ptr<Route> management in Mackie support so that deleted routes are destroyed
2016-05-07 13:36:04 -04:00
Paul Davis
17ace643e4
OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)
2016-05-04 23:09:45 -04:00
Paul Davis
37d6265e13
mackie: try to improve logic and management of device profiles
2016-02-04 11:24:26 -05:00
Ben Loftis
aac6a59071
Mackie Protocol: Move buttons to more accurately reflect default mcp legends.
...
Modifiers are only modifiers (no actions directly on modifiers).
Punch indicators moved to Drop/Replace.
Added Save, Undo, Cancel (select none) and Enter (select all tracks)
Fixed click button.
Up&Down buttons now move the selected track up & down.
2016-02-03 18:11:21 -06:00
Len Ovens
b4a9bf5878
Mackie Control: Save old bank before we change it to new.
2016-02-02 18:41:49 -08:00
Len Ovens
99a53ed7f0
Mackie Control: Fix Flip mode getting confused if subview is not sends.
2016-02-02 09:38:55 -08:00
Len Ovens
7229dccb3b
Mackie Control: Shift/Select now toggles individual channels within group. Makes this the same as other grouped controls.
2016-02-02 09:03:27 -08:00
Paul Davis
36b11098a2
mackie: substantial reworking of flip mode with large chunks of code no longer used.
...
Flip mode only works in Sends subview mode.
Display is incorrect when flipped - vpot is still updated by send level changes. TO BE FIXED.
2016-02-01 22:52:22 -05:00
Paul Davis
d98021624f
mackie: stop playing games with start/end range LEDs
2016-02-01 12:22:23 -05:00
Paul Davis
ca813315bf
mackie: add new bindings for Save,Undo,Cancel,Enter
...
these now control punch in, punch out, external sync and follow edits, respectively
2016-02-01 12:22:01 -05:00
Paul Davis
69b4228176
mackie: partially working trackview submode.
...
More controls/pots to come
2016-01-31 13:20:18 -05:00
Paul Davis
da665a5dc5
mackie: fix bug that prevents global view mode from working without first banking
2016-01-31 13:20:18 -05:00
Paul Davis
3631cc1532
mackie: remove Trim pot mode, and add skeleton for TrackView subview mode
2016-01-31 13:20:18 -05:00
Paul Davis
6780b7eb54
mackie: make nudge work as modifier and on its own
2016-01-31 11:17:23 -05:00
Paul Davis
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