forked from qt-creator/qt-creator
BuildConfiguration: De-virtualize setBuildConfiguration
... and adjust users in Nim and Autotoolsplugins. Change-Id: I6133ca933a5a4dc4d7d9ff73c8ca7afaa51ae516 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
@@ -62,6 +62,11 @@ AutotoolsBuildConfiguration::AutotoolsBuildConfiguration(Target *parent) :
|
|||||||
// /<foobar> is used so the un-changed check in setBuildDirectory() works correctly.
|
// /<foobar> is used so the un-changed check in setBuildDirectory() works correctly.
|
||||||
// The leading / is to avoid the relative the path expansion in BuildConfiguration::buildDirectory.
|
// The leading / is to avoid the relative the path expansion in BuildConfiguration::buildDirectory.
|
||||||
BuildConfiguration::setBuildDirectory(Utils::FileName::fromString(QString::fromLatin1("/<foobar>")));
|
BuildConfiguration::setBuildDirectory(Utils::FileName::fromString(QString::fromLatin1("/<foobar>")));
|
||||||
|
|
||||||
|
connect(this, &BuildConfiguration::buildDirectoryChanged, this, [this] {
|
||||||
|
foreach (auto bs, stepList(BUILDSTEPS_BUILD)->allOfType<ConfigureStep>())
|
||||||
|
bs->notifyBuildDirectoryChanged();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
NamedWidget *AutotoolsBuildConfiguration::createConfigWidget()
|
NamedWidget *AutotoolsBuildConfiguration::createConfigWidget()
|
||||||
@@ -222,12 +227,3 @@ BuildConfiguration::BuildType AutotoolsBuildConfiguration::buildType() const
|
|||||||
// TODO: Should I return something different from Unknown?
|
// TODO: Should I return something different from Unknown?
|
||||||
return Unknown;
|
return Unknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AutotoolsBuildConfiguration::setBuildDirectory(const Utils::FileName &directory)
|
|
||||||
{
|
|
||||||
if (directory == buildDirectory())
|
|
||||||
return;
|
|
||||||
BuildConfiguration::setBuildDirectory(directory);
|
|
||||||
foreach (auto bs, stepList(BUILDSTEPS_BUILD)->allOfType<ConfigureStep>())
|
|
||||||
bs->notifyBuildDirectoryChanged();
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -36,7 +36,6 @@ namespace Internal {
|
|||||||
|
|
||||||
class AutotoolsTarget;
|
class AutotoolsTarget;
|
||||||
class AutotoolsBuildConfigurationFactory;
|
class AutotoolsBuildConfigurationFactory;
|
||||||
class AutotoolsBuildSettingsWidget;
|
|
||||||
|
|
||||||
class AutotoolsBuildConfiguration : public ProjectExplorer::BuildConfiguration
|
class AutotoolsBuildConfiguration : public ProjectExplorer::BuildConfiguration
|
||||||
{
|
{
|
||||||
@@ -53,11 +52,6 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
AutotoolsBuildConfiguration(ProjectExplorer::Target *parent, Core::Id id);
|
AutotoolsBuildConfiguration(ProjectExplorer::Target *parent, Core::Id id);
|
||||||
AutotoolsBuildConfiguration(ProjectExplorer::Target *parent, AutotoolsBuildConfiguration *source);
|
AutotoolsBuildConfiguration(ProjectExplorer::Target *parent, AutotoolsBuildConfiguration *source);
|
||||||
|
|
||||||
friend class AutotoolsBuildSettingsWidget;
|
|
||||||
|
|
||||||
private:
|
|
||||||
void setBuildDirectory(const Utils::FileName &directory) override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class AutotoolsBuildConfigurationFactory : public ProjectExplorer::IBuildConfigurationFactory
|
class AutotoolsBuildConfigurationFactory : public ProjectExplorer::IBuildConfigurationFactory
|
||||||
|
|||||||
@@ -54,13 +54,6 @@ BuildConfiguration::BuildType NimBuildConfiguration::buildType() const
|
|||||||
return BuildConfiguration::Unknown;
|
return BuildConfiguration::Unknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
void NimBuildConfiguration::setBuildDirectory(const FileName &dir)
|
|
||||||
{
|
|
||||||
if (dir == buildDirectory())
|
|
||||||
return;
|
|
||||||
BuildConfiguration::setBuildDirectory(dir);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool NimBuildConfiguration::fromMap(const QVariantMap &map)
|
bool NimBuildConfiguration::fromMap(const QVariantMap &map)
|
||||||
{
|
{
|
||||||
if (!BuildConfiguration::fromMap(map))
|
if (!BuildConfiguration::fromMap(map))
|
||||||
|
|||||||
@@ -46,8 +46,6 @@ public:
|
|||||||
|
|
||||||
ProjectExplorer::BuildConfiguration::BuildType buildType() const override;
|
ProjectExplorer::BuildConfiguration::BuildType buildType() const override;
|
||||||
|
|
||||||
void setBuildDirectory(const Utils::FileName &dir) override;
|
|
||||||
|
|
||||||
bool fromMap(const QVariantMap &map) override;
|
bool fromMap(const QVariantMap &map) override;
|
||||||
QVariantMap toMap() const override;
|
QVariantMap toMap() const override;
|
||||||
|
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ public:
|
|||||||
|
|
||||||
Utils::FileName buildDirectory() const;
|
Utils::FileName buildDirectory() const;
|
||||||
Utils::FileName rawBuildDirectory() const;
|
Utils::FileName rawBuildDirectory() const;
|
||||||
|
void setBuildDirectory(const Utils::FileName &dir);
|
||||||
|
|
||||||
virtual NamedWidget *createConfigWidget() = 0;
|
virtual NamedWidget *createConfigWidget() = 0;
|
||||||
virtual QList<NamedWidget *> createSubConfigWidgets();
|
virtual QList<NamedWidget *> createSubConfigWidgets();
|
||||||
@@ -96,7 +97,6 @@ protected:
|
|||||||
BuildConfiguration(Target *target, Core::Id id);
|
BuildConfiguration(Target *target, Core::Id id);
|
||||||
BuildConfiguration(Target *target, BuildConfiguration *source);
|
BuildConfiguration(Target *target, BuildConfiguration *source);
|
||||||
|
|
||||||
virtual void setBuildDirectory(const Utils::FileName &dir);
|
|
||||||
void cloneSteps(BuildConfiguration *source);
|
void cloneSteps(BuildConfiguration *source);
|
||||||
void emitEnvironmentChanged();
|
void emitEnvironmentChanged();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user