aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2020-04-21 08:06:43 +0200
committerThomas Hartmann <thomas.hartmann@qt.io>2020-04-21 10:57:26 +0000
commit3caafb2b8194ab28c5ee9f9772abd6233aa3845d (patch)
tree7bafa729d4faaaa020e75699e48cff843ac8c857 /src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
parentdbccc57597169246827c5ec6087ad7316c2ad4e1 (diff)
QmlDesigner: Inspect components for existing states
For each created items we retrieve a list of the names of all existing states. Task-number: QDS-1978 Change-Id: I8e85e439fce3c6204cb8bcf69f6be847cc8dae5c Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp')
-rw-r--r--src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
index 15d09e4516..453c1b31a4 100644
--- a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
@@ -76,6 +76,7 @@ public:
QString errorMessage;
QHash<PropertyName, QPair<PropertyName, qint32> > anchors;
+ QStringList allStates;
};
NodeInstance::NodeInstance() = default;
@@ -169,6 +170,10 @@ bool NodeInstance::hasError() const
return !d->errorMessage.isEmpty();
}
+QStringList NodeInstance::allStateNames() const
+{
+ return d->allStates;
+}
bool NodeInstance::isValid() const
{
@@ -592,6 +597,16 @@ InformationName NodeInstance::setInformationHasBindingForProperty(const Property
return NoInformationChange;
}
+InformationName NodeInstance::setAllStates(const QStringList &states)
+{
+ if (d->allStates != states) {
+ d->allStates = states;
+ return AllStates;
+ }
+
+ return NoInformationChange;
+}
+
InformationName NodeInstance::setInformation(InformationName name, const QVariant &information, const QVariant &secondInformation, const QVariant &thirdInformation)
{
switch (name) {
@@ -614,6 +629,7 @@ InformationName NodeInstance::setInformation(InformationName name, const QVarian
case Anchor: return setInformationAnchor(information.toByteArray(), secondInformation.toByteArray(), thirdInformation.value<qint32>());
case InstanceTypeForProperty: return setInformationInstanceTypeForProperty(information.toByteArray(), secondInformation.toByteArray());
case HasBindingForProperty: return setInformationHasBindingForProperty(information.toByteArray(), secondInformation.toBool());
+ case AllStates: return setAllStates(information.toStringList());
case NoName:
default: break;
}