Common Desktop Environment: Style Guide and Certification Checklist

Controls, Groups, and Models

CheckButton

 

n/a 

 

 

Required 

7-1: 

Your application uses check buttons to select settings that are not mutually exclusive. A check button graphically indicates its state with the presence or absence of a check mark. 

A check button is used to select settings that are not mutually exclusive. The user needs to know whether the button is set or not. 

Required 

7-2: 

When the user presses BSelect in a check button, the check button is armed. If the check button was previously unset, it is shown in the set state. If the check button was previously set, it is shown in the unset state.  

BSelect Press arms a check button and shows the result of activating it by releasing BSelect. 

Required 

7-3: 

When the user releases BSelect in the same check button in which the press occurred: 

  • If the check button was previously unset, it is set.

  • If the check button was previously set, it is unset.

In all cases the check button is disarmed, and, if the check button is in a menu, the menu is unposted. 

BSelect Release activates a check button. 

Required 

7-4: 

When the user presses the Enter or Return key in a check button, if the check button is in a window with a default action, the default action is activated. If the check button is in a menu: 

  • If the check button was previously unset, it is set.

  • If the check button was previously set, it is unset.

In both cases, the check button is disarmed, and the menu is unposted.  

The Enter and Return keys perform the default action of a window or activate a check button in a menu. 

Required 

7-5: 

When the user presses the Select key or Spacebar in a check button, if the check button was previously unset, it is set. If the check button was previously set, it is unset. In both cases, the check button is disarmed, and, if the check button is in a menu, the menu is unposted.  

The Select key and Spacebar activate a check button. 

ComboBox

 

n/a 

 

 

Required 

gw: 

In a list that can be scrolled, such as a scrollable list box, do not allow the cursor to wrap. 

Required 

gx: 

Provide vertical scroll bars when some of the data is not visible in the combo box. 

Recommended 

gy: 

Provide horizontal scroll bars when elements are wider than the list box. 

Recommended 

gz: 

Display the elements in an order that is meaningful to the user. 

Recommended 

ha: 

Display an initial value from the list in the text-entry field. Display selected emphasis on the initial value so that typed text will replace the value. 

Recommended 

hb: 

Make the combination box large enough to display a minimum of six list items at a time. 

Recommended 

hc: 

When a user increases the size of the window in which the combo box is displayed, increase the number of items displayed in the combo box. 

Recommended 

hd: 

When a user decreases the size of the window in which the combo box is displayed, decrease the number of items displayed in the combo box. As a minimum, reduce the combo box to the text-entry field and a list box with one entry displayed. If the window is sized so that two list items cannot be displayed, clip the combo box. 

CommandBox

 

n/a 

 

 

Required 

7-6: 

If your application uses a command box, it is composed of a text component with a command-line prompt for text input and a list component for a command history area. The list uses either the single selection or browse selection model.  

This specification ensures the consistent appearance and operation of a command box across applications. 

Recommended 

7-7: 

When an element of a command box list is selected, its contents are placed in the text area.  

This specification provides a convenient way of selecting a previously entered command. 

Required 

7-8: 

The list navigation actions Up Arrow, Down Arrow, Control+Begin, and Control+End are available from the text component for moving the cursored element within the list and thus changing the contents of the text.  

These actions provide a convenient way to choose a command from the list while focus remains in the text component. 

Required 

7-9: 

The default action of the command box passes the command in the text area to the application for execution and adds the command to the end of the list. 

Maintaining a history of commands provides a convenient means of entering often-used commands. 

FileSelectionBox

 

n/a 

 

 

Required 

7-10: 

If your application uses a file selection dialog box, it contains the following components:  

  • A directory text component showing 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 allowing 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), that label should be used. Activating the command button carries out the corresponding action and dismisses the file selection box.

Recommended 

he: 

When the file selection box is used to specify an existing file (for example, to open a document), the command button is normally labeled Open and it should be the default action. 

