bool SSortFileItem::IgnoreFoldersDescending(const CFileItemPtr &left, const CFileItemPtr &right) { // sanity RETURN_IF_NULL(left,false); RETURN_IF_NULL(right,false); // ignore the ".." item - that should always be on top if (left->IsParentFolder()) return true; if (right->IsParentFolder()) return false; return StringUtils::AlphaNumericCompare(left->GetSortLabel().c_str(),right->GetSortLabel().c_str()) > 0; }
bool SSortFileItem::IgnoreFoldersDescending(const CFileItemPtr &left, const CFileItemPtr &right) { // sanity RETURN_IF_NULL(left,false); RETURN_IF_NULL(right,false); // ignore items that should sort on top or bottom if (left->SortsOnTop() != right->SortsOnTop()) return left->SortsOnTop(); if (left->SortsOnBottom() != right->SortsOnBottom()) return !left->SortsOnBottom(); if (left->SortsOnTop() || left->SortsOnBottom()) return false; // both have either sort on top or sort on bottom -> leave as-is return StringUtils::AlphaNumericCompare(left->GetSortLabel().c_str(),right->GetSortLabel().c_str()) > 0; }