mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-02 14:20:35 +02:00
IDEIntf: added TAbstractIDEOptions handler destroy
git-svn-id: trunk@44332 -
This commit is contained in:
parent
bc1ecef605
commit
45e9bd0b9c
@ -49,7 +49,8 @@ type
|
|||||||
iohBeforeRead,
|
iohBeforeRead,
|
||||||
iohAfterRead,
|
iohAfterRead,
|
||||||
iohBeforeWrite,
|
iohBeforeWrite,
|
||||||
iohAfterWrite
|
iohAfterWrite,
|
||||||
|
iohDestroy
|
||||||
);
|
);
|
||||||
TIDEOptionsHandlers = set of TIDEOptionsHandler;
|
TIDEOptionsHandlers = set of TIDEOptionsHandler;
|
||||||
|
|
||||||
@ -72,6 +73,7 @@ type
|
|||||||
public
|
public
|
||||||
constructor Create;
|
constructor Create;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
|
procedure BeforeDestruction; override;
|
||||||
|
|
||||||
class function GetGroupCaption: string; virtual; abstract;
|
class function GetGroupCaption: string; virtual; abstract;
|
||||||
class function GetInstance: TAbstractIDEOptions; virtual; abstract;
|
class function GetInstance: TAbstractIDEOptions; virtual; abstract;
|
||||||
@ -89,6 +91,8 @@ type
|
|||||||
procedure RemoveHandlerBeforeWrite(const Handler: TIDEOptionsWriteEvent);
|
procedure RemoveHandlerBeforeWrite(const Handler: TIDEOptionsWriteEvent);
|
||||||
procedure AddHandlerAfterWrite(const Handler: TIDEOptionsWriteEvent; const AsFirst: boolean = true); // AsFirst means: first to call
|
procedure AddHandlerAfterWrite(const Handler: TIDEOptionsWriteEvent; const AsFirst: boolean = true); // AsFirst means: first to call
|
||||||
procedure RemoveHandlerAfterWrite(const Handler: TIDEOptionsWriteEvent);
|
procedure RemoveHandlerAfterWrite(const Handler: TIDEOptionsWriteEvent);
|
||||||
|
procedure AddHandlerDestroy(const Handler: TNotifyEvent; const AsFirst: boolean = true); // AsFirst means: first to call
|
||||||
|
procedure RemoveHandlerDestroy(const Handler: TNotifyEvent);
|
||||||
|
|
||||||
property OnBeforeRead: TNotifyEvent read FOnBeforeRead write FOnBeforeRead;
|
property OnBeforeRead: TNotifyEvent read FOnBeforeRead write FOnBeforeRead;
|
||||||
property OnAfterRead: TNotifyEvent read FOnAfterRead write FOnAfterRead;
|
property OnAfterRead: TNotifyEvent read FOnAfterRead write FOnAfterRead;
|
||||||
@ -765,6 +769,12 @@ begin
|
|||||||
inherited Destroy;
|
inherited Destroy;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TAbstractIDEOptions.BeforeDestruction;
|
||||||
|
begin
|
||||||
|
inherited BeforeDestruction;
|
||||||
|
fHandlers[iohDestroy].CallNotifyEvents(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TAbstractIDEOptions.DoBeforeRead;
|
procedure TAbstractIDEOptions.DoBeforeRead;
|
||||||
begin
|
begin
|
||||||
if Assigned(FOnBeforeRead) then
|
if Assigned(FOnBeforeRead) then
|
||||||
@ -847,6 +857,17 @@ begin
|
|||||||
fHandlers[iohAfterWrite].Remove(TMethod(Handler));
|
fHandlers[iohAfterWrite].Remove(TMethod(Handler));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TAbstractIDEOptions.AddHandlerDestroy(const Handler: TNotifyEvent;
|
||||||
|
const AsFirst: boolean);
|
||||||
|
begin
|
||||||
|
fHandlers[iohDestroy].Add(TMethod(Handler),AsFirst);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TAbstractIDEOptions.RemoveHandlerDestroy(const Handler: TNotifyEvent);
|
||||||
|
begin
|
||||||
|
fHandlers[iohDestroy].Remove(TMethod(Handler));
|
||||||
|
end;
|
||||||
|
|
||||||
initialization
|
initialization
|
||||||
FIDEEditorGroups := nil;
|
FIDEEditorGroups := nil;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user