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


Direct Manipulation

Reference

Description

Direct manipulation is the use of the pointer and a pointing device (such as the mouse) as a metaphorical extension of a hand (for example, as a handheld tool) to point to and manipulate elements that represent objects or to change the state of the application.

When to Use

Recommended
Support direct manipulation for all objects and for all elements that the user can act on or that represent an application state that the user can change.

Required
Support direct manipulation of the objects or state represented by the element directly under the pointer or, if the pointer is within the area of a selection, the selected elements.

Guidelines

Required
Initiate a direct manipulation operation when the user presses a pointer button on an element.

Required
Do not change the active window while a direct manipulation operation is in progress.

Required
While a direct manipulation operation is in progress, if the action to be performed on termination changes as the pointer is moved or as the state of the keyboard changes, provide appropriate feedback to the user so that the user knows what action will be performed.

Required
If a direct manipulation operation requires that buttons be pressed while the operation is in progress, terminate the direct manipulation operation. Alternatively, change its mode when the user releases all pointer buttons and does not press any more buttons or keys within a time period specified by the operating environment.

Required
If a direct manipulation operation does not require that any button be pressed while the operation is in progress, allow the user to terminate the direct manipulation operation. Alternatively, change its mode by pressing shortcut keys or by clicking on some combination of pointer buttons.

Required

When the user presses Cancel or Esc while a direct manipulation operation is in progress, cancel the direct manipulation operation.

Recommended
Do not perform any action associated with the operation if the user performs a direct manipulation operation by pressing one or more pointer buttons, moves the pointer but returns it to its starting location, and then releases the buttons, and if there was no change in mode during the motion.

Recommended
Display a Help window when the user presses Help while a direct manipulation operation is in progress. The Help window should provide help specific to the operation, the application state, and the pointer position. Include information describing what would happen if various inputs were received at that point and how and why the operation could succeed or fail.

Recommended
If you provide a Help window when the user requests Help during a direct manipulation operation, make it an application modal window and do not accept any input until all pointer buttons or keys that are still pressed are released.

Recommended
Support the following choices in a Help window displayed during a direct manipulation operation:

  1. Cancel, to terminate the direct manipulation operation.

  2. Choices that provide more help.

  3. Choices to complete the direct manipulation operation in various ways. For instance, if help is requested while scrolling, the help dialog could provide choices to scroll to the beginning of the viewed object, the end of the viewed object, or to the position just before or after the initially displayed view.

  4. Resume, to resume the direct manipulation operation, but only if the direct manipulation operation does not require that any pointer button be pressed while the operation is in progress.

  5. Optional
    Display help information, but not in a secondary window, when the user presses Help and continues to press any other pointer buttons or keys that were pressed. Remove the help information when the user releases the Help key.

    Essential Related Topics

    For more information, see the Cancel (Choice), Copy To (Dialog), Drag-and-Drop Transfer, Emphasis (Cue), Help (Menu/Action Choice), Move To (Dialog Choice), Pointer, and Window Menu reference pages.

    Supplemental Related Topics

    For more information, see the Data Transfer, Keyboard (Device), and Mouse (Device) reference pages.


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