forked from qt-creator/qt-creator
ProjectExplorer: Remove DeployConfigurationFactory::m_creator
Behavior is uniquely determined by m_deployConfigBaseId, so a normal member functions does the trick, too. Change-Id: I04f9a5dbba6874743b56ef32cc67ad1de13169d0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -181,27 +181,26 @@ void DeployConfigurationFactory::setUseDeploymentDataView()
|
||||
|
||||
void DeployConfigurationFactory::setConfigBaseId(Core::Id deployConfigBaseId)
|
||||
{
|
||||
m_creator = [this, deployConfigBaseId](Target *t) {
|
||||
auto dc = new DeployConfiguration(t, deployConfigBaseId);
|
||||
m_deployConfigBaseId = deployConfigBaseId;
|
||||
}
|
||||
|
||||
DeployConfiguration *DeployConfigurationFactory::createDeployConfiguration(Target *t)
|
||||
{
|
||||
auto dc = new DeployConfiguration(t, m_deployConfigBaseId);
|
||||
dc->setDefaultDisplayName(m_defaultDisplayName);
|
||||
dc->m_configWidgetCreator = m_configWidgetCreator;
|
||||
return dc;
|
||||
};
|
||||
m_deployConfigBaseId = deployConfigBaseId;
|
||||
}
|
||||
|
||||
DeployConfiguration *DeployConfigurationFactory::create(Target *parent)
|
||||
{
|
||||
QTC_ASSERT(canHandle(parent), return nullptr);
|
||||
QTC_ASSERT(m_creator, return nullptr);
|
||||
DeployConfiguration *dc = m_creator(parent);
|
||||
if (!dc)
|
||||
return nullptr;
|
||||
DeployConfiguration *dc = createDeployConfiguration(parent);
|
||||
QTC_ASSERT(dc, return nullptr);
|
||||
for (const DeployStepCreationInfo &info : qAsConst(m_initialSteps)) {
|
||||
if (!info.condition || info.condition(parent))
|
||||
dc->stepList()->appendStep(info.deployStepId);
|
||||
}
|
||||
dc->m_configWidgetCreator = m_configWidgetCreator;
|
||||
return dc;
|
||||
}
|
||||
|
||||
@@ -222,8 +221,7 @@ DeployConfiguration *DeployConfigurationFactory::restore(Target *parent, const Q
|
||||
});
|
||||
if (!factory)
|
||||
return nullptr;
|
||||
QTC_ASSERT(factory->m_creator, return nullptr);
|
||||
DeployConfiguration *dc = factory->m_creator(parent);
|
||||
DeployConfiguration *dc = factory->createDeployConfiguration(parent);
|
||||
QTC_ASSERT(dc, return nullptr);
|
||||
if (!dc->fromMap(map)) {
|
||||
delete dc;
|
||||
|
@@ -106,7 +106,7 @@ private:
|
||||
Core::Id deployStepId;
|
||||
std::function<bool(Target *)> condition; // unset counts as unrestricted
|
||||
};
|
||||
DeployConfigurationCreator m_creator;
|
||||
DeployConfiguration *createDeployConfiguration(Target *t);
|
||||
Core::Id m_deployConfigBaseId;
|
||||
Core::Id m_supportedProjectType;
|
||||
QList<Core::Id> m_supportedTargetDeviceTypes;
|
||||
|
Reference in New Issue
Block a user