diff options
Diffstat (limited to 'src/plugins/cmakeprojectmanager/cmakebuildstep.h')
-rw-r--r-- | src/plugins/cmakeprojectmanager/cmakebuildstep.h | 55 |
1 files changed, 13 insertions, 42 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildstep.h b/src/plugins/cmakeprojectmanager/cmakebuildstep.h index 1938c88b10..ffab03c180 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildstep.h +++ b/src/plugins/cmakeprojectmanager/cmakebuildstep.h @@ -27,22 +27,9 @@ #include <projectexplorer/abstractprocessstep.h> -#include <QRegExp> +namespace Utils { class CommandLine; } -QT_BEGIN_NAMESPACE -class QLineEdit; -class QListWidget; -class QListWidgetItem; -class QRadioButton; -QT_END_NAMESPACE - -namespace Utils { -class CommandLine; -} // Utils - -namespace ProjectExplorer { -class RunConfiguration; -} // ProjectManager +namespace ProjectExplorer { class RunConfiguration; } namespace CMakeProjectManager { namespace Internal { @@ -56,14 +43,16 @@ class CMakeBuildStep : public ProjectExplorer::AbstractProcessStep friend class CMakeBuildStepFactory; public: - CMakeBuildStep(ProjectExplorer::BuildStepList *bsl, Core::Id id); + CMakeBuildStep(ProjectExplorer::BuildStepList *bsl, Utils::Id id); CMakeBuildConfiguration *cmakeBuildConfiguration() const; - QString buildTarget() const; + QStringList buildTargets() const; bool buildsBuildTarget(const QString &target) const; - void setBuildTarget(const QString &target); + void setBuildTargets(const QStringList &target); + QString cmakeArguments() const; + void setCMakeArguments(const QString &list); QString toolArguments() const; void setToolArguments(const QString &list); @@ -80,7 +69,7 @@ public: static QStringList specialTargets(); signals: - void targetToBuildChanged(); + void targetsToBuildChanged(); void buildTargetsChanged(); protected: @@ -90,12 +79,13 @@ protected: bool fromMap(const QVariantMap &map) override; // For parsing [ 76%] - void stdOutput(const QString &line) override; + void stdOutput(const QString &output) override; private: void ctor(ProjectExplorer::BuildStepList *bsl); bool init() override; + void setupOutputFormatter(Utils::OutputFormatter *formatter) override; void doRun() override; ProjectExplorer::BuildStepConfigWidget *createConfigWidget() override; @@ -104,39 +94,20 @@ private: void runImpl(); void handleProjectWasParsed(bool success); - void handleBuildTargetChanges(bool success); + void handleBuildTargetsChanges(bool success); QMetaObject::Connection m_runTrigger; QRegExp m_percentProgress; QRegExp m_ninjaProgress; QString m_ninjaProgressString; - QString m_buildTarget; + QStringList m_buildTargets; + QString m_cmakeArguments; QString m_toolArguments; bool m_useNinja = false; bool m_waiting = false; }; -class CMakeBuildStepConfigWidget : public ProjectExplorer::BuildStepConfigWidget -{ - Q_OBJECT -public: - CMakeBuildStepConfigWidget(CMakeBuildStep *buildStep); - -private: - void itemChanged(QListWidgetItem*); - void toolArgumentsEdited(); - void updateDetails(); - void buildTargetsChanged(); - void updateBuildTarget(); - - QRadioButton *itemWidget(QListWidgetItem *item); - - CMakeBuildStep *m_buildStep; - QLineEdit *m_toolArguments; - QListWidget *m_buildTargetsList; -}; - class CMakeBuildStepFactory : public ProjectExplorer::BuildStepFactory { public: |