Commit graph

100 commits

Author SHA1 Message Date
Paul Davis
8a26f02851 amend FaderPort code to use BasicUI::goto_start() with optional argument 2016-09-27 14:59:29 -05: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
14c50b317c operate directly on realtime controls, not via Session 2016-07-04 09:27:33 -04:00
Paul Davis
f05ff9570e fix faderport's use of action name 2016-06-07 19:25:33 -04:00
Paul Davis
f03f2e5c3f use new record safe control in surface support 2016-05-31 15:30:45 -04:00
Paul Davis
cefd3ac8be convert faderport to use Stripable instead of Route 2016-05-31 15:30:43 -04:00
Paul Davis
d5127001bb move ControllableDescriptor from libpbd to libardour; add support for describing VCAs 2016-05-31 15:30:42 -04:00
Paul Davis
5b5e64d860 remove Route::listening_via_monitor()
This is better tested with direct use of the solo_control and
Config->get_solo_controls_are_listen_controls()
2016-05-31 15:30:41 -04:00
Paul Davis
69250b64ea move ever close to working master/slave logic, this time with audio testing 2016-05-31 15:30:41 -04:00
Paul Davis
653ae4acd6 universal change in the design of the way Route/Track controls are designed and used. The controls now own their own state, rather than proxy for state in their owners.
Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
2016-05-31 15:30:40 -04:00
Paul Davis
4b36593106 fix faderport and mackie to use route AutomationControls to be notified about solo/mute changes 2016-05-31 15:30:40 -04:00
Robin Gareus
ba78359129 prepare for update to waf 1.8
uselib is no longer implicit (inherited by .use). This is still incomplete,
some uselibs for non-linux variants may be missing.

