Browse Source

Fix SD-1777 - 'Replace all' (in project) does not perform any replacements in files that are not open

pull/14/head
Matt Ward 15 years ago
parent
commit
8c0fbdc203
  1. 2
      src/AddIns/Misc/SearchAndReplace/Project/Engine/SearchReplaceManager.cs
  2. 6
      src/Main/Base/Project/Src/Editor/Search/ProvidedDocumentInformation.cs

2
src/AddIns/Misc/SearchAndReplace/Project/Engine/SearchReplaceManager.cs

@ -215,7 +215,7 @@ namespace SearchAndReplace @@ -215,7 +215,7 @@ namespace SearchAndReplace
if (textArea != null) {
string transformedPattern = result.TransformReplacePattern(SearchOptions.ReplacePattern);
find.Replace(result.Offset, result.Length, transformedPattern);
if (!find.CurrentDocumentInformation.IsDocumentCreated) {
if (find.CurrentDocumentInformation.IsDocumentCreatedFromTextBuffer) {
textArea.Document.Replace(result.Offset, result.Length, transformedPattern);
}
} else {

6
src/Main/Base/Project/Src/Editor/Search/ProvidedDocumentInformation.cs

@ -15,6 +15,7 @@ namespace ICSharpCode.SharpDevelop.Editor.Search @@ -15,6 +15,7 @@ namespace ICSharpCode.SharpDevelop.Editor.Search
ITextBuffer textBuffer;
FileName fileName;
int currentOffset;
bool documentCreatedFromTextBuffer;
public FileName FileName {
get {
@ -35,8 +36,8 @@ namespace ICSharpCode.SharpDevelop.Editor.Search @@ -35,8 +36,8 @@ namespace ICSharpCode.SharpDevelop.Editor.Search
}
}
public bool IsDocumentCreated {
get { return document != null; }
public bool IsDocumentCreatedFromTextBuffer {
get { return documentCreatedFromTextBuffer; }
}
public int CurrentOffset {
@ -109,6 +110,7 @@ namespace ICSharpCode.SharpDevelop.Editor.Search @@ -109,6 +110,7 @@ namespace ICSharpCode.SharpDevelop.Editor.Search
this.textBuffer = textBuffer;
this.fileName = FileName.Create(fileName);
this.endOffset = this.currentOffset = currentOffset;
documentCreatedFromTextBuffer = true;
}
}
}

Loading…
Cancel
Save