mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-14 09:19:22 +02:00
SynEdit TSynMultiSyn: Fix CaseSensitivity for Sheme marker. Issue #0022693
git-svn-id: trunk@38339 -
This commit is contained in:
parent
8c6f49f4de
commit
ba00570c74
@ -54,7 +54,7 @@ uses
|
|||||||
Classes, Graphics, SysUtils, LCLProc, math,
|
Classes, Graphics, SysUtils, LCLProc, math,
|
||||||
SynRegExpr, SynEditStrConst, SynEditTypes, SynEditTextBase,
|
SynRegExpr, SynEditStrConst, SynEditTypes, SynEditTextBase,
|
||||||
SynEditHighlighter,
|
SynEditHighlighter,
|
||||||
{$IFDEF SynDebugMultiHL}LazLoggerBase{$ELSE}LazLoggerDummy{$ENDIF}
|
{$IFDEF SynDebugMultiHL}LazLoggerBase{$ELSE}LazLoggerDummy{$ENDIF}, LazUTF8
|
||||||
;
|
;
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -1739,7 +1739,7 @@ end;
|
|||||||
function TSynHighlighterMultiSchemeList.GetConvertedCurrentLine: String;
|
function TSynHighlighterMultiSchemeList.GetConvertedCurrentLine: String;
|
||||||
begin
|
begin
|
||||||
if FConvertedCurrentLine = '' then
|
if FConvertedCurrentLine = '' then
|
||||||
FConvertedCurrentLine := AnsiUpperCase(FCurrentLine);
|
FConvertedCurrentLine := UTF8UpperCase(FCurrentLine);
|
||||||
Result := FConvertedCurrentLine;
|
Result := FConvertedCurrentLine;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1749,6 +1749,7 @@ var
|
|||||||
begin
|
begin
|
||||||
if FCurrentLine = AValue then exit;
|
if FCurrentLine = AValue then exit;
|
||||||
FCurrentLine := AValue;
|
FCurrentLine := AValue;
|
||||||
|
FConvertedCurrentLine := '';
|
||||||
for i := 0 to Count - 1 do
|
for i := 0 to Count - 1 do
|
||||||
Items[i].ClearLinesSet;
|
Items[i].ClearLinesSet;
|
||||||
end;
|
end;
|
||||||
@ -1782,30 +1783,30 @@ end;
|
|||||||
function TSynHighlighterMultiScheme.GetConvertedLine: String;
|
function TSynHighlighterMultiScheme.GetConvertedLine: String;
|
||||||
begin
|
begin
|
||||||
if FCaseSensitive then
|
if FCaseSensitive then
|
||||||
Result := TSynHighlighterMultiSchemeList(Collection).ConvertedCurrentLine
|
Result := TSynHighlighterMultiSchemeList(Collection).CurrentLine
|
||||||
else
|
else
|
||||||
Result := TSynHighlighterMultiSchemeList(Collection).CurrentLine;
|
Result := TSynHighlighterMultiSchemeList(Collection).ConvertedCurrentLine;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TSynHighlighterMultiScheme.GetConvertedEndExpr: String;
|
function TSynHighlighterMultiScheme.GetConvertedEndExpr: String;
|
||||||
begin
|
begin
|
||||||
if not FCaseSensitive then
|
if FCaseSensitive then
|
||||||
Result := FEndExpr
|
Result := FEndExpr
|
||||||
else begin
|
else begin
|
||||||
if FConvertedEndExpr = '' then
|
if FConvertedEndExpr = '' then
|
||||||
FConvertedEndExpr := AnsiUpperCase(FEndExpr);
|
FConvertedEndExpr := Utf8UpperCase(FEndExpr);
|
||||||
Result := FConvertedEndExpr
|
Result := FConvertedEndExpr;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TSynHighlighterMultiScheme.GetConvertedStartExpr: String;
|
function TSynHighlighterMultiScheme.GetConvertedStartExpr: String;
|
||||||
begin
|
begin
|
||||||
if not FCaseSensitive then
|
if FCaseSensitive then
|
||||||
Result := FStartExpr
|
Result := FStartExpr
|
||||||
else begin
|
else begin
|
||||||
if FConvertedStartExpr = '' then
|
if FConvertedStartExpr = '' then
|
||||||
FConvertedStartExpr := AnsiUpperCase(FStartExpr);
|
FConvertedStartExpr := Utf8UpperCase(FStartExpr);
|
||||||
Result := FConvertedStartExpr
|
Result := FConvertedStartExpr;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1925,6 +1926,7 @@ begin
|
|||||||
fCaseSensitive := Value;
|
fCaseSensitive := Value;
|
||||||
FStartExprScanner.Expression := GetConvertedStartExpr;
|
FStartExprScanner.Expression := GetConvertedStartExpr;
|
||||||
FEndExprScanner.Expression := GetConvertedEndExpr;
|
FEndExprScanner.Expression := GetConvertedEndExpr;
|
||||||
|
ClearLinesSet;
|
||||||
FNeedHLScan := True;
|
FNeedHLScan := True;
|
||||||
Changed( False );
|
Changed( False );
|
||||||
FNeedHLScan := False;
|
FNeedHLScan := False;
|
||||||
|
Loading…
Reference in New Issue
Block a user