ProjectExplorer: Replace virtual BuildStepConfigWidget::showWidget

... by a bool member.

One reason less for the need of custom derived classes, i.e. one
step forward to a setup where the then-generic config widget can be
created in BuildStepListWidget::init() and filled with aspect-
created subwidget, reducing the need of per-BuildStep boilerplate
similar to what was done in RunConfiguration recently.

Task-number: QTCREATORBUG-19985
Change-Id: I85d26bdb6b35d0d6715782214328a40eef87286e
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This commit is contained in:
hjk
2018-09-14 14:35:14 +02:00
parent 253f7e35af
commit d05e906bac
5 changed files with 11 additions and 11 deletions

View File

@@ -128,6 +128,7 @@ namespace Internal {
AndroidPackageInstallationStepWidget::AndroidPackageInstallationStepWidget(AndroidPackageInstallationStep *step)
: m_step(step)
{
setShowWidget(false);
}
QString AndroidPackageInstallationStepWidget::summaryText() const
@@ -140,11 +141,6 @@ QString AndroidPackageInstallationStepWidget::displayName() const
return tr("Make install");
}
bool AndroidPackageInstallationStepWidget::showWidget() const
{
return false;
}
//
// AndroidPackageInstallationStepFactory
//

View File

@@ -61,7 +61,6 @@ public:
QString summaryText() const override;
QString displayName() const override;
bool showWidget() const override;
private:
AndroidPackageInstallationStep *m_step;
};

View File

@@ -132,13 +132,13 @@ class ConfigWidget : public BuildStepConfigWidget
public:
ConfigWidget(BuildStep *step) : m_step(step)
{
setShowWidget(true);
connect(m_step, &ProjectConfiguration::displayNameChanged,
this, &BuildStepConfigWidget::updateSummary);
}
QString summaryText() const override { return "<b>" + displayName() + "</b>"; }
QString displayName() const override { return m_step->displayName(); }
bool showWidget() const override { return true; }
BuildStep *step() const { return m_step; }
private:

View File

@@ -174,11 +174,16 @@ public:
virtual QString summaryText() const = 0;
virtual QString additionalSummaryText() const { return QString(); }
virtual QString displayName() const = 0;
virtual bool showWidget() const { return true; }
bool showWidget() const { return m_showWidget; }
void setShowWidget(bool showWidget) { m_showWidget = showWidget; }
signals:
void updateSummary();
void updateAdditionalSummary();
private:
bool m_showWidget = true;
};
class PROJECTEXPLORER_EXPORT SimpleBuildStepConfigWidget : public BuildStepConfigWidget
@@ -189,11 +194,11 @@ public:
{
connect(m_step, &ProjectConfiguration::displayNameChanged,
this, &BuildStepConfigWidget::updateSummary);
setShowWidget(false);
}
QString summaryText() const override { return QLatin1String("<b>") + displayName() + QLatin1String("</b>"); }
QString displayName() const override { return m_step->displayName(); }
bool showWidget() const override { return false; }
BuildStep *step() const { return m_step; }
private:

View File

@@ -56,6 +56,8 @@ class CreateTarStepWidget : public SimpleBuildStepConfigWidget
public:
CreateTarStepWidget(TarPackageCreationStep *step) : SimpleBuildStepConfigWidget(step)
{
setShowWidget(true);
m_ignoreMissingFilesCheckBox.setText(tr("Ignore missing files"));
m_incrementalDeploymentCheckBox.setText(tr("Package modified files only"));
@@ -88,8 +90,6 @@ public:
+ step->packageFilePath();
}
bool showWidget() const { return true; }
private:
void handleIgnoreMissingFilesChanged(bool ignoreMissingFiles) {
TarPackageCreationStep *step = qobject_cast<TarPackageCreationStep *>(this->step());