13
0
Commit Graph

1397 Commits

Author SHA1 Message Date
64d390ff13 push2: remove unneeded maps from Push2 object 2016-09-27 14:59:30 -05:00
c4602603b4 push2: make octave buttons actually work, with shift-press to reset to zero 2016-09-27 14:59:30 -05:00
6b080bf6ec stop using pitch bend strip for shuttle control (it sucks, and messes up using it for MIDI performance) 2016-09-27 14:59:30 -05:00
8e63685724 push2: cleanup layouts 2016-09-27 14:59:30 -05:00
14d80ec5f8 refactor Push2 GUI into modular "layouts" that encapsulate a given screen, its drawing and event handling 2016-09-27 14:59:30 -05:00
86578ea0cc push2: first somewhat operational versions of menus 2016-09-27 14:59:30 -05:00
b37531e04f push2: basics of 4x 4x4 percussive mode, similar to MPC (and vaguely to Live) 2016-09-27 14:59:30 -05:00
5e407406c4 ControlOnly port flag is gone 2016-09-27 14:59:30 -05:00
bc1876a84b push2: use correct selection API 2016-09-27 14:59:30 -05:00
053207003b push2: passthru pitch bend, aftertouch and channel pressure from dem fancy pads! 2016-09-27 14:59:30 -05:00
c13e568ee8 push2: connect pad port to selected MIDI at protocol startup 2016-09-27 14:59:30 -05:00
d8de7962ca change bundling of Push 2 ports so that the implicit connection ports don't show up 2016-09-27 14:59:30 -05:00
b31df0db2c add bundle support to push2 2016-09-27 14:59:30 -05:00
581fe8a237 add MIDI bundles to Generic MIDI support so that the ports show up nicely in the grid 2016-09-27 14:59:30 -05:00
0318d3cd64 add explanatory comment 2016-09-27 14:59:30 -05:00
5d4e1b3231 remove debug output 2016-09-27 14:59:30 -05:00
33a2995fd8 push2: save and restore push2 pad state, etc. 2016-09-27 14:59:30 -05:00
70477e6fed push2: almost fully operational ableton style pad mapping, etc 2016-09-27 14:59:30 -05:00
2aec2161f9 push2: initial sort of working pad remapping 2016-09-27 14:59:30 -05:00
597c737ab5 push2: get automatic pad connection to selected MIDI track working again 2016-09-27 14:59:30 -05:00
d19c9885ff push2: start of pad layout editing 2016-09-27 14:59:30 -05:00
afef816a7b push2: use a map for direct lookup of pad note 2016-09-27 14:59:30 -05:00
66453868cd push2: update GUI pad display when octave shift is used, or pad map is changed 2016-09-27 14:59:30 -05:00
eff67c8a8f push2: basics of octave shifting 2016-09-27 14:59:30 -05:00
915f937aa4 push2: add missing files 2016-09-27 14:59:30 -05:00
cf28d71783 push2: basic GUI dialog 2016-09-27 14:59:30 -05:00
6dbe3a1e3b post-rebase fixes 2016-09-27 14:59:30 -05:00
67620c353f push2: connect first selected track to pad port (and disconnect).
Provisional. Lots of (fun) work to do here
2016-09-27 14:59:30 -05:00
eb43344cf6 use modified add_shadow_port API(); make pads flash when pressed 2016-09-27 14:59:30 -05:00
be1dff4aaa push2: fix one pad registration detail 2016-09-27 14:59:30 -05:00
62d2d86b88 add a shadow port for the Push 2 port, to allow us to filter pads (note on/off) to other parts of Ardour 2016-09-27 14:59:29 -05:00
1448be481f push2: splash screen
Coded while the paint prep dries in the sun
2016-09-27 14:59:29 -05:00
169cf294c5 push2: expose page right/left buttons for scrolling; use right/left for banking; mute+solo debugging in place 2016-09-27 14:59:29 -05:00
9321cbaf10 push2: stop segfaults when closing push2 support 2016-09-27 14:59:29 -05:00
3932f07b6b push2: numerous changes, including long press actions 2016-09-27 14:59:29 -05:00
8a26f02851 amend FaderPort code to use BasicUI::goto_start() with optional argument 2016-09-27 14:59:29 -05:00
d7a16786fc change API for BasicUI::goto_start() to use optional roll-after arg 2016-09-27 14:59:29 -05:00
f699773490 clear button states at startup *and* shutdown 2016-09-27 14:59:29 -05:00
2afb7f1a30 basic implementation of scrubbing via push2 touch strip 2016-09-27 14:59:29 -05:00
6691975031 gain automation implemented.
Push 2 is rather slow to send touch-end messages.
2016-09-27 14:59:29 -05:00
c26de72870 use encoders for gain control 2016-09-27 14:59:29 -05:00
f290be21ee use right-side buttons to goto_nth_marker() 2016-09-27 14:59:29 -05:00
ac9b5f872d add method (taken from GTK GUI) to goto_nth_marker() to BasicUI 2016-09-27 14:59:29 -05:00
93dd5414d6 beginning of stripable control; solo+mute mostly operational 2016-09-27 14:59:29 -05:00
c6faede00c add shift modifier support 2016-09-27 14:59:29 -05:00
98335084c7 turn on all buttons that be envisaged as useful in ardour (for now); add support for edit-range-from-playhead ops 2016-09-27 14:59:29 -05:00
3438003566 remove debug output 2016-09-27 14:59:29 -05:00
eadf9bbef1 light solo button, and do cancel_all_solo() when it is pressed 2016-09-27 14:59:29 -05:00
0e5ac13a04 use new shared cancel_all_solo() in Mackie code 2016-09-27 14:59:29 -05:00
40dd604dbc add correct implementation for cancel all solo to BasicUI 2016-09-27 14:59:29 -05:00
d407d09d9c pulse metronome led when enabled 2016-09-27 14:59:29 -05:00
a96b320e3d expand display contents to include TC & BBT clocks, plus button function and track indicators
So many possibilities, so little time. Really going to need a "native" widget kit before this is finished
2016-09-27 14:59:29 -05:00
5ae72d574c only 1 MIDI port needed; more button functionality 2016-09-27 14:59:29 -05:00
4991bf5a1a push2: working bidirectional communication, some transport control/display (LED only); some scrolling 2016-09-27 14:59:29 -05:00
96db13e1ba push2: working port i/o 2016-09-27 14:59:29 -05:00
67698b8232 push2: port registration, LED setup 2016-09-27 14:59:29 -05:00
e0be45de38 remove duplicate/unnecessary header inclusions 2016-09-27 14:59:29 -05:00
189173c1b1 various fixes for push2 support. Now setups video display when enabled 2016-09-27 14:59:29 -05:00
413fe2cf9a adjustments to build nascent push2 surface support 2016-09-27 14:59:29 -05:00
22d1f1268b OSC: don't restore User preset before writing new one 2016-08-31 19:56:48 -07:00
0ff233d234 Update our MSVC project files to generate the most recent Ardour session file format (ver 5) rather than the older v3 format 2016-08-30 07:15:00 +01:00
a3d2521b25 Accommodate newly introduced source(s) in our MSVC project (ardour_osc) 2016-08-28 10:20:56 +01:00
bd77b605f6 add missing include 2016-08-24 23:06:52 +02:00
7ccbc0ca73 OSC: Add preset loading to OSC GUI 2016-08-24 10:07:21 -07:00
81c481f975 OSC: Tweak GUI to be more user obvious. 2016-08-22 13:23:04 -07:00
88e98a63c7 OSC: populate check boxes with default settings at session start 2016-08-21 16:31:22 -07:00
1cfd8b2203 OSC: set global variables in global space - crash fix 2016-08-21 14:15:54 -07:00
adb492b914 OSC GUI: Add Strip types and feedback check boxes 2016-08-21 13:25:11 -07:00
d1ed84e44e OSC: Add setup to GUI 2016-08-19 14:22:55 -07:00
c229e31720 OSC:: needs the .h file too... 2016-08-18 19:16:53 -07:00
7c43d2bb0e OSC: make remote port setting possible, add default surface variables 2016-08-18 19:15:57 -07:00
8708da2d19 OSC: Add value feedback to strip fader and trim 2016-08-17 08:24:57 -07:00
a992ac0b75 OSC: make sure this is c++98 compatible. 2016-08-06 09:25:57 -07:00
8da9000cbc C++98 compat for 032139ac3 2016-08-06 14:40:18 +02:00
032139ac30 osc: provide human readable reading for gain. 2016-08-05 19:08:43 -07:00
e78a177dbb OSC: provide human readable level for sends. 2016-08-05 17:24:09 -07:00
3f88a660b3 OSC: make send enables work in MB 2016-07-28 17:51:12 -07:00
7c5a8dea7c OSC: eq bands off by one fix 2016-07-28 08:51:15 -07:00
04029a656e OSC: MB spelling mistakes stopped compile fix 2016-07-28 07:44:58 -07:00
c10e57129d OSC: Fix cut-n-paste mistake 2016-07-26 14:47:12 -07:00
69752813db OSC: Make sends work for MB. Add pan to /path/strip 2016-07-26 14:11:06 -07:00
c2f5abc91e OSC: Fix forward detection to include >0 and <1 2016-07-26 08:02:03 -07:00
b36192aba8 OSC: Remove redux control 2016-07-26 08:00:04 -07:00
80bd3e7279 OSC: Make pan controls work properly with MB too. 2016-07-24 09:06:59 -07:00
d53d0faf93 a more reliable/robust/less complex version of previous commit 2016-07-21 14:00:18 -04:00
3bf7c4ef49 do not delete MIDIControllable* when dealing with pending MIDI Control requests - the MIDIControllable belongs to the surface code in controllables 2016-07-21 13:42:11 -04:00
b502d689e2 OSC: comp mode control text needs to be changed by signal too. 2016-07-20 08:59:06 -07:00
0017837b02 OSC: check if pan exists, fixes MB crash. 2016-07-18 15:57:27 -07:00
1364cd6a30 OSC: Get rid of meter noise in MB. 2016-07-18 09:47:33 -07:00
dade1f39b7 OSC: LFE is a control not a position. 2016-07-15 11:44:49 -07:00
6f80b40630 OSC: Fix Soloing to disable all solos in SIP mode as well 2016-07-14 12:06:37 -07:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
b620e5ab3f OSC: Add surface save and restore 2016-07-14 11:41:53 -07:00
1970a8d4de OSC: Fix off by one error 2016-07-14 06:52:09 -07:00
08bd0da509 use Session::cancel_all_solo() 2016-07-13 14:33:43 -04:00
3c58a674c5 mackie: fix behaviour of clear solo button 2016-07-13 13:43:20 -04:00
b77b3cbe22 OSC: Add global soloing indicator/cancel 2016-07-13 09:56:35 -07:00
577140c0dd OSC: Add /path/band extension for eq_* bands 2016-07-12 13:33:28 -07:00
9d4506716c OSC: Added EQ control, use interface_to_internal to normalize control range 2016-07-12 09:13:53 -07:00
3ab200acaa OSC: finish feedback for well known controls. Simplify some others. 2016-07-11 16:00:14 -07:00
5156b8aeb5 White space fix only. (Spaces to tabs) 2016-07-10 08:20:05 -07:00
97b1725023 OSC: Add well known controls for pan and compressor 2016-07-08 11:54:37 -07:00
295a7dfcf3 OSC: Add feedback for known pan controls and known compressor controls 2016-07-07 11:36:31 -07:00
d40cc6f6f9 OSC: Make sure selected strip is corrected when it's stripable vanishes 2016-07-06 19:28:41 -07:00
44fcbd988c mackie: ensure that the strip where select was pressed ends up as the first_selected_stripable 2016-07-06 21:40:29 -04:00
77a8da9010 set ControlProtocol::_first_selected_stripable at the right time only 2016-07-06 20:58:33 -04:00
cf9706974c a few post-rebase cleanups 2016-07-06 14:03:24 -04:00
2047ee527c restore/extend/simplify ControlProtocol API to allow tracking of selection 2016-07-06 13:39:10 -04:00
eed3ea5047 remove a bunch of code that will no longer be used 2016-07-06 13:38:13 -04:00
860ffed6d1 OSC: Clear expand Lamp on strip observer destroy 2016-07-05 14:11:16 -07:00
fef79d46bb OSC: Signal for editor mixer change. (Selected or not) 2016-07-04 20:07:38 -07:00
bc1f571954 OSC: /strip/select * should set new selected strip not toggle what is there. 2016-07-04 18:34:48 -07:00
291aec468f use session stripable selection API
and remove old ControlProtocol signals to talk to GUI etc.
2016-07-04 12:45:53 -04:00
b27d9bb02a OSC: select is global not per surface. 2016-07-04 08:27:16 -07:00
14c50b317c operate directly on realtime controls, not via Session 2016-07-04 09:27:33 -04:00
a373e4cfc8 UI: Add editor_mixer route pointer to session so all UIs can know the same current_strip even in a selected group. 2016-07-03 18:22:09 -07:00
e6621c4405 OSC: select off by one bug, something must have changed by 1, fixed 2016-07-03 15:28:03 -07:00
661123c756 OSC: Account for some select edge cases 2016-07-01 21:21:08 -07:00
6ed7336384 OSC: make sure out of bank strip can not be converted to a stripable. 2016-07-01 18:31:13 -07:00
3491f22c04 OSC: Don't look for which stripable is selected until we actually need it, It may be wrong at application start. 2016-07-01 18:12:31 -07:00
55722a74fb OSC: Change all time feedback to /position/<type> 2016-07-01 17:28:08 -07:00
7f712ddd4c OSC: Select tweak. 2016-06-29 19:57:13 -07:00
95beda06d9 OSC: Reworked select to follow Gui selected strip regardless of it's inclusion in bank 2016-06-29 19:38:17 -07:00
f3dd9eef8b OSC: master/monitor forced to sort at end 2016-06-22 14:50:13 -07:00
844bf70002 OSC: Fix math off by one, Check for all stripable controls because VCAs have less (crash fix) 2016-06-22 14:10:59 -07:00
64d7a82a52 fix gcc4 builds C++98
Flag is an enum -- not a class nor namespace
2016-06-22 16:18:07 +02:00
cad5ed4f21 OSC: Might help if I used the right variable, Really fix select. 2016-06-21 20:31:53 -07:00
74806a43c9 OSC: Fix out of range track. (crash) 2016-06-21 19:19:07 -07:00
daddf2179f OSC: Add strip type selection. 2016-06-21 18:47:43 -07:00
557031ca11 Remove confusion over ambiguous symbols
libboost and libsigc++ both contain symbols called _1() / _2() etc. Forcing the use of namespace sigc causes us to use the ones from sigc++ when in fact, we want the ones from boost.

