Paul Davis
3d64972ca2
libardour support for propagating track time domain changes into playlists and thence regions
2023-08-02 15:23:42 -06:00
Paul Davis
7fe3becf2d
temporal: fix TimeDomainProvider::set_time_domain_parent() to unset have_domain
2023-08-02 15:23:42 -06:00
Paul Davis
71953a9929
locations: ensure they follow session time when start/end is set
2023-08-02 15:23:42 -06:00
Paul Davis
1b9f4999df
locations now follow session time domain, always (probably)
2023-08-02 15:23:42 -06:00
Paul Davis
0c9bdd817d
temporal: fix TimeDomainProvider::set_time_domain()
2023-08-02 15:23:42 -06:00
Paul Davis
4cdac29029
attempt to follow time domain changes in playlists when tracks change
2023-08-02 15:23:42 -06:00
Paul Davis
1fce815e2d
temporal: expand TimeDomainProvider API
2023-08-02 15:22:52 -06:00
Paul Davis
1a83860016
forward propagate session default time domain changes
2023-08-02 15:22:52 -06:00
Paul Davis
df188996ec
session has a default time domain
2023-08-02 15:22:52 -06:00
Paul Davis
c293876518
playlist IS-A TimeDomainProvider
...
It has Session as its initial time domain parent
2023-08-02 15:22:52 -06:00
Paul Davis
3b565693c8
objects don't have a time domain, they have a time domain provider (libs)
2023-08-02 15:22:52 -06:00
Paul Davis
2bbf06c8cc
class name change to clearly disambiguate Evoral::ControlList (a list of time/value pairs) from lists of Controls in libardour
2023-08-02 15:22:45 -06:00
Paul Davis
af2e0e279c
temporal: initial version of a time domain provider object
2023-08-02 15:20:58 -06:00
Paul Davis
961fdc9de6
use a more explantory object name
2023-08-02 15:20:20 -06:00
Paul Davis
fa225846af
new Temporal API to allow keeping MIDI notes in position after a map-tempo operation
2023-08-02 14:11:06 -06:00
Paul Davis
3c44c326c2
add an assert() to check a target in CoreSelection::get_stripables_for_op()
2023-07-31 21:11:36 -06:00
Paul Davis
a5477feb27
API changes for ControlGroup::fill_from..()
...
This reflects better/different use by callers
2023-07-31 18:30:36 -06:00
Paul Davis
0e6764c4c8
improve and extend group selection logic
2023-07-31 13:53:42 -06:00
Paul Davis
03105aa760
libardour changes to support new selection/group logic
2023-07-31 13:36:14 -06:00
Paul Davis
8340be4808
add another version of FooListToControlList
2023-07-31 13:35:37 -06:00
Paul Davis
05c6616e32
ControlGroup: fiddle with API for clarity, and add TrimAutomation special case
2023-07-27 13:29:57 -06:00
Paul Davis
7662f9af5b
ArdourCtrlBase should pass UseGroup when setting control values
...
None of the things this is used for right now are ever members of persistent
control groups, but it is useful for selection-as-group
2023-07-27 13:28:02 -06:00
Paul Davis
5e37a320c0
remove use-selection modifier
2023-07-26 18:24:43 -06:00
Paul Davis
f6664570d4
control group: implement ::fill_from_selection and ::size()
2023-07-26 16:41:54 -06:00
Paul Davis
eba8eb07d3
automation control: fix logic for ::pop_group()
2023-07-26 16:41:09 -06:00
Paul Davis
86a5aec276
change "use selection" modifier to Win/Opt (Level4 modifier)
2023-07-26 16:40:34 -06:00
Paul Davis
5f55f32386
control group: add API to push & pop control groups on a control
2023-07-26 13:38:37 -06:00
Paul Davis
29c2b06d0e
add a name for a modifier to be used to indicate "use selection"
2023-07-26 13:18:02 -06:00
Paul Davis
3c2112abf5
widgets & GUI: Start/StopGesture signals should pass on GDK event state
2023-07-26 13:11:52 -06:00
Paul Davis
7ddd2a0692
automation control: allow single level of push/pop control group
2023-07-26 13:11:22 -06:00
Paul Davis
7fbe17c802
BBT markers must define an on-beat position
2023-07-24 16:20:38 -06:00
Robin Gareus
86d818e4b9
Revert VST3 kMono arrangement experiment #9418
...
Apparently kMono is not a flag and implies connection of the first port
This reverts commit 8aebfc45dc .
and 2698b23f82 .
2023-07-21 00:39:47 +02:00
Paul Davis
4c845eb2a0
cairo single pixel line offset fix, part 1
2023-07-17 20:54:33 -06:00
Paul Davis
8c479ff425
lv2: if bpm is a double it may as well be a double from the start
2023-07-17 16:46:54 -06:00
Robin Gareus
3ab3ef3b55
Fix lineset drawing (again), apply cairo 0.5px offset
...
see also f08299ea1e
2023-07-17 23:28:36 +02:00
Robin Gareus
2698b23f82
VST3: try an alternative approach use kMono as flag, not arrangement
...
See also 920a6a46c3 and 445e5162fd .
2023-07-17 20:48:45 +02:00
Robin Gareus
8aebfc45dc
Revert "VST3: work around UADx crash when in mono configuration"
...
This reverts commit 920a6a46c3 .
2023-07-17 20:45:44 +02:00
Paul Davis
8a5f370994
lv2: correctly compute tempo for tempo markers delivered as position events
2023-07-17 11:39:47 -06:00
Paul Davis
93cbbf57d1
lv2: reserve vector for return values from TempoMap::get_grid()
2023-07-17 11:39:47 -06:00
Paul Davis
9fd0076c93
lv2plugins: correctly compute tempo to be passed to LV2 plugins
2023-07-17 11:39:47 -06:00
Robin Gareus
f08299ea1e
Fix lineset drawing for lines > 1px width
...
This is a follow up to 248e37ac0c .
A line at 0 with 1px width should draw from 0.5 to 1.5
(cairo pixel offset). The same line with a width of 3px
is -0.5 to 2.5.
The self.intersection code calculates this correctly, subtracting
shift, the drawing code however incorrectly added it.
This fixes MIDI track grid/note offset as well as a bleed
below the track.
2023-07-17 05:05:20 +02:00
Robin Gareus
8a371bcaa2
Fix tempo-map backward compatibility
...
Moving forward tempo-type is saved without `Tempo::`
prefix again.
2023-07-17 00:35:05 +02:00
Robin Gareus
b61f84e872
Print messages for each possible session-load failure
2023-07-16 16:16:59 +02:00
Paul Davis
c31c1906f7
temporal: fix dangling confusion about "omega"
...
Remove all reference to "omega_sc" and rename "omega_beats" as omega
2023-07-15 21:45:11 -06:00
Paul Davis
2aa7dd42ea
lv2: plugins get an iterator to (sometimes|often) speed up ::get_grid() calls
2023-07-15 11:30:40 -06:00
Paul Davis
ea2d2b4760
temporal: rename ::get_grid_with_iterator()
...
Because I like polymorphism
2023-07-15 11:23:45 -06:00
Paul Davis
b2a57108c3
actually reserve space for click grid points, to void RT memory allocation
2023-07-15 11:08:45 -06:00
Paul Davis
422fa7255b
temporal: further extensions to GridIterator API to handle bar_mod/beat_div parameters
...
Also try to comment class definition to add a little clarity
2023-07-15 11:08:45 -06:00
Paul Davis
cbaa335946
temporal: some cleanup of the GridIterator API
2023-07-14 21:32:40 -06:00
Robin Gareus
a857a0af4d
Update Luabindings for new TempoMap API
2023-07-14 23:48:13 +02:00