diff --git a/source/components/index.rst b/source/components/index.rst --- a/source/components/index.rst +++ b/source/components/index.rst @@ -31,6 +31,7 @@ splitter statusbar swipelistitem + switch tab tableview textedit @@ -64,6 +65,7 @@ * :doc:`splitter` * :doc:`statusbar` * :doc:`swipelistitem` +* :doc:`switch` * :doc:`tab` * :doc:`tableview` * :doc:`textedit` diff --git a/source/components/switch.rst b/source/components/switch.rst new file mode 100644 --- /dev/null +++ b/source/components/switch.rst @@ -0,0 +1,138 @@ +Switch +====== + +Purpose +------- + +Switches are used to toggle an option on or off. Users make a +decision between two clearly opposite choices, e.g. 'on vs. off', 'apply +vs. don't apply', 'show vs. hide'. + +Example +------- + +Guidelines +---------- + +Is this the right control +~~~~~~~~~~~~~~~~~~~~~~~~~ + +- Use switches for non-exclusive options that have clear + alternatives. Mutually exclusive options should use a set of + :doc:`radio buttons ` or a :doc:`combo box `. + +.. container:: flex + + .. container:: + + .. figure:: /img/Switch_Ambiguous_Opposite_Bad.qml.png + :figclass: border + + :iconred:`BAD` |br| + Do not use a switch if the opposite is ambiguous. + + .. container:: + + .. figure:: /img/Ambiguous_Opposite_Good.qml.png + :figclass: border + + :noblefir:`GOOD` |br| + Using two radio buttons removes the need to guess. + + +- Do not use switches to select or deselect items, use + :doc:`check boxes ` or a :doc:`list view ` + for selection. +- Do not use it to perform commands. + +.. container:: flex + + .. container:: + + .. figure:: /img/Switch_No_Command_2_Bad.qml.png + :figclass: border + + :iconred:`BAD` |br| + Do not use the selection to perform commands. + + .. container:: + + .. figure:: /img/No_Command_2_Good.qml.png + :figclass: border + + :noblefir:`GOOD` |br| + Consider using a :doc:`push button ` instead. + +Behavior +~~~~~~~~ + +- Checking a switch should always "enable" an option or change the + state of an option to "on". Checking a negative or disabling option + is a double negative and causes confusion and errors. + +.. container:: flex + + .. container:: + + .. figure:: /img/Switch_Enable_Bad.qml.png + :figclass: border + + :iconred:`BAD` + + .. container:: + + .. figure:: /img/Switch_Enable_Good.qml.png + :figclass: border + + :noblefir:`GOOD` + +- Use switches only in mobile applications. They only offer + good user interaction on touch screens. + +.. container:: flex + + .. container:: + + .. figure:: /img/Checkbox_Switch_Desktop.qml.png + + :iconred:`BAD` + + .. container:: + + .. figure:: /img/Checkbox_Switch_Mobile.qml.png + + :noblefir:`GOOD` + +Appearance +~~~~~~~~~~ + + +- Do not separate switch and label. Clicking on both the box and the + label should toggle the option. + +- Do not add line breaks. If necessary place an additional label below + the switch. + +.. container:: flex + + .. container:: + + .. figure:: /img/Switch_Alignment_Bad.qml.png + :figclass: border + + :iconred:`BAD` + + .. container:: + + .. figure:: /img/Switch_Alignment_Good.qml.png + :figclass: border + + :noblefir:`GOOD` + +- Label a group of switches with a descriptive caption to the top + of the group (cf. :doc:`alignment `). +- Create a buddy relation so access keys are assigned. +- Use :doc:`sentence style capitalization ` + for switch items. +- Do not use ending punctuation (neither dot nor colon) for group + label. diff --git a/source/img/Checkbox_Switch_Desktop.qml.png b/source/img/Checkbox_Switch_Desktop.qml.png index 27fc3f2d4b5fc5a17d0d87344e9dc92a0da5a48b..2d80af7d8e180079dd48672fc5b74d35fbd04475 GIT binary patch literal 2550 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 diff --git a/source/img/Checkbox_Switch_Mobile.qml.png b/source/img/Checkbox_Switch_Mobile.qml.png index 9581745d30a3b0c2f1a4e74086f9edd916bd6688..0921789708bab806490cb4be3e84a0bc04d4a432 GIT binary patch literal 4940 zc${rm2UHW=)(%BLP>P@wX@U?CkkET5QbSRS^eQ4CB@{!iUZg07i&Uus5(K38P(_N= z&`W4~>AeOdp}c_4d;kBfJF{k;b@uF;{q1wkobQ_*^+-qUIynXc+OoKNpYS`c}CA(#S*dkC&lMXk4WwYj(SiMj)aHGpv%XQ7CBX%_D^>0ty(TD9c- z*n6!f&u{No4-fd1)^&y4z0XbdgT!Ls%8SXs`+4$YwhidO!^g1SEL-W#`iV+X-*~Ungqo z-%bFU*hjI=XP#_l860Gl?G&y8OGzlQYrh|Stx{&yCLGQLAfWUJ<0T}f*LV2!q(`g$ z_m+vnR*I==*T$>z4*Q7$shI)qXmvt_`mWLU?P_Rc{etpMV{p6euY3enF<^wdrS0YL zOU6z*CNfZBEQ6Dz06_=YHR9xZdyNG4{@{;fgqzjjSK3eZ7(;*Op-^TGOw5GJ9@EEv z+t7oY_B5Zx@Bc~338J=k&izQTk^`_MCLxS2iVymEoq@+Kx~1c2$^OgBhjK?7F^3IJ z`*rrgmDXSKcn}*8b>MmT&%qom>g%L)xUJWVJym0TiGt@}j+%O|cAYJ_t�)IJr1# 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 diff --git a/source/img/Switch_Alignment_Bad.qml.png b/source/img/Switch_Alignment_Bad.qml.png new file mode 100644 index 0000000000000000000000000000000000000000..831edf3d886e49a94a424de8c702657e8ff5d75f GIT binary patch literal 5257 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 V8%O$~IR^;1)RiGhr3zNB{{vaBE+GH_ literal 0 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 W6N2K#YrDlj!1Yu`Te%cs8T>z~yz8z2 literal 0 Hc$@=(6s~rA+X@i zKXF7bjiU6>f_2nK%Tx;hs?)^w+(ZQYHxC0#Qvi6T004-W0I(yF5c2>Kq67d7t^lBx z1prcyJ~czt0YKQq!o*7N@bHkcu+U2$Xl!XMLsfS7^iEID?C>{kLt_}_j>l&D%s%rWN2A7ss`pAPk9?!==@Soz+3Hl^$f{v=J!FLhz z3JNW(Y;_DxHC43CV?%+7lIJ=D~J6c&}ddHdeL6bjZe zg4;Rukq5T7cal@nRW-C-J$-j~cOznAwe*eLyzVoZEY{o{s5_W;E6`Pf z2)es_=#z|FchswD>Xh$luC1+Mnp)O3HuQ|laGiMX`vKYz z+uO^|$#?VeC6aocMImmhYEWt8TrMv@5ou~^?dj`3K0*KRDff;#xU?KyTvkzCQ%558 z=H!27OigcY^0By19`A>XhtK;DpZo%XV&f9#Ih>->imK|Gg2JNYl-FSq(dn7*($X`R zmzUY>`H1M}<)}(NpYP@SASO2cRZ@z;1cgeY&}h!?-c!>v8rl%3wS6nLeT+hd**NGM zn}>u)F0ZWI)zoqK_9J$a%waYvAaL~am*2jRdHDFZVR3EPj_+d>0+g5Ro+ylx*2hSIa7#_JhKPjXsjbtsK8v zr2VUSUmT(&0e;F#GFeo$EJQNBxhz&(ai$A;JVA^<84(y{9xrxq6Lz#PHxPLx>^ftx zeEp*_n$fpreC9OpU(mr|*Vi4VBqww(#a$py-U)jsnNyYxQgL{j7AlFup{ze^%CU5kpIdu#`_l~+tgVb3YacY$0D z??b8P<&H^c#K*+)dIU=j{kLURv$iMd&!=6)xR3{J261809Ndhmp znSap&9%73MJf@u0dgS9T7Zy&0+nVEkS1CWgakM``BFizvgc;5?Wp?$zKBLzk;m zwlv2Hr`Lq{^sWzYESU=p=7K6gQzEbM1&*!q#J+Z6nGCe2BfX@zULA^dNpA|xXt96u zkVJOKMPQ_S*b}Gyr|IJSHjjgwo&4h$Ml?Fj$f12N8Z)xVvO=tB6eKOLWOd!nkG>}L zxK?3~cT={bd+!Wa|K4y^R-Rh)Yj!`Pl}$GU1es_B`G-vwPv8yp>_l zRPj#I4G@OF+1y7M**;-MKbJ^x3WIOyflsDM4{^**ykLzN_lj8&0F)#EghT)U=Ryjh0f5g_0NAzx z0L2Ud5JTp)87Tt*Z@QtLDfrvBZ(G~jgwe5<_6|%{&CoDmb#?9R?Ckvf9M{!D7#W?L zo2SvXhDSy_a6P^K11uJcvbp)ItP+>Y1?%Xu+3cv;_?*1YRkhfWvGIKdlQ=p~r_-I? zJ!Ryd%RkpJgIjSp90L=Ji|6T?S@QhC>FH@(duJ`SVP=-Jyu7loxI|u9tg68lmzJ|w z2ZQ+G7q4twUVGX&xO|RM2kQFSdA>Fu|+zWyQM4_PHObuAqoeG^4h&Bo?dBXi5*Qq0GsWDpdl2G$9W zj5$6&{#`*uTi@8t!^_UeEjPcguD&rK2o2RUvUPMxNzXE|cxeVlpn^jpV?N-zdpf(i zXGtV)KU7*~Hp0#+zn};|Onj!Oy1Tb`a>B8)b(|y5@9phxY*4K2otZ4wpMSC)T-+0r z(?TPnPEJl@J|r+03^kDU`uc{U>5KA;s>P*cO^9A=TgSj49%gJlOdu+$f_{@zuBxe{ zZEb`ixjgVas^$-AUei<>?_4lyB5#suBN5`RvIMU)Nbt_kqJRqyr+T`QTp zY+e-kLw-uhjnCj%8*NKVBR8;|G(0N{1fK&F_kK3z3>_}o`n_b_RghAp=LB_)+5Y6q z&Q$PLp`HeRr^OHa54weIObwAxD3az9|A=dQMO;MGqcJj})AbcdOu~{P72V1bpd^qFz6jvr=zLMN{N6f=ZfaYN+ zD_7!f@a(x1=h&_)fM_1D2|xNQ_;kdzxk1@Nn$xsvRHa1b6}5RmS^?($JYcsOLG_yk zA=!vTf%Yi}8tH+8G=|;I_GdA#7zUPe9gnKLYVf%4^8oAX0X}KJsQHDnEK5;yOaJ8T zU~qNIcUD4gn5Cyj<4mW|T6u(?$_F7sE-eTBGF&*92Z(h_HKEMh+a#QE81en@g&9_j z@0aIm1AQt;1RdQ^;wn5CCBq(+z0lR)AMK;_5q~p_MU-x@-d_SlUfto+q6*~7Q1rqO zfgkO}@8%z^uP*@x$JbXLg6)em<0Xm1hW5s-e3fr5`ENJi5m7tM@zZ%aZ{yf2x5r`q z;wx(5#z?JBdX5yT7_;b2NmS~#U&OqdxsOV1<$Zm|jl0gDF(*r@1mh}C9y`Lcsysui z{o;PTwmqi327kuaHL)?jUsU=JV_CFx?ss{>qA-CxctCC|dGd@;sKFG{M3Q!JtCndl zyLH@`P|kA|NfX7%pS3K%BssNzQP6a}=F>2BGC96>XC+tCxvnBtKYIaroMQSf_Yc(^ zurW$s^oR4u|Mh(`EF5sFtGu1Dk9IK2HPJm)gJ-?jJb-@fKVJIvH<|D4gee| z0O%J0z{QB77Dqz>I8owY<6?e%e7wTp^w9^JS_xGs45hbke*XL6;o;HI5s}p1N25{8Xl={ zY<6_>G_|lQuc+ejRuOT}5?`c1Y#mV;9N607;NakXV2Fl}0mQ};S6lBF@L+6w!q^P* zq2!aLos-cWFmH90NN#T(GzK1xOwAB$p=@T2D$l-F+GP6OJwoYzd&hB2Te7?Dr-P0Ik za%#r2=gGeQL58Llc24e}$}8H4oC}n?h}DA$0XnxLhua#j?@d z75^+Cao-vY0@6+?LI6PWoh8WBC3<>wQsm_fzeEKOesgTlrOgr)m3RJ~P(h6b~+PML$mUS{(Q)%SE`yf<6)p zC$2$BM~)I0i~hcbnbQpj>zq7|D@Wd!&ge!ALK*+cE$xitkDFDb#H~G^RYi*;qx5ss z&9Vu`4DCMT09)hNHOa6cN_O0!L07Ra^c5n&Sj%*AJ}KS*^5ZlbMV80EBR{fbnqj+61tqi;Qss$gsgbIbrgKL+DtGo$cf@jdp8G#!|<4WrAU>M z*hxZjsVO}pk*cg}{p6EPSu8e0?k5jXrTh)KvJ=Z**P%N>qJ?wOSHj0wXELL-_1Nc+ zOB0QBJLW|lMM%9(tn39WJ59+~QCqoOIv)Q1U8MsB$%p%9KKvq^Dy7R5W$9E9zDh}8 zW;!UMupESRKPMcq9KYK}m1)16;KYm>Vko>gq_?Y;pJ#zjZC!{~P&#|o{u#Yj-%(ju zqkT6g#2W8OCw}cJ^YDVg`sj*@>VfRC zRjm@r-{J|WOEU|Fll|k8gVTr*ba>wR+v|`iQrR2bo1xc2)p10X{Hxd1bfH#boojh@q|6><$$Mqj? MX>JEX-+?Cm4d&H~i2wiq literal 0 Hc$@3ICkhC8C#N?afG4g8cr4BA&g_5t{&?T}-uLFsn>QcE$t+WbE4v+^yipf^A*k0D#f~0Q3_8kSSW|832gZ z2LMq30GPf8fP)cl8=S!apls~q;AXY6vok9aF<9ToU%r0E;XCP!v9a;3t*!0tZAw!M zgURA>cr!DzbSCR7rKPoEqA(){UzoGQV{%EG~7ix+M}xNLcuVi=AAVS5G@fR~o&GK&nB-qmwad1}0{K$UiB~EsaghLu|HKEXl~sv4uO!<#J;%Bse5& zVq$V_ZSA}<7>6fpZf?%Z&O%}EMoKfag9dl;pfQ*gl~wf(Ulpf!cG3mIBgSBh=$N>% z@d+MZ0CRM?|1j=t;d?fhS6M|MRoD6lhr}j4dYxZT^0|UQtftWz9i6mKWffHf;`br8 ziP;s&+#H+BO?>yq*zPRKwlhu9kvSm(g{-khfb#-lEP_dQcan&z1J+r2k?CR+Qwy<{h_N%F@ zclNmI;Ox%h^XZJPOXg4xmnW0Sj4nau=NBd?g)g(Q*8-7T9zQ)Z`(a$7v%7avGG=;u zCN}YLT1J*cGA9y?vtH#cE-ghpK-~zv4Te}jZQ-WoSDf6uGIOvmUS`L{Cgx!CHa0fi z6uciD8)tMedwToIad;p9;NHIe{(-@EYG+eRYjrL8vZampwZIMz=lJN! zGc&fqFA8rd1=-s`f#^YNhtNx&Pa*9@O$$b*$#K;#=4leL z7|E?B5{m|oa13s-tC2VDPw~=Mhs7CUvQve6i^)+@#Ex0SE_|x`TJ&#zD=3A3{}ZEo zl$DbV@{i5wYX1@UVMyh$Wm?C}p5EYA&Degz#Abab+Y$@{IGXXQ3ZAhgwTPi zZ~bm9+zNuP;%&#qei;Hxp?b_ z!Ticpc-}0{DZB~ot)retiZ_FuUXoRqM3LsCcc=7b_K_oc$N4AhsYI~h2wEj6qzqCy>h-7d80SWz5J=5)*97!I0AR?TAiOzDajHH(h6sL>6iA%4`A81IUprt*iaVh zqv<1!wR`HLa#NZeIVtkMpi_g)r;q#vpRIpmhxdQ(~H3Js{ib*ND!#yuBM~3yP8j|JTE(MN7wo%$8WopMU4_2lc z=VSFF5V*YGhYvcin0iK2SfQuK5Mv`e?I>bN5-&H*2kj{^Wa7i`xjz%#6zzA9O!)Wh zi-=&luU2s`Q#&-_JEH7F)EHQDl2N`^hi06~J8FWG#I#|ux3!$=Pe@%$o>{LmIUP~E zE#Ec;L=Wsc5OuCM$TQSjh-H#)DQV zl&xJgiMbaqb3nxu79QtnxS3KCRds{uVDewo!Q@#wvl{kO!2bq%XGHH-X3uCE9vT0G!>k;km6idI{|1Z*5D)+W literal 0 Hc$@