[kde-guidelines] Styleguide: Toggle buttons

Thomas Pfeiffer colomar at autistici.org
Mon Sep 23 20:50:27 UTC 2013


On Monday 23 September 2013 13:51:51 Heiko Tietze wrote:
> There is an old contribution about toggle buttons that I want to refuse
> completely. To keep it until your input I didn't change the page and discuss
> my two cents only here.
> 
> Recent page: http://techbase.kde.org/Projects/Usability/HIG/Toggle_Buttons
> 
> IMHO better example:
> https://developer.gnome.org/hig-book/3.2/controls-toggle-buttons.html.en
> 
> My suggestion:
> * Use a toogle button to indicate a state, preferably in toolbars only.
> 
> == Purpose ==
> ''Toggle buttons'' look similar to regular buttons, but are used to show or
> change a state rather than initiate an action. A toggle button's two states,
> set and unset, are shown by its appearing "pushed in" or "popped out"
> respectively.
> 
> Toggle buttons are a valid option to indicate a state with the advance of
> using an icon. Compared to the related radio button or check box they are an
> efficient way to save screen space. But toggle buttons should be used with
> care outside a toolbar because the state is not clearly indicated.
> 
> == Example ==
> 
> == Guidelines ==
> === Is this the right control ===
> * Use a toggle button to indicate a state if no other control apply, i.e. in
> case of the [[Projects/Usability/HIG/toolbar|toolbar]].
> * Prefer [[Projects/Usability/HIG/Radio_Buttons|radio buttons]] or
> [[Projects/Usability/HIG/Check_Box|check boxes]] outside the toolbar.
> === Behavior ==
> * Use toggle buttons only in groups, so they are not mistaken for push
> buttons.

Hmm... really? What if there is only one toggle button in the toolbar (like in 
the very Composer window I'm writing this email in)? I'd say in a toolbar if 
the label strongly suggests that this is a state, it should be okay to use a 
single toggle button, shouldn't it? Plus: I don't really see why their being a 
group alone would help distinguishing them from push buttons.

> * Separare the group of toggle buttons from other controls by adding
> separators or a frame.
> * Do not use a toggle button to initiate an action.
> * Do not change the label according the button state.
> === Appearance ===
> * Align groups of toggle buttons horizontally rather than vertically.
> * Provide an access key in the label of all toggle buttons that allows the
> user to set or unset the button directly from the keyboard.
> == Implementation ==
> *
> [http://api.kde.org/4.10-api/kdelibs-apidocs/kdeui/html/classKPushButton.ht
> ml KPushButton] for generic buttons. *
> [http://api.kde.org/4.10-api/kdelibs-apidocs/kdeui/html/classKAction.html
> KAction] is used to generate buttons in toolbars.

As always: The rest is a +1.
I guess we have to add a copyright and license statement indicating we have 
taken some parts from the Gnome HIG


More information about the kde-guidelines mailing list