13
0
Commit Graph

396 Commits

Author SHA1 Message Date
85e2c60673 add back click behaviour for canvas rulers, and also cursor enforcement 2014-06-12 16:06:31 -04:00
92bb0e0d7f fix problem with calls to Editor::trackview_by_y_position() when using motion events. The coordinate passed in was in canvas space and the method expected trackview space
To handle any further issues like this, I generalized and added an optional argument specifying that the canvas=>trackview transform is required, thus
centralizing where this done.
2014-06-08 14:41:29 -04:00
ba8d0e32f7 fix crash caused by click-on-region-name if name highlights are not in use - such a click is not a trim operation under those conditions 2014-06-08 11:26:32 -04:00
2aa32ed349 unify Fade-Handle Cursors 2014-06-05 18:58:21 +02:00
e0533e9dd7 more profound changes to canvas scrolling, in particular find appropriate ScrollGroup for Canvas::{window,canvas}_to_{canvas,window}() 2014-06-03 16:13:12 -04:00
dc349514fa remove utterly useless unused code 2014-06-03 16:11:24 -04:00
da7a860256 remove useless groups from timebar area, clarify scroll group naming in editor 2014-06-03 16:11:24 -04:00
5696199daf remove timebar canvas and just use a single canvas instead. This is just part one - lots of minor fixes to be done 2014-06-03 16:10:27 -04:00
6019f06bdf different approach to independent scrolling, involving ArdourCanvas::ScrollGroup
The idea now is that a scroll group item can be added to the canvas which will causes its children to scroll in either or both
directions (horizontal or vertical). There are few complications: the position() of the ScrollGroup is ambiguous depending
on whether you want it with scroll taken into account or not, so Item::canvas_position() was added, which defaults to
the same value as Item::position() but is overridden by ScrollGroup to return the position independent of scrolling. This
method is used when translating between item/canvas/window coordinate systems.

