summaryrefslogtreecommitdiffstats
path: root/examples/uml
diff options
context:
space:
mode:
authorSandro S. Andrade <sandroandrade@kde.org>2013-11-26 20:47:04 -0300
committerSandro S. Andrade <sandroandrade@kde.org>2013-11-27 02:51:14 +0100
commitdccc32006217247d6105a64f5e2e2239d69943e5 (patch)
tree68627226bb522b6eadcc5325a7da471fa9a240ca /examples/uml
parente99b0ee60ea0562ef8b5e33267f7e4c493c63965 (diff)
Fix more memory leak problems
Change-Id: I6d7d7026b1ca7fa2cb6529aef67449734fc9c9f1 Reviewed-by: Sandro S. Andrade <sandroandrade@kde.org>
Diffstat (limited to 'examples/uml')
-rw-r--r--examples/uml/duse-mt/src/app/shell/projectcontroller.cpp1
-rw-r--r--examples/uml/duse-mt/src/app/shell/uicontroller.cpp1
-rw-r--r--examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.cpp7
-rw-r--r--examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.h1
4 files changed, 10 insertions, 0 deletions
diff --git a/examples/uml/duse-mt/src/app/shell/projectcontroller.cpp b/examples/uml/duse-mt/src/app/shell/projectcontroller.cpp
index 1718d1ee..53309b55 100644
--- a/examples/uml/duse-mt/src/app/shell/projectcontroller.cpp
+++ b/examples/uml/duse-mt/src/app/shell/projectcontroller.cpp
@@ -57,6 +57,7 @@ ProjectController::ProjectController()
ProjectController::~ProjectController()
{
+ qDeleteAll(_currentModelElements);
}
bool ProjectController::initialize()
diff --git a/examples/uml/duse-mt/src/app/shell/uicontroller.cpp b/examples/uml/duse-mt/src/app/shell/uicontroller.cpp
index d2e98b1e..ea488cd4 100644
--- a/examples/uml/duse-mt/src/app/shell/uicontroller.cpp
+++ b/examples/uml/duse-mt/src/app/shell/uicontroller.cpp
@@ -118,6 +118,7 @@ void UiController::addAction(QAction *action, const QString &menuTitle, const QS
foreach (QToolBar *toolbar, _mainWindow.findChildren<QToolBar *>())
if (toolbar->objectName() == toolbarName)
toolbar->addAction(action);
+ action->setParent(&_mainWindow);
}
}
diff --git a/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.cpp b/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.cpp
index 51b21c80..8e308994 100644
--- a/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.cpp
+++ b/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.cpp
@@ -74,6 +74,12 @@ ModelInspectorPlugin::ModelInspectorPlugin(QObject *parent) :
_outputIssues->setPalette(outputIssuesPallete);
}
+ModelInspectorPlugin::~ModelInspectorPlugin()
+{
+ delete _outputIssues->model();
+ delete _outputIssues;
+}
+
bool ModelInspectorPlugin::initialize(DuSE::ICore *core)
{
core->uiController()->addDockWidget(Qt::LeftDockWidgetArea, tr("Model Inspector"), _modelingObjectView);
@@ -93,6 +99,7 @@ bool ModelInspectorPlugin::initialize(DuSE::ICore *core)
void ModelInspectorPlugin::populateOutputIssues()
{
+ delete _outputIssues->model();
_outputIssues->setModel(new QStringListModel(DuSE::ICore::self()->projectController()->errorStrings()));
}
diff --git a/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.h b/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.h
index 2ba1eae6..4cabb9b1 100644
--- a/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.h
+++ b/examples/uml/duse-mt/src/plugins/modelinspector/modelinspectorplugin.h
@@ -57,6 +57,7 @@ class ModelInspectorPlugin : public DuSE::IPlugin
public:
ModelInspectorPlugin(QObject *parent = 0);
+ virtual ~ModelInspectorPlugin();
virtual bool initialize(DuSE::ICore *core);