-void Cursor::paint_label(QPainter &p, const QRect &rect,
- unsigned int prefix)
-{
- compute_text_size(p, prefix);
- const QRectF r(get_label_rect(rect));
-
- if (_time > _other.time())
- {
- const QPointF points[] = {
- r.topLeft(),
- r.topRight(),
- r.bottomRight(),
- QPointF(r.left() + ArrowSize, r.bottom()),
- QPointF(r.left(), rect.bottom()),
- };
-
- const QPointF highlight_points[] = {
- QPointF(r.left() + 1, r.top() + 1),
- QPointF(r.right() - 1, r.top() + 1),
- QPointF(r.right() - 1, r.bottom() - 1),
- QPointF(r.left() + ArrowSize - 1, r.bottom() - 1),
- QPointF(r.left() + 1, rect.bottom() - 1),
- };
-
- p.setPen(Qt::transparent);
- p.setBrush(FillColour);
- p.drawPolygon(points, countof(points));
-
- p.setPen(HighlightColour);
- p.setBrush(Qt::transparent);
- p.drawPolygon(highlight_points, countof(highlight_points));
-
- p.setPen(LineColour);
- p.setBrush(Qt::transparent);
- p.drawPolygon(points, countof(points));
- }
+ if (time_ > other_time ||
+ (abs(time_ - other_time).is_zero() && this > other.get()))
+ return QRectF(x, top, label_size.width(), height);