┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kstandarditemlistwidget.h
diff options
context:
space:
mode:
authorMéven Car <[email protected]>2025-01-14 18:52:36 +0100
committerMéven Car <[email protected]>2025-01-17 11:07:40 +0100
commit961e6270e4401a6c7512df3a2e3efd09a25df962 (patch)
treee282410c9546d0b636ca156848f6b75da722da61 /src/kitemviews/kstandarditemlistwidget.h
parent9a44aad838e111175b57a7ff14a9f6d2f44c5b65 (diff)
Refactor Overlay Handling
Now all overlays icons in kitemviews are added in KStandardItemListWidget::updatePixmapCache. data[iconOverlays] now contains icon names. DolphinFileItemListWidget::refreshCache is the sole responsible of setting the overlays either coming from KFileItemModelRolesUpdater or KVersionControlPlugin. This garantees consistency in rendering. BUG: 497372
Diffstat (limited to 'src/kitemviews/kstandarditemlistwidget.h')
-rw-r--r--src/kitemviews/kstandarditemlistwidget.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/kitemviews/kstandarditemlistwidget.h b/src/kitemviews/kstandarditemlistwidget.h
index d4a4f1231..3e542b4c5 100644
--- a/src/kitemviews/kstandarditemlistwidget.h
+++ b/src/kitemviews/kstandarditemlistwidget.h
@@ -158,8 +158,8 @@ protected:
void setTextColor(const QColor &color);
QColor textColor(const QWidget &widget) const;
- void setOverlay(const QPixmap &overlay);
- QPixmap overlay() const;
+ void setOverlays(QHash<Qt::Corner, QString> &overlay);
+ QHash<Qt::Corner, QString> overlays() const;
/**
* @see KStandardItemListWidgetInformant::roleText().
@@ -212,6 +212,12 @@ private:
void updateCompactLayoutTextCache();
void updateDetailsLayoutTextCache();
+ QPixmap addOverlays(const QPixmap &pixmap,
+ const QHash<Qt::Corner, QString> &overlays,
+ const QSize &size,
+ qreal devicePixelRatioF,
+ QIcon::Mode mode = QIcon::Normal) const;
+
void drawPixmap(QPainter *painter, const QPixmap &pixmap);
/** Draw the lines and arrows that visualize the expanded state and level of this row. */
void drawSiblingsInformation(QPainter *painter);
@@ -231,7 +237,7 @@ private:
*/
void closeRoleEditor();
- QPixmap pixmapForIcon(const QString &name, const QStringList &overlays, int size, QIcon::Mode mode) const;
+ QPixmap pixmapForIcon(const QString &name, const QHash<Qt::Corner, QString> &overlays, const QSize &size, QIcon::Mode mode) const;
/**
* @return Preferred size of the rating-image based on the given
@@ -283,7 +289,7 @@ private:
QColor m_customTextColor;
QColor m_additionalInfoTextColor;
- QPixmap m_overlay;
+ QHash<Qt::Corner, QString> m_overlays;
QPixmap m_rating;
KItemListRoleEditor *m_roleEditor;