Recommended 

hf: 

If the Update button is activated while a directory is selected in the contents list, the directory is opened, its contents are displayed in the contents list, and the directory text is updated. 

Required 

hg: 

If the Open button is activated while the appropriate file is selected in the contents list, the file is utilized by the application and the file selection box is dismissed.  

Recommended 

hh: 

When the file selection dialog box is used to choose an existing directory (for example, to install a set of files into the chosen directory) or to specify a new directory, the command button should be given an appropriate label, such as Install, Choose, Create, or OK. If this button is activated while the appropriate directory is selected in the contents list, the directory is utilized by the application and the file selection box is dismissed.  

Required 

hi: 

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 opens the directory. This Update button is the default action. 

Required 

hj: 

When the file selection dialog box is used to specify a new file name (for example, a Save As dialog box), the command button is normally labeled Save and is the default action. This specification ensures the uniform appearance of a file selection box across applications. 

Optional 

hk: 

When the file selection dialog box is used to choose an existing file, files are shown in the contents list but they are all disabled. Double-clicking BSelect on a disabled file name has no effect. 

Required 

hl: 

The normal text navigation and editing functions are 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. 

 

7-11: 

This item has been deleted.  

Required 

7-12: 

Double-clicking BSelect on an item in the contents list selects that item and activates the default action. In all cases, double-clicking BSelect on a directory in the contents list opens that directory and displays its contents in the contents list (the default action is Open). 

  • When the file selection box is used to choose an existing file, double-clicking BSelect on an appropriate file in the contents list chooses that file and dismisses 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.

Required 

7-13: 

The normal text navigation and editing functions are available in the text components for moving the cursor within each text component and changing the contents of the text. 

 

7-14: 

This item has been deleted. 

Optional 

7-15: 

Your application allows the user to select a file by scrolling through the list of file names and selecting the desired file or by entering the file name directly into the file selection text component. Selecting a file from the list causes that file name to appear in the file selection text area. 

This method of selecting a file needs to be consistent across applications. 

Required 

7-16: 

Your application makes use of the 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 BSelect on an appropriate file in the contents list.

  • The user presses Return or Enter while the file name text component has the keyboard focus and contains an appropriate item.

Required 

7-17: 

The file selection box displays 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. The contents list is updated each time the contents of the directory changes. 

This specification ensures the consistent operation of a directory and file search in a file selection box. 

Recommended 

hm: 

If the user has opened the application without supplying a file name argument, the Open dialog box should use the user's home directory as the default directory.  

An exception to this rule might be made if a clearly more useful directory can be identified; for example, the icon editor might default to HomeDirectory/.dt/icons. For Applications that allow editing, never default to a directory in which the user does not have read and write permission, such as /usr/dt/bin.

Required 

hn: 

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. 

Optional 

ho: 

When using the file selection dialog box in Save As capacity, provide a default name of Untitled, place the location cursor in the file name field and highlight the file name text to create a "delete pending type-in" mode. If the current directory already has a file of that name, create a name Untitled2, and so forth. 

Optional 

hp: 

When using the file selection dialog box in a Save As capacity, add a file name extension if the application supports file typing by extension, and make this extension visible in the file name field. Do not highlight the extension to create a "delete pending type-in" mode, but allow users to modify the extension or delete it explicitly. 

Optional 

hq: 

The file selection dialog box should come up in a directory that makes sense for the task. For example, when saving a new file from an editor, the file selection box should come up in the user's home directory. If the user navigates to some other directory within the file selection box, the application should remember that directory the next time it is brought up. 

Optional 

hr: 

Users should never be allowed to overwrite an existing file through the file selection box without a warning dialog box prompt. 

Optional 

hs: 

Keyboard focus should be placed in the file name field each time users bring up a file selection dialog box. 

Optional 

ht: 

Directory and file name lists should be presented alphabetically, case insensitive. The first item on the directory list should be the parent directory and it should be labeled "..". 

