![]() |
digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
|
Public Types | |
enum | CategorizationMode { NoCategories , OneCategory , CategoryByAlbum , CategoryByFormat , CategoryByMonth , CategoryByFaces } |
enum | SortOrder { AscendingOrder = Qt::AscendingOrder , DescendingOrder = Qt::DescendingOrder , DefaultOrder } |
enum | SortRole { SortByFileName , SortByFilePath , SortByCreationDate , SortByModificationDate , SortByFileSize , SortByRating , SortByImageSize , SortByAspectRatio , SortByFaces , SortBySimilarity , SortByManualOrderAndName , SortByManualOrderAndDate } |
Public Member Functions | |
int | compare (const ItemInfo &left, const ItemInfo &right) const |
Compares the ItemInfos left and right. | |
int | compare (const ItemInfo &left, const ItemInfo &right, SortRole sortRole) const |
— Image Sorting — | |
int | compareCategories (const ItemInfo &left, const ItemInfo &right, const FaceTagsIface &leftFace, const FaceTagsIface &rightFace) const |
Compares the categories of left and right. | |
bool | isCategorized () const |
bool | lessThan (const ItemInfo &left, const ItemInfo &right) const |
Returns true if left is less than right. | |
bool | lessThan (const QVariant &left, const QVariant &right) const |
Returns true if left QVariant is less than right. | |
bool | operator== (const ItemSortSettings &other) const |
void | setCategorizationMode (CategorizationMode mode) |
— Categories — | |
void | setCategorizationSortOrder (SortOrder order) |
void | setSortOrder (SortOrder order) |
void | setSortRole (SortRole role) |
void | setStringTypeNatural (bool natural) |
DatabaseFields::Set | watchFlags () const |
— Change notification — | |
Static Public Member Functions | |
template<typename T > | |
static int | compareByOrder (const T &a, const T &b, Qt::SortOrder sortOrder) |
static int | compareByOrder (int compareResult, Qt::SortOrder sortOrder) |
Takes a typical result from a compare method (0 is equal, -1 is less than, 1 is greater than) and applies the given sort order to it. | |
template<typename T > | |
static int | compareValue (const T &a, const T &b) |
Returns the usual compare result of -1, 0, or 1 for lessThan, equals and greaterThan. | |
static Qt::SortOrder | defaultSortOrderForCategorizationMode (CategorizationMode mode) |
static Qt::SortOrder | defaultSortOrderForSortRole (SortRole role) |
template<typename T > | |
static bool | lessThanByOrder (const T &a, const T &b, Qt::SortOrder sortOrder) |
— Utilities — | |
static int | naturalCompare (const QString &a, const QString &b, Qt::SortOrder sortOrder, Qt::CaseSensitivity caseSensitive=Qt::CaseSensitive, bool natural=true) |
Compares the two string by natural comparison and adheres to given sort order. | |
Public Attributes | |
Qt::CaseSensitivity | categorizationCaseSensitivity = Qt::CaseSensitive |
CategorizationMode | categorizationMode = NoCategories |
SortOrder | categorizationSortOrder = DefaultOrder |
Qt::SortOrder | currentCategorizationSortOrder = Qt::AscendingOrder |
Only Ascending or Descending, never DefaultOrder. | |
Qt::SortOrder | currentSortOrder = Qt::AscendingOrder |
Qt::CaseSensitivity | sortCaseSensitivity = Qt::CaseSensitive |
SortOrder | sortOrder = DefaultOrder |
SortRole | sortRole = SortByFileName |
bool | strTypeNatural = true |
Return -1 if left is less than right, 1 if left is greater than right, and 0 if left equals right comparing the current sort role's value. Adheres to set sort role and sort order.
int Digikam::ItemSortSettings::compareCategories | ( | const ItemInfo & | left, |
const ItemInfo & | right, | ||
const FaceTagsIface & | leftFace, | ||
const FaceTagsIface & | rightFace | ||
) | const |
Return -1 if left is less than right, 0 if both fall in the same category, and 1 if left is greater than right. Adheres to set categorization mode and current category sort order. Face passed in to allow Categorization by Faces. Pass in an empty Face if not needed.
Adheres to current sort role and sort order.
bool Digikam::ItemSortSettings::lessThan | ( | const QVariant & | left, |
const QVariant & | right | ||
) | const |
Adheres to current sort role and sort order. Use for extraValue, if necessary.
|
inlinestatic |
Returns a < b if sortOrder is Ascending, or b < a if order is descending.
DatabaseFields::Set Digikam::ItemSortSettings::watchFlags | ( | ) | const |
Returns database fields a change in which would affect the current sorting.