forked from qt-creator/qt-creator
BuildStepList: Pass ProjectConfiguration into c'tor
Instead of relying on parent-child qobject hierarchy. Add explicit BuildStepList::projectConfiguration() getter. Add explicit Target arg into ProjectConfiguration c'tor and avoid qobject_cast. Change-Id: I0b3105f7f8aea950e9679857887baffe9b321a33 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -3,7 +3,6 @@
|
||||
|
||||
#include "projectconfiguration.h"
|
||||
|
||||
#include "kitinformation.h"
|
||||
#include "target.h"
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
@@ -17,20 +16,15 @@ const char DISPLAY_NAME_KEY[] = "ProjectExplorer.ProjectConfiguration.DisplayNam
|
||||
|
||||
// ProjectConfiguration
|
||||
|
||||
ProjectConfiguration::ProjectConfiguration(QObject *parent, Utils::Id id)
|
||||
ProjectConfiguration::ProjectConfiguration(QObject *parent, Target *target, Utils::Id id)
|
||||
: AspectContainer(parent)
|
||||
, m_target(target)
|
||||
, m_id(id)
|
||||
{
|
||||
QTC_CHECK(parent);
|
||||
QTC_CHECK(target);
|
||||
QTC_CHECK(id.isValid());
|
||||
setObjectName(id.toString());
|
||||
|
||||
for (QObject *obj = this; obj; obj = obj->parent()) {
|
||||
m_target = qobject_cast<Target *>(obj);
|
||||
if (m_target)
|
||||
break;
|
||||
}
|
||||
QTC_CHECK(m_target);
|
||||
}
|
||||
|
||||
ProjectConfiguration::~ProjectConfiguration() = default;
|
||||
|
||||
Reference in New Issue
Block a user