]> sigrok.org Git - pulseview.git/blobdiff - pv/view/ruler.cpp
ViewWidget: Moved in unified accept_drag
[pulseview.git] / pv / view / ruler.cpp
index f4bffd4cf6820449f4818dba3d78e4505fbfe57e..0149155d24c300e0bbd8b68127548ac1d4416ac9 100644 (file)
@@ -83,6 +83,14 @@ shared_ptr<ViewItem> Ruler::get_mouse_over_item(const QPoint &pt)
        return nullptr;
 }
 
+void Ruler::drag_items(const QPoint &delta)
+{
+       const vector< shared_ptr<TimeItem> > items(view_.time_items());
+       for (auto &i : items)
+               if (i->dragging())
+                       i->drag_by(delta);
+}
+
 void Ruler::paintEvent(QPaintEvent*)
 {
        const int ValueMargin = 3;
@@ -154,42 +162,6 @@ void Ruler::paintEvent(QPaintEvent*)
        }
 }
 
-void Ruler::mouseMoveEvent(QMouseEvent *e)
-{
-       mouse_point_ = e->pos();
-
-       if (!(e->buttons() & Qt::LeftButton))
-               return;
-
-       if ((e->pos() - mouse_down_point_).manhattanLength() <
-               QApplication::startDragDistance())
-               return;
-
-       // Do the drag
-       dragging_ = true;
-
-       const QPoint delta = e->pos() - mouse_down_point_;
-       const vector< shared_ptr<TimeItem> > items(view_.time_items());
-       for (auto &i : items)
-               if (i->dragging())
-                       i->drag_by(delta);
-}
-
-void Ruler::mouseReleaseEvent(QMouseEvent *)
-{
-       using pv::widgets::Popup;
-
-       if (!dragging_ && mouse_down_item_)
-               show_popup(mouse_down_item_);
-
-       dragging_ = false;
-       mouse_down_item_.reset();
-
-       const vector< shared_ptr<TimeItem> > items(view_.time_items());
-       for (auto &i : items)
-               i->drag_release();
-}
-
 void Ruler::mouseDoubleClickEvent(QMouseEvent *e)
 {
        view_.add_flag(view_.offset() + ((double)e->x() + 0.5) * view_.scale());