Robin Gareus
55df5b39bc
Prepare removal of redundant get_user/set_user API.
2017-06-21 18:13:41 +02:00
Robin Gareus
cb48bb0e1c
remove min/max unbound -- LADSPA special case.
...
This explicit case should never have existed in the first place.
Plugins can always implicitly exceed the range and are expected to
cope with out-of-range values (e.g. meters when fed with a peaking signal
may return an out-of-bounds value)
2017-06-21 18:12:20 +02:00
Robin Gareus
567c0a8f53
Switch to PBD control-math and prefer Controllable API
...
Note: Control-surfaces should always use interface_to_internal()
and internal_to_interface().
2017-06-21 18:12:04 +02:00
Len Ovens
fd3bd35203
OSC: value not initialized soon enough
2017-06-20 13:11:59 -07:00
Robin Gareus
10db824461
Use Stripable::Sorter in libs
2017-06-17 04:36:28 +02:00
Len Ovens
0331a9a233
OSC: plugin feedback mathfix - 0 param (meter) checked for.
2017-06-16 11:33:02 -07:00
Len Ovens
7c84deb2c4
OSC: Add send/plugin page values to GUI
2017-06-14 10:28:45 -07:00
Len Ovens
d76e6d84c7
OSC: save and restore send/plugin page size.
2017-06-14 08:18:43 -07:00
Len Ovens
9c0f6ea948
OSC: Allow set_surface to set send and plugin page sizes.
2017-06-13 16:56:10 -07:00
Robin Gareus
23554fd185
FP8: use proper API to detect automation-playback
...
The custom code didn't take touch + touching into account when
another surface was touching automation.
2017-06-13 18:09:53 +02:00
Len Ovens
9441e8d484
OSC: select channel plugin support with paging.
2017-06-12 12:31:04 -07:00
Robin Gareus
c69049a853
Fix a compiler warning (optimized builds)
2017-06-12 17:20:41 +02:00
Len Ovens
8b8f47430a
OSC: add option to send /reply instead of #reply (OSC1.0 compat)
2017-06-10 09:43:46 -07:00
Len Ovens
c4a4857b87
OSC: add optional paging to sends in select.
2017-06-06 09:08:35 -07:00
Len Ovens
d35dfa9c93
OSC: Some surfaces may use float for ssid. Accept this too.
2017-05-31 08:39:55 -07:00
Len Ovens
b343108756
OSC: check controllable exists before using
2017-05-31 08:39:55 -07:00
Tim Mayberry
640d9d355f
Use correct property name in generic MIDI surface
...
Fixes restoring the feedback interval property, but as the mutator/setter
method doesn't seem to be used this change should have no affect.
2017-05-26 08:48:04 +10:00
Len Ovens
2c40b46ca9
OSC: fix return value for successful touch
2017-05-24 13:58:49 -07:00
Len Ovens
1e95ccf07d
OSC: Added lpf and hpf controls for freq,enable and slope
2017-05-24 07:37:21 -07:00
Len Ovens
f493b24e3e
OSC add feedback for extra comp and eq controls
2017-05-23 17:16:42 -07:00
Len Ovens
2f1ad4d9a2
OSC - make /strip/list accept a parameter like everything else
2017-05-23 15:14:31 -07:00
Tim Mayberry
4d927c6bd4
Use braces in BasicUI::jump_by_bars()
2017-05-23 09:13:27 +10:00
Tim Mayberry
7fe188ec92
Use braces in BasicUI::jump_by_seconds()
2017-05-23 09:13:27 +10:00
Tim Mayberry
df185e575e
Use correct variable in BasicUI::jump_by_seconds
2017-05-23 09:13:27 +10:00
Len Ovens
b3fb75fead
OSC: Further fixes so multiple controls can touch at once.
2017-05-20 10:17:31 -07:00
Len Ovens
ab069b1372
OSC: fix c++98 mistake
2017-05-20 09:09:01 -07:00
Len Ovens
6926b7eb75
OSC: Catch case of surface sending fader move before touch
2017-05-19 15:48:36 -07:00
Len Ovens
84e1a216bc
OSC: Add fake timeout based touch
2017-05-18 15:32:12 -07: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
Ben Loftis
60cc2823f3
MCP: map the well-known EQ knobs more explicitly, not heuristically.
2017-05-17 15:53:14 -05:00
Len Ovens
f2aac0bcae
OSC: Add /strip/fader/touch
2017-05-15 19:38:41 -07:00
Len Ovens
f3f1816899
remove unused variable
2017-05-15 19:38:41 -07:00
Len Ovens
7e791981f0
OSC: added automation name feedback
2017-05-15 07:43:59 -07:00
Len Ovens
fee4b7b3ea
OSC: combine two identical if() statements
2017-05-15 07:43:59 -07:00
John Emmas
b9bbea7174
It might not be obvious why... but 'ARDOUR::ControlProtocol::name()' needs to be a virtual function
...
Basically, libardour is calling functions from libardour_cp and vice versa. For example, libardour needs 'ARDOUR::ControlProtocol::name()' whereas ardour_cp needs 'ARDOUR::Route::soloed()' and various others. Ordinarily, this would require each library to get built before the other one! :-(
To get around this (in MSVC at least) one of the libraries must be forced to use late binding (e.g. by declaring its functions as 'virtual'). It looks like this is already being done for most of the other functions from 'ARDOUR::ControlProtocol', so let's do it for this function too...
2017-05-15 14:46:34 +01:00
Robin Gareus
3d26a29e8a
Sanitize "well-known" ctrl API
2017-05-14 00:17:11 +02:00
Len Ovens
3e2004aa73
OSC: make /*/automation more generic so other controls can be easily added
2017-05-13 14:18:29 -07:00
Len Ovens
82e6de3a3f
The #end should be #endif
2017-05-13 08:43:33 -07:00
Ben Loftis
6a28e02799
More tweaks to FP8 layout for 32C
2017-05-13 07:54:08 -05:00
Robin Gareus
3efe5bde5f
Update FP8: new controllables, clarify 32C bell-shape labels
2017-05-13 02:02:54 +02:00
Paul Davis
7021d02782
don't actually use a method from libardourcp inside libardour; use a PBD::Signal to avoid linker issues
2017-05-12 17:49:09 +01:00
Len Ovens
32c3db5c59
OSC: GUI label change
2017-05-12 07:29:29 -07:00
Len Ovens
774ebc42e3
OSC: Create new surface struct for ALL incoming messages
2017-05-12 07:29:29 -07:00
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
efc2660fec
MCP: Mixbus32C: Restore missing filter controls to the Dyn page.
2017-05-12 15:44:01 +02: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
Ben Loftis
6f298b1a83
Mackie control panel: display the profile name when any button action is changed.
2017-05-12 15:43:44 +02:00
Len Ovens
471ed5af4e
OSC: also init unsaved params on session load.
2017-05-11 13:58:25 -07:00
Len Ovens
a51e82a29e
OSC: Initialize all surface struct values on creation
2017-05-11 10:52:38 -07:00