CMake: Do not run a cmake wizard all the time

Do not push the cmake running straight into the face of the user. Do it
in the background instead.

This needs some follow-up patches to become really useful.

Change-Id: I3457178b33e3f14bdeac25005a773d17abb73b65
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This commit is contained in:
Tobias Hunger
2016-01-20 12:19:16 +01:00
parent d7caae5fa6
commit 859bf2c5ce
22 changed files with 598 additions and 1629 deletions

View File

@@ -24,7 +24,6 @@
****************************************************************************/
#include "cmakeprojectmanager.h"
#include "cmakeopenprojectwizard.h"
#include "cmakeprojectconstants.h"
#include "cmakeproject.h"
#include "cmakesettingspage.h"
@@ -39,11 +38,14 @@
#include <projectexplorer/projectexplorerconstants.h>
#include <projectexplorer/projecttree.h>
#include <projectexplorer/session.h>
#include <projectexplorer/target.h>
#include <utils/qtcprocess.h>
#include <utils/synchronousprocess.h>
#include <QAction>
#include <QDateTime>
#include <QIcon>
using namespace ProjectExplorer;
using namespace CMakeProjectManager::Internal;
@@ -103,14 +105,7 @@ void CMakeManager::runCMake(Project *project)
if (!ProjectExplorerPlugin::saveModifiedFiles())
return;
CMakeBuildConfiguration *bc
= static_cast<CMakeBuildConfiguration *>(cmakeProject->activeTarget()->activeBuildConfiguration());
CMakeBuildInfo info(bc);
CMakeOpenProjectWizard copw(Core::ICore::mainWindow(), CMakeOpenProjectWizard::WantToUpdate, &info);
if (copw.exec() == QDialog::Accepted)
cmakeProject->parseCMakeLists();
cmakeProject->runCMake();
}
Project *CMakeManager::openProject(const QString &fileName, QString *errorString)