┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistgroupheader.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2011-10-22 01:31:02 +0200
committerPeter Penz <[email protected]>2011-10-22 01:33:26 +0200
commiteac436d0374d3be323c6ba36799d3cddc98301ea (patch)
treeca149d04153f6d169a70cb232fb0c420e90016e4 /src/kitemviews/kitemlistgroupheader.cpp
parentfd9cac1188130d3ef09530a902c95cf6190990a1 (diff)
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.
Diffstat (limited to 'src/kitemviews/kitemlistgroupheader.cpp')
-rw-r--r--src/kitemviews/kitemlistgroupheader.cpp46
1 files changed, 45 insertions, 1 deletions
diff --git a/src/kitemviews/kitemlistgroupheader.cpp b/src/kitemviews/kitemlistgroupheader.cpp
index 4db253293..5aac02c82 100644
--- a/src/kitemviews/kitemlistgroupheader.cpp
+++ b/src/kitemviews/kitemlistgroupheader.cpp
@@ -29,7 +29,9 @@
#include <KDebug>
KItemListGroupHeader::KItemListGroupHeader(QGraphicsWidget* parent) :
- QGraphicsWidget(parent, 0)
+ QGraphicsWidget(parent, 0),
+ m_role(),
+ m_data()
{
}
@@ -37,6 +39,36 @@ KItemListGroupHeader::~KItemListGroupHeader()
{
}
+void KItemListGroupHeader::setRole(const QByteArray& role)
+{
+ if (m_role != role) {
+ const QByteArray previous = m_role;
+ m_role = role;
+ update();
+ roleChanged(role, previous);
+ }
+}
+
+QByteArray KItemListGroupHeader::role() const
+{
+ return m_role;
+}
+
+void KItemListGroupHeader::setData(const QVariant& data)
+{
+ if (m_data != data) {
+ const QVariant previous = m_data;
+ m_data = data;
+ update();
+ dataChanged(data, previous);
+ }
+}
+
+QVariant KItemListGroupHeader::data() const
+{
+ return m_data;
+}
+
QSizeF KItemListGroupHeader::sizeHint(Qt::SizeHint which, const QSizeF& constraint) const
{
Q_UNUSED(which);
@@ -55,4 +87,16 @@ void KItemListGroupHeader::paint(QPainter* painter, const QStyleOptionGraphicsIt
//painter->drawText(rect(), QString::number(m_index));
}
+void KItemListGroupHeader::roleChanged(const QByteArray& current, const QByteArray& previous)
+{
+ Q_UNUSED(current);
+ Q_UNUSED(previous);
+}
+
+void KItemListGroupHeader::dataChanged(const QVariant& current, const QVariant& previous)
+{
+ Q_UNUSED(current);
+ Q_UNUSED(previous);
+}
+
#include "kitemlistgroupheader.moc"