From 2977205f3a1129ce8a3808ff664a337e479fdd0b Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 16 Jun 2023 12:31:18 -0600 Subject: [PATCH] add skeleton for lollipop drags --- gtk2_ardour/editor_drag.cc | 36 ++++++++++++++++++++++++++++++++++++ gtk2_ardour/editor_drag.h | 31 +++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc index 4f19506275..1f8d95cc7d 100644 --- a/gtk2_ardour/editor_drag.cc +++ b/gtk2_ardour/editor_drag.cc @@ -7177,3 +7177,39 @@ RegionMarkerDrag::setup_pointer_sample_offset () const timepos_t model_abs_pos = rv->region ()->position () + (rv->region ()->start ().distance (model.position ())); _pointer_offset = model_abs_pos.distance (raw_grab_time ()); } + +LollipopDrag::LollipopDrag (Editor* ed, MidiRegionView* r, ArdourCanvas::Item* i) + : Drag (ed, i, r->region ()->position ().time_domain ()) +{ +} + +LollipopDrag::~LollipopDrag () +{ +} + +void +LollipopDrag::start_grab (GdkEvent *ev, Gdk::Cursor* c) +{ + Drag::start_grab (ev, c); +} + +void +LollipopDrag::motion (GdkEvent *ev, bool first_move) +{ +} + +void +LollipopDrag::finished (GdkEvent *ev, bool did_move) +{ +} + +void +LollipopDrag::aborted (bool) +{ +} + +void +LollipopDrag::setup_pointer_sample_offset () +{ +} + diff --git a/gtk2_ardour/editor_drag.h b/gtk2_ardour/editor_drag.h index ce84b54427..d40317f21f 100644 --- a/gtk2_ardour/editor_drag.h +++ b/gtk2_ardour/editor_drag.h @@ -1546,4 +1546,35 @@ class RegionMarkerDrag : public Drag ARDOUR::CueMarker dragging_model; }; + +class LollipopDrag : public Drag +{ + public: + LollipopDrag (Editor*, MidiRegionView*, ArdourCanvas::Item*); + ~LollipopDrag (); + + void start_grab (GdkEvent *, Gdk::Cursor* c = 0); + void motion (GdkEvent *, bool); + void finished (GdkEvent *, bool); + void aborted (bool); + + bool allow_vertical_autoscroll () const { + return false; + } + + bool allow_horizontal_autoscroll () const { + return false; + } + + bool x_movement_matters () const { + return false; + } + + void setup_pointer_sample_offset (); + + private: + MidiRegionView* _region; + NoteBase* _primary; +}; + #endif /* __gtk2_ardour_editor_drag_h_ */