Commit graph

969 commits

Author SHA1 Message Date
Paul Davis
2d8c641314 provide new actions to jump to prev/next location marker (no other markers) 2024-05-28 22:07:35 -06:00
Ben Loftis
34875e4f3f label cd track markers distinctly 2024-05-28 08:41:38 -05:00
Paul Davis
2d5884ccb1 refactor methods to add a location/section marker so that there is only one method for this 2024-05-21 08:21:02 -06:00
Paul Davis
0b8cfdee40 display MIDI scene markers 2024-04-25 13:07:00 -06:00
Robin Gareus
b2d4280e0f
Add support for Region Fx Automation 2024-04-23 21:56:22 +02:00
Ben Loftis
e467e0c014 in the case of nudging (1) CP, locate the phead so we can see its position 2024-03-11 14:45:07 -05:00
Robin Gareus
46a8b547fa
Half-baked automation-point nudge
There are currently combined constraints when moving multiple
points like ContiguousControlPoints::move enforces, but otherwise
it works fine.
2024-03-11 19:18:27 +01:00
Robin Gareus
9cc966120c
Consolidate internal bus checks (2/2) 2024-01-06 20:21:54 +01:00
Robin Gareus
bdfee53d1f
Fix signal emission for Locations::ripple (2/2) 2023-12-10 04:08:55 +01:00
Paul Davis
da175cc2e8 temporal: remove TempoMap::insert_time() and use shift() instead
The former was incorrectly implemented, and the latter has already been tested more
in real life.

We should likely remove ::remove_time also and use shift() there too, but that
requires testing negative shifts more broadly.
2023-11-19 12:14:10 -07:00
Robin Gareus
7cd681ec9e
Retain Region layering when duplicating Regions
Editor::duplicate copies regions one at a time. This lead
to region layeres not being retained, particularly since
Playlist::duplicate() puts the duplicated layer at the top.
2023-11-07 00:57:22 +01:00
Robin Gareus
1f7abff38b
Include Track name when consolidating ranges 2023-10-16 21:12:44 +02:00
Paul Davis
91f50b8a06 in insert time, don't differentiate between audio/music time markers 2023-10-04 18:50:42 -06:00
Paul Davis
dd556f6ee8 NO-OP: line formattting 2023-10-04 18:50:42 -06:00
Paul Davis
85f0648b6b don't pass unnecessary argument to Playlist::shift() 2023-10-04 18:50:42 -06:00
Paul Davis
0ffb9d6c8a following c40f40, make insert/remove time apply to all markers
That is, since there is no "glued-to" concept any more, if markers
are moving, then all markers are moving
2023-10-04 17:07:34 -06:00
Paul Davis
5b038e488c no more "glue to ..." concept in GUI 2023-10-04 17:07:34 -06:00
Paul Davis
e363da1f90 NOOP: remove unused variable 2023-10-04 17:07:34 -06:00
Ben Loftis
72761734e8 region groups: more fixes for drag-copy and range-paste operations 2023-09-27 11:06:40 -05:00
Robin Gareus
eed79f45d7
Fix layering when copy/pasting regions (2/2) 2023-09-25 22:36:28 +02:00
Paul Davis
61d8ceaa85 change API of Editor::get_quantize_op() and fix flaky UX when using quantize-notes 2023-09-24 15:01:04 -06:00
Paul Davis
727b666c18 NOOP: reformat comment 2023-09-18 19:57:37 -06:00
Robin Gareus
b00b80ec7e
Mixbus: cut/copy section always pastes at playhead 2023-09-11 23:18:52 +02:00
Robin Gareus
964600b9bd
Remove tempo-map cut/copy section warning 2023-09-11 23:18:52 +02:00
Robin Gareus
10ff5ad599
Use section delete for Editor::Delete operation 2023-09-06 00:02:31 +02:00
Paul Davis
44e1de4261 no warning dialog about tempo map cut/copy/paste
Left in place since it may come back in a different form
2023-08-30 14:16:21 -06:00
Ben Loftis
8818d8484e
region groups: allow the user to explictly group and ungroup regions 2023-08-10 16:55:25 +02:00
Ben Loftis
fe2473b0cc
region groups: some actions must retain a group-id for the life of the op 2023-08-10 16:55:25 +02:00
Paul Davis
afe5331a0b pbd: fairly unconscionable that Command in libpbd is not namespaced, so now it is 2023-08-07 16:33:16 -06:00
Paul Davis
e9585ad530 objects don't have a time domain, they have a time domain provider (GUI) 2023-08-02 15:22:52 -06:00
Paul Davis
e430b54554 class name change to clearly disambiguate Evoral::ControlList (a list of time/value pairs) from lists of Controls in libardour (GUI edition) 2023-08-02 15:22:52 -06:00
Colin Fletcher
96eb7652c9 fix warning from fallthrough comment typo
Fix "warning: this statement may fall through [-Wimplicit-fallthrough=]",
caused by the misspelling of "fallthrough" as "fallthough" in
editor_ops.cc.

Note that if you use ccache, you'll need to clear its cache to actually
get rid of the warning, because the pre-processed file (with comments
removed) is identical before & after this change, and thus won't get
recompiled otherwise.

Fix the equivalent typos in marker.cc too, though in those cases there's
no actual warning, because presently all the fall-throughs are from empty
cases.
2023-06-09 16:45:31 +01:00
Robin Gareus
3468ffddbb
Update GUI: add new section operations 2023-06-06 02:42:43 +02:00
Robin Gareus
961c6ae8d7
Prepare UI for section cut/copy API update 2023-06-06 02:42:43 +02:00
Robin Gareus
54fac9abac
Allow user to not be reminded about tempo-map not being pasted 2023-06-05 20:04:41 +02:00
Robin Gareus
8794145c9d
Centralize setting undo/redo action sensitivity
This fixes undo/redo action sensitivity for non-editor
history stack changes.

Notably recording was not undoable, because the butler
thread creates the reversible "capture" command.
2023-06-02 18:11:53 +02:00
Robin Gareus
ffa893f23c
Add a warning that cut/copy section does not yet include the the Tempo Map 2023-05-18 03:45:53 +02:00
Robin Gareus
299e67f250
Facilitate multiple section paste operations 2023-05-17 23:30:13 +02:00
Robin Gareus
b6b1aec50e
Fix selection after region duplicate (amend cfca2d2a) 2023-05-15 19:28:33 +02:00
Robin Gareus
cfca2d2af9
Significantly speed up multiple region duplication
When multiple regions are duplicated Playlist::duplicate
is called sequentially for each region.

Previously that lead to a call to Playlist::flush_notifications
after each step, which is rather expensive.
Playlist::ContentsChanged and Playlist::LayeringChanged
trigger SessionEvent::Overwrite and GUI updates.
2023-05-14 20:42:31 +02:00
Paul Davis
87b5849a7b kbd bindings: fix issues with delete & backspace bindings in draw/i-edit mode
We now use the same actions in all modes, and the logic is:

1. is there a selected mixer strip and are we in it: if so, delete selected
   processors
2. are we in draw or internal mode? if so ..
   2a. if there are selected control points, delete them
   2b. if not, attempt to delete MIDI notes
   2c. done
3. continue with delete operation as before
2023-04-25 11:38:16 -06: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
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
a0286f2e6f Expose cut-copy-section in the editor
This is still a bit of an experiment, there may need to be a dedicated
ruler for sections, or a side-bar that allows arranging.
2023-03-31 23:13:20 +02:00
Robin Gareus
91c0f143ec Set sensitvity of "Insert Selected Region" 2023-03-31 22:06:41 +02:00