Paul Davis [Mon, 1 Feb 2016 02:45:36 +0000 (21:45 -0500)]
add a new constructor for RouteAutomationControllable that takes a ParameterDescriptor
Paul Davis [Sun, 31 Jan 2016 18:20:04 +0000 (13:20 -0500)]
break out Route controllables code into its own source module
Paul Davis [Sun, 31 Jan 2016 18:16:22 +0000 (13:16 -0500)]
mackie: partially working trackview submode.
More controls/pots to come
Paul Davis [Sun, 31 Jan 2016 18:15:49 +0000 (13:15 -0500)]
mackie: fix bug that prevents global view mode from working without first banking
Paul Davis [Sun, 31 Jan 2016 17:58:46 +0000 (12:58 -0500)]
mackie: fix some awful cut-n-paste errors
Paul Davis [Sun, 31 Jan 2016 16:59:55 +0000 (11:59 -0500)]
mackie: remove Trim pot mode, and add skeleton for TrackView subview mode
Ben Loftis [Sun, 31 Jan 2016 17:21:47 +0000 (11:21 -0600)]
Mackie protocol: XTouch profile with expanded editing options
Paul Davis [Sun, 31 Jan 2016 16:36:46 +0000 (11:36 -0500)]
mackie: strengthen behaviour of clear solo button
Paul Davis [Sun, 31 Jan 2016 16:36:31 +0000 (11:36 -0500)]
mackie: make replace (finish-range) LED flash at the right time
Paul Davis [Sun, 31 Jan 2016 16:17:23 +0000 (11:17 -0500)]
mackie: make nudge work as modifier and on its own
Paul Davis [Sun, 31 Jan 2016 16:02:21 +0000 (11:02 -0500)]
mackie: hard-code drop+replace buttons to start/finish-range-from-playhead
With some LED action that would even better with blinking
Paul Davis [Sun, 31 Jan 2016 16:01:41 +0000 (11:01 -0500)]
mackie: make marker button work as Mackie intends it (as a modifier for rewind/ffwd)
Paul Davis [Sun, 31 Jan 2016 16:00:16 +0000 (11:00 -0500)]
mackie: add "clean" method to invoke GUI actions from button events, in code
Paul Davis [Sun, 31 Jan 2016 14:11:37 +0000 (09:11 -0500)]
mackie: shift-stop additionally requests MIDI Panic, as well as regular stop
Len Ovens [Sun, 31 Jan 2016 05:05:45 +0000 (21:05 -0800)]
Mackie Control: Make Monitor send not show in Sends subview.
Ben Loftis [Sun, 31 Jan 2016 03:38:18 +0000 (21:38 -0600)]
Mackie protocol: Fix stuck-on Read LED.
Ben Loftis [Sat, 30 Jan 2016 17:18:56 +0000 (11:18 -0600)]
Add track select buttons to Launchkey map.
Ben Loftis [Sat, 30 Jan 2016 15:46:37 +0000 (09:46 -0600)]
Surfaces with separate meters should meter even when stopped.
Paul Davis [Fri, 29 Jan 2016 23:40:56 +0000 (18:40 -0500)]
mackie: remove mention of "blinkers" concept
Paul Davis [Fri, 29 Jan 2016 23:37:03 +0000 (18:37 -0500)]
mackie: basically (fully?) operation fader automatio control for first selected route
Paul Davis [Fri, 29 Jan 2016 21:29:52 +0000 (16:29 -0500)]
mackie: initial attempt at making automation-related buttons set fader automation state for selected routes
Paul Davis [Fri, 29 Jan 2016 21:05:42 +0000 (16:05 -0500)]
use new selection API to avoid double signal when a track or tracks are SET as the selection
Paul Davis [Fri, 29 Jan 2016 21:05:03 +0000 (16:05 -0500)]
modify Selection API to provide (default-valued) "with_signal" argument to all ::clear_*() methods
This allows the clear methods to be used before calling ::add(), to avoid the
emission of a signal saying "there are no <foo> selected right now".
There should be no side-effects from this commit.
Note that correct use of this new API is complex, and requires avoiding the use
of wrapper methods like clear_objects().
Paul Davis [Fri, 29 Jan 2016 19:49:28 +0000 (14:49 -0500)]
mackie: if a subview mode is not OK because there's no selection, show no message
Paul Davis [Fri, 29 Jan 2016 19:48:14 +0000 (14:48 -0500)]
NOOP: change brace placement to avoid confusing emacs
Paul Davis [Fri, 29 Jan 2016 19:47:40 +0000 (14:47 -0500)]
mackie: make group button (appear) to do something
Ben Loftis [Fri, 29 Jan 2016 20:26:08 +0000 (14:26 -0600)]
Mackie protocol: More LED indicator fixes.
Paul Davis [Fri, 29 Jan 2016 18:02:00 +0000 (13:02 -0500)]
mixbus: don't assert(ch_post()) in case we use various methods on "odd" Routes in the future
Paul Davis [Fri, 29 Jan 2016 17:58:50 +0000 (12:58 -0500)]
mixbus: vpot press in non-subview mode should toggle master bus send
Paul Davis [Fri, 29 Jan 2016 17:58:15 +0000 (12:58 -0500)]
add new Route API ::master_send_enable_controllable() to provide generic access to a mixbus-centric control
Paul Davis [Fri, 29 Jan 2016 17:40:13 +0000 (12:40 -0500)]
mackie: in Sends subview mode, the enable control for the send should be looked upin the subview route, not the strip's own route
Ben Loftis [Fri, 29 Jan 2016 17:27:54 +0000 (11:27 -0600)]
Button::AudioInstruments should not be lit without good reason.
Paul Davis [Fri, 29 Jan 2016 17:26:41 +0000 (12:26 -0500)]
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.
Robin Gareus [Fri, 29 Jan 2016 17:22:57 +0000 (18:22 +0100)]
Another attempt fixing crash at exit on windows.
Ben Loftis [Fri, 29 Jan 2016 16:31:47 +0000 (10:31 -0600)]
Mackie Protocol: HasSeparateMeters flag for X-Touch devices
Ben Loftis [Fri, 29 Jan 2016 16:10:17 +0000 (10:10 -0600)]
Added Behringer X-Touch device files.
Paul Davis [Fri, 29 Jan 2016 04:20:03 +0000 (23:20 -0500)]
mackie: fix Global View button function
Bug introduced changing logic for set_view_mode()
Paul Davis [Fri, 29 Jan 2016 04:05:14 +0000 (23:05 -0500)]
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
Paul Davis [Fri, 29 Jan 2016 04:03:55 +0000 (23:03 -0500)]
mackie: use Route::send_name() rather than Route::nth_send()
Paul Davis [Fri, 29 Jan 2016 04:03:02 +0000 (23:03 -0500)]
mackie: fix display of send level value
Paul Davis [Fri, 29 Jan 2016 04:02:11 +0000 (23:02 -0500)]
add new API to Route to get name of "well-known" nth-send
Route::nth_send() has the wrong semantics in Mixbus for this purpose. Probably
need to revisit this at some point
Robin Gareus [Fri, 29 Jan 2016 00:12:32 +0000 (01:12 +0100)]
fix device-list update concurrency issue.
It may happen that during push_state_to_backend() a device is
reconfigured in a way that triggers a "Device Changed" callback before
the engine is started. This callback can trigger a change to the
configuration that will be used when the engine is actually started.
This has been seen on OSX in conjunction with Aggregate Devices
(even if the aggregate is not used, but the device which is used
is also part of an aggregate)
example: HW changed callback arrives, device-list is re-populated,
*A*irplay" is at the top of the list, Airplay supports only 44.1K,
Samplerate changes... later save also writes this new rate to the file.
Ben Loftis [Thu, 28 Jan 2016 23:21:42 +0000 (17:21 -0600)]
Buses and Auxes are slightly different view-filters in Mixbus
Paul Davis [Thu, 28 Jan 2016 21:27:33 +0000 (16:27 -0500)]
prevent bank/channel switching past the end of the available routes; do nothing when a view mode finds no matching routes
Paul Davis [Thu, 28 Jan 2016 20:08:19 +0000 (15:08 -0500)]
mackie: improvements to display when switching subview modes
Paul Davis [Thu, 28 Jan 2016 19:01:14 +0000 (14:01 -0500)]
make Send button light appropriately
Ben Loftis [Thu, 28 Jan 2016 19:43:47 +0000 (13:43 -0600)]
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.
Ben Loftis [Thu, 28 Jan 2016 19:42:50 +0000 (13:42 -0600)]
Use visible playhead location for editing during a jog-wheel event.
Ben Loftis [Wed, 27 Jan 2016 23:10:59 +0000 (17:10 -0600)]
Center the playhead for stationary_playhead playback.
This avoids a visual discontinuity when playback is initiated after a jog-event.
Tim Mayberry [Thu, 28 Jan 2016 03:30:59 +0000 (13:30 +1000)]
Initialize Editor::clicked_selection to prevent programming error dialog/exit
This was triggered when reloading session and immediately duplicating range with
keyboard shortcut. As clicked_selection was uninitialized it would try to use
an invalid index into the TimeSelection.
Tim Mayberry [Wed, 27 Jan 2016 13:18:06 +0000 (23:18 +1000)]
Change duplicate range to use time range/s rather than a single region
This should fix bugs #4980, #4984, #4986 and #6579
Tim Mayberry [Wed, 27 Jan 2016 13:04:33 +0000 (23:04 +1000)]
Add Playlist::duplicate_range/s utility methods
Paul Davis [Thu, 28 Jan 2016 00:05:47 +0000 (19:05 -0500)]
mackie: fix subview mode logic
Paul Davis [Thu, 28 Jan 2016 00:00:21 +0000 (19:00 -0500)]
mackie: clean up (some) interactions between subview mode and selection
Also, stop Plugin button from doing anything, since it has nothing to do yet
Robin Gareus [Wed, 27 Jan 2016 23:00:47 +0000 (00:00 +0100)]
Fix AU port-name encoding.
This allows us to revert
ec8cf4e4, maybe. After testing if
port-names are still properly displayed.
Robin Gareus [Wed, 27 Jan 2016 22:39:35 +0000 (23:39 +0100)]
Fix µ-iness.
Robin Gareus [Wed, 27 Jan 2016 21:57:31 +0000 (22:57 +0100)]
Use proper UTF8 file-names during export.
Paul Davis [Wed, 27 Jan 2016 21:26:50 +0000 (16:26 -0500)]
remove debug output
Paul Davis [Wed, 27 Jan 2016 21:26:41 +0000 (16:26 -0500)]
monitor send does not count in Route::nth_send()
Paul Davis [Wed, 27 Jan 2016 19:15:41 +0000 (14:15 -0500)]
mackie: semi-working Sends subview mode
Paul Davis [Wed, 27 Jan 2016 19:15:34 +0000 (14:15 -0500)]
no need for multiple send level/enable parameter types
Paul Davis [Wed, 27 Jan 2016 17:41:01 +0000 (12:41 -0500)]
remove mackie send pot mode (subview mode for sends coming up)
Paul Davis [Wed, 27 Jan 2016 16:38:14 +0000 (11:38 -0500)]
return relevant AutomationControl for send_level_controllable() in Ardour
Paul Davis [Wed, 27 Jan 2016 16:37:54 +0000 (11:37 -0500)]
make Route::nth_send() and Route::nth_processor() be const
Paul Davis [Wed, 27 Jan 2016 16:16:13 +0000 (11:16 -0500)]
add stubs and enums to access "well-known" send controls
Ben Loftis [Tue, 26 Jan 2016 22:48:00 +0000 (16:48 -0600)]
add Novation_LaunchKey25.map
Robin Gareus [Tue, 26 Jan 2016 14:14:55 +0000 (15:14 +0100)]
satisfy some pedantic compilers, #6748
Paul Davis [Tue, 26 Jan 2016 03:10:43 +0000 (22:10 -0500)]
when using InverseGroup for rec-enable, do not collect group members and pass them to a session RT event method
Paul Davis [Tue, 26 Jan 2016 03:08:47 +0000 (22:08 -0500)]
NOOP: whitespace fixes
Paul Davis [Tue, 26 Jan 2016 03:08:23 +0000 (22:08 -0500)]
when using InverseGroup for solo, do not collect group members and pass them to a session RT event method
Paul Davis [Tue, 26 Jan 2016 03:07:36 +0000 (22:07 -0500)]
fix/improve logic for InverseGroup
the route group is "inactive for predicate" if EITHER the
group itself is inactive, or the predicate returns false.
Paul Davis [Tue, 26 Jan 2016 03:06:41 +0000 (22:06 -0500)]
when using InverseGroup, do not collect group members and pass them to a session RT event method
Paul Davis [Mon, 25 Jan 2016 20:00:39 +0000 (15:00 -0500)]
faderport: add a few more sensible actions to the footswitch options
Paul Davis [Mon, 25 Jan 2016 19:48:21 +0000 (14:48 -0500)]
faderport: add footswitch combos to GUI to allow user control over what the switch does
Paul Davis [Mon, 25 Jan 2016 19:32:09 +0000 (14:32 -0500)]
faderport: add footswitch button
Paul Davis [Mon, 25 Jan 2016 16:48:43 +0000 (11:48 -0500)]
use route gain control, not amp->gain()
Paul Davis [Mon, 25 Jan 2016 16:47:44 +0000 (11:47 -0500)]
GainMeter(Base) now has an explicit gain control given to it
Paul Davis [Mon, 25 Jan 2016 16:47:21 +0000 (11:47 -0500)]
change exposed type of various objects' gain controls; remove Amp::gain() as a shortcut
Tim Mayberry [Mon, 25 Jan 2016 07:26:11 +0000 (17:26 +1000)]
Make horizontal scroll increment consistent in ruler and track canvas areas
In response to a comment in #6722, as there is little delineation between the
ruler and track canvas areas it makes sense to keep the scrolling step the same
to avoid unintended jumps in scrolling if mouse cursor moves between areas.
Robin Gareus [Sun, 24 Jan 2016 02:19:24 +0000 (03:19 +0100)]
deactivate plugin if connect_and_run returns an error
Robin Gareus [Sun, 24 Jan 2016 00:11:15 +0000 (01:11 +0100)]
add wrapper for ChanMapping::get()
The boolean "valid" is implicit, get() returns -1 (really UINT32_MAX)
This simplifies upcoming lua bindings
Robert Schneider [Sat, 23 Jan 2016 14:07:55 +0000 (15:07 +0100)]
Added midi map file for AKAI MPK MINI
Paul Davis [Thu, 21 Jan 2016 17:25:27 +0000 (12:25 -0500)]
remove incorrect/out of date comment
Paul Davis [Thu, 21 Jan 2016 17:24:38 +0000 (12:24 -0500)]
no reason to have group edit dialog be modal
Paul Davis [Thu, 21 Jan 2016 17:24:28 +0000 (12:24 -0500)]
fix rebase issue from master
Paul Davis [Thu, 21 Jan 2016 17:04:20 +0000 (12:04 -0500)]
rename Controllable::WholeGroup => InverseGroup to reflect real intent.
Add logic to RouteGroupMember::use_group() to implement the real intent of InverseGroup
Paul Davis [Thu, 21 Jan 2016 16:03:14 +0000 (11:03 -0500)]
first compiling, mostly working version of group controls changes
Paul Davis [Fri, 22 Jan 2016 16:44:26 +0000 (11:44 -0500)]
NOOP: whitespace fixup
Paul Davis [Fri, 22 Jan 2016 16:43:27 +0000 (11:43 -0500)]
when leaving an active automation state, update fader displays to show correct current value
John Emmas [Fri, 22 Jan 2016 12:29:30 +0000 (12:29 +0000)]
Modify our MSVC project to accommodate newly introduced source files (libardour)
John Emmas [Fri, 22 Jan 2016 12:28:01 +0000 (12:28 +0000)]
Add a link library that's now needed when building ardour_cp
Now needs 'Timecode::BBT_Time' (from Ardour's 'timecode' lib).
Tim Mayberry [Thu, 21 Jan 2016 04:00:54 +0000 (14:00 +1000)]
Fix bug 6735, Take into account snap to when stretching regions in Editor
Tim Mayberry [Thu, 7 Jan 2016 11:55:22 +0000 (21:55 +1000)]
Bug #6722, Add UI config option to always use mouse position as zoom focus on scroll
This means that mouse zoom scrolling behaviour is consistent on the ruler
canvas area and track canvas area.
The config option defaults to true so this means the behaviour of Mixbus will
be unchanged but in Ardour the ruler area will now follow the option so by
default will use the mouse position as zoom focus when zooming rather than the
zoom focus setting.
Tim Mayberry [Thu, 7 Jan 2016 11:19:09 +0000 (21:19 +1000)]
Refactor code into Editor::temporal_zoom_step_mouse_focus method
Tim Mayberry [Thu, 7 Jan 2016 06:33:51 +0000 (16:33 +1000)]
Fix/implement #6292, Shift + scroll wheel Scrolling in the ruler area
Keep the same scrolling distance per event as when scroll left/right is used.
Scrolling in the ruler area is different than the track canvas area which I'm
not sure is a great idea as there is not much delineation between the two areas
but as the ruler area has some other different behaviour it is probably
acceptable/useful.
Tim Mayberry [Thu, 7 Jan 2016 01:33:45 +0000 (11:33 +1000)]
Change scrolling in the Editor track canvas summary area
Keep scroll distance consistent when scrolling up and down with horizontal
modifier as when scrolling left to right.
Scroll horizonally by half a page so that no sections of the canvas are skipped
when scrolling.
Scroll by half a page rather than a step like when scrolling in the track
canvas area as it is a summary area so larger steps seem acceptable and having
it use the same scroll distance as when scrolling in the track canvas seems
pointless as you would then just scroll in the track canvas area.
Tim Mayberry [Thu, 7 Jan 2016 01:26:22 +0000 (11:26 +1000)]
Refactor scrolling in Editor ruler canvas area into two utility methods
Tim Mayberry [Thu, 7 Jan 2016 05:44:24 +0000 (15:44 +1000)]
Remove goto in Editor::track_canvas_scroll
Tim Mayberry [Thu, 7 Jan 2016 00:30:29 +0000 (10:30 +1000)]
Refactor scrolling track canvas in Editor class into two utility methods
Pavel Fric [Wed, 20 Jan 2016 23:49:10 +0000 (00:49 +0100)]
Czech translation update #6739