diff options
author | Tobias Hunger <tobias.hunger@nokia.com> | 2010-01-14 17:41:29 +0100 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@nokia.com> | 2010-02-01 12:23:12 +0100 |
commit | 1726688434b4f974d0179d4ec979ce00f208c9b2 (patch) | |
tree | 502f06910adc0744a1fb13b4f8f1d0d01731b844 /src/plugins/qt4projectmanager/makestep.h | |
parent | c410d268dbe05c26563f4beceab99e2420f7a521 (diff) | |
download | qt-creator-1726688434b4f974d0179d4ec979ce00f208c9b2.tar.gz |
Make use of ProjectConfiguration class in BuildSteps
* Use new BuildSteps interface (as seen in ProjectConfiguration).
* Use new factory to construct/clone/restore them.
Reviewed-by: dt
Diffstat (limited to 'src/plugins/qt4projectmanager/makestep.h')
-rw-r--r-- | src/plugins/qt4projectmanager/makestep.h | 37 |
1 files changed, 23 insertions, 14 deletions
diff --git a/src/plugins/qt4projectmanager/makestep.h b/src/plugins/qt4projectmanager/makestep.h index 2626acaf5f..f341bac6fb 100644 --- a/src/plugins/qt4projectmanager/makestep.h +++ b/src/plugins/qt4projectmanager/makestep.h @@ -49,13 +49,19 @@ class Qt4BuildConfiguration; class MakeStepFactory : public ProjectExplorer::IBuildStepFactory { Q_OBJECT + public: - MakeStepFactory(); + explicit MakeStepFactory(QObject *parent = 0); virtual ~MakeStepFactory(); - bool canCreate(const QString &id) const; - ProjectExplorer::BuildStep *create(ProjectExplorer::BuildConfiguration *bc, const QString &id) const; - ProjectExplorer::BuildStep *clone(ProjectExplorer::BuildStep *bs, ProjectExplorer::BuildConfiguration *bc) const; - QStringList canCreateForBuildConfiguration(ProjectExplorer::BuildConfiguration *bc) const; + + bool canCreate(ProjectExplorer::BuildConfiguration *parent, const QString &id) const; + ProjectExplorer::BuildStep *create(ProjectExplorer::BuildConfiguration *parent, const QString &id); + bool canClone(ProjectExplorer::BuildConfiguration *parent, ProjectExplorer::BuildStep *source) const; + ProjectExplorer::BuildStep *clone(ProjectExplorer::BuildConfiguration *parent, ProjectExplorer::BuildStep *source); + bool canRestore(ProjectExplorer::BuildConfiguration *parent, const QVariantMap &map) const; + ProjectExplorer::BuildStep *restore(ProjectExplorer::BuildConfiguration *parent, const QVariantMap &map); + + QStringList availableCreationIds(ProjectExplorer::BuildConfiguration *parent) const; QString displayNameForId(const QString &id) const; }; } //namespace Internal @@ -65,33 +71,36 @@ class Qt4Project; class MakeStep : public ProjectExplorer::AbstractProcessStep { Q_OBJECT + friend class Internal::MakeStepFactory; friend class MakeStepConfigWidget; // TODO remove this // used to access internal stuff + public: - MakeStep(ProjectExplorer::BuildConfiguration *bc); - MakeStep(MakeStep *bs, ProjectExplorer::BuildConfiguration *bc); - ~MakeStep(); + explicit MakeStep(ProjectExplorer::BuildConfiguration *bc); + virtual ~MakeStep(); Internal::Qt4BuildConfiguration *qt4BuildConfiguration() const; virtual bool init(); virtual void run(QFutureInterface<bool> &); - virtual QString id(); - virtual QString displayName(); virtual ProjectExplorer::BuildStepConfigWidget *createConfigWidget(); virtual bool immutable() const; QStringList userArguments(); void setUserArguments(const QStringList &arguments); void setClean(bool clean); - virtual void restoreFromGlobalMap(const QMap<QString, QVariant> &map); - - virtual void restoreFromLocalMap(const QMap<QString, QVariant> &map); - virtual void storeIntoLocalMap(QMap<QString, QVariant> &map); + QVariantMap toMap() const; signals: void userArgumentsChanged(); + +protected: + MakeStep(ProjectExplorer::BuildConfiguration *bc, MakeStep *bs); + MakeStep(ProjectExplorer::BuildConfiguration *bc, const QString &id); + virtual bool fromMap(const QVariantMap &map); + private: + void ctor(); bool m_clean; QStringList m_userArgs; QString m_makeCmd; |