From a2a05193572fa062d961d4ed3fa3fddd1723be64 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Sun, 1 Mar 2009 00:27:26 +0000 Subject: [PATCH] When using "Compile modified projects only", require recompilation if the project options were changed. git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@3829 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs | 1 + .../ProjectService/CompileModifiedProjectsOnly.cs | 2 +- .../Core/Project/Src/Services/FileUtility/FileUtility.cs | 9 +++++---- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs b/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs index a36273f229..4f6c7e8dc5 100644 --- a/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs +++ b/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs @@ -1082,6 +1082,7 @@ namespace ICSharpCode.SharpDevelop.Project userProject.Save(userFile); } } + FileUtility.RaiseFileSaved(new FileNameEventArgs(fileName)); } #endregion diff --git a/src/Main/Base/Project/Src/Services/ProjectService/CompileModifiedProjectsOnly.cs b/src/Main/Base/Project/Src/Services/ProjectService/CompileModifiedProjectsOnly.cs index 0ec673f40e..73533b5678 100644 --- a/src/Main/Base/Project/Src/Services/ProjectService/CompileModifiedProjectsOnly.cs +++ b/src/Main/Base/Project/Src/Services/ProjectService/CompileModifiedProjectsOnly.cs @@ -89,7 +89,7 @@ namespace ICSharpCode.SharpDevelop.Project { if (ProjectService.OpenSolution != null) { foreach (IProject p in ProjectService.OpenSolution.Projects) { - if (p.FindFile(e.FileName) != null) { + if (p.FindFile(e.FileName) != null || FileUtility.IsEqualFileName(p.FileName, e.FileName)) { lock (unmodifiedProjects) { unmodifiedProjects.Remove(p); } diff --git a/src/Main/Core/Project/Src/Services/FileUtility/FileUtility.cs b/src/Main/Core/Project/Src/Services/FileUtility/FileUtility.cs index d0c5401868..80282a3514 100644 --- a/src/Main/Core/Project/Src/Services/FileUtility/FileUtility.cs +++ b/src/Main/Core/Project/Src/Services/FileUtility/FileUtility.cs @@ -502,7 +502,7 @@ namespace ICSharpCode.Core System.Diagnostics.Debug.Assert(IsValidPath(fileName)); try { saveFile(); - OnFileSaved(new FileNameEventArgs(fileName)); + RaiseFileSaved(new FileNameEventArgs(fileName)); return FileOperationResult.OK; } catch (Exception e) { switch (policy) { @@ -544,7 +544,7 @@ namespace ICSharpCode.Core Directory.CreateDirectory(directory); } saveFileAs(fileName); - OnFileSaved(new FileNameEventArgs(fileName)); + RaiseFileSaved(new FileNameEventArgs(fileName)); return FileOperationResult.OK; } catch (Exception e) { switch (policy) { @@ -634,14 +634,15 @@ namespace ICSharpCode.Core return ObservedLoad(saveFileAs, fileName, FileErrorPolicy.Inform); } - static void OnFileLoaded(FileNameEventArgs e) + static void OnFileLoaded(FileNameEventArgs e) { if (FileLoaded != null) { FileLoaded(null, e); } } - static void OnFileSaved(FileNameEventArgs e) { + public static void RaiseFileSaved(FileNameEventArgs e) + { if (FileSaved != null) { FileSaved(null, e); }