Optional 

hu: 

Labels should be clear. In the English language, use the following labels for the file selection dialog box fields and lists: 

Table 10-4 File Selection Dialog Box Labels

Component  

Label 

Directory text field 

Enter Path or Folder Name: 

Filter text Field 

Filter: 

Directory list 

Folders: 

Contents list 

Files: 

File text field 

Enter File Name:* 

 

n/a 

 

 

Optional 

hv: 

Optionally, application developers can make this label more instructive and specific, such as Enter File to Open for Open dialog boxes.  

These labels should be the default labels. If they are not set by default, you need to set them through resources in your application's app-defaults file. 

List

 

n/a 

 

 

Required 

7-18: 

Within a list component, your application uses the Up Arrow key to move the location cursor to the previous item in the list and the Down Arrow key to move the location cursor to the next item in the list. In a scrollable list, the Left Arrow key scrolls the list one character to the left, and the Right Arrow key scrolls the list one character to the right.  

The arrow keys provide a consistent means of moving the location cursor within a list component. 

Required 

7-19: 

Within a list component, your application uses Control+Begin to move the location cursor to the first item in the list and Control+End to move the location cursor to the last item in the list. In a scrollable list, the Begin key moves the horizontal scroll region so that the leftmost edge of the list is visible, and the End key moves the horizontal scroll region so that the rightmost edge of the list is visible.  

These keys offer a convenient mechanism for moving the location cursor quickly through a list. 

Required 

7-20: 

Within a scrollable list, the Page Up key moves the location cursor to the item one page up in the list, and the Page Down key moves the location cursor to the item one page down in the list. In a scrollable list, the Page Left key (or Control+Page Up) scrolls the list one page to the left, and the Page Right key (or Control+Page Down) scrolls the list one page to the right.  

These keys offer a convenient mechanism for paging through a list. 

Required 

7-21: 

Within a list component, your application uses BSelect Click 2 to select the item that was double-clicked and then initiate any default action for the window.  

Double-clicking using BSelect provides a consistent way of activating the default action for a list. 

Option Button

 

n/a 

 

 

Required 

7-22: 

If your application uses option buttons, the label for the button is the last selection made from the option button.  

An option button is used to post an option menu which allows the user to select from a number of choices. The label of an option button needs to display the most recent selection from the associated option menu. 

Required 

7-23: 

BSelect Press is a consistent way of activating an option button. 

Required 

7-24: 

When the user releases BSelect or BMenu within the same option button that the press occurred in, the associated option menu is posted if it was not posted at the time of the press. When the user releases BSelect or BMenu outside of the option button, the associated option menu is unposted.  

BSelect Release or BMenu Release posts or unposts an option menu, depending on whether the release occurs inside the option button and whether the option menu was posted at the time of the press. 

Required 

7-24: 

When the user presses the Select key or Spacebar in an option button, the associated option menu is posted. 

The Select key or Spacebar posts an option menu from the keyboard. 

Paned Window

 

n/a 

 

 

Required 

7-26: 

If your application uses paned windows, they are composed of any number of groups of components, called panes, each separated by a sash and a separator. The panes, sashes, and separators are grouped 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. 

This specification ensures the consistent appearance of a paned window across applications. 

Panel

 

n/a 

 

 

Required 

7-27: 

The Down Arrow, Left Arrow, Right Arrow, and Up Arrow 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. 

Push Button

 

n/a 

 

 

Required 

7-28: 

When the user presses BSelect in a push button, the push button is armed. When the user releases BSelect in the same push button that the press occurred in, the push button is disarmed and activated. When the user releases BSelect outside the push button, the push button is disarmed but not activated.  

BSelect provides a consistent means of activating a push button. 

Required 

7-29: 

When the user presses the Enter or Return key in a push button that is in a window with a default action, the push button is activated. When the user presses the Enter or Return key in a push button in a menu, the push button is activated and the menu is unposted.  

