Browse Source

HighlightColor support for overriding colors

pull/13/head
NikolayHD 6 years ago
parent
commit
07d8b79e0c
  1. 13
      Project/Src/Document/HighlightingStrategy/HighlightColor.cs
  2. 2
      Project/Src/Document/HighlightingStrategy/TextWord.cs
  3. 2
      Project/Src/Document/LineManager/LineSegment.cs
  4. 6
      Project/Src/Gui/DrawableLine.cs
  5. 2
      Project/Src/Util/RtfWriter.cs
  6. 4
      Project/Src/Util/TipText.cs

13
Project/Src/Document/HighlightingStrategy/HighlightColor.cs

@ -108,6 +108,19 @@ namespace ICSharpCode.TextEditor.Document
}
}
/// <summary>
/// Creates a new instance of <see cref="HighlightColor" />
/// </summary>
public HighlightColor(HighlightColor original, Color color, Color backColor)
{
Bold = original.Bold;
Italic = original.Italic;
HasForeground = original.HasForeground;
HasBackground = original.HasBackground;
Color = color;
BackgroundColor = backColor;
}
/// <summary>
/// Creates a new instance of <see cref="HighlightColor" />
/// </summary>

2
Project/Src/Document/HighlightingStrategy/TextWord.cs

@ -74,7 +74,7 @@ namespace ICSharpCode.TextEditor.Document
get
{
if (color == null)
return Color.Black;
return SystemColors.WindowText;
return color.Color;
}
}

2
Project/Src/Document/LineManager/LineSegment.cs

@ -72,7 +72,7 @@ namespace ICSharpCode.TextEditor.Document
}
}
return new HighlightColor(Color.Black, bold: false, italic: false);
return new HighlightColor(SystemColors.WindowText, bold: false, italic: false);
}
/// <summary>

6
Project/Src/Gui/DrawableLine.cs

@ -37,7 +37,7 @@ namespace ICSharpCode.TextEditor
else
words.Add(new SimpleTextWord(TextWordType.Word, word.Word, word.Bold, word.Color));
else
words.Add(new SimpleTextWord(TextWordType.Word, document.GetText(line), Bold: false, Color.Black));
words.Add(new SimpleTextWord(TextWordType.Word, document.GetText(line), Bold: false, SystemColors.WindowText));
}
public int LineLength
@ -174,8 +174,8 @@ namespace ICSharpCode.TextEditor
private class SimpleTextWord
{
internal static readonly SimpleTextWord Space = new SimpleTextWord(TextWordType.Space, " ", Bold: false, Color.Black);
internal static readonly SimpleTextWord Tab = new SimpleTextWord(TextWordType.Tab, "\t", Bold: false, Color.Black);
internal static readonly SimpleTextWord Space = new SimpleTextWord(TextWordType.Space, " ", Bold: false, SystemColors.WindowText);
internal static readonly SimpleTextWord Tab = new SimpleTextWord(TextWordType.Tab, "\t", Bold: false, SystemColors.WindowText);
internal readonly Color Color;
internal readonly TextWordType Type;
internal bool Bold;

2
Project/Src/Util/RtfWriter.cs

@ -57,7 +57,7 @@ namespace ICSharpCode.TextEditor.Util
{
var rtf = new StringBuilder();
var firstLine = true;
var curColor = Color.Black;
var curColor = SystemColors.WindowText;
var oldItalic = false;
var oldBold = false;
var escapeSequence = false;

4
Project/Src/Util/TipText.cs

@ -24,11 +24,11 @@ namespace ICSharpCode.TextEditor.Util
private void DrawTriangle(float x, float y, bool flipped)
{
var brush = BrushRegistry.GetBrush(Color.FromArgb(red: 192, green: 192, blue: 192));
var brush = SystemBrushes.Info;
Graphics.FillRectangle(brush, new RectangleF(x, y, triHeight, triHeight));
var triHeight2 = triHeight/2;
var triHeight4 = triHeight/4;
brush = Brushes.Black;
brush = SystemBrushes.InfoText;
if (flipped)
Graphics.FillPolygon(
brush, new[]

Loading…
Cancel
Save