On Sun, 25 Oct 2009 21:56:01 +0100
Roland Schaefer <roland.schae...@fu-berlin.de> wrote:

> Hi,
> I have another question regarding serialization. I need to stream
> child components, and here:
> http://wiki.freepascal.org/Streaming_components it says that
> "TComponent extends TPersistent by the ability to have child
> components". The rest I figured from reading the RTL sources, and I'm
> wondering if I'm using a suboptimal solution, since I don't really
> use anything built into TComponent besides overriding one method
> which is empty in TComponent.

Only one method? A little bit more is needed.


> What I'm doing is I have my TComponent descendants keep a
> TComponentList of children (which are not necessarily owned by the
> parent), and then I overwrite the GetChildren(Proc ...) method and
> have it call Proc for every child in the list. I also introduce a
> private FParent field which I set manually when a component becomes
> the child of another component.
> 
> Is that reinventing the wheel (probably with a flat tire), or
> should/can you do it this way?

The lazarus sources contain a complete example of how to write a
TComponent descendant with Parent+Childs. The class TMyWidget can
be found under examples/designnonlcl/mywidgetset.pas.


Mattias
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to