Commit graph

46 commits

Author SHA1 Message Date
Paul Davis
92267ec7db new scoped tempo maps mean we can use scope macro everywhere, for consistency 2025-08-12 07:54:11 -06:00
Paul Davis
a2c0183cbc temporal: fix up some logic relating to scoped tempo maps (GUI) 2025-08-11 15:41:34 -06:00
Paul Davis
56647acc25 add local tempo scope calls to CueEditor, PianoRoll and AudioClipEditor 2025-08-08 15:03:41 -06:00
Paul Davis
cee0ad349f rename audio clip editor ruler member and fix colors 2025-08-08 12:40:02 -06:00
Paul Davis
ed594c5217 fix order of assembly for audio clip editor 2025-08-08 12:39:45 -06:00
Paul Davis
28e0082868 use std::unique_ptr for a couple of EditingContext members 2025-08-08 12:12:09 -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
d07710e847 remove last of the remnants of "ardour-bindings" strings 2025-03-19 20:19:08 -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
56ce9c33c0 renaming: AutomationLineBase => AutomationLine, AutomationLine => EditorAutomationLine 2024-10-17 07:44:31 -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
86d9bcf525 Remove direct use of audio-engine rate (2/2)
This is in preparation for sample-rate independence.
2023-01-22 20:07:40 +01:00
Paul Davis
b6e0332148 use Item::disable_scroll_translation() for AudioClipEditor scroll bar 2022-01-20 09:46:35 -07:00
Ben Loftis
251263828b trigger_ui: gui for barcnt and meter (AudioTriggers only) 2022-01-17 19:02:06 -06:00
Ben Loftis
6e5cb50f32 trigger_ui: add buttons to display and modify segment_tempo 2022-01-13 23:19:59 -06:00
Paul Davis
a71ab327a3 triggerbox UI: set ruler metric 2021-12-24 15:34:30 -07:00
Paul Davis
c18823c0e0 triggerbox: change entire UI side to avoid using TriggerPtr
Lifetime management of Triggers is unlike anything(?) we've dealt with in
Ardour so far. The parent object (Triggerbox) has a normal lifetime
pattern, but Triggers can come and go in a way that few other objects
do (although Processors and particularly PluginInsert are somewhat similar).
We do not want the GUI to hold references to the actual Triggers, because the
end of life of a Trigger is not really a signal for the GUI element to go
away (the Trigger will be replaced in the slot). Consequently, we do not
want TriggerPtr used as a member variable anywhere in the UI. Instead we use a
TriggerReference which can "lookup" a Trigger on-demand (by box and slot
number). The (G)UI now uses these exclusively.

Work still needed to pick up trigger swap signals from the boxen.
2021-12-24 14:18:10 -07:00
Paul Davis
8e86451685 remove some debug output 2021-12-21 17:58:29 -07:00
Paul Davis
c18d175f55 triggerbox (UI): shared ptrs for everyone, plus indirect references to Triggers from TriggerEntry 2021-12-21 17:40:37 -07:00
Robin Gareus
8fa8e7d814
Resolve yet more ambiguous Rect (fixes macOS build) 2021-12-20 21:22:21 +01:00
Paul Davis
da00c50271 disambiguate Rectangle for win/macOS 2021-12-15 09:38:10 -07:00
Paul Davis
a0db260daa audio clip editor: hide ruler if we do not know the tempo, since we can't draw it under such circumstances 2021-12-13 09:21:06 -07:00
Paul Davis
f5049cda74 audio clip editor: restore ruler removed during merge conflict resolution; incrementally improve its behavior 2021-12-12 22:49:29 -07:00
Robin Gareus
8bb0e18f3f
Fix merge-conflict and clang-format in previous commit 2021-12-12 14:01:46 +01:00
Robin Gareus
efed7343e0
NO-OP: clang-format, cleanup 2021-12-12 13:48:52 +01:00
Paul Davis
c233609c7c audio clip editor: add an incomplete ruler to the display 2021-12-11 21:05:32 -07:00
Paul Davis
3efd26e864 audio clip editor: actual scrolling with the scroll bar
Some issues remain to be solved, related to scroll groups and coordinate offsets
2021-12-10 17:56:10 -07:00
Paul Davis
e61c493fa5 audio clip editor: not-quite-working scrollbar
Something about Canvas::ScrollGroup::scroll_to() is not working quite
as expected ... to be determined
2021-12-10 17:16:47 -07:00
Paul Davis
0e9eef46a0 audio clip editor: lines belong to scroll group 2021-12-10 16:06:39 -07:00
Paul Davis
cb2b78bb41 audio clip editor: add scroll bar handle 2021-12-10 16:04:47 -07:00
Paul Davis
02026c98ff basic skeleton for clip editor bindings 2021-12-10 15:15:56 -07:00
Paul Davis
ef07d47bf8 audio clip editor: use scroll group for waves container 2021-12-10 15:15:16 -07:00
Paul Davis
e3cac796b3 audio clip editor: primitive (left-focus) zoom 2021-12-10 12:50:44 -07:00
Paul Davis
5b4dd8dcf4 audio clip editor: basics of line dragging 2021-12-10 11:59:19 -07:00
Paul Davis
eac0f28642 audio clip editor: change line widths and fix frame color 2021-12-10 11:07:51 -07:00
Paul Davis
56835d342c audio clip editor: basic line drawing 2021-12-10 09:47:56 -07:00
Paul Davis
3bbe54f07a audio clip editor: draw entire source file(s), not just region 2021-12-10 08:54:38 -07:00
Paul Davis
5ada2b7ce1 audio clip editor: draw waveforms (not sized horizonally appropriately yet) 2021-12-09 21:44:23 -07:00
Paul Davis
fbfbdbe266 include size request for audio clip editor 2021-12-09 21:21:05 -07:00
Paul Davis
757debb711 start putting some relevant elements into the AudioClipEditor 2021-12-09 21:12:47 -07:00
Paul Davis
12dc428a60 change class names and heirarchy for the GUI elements that will be used to edit/trim clips 2021-12-09 19:45:25 -07:00
Paul Davis
7426c96812 remove incorrectly added files 2021-12-09 19:41:21 -07:00
Paul Davis
54c71c3d61 skeleton/experiment for audio clip editor 2021-12-06 14:53:04 -07:00