13
0
Commit Graph

1569 Commits

Author SHA1 Message Date
b6ecc56e7a push2: scale selection and display on video display now working 2016-09-27 14:59:31 -05:00
9cc40aafa0 push2: menu presentation now working 2016-09-27 14:59:31 -05:00
0610e1dc8d remove all pad + scale stuff from push2 gui 2016-09-27 14:59:31 -05:00
216ce7bcb8 a slew of unconnected mostly minor tweaks to get Push2 support back to where it was...
... prior to using the canvas for the video screen
2016-09-27 14:59:31 -05:00
b835486170 tweaks and so forth to get first canvas-based rendering to Push2 display 2016-09-27 14:59:31 -05:00
8cc94e79ac push2: remove Knob::set_position() overload 2016-09-27 14:59:31 -05:00
7c9f3acc60 first compiling and theoretically correct version of Push2 canvas display.
Not tested with device at this point
2016-09-27 14:59:31 -05:00
2810e5619a push2: provide basic GUI control for pressure mode 2016-09-27 14:59:31 -05:00
b822d8be36 basic code to get/set pressure mode to/from the push2 2016-09-27 14:59:31 -05:00
f50d7cda25 additional i18n.h changes for push2 branch 2016-09-27 14:59:31 -05:00
313a0a7e90 push2: small change to work with a recent change in master 2016-09-27 14:59:31 -05:00
8fdf1669a7 push2: fix up issues with object lifetimes and signals during shutdown 2016-09-27 14:59:31 -05:00
ad7543c02f push2: track mix layout somewhat working 2016-09-27 14:59:31 -05:00
f20618ae19 push2: continued mix layout display refinement, plus scrolling fixes 2016-09-27 14:59:31 -05:00
11843e00ba continuing work on refining push2 mix layout 2016-09-27 14:59:31 -05:00
b830965288 push2: steps toward a more ableton-like layout in mix mode 2016-09-27 14:59:31 -05:00
4cc71d2966 push2: parameterize and centralize colors 2016-09-27 14:59:31 -05:00
79025e8c42 push2: small code improvements, avoiding intermediate variables 2016-09-27 14:59:31 -05:00
ccbe1797d6 push2: color palette management, and responding to 2 track properties in TrackMix layout 2016-09-27 14:59:31 -05:00
a4324d79a7 push2: add a little meat to the bones of the TrackMix layout (just a name, for now) 2016-09-27 14:59:31 -05:00
995f3f80bb push2: skeleton for track mix layout 2016-09-27 14:59:31 -05:00
2689458500 push2: rearrange and separate header file material 2016-09-27 14:59:31 -05:00
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
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
d3634c5779 Accommodate 'lua' search paths in various projects where they're needed
(i.e. so that MSVC can find header files from lua).
2016-02-27 16:29:55 +00:00
c932c56233 cleanup post-rebase-against-master messes 2016-02-22 15:31:25 -05:00
bc487bb4b0 replicate the remove-all-trailing whitespace commit(s) in master 2016-02-22 15:31:24 -05:00
379bc35948 update Mackie code to use new API to get all actions 2016-02-22 15:31:24 -05:00
67e19c177f radically change Keyboard/Binding API design to disconnect Gtk::Action lookup from binding definition
We need this because we need binding information/objects before all
Actions have been defined.
2016-02-22 15:31:24 -05:00
f519edbe8e fix segfault in libardour unit-tests (possible crash in mackie sf) 2016-02-20 20:26:34 +01:00
318f3850de third time lucky 2016-02-19 23:25:15 +01:00
452bca79eb and now without typo 2016-02-19 23:19:19 +01:00
9633ea3b01 fix Windows OSC support 2016-02-19 23:16:38 +01:00
f8bc9c66a5 OSC: remove "/session/loaded" message altogether, for testing on Win. 2016-02-16 16:06:39 -06:00
de94f3ce83 fix typo in previous commit 2016-02-15 17:29:54 -06:00
136f705af9 Defer session_loaded until AFTER lo_server_new.
This seems like the right thing to do, and -might- fix OSC on Windows.
2016-02-15 16:55:21 -06:00
a1d2c13077 mackie: if device type is unknown, make -D mackie show that 2016-02-07 10:28:07 -05:00
80a678de28 handle Mackie control device type ID = 0x6 (Behringer X-Touch Compact) 2016-02-07 10:28:07 -05:00
d862c357b3 change faderport name 2016-02-06 16:42:34 -06:00
09921e1d76 Mackie: shift+marker needs to remove marker. moved session-range to shift+solo.
Originally cbbd87f50b in mixbus/master
2016-02-06 15:47:27 -05:00
5516e3bdd2 mackie: better fix for 2016-02-06 14:24:06 -05:00
3b1d1675de mackie: stop crashes when switching to X-Touch Compact device 2016-02-05 17:59:29 -05:00
ff14f4d63c Mackie Protocol: more fixes for aac6a5 2016-02-04 11:44:23 -06:00
1b5931a028 Mackie Protocol: fixes for aac6a5 2016-02-04 11:17:45 -06:00
37d6265e13 mackie: try to improve logic and management of device profiles 2016-02-04 11:24:26 -05:00
d3081fd816 mackie: reverse previous profile editor changes; allow profile to define anything except plain and shift actions.
For Fn keys we also allow plain and shift definitions
2016-02-04 11:24:26 -05:00
aefa63aaa6 mackie: radically shrink down the profile editor
We only expose user control over Fn keys and only the shift modifier
2016-02-04 11:24:26 -05:00
23b1944bea Mackie protocol: set-session-from-edit-range moved to shift+marker 2016-02-04 09:30:37 -06:00
aac6a59071 Mackie Protocol: Move buttons to more accurately reflect default mcp legends.
Modifiers are only modifiers (no actions directly on modifiers).
Punch indicators moved to Drop/Replace.
Added Save, Undo, Cancel (select none) and Enter (select all tracks)
Fixed click button.
Up&Down buttons now move the selected track up & down.
2016-02-03 18:11:21 -06:00
10a11492dd mackie: fix gain control display 2016-02-03 17:27:14 -05:00
eeff08aac4 mackie: use bus shortname in send subview.
Also slightly tighten route name display
2016-02-03 17:27:01 -05:00
7f82e7769f zero more stuff out when leaving subview mode 2016-02-03 17:25:28 -05:00
dc4daa892d Mackie Protocol: Show dB values for Mixbus "Send" levels.
No sense rewriting it now, but the correct way to approach
   this stuff is to pass in the control, and use
   the appropriate one of: interface, internal, or user values.
   in this case, get_user would have returned dB for both Ardour and Mixbus sends.
