Browse Source

SD-1592: DottedLineMargin got same color as line numbers

pull/14/head
Siegfried Pammer 15 years ago
parent
commit
d9f3afd5b2
  1. 13
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/DottedLineMargin.cs
  2. 10
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/TextEditor.cs

13
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/DottedLineMargin.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Windows;
using System.Windows.Data;
using System.Windows.Media;
using System.Windows.Shapes;
@ -19,18 +20,24 @@ namespace ICSharpCode.AvalonEdit.Editing @@ -19,18 +20,24 @@ namespace ICSharpCode.AvalonEdit.Editing
/// <summary>
/// Creates a vertical dotted line to separate the line numbers from the text view.
/// </summary>
public static UIElement Create()
public static UIElement Create(TextEditor editor)
{
return new Line {
Line line = new Line {
X1 = 0, Y1 = 0, X2 = 0, Y2 = 1,
StrokeDashArray = { 0, 2 },
Stretch = Stretch.Fill,
Stroke = Brushes.Gray,
StrokeThickness = 1,
StrokeDashCap = PenLineCap.Round,
Margin = new Thickness(2, 0, 2, 0),
Tag = tag
};
line.SetBinding(
Line.StrokeProperty,
new Binding("LineNumbersForeground") { Source = editor }
);
return line;
}
/// <summary>

10
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/TextEditor.cs

@ -470,9 +470,13 @@ namespace ICSharpCode.AvalonEdit @@ -470,9 +470,13 @@ namespace ICSharpCode.AvalonEdit
TextEditor editor = (TextEditor)d;
var leftMargins = editor.TextArea.LeftMargins;
if ((bool)e.NewValue) {
leftMargins.Insert(0, new LineNumberMargin());
leftMargins.Insert(1, DottedLineMargin.Create());
leftMargins[0].SetValue(Control.ForegroundProperty, editor.LineNumbersForeground);
var lineNumbers = new LineNumberMargin();
leftMargins.Insert(0, lineNumbers);
leftMargins.Insert(1, DottedLineMargin.Create(editor));
lineNumbers.SetBinding(Control.ForegroundProperty,
new Binding("LineNumbersForeground") {
Source = editor
});
} else {
for (int i = 0; i < leftMargins.Count; i++) {
if (leftMargins[i] is LineNumberMargin) {

Loading…
Cancel
Save