Browse Source

Move the list of line delimiters to NewLineFinder.

pull/787/head
Daniel Grunwald 14 years ago
parent
commit
d071c68a8d
  1. 2
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/NewLineFinder.cs
  2. 2
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/RectangleSelection.cs

2
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/NewLineFinder.cs

@ -12,6 +12,8 @@ namespace ICSharpCode.AvalonEdit.Document
{ {
static readonly char[] newline = { '\r', '\n' }; static readonly char[] newline = { '\r', '\n' };
internal static readonly string[] NewlineStrings = { "\r\n", "\r", "\n" };
/// <summary> /// <summary>
/// Gets the location of the next new line character, or SimpleSegment.Invalid /// Gets the location of the next new line character, or SimpleSegment.Invalid
/// if none is found. /// if none is found.

2
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/RectangleSelection.cs

@ -210,7 +210,7 @@ namespace ICSharpCode.AvalonEdit.Editing
textArea.Selection = new RectangleSelection(textArea, pos, Math.Max(startLine, endLine), GetXPos(textArea, pos)); textArea.Selection = new RectangleSelection(textArea, pos, Math.Max(startLine, endLine), GetXPos(textArea, pos));
} else { } else {
string[] lines = newText.Split(new[] { "\r\n", "\r", "\n" }, segments.Count, StringSplitOptions.None); string[] lines = newText.Split(NewLineFinder.NewlineStrings, segments.Count, StringSplitOptions.None);
int line = Math.Min(startLine, endLine); int line = Math.Min(startLine, endLine);
for (int i = lines.Length - 1; i >= 0; i--) { for (int i = lines.Length - 1; i >= 0; i--) {
ReplaceSingleLineText(textArea, segments[i], lines[i], out insertionLength); ReplaceSingleLineText(textArea, segments[i], lines[i], out insertionLength);

Loading…
Cancel
Save