Jan Lentfer
d3e7fa0ebf
LCXL: implement mute, solo and record arm toggles
...
Holding the Device button and pressing one
of mute, solo and record arm will toggle
selected tracks (use Track Focus buttons)
accordingly.
2018-08-13 14:53:43 -04:00
Térence Clastres
dab2513d9f
Add pick-up mode and use it for knobs and faders
...
The pick up mode ignores new controller values until they match with the current setting of the stripable's ac
2018-08-13 13:57:06 -04:00
Térence Clastres
0d01a2abe9
Add Launch Control XL icon
2018-08-09 22:42:44 +02:00
Térence Clastres
740e075803
Turn off button led if it doesn't control a stripable
2018-08-09 22:13:14 +02:00
Térence Clastres
5276a9941b
Call switch_bank() and use button_track_mode() within it to init required LEDs
2018-08-09 21:38:56 +02:00
Térence Clastres
a9958840b0
Add reset method and use it during start-up/shutdown
2018-08-09 21:05:55 +02:00
Térence Clastres
2c460135c5
Add missing set_color(Off) in else statement
2018-08-09 21:05:55 +02:00
Térence Clastres
cbb0a33aa3
Correct formatting for if/else statements
2018-08-09 21:05:55 +02:00
Térence Clastres
24e4ba399c
Fix wrong note number offset
2018-08-09 21:05:51 +02:00
Paul Davis
3064c5a675
fix button note number map lookup
2018-08-08 11:36:15 -04:00
Robin Gareus
5fcea5833d
Properly announce support for Vendor string
2018-08-08 14:09:31 +02:00
Stefan Westerfeld
2fc5ed1e72
Let VST plugins know that we implement plugin window resizing.
2018-08-08 13:25:04 +02:00
Paul Davis
ecfe1c2c67
emacs whitespace fixes
2018-08-07 10:49:33 -04:00
Paul Davis
973c1cc61b
explicitly drop connections from destructor
2018-08-07 10:49:15 -04:00
Paul Davis
120115aec0
don't use an invalidator when connecting an EventLoop object's methods to a signal
2018-08-07 10:48:43 -04:00
Paul Davis
87b745face
fix uninitialized pointer error in launch control code
2018-08-07 10:44:56 -04:00
Paul Davis
fb4ff01a18
better debug message with correct namespace for EventLoop::invalidate_request()
2018-08-07 10:44:56 -04:00
Robin Gareus
941f55bf40
Create plugin-metadata folder for new config
2018-08-07 16:25:43 +02:00
Robin Gareus
149dc68809
Fix invalid C++11isms: don't use of enum as class or namespace
2018-08-07 15:48:39 +02:00
Robin Gareus
8fa62f102e
Fix C++98 compatibility error
...
'>' should be '> >' within a nested template argument list
2018-08-07 15:44:30 +02:00
Robin Gareus
be51e617bb
LCXL: add missing request-buffer factory.
2018-08-07 15:40:30 +02:00
Robin Gareus
6d983d5f0b
Fix -Wnon-virtual-dtor
...
`struct ArdourSurface::LaunchControlXL::LED' has virtual functions
and accessible non-virtual destructor [-Wnon-virtual-dtor]
2018-08-07 15:36:22 +02:00
Robin Gareus
c4d25037c4
Fix invalid use of enum as class or namespace.
2018-08-07 15:34:03 +02:00
Robin Gareus
f0105dafc1
NO-OP: whitespace
2018-08-07 15:30:26 +02:00
Térence Clastres
8c7a1e004b
Add Launch Control XL control surface support
2018-08-07 04:16:09 +02:00
Robin Gareus
f4c1166651
Fix track rename oddity, don't skip over current name.
...
ensure_track_or_route_name() can produce the current name.
This fixes the following issue:
Create a two audio tracks. Their names are "Audio" and "Audio 1".
Try to rename "Audio 1" to "Audio", its name becomes "Audio 2".
2018-08-06 19:52:51 +02:00
Robin Gareus
cf39ebc966
Add method to conveniently retrieve a sorted routelist
2018-08-02 21:36:34 +02:00
Ben Loftis
eb304fe4b8
FP2: Fix banking in NavChannel mode.
2018-08-01 11:35:35 -05:00
Robin Gareus
c546ada320
Also expose PI::enabled()
2018-08-01 17:03:23 +02:00
Robin Gareus
1c5a3cfee7
Fix+extend PluginInsert Lua bindings
2018-08-01 16:56:18 +02:00
Robin Gareus
465ceb63fa
Prepare for non-bypassable plugins (Mixbus channelstrip)
2018-07-31 22:24:45 +02:00
Robin Gareus
301d343e84
Fix mismatched delete/delete[]
2018-07-31 16:54:08 +02:00
Robin Gareus
b61b1cd7aa
Tweak FP2/2018 Ctrl-Surface UI
2018-07-31 15:43:21 +02:00
Robin Gareus
cc2324e763
Tweak UI for Faderport2/2018
2018-07-31 15:32:26 +02:00
Robin Gareus
b30cd5f657
Fix Faderport8/16 support in the wake of FP2
2018-07-31 15:23:49 +02:00
Ben Loftis
948834bb1e
Add support for PreSonus Faderport2 (2018 model)
...
This is a cleaned-up, foward-ported version of Ben's
Mixbus patch (d6694c5b31).
2018-07-31 14:54:20 +02:00
Robin Gareus
734bb51384
Expose Config and Cache dirs to Lua
...
usage example:
print (ARDOUR.user_config_directory(-1), ARDOUR.user_cache_directory(""))
print (ARDOUR.LuaAPI.build_filename(ARDOUR.user_config_directory(-1), "test.txt"))
2018-07-30 23:35:25 +02:00
Robin Gareus
592496eb09
Fix "session dirty" flicker during session-setup.
...
Loading a session includes setting the sync-source, this is queued
to happen during process(), which may or may not be while Session::Loading
is still set.
This change only catches the common case: internal transport, no slave.
2018-07-30 17:47:29 +02:00
Robin Gareus
e951a55d02
Ignore state-changes during deletion
...
Closing a session removes tracks, which triggers set_dirty().
There is no need to inform the UI or change the session's state.
2018-07-30 17:47:29 +02:00
Robin Gareus
9ccace8f0d
Amend VST "MasterUpdateDisplay", allow UI(s) to idle-update.
2018-07-30 15:58:29 +02:00
Robin Gareus
98769796d7
Fix VST callback and crash for some plugins
...
Apparently "MasterUpdateDisplay" is for plugins to notify the host about
state changes -- and not notficy the plugin's own UI.
see also
http://mixbus.harrisonconsoles.com/forum/thread-6229-post-37127.html
2018-07-30 15:42:17 +02:00
Robin Gareus
83ce11e411
Prepare types for new grid
2018-07-27 00:28:42 +02:00
Robin Gareus
43c76ff23b
Fix crash when testing invalid MIDI file.
...
smf_delete() does not handle NULL pointers. This fixes a crash when
checking if a MIDI source is valid.
2018-07-26 16:59:27 +02:00
Robin Gareus
4b55d65eaa
Fall back to default Session export dir, if export path does not exist.
2018-07-25 18:21:55 +02:00
Robin Gareus
0dc9c068e7
Don't allow invalid export Locations (when using the GUI)
2018-07-25 18:21:19 +02:00
Robin Gareus
ff5cc4a311
Reset export-config maps before each new export (1/2)
2018-07-25 18:19:55 +02:00
Robin Gareus
506863bf57
Add an API to reset export-handler configs.
...
config_map.erase() is only called in ExportHandler::finish_timespan().
When an export fails (throw) or is aborted, the export-handler's
config remains as is and the next export will run it again.
The export-handler is global, per session and
ExportHandler::add_export_config() only ever inserts or ignores insert.
This is in preparation to fix:
1) export to invalid path -> fail, error is thrown
2) correct path -> new config is inserted in the map
3) try to export again, first runs the not-completed export from (1)
-> constant errors.
2018-07-25 18:19:19 +02:00
Robin Gareus
16ef78ade0
Clarify error message when file cannot be created,
...
The default error is "Not a valid SNDFILE* pointer." which is rather
obscure to end-users.
2018-07-25 17:46:15 +02:00
Robin Gareus
938b2422e3
Distinguish unset MIDI Patch and bank 0
2018-07-24 23:22:21 +02:00
Robin Gareus
9cf9833a93
Fix log-scale rangesteps and log-control numeric spinboxes
2018-07-21 17:19:49 +02:00