


XtPopdown(3Xt)						       XtPopdown(3Xt)
X11R5									X11R5



NAME
  XtPopdown, XtCallbackPopdown,	MenuPopdown - unmap a pop-up

SYNTAX
  void XtPopdown(_p_o_p_u_p__s_h_e_l_l)
	Widget _p_o_p_u_p__s_h_e_l_l;

  void XtCallbackPopdown(_w, _c_l_i_e_n_t__d_a_t_a, _c_a_l_l__d_a_t_a)
	Widget _w;
	XtPointer _c_l_i_e_n_t__d_a_t_a;
	XtPointer _c_a_l_l__d_a_t_a;

  void MenuPopdown(_s_h_e_l_l__n_a_m_e)
	String _s_h_e_l_l__n_a_m_e;

ARGUMENTS

  _c_a_l_l__d_a_t_a Specifies the callback data, which is not used by this procedure.

  _c_l_i_e_n_t__d_a_t_a
	    Specifies a	pointer	to the _X_t_P_o_p_d_o_w_n_I_D structure.

  _p_o_p_u_p__s_h_e_l_l
	    Specifies the widget shell to pop down.

  _s_h_e_l_l__n_a_m_e
	    Specifies the name of the widget shell to pop down.

  _w	    Specifies the widget.

DESCRIPTION
  The _X_t_P_o_p_d_o_w_n	function performs the following:

  oo++    Calls _X_t_C_h_e_c_k_S_u_b_c_l_a_s_s to	ensure popup_shell is a	subclass of _S_h_e_l_l.

  oo++    Checks that popup_shell is currently popped_up; otherwise, it gen-
       erates an error.

  oo++    Unmaps popup_shell's window.

  oo++    If popup_shell's	grab_kind is either _X_t_G_r_a_b_N_o_n_e_x_c_l_u_s_i_v_e or _X_t_G_r_a_b_E_x_-
       _c_l_u_s_i_v_e,	it calls _X_t_R_e_m_o_v_e_G_r_a_b.

  oo++    Sets pop-up shell's popped_up field to _F_a_l_s_e.

  oo++    Calls the callback procedures on	the shell's popdown_callback list.

  The _X_t_C_a_l_l_b_a_c_k_P_o_p_d_o_w_n	function casts the client data parameter to an _X_t_P_o_p_-
  _d_o_w_n_I_D pointer:

  typedef struct {
	  Widget shell_widget;
	  Widget enable_widget;	} XtPopdownIDRec, *XtPopdownID;

  The shell_widget is the pop-up shell to pop down, and	the enable_widget is
  the widget that was used to pop it up.


  _X_t_C_a_l_l_b_a_c_k_P_o_p_d_o_w_n calls _X_t_P_o_p_d_o_w_n with the specified shell_widget and	then
  calls	_X_t_S_e_t_S_e_n_s_i_t_i_v_e to resensitize the enable_widget.

  If a shell name is not given,	_M_e_n_u_P_o_p_d_o_w_n calls _X_t_P_o_p_d_o_w_n with the widget
  for which the	translation is specified.  If a	shell_name is specified	in
  the translation table, _M_e_n_u_P_o_p_d_o_w_n tries to find the shell by	looking	up
  the widget tree starting at the parent of the	widget in which	it is
  invoked.  If it finds	a shell	with the specified name	in the pop-up chil-
  dren of that parent, it pops down the	shell; otherwise, it moves up the
  parent chain as needed.  If _M_e_n_u_P_o_p_d_o_w_n gets to the application top-level
  shell	widget and cannot find a matching shell, it generates an error.

SEE ALSO
  XtCreatePopupShell(3Xt), XtPopup(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


















































