From eac436d0374d3be323c6ba36799d3cddc98301ea Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Sat, 22 Oct 2011 01:31:02 +0200 Subject: Implement grouping for names - Use a custom header for KFileItems - Cache the groups - Allow enabling/disabling grouping dynamically Currently there is a random crash in combination with the groupheader-recycler, this will be fixed during the next days. --- src/kitemviews/kitemlistgroupheader.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/kitemviews/kitemlistgroupheader.h') diff --git a/src/kitemviews/kitemlistgroupheader.h b/src/kitemviews/kitemlistgroupheader.h index 135fd5e5f..081607eef 100644 --- a/src/kitemviews/kitemlistgroupheader.h +++ b/src/kitemviews/kitemlistgroupheader.h @@ -22,7 +22,9 @@ #include +#include #include +#include class KItemListView; @@ -34,11 +36,23 @@ public: KItemListGroupHeader(QGraphicsWidget* parent = 0); virtual ~KItemListGroupHeader(); - void setIndex(int index); - int index() const; + void setRole(const QByteArray& role); + QByteArray role() const; + + void setData(const QVariant& data); + QVariant data() const; virtual QSizeF sizeHint(Qt::SizeHint which = Qt::PreferredSize, const QSizeF& constraint = QSizeF()) const; virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = 0); + +protected: + virtual void roleChanged(const QByteArray& current, const QByteArray& previous); + virtual void dataChanged(const QVariant& current, const QVariant& previous); + +private: + QByteArray m_role; + QVariant m_data; + }; #endif -- cgit v1.3.1