From d9de39172033c28b8f9a7c1573130cf2124b4f7a Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Tue, 24 Apr 2012 23:16:35 +0200 Subject: Provide additional default groups for the Places Panel If Nepomuk is enabled, it is now possible to easily search for some most common queries by having additional groups. --- src/kitemviews/kstandarditemmodel.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/kitemviews/kstandarditemmodel.cpp') diff --git a/src/kitemviews/kstandarditemmodel.cpp b/src/kitemviews/kstandarditemmodel.cpp index 86ef9563b..897267df6 100644 --- a/src/kitemviews/kstandarditemmodel.cpp +++ b/src/kitemviews/kstandarditemmodel.cpp @@ -123,7 +123,22 @@ QString KStandardItemModel::roleDescription(const QByteArray& role) const QList > KStandardItemModel::groups() const { - return QList >(); + QList > groups; + + const QByteArray role = sortRole(); + bool isFirstGroupValue = true; + QString groupValue; + const int maxIndex = count() - 1; + for (int i = 0; i <= maxIndex; ++i) { + const QString newGroupValue = m_items.at(i)->dataValue(role).toString(); + if (newGroupValue != groupValue || isFirstGroupValue) { + groupValue = newGroupValue; + groups.append(QPair(i, newGroupValue)); + isFirstGroupValue = false; + } + } + + return groups; } #include "kstandarditemmodel.moc" -- cgit v1.3