forked from qt-creator/qt-creator
CMakeProjectManager: Fix connection to save tools settings
Amends 4e23f2a6eb
.
This should actually not be needed in the end, and rather steered
by the auto registration and settings page apply.
Change-Id: I7f94e776fec4394f539e32e5c527c367251654a8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -1283,23 +1283,44 @@ KitAspect *CMakeConfigurationKitAspectFactory::createKitAspect(Kit *k) const
|
||||
|
||||
// Factory instances;
|
||||
|
||||
const CMakeKitAspectFactory theCMakeKitAspectFactory;
|
||||
const CMakeGeneratorKitAspectFactory theCMakeGeneratorKitAspectFactory;
|
||||
const CMakeConfigurationKitAspectFactory theCMakeConfigurationKitAspectFactory;
|
||||
CMakeKitAspectFactory &cmakeKitAspectFactory()
|
||||
{
|
||||
static CMakeKitAspectFactory theCMakeKitAspectFactory;
|
||||
return theCMakeKitAspectFactory;
|
||||
}
|
||||
|
||||
CMakeGeneratorKitAspectFactory &cmakeGeneratorKitAspectFactory()
|
||||
{
|
||||
static CMakeGeneratorKitAspectFactory theCMakeGeneratorKitAspectFactory;
|
||||
return theCMakeGeneratorKitAspectFactory;
|
||||
}
|
||||
|
||||
static CMakeConfigurationKitAspectFactory &cmakeConfigurationKitAspectFactory()
|
||||
{
|
||||
static CMakeConfigurationKitAspectFactory theCMakeConfigurationKitAspectFactory;
|
||||
return theCMakeConfigurationKitAspectFactory;
|
||||
}
|
||||
|
||||
KitAspect *CMakeKitAspect::createKitAspect(Kit *k)
|
||||
{
|
||||
return theCMakeKitAspectFactory.createKitAspect(k);
|
||||
return cmakeKitAspectFactory().createKitAspect(k);
|
||||
}
|
||||
|
||||
KitAspect *CMakeGeneratorKitAspect::createKitAspect(Kit *k)
|
||||
{
|
||||
return theCMakeGeneratorKitAspectFactory.createKitAspect(k);
|
||||
return cmakeGeneratorKitAspectFactory().createKitAspect(k);
|
||||
}
|
||||
|
||||
KitAspect *CMakeConfigurationKitAspect::createKitAspect(Kit *k)
|
||||
{
|
||||
return theCMakeConfigurationKitAspectFactory.createKitAspect(k);
|
||||
return cmakeConfigurationKitAspectFactory().createKitAspect(k);
|
||||
}
|
||||
|
||||
void CMakeKitAspect::createFactories()
|
||||
{
|
||||
cmakeKitAspectFactory();
|
||||
cmakeGeneratorKitAspectFactory();
|
||||
cmakeConfigurationKitAspectFactory();
|
||||
}
|
||||
|
||||
} // namespace CMakeProjectManager
|
||||
|
@@ -24,6 +24,10 @@ public:
|
||||
static QString msgUnsupportedVersion(const QByteArray &versionString);
|
||||
|
||||
static ProjectExplorer::KitAspect *createKitAspect(ProjectExplorer::Kit *k);
|
||||
|
||||
private:
|
||||
friend class CMakeToolManager;
|
||||
static void createFactories();
|
||||
};
|
||||
|
||||
class CMAKE_EXPORT CMakeGeneratorKitAspect
|
||||
|
@@ -43,7 +43,8 @@ namespace CMakeProjectManager::Internal {
|
||||
class CMakeProjectPluginPrivate : public QObject
|
||||
{
|
||||
public:
|
||||
CMakeToolManager cmakeToolManager; // have that before the first CMakeKitAspect
|
||||
// This can't be stand-alone yet as it registers in the plugin object pool
|
||||
CMakeToolManager cmakeToolManager;
|
||||
|
||||
ParameterAction buildTargetContextAction{
|
||||
Tr::tr("Build"),
|
||||
|
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "cmaketoolmanager.h"
|
||||
|
||||
#include "cmakekitaspect.h"
|
||||
#include "cmakeprojectmanagertr.h"
|
||||
#include "cmakespecificsettings.h"
|
||||
#include "cmaketoolsettingsaccessor.h"
|
||||
@@ -49,6 +50,8 @@ CMakeToolManager::CMakeToolManager()
|
||||
|
||||
setObjectName("CMakeToolManager");
|
||||
ExtensionSystem::PluginManager::addObject(this);
|
||||
|
||||
CMakeKitAspect::createFactories();
|
||||
}
|
||||
|
||||
CMakeToolManager::~CMakeToolManager()
|
||||
|
Reference in New Issue
Block a user