33namespace DatabaseFields
44 AscendingOrder = Qt::AscendingOrder,
45 DescendingOrder = Qt::DescendingOrder,
73 SortByManualOrderAndDate
90 int compareCategories(
const ItemInfo& left,
114 bool lessThan(
const QVariant& left,
const QVariant& right)
const;
118 void setStringTypeNatural(
bool natural);
125 void setCategorizationSortOrder(
SortOrder order);
130 return (categorizationMode >= CategoryByAlbum);
137 int compare(
const ItemInfo& left,
const ItemInfo& right, SortRole sortRole)
const;
139 static Qt::SortOrder defaultSortOrderForCategorizationMode(CategorizationMode mode);
140 static Qt::SortOrder defaultSortOrderForSortRole(SortRole role);
158 template <
typename T>
161 if (sortOrder == Qt::AscendingOrder)
172 template <
typename T>
194 if (sortOrder == Qt::AscendingOrder)
196 return compareResult;
199 return (- compareResult);
202 template <
typename T>
205 return compareByOrder(compareValue(a, b), sortOrder);
213 Qt::SortOrder sortOrder,
214 Qt::CaseSensitivity caseSensitive = Qt::CaseSensitive,
219 return compareByOrder(sorter->
itemCompare(a, b, caseSensitive, natural), sortOrder);
228 Qt::SortOrder currentCategorizationSortOrder = Qt::AscendingOrder;
229 Qt::CaseSensitivity categorizationCaseSensitivity = Qt::CaseSensitive;
233 bool strTypeNatural =
true;
235 Qt::SortOrder currentSortOrder = Qt::AscendingOrder;
236 Qt::CaseSensitivity sortCaseSensitivity = Qt::CaseSensitive;
Definition coredbfields.h:376
Definition itemsortcollator.h:30
int itemCompare(const QString &a, const QString &b, Qt::CaseSensitivity caseSensitive, bool natural) const
Definition itemsortcollator.cpp:76
Definition itemsortsettings.h:39
static int naturalCompare(const QString &a, const QString &b, Qt::SortOrder sortOrder, Qt::CaseSensitivity caseSensitive=Qt::CaseSensitive, bool natural=true)
Definition itemsortsettings.h:211
SortRole
Definition itemsortsettings.h:60
@ SortByModificationDate
Definition itemsortsettings.h:65
@ SortBySimilarity
Definition itemsortsettings.h:71
@ SortByAspectRatio
width / height * 100000
Definition itemsortsettings.h:69
@ SortByFileName
Definition itemsortsettings.h:62
@ SortByImageSize
pixel number
Definition itemsortsettings.h:68
@ SortByFaces
count of unconfirmed faces
Definition itemsortsettings.h:70
@ SortByCreationDate
Definition itemsortsettings.h:64
@ SortByFilePath
Definition itemsortsettings.h:63
@ SortByManualOrderAndName
Definition itemsortsettings.h:72
@ SortByFileSize
Definition itemsortsettings.h:66
@ SortByRating
Definition itemsortsettings.h:67
ItemSortSettings()=default
static bool lessThanByOrder(const T &a, const T &b, Qt::SortOrder sortOrder)
— Utilities —
Definition itemsortsettings.h:159
bool isCategorized() const
Definition itemsortsettings.h:128
static int compareValue(const T &a, const T &b)
Definition itemsortsettings.h:173
CategorizationMode
Definition itemsortsettings.h:50
@ CategoryByMonth
Definition itemsortsettings.h:55
@ OneCategory
all items in one global category
Definition itemsortsettings.h:52
@ NoCategories
categorization switched off
Definition itemsortsettings.h:51
@ CategoryByFormat
Definition itemsortsettings.h:54
@ CategoryByAlbum
Definition itemsortsettings.h:53
static int compareByOrder(const T &a, const T &b, Qt::SortOrder sortOrder)
Definition itemsortsettings.h:203
static int compareByOrder(int compareResult, Qt::SortOrder sortOrder)
Definition itemsortsettings.h:192
SortOrder
Definition itemsortsettings.h:43
Definition datefolderview.cpp:34
bool operator==(const SearchTextSettings &a, const SearchTextSettings &b)
Definition searchtextbar.cpp:40