summaryrefslogtreecommitdiffstats
path: root/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp')
-rw-r--r--examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp25
1 files changed, 25 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 7727bdce..d6b214e7 100644
--- a/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp
+++ b/examples/uml/duse-mt/src/plugins/designspaceexplorer/designspaceexplorerplugin.cpp
@@ -63,6 +63,9 @@
#include <QtModeling/QXmiReader>
#include <QtModeling/QModelingElement>
+#include <QtModelingWidgets/QModelingObjectView>
+#include <QtModelingWidgets/QModelingObjectModel>
+
#include <QtUml/QUmlModel>
#include <QtUml/QUmlProfile>
#include <QtUml/QUmlOpaqueExpression>
@@ -121,8 +124,11 @@ DesignSpaceExplorerPlugin::DesignSpaceExplorerPlugin(QObject *parent) :
_currentDesignSpaceLocationQuickView(new QQuickView),
_metricsQuickView(new QQuickView),
_designSpaceExplorer(new QTableWidget),
+ _currentDesignSpaceLocationView(new QModelingObjectView),
+ _currentDesignSpaceLocationModel(new QModelingObjectModel),
_newDuseDesignDialog(new NewDuseDesignDialog)
{
+ _currentDesignSpaceLocationView->setModel(_currentDesignSpaceLocationModel);
}
DesignSpaceExplorerPlugin::~DesignSpaceExplorerPlugin()
@@ -146,6 +152,8 @@ bool DesignSpaceExplorerPlugin::initialize(DuSE::ICore *core)
core->uiController()->addDockWidget(Qt::LeftDockWidgetArea, tr("Quality Metrics"), QWidget::createWindowContainer(_metricsQuickView));
+ core->uiController()->addDockWidget(Qt::LeftDockWidgetArea, tr("Current Location Inspector"), _currentDesignSpaceLocationView);
+
_designSpaceExplorer->setAlternatingRowColors(true);
_designSpaceExplorer->horizontalHeader()->setStretchLastSection(true);
_designSpaceExplorer->verticalHeader()->setVisible(false);
@@ -299,3 +307,20 @@ void DesignSpaceExplorerPlugin::openDuseDesign()
{
}
+void DesignSpaceExplorerPlugin::designSpaceChanged()
+{
+// qDeleteAll(_currentDesignSpaceLocation);
+ QXmiReader reader;
+ QFile inputModel(_newDuseDesignDialog->_inputModelFileName);
+ if (!inputModel.open(QFile::ReadOnly | QFile::Text)) {
+ QMessageBox::critical(0, tr("Create new DuSE design"), tr("Cannot read file %1").arg(_newDuseDesignDialog->_inputModelFileName));
+ return;
+ }
+ _currentDesignSpaceLocation = reader.readFile(&inputModel);
+ QList<QModelingObject *> currentModelObjects;
+ foreach (QModelingElement *element, _currentDesignSpaceLocation)
+ currentModelObjects << element->asQModelingObject();
+
+ _currentDesignSpaceLocationModel->setModelingObjects(currentModelObjects);
+}
+