Logo    
KDWinUtils
Helper library for MFC to Qt migration
Loading...
Searching...
No Matches
ksortfilterproxymodel.h
Go to the documentation of this file.
1/****************************************************************************
2**
3** This file is part of KDWinutils, KDAB's MFC to Qt migration tool.
4**
5** Copyright (C) 2024 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
6** All rights reserved.
7**
8** This file is intended solely for use by the migration tools and services
9** provided by Klarälvdalens Datakonsult AB.
10**
11** Any other use or distribution of this software that is not otherwise agreed
12** upon in writing and signed by an authorized representative of Klarälvdalens
13** Datakonsult AB, KDAB (USA) LLC, KDAB (Deutschland) GmbH & Co. K.G.,
14** KDAB (France) SAS, KDAB (UK), Ltd., or any future subsidiary of Klarälvdalens
15** Datakonsult AB is hereby prohibited.
16**
17** Contact info@kdab.com if any conditions stated above are unclear to you.
18**
19****************************************************************************/
20
21#pragma once
22
24
25#include <QSortFilterProxyModel>
26
28
38class KDWINUTILS_EXPORT KSortFilterProxyModel : public QSortFilterProxyModel
39{
40 Q_OBJECT
41
42public:
43 KSortFilterProxyModel(QObject *parent = nullptr);
44
45 using SortFunction = std::function<bool(const QModelIndex &, const QModelIndex &)>;
48
49protected:
51 bool lessThan(const QModelIndex &left, const QModelIndex &right) const override;
52
53private:
54 SortFunction m_sortFunction;
55};
56
The KSortFilterProxyModel is a QSortFilterProxyModel that allows custom sorting.
Definition ksortfilterproxymodel.h:39
std::function< bool(const QModelIndex &, const QModelIndex &)> SortFunction
Definition ksortfilterproxymodel.h:45
bool lessThan(const QModelIndex &left, const QModelIndex &right) const override
KSortFilterProxyModel(QObject *parent=nullptr)
void setSortFunction(SortFunction fn)
#define KDWINUTILS_EXPORT
Definition kdwinutils_export.h:31
#define KDWINUTILS_BEGIN_NAMESPACE
Definition kdwinutils_global.h:27
#define KDWINUTILS_END_NAMESPACE
Definition kdwinutils_global.h:28