Paul Davis
8986768731
fix invisble notes in MidiRegionView after transport stopped-recording
...
MidiCueView needs an _active_notes array setup when it is assigned a track that is
already rec-enabled, because we can start clip recording without session record-enable
being active.
MidiRegionView does not need this; it uses session rec-enable status to create or delete
_active_notes (also transport stop, sometimes)
2024-10-31 12:22:35 -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
6c14a6c407
non-crashing version of previous commit
2024-10-18 09:57:43 -06:00
Paul Davis
9f14eea88a
avoid memory leak (and GUI object leak)
2024-10-18 09:55:16 -06: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
c5c865f589
fix potentially unset variable (thanks clang!)
2024-10-17 15:06:04 -06:00
Paul Davis
2ff90a0557
probably fix an assert() logic error
2024-10-17 11:27:57 -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
774f5f49da
robustify MidiView against the condition where it has no MidiRegion
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
bd0b5495c6
robustify MidiView so that it can be created without a MidiTrack
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
90c8726c6d
wideranging changes to get automation editing working in cue editor
2024-10-17 07:44:31 -06:00
Paul Davis
54fdf90cc2
lots of detailed fixes to get lollipops in tracks working again, post re-factor
2024-10-17 07:44:31 -06:00
Paul Davis
739d58840f
manually reimplement 3766b22e06 from master (sysex deletion)
...
Things have changed
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
c232525e94
remove broken out loop iteration
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
f80395fc2f
use MidiModel::ContentsChanged to drive MIDI cue edit swaps (GUI version)
...
No need for a special method called post-edit
2024-10-17 07:44:31 -06:00
Paul Davis
60830f4ab7
remove debug output
2024-10-17 07:44:30 -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
044aec6563
basics of MIDI clip editing notification via model swap
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
3224b37702
NO-OP: whitespace
2024-10-17 07:44:30 -06:00
Paul Davis
4724683b5f
fix placement of ghost note while in draw mode
2024-10-17 07:44:30 -06:00
Paul Davis
30a7f44c12
fix geometry calculations during NoteCreateDrags.
...
This also only uses the draw length parameter if no motion
occured during the NoteCreateDrag. Otherwise it uses the length that was
dragged (which is subjected to a threshold).
2024-10-17 07:44:30 -06:00
Paul Davis
e0a5b591f8
correct errors in coordinate math when moving a mote selection
...
This may be the first of several instances where mixing
timeline-relative positions and global canvas coordinates leads to
problems. Let's hope there are not too many.
2024-10-17 07:44:30 -06:00
Paul Davis
36d0a6e908
fix dangling references to a MidiRegion and MidiTrack in a MidiView
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
Paul Davis
3fccf2b458
change coordinate system used for rubberband drags in piano roll
2024-10-17 07:44:30 -06:00
Paul Davis
d356cacb2a
working and accessible canvas cursor setting
2024-10-17 07:44:30 -06:00
Paul Davis
5acedc036a
fix up event handling so that MIDI note drag works in cue editor
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
10244c0360
tempo bar and BBT ruler in MIDI cue editor
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
0311bffed8
progrss with rubber band selection and event handling in MIDI cue editor
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
549defc068
more work on fixing pianorule recomposition of objects
2024-10-17 07:44:29 -06:00
Paul Davis
3bd2d39d51
fixes to get redraws when note range changes
2024-10-17 07:44:29 -06:00
Paul Davis
3700f191cd
fix some region-view level selection issues
2024-10-17 07:44:29 -06:00
Paul Davis
182a24751b
get standalone MidiView to display notes
...
This also removes an unused TriggerBoxWidget from each regular
MixerStrip.
2024-10-17 07:44:29 -06:00
Paul Davis
db89647676
revert scope change for a local variable
2024-10-17 07:44:29 -06:00
Paul Davis
c39558471f
remove current slice usage/members
2024-10-17 07:44:29 -06:00
Paul Davis
33298a0ba0
get region-create drags working and no crashes (nut also no note) for note-drags
2024-10-17 07:44:29 -06:00
Paul Davis
27e9e19aac
initial refactoring of MidiRegionView IS-A MidiView
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