[fpc-pascal] Is there a smart way to save/restore NotifyEvents and objects?

Michael Van Canneyt michael at freepascal.org
Sat Feb 3 10:08:45 CET 2018



On Sat, 3 Feb 2018, Sven Barth via fpc-pascal wrote:

> Am 03.02.2018 09:11 schrieb "Michael Van Canneyt" <michael at freepascal.org>:
>
>
>
> On Sat, 3 Feb 2018, Dennis Poon wrote:
>
>
>>>
>>> If your objects inherit from TComponent and you use published properties
>>> you can use the streaming screen of the RTL.
>>>
>>> I am curious how TComponent save and restore TnotifyEvent fields. Can you
>> explain a little bit?
>>
>
> Roughly:
>
> If you put a method in the published section of an object, its name is
> written to RTTI. It can be retrieved and set using the RTTi based on the
> name: when saving, the name is written to stream, when loading, the name is
> looked up in RTTI.
>
> The classes TReader and TWriter in the classes unit perform this work.
>
>
> Of course this only works for methods that are published.

Absolutely, that is why it was the first sentence of my reply :)

> Also, what is 'streaming screen' of RTL? How to use it?
>>
>
> He meant the streaming system, I suppose. TComponent, TReader and TWriter
> together form the streaming system.
>
>
> Correct. Stupid autocorrection -.-

Don't you hate it when computers think they're smarter than you ? ;-)

Michael.


More information about the fpc-pascal mailing list