XmProcessTraversal(3X)

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

As shipped in IRIX 6.5.15. Unchanged since IRIX 6.5.

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

SYNOPSIS
     #include <Xm/Xm.h>

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


VERSION
     This page documents version 1.2 of the Motif library.

DESCRIPTION
     XmProcessTraversal determines which component of a hierarchy receives  key-
     board events when the hierarchy that contains the given widget has keyboard
     focus.   Using  XmProcessTraversal  to traverse to MenuBars, Pulldown Menu-
     Panes, 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 rou-
     tine to take the corresponding actions:


       *  XmTRAVERSE_CURRENT-Finds the hierarchy and the tab group that  contain
          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.

       *  XmTRAVERSE_DOWN-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.

       *  XmTRAVERSE_HOME-Finds  the  hierarchy that contains widget.  Finds the
          active item in the active tab group and makes  the  first  traversable
          item in the tab group the active item.

       *  XmTRAVERSE_LEFT-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.

       *  XmTRAVERSE_NEXT-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.

       *  XmTRAVERSE_NEXT_TAB_GROUP-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.

       *  XmTRAVERSE_PREV-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.

       *  XmTRAVERSE_PREV_TAB_GROUP-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.

       *  XmTRAVERSE_RIGHT-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.

       *  XmTRAVERSE_UP-Finds the hierarchy that contains widget.  Finds the ac-
          tive item in the active tab group and makes the item above it the  ac-
          tive 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 cur-
          rently 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.

RELATED INFORMATION
     XmGetVisibility(3X) and XmIsTraversable(3X).

                                                          XmProcessTraversal(3X)