Commit Graph

380 Commits

Author SHA1 Message Date
c30bda5173 a set of inter-related subtle changes to get vertical autoscrolling to work, or at least work better. 2014-06-17 08:08:14 -04:00
f7844f4893 do most of the work related to adding new anchored trim cursors (but debugging/analysis continues) 2014-06-13 18:43:53 -04:00
50fea864db rationalize and coordinate handle of region (time axis view item) opacity.
There are still some bugs with this because of the waveview image cache - fixes coming soon.
2014-06-13 12:22:39 -04:00
eca6c9f998 remove ambiguous use of Rect (on OS X) 2014-06-10 11:00:15 -04:00
ce08ec0de0 substantial changes in color management, involving a reduction in the use of Gdk::Color and more consistent logic for region coloring.
Group tabs now also get the text drawn in an appropriately contrast-y color
2014-06-09 23:29:00 -04:00
9933a80dd4 allow a drag down over the drop zone to be "reversed" and the region moved back up into existing tracks 2014-06-09 10:55:37 -04:00
8487314069 introduce Drag::_trackview_only which indicates that all y-axis positions for the pointer during a drag should be relative to the top of the trackview group.
More or less all drags except for Cursor (playhead) and drags in the range marker bars have this true (which is the default value)
2014-06-08 11:26:32 -04:00
5285bb587f fix position where rubberband rect is drawn 2014-06-06 08:33:13 -04:00
eec24b6287 fix up drawing and selection process for range selections (caused by subtle change in semantics of TimeAxisView::covered_by_y_range()) 2014-06-05 17:06:36 -04:00
64701f3955 remove needlessly-added method 2014-06-05 15:22:26 -04:00
ad346dc638 reinstate a canvas group where we reparent regions while dragging, so that they are always on top.
I mistakenly removed this during the onecanvas changes.
2014-06-05 15:16:55 -04:00
8fa81c1436 merge onecanvas and cairocanvas branches, and manually resolve conflicts, including rounding in item_to_window() methods 2014-06-03 16:37:53 -04: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
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
a551181842 remove incorrect calls to Editor::maybe_autoscroll() from specific Drag classes (autoscroll is handled by the Drag manager) 2014-06-03 16:10:27 -04:00
ee6c483d18 non-copy region drag now creates a new track when a region is dragged to the drop zone 2014-06-03 16:07:05 -04:00
7e36d4c9bb part one of allowing region drag to the bottom (drop-zone) rect of track canvas 2014-06-03 16:06:41 -04:00
ea3918ba2d disable snap fades to 'other' region (for now) 2014-06-01 00:40:07 +02:00
4843c5d5cf towards region-trims preserving fade duration 2014-05-31 03:53:59 +02:00
1e907cedc5 comment tweak 2014-05-19 14:00:36 -04:00
8fd69776ea adding a new track via copy-region-drag now works (and shares code with the non-copy case 2014-05-19 14:00:36 -04:00
00c7abe926 non-copy region drag now creates a new track when a region is dragged to the drop zone 2014-05-19 14:00:36 -04:00
a8c56ff927 part one of allowing region drag to the bottom (drop-zone) rect of track canvas 2014-05-19 14:00:36 -04:00
349f66f413 Fix region content drag direction
Fix <Control>+drag in bottom of region to move the region contents in the
expected direction.
2014-05-07 19:38:22 +01:00
9a35f73b9e Fix undo of layer-changing region drags
Move clear_changes() of the playlist on which a region has been dragged
before calling set_layer() on that playlist, so that undo of region drags
in layered mode undoes any layer changes too.

Should fix #5904
2014-05-07 19:38:07 +01:00
56af57d682 shift-modifier during trim dragging causes region to jump to original position (anchored at start or end, depending on trim type) 2014-05-07 12:13:34 -04:00
4f7d94ea67 latest tweaks to autoscroll: symmetrical boundary on both sides, stop runaway scrolling, and more 2014-03-21 09:49:35 -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
279aefc60e fix error in height computation of MIDI region views (FUDGE!) use Rectangle::set_outline_all() and avoid the removed integer version of ::set_outline_what() 2014-03-11 07:39:25 -04: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
0c283ba657 fix lack of range selection when moving vertically 2014-02-26 08:24:41 -05:00
15c13f1369 range selection drag ensures that selected tracks include all tracks within the vertical height spanned by the drag.
Older code looked at the track under the motion event coordinates. With rapid mouse motion, tracks could be "skipped" - no motion event
would be reported within their vertical coordinate range.
2014-02-25 21:55:25 -05:00
61ab5e8967 click (no drag) on automation line now adds a new control point on the line (not fully checked for precision) 2014-02-25 12:01:13 -05:00
46e86f6694 Revert "add a hack to deal with device discovery race, in which the devices were not actually known to be ready before the last update_surfaces() call (which is where binding between strips and routes occurs) ; add support for Mackie Control touch on/off messages"
This reverts commit 06a25ffd5695697db9869a19e46c2f93c6c17458.
2014-02-25 12:00:53 -05:00
a13511e901 required fix for cairocanvas branch, didn't make it into merge 2014-02-19 23:25:24 -05:00
5cf4a32da9 click (no drag) on automation line now adds a new control point on the line (not fully checked for precision) 2014-02-19 23:25:24 -05:00
06e3b7da5d Revert "add a hack to deal with device discovery race, in which the devices were not actually known to be ready before the last update_surfaces() call (which is where binding between strips and routes occurs) ; add support for Mackie Control touch on/off messages"
This reverts commit 06a25ffd5695697db9869a19e46c2f93c6c17458.
2014-02-19 23:25:24 -05:00
58a8d50bdc add a hack to deal with device discovery race, in which the devices were not actually known to be ready before the last update_surfaces() call (which is where binding between strips and routes occurs) ; add support for Mackie Control touch on/off messages 2014-02-19 23:25:24 -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
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
b1d1473ddf change min dimension of rubberband rect to 2 pixels 2014-01-02 09:53:53 -05:00
c460bf527e enforce a minimum 5x5 pixel size for the rubber band rect 2014-01-02 09:44:15 -05:00
85daa31ab5 all events propagate out of the canvas in canvas coordinates now, so revert changes in editor_drags.cc that worked around this not being the case 2013-10-31 16:43:35 -04:00
b80ae88154 fix window/canvas coordinate confusion in drag code, apparently fixing up lots of things with just 1 line 2013-10-31 12:41:02 -04:00
664e715a00 merge from master 2013-10-22 15:29:44 -04:00
nick_m
5b62e88fbf Unify editor / mixer ordering. 2013-10-21 00:19:43 +11:00
f8574fc39d 'gtk2_ardour' - Add namespaces + casting where necessary + general bits of 'correctness' to keep MSVC happy 2013-10-03 09:06:56 +01:00
7a30e63eaa fix merge conflicts with master 2013-09-14 16:42:40 -04:00
111d35c9c7 add methods to queue full MTC and SPP messages, now that they are synchronous 2013-08-08 19:31:10 -04:00
badb902bc0 fix rounding issue when dragging video with fractional fps 2013-08-08 15:26:41 -04:00