mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-12-02 18:37:38 +01:00
MG: linkscanner is now able to user abort scanning
git-svn-id: trunk@3605 -
This commit is contained in:
parent
35142e24f6
commit
27b75d80fc
@ -59,6 +59,7 @@ type
|
||||
TOnCodeToolCheckAbort = function: boolean of object;
|
||||
|
||||
TCodeToolManager = class
|
||||
function OnScannerProgress(Sender: TLinkScanner): boolean;
|
||||
private
|
||||
FAbortable: boolean;
|
||||
FAddInheritedCodeToOverrideMethod: boolean;
|
||||
@ -522,6 +523,7 @@ begin
|
||||
Code.Scanner.OnGetInitValues:=@OnScannerGetInitValues;
|
||||
Code.Scanner.OnSetGlobalWriteLock:=@OnToolSetWriteLock;
|
||||
Code.Scanner.OnGetGlobalWriteLockInfo:=@OnToolGetWriteLockInfo;
|
||||
Code.Scanner.OnProgress:=@OnScannerProgress;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -1553,6 +1555,14 @@ begin
|
||||
Result:=not OnCheckAbort();
|
||||
end;
|
||||
|
||||
function TCodeToolManager.OnScannerProgress(Sender: TLinkScanner): boolean;
|
||||
begin
|
||||
Result:=false;
|
||||
if not FAbortable then exit;
|
||||
if not Assigned(OnCheckAbort) then exit;
|
||||
Result:=not OnCheckAbort();
|
||||
end;
|
||||
|
||||
function TCodeToolManager.OnScannerGetInitValues(Code: Pointer;
|
||||
var AChangeStep: integer): TExpressionEvaluator;
|
||||
begin
|
||||
|
||||
@ -128,7 +128,7 @@ type
|
||||
|
||||
ELinkScannerErrors = class of ELinkScannerError;
|
||||
|
||||
TLinkScannerProgress = function(Sender: TLinkScanner): boolean;
|
||||
TLinkScannerProgress = function(Sender: TLinkScanner): boolean of object;
|
||||
|
||||
ELinkScannerAbort = class(ELinkScannerError)
|
||||
end;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user