Paul Davis
9b22e16bec
NO-OP: add lifetime comment
2024-12-29 11:24:16 -07:00
Paul Davis
5157234f2f
auto-fication of a loop
2024-12-29 11:24:16 -07:00
Paul Davis
41814519ab
auto-fication of a loop
2024-12-29 11:24:16 -07:00
Paul Davis
5a97ce4a0c
NO-OP: fix brace indentation
2024-12-29 11:24:16 -07:00
Paul Davis
730cf01ff9
use nullptr instead of NULL
2024-12-29 11:24:16 -07:00
Paul Davis
478d688aac
use nullptr instead of NULL
2024-12-29 11:24:16 -07:00
Paul Davis
3248fb8b59
remove unusued variables
2024-12-29 11:24:16 -07:00
Paul Davis
e36b1211b6
fix drawn length of notes in MIDI cue editor
2024-12-29 11:24:16 -07:00
Paul Davis
c98a36be0f
switch mouse button and motion handling in MidiView to use Drag formalization
...
It appears that mouse handling in MidiRegionView (now moved into MidiView)
predated the full Drag formalization. This led to inconsistencies as parts of the Drag
formalization were adopted, including the use of motion events to start a drag (this
is incorrect in the current semantics of a Drag).
This commits removes all/most of the special purpose drag handling machinery in MidiView
and uses Drags instead
2024-12-27 14:13:02 -07:00
Paul Davis
25b830b032
fix event handling/routing from MidiView up to EditingContext
...
in particular, rename MidiView::canvas_group_event() to
avoid confusion with TimeAxisViewItem::canvas_group_event()
since a MidiRegionView inherits from both these classes.
2024-12-27 14:00:55 -07:00
Paul Davis
c98fc2477a
add a new canvas item for cue start/end dragging
2024-12-27 13:44:56 -07:00
Paul Davis
9ad24161c1
add canvas debugging item names
2024-12-12 11:53:15 -07:00
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
2096ff7876
cue editor end dragging operational
2024-11-26 13:11:17 -07:00
Paul Davis
c90b19a954
add colors for cue editor start boundary and use them
2024-11-26 11:35:30 -07:00
Paul Davis
9243dcf961
draw clip rect correctly after it is reset\n
2024-11-25 18:30:01 -07:00
Paul Davis
465f39e5bf
create nonfunctional clip boundary drags when appropriate
2024-11-23 09:06:38 -07:00
Paul Davis
3feaf2046c
fix inadvertent partial line deletion
2024-11-23 09:06:38 -07:00
Paul Davis
8064353a82
fix/remove on the current #warnings arising from the pianorule refactor
2024-11-23 09:06:38 -07:00
Paul Davis
d5cc1b5efc
initial steps to trigger start/end point display and editing
2024-11-22 09:33:38 -07:00
Paul Davis
48ed5be776
skeleton for clip start/end editing
2024-11-12 18:54:41 -07:00
Paul Davis
a1dd7ae4c3
remove unused member variable
...
this was a solution to a problem eventually solved a different way
2024-11-11 22:06:05 -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
61f1466f50
use virtual methods to get MidiRegionView to do ::set_model() correctly
2024-11-05 13:27:22 -07:00
Paul Davis
56c99a43d2
remove any existing data display from a MidiView when ::begin_write() happens
2024-11-01 17:45:00 -06:00
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