X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Fviewport.cpp;h=3811c1e8a143d70b6dc8f03115d1ead1e529c07e;hp=91b27d3ffb02ab383c3d2c801507191610a072e6;hb=d75c5d12963b35bd8a8c507f565ec5c57fbdaac6;hpb=e94f43c6539a9ec9412829550d8f025902ccc341 diff --git a/pv/view/viewport.cpp b/pv/view/viewport.cpp index 91b27d3f..3811c1e8 100644 --- a/pv/view/viewport.cpp +++ b/pv/view/viewport.cpp @@ -57,17 +57,18 @@ Viewport::Viewport(View &parent) : shared_ptr Viewport::get_mouse_over_item(const QPoint &pt) { + const ViewItemPaintParams pp(rect(), view_.scale(), view_.offset()); const vector< shared_ptr > items(this->items()); for (auto i = items.rbegin(); i != items.rend(); i++) if ((*i)->enabled() && - (*i)->hit_box_rect(rect()).contains(pt)) + (*i)->hit_box_rect(pp).contains(pt)) return *i; return nullptr; } void Viewport::item_hover(const shared_ptr &item) { - if (item) + if (item && item->is_draggable()) setCursor(dynamic_pointer_cast(item) ? Qt::SizeVerCursor : Qt::SizeHorCursor); else @@ -178,10 +179,10 @@ void Viewport::paintEvent(QPaintEvent*) for (const shared_ptr r : row_items) r->paint_mid(p, pp); - p.setRenderHint(QPainter::Antialiasing, false); - for (const shared_ptr r : row_items) r->paint_fore(p, pp); + + p.setRenderHint(QPainter::Antialiasing, false); for (const shared_ptr t : time_items) t->paint_fore(p, pp);