Recent

Author Topic: internal events  (Read 2125 times)

tatamata

  • Hero Member
  • *****
  • Posts: 804
    • ZMSQL - SQL enhanced in-memory database
internal events
« on: July 28, 2011, 08:27:29 pm »
There is certain logic that I  put into BeforePost event of a dataset component.
Now I make a derivative component and want to integrate this behaviour in component itself, so that such event handler always fires on BeforePost, but also want to have empty published BeforePost event for user's custom event handlers in the same time....
I'm confused...How to have basically same events - one inside code of derivated component itself and one left for users of component?

Zoran

  • Hero Member
  • *****
  • Posts: 1988
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: internal events
« Reply #1 on: July 28, 2011, 08:40:49 pm »
You should override Dataset's DoBeforePost procedure:
Code: [Select]
TMyDataSet = class(TDataSet)
protected
  procedure DoBeforePost; override;
end;

  ....

procedure TMyDataSet.DoBeforePost;
begin
  inherited DoBeforePost; // Inherited procedure calls BeforePost handler.

  // ... your code here
end;
Swan, ZX Spectrum emulator https://github.com/zoran-vucenovic/swan

 

TinyPortal © 2005-2018