The Enter and Return keys activate a dialog box or a push button in a menu. 

Required 

7-30: 

When the user presses the Select key or Spacebar in a push button, the push button is activated. If the push button is in a menu, the menu is unposted.  

The Select key and Spacebar activate a push button.  

Radio Button

 

n/a 

 

 

Required 

7-31: 

If your application uses radio buttons, each button graphically indicates its state.  

Radio buttons are used to represent a panel of mutually exclusive selections. The user needs to know which button in the panel is set. 

Required 

7-32: 

When the user presses BSelect in a radio button, the radio button is armed. If the radio button was previously unset, it is shown in the set state.  

BSelect Press arms a radio button and shows the result of activating it by releasing BSelect. 

Required 

7-33: 

When the user releases BSelect in the same radio button that the press occurred in and the radio button was previously unset, it is set, and any other radio button in the same panel that was previously set is unset. The radio button is disarmed, and, if the radio button is in a menu, the menu is unposted.  

BSelect Release activates a radio button. 

Required 

7-34: 

When the user presses the Enter or Return key in a radio button, if the radio button is in a window with a default action, the default action is activated. If the radio button is in a menu: 

  • If the radio button was previously unset, it is set, and any other radio button in the same panel that was previously set is unset.

  • The radio button is disarmed, and the menu is unposted.

The Enter and Return keys perform the default action of a window or activate a radio button in a menu. 

Required 

7-35: 

When the user presses the Select key or Spacebar in a radio button, if the radio button was previously unset, it is set, and any other radio button in the same panel that was previously set is unset. The radio button is disarmed, and, if the radio button is in a menu, the menu is unposted. 

The Select key and Spacebar activate a radio button. 

Sash

 

n/a 

 

 

Required 

7-36: 

Within a paned window, your application uses a sash to adjust the position of a separator, which adjusts the sizes of the panes next to it. As a sash is moved, the pane in the direction of the sash movement gets smaller and the opposite pane gets larger by an equal amount. 

This specification results in the uniform operation of a paned window across applications. 

Required 

7-37: 

Within a sash, BSelect Motion or BTransfer Motion 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. 

BSelect, mouse button 1, and BTransfer, mouse button 2, provide a consistent means of moving a sash in a paned window using the mouse. 

Required 

7-38: 

The Up Arrow and Down Arrow keys (for a sash that can move vertically) and the Left Arrow and Right Arrow keys (for a sash that can move horizontally) move the sash one increment in the specified direction.  

The arrow keys offer a uniform means of moving a sash in a paned window. 

Required 

7-39: 

Control+Up Arrow and Control+Down Arrow (for a sash that can move vertically) and Control+Left Arrow and Control+Right Arrow (for a sash that can move horizontally) move the sash one large increment in the specified direction.  

These keys provide a convenient way of moving a sash quickly in a paned window. 

Scale

 

n/a 

 

 

Required 

7-40: 

If a scale has arrow buttons, your application uses BSelect Press in an arrow button to move 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.  

BSelect Press provides a consistent means of adjusting a scale component using the mouse. 

Required 

7-41: 

In a scale trough, if the scale has tick marks, BSelect Press 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, BSelect Press 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.  

BSelect Press provides a consistent means of adjusting a scale component using the mouse. 

Required 

7-42: 

Within a scale slider, BSelect Motion 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.  

BSelect Motion offers a convenient way to adjust a scale component precisely using the mouse. 

Required 

7-43: 

Within a scale slider or trough, BTransfer Motion 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.  

BTransfer Motion provides another convenient way to adjust a scale component precisely using the mouse. 

Required 

7-44: 

If a mouse-based sliding action is in progress, the Cancel key cancels the sliding action and returns the slider to its position prior to the start of the sliding operation.  

The Cancel key provides a consistent way for the user to cancel a mouse-based sliding action. 

Required 

7-45: 

