Mercurial > trustbridge
view ui/certificateitemdelegate.h @ 701:31c3d2bc9880
(Issue22) Fix painting problems with fixed size in windows style.
We now use fusion style also on Windows for the combobox to
let it be shown in the same way as we do on GNU/Linux.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Wed, 02 Jul 2014 11:26:42 +0200 |
parents | ab622e094786 |
children |
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #ifndef CERTIFICATELISTDELEGATE_H #define CERTIFICATELISTDELEGATE_H /** * @file certificateitemdelegate.h * @brief Item delegate drawing custom certificate items in list views. * */ #include <QStyledItemDelegate> class CertificateItemDelegate : public QStyledItemDelegate { Q_OBJECT public: CertificateItemDelegate(QWidget *parent = 0) : QStyledItemDelegate(parent){} /** * @brief Renders the delegate using the given painter and options. * * @param painter The painter to draw the item. * @param option The style options. * @param index The model index of the item to draw. */ void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const; /** @brief different roles for this tiem */ enum ItemRole { DataRole = Qt::UserRole, /* The certificate details for the window */ StatusRole, /* Certificate status */ }; private: /** * @brief Draw the item using the given parameters. * * @param painter The painter to draw the item. * @param option The style options. * @param index The model index of the item to draw. * @param icon The icon to display. * @param font The font used to draw text. */ void drawItem(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index, QIcon *icon, QFont *font) const; }; #endif