IncrediBuild: Use newest plugin setup pattern

Change-Id: I520d3bfbfa1bac2672b92a8e4876aeacb9d67392
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2024-10-18 13:32:13 +02:00
parent 4fd716ff09
commit 708c2d4f36
5 changed files with 33 additions and 35 deletions

View File

@@ -298,12 +298,21 @@ void BuildConsoleBuildStep::setupOutputFormatter(OutputFormatter *formatter)
// BuildConsoleStepFactory
BuildConsoleStepFactory::BuildConsoleStepFactory()
class BuildConsoleStepFactory final : public BuildStepFactory
{
public:
BuildConsoleStepFactory()
{
registerStep<BuildConsoleBuildStep>(IncrediBuild::Constants::BUILDCONSOLE_BUILDSTEP_ID);
setDisplayName(Tr::tr("IncrediBuild for Windows"));
setSupportedStepLists({ProjectExplorer::Constants::BUILDSTEPS_BUILD,
ProjectExplorer::Constants::BUILDSTEPS_CLEAN});
}
};
void setupBuildConsoleStep()
{
static BuildConsoleStepFactory theBuildConsoleStepFactory;
}
} // IncrediBuild::Internal

View File

@@ -3,14 +3,8 @@
#pragma once
#include <projectexplorer/buildstep.h>
namespace IncrediBuild::Internal {
class BuildConsoleStepFactory final : public ProjectExplorer::BuildStepFactory
{
public:
BuildConsoleStepFactory();
};
void setupBuildConsoleStep();
} // IncrediBuild::Internal

View File

@@ -100,12 +100,21 @@ void IBConsoleBuildStep::setupOutputFormatter(OutputFormatter *formatter)
// IBConsoleStepFactory
IBConsoleStepFactory::IBConsoleStepFactory()
class IBConsoleStepFactory final : public BuildStepFactory
{
public:
IBConsoleStepFactory()
{
registerStep<IBConsoleBuildStep>(IncrediBuild::Constants::IBCONSOLE_BUILDSTEP_ID);
setDisplayName(Tr::tr("IncrediBuild for Linux"));
setSupportedStepLists({ProjectExplorer::Constants::BUILDSTEPS_BUILD,
ProjectExplorer::Constants::BUILDSTEPS_CLEAN});
}
};
void setupIBConsoleStep()
{
static IBConsoleStepFactory theIBConsoleStepFactory;
}
} // IncrediBuild::Internal

View File

@@ -3,14 +3,8 @@
#pragma once
#include <projectexplorer/buildstep.h>
namespace IncrediBuild::Internal {
class IBConsoleStepFactory : public ProjectExplorer::BuildStepFactory
{
public:
IBConsoleStepFactory();
};
void setupIBConsoleStep();
} // IncrediBuild::Internal

View File

@@ -8,25 +8,17 @@
namespace IncrediBuild::Internal {
class IncrediBuildPluginPrivate
{
public:
BuildConsoleStepFactory buildConsoleStepFactory;
IBConsoleStepFactory ibConsolStepFactory;
};
class IncrediBuildPlugin final : public ExtensionSystem::IPlugin
{
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "IncrediBuild.json")
public:
void initialize() override
void initialize() final
{
d = std::make_unique<IncrediBuildPluginPrivate>();
setupBuildConsoleStep();
setupIBConsoleStep();
}
std::unique_ptr<IncrediBuildPluginPrivate> d;
};
} // IncrediBuild::Internal