Paul Davis
98c9c03e9f
remove all trace of cursor stacks; canvas cursor is always "just set"
2024-12-08 12:13:41 -07:00
Paul Davis
5b112e489b
move zoom in/out actions into shared "Editing" group
2024-12-07 08:00:46 -07:00
Paul Davis
2096ff7876
cue editor end dragging operational
2024-11-26 13:11:17 -07:00
Paul Davis
73847a9b42
use correct Region API for adjusting the start position in the cue editor
2024-11-26 08:39:32 -07:00
Paul Davis
bbdc87b6fa
midi cue editor: Trigger::current_pos() is relative to the region start, so fix playhead position
2024-11-25 21:37:31 -07:00
Paul Davis
5ef4f8973f
somewhat sort of working clip start drag (GUI edition)
2024-11-25 17:54:15 -07:00
Paul Davis
465f39e5bf
create nonfunctional clip boundary drags when appropriate
2024-11-23 09:06:38 -07:00
Paul Davis
48ed5be776
skeleton for clip start/end editing
2024-11-12 18:54:41 -07:00
Paul Davis
677a6764ac
add new buttons to EditingContext; use them in MidiCueEditor
2024-11-12 09:49:59 -07:00
Paul Davis
d3272a6400
midi cue editor: don't allocate space for automation till asked to do so
2024-11-12 08:51:29 -07:00
Paul Davis
0622f26b2a
redesign cue editor layout to use ArdourButton and GtkBoxen
2024-11-12 08:12:16 -07:00
Paul Davis
5dd65171c1
remove unused variable decl
2024-11-11 22:01:32 -07:00
Paul Davis
47db75b0d6
cleanup some aspects of midicue editor playhead behavior
2024-11-11 21:49:55 -07:00
Paul Davis
96ef4d20f2
when recording MIDI, create active_notes on demand
...
Since the signal handler for "data recorded" is in the GUI thread, we can do
whatever we want there, including memory allocation
2024-11-09 09:20:25 -07:00
Paul Davis
c08cfa8109
more work on multiple automation display
2024-11-08 12:16:09 -07:00
Paul Davis
57252cd1c7
clip recording: begin/end write only happens on trigger arm/disarm
2024-11-01 17:45:00 -06:00
Paul Davis
c7192b4cc0
add the concept of a length that is data-independent to MIDI files (GUI)
2024-10-31 12:22:35 -06:00
Paul Davis
e11caf2dea
various changes to get MIDI clip recording to display the post-capture region
2024-10-22 14:49:50 -06:00
Robin Gareus
74c4ca3e52
Reduce reliance on boost - the hard part
...
the rest from `tools/convert_boost.sh`.
* replace boost::function, boost::bind with std::function and std::bind.
This required some manual fixes, notably std::placeholders,
some static_casts<>, and boost::function::clear -> = {}.
2024-10-19 03:47:21 +02:00
Paul Davis
70b41d10b1
actally stop doing clip recording visual stuff when disarmed (gui)
2024-10-18 09:50:48 -06:00
Paul Davis
bf2016071d
a variety of improvements related to clip recording & editing
2024-10-17 21:47:52 -06:00
Paul Davis
229506147a
playhead for MIDI clip editor during playback (first steps)
2024-10-17 15:06:33 -06:00
Paul Davis
e74f57c52b
get playhead functioning during clip recording (MIDI)
2024-10-17 14:36:27 -06:00
Paul Davis
7b88ae2466
fix initial LR sizing of midi cue editor canvas sections
2024-10-17 13:37:21 -06:00
Paul Davis
c2094085e3
sort of get MIDI notes to extend during clip recording
...
Also, robustify MidiView against a missing MidiModel member variable
2024-10-17 07:44:33 -06:00
Paul Davis
d7e85de7c2
first somewhat version of show-clip-capture MIDI notes as they arrive
2024-10-17 07:44:33 -06:00
Paul Davis
35f16f1bb6
preparations for clip data display (MIDI) while recording (GUI edition)
2024-10-17 07:44:33 -06:00
Paul Davis
01068fe306
further adventures in drag-refactoring do that LineDrag can be used in MidiCueEditor also
2024-10-17 07:44:32 -06:00
Paul Davis
2afdeb519f
refactor rubberband drags to take a functor for the no-drag condition
...
Also move code for adding automation line control points into automation line, rather
than in AutomationTimeAxisView (some work still required to finalize this)
2024-10-17 07:44:32 -06:00
Paul Davis
e6c0fcf98f
refactor end-of-rb-selection for EditingContext
...
Whhat the main editor and the cue editor do with a click varies significantly
2024-10-17 07:44:32 -06:00
Paul Davis
b8fb779fa7
allow dragging in MIDI automation line in cue editor
...
Note: once this is cleaned up and checked with respect to snap and more,
the same should be done for MidiRegionView
2024-10-17 07:44:32 -06:00
Paul Davis
4b8c51574d
refactor the "selectables" API to allow use within separate (e.g. cue) editors
2024-10-17 07:44:32 -06:00
Paul Davis
83ea6e18b5
get MIDI cue editor mouse mode buttons to reflect state at startup
2024-10-17 07:44:32 -06:00
Paul Davis
56ce9c33c0
renaming: AutomationLineBase => AutomationLine, AutomationLine => EditorAutomationLine
2024-10-17 07:44:31 -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
71d5b50a94
kinda-sorta get an automation line for modwheel in the cue editor
2024-10-17 07:44:31 -06:00
Paul Davis
afa15a0061
get velocity editing working in both the cue editor and MIDI region views
...
Quite a bit of hairy coordinate system stuff in here that ought to be commented more
clearly
2024-10-17 07:44:31 -06:00
Paul Davis
fa993ec9f4
various fixes to get lollipops to display (cue editor only so far)
2024-10-17 07:44:31 -06:00
Paul Davis
0399cd9d02
initial use of refactored VelocityDisplay
2024-10-17 07:44:31 -06:00
Paul Davis
12519ef621
add a new automation group rect to the midi cue editor, and size it
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
c4534cc9c4
undo history for MidiCueEditor
...
redo not operational yet for some unknown reason
2024-10-17 07:44:31 -06:00
Paul Davis
fcfa4fecb4
more preparation for MIDI cue editing to propagate to the slot (trigger)
2024-10-17 07:44:30 -06:00
Paul Davis
4bbdbc6d13
fix handling of MIDI draw tool actions and widgets
...
The actions and draw_xxx values are now "static", and changes in the values are
notified via a static PBD::Signal so that each EditingContext can update the
appearance of its relevant widgets.
Note also wider use of lambdas when creating actions and menu items.
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
dc44d10b48
handle Escape signal in all EditingContexts (including MidiCueEditor)
2024-10-17 07:44:30 -06:00
Paul Davis
280fdb6e62
virtualize EditingContext::midi_action() so that MidiCueEditor works
...
This makes MIDI bindings work in the cue editor, as intended.
2024-10-17 07:44:30 -06:00
Paul Davis
e7ae93929b
correctly set timeline_origin for a MidiCueEditor
...
for some reason the width is different when ::set_region() is called
2024-10-17 07:44:30 -06:00
Paul Davis
bef7c48fe9
the state of things in pianorule, committed for travel purposes
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