}
}
-void KFileItemModel::onSortOrderChanged(Qt::SortOrder current, Qt::SortOrder previous, bool resortItems)
+void KFileItemModel::onSortOrderChanged(Qt::SortOrder current, Qt::SortOrder previous)
{
Q_UNUSED(current)
Q_UNUSED(previous)
-
- if (resortItems) {
- resortAllItems();
- }
}
void KFileItemModel::onGroupRoleChanged(const QByteArray ¤t, const QByteArray &previous, bool resortItems)
}
}
-void KFileItemModel::onGroupOrderChanged(Qt::SortOrder current, Qt::SortOrder previous, bool resortItems)
+void KFileItemModel::onGroupOrderChanged(Qt::SortOrder current, Qt::SortOrder previous)
{
Q_UNUSED(current)
Q_UNUSED(previous)
-
- if (resortItems) {
- resortAllItems();
- }
}
void KFileItemModel::loadSortingSettings()
return itemDataList;
}
-void KFileItemModel::prepareItemsForSorting(QList<ItemData *> &itemDataList)
+void KFileItemModel::prepareItemsWithRole(QList<ItemData *> &itemDataList, RoleType roleType)
{
- switch (m_sortRole) {
+ switch (roleType) {
case ExtensionRole:
case PermissionsRole:
case OwnerRole:
// DateRole).
break;
}
- switch (m_groupRole) {
- case ExtensionRole:
- case PermissionsRole:
- case OwnerRole:
- case GroupRole:
- case DestinationRole:
- case PathRole:
- case DeletionTimeRole:
- for (ItemData *itemData : std::as_const(itemDataList)) {
- if (itemData->values.isEmpty()) {
- itemData->values = retrieveData(itemData->item, itemData->parent);
- }
- }
- break;
-
- case TypeRole:
- for (ItemData *itemData : std::as_const(itemDataList)) {
- if (itemData->values.isEmpty()) {
- const KFileItem item = itemData->item;
- if (item.isDir() || item.isMimeTypeKnown()) {
- itemData->values = retrieveData(itemData->item, itemData->parent);
- }
- }
- }
- break;
+}
- default:
- break;
- }
+void KFileItemModel::prepareItemsForSorting(QList<ItemData *> &itemDataList)
+{
+ prepareItemsWithRole(itemDataList, m_sortRole);
+ prepareItemsWithRole(itemDataList, m_groupRole);
}
int KFileItemModel::expandedParentsCount(const ItemData *data)