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
1a48787361
when setting up a fake event for using in Editor::drop_regions(), use BUTTON_PRESS not MOTION_NOTIFY
...
It is not legal to start drags from anything except BUTTON_PRESS
2025-04-07 08:19:08 -06:00
Paul Davis
f1e9a8027a
Revert "Fix mouse-cursor when moving mouse over region handles"
...
This was not the correct fix for this (see b24db7cbf5 )
This reverts commit 866caab719 .
2025-03-04 14:58:00 -07:00
Paul Davis
b24db7cbf5
fix canvas cursor handling in MidiRegionViews
2025-03-04 14:57:50 -07:00
Robin Gareus
866caab719
Fix mouse-cursor when moving mouse over region handles
2025-03-04 21:14:05 +01:00
Robin Gareus
ff95d81612
Reduce reliance on boost - the easy part
...
* boost::unordered_map -> std::unordered_map
* BOOST_STATIC_ASSERT/static_assert
* BOOST_FOREACH -> for
* boost::tuple -> std::tuple/g
* boost::math::isnormal -> std::isnormal
* boost::container::set -> std::set
* boost::none -> std::nullopt
* boost::optional -> std::optional
2024-10-19 03:41:16 +02:00
Paul Davis
56ce9c33c0
renaming: AutomationLineBase => AutomationLine, AutomationLine => EditorAutomationLine
2024-10-17 07:44:31 -06:00
Paul Davis
54fdf90cc2
lots of detailed fixes to get lollipops in tracks working again, post re-factor
2024-10-17 07:44:31 -06:00
Paul Davis
fa79645c19
move most of AutomationLine into AutomatonLineBase, a class not strongly tied to the editor
2024-10-17 07:44:31 -06:00
Paul Davis
a2f04a3104
virtualize event handling methods for 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
2d5884ccb1
refactor methods to add a location/section marker so that there is only one method for this
2024-05-21 08:21:02 -06:00
Robin Gareus
b2d4280e0f
Add support for Region Fx Automation
2024-04-23 21:56:22 +02:00
Paul Davis
945ce377aa
tempo mapping (like all other drags) must use button1 only
...
Without this, Editor::button_release_handler() will handle a button3 press
without checking for an active drag, resulting in two drags, and two reversible
commands, and an abort ...
2023-10-03 16:00:35 -06:00
Robin Gareus
ed60ef40b0
Fix arrangement rectangle prelight
...
This follows the general rule to lighten a widget on hover
(like ArdourButton, Triggermaster etc)
2023-09-25 18:55:04 +02:00
Robin Gareus
cc0c00f807
Snap cursor for section_rect ctx menu, just like popup_ruler_menu
2023-09-15 14:49:33 +02:00
Ben Loftis
94b7ed8d4c
partially revert 218fb. TODO: menu actions need to operate on the clicked section
2023-09-12 08:40:07 -05:00
Robin Gareus
218fbda6e7
Arrangement Ruler: overhaul context menu, do not select on RMB
2023-09-12 05:39:02 +02:00
Ben Loftis
e81b2353cc
Indicate arrangement section selection on canvas
2023-09-08 03:26:00 +02:00
Robin Gareus
019a3a1976
Allow to select Arrangement sections
...
This also adds interaction with sections in the
Arrangement Ruler.
Note that selecting a range switches to the Range tool.
This is enforced because time-range selection is only meaningful
with tools that perform edit operations on the whole timeline.
2023-09-08 03:25:59 +02:00
Ben Loftis
268d1d33c7
Add invisible Rectangle to initiates Tempo(grid) drags
2023-09-06 19:14:14 +02:00
Paul Davis
df52c39ce0
freehand line drawing: automation & velocity share the same basic code
2023-07-14 13:03:26 -06:00
Paul Davis
a14c534d16
dragging: add possibility of handling key events mid-drag
...
Currently only called from a canvas automation track event handler.
2023-07-10 12:21:27 -06:00
Paul Davis
294de8d64f
no automation line event stuff for velocity tracks (for now)
2023-06-27 09:42:14 -06:00
Paul Davis
cf7ba80fc1
the basics of lollipop dragging
2023-06-26 14:18:18 -06:00
Paul Davis
60628a62be
somewhat active lollipop event handling
2023-06-26 14:18:17 -06:00
Robin Gareus
1ee2675716
Implement Selection Marker class and events
2023-05-17 01:50:51 +02:00
Paul Davis
518fc7754f
tempo mapping: half-way towards working drags again
...
For some reason, mid-drag changes are not visible
2023-04-09 14:36:03 -06:00
Paul Davis
786f71f7f1
fix GUI enum registration so that UIConfiguration can load with variables that use some of them
2023-04-08 13:58:25 -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
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
2b64c4afe4
Allow to move edit-cursor and PH in dropzone ( #9222 )
2023-02-07 02:14:38 +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
Paul Davis
69ee83e6ce
require explicit time domain for most region-centric drags
...
This removed one #warning nutempo line.
2022-05-27 15:57:14 -06:00
luz paz
364f2f0788
Fix typos in gtk2_ardour/ directory
...
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sur,te,trough,ue`
2022-01-26 12:35:38 -05:00
Ben Loftis
b3f524a78a
Ruler markers: less drastic highlights in ruler bars
2022-01-21 19:25:33 -06:00
Ben Loftis
d50e854b05
Rulers: restore theme-ing of ruler bars (reverts much of 60cb)
2022-01-21 11:30:14 -06:00
Ben Loftis
60cbe57a6e
Marker Rulers: changes to match mini-timeline aesthetic
...
Highlight ruler lanes when you enter, instead of showing many lines
2022-01-20 18:59:21 -06:00
Robin Gareus
50bccb44d5
Add static meta-data for x-ardour/region.pbdid DnD
...
During drag-motion callbacks the data to be dragged is n/a.
However we like to discriminate if drop is possible.
When dragging regions, the data-type of the region to be dragged
is unknown, so different `x-ardour/region` targets are not an
option, either.
Until a better option is presented, a static global is used
to set the data-type for region.pbdid drags.
2022-01-19 17:13:51 +01:00
Robin Gareus
0204ea1f24
Unify Region Drag/Drop
...
Identify Regions using PDB::ID. This allows dragging regions
from almost anywhere to anywhere, without special cases.
2022-01-19 17:13:51 +01:00
Robin Gareus
056189c76c
Clean up DnD, use MIME-types
...
This is in preparation for allowing to drag trigger-regions
or trigger-slots. Those will not use a static singleton
PublicEditor API.
Additionally this constrains Ardour-internal drags to Ardour
(via Gtk::TARGET_SAME_APP).
2022-01-10 21:29:29 +01:00
Paul Davis
b1f73d25bf
actual GUI interaction for cue marker ruler
2022-01-04 15:23:51 -07:00
Paul Davis
77d83540b1
copy-n-paste addition of cue marker ruler (based on cd marker ruler)
2022-01-04 15:23:51 -07:00
Paul Davis
139a051b18
remove default args to Session::new_midi_track() (gui edition)
2021-08-13 12:51:36 -06:00
Paul Davis
4f1ad4ed0d
start adding new BBT marker support
2021-08-13 12:51:34 -06:00
Paul Davis
2a08e4bdaa
continued work on timeline types conversion. in theory, just editor_ops.cc remains
2021-08-13 12:51:29 -06:00
Paul Davis
04e8dbb342
another day of slow timeline type conversion
2021-08-13 12:51:29 -06:00
Robin Gareus
5c579ed52d
Remove unused #include<> (1/2)
...
PBD::stacktrace() is not used nor needed by default.
It should be used sparingly.
2021-05-05 17:43:28 +02:00
Robin Gareus
fddecc11ec
Remove unrelated enum cases (-Wenum-compare-switch)
2021-03-17 17:44:11 +01:00