Commit graph

37248 commits

Author SHA1 Message Date
Robin Gareus
9e35a9da66
Add option to use a neutral color for new routes 2023-04-18 01:07:54 +02:00
Paul Davis
23a9ce4651 more debug information 2023-04-16 10:33:48 -06:00
Paul Davis
d66f3e7c9d temporal: factor out twist iteration, add debug output 2023-04-16 10:33:37 -06:00
Paul Davis
6313a61f15 more improvements to text position in tempo mapping bar 2023-04-16 10:32:50 -06:00
Paul Davis
88e4b40857 remove concept/implementation of a mapping stretch drag (aka "half twist")
This concept proved to be impossible.
2023-04-13 17:50:41 -06:00
Paul Davis
c10b265333 tempo mapping: various tweaks and improvements to workflow/Ux 2023-04-13 17:47:34 -06:00
Paul Davis
f29557348e remove debug output 2023-04-13 17:47:32 -06:00
Paul Davis
9d2c1232c5 tweak position of tempo text in mapping bar 2023-04-13 14:36:21 -06:00
Paul Davis
040dae9b0d tempo mapping: adjust BPM delta during a twist to reflect zoom level 2023-04-13 10:57:12 -06:00
Paul Davis
b362d2b6ba temporal: don't abort() for illegal omega value, just leave it as it was 2023-04-13 10:57:12 -06:00
Robin Gareus
dbc3008163
Add Lua Bindings for const shared_ptr lists (295dbd8e1e) 2023-04-12 20:47:35 +02:00
Paul Davis
89c7159bc5 prefer auto const & as an amendment to b4291cfb32 2023-04-12 12:45:11 -06:00
Paul Davis
73f41a4d3b remove debug output 2023-04-12 10:38:57 -06:00
Paul Davis
36525a1ada rippling - use a list and ::push_front() to avoid having to reverse 2023-04-12 10:38:27 -06:00
Paul Davis
b4291cfb32 some more C++11 loop-auto-fication 2023-04-12 10:16:09 -06:00
Paul Davis
117c751293 fix undo for multi-non-contiguous region cut/delete (#9295)
Defer all ripples till after cut/delete. Then perform them
from the latest to the earliest.
2023-04-12 10:16:09 -06:00
Paul Davis
e575d5c6dc remove crash-causing reference to non-existent action 2023-04-12 10:16:09 -06:00
Robin Gareus
c3102ab8a5
Add preference to set PPQN of exported MIDI files
This also changes the default from 19200 to 1920
2023-04-12 13:12:41 +02:00
Paul Davis
f7f3c1a920 tempo mapping: fix lifetime management of mapping bar text 2023-04-10 09:18:45 -06:00
Paul Davis
def884e26c remove debug output 2023-04-10 09:18:44 -06:00
Paul Davis
caa42c8b4d remove debug output 2023-04-10 09:18:44 -06:00
Paul Davis
53a98a64fa tempo mapping: when not close to a beat line, revert cursor to grabber 2023-04-10 09:18:44 -06:00
Paul Davis
15a018a59d remove reference to non-existent ruler menu item 2023-04-10 09:18:44 -06:00
Paul Davis
f17a516cef temporal: fix comment explaining when/how TempoMap::set() can be used 2023-04-10 09:18:44 -06:00
Paul Davis
a1e9dfb672 canvas lineset: C++11-ification 2023-04-10 09:18:44 -06:00
Robin Gareus
a0dc539d70
Set thread-local tempo-map to write-copy
Use the new map that is being edited for lookups while changing
the map in the in the GUI. This can changes directly visible
as the map is being edited.

This used to be done directly with the fetch_writable() API
2023-04-10 10:03:21 +02:00
Paul Davis
518fc7754f tempo mapping: half-way towards working drags again
For some reason, mid-drag changes are not visible
2023-04-09 14:36:03 -06:00
Paul Davis
4f87506e5c do not sort lineset every time a coord is added; use RAII to create scope and sort at end 2023-04-09 14:36:03 -06:00
Paul Davis
d4bca18108 slightly improve efficiency of drawing grid lines by passing by reference, not value 2023-04-09 14:36:03 -06:00
Robin Gareus
dde366d6ef
Fix Wreturn-std-move 2023-04-09 00:52:29 +02:00
Paul Davis
13d814f87c fix a few canvas thinkos related to mapping bar 2023-04-08 14:12:41 -06:00
Paul Davis
786f71f7f1 fix GUI enum registration so that UIConfiguration can load with variables that use some of them 2023-04-08 13:58:25 -06:00
Paul Davis
13311b7a32 tempo mapping: tempo group and mapping group are now only ever visible one at a time
Currently, the "switch" is in Edit > Tempo
2023-04-08 11:44:21 -06:00
Paul Davis
a37d4dbacf define actions for changing tempo edit behavior and expand menu 2023-04-08 11:44:21 -06:00
Paul Davis
8fbf2c3f52 add enum and member var for controlling what kind of tempo editing we are doing
note: this was much harder than it ought to be
2023-04-08 11:44:21 -06:00
Robin Gareus
4b1d5d9b63
Resolve boost/std unique_ptr issue 2023-04-08 13:31:50 +02:00
Damien Zammit
a27a88f9f2 import_pt: Update session range to largest audio extents imported
Tested before and after on a small audio-only PT8 session;
session range gets set to [0 to max] extent with this change.
2023-04-08 18:35:26 +10:00
Robin Gareus
295dbd8e1e
Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02:00
Paul Davis
e9f71824a1 temporal: change API for TempoMap::stretch_tempo()
This will likely be modified because it is actually impossible to do
what this code is attempting to do.
2023-04-07 12:56:57 -06:00
Paul Davis
57398b1e5e tempo mappoing: use actual mouse cursors not canvas item cursors
Also some changes to attempt to do "half-twist" that will be removed soon.
2023-04-07 12:56:57 -06:00
Robin Gareus
f3e13848fa
Do not modify read-only RCU copy of routelist
RCU reader returns a shared ptr to the current object which
can also be used in other places at the same time.

Sorting the shared-ptr list invalidates iterators which can
throw off other users of the same object.

This fixes a bug in PT-import which calls get_nth_audio_track().
2023-04-07 19:37:30 +02:00
Robin Gareus
979f9876a7
VST3: skip redundant parameter-changes
This reduces initial parameter-changes during session-load
due to Controllable (PluginControl) state restore after
restoring the plugin state. This likely fixes #9287
2023-04-07 00:23:39 +02:00
Ben Loftis
2713c40b7d extend midi-controllable params with new well-known-controls 2023-04-06 14:52:09 -05:00
Robin Gareus
f57a9d84df
Do not incrementally ripple during cut/delete #9295
When cutting multiple regions with Ripple-ALL, removing
the first region ripples the remaining tracks which includes
selected regions on those tracks which are to be cut later.
2023-04-06 02:18:42 +02:00
Robin Gareus
dd542b8f4d
Use ARDOUR::PlaylistSet instead of local typedefs 2023-04-06 02:13:51 +02:00
Robin Gareus
8b59bf47df
Add a dedicated PlaylistSet type
This is to consolidate various locations that use
`typedef std::set<std::shared_ptr<Playlist>>`
throughout the codebase.
2023-04-06 02:12:32 +02:00
Robin Gareus
0b8d5d3dc5
Tweak Window system-exec, wait for process to terminate 2023-04-05 00:16:37 +02:00
Robin Gareus
d09c049fee
Clarify plugin scan log message 2023-04-05 00:16:37 +02:00
Robin Gareus
d9c35199cc CoreAudio: Update latency when buffesize changes 2023-04-04 19:26:17 +02:00
Robin Gareus
112bf87436
VST3 scan, do not clutter up Log
This prevents excessive "Cache file is valid and up-to-date."
messages in the log window. - Plugin manager has verbose log.
2023-04-04 15:44:21 +02:00