2016-02-03 13:48:56 -06:00
9cce8d10a9 faderport: save+restore footswitch setting 2016-02-03 11:53:56 -05:00
dd05f1e257 Fix bug #5633, Don't drop all midi bindings when a track is removed
Only drop the controllable that is being destroyed, not all of them.
2016-02-03 22:30:41 +10:00
0ddbf665d8 generic MIDI: if a CC is bound to a toggled controllable, toggle the controllable only when the incoming CC value > 0x40
See comment in code for more details
2016-02-02 22:28:36 -05:00
b4a9bf5878 Mackie Control: Save old bank before we change it to new. 2016-02-02 18:41:49 -08:00
fea89a7f9b fix compiler warning 2016-02-02 18:30:51 -05:00
8df1baa659 Fix for previous commit 2016-02-02 16:14:00 -06:00
ea08354c17 fix for knob scaling 2016-02-02 15:47:05 -06:00
99a53ed7f0 Mackie Control: Fix Flip mode getting confused if subview is not sends. 2016-02-02 09:38:55 -08:00
7229dccb3b Mackie Control: Shift/Select now toggles individual channels within group. Makes this the same as other grouped controls. 2016-02-02 09:03:27 -08:00
a7775559c1 Mackie Control: remove Shift/select zeros fader. 2016-02-02 08:55:36 -08:00
abb151b8b0 Mackie Control: Moved encoder fine modifier from Control to Shift (Shift will be only modifier) 2016-02-02 08:49:16 -08:00
9b1a150dd9 mackie: update fader+pot when changing flip status 2016-02-02 11:17:38 -05:00
e38fad6228 faderport: fix binding of actions to footswitch 2016-02-02 09:21:13 -05:00
846afdd8e5 faderport: make blink/on/off status of record enable LED match the GUI one 2016-02-02 09:05:00 -05:00
ff2c3dbc81 control surfaces: fix BaseUI method for disabling record enable 2016-02-02 09:03:41 -05:00
a85b8ed842 mackie: fix display of input trim level trackview mode 2016-02-02 08:15:35 -05:00
4c13018656 mackie: fix display of send level/fader level in send subview 2016-02-02 08:08:14 -05:00
36b11098a2 mackie: substantial reworking of flip mode with large chunks of code no longer used.
Flip mode only works in Sends subview mode.

