X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/38c34eeca315c7be58e65d4d3fb72aaf7b866719..187933a7a6acb7f50ab397f5170308b8aab76bbc:/src/kitemviews/kitemmodelbase.cpp diff --git a/src/kitemviews/kitemmodelbase.cpp b/src/kitemviews/kitemmodelbase.cpp index e302d6093..b846318ee 100644 --- a/src/kitemviews/kitemmodelbase.cpp +++ b/src/kitemviews/kitemmodelbase.cpp @@ -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> 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 ¤t, 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 ¤t, 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 @@ -165,3 +215,5 @@ QUrl KItemModelBase::directory() const { return QUrl(); } + +#include "moc_kitemmodelbase.cpp"