From 5fb590efe3f101d2a9d284232b6aa4b54a9d5de4 Mon Sep 17 00:00:00 2001 From: Mikaƫl Capelle Date: Fri, 8 Jan 2021 20:13:24 +0100 Subject: Fix vertical alignment of icons. --- src/icondelegate.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/icondelegate.cpp b/src/icondelegate.cpp index 813395a2..7205ba62 100644 --- a/src/icondelegate.cpp +++ b/src/icondelegate.cpp @@ -49,6 +49,8 @@ void IconDelegate::paintIcons( int iconWidth = icons.size() > 0 ? ((option.rect.width() / icons.size()) - 4) : 16; iconWidth = std::min(16, iconWidth); + const int margin = (option.rect.height() - iconWidth) / 2; + painter->translate(option.rect.topLeft()); for (const QString &iconId : icons) { if (iconId.isEmpty()) { @@ -64,7 +66,7 @@ void IconDelegate::paintIcons( } QPixmapCache::insert(fullIconId, icon); } - painter->drawPixmap(x, 2, iconWidth, iconWidth, icon); + painter->drawPixmap(x, margin, iconWidth, iconWidth, icon); x += iconWidth + 4; } @@ -79,6 +81,7 @@ void IconDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, else { QStyledItemDelegate::paint(painter, option, index); } + paintIcons(painter, option, index, getIcons(index)); } -- cgit v1.3.1