LCL Interface Redesign Idea
From Free Pascal wiki
Revision as of 23:38, 3 April 2007 by AndrewH (talk | contribs) (→This is current Idea for managing the connection to the interface and how it relates to handles)
This is current Idea for managing the connection to the interface and how it relates to handles
Overview:
- Fork a branch of lazarus/
- Replace TWinControl.Handle with TWinControl.LCLHandle (there should exist no Handle yet)
- Try to get the LCL compiled and maybe the IDE so it doesn't use the (inefficient) .Handle anymore
- Introduce .Handle again, now as WSclass call
- Merge the branches
TWSxxWinControl.CreateHandle Returns a TLCLHandle
TLCLHandle = IInterface;
TxxPrivate = class(TPrivate, TLCLHandle);
TGtkPrivateButton = class(TGtkBin, TLCLHandle);
Other possibilities
{$IFDEF X11} TGtkPrivateWidget = class(TGtkPrivate, ILCLHandle, IX11);