In a vertical scale, the Up Arrow and Down Arrow keys move the slider one increment in the specified direction. In a horizontal scale, the Left Arrow and Right Arrow keys move the slider one increment in the specified direction.  

The arrow keys provide a uniform way of adjusting the slider in a scale component using the keyboard. 

Required 

7-46: 

In a vertical scale, Control+Up Arrow and Control+Down Arrow move the slider one large increment in the specified direction. In a horizontal scale, Control+Left Arrow and Control+Right Arrow move the slider one large increment in the specified direction.  

These keys provide a convenient way of adjusting the slider in a scale component quickly using the keyboard. 

Required 

7-47: 

Your application uses the Begin key or Control+Begin to move the slider to its minimum value. The End key or Control+End moves the slider to its maximum value.  

These keys provide a convenient mechanism for setting a scale to its minimum or maximum value using the keyboard. 

ScrollBar

 

n/a 

 

 

Required 

7-48: 

Within a scroll bar, your application uses BSelect Press in an arrow button to move 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. 

BSelect Press provides a consistent means of adjusting a scroll bar using the mouse. 

Required 

7-49: 

In the trough of a scroll bar, BSelect Press 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.  

BSelect Press provides a consistent means of adjusting a scroll bar using the mouse. 

Required 

7-50: 

Within a scrollbar slider, BSelect Motion 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.  

BSelect Motion offers a convenient way to adjust a scroll bar precisely using the mouse. 

Required 

7-51: 

Within a scrollbar slider or trough, BTransfer Motion 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.  

BTransfer Motion offers another convenient way to adjust a scroll bar precisely using the mouse. 

Required 

7-52: 

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.  

The Cancel key provides a consistent way for the user to cancel a mouse-based scrolling action. 

Required 

7-53: 

In a vertical scroll bar, the Up Arrow and Down Arrow keys move the slider one increment in the specified direction. In a horizontal scroll bar, the Left Arrow and Right Arrow keys move the slider one increment in the specified direction.  

The arrow keys provide a uniform means of adjusting a scroll bar using the keyboard. 

Required 

7-54: 

In a vertical scroll bar, Control+Up Arrow and Control+Down Arrow move the slider one large increment in the specified direction. Control+Left Arrow and Control+Right Arrow move the slider one large increment in the specified direction.  

These keys provide a convenient way of adjusting a scroll bar quickly using the keyboard. 

Required 

7-55: 

Your application uses the Page Up and Page Down keys to move the slider in a vertical scroll bar one page in the specified direction. The Page Left key (or Control+Page Up) and the Page Right key (or Control+Page Down) move the slider in a horizontal scroll bar one page in the specified direction.  

These keys allow for the convenient movement of the slider in a scroll bar using the keyboard. 

Required 

7-56: 

Your application uses the Begin key or Control+Begin to move the slider to the minimum value. The End key or Control+End moves the slider to the maximum value.  

These keys offer a convenient mechanism for setting a scroll bar to its minimum or maximum value using the keyboard. 

SelectionBox

 

n/a 

 

 

Required 

7-57: 

If your application uses a selection box, it is composed of at least a text component for the selected alternative and a list component above the text component for presenting alternatives. The list uses either the single selection or browse selection model. Selecting an element from the list places the selected element in the text component.  

This specification ensures the consistent appearance and operation of a selection box across applications. 

Required 

7-58: 

The list navigation actions Up Arrow, Down Arrow, Control+Begin, and Control+End are available from the text component for moving the cursored element within the list and thus changing the contents of the text.  

These actions provide a convenient way to choose an element from the list while focus remains in the text component. 

SpinBox

 

n/a 

 

 

Required 

hw: 

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, the smallest number is displayed and vice versa so that the user can spin through all the items by pressing the same arrow. 

Required 

hx: 

Move through the items in a spin box as shown in Table 10-5.

Table 10-5 Navigation in a Spin Box

Movement 

Keys 

Example 

Toward the beginning of the list 

left arrow, down arrow 

