Helps you to define layouts and create new pinboard-object subclasses.
with-geometry is used for defining layouts and for creating new pinboard-object subclasses, by binding a set of variables to a pane's geometry.
with-geometry binds the following variables across the forms in
to slots in the pane's geometry in much the same way as the Common Lisp macro
with-slots. Except the special cases which are mentioned below, these variables are read-only and should not be set.
Four variables define the geometry of the pane. If you define define your own calculate-layout method, it can set these variables:
An integer specifying the x position of the pane in pixels relative to its parent.
An integer specifying the y position of the pane in pixels relative to its parent.
An integer specifying the width in pixels of the pane.
An integer specifying the height in pixels of the pane.
Four variables specify constraints on the pane. If you define your own calculate-constraints method, it can set these variables:
A real number specifying the minimum width of the pane.
A real number specifying the minimum height of the pane.
A real number specifying the maximum width of the pane.
A real number specifying the maximum height of the pane.
The following variables are also bound but apply only to classes with internal scrolling, such as editor-pane. They can be retrieved by get-horizontal-scroll-parameters and get-vertical-scroll-parameters. They can be set by set-horizontal-scroll-parameters and set-vertical-scroll-parameters. These variables should be regarded as read-only inside
with-geometry (they are writable for backwards compatibility only).
x coordinate of the current scroll position.
y coordinate of the current scroll position
The object whose geometry this is.
The same as
%object% (kept for compatibility with LispWorks 3.1).
Accessing pane geometry
Laying Out CAPI Panes
Creating Panes with Your Own Drawing and Input
CAPI User Guide and Reference Manual (Macintosh version) - 3 Aug 2017