diff options
Diffstat (limited to 'filesorter.cpp')
-rw-r--r-- | filesorter.cpp | 10 |
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); } |