summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_drag.h
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2016-11-21 04:20:27 +1100
committernick_m <mainsbridge@gmail.com>2016-11-21 04:20:27 +1100
commiteef18c47fd5d4851ef8acfd11c9c70d1ce7b8998 (patch)
tree0466d2bc53c306cc654788baa3815c217bee083b /gtk2_ardour/editor_drag.h
parent71c0c872b76f669e4cc598a7bf9b04fb9225e2cc (diff)
fix compilation, rename PercussiveCreateDrag -> HitCreateDrag
Diffstat (limited to 'gtk2_ardour/editor_drag.h')
-rw-r--r--gtk2_ardour/editor_drag.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_drag.h b/gtk2_ardour/editor_drag.h
index 0a413f05ba..8c5fce6e07 100644
--- a/gtk2_ardour/editor_drag.h
+++ b/gtk2_ardour/editor_drag.h
@@ -601,6 +601,38 @@ private:
framepos_t _note[2];
};
+class HitCreateDrag : public Drag
+{
+public:
+ HitCreateDrag (Editor *, ArdourCanvas::Item *, MidiRegionView *);
+ ~HitCreateDrag ();
+
+ void start_grab (GdkEvent *, Gdk::Cursor* c = 0);
+ void motion (GdkEvent *, bool);
+ void finished (GdkEvent *, bool);
+ void aborted (bool);
+
+ bool active (Editing::MouseMode mode) {
+ return mode == Editing::MouseDraw || mode == Editing::MouseContent;
+ }
+
+ bool y_movement_matters () const {
+ return false;
+ }
+
+private:
+ double y_to_region (double) const;
+ ARDOUR::framecnt_t grid_frames (framepos_t) const;
+
+ /** @return minimum number of frames (in x) and pixels (in y) that should be considered a movement */
+ virtual std::pair<ARDOUR::framecnt_t, int> move_threshold () const {
+ return std::make_pair (0, 0);
+ }
+
+ MidiRegionView* _region_view;
+ double _y;
+};
+
/** Drag to move MIDI patch changes */
class PatchChangeDrag : public Drag
{