[fpc-devel] Opening FPC base classes

Martin Schreiber mse00000 at gmail.com
Mon Jul 23 17:01:21 CEST 2012


On Monday 23 July 2012 15:31:42 michael.vancanneyt at wisa.be wrote:
>
> You ask to throw away the very purpose and reason of existence for
> TComponent. This is not going to happen.
>
> The 'deprecated' does not change that. These fields are private for a
> reason. Making them protected exposes them e.g. in TForm and TDatamodule
> from Lazarus, which is a can of worms we are not going to open.
>
> Please explain the actual problem. Till now you explain your solution to a
> problem you seem to have, not the problem itself. You hide behind other
> 'potential' problems.
>
> And in general:
> if TComponent imposes such restrictions on what you want to do: Simply do
> not use it. There is nothing sacred about TComponent. Lazarus for instance
> only requires TPersistent.
>
> This is not as bad or such a big obstacle as it may seem: The tiOPF
> framework has written a complete class system without referring to
> TPersistent or TComponent, it uses RTII successfully.
> It works very well, I use it myself.
>
> I don't see why you cannot do the same. It's perfectly possible to use the
> streaming system for both TComponent and other classes. All it takes is
> RTTI, which happens to be enabled in TPersistent.
>
Because of integration of third party components. But you are probably right, 
it seems to be the time to leave FCL compatibility. The design of 
TPersistent/TComponent and the whole classes unit has been made by Borland so 
that it made the development of a concurrent IDE to Delphi as difficult as 
possible. I hope Free Pascal has not the same attitude. ;-)

Thank you again for your time,

Martin



More information about the fpc-devel mailing list