https://invisible-island.net/xterm/xtoolkit/


XtPopdown(3)


NAME

       XtPopdown, XtCallbackPopdown - unmap a pop-up


SYNTAX

       #include <X11/Intrinsic.h>

       void XtPopdown(Widget popup_shell);

       void XtCallbackPopdown(Widget w, XtPointer client_data, XtPointer
              call_data);


ACTIONS

       void XtMenuPopdown(String shell_name);


ARGUMENTS

       call_data Specifies the callback data, which is not used by this proce-
                 dure.

       client_data
                 Specifies a pointer to the XtPopdownID structure.

       popup_shell
                 Specifies the widget shell to pop down.

       shell_name
                 Specifies the name of the widget shell to pop down.

       w         Specifies the widget.


DESCRIPTION

       The XtPopdown function performs the following:

       o    Calls XtCheckSubclass to ensure popup_shell is a subclass of
            Shell.

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

       o    Unmaps popup_shell's window.

       o    If popup_shell's grab_kind is either XtGrabNonexclusive or
            XtGrabExclusive, it calls XtRemoveGrab.

       o    Sets pop-up shell's popped_up field to False.

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

       The XtCallbackPopdown function casts the client data parameter to an
       XtPopdownID 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.

       XtCallbackPopdown calls XtPopdown with the specified shell_widget and
       then calls XtSetSensitive to resensitize the enable_widget.

       If a shell name is not given, XtMenuPopdown calls XtPopdown with the
       widget for which the translation is specified.  If a shell_name is
       specified in the translation table, XtMenuPopdown tries to find the
       shell by looking up the widget tree starting at the parent of the wid-
       get in which it is invoked.  If it finds a shell with the specified
       name in the pop-up children of that parent, it pops down the shell;
       otherwise, it moves up the parent chain as needed.  If XtMenuPopdown
       gets to the application top-level shell widget and cannot find a match-
       ing shell, it generates an error.


SEE ALSO

       XtCreatePopupShell(3), XtPopup(3)
       X Toolkit Intrinsics – C Language Interface
       Xlib - C Language X Interface



X Version 11                     libXt 1.1.5.2                    XtPopdown(3)