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, _X_t_R_e_a_l_i_z_e_W_i_d_g_e_t 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
_X_S_e_t_W_i_n_d_o_w_A_t_t_r_i_b_u_t_e_s structure filled in with information derived from the _C_o_r_e 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 _c_o_m_p_o_s_i_t_e_W_i_d_g_e_t_C_l_a_s_s, _X_t_R_e_a_l_i_z_e_W_i_d_g_e_t 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
_T_r_u_e. (If a widget is managed but mapped_when_managed is _F_a_l_s_e, 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 _T_r_u_e, _X_t_R_e_a_l_i_z_e_W_i_d_g_e_t maps the widget window.

The _X_t_I_s_R_e_a_l_i_z_e_d function returns _T_r_u_e 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 _X_t_U_n_r_e_a_l_i_z_e_W_i_d_g_e_t 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 _X_t_R_e_a_l_i_z_e_W_i_d_g_e_t again. If the widget was managed, it will be unmanaged automatically before its window is freed.

SEE ALSO

XtManageChildren(3Xt)
_X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s _- _C _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e
_X_l_i_b _- _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e