]> git.sesse.net Git - kdenlive/blobdiff - src/guide.cpp
Const'ref
[kdenlive] / src / guide.cpp
index 47ba15e20a775508899cc7ea155242a7a358b764..ba05ec6aef126841aa744ae0cbe494b013b5c1d9 100644 (file)
@@ -29,7 +29,7 @@
 #include <QGraphicsView>
 #include <QScrollBar>
 
-Guide::Guide(CustomTrackView *view, GenTime pos, QString label, double height) :
+Guide::Guide(CustomTrackView *view, const GenTime &pos, const QString &label, double height) :
         QGraphicsLineItem(),
         m_position(pos),
         m_label(label),
@@ -158,18 +158,13 @@ void Guide::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWi
     if (KdenliveSettings::showmarkers() && scene() && scene()->views().count()) {
         QPointF p1 = line().p1();
         const QFontMetrics metric = m_view->fontMetrics();
-
+       painter->setClipRect(option->rect);
         // makes sure the text stays visible when scrolling vertical
         int offset = scene()->views()[0]->verticalScrollBar()->value();
 
         QRectF txtBounding = painter->boundingRect(p1.x(), p1.y() + offset, m_width, metric.height(), Qt::AlignLeft | Qt::AlignTop, m_label);
-        // draw the text on a rect with a arc appended
-        QPainterPath path;
-        path.moveTo(txtBounding.bottomRight());
-        path.arcTo(txtBounding.right() - txtBounding.height() - 2, txtBounding.top() - txtBounding.height(), txtBounding.height() * 2, txtBounding.height() * 2, 270, 90);
-        path.lineTo(txtBounding.topLeft());
-        path.lineTo(txtBounding.bottomLeft());
-        painter->fillPath(path, m_pen.color());
+       painter->setBrush(QBrush(m_pen.color()));
+       painter->drawRoundedRect(txtBounding.adjusted(-5, -5, 2, 1), 3, 3);
         painter->setPen(Qt::white);
         painter->drawText(txtBounding.adjusted(1, 0, 1, 0), Qt::AlignCenter, m_label);
     }