Common Desktop Environment: Style Guide and Certification Checklist

Expandable Windows

 

n/a 

 

 

Recommended 

fn: 

The primary pane of the dialog box or window should contain all of the controls needed to complete the task. This should include all critical and frequently used functionality. 

Recommended 

fo: 

It is assumed that infrequently used features are placed in the secondary pane. The core functionality of the application should not depend on any controls placed in secondary panes. 

Required 

fp: 

Command buttons are aligned along the bottom of the dialog box. When the window is expanded to show a secondary pane, then buttons are moved to the bottom of the secondary pane. See Chapter 6, Application Design Principles for information about layout of action buttons in dialog boxes.

Recommended 

fq: 

If important controls must be placed in the secondary pane, the application can specify that the window in question should be displayed in its expanded state by default. Users should still be able to shrink the window by pressing the Contract button.

Recommended 

fr: 

The secondary pane should expand in the direction most consistent with users' expectations, the reading pattern of the language in which it will be displayed, and the content of the information displayed. 

Recommended 

fs: 

If possible, the panes should have the same default width. 

Required 

ft: 

A separator should be used to separate the primary pane from the secondary pane. 

The user needs to have clear visual feedback as to which elements are in the primary and which in the secondary panes of the expandable window.  

Required 

fu: 

If a window is resizable, any sizing changes should be allocated to the pane containing scrolling lists or text fields whose displayed length is less than their stored length. If both panes contain scrollable controls, size changes should be distributed evenly between the two panes. If neither pane contains scrollable controls, the window should not be resizable. 

Required 

fv: 

The expandable window should have one button that changes its label based on the state of the window. 

Required 

fw: 

The expand button should have two labels that reflect the two states of the expandable window accurately. The current label should indicate to the user what will happen if the user clicks the button. 

Examples of possible labels are Basic and Options, Expand and Contract, and More and Less.  

Optional 

fx: 

The expand button may contain a graphic in addition to the label. This graphic should indicate the direction in which the window will expand or contract. 

Recommended 

fy: 

The button should appear in the lower left-hand corner of the window or dialog box for expansion in the vertical direction and in the lower-right hand corner for expansion in the horizontal direction. 

Required 

fz: 

If the window or dialog box contains a scrolling list positioned to the far right side of the pane, do not align the drawn button with the scroll bar. For example, the button should be aligned with the list, not the scroll bar. 

Required 

ga: 

Applications must remember the state of each window or dialog box (expanded or not expanded) independently (not collectively). The state should be changed only by the user and should always be preserved until explicitly altered by the user. 

Recommended 

gb: 

Applications should remember the state of each expandable window or dialog box across sessions, so that users don't have to manually configure the expandable windows each time the application is run. 

If appropriate, applications can provide a mechanism, as an option, to allow users to set the state of an expandable window globally for the application. This would be part of the application's Options.