Commit graph

17788 commits

Author SHA1 Message Date
Paul Davis
7ec2bc4edd fix rubber band selection coords so that it works in Editor & Pianoroll 2025-01-15 15:09:58 -07:00
Paul Davis
e4beb5c3d9 remove _note_mode property of MidiTimeAxisView and use MidiStreamView's inherited version
Note that for now, this leaves save/restore of the value to the time axis view, and doesn't alter
the fact that the MidiTrack represented by the axis view continues to have its own note mode too
2025-01-15 13:35:07 -07:00
Paul Davis
5cade315fb redraw (pianoroll) MidiView when note mode changes
This also fixes the position of the percussive mode canvas items
2025-01-15 10:34:46 -07:00
Paul Davis
678ebca032 don't always adjust note range in a MidiView after a model change 2025-01-14 16:49:58 -07:00
Paul Davis
4e8591da99 move cut/copy/delete/paste operations into EditingContext
derived classes (Editor and Pianoroll) provide ::cut_copy() to wrap the
context-specific logic, and then both defer to MidiView for MIDI-specific
operations.

Note that this also changes several action names in ardour.keys.in
2025-01-14 15:31:53 -07:00
Paul Davis
13161a3975 refactor point-selection-changed logic "up" into EditingContext 2025-01-14 15:28:51 -07:00
Paul Davis
c15556568e revert some of the logic of control-points-inherit-line-color for selected CPs 2025-01-14 15:26:38 -07:00
Paul Davis
c0c6a93cba Pianoroll: make automation follow zoom 2025-01-13 15:28:41 -07:00
Paul Davis
74fa86ca19 add a (debug-only) to canvas control point rectangles 2025-01-13 15:28:41 -07:00
Robin Gareus
6bb3e04e94
Stack Clip properties vertically to reclaim space 2025-01-13 22:58:11 +01:00
Robin Gareus
12454f0e7b
Pack monitor-section in full-height box 2025-01-13 22:46:11 +01:00
Robin Gareus
ca19b803ca
content_hbox is about to be removed.. 2025-01-13 22:39:56 +01:00
Ben Loftis
8415fa1df0
(backport?) more explicit text in track menu. What does 'remove' do? 2025-01-11 01:37:16 +01:00
Ben Loftis
abd3d49120
Recover mini-timeline playhead triangle 2025-01-11 01:20:11 +01:00
Ben Loftis
3ac035c85f
Rename member variables (and unpack some items for MB) 2025-01-11 01:09:50 +01:00
Ben Loftis
8dc50ac33c
When dragging a new tab, peek at the color it will be assigned 2025-01-11 01:09:44 +01:00
Ben Loftis
be74cf1c9c
Use round-robin palette color for new groups 2025-01-11 00:44:35 +01:00
Ben Loftis
b9c531cf7f
Allow peeking at the next round-robin color to be used 2025-01-11 00:43:59 +01:00
Ben Loftis
8899ad836e
Group tab bg should be theme-able 2025-01-11 00:43:25 +01:00
Ben Loftis
5c6ebaea72
Add horizontal rulers to Audio Setup 2025-01-10 23:46:31 +01:00
Ben Loftis
a7290ee661
Application_bar must watch the ui-config to show widgets 2025-01-10 23:41:11 +01:00
Ben Loftis
524073d855
Use the LiveTrax tabbed session dialog 2025-01-10 23:38:56 +01:00
Robin Gareus
3bfc8c1d4d
Add color theme for tab buttons (session dialog) 2025-01-10 23:38:53 +01:00
Paul Davis
d0b643b116 do not use DragManager::current_pointer_x() directly during drags
That ignores a _bounding_item and can give incorrect coordindates for the drag when
that is used (e.g. clip editor)
2025-01-10 11:17:59 -07:00
Paul Davis
e273ec06bb fix note drawing in clip editor by adding MidiView::relative_position() 2025-01-10 10:31:48 -07:00
Robin Gareus
c82afe4cdc
Initialize track_output_button state when export channels are empty 2025-01-10 17:53:27 +01:00
Robin Gareus
3c43628344
Cont'd work on editor rulers (actions and style) 2025-01-10 02:12:02 +01:00
Paul Davis
c47a3e79e8 fix note resizing mid- and end-drag behavior for clip editors
Clip editors show the entire source contents, which alters the conversion
process needed for dealing with pixel/length/duration values versus the
situation when only showing a region (as on the timeline)
2025-01-09 16:33:43 -07:00
Paul Davis
cb26e309af alter NoteResizeDrag to operate on a single region only
This lets us use a MidiView as the target, rather than a MidiRegionView
2025-01-09 16:33:43 -07:00
Robin Gareus
ae879662d4
Show "+" icon on editor track-header area 2025-01-09 20:18:23 +01:00
Paul Davis
7c711de178 basics of pianoroll windows 2025-01-08 18:05:11 -07:00
Paul Davis
a4b22d1ac7 remove debug output 2025-01-08 14:26:29 -07:00
Paul Davis
82cdc6e3db remove debug output 2025-01-08 14:26:29 -07:00
Paul Davis
97e55b0dcc improve default cursor choice inside pianoroll 2025-01-08 14:26:29 -07:00
Paul Davis
5d831ceb5e fix/improve pianoroll event handling
And add a long comment to try to explain how/why things work this way, which is
certainly odd at first sight.
2025-01-08 14:26:29 -07:00
Paul Davis
50e504af6e add possibly helpful comment 2025-01-08 14:26:29 -07:00
Paul Davis
0149d9700b if PianoRollMidiView doesn't handle a scroll event, let MidiView try 2025-01-08 14:26:28 -07:00
Paul Davis
77d2a45475 fix computation of ::covers() for clip start/end handles 2025-01-08 14:26:28 -07:00
Paul Davis
1ae5ea0e92 prwevent scroll-driven zoom in pianoroll from exceeding a reasonable level 2025-01-08 14:26:28 -07:00
Robin Gareus
85b637878d
Add action to create arrangement markers 2025-01-08 04:31:15 +01:00
Robin Gareus
c4d5a6b873
Consolidate Ruler area setup, prepare for interactive buttons 2025-01-08 04:31:15 +01:00
Robin Gareus
d877800a28
Indicate clock delta mode using Δ 2025-01-08 04:31:15 +01:00
Paul Davis
e206fd5863 share the full zoom button in EditingContexts 2025-01-07 17:11:08 -07:00
Paul Davis
44c5cf7841 switch back to default cursor when leaving pianoroll canvas 2025-01-07 17:10:34 -07:00
Paul Davis
bd9ab55fa0 move zoom in/out buttons to EditingContext and use on the pianoroll 2025-01-07 12:59:13 -07:00
Paul Davis
89c6c46f65 fix a few issues following the pianoroll renaming 2025-01-07 12:58:54 -07:00
Paul Davis
f5d15aac0b prefer #pragma once to #define header guards 2025-01-07 11:49:05 -07:00
Paul Davis
9e4c447c3a fix header guard names after pianoroll rename sed-ing 2025-01-07 11:47:06 -07:00
Paul Davis
0f43ad3376 pianoroll renaming 2025-01-07 11:45:58 -07:00
Paul Davis
b9c5927abb pianoroll renaming 2025-01-07 11:42:37 -07:00