XtRealizeWidget(3)
NAME
XtRealizeWidget, XtIsRealized, XtUnrealizeWidget - realize and unrealize widgets
SYNTAX
void XtRealizeWidget(Widget w);
Boolean XtIsRealized(Widget w);
void XtUnrealizeWidget(Widget w);
ARGUMENTS
w Specifies the widget.
DESCRIPTION
If the widget is already realized, XtRealizeWidget simply returns.
Otherwise, it performs the following:
- o Binds all action names in the widget's translation table to proce
- dures (see Section 10.1.2).
- o Makes a post-order traversal of the widget tree rooted at the
- specified widget and calls the change_managed procedure of each
composite widget that has one or more managed children. - o Constructs an XSetWindowAttributes structure filled in with infor
- mation derived from the Core widget fields and calls the realize
procedure for the widget, which adds any widget-specific
attributes and creates the X window. - o If the widget is not a subclass of compositeWidgetClass,
- XtRealizeWidget returns; otherwise, it continues and performs the following:
- - Descends recursively to each of the widget's managed children
and calls the realize procedures. Primitive widgets that
instantiate children are responsible for realizing those
children themselves. - - Maps all of the managed children windows that have
mapped_when_managed True. (If a widget is managed but mapped_when_managed is False, the widget is allocated visual space but is not displayed. Some people seem to like this to indicate certain states.)
- If the widget is a top-level shell widget (that is, it has no parent), and mapped_when_managed is True, XtRealizeWidget maps the widget window.
- The XtIsRealized function returns True if the widget has been realized, that is, if the widget has a nonzero X window ID.
- Some widget procedures (for example, set_values) might wish to operate differently after the widget has been realized.
- The XtUnrealizeWidget function destroys the windows of an existing widget and all of its children (recursively down the widget tree). To
recreate the windows at a later time, call XtRealizeWidget again. If the widget was managed, it will be unmanaged automatically before its
window is freed.
SEE ALSO
- XtManageChildren(3Xt)
X Toolkit Intrinsics - C Language Interface Xlib - C Language X Interface