[Lazarus] Proposal for TControl.DoDock patch

Hans-Peter Diettrich DrDiettrich1 at aol.com
Tue Apr 6 09:42:13 CEST 2010


Michael Van Canneyt schrieb:

> What should happen if the docked control has Align=AlClient and the
> dock host control has AutoSize=True, is still a source of mystery to me :)

That's why I would not implement too much automatism. An autosizing dock 
site sits in a common environment (form...), together with other 
components. Consequently it cannot enlarge itself arbitrarily, but only 
with regards to the other components in its parent.

When we drop the DockManager, in favor of an general layout manager, a 
docksite would become just another (possibly autosizeable) control. When 
a control is docked into such an autosize dock site, the docksite would 
request a recalculation of its extent, from its parent, and this request 
may ripple up to the outmost form, depending on the constraints of all 
involved controls. Then the new extent of *all* affected controls is 
determined, and the docksite will be told its new extent, just like 
every other control is told.

DoDi





More information about the Lazarus mailing list