Squish: Dissolve plugin pimpl

Change-Id: I8e291e91c5d8c94274f39db40a625a796d8ad9b7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2024-02-01 17:55:04 +01:00
parent 2667def8d2
commit 4d00dc5ef6

View File

@@ -32,16 +32,22 @@ using namespace Utils;
namespace Squish::Internal {
class SquishPluginPrivate final : public QObject
class SquishPlugin final : public ExtensionSystem::IPlugin
{
public:
SquishPluginPrivate();
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "Squish.json")
bool initializeGlobalScripts();
};
private:
void initialize() final
{
setupObjectsMapEditor();
setupSquishOutputPane(this);
setupSquishTools(this);
setupSquishWizardPages();
setupSquishNavigationWidgetFactory();
SquishPluginPrivate::SquishPluginPrivate()
{
qRegisterMetaType<SquishResultItem*>("SquishResultItem*");
const Id menuId = "Squish.Menu";
@@ -67,10 +73,11 @@ SquishPluginPrivate::SquishPluginPrivate()
ActionContainer *toolsMenu = ActionManager::actionContainer(Core::Constants::M_TOOLS);
toolsMenu->addMenu(menu);
}
ProjectExplorer::JsonWizardFactory::addWizardPath(":/squish/wizard/");
}
bool SquishPluginPrivate::initializeGlobalScripts()
{
bool initializeGlobalScripts()
{
// The code expects squishTestTreeModel to exist, so force creation now.
(void) SquishTestTreeModel::instance();
@@ -91,35 +98,14 @@ bool SquishPluginPrivate::initializeGlobalScripts()
SquishFileHandler::instance()->setSharedFolders(globalDirs);
});
return true;
}
class SquishPlugin final : public ExtensionSystem::IPlugin
{
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "Squish.json")
private:
void initialize() final
{
setupObjectsMapEditor();
setupSquishOutputPane(this);
setupSquishTools(this);
d.reset(new SquishPluginPrivate);
setupSquishWizardPages();
setupSquishNavigationWidgetFactory();
ProjectExplorer::JsonWizardFactory::addWizardPath(":/squish/wizard/");
}
bool delayedInitialize() final
{
connect(&settings().squishPath, &BaseAspect::changed,
d.get(), &SquishPluginPrivate::initializeGlobalScripts);
this, &SquishPlugin::initializeGlobalScripts);
return d->initializeGlobalScripts();
return initializeGlobalScripts();
}
ShutdownFlag aboutToShutdown() final
@@ -130,8 +116,6 @@ private:
this, &ExtensionSystem::IPlugin::asynchronousShutdownFinished);
return AsynchronousShutdown;
}
std::unique_ptr<SquishPluginPrivate> d;
};
} // Squish::Internal