From: Kai Koehne Date: Thu, 7 Apr 2011 10:46:10 +0000 (+0200) Subject: QMakeStep: Show error output if qmlsdebuggerlib build fails X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=1b7fc163fe442d850779c082fd77aa5b1a948d14;p=qt-creator-jp%2Fqt-creator-jp.git QMakeStep: Show error output if qmlsdebuggerlib build fails Reviewed-by: dt --- diff --git a/src/plugins/qt4projectmanager/qmakestep.cpp b/src/plugins/qt4projectmanager/qmakestep.cpp index 520213d4ad..e9c5c3d132 100644 --- a/src/plugins/qt4projectmanager/qmakestep.cpp +++ b/src/plugins/qt4projectmanager/qmakestep.cpp @@ -42,6 +42,7 @@ #include "qt4target.h" #include "qtversionmanager.h" #include "debugginghelperbuildtask.h" +#include "ui_showbuildlog.h" #include #include @@ -556,12 +557,27 @@ void QMakeStepConfigWidget::buildQmlDebuggingHelper() void QMakeStepConfigWidget::debuggingHelperBuildFinished(int qtVersionId, const QString &output) { - m_step->qt4BuildConfiguration()->qtVersion()->invalidateCache(); - m_ui.qmlDebuggingLibraryCheckBox->setChecked(m_step->linkQmlDebuggingLibrary()); - m_ui.qmlDebuggingLibraryCheckBox->setEnabled(m_step->isQmlDebuggingLibrarySupported()); - updateSummaryLabel(); - updateEffectiveQMakeCall(); - updateQmlDebuggingWarningsLabel(); + QtVersion *version = QtVersionManager::instance()->version(qtVersionId); + if (!version) // qt version got deleted in between + return; + version->invalidateCache(); + + if (version == m_step->qt4BuildConfiguration()->qtVersion()) { + m_ui.qmlDebuggingLibraryCheckBox->setChecked(m_step->linkQmlDebuggingLibrary()); + m_ui.qmlDebuggingLibraryCheckBox->setEnabled(m_step->isQmlDebuggingLibrarySupported()); + updateSummaryLabel(); + updateEffectiveQMakeCall(); + updateQmlDebuggingWarningsLabel(); + } + + if (!version->hasQmlDebuggingLibrary()) { + Ui::ShowBuildLog ui; + QDialog dialog; + ui.setupUi(&dialog); + + ui.log->setPlainText(output); + dialog.exec(); + } } void QMakeStepConfigWidget::updateSummaryLabel()