/src/libtomahawk/jobview/JobStatusDelegate.h
C Header | 43 lines | 18 code | 8 blank | 17 comment | 0 complexity | d8c034cb470bd5d5ce43ac1813bdf350 MD5 | raw file
1/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> === 2 * 3 * Copyright 2010-2011, Leo Franchi <lfranchi@kde.org> 4 * 5 * Tomahawk is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation, either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * Tomahawk is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with Tomahawk. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 19#ifndef JOBSTATUSDELEGATE_H 20#define JOBSTATUSDELEGATE_H 21 22#include <QStyledItemDelegate> 23 24class QPainter; 25class QListView; 26 27class JobStatusDelegate : public QStyledItemDelegate 28{ 29 Q_OBJECT 30 31public: 32 explicit JobStatusDelegate ( QObject* parent = 0 ); 33 virtual ~JobStatusDelegate(); 34 35 virtual void paint( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const; 36 virtual QSize sizeHint( const QStyleOptionViewItem& option, const QModelIndex& index ) const; 37 38private: 39 mutable QHash< QPersistentModelIndex, int > m_cachedMultiLineHeights; 40 QListView* m_parentView; 41}; 42 43#endif // JOBSTATUSDELEGATE_H