Commit graph

1162 commits

Author SHA1 Message Date
Paul Davis
5abfc59dc1
Use shared_ptr to manage RouteGroups everywhere (GUI edition) 2025-12-14 23:46:57 +01:00
Paul Davis
7a5591121b rationalize region "show properties" and "edit in separate window" menu items 2025-12-01 20:48:35 -07:00
Robin Gareus
2d169824cd
Remove 16 year old session-import prototype (1/2)
This was based on Arodur 2.x sessions modifying XML
which no longer applies (and non functioning GUI).
2025-11-25 16:51:04 +01:00
Paul Davis
71ff8ba3e0 refactor horizontal scrolling to use same code/modifiers in Editor and PianorollMidiView 2025-11-24 11:22:50 -07:00
Paul Davis
5d08e01b10 show instrument plugin GUIs when new tracks/busses with instruments are added
If multiple tracks are added, we only show the GUI for the first one
2025-11-12 12:31:34 -07:00
Paul Davis
deafaa904f editor: add actions, methods and menu items to control global quantization 2025-10-31 13:24:35 -06:00
Robin Gareus
4f4a62564a
Update TimeFX settings and dialog for StaffPad inclusion
Also rubberband is required these days and USE_RUBBERBAND
not optional.
2025-10-09 00:02:06 +02:00
Paul Davis
4b28ca2136 move minsec-ruler related code and variables from Editor to EditingContext 2025-09-02 11:03:38 -06:00
Paul Davis
07b20aa60a kbd automation: no popup immediately after add, 2nd Return/Enter for that
Also, two different bindings for adding a point with and without guard points.
2025-08-21 18:56:00 -06:00
Robin Gareus
4b88330c9c
Use main editor for loop-range undo/redo - fix crash
While CueEditor is-a HistoryOwner, session specific
changes such as Location don't belong in EditingContext.

This fixes a heap-use-after-free crash since MementoCommand
was free()ed twice. Once via ARDOUR::Location::~Location
and earlier due to direct Destructible::drop_references
from the History.

