Zitat von Hans-Peter Diettrich <[email protected]>:
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?
I tried. See here:
http://wiki.lazarus.freepascal.org/Autosize_/_Layout#BorderSpacing
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.
Yes, see for example here:
http://wiki.lazarus.freepascal.org/Autosize_/_Layout#Individual_cells
What is missing in the current LCL tables are column and row spans.
[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.
I think multiple layouts are enough.
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).
I tend to disagree. Both can be easy and both can be pain.
Tables are worse when some controls should not be placed into the
raster. And Anchoring misses the alignment with multiple controls.
Both need a good GUI. There should be a mode to visualize Anchors in
the designer for example with arrows. And for tables there should be a
mode to show the borders.
Mattias
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus