[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]
Motif and CDE 2.1 Style Guide Reference
Menu (Control)
Reference
Description
A menu is a control that contains a group of choices, generally of any
type. Menus are either pop-up menus, tear-off menus, menu bars, or cascaded
menus.
A cascaded menu is a menu displayed from a cascading choice and may be a
pull-down menu, an option menu, or a submenu.
A submenu is a cascaded menu displayed from a tear-off menu, a pop-up menu,
or another cascaded menu.
A menu system is a spring-loaded system whose cascaded controls are all
menus.
Figure 40 illustrates the various menu types.
Figure 40. Menu Types
When to Use
RecommendedUse a menu to present choices, especially standard choices, in a
consistent manner.
RecommendedUse a menu to provide choices when there is no space for the choices in
the window itself, or when the display of the choices would be awkward or
would remove attention from the main controls that the user needs to perform a
task.
Guidelines
The following guidelines apply to languages that read from left to
right. For information on bidrectional and vertical language support, see
Chapter
11.
RequiredPlace only action, cascading, dialog, and value choices in a menu.
RecommendedPlace related choices together in a menu.
RecommendedUse separators to distinguish groups of related choices.
RecommendedPlace application-specific choices in a menu following a group of related
predefined choices.
RecommendedAllow a user to add, remove, or reorder choices on a menu.
OptionalAllow a user to add or remove cascaded menus and to reorganize the
allocation of choices to menus.
RecommendedAvoid placing more than 15 choices in a menu, unless requested by the
user. Use submenus to reduce the number of choices in a menu.
RecommendedAvoid using more than one level of submenus.
RecommendedDesign submenus to contain at least three choices. If only one or two
choices would be in the submenu, place the choices in the parent menu except
where the menu can be customized by the user to include additional choices.
RecommendedDo not use the label of a cascading choice as the label of a choice within
its corresponding cascaded menu. Instead, consider the label as the title for
the choices in the corresponding menu. Choose a label for the cascading choice
that accurately describes the purpose of the menu.
RequiredProvide the predefined mnemonic for each predefined textual choice in a
menu.
RequiredProvide a unique mnemonic for each application-specific textual choice in
a menu, unless there is no meaningful unique mnemonic.
RequiredExcept in the Selected menu or in a pop-up menu (or a menu torn off from
them), do not add or remove choices from a menu to indicate unavailability of
choices. Instead, display unavailable choices with unavailable emphasis.
RequiredIf a choice is not available to a particular user due to an external
factor over which the user has no control, do not include or reserve space for
the choice in a menu.
RequiredDisplay unavailable emphasis on action, value, and dialog choices in a
menu that cannot be activated or toggled in the current context.
RequiredA cascaded menu should be just large enough so that the labels of all the
choices in the menu are fully displayed.
RequiredOrganize menus in either rows or columns.
RequiredIf you provide cascading choices in a menu other than the menu bar,
organize the menu in columns.
RequiredSupport the use of directional keys for navigation in a menu system when
the menu containing the focus is not spring sensitive.
RecommendedSupport the use of directional keys for navigation when focus is in a menu
system and no mouse button is pressed.
RequiredIn a menu organized in columns, make V move the cursor to a choice
in the row below, wrapping at the bottom row within the menu.
RequiredIn a menu organized in rows, but not on a cascading choice, make V
move the cursor to the choice below, wrapping at the bottom edge within the
menu.
RequiredIn a menu organized in columns, make ^ move the cursor to a choice
in the row above, wrapping at the top row within the menu.
RequiredIn a menu organized in rows, but not on a cascading choice, make ^
move the cursor to the choice above, wrapping at the top edge within the menu.
RequiredIn a menu organized in rows or columns, whose parent is not a menu, make
< move the cursor to the choice to the left, wrapping at the left edge
within the menu.
RequiredIn a menu organized in rows or columns, but not at the left edge, make
< move the cursor to the choice to the left.
RequiredAt the left edge of a menu organized in rows or columns, whose parent menu
is organized in columns, make < remove the menu and move the cursor to
its associated cascading choice.
RequiredAt the left edge of a menu organized in rows or columns, cascaded from a
menu-bar item, make < remove the menu and activate the menu-bar item to
the left, first wrapping within the menu bar, if necessary.
RequiredIn a menu organized in columns, on a cascading choice, make >
activate the choice.
RequiredIn a menu organized in rows or columns, whose parent is not a menu, but
not on a cascading choice, make > move the cursor to the choice to the
right, wrapping at the right edge within the menu.
RequiredIn a menu organized in rows or columns, but not at the right edge, and not
on a cascading choice, make > move the cursor to the choice to the
right.
RequiredAt the right edge of a menu organized in rows or columns, whose cascaded
menu ancestors are all organized in columns, and which is ultimately descended
from a menu-bar item, but not on a cascading choice, make > remove all
the cascaded menus and activate the menu-bar item to the right, first wrapping
within the menu bar, if necessary.
RequiredWhen a cascading choice is used in a menu whose choices are aligned
vertically, display a right-pointing arrow to the right of the choice and
align the right edge of the arrow with the right edge of the menu.
RequiredIf a spring-loaded menu is displayed and is not spring sensitive, give it
focus unless the focus is in a descendant spring-loaded menu.
RequiredWhen focus moves to a menu that has just been displayed, place the active
cursor on the default choice in the menu. If not determined in any other
specified way, make the default choice the first choice in the menu or, if
that is a tear-off choice, the following choice.
RequiredWhen a submenu is displayed from a menu-bar item, place it, if possible,
immediately below the menu-bar item, with the left edges of the menu and
menu-bar item aligned.
RequiredWhen a submenu is displayed from a menu organized as a single column,
place the submenu, if possible, so that its left edge is aligned with the
right edge of the parent menu.
RecommendedWhen a submenu is displayed from a menu whose choices are aligned
vertically, place the submenu, if possible, so that its default menu item is
directly to the right of the right arrow in the cascading choice from which
the submenu was displayed.
RequiredWhen the active cursor is on an available choice in a menu and the user
presses Select, Space, Ctrl Space,Enter,CtrlEnter, or keypadEnter, activate or
toggle the choice.
Essential Related Topics
For more information, see the Cascading (Choice Type), Choice, and
Spring-Loaded (Control Type) reference pages.
Supplemental Related Topics
For more information, see the Emphasis (Cue), Menu Bar (Menu Type),
Mnemonic, Pop-Up Menu (Menu Type), Pull-Down Menu (Menu Type), and Tear-Off
Menu (Menu Type) reference pages.
[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]