Display is incorrect when flipped - vpot is still updated by send level changes. TO BE FIXED.
2016-02-01 22:52:22 -05:00
cf29447ec3 mackie: add Phase control (for first channel only) in Track View subview mode.
Also removed a couple of methods no longer used, since trim and phase are only
visible in TrackView mode.
2016-02-01 15:15:57 -05:00
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
5153631d70 change API of MIDI::Port::drain() to include a maximum blocking time 2016-02-01 13:26:30 -05:00
d98021624f mackie: stop playing games with start/end range LEDs 2016-02-01 12:22:23 -05:00
ca813315bf mackie: add new bindings for Save,Undo,Cancel,Enter
these now control punch in, punch out, external sync and follow edits, respectively
2016-02-01 12:22:01 -05:00
5eccbbfbd6 mackie: fix stupid thinko, and use BaseUI::access_action() to correctly accesss GUI actions 2016-02-01 12:20:55 -05:00
c69514afe9 Mackie protocol: clear Marker modifer 2016-01-31 22:28:13 -06:00
55967972b6 mackie: slightly less fragile/more readable code for compute new controllable values from vpot events
This is still not really right - it doesn't do the right thing, i think, for trim controls
2016-01-31 22:43:21 -05:00
c66d7e8cf9 mackie: consistent use of Shift to mean "InverseGroup" 2016-01-31 22:42:29 -05:00
de29ed02bc mackie: display correct numerical send level 2016-01-31 22:41:46 -05:00
20d74585fd mackie: implement trim, monitoring, solo iso and solo safe for trackview submode 2016-01-31 21:54:01 -05:00
9cfd76c026 mackie: make shift-click use InverseGroup semantics as intended, not NoGroup 2016-01-31 21:53:29 -05:00
23f457e81e NOOP: comment fix 2016-01-31 21:52:46 -05:00
27b565d5cc mackie: make vselect events and pot events handle toggle/enumeration controls correctly (or more correctly 2016-01-31 21:52:14 -05:00
69b4228176 mackie: partially working trackview submode.
More controls/pots to come
2016-01-31 13:20:18 -05:00
da665a5dc5 mackie: fix bug that prevents global view mode from working without first banking 2016-01-31 13:20:18 -05:00
f44acc4857 mackie: fix some awful cut-n-paste errors 2016-01-31 13:20:18 -05:00
3631cc1532 mackie: remove Trim pot mode, and add skeleton for TrackView subview mode 2016-01-31 13:20:18 -05:00
d3dfd74497 mackie: strengthen behaviour of clear solo button 2016-01-31 11:36:46 -05:00
2491549923 mackie: make replace (finish-range) LED flash at the right time 2016-01-31 11:36:31 -05:00
6780b7eb54 mackie: make nudge work as modifier and on its own 2016-01-31 11:17:23 -05:00
b78be4d705 mackie: hard-code drop+replace buttons to start/finish-range-from-playhead
With some LED action that would even better with blinking
2016-01-31 11:02:21 -05:00
af1028bd90 mackie: make marker button work as Mackie intends it (as a modifier for rewind/ffwd) 2016-01-31 11:01:41 -05:00
2b56dc17e3 mackie: add "clean" method to invoke GUI actions from button events, in code 2016-01-31 11:00:16 -05:00
ef793d3762 mackie: shift-stop additionally requests MIDI Panic, as well as regular stop 2016-01-31 09:11:43 -05:00
e622f3e5b6 Mackie protocol: Fix stuck-on Read LED. 2016-01-30 21:38:18 -06:00
9115a2c5d2 Surfaces with separate meters should meter even when stopped. 2016-01-30 09:46:37 -06:00
f762cbff35 mackie: remove mention of "blinkers" concept 2016-01-29 18:40:56 -05:00
d5a8825ce8 mackie: basically (fully?) operation fader automatio control for first selected route 2016-01-29 18:37:03 -05:00
da35f58218 mackie: initial attempt at making automation-related buttons set fader automation state for selected routes 2016-01-29 16:29:52 -05:00
9fe4b7a92a mackie: if a subview mode is not OK because there's no selection, show no message 2016-01-29 16:15:41 -05:00
4a6724868d NOOP: change brace placement to avoid confusing emacs 2016-01-29 16:15:41 -05:00
42fbb96674 mackie: make group button (appear) to do something 2016-01-29 16:15:41 -05:00
9088944db2 Mackie protocol: More LED indicator fixes. 2016-01-29 14:26:08 -06:00
39a61dba83 mixbus: vpot press in non-subview mode should toggle master bus send 2016-01-29 12:58:50 -05:00
c6ea3515d1 mackie: in Sends subview mode, the enable control for the send should be looked upin the subview route, not the strip's own route 2016-01-29 12:41:50 -05:00
4b70a0aa0d Button::AudioInstruments should not be lit without good reason. 2016-01-29 11:28:15 -06:00
0a2377e9b4 mackie: redesign display logic entirely
Strips now maintain a pair of pending display strings (upper and lower).
A periodic timeout writes the pending value to the actual hardware if it
differs from the current string. This new design makes it easy to put a
message on the display and then after some period of time, revert to
whatever was there before.
2016-01-29 12:27:46 -05:00
8aaa027ed3 mackie: fix Global View button function
Bug introduced changing logic for set_view_mode()
2016-01-28 23:20:03 -05:00
d0668e5511 mackie: don't overload "Audio Instruments" and "Instruments" buttons.
With the MCU Pro, the button labelled "Instruments" uses the Dyn button ID.
The one labelled "Audio Instruments" does not.

This may break Nucleus support - needs to be checked
2016-01-28 23:05:28 -05:00
e862be7300 mackie: use Route::send_name() rather than Route::nth_send() 2016-01-28 23:05:28 -05:00
f1ed01b97f mackie: fix display of send level value 2016-01-28 23:05:28 -05:00
cf558ee18c Buses and Auxes are slightly different view-filters in Mixbus 2016-01-28 17:21:42 -06:00
54c3c9e494 prevent bank/channel switching past the end of the available routes; do nothing when a view mode finds no matching routes 2016-01-28 16:27:33 -05:00
ea895efb97 mackie: improvements to display when switching subview modes 2016-01-28 15:08:26 -05:00
d19b1b64b1 make Send button light appropriately 2016-01-28 15:08:25 -05:00
3332633d19 Editing from a control surface must have the ability to ignore mouse location.
Add mark_in and mark_out actions that explicitly use the playhead as the edit location.
2016-01-28 13:46:33 -06:00
420206705d mackie: fix subview mode logic 2016-01-27 19:05:47 -05:00
e63c805fe2 mackie: clean up (some) interactions between subview mode and selection
Also, stop Plugin button from doing anything, since it has nothing to do yet
2016-01-27 19:00:27 -05:00
c61e5dbc18 remove debug output 2016-01-27 16:26:50 -05:00
66686a4e2a mackie: semi-working Sends subview mode 2016-01-27 14:15:41 -05:00
9b2af90328 remove mackie send pot mode (subview mode for sends coming up) 2016-01-27 12:41:01 -05:00
90d12b6d5a faderport: add a few more sensible actions to the footswitch options 2016-01-25 15:11:47 -05:00
b02b6cc3cd faderport: add footswitch combos to GUI to allow user control over what the switch does 2016-01-25 15:11:36 -05:00
5b7fa0b3c5 faderport: add footswitch button 2016-01-25 15:11:26 -05:00
2005891d40 use route gain control, not amp->gain() 2016-01-25 11:48:43 -05:00
9e5b7db89f first compiling, mostly working version of group controls changes 2016-01-22 11:58:31 -05:00
79f0a92818 Add a link library that's now needed when building ardour_cp
Now needs 'Timecode::BBT_Time' (from Ardour's 'timecode' lib).
2016-01-22 12:28:01 +00:00
a7141e1fc3 Transport_play should not jump back.
Typical use of transport controls is to ffwd and rewind, then "play".
This doesn't work well if the Play command always resets to starting position.
2016-01-19 14:00:51 -06:00
5493e20c84 Add all_tracks_rec actions 2016-01-19 14:00:03 -06:00
fe7aac8dac mackie: remove unnecessary connection to route group property change signal 2016-01-19 14:25:48 -05:00
fe3d85b204 Revert "mackie: still respond to route groups visibility changes"
This reverts commit a9ec547457.
2016-01-19 14:16:49 -05:00
a9ec547457 mackie: still respond to route groups visibility changes 2016-01-19 13:38:29 -05:00
22c5cb47f7 mackie: remove changes to group activation status when fetching routes to display
This creates an activation loop, because we fetch new routes to display when
group active status is changed. This was done to provide individual access to
routes that are in a group. We plan to do this using a shift modifier instead.
2016-01-19 12:46:08 -05:00
ce7f7e8e00 add 10sec zoom action 2016-01-18 18:24:14 +01:00
c5b93e2a01 track scrolling and zooming 2016-01-18 18:24:14 +01:00
27d82af077 add some horz and vert zoom actions; remove some whitespace from the code of the ui-actions, so they are easier to see and maintain 2016-01-18 18:24:14 +01:00
16623b1cb3 add more remote transport toggles for touchOSC: midi_panic, toggle_roll, stop_forget, set_X_range, quick snapshots. also add boilerplate for monitor controls, but those are not implemented yet 2016-01-18 18:24:14 +01:00
36e1ff48bc implement mark_in, mark_out, toggle_click 2016-01-18 18:24:14 +01:00
f0d9295dd6 implement remover_marker, jump_by_bars, and jump_by_seconds 2016-01-18 18:24:14 +01:00
5a55ac582d mackie: shift-fader overrides group settings 2016-01-18 12:11:09 -05:00
c2bf0fc94e remove shift-fader-touch as a way to reset gain to default 2016-01-18 12:11:09 -05:00
746d5c6624 add API to allow mackie controls to use GroupControlDisposition 2016-01-18 12:11:09 -05:00
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
1948b50a68 working version of new gain control design 2016-01-18 12:11:08 -05:00
55094b7237 move Amp::GainControl out into its own source module and out of Amp 2016-01-18 12:11:08 -05:00
19af86ece2 Mackie Control: Fix crash in multi-surface setup when add/remove tracks. 2016-01-18 08:58:07 -08:00
ef7c6730cb Groups: Fix un/set hidden/show should reset RID for tracks involved. 2016-01-17 14:17:02 -08:00
23041fda88 Mackie Control: fix math error that tried to change bank to very high number 2016-01-16 11:17:52 -08:00
92dba5bfa3 Mackie Control: Added hidden tracks view mode. 2016-01-16 07:32:30 -08:00