From 2667def8d2ee37075bdb9dc663b2b4df4ac6736e Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 1 Feb 2024 17:51:23 +0100 Subject: [PATCH] Squish: Use setup function for remaining plugin pimpl items Change-Id: I5d74b0b0c4b25d580566a1d8687279990d3e9675 Reviewed-by: Christian Stenger --- src/plugins/squish/squishoutputpane.cpp | 6 ++++++ src/plugins/squish/squishoutputpane.h | 2 ++ src/plugins/squish/squishplugin.cpp | 12 ++++++------ src/plugins/squish/squishtools.cpp | 6 ++++++ src/plugins/squish/squishtools.h | 8 ++++---- 5 files changed, 24 insertions(+), 10 deletions(-) diff --git a/src/plugins/squish/squishoutputpane.cpp b/src/plugins/squish/squishoutputpane.cpp index 1395af9e463..adb73b6b7e1 100644 --- a/src/plugins/squish/squishoutputpane.cpp +++ b/src/plugins/squish/squishoutputpane.cpp @@ -385,4 +385,10 @@ void SquishOutputPane::enableAllFiltersTriggered() m_filterModel->enableAllResultTypes(); } +void setupSquishOutputPane(QObject *guard) +{ + m_instance = new SquishOutputPane; + m_instance->setParent(guard); +} + } // namespace Squish::Internal diff --git a/src/plugins/squish/squishoutputpane.h b/src/plugins/squish/squishoutputpane.h index 914e931f794..c00f260a2b0 100644 --- a/src/plugins/squish/squishoutputpane.h +++ b/src/plugins/squish/squishoutputpane.h @@ -74,4 +74,6 @@ private: QMenu *m_filterMenu; }; +void setupSquishOutputPane(QObject *guard); + } // namespace Squish::Internal diff --git a/src/plugins/squish/squishplugin.cpp b/src/plugins/squish/squishplugin.cpp index ada95786e7d..3fd1a3bc569 100644 --- a/src/plugins/squish/squishplugin.cpp +++ b/src/plugins/squish/squishplugin.cpp @@ -38,9 +38,6 @@ public: SquishPluginPrivate(); bool initializeGlobalScripts(); - - SquishOutputPane m_outputPane; - SquishTools m_squishTools; }; SquishPluginPrivate::SquishPluginPrivate() @@ -84,7 +81,7 @@ bool SquishPluginPrivate::initializeGlobalScripts() if (!squishserver.isExecutableFile()) return false; - m_squishTools.queryGlobalScripts([](const QString &output, const QString &error) { + SquishTools::instance()->queryGlobalScripts([](const QString &output, const QString &error) { if (output.isEmpty() || !error.isEmpty()) return; // ignore (for now?) @@ -106,6 +103,9 @@ private: { setupObjectsMapEditor(); + setupSquishOutputPane(this); + setupSquishTools(this); + d.reset(new SquishPluginPrivate); setupSquishWizardPages(); @@ -124,9 +124,9 @@ private: ShutdownFlag aboutToShutdown() final { - if (d->m_squishTools.shutdown()) + if (SquishTools::instance()->shutdown()) return SynchronousShutdown; - connect(&d->m_squishTools, &SquishTools::shutdownFinished, + connect(SquishTools::instance(), &SquishTools::shutdownFinished, this, &ExtensionSystem::IPlugin::asynchronousShutdownFinished); return AsynchronousShutdown; } diff --git a/src/plugins/squish/squishtools.cpp b/src/plugins/squish/squishtools.cpp index 3ed7b7efe7e..f6ef2e67e07 100644 --- a/src/plugins/squish/squishtools.cpp +++ b/src/plugins/squish/squishtools.cpp @@ -1327,4 +1327,10 @@ void SquishTools::setupRunnerForRun() this, &SquishTools::logOutputReceived); } +void setupSquishTools(QObject *guard) +{ + s_instance = new SquishTools; + s_instance->setParent(guard); +} + } // namespace Squish::Internal diff --git a/src/plugins/squish/squishtools.h b/src/plugins/squish/squishtools.h index 099850f5a7c..223bfb7c23e 100644 --- a/src/plugins/squish/squishtools.h +++ b/src/plugins/squish/squishtools.h @@ -21,8 +21,7 @@ class QFile; class QFileSystemWatcher; QT_END_NAMESPACE -namespace Squish { -namespace Internal { +namespace Squish::Internal { class SquishXmlOutputHandler; @@ -172,5 +171,6 @@ private: bool m_closeRunnerOnEndRecord = false; }; -} // namespace Internal -} // namespace Squish +void setupSquishTools(QObject *guard); + +} // Squish::Internal