diff options
author | Eike Ziller <eike.ziller@nokia.com> | 2011-11-01 18:16:38 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@nokia.com> | 2011-11-01 18:16:38 +0100 |
commit | 912cd548c0b0950b3a1e80f2597c99b3bf898c83 (patch) | |
tree | c9eeb5ac857dcabcfb404f60356ad4522471d9ed /src/plugins/projectexplorer/runsettingspropertiespage.cpp | |
parent | ddde938174f03544182adb79179d192502b50e51 (diff) | |
parent | 002820867cc0f4f5c67c5ae976eec26157275d4f (diff) | |
download | qt-creator-912cd548c0b0950b3a1e80f2597c99b3bf898c83.tar.gz |
Merge remote-tracking branch 'origin/2.4'
Conflicts:
src/libs/qmljs/qmljsinterpreter.cpp
src/libs/qmljs/qmljsinterpreter.h
src/plugins/madde/maemopackagecreationstep.cpp
src/plugins/projectexplorer/buildmanager.cpp
src/plugins/qmljstools/qmljsqtstylecodeformatter.cpp
src/plugins/qmljstools/qmljsqtstylecodeformatter.h
tests/auto/qml/qmleditor/qmlcodeformatter/tst_qmlcodeformatter.cpp
Change-Id: I63ab2ba5dac006c37ccfbae55b023396a4676ff7
Diffstat (limited to 'src/plugins/projectexplorer/runsettingspropertiespage.cpp')
-rw-r--r-- | src/plugins/projectexplorer/runsettingspropertiespage.cpp | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/src/plugins/projectexplorer/runsettingspropertiespage.cpp b/src/plugins/projectexplorer/runsettingspropertiespage.cpp index e1016ca460..e0497ca72e 100644 --- a/src/plugins/projectexplorer/runsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/runsettingspropertiespage.cpp @@ -42,6 +42,8 @@ #include <coreplugin/coreconstants.h> #include <extensionsystem/pluginmanager.h> +#include <projectexplorer/projectexplorer.h> +#include <projectexplorer/buildmanager.h> #include <utils/qtcassert.h> #include <QtCore/QPair> @@ -389,15 +391,31 @@ void RunSettingsWidget::addDeployConfiguration() void RunSettingsWidget::removeDeployConfiguration() { DeployConfiguration *dc = m_target->activeDeployConfiguration(); - QMessageBox msgBox(QMessageBox::Question, tr("Remove Deploy Configuration?"), - tr("Do you really want to delete deploy configuration <b>%1</b>?").arg(dc->displayName()), - QMessageBox::Yes|QMessageBox::No, this); - msgBox.setDefaultButton(QMessageBox::No); - msgBox.setEscapeButton(QMessageBox::No); - if (msgBox.exec() == QMessageBox::No) - return; + ProjectExplorer::BuildManager *bm = ProjectExplorerPlugin::instance()->buildManager(); + if (bm->isBuilding(dc)) { + QMessageBox box; + QPushButton *closeAnyway = box.addButton(tr("Cancel Build && Remove Deploy Configuration"), QMessageBox::AcceptRole); + QPushButton *cancelClose = box.addButton(tr("Do Not Remove"), QMessageBox::RejectRole); + box.setDefaultButton(cancelClose); + box.setWindowTitle(tr("Remove Deploy Configuration %1?").arg(dc->displayName())); + box.setText(tr("The deploy configuration <b>%1</b> is currently being built.").arg(dc->displayName())); + box.setInformativeText(tr("Do you want to cancel the build process and remove the Deploy Configuration anyway?")); + box.exec(); + if (box.clickedButton() != closeAnyway) + return; + bm->cancel(); + } else { + QMessageBox msgBox(QMessageBox::Question, tr("Remove Deploy Configuration?"), + tr("Do you really want to delete deploy configuration <b>%1</b>?").arg(dc->displayName()), + QMessageBox::Yes|QMessageBox::No, this); + msgBox.setDefaultButton(QMessageBox::No); + msgBox.setEscapeButton(QMessageBox::No); + if (msgBox.exec() == QMessageBox::No) + return; + } m_target->removeDeployConfiguration(dc); + m_removeDeployToolButton->setEnabled(m_target->deployConfigurations().size() > 1); } |