summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_drag.h
AgeCommit message (Collapse)Author
2015-09-08Allow to override A/V-lock (when moving audio)Robin Gareus
2015-08-20fix "locked" + "locked to video" bug.Robin Gareus
previously if some audio region was locked and locked to video, the audio-region always stayed put and the video could only be moved forward. TODO: add an "unlock all" option.
2015-07-23rename Marker classRobin Gareus
Classes are in the global namespace. OSX has a flat namespace and OSX32bit/Carbon has a Marker too.
2015-07-16merge fixBen Loftis
2015-06-29make editor_drag.h fully self-contained as a header file (it was missing ↵Paul Davis
more than a dozen necessary fwd decls etc) Conflicts: gtk2_ardour/editor_drag.h
2015-06-18Rework last commit, clicking on an automation line no longer adds history.nick_m
- fixes a crash when clicking on automation lines repeatedly.
2015-06-18Don't add history by clicking a control point, fix control point selection.nick_m
- also make set_selected_control_point_from_click () return something useful.
2015-05-24Fix bug where inserting notes in MouseContent mode disallowed resizing.nick_m
2015-05-23Fix inverted logic of SnapOff with snap modifiers pressed.nick_m
- also clean up, rename and comment some previous hanges.
2015-05-22Small cleanupnick_m
2015-05-22Clean up a bit - should be a no-opnick_m
2015-05-21Allow all drag -related modifiers to be set, re-instate "jump after trim"nick_m
- Copy modifier still doesn't save - Testers please edit the Extra section of ~/.ardourN/config to allow defaults to "take" - Note that the current defaults overlap. - warning - absolute snap modifier has no default and will be always "on" unless you set it!
2015-05-18Clean up drag modifiers.nick_m
Button 2 drag now is constrained to initial move axis, removing all modifiers from this op. Remove Jump after trim mode. TrimDrag now has: Primary for trim anchored to fade. Secondary for contents trim (as before) Primary & Tertiary for "non overlap" trim All drags have Tertiary for relative snap
2015-05-17Relative Snap -make it activated by the tertiary modifier during drag.nick_m
Disabled/enabled with the shift key. no config stuff at all now. Move existing (strange) trim feature to primary + tertiary modifiers.
2015-05-17Relative snap - support magnetic mode (hackishly for now)nick_m
2015-05-17Cleanup relative snap code.nick_m
2015-05-16Relative snapnick_m
2015-03-26Heuraka! Nightmarish rework of DnD code.Robin Gareus
Allow to drag multiple regions from different tracks to/from the dropzone. Busses & Automation-lanes are ignored, as are hidden tracks. Any region may serve as mouse drag anchor. fixes #6172 and #6176
2015-03-25remove crufty variableBen Loftis
2015-03-25DnD, only use track relationshipRobin Gareus
Ignore any routes or automation lanes during region y-axis distance calculation.
2015-03-25Major rework of DnD.Robin Gareus
Allow dragging multiple regions from multiple tracks across any number of hidden tracks and automation lanes. fixes #6176 and #6172
2015-02-13fix up recent cherry-picks from waves' tracksPaul Davis
2015-02-13implement axis-limited draggingPaul Davis
2015-02-13detect if drags appear to be vertical or horizontal as we cross the move ↵Paul Davis
threshold Conflicts: gtk2_ardour/editor_drag.cc gtk2_ardour/editor_drag.h
2015-02-05implement RangeMarkerBarDrag::abortPaul Davis
Conflicts: gtk2_ardour/editor_drag.cc
2015-01-24make MouseCursors invalid cursor API be static; use to initialize default ↵Paul Davis
cursor value in Drag API; use C API to set canvas cursor
2015-01-23fix indentation from prior commitPaul Davis
2015-01-23[Summary] Fixed bug 45163: Trim range from right corner of timeline leads ↵GZharun
Tracks to crash [Details] Crash was provoked because of an attempt to add commands to the session reversible command, but when autoscroll started and trim began with autoscroll the session reversible command was not created for for Trim Drag.
2015-01-13Fix automation range drag and implement for MIDI.David Robillard
Range select rect sticks around now after switching to the draw tool, but disappears if a note selection is made. Not sure if draw is really the most appropriate tool here (particularly if we ever implement actual pencil-like drawing); edit contents seems more appropriate but that would probably cause more selection issues, so here we are.
2014-12-20Fix various cursor problems.David Robillard
Add a new scoped cursor system that makes it much harder to screw up and end up with stick cursors and so on.
2014-12-07Unify gain and draw tools.David Robillard
There might be a few special cases lingering around from attempts at magic tool business, but this seems to work fine as far as I can tell.
2014-11-25Remove dead code.David Robillard
2014-11-24when dragging on the canvas, use x,y pointer coordinates to decide if motion ↵Paul Davis
has occured. Using _last_pointer_frame breaks when dragging to the left of the canvas, because we clamp the value of the frame to >= 0. Motion would step once the pointer crossed the left edge of the canvas because the frame value would always be zero. This is not a problem when using the pointer x,y values which end up appropriately negative under all conditions.
2014-09-17new code to support creating skip markersPaul Davis
2014-07-07some code shuffling to make sure that cut mode always operates at the mouse ↵Paul Davis
location, with (maybe) the right regions
2014-07-07use an EditorCursor when dragging in cut mode to indicate cut positionPaul Davis
2014-07-07add functionality for cut toolPaul Davis
2014-07-01Merge branch 'ripple-mode-cc' into cairocanvasColin Fletcher
Fix up merge conflicts in gtk2_ardour/editor_mouse.cc gtk2_ardour/editor_ops.cc Also fix up compile errors.
2014-07-01Fixes for ripple mode dragColin Fletcher
Make undo of ripple mode dragging work a bit better, and hopefully prevent rippled regions from jumping about when being dragged.
2014-06-19modifications to region drag implementationPaul Davis
(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-06-17a set of inter-related subtle changes to get vertical autoscrolling to work, ↵Paul Davis
or at least work better.
2014-06-08introduce Drag::_trackview_only which indicates that all y-axis positions ↵Paul Davis
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-01disable snap fades to 'other' region (for now)Robin Gareus
2014-05-31towards region-trims preserving fade durationRobin Gareus
2014-05-19adding a new track via copy-region-drag now works (and shares code with the ↵Paul Davis
non-copy case
2014-05-07Ripple mode: tidy upColin Fletcher
Remove a load of debug output and dead code. Move implementation of RegionRippleDrag::y_movement_allowed() out of header into .cc file.
2014-05-07Ripple mode: basic implementationColin Fletcher
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-05-07shift-modifier during trim dragging causes region to jump to original ↵Paul Davis
position (anchored at start or end, depending on trim type)
2013-07-10some sort-of-deep fixes to get autoscroll/vertical scroll to work properly ↵Paul Davis
for cairocanvas
2013-06-21some prep work for generally handling dbl-click on draggable objectsPaul Davis