Designing Interfaces: Patterns for Effective Interaction Design
|
Excerpts from the O'Reilly book, public discussion, and new patterns.
Buy the book
Two-Panel Selector
Mac Mail
|
What: |
Put two side-by-side panels on the interface. In the first, show
a set of items that the user can select at will; in the other, show
the content of the selected item.
|
Use when: |
You're presenting a list of objects, categories, or even actions.
Messages in a mailbox, sections of a web site, songs or images in
a library, database records, files -- all are good candidates.
Each item has interesting content associated with it, such as the
text of an email message or details about a file's size or date.
You want the user to see the overall structure of the list, but
you also want the user to walk through the items at his own pace,
in an order of his choosing.
Physically, the display you work with is large enough to show two
separate panels at once. Very small cell phone displays cannot
cope with this pattern, but a screen such as the Blackberry's can.
|
Why: |
The Two-Panel Selector is a learned convention, but an extremely
common and powerful one. People quickly learn that they're supposed
to select an item in one panel to see its contents in the other.
They might learn it from their email clients, from Windows Explorer,
or from web sites; whatever the case, they apply the concept to
other applications that look similar.
When both panels are visible side-by-side, users can quickly shift
their attention back and forth, looking now at the overall structure
of the list ("How many more unread email messages do I have?"), and
now at an object's details ("What does this email say?"). This tight
integration has several advantages over other physical structures, such
as two separate windows or One-Window
Drilldown:
- It reduces physical effort. The user's eyes don't have to
travel a long distance between the panels, and he can change
the selection with a single mouse click or key press, rather
than first navigating between windows or screens (which can
take an extra mouse click).
- It reduces visual cognitive load. When a window pops to the
top, or when a page's contents are completely changed (as
happens with One-Window
Drilldown), the user suddenly has to pay more attention
to what he's now looking at; when the window stays mostly
stable, as in a Two-Panel Selector, the user can focus on
the smaller area that did change.
- It reduces the user's memory burden. Think about the email
example again: when the user looks at just the text of an
email message, there's nothing onscreen to remind him where
that message is in the context of his inbox. If he wants
to know, he has to remember or navigate back to the list.
But if the list is already onscreen, he merely has to look,
not remember. The list thus serves as a "You are here"
signpost.
|
How: |
Place the selectable list on the top or left panel, and the details
panel below it or to its right. This takes advantage of the visual
flow that most users who read left-to-right languages expect. (Try
reversing it for right-to-left language speakers.)
When the user selects an item, immediately show its contents or
details in the second panel. Selection should be done with a single
click. But while you're at it, give the user a way to change
selection from the keyboard, particularly with the arrow keys --
this reduces both the physical effort and the time required for
browsing, and contributes to keyboard-only usability.
Make the selected item visually obvious. Most GUI toolkits have a
particular way of showing selection, e.g. reversing the foreground
and background of the selected list item. If that doesn't look good,
or if you're not using a GUI toolkit with this feature, try to make
the selected item a different color and brightness than the unselected
ones -- that helps it stand out.
What should the selectable list look like? It depends -- on the
inherent structure of the content, or perhaps on the task to be
done. For instance, most filesystem viewers show the directory
hierarchy, since that's how filesystems are structured. Animation
and video-editing software use interactive timelines. A GUI builder
may simply use the layout canvas itself; selected objects on it then
show their properties in a Property Sheet (Chapter 4) next to
the canvas.
Consider using one of these models:
- Linear, usually sorted
- 2D tables, also sorted, which often let the user sort via
column headers or filter according to various criteria
- A hierarchy that groups items into categories (and possibly
subcategories)
- A hierarchy that reveals relationships: parent/child, etc.
- Spatial organizations, such as maps, charts, or desktop-like
areas in which users can place things where they want
You can also use information-presentation patterns such as
Sortable Table and
Tree-Table in Two-Panel Selectors, along
with simpler components such as lists and trees.
Card Stack closely relates to Two-Panel
Selector; so does Overview Plus
Detail.
When the select-and-show concept extends through multiple panels,
to facilitate navigation through a hierarchical information
architecture, you get the
Cascading Lists pattern.
|
Examples: |
From Windows Explorer
The Windows Explorer is probably one of the most familiar uses of
Two-Panel Selector. Its content is organized hierarchically, using
a selectable tree; in contrast, the Mac Mail example shown above
uses a selectable table, which has a strictly linear organization.
In both UIs, the dark backgrounds indicate the selected item.
|
A Blackberry
Nortel's Mobile Time Entry application is a rare example of Two-Panel
Selector use in a handheld device. The Blackberry screen offers just
enough space for two usefully sized panes; when you select an item in
the top pane, its contents appear on the bottom pane. (Both are
scrollable with the Blackberry's scroll wheel, barely visible on the
right side.)
In practice, this interface was quite effective. The lawyers who used
this time-billing application could easily find items that they wanted
-- the two views together give enough context, but also enough details,
to identify items quickly and accurately.
|
|
|