[Lazarus] Autosize behaviour
Hans-Peter Diettrich
DrDiettrich1 at aol.com
Thu Apr 8 14:12:05 CEST 2010
Mattias Gaertner schrieb:
>> BorderSpacing and ChildSizing IMO are specific to an layout manager,
>> meaningless to other layout managers. BorderSpacing IMO is equivalent to
>> the Delphi anchors.
>
> They are not equivalent. Delphi Anchors are only the space to the
> parent. BorderSpacing allows to define the space between a label and an
> anchored button.
The description of BorderSpacing is not very clear, can you improve it?
In a generalized layout management every control could be adjustable
inside the cell, that has been determined by the layout manager. I.e. a
regular[1] layout manager would tile the client area and assign every
control a cell. When required, every control can align itself inside its
cell, instead of inside its parent, using the same properties. Then the
fine-tuning is independent from a specific layout manager or control type.
[1] With "regular" I mean an layout manager that splits the entire
client area into rectangles, maybe 1-D (horizontal, vertical) or 2-D
(grid). Every rectangle can be splitted again in the same way, resulting
in a tree layout; it's a matter of convenience whether the layout
manager builds an entire tree, like in a dock-tree, or multiple layout
managers are used for further subdividing the rectangles. Such layouts
are quite easy to manage, in contrast to an arbitrary placement and
anchoring of every single control within its parent or relative other
controls (almost unmanaged until unmanageable).
DoDi
More information about the Lazarus
mailing list