nick_m [Sat, 4 Mar 2017 14:23:12 +0000 (01:23 +1100)]
remove bogus variable from last commit
Tim Mayberry [Sat, 4 Mar 2017 05:20:56 +0000 (15:20 +1000)]
Add reset region gain action for selected regions
nick_m [Sat, 4 Mar 2017 00:28:49 +0000 (11:28 +1100)]
offset linked regions to compensate for negative start after trim drag.
- should fix 7105
Robin Gareus [Fri, 3 Mar 2017 19:07:26 +0000 (20:07 +0100)]
Add 7890 aka tom- to contributor list
Robin Gareus [Thu, 2 Mar 2017 20:20:09 +0000 (21:20 +0100)]
Fix crash when inserting time with split intersected regions
Robin Gareus [Thu, 2 Mar 2017 19:00:15 +0000 (20:00 +0100)]
Don't try to auto-start engine for new sessions
Work around logic-flow in EngineDialog which should already have
done that, but may no longer heed this special-case if sample-rate
dropdown is refreshed to only devices supported ones.
Robin Gareus [Thu, 2 Mar 2017 18:39:35 +0000 (19:39 +0100)]
Ship system_config with bundles again.
This partially reverts commit
ac40945ff96f27606ff5d3600cf06b0ba663a5e1.
re-add system_config, but not instant.xml
Robin Gareus [Thu, 2 Mar 2017 18:37:36 +0000 (19:37 +0100)]
Empty system_config (pre-seed XML nodes, use built-in settings)
Hotfix work around:
1) Launch without existing user-config and no system_config
2) Load or create session. save/quit.
3) re-load session. save. user-config file is corrupted in <Extra>
Paul Davis [Wed, 1 Mar 2017 21:29:54 +0000 (22:29 +0100)]
ArdourButton: if _act_on_release is true, only trigger actions/signal clicks on key release, and vice versa
This should really be split in separate semantics for key and button events.
Fixes a subtle but nasty bug in the EngineDialog where the change of the default focus
widget from a Gtk::Button (acts on press) to an ArdourButton (acts on release) caused
events occuring after a dialog has grabbed focus to trigger button clicks
Robin Gareus [Wed, 1 Mar 2017 17:52:40 +0000 (18:52 +0100)]
Fix crash when adding a plugin immediately after re-order (via script)
The re-order is queued to be performed click-free in realtime-context.
Meanwhile adding plugins will result in a race-condition.
Robin Gareus [Wed, 1 Mar 2017 16:17:27 +0000 (17:17 +0100)]
Don't automatically open generic UIs for plugins w/o controls
Robin Gareus [Wed, 1 Mar 2017 16:08:44 +0000 (17:08 +0100)]
Don't display "channel-selector" for plugins only pretending to be instruments
If a plugin has 0 audio-outputs, and has the meta-data "InstrumentPlugin",
Ardour would interpret is as "variable number of output synth.
Robin Gareus [Wed, 1 Mar 2017 12:04:39 +0000 (13:04 +0100)]
Fix audition with monitor-section.
When a monitor-section is added, the auditioner automatically connects to
its input. However on session-reload, the connection is explicit
(by saved port-name) and Auditioner::needs_monitor() was not set.
Session::process_audition() didn't run the monitor-route. Silence.
Robin Gareus [Wed, 1 Mar 2017 10:54:52 +0000 (11:54 +0100)]
Fix implicit selection when operating track-header ctrl buttons
Stop event propagation. Otherwise, on release the event is passed
up and handled by the TAV which scrolls the editor viewpoint
and the button is no longer under the mouse.
Robin Gareus [Tue, 28 Feb 2017 20:33:13 +0000 (21:33 +0100)]
c89 compat (gcc4, mingw..)
Robin Gareus [Tue, 28 Feb 2017 19:08:03 +0000 (20:08 +0100)]
Tweak/optimize VST callback:
The audioMasterAutomate callback from plugin to host does include
the parameter-value.
Previously there was a redundant call
Plugin::parameter_changed_externally() -> get_parameter
-> VSTPlugin::get_parameter() back into the plugin to query the value.
calling back into the plugin from the callback, may explain
oddities and/or crashes with some VSTs.
Paul Davis [Tue, 28 Feb 2017 16:27:21 +0000 (17:27 +0100)]
when destroying a MidiSource, invalidate any existing MidiCursors
(such as those held in a MidiPlaylist's RegionTrackers
Robin Gareus [Tue, 28 Feb 2017 15:28:44 +0000 (16:28 +0100)]
initialize some uninitialized vars
Robin Gareus [Tue, 28 Feb 2017 15:24:07 +0000 (16:24 +0100)]
Fix loading SMF meta-data > 127 bytes (no more g_critical abort)
nick_m [Tue, 28 Feb 2017 14:58:53 +0000 (01:58 +1100)]
allow continuation of tempo via right-click 'Continue' where appropriate.
- this is the opposite of 'Ramp to Next'.
it removes discontinuities between the
last end tempo and the current by altering the current one.
Robin Gareus [Tue, 28 Feb 2017 04:00:34 +0000 (05:00 +0100)]
Update GUI when playing mute-automation
Robin Gareus [Tue, 28 Feb 2017 03:59:45 +0000 (04:59 +0100)]
Fix touching mute automation (mostly)
controllable->set_value() from GUI context will eventually queue
a session-rt command. By the time the realtime command runs, the
controllable needs to be in "touch" mode.
The AutomationController "toggle" UI worked around this by directly using
the underlying API (ignoring slaved-controls and ignoring groups).
The RouteUI's GUI wasn't able to write mute-automation at all.
This commit is a compromise: press + hold (touch) + release button.
(it may need further special-casing for _desc.toggled in
AutomationControl::actually_set_value(), also undoing automation-writes
is currently not working correctly)
Ben Loftis [Tue, 28 Feb 2017 02:51:04 +0000 (20:51 -0600)]
Likely fix for bug: cannot change track colors in older 4.x sessions.
nick_m [Mon, 27 Feb 2017 16:11:22 +0000 (03:11 +1100)]
probable fix for importing tempo maps that use non-quarter note pulse.
- actually i'm not certain that this is correct,
but it works ok Beethoven's fifth.
nick_m [Mon, 27 Feb 2017 14:05:39 +0000 (01:05 +1100)]
_group, group.. who cares?
nick_m [Mon, 27 Feb 2017 08:20:50 +0000 (19:20 +1100)]
clicking on curve text does the right thing.
nick_m [Mon, 27 Feb 2017 06:53:31 +0000 (17:53 +1100)]
initial rework of tempo text display (numbers are curve items)
- move tempo numbers to a layer above the curve.
- the offset of the text box in Marker is horrible here.
what to do?
nick_m [Mon, 27 Feb 2017 06:40:20 +0000 (17:40 +1100)]
fix crash in pinch drag
nick_m [Mon, 27 Feb 2017 02:44:23 +0000 (13:44 +1100)]
remove scroll wheel editing nonsense (tempo)
nick_m [Mon, 27 Feb 2017 02:14:53 +0000 (13:14 +1100)]
fix compilation
nick_m [Mon, 27 Feb 2017 01:29:55 +0000 (12:29 +1100)]
remove 'mouse:' verbose cursor when shift-dragging a curve.
nick_m [Mon, 27 Feb 2017 01:00:25 +0000 (12:00 +1100)]
only allow 'ramp to next' if the next tempo is actually different.
nick_m [Mon, 27 Feb 2017 00:59:16 +0000 (11:59 +1100)]
poor man's display of end tempo for ramps.
nick_m [Mon, 27 Feb 2017 00:41:48 +0000 (11:41 +1100)]
harden TempoMap::next_tempo_section () a bit.
nick_m [Mon, 27 Feb 2017 00:10:47 +0000 (11:10 +1100)]
Tempo Marks : set point colour by discontinuity, display non-quarter pulse if we are non-quarter.
- a jump in tempo by more than 1 ntpm results in a red
tempo mark pointer.
- ignore UIConfiguration::get_allow_non_quarter_pulse()
when displaying note type in the marker text (only display
note type if we are non-quarter).
nick_m [Sun, 26 Feb 2017 17:36:48 +0000 (04:36 +1100)]
remove commented line
nick_m [Sun, 26 Feb 2017 17:22:45 +0000 (04:22 +1100)]
fix tempo marker ramp to next.
nick_m [Sun, 26 Feb 2017 17:12:13 +0000 (04:12 +1100)]
amend last commit (don't depend on 0.0)
nick_m [Sun, 26 Feb 2017 17:01:11 +0000 (04:01 +1100)]
hopefully fix legacy session loading (tempo)
nick_m [Sun, 26 Feb 2017 16:03:55 +0000 (03:03 +1100)]
add right-click 'Ramp to Next' tempo marker menu item.
nick_m [Sun, 26 Feb 2017 15:26:08 +0000 (02:26 +1100)]
back to using shift-ctrl for pinch drag. set colours of affected curves.
nick_m [Sun, 26 Feb 2017 15:21:05 +0000 (02:21 +1100)]
add TempoMap::next_tempo_section()
nick_m [Sun, 26 Feb 2017 14:28:59 +0000 (01:28 +1100)]
fix TempoMap::frame_at_tempo().
nick_m [Sat, 25 Feb 2017 20:03:02 +0000 (07:03 +1100)]
highlight the tempo curve that is to be altered, modify text to suit.
nick_m [Sat, 25 Feb 2017 19:01:49 +0000 (06:01 +1100)]
fix verbose cursor display when shift-dragging end tempo.
nick_m [Sat, 25 Feb 2017 18:39:20 +0000 (05:39 +1100)]
restore pinch tempo. it now operates via shift + alt drag on the curve.
nick_m [Sat, 25 Feb 2017 18:07:51 +0000 (05:07 +1100)]
remove tempo end drag (the control drag on the curve). a;ter tempo marker drag.
- holding down shift before initiating a tempo mark drag
alters the end tempo of the previous one as before, but
this is now a separate drag.
- restore vertical dragging of the tempo mark to alter start/
end tempo. shift during the makrker drag alters start tempo.
xontrol + shift during the drag alters end tempo.
nick_m [Sat, 25 Feb 2017 17:02:59 +0000 (04:02 +1100)]
remove "Make Ramped" from right click tempo marker menu.
nick_m [Sat, 25 Feb 2017 15:52:58 +0000 (02:52 +1100)]
fix formatting of bbtruler drag verbose cursor.
nick_m [Sat, 25 Feb 2017 15:22:19 +0000 (02:22 +1100)]
complete changes to tempo type.
- this implements in the intention behind the previous commit.
a tempo mark is constant until its end has been changed by a
shift-drag on the next marker.
Ben Loftis [Sat, 25 Feb 2017 13:04:15 +0000 (07:04 -0600)]
compile fix
nick_m [Sat, 25 Feb 2017 12:32:02 +0000 (23:32 +1100)]
make new (ramped) tempi indidstiguishable from constant to the novice user.
- stretch drag (using shift on the curve) operates on
the true meaning of constant. in other words,
the only way you can make a tempo ramped is by adjusting the end
tempo (shift drag on the *next* mark). from this point onwards.
shift-drag the curve will change the start tempo and ctrl-drag
the curve will change the end (needs work). to reset the
curve to constant, 'make constant' should simply set the end
tempo (unimplemented).
nick_m [Fri, 24 Feb 2017 19:59:05 +0000 (06:59 +1100)]
correct (?) behaviour of TempoMap::replace_tempo
nick_m [Fri, 24 Feb 2017 18:09:16 +0000 (05:09 +1100)]
rework tempo editing.
most changes are due to a new design where tempo discontinuities at the
beginning of a ramped section may be set.
this allows easier mapping of live performance, especially in
the common case of a ramped ritard before the beginning of a new section.
feature summary:
holding constraint modifier (shift) while dragging the BBT ruler area
drags the tempo lines by changing the start tempo (as before)
holding copy modifier (control) while dragging the BBT ruler area
drags the tempo lines by changing the end tempo (ahem. not quite there)
dragging a tempo mark while holding constraint (shift) will change the
previous end tempo to match the marker position *worth trying*.
holding constraint and copy modifier (control + shift) while dragging
the BBT ruler area attempts to'pinch' or twist the surrounding tempi
sp that later ones are not repositioned (currently suffereng from
rounding errors)
Ben Loftis [Mon, 27 Feb 2017 15:49:00 +0000 (09:49 -0600)]
De-cramp the transcoding dialog widgets.
Paul Davis [Mon, 27 Feb 2017 15:40:53 +0000 (16:40 +0100)]
fix crash caused by trying to connect monitor section before it has ports.
This does not fix the ordering issues caused by things happening
before the monitor section gaining ports
Paul Davis [Mon, 27 Feb 2017 15:39:22 +0000 (16:39 +0100)]
fix crash caused by thinko in
123fcf3cf
Robin Gareus [Sun, 26 Feb 2017 18:04:47 +0000 (19:04 +0100)]
Consistent naming of installers: Name + Version [+Variant] + Arch
Paul Davis [Sun, 26 Feb 2017 17:22:39 +0000 (18:22 +0100)]
make sure that when extending the selection in the editor and mixer, the clicked-upon track gets set_selected() called last
This makes it be the "first" selected strip for control surfaces and the editor mixer
Paul Davis [Sun, 26 Feb 2017 17:21:48 +0000 (18:21 +0100)]
remove method no longer needed
Editor::track_selection_changed() is now invoked by EditorRoutes::sync_treeview_from_presentation_info(),
AFTER the Selection has been updated
Paul Davis [Sun, 26 Feb 2017 17:19:50 +0000 (18:19 +0100)]
make Selection::set (TrackViewList*) more efficient and emit less PI::Change signals
Paul Davis [Sun, 26 Feb 2017 17:19:00 +0000 (18:19 +0100)]
avoid doing needless duplicate work in Selection::add (TimeAxisView*)
Paul Davis [Sun, 26 Feb 2017 17:17:50 +0000 (18:17 +0100)]
selected Stripables now have a counter to indicate the order they were selected in
Robin Gareus [Sun, 26 Feb 2017 14:35:40 +0000 (15:35 +0100)]
upcoming codenames
Robin Gareus [Sun, 26 Feb 2017 13:39:48 +0000 (14:39 +0100)]
Fix yet another oversight for the windows icon file update
Robin Gareus [Sun, 26 Feb 2017 13:25:55 +0000 (14:25 +0100)]
Fix windows builds, rename icons following
4e96285ba5
Robin Gareus [Sat, 25 Feb 2017 19:03:03 +0000 (20:03 +0100)]
Windows installer: use upper-case for program-name
Robin Gareus [Sat, 25 Feb 2017 19:02:32 +0000 (20:02 +0100)]
Don't use upper-case in options (only headings)
Paul Davis [Sat, 25 Feb 2017 18:56:51 +0000 (19:56 +0100)]
Revert "libs: debug output for faderport/editor mixer strip sync"
This reverts commit
6fb91b1ac25bbeb282228822efbdc91b62941f6e.
Paul Davis [Sat, 25 Feb 2017 18:55:22 +0000 (19:55 +0100)]
fix potential crash bug in RouteProcessorSelection
Paul Davis [Sat, 25 Feb 2017 18:54:58 +0000 (19:54 +0100)]
prevent double-emission of PresentationInfo::Change when making mixer-view selection set changes
Robin Gareus [Sat, 25 Feb 2017 17:38:11 +0000 (18:38 +0100)]
Add some missing luabridge::ClassInfo<>::getClassKey() - fix windows builds
Len Ovens [Sat, 25 Feb 2017 16:49:18 +0000 (08:49 -0800)]
OSC: correct busses spelling in GUI
Robin Gareus [Sat, 25 Feb 2017 16:43:51 +0000 (17:43 +0100)]
Tweak preferences text
Robin Gareus [Sat, 25 Feb 2017 03:45:41 +0000 (04:45 +0100)]
Tweak metering prefs: clarify default type behavior
Robin Gareus [Sat, 25 Feb 2017 03:44:42 +0000 (04:44 +0100)]
NO-OP, re-arrange code
Robin Gareus [Fri, 24 Feb 2017 22:55:16 +0000 (23:55 +0100)]
Snap-back fader on release (follow-up to
e8cebac6a36a)
When dragging a fader out-of-bounds (VCA slave constraint), move it back
on release.
Robin Gareus [Fri, 24 Feb 2017 22:40:30 +0000 (23:40 +0100)]
Add some Lua-script icon.
Robin Gareus [Fri, 24 Feb 2017 22:40:13 +0000 (23:40 +0100)]
Group-override for faders
Tentative solution. Eventually the gain_adjustment should be moved
into the PixFader or SliderController and a dedicated API
should replace gain_adjustment.signal_value_changed()
Robin Gareus [Fri, 24 Feb 2017 22:37:23 +0000 (23:37 +0100)]
Allow to switch master-meter type in the toolbar-meter
Robin Gareus [Fri, 24 Feb 2017 22:35:26 +0000 (23:35 +0100)]
NO-OP resolve an ambiguity, just because.
Due to LevelMeterVBox : public LevelMeterBase, public Gtk::VBox;
LevelMeterBase::get_type() overloads Gtk::Widget::get_type(),
Glib::Object::get_type(), Atk::Implementor::get_type() etc..
Besides Ardour-style prefers not to use get_...()
Paul Davis [Fri, 24 Feb 2017 22:10:09 +0000 (23:10 +0100)]
gui: debug output for faderport/editor mixer strip sync
Paul Davis [Fri, 24 Feb 2017 22:10:03 +0000 (23:10 +0100)]
libs: debug output for faderport/editor mixer strip sync
Paul Davis [Fri, 24 Feb 2017 21:53:30 +0000 (22:53 +0100)]
try to make sure faderport shows the same strip as the editor mixer strip
Paul Davis [Fri, 24 Feb 2017 11:03:38 +0000 (12:03 +0100)]
no-op: move method order in file
Robin Gareus [Fri, 24 Feb 2017 16:52:56 +0000 (17:52 +0100)]
add a missing class-key
Robin Gareus [Fri, 24 Feb 2017 15:08:46 +0000 (16:08 +0100)]
Save Lua script file origin (for later updates) -- GUI+Session plugin
Robin Gareus [Fri, 24 Feb 2017 13:11:56 +0000 (14:11 +0100)]
Save Lua script origin (for later updates) -- DSP plugin
Robin Gareus [Fri, 24 Feb 2017 12:44:41 +0000 (13:44 +0100)]
Add static class-keys for windows
Robin Gareus [Fri, 24 Feb 2017 12:42:54 +0000 (13:42 +0100)]
add an example script to show/hide TAVs
Robin Gareus [Fri, 24 Feb 2017 12:03:24 +0000 (13:03 +0100)]
Add some convenient public editor methods (for lua-bindings)
and s/get// in the old API for consistency.
Robin Gareus [Fri, 24 Feb 2017 11:59:07 +0000 (12:59 +0100)]
the daily dose of const'ness
Robin Gareus [Fri, 24 Feb 2017 11:53:49 +0000 (12:53 +0100)]
re-order inheritance
LuaBridge only allows one parent class, others need explicit casts.
Allowing RoutUI to be passed as Selectable argument is handy.
Paul Davis [Fri, 24 Feb 2017 09:18:57 +0000 (10:18 +0100)]
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.
Len Ovens [Thu, 23 Feb 2017 23:45:28 +0000 (15:45 -0800)]
OSC: remove invalid feedback for solo and pan az.
Paul Davis [Thu, 23 Feb 2017 21:53:50 +0000 (22:53 +0100)]
fix solo + mute controls when slaved
clamp/scale by masters only applies to non-boolean controls
Robin Gareus [Thu, 23 Feb 2017 21:31:50 +0000 (22:31 +0100)]
Add static Class-Keys for Windows build
Robin Gareus [Thu, 23 Feb 2017 21:31:03 +0000 (22:31 +0100)]
Lua bindings to access editor selection + region selection bindings
Robin Gareus [Thu, 23 Feb 2017 21:21:08 +0000 (22:21 +0100)]
LuaBridge: Dedicated type for pointer-lists and const version
"class C*" cannot be defined nor resolved, so STL containers
to class instance pointers need to be special-cased.
Robin Gareus [Thu, 23 Feb 2017 21:19:19 +0000 (22:19 +0100)]
luaBridge support const references to class-instance pointers
Support passing "T*" as as "const T* &" argument
e.g. std::list<T*>::push_back ( const T* & )