36{
37 if (!index.isValid()) return;
38 painter->save();
39
41 QRect paintRect = QRect(option.rect.x(), option.rect.y(), option.rect.height(), option.rect.height());
43 painter->drawText(paintRect.width() + 10, option.rect.y() + option.rect.height() - 10, resourceDisplayName);
44
46 QIcon icon = qvariant_cast<QIcon>(index.data(Qt::DecorationRole));
47
48 QImage preview;
49 if (!icon.isNull()) {
50 QSize
iconSize = option.decorationSize;
52 preview =
pixmap.toImage();
53 }
54
55 painter->drawImage(paintRect.x(), paintRect.y(), preview);
56 } else {
58 }
59
60 if (option.state & QStyle::State_Selected) {
61 painter->setCompositionMode(QPainter::CompositionMode_HardLight);
62 painter->setOpacity(1.0);
63 painter->fillRect(option.rect, option.palette.highlight());
64
65
66 painter->setCompositionMode(QPainter::CompositionMode_SourceOver);
67 painter->setPen(QPen(option.palette.highlight(), 4, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin));
68 QRect selectedBorder = option.rect.adjusted(2 , 2, -2, -2);
69 painter->drawRect(selectedBorder);
70 }
71 } else {
72 m_thumbnailPainter.
paint(painter, index, option.rect, option.palette, option.state & QStyle::State_Selected,
true);
73 }
74 painter->restore();
75}
int iconSize(qreal width, qreal height)
KisResourceThumbnailPainter m_thumbnailPainter
void paint(QPainter *painter, const QModelIndex &index, QRect rect, const QPalette &palette, bool selected, bool addMargin) const