DFM/LFM in Lazarus WAS: RE: [lazarus] How I can participeinLazarus?.....

Michael Van Canneyt michael.vancanneyt at wisa.be
Tue Jun 20 11:11:01 EDT 2000

On Tue, 20 Jun 2000, Marc Weustink wrote:

> + [mailto:sg at harding.miraclec.com]On Behalf
> + Of Sebastian Günther
> + Shane Miller wrote:
> + >
> + > Could someone explain to me how it works please.
> +
> + Reading DFM files simply doesn't work yet. (that writing
> + should work is new for me...)
> + And adding reading support is not a matter of a few hours of
> + work, this is a really heavy task if it should be implemented
> + properly. I already had a look on this over 8 months ago, and it
> + will still need a few weeks until I can try to add full
> + serialisation support to FCL.
> + BTW, don't underestimate the work you will have to make LCL
> + streaming-aware ;)
> Thats another point.
> The main idea behind my question is/was that a major part of creating a LFM
> consists of the streaming of Components.
> If we can stream components we have a core LFM.
> I'm aware of the fact that all LCL controls have to stream their own data,

No, no !
Components only very seldom stream part of their own data.
(with the DefineProperties call)

All 'published' properties are streamed automatically by the streaming system.
There is no need for a component to stream this data once more.

> but this is "simply" implementing some overridden baseclass methods.
> I'm also aware that implementing streaming in TCOmponent isn't easy. If I
> look at Borlands implementation, it also is a part of the compiler.

That is, the compiler generates the RTTI, which you need for streaming.
Other than that, no compiler support is needed. The RTTI is already generated
by the compiler, only the streaming itself must be implemented.


More information about the Lazarus mailing list