I need to stream references in DefineProperties. 

For those not familar with the streaming of TReader/TWriter:

For example TForm.ActiveControl is a class property and is a reference
to TControl. TWriter simply writes the name of the control.
TReader reads the identifier, but during streaming not all controls are
created, so TReader saves this as ToDo in a FFixUps list and sets all
references after loading.
That's a great feature, but it is private. You can not use it in your
DefineProperties. It seems Delphi has the same problem.
Either I'm blind and TReader has already a solution or we need a public
method. For example

procedure TReader.AddFixUp(Instance: TPersistent; PropInfo: Pointer;
  const Ident: string);  
begin
  FFixups.Add(TPropFixup.Create(Instance, Root, PropInfo, '', Ident));
end;

I can write a patch and test it. 


Mattias

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

Reply via email to