[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]
Motif and CDE 2.1 Style Guide Certification Checklist
Controls, Groups, and Models (CDE)
[ ]Check buttons should only select settings that are not mutually exclusive.
A check button graphically indicates its state with the presence or absence of
a check mark.
[ ]When the user presses the SELECT button in a check button, display the
check button with armed emphasis. If the check button was previously unset,
show it in the set state. If the check button was previously set, show in the
unset state.
Pressing the SELECT button arms a check button; releasing the SELECT button
shows the result of activating it.
[ ]When the user releases the SELECT button in the same check button in which
the press occurred:
If the check button was previously unset, set it.
If the check button was previously set, unset it.
In all cases, disarm the check button and, if the check button is in a
menu, unpost the menu. When the user releases the SELECT button, activate the
check button.
[ ]When the user presses Enter or Return in a check button, if the check
button is in a window with a default action, activate the default action. If
the check button is in a menu:
If the check button was previously unset, set it.
If the check button was previously set, unset it.
In both cases, disarm the check button and unpost the menu.
[ ]When the user presses Select or Spacebar in a check button, if the check
button was previously unset, set it. If the check button was previously set,
unset it. In both cases, disarm the check button and, if the check button is
in a menu, unpost the menu.
[ ]In a list that can be scrolled, such as a scrollable list box, do not
allow the cursor to wrap.
[ ]Provide vertical scroll bars when some of the data is not visible in the
combo box.
[ ]If your application uses a command box, include a text component with a
command-line prompt for text input and a list component for a command history
area. Use either the single selection or browse selection model.
[ ]When an element of a command box list is selected, place its contents in
the text area.
[ ]Make the list navigation actions ^, V, Ctrl Begin, and Ctrl
End available from the text component so the user can move the cursored
element within the list and thus change the contents of the text.
[ ]The default action of the command box should pass the command in the text
area to the application for execution and add the command to the end of the
list.
[ ]If your application uses a file selection dialog box, it should contain
the following components:
A directory text component that shows the current directory path. The user
can edit the directory text component and press Return or Enter to change the
current directory.
For applications that allow saving to different formats, an option button
that allows users to specify the format when saving a file.
A file name text component for displaying and editing a file name. This
component is optional when the file selection box is used to choose an
existing file or directory.
A group of push buttons, including a command button, and Update, Cancel,
and Help buttons. The command button is typically labeled Open or Save, but if
there is another label that better describes the resulting action (such as
Include), use that label. Activating the command button carries out the
corresponding action and dismisses the file selection box.
[ ]If the Open button is activated while the appropriate file is selected in
the contents list, the file should be utilized by the application and the file
selection box dismissed.
[ ]When the file selection dialog box is used to choose an existing
directory, there must also be an additional button, labeled Update, that is
enabled whenever a directory is selected in the contents list and that opens
the directory. Make this Update button the default action.
[ ]Make the normal text navigation and editing functions available in the
text components for moving the cursor within each text component and changing
the contents of the text. These actions provide a convenient way to choose a
directory or file name from the corresponding list while focus remains in the
text component.
[ ]When the user double-clicks the SELECT button on an item in the contents
list, select that item and activate the default action. In all cases,
double-clicking the SELECT button on a directory in the contents list should
open that directory and display its contents in the contents list (the default
action is Open).
When the file selection box is used to choose an existing file and the user
double-clicks the SELECT button on an appropriate file in the contents list,
choose that file and dismiss the file selection box (the default action is
Open).
When the file selection box is used to choose an existing directory or to
specify a new directory or file, the files list should not appear.
[ ]Make the normal text navigation and editing functions available in the
text components for moving the cursor within each text component and for
changing the contents of the text.
[ ]Make use of a selection when one of the following occurs:
The user activates the command push button while an appropriate item is
selected in the contents list
The user double-clicks the SELECT button on an appropriate file in the
contents list
The user presses Return or Enter while the file name text component has
keyboard focus and contains an appropriate item
[ ]Make the file selection box display the contents of a directory in the
contents list when the file selection box is initialized, when the user
presses Enter or Return in the directory text component, and when the user
opens a directory in the contents list. Update the contents list each time the
contents of the directory changes.
[ ]If the user has opened the application with a file name argument, the Open
dialog box should default to the directory in which that file resides.
[ ]Within a list component, pressing ^ moves the location cursor to
the previous item in the list, and pressing V moves the location cursor
to the next item in the list. In a scrollable list, pressing < scrolls
the list one character to the left, and pressing > scrolls the list one
character to the right.
[ ]Within a list component, pressing Ctrl Begin moves the location cursor to
the first item in the list, and pressing Ctrl End moves the location cursor to
the last item in the list. In a scrollable list, pressing Begin moves the
horizontal scroll region so that the leftmost edge of the list is visible, and
pressing End moves the horizontal scroll region so that the rightmost edge of
the list is visible.
[ ]Within a scrollable list, pressing Page Up moves the location cursor to
the item one page up in the list, and pressing Page Down moves the location
cursor to the item one page down in the list. In a scrollable list, pressing
Page Left (or Ctrl Page Up) scrolls the list one page to the left, and
pressing Page Right (or Ctrl Page Down) scrolls the list one page to the
right.
[ ]Within a list component, clicking the SELECT button selects the item that
was double-clicked and then initiates any default action for the window.
[ ]If your application uses option buttons, make the label for the button the
last selection made from the option button.
[ ]When the user presses the SELECT button or the MENU button on an option
button, post the associated option menu.
[ ]When the user releases the SELECT button or the MENU button within the
same option button that the press occurred in, post the associated option menu
if it was not posted at the time of the press. When the user releases the
SELECT button or the MENU button outside of the option button, unpost the
associated option menu.
[ ]When the user presses Select or Spacebar in an option button, post the
associated option menu.
[ ]If your application uses paned windows, they should be composed of any
number of groups of components, called panes, each separated by a sash and a
separator. Group the panes, sashes, and separators linearly, either
horizontally or vertically. A sash is the handle on a separator between two
panes that is used to adjust the position of the separator.
[ ]The ^, V, >, and < directional keys navigate
among components in a panel.
A panel group organizes a collection of basic controls in a horizontal,
vertical, or two-dimensional layout. The directional keys are used to navigate
among the controls.
[ ]When the user presses the SELECT button in a push button, arm the push
button. When the user releases the SELECT button in the same push button where
the press occurred, disarm and activate the push button. When the user
releases the SELECT button outside the push button, disarm but do not
deactivate the push button.
[ ]When the user presses Enter or Return in a push button that is in a window
with a default action, activate the push button. When the user presses Enter
or Return in a push button in a menu, activate the push button and unpost the
menu.
[ ]When the user presses Select or Spacebar in a push button, activate the
push button is activated. If the push button is in a menu, unpost the menu.
[ ]If your application uses radio buttons, graphically indicate each
button's state.
[ ]When the user presses the SELECT button in a radio button, the radio
button is armed. If the radio button was previously unset, show it in the set
state.
[ ]When the user releases the SELECT button in the same radio button where
the press occurred, and the radio button was previously unset, set it and
unset any other radio button in the same panel that was previously set. Disarm
the radio button and, if the radio button is in a menu, unpost the menu.
[ ]When the user presses Enter or Return in a radio button, if the radio
button is in a window with a default action, activate the default action. If
the radio button is in a menu:
If the radio button was previously unset, set it and unset any other radio
button in the same panel that was previously set.
Disarm the radio button and the unpost menu.
[ ]When the user presses Select or Spacebar in a radio button, if the radio
button was previously unset, set it and unset any other radio button in the
same panel that was previously set. Disarm the radio button and, if the radio
button is in a menu, unpost the menu.
[ ]Within a paned window, a sash adjusts the position of a separator, which
adjusts the sizes of the panes next to it. As a sash is moved, make the pane
in the direction of the sash movement get smaller and the opposite pane get
larger by an equal amount.
[ ]Within a sash, pressing the SELECT button or the TRANSFER button and
moving the pointer causes the sash to track the movement of the pointer. In a
vertically oriented paned window, the sash tracks the vertical position of the
pointer. In a horizontally oriented paned window, the pane tracks the
horizontal position of the pointer.
[ ]Pressing ^ or V (for a sash that can move vertically) and
< or > (for a sash that can move horizontally) moves the sash
one increment in the specified direction.
[ ]Pressing Ctrl ^ or Ctrl V (for a sash that can move
vertically) and Ctrl < or Ctrl > (for a sash that can move
horizontally) moves the sash one large increment in the specified direction.
[ ]If a scale has arrow buttons, pressing the SELECT button on an arrow
button moves the slider one increment in the direction of the side of the
slider on which the button was pressed and autorepeats until the button is
released.
[ ]In a scale trough, if the scale has tick marks, pressing the SELECT button
moves the slider one major tick mark in the direction of the side of the
slider on which the trough was pressed and autorepeats until the button is
released. If the scale does not have tick marks, pressing the SELECT button in
the trough moves the slider one large increment in the direction of the side
of the slider on which the trough was pressed and autorepeats until the button
is released.
[ ]Within a scale slider, pressing the SELECT button and moving the pointer
causes the slider to track the position of the pointer. In a vertical scale,
the slider tracks the vertical position of the pointer. In a horizontal scale,
the slider tracks the horizontal position of the pointer.
[ ]Within a scale slider or trough, pressing the TRANSFER button and moving
the pointer positions the slider to the point of the button press and then
causes the slider to track the position of the pointer. In a vertical scale,
the slider tracks the vertical position of the pointer. In a horizontal scale,
the slider tracks the horizontal position of the pointer.
[ ]If a mouse-based sliding action is in progress, pressing Cancel cancels
the sliding action and returns the slider to its position prior to the start
of the sliding operation.
[ ]In a vertical scale, pressing ^ or V moves the slider one
increment in the specified direction. In a horizontal scale, pressing >
or < moves the slider one increment in the specified direction.
[ ]In a vertical scale, pressing Ctrl ^ or Ctrl V moves the
slider one large increment in the specified direction. In a horizontal scale,
pressing Ctrl < or Ctrl > moves the slider one large increment
in the specified direction.
[ ]Pressing Begin or Ctrl Begin moves the slider to its minimum value.
Pressing End or Ctrl End moves the slider to its maximum value.
[ ]Within a scroll bar, pressing the SELECT button in an arrow button moves
the slider one increment in the direction of the side of the slider on which
the button was pressed and autorepeats until the button is released.
[ ]In the trough of a scroll bar, pressing the SELECT button moves the slider
one page in the direction of the side of the slider on which the trough was
pressed and autorepeats until the button is released.
[ ]Within a scroll bar slider, pressing the SELECT button and moving the
pointer causes the slider to track the position of the pointer. In a vertical
scroll bar, the slider tracks the vertical position of the pointer. In a
horizontal scroll bar, the slider tracks the horizontal position of the
pointer.
[ ]Within a scroll bar slider or trough, pressing the TRANSFER button and
moving the pointer positions the slider to the point of the button press and
then causes the slider to track the position of the pointer. In a vertical
scroll bar, the slider tracks the vertical position of the pointer. In a
horizontal scroll bar, the slider tracks the horizontal position of the
pointer.
[ ]If a mouse-based scrolling action is in progress, pressing the Cancel key
cancels the scrolling action and returns the slider to its position prior to
the start of the scrolling operation.
[ ]In a vertical scroll bar, pressing ^ or V moves the slider
one increment in the specified direction. In a horizontal scroll bar, pressing
< or > moves the slider one increment in the specified
direction.
[ ]In a vertical scroll bar, pressing Ctrl ^ or Ctrl V moves
the slider one large increment in the specified direction. Pressing Ctrl
< or Ctrl > moves the slider one large increment in the
specified direction.
[ ]Pressing Page Up or Page Down moves the slider in a vertical scroll bar
one page in the specified direction. Pressing Page Left (or Ctrl Page Up) or
Page Right (or Ctrl Page Down) moves the slider in a horizontal scroll bar one
page in the specified direction.
[ ]Pressing Begin or Ctrl Begin moves the slider to the minimum value.
Pressing End or Ctrl End moves the slider to the maximum value.
[ ]If your application uses a selection box, include at least a text
component for the selected alternative and a list component above the text
component for presenting alternatives. Use either the single selection or
browse selection model. Selecting an element from the list should place the
selected element in the text component.
[ ]Make the list navigation actions ^, V Ctrl Begin, and Ctrl
End available from the text component so the user can move the cursored
element within the list and thus change the contents of the text.
[ ]Present the items as a ring of items that wrap. For example, if a user is
at the largest number and presses the up arrow, display the smallest number
and vice versa so that the user can spin through all the items by pressing the
same arrow.
[ ]Move through the items in a spin box as shown in Table 3.
Table 3. Navigation in a Spin Box
Movement |
Keys |
Example |
Toward the beginning of the list |
<, V |
Chronology: If Tuesday is displayed, move to Monday when the user
presses < or V . |
|
|
Magnitude: If 15 is displayed, move to 14 when the user presses
< or V . |
Toward the end of the list |
>, ^ |
Chronology: If Tuesday is displayed, move to Wednesday when the
user presses > or ^ . |
|
|
Magnitude: If 15 is displayed, move to 16 when the user presses
> or ^ . |
[ ]In a multiline text component, pressing ^ moves the location cursor
up one line and pressing V moves the location cursor down one line. In
a single-line text component, pressing ^ navigates upward to the
previous component and pressing V navigates downward to the next
component, if the text component is designed to act like a basic control.
[ ]Pressing < moves the location cursor left one character and
pressing > moves the location cursor right one character.
[ ]In a text component generally used to hold multiple words, pressing Ctrl
> moves the location cursor to the right by a word and pressing Ctrl
< moves the location cursor to the left by a word.
[ ]In a text component generally used to hold multiple words, pressing Begin
moves the location cursor to the beginning of the line and pressing End moves
the location cursor to the end of the line.
[ ]In a multiline text component, pressing Ctrl Begin moves the location
cursor to the beginning of the file and pressing Ctrl End moves the location
cursor to the end of the file.
[ ]Pressing Spacebar or Shift Spacebar inserts a space in a text component.
Modifying these keys with Ctrl invokes the normal selection function.
[ ]Pressing Return in a multiline text component inserts a carriage return.
Pressing Enter or Ctrl Return invokes the default action.
[ ]In a multiline text component, Tab is used for tabbing. In a single-line
text component, Tab is used either for tabbing or to move to the next field.
[ ]If a text component supports replace mode, insert toggles between insert
mode and replace mode.
By default, the component should start in insert mode, where the location
cursor is between two characters. In insert mode, typing a character inserts
the character at the position of the location cursor.
In replace mode, place the location cursor on a character. Typing a
character replaces the current character with the newly entered character and
moves the location cursor to the next character, selecting it.
[ ]Double-clicking the SELECT button selects text a word at a time.
[ ]A gauge is a display-only device and should have no user interactions. The
appearance of a gauge is similar to a scale, but the gauge lacks a scale
slider.
[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]