summaryrefslogtreecommitdiffstats
path: root/filesorter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'filesorter.cpp')
-rw-r--r--filesorter.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/filesorter.cpp b/filesorter.cpp
index fc9d1c4..a87ac6f 100644
--- a/filesorter.cpp
+++ b/filesorter.cpp
@@ -1,6 +1,12 @@
#include "filesorter.h"
-FileSorter::FileSorter()
-{
+FileSorter::FileSorter(QObject *parent) : QSortFilterProxyModel(parent) {}
+bool FileSorter::lessThan(const QModelIndex &source_left, const QModelIndex &source_right) const {
+ QVariant leftData = sourceModel()->data(source_left, Qt::UserRole + 1);
+ QVariant rightData = sourceModel()->data(source_right, Qt::UserRole + 1);
+ if(leftData.type() == QVariant::Int){
+ return leftData.toInt() < rightData.toInt();
+ }
+ return QSortFilterProxyModel::lessThan(source_left, source_right);
}