Hopefully this fix will work for all compilers.
2016-06-18 11:41:12 +01:00
6ca3c67046 Use Glib::usleep() for consistency 2016-06-18 11:34:14 +01:00
f4047b9a26 OSC: take care of track order changes too. Deal with mixer topology changes one time. 2016-06-16 19:41:39 -07:00
3754859f2f OSC: Blank some more feedback values when select observer is destroyed. 2016-06-16 16:07:09 -07:00
dcf852aae4 OSC: Catch new strips, gone strips and redo banks and observers. Add more select feedback. 2016-06-13 11:57:15 -07:00
21bf61d559 MackieControl: in sends subview, if there are no sends for a vpot, drop the controllable for the vpot 2016-06-12 08:44:34 -04:00
beafe2be6e fix MCP Cancel button "escape" action 2016-06-12 08:43:24 -04:00
a8d7b0fca3 redesign/reimplement selection knowledge in MackieControlProtocol object
strips listen to Stripable::presentation_info().PropertyChange, and forward selected status changes
to the MCP object
2016-06-12 08:19:16 -04:00
4717080aee reduce verbosity of -D mackie in the presence of continued handshaking/keepalive messages. 2016-06-12 08:18:01 -04:00
3d9517c22f OSC: Add send enable control. 2016-06-11 13:57:27 -07:00
63e6378713 OSC: added solo isolate and solo safe/lock. 2016-06-11 12:09:15 -07:00
1695de335d OSC: Constrain master pan position as width requires. 2016-06-10 13:45:07 -07:00
b588308bed OSC: force non-active controls to zero. Keep pan within range wide allows. 2016-06-10 13:05:58 -07:00
2d4358ddb5 Various changes to PresentationInfo and a small consolidation of sorters.
The semantics for sorting PresentationInfo are up to the caller, not the
PresentationInfo object, so operator<() was removed and callers specifically
invoke ::order() for sorting.
2016-06-10 13:57:18 -04:00
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
f65713c426 OSC: Finished Select send levels 2016-06-09 18:33:00 -07:00
049a678ff9 OSC: change the word phase to polarity as per mailing list. 2016-06-09 15:24:43 -07:00
37aed5715b OSC: add phase control 2016-06-09 12:07:57 -07:00
4905422a47 OSC: Added pan width to selected 2016-06-09 11:11:48 -07:00
199f20ff2c namespace required 2016-06-09 13:24:35 -04:00
3e29a46603 OSC: select commands for pan and trim added, feedback for select sends. GUI_select feedback done. 2016-06-08 23:08:56 -07:00
f05ff9570e fix faderport's use of action name 2016-06-07 19:25:33 -04:00
d511d62f65 OSC: reset select strip on bank change or select for non-existing stripable.
Fixes crash when selecting unused strip and then changing bank.
2016-06-06 23:40:35 -07:00
ee1046bbed OSC: Respond to GUI select. 2016-06-06 14:54:33 -07:00
cb7e8025f2 Accommodate newly introduced source(s) in our MSVC project (ardour_osc)
(also, libardour_osc now needs to link to libardour_timecode)
2016-06-06 09:06:08 +01:00
cce4726c4c OSC: More controls in /select/*, off by one fixed 2016-06-05 22:30:14 -07:00
91ad3ef81d don't connect to individual PresentationInfo signals per Stripable; we only reorder strips once, when the global signal arrives 2016-06-05 16:33:02 -04:00
dfcc8fd547 Stripable signals moved to PresentationInfo 2016-06-05 16:33:02 -04:00
6637260ac9 Stripable signals moved to PresentationInfo 2016-06-05 16:33:02 -04:00
03d2939f27 OSC: Added feedback for /select 2016-06-05 07:25:54 -07:00
3f336f2021 OSC: Bug fix for no monitor, bug fix heart beat on turned global feedback on.
Start select code.
2016-06-04 07:04:32 -07:00
ee0f073e8d move from PresentationInfo::global_order() to PresentationInfo::order 2016-06-03 15:15:39 -04:00
6e258e0ade OSC: Fixed some button type commands to have path only as well as path f 2016-06-01 14:27:30 -07:00
38ab8dee90 Accommodate recently introduced source(s) in our MSVC project (ardour_osc) 2016-06-01 14:30:28 +01:00
d60200c899 OSC: finish /set_surface group of commands. 2016-05-31 22:04:25 -07:00
9ff3c55e34 OSC: Paths changed, feedback added, etc. 2016-05-31 14:09:38 -07:00
f03f2e5c3f use new record safe control in surface support 2016-05-31 15:30:45 -04:00
28afaebdc4 fix SNAFU in which Stripable::rec_enable_control() was incorrectly defined as ::recenable_control()
Make Mackie support code use the Stripable to access the rec-enable control while we're here
2016-05-31 15:30:45 -04:00
a2704dbff8 use correct signal to select route from generic MIDI, and add explanatory comment 2016-05-31 15:30:43 -04:00
08f01085de remove now-redundant control protocol route-selection signals 2016-05-31 15:30:43 -04:00
c438ba2b6e remove no-longer-used TrackSelectionChanged signal from ControlProtocol 2016-05-31 15:30:43 -04:00
0d9433aef6 remove no-effect handling of route active-status change in Mackie Control code 2016-05-31 15:30:43 -04:00
9d2538ae72 remove any reference to Route in Generic MIDI support (basically a NO-OP) 2016-05-31 15:30:43 -04:00
cefd3ac8be convert faderport to use Stripable instead of Route 2016-05-31 15:30:43 -04:00
186209c03c fix crash in mackie code caused by assumption that all Stripables have meters 2016-05-31 15:30:43 -04:00
4b0a235f91 manually fix rebase/merge issues for Mackie Control support 2016-05-31 15:30:42 -04:00
4b7bbacaaa make mackie surfaces aware of VCAs 2016-05-31 15:30:42 -04:00
c34ad3a723 convert Mackie Control Surface support to use Stripable, not Route 2016-05-31 15:30:42 -04:00
dd57a83793 add Stripable analogs for Route signals and methods in ControlProtocol
These will go away once all surfaces have migrated to Stripables
2016-05-31 15:30:42 -04:00
8346fab567 remove irrelevant, out of date and incorrect comment 2016-05-31 15:30:42 -04:00
d5127001bb move ControllableDescriptor from libpbd to libardour; add support for describing VCAs 2016-05-31 15:30:42 -04:00
e0ff70cf86 first vaguely working version using PresentationInfo
remote control ID and "order keys" have been removed.
2016-05-31 15:30:42 -04:00
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
69250b64ea move ever close to working master/slave logic, this time with audio testing 2016-05-31 15:30:41 -04:00
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
4b36593106 fix faderport and mackie to use route AutomationControls to be notified about solo/mute changes 2016-05-31 15:30:40 -04:00
aee283f056 use redesigned Route and VCA object architecture/API 2016-05-31 15:30:39 -04:00
nick_m
34c9ac9dd7 Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt() 2016-05-27 23:38:17 +10:00
b0200b23f2 Accommodate the fact that 'msvc_resources.rc.in' got moved to a new path 2016-05-21 10:33:18 +01:00
3060b7bbc4 upper parameter limit is inclusive. 2016-05-14 16:14:45 +02:00
ae7cc64377 copy-n-paste the ARDOUR_UI toggle-roll code into BasicUI (for Faderport and others) 2016-05-09 08:17:23 -04:00
672528baf4 fix shared_ptr<Route> management in Mackie support so that deleted routes are destroyed 2016-05-07 13:36:04 -04:00
17ace643e4 OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one) 2016-05-04 23:09:45 -04:00
8b52b69810 make BasicUI (for control surfaces) loop toggle work like the GUI 2016-04-30 10:54:40 -04:00
4a226385b6 OSC: Fix Solo to work with both SIP and Listen. 2016-04-27 09:06:46 -07:00
622ba89dd9 OSC: removed unused _namespace_root variable. 2016-04-19 16:13:18 -07:00
40aa4cfe06 Modify our MSVC projects to build liblua as a DLL rather than a static lib 2016-04-04 16:40:20 +01:00
234b06a18c OSC: Changed gainVCA to gainfader as VCA is already used. 2016-03-29 07:58:20 -07:00
3eb5f76edb OSC: fix issue 6839, make all OSC gaindB values below -192, inf. 2016-03-27 17:46:14 -07:00
6c3559dc6c OSC: added a linear VCA style gain control for faders that are 0 to 1 linear.
path = /ardour/routes/gainVCA if RID position
2016-03-26 11:38:19 -07:00
83bcaa1882 plug a tiny memory leak 2016-03-19 10:51:26 +01:00