Commit graph

1419 commits

Author SHA1 Message Date
Paul Davis
bf2016071d a variety of improvements related to clip recording & editing 2024-10-17 21:47:52 -06:00
Paul Davis
90c8726c6d wideranging changes to get automation editing working in cue editor 2024-10-17 07:44:31 -06:00
Paul Davis
45e4b97a6f move some methods from Editor to Editing context so that drawing controls work everywhere 2024-10-17 07:44:31 -06:00
Paul Davis
2fceb66193 manual fixups for errors during rebasing against master 2024-10-17 07:44:31 -06:00
Paul Davis
8523598664 fix management of undo/redo and _current_editing_context
We cannot switch on a leave event from a widget, because the undo/redo menu items must remain
labelled until we are actually in a new editing context. So switch when we switch tabs
or when we edit the (MIDI) cue editor
2024-10-17 07:44:31 -06:00
Paul Davis
86ecca8c76 make undo/redo action sensitivity work with multiple EditingContexts 2024-10-17 07:44:31 -06:00
Paul Davis
71f946f3b3 move tooltip settings for EditingContext widgets to EditingContext 2024-10-17 07:44:30 -06:00
Paul Davis
36eda47075 get temporal zoom workign in MidiCueEditor
and remove qite a bit of debug output
2024-10-17 07:44:30 -06:00
Paul Davis
f2e1697058 dammit jim, it's a stack not a queue 2024-10-17 07:44:30 -06:00
Paul Davis
3aba913649 manual cleanup after another tricky rebase against master 2024-10-17 07:44:30 -06:00
Paul Davis
e630051de1 more manual fixes after a substantial rebase 2024-10-17 07:44:30 -06:00
Paul Davis
e205bb98a1 manual fixes after a substantial rebase 2024-10-17 07:44:30 -06:00
Paul Davis
48a6e8dfcf basics of autoscroll for pianoroll (mostly shared with Editor)
More work to do moving/testing pianoroll autoscroll variant back into EditingContext
and sharing it with Editor.
2024-10-17 07:44:30 -06:00
Paul Davis
0d01e73b86 some state mgmt for EditingContexts 2024-10-17 07:44:30 -06:00
Paul Davis
fcf5bb88d5 cue editor/piano roll: starting to get mode buttons working and keybindings too 2024-10-17 07:44:30 -06:00
Paul Davis
f425a974d6 the continuing co-evolution of Editor,EditingContext & MidiCueEditor 2024-10-17 07:44:30 -06:00
Paul Davis
e3205bded0 do something to make MIDI bindings accessible in any EditingContext 2024-10-17 07:44:29 -06:00
Paul Davis
bde4768734 move a bunch of MIDI editing into EditingContext 2024-10-17 07:44:29 -06:00
Paul Davis
10b48d2cc4 lock in some major steps for the midi cue/pianoroll editor 2024-10-17 07:44:29 -06:00
Paul Davis
a550b6482f start using the now-compilable MidiView
Nothing yet derives from this, but MIDI display items and drags
do use it.
2024-10-17 07:44:29 -06:00
Paul Davis
e3be2c781f constification of EditingContext/{Public}Editor time+snap methods 2024-10-17 07:44:29 -06:00
Paul Davis
204d4237f8 further steps towards MidiRegionView outside the Editor 2024-10-17 07:44:29 -06:00
Paul Davis
e6c56b39d1 finish basic distribution of EditingContext methods
This compiles but is not expected to work yet
2024-10-17 07:44:29 -06:00
Paul Davis
4398fe931b more movement of code and members from Editor => EditingContext 2024-10-17 07:44:29 -06:00
Paul Davis
2187c63bee add stub for cue editor 2024-10-17 07:44:29 -06:00
Paul Davis
1bf2307137 more reorganization of implementations between Editor & EditingContext & PublicEditor 2024-10-17 07:44:29 -06:00
Paul Davis
7d5f575d61 finish inheritance work between EditingContext & Editor
this completes the initial phase of defining what an EditingContext must offer,
though the may expand or shrink as we being work on editing outside the Editor
2024-10-17 07:44:29 -06:00
Paul Davis
dee8e920e6 editing refactoring, the drag part 2024-10-17 07:44:29 -06:00
Paul Davis
089a9521d5 steps to an ecology of editing 2024-10-17 07:44:29 -06:00
Robin Gareus
60b3b24cc8
Do not allow changing the loop range while recording 2024-09-25 21:43:47 +02:00
Alejandro Domínguez
f41d7514b0
Use C++11-style initialization of Editor.last_event_time 2024-08-31 05:49:03 +02:00
Paul Davis
550b38fb00 preliminary change to avoid unnecessary stuff happening when track drags do not reorder 2024-08-08 18:46:41 -06:00
Robin Gareus
460ecadc00
Significantly speed up building region bounday cache 2024-08-02 20:08:51 +02:00
Robin Gareus
533f4a61f6
Remove unused variable 2024-08-02 20:08:51 +02:00
Paul Davis
af5c99dd05 move definition of selection operations in to ARDOUR namespace
This is a rare commit that I think should be done for GUI and libs at the same time
2024-08-02 11:50:21 -06:00
Paul Davis
7052f57ee9 no drag-n-drop for VCA masters, since they are intended to be non-reorderable 2024-07-03 18:48:39 -06:00
Robin Gareus
bdd6eec95c
Constrain height of group-tab to the editor's height
Previously the group-tab extended all the way down to the
last track. Potentially with a widget height of > 2^15 px.

