[Lazarus] pascal component stream

Mattias Gaertner nc-gaertnma at netcologne.de
Mon Jan 17 10:37:40 CET 2011


On Mon, 17 Jan 2011 09:28:31 +0100 (CET)
michael.vancanneyt at wisa.be wrote:

> 
> 
> On Mon, 17 Jan 2011, Graeme Geldenhuys wrote:
> 
> > Op 2011-01-17 00:45, Mattias Gaertner het geskryf:
> >> 4. what to do with DefineProperties?
> >
> > What is that? What is it used for? I could find any help on that.
> >
> >
> >> Point 4 is the real problem. How to store TStrings.Data or TBitmap.Data?
> >
> > I had a look at the TStrings class definition in FPC 2.4.3. TStrings
> > doesn't have a Data property or a Data field, so what do you mean by
> > TStrings.Data?
> 
> This is streamed through 'DefineProperties', a protected call to write
> custom data to the stream.
> 
> There is no way to solve this for Pascal streams, as the 'Data' does not
> necessarily exist as a settable property, and any kind of data can be
> written.
> 
> In particular, the ability to position the cursor anywhere in the stream during
> DefineProperties also will IMHO prove impossible to do.

It would be sufficient if the solution is good enough for classes in
the FCL and LCL. They write some simple properties and a stream.

Either by providing a simple Filer or by registering for each such
class an addon.

Mattias




More information about the Lazarus mailing list