6ad4379b4d
OSC: fix issue #7444 send fader position/gain even when 0.
2017-08-10 08:50:46 -07:00
fff9a3cc7f
Allow FaderPort to select VCAs
2017-08-06 22:18:01 +02:00
2d60a69c2d
Consolidate ctrl surface code
2017-08-05 01:28:11 +02:00
81f12f602b
OSC: Fix to make sure buses created with Ardour 4.7 sessions show up
2017-08-03 09:09:02 -07:00
d1558dcab5
OSC: Add command to select Master
2017-08-02 10:43:13 -07:00
ab02284fc2
OSC: expand plugin_descriptor to split into smaller OSC messages (issue #0007433 )
2017-08-01 07:23:27 -07:00
e4925a90cb
OSC: add param to plugin_list response which indicates plugin enable state (OnkelDead)
2017-08-01 07:04:59 -07:00
f51fab35b1
OSC: Make stripname refresh in automation play mode as well.
2017-07-31 07:55:09 -07:00
e94771a58f
OSC: fix VCAs try to connect to controls it does not have.
2017-07-30 18:35:38 -07:00
b5e0b5b09f
PortManager::unregister_port() must be called with process lock
...
This fixes "Failed to register <surface> port" when re-loading a session.
2017-07-28 20:15:15 +02:00
2fa34614d0
Remove unnecessary tests for touch-state
2017-07-25 20:16:04 +02:00
b694ee9e53
OSC: only use gain change signals if value changes
2017-07-24 10:21:31 -07:00
3ab4a1d147
OSC: add use groups to GUI
2017-07-24 10:21:31 -07:00
f3e0fcbb7e
OSC: port mode by default should be manual
2017-07-24 10:21:31 -07:00
f1632fcfd2
OSC: make sure initialization is complete before we allow periodic to run
2017-07-23 20:08:02 -07:00
07e869fda8
OSC: simplify route observer
2017-07-23 20:08:02 -07:00
fde0e293a3
Remove unused "mark" parameter from stop_touch() API
2017-07-24 01:59:18 +02:00
1508838bde
OSC: add /use_group 1/0 command
2017-07-22 12:12:41 -07:00
8af27a7a2e
OSC make all group dispositions the same
2017-07-21 08:22:02 -07:00
b1c73b11fc
FP8: use separate bank offsets per MixMode
2017-07-19 03:04:58 +02:00
601604972c
FP8: Fix Mixbus solo-state and indicate implicit solo (blink)
2017-07-19 01:52:14 +02:00
4922d9f941
FP8: save/restore "two line text" option
2017-07-17 22:59:12 +02:00
601c317d70
Clean up library inheritance (colors.h, utils.h)
...
make libwidget independent of libcanvas.
Confine basics to pbd and gtkmm2ext.
2017-07-17 21:06:04 +02:00
b732aa2ca1
fix void return with value (amend d5d297c4
)
2017-07-06 18:01:49 +02:00
d5d297c407
Fix FP8 shutdown sequence (amend d421e56fc
)
2017-07-06 16:55:02 +02:00
2a809dcf70
OSC: add delta controls to master, monitor and select as well
2017-07-05 08:08:57 -07:00
b11c64ea5b
OSC: GUI tweaking
2017-07-03 13:22:56 -07:00
b87bec3200
FP8: "Link" mode works with AutomationControl only.
2017-07-03 19:56:16 +02:00
ebc8e352bf
FP8: toggle editor/mixer (now that "link" button is used)
...
..and some TODO notes.
2017-07-03 01:42:36 +02:00
b942c76df9
FP8: properly control enum+integer parameters.
2017-07-02 21:05:42 +02:00
0310f89971
FP8: Implement "Control-Link"
2017-07-02 18:19:13 +02:00
ec76d7ce03
OSC: GUI indicate invalid port and set to old port on defocus if not valid
2017-07-02 08:28:34 -07:00
34c0e3f1c8
FP8: plugin GUI display options
2017-07-02 02:06:48 +02:00
d1d6e696aa
FP8: fix 2-line text
2017-07-02 01:57:21 +02:00
c42db10044
OSC: issue 7176 patch applied. shows plugin descriptors.
2017-07-01 13:13:04 -07:00
2219021389
OSC: add feedback for solo isolate and solo safe to strips (issue 7161)
2017-07-01 11:49:08 -07:00
8bc25fb971
OSC: add strip type flag for master and monitor to strip list
2017-07-01 11:14:55 -07:00
58beb02024
FP8: Use Mixer-Order
2017-07-01 17:11:55 +02:00
a967a942d2
OSC: include all of select in feedback[13]
2017-06-30 20:47:42 -07:00
296c9ae03e
OSC: try to prevent race when clearing devices
2017-06-30 20:13:18 -07:00
41bc5bc116
OSC: test param type in a way that works when optimized too.
2017-06-30 19:05:30 -07:00
d421e56fc0
FP8: Clear input port on close. Fixes crash when switching snapshots
...
The midi_input_handler for the AsyncMIDIPort is connected to the
main event-loop. Events may still be delivered after the surface was
destroyed.
That by itself is not harmful, unless a given message produces a reply:
The _output_port is already gone, FaderPort8::tx_midi crashes.
2017-07-01 02:55:47 +02:00
Johannes Mueller
f7452c2a3a
Addressing #7371 : don't trigger session->undo() from non-GUI-thread
...
When triggering Session::undo() or Session::redo() from a
non-GUI-thread (e.g. from a surface protocol) Ardour crashes if setting a
CairoWidget dirty due to a ENSURE_GUI_THREAD assertion. (see #7371 )
By triggering undo by BasicUI::access_action() rather than by Session::undo()
we ensure that the GUI thread will finally call Session::undo().
So more like a workaround ... but better than crashing :)
2017-07-01 01:04:44 +02:00
389d2cab36
FP8: Scribble-strip display preferences
2017-06-30 19:55:03 +02:00
cd728fdd73
FP8: Allow to select Plugin Presets
2017-06-30 19:13:55 +02:00
1fe1d17ef8
FP8: don't allow to toggle Channelstrip bypass/enable
2017-06-30 02:31:36 +02:00
773c31afc0
FaderPort8 updates
...
* use 2 lines for Plugin Parameter Names
* Expose Plugin Bypass/Enable per plugin
- Shift + Select in Plugin Select Mode
- Bypass Button in Plugin Parameter Edit Mode
2017-06-30 01:59:12 +02:00
86ee4de7a9
OSC: simplify GUI and make less error-prone
2017-06-24 13:13:53 -07:00
33bfe681c9
OSC: Allow /bank_up to accept -1 as well as 1 so encoder can work.
2017-06-23 18:08:04 -07:00
01e75da96b
OSC: make sed_fader work with banking too.
2017-06-23 17:34:22 -07:00
0b21143234
OSC: Add master_send_enable for MB
2017-06-23 17:09:54 -07:00
1fad162256
OSC: redo math for redux control with fewer calls.
2017-06-23 17:09:54 -07:00
2ea14c25ec
OSC: Messages too fast at bank_change/refresh slowed down.
2017-06-23 17:09:54 -07:00
2a08746437
OSC: Fix math error in send fader feedback
2017-06-23 14:26:29 -07:00
1138b62fb8
amend 5e5f7a55; re-add wrongly removed variable
2017-06-23 18:15:50 +02:00
66a3dd7ded
MCU: Remove use of AutomationType as ID, part two.
...
This may need some small tweaks for MB channelstrip to set
print-format (like LV2 plugins would) for cases where the default
value_as_string() differs.
2017-06-23 17:39:20 +02:00
5e5f7a55ee
MCU: Remove use of AutomationType as ID, part one.
2017-06-23 17:39:20 +02:00
5aad9d9a33
OSC: only show visible plugins (not MB channel strip PI)
2017-06-22 22:40:06 -07:00
7af5de2074
OSC: Add increment fader.
2017-06-22 12:54:03 -07:00
57e7531b1f
OSC: allow mixbuses to show
2017-06-22 10:20:48 -07:00
3baf360733
OSC: use internal_to_interface or reverse
2017-06-22 09:21:51 -07:00
3b718c60de
OSC: Accept mixed parameter types for touch
2017-06-21 15:18:56 -07:00
55df5b39bc
Prepare removal of redundant get_user/set_user API.
2017-06-21 18:13:41 +02:00
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
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
fd3bd35203
OSC: value not initialized soon enough
2017-06-20 13:11:59 -07:00
10db824461
Use Stripable::Sorter in libs
2017-06-17 04:36:28 +02:00
0331a9a233
OSC: plugin feedback mathfix - 0 param (meter) checked for.
2017-06-16 11:33:02 -07:00
7c84deb2c4
OSC: Add send/plugin page values to GUI
2017-06-14 10:28:45 -07:00
d76e6d84c7
OSC: save and restore send/plugin page size.
2017-06-14 08:18:43 -07:00
9c0f6ea948
OSC: Allow set_surface to set send and plugin page sizes.
2017-06-13 16:56:10 -07:00
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
9441e8d484
OSC: select channel plugin support with paging.
2017-06-12 12:31:04 -07:00
c69049a853
Fix a compiler warning (optimized builds)
2017-06-12 17:20:41 +02:00
8b8f47430a
OSC: add option to send /reply instead of #reply (OSC1.0 compat)
2017-06-10 09:43:46 -07:00
c4a4857b87
OSC: add optional paging to sends in select.
2017-06-06 09:08:35 -07:00
d35dfa9c93
OSC: Some surfaces may use float for ssid. Accept this too.
2017-05-31 08:39:55 -07:00
b343108756
OSC: check controllable exists before using
2017-05-31 08:39:55 -07:00
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
2c40b46ca9
OSC: fix return value for successful touch
2017-05-24 13:58:49 -07:00
1e95ccf07d
OSC: Added lpf and hpf controls for freq,enable and slope
2017-05-24 07:37:21 -07:00
f493b24e3e
OSC add feedback for extra comp and eq controls
2017-05-23 17:16:42 -07:00
2f1ad4d9a2
OSC - make /strip/list accept a parameter like everything else
2017-05-23 15:14:31 -07:00
4d927c6bd4
Use braces in BasicUI::jump_by_bars()
2017-05-23 09:13:27 +10:00
7fe188ec92
Use braces in BasicUI::jump_by_seconds()
2017-05-23 09:13:27 +10:00
df185e575e
Use correct variable in BasicUI::jump_by_seconds
2017-05-23 09:13:27 +10:00
b3fb75fead
OSC: Further fixes so multiple controls can touch at once.
2017-05-20 10:17:31 -07:00
ab069b1372
OSC: fix c++98 mistake
2017-05-20 09:09:01 -07:00
6926b7eb75
OSC: Catch case of surface sending fader move before touch
2017-05-19 15:48:36 -07:00
84e1a216bc
OSC: Add fake timeout based touch
2017-05-18 15:32:12 -07:00
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
60cc2823f3
MCP: map the well-known EQ knobs more explicitly, not heuristically.
2017-05-17 15:53:14 -05:00
f2aac0bcae
OSC: Add /strip/fader/touch
2017-05-15 19:38:41 -07:00
f3f1816899
remove unused variable
2017-05-15 19:38:41 -07:00
7e791981f0
OSC: added automation name feedback
2017-05-15 07:43:59 -07:00
fee4b7b3ea
OSC: combine two identical if() statements
2017-05-15 07:43:59 -07:00
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
3d26a29e8a
Sanitize "well-known" ctrl API
2017-05-14 00:17:11 +02:00
3e2004aa73
OSC: make /*/automation more generic so other controls can be easily added
2017-05-13 14:18:29 -07:00
82e6de3a3f
The #end should be #endif
2017-05-13 08:43:33 -07:00