┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kfileitemmodel.cpp
diff options
context:
space:
mode:
authorFrank Reininghaus <[email protected]>2014-06-19 20:35:22 +0200
committerFrank Reininghaus <[email protected]>2014-06-19 20:35:22 +0200
commitefa19caa46f1d56afab9cc33c456bc84c47d95e1 (patch)
tree1417c2172b768370fb622067497e1662b4256af7 /src/kitemviews/kfileitemmodel.cpp
parent7a593fc92bf28fbdcdec0e241e18ee8ba2ad7334 (diff)
Implement TODO concerning changed roles
When emitting the itemsChanged signal in KFileItemModel::setRoles, use the changed roles in the argument of the signal. A warning message which was related to this issue was removed in 7a83252e0d919d8408e0808ccbd7b401d57444d3 REVIEW: 118815
Diffstat (limited to 'src/kitemviews/kfileitemmodel.cpp')
-rw-r--r--src/kitemviews/kfileitemmodel.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp
index 829063523..72acf776a 100644
--- a/src/kitemviews/kfileitemmodel.cpp
+++ b/src/kitemviews/kfileitemmodel.cpp
@@ -449,6 +449,8 @@ void KFileItemModel::setRoles(const QSet<QByteArray>& roles)
if (m_roles == roles) {
return;
}
+
+ const QSet<QByteArray> changedRoles = (roles - m_roles) + (m_roles - roles);
m_roles = roles;
if (count() > 0) {
@@ -477,7 +479,7 @@ void KFileItemModel::setRoles(const QSet<QByteArray>& roles)
m_itemData[i]->values = retrieveData(m_itemData.at(i)->item, m_itemData.at(i)->parent);
}
- emit itemsChanged(KItemRangeList() << KItemRange(0, count()), QSet<QByteArray>());
+ emit itemsChanged(KItemRangeList() << KItemRange(0, count()), changedRoles);
}
// Clear the 'values' of all filtered items. They will be re-populated with the