On Sun, 13 Jun 2021, Sven Barth via lazarus wrote:

Am 11.06.2021 um 23:48 schrieb Juha Manninen via lazarus:
Regarding issue : https://bugs.freepascal.org/view.php?id=28450 <https://bugs.freepascal.org/view.php?id=28450>

The parameter passed to function RegisterComponents() is TComponentClass which means "class of TComponent". It is only type information and does not carry information about sub-components. Could somebody please explain how it works in Delphi. Does this really work :
  RegisterComponents('Sample', [TMyFrame]);

Yes, it does work this way. I don't know what you mean with "information about sub-components". The VMT vFieldTable entry contains all published fields of the class and thus all the sub controls that are visible through the RTTI and thus for the designer. If the IDE does not use that yet, then it definitly should.

I added a comment to the report but it is old and the reporter may not read it.
Maybe there should be a new function RegisterFrame() or similar?

There is no need to add anything, because the necessary information is already there. It's just that the IDE doesn't use it yet.

In Delphi, the above also does not work, you need special handling for
frames, just as for forms.

Michael.
-- 
_______________________________________________
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus

Reply via email to