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.)
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.
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 |
|_____________________________|