diff options
author | Sandro S. Andrade <sandroandrade@kde.org> | 2013-11-22 23:37:49 -0300 |
---|---|---|
committer | Sandro S. Andrade <sandroandrade@kde.org> | 2013-11-23 03:33:25 +0100 |
commit | 37fea99b0acc2e601f353cd24caf3d2e4e9ce910 (patch) | |
tree | 55d4ff3333ffff9847fa89e0b155a918ab45b091 | |
parent | 24aff07c12479b93ffa54f7948902a3e179cbcf1 (diff) |
Fix correct instantiation of DuSE design dimensions
Change-Id: Ib0429c2bf1f2ee63f051cf81b5107bf0d4f41765
Reviewed-by: Sandro S. Andrade <sandroandrade@kde.org>
-rw-r--r-- | examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp | 12 |
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*"))) { |