TControl.CreateFloatingDockSite creates a TWinControl owned by the floating control. This is a questionable relationship, at least, and incompatible with Delphi, where the floating dock site is owned by Application.

A floating dock site can have multiple client (child) controls, and must not be destroyed until all clients are removed or destroyed.

We can agree, however, that a floating dock site for exactly *one* control is owned by the control, so that TControl.GetFloating can check the ownership for exactly this unusual relationship. But then a new floating dock site must be created, as soon as another control is docked into the site...

All in all we should have better means for dockable controls, since non-Windows platforms typically don't allow to drag-dock forms. This does not mean Delphi incompatibilites at the interface level, but the *implementation* should work on all platforms.

DoDi


--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to