Note that the basic idea is that we MOVE the scroll group when a scroll happens. This mirrors what happens in the GnomeCanvas,
where Nick Mainsbridge came up with a great idea that allowed unification of the time bar and track canvases.
2014-06-03 16:10:27 -04:00
d6b1a9f6e3 prepare fade+trim cursors (cursor image still missing) 2014-05-31 14:04:41 +02:00
bfa58e58c3 fix fade+trim handle hover color 2014-05-31 04:51:02 +02:00
4843c5d5cf towards region-trims preserving fade duration 2014-05-31 03:53:59 +02:00
918a0ac5f9 update x-fade context-menu 2014-05-29 07:49:26 +02:00
0d1d50a8b4 remove pointless assert (since condition is if-tested just before it was used) 2014-04-15 14:30:37 -04:00
dc4eae5c37 hopefully fix issue with Editor::set_canvas_cursor_for_region_view() which was incorrectly switching to trim cursors.
This started happening more frequently after this function started to be called more often (which was the right thing to do, but
had this side effect (now fixed).
2014-04-15 12:44:49 -04:00
9df3157dfc big rework of scrolling, horizontal part considered almost 100% done.
Many more changes than I would typically like in a single commit, but this was all very intertwined.
Vertical scrolling using track-stepping still to follow.
2014-03-20 13:29:45 -04:00
c04081681c remove debug output 2014-03-13 08:43:07 -04:00
95c214c923 fix up button selection operation so that fade drags work again 2014-03-13 08:39:14 -04:00
36160b88cd fixes, hopefully, for canvas cursor misbehaviour near/in regionviews 2014-03-11 22:39:04 -04:00
0ef3fedf9a fix up some logic that allowed hits (percussive note display) to be trimmed with the mouse, which was not intended 2014-03-07 11:22:49 -05:00
7d17db09ac when in smart mode, context-click on a region item should behave as if in object mode.
Specifically, select the region before displaying the context menu
2014-03-06 10:40:31 -05:00
5cbb60d339 fix display of time selection rect(s) when switching mouse modes 2014-02-26 10:50:51 -05:00
c04285addf convert canvas_event_frame() and window_event_frame() to canvas_event_sample() and window_event_sample() to go along with the convention adopted in cairocanvas code re: frames+samples 2014-02-26 08:43:53 -05:00
f5dbbe4ac6 ctrl-click when adding automation points no longer adds guard points 2014-02-25 11:59:02 -05:00
156a5a0e5f add the with-guard-point distinction to region gain lines 2014-02-20 14:01:40 -05:00
6e38ecc158 manually applied equivalent of 1d82f4ca07 in master (git could not apply successfully) 2014-02-19 23:37:46 -05:00
d23c2499bf rationalize, consolidate and make work dbl-click editing for regions and markers, as part of the Drag model rather than discretely 2014-01-27 10:09:58 -05:00
68af0fdc07 fix up visibility control for automation lines 2013-12-31 13:28:20 -05:00
87c29025de just use show() and hide() to manage control point visibility in automation lines
No need for the wierd old set_visible()/property_draw() stuff that was a hangover from gnomecanvas.
2013-12-31 11:55:30 -05:00
9fb3247350 rationalize color handling for fade in/out handles 2013-12-09 22:04:13 -05:00
ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
e7875954ca Edit tempo & meter markers on double-click. 2013-10-25 17:03:45 +01:00
efd2e1776d Double-click on region pops up region properties. 2013-10-25 17:03:45 +01:00
abb05680b4 Make double-click on marker pop up rename dialogue. 2013-10-25 17:03:45 +01:00
89193dc40b Add a double-click handler for items in the editor window. 2013-10-25 17:03:45 +01:00
525cb6b4a7 some sort-of-deep fixes to get autoscroll/vertical scroll to work properly for cairocanvas 2013-07-10 19:10:06 -04:00
479e97dc59 some prep work for generally handling dbl-click on draggable objects 2013-06-21 15:18:54 -04:00
f00b3b7f11 merge with master 2013-06-13 23:00:24 -04:00
50e3e61881 when exiting internal edit mode because of a mouse button press on a non-MIDI region, _join_object_range_state is set to NONE, not OBJECT, which would block selection of the clicked-upon region. fix that, to prevent an assert()-driven crash when the drag ends and there are no regions selected 2013-06-10 18:28:32 -04:00
97ec274512 Make mouse operations on grouped regions apply to pre-existing selection
On clicking on a region that is part of an active edit group with the
'selection' property enabled, its equivalent regions also become selected.
Thus, there's no need to reset the selection to the equivalent
regions when performing mouse drags on the region, and trim/fade in/fade
out/move/copy will always operate on the existing region selection if there
is one.

Fixes #5515.
2013-06-10 18:07:52 +01:00
e2f0c5f91e merge resolution with master 2013-05-02 20:21:54 -04:00
3973ce81b3 remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works 2013-05-02 18:13:35 -04:00
d14f43ccf2 fix operation of right-click on selected MIDI note to bring up the note editor. this is still not really right long term, but it is better than displaying the channel selector 2013-05-02 15:16:56 -04:00
81485faa83 remove CMT code - has not been used for years, and will become irrelevant with VTL and cairocanvas 2013-05-02 12:21:41 -04:00
ec102f94e1 various work waveview amplitude mgmt; fix playhead cursor drag from timebar click 2013-04-17 15:22:09 -04:00
d1a05240ef fix clamping of line and rect coordinates to avoid issues with cairo when drawing way outside a surface's dimensions; move various coordinate methods down to Canvas, because they don't require GTK information; make visible_area() a Canvas virtual method so that we don't have to cast to call it 2013-04-17 10:53:17 -04:00
96eee9e7a1 change UIConfig to use accessor/setter methods like RCConfig so that ParameterChanged methods can actually be emitted; add variable (over a small range) background shading for all TimeAxisViewItems 2013-04-16 23:46:22 -04:00
4e9108cd1e remove TimeAxisView::clip_to_viewport() and Editor::update_canvas_now() and Editor::flush_canvas() which should no longer be necessary with a sane canvas design 2013-04-12 18:01:44 -04:00
e9a82b6714 stop using vertical adjustment to account for scrolling, since event coordinates for all events that are delivered to the canvas are adjusted before Editor sees them 2013-04-12 12:53:52 -04:00
4258a34912 change all frame_to_pixel and pixel_to_frame to sample_to_pixel and pixel_to_sample 2013-04-12 11:15:45 -04:00