forked from qt-creator/qt-creator
ProjectExplorer: Merge SimpleBuildStepWidget into BuildStepWidget
The extra m_step member is not worth the abstraction, especially since almost all non-SimpleBuildStepWidget have something similar, too. Also, as several derived classes needed to correct SimpleBuildStepWidget's setShowWidget(false). Change-Id: I6e80d8c84c363b90dc27c70abd7fa6cefa1ed91e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -57,7 +57,7 @@ namespace Android {
|
||||
namespace Internal {
|
||||
|
||||
AndroidBuildApkInnerWidget::AndroidBuildApkInnerWidget(AndroidBuildApkStep *step)
|
||||
: ProjectExplorer::BuildStepConfigWidget(),
|
||||
: ProjectExplorer::BuildStepConfigWidget(step),
|
||||
m_ui(new Ui::AndroidBuildApkWidget),
|
||||
m_step(step)
|
||||
{
|
||||
@@ -230,6 +230,7 @@ void AndroidBuildApkInnerWidget::updateSigningWarning()
|
||||
// AndroidBuildApkWidget
|
||||
|
||||
AndroidBuildApkWidget::AndroidBuildApkWidget(AndroidBuildApkStep *step) :
|
||||
BuildStepConfigWidget(step),
|
||||
m_step(step)
|
||||
{
|
||||
m_extraLibraryListModel = new AndroidExtraLibraryListModel(m_step->target(), this);
|
||||
|
@@ -36,7 +36,7 @@ using namespace Android;
|
||||
using namespace Internal;
|
||||
|
||||
AndroidDeployQtWidget::AndroidDeployQtWidget(AndroidDeployQtStep *step)
|
||||
: ProjectExplorer::BuildStepConfigWidget(),
|
||||
: ProjectExplorer::BuildStepConfigWidget(step),
|
||||
m_ui(new Ui::AndroidDeployQtWidget),
|
||||
m_step(step)
|
||||
{
|
||||
|
@@ -126,9 +126,8 @@ bool AndroidPackageInstallationStep::immutable() const
|
||||
namespace Internal {
|
||||
|
||||
AndroidPackageInstallationStepWidget::AndroidPackageInstallationStepWidget(AndroidPackageInstallationStep *step)
|
||||
: m_step(step)
|
||||
: BuildStepConfigWidget(step, false)
|
||||
{
|
||||
setShowWidget(false);
|
||||
}
|
||||
|
||||
QString AndroidPackageInstallationStepWidget::summaryText() const
|
||||
|
@@ -61,8 +61,6 @@ public:
|
||||
|
||||
QString summaryText() const override;
|
||||
QString displayName() const override;
|
||||
private:
|
||||
AndroidPackageInstallationStep *m_step;
|
||||
};
|
||||
|
||||
class AndroidPackageInstallationFactory: public ProjectExplorer::BuildStepFactory
|
||||
|
@@ -156,6 +156,7 @@ bool AutogenStep::fromMap(const QVariantMap &map)
|
||||
// AutogenStepConfigWidget class
|
||||
//////////////////////////////////
|
||||
AutogenStepConfigWidget::AutogenStepConfigWidget(AutogenStep *autogenStep) :
|
||||
BuildStepConfigWidget(autogenStep),
|
||||
m_autogenStep(autogenStep),
|
||||
m_additionalArguments(new QLineEdit)
|
||||
{
|
||||
|
@@ -149,6 +149,7 @@ bool AutoreconfStep::fromMap(const QVariantMap &map)
|
||||
// AutoreconfStepConfigWidget class
|
||||
//////////////////////////////////////
|
||||
AutoreconfStepConfigWidget::AutoreconfStepConfigWidget(AutoreconfStep *autoreconfStep) :
|
||||
BuildStepConfigWidget(autoreconfStep),
|
||||
m_autoreconfStep(autoreconfStep),
|
||||
m_additionalArguments(new QLineEdit(this))
|
||||
{
|
||||
|
@@ -172,6 +172,7 @@ bool ConfigureStep::fromMap(const QVariantMap &map)
|
||||
// ConfigureStepConfigWidget class
|
||||
/////////////////////////////////////
|
||||
ConfigureStepConfigWidget::ConfigureStepConfigWidget(ConfigureStep *configureStep) :
|
||||
BuildStepConfigWidget(configureStep),
|
||||
m_configureStep(configureStep),
|
||||
m_additionalArguments(new QLineEdit)
|
||||
{
|
||||
|
@@ -35,7 +35,7 @@ namespace Internal {
|
||||
const char GdbCommandsKey[] = "BareMetal.GdbCommandsStep.Commands";
|
||||
|
||||
BareMetalGdbCommandsDeployStepWidget::BareMetalGdbCommandsDeployStepWidget(BareMetalGdbCommandsDeployStep &step)
|
||||
: m_step(step)
|
||||
: BuildStepConfigWidget(&step), m_step(step)
|
||||
{
|
||||
QFormLayout *fl = new QFormLayout(this);
|
||||
fl->setMargin(0);
|
||||
|
@@ -410,6 +410,7 @@ QStringList CMakeBuildStep::specialTargets()
|
||||
//
|
||||
|
||||
CMakeBuildStepConfigWidget::CMakeBuildStepConfigWidget(CMakeBuildStep *buildStep) :
|
||||
BuildStepConfigWidget(buildStep),
|
||||
m_buildStep(buildStep),
|
||||
m_toolArguments(new QLineEdit),
|
||||
m_buildTargetsList(new QListWidget)
|
||||
|
@@ -206,7 +206,7 @@ QStringList IosBuildStep::baseArguments() const
|
||||
//
|
||||
|
||||
IosBuildStepConfigWidget::IosBuildStepConfigWidget(IosBuildStep *buildStep)
|
||||
: m_buildStep(buildStep)
|
||||
: BuildStepConfigWidget(buildStep), m_buildStep(buildStep)
|
||||
{
|
||||
m_ui = new Ui::IosBuildStep;
|
||||
m_ui->setupUi(this);
|
||||
|
@@ -31,13 +31,11 @@
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
|
||||
#include <QFileDialog>
|
||||
|
||||
namespace Ios {
|
||||
namespace Internal {
|
||||
|
||||
IosDeployStepWidget::IosDeployStepWidget(IosDeployStep *step) :
|
||||
ProjectExplorer::BuildStepConfigWidget(),
|
||||
ProjectExplorer::BuildStepConfigWidget(step),
|
||||
ui(new Ui::IosDeployStepWidget),
|
||||
m_step(step)
|
||||
{
|
||||
|
@@ -227,7 +227,7 @@ QStringList IosDsymBuildStep::arguments() const
|
||||
//
|
||||
|
||||
IosDsymBuildStepConfigWidget::IosDsymBuildStepConfigWidget(IosDsymBuildStep *buildStep)
|
||||
: m_buildStep(buildStep)
|
||||
: BuildStepConfigWidget(buildStep), m_buildStep(buildStep)
|
||||
{
|
||||
m_ui = new Ui::IosPresetBuildStep;
|
||||
m_ui->setupUi(this);
|
||||
|
@@ -39,7 +39,7 @@ using namespace Utils;
|
||||
namespace Nim {
|
||||
|
||||
NimCompilerBuildStepConfigWidget::NimCompilerBuildStepConfigWidget(NimCompilerBuildStep *buildStep)
|
||||
: BuildStepConfigWidget()
|
||||
: BuildStepConfigWidget(buildStep)
|
||||
, m_buildStep(buildStep)
|
||||
, m_ui(new Ui::NimCompilerBuildStepConfigWidget())
|
||||
{
|
||||
|
@@ -36,8 +36,7 @@ using namespace ProjectExplorer;
|
||||
namespace Nim {
|
||||
|
||||
NimCompilerCleanStepConfigWidget::NimCompilerCleanStepConfigWidget(NimCompilerCleanStep *cleanStep)
|
||||
: BuildStepConfigWidget()
|
||||
, m_cleanStep(cleanStep)
|
||||
: BuildStepConfigWidget(cleanStep)
|
||||
, m_ui(new Ui::NimCompilerCleanStepConfigWidget())
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
@@ -60,7 +59,7 @@ QString NimCompilerCleanStepConfigWidget::displayName() const
|
||||
|
||||
void NimCompilerCleanStepConfigWidget::updateUi()
|
||||
{
|
||||
auto buildDiretory = m_cleanStep->buildConfiguration()->buildDirectory();
|
||||
auto buildDiretory = step()->buildConfiguration()->buildDirectory();
|
||||
m_ui->workingDirectoryLineEdit->setText(buildDiretory.toString());
|
||||
}
|
||||
|
||||
|
@@ -49,7 +49,6 @@ public:
|
||||
private:
|
||||
void updateUi();
|
||||
|
||||
NimCompilerCleanStep *m_cleanStep;
|
||||
QScopedPointer<Ui::NimCompilerCleanStepConfigWidget> m_ui;
|
||||
};
|
||||
|
||||
|
@@ -127,27 +127,9 @@ BuildStep::BuildStep(BuildStepList *bsl, Core::Id id) :
|
||||
expander->registerSubProvider([this] { return projectConfiguration()->macroExpander(); });
|
||||
}
|
||||
|
||||
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(); }
|
||||
BuildStep *step() const { return m_step; }
|
||||
|
||||
private:
|
||||
BuildStep *m_step;
|
||||
};
|
||||
|
||||
BuildStepConfigWidget *BuildStep::createConfigWidget()
|
||||
{
|
||||
auto widget = new ConfigWidget(this);
|
||||
auto widget = new BuildStepConfigWidget(this, true);
|
||||
|
||||
auto formLayout = new QFormLayout(widget);
|
||||
formLayout->setMargin(0);
|
||||
@@ -381,4 +363,23 @@ BuildStep *BuildStepFactory::restore(BuildStepList *parent, const QVariantMap &m
|
||||
return bs;
|
||||
}
|
||||
|
||||
// BuildStepConfigWidget
|
||||
|
||||
BuildStepConfigWidget::BuildStepConfigWidget(BuildStep *step, bool showWidget)
|
||||
: m_step(step), m_showWidget(showWidget)
|
||||
{
|
||||
connect(m_step, &ProjectConfiguration::displayNameChanged,
|
||||
this, &BuildStepConfigWidget::updateSummary);
|
||||
}
|
||||
|
||||
QString BuildStepConfigWidget::summaryText() const
|
||||
{
|
||||
return "<b>" + displayName() + "</b>";
|
||||
}
|
||||
|
||||
QString BuildStepConfigWidget::displayName() const
|
||||
{
|
||||
return m_step->displayName();
|
||||
}
|
||||
|
||||
} // ProjectExplorer
|
||||
|
@@ -171,38 +171,22 @@ class PROJECTEXPLORER_EXPORT BuildStepConfigWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
virtual QString summaryText() const = 0;
|
||||
virtual QString additionalSummaryText() const { return QString(); }
|
||||
virtual QString displayName() const = 0;
|
||||
BuildStepConfigWidget(BuildStep *step, bool showWidget = true);
|
||||
|
||||
virtual QString summaryText() const;
|
||||
virtual QString additionalSummaryText() const { return QString(); }
|
||||
virtual QString displayName() const;
|
||||
|
||||
BuildStep *step() const { return m_step; }
|
||||
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
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
SimpleBuildStepConfigWidget(BuildStep *step) : m_step(step)
|
||||
{
|
||||
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(); }
|
||||
BuildStep *step() const { return m_step; }
|
||||
|
||||
private:
|
||||
BuildStep *m_step;
|
||||
BuildStep *m_step = nullptr;
|
||||
const bool m_showWidget = true;
|
||||
};
|
||||
|
||||
} // namespace ProjectExplorer
|
||||
|
@@ -84,7 +84,7 @@ void DeviceCheckBuildStep::run(QFutureInterface<bool> &fi)
|
||||
|
||||
BuildStepConfigWidget *DeviceCheckBuildStep::createConfigWidget()
|
||||
{
|
||||
return new SimpleBuildStepConfigWidget(this);
|
||||
return new BuildStepConfigWidget(this, false);
|
||||
}
|
||||
|
||||
Core::Id DeviceCheckBuildStep::stepId()
|
||||
|
@@ -331,8 +331,8 @@ QStringList MakeStep::availableTargets() const
|
||||
// GenericMakeStepConfigWidget
|
||||
//
|
||||
|
||||
MakeStepConfigWidget::MakeStepConfigWidget(MakeStep *makeStep) :
|
||||
m_makeStep(makeStep)
|
||||
MakeStepConfigWidget::MakeStepConfigWidget(MakeStep *makeStep)
|
||||
: BuildStepConfigWidget(makeStep), m_makeStep(makeStep)
|
||||
{
|
||||
m_ui = new Internal::Ui::MakeStep;
|
||||
m_ui->setupUi(this);
|
||||
|
@@ -152,8 +152,8 @@ ProcessStepFactory::ProcessStepFactory()
|
||||
// ProcessStepConfigWidget
|
||||
//*******
|
||||
|
||||
ProcessStepConfigWidget::ProcessStepConfigWidget(ProcessStep *step) :
|
||||
m_step(step)
|
||||
ProcessStepConfigWidget::ProcessStepConfigWidget(ProcessStep *step)
|
||||
: BuildStepConfigWidget(step), m_step(step)
|
||||
{
|
||||
m_ui.setupUi(this);
|
||||
m_ui.command->setExpectedKind(Utils::PathChooser::Command);
|
||||
|
@@ -534,6 +534,7 @@ QbsProject *QbsBuildStep::qbsProject() const
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
QbsBuildStepConfigWidget::QbsBuildStepConfigWidget(QbsBuildStep *step) :
|
||||
BuildStepConfigWidget(step),
|
||||
m_step(step),
|
||||
m_ignoreChange(false)
|
||||
{
|
||||
|
@@ -220,7 +220,7 @@ void QbsCleanStep::setMaxJobs(int jobcount)
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
QbsCleanStepConfigWidget::QbsCleanStepConfigWidget(QbsCleanStep *step) :
|
||||
m_step(step)
|
||||
BuildStepConfigWidget(step), m_step(step)
|
||||
{
|
||||
connect(m_step, &ProjectExplorer::ProjectConfiguration::displayNameChanged,
|
||||
this, &QbsCleanStepConfigWidget::updateState);
|
||||
|
@@ -251,7 +251,7 @@ void QbsInstallStep::handleBuildConfigChanged()
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
QbsInstallStepConfigWidget::QbsInstallStepConfigWidget(QbsInstallStep *step) :
|
||||
m_step(step), m_ignoreChange(false)
|
||||
BuildStepConfigWidget(step), m_step(step), m_ignoreChange(false)
|
||||
{
|
||||
connect(m_step, &ProjectExplorer::ProjectConfiguration::displayNameChanged,
|
||||
this, &QbsInstallStepConfigWidget::updateState);
|
||||
|
@@ -555,7 +555,7 @@ bool QMakeStep::fromMap(const QVariantMap &map)
|
||||
////
|
||||
|
||||
QMakeStepConfigWidget::QMakeStepConfigWidget(QMakeStep *step)
|
||||
: BuildStepConfigWidget(), m_ui(new Internal::Ui::QMakeStep), m_step(step)
|
||||
: BuildStepConfigWidget(step), m_ui(new Internal::Ui::QMakeStep), m_step(step)
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
|
||||
|
@@ -112,7 +112,7 @@ void AbstractRemoteLinuxDeployStep::cancel()
|
||||
|
||||
BuildStepConfigWidget *AbstractRemoteLinuxDeployStep::createConfigWidget()
|
||||
{
|
||||
return new SimpleBuildStepConfigWidget(this);
|
||||
return new BuildStepConfigWidget(this, false);
|
||||
}
|
||||
|
||||
RemoteLinuxDeployConfiguration *AbstractRemoteLinuxDeployStep::deployConfiguration() const
|
||||
|
@@ -43,7 +43,7 @@ class RemoteLinuxCheckForFreeDiskSpaceStepWidget : public BuildStepConfigWidget
|
||||
|
||||
public:
|
||||
explicit RemoteLinuxCheckForFreeDiskSpaceStepWidget(RemoteLinuxCheckForFreeDiskSpaceStep &step)
|
||||
: m_step(step)
|
||||
: BuildStepConfigWidget(&step), m_step(step)
|
||||
{
|
||||
m_ui.setupUi(this);
|
||||
m_ui.requiredSpaceSpinBox->setSuffix(tr("MB"));
|
||||
|
@@ -50,14 +50,12 @@ namespace {
|
||||
const char IgnoreMissingFilesKey[] = "RemoteLinux.TarPackageCreationStep.IgnoreMissingFiles";
|
||||
const char IncrementalDeploymentKey[] = "RemoteLinux.TarPackageCreationStep.IncrementalDeployment";
|
||||
|
||||
class CreateTarStepWidget : public SimpleBuildStepConfigWidget
|
||||
class CreateTarStepWidget : public BuildStepConfigWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
CreateTarStepWidget(TarPackageCreationStep *step) : SimpleBuildStepConfigWidget(step)
|
||||
CreateTarStepWidget(TarPackageCreationStep *step) : BuildStepConfigWidget(step)
|
||||
{
|
||||
setShowWidget(true);
|
||||
|
||||
m_ignoreMissingFilesCheckBox.setText(tr("Ignore missing files"));
|
||||
m_incrementalDeploymentCheckBox.setText(tr("Package modified files only"));
|
||||
|
||||
|
@@ -83,7 +83,7 @@ bool UploadAndInstallTarPackageStep::initInternal(QString *error)
|
||||
|
||||
BuildStepConfigWidget *UploadAndInstallTarPackageStep::createConfigWidget()
|
||||
{
|
||||
return new SimpleBuildStepConfigWidget(this);
|
||||
return new BuildStepConfigWidget(this, false);
|
||||
}
|
||||
|
||||
Core::Id UploadAndInstallTarPackageStep::stepId()
|
||||
|
@@ -32,7 +32,8 @@ namespace WinRt {
|
||||
namespace Internal {
|
||||
|
||||
WinRtPackageDeploymentStepWidget::WinRtPackageDeploymentStepWidget(WinRtPackageDeploymentStep *step)
|
||||
: m_ui(new Ui::WinRtPackageDeploymentStepWidget)
|
||||
: BuildStepConfigWidget(step)
|
||||
, m_ui(new Ui::WinRtPackageDeploymentStepWidget)
|
||||
, m_step(step)
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
|
Reference in New Issue
Block a user