summaryrefslogtreecommitdiff
path: root/src/plugins/projectexplorer/appoutputpane.h
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2017-07-20 14:43:24 +0200
committerhjk <hjk@qt.io>2017-07-20 13:50:31 +0000
commita54cba428ac3461c11cf0659c60d20503a688309 (patch)
tree8e6ea9c7e6d98dfc9802194ecbdeb25635a01550 /src/plugins/projectexplorer/appoutputpane.h
parent35c7360892c8da3684ec335eae021a18fbca3407 (diff)
downloadqt-creator-a54cba428ac3461c11cf0659c60d20503a688309.tar.gz
ProjectExplorer: Fix crashes on shutdown
Ensure that RunControls ramp down asynchronously. Since RunControls now ramp down asynchronously the plugin can only report synchronous shut down if no RunControl/OutputPane was present. Task-number: QTCREATORBUG-18605 Change-Id: Ib8d1f857f85c74d4f18ecb85db537121a2275668 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/projectexplorer/appoutputpane.h')
-rw-r--r--src/plugins/projectexplorer/appoutputpane.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/plugins/projectexplorer/appoutputpane.h b/src/plugins/projectexplorer/appoutputpane.h
index b260447ba5..fc7ac6e05e 100644
--- a/src/plugins/projectexplorer/appoutputpane.h
+++ b/src/plugins/projectexplorer/appoutputpane.h
@@ -88,14 +88,10 @@ public:
void setBehaviorOnOutput(RunControl *rc, BehaviorOnOutput mode);
bool aboutToClose() const;
- bool closeTabs(CloseTabMode mode);
+ void closeTabs(CloseTabMode mode);
QList<RunControl *> allRunControls() const;
-signals:
- void allRunControlsFinished();
-
-public:
// ApplicationOutput specifics
void projectRemoved();
@@ -126,12 +122,11 @@ private:
explicit RunControlTab(RunControl *runControl = nullptr,
Core::OutputWindow *window = nullptr);
QPointer<RunControl> runControl;
- Core::OutputWindow *window;
+ QPointer<Core::OutputWindow> window;
BehaviorOnOutput behaviorOnOutput = Flash;
};
- bool isRunning() const;
- bool closeTab(int index, CloseTabMode cm = CloseTabWithPrompt);
+ void closeTab(int index, CloseTabMode cm = CloseTabWithPrompt);
bool optionallyPromptToStop(RunControl *runControl);
int indexOf(const RunControl *) const;
@@ -148,6 +143,7 @@ private:
QWidget *m_mainWidget;
TabWidget *m_tabWidget;
QVector<RunControlTab> m_runControlTabs;
+ int m_runControlCount = 0;
QAction *m_stopAction;
QAction *m_closeCurrentTabAction;
QAction *m_closeAllTabsAction;