The generic function calculate-constraints
calculates the internal constraints for
pane
according to the sizes of its children, and sets these values into
pane
's geometry cache.
When the pane does not scroll in the relevant dimension, all the geometry hints (:external-min-width
, :visible-max-height
and so on) override the values that are computed by calculate-constraints
.
When the pane does scroll in the relevant dimension, :internal-min-width
and :internal-min-height
override the values that are computed by calculate-constraints
. (:internal-max-width
and :internal-max-height
are ignored when scrolling.)
See Width and height hints for a description of internal and external constraints.
The CAPI calls calculate-constraints
for each pane and layout that it displays.
When creating your own layout, you should define a method for calculate-constraints
that sets the values of the following geometry slots based on the constraints of its children.
The minimum width of pane .
The maximum width of pane .
The minimum height of pane .
The maximum height of pane .
(See with-geometry.)
The constraints of any CAPI element can be found by calling get-constraints.
calculate-layout
define-layout
get-constraints
element
layout
with-geometry
Programming with CAPI Windows
CAPI User Guide and Reference Manual (Windows version) - 3 Aug 2017