aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/projectexplorersettings.h
diff options
context:
space:
mode:
authorDaniel Teske <daniel.teske@theqtcompany.com>2015-09-17 15:24:32 +0200
committerDaniel Teske <daniel.teske@theqtcompany.com>2015-09-24 10:26:23 +0000
commita5952658b240e1d2761b943ed7514e4589b986fe (patch)
treec12a1c8ed5ddfe3529b4da29acb4befdc75a4651 /src/plugins/projectexplorer/projectexplorersettings.h
parentcd92b3cd1a8e23d2208b61f71fae71c205884657 (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.h8
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