]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kitemmodelbase.cpp
Apply 1 suggestion(s) to 1 file(s)
[dolphin.git] / src / kitemviews / kitemmodelbase.cpp
index 566caefaaf35ffbd232506f501c4a3e945cc4435..b846318ee799e8327c62b271d3b87ab2cc816ffc 100644 (file)
@@ -13,14 +13,18 @@ KItemModelBase::KItemModelBase(QObject *parent)
     , m_groupedSorting(false)
     , m_sortRole()
     , m_sortOrder(Qt::AscendingOrder)
+    , m_groupRole()
+    , m_groupOrder(Qt::AscendingOrder)
 {
 }
 
-KItemModelBase::KItemModelBase(const QByteArray &sortRole, QObject *parent)
+KItemModelBase::KItemModelBase(const QByteArray &sortRole, const QByteArray &groupRole, QObject *parent)
     : QObject(parent)
     , m_groupedSorting(false)
     , m_sortRole(sortRole)
     , m_sortOrder(Qt::AscendingOrder)
+    , m_groupRole(groupRole)
+    , m_groupOrder(Qt::AscendingOrder)
 {
 }
 
@@ -64,19 +68,44 @@ QByteArray KItemModelBase::sortRole() const
     return m_sortRole;
 }
 
-void KItemModelBase::setSortOrder(Qt::SortOrder order)
+void KItemModelBase::setSortOrder(Qt::SortOrder order, bool resortItems)
 {
     if (order != m_sortOrder) {
         const Qt::SortOrder previous = m_sortOrder;
         m_sortOrder = order;
-        onSortOrderChanged(order, previous);
+        onSortOrderChanged(order, previous, resortItems);
         Q_EMIT sortOrderChanged(order, previous);
     }
 }
 
+void KItemModelBase::setGroupRole(const QByteArray &role, bool regroupItems)
+{
+    if (role != m_groupRole) {
+        const QByteArray previous = m_groupRole;
+        m_groupRole = role;
+        onGroupRoleChanged(role, previous, regroupItems);
+        Q_EMIT groupRoleChanged(role, previous);
+    }
+}
+
+QByteArray KItemModelBase::groupRole() const
+{
+    return m_groupRole;
+}
+
+void KItemModelBase::setGroupOrder(Qt::SortOrder order, bool resortItems)
+{
+    if (order != m_groupOrder) {
+        const Qt::SortOrder previous = m_groupOrder;
+        m_groupOrder = order;
+        onGroupOrderChanged(order, previous, resortItems);
+        Q_EMIT groupOrderChanged(order, previous);
+    }
+}
+
 QString KItemModelBase::roleDescription(const QByteArray &role) const
 {
-    return role;
+    return QString::fromLatin1(role);
 }
 
 QList<QPair<int, QVariant>> KItemModelBase::groups() const
@@ -128,6 +157,12 @@ bool KItemModelBase::supportsDropping(int index) const
     return false;
 }
 
+bool KItemModelBase::canEnterOnHover(int index) const
+{
+    Q_UNUSED(index)
+    return false;
+}
+
 QString KItemModelBase::blacklistItemDropEventMimeType() const
 {
     return QStringLiteral("application/x-dolphin-blacklist-drop");
@@ -145,10 +180,25 @@ void KItemModelBase::onSortRoleChanged(const QByteArray &current, const QByteArr
     Q_UNUSED(resortItems)
 }
 
-void KItemModelBase::onSortOrderChanged(Qt::SortOrder current, Qt::SortOrder previous)
+void KItemModelBase::onSortOrderChanged(Qt::SortOrder current, Qt::SortOrder previous, bool resortItems)
+{
+    Q_UNUSED(current)
+    Q_UNUSED(previous)
+    Q_UNUSED(resortItems)
+}
+
+void KItemModelBase::onGroupRoleChanged(const QByteArray &current, const QByteArray &previous, bool resortItems)
 {
     Q_UNUSED(current)
     Q_UNUSED(previous)
+    Q_UNUSED(resortItems)
+}
+
+void KItemModelBase::onGroupOrderChanged(Qt::SortOrder current, Qt::SortOrder previous, bool resortItems)
+{
+    Q_UNUSED(current)
+    Q_UNUSED(previous)
+    Q_UNUSED(resortItems)
 }
 
 QUrl KItemModelBase::url(int index) const