John Emmas
ea1740d65f
MSVC only allows static class members to be initialised in the class declaration
2018-02-03 14:58:45 +00:00
Ben Loftis
3aacdd79ae
Fixes for the iCON Qcon mcp device - LED rings. Submitted by Michal Barhon : mbarhon@seznam.cz
2018-02-02 09:27:37 -06:00
Ben Loftis
d3738b087e
MCP: Fix issue with strip "select" buttons that stayed stuck on.
...
* Depending on individual strips to watch the selection property is prone to failure.
* Stripable_selection_changed() is called when a selection operation is completed.
2017-05-17 15:55:43 -05: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
c34ad3a723
convert Mackie Control Surface support to use Stripable, not Route
2016-05-31 15:30:42 -04: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
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
Paul Davis
ea895efb97
mackie: improvements to display when switching subview modes
2016-01-28 15:08:26 -05:00
Paul Davis
81179389d3
mackie: cleanup subview mode a little
2015-12-16 05:55:10 -05:00
Paul Davis
8ba8f1c0b0
fix cherry-pick conflict
2015-12-16 05:54:43 -05:00
Paul Davis
8bdab38d43
track add/remove of monitor and/or master busses in mackie support code.
...
Somehow fails to move master fader to correct position when monitor section is added
2015-12-13 08:33:09 -05:00
Paul Davis
965b135842
numerous changes to Mackie support, generally offering better robustness
2015-10-10 17:14:30 -04:00
Paul Davis
9b5a071c33
varied and wide changes to get input and output combos closer to working
2015-10-09 14:01:22 -04:00
Paul Davis
bda0ba173c
for an ipMIDI surface, make the GSource used for input hold the only reference on the GUIChannel.
2015-10-08 21:55:37 -04:00
Paul Davis
7e10c21468
make Mackie::Surface keep a reference to the input source+channel and clean up in destructor
2015-10-08 21:55:37 -04:00
Paul Davis
0cb1c7b58c
lots of changes to try to get the Mackie Control display be more useful and usable
2015-10-08 12:51:44 -04:00
Paul Davis
4a1790b75e
remove unused per-surface button timer
2015-10-08 12:50:05 -04:00
Len Ovens
6899bd7c15
Add Trim to Mackie controls.
2015-10-07 21:36:16 -07:00
Paul Davis
c9658134ce
add button time and explicit bank switching to MCP support
2015-10-07 15:13:03 -04:00
Paul Davis
ce9b271a92
track Mackie MIDI port connection status as primary trigger for handshake with device
2015-10-07 13:17:49 -04:00
Robin Gareus
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
Paul Davis
4dc63966f0
globally remove all trailing whitespace from ardour code base.
...
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
Paul Davis
6bf0d4f627
add basic support for HUI heartbeat, only used for HUI devices
2015-10-03 13:13:58 -04:00
Paul Davis
3733fd7f31
remove undefined and unused method declaration
2015-10-02 22:08:15 -04:00
Paul Davis
4d47760d61
add new (fast) redisplay timer that pushes parameter display text to MCP device.
...
Changes are queued in a FIFO, and pulled when a timeout in the MCP event loop fires.
2015-10-02 22:08:14 -04:00
Paul Davis
ccf505c3a2
implement backlight, fader touch sensitivity and recalibrate fader functions for MCP GUI
2015-10-02 22:08:14 -04:00
Paul Davis
4512d013eb
put all of the Mackie control surface code into the ArdourSurface namespace
2015-04-15 20:37:20 -04:00
Paul Davis
85cd647226
Mackie Control support now saves & restores port connections for devices not using ipMIDI (not required for ipMIDI anyway)
2013-12-13 16:04:34 -05:00
Paul Davis
a17bafa964
remove some unused code from mackie support
2013-12-13 16:04:34 -05:00
Paul Davis
8f091de64b
for MCP devices that don't handshake, turn them on as soon as we call ::connectivity_established() so that _active == true, and we will actually write to them
...
git-svn-id: svn://localhost/ardour2/branches/3.0@14165 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-06 20:15:28 +00:00
Paul Davis
71427323ec
MCP: latest patch from Rodrigo:
...
* fixes Master Fader Touch button in the Mackie;
* implements a MasterFaderTouch global button;
* removes unused MackieControlProtocol::_transport_previously_rolling property;
* implements DeviceInfo::get_global_button() method;
* creates GlobalButtonsInfo and StripButtonsInfo types in DeviceInfo;
* implements Surface::_last_master_gain_written property to help master fader feedback;
* makes Surface respect _mcp.device_info().strip_cnt() to create master fader and when connecting signals for strips and master fader instead of using hardcoded 8;
* removed a few unnecessary updates in Surface::turn_it_on();
* included master_gain_changed() in Surface::periodic();
* implemented MackieControlProtocol::master_fader_touch_press and
* MackieControlProtocol::master_fader_touch_release;
git-svn-id: svn://localhost/ardour2/branches/3.0@12631 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09 19:06:52 +00:00
Paul Davis
ba5e71b50f
MCP: Patch from Rodrigo that:
...
* implements Metering on/off through Button::Read as per Seablade's suggestion. I choose this button as it's the "Show meters" button in Traktion;
* removes redundant code from Meter::update_transport_rolling();
* renames Meter::update_transport_rolling() to Meter::notify_metering_state_changed();
* renamed Surface::notify_transport_state_changed() to Surface::notify_metering_state_changed();
* renamed Strip::notify_transport_state_changed() to Strip::notify_metering_state_changed();
* created MackieControlProtocol::notify_metering_state_changed() and made MackieControlProtocol::notify_transport_state_changed() use it;
* implemented turning off of timecode display and two char display in Surface::zero_all ();
* implemented master fader zeroing in Surface::zero_all ();
* calling Surfaces->zero_all() at MackieControlProtocol destructor;
* implemented restore of 2nd LCD line content after metering being active.
git-svn-id: svn://localhost/ardour2/branches/3.0@12520 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-01 12:56:20 +00:00
Paul Davis
28e3bc3ac7
MCP: metering changes from rodrigo, makes metering work correctly on the MC Pro (also checked on the nucleus)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12489 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-30 14:32:27 +00:00
Paul Davis
1d5bade8a1
patch from rodrigo severo to make mackie timecode display work
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12480 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 20:18:43 +00:00
Paul Davis
4d780bdcd0
provide some support for mackie devices like Steinberg's CMCs that do not do the normal Mackie spec handshaking
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12252 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-11 16:04:09 +00:00
Paul Davis
edad92a944
control surfaces: make it possible to keep display of current GUI/selection state as we bank through tracks/bussses. note careful use of weak_ptr<Route> to avoid messing with Route lifetimes. this scheme may change
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-28 01:43:38 +00:00
Paul Davis
3b7e2f7d67
MCP: properly (?) handle bank/channel scrolling with locked strips
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12095 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 14:28:41 +00:00
Paul Davis
ac1b2a6647
MCP: another bevy of changes, including working jog wheel
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12056 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 17:37:52 +00:00
Paul Davis
82c867bf2a
MCP: a fistful of improvements. probably best to just try it and see what it broken. KNOWN: pressing vpots without a bank/channel shift will crash ardour
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12053 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 02:15:24 +00:00
Paul Davis
24377e9fb2
MCP: the return of the master fader
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 20:38:42 +00:00
Paul Davis
2ed2b61224
MCP: redesign to allow device-specific button IDs, since we know that at least one device (nucleus) does not honor mackie's specification document
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11972 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 19:02:54 +00:00
Paul Davis
8f7fa7d93b
MCP: timeout display of value when altering with fader or pot; range ops on strip buttons should work; select logic may be broken
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 16:11:55 +00:00
Paul Davis
17b442971b
MCP: more surface properties, correctly close IOSources when switching surfaces; write select button msgs one by one, change port name back to generic terms
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 17:52:57 +00:00
Paul Davis
0c4fe26b41
MCP: switch devices on the fly; name MIDI ports appropriately; fix active state; move sysex parsing into Surface
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11942 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 16:41:07 +00:00
Paul Davis
62620122a9
propagate GUI track selection to control protocols; make MCP update when GUI track selection changes
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 14:34:03 +00:00
Paul Davis
5b34da2f96
MCP: check on whether we using pan width control; flip mode may change display
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11931 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 00:52:02 +00:00
Paul Davis
1ce39cfb25
MCP: more view mode stuff
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 19:27:13 +00:00
Paul Davis
5097af6a13
MCP: start adding different view modes and support for Flip
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11911 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 18:51:01 +00:00
Paul Davis
8c9f9e746b
MCP: further objectification of event handling code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11896 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 13:39:25 +00:00
Paul Davis
02c8ccf348
move all code to construct MIDI messages into relevant Control/Strip/Surface object; remove MackieMidiBuilder
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11895 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 13:03:41 +00:00