Re-invoke layout algorithm to fit a window around its
children. It will enlarge when the current
client size is too small, but not shrink when the window
is already large enough. (in contrast, windowReLayoutMinimal will
also shrink a window so that it always minimally sized).

(primitive) The expression (grid w h rows) creates a grid of rows. The w argument
is the extra horizontal space between elements and h the extra vertical space between elements.
(implemented using the FlexGrid sizer).

Only when all elements of a column have horizontal stretch (see stretch and hstretch), the entire
column will stretch horizontally, and the same holds for rows with vertical stretch.
When any column or row in a grid can stretch, the grid itself will also stretch in that direction
and the grid will expand to fill the assigned area by default (instead of being static).

Create a notebook layout.
The pages always need to be embedded inside a container (normally a Panel).
Just like a grid, the horizontal or vertical stretch of the child layout determines
the stretch and expansion mode of the notebook.

Transformers

Adjust the minimal size of a control dynamically when the content changes.
This is used for example to correctly layout static text or buttons when the
text or label changes at runtime. This property is automatically set for
StaticText, labels, and buttons.

Stretch

(primitive) The layout is not stretchable. In a grid, the row and column that contain this layout will
not be resizeable. Note that a static layout can still be assigned an area that is larger
than its preferred size due to grid alignment constraints.
(default, except for containers like grid and boxed where it depends on the child layouts).