Commit graph

419 commits

Author SHA1 Message Date
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
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
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
f425a974d6 the continuing co-evolution of Editor,EditingContext & MidiCueEditor 2024-10-17 07:44:30 -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
204d4237f8 further steps towards MidiRegionView outside the Editor 2024-10-17 07:44:29 -06:00
Paul Davis
b4e592a469 adjust relationship between VerboseCursor and Editor to use EditingContext 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
Paul Davis
5c2e1bd807 fix another case where SMF are imported and named incorrectly 2024-10-15 21:22:10 -06:00
Paul Davis
cab7fdf3d0 when d-n-d'ing SMF, use file & track name for the new sources and regions 2024-10-15 09:36:42 -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
553e534455 remove a number of canvas items that no longer exist after ruler consolidation 2024-05-17 09:07:00 -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
Paul Davis
0b8cfdee40 display MIDI scene markers 2024-04-25 13:07:00 -06:00
Paul Davis
dde59c8e4c temporary fix for X Window and Windows bad canvas drawing with no single expose 2024-04-12 18:55:27 -06:00
Paul Davis
0c4eada414 make editor canvas use multi-expose redraws
This is not required for any functionality or performance fixes, but may be useful
and also helps tracking redraw issues with other related changes
2024-03-18 10:48:38 -06:00
Robin Gareus
96c45b65ee
Remove more or less useless Mouse Audition Button
Audition action is very much preferred and also works with
multiple selection.
2023-10-05 21:49:55 +02:00
Ben Loftis
8681d46fbc fix the case where the grid-tool stopped working when you vertically scroll the canvas
there is no need to calculate the size of the grid_zone, just make it "huge"
2023-09-30 07:41:49 -05:00
Paul Davis
3a19e7d48b fix redisplay of track headers after UI scale change
The suspend/resume routes code requires that there be a call to
Editor::redisplay_track_views() if anything is to happen on resume. This was
missing from the events triggered by a UI scale change.
2023-09-10 18:20:35 -06:00
Ben Loftis
e81b2353cc
Indicate arrangement section selection on canvas 2023-09-08 03:26:00 +02:00
Robin Gareus
20b646e962
Handle MouseGrid cursor (fix -Wswitch, amend 784d2ecc) 2023-09-08 03:25:59 +02:00
Ben Loftis
da4d2a645f
remove tempo-mapping bar, tempo_meta group. this reverts 8fbf2c and related 2023-09-06 19:31:00 +02:00
Ben Loftis
268d1d33c7
Add invisible Rectangle to initiates Tempo(grid) drags 2023-09-06 19:14:14 +02:00
Robin Gareus
a14f216f3e
Highligh ranges in arrangement ruler 2023-08-29 00:34:29 +02:00
Robin Gareus
2f6a0abf04
Use "Arrangement" in GUI instead of Section
Reserve Section for time-selection without track selection
2023-08-28 21:02:43 +02:00
Robin Gareus
9c984fc2ad
Add dedicated Section Ruler and UI for section boundary markers 2023-08-26 14:09:53 +02:00
Robin Gareus
a5946ba2e2
Fix heap-use-after-free at exit
Deleting _track_canvas_viewport automatically destroys
any child Items. The LocationMarker's group was already destroyed
when ~ArdourMarker() runs and calls `delete group`.

So first delete the marker, then the canvas
2023-06-08 22:50:15 +02:00
Robin Gareus
921b4aaa75
Allow to drag time selection markers 2023-06-01 21:37:40 +02:00
Robin Gareus
dbebc0b7e0
Make Markers properly themable, use color-names
This simplifies code, and also immediately changes marker
colors when the theme is changed.
2023-05-18 01:26:35 +02:00
Robin Gareus
cb78043adc
Indicate selection extents in time ruler 2023-05-17 01:53:40 +02:00
Robin Gareus
1ee2675716
Implement Selection Marker class and events 2023-05-17 01:50:51 +02:00
Ben Loftis
3f15a3a402 set playhead sensitivity via config (defaulted insensitive)
* in the 'fake_drag' case (dragging the playhead from the ruler), the
 mouse events are delivered to the playhead during the drag so we need
 to temporarily sensitize the playhead during that operation, then reset
 the sensitivity via config
2023-05-01 08:49:27 -05:00
Paul Davis
65c81feb5e fix consistency and accuracy of tempo edit behavior setting 2023-04-22 11:12:21 -06:00
Paul Davis
b4d8a3f933 get initial display for tempo ruler more correct 2023-04-18 14:37:46 -06:00
Paul Davis
13d814f87c fix a few canvas thinkos related to mapping bar 2023-04-08 14:12:41 -06:00
Paul Davis
13311b7a32 tempo mapping: tempo group and mapping group are now only ever visible one at a time
Currently, the "switch" is in Edit > Tempo
2023-04-08 11:44:21 -06:00
Robin Gareus
295dbd8e1e
Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02:00
Paul Davis
57398b1e5e tempo mappoing: use actual mouse cursors not canvas item cursors
Also some changes to attempt to do "half-twist" that will be removed soon.
2023-04-07 12:56:57 -06:00
Paul Davis
77cefd7721 new tempo mapping drag objects (API and implementation) 2023-03-24 14:19:16 -06:00
Paul Davis
20349d868e fix various aspects of display of mapping cursor
This might all change in the future, or even go away.
2023-03-24 14:19:16 -06:00
Paul Davis
868d606d16 track mouse motion in the mapping bar
This does not yet snap to BBT positions
2023-03-24 14:19:16 -06:00
Paul Davis
5e01503a56 add a new canvas-based cursor for mapping 2023-03-24 14:19:16 -06:00
Paul Davis
e9b83e0f1d it's only debug info but let's get it right 2023-03-24 14:19:16 -06:00
Paul Davis
18249f7395 ardour has a new ruler
The mapping bar is where tempo mapping operations will take place
2023-03-24 14:19:16 -06:00
Paul Davis
b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
Robin Gareus
380005f50f Update preference to set macOS render performance 2023-02-04 22:34:12 +01:00
Robin Gareus
eb42318d3e
Consolidate ruler prelight events
This fixes various copy/edit bugs (e.g. transport ruler uses
"range marker bar" colors, but only after a enter/leave event).
2022-12-10 15:14:29 +01:00
Robin Gareus
49f7e4d447
Amend 07dea50456 (DnD import, copy to track) 2022-10-01 03:38:34 +02:00