This partially reverts 04a8fb1eb6
2025-08-20 21:32:22 +02:00
Robin Gareus
07dc5c0fc0
Remove cruft 2025-08-19 14:04:13 +02:00
Paul Davis
368189c4f6 an initial guess at using the new region-edit-disposition parameter
No editing of the parameter yet
2025-08-18 18:26:10 -06:00
Paul Davis
fa97071872 mamy improvements to kbd-driven automation editing
Really needs a short video to demo/explain
2025-08-12 21:44:50 -06:00
Paul Davis
4f5848d85c action-ify stationary playhead mgmt; fix up follow-playhead action handling 2025-08-08 11:35:20 -06:00
Paul Davis
9c890f2690 zoom focus and snap mode get the stateful-action treatment 2025-07-30 15:28:46 -06:00
Paul Davis
1d4e3940d1 large-scale refactoring of Pianoroll, CueEditor and AudioClipEditor
Enables code-sharing between "clip editors"
2025-07-29 18:16:35 -06:00
Paul Davis
7be70d658b Revert "refactor pianoroll/cueeditor/audioclipeditor to share code and do the right stuff (compile success stage)"
This reverts commit 01beb00a5f.
2025-07-17 22:38:05 -06:00
Paul Davis
01beb00a5f refactor pianoroll/cueeditor/audioclipeditor to share code and do the right stuff (compile success stage) 2025-07-17 22:36:25 -06:00
Paul Davis
74a0272c50 Editor/EditingContext get proxyimplementations of HistoryOwner::add_commands() 2025-07-09 17:01:22 -06:00
Paul Davis
c6a49fdd50 basic implementation of Live-style kbd-driven automation editing 2025-06-17 14:03:43 -06:00
Paul Davis
ea1695dbc0 code refactoring and action name handling to make follow-playhead work in multiple editing contexts 2025-06-15 21:17:42 -06:00
Paul Davis
ac922f1683 remove cruft from initial addition of find-and-display 2025-06-07 23:04:06 -06:00
Paul Davis
4867ed49da add find-and-display-stripable, bound to Primary-Tertiary-l by default 2025-06-07 21:10:30 -06:00
Paul Davis
94dbcaa7e2 provide a new EditingContext/Editor method to set the cursor appropriately for section selections 2025-05-14 11:37:01 -06:00
Paul Davis
8d7b4f7991 fixes so that cursor changes inside a MidiRegionView work as intended
They already worked in the PianorollMidiView, because that hands off enter/leave events
to the parent EditingContext (a Pianoroll). But MidiRegionView and Editor were
not interacting in the same way, so leaving a note object would not cause the Editor
to do the right thing with the cursor.
2025-04-25 11:28:45 -06:00
Paul Davis
15c808c9f4 expand the dialog used for renaming location markers to allow scene editing
This has no visible effect for anything that is not livetrax (for now).
2025-04-07 17:46:01 -06:00
Paul Davis
04a8fb1eb6 add mostly-function play/loop/solo buttons to pianoroll
These need to be hidden when working on cues
2025-03-15 10:56:47 -06:00
Paul Davis
49d9701aaf cleanup a virtual method that is no longer relevant after the prior commit 2025-03-12 21:15:32 -06:00
Paul Davis
252be10a73 fix action group used for Editor/set-mouse-mode-object-range 2025-03-12 21:10:44 -06:00
Paul Davis
83d2adfd67 remove current_editing_context concept
All bindings, actions and members of an EditingContext are now per-EditingContext,
and have no impact on others (other than cursors).
2025-03-12 12:36:34 -06:00
Robin Gareus
f9e78dc128
Resize Videotimelime with DPI 2025-03-07 00:41:07 +01:00
Robin Gareus
7b9e9d7241
Resize rulers when DPI changes 2025-03-06 21:50:05 +01:00
Robin Gareus
b3ee25f812
Set remove-last-capture sensitivity 2025-03-01 23:27:23 +01:00
Robin Gareus
0358cec2fc
Add pianoroll to Editor bottom panel 2025-02-25 16:13:15 +01:00
Robin Gareus
000c25edcc
Update gtkmm -> ytkmm header location (omnibus commit) 2025-02-01 15:25:14 +01:00
Paul Davis
852ad9a7da move grid updating code and members into EditingContext 2025-01-29 17:40:57 -07:00
Paul Davis
ef6502d88d initial refactoring to prepare for grid lines in pianoroll 2025-01-29 17:40:57 -07:00
Robin Gareus
42e82fb590
Move to a two button themed editor sidebar selector 2025-01-28 22:52:00 +01:00
Robin Gareus
7035189346
Use meta-button instead of editor sidebar notebook tabs (again)
This reverts commit a0fd339f64
and db90906c7c.

and replaces it with three meta-buttons
2025-01-28 07:52:35 +01:00
Paul Davis
d8baa0b240 track entry to Editor so we can set the current editing context 2025-01-22 18:20:25 -07:00
Robin Gareus
db90906c7c
Remove notebook tab shrinking
Various tabs on the current editor-sidebar do not allow
shrinking (so that only tabs remain visible).

Double-click shrinking was also never implemented on other
page sidebars, and was not missed by any users there.
2025-01-22 19:18:35 +01:00
Robin Gareus
a0fd339f64
Revert "Use dropdown instead of editor sidebar notebook tabs"
This reverts commit 472fa58afe.
2025-01-22 19:18:35 +01:00
Paul Davis
ab39c26f68 a variety of changes to make timeline-region editing-in-pianoroll to start to work
This also removes the useless "new pianoroll window" menu option and action
2025-01-20 18:05:19 -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
Robin Gareus
3c43628344
Cont'd work on editor rulers (actions and style) 2025-01-10 02:12:02 +01: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
Paul Davis
e206fd5863 share the full zoom button in EditingContexts 2025-01-07 17:11:08 -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
Robin Gareus
472fa58afe
Use dropdown instead of editor sidebar notebook tabs 2025-01-06 22:53:54 +01:00