This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

Configuration

Configuration allows users to modify the behaviour and appearance of their software.

Tags

settings, preferences, customisation, menus, assistants

Status

Experimental: if you use this pattern, you may have to remove or replace it in a future release of your software to remain consistent with other GNOME applications.

When to Use

'using preferences as a band-aid is the root of much UI evil.'

Havoc Pennington

As far as possible, applications should be designed in order to not require manual configuration. Generally, a well-designed interface does not require configuration and will operate effectively with no modification of preferences for both different use cases and users. That said, configuration options can be presented for a number of different reasons:

Description

Configuration options can be provided via a number of kinds of interface components:

Menu screenshot

Menus can contain check boxes and radio buttons for configuration options.

Toolbars

Toolbar screenshot

Configuration options can be provided via toggle buttons and combo boxes in toolbars.

Preferences windows

Preference window screenshot

Configuration tools

Eg: toolbar editors

Assistants

See Assistants.

Guidelines

Preferences Windows

Instant Apply

Update values or settings immediately to reflect the changes made in the window. This is known as "instant apply". Do not make the user press an OK or Apply button to make the changes happen, unless either:

If either these conditions affect only a few of the controls in your window, arrange those controls together into one or more groups, each with its own Apply button. Leave the rest of the controls as instant apply. Guidelines

Explicit Apply

If most of the controls in your window are not suitable for instant apply, consider making the whole window "explicit apply". An explicit apply window has these three buttons in its button box, plus an optional Help button:

Current Usage

Evince provides an excellent example of minimal configuration options.

See Also

Assistants

Mutually Exclusive Options


CategoryUsability


2024-10-23 11:03