forked from qt-creator/qt-creator
ProjectExplorer: Replace some KitManager::onLoaded() connections
... by direct calls. More direct, and less use of QObject-ness of the KitAspectFactories. Change-Id: I7487875d95752b681475248ca0e5494d640e064e Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -330,6 +330,7 @@ class ToolChainKitAspectFactory : public KitAspectFactory
|
|||||||
public:
|
public:
|
||||||
ToolChainKitAspectFactory();
|
ToolChainKitAspectFactory();
|
||||||
|
|
||||||
|
private:
|
||||||
Tasks validate(const Kit *k) const override;
|
Tasks validate(const Kit *k) const override;
|
||||||
void upgrade(Kit *k) override;
|
void upgrade(Kit *k) override;
|
||||||
void fix(Kit *k) override;
|
void fix(Kit *k) override;
|
||||||
@@ -348,8 +349,8 @@ public:
|
|||||||
QList<OutputLineParser *> createOutputParsers(const Kit *k) const override;
|
QList<OutputLineParser *> createOutputParsers(const Kit *k) const override;
|
||||||
QSet<Id> availableFeatures(const Kit *k) const override;
|
QSet<Id> availableFeatures(const Kit *k) const override;
|
||||||
|
|
||||||
private:
|
void onKitsLoaded() override;
|
||||||
void kitsWereLoaded();
|
|
||||||
void toolChainUpdated(ToolChain *tc);
|
void toolChainUpdated(ToolChain *tc);
|
||||||
void toolChainRemoved(ToolChain *tc);
|
void toolChainRemoved(ToolChain *tc);
|
||||||
};
|
};
|
||||||
@@ -363,9 +364,6 @@ ToolChainKitAspectFactory::ToolChainKitAspectFactory()
|
|||||||
"Make sure the compiler will produce binaries compatible "
|
"Make sure the compiler will produce binaries compatible "
|
||||||
"with the target device, Qt version and other libraries used."));
|
"with the target device, Qt version and other libraries used."));
|
||||||
setPriority(30000);
|
setPriority(30000);
|
||||||
|
|
||||||
connect(KitManager::instance(), &KitManager::kitsLoaded,
|
|
||||||
this, &ToolChainKitAspectFactory::kitsWereLoaded);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// language id -> tool chain id
|
// language id -> tool chain id
|
||||||
@@ -765,10 +763,9 @@ QString ToolChainKitAspect::msgNoToolChainInTarget()
|
|||||||
return Tr::tr("No compiler set in kit.");
|
return Tr::tr("No compiler set in kit.");
|
||||||
}
|
}
|
||||||
|
|
||||||
void ToolChainKitAspectFactory::kitsWereLoaded()
|
void ToolChainKitAspectFactory::onKitsLoaded()
|
||||||
{
|
{
|
||||||
const QList<Kit *> kits = KitManager::kits();
|
for (Kit *k : KitManager::kits())
|
||||||
for (Kit *k : kits)
|
|
||||||
fix(k);
|
fix(k);
|
||||||
|
|
||||||
connect(ToolChainManager::instance(), &ToolChainManager::toolChainRemoved,
|
connect(ToolChainManager::instance(), &ToolChainManager::toolChainRemoved,
|
||||||
@@ -788,8 +785,7 @@ void ToolChainKitAspectFactory::toolChainUpdated(ToolChain *tc)
|
|||||||
void ToolChainKitAspectFactory::toolChainRemoved(ToolChain *tc)
|
void ToolChainKitAspectFactory::toolChainRemoved(ToolChain *tc)
|
||||||
{
|
{
|
||||||
Q_UNUSED(tc)
|
Q_UNUSED(tc)
|
||||||
const QList<Kit *> kits = KitManager::kits();
|
for (Kit *k : KitManager::kits())
|
||||||
for (Kit *k : kits)
|
|
||||||
fix(k);
|
fix(k);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1013,6 +1009,7 @@ class DeviceKitAspectFactory : public KitAspectFactory
|
|||||||
public:
|
public:
|
||||||
DeviceKitAspectFactory();
|
DeviceKitAspectFactory();
|
||||||
|
|
||||||
|
private:
|
||||||
Tasks validate(const Kit *k) const override;
|
Tasks validate(const Kit *k) const override;
|
||||||
void fix(Kit *k) override;
|
void fix(Kit *k) override;
|
||||||
void setup(Kit *k) override;
|
void setup(Kit *k) override;
|
||||||
@@ -1025,10 +1022,9 @@ public:
|
|||||||
|
|
||||||
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
|
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
|
||||||
|
|
||||||
private:
|
|
||||||
QVariant defaultValue(const Kit *k) const;
|
QVariant defaultValue(const Kit *k) const;
|
||||||
|
|
||||||
void kitsWereLoaded();
|
void onKitsLoaded() override;
|
||||||
void deviceUpdated(Id dataId);
|
void deviceUpdated(Id dataId);
|
||||||
void devicesChanged();
|
void devicesChanged();
|
||||||
void kitUpdated(Kit *k);
|
void kitUpdated(Kit *k);
|
||||||
@@ -1041,9 +1037,6 @@ DeviceKitAspectFactory::DeviceKitAspectFactory()
|
|||||||
setDisplayName(Tr::tr("Run device"));
|
setDisplayName(Tr::tr("Run device"));
|
||||||
setDescription(Tr::tr("The device to run the applications on."));
|
setDescription(Tr::tr("The device to run the applications on."));
|
||||||
setPriority(32000);
|
setPriority(32000);
|
||||||
|
|
||||||
connect(KitManager::instance(), &KitManager::kitsLoaded,
|
|
||||||
this, &DeviceKitAspectFactory::kitsWereLoaded);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant DeviceKitAspectFactory::defaultValue(const Kit *k) const
|
QVariant DeviceKitAspectFactory::defaultValue(const Kit *k) const
|
||||||
@@ -1179,10 +1172,9 @@ FilePath DeviceKitAspect::deviceFilePath(const Kit *k, const QString &pathOnDevi
|
|||||||
return FilePath::fromString(pathOnDevice);
|
return FilePath::fromString(pathOnDevice);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DeviceKitAspectFactory::kitsWereLoaded()
|
void DeviceKitAspectFactory::onKitsLoaded()
|
||||||
{
|
{
|
||||||
const QList<Kit *> kits = KitManager::kits();
|
for (Kit *k : KitManager::kits())
|
||||||
for (Kit *k : kits)
|
|
||||||
fix(k);
|
fix(k);
|
||||||
|
|
||||||
DeviceManager *dm = DeviceManager::instance();
|
DeviceManager *dm = DeviceManager::instance();
|
||||||
@@ -1199,8 +1191,7 @@ void DeviceKitAspectFactory::kitsWereLoaded()
|
|||||||
|
|
||||||
void DeviceKitAspectFactory::deviceUpdated(Id id)
|
void DeviceKitAspectFactory::deviceUpdated(Id id)
|
||||||
{
|
{
|
||||||
const QList<Kit *> kits = KitManager::kits();
|
for (Kit *k : KitManager::kits()) {
|
||||||
for (Kit *k : kits) {
|
|
||||||
if (DeviceKitAspect::deviceId(k) == id)
|
if (DeviceKitAspect::deviceId(k) == id)
|
||||||
notifyAboutUpdate(k);
|
notifyAboutUpdate(k);
|
||||||
}
|
}
|
||||||
@@ -1213,8 +1204,7 @@ void DeviceKitAspectFactory::kitUpdated(Kit *k)
|
|||||||
|
|
||||||
void DeviceKitAspectFactory::devicesChanged()
|
void DeviceKitAspectFactory::devicesChanged()
|
||||||
{
|
{
|
||||||
const QList<Kit *> kits = KitManager::kits();
|
for (Kit *k : KitManager::kits())
|
||||||
for (Kit *k : kits)
|
|
||||||
setup(k); // Set default device if necessary
|
setup(k); // Set default device if necessary
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1310,6 +1300,7 @@ class BuildDeviceKitAspectFactory : public KitAspectFactory
|
|||||||
public:
|
public:
|
||||||
BuildDeviceKitAspectFactory();
|
BuildDeviceKitAspectFactory();
|
||||||
|
|
||||||
|
private:
|
||||||
void setup(Kit *k) override;
|
void setup(Kit *k) override;
|
||||||
Tasks validate(const Kit *k) const override;
|
Tasks validate(const Kit *k) const override;
|
||||||
|
|
||||||
@@ -1321,8 +1312,7 @@ public:
|
|||||||
|
|
||||||
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
|
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
|
||||||
|
|
||||||
private:
|
void onKitsLoaded() override;
|
||||||
void kitsWereLoaded();
|
|
||||||
void deviceUpdated(Id dataId);
|
void deviceUpdated(Id dataId);
|
||||||
void devicesChanged();
|
void devicesChanged();
|
||||||
void kitUpdated(Kit *k);
|
void kitUpdated(Kit *k);
|
||||||
@@ -1335,9 +1325,6 @@ BuildDeviceKitAspectFactory::BuildDeviceKitAspectFactory()
|
|||||||
setDisplayName(Tr::tr("Build device"));
|
setDisplayName(Tr::tr("Build device"));
|
||||||
setDescription(Tr::tr("The device used to build applications on."));
|
setDescription(Tr::tr("The device used to build applications on."));
|
||||||
setPriority(31900);
|
setPriority(31900);
|
||||||
|
|
||||||
connect(KitManager::instance(), &KitManager::kitsLoaded,
|
|
||||||
this, &BuildDeviceKitAspectFactory::kitsWereLoaded);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static IDeviceConstPtr defaultDevice()
|
static IDeviceConstPtr defaultDevice()
|
||||||
@@ -1444,10 +1431,9 @@ void BuildDeviceKitAspect::setDeviceId(Kit *k, Id id)
|
|||||||
k->setValue(BuildDeviceKitAspect::id(), id.toSetting());
|
k->setValue(BuildDeviceKitAspect::id(), id.toSetting());
|
||||||
}
|
}
|
||||||
|
|
||||||
void BuildDeviceKitAspectFactory::kitsWereLoaded()
|
void BuildDeviceKitAspectFactory::onKitsLoaded()
|
||||||
{
|
{
|
||||||
const QList<Kit *> kits = KitManager::kits();
|
for (Kit *k : KitManager::kits())
|
||||||
for (Kit *k : kits)
|
|
||||||
fix(k);
|
fix(k);
|
||||||
|
|
||||||
DeviceManager *dm = DeviceManager::instance();
|
DeviceManager *dm = DeviceManager::instance();
|
||||||
|
|||||||
@@ -69,6 +69,12 @@ static FilePath settingsFileName()
|
|||||||
class KitAspectFactories
|
class KitAspectFactories
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
void onKitsLoaded() const
|
||||||
|
{
|
||||||
|
for (KitAspectFactory *factory : m_aspectList)
|
||||||
|
factory->onKitsLoaded();
|
||||||
|
}
|
||||||
|
|
||||||
void addKitAspect(KitAspectFactory *factory)
|
void addKitAspect(KitAspectFactory *factory)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(!m_aspectList.contains(factory), return);
|
QTC_ASSERT(!m_aspectList.contains(factory), return);
|
||||||
@@ -416,6 +422,9 @@ void KitManager::restoreKits()
|
|||||||
|
|
||||||
d->m_writer = std::make_unique<PersistentSettingsWriter>(settingsFileName(), "QtCreatorProfiles");
|
d->m_writer = std::make_unique<PersistentSettingsWriter>(settingsFileName(), "QtCreatorProfiles");
|
||||||
d->m_initialized = true;
|
d->m_initialized = true;
|
||||||
|
|
||||||
|
kitAspectFactoriesStorage().onKitsLoaded();
|
||||||
|
|
||||||
emit instance()->kitsLoaded();
|
emit instance()->kitsLoaded();
|
||||||
emit instance()->kitsChanged();
|
emit instance()->kitsChanged();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -81,6 +81,8 @@ public:
|
|||||||
|
|
||||||
virtual bool isApplicableToKit(const Kit *) const { return true; }
|
virtual bool isApplicableToKit(const Kit *) const { return true; }
|
||||||
|
|
||||||
|
virtual void onKitsLoaded() {}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
KitAspectFactory();
|
KitAspectFactory();
|
||||||
~KitAspectFactory();
|
~KitAspectFactory();
|
||||||
|
|||||||
@@ -139,9 +139,6 @@ QtKitAspectFactory::QtKitAspectFactory()
|
|||||||
"A Qt version is required for qmake-based projects "
|
"A Qt version is required for qmake-based projects "
|
||||||
"and optional when using other build systems."));
|
"and optional when using other build systems."));
|
||||||
setPriority(26000);
|
setPriority(26000);
|
||||||
|
|
||||||
connect(KitManager::instance(), &KitManager::kitsLoaded,
|
|
||||||
this, &QtKitAspectFactory::kitsWereLoaded);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void QtKitAspectFactory::setup(Kit *k)
|
void QtKitAspectFactory::setup(Kit *k)
|
||||||
@@ -399,7 +396,7 @@ void QtKitAspectFactory::qtVersionsChanged(const QList<int> &addedIds,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void QtKitAspectFactory::kitsWereLoaded()
|
void QtKitAspectFactory::onKitsLoaded()
|
||||||
{
|
{
|
||||||
for (Kit *k : KitManager::kits())
|
for (Kit *k : KitManager::kits())
|
||||||
fix(k);
|
fix(k);
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ class QTSUPPORT_EXPORT QtKitAspectFactory : public ProjectExplorer::KitAspectFac
|
|||||||
public:
|
public:
|
||||||
QtKitAspectFactory();
|
QtKitAspectFactory();
|
||||||
|
|
||||||
|
private:
|
||||||
void setup(ProjectExplorer::Kit *k) override;
|
void setup(ProjectExplorer::Kit *k) override;
|
||||||
|
|
||||||
ProjectExplorer::Tasks validate(const ProjectExplorer::Kit *k) const override;
|
ProjectExplorer::Tasks validate(const ProjectExplorer::Kit *k) const override;
|
||||||
@@ -54,13 +55,12 @@ public:
|
|||||||
QSet<Utils::Id> supportedPlatforms(const ProjectExplorer::Kit *k) const override;
|
QSet<Utils::Id> supportedPlatforms(const ProjectExplorer::Kit *k) const override;
|
||||||
QSet<Utils::Id> availableFeatures(const ProjectExplorer::Kit *k) const override;
|
QSet<Utils::Id> availableFeatures(const ProjectExplorer::Kit *k) const override;
|
||||||
|
|
||||||
private:
|
|
||||||
int weight(const ProjectExplorer::Kit *k) const override;
|
int weight(const ProjectExplorer::Kit *k) const override;
|
||||||
|
|
||||||
void qtVersionsChanged(const QList<int> &addedIds,
|
void qtVersionsChanged(const QList<int> &addedIds,
|
||||||
const QList<int> &removedIds,
|
const QList<int> &removedIds,
|
||||||
const QList<int> &changedIds);
|
const QList<int> &changedIds);
|
||||||
void kitsWereLoaded();
|
void onKitsLoaded() override;
|
||||||
};
|
};
|
||||||
|
|
||||||
class QTSUPPORT_EXPORT SuppliesQtQuickImportPath
|
class QTSUPPORT_EXPORT SuppliesQtQuickImportPath
|
||||||
|
|||||||
Reference in New Issue
Block a user