Commit 56bdb0d1 authored by Marco Bubke's avatar Marco Bubke Committed by Thomas Hartmann
Browse files

QmlDesigner: Remove AuxiliaryDataauxilary if data is invalid



Change-Id: Ifc802442f54b4c84e1df04cbd8c59ad48c745aa5
Reviewed-by: default avatarThomas Hartmann <Thomas.Hartmann@digia.com>
parent 835ef950
......@@ -174,6 +174,11 @@ void InternalNode::setAuxiliaryData(const PropertyName &name, const QVariant &da
m_auxiliaryDataHash.insert(name, data);
}
void InternalNode::removeAuxiliaryData(const PropertyName &name)
{
m_auxiliaryDataHash.remove(name);
}
bool InternalNode::hasAuxiliaryData(const PropertyName &name) const
{
return m_auxiliaryDataHash.contains(name);
......
......@@ -89,6 +89,7 @@ public:
QVariant auxiliaryData(const PropertyName &name) const;
void setAuxiliaryData(const PropertyName &name, const QVariant &data);
void removeAuxiliaryData(const PropertyName &name);
bool hasAuxiliaryData(const PropertyName &name) const;
QHash<PropertyName, QVariant> auxiliaryData() const;
......
......@@ -803,7 +803,11 @@ void ModelPrivate::notifyPropertiesAboutToBeRemoved(const QList<InternalProperty
void ModelPrivate::setAuxiliaryData(const InternalNode::Pointer& node, const PropertyName &name, const QVariant &data)
{
node->setAuxiliaryData(name, data);
if (data.isValid())
node->setAuxiliaryData(name, data);
else
node->removeAuxiliaryData(name);
notifyAuxiliaryDataChanged(node, name,data);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment