]> git.sur5r.net Git - minitube/blobdiff - src/playlistitemdelegate.h
Imported Upstream version 2.3
[minitube] / src / playlistitemdelegate.h
index 5a7b2b326123c6b96de8ef5dfcb2a1c3116b1cb9..0bbd77f06ceb3cf65d02c2d8bc762b4dc9e71914 100644 (file)
@@ -1,7 +1,30 @@
+/* $BEGIN_LICENSE
+
+This file is part of Minitube.
+Copyright 2009, Flavio Tordini <flavio.tordini@gmail.com>
+
+Minitube is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+Minitube is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with Minitube.  If not, see <http://www.gnu.org/licenses/>.
+
+$END_LICENSE */
+
 #ifndef PLAYLISTITEMDELEGATE_H
 #define PLAYLISTITEMDELEGATE_H
 
 #include <QtGui>
+#if QT_VERSION >= 0x050000
+#include <QtWidgets>
+#endif
 
 class PlaylistItemDelegate : public QStyledItemDelegate {
 
@@ -13,7 +36,7 @@ public:
 
     QSize sizeHint( const QStyleOptionViewItem&, const QModelIndex& ) const;
     void paint( QPainter*, const QStyleOptionViewItem&, const QModelIndex& ) const;
-    QRect downloadButtonRect(QRect line) const;
+    QRect downloadButtonRect(const QRect &line) const;
     QRect authorRect(const QModelIndex& index) const;
 
 private:
@@ -24,15 +47,14 @@ private:
                                         const QModelIndex& index ) const;
 
     // active track painting
-    void paintActiveOverlay( QPainter *painter, qreal x, qreal y, qreal w, qreal h ) const;
-    void paintPlayIcon(QPainter *painter) const;
+    void paintActiveOverlay(QPainter *painter, const QRect &line) const;
 
     //  Paints the video duration
-    void drawTime(QPainter *painter, QString time, QRectF line) const;
+    void drawTime(QPainter *painter, const QString &time, const QRect &line) const;
 
-    static const qreal THUMB_WIDTH;
-    static const qreal THUMB_HEIGHT;
-    static const qreal PADDING;
+    static const int THUMB_WIDTH;
+    static const int THUMB_HEIGHT;
+    static const int PADDING;
 
     QPixmap playIcon;
     QFont boldFont;
@@ -42,6 +64,8 @@ private:
     bool downloadInfo;
     QProgressBar *progressBar;
 
+    mutable QRect lastAuthorRect;
+    mutable QHash<int, QRect> authorRects;
 };
 
 #endif