Re: [Usability] Using checkbuttons, but needing three states...



On 2 Oct, 2005, at 6:14 PM, Vincent Untz wrote:
...
In GConf, there can be three states for a boolean key: true, false and
unset. Most of the times, we don't care about unset since if the key is
unset, a default value will be used. But with pessulus, that's a
different matter: it can configure a mandatory value for a key. Eg, it
can set the mandatory value of /apps/epiphany/lockdown/disable_history
to TRUE to force the disabling of history of epiphany, to FALSE to force the use of history. And if it sets this key to unset, then the user will be able to choose what he wants.

So the three states are useful. But how can I do this with checkbuttons
in a non-confusing way?

You can't, really. Use three radio buttons if you have the space, or if you don't, an option menu with three items.

I can set the checkbutton to the "inconsistent" state if the key is unset, but I feel it's confusing and not really understandable.

Indeed. The inconsistent state for a checkbox means "partly on and partly off", not "I don't care". :-)

Don't feel bad that an apparently-boolean setting can't be presented using a checkbox; sometimes they're inappropriate even for genuinely-boolean settings. Checkboxes should be used only for things that are obviously on/off, so it's obvious what the other option is. Otherwise, you should use radio buttons or an option menu. (For example, the Gimp's preferences have a checkbox for "Use 'Dot for dot' by default". Since it's not obvious what the alternative is, this option -- if it is necessary at all -- should instead use radio buttons to make the alternative explicit.)

--
Matthew Paul Thomas
http://mpt.net.nz/




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]