Interface Guidelines for Custom Panes

Each pane in a printing dialog is a self-contained human interface that enables a user to control the settings for a named set of printing features. This chapter presents guidelines for the design of this interface. The guidelines presented here will help you design an interface that’s effective, visually pleasing, and consistent with other dialog components.

Figure 2-1 illustrates a possible design for a custom pane that presents settings for a watermark printing feature. As you read this chapter, consider how this interface design might be improved.

Figure 2-1  An example of a custom pane
An example of a custom pane

Getting Started

Here are some things to do first, before you begin designing a custom pane.

Clarity

It’s important to present your interface in a simple, direct manner.

Consistency

The interface should look and act in a consistent manner with respect to the dialog in which it appears.

Dependencies

Dependency relationships sometimes exist between two or more printing features. A change in the setting of one feature might cause another feature to become invalid, or it might change the possible choices. Dependencies can exist in an interface whenever it contains two or more controls.

An interface should always provide feedback that indicates where dependencies exist, and prevents the user from making invalid choices.

For example, the Output Options pane in the Print dialog (shown in Figure 2-2) allows you to choose a file format only when Save as File is selected.

Figure 2-2  Output Options pane in the Print dialog
Output Options pane in the Print dialog

Localization

To localize means to adapt a human interface to meet the language, cultural, and other requirements of a specific geopolitical place or region. When localizing text, you localize for a standard language (such as English) or for one or more regional dialects (such as US English and British English).

To localize your human interface, you need to do the following:

  1. Decide which languages and dialects you want to support (this is both a marketing and a technical decision).

  2. Translate the text strings used in your interface into the various languages and dialects.

  3. Create a visual layout of your human interface, showing the length and location of each string with respect to the associated control or other graphic element.

  4. Choose the summary text you will provide when a user displays the Summary pane. Your summary text communicates the titles and current values of the settings in your human interface.

  5. Translate the short strings used in your summary text into the various languages and dialects you support.

  6. If you provide user assistance, you should localize your help text as well.

  7. Configure your software so that the correct layout, summary text, and help text appear in the dialog at runtime.

For more information about localizing human interfaces, see Getting Started with Internationalization.

User Assistance

In Mac OS X, the printing dialogs have built-in user assistance implemented with a round help button in the lower-left corner. When a user clicks this button, the printing system uses Help Viewer to provide general information about the dialog.

You should consider providing additional user assistance for your custom pane. This is particularly important if you are introducing a new printing feature or a new type of control.

Here are a few general suggestions:

Implementation

You can design the interface for your custom pane using Interface Builder, Apple’s powerful interface development tool. Interface Builder is a straightforward and intuitive application that lets you

To learn more about using Interface Builder to design an interface, see Designing the Interface for a Custom Pane.

Further Reading

If you’re new to developing software for Mac OS X, or you want to learn more about the Mac OS X user experience, see http://developer.apple.com/ue/.