diff options
Diffstat (limited to 'src/kitemviews/kfileitemmodel.cpp')
| -rw-r--r-- | src/kitemviews/kfileitemmodel.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp index c58c2ee79..16fc54b43 100644 --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@ -1580,6 +1580,7 @@ QList<KFileItemModel::ItemData*> KFileItemModel::createItemDataList(const QUrl& void KFileItemModel::prepareItemsForSorting(QList<ItemData*>& itemDataList) { switch (m_sortRole) { + case ExtensionRole: case PermissionsRole: case OwnerRole: case GroupRole: @@ -1801,6 +1802,10 @@ QHash<QByteArray, QVariant> KFileItemModel::retrieveData(const KFileItem& item, data.insert(sharedValue("text"), item.text()); } + if (m_requestRole[ExtensionRole]) { + data.insert(sharedValue("extension"), QFileInfo(item.name()).suffix()); + } + if (m_requestRole[SizeRole] && !isDir) { data.insert(sharedValue("size"), item.size()); } @@ -2609,6 +2614,7 @@ const KFileItemModel::RoleInfoMap* KFileItemModel::rolesInfoMap(int& count) { "creationtime", CreationTimeRole, kli18nc("@label", "Created"), KLazyLocalizedString(), false, false }, { "accesstime", AccessTimeRole, kli18nc("@label", "Accessed"), KLazyLocalizedString(), false, false }, { "type", TypeRole, kli18nc("@label", "Type"), KLazyLocalizedString(), false, false }, + { "extension", ExtensionRole, kli18nc("@label", "Extension"), KLazyLocalizedString(), false, false }, { "rating", RatingRole, kli18nc("@label", "Rating"), KLazyLocalizedString(), true, false }, { "tags", TagsRole, kli18nc("@label", "Tags"), KLazyLocalizedString(), true, false }, { "comment", CommentRole, kli18nc("@label", "Comment"), KLazyLocalizedString(), true, false }, |
