OSDN Git Service

Less magic in BuildStep::buildConfiguration() and deployConfiguration()
[qt-creator-jp/qt-creator-jp.git] / src / plugins / projectexplorer / buildstep.h
index 9526966..f253534 100644 (file)
@@ -26,7 +26,7 @@
 ** conditions contained in a signed written agreement between you and Nokia.
 **
 ** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
+** Nokia at info@qt.nokia.com.
 **
 **************************************************************************/
 
 
 #include "projectconfiguration.h"
 #include "projectexplorer_export.h"
-#include "task.h"
 
 #include <QtCore/QFutureInterface>
 #include <QtGui/QWidget>
 
 namespace ProjectExplorer {
-
+class Task;
 class BuildConfiguration;
 class BuildStepList;
 class DeployConfiguration;
@@ -68,6 +67,8 @@ public:
     virtual BuildStepConfigWidget *createConfigWidget() = 0;
 
     virtual bool immutable() const;
+    virtual bool runInGuiThread() const;
+    virtual void cancel();
 
     BuildConfiguration *buildConfiguration() const;
     DeployConfiguration *deployConfiguration() const;
@@ -76,11 +77,14 @@ public:
     enum OutputFormat { NormalOutput, ErrorOutput, MessageOutput, ErrorMessageOutput };
     enum OutputNewlineSetting { DoAppendNewline, DontAppendNewline };
 
+    Project *project() const;
 signals:
     void addTask(const ProjectExplorer::Task &task);
 
     void addOutput(const QString &string, ProjectExplorer::BuildStep::OutputFormat format,
         ProjectExplorer::BuildStep::OutputNewlineSetting newlineSetting = DoAppendNewline) const;
+
+    void finished();
 };
 
 class PROJECTEXPLORER_EXPORT IBuildStepFactory :
@@ -132,11 +136,13 @@ public:
     BuildStepConfigWidget()
         : QWidget()
         {}
-    virtual void init() = 0;
     virtual QString summaryText() const = 0;
+    virtual QString additionalSummaryText() const { return QString(); }
     virtual QString displayName() const = 0;
+
 signals:
     void updateSummary();
+    void updateAdditionalSummary();
 };
 
 } // namespace ProjectExplorer