[ Previous | Next | Contents | Glossary | Home | Search ]
Motif and CDE 2.1 Style Guide Reference


Control Navigation

Reference

Description

Control navigation has two types: horizontal and vertical.

Horizontal navigation refers to navigating with the < and > keys, possibly augmented by the Ctrl modifier.

Vertical navigation refers to navigating with the ^ and V keys, possibly augmented by the Ctrl modifier.

When to Use

Required
Allow control navigation to move the active cursor among controls in a tab group.

Guidelines

Required
When unaugmented horizontal navigation is used to navigate among controls in a tab group, the > and < keys work as follows:

  1. When the user presses >, move the active cursor through all the controls that can take focus in a tab group, starting from the upper left and ending at the lower right.

  2. If the user presses > when controls are laid out in rows, traverse through one row, then traverse the row below it, and so forth.

  3. When the user presses > at the lower right control, wrap back to the control at the upper left if and only if the tab group is not horizontally scrollable; otherwise, it should have no effect.

  4. When the user presses <, move the active cursor through all the controls that can take focus in a tab group in the exact opposite order as pressing >.

  5. Required
    When augmented horizontal navigation is used to navigate among controls in a tab group, pressing Ctrl < and Ctrl > move the active cursor through all the controls that can take focus in a tab group, following the same set of rules as for unaugmented horizontal navigation described previously. For information on bidirectional and vertical language support, see Chapter 11.

    Required
    Support unaugmented horizontal navigation for control navigation within a tab group, unless controls within the tab group use horizontal navigation internally.

    Required
    If controls within the tab group use unaugmented horizontal navigation internally, support augmented horizontal navigation for control navigation, unless controls within the tab group also use augmented horizontal navigation internally.

    Recommended
    If unaugmented and augmented horizontal navigation are both supported for control navigation, they navigate to the same control.

    Required
    When unaugmented vertical navigation is used to navigate among controls in a tab group, the V and ^ keys work as follows:

    1. When the user presses V, move the active cursor through the controls that can take focus in a tab group, starting from the upper left and ending at the lower right.

    2. When the user presses V and the controls are laid out in columns, traverse through one column, then traverse the column to its right, and so forth.

    3. When the user presses V at the lower right control, wrap back to the control at the upper left if and only if the tab group is not vertically scrollable; otherwise, it should have no effect.

    4. When the user presses ^, move the active cursor through all the controls that can take focus in a tab group in the exact opposite order as pressing V.

    5. Required
      When augmented vertical navigation is used to navigate among controls in a tab group, pressing Ctrl V and Ctrl ^ move the active cursor through all the controls that can take focus in a tab group, following the same set of rules as for unaugmented vertical navigation described previously.

      Required
      Support unaugmented vertical navigation for control navigation within a tab group, unless controls within the tab group use vertical navigation internally.

      Required
      If controls within the tab group use unaugmented vertical navigation internally, support augmented vertical navigation for control navigation, unless controls within the tab group also use augmented vertical navigation internally.

      Recommended
      If unaugmented and augmented vertical navigation are both supported for control navigation, they should navigate to the same control.

      Required
      If a tab group contains more than one control that can take focus, then either horizontal or vertical navigation should be supported for control navigation within the tab group.

      Recommended
      If a tab group contains controls laid out in both dimensions (for example, not just in a single row or column), support both horizontal and vertical navigation within the tab group.

      Optional
      If the controls in a tab group use horizontal navigation internally, allow Tab and Shift Tab to be used (instead of < and >) for horizontal navigation (requiring Ctrl Tab and Ctrl Shift Tab to be used to move to the next or previous tab group).

      Optional
      Allow a tab group of vertically organized multiple-line text fields to use horizontal and unaugmented vertical navigation internally, while using augmented vertical navigation to move among the fields,

      Optional
      Allow a tab group of vertically organized single-line text fields to use horizontal navigation internally, while using vertical navigation to move among the fields.

      Optional
      Allow a table of single-word text fields to be organized as a tab group in which unaugmented horizontal navigation is used to navigate internally within the text fields, and in which augmented horizontal navigation is used to move among the fields.

      Optional
      Allow a table of text fields to be organized as a tab group in which horizontal navigation is used to navigate internally within the text fields, while Tab and Shift Tab are used for horizontal control navigation (requiring Ctrl Tab and Ctrl Shift Tab to be used to move to the next or previous tab group).

      Required
      The initial control of a tab group (the control that gets focus when the user presses Tab or Ctrl Tab to navigate to the tab group) should be either the top-left control that can take focus or the control with which the user is most likely to want to interact.

      Required
      In a tab group, if you allow Tab to navigate internally among all of its controls, the final control in the tab group should be the final control visited (without repeating) when starting at the initial control.

      Required
      If you do not allow Tab to navigate internally among all the controls in the tab group with wrapping, then allow Shift Tab or Ctrl Shift Tab to place focus on the initial control of the tab group.

      Required
      In a tab group, if you allow Tab to navigate internally among all the controls in the tab group, but do not allow warping from the final to the initial control, then allow Shift Tab or Ctrl Shift Tab to place focus on the final control of the tab group.

      Required
      If a tab group of push buttons contains the push button that has default emphasis when focus initially enters a window, then make that push button the initial control of its tab group.

      When focus is within a tab group of push buttons, support Tab in one of the following ways:

      1. When focus is on the final push button in the tab group, move focus to the next tab group.

      2. If the tab group is laid out in columns, but not in rows, navigate vertically to the next push button.

      3. Navigate horizontally to the next push button.

        Continue to allow the directional keys to navigate within the tab group as well.

      4. Required
        When focus is within a tab group of push buttons, support Shift Tab in one of the following ways:

        1. When focus is on the initial push button of the tab group, navigate to the previous tab group.

        2. Navigate in the reverse direction of Tab.

        3. Recommended
          When a tab group contains controls laid out in multiple rows and columns, allow Home (or Begin) to move to the first control in a row and End to move to the last control in a row.

          Recommended
          When the controls in a tab group are not laid out in multiple rows and columns, and when horizontal navigation is used to move among the controls, Home (or Begin) should move the active cursor to the initial control in the tab group, and End should move the active cursor to the final control in the tab group visited (without repeating) when starting at the initial control and navigating horizontally.

          Recommended
          When vertical navigation is used to move among the controls in a tab group, allow Ctrl Home (or Ctrl Begin) to move the active cursor to the first control in the tab group and Ctrl End to move the active cursor to the final control in the tab group visited (without repeating) when starting at the initial control and navigating vertically.

          Essential Related Topics

          For more information, see the Browse Technique, Cursor, Internal Navigation, Mnemonic, Tab-Group, and Window Navigation reference pages. Chapter 11.

          Supplemental Related Topics

          For more information, see the Control, Keyboard (Device), and Push Button (Predefined) reference pages.


          [ Previous | Next | Contents | Glossary | Home | Search ]