forked from qt-creator/qt-creator
ProjectExplorer: Remove BuildStepListWidget::init
This kind of two-phase setup is not needed here. Change-Id: Ie070c711ede1e4842f76f7d4ebf26809a3ad5236 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -207,13 +207,11 @@ void BuildSettingsWidget::updateBuildSettings()
|
||||
if (generalConfigWidget)
|
||||
addSubWidget(generalConfigWidget);
|
||||
|
||||
auto buildStepsWidget = new BuildStepListWidget(this);
|
||||
buildStepsWidget->init(m_buildConfiguration->stepList(Constants::BUILDSTEPS_BUILD));
|
||||
addSubWidget(buildStepsWidget);
|
||||
BuildStepList *buildSteps = m_buildConfiguration->stepList(Constants::BUILDSTEPS_BUILD);
|
||||
addSubWidget(new BuildStepListWidget(buildSteps, this));
|
||||
|
||||
auto cleanStepsWidget = new BuildStepListWidget(this);
|
||||
cleanStepsWidget->init(m_buildConfiguration->stepList(Constants::BUILDSTEPS_CLEAN));
|
||||
addSubWidget(cleanStepsWidget);
|
||||
BuildStepList *cleanSteps = m_buildConfiguration->stepList(Constants::BUILDSTEPS_CLEAN);
|
||||
addSubWidget(new BuildStepListWidget(cleanSteps, this));
|
||||
|
||||
QList<NamedWidget *> subConfigWidgets = m_buildConfiguration->createSubConfigWidgets();
|
||||
foreach (NamedWidget *subConfigWidget, subConfigWidgets)
|
||||
|
||||
@@ -191,9 +191,35 @@ BuildStepsWidgetData::~BuildStepsWidgetData()
|
||||
// We do not own the step
|
||||
}
|
||||
|
||||
BuildStepListWidget::BuildStepListWidget(QWidget *parent) :
|
||||
NamedWidget(parent)
|
||||
{ }
|
||||
BuildStepListWidget::BuildStepListWidget(BuildStepList *bsl, QWidget *parent)
|
||||
: NamedWidget(parent), m_buildStepList(bsl)
|
||||
{
|
||||
setupUi();
|
||||
|
||||
connect(bsl, &BuildStepList::stepInserted, this, &BuildStepListWidget::addBuildStep);
|
||||
connect(bsl, &BuildStepList::stepRemoved, this, &BuildStepListWidget::removeBuildStep);
|
||||
connect(bsl, &BuildStepList::stepMoved, this, &BuildStepListWidget::stepMoved);
|
||||
|
||||
//: %1 is the name returned by BuildStepList::displayName
|
||||
setDisplayName(tr("%1 Steps").arg(bsl->displayName()));
|
||||
|
||||
for (int i = 0; i < bsl->count(); ++i) {
|
||||
addBuildStep(i);
|
||||
// addBuilStep expands the config widget by default, which we don't want here
|
||||
if (m_buildStepsData.at(i)->step->widgetExpandedByDefault()) {
|
||||
m_buildStepsData.at(i)->detailsWidget->setState(
|
||||
m_buildStepsData.at(i)->step->wasUserExpanded()
|
||||
? DetailsWidget::Expanded : DetailsWidget::Collapsed);
|
||||
}
|
||||
}
|
||||
|
||||
m_noStepsLabel->setVisible(bsl->isEmpty());
|
||||
m_noStepsLabel->setText(tr("No %1 Steps").arg(m_buildStepList->displayName()));
|
||||
|
||||
m_addButton->setText(tr("Add %1 Step").arg(m_buildStepList->displayName()));
|
||||
|
||||
updateBuildStepButtonsState();
|
||||
}
|
||||
|
||||
BuildStepListWidget::~BuildStepListWidget()
|
||||
{
|
||||
@@ -227,52 +253,6 @@ void BuildStepListWidget::updateEnabledState()
|
||||
}
|
||||
}
|
||||
|
||||
void BuildStepListWidget::init(BuildStepList *bsl)
|
||||
{
|
||||
Q_ASSERT(bsl);
|
||||
if (bsl == m_buildStepList)
|
||||
return;
|
||||
|
||||
setupUi();
|
||||
|
||||
if (m_buildStepList) {
|
||||
disconnect(m_buildStepList, &BuildStepList::stepInserted,
|
||||
this, &BuildStepListWidget::addBuildStep);
|
||||
disconnect(m_buildStepList, &BuildStepList::stepRemoved,
|
||||
this, &BuildStepListWidget::removeBuildStep);
|
||||
disconnect(m_buildStepList, &BuildStepList::stepMoved,
|
||||
this, &BuildStepListWidget::stepMoved);
|
||||
}
|
||||
|
||||
connect(bsl, &BuildStepList::stepInserted, this, &BuildStepListWidget::addBuildStep);
|
||||
connect(bsl, &BuildStepList::stepRemoved, this, &BuildStepListWidget::removeBuildStep);
|
||||
connect(bsl, &BuildStepList::stepMoved, this, &BuildStepListWidget::stepMoved);
|
||||
|
||||
qDeleteAll(m_buildStepsData);
|
||||
m_buildStepsData.clear();
|
||||
|
||||
m_buildStepList = bsl;
|
||||
//: %1 is the name returned by BuildStepList::displayName
|
||||
setDisplayName(tr("%1 Steps").arg(m_buildStepList->displayName()));
|
||||
|
||||
for (int i = 0; i < bsl->count(); ++i) {
|
||||
addBuildStep(i);
|
||||
// addBuilStep expands the config widget by default, which we don't want here
|
||||
if (m_buildStepsData.at(i)->step->widgetExpandedByDefault()) {
|
||||
m_buildStepsData.at(i)->detailsWidget->setState(
|
||||
m_buildStepsData.at(i)->step->wasUserExpanded()
|
||||
? DetailsWidget::Expanded : DetailsWidget::Collapsed);
|
||||
}
|
||||
}
|
||||
|
||||
m_noStepsLabel->setVisible(bsl->isEmpty());
|
||||
m_noStepsLabel->setText(tr("No %1 Steps").arg(m_buildStepList->displayName()));
|
||||
|
||||
m_addButton->setText(tr("Add %1 Step").arg(m_buildStepList->displayName()));
|
||||
|
||||
updateBuildStepButtonsState();
|
||||
}
|
||||
|
||||
void BuildStepListWidget::updateAddBuildStepMenu()
|
||||
{
|
||||
QMap<QString, QPair<Core::Id, BuildStepFactory *> > map;
|
||||
|
||||
@@ -97,11 +97,9 @@ class BuildStepListWidget : public NamedWidget
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
BuildStepListWidget(QWidget *parent = nullptr);
|
||||
BuildStepListWidget(BuildStepList *bsl, QWidget *parent = nullptr);
|
||||
~BuildStepListWidget() override;
|
||||
|
||||
void init(BuildStepList *bsl);
|
||||
|
||||
private:
|
||||
void updateAddBuildStepMenu();
|
||||
void addBuildStep(int pos);
|
||||
|
||||
@@ -424,8 +424,7 @@ void RunSettingsWidget::updateDeployConfiguration(DeployConfiguration *dc)
|
||||
if (m_deployConfigurationWidget)
|
||||
m_deployLayout->addWidget(m_deployConfigurationWidget);
|
||||
|
||||
m_deploySteps = new BuildStepListWidget;
|
||||
m_deploySteps->init(dc->stepList());
|
||||
m_deploySteps = new BuildStepListWidget(dc->stepList());
|
||||
m_deployLayout->addWidget(m_deploySteps);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user