diff options
Diffstat (limited to 'examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp')
-rw-r--r-- | examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp b/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp index 0fd3f317..305e164e 100644 --- a/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp +++ b/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp @@ -40,6 +40,8 @@ ****************************************************************************/ #include "designspaceexplorerplugin.h" +#include <QDebug> + #include <duseinterfaces/iuicontroller.h> #include <duseinterfaces/iprojectcontroller.h> @@ -171,6 +173,20 @@ void DesignSpaceExplorerPlugin::newDuseDesign() return; } + QScriptValue array = _engine.newArray(); + foreach (QObject *modelingObject, _core->projectController()->currentModelObjects()) + array.property(QString::fromLatin1("push")).call(array, QScriptValueList() << _engine.newQObject(modelingObject)); + _engine.globalObject().setProperty("input", array); + + foreach (QObject *designDimension, _duseInstance.first()->asQModelingObject()->property("designDimensions").value< QList<QObject *> >()) { + foreach (const QString &body, (designDimension->property("instanceSelectionRule").value<QObject *>())->property("bodies").value< QList<QString> >()) { + qDebug() << body; + QScriptValue value = _engine.evaluate(body); + if (value.toQObject()) + qDebug() << "result: " << value.toQObject()->objectName(); + } + } + //modelingObjectList.first()->setQmlContextProperties(_metricsQuickView->engine()->rootContext()); // _engine.globalObject().setProperty("designspace", _engine.newQObject(modelingObjectList.at(0)->asQModelingObject())); |