13
0
Commit Graph

1748 Commits

Author SHA1 Message Date
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
6a28e02799 More tweaks to FP8 layout for 32C 2017-05-13 07:54:08 -05:00
3efe5bde5f Update FP8: new controllables, clarify 32C bell-shape labels 2017-05-13 02:02:54 +02:00
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
32c3db5c59 OSC: GUI label change 2017-05-12 07:29:29 -07:00
774ebc42e3 OSC: Create new surface struct for ALL incoming messages 2017-05-12 07:29:29 -07:00
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
efc2660fec MCP: Mixbus32C: Restore missing filter controls to the Dyn page. 2017-05-12 15:44:01 +02:00
8ba868e933 MCU: F-keys are reserved only for user-defined actions; no need for explicit handling. 2017-05-12 15:43:55 +02:00
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
6f298b1a83 Mackie control panel: display the profile name when any button action is changed. 2017-05-12 15:43:44 +02:00
471ed5af4e OSC: also init unsaved params on session load. 2017-05-11 13:58:25 -07:00
a51e82a29e OSC: Initialize all surface struct values on creation 2017-05-11 10:52:38 -07:00
d42da9046e OSC: Actually set feedback on first /strip/command 2017-05-11 08:21:40 -07:00
0124c2e99d OSC: fix manual port setting to take effect on first incoming message 2017-05-10 14:14:27 -07:00
a76ee7a4d8 OSC: bind should be boost::bind 2017-05-10 09:56:45 -07:00
c8f805ef7c OSC: Automation feedback should match command 2017-05-10 09:42:48 -07:00
6c97d70127 OSC: change function name to be better description 2017-05-10 09:21:19 -07:00
50e362ffd3 OSC: simplify code. 2017-05-10 08:02:03 -07:00
86149840a1 resolve ambiguity 2017-05-10 05:00:03 +02:00
e8387e101f Enums are not Classes in C++98 2017-05-10 04:29:41 +02:00
82fed14f41 OSC: Fix select fader automation play feedback as well fixes issue #7160 2017-05-09 14:10:49 -07:00
a12d4c87c6 OSC: Get gain feedback to show with automation Play. 2017-05-09 13:38:57 -07:00
c3c7dfd3e8 OSC: Add Automation mode feedback to /strip 2017-05-09 12:40:20 -07:00
155401b875 OSC: removed letter automation modes to not conflict with feedback 2017-05-09 11:52:21 -07:00
fe5a778535 OSC: Propagate return value so debug shows errors 2017-05-09 09:05:30 -07:00
56ebea48c0 OSC: set Automation mode for fader 2017-05-09 07:55:32 -07:00
f4d62a2a8e OSC: automation mode get strip (step 2) 2017-05-09 07:55:32 -07:00
9b4d58393d OSC: Add framework for /*/automation mode 2017-05-09 07:55:32 -07:00
1eb18f8e27 OSC: make some more paths work with or without a parameter. 2017-05-05 15:02:22 -07:00
379ad3357d OSC: remove debug output. 2017-05-05 15:02:22 -07:00
0c035778e1 libardour now has CoreSelection object to manage selection status of Stripables and AutomationControls 2017-05-05 18:56:25 +01:00
417f63a29e FP8: use new libardour API 2017-05-05 17:08:42 +02:00
8288fa40b9 FP8: ignore inactive muted tracks w/mute-clear 2017-05-05 15:36:08 +02:00
3a75e7c53b FP8: solo+mute undo
Eventually this should be moved into libardour: Mixer undo history.
the tentative solution is specifically ifdef'ed FP8_MUTESOLO_UNDO.
2017-05-05 15:26:52 +02:00
a3c70696b6 OSC: personal monitoring, fix crash and minor bugs 2017-05-04 15:52:09 -07:00
c784f70966 OSC: Add /jog/mode/name 2017-05-03 21:38:52 -07:00
16e545ad73 OSC: Fix puctuation 2017-05-03 21:36:58 -07:00
2cb54dec60 OSC: arrange modes in a more logical order. 2017-05-03 18:19:45 -07:00
2bbf83e109 OSC: Add multimode /jog command 2017-05-03 16:33:33 -07:00
2abefde534 OSC scrub, fix numbers to work with usec rather than msec. 2017-05-01 13:53:03 -07:00
e5182f3eb4 OSC: fix scrub to not use boost ptime. 2017-05-01 13:45:47 -07:00
5f06ae43d8 OSC: add /scrub function 2017-05-01 07:08:02 -07:00
a283784cce FP8: channel-navigation/scroll select track on encoder press 2017-04-29 12:38:53 +02:00
de45ac0e76 FP8: snap-to scroll tracks, both editor+mixer 2017-04-29 12:38:53 +02:00
2012dc2553 OSC: correct spelling 2017-04-21 07:29:13 -07:00
ea1769d711 Resolve potential variable name ambiguity for older compilers 2017-04-21 16:05:24 +02:00
b6c222555f NO-OP: re-order code, add comments 2017-04-20 17:19:03 +02:00
8add4eefad FP8: some code comments and cleanup 2017-04-20 16:06:47 +02:00
0656d5ab1a Use XMLNode::get/set_property API in Faderport surface 2017-04-19 09:36:59 +10:00
23eb1fbf01 Use PBD::string_to<bool>() in GenericMidiControlProtocol class
Equivalent to PBD::string_is_affirmative()
2017-04-19 09:36:59 +10:00
7170dd84d8 Use XMLProperty::get/set_property API in CC121 Surface module 2017-04-19 09:36:54 +10:00
bd533e305d Use XMLNode::set_property API in WiimoteControlProtocol class 2017-04-19 09:36:54 +10:00
bd3965e278 Use XMLNode::get/set_property in Push2 surface
Fix push2 property names to use hyphen word separator.
2017-04-19 09:36:54 +10:00
0df955412e Use XMLNode::set_property in OSC_GUI class 2017-04-19 09:36:54 +10:00
6c1e7153ef Use XMLNode::get/set_property API in OSC class 2017-04-19 09:36:54 +10:00
1680811dbf Use XMLNode::get_property API in Mackie DeviceInfo class 2017-04-19 09:36:54 +10:00
77b4e041ac Use XMLNode::get/set_property API in mackie Surface class 2017-04-19 09:36:54 +10:00
86f403cbbd Use XMLNode::get/set_property API in MackieControlProtocol class 2017-04-19 09:36:54 +10:00
9554dd4445 Use XMLNode::get/set_property API in mackie surface DeviceProfile class 2017-04-19 09:36:54 +10:00
f82cb87f0c Use XMLNode::get/set_property API in MIDIControllable class 2017-04-19 09:36:54 +10:00
3be0170e82 Use XMLNode::get/set_property API in GenericMidiControlProtocol class 2017-04-19 09:36:54 +10:00
f28bfb2648 Use XMLNode::get/set_property API in FaderPort class 2017-04-19 09:36:54 +10:00
8144b197c0 Use XMLNode::get/set_property API in ARDOUR::ControlProtocol class 2017-04-19 09:36:54 +10:00
63296285be Add missing header include to ControlProtocol class source file 2017-04-19 09:36:47 +10:00
362303f793 FP8: Fix sort-order 2017-04-18 16:09:44 +02:00
5dce10500c FP8: handle backend changes + reconnect
When the backend is dropped or changed, on engine-restart
the connection_handler() re-establishes already connected ports.
There's no disconnect when the backend dies or is hard-stopped.
2017-04-18 15:14:00 +02:00
3243e17c71 FP8: allow to re-initialize the Strips w/o restart 2017-04-18 15:01:54 +02:00
bce08cf4f3 FP8: experiment with selection-mode 2017-04-18 13:39:42 +02:00
629b5e0446 clear + re-init faderport at disconnect 2017-04-18 03:20:33 +02:00
8e5a972a24 Managed to trigger an assert()
Create new Mixbus session, initially incrementally adding Busses to
the session triggers a series of "assign_stripables()"
2017-04-17 23:50:11 +02:00
84804f7d90 cont'd FP8 tweaks
* include Mixbus PRE plugin on Mixbusses
* Mixbus master-assign on right-most "S" button
* fix parameter-banking and assignment
* fix typo in 029e963fb (fader range constaint)
2017-04-17 20:06:00 +02:00
029e963fb5 FP8: limit fader range
In case of VCA masters or otherwise the value can exceed the max
+6dB and internal_to_interface() returns a value > 1.0 which cannot
be represented on the physical fader (MIDI &0x7f wraps)
2017-04-16 23:48:06 +02:00
55cd96df8d Clean up after generic MIDI surface -- #7311
When there are some non-released MIDIControllables, signal are still
delivered to the objects, even if there's no surface thread to handle
the signals anymore.
2017-04-16 19:06:17 +02:00
67f2e4b866 FP8: add metronome level reset 2017-04-16 17:18:23 +02:00
8a3d9317bd FaderPort8 details:
* make shift buttons equivalent
* 2 x stop: move to session-start
* RTZ: return to zero (not session-start)
* in Pan mode: encoder controls pan-width (w/o shift)
2017-04-15 21:20:51 +02:00
18dcd4d7ff FP8: Configuration UI layout & design (add image, separators) 2017-04-15 15:19:58 +02:00
60c12df517 Fondle Port 8
* only start touch on parameters in "Touch" mode.
* fix "mute clear" (also affect mute-automation in touch)
2017-04-14 23:03:31 +02:00
74c8ba5c9a FP8: assign toggled plugin-parameters to buttons 2017-04-14 23:03:31 +02:00
7197231f4c FP8: Allow binding "Select" to a controllable or functor 2017-04-14 23:03:31 +02:00
43d9feabd3 cont'd FP8 refinement & details
* Access pan-width via shift, press encoder to reset
* Add "touch-start" to encoder events
* Show plugin-param value-bar
* Sends & well-known ctrls: follow strip-selection
* map "select" to strip-selection in Sends-mode
* Fader group override (via shift)
* Prev/Next button tweaks.
* consistent enum naming ...
2017-04-14 19:56:42 +02:00
d43a23fe28 Faderport8 control surface support 2017-04-13 21:21:59 +02:00
d64ca9be08 Properly expose "well known" comp_redux output. 2017-04-12 21:14:50 +02:00
6b8be8fa71 Fix set-*-from-edit-range actions, when accessed from control surfaces. 2017-04-01 09:57:06 -05:00
eb1bd9d8e2 OSC: don't skip when deleting cue observers 2017-03-29 16:24:43 -07:00
8de580c123 OSC: Clear devices should clear cue observers as well. 2017-03-29 16:07:21 -07:00
e7ca514887 OSC: reduce feedback noise for surfaces using /strip/list 2017-03-26 21:16:45 -07:00
f5931457fb OSC: tell surfaces using /strip/list they need to rebuild after strip add/remove 2017-03-24 14:05:39 -07:00
011c4a05d8 OSC: update /strip/list response to add aux, midi bus and VCAs 2017-03-24 13:07:03 -07:00
f69808b372 BasicUI moved toggle_click,toggle_roll and stop_forget from menu action to session calls 2017-03-19 23:09:45 -07:00
7d41e542fe OSC: add feedback for /monitor/mute,dim,mono 2017-03-19 08:54:58 -07:00
1af7e97fd0 basic_ui send midi_panic directly to session rather than through GUI 2017-03-19 07:27:24 -07:00
b0e5ab1b81 OSC add /monitor/mute,dim,mono 2017-03-18 20:05:04 -07:00
caae0546a7 OSC fix toggle_monitor_mute/dim/mono in basic_ui 2017-03-18 14:14:02 -07:00
891ad41c48 OSC: fix pan stuck at centre. 2017-03-15 13:24:13 -07:00
175027fb6c OSC amend access_action with action in line to ignore if param is 0 2017-03-15 09:20:42 -07:00
cd4462323f OSC: add new /access_action/group/action f 1 for float only controllers 2017-03-14 18:47:41 -07:00
dc98fa6f3f Fix Faderport Proj button (show-editor action) 2017-03-14 09:27:59 -05:00
248521221c OSC debug: "ALL" == all messages incl. invalid ones 2017-03-13 22:35:07 +01:00
6af51b52ff Use dedicated "show editor/mixer" actions 2017-03-10 17:52:42 +01:00
f21111d7df Faderport uses the Mix and Proj buttons to summon mixer and editor; there is no longer a Toggle. 2017-03-09 14:29:08 -06:00
ad6ddf70df Don't allow GMCP to override loading_state_version
- GMPC does not use it directly
- when GMPC was enabled Stateful::loading_state_version was set to 1000
  (the protocol is at 1.0.0)
- it messes up session-loading, particularly various plugin states and
  templates (e.g  Processor::set_state_2X was used)
2017-03-04 17:55:22 +01:00
f1e6cc50b0 Revert "libs: debug output for faderport/editor mixer strip sync"
This reverts commit 6fb91b1ac2.
2017-02-25 19:56:51 +01:00
df52c8c748 OSC: correct busses spelling in GUI 2017-02-25 08:49:18 -08:00
6fb91b1ac2 libs: debug output for faderport/editor mixer strip sync 2017-02-24 23:10:03 +01:00
2b9525c991 try to make sure faderport shows the same strip as the editor mixer strip 2017-02-24 22:54:25 +01:00
febd1d5c88 remove misleading/incorrect comment
The previously-commented code is precisely what gets invoked
when solo state changes, and had nothing to do with actually
changing solo state in any way.
2017-02-24 10:18:57 +01:00
6fbdfa353b OSC: remove invalid feedback for solo and pan az. 2017-02-23 15:45:28 -08:00
b5dbfc9931 leave a ToDo note for the mackie surface 2017-02-17 04:02:15 +01:00
9d8829f5bf Remove direct calls to set solo_control()
Changing solo-state needs to be done in rt-context to atomically
propagate solo/mute.

set_control() queues a rt-event, later Session::rt_set_control() calls
Session::update_route_solo_state() to propagate solo/mute.
2017-02-17 03:58:51 +01:00
8243aeb3a1 remove debugging stacktrace from mackie code 2017-02-09 12:47:25 +01:00
e75c713e5e make the leftmost mixer stripable API at least work as advertised 2017-02-01 11:57:37 +01:00
0f4530af0d add new API to ControlProtocol to allow GUI to specify left-most mixer strip
Subject To Change. Mileage May Vary. Offer Not Good In All Territories.
2017-02-01 11:46:42 +01:00
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
9e7652ca62 debugging with markk: stacktrace on bank switch in mackie code 2017-01-31 20:12:04 +01:00
6f66fbbf73 remove recently added MackieControl DEBUG_TRACE msgs 2017-01-31 19:16:50 +01:00
1c9df390bc stop DEBUG_TRACE for MackieControl crashing in some conditions 2017-01-31 19:16:35 +01:00
0d72fe65a2 mackie: use "markN" for new markers, like the GUI (not "markerN") 2017-01-31 18:24:39 +01:00
7c517f6566 mackie: check modifier bits for button AFTER identifying possibly remapped button ID 2017-01-31 18:08:44 +01:00
efd222afe9 mackie: more debug tracing 2017-01-31 17:52:59 +01:00
58c1ff368c mackie: more debug tracing 2017-01-31 17:48:49 +01:00
9dc2ef28be mackie: more debug tracing for remapped buttons 2017-01-31 17:43:33 +01:00
8f13d33efe Revert "mackie: make profile-mapped keys maybe actually do something"
This reverts commit 0d7f88afbd.
2017-01-31 17:37:45 +01:00
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
16804e20c8 mackie: improve previous commit - use button_id not button.bid() to make remapping work 2017-01-31 17:31:10 +01:00
0d7f88afbd mackie: make profile-mapped keys maybe actually do something 2017-01-31 17:23:45 +01:00
404686d258 more mackie debug tracing 2017-01-31 17:05:30 +01:00
88dae1c766 improvement to last loop button commit for MCP 2017-01-31 16:29:22 +01:00
f55ebf26bd mackie support should use BasicUI::loop_toggle() 2017-01-31 16:10:23 +01:00
cdddf79bcf Generic MIDI controls should affect group members too, if they exist 2017-01-31 15:33:13 +01:00
b424187be1 another action name fix for Push2 support 2017-01-28 19:16:24 +01:00
41aaee6fe9 fix action names in Mackie code after Editor=>Control migration 2017-01-28 18:51:03 +01:00
220fbbe0d8 fix another action name in BasicUI after Editor=>Control migration 2017-01-28 18:51:03 +01:00
e92c169275 fix action names in BasicUI after Editor=>Control migration 2017-01-28 18:51:03 +01:00
ade59c123c fix action names in Push2 support code 2017-01-28 18:51:03 +01:00
c8892f411a MCP GUI make surface numbering the same as port numbering and more explanatory. 2017-01-28 09:35:42 -08:00
390ce9bc4f mackie surface support changes actions recently moved to Common/* 2017-01-28 18:20:49 +01:00
8c7b0d1486 wiimote surface support changes actions recently moved to Common/* 2017-01-28 18:19:01 +01:00
c3d0af413a MCP fix issue 7219 get GUI to show main surface for right port 2017-01-27 21:44:40 -08:00
93f837b43e generic MIDI: put controllables into touch mode (if appropriate) when data is received 2017-01-23 13:25:56 +01:00
7daf620a8d add some comments 2017-01-22 19:49:40 +01:00
94c11ebd90 remove debug cruft from wscript for push2 that breaks with python3 2017-01-21 15:04:39 +00:00
f05a07837b MIDI leaks -- the Controllergate conspiracy debunked 2017-01-20 11:40:53 +01:00
5d7b6fdd62 ancillary change related to removal of boost::optional<Rect> 2017-01-19 20:55:38 +01:00
38e47c2f5f Accommodate newly introduced source(s) in our MSVC project (ardour_osc) 2017-01-13 10:18:38 +00:00
c9715af5d9 OSC: We want to see aux buses even if the gui has them hidden 2017-01-11 19:57:19 -08:00
19e6273502 OSC: Fix aux mute to check stripable exists first 2017-01-10 22:09:30 -08:00
bcbe8424ad fix nested templates for ye ancient compilers of the worlde 2017-01-10 09:58:26 +00:00
27773ed1b3 OSC: Fix cue observer stop to zero controls 2017-01-09 19:05:38 -08:00
b073328700 OSC: Add Talent individual monitor controls 2017-01-09 18:56:22 -08:00
564d6c4e3c OSC: remove unused overall feedback calls and variables 2016-12-31 08:01:23 -08:00
49d53bc98d OSC: remove feedback enable from GUI (unused) 2016-12-31 07:42:51 -08:00
81123a774a amend 3afe3f32df (remove unused global feedback option)
That commit accidentally removed unrelated code in generic-midi surface
which just happened to have the same name (get/set_midi_feedback) as the
unused preference.

Regardless, there was more cruft there. GMCP midicontrollables now use
the control surfaces' feedback option.
2016-12-31 15:20:07 +01:00
3afe3f32df Remove cruft (old MIDI feedback API) 2016-12-30 17:29:08 +01:00
c8d0015986 Tear down OSC settings GUI, when the protocol is disabled 2016-12-28 22:59:49 +01:00
d1e869f96d Move "Feedback" option to control-portocol settings 2016-12-28 22:59:15 +01:00
7b9d3f94d4 make solo button on faderport actually work 2016-12-19 22:56:37 +00:00
ecc2348ecc should not really bind a shared_ptr<Port> to a sigc slot, so don't do that 2016-12-18 00:07:59 +00:00
2614b0df43 OSC: Solo toggle should maintain state when locked, rec and rec_safe should show true state. 2016-11-27 20:52:14 -08:00
8ddeca133b OSC: Squelch select feedback when no feedback is configured. 2016-11-27 18:32:50 -08:00
1de584961a NO-OP; Backport changes from Mixbus branch 2016-11-27 22:54:23 +01:00
d26aac9020 OSC: no op, white space cleanup 2016-11-26 10:23:36 -08:00
c7f8471d52 OSC: Make plugin and plugin parameter numbering 1 based to match everything else. 2016-11-26 09:18:36 -08:00
5bf8a5537b OSC: Add patch from 7137 and make it work for manual port selection. 2016-11-25 10:10:49 -08:00
98f1cb76ed OSC: Patch from 7136 added cleaned and tested. 2016-11-25 07:26:18 -08:00
97f81479d3 fix ambiguity 2016-11-19 01:36:34 +01:00
b4b600a7b8 Generally speaking we use Glib::usleep() now in preference to standard ::usleep() 2016-11-18 20:01:43 +00:00
3e3791b72e OSC: mark session dirty if setup changes 2016-11-18 08:43:58 -08:00
1015e19ad3 OSC: issue 7116 fix send enable not working 2016-11-18 07:53:40 -08:00
91c2527f5c OSC: Fix default strip types to include Auxes. 2016-11-04 12:10:37 -07:00
77c9106769 OSC: Make Aux buses able to be separate. 2016-10-30 17:50:38 -07:00
9d63002d2f OSC: Slow down data storm at surface refresh 2016-10-29 10:56:44 -07:00
82d3842656 OSC: Add names/fader value to master and monitor. 2016-10-28 17:34:17 -07:00
e631119092 OSC: simplify int sends too. 2016-10-28 15:05:40 -07:00
d802c982cb OSC: More simplification - floats this time. 2016-10-28 14:42:56 -07:00
4eb2da491f OSC: simplify Global feedback (remove repetitive code) 2016-10-28 13:45:30 -07:00
5743013ae4 OSC fix debug logic for catchall messages 2016-10-23 19:00:20 -07:00
dd015e09a7 OSC Accept int in first parameter in path commands as well as float. 2016-10-23 18:45:25 -07:00
c43046320b reset peak meters used in push2 when stripable goes away 2016-10-17 15:58:39 -04:00
687ac2d294 remove unused variable 2016-10-17 15:58:39 -04:00
88dedfcbdb fix math ambiguity & OSX compilation
cc121.cc: In member function 'void ArdourSurface::CC121::encoder_handler(MIDI::Parser&, MIDI::EventTwoBytes*)':
cc121.cc:413: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:
/usr/include/architecture/i386/math.h:343: note: candidate 1: double pow(double, double)
/usr/include/c++/4.2.1/cmath:357: note: candidate 2: float std::pow(float, float)
2016-10-13 23:41:49 +02:00
1552547f65 stop using gkd_pango_context_get() in ArdourCanvas::Canvas and require concrete instances to supply a Pango::Context; do this for GtkCanvas and Push2Canvas 2016-10-13 17:18:54 -04:00
W.P. van Paassen
279b19258b Small improvement and change to comply with coding standard 2016-10-13 12:10:39 -04:00
W.P. van Paassen
5a3fe4aa20 Inital support for Steinberg's CC121 control surface 2016-10-13 12:10:39 -04:00
Michiel de Roo
bbb20272d5 OSC added plugin activate/deactivate 2016-10-13 12:08:31 -04:00
Nathan Stewart
0df00465fd Fixed array index out of bounds in Push2Menu::set_active() 2016-10-12 14:50:03 -04:00
ba4220b135 fix some compiler warnings (from mingw) 2016-09-30 13:07:53 -04:00
8d30580450 attempt to fix windows failed build by including pthread.h to get DEBUG_THREAD_SELF correctly defined 2016-09-30 12:52:07 -04:00
7701207123 push2:small logic fix for destructor, mostly to ensure that the track_mix layout is destroyed
Otherwise it is still connected to the ControlProtocol::StripableSelectionChanged signal, even though the
event loop specified in the connection has been destroyed.
2016-09-30 11:07:05 -05:00
1b830f2604 reorganize push 2 code and logic to better handle device arrival after program startup
Note: we do not handle device departure correctly yet, mostly because the shadow (pad) port has a retained
reference somewhere
2016-09-30 11:23:01 -04:00
8cff66c7e0 remove unused member variable 2016-09-30 11:23:01 -04:00
e71809dc04 push2 gui catches port registrations 2016-09-30 11:23:01 -04:00
4a159b817f remove useless code from push2 gui dialog 2016-09-30 11:23:01 -04:00
d8291550e7 Rectangle is ambiguous on Windows
In file included from /usr/share/mingw-w64/include/windows.h:71:0,
                 from /home/ardour/win-stack-w32/include/pthread.h:198,
                 from /home/ardour/ardour-w32/libs/pbd/pbd/event_loop.h:29,
                 from /home/ardour/ardour-w32/libs/pbd/pbd/signals.h:42,
                 from /home/ardour/ardour-w32/libs/midi++2/midi++/parser.h:26,
                 from ../libs/surfaces/push2/mix.cc:30:

/usr/share/mingw-w64/include/wingdi.h:3049:67: note: candidates are: WINBOOL Rectangle(HDC, int, int, int, int)

In file included from ../libs/surfaces/push2/mix.cc:48:0:

/home/ardour/ardour-w32/libs/canvas/canvas/rectangle.h:30:48: note: class ArdourCanvas::Rectangle
2016-09-29 13:56:10 +02:00
0a9c12f250 MacOS [sic] required changes for Rect in Push 2 code 2016-09-28 17:24:14 -04:00
1aab360b7d remove unnecessary method 2016-09-28 17:23:52 -04:00
67e415e14c make Ben's cool range select hack work with Push 2 2016-09-28 11:28:45 -05:00
6c4627b1b7 fix for push2 code on Windows (no random()) 2016-09-28 10:51:01 -05:00
b6e62c6654 move mode/scale/key definitions out of push2 code and into libardour; Aeolian is the same as Minor 2016-09-28 10:47:17 -05:00
0fc4a61fa0 don't render push2 layouts to PNG 2016-09-27 15:42:36 -05:00
a6d4bb0432 add missing/moved files from push2 merge 2016-09-27 15:42:26 -05:00
bbc410dae8 push2: add code to render screen to PNG files for screenshot purposes 2016-09-27 14:59:32 -05:00
3a7cf72752 push2: tweak layout APIs etc. 2016-09-27 14:59:32 -05:00
db4edbf3b5 push2: tweak logic of master button 2016-09-27 14:59:32 -05:00
303358973f push2: improve logic of ::set_current_layout() to allow reset of same layout 2016-09-27 14:59:32 -05:00
0006f28511 push2: don't illuminate a button we do not use 2016-09-27 14:59:32 -05:00
5e6249b7b1 push2: null handle on failed open 2016-09-27 14:59:32 -05:00
0cd60747a5 push2: fix issue with solo/mute display when entering mix layout 2016-09-27 14:59:32 -05:00
33015a7173 push2: many improvements to track mix and mix layouts
Including meters and clocks
2016-09-27 14:59:32 -05:00
a5e112a73f push2: correct knob origin translation for drawing 2016-09-27 14:59:32 -05:00