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

CDE Window and Session Control

Your application is presented to the user as a series of windows. Some of these windows present the main portion of the application. Others are dynamic, appearing to the user only when needed to accomplish certain tasks. All of these windows should contain menus, border decorations, and behavior styles appropriate to their function. The following sections describe the guidelines for designing your application's windows.

Window Control Guidelines

The fundamental user-visible characteristic of primary windows is that stacking, workspace placement, and minimization can be independent of other primary windows. Secondary window stacking, workspace placement, and minimization must be tied to the associated primary window.

Window Management Choices

You should provide the Close, Move, Lower, and Minimize choices as the minimum set of capabilities in primary windows. Provide Resize and Maximize choices as appropriate. Design your secondary windows so that resizing and maximizing are neither necessary nor appropriate. Most secondary windows should include only the Close, Move, and Lower choices. In extraordinary cases, you may provide the Resize and Maximize choices in a secondary window. Do not provide the Minimize choice in secondary windows (they are minimized with the associated primary window).

Windows that have a Close or Exit choice need to support the window management protocol for Close if there is a window menu. In the case of dialog boxes, the Close item on the window menu corresponds to the Cancel choice or dialog box dismissal with no further action taken.

Workspace Management Guidelines

CDE applications appear in one of several work areas called workspaces. A user may have several workspaces active on the desktop. Your application should behave in certain ways in relation to those workspaces.

For example, a spreadsheet application may have one or more secondary windows open that allow the user to change the properties of data cells in the main window. If the user moves the main window to a different workspace, the secondary properties windows should move with it.

On the other hand, a word processor may have several windows open, where each is used to edit a different document. In this case, when a user moves one of the windows to a different workspace, the other windows should remain where they are.

Session Management Support

When you design a desktop application, consider the following guidelines for session management:

  1. Applications should support Interclient Communications Conventions Manual (ICCCM) mechanisms for session management of their primary windows and key properties.

    The ICCCM defines important relationships and behaviors between applications and the window manager, including protocols for saving and restoring application states across invocations.

  2. Applications should support ICCCM mechanisms for session management of all associated windows (that is, secondary windows that may include help windows).

    Associated windows include multiple primary windows and secondary windows, such as online help windows.

  3. Applications should accept messages from the CDE Session Manager that inform them the user is logging out and should save their state at that time.

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