From cc4e0e3ad129b64b7c9ed06827d789bb129bf527 Mon Sep 17 00:00:00 2001 From: dt <qtc-commiter@nokia.com> Date: Mon, 12 Jan 2009 15:29:05 +0100 Subject: [PATCH] Fixes: Correctly restore BuildSteps and add configuration options to the cmakestep. Details: Forgot to add the factories, also the configuration options for the cmakestep don't work atm. --- .../cmakeprojectmanager/cmakeprojectplugin.cpp | 4 ++++ src/plugins/cmakeprojectmanager/cmakestep.cpp | 13 ++++++++++++- src/plugins/cmakeprojectmanager/cmakestep.h | 6 ++++++ src/plugins/cmakeprojectmanager/makestep.cpp | 2 +- 4 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectplugin.cpp b/src/plugins/cmakeprojectmanager/cmakeprojectplugin.cpp index d38cb56c145..1c4a44710de 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectplugin.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeprojectplugin.cpp @@ -34,6 +34,8 @@ #include "cmakeprojectplugin.h" #include "cmakeprojectmanager.h" #include "cmakerunconfiguration.h" +#include "cmakestep.h" +#include "makestep.h" #include <coreplugin/icore.h> #include <coreplugin/mimedatabase.h> @@ -58,6 +60,8 @@ bool CMakeProjectPlugin::initialize(const QStringList & /*arguments*/, QString * if (!core->mimeDatabase()->addMimeTypes(QLatin1String(":cmakeproject/CMakeProject.mimetypes.xml"), errorMessage)) return false; addAutoReleasedObject(new CMakeManager()); + addAutoReleasedObject(new CMakeBuildStepFactory()); + addAutoReleasedObject(new MakeBuildStepFactory()); addAutoReleasedObject(new CMakeRunConfigurationFactory()); return true; } diff --git a/src/plugins/cmakeprojectmanager/cmakestep.cpp b/src/plugins/cmakeprojectmanager/cmakestep.cpp index c286712c914..9ed0a67f358 100644 --- a/src/plugins/cmakeprojectmanager/cmakestep.cpp +++ b/src/plugins/cmakeprojectmanager/cmakestep.cpp @@ -37,6 +37,8 @@ #include "cmakeprojectconstants.h" #include <utils/qtcassert.h> +#include <QtGui/QFormLayout> +#include <QtGui/QLineEdit> using namespace CMakeProjectManager; using namespace CMakeProjectManager::Internal; @@ -83,7 +85,7 @@ QString CMakeStep::displayName() ProjectExplorer::BuildStepConfigWidget *CMakeStep::createConfigWidget() { - return new CMakeBuildStepConfigWidget(); + return new CMakeBuildStepConfigWidget(this); } bool CMakeStep::immutable() const @@ -95,6 +97,15 @@ bool CMakeStep::immutable() const // CMakeBuildStepConfigWidget // +CMakeBuildStepConfigWidget::CMakeBuildStepConfigWidget(CMakeStep *cmakeStep) + : m_cmakeStep(cmakeStep) +{ + QFormLayout *fl = new QFormLayout(this); + setLayout(fl); + m_arguments = new QLineEdit(this); + fl->addRow("Additional arguments", m_arguments); +} + QString CMakeBuildStepConfigWidget::displayName() const { return "CMake"; diff --git a/src/plugins/cmakeprojectmanager/cmakestep.h b/src/plugins/cmakeprojectmanager/cmakestep.h index 44f9bf7f601..ec7c9cf9ad4 100644 --- a/src/plugins/cmakeprojectmanager/cmakestep.h +++ b/src/plugins/cmakeprojectmanager/cmakestep.h @@ -37,6 +37,8 @@ #include <projectexplorer/buildstep.h> #include <projectexplorer/abstractprocessstep.h> +class QLineEdit; + namespace CMakeProjectManager { namespace Internal { @@ -65,8 +67,12 @@ private: class CMakeBuildStepConfigWidget :public ProjectExplorer::BuildStepConfigWidget { public: + CMakeBuildStepConfigWidget(CMakeStep *cmakeStep); virtual QString displayName() const; virtual void init(const QString &buildConfiguration); +private: + CMakeStep *m_cmakeStep; + QLineEdit *m_arguments; }; class CMakeBuildStepFactory : public ProjectExplorer::IBuildStepFactory diff --git a/src/plugins/cmakeprojectmanager/makestep.cpp b/src/plugins/cmakeprojectmanager/makestep.cpp index ef956f38eea..279e9e75485 100644 --- a/src/plugins/cmakeprojectmanager/makestep.cpp +++ b/src/plugins/cmakeprojectmanager/makestep.cpp @@ -71,7 +71,7 @@ void MakeStep::run(QFutureInterface<bool> &fi) QString MakeStep::name() { - return Constants::CMAKESTEP; + return Constants::MAKESTEP; } QString MakeStep::displayName() -- GitLab