From 285687c543a187547d092ad395cc72d3cd1b9396 Mon Sep 17 00:00:00 2001 From: paul Date: Sun, 23 Nov 2008 13:06:01 +0000 Subject: [PATCH] synedit: dont highlight a line when highlight has not colors set git-svn-id: trunk@17545 - --- components/synedit/syneditmarkupspecialline.pp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/components/synedit/syneditmarkupspecialline.pp b/components/synedit/syneditmarkupspecialline.pp index 2fb0f2d9dd..4679d637c3 100644 --- a/components/synedit/syneditmarkupspecialline.pp +++ b/components/synedit/syneditmarkupspecialline.pp @@ -46,6 +46,7 @@ type FHighlightedLine: Integer; protected procedure DoMarkupLineHighlightInfoChange(Sender: TObject); + function HasLineHighlight: Boolean; public constructor Create(ASynEdit: TCustomControl); destructor Destroy; override; @@ -77,6 +78,13 @@ begin InvalidateSynLines(FHighlightedLine, FHighlightedLine); end; +function TSynEditMarkupSpecialLine.HasLineHighlight: Boolean; +begin + Result := + (FMarkupLineHighlightInfo.Background <> clNone) or + (FMarkupLineHighlightInfo.Foreground <> clNone); +end; + constructor TSynEditMarkupSpecialLine.Create(ASynEdit: TCustomControl); begin inherited Create(ASynEdit); @@ -125,7 +133,7 @@ begin // if it is so then use own bg,fg colors to setup highlight if not FSpecialLine then begin - if FHighlightedLine = ARow then + if (FHighlightedLine = ARow) and HasLineHighlight then begin FSpecialLine := True; MarkupInfo.Foreground := FMarkupLineHighlightInfo.Foreground;