display possible D-Scanner warning after BP deleted

This commit is contained in:
Basile Burg 2018-01-11 05:30:13 +01:00
parent f6cb5eef74
commit c492d9fa3e
1 changed files with 15 additions and 2 deletions

View File

@ -249,6 +249,7 @@ type
procedure dscannerTerminate(sender: TObject); procedure dscannerTerminate(sender: TObject);
procedure removeDscannerWarnings; procedure removeDscannerWarnings;
function getDscannerWarning(line: integer): string; function getDscannerWarning(line: integer): string;
function lineHasDscannerWarning(line: integer): boolean;
procedure InitHintWins; procedure InitHintWins;
function getIfTemp: boolean; function getIfTemp: boolean;
procedure setDDocDelay(value: Integer); procedure setDDocDelay(value: Integer);
@ -2576,6 +2577,16 @@ begin
if fDscannerResults[i]^.line = line then if fDscannerResults[i]^.line = line then
result += format(spec, [fDscannerResults[i]^.column, fDscannerResults[i]^.warning]); result += format(spec, [fDscannerResults[i]^.column, fDscannerResults[i]^.warning]);
end; end;
function TCESynMemo.lineHasDscannerWarning(line: integer): boolean;
var
i: integer;
begin
result := false;
for i := 0 to fDscannerResults.count-1 do
if fDscannerResults[i]^.line = line then
exit(true);
end;
{$ENDREGION --------------------------------------------------------------------} {$ENDREGION --------------------------------------------------------------------}
{$REGION Coedit memo things ----------------------------------------------------} {$REGION Coedit memo things ----------------------------------------------------}
@ -3261,6 +3272,8 @@ begin
exit; exit;
break2step := isGutterIconSet(line, giBreakReached); break2step := isGutterIconSet(line, giBreakReached);
removeGutterIcon(line, giBreakSet); removeGutterIcon(line, giBreakSet);
if fDscannerEnabled and lineHasDscannerWarning(line) then
addGutterIcon(line, giWarn);
if assigned(fDebugger) then if assigned(fDebugger) then
begin begin
fDebugger.removeBreakPoint(fFilename, line); fDebugger.removeBreakPoint(fFilename, line);
@ -3273,8 +3286,8 @@ procedure TCESynMemo.showHintEvent(Sender: TObject; HintInfo: PHintInfo);
var var
p: TPoint; p: TPoint;
begin begin
if cursor <> crDefault then //if cursor <> crDefault then
exit; // exit;
p := ScreenToClient(mouse.CursorPos); p := ScreenToClient(mouse.CursorPos);
if p.x > Gutter.MarksPart.Width then if p.x > Gutter.MarksPart.Width then
exit; exit;