]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kstandarditem.cpp
Fix includes
[dolphin.git] / src / kitemviews / kstandarditem.cpp
index dc03a0d251f888c7b59cae396c77b33e7fa8ebac..f3fd258f93a5616578ebcfac8484fdbe5e4b06aa 100644 (file)
@@ -18,8 +18,8 @@
  ***************************************************************************/
 
 #include "kstandarditem.h"
-
-#include <KDebug>
+#include <QSet>
+#include <QByteArray>
 #include "kstandarditemmodel.h"
 
 KStandardItem::KStandardItem(KStandardItem* parent) :
@@ -103,7 +103,14 @@ QString KStandardItem::group() const
 
 void KStandardItem::setDataValue(const QByteArray& role, const QVariant& value)
 {
+    const QVariant previous = m_data.value(role);
+    if (previous == value) {
+        return;
+    }
+
     m_data.insert(role, value);
+    onDataValueChanged(role, value, previous);
+
     if (m_model) {
         const int index = m_model->index(this);
         QSet<QByteArray> changedRoles;
@@ -131,7 +138,9 @@ KStandardItem* KStandardItem::parent() const
 
 void KStandardItem::setData(const QHash<QByteArray, QVariant>& values)
 {
+    const QHash<QByteArray, QVariant> previous = m_data;
     m_data = values;
+    onDataChanged(values, previous);
 }
 
 QHash<QByteArray, QVariant> KStandardItem::data() const