XtRealizeWidget(3) XT FUNCTIONS XtRealizeWidget(3)

# [NAME](#NAME)

XtRealizeWidget, XtIsRealized, XtUnrealizeWidget - realize and unrealize widgets

# [SYNTAX](#SYNTAX)

#include &lt;X11/Intrinsic.h&gt;

void XtRealizeWidget(Widget *w*);

Boolean XtIsRealized(Widget *w*);

void XtUnrealizeWidget(Widget *w*);

# [ARGUMENTS](#ARGUMENTS)

[*w*](#w)

Specifies the widget.

# [DESCRIPTION](#DESCRIPTION)

If the widget is already realized, **XtRealizeWidget** simply returns. Otherwise, it performs the following:

- Binds all action names in the widget's translation table to procedures (see Section 10.1.2).
- 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.
- Constructs an **XSetWindowAttributes** structure filled in with information 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.
- If the widget is not a subclass of **compositeWidgetClass**, **XtRealizeWidget** returns; otherwise, it continues and performs the following:

<!--THE END-->

- 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](#SEE_ALSO)

[XtManageChildren(3)](/man/os/libxt/XtManageChildren.3)  
*X Toolkit Intrinsics - C Language Interface*  
*Xlib - C Language X Interface*

libXt 1.3.1 X Version 11

---

Document: XtIsRealized(3) from libxt 1.3.1-r11 (Chainguard OS)
Source: https://gitlab.freedesktop.org/xorg/lib/libxt.git
