Commit Graph

1330 Commits

Author SHA1 Message Date
Robin Gareus 9c984fc2ad
Add dedicated Section Ruler and UI for section boundary markers 2023-08-26 14:09:53 +02:00
Paul Davis 3b9c63fbac editor: add additional parameter to ::snap_to_with_modifier()
Allows passing ensure_snap value through to ::snap_to_internal
2023-08-19 13:39:27 -06:00
Albert Graef b354f41fc2 Fix compile error introduced in rev. 7c029f5f. 2023-08-17 17:17:41 +02:00
Paul Davis 7c029f5f6a next iteration of changes to handle time domain bounces as undoable (GUI) 2023-08-14 23:42:08 -06:00
Paul Davis 9461911a86 editor uses the session default time domain as its default time domain 2023-08-02 15:23:42 -06:00
darless e28eaa843d Fix #8857: Remove snap from decision making about number of divisions 2023-07-25 08:51:35 -06:00
Paul Davis 460266de13 NOOP: whitespace fix 2023-07-15 11:08:45 -06:00
Paul Davis ed869da97e reserve space for tempo map grid (GUI side) 2023-07-14 13:03:36 -06:00
Paul Davis 2797ea9666 remove unusued "MIDI underlay" cruft 2023-06-26 14:18:17 -06:00
Robin Gareus b55575d7c6
Hide snapped cursor when changing edit-point (#7966) 2023-06-17 23:49:42 +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 04d50ab880
Fix mouse edit-point cursor when dragging
Editor::motion_handler() only updates the snap-cursor
when no drags are active. While dragging, Drag::motion is
responsible to set the cursor accordingly.

In many cases the snap-cursor simply remained stuck at
the most recent position. Since in many cases
(e.g. RubberbandSelectDrag) it makes no sense to show the
cursor, so Drag::start_grab now hides the cursor by default.

This also fixes cases where the cursor is shown, but
was displayed in the wrong location.
2023-06-07 02:38:39 +02:00
Robin Gareus 8794145c9d
Centralize setting undo/redo action sensitivity
This fixes undo/redo action sensitivity for non-editor
history stack changes.

Notably recording was not undoable, because the butler
thread creates the reversible "capture" command.
2023-06-02 18:11:53 +02:00
Robin Gareus c063be6a76
Implement Editor::abort_reversible_selection_op 2023-06-01 21:37:37 +02:00
Robin Gareus 3ef5b0881f
Expose Cut/Copy Section in Edit Menu
Also remove it from the context menu, since it fails
with edit-point = Mouse.
2023-05-18 03:45:14 +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
Ben Loftis dd08d12475 desensitize playhead by default, and make a new config variable 'sensitize-playhead'
Historically, it was possible to grab the 1-pix-wide red line, and drag the playhead
In rare but annoying cases, the red playhead interferes with mouse clicks, because it is on top
De-sensitize the playhead by default, and provide a new config var for those who want the old operation
2023-05-01 08:49:27 -05:00
Robin Gareus 3fe1fc77a9
Do not snap to rolling playhead 2023-04-29 01:04:34 +02:00
Robin Gareus d82ece39e1
Add Editor preference to snap to playhead position. 2023-04-29 00:40:06 +02:00
Paul Davis 78216b422f add new Playhead snap mode 2023-04-28 15:57:42 -06:00
Paul Davis 65c81feb5e fix consistency and accuracy of tempo edit behavior setting 2023-04-22 11:12:21 -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
Paul Davis 8fbf2c3f52 add enum and member var for controlling what kind of tempo editing we are doing
note: this was much harder than it ought to be
2023-04-08 11:44:21 -06:00
Robin Gareus a0286f2e6f Expose cut-copy-section in the editor
This is still a bit of an experiment, there may need to be a dedicated
ruler for sections, or a side-bar that allows arranging.
2023-03-31 23:13:20 +02:00
Robin Gareus 91c0f143ec Set sensitvity of "Insert Selected Region" 2023-03-31 22:06:41 +02:00
Paul Davis ece438d73d editor: refactor snap to bbt to allow specifying non-grid-setting grid type 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
Paul Davis 2c7bfa9ead require use of BBT_Argument as both parameter and return type from most methods (GUI edition) 2023-02-15 16:02:56 -07: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
Robin Gareus 1ff5592731
Remove UI side grid limit
This concept from 2007 is no longer required Temporal::get_grid
already limits the number of grid-lines depending on the step
size (mod-bar, beat_div) and start/end positions.
2023-01-11 00:32:47 +01:00
Paul Davis ed7e0a4166 snap: add missing break statements. oops! 2022-12-20 21:54:35 -07:00
Paul Davis 509d762cdd editor: fix snap_to_bbt() to do something closer to right for bars
At the very least, snapping to bars should be different from snapping to beats.
2022-12-19 12:19:05 -07:00
Paul Davis f37687a985 various fixes for AudioClock duration/!duration confusion 2022-12-06 11:11:08 -07:00
Paul Davis f2a725b311 NO-OP: add some explanatory comments to Editor::snap_to_bbt() 2022-11-29 10:09:39 -07:00
David Robillard bdacfb8724 Fix invalid use of Doxygen "@param" command
This is never for inline references to parameters, only for starting parameter
documentation blocks.  The "@p" command is for this, although unfortunately
Doxygen doesn't actually do anything with it and it's just an alias for code
text.
2022-10-30 20:44:28 -04:00
Robin Gareus 3a98d6133c
Hide draw-tools spacer when draw-tools are hidden 2022-10-18 02:11:09 +02:00
Robin Gareus 452eedc994
Pixelpushing: align toolbar buttons
Removing the shadow makes toolbar and editor-tool buttons align
when the editor-mixer is hidden. It also improves consistency
with all other tabs that have no shadow on the left.

Increasing the table border width to 1, makes aligns the
editor-mixer button with the main toolbar.
2022-10-18 01:45:55 +02:00
Robin Gareus 7c6c6290ee
Fix #8996 (show/hide VCAs from script) 2022-10-18 00:08:36 +02:00
Robin Gareus 0f6a2f7320 Remove unneeded scope 2022-10-01 19:01:49 +02:00
Robin Gareus 0b70550b42 Fix width of draw-grid dropdown menu 2022-10-01 19:01:30 +02:00
Robin Gareus 751de3889e Fox grid dropdown menu width
Take submenu items into account, which have strings longer than
GridTypeBeatDiv32 text
2022-10-01 18:53:45 +02:00
Robin Gareus 891b561cad Cleanup: use dedicated method to build draw menu 2022-10-01 18:03:03 +02:00
Paul Davis 91df1d8e94 NO-OP: fix switch statement indentation 2022-09-22 16:10:34 -06:00
Paul Davis 9c64771636 remove some debug output 2022-09-21 10:17:13 -06:00
Robin Gareus 2a42743270
Fix ArdourDropdown sizes 2022-09-20 03:33:01 +02:00
Robin Gareus 888d91d599 Add action to locate to loop start/end 2022-09-07 19:15:36 +02:00
Paul Davis fc6ad8ebd9 bbt markers: all the basics of dragging, editing, removing 2022-08-17 16:40:35 -06:00
Robin Gareus 67f55d7b4e
EditorSnapshots does not benefit by inheriting from EditorComponent 2022-08-05 00:14:12 +02:00