diff --git a/src/plugins/cmakeprojectmanager/cmakestep.cpp b/src/plugins/cmakeprojectmanager/cmakestep.cpp new file mode 100644 index 0000000000000000000000000000000000000000..25f383b4545d9e79a84046d9b275115285e66ea1 --- /dev/null +++ b/src/plugins/cmakeprojectmanager/cmakestep.cpp @@ -0,0 +1,90 @@ +#include "cmakestep.h" +#include "cmakeprojectconstants.h" +#include "cmakeproject.h" + +using namespace CMakeProjectManager; +using namespace CMakeProjectManager::Internal; + +CMakeStep::CMakeStep(CMakeProject *pro) + : BuildStep(pro), m_pro(pro) +{ + +} + +CMakeStep::~CMakeStep() +{ + +} + +bool CMakeStep::init(const QString &buildConfiguration) +{ + // TODO +} + +void CMakeStep::run(QFutureInterface<bool> &fi) +{ + // TODO + fi.reportResult(true); +} + +QString CMakeStep::name() +{ + return "CMake"; +} + +QString CMakeStep::displayName() +{ + return Constants::CMAKESTEP; +} + +ProjectExplorer::BuildStepConfigWidget *CMakeStep::createConfigWidget() +{ + return new CMakeBuildStepConfigWidget(); +} + +bool CMakeStep::immutable() const +{ + return true; +} + +// +// CMakeBuildStepConfigWidget +// + +QString CMakeBuildStepConfigWidget::displayName() const +{ + return "CMake"; +} + +void CMakeBuildStepConfigWidget::init(const QString &buildConfiguration) +{ + // TODO +} + +// +// CMakeBuildStepFactory +// + +bool CMakeBuildStepFactory::canCreate(const QString &name) const +{ + return (Constants::CMAKESTEP == name); +} + +ProjectExplorer::BuildStep *CMakeBuildStepFactory::create(ProjectExplorer::Project *project, const QString &name) const +{ + Q_ASSERT(name == Constants::CMAKESTEP); + CMakeProject *pro = qobject_cast<CMakeProject *>(project); + Q_ASSERT(pro); + return new CMakeStep(pro); +} + +QStringList CMakeBuildStepFactory::canCreateForProject(ProjectExplorer::Project *pro) const +{ + return QStringList(); +} + +QString CMakeBuildStepFactory::displayNameForName(const QString &name) const +{ + return "CMake"; +} + diff --git a/src/plugins/cmakeprojectmanager/cmakestep.h b/src/plugins/cmakeprojectmanager/cmakestep.h new file mode 100644 index 0000000000000000000000000000000000000000..dea4499efc4fc3c6b05abc9d6772f6d5554528b4 --- /dev/null +++ b/src/plugins/cmakeprojectmanager/cmakestep.h @@ -0,0 +1,48 @@ +#ifndef CMAKESTEP_H +#define CMAKESTEP_H + +#include <projectexplorer/buildstep.h> + +namespace CMakeProjectManager { +namespace Internal { + +class CMakeProject; + +class CMakeBuildStepConfigWidget; + +class CMakeStep : public ProjectExplorer::BuildStep +{ +public: + CMakeStep(CMakeProject *pro); + ~CMakeStep(); + virtual bool init(const QString &buildConfiguration); + + virtual void run(QFutureInterface<bool> &fi); + + virtual QString name(); + virtual QString displayName(); + virtual ProjectExplorer::BuildStepConfigWidget *createConfigWidget(); + virtual bool immutable() const; +private: + CMakeProject *m_pro; +}; + +class CMakeBuildStepConfigWidget :public ProjectExplorer::BuildStepConfigWidget +{ +public: + virtual QString displayName() const; + virtual void init(const QString &buildConfiguration); +}; + +class CMakeBuildStepFactory : public ProjectExplorer::IBuildStepFactory +{ + virtual bool canCreate(const QString &name) const; + virtual ProjectExplorer::BuildStep *create(ProjectExplorer::Project *pro, const QString &name) const; + virtual QStringList canCreateForProject(ProjectExplorer::Project *pro) const; + virtual QString displayNameForName(const QString &name) const; +}; + + +} +} +#endif // CMAKESTEP_H