Your widget needs to manage geometry when it encounters any of the following situations:
In addition to these typical cases, an application may also generate a geometry request by calling one of the Xt geometry management routines. Most of these routines require a response from your widget.
The Intrinsics provide the five geometry resources shown in the
following table. The Intrinsics monitor the values of these resources in a
variety of ways. For example, the XtSetValues call automatically monitors the
five geometry resources and takes certain actions when they change.
Table 23. Geometry Resources of Core
|core.border_width||XmNborderWidth||Specifies the width of the border that surrounds the widget's window on all four sides. The width is specified in pixels. A width of 0 means that no border shows.|
|core.height||XmNheight||Specifies the inside height (excluding the border) of the widget's window.|
|core.width||XmNwidth||Specifies the inside width (excluding the border) of the widget's window.|
|core.x||XmNx||Specifies the x-coordinate of the upper-left outside corner of the widget's window. The value is relative to the upper-left inside corner of the parent's window.|
|core.y||XmNy||Specifies the y-coordinate of the upper-left outside corner of the widget's window. The value is relative to the upper-left inside corner of the parent's window.|
The following seven Core class methods handle most of the work of geometry management:
Each of these methods is examined in the following subsections.