Chronological: If Tuesday is displayed, move to Monday when the user presses the left or down arrow. 

Magnitude: If 15 is displayed, move to 14 when the user presses the left or down arrow. 

Toward the end of the list 

right arrow, up arrow 

Chronological: If Tuesday is displayed, move to Wednesday when the user presses the right or up arrow. 

Magnitude: If 15 is displayed, move to 16 when the user presses the right or up arrow. 

 

n/a 

 

 

Recommended 

hy: 

Values can be set using the arrow buttons or through keyboard input. Values should be evaluated immediately upon entry. If a value is entered that is already in the list, scroll to the position of that entry in the list. 

Recommended 

hz: 

If entry of non-listed items is permitted, use the following behavior. When a new value is entered, scroll the list to the position appropriate for the new entry. If the user scrolls off the new entry, scroll to the next appropriate value in the list and the keyboard-entered value is lost. 

Recommended 

ia: 

On entry of an invalid value, an auditory warning and error message should be provided. 

Text

 

n/a 

 

 

Required 

7-59: 

In a multiline text component, the Up Arrow key moves the location cursor up one line, and the Down Arrow key moves the location cursor down one line. In a single-line text component, the Up Arrow key navigates upward to the previous component, and the Down Arrow key navigates downward to the next component, if the text component is designed to act like a basic control.  

The up and down arrow keys provide a uniform means of navigation within text components. 

Required 

7-60 

The Left Arrow key moves the location cursor left one character, and the Right Arrow key moves the location cursor right one character.  

The Left Arrow and Right Arrow keys offer a consistent way of navigating within text components. 

Required 

7-61: 

n a text component used generally to hold multiple words, Control+Right Arrow moves the location cursor to the right by a word, and Control+Left Arrow moves the location cursor to the left by a word.  

Control+Right Arrow and Control+Left Arrow provide a uniform way of navigating by words in a text component. Moving right by a word means that the location cursor is placed before the first character that is not a space, tab, or newline character after the next space, tab, or newline. Moving left by a word means that the location cursor is placed after the first space, tab, or newline character preceding the first previous character that is not a space, tab, or newline. 

Required 

7-62: 

In a text component used generally to hold multiple words, the Begin key moves the location cursor to the beginning of the line, and the End key moves the location cursor to the end of the line.  

These keys allow the user to move quickly to the beginning or end of a line of text in a text component. 

Required 

7-63: 

In a multiline text component, Control+Begin moves the location cursor to the beginning of the file, and Control+End moves the location cursor to the end of the file.  

These keys permit the user to move quickly to the beginning or end of a file in a text component. 

Required 

7-64: 

Your application uses Spacebar or Shift+Spacebar to insert a space in a text component. Modifying these with Control invokes the normal selection function.  

This specification ensures that selection is available from the keyboard in a text component. 

Required 

7-65: 

Return in a multiline text component inserts a carriage return. The Enter key or Control+Return invokes the default action.  

This specification ensures that activation is available from the keyboard in a text component. 

Required 

7-66: 

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.  

Tab is used for tabbing in multiline text. 

Required 

7-67: 

If a text component supports replace mode, insert toggles between insert mode and replace mode.  

By default, the component starts 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, the location cursor is on a character. Typing a character replaces the current character with that newly entered character and moves the location cursor to the next character, selecting it.  

These rules ensure the uniform operation of a text component with a replace mode. 

Required 

7-68: 

Your application uses BSelect Click 2 to select text a word at a time. 

Double-clicking with mouse button 1 provides a convenient mechanism for selecting words in a text component. 

Gauge

 

n/a 

 

 

Required 

ib: 

A gauge is similar to a scale except that a gauge is a display-only device with no user interactions. The appearance of a gauge is similar to a scale, but the gauge lacks a scale slider. 

Optional 

ic: 

Despite being a display-only device, a gauge should get keyboard focus so that the user can access Help or Settings for that control.