Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XmProceTr(Xm) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 XmProcessTraversal(Xm)         6 January 1993         XmProcessTraversal(Xm)


 Name

    XmProcessTraversal - a function that determines which component receives
    keyboard events when a widget has the focus

 Syntax


    #include <Xm/Xm.h>

    Boolean XmProcessTraversal (widget, direction)
    Widget widget;
    XmTraversalDirection direction;


 Description

    XmProcessTraversal determines which component of a hierarchy receives
    keyboard events when the hierarchy that contains the given widget has
    keyboard focus.  Using XmProcessTraversal to traverse to MenuBars, Pull-
    down MenuPanes, or Popup MenuPanes is not supported.

    widget  Specifies the widget ID of the widget whose hierarchy is to be
            traversed.  The hierarchy is only traversed up to the top of the
            shell. If that shell does not currently have the focus, any
            changes to the element with focus within that shell will not
            occur until the next time the shell recieves focus.

    direction
            Specifies the direction of traversal.

    The direction parameter can have the following values, which cause the
    routine to take the corresponding actions:

    +  XmTRAVERSECURRENT -- Finds the hierarchy and the tab group that con-
       tain widget.  If this tab group is not the active tab group, makes it
       the active tab group.  If widget is an item in the active tab group,
       makes it the active item.  If widget is the active tab group, makes
       the first traversable item in the tab group the active item.

    +  XmTRAVERSEDOWN -- Finds the hierarchy that contains widget.  Finds
       the active item in the active tab group and makes the item below it
       the active item.  If there is no item below, wraps.

    +  XmTRAVERSEHOME -- Finds the hierarchy that contains widget.  Finds
       the active item in the active tab group and makes the first travers-
       able item in the tab group the active item.

    +  XmTRAVERSELEFT -- Finds the hierarchy that contains widget.  Finds
       the active item in the active tab group and makes the item to the left
       the active item.  If there is no item to the left, wraps.

    +  XmTRAVERSENEXT -- Finds the hierarchy that contains widget.  Finds
       the active item in the active tab group and makes the next item in
       child order the active item.

    +  XmTRAVERSENEXTTABGROUP -- Finds the hierarchy that contains widget.
       Finds the active tab group (if any) and makes the next tab group the
       active tab group in the hierarchy.

    +  XmTRAVERSEPREV -- Finds the hierarchy that contains widget.  Finds
       the active item in the active tab group and makes the previous item in
       child order the active item.

    +  XmTRAVERSEPREVTABGROUP -- Finds the hierarchy that contains widget.
       Finds the active tab group (if any) and makes the previous tab group
       the active tab group in the hierarchy.

    +  XmTRAVERSERIGHT -- Finds the hierarchy that contains widget.  Finds
       the active item in the active tab group and makes the item to the
       right the active item.  If there is no item to the right, wraps.

    +  XmTRAVERSEUP -- Finds the hierarchy that contains widget.  Finds the
       active item in the active tab group and makes the item above it the
       active item.  If there is no item above, wraps.

    Cautions


    +  XmProcessTraversal will not allow traversal to a widget in a different
       shell.

    +  XmProcessTraversal will only allow traversal to widgets that are
       currently mapped.

    +  You cannot call XmProcessTraversal from inside a focusCallback routine
       (or you will get a segmentation fault).

 Return value

    Returns True if the setting succeeded.  Returns False if the keyboard
    focus policy is not XmEXPLICIT, if there are no traversable items, or if
    the call to the routine has invalid parameters.

 See also

    XmGetVisibility(Xm) and XmIsTraversable(Xm).


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026