diff options
author | Daniel Teske <daniel.teske@theqtcompany.com> | 2015-09-17 15:24:32 +0200 |
---|---|---|
committer | Daniel Teske <daniel.teske@theqtcompany.com> | 2015-09-24 10:26:23 +0000 |
commit | a5952658b240e1d2761b943ed7514e4589b986fe (patch) | |
tree | c12a1c8ed5ddfe3529b4da29acb4befdc75a4651 /src/plugins/projectexplorer/projectexplorersettings.h | |
parent | cd92b3cd1a8e23d2208b61f71fae71c205884657 (diff) |
Add an option "Stop before build" for windows users
On windows, users frequently get compile errors because the application
binaries/libraries are locked while the application is still running.
A good solution would require actually knowing which builds output files
that are used by the currently running applications, and would
distinguish
between locally running applications and remote applications.
This solution in this patch is far simpler, it offers a option to
stop all runcontrols or stop all runcontrols from the project, that the
user
wants to build. Those options don't take into account whether stopping
those applications is actually needed and is global.
Change-Id: I75b0b6c450898bb29c1e4f9c18c3199aeed696fe
Task-number: QTCREATORBUG-13188
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Diffstat (limited to 'src/plugins/projectexplorer/projectexplorersettings.h')
-rw-r--r-- | src/plugins/projectexplorer/projectexplorersettings.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/projectexplorer/projectexplorersettings.h b/src/plugins/projectexplorer/projectexplorersettings.h index 7caa541bc22..ee27265b32d 100644 --- a/src/plugins/projectexplorer/projectexplorersettings.h +++ b/src/plugins/projectexplorer/projectexplorersettings.h @@ -39,6 +39,8 @@ namespace Internal { class ProjectExplorerSettings { public: + enum StopBeforeBuild { StopNone = 0, StopSameProject = 1, StopAll = 2 }; + ProjectExplorerSettings() : buildBeforeDeploy(true), deployBeforeRun(true), saveBeforeBuild(false), showCompilerOutput(false), @@ -46,7 +48,7 @@ public: cleanOldAppOutput(false), mergeStdErrAndStdOut(false), wrapAppOutput(true), useJom(true), autorestoreLastSession(false), prompToStopRunControl(false), - maxAppOutputLines(100000) + maxAppOutputLines(100000), stopBeforeBuild(StopBeforeBuild::StopNone) { } bool buildBeforeDeploy; @@ -62,6 +64,7 @@ public: bool autorestoreLastSession; // This option is set in the Session Manager! bool prompToStopRunControl; int maxAppOutputLines; + StopBeforeBuild stopBeforeBuild; // Add a UUid which is used to identify the development environment. // This is used to warn the user when he is trying to open a .user file that was created @@ -84,7 +87,8 @@ inline bool operator==(const ProjectExplorerSettings &p1, const ProjectExplorerS && p1.autorestoreLastSession == p2.autorestoreLastSession && p1.prompToStopRunControl == p2.prompToStopRunControl && p1.maxAppOutputLines == p2.maxAppOutputLines - && p1.environmentId == p2.environmentId; + && p1.environmentId == p2.environmentId + && p1.stopBeforeBuild == p2.stopBeforeBuild; } } // namespace ProjectExplorer |