]> cloud.milkyroute.net Git - dolphin.git/blob - src/kitemviews/kstandarditemlistgroupheader.h
Merge branch 'release/20.12'
[dolphin.git] / src / kitemviews / kstandarditemlistgroupheader.h
1 /*
2 * SPDX-FileCopyrightText: 2011 Peter Penz <peter.penz19@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7 #ifndef KSTANDARDITEMLISTGROUPHEADER_H
8 #define KSTANDARDITEMLISTGROUPHEADER_H
9
10 #include "dolphin_export.h"
11 #include "kitemviews/kitemlistgroupheader.h"
12
13 #include <QPixmap>
14 #include <QStaticText>
15
16 class DOLPHIN_EXPORT KStandardItemListGroupHeader : public KItemListGroupHeader
17 {
18 Q_OBJECT
19
20 public:
21 explicit KStandardItemListGroupHeader(QGraphicsWidget* parent = nullptr);
22 ~KStandardItemListGroupHeader() override;
23
24 void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = nullptr) override;
25
26 protected:
27 void paintRole(QPainter* painter, const QRectF& roleBounds, const QColor& color) override;
28 void paintSeparator(QPainter* painter, const QColor& color) override;
29 void roleChanged(const QByteArray &current, const QByteArray &previous) override;
30 void dataChanged(const QVariant& current, const QVariant& previous) override;
31 void resizeEvent(QGraphicsSceneResizeEvent* event) override;
32
33 private:
34 void updateCache();
35
36 private:
37 bool m_dirtyCache;
38 QStaticText m_text;
39 QPixmap m_pixmap;
40 };
41 #endif
42
43