Paul Davis
12f081c358
use new TrackingText for verbose cursor
...
Conflicts:
gtk2_ardour/editor_drag.cc
gtk2_ardour/editor_mouse.cc
gtk2_ardour/verbose_cursor.cc
gtk2_ardour/verbose_cursor.h
2014-08-17 19:30:47 -04:00
Paul Davis
2f77f2bc69
removed no-longer-used Editor::track_canvas_motion()
...
Conflicts:
gtk2_ardour/editor.h
2014-08-17 19:27:11 -04:00
Robin Gareus
a17616f1da
move utility functions into a dedicated namespace
...
Conflicts:
gtk2_ardour/about.cc
gtk2_ardour/editor_ops.cc
2014-08-17 18:51:22 -04:00
Paul Davis
437a655026
fix broken manually merge conflict fix from earlier cherry-pick
2014-08-17 18:04:58 -04:00
Paul Davis
3be5f658ea
use newly factored canvas in gtk2_ardour
2014-08-17 17:43:03 -04:00
Paul Davis
157512cce3
fix missed API changes in editor dragging code
2014-08-17 17:39:50 -04:00
Paul Davis
cca9f676a1
modifications to region drag implementation
...
(1) if we're dragging over the drop zone, then x-axis motion is irrelevant for threshold-of-move
(2) store original time axis view of a dragged region so that if we create a new track with the region drag, it can be the same height
2014-08-17 16:26:21 -04:00
Paul Davis
2e8f7c5c93
a set of inter-related subtle changes to get vertical autoscrolling to work, or at least work better.
2014-08-17 15:33:01 -04:00
Paul Davis
41526eec44
do most of the work related to adding new anchored trim cursors (but debugging/analysis continues)
2014-08-17 15:25:36 -04:00
Paul Davis
c5d29d59b5
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.
Conflicts:
gtk2_ardour/time_axis_view_item.cc
2014-08-17 15:23:31 -04:00
Paul Davis
d89dd8e73a
remove ambiguous use of Rect (on OS X)
2014-08-17 15:03:17 -04:00
Paul Davis
72d9c38702
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
Conflicts:
gtk2_ardour/region_view.cc
gtk2_ardour/time_axis_view_item.cc
2014-08-17 15:02:28 -04:00
Paul Davis
0ca808f222
allow a drag down over the drop zone to be "reversed" and the region moved back up into existing tracks
2014-08-17 15:00:17 -04:00
Paul Davis
678b836853
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-08-17 14:56:20 -04:00
Paul Davis
31834ac9b3
fix position where rubberband rect is drawn
2014-08-17 14:50:42 -04:00
Paul Davis
cb9c651639
fix up drawing and selection process for range selections (caused by subtle change in semantics of TimeAxisView::covered_by_y_range())
2014-08-17 14:50:04 -04:00
Paul Davis
c64fcd2fc6
remove needlessly-added method
2014-08-17 14:49:52 -04:00
Paul Davis
983cbeba6f
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-08-17 14:49:44 -04:00
Paul Davis
dd2ada892a
remove reference to region_motion_group, which no longer exists.
...
Not sure why git cherry-pick left this in place
2014-08-17 14:18:43 -04:00
Paul Davis
fdbb93ea3c
merge onecanvas and cairocanvas branches, and manually resolve conflicts, including rounding in item_to_window() methods
2014-08-17 13:44:57 -04:00
Paul Davis
e8e3460665
more profound changes to canvas scrolling, in particular find appropriate ScrollGroup for Canvas::{window,canvas}_to_{canvas,window}()
...
Conflicts:
gtk2_ardour/editor_mouse.cc
2014-08-17 13:43:52 -04:00
Paul Davis
893452b388
remove timebar canvas and just use a single canvas instead. This is just part one - lots of minor fixes to be done
...
Conflicts:
gtk2_ardour/editor.cc
2014-08-17 13:38:30 -04:00
Paul Davis
ff09ef3f60
remove incorrect calls to Editor::maybe_autoscroll() from specific Drag classes (autoscroll is handled by the Drag manager)
2014-08-17 13:37:40 -04:00
Paul Davis
ce63f22d80
comment tweak
2014-08-17 13:32:47 -04:00
Paul Davis
a69f7a9282
adding a new track via copy-region-drag now works (and shares code with the non-copy case
...
Conflicts:
gtk2_ardour/editor_drag.cc
2014-08-17 13:32:39 -04:00
Paul Davis
4078063b00
non-copy region drag now creates a new track when a region is dragged to the drop zone
2014-08-16 21:48:25 -04:00
Paul Davis
56762ecf3e
part one of allowing region drag to the bottom (drop-zone) rect of track canvas
2014-08-16 21:48:12 -04:00
Robin Gareus
1c17431aa6
disable snap fades to 'other' region (for now)
2014-08-16 17:59:50 -04:00
Robin Gareus
40ffd0600b
towards region-trims preserving fade duration
2014-08-16 17:58:34 -04:00
Paul Davis
12ce4dee36
comment tweak
2014-08-16 16:56:42 -04:00
Paul Davis
82c208b3e5
adding a new track via copy-region-drag now works (and shares code with the non-copy case
2014-08-16 16:56:37 -04:00
Paul Davis
6b1eaf1388
non-copy region drag now creates a new track when a region is dragged to the drop zone
2014-08-16 16:56:32 -04:00
Paul Davis
c6ac38d41e
part one of allowing region drag to the bottom (drop-zone) rect of track canvas
2014-08-16 16:54:52 -04:00
Colin Fletcher
338ff210f9
Ripple mode: tidy up
...
Remove a load of debug output and dead code.
Move implementation of RegionRippleDrag::y_movement_allowed() out of
header into .cc file.
2014-08-16 16:36:08 -04:00
Colin Fletcher
80f04cc298
Ripple mode: basic implementation
...
Add a value for Ripple to EditMode enum.
Add Ripple edit mode to edit mode dropdown, by adding it to the
Editor::build_edit_mode_menu() helper function, and remove the old code that
added items to the (now unused) Editor::edit_mode_strings.
Add the regions that should be affected by the drag to RegionDrag::_views so
that the drag carries them along automatically.
Use a copy of the RegionList in Playlist::core_ripple(), since bad things
happen when iterating over regions and they get moved around in the list.
Handle rippling in removal of regions from playlist.
When dragging in ripple mode, exclude all regions that lie before the
original start position of the selected regions being dragged from
rippling: this is what Mixbus does.
Make editor dragging respect snap-to settings, by using the existing
compute_x_delta() function, which did almost the right thing. Move setting
of _last_frame_position out of that function so all ripple-dragged regions
can move.
Ripple when dragging from region list: even though Mixbus doesn't do this, it
seems like a good idea.
Prevent multi-track selection being dragged across tracks, by making
RegionMotionDrag::y_movement_allowed() virtual, and overriding it in
RegionRippleDrag to forbid dragging of selections containing regions on more
than one track to dofferent tracks in ripple mode.
Remember which TimeAxisView a ripple-mode drag that's allowed cross-track
drags started from, so that the effect of rippling regions after any region
that's dragged off that track can be undone.
2014-08-16 16:36:03 -04:00
Colin Fletcher
597b27a222
Splice mode: fix comment typo
2014-08-16 16:35:56 -04:00
Colin Fletcher
a7af42716f
Fix region content drag direction
...
Fix <Control>+drag in bottom of region to move the region contents in the
expected direction.
2014-08-16 16:35:40 -04:00
Colin Fletcher
fca8443d4b
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-08-16 16:35:34 -04:00
Paul Davis
83a6d2a4dc
shift-modifier during trim dragging causes region to jump to original position (anchored at start or end, depending on trim type)
2014-08-16 16:35:28 -04:00
Grygorii Zharun
ce2a519afa
[Summary] Merging from GIT
...
[Details] Starting point:
Mar 24 2014, 11:47 PM
Commit: 87184ab80d
Target point:
Commit: 59e6694405
Apr 16 2014, 4:01 PM
[git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 453690]
2014-04-18 04:21:54 -05:00
Valeriy Kamyshniy
704c6e2c0a
[P4/git history rebuild] further changes related to this codebase missing Ardour canvas autoscroll commits. Hopefully to be undone later by commits from a merge by Paul and Grygorii
2014-05-27 21:19:17 -04:00
Paul Davis
4f7d94ea67
latest tweaks to autoscroll: symmetrical boundary on both sides, stop runaway scrolling, and more
2014-03-21 09:49:35 -04:00
Paul Davis
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
Paul Davis
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
Paul Davis
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
Paul Davis
0c283ba657
fix lack of range selection when moving vertically
2014-02-26 08:24:41 -05:00
Paul Davis
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
Paul Davis
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
Paul Davis
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
Paul Davis
a13511e901
required fix for cairocanvas branch, didn't make it into merge
2014-02-19 23:25:24 -05:00