X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/6e9713c558ad07b0baa2a79ae69328fda7b61a15..6e05c6365eec005caa3198a13bb071c782b8b192:/src/kitemviews/kstandarditem.cpp diff --git a/src/kitemviews/kstandarditem.cpp b/src/kitemviews/kstandarditem.cpp index dc03a0d25..4fb3f8f98 100644 --- a/src/kitemviews/kstandarditem.cpp +++ b/src/kitemviews/kstandarditem.cpp @@ -18,14 +18,12 @@ ***************************************************************************/ #include "kstandarditem.h" - -#include #include "kstandarditemmodel.h" KStandardItem::KStandardItem(KStandardItem* parent) : m_parent(parent), m_children(), - m_model(0), + m_model(nullptr), m_data() { } @@ -33,7 +31,7 @@ KStandardItem::KStandardItem(KStandardItem* parent) : KStandardItem::KStandardItem(const QString& text, KStandardItem* parent) : m_parent(parent), m_children(), - m_model(0), + m_model(nullptr), m_data() { setText(text); @@ -42,7 +40,7 @@ KStandardItem::KStandardItem(const QString& text, KStandardItem* parent) : KStandardItem::KStandardItem(const QString& icon, const QString& text, KStandardItem* parent) : m_parent(parent), m_children(), - m_model(0), + m_model(nullptr), m_data() { setIcon(icon); @@ -103,7 +101,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 changedRoles; @@ -131,7 +136,9 @@ KStandardItem* KStandardItem::parent() const void KStandardItem::setData(const QHash& values) { + const QHash previous = m_data; m_data = values; + onDataChanged(values, previous); } QHash KStandardItem::data() const