bld.is_defined("HAVE_XXX") also no longer works and will have to be
changed (I think to bld.env["HAVE_XXX"]) in countless places.
2016-02-28 21:16:44 +01:00
Paul Davis
c932c56233 cleanup post-rebase-against-master messes 2016-02-22 15:31:25 -05:00
Ben Loftis
d862c357b3 change faderport name 2016-02-06 16:42:34 -06:00
Paul Davis
9cce8d10a9 faderport: save+restore footswitch setting 2016-02-03 11:53:56 -05:00
Paul Davis
e38fad6228 faderport: fix binding of actions to footswitch 2016-02-02 09:21:13 -05:00
Paul Davis
846afdd8e5 faderport: make blink/on/off status of record enable LED match the GUI one 2016-02-02 09:05:00 -05:00
Paul Davis
f40167cb40 faderport: turn out all lights from destructor, and use Port::drain() to make sure data gets out 2016-02-01 13:27:08 -05:00
Paul Davis
90d12b6d5a faderport: add a few more sensible actions to the footswitch options 2016-01-25 15:11:47 -05:00
Paul Davis
b02b6cc3cd faderport: add footswitch combos to GUI to allow user control over what the switch does 2016-01-25 15:11:36 -05:00
Paul Davis
5b7fa0b3c5 faderport: add footswitch button 2016-01-25 15:11:26 -05:00
Paul Davis
9e5b7db89f first compiling, mostly working version of group controls changes 2016-01-22 11:58:31 -05:00
Paul Davis
64c9198d60 add group disposition argument to Route::set_gain() and use it in various UIs
Executive decisions were necessary in a couple of places about the correct group disposition
behaviour, notably faderport and OSC surfaces
2016-01-18 12:11:09 -05:00
Paul Davis
5e4d9612e3 faderport: stop event loop when destroying object 2016-01-14 10:59:27 -05:00
Robin Gareus
d134ba037d fix compilation of debug builds
ArdourSurface::FaderPort::Button::name is private
2016-01-11 11:07:09 +01:00
Paul Davis
530dd4255c faderport: remove wierd shift use design; make user+shift work again 2016-01-10 23:32:21 -05:00
Paul Davis
58edc83d11 tweak/add faderport debug messages 2016-01-07 16:42:57 -05:00
Robin Gareus
d7078df3eb amend 9e3299f for Mixbus 2016-01-03 20:39:47 +01:00
Paul Davis
9e3299f97d change Controllable::set_value() API to include grouped control consideration.
This also removes Route::group_gain_control() and associated machinery.
Not yet tested with Mackie or other surfaces. More work to done to
start using the group capabilities, and also potentially to add
or derive more controls as RouteAutomationControls
2016-01-02 04:58:30 -05:00
Paul Davis
0d9efc1148 redesign cross-thread registration/signalling system
This new design will work even when threads that need to receive
messages from RT threads are created *after* the RT threads. The
existing design would fail because the RT thread(s) would never
be known the later created threads, and so signals emitted by the
RT thread and causing call_slot() in the receiver would end up
being enqueued using a lock-protected list. The new design ensures
that communication always uses a lock-free FIFO instead
2015-12-28 10:14:17 -05:00
Paul Davis
ff76ef86b4 faderport: long press on fader mode buttons switches fader automation to manual/off; off button is never sent an LED state message to avoid fader disabling 2015-12-14 14:42:12 -05:00
Paul Davis
e928edca32 faderport: fix setup of periodic callback (cut-n-paste error) 2015-12-14 14:41:38 -05:00
Paul Davis
d59739d728 faderport: add 100msec (10Hz) periodic update to facilitate automation playback 2015-12-14 13:28:31 -05:00
Paul Davis
40a352e8a1 faderport: disable automation state button mapping until (if ever) we can figure out why it kills the fader 2015-12-14 13:28:31 -05:00
Paul Davis
cc607fa161 fix DEBUG_TRACE messages from faderport that used MackieControlProtocol via cut-n-paste 2015-12-14 13:28:31 -05:00
Ben Loftis
14ef6017f6 add a few new actions to Faderport menus, and reorganize them slightly 2015-12-10 17:25:29 -06:00
Paul Davis
6c99576250 faderport: stop trying to cache LED state (fixes various bugs); blink mute for muted-by-others; blink transport for speed != 1.0 && != 0 2015-12-08 11:09:50 -05:00
Paul Davis
2f48997dfb remove unnecessary (?) conditional.
Given that we use "port" after the test, the test makes no sense
2015-12-07 12:38:17 -05:00
Ben Loftis
e3d2898c8d more Faderport debugging, for windows 2015-12-04 18:11:05 -06:00
Ben Loftis
0a997f62cc remove spurious printout 2015-12-04 17:32:23 -06:00
Paul Davis
e82cc88c6f faderport: show current User button bindings in GUI 2015-12-03 21:45:41 -05:00
Paul Davis
a9ce37b7ac faderport: fix long press behaviour, and fix ardour-only behaviour with user button when used as a modifier 2015-12-03 18:38:09 -05:00
Paul Davis
b07d86ac61 make faderport support report its port bundles as it should 2015-12-03 12:50:32 -05:00
Paul Davis
900f59dcde faderport: generalized blink on/off code 2015-12-03 08:36:56 -05:00
Ben Loftis
43e5d639cc Faderport: Punch indictor was being left on after blinking 2015-12-03 07:27:42 -06:00
Ben Loftis
20facc4d18 Faderport: map automation indicator LEDs 2015-12-02 20:06:29 -06:00
Paul Davis
90275ded6a faderport: a clever hack to make the Shift modifier "sticky"
The user can now press+release Shift, then another key OR press Shift, then another key before releasing Shift. Both
event sequences will have the same result
2015-12-02 17:40:58 -05:00
Robin Gareus
aaebeb3d2b fix typo in variable name 2015-12-02 00:59:32 +01:00
Robin Gareus
0544e74fdf merge from mixbus branch.
keep control surfaces special cases upstream.
2015-12-02 00:55:01 +01:00
Paul Davis
b0fe298f72 faderport: factor out encoder divider into a const double 2015-12-01 18:47:29 -05:00