]> git.sur5r.net Git - minitube/blobdiff - src/playlist/PrettyItemDelegate.cpp
Imported Debian patch 1.4.1-1
[minitube] / src / playlist / PrettyItemDelegate.cpp
index 4f64c9907c3fd29c872ae0563e804cd92b443703..3454572e11fbb92640e9e58e776c3bda41133f55 100644 (file)
@@ -85,6 +85,12 @@ void PrettyItemDelegate::paintBody( QPainter* painter,
         paintActiveOverlay(painter, line.x(), line.y(), line.width(), line.height());
     }
 
+#if defined(APP_MAC) | defined(APP_WIN)
+    if (isSelected) {
+        paintSelectedOverlay(painter, line.x(), line.y(), line.width(), line.height());
+    }
+#endif
+
     // get the video metadata
     const VideoPointer videoPointer = index.data( VideoRole ).value<VideoPointer>();
     const Video *video = videoPointer.data();
@@ -211,6 +217,20 @@ void PrettyItemDelegate::paintActiveOverlay( QPainter *painter, qreal x, qreal y
     painter->restore();
 }
 
+void PrettyItemDelegate::paintSelectedOverlay( QPainter *painter, qreal x, qreal y, qreal w, qreal h ) const {
+    QColor color1 = QColor::fromRgb(0x69, 0xa6, 0xd9);
+    QColor color2 = QColor::fromRgb(0x14, 0x6b, 0xd4);
+    QRect rect((int) x, (int) y, (int) w, (int) h);
+    painter->save();
+    painter->setPen(Qt::NoPen);
+    QLinearGradient linearGradient(0, 0, 0, rect.height());
+    linearGradient.setColorAt(0.0, color1);
+    linearGradient.setColorAt(1.0, color2);
+    painter->setBrush(linearGradient);
+    painter->drawRect(rect);
+    painter->restore();
+}
+
 void PrettyItemDelegate::paintPlayIcon(QPainter *painter) const {
     painter->save();
     painter->setOpacity(.5);