ScxmlEditor: Make ScxmlEditorFactory independent of QObject inheritance

Change-Id: I11412b850869c8295e9eed9ed74ff4f7dcbcf8b2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2020-02-11 17:55:15 +01:00
parent afd8bc2c9e
commit 7a08a3a4b9
4 changed files with 9 additions and 4 deletions

View File

@@ -87,8 +87,7 @@ public:
}
};
ScxmlEditorData::ScxmlEditorData(QObject *parent)
: QObject(parent)
ScxmlEditorData::ScxmlEditorData()
{
m_contexts.add(ScxmlEditor::Constants::C_SCXMLEDITOR);

View File

@@ -46,7 +46,7 @@ class ScxmlEditorData : public QObject
{
Q_OBJECT
public:
ScxmlEditorData(QObject *parent = nullptr);
ScxmlEditorData();
~ScxmlEditorData() override;
void fullInit();

View File

@@ -48,7 +48,7 @@ ScxmlEditorFactory::ScxmlEditorFactory()
setEditorCreator([this] {
if (!m_editorData) {
m_editorData = new ScxmlEditorData(this);
m_editorData = new ScxmlEditorData;
QGuiApplication::setOverrideCursor(Qt::WaitCursor);
m_editorData->fullInit();
QGuiApplication::restoreOverrideCursor();
@@ -56,3 +56,8 @@ ScxmlEditorFactory::ScxmlEditorFactory()
return m_editorData->createEditor();
});
}
ScxmlEditorFactory::~ScxmlEditorFactory()
{
delete m_editorData;
}

View File

@@ -36,6 +36,7 @@ class ScxmlEditorFactory final : public Core::IEditorFactory
{
public:
ScxmlEditorFactory();
~ScxmlEditorFactory();
private:
ScxmlEditorData* m_editorData = nullptr;