


XtManageChildren(3Xt)					XtManageChildren(3Xt)
X11R5									X11R5



NAME
  XtManageChildren, XtManageChild, XtUnmanageChildren, XtUnmanageChild -
  manage and unmanage children

SYNTAX
  typedef Widget *WidgetList;

  void XtManageChildren(_c_h_i_l_d_r_e_n, _n_u_m__c_h_i_l_d_r_e_n)
	WidgetList _c_h_i_l_d_r_e_n;
	Cardinal _n_u_m__c_h_i_l_d_r_e_n;

  void XtManageChild(_c_h_i_l_d)
	Widget _c_h_i_l_d;

  void XtUnmanageChildren(_c_h_i_l_d_r_e_n, _n_u_m__c_h_i_l_d_r_e_n)
	WidgetList _c_h_i_l_d_r_e_n;
	Cardinal _n_u_m__c_h_i_l_d_r_e_n;

  void XtUnmanageChild(_c_h_i_l_d)
	Widget _c_h_i_l_d;

ARGUMENTS

  _c_h_i_l_d	    Specifies the child.

  _c_h_i_l_d_r_e_n  Specifies a	list of	child widgets.

  _n_u_m__c_h_i_l_d_r_e_n
	    Specifies the number of children.

DESCRIPTION
  The _X_t_M_a_n_a_g_e_C_h_i_l_d_r_e_n function	performs the following:

  oo++    Issues an error if the children do not all have the same	parent or if
       the parent 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.

  oo++    Returns immediately if the common parent	is being destroyed; other-
       wise, for each unique child on the list,	_X_t_M_a_n_a_g_e_C_h_i_l_d_r_e_n ignores the
       child if	it already is managed or is being destroyed and	marks it if
       not.

  oo++    If the parent is	realized and after all children	have been marked, it
       makes some of the newly managed children	viewable:

       --    Calls the change_managed routine of	the widgets' parent.

       --    Calls _X_t_R_e_a_l_i_z_e_W_i_d_g_e_t on each previously unmanaged child that is
	    unrealized.

       --    Maps each previously unmanaged child that has map_when_managed
	    _T_r_u_e.

  Managing children is independent of the ordering of children and indepen-
  dent of creating and deleting	children.  The layout routine of the parent
  should consider children whose managed field is _T_r_u_e and should ignore all
  other	children.  Note	that some composite widgets, especially	fixed boxes,
  call _X_t_M_a_n_a_g_e_C_h_i_l_d from their	insert_child procedure.

  If the parent	widget is realized, its	change_managed procedure is called to
  notify it that its set of managed children has changed.  The parent can
  reposition and resize	any of its children.  It moves each child as needed
  by calling _X_t_M_o_v_e_W_i_d_g_e_t, which first updates the x and y fields and then
  calls	_X_M_o_v_e_W_i_n_d_o_w if the widget is realized.

  The _X_t_M_a_n_a_g_e_C_h_i_l_d function constructs	a _W_i_d_g_e_t_L_i_s_t of	length one and calls
  _X_t_M_a_n_a_g_e_C_h_i_l_d_r_e_n.

  The _X_t_U_n_m_a_n_a_g_e_C_h_i_l_d_r_e_n function performs the following:

  oo++    Issues an error if the children do not all have the same	parent or if
       the parent 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.

  oo++    Returns immediately if the common parent	is being destroyed; other-
       wise, for each unique child on the list,	_X_t_U_n_m_a_n_a_g_e_C_h_i_l_d_r_e_n performs
       the following:

       --    Ignores the	child if it already is unmanaged or is being des-
	    troyed and marks it	if not.

       --    If the child is realized, it makes it nonvisible by	unmapping it.

  oo++    Calls the change_managed	routine	of the widgets'	parent after all
       children	have been marked if the	parent is realized.

  _X_t_U_n_m_a_n_a_g_e_C_h_i_l_d_r_e_n does not destroy the children widgets.  Removing widgets
  from a parent's managed set is often a temporary banishment, and, some time
  later, you may manage	the children again.

  The _X_t_U_n_m_a_n_a_g_e_C_h_i_l_d function constructs a widget list	of length one and
  calls	_X_t_U_n_m_a_n_a_g_e_C_h_i_l_d_r_e_n.

SEE ALSO
  XtMapWidget(3Xt), XtRealizeWidget(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	delim off





























