From ceb9319e4bbbc849ebed8f6103bc8710ff7e4b79 Mon Sep 17 00:00:00 2001 From: Tobias Hunger <tobias.hunger@digia.com> Date: Mon, 1 Oct 2012 11:46:36 +0200 Subject: [PATCH] Offer to import builds not done by this Qt Creator instance Change-Id: I7dd8d3b8ae919808fd7089079dcd5583ebc89913 Reviewed-by: Daniel Teske <daniel.teske@digia.com> --- .../qt4projectmanager/wizards/targetsetuppage.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/plugins/qt4projectmanager/wizards/targetsetuppage.cpp b/src/plugins/qt4projectmanager/wizards/targetsetuppage.cpp index fa822d067fb..350030eccb5 100644 --- a/src/plugins/qt4projectmanager/wizards/targetsetuppage.cpp +++ b/src/plugins/qt4projectmanager/wizards/targetsetuppage.cpp @@ -511,20 +511,25 @@ void TargetSetupPage::setupImports() if (!m_importSearch || m_proFilePath.isEmpty()) return; - QString sourceDir = QFileInfo(m_proFilePath).absolutePath(); - import(Utils::FileName::fromString(sourceDir), true); + QFileInfo pfi(m_proFilePath); + const QString prefix = pfi.baseName(); + QStringList toImport; + toImport << pfi.absolutePath(); QList<ProjectExplorer::Kit *> kitList = ProjectExplorer::KitManager::instance()->kits(); foreach (ProjectExplorer::Kit *k, kitList) { QFileInfo fi(Qt4Project::shadowBuildDirectory(m_proFilePath, k, QString())); const QString baseDir = fi.absolutePath(); - const QString prefix = fi.baseName(); foreach (const QString &dir, QDir(baseDir).entryList()) { - if (dir.startsWith(prefix)) - import(Utils::FileName::fromString(baseDir + QLatin1Char('/') + dir), true); + const QString path = baseDir + QLatin1Char('/') + dir; + if (dir.startsWith(prefix) && !toImport.contains(path)) + toImport << path; + } } + foreach (const QString &path, toImport) + import(Utils::FileName::fromString(path), true); } void TargetSetupPage::handleKitAddition(ProjectExplorer::Kit *k) -- GitLab