$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Mathew Robertson (mathew.robertson_at_[hidden])
Date: 2004-12-22 17:44:55
> > Actually, now that I think about it, the css box is going to
> > cost a lot if it has actual structures. It is going to need a to
> > return a margin, say by inspecting the margin it was assigned,
> > and if assigned none, return the margin that it inherited.
>
> There is no reason why it is not possible to implement a simplified box
> model specifically for GUI layouts. The width/height can be calculated
> using get_minimum_size() and area.deflate( margin + padding ). Border is
> not really necessary. As for inheriting, for simplicity, the box model
> will not inherit anything.
Layout managers work this way...
Layout managment is a capability of a window. When a window becomes a parent window (eg: you have added some butotns to it), the parent window will do the following:
1. It asks each child their minimum size
2. It tallies the minimum size needed by all children.
3. If the parent has the property that it is to use a minimum size, then it will call setSize() to be the size of the tallied size of the children. If it is to be smaller/larger, then it will adjust the tallied value to the specified size.
4. Each child is then told to setSize() to a specific size, which is based on the value of the tally and an appropriate algorithm (of say, equal width per child).
Mathew