tags:

views:

13

answers:

1

I have a GUI which has a couple of checkboxes that control "special" modes of system operation. I want these to always be displayed, and easily edited when the operator intends to edit them, but this condition is infrequent, and most of the time I want the checkboxes to be disabled.

What I'm looking for, is what UI element(s) to use to enable/disable abnormal operation. (so normal operation would leave the checkboxes in a disabled state, abnormal operation would allow user to edit them.)

  • checkbox or pair of buttons: too easy to press
  • menu item: too obscure
  • dialog confirmation box: ("This mode of operation allows __. Are you sure you want to use it?") too annoying, and I want to avoid modal dialog boxes because they block usage of all other UI elements in important situations.

The UI design of physical objects includes some subtle lockouts, e.g. automatic transmissions in a car require you to press the brake to shift into/out of certain gears; lawnmowers have those handles that you have to press during starting/running; childproof pill bottles require you to press down while turning.

I am looking for something simple/intuitive that's easy to use but will avoid inadvertent use. Any ideas? Someone must have thought of this sort of thing in the software world.

+1  A: 

I would follow the "physical object" paradigm of having a 'safety cover' over the actual controls.

In terms of the UI, this would be a checkbox that (and I know you said that you want them always displayed, but..) reveals and enables the special controls.

Disabled:
 _____________________________
| O Enable Dangerous mode     |
|_____________________________|

Enabled:
 _____________________________
| X Enable Dangerous mode     |
|                             |
|    O Dangerous Control One  |
|    O Dangerous Control Two  |
|_____________________________|

Post-Comment:

I guess another important question is, is the interface primarily 'hands on keyboard' or 'mouse'.

If its keyboard, then a keycombo, or, again, taking from other interfaces, have the user type 'enable' or something relevant to the actual controls.

If its primarily a mouse interface, how about a more complex interaction like a "swipe" - where the user has to drag an element a reasonable distance.

Disabled:
 _____________________________
|   Enable Dangerous mode     |
|    _                  _     |
|   |*| -------------> |_|    |
|   off                on     |
|_____________________________|

Enabled:
 _____________________________
|   Enable Dangerous mode     |
|    _                  _     |
|   |_| -------------> |*|    |
|   off                on     |
|                             |
|   O Dangerous Control One   |
|   O Dangerous Control Two   |
|_____________________________|
Edward M Smith
it's a clean design, but too easy to click the "Enable Dangerous mode" checkbox.
Jason S
+1 for some good ideas. thanks!
Jason S
If you like it, please accept it as the answer.
Edward M Smith