This caused issues with gtk widgets (notably on Windows)
```
unhandled exception (type std::exception) in signal handler:
what: invalid value (typically too big) for the size of the input (surface, pattern, etc.)
```

This also prepares for Mixer Tab-Group to use the same
separation between visible and total extent.
2024-06-22 17:44:20 +02:00
Paul Davis
4872d6706d fix crash cause by ending non-existing track drag 2024-06-05 16:38:00 -06:00
Paul Davis
0ec926668c refine track drag API to control whether cursor can change on button press 2024-06-03 17:52:42 -06:00
Paul Davis
c7b8840f8f redesign track drag so that we can start from anywhere in the header, including the name 2024-06-03 17:22:42 -06:00
Paul Davis
7c5bd69ff1 debugging: get a stacktrace for the start of a track drag 2024-05-31 00:22:14 -06:00
Paul Davis
1dba8f9906 harmonize TrackDrag API with livetrax version 2024-05-29 10:16:10 -06:00
Paul Davis
7f82b918ae add DEBUG::TrackDrag to help try to track down #9711 2024-05-28 20:52:35 -06:00
Paul Davis
08eb25ef55 add a move threshold to track DnD 2024-05-21 11:05:37 -06:00
Robin Gareus
5fdc7c4601
Redraw section markers when reloading session
This fixes a bug that when re-loading a session, section
marker rectangles (to next marker) were not drawn.
2024-05-20 21:55:54 +02:00
Paul Davis
f1e7ab08c7 no need to lookup smart mode action, it is cached 2024-05-18 12:24:23 -06:00
Paul Davis
93e1e1c1f2 remove Cue, CD, Scene, Punch, Loop rulers, consolidate to just a pair (ranges, locations)
a menu allows choosing between all markers or 1 specific type, and all ranges or 1 specific type

more work required on menu structure and menu options/dialogs to specify the type of new location
and range marker creation
2024-05-16 22:58:55 -06:00
Robin Gareus
5d175786e8
Remove debug messages, cleanup output (1/2) 2024-05-08 00:56:43 +02:00
Paul Davis
f92d821a72 working track drag-n-drop, re-picked from a 2nd implementation on a branch 2024-05-05 15:09:34 -06:00
Paul Davis
c3fb69c385 catch button release after track drag 2024-05-05 15:02:59 -06:00