ProjectExplorer: Hide some KitAspectFactory implementations

Change-Id: If84dd7aeb72e87d2cb35635689ad1c9c2e09a825
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
hjk
2023-08-15 12:45:54 +02:00
parent 013b71b301
commit 5aa138bb68
3 changed files with 138 additions and 149 deletions

View File

@@ -87,6 +87,17 @@ private:
};
} // namespace Internal
class SysRootKitAspectFactory : public KitAspectFactory
{
public:
SysRootKitAspectFactory();
Tasks validate(const Kit *k) const override;
KitAspect *createKitAspect(Kit *k) const override;
ItemList toUserOutput(const Kit *k) const override;
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
};
SysRootKitAspectFactory::SysRootKitAspectFactory()
{
setObjectName(QLatin1String("SysRootInformation"));
@@ -141,7 +152,7 @@ void SysRootKitAspectFactory::addToMacroExpander(Kit *kit, MacroExpander *expand
});
}
Utils::Id SysRootKitAspect::id()
Id SysRootKitAspect::id()
{
return "PE.Profile.SysRoot";
}
@@ -179,6 +190,8 @@ void SysRootKitAspect::setSysRoot(Kit *k, const FilePath &v)
k->setValue(SysRootKitAspect::id(), v.toString());
}
const SysRootKitAspectFactory theSyRootKitAspectFactory;
// --------------------------------------------------------------------------
// ToolChainKitAspect:
// --------------------------------------------------------------------------
@@ -312,6 +325,35 @@ private:
};
} // namespace Internal
class ToolChainKitAspectFactory : public KitAspectFactory
{
public:
ToolChainKitAspectFactory();
Tasks validate(const Kit *k) const override;
void upgrade(Kit *k) override;
void fix(Kit *k) override;
void setup(Kit *k) override;
KitAspect *createKitAspect(Kit *k) const override;
QString displayNamePostfix(const Kit *k) const override;
ItemList toUserOutput(const Kit *k) const override;
void addToBuildEnvironment(const Kit *k, Environment &env) const override;
void addToRunEnvironment(const Kit *, Environment &) const override {}
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
QList<OutputLineParser *> createOutputParsers(const Kit *k) const override;
QSet<Id> availableFeatures(const Kit *k) const override;
private:
void kitsWereLoaded();
void toolChainUpdated(ToolChain *tc);
void toolChainRemoved(ToolChain *tc);
};
ToolChainKitAspectFactory::ToolChainKitAspectFactory()
{
setObjectName(QLatin1String("ToolChainInformation"));
@@ -751,6 +793,8 @@ void ToolChainKitAspectFactory::toolChainRemoved(ToolChain *tc)
fix(k);
}
const ToolChainKitAspectFactory thsToolChainKitAspectFactory;
// --------------------------------------------------------------------------
// DeviceTypeKitAspect:
// --------------------------------------------------------------------------
@@ -803,6 +847,20 @@ private:
};
} // namespace Internal
class DeviceTypeKitAspectFactory : public KitAspectFactory
{
public:
DeviceTypeKitAspectFactory();
void setup(Kit *k) override;
Tasks validate(const Kit *k) const override;
KitAspect *createKitAspect(Kit *k) const override;
ItemList toUserOutput(const Kit *k) const override;
QSet<Id> supportedPlatforms(const Kit *k) const override;
QSet<Id> availableFeatures(const Kit *k) const override;
};
DeviceTypeKitAspectFactory::DeviceTypeKitAspectFactory()
{
setObjectName(QLatin1String("DeviceTypeInformation"));
@@ -950,6 +1008,32 @@ private:
};
} // namespace Internal
class DeviceKitAspectFactory : public KitAspectFactory
{
public:
DeviceKitAspectFactory();
Tasks validate(const Kit *k) const override;
void fix(Kit *k) override;
void setup(Kit *k) override;
KitAspect *createKitAspect(Kit *k) const override;
QString displayNamePostfix(const Kit *k) const override;
ItemList toUserOutput(const Kit *k) const override;
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
private:
QVariant defaultValue(const Kit *k) const;
void kitsWereLoaded();
void deviceUpdated(Id dataId);
void devicesChanged();
void kitUpdated(Kit *k);
};
DeviceKitAspectFactory::DeviceKitAspectFactory()
{
setObjectName(QLatin1String("DeviceInformation"));
@@ -1134,6 +1218,9 @@ void DeviceKitAspectFactory::devicesChanged()
setup(k); // Set default device if necessary
}
const DeviceKitAspectFactory theDeviceKitAspectFactory;
// --------------------------------------------------------------------------
// BuildDeviceKitAspect:
// --------------------------------------------------------------------------
@@ -1218,6 +1305,29 @@ private:
};
} // namespace Internal
class BuildDeviceKitAspectFactory : public KitAspectFactory
{
public:
BuildDeviceKitAspectFactory();
void setup(Kit *k) override;
Tasks validate(const Kit *k) const override;
KitAspect *createKitAspect(Kit *k) const override;
QString displayNamePostfix(const Kit *k) const override;
ItemList toUserOutput(const Kit *k) const override;
void addToMacroExpander(Kit *kit, MacroExpander *expander) const override;
private:
void kitsWereLoaded();
void deviceUpdated(Id dataId);
void devicesChanged();
void kitUpdated(Kit *k);
};
BuildDeviceKitAspectFactory::BuildDeviceKitAspectFactory()
{
setObjectName("BuildDeviceInformation");
@@ -1376,6 +1486,8 @@ void BuildDeviceKitAspectFactory::devicesChanged()
setup(k); // Set default device if necessary
}
const BuildDeviceKitAspectFactory theBuildDeviceKitAspectFactory;
// --------------------------------------------------------------------------
// EnvironmentKitAspect:
// --------------------------------------------------------------------------
@@ -1490,6 +1602,22 @@ private:
};
} // namespace Internal
class EnvironmentKitAspectFactory : public KitAspectFactory
{
public:
EnvironmentKitAspectFactory();
Tasks validate(const Kit *k) const override;
void fix(Kit *k) override;
void addToBuildEnvironment(const Kit *k, Environment &env) const override;
void addToRunEnvironment(const Kit *, Environment &) const override;
KitAspect *createKitAspect(Kit *k) const override;
ItemList toUserOutput(const Kit *k) const override;
};
EnvironmentKitAspectFactory::EnvironmentKitAspectFactory()
{
setObjectName(QLatin1String("EnvironmentKitAspect"));
@@ -1565,4 +1693,6 @@ void EnvironmentKitAspect::setEnvironmentChanges(Kit *k, const EnvironmentItems
k->setValue(EnvironmentKitAspect::id(), EnvironmentItem::toStringList(changes));
}
const EnvironmentKitAspectFactory theEnvironmentKitAspectFactory;
} // namespace ProjectExplorer