forked from qt-creator/qt-creator
Utils: Merge BaseAspects and AspectContainer
They were quite similar, largest difference was the ownership of subaspects, which is now handled by a bool property. Change-Id: Ib3f2f20b9a84ef40ea8a9eb59da9c89c9a281750 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -43,6 +43,8 @@ ProjectConfiguration::ProjectConfiguration(QObject *parent, Utils::Id id)
|
||||
: QObject(parent)
|
||||
, m_id(id)
|
||||
{
|
||||
m_aspects.setOwnsSubAspects(true);
|
||||
|
||||
QTC_CHECK(parent);
|
||||
QTC_CHECK(id.isValid());
|
||||
setObjectName(id.toString());
|
||||
|
||||
@@ -82,7 +82,7 @@ public:
|
||||
return m_aspects.addAspect<Aspect>(std::forward<Args>(args)...);
|
||||
}
|
||||
|
||||
const Utils::BaseAspects &aspects() const { return m_aspects; }
|
||||
const Utils::AspectContainer &aspects() const { return m_aspects; }
|
||||
|
||||
Utils::BaseAspect *aspect(Utils::Id id) const;
|
||||
template <typename T> T *aspect() const { return m_aspects.aspect<T>(); }
|
||||
@@ -94,7 +94,7 @@ signals:
|
||||
void toolTipChanged();
|
||||
|
||||
protected:
|
||||
Utils::BaseAspects m_aspects;
|
||||
Utils::AspectContainer m_aspects;
|
||||
|
||||
private:
|
||||
QPointer<Target> m_target;
|
||||
|
||||
@@ -543,7 +543,7 @@ RunConfiguration *RunConfigurationFactory::create(Target *target) const
|
||||
|
||||
// Add the universal aspects.
|
||||
for (const RunConfiguration::AspectFactory &factory : theAspectFactories)
|
||||
rc->m_aspects.append(factory(target));
|
||||
rc->m_aspects.registerAspect(factory(target));
|
||||
|
||||
rc->acquaintAspects();
|
||||
return rc;
|
||||
|
||||
@@ -203,7 +203,7 @@ void WorkingDirectoryAspect::addToLayout(LayoutBuilder &builder)
|
||||
builder.addItems({tr("Working directory:"), m_chooser.data(), m_resetButton.data()});
|
||||
}
|
||||
|
||||
void WorkingDirectoryAspect::acquaintSiblings(const BaseAspects &siblings)
|
||||
void WorkingDirectoryAspect::acquaintSiblings(const AspectContainer &siblings)
|
||||
{
|
||||
m_envAspect = siblings.aspect<EnvironmentAspect>();
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ public:
|
||||
WorkingDirectoryAspect();
|
||||
|
||||
void addToLayout(Utils::LayoutBuilder &builder) override;
|
||||
void acquaintSiblings(const Utils::BaseAspects &) override;
|
||||
void acquaintSiblings(const Utils::AspectContainer &) override;
|
||||
|
||||
Utils::FilePath workingDirectory(const Utils::MacroExpander *expander) const;
|
||||
Utils::FilePath defaultWorkingDirectory() const;
|
||||
|
||||
@@ -113,7 +113,7 @@ void QtQuickCompilerAspect::addToLayout(LayoutBuilder &builder)
|
||||
changeHandler();
|
||||
}
|
||||
|
||||
void QtQuickCompilerAspect::acquaintSiblings(const BaseAspects &siblings)
|
||||
void QtQuickCompilerAspect::acquaintSiblings(const AspectContainer &siblings)
|
||||
{
|
||||
m_qmlDebuggingAspect = siblings.aspect<QmlDebuggingAspect>();
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ public:
|
||||
|
||||
private:
|
||||
void addToLayout(Utils::LayoutBuilder &builder) override;
|
||||
void acquaintSiblings(const Utils::BaseAspects &siblings) override;
|
||||
void acquaintSiblings(const Utils::AspectContainer &siblings) override;
|
||||
|
||||
const ProjectExplorer::Kit *m_kit = nullptr;
|
||||
const QmlDebuggingAspect *m_qmlDebuggingAspect = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user