XtSetKeyboardFocus - focus events on a child widget


       #include <X11/Intrinsic.h>

       void XtSetKeyboardFocus(Widget subtree, Widget descendant);


       subtree   Specifies either the widget in the subtree structure which is
                 to receive the keyboard event, or None.  Note that it is not
                 an error to specify None when no input focus was previously

                 Specifies the widget for which the keyboard focus is to be


       If a future KeyPress or KeyRelease event occurs within the specified
       subtree, XtSetKeyboardFocus causes XtDispatchEvent to remap and send
       the event to the specified descendant widget.

       When there is no modal cascade, keyboard events can occur within a wid-
       get W in one of three ways:

       o    W has the X input focus.

       o    W has the keyboard focus of one of its ancestors, and the event
            occurs within the ancestor or one of the ancestor's descendants.

       o    No ancestor of W has a descendant within the keyboard focus, and
            the pointer is within W.

       When there is a modal cascade, a widget W receives keyboard events if
       an ancestor of W is in the active subset of the modal cascade and one
       or more of the previous conditions is True.

       When subtree or one of its descendants acquires the X input focus or
       the pointer moves into the subtree such that keyboard events would now
       be delivered to subtree, a FocusIn event is generated for the descen-
       dant if FocusNotify events have been selected by the descendant.  Simi-
       larly, when W loses the X input focus or the keyboard focus for one of
       its ancestors, a FocusOut event is generated for descendant if FocusNo-
       tify events have been selected by the descendant.


       X Toolkit Intrinsics – C Language Interface
       Xlib - C Language X Interface

X Version 11                     libXt           XtSetKeyboardFocus(3)