summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp b/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp
index a072c233..cdbcfef2 100644
--- a/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp
+++ b/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp
@@ -243,11 +243,13 @@ void DesignSpaceExplorerPlugin::newDuseDesign()
foreach (const QString &body, designDimension->instanceSelectionRule()->bodies()) {
qDebug() << body;
QScriptValue value = _engine.evaluate(body);
- if (value.toVariant().canConvert(QMetaType::type("QList<QObject*>"))) {
- foreach (QObject *targetInstance, value.toVariant().value< QList<QObject*> >()) {
- QDuseDesignDimensionInstance *designDimensionInstance = new QDuseDesignDimensionInstance;
- designDimensionInstance->setTargetInstance(qmodelingelementproperty_cast<QUmlElement *>(targetInstance));
- designDimension->addDesignDimensionInstance(designDimensionInstance);
+ if (value.toVariant().canConvert(QMetaType::type("QVariantList"))) {
+ foreach (const QVariant &variant, value.toVariant().value<QVariantList>()) {
+ if (variant.canConvert(QMetaType::type("QObject*"))) {
+ QDuseDesignDimensionInstance *designDimensionInstance = new QDuseDesignDimensionInstance;
+ designDimensionInstance->setTargetInstance(qmodelingelementproperty_cast<QUmlElement *>(variant.value<QObject *>()));
+ designDimension->addDesignDimensionInstance(designDimensionInstance);
+ }
}
}
else if (value.toVariant().canConvert(QMetaType::type("QObject*"))) {