X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/546ff9a19e17c60209ab2cdc814ff9fb85a19342..b96c48b44e6e81aefca46be97adcf000e363c512:/src/kitemviews/kfileitemmodel.h diff --git a/src/kitemviews/kfileitemmodel.h b/src/kitemviews/kfileitemmodel.h index 0f7926aae..132a76e46 100644 --- a/src/kitemviews/kfileitemmodel.h +++ b/src/kitemviews/kfileitemmodel.h @@ -355,6 +355,11 @@ private: QHash retrieveData(const KFileItem& item, const ItemData* parent) const; + /** + * @return True if role values benefit from natural or case insensitive sorting. + */ + static bool isRoleValueNatural(const RoleType roleType); + /** * @return True if \a a has a KFileItem whose text is 'less than' the one * of \a b according to QString::operator<(const QString&). @@ -382,8 +387,6 @@ private: int stringCompare(const QString& a, const QString& b, const QCollator& collator) const; - bool useMaximumUpdateInterval() const; - QList > nameRoleGroups() const; QList > sizeRoleGroups() const; QList > timeRoleGroups(const std::function &fileTimeCb) const; @@ -506,12 +509,27 @@ private: friend class DolphinPart; // Accesses m_dirLister }; +inline bool KFileItemModel::isRoleValueNatural(RoleType roleType) +{ + return (roleType == TypeRole || + roleType == TagsRole || + roleType == CommentRole || + roleType == TitleRole || + roleType == ArtistRole || + roleType == GenreRole || + roleType == AlbumRole || + roleType == PathRole || + roleType == DestinationRole || + roleType == OriginUrlRole || + roleType == OwnerRole || + roleType == GroupRole); +} + inline bool KFileItemModel::nameLessThan(const ItemData* a, const ItemData* b) { return a->item.text() < b->item.text(); } - inline bool KFileItemModel::isChildItem(int index) const { if (m_itemData.at(index)->parent) {