summaryrefslogtreecommitdiffstats
path: root/framework/src/entitymodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/entitymodel.cpp')
-rw-r--r--framework/src/entitymodel.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/framework/src/entitymodel.cpp b/framework/src/entitymodel.cpp
index e2a4ea2d..92f8c70b 100644
--- a/framework/src/entitymodel.cpp
+++ b/framework/src/entitymodel.cpp
@@ -29,6 +29,7 @@ EntityModel::EntityModel(QObject *parent) : QSortFilterProxyModel(parent)
29{ 29{
30 setDynamicSortFilter(true); 30 setDynamicSortFilter(true);
31 sort(0, Qt::AscendingOrder); 31 sort(0, Qt::AscendingOrder);
32 setFilterCaseSensitivity(Qt::CaseInsensitive);
32} 33}
33 34
34EntityModel::~EntityModel() 35EntityModel::~EntityModel()
@@ -124,6 +125,9 @@ void EntityModel::setRoles(const QStringList &roles)
124 for (const auto &r : mRoleNames.keys()) { 125 for (const auto &r : mRoleNames.keys()) {
125 mRoles.insert(mRoleNames.value(r), r); 126 mRoles.insert(mRoleNames.value(r), r);
126 } 127 }
128 if (!mSortRole.isEmpty()) {
129 QSortFilterProxyModel::setSortRole(mRoles.value(mSortRole.toUtf8()));
130 }
127 updateQuery(); 131 updateQuery();
128} 132}
129 133
@@ -143,6 +147,19 @@ QVariantMap EntityModel::filter() const
143 return {}; 147 return {};
144} 148}
145 149
150void EntityModel::setSortRole(const QString &sortRole)
151{
152 mSortRole = sortRole;
153 if (!mRoles.isEmpty()) {
154 QSortFilterProxyModel::setSortRole(mRoles.value(sortRole.toUtf8()));
155 }
156}
157
158QString EntityModel::sortRole() const
159{
160 return mSortRole;
161}
162
146 163
147QVariantMap EntityModel::data(int row) const 164QVariantMap EntityModel::data(int row) const
148{ 165{