From a5af534f77a6642becc2a343686bd59cc1b32520 Mon Sep 17 00:00:00 2001 From: Tobias Hunger <tobias.hunger@nokia.com> Date: Thu, 11 Feb 2010 15:29:46 +0100 Subject: [PATCH] Fix QT version/mkspec reporting in Qt options page --- .../qt4projectmanager/qtoptionspage.cpp | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/plugins/qt4projectmanager/qtoptionspage.cpp b/src/plugins/qt4projectmanager/qtoptionspage.cpp index 9fad97c1482..2bda2880511 100644 --- a/src/plugins/qt4projectmanager/qtoptionspage.cpp +++ b/src/plugins/qt4projectmanager/qtoptionspage.cpp @@ -444,15 +444,23 @@ void QtOptionsPageWidget::showEnvironmentPage(QTreeWidgetItem *item) { if (item) { int index = indexForTreeItem(item); + m_ui->errorLabel->setText(""); if (index < 0) { makeMSVCVisible(false); makeMingwVisible(false); makeS60Visible(false); return; } - m_ui->errorLabel->setText(""); QList<ProjectExplorer::ToolChain::ToolChainType> types = m_versions.at(index)->possibleToolChainTypes(); - if (types.contains(ProjectExplorer::ToolChain::MinGW)) { + if (types.isEmpty()) { + makeMSVCVisible(false); + makeMingwVisible(false); + makeS60Visible(false); + if (!m_versions.at(index)->isValid()) + m_ui->errorLabel->setText(m_versions.at(index)->invalidReason()); + else + m_ui->errorLabel->setText(tr("%1 does not specify a valid Qt installation").arg(QDir::toNativeSeparators(m_versions.at(index)->qmakeCommand()))); + } else if (types.contains(ProjectExplorer::ToolChain::MinGW)) { makeMSVCVisible(false); makeMingwVisible(true); makeS60Visible(false); @@ -487,18 +495,12 @@ void QtOptionsPageWidget::showEnvironmentPage(QTreeWidgetItem *item) m_ui->mwcPath->setPath(m_versions.at(index)->mwcDirectory()); m_ui->s60SDKPath->setPath(m_versions.at(index)->s60SDKDirectory()); m_ui->gccePath->setPath(m_versions.at(index)->gcceDirectory()); - } else if (types.contains(ProjectExplorer::ToolChain::INVALID)) { - makeMSVCVisible(false); - makeMingwVisible(false); - makeS60Visible(false); - if (!m_versions.at(index)->isValid()) - m_ui->errorLabel->setText(m_versions.at(index)->invalidReason()); - else - m_ui->errorLabel->setText(tr("%1 does not specify a valid Qt installation").arg(QDir::toNativeSeparators(m_versions.at(index)->qmakeCommand()))); } else { //ProjectExplorer::ToolChain::GCC makeMSVCVisible(false); makeMingwVisible(false); makeS60Visible(false); + } + if (m_ui->errorLabel->text().isEmpty()) { m_ui->errorLabel->setText(tr("Found Qt version %1, using mkspec %2") .arg(m_versions.at(index)->qtVersionString(), m_versions.at(index)->mkspec())); -- GitLab