X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fview%2Fcursorheader.cpp;h=2683e9e6b20c8fc10c9d81f5bfd10dadb14f95fa;hb=8914fe790fb677c56194a3ae4da06ba671fca78a;hp=e308867cfd9f0335850a83b309ae563ce9b810a8;hpb=9a3774933c3051262af1f0e3ec4bd747fd6b4f48;p=pulseview.git diff --git a/pv/view/cursorheader.cpp b/pv/view/cursorheader.cpp index e308867..2683e9e 100644 --- a/pv/view/cursorheader.cpp +++ b/pv/view/cursorheader.cpp @@ -47,7 +47,6 @@ int CursorHeader::calculateTextHeight() CursorHeader::CursorHeader(View &parent) : MarginWidget(parent), - dragging_(false), textHeight_(calculateTextHeight()) { setMouseTracking(true); @@ -84,6 +83,8 @@ void CursorHeader::paintEvent(QPaintEvent*) void CursorHeader::mouseMoveEvent(QMouseEvent *e) { + mouse_point_ = e->pos(); + if (!(e->buttons() & Qt::LeftButton)) return; @@ -99,7 +100,8 @@ void CursorHeader::mouseMoveEvent(QMouseEvent *e) for (auto &i : items) if (i->dragging()) i->set_time(view_.offset() + - (i->drag_point().x() + delta) * view_.scale()); + (i->drag_point().x() + delta - 0.5) * + view_.scale()); } void CursorHeader::mousePressEvent(QMouseEvent *e) @@ -149,5 +151,16 @@ void CursorHeader::mouseReleaseEvent(QMouseEvent *) i->drag_release(); } +void CursorHeader::leaveEvent(QEvent*) +{ + mouse_point_ = QPoint(-1, -1); + update(); +} + +void CursorHeader::mouseDoubleClickEvent(QMouseEvent *e) +{ + view_.add_flag(view_.offset() + ((double)e->x() + 0.5) * view_.scale()); +} + } // namespace view } // namespace pv