From f0b434918bcdb0d77467d66d28448672940f6a90 Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Fri, 23 Oct 2009 17:32:18 +0100 Subject: [PATCH] docs: Add images for layout managers It's easier to show the layout manager policy with a simple screen shot coming from our interactive tests. --- clutter/clutter-bin-layout.c | 10 ++++++++++ clutter/clutter-box-layout.c | 7 +++++++ clutter/clutter-flow-layout.c | 16 ++++++++++++++++ doc/reference/clutter/Makefile.am | 8 ++++++++ doc/reference/clutter/bin-layout.png | Bin 0 -> 12890 bytes doc/reference/clutter/box-layout.png | Bin 0 -> 5119 bytes .../clutter/flow-layout-horizontal.png | Bin 0 -> 5888 bytes doc/reference/clutter/flow-layout-vertical.png | Bin 0 -> 5333 bytes 8 files changed, 41 insertions(+) create mode 100644 doc/reference/clutter/bin-layout.png create mode 100644 doc/reference/clutter/box-layout.png create mode 100644 doc/reference/clutter/flow-layout-horizontal.png create mode 100644 doc/reference/clutter/flow-layout-vertical.png diff --git a/clutter/clutter-bin-layout.c b/clutter/clutter-bin-layout.c index 80100feda..59e564e9e 100644 --- a/clutter/clutter-bin-layout.c +++ b/clutter/clutter-bin-layout.c @@ -39,6 +39,16 @@ * alignment policies. * * + *
+ * Bin layout + * The image shows a #ClutterBinLayout with three layers: + * a background #ClutterCairoTexture, set to fill on both the X + * and Y axis; a #ClutterTexture, set to center on both the X and + * Y axis; and a #ClutterRectangle, set to %CLUTTER_BIN_ALIGNMENT_END + * on both the X and Y axis. + * + *
+ * * * How to pack actors inside a BinLayout * The following code shows how to build a composite actor with diff --git a/clutter/clutter-box-layout.c b/clutter/clutter-box-layout.c index c9371f950..5076dc4e2 100644 --- a/clutter/clutter-box-layout.c +++ b/clutter/clutter-box-layout.c @@ -49,6 +49,13 @@ * layout properties. * * + *
+ * Box layout + * The image shows a #ClutterBoxLayout with the + * #ClutterBoxLayout:vertical property set to %FALSE. + * + *
+ * * It is possible to control the spacing between children of a * #ClutterBoxLayout by using clutter_box_layout_set_spacing(). * diff --git a/clutter/clutter-flow-layout.c b/clutter/clutter-flow-layout.c index bc81a679d..c2bd72de6 100644 --- a/clutter/clutter-flow-layout.c +++ b/clutter/clutter-flow-layout.c @@ -48,6 +48,22 @@ * in both columns and rows. * * + *
+ * Horizontal flow layout + * The image shows a #ClutterFlowLayout with the + * #ClutterFlowLayout:orientation propert set to + * %CLUTTER_FLOW_HORIZONTAL. + * + *
+ * + *
+ * Vertical flow layout + * The image shows a #ClutterFlowLayout with the + * #ClutterFlowLayout:orientation propert set to + * %CLUTTER_FLOW_VERTICAL. + * + *
+ * * #ClutterFlowLayout is available since Clutter 1.2 */ diff --git a/doc/reference/clutter/Makefile.am b/doc/reference/clutter/Makefile.am index 4ee491a4f..53549c2c6 100644 --- a/doc/reference/clutter/Makefile.am +++ b/doc/reference/clutter/Makefile.am @@ -105,8 +105,12 @@ EXTRA_HFILES=\ # e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png HTML_IMAGES=\ actor-box.png \ + bin-layout.png \ + box-layout.png \ easing-modes.png \ event-flow.png \ + flow-layout-horizontal.png \ + flow-layout-vertical.png \ path-alpha-func.png # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). @@ -152,7 +156,11 @@ include $(top_srcdir)/gtk-doc.make # e.g. EXTRA_DIST += version.xml.in EXTRA_DIST += \ actor-box.png \ + bin-layout.png \ + box-layout.png \ easing-modes.png \ easing-modes.svg \ event-flow.png \ + flow-layout-horizontal.png \ + flow-layout-vertical.png \ path-alpha-func.png diff --git a/doc/reference/clutter/bin-layout.png b/doc/reference/clutter/bin-layout.png new file mode 100644 index 0000000000000000000000000000000000000000..87e9b994870680f3a8ff1b86cc8984a64de5add4 GIT binary patch literal 12890 zcmbt*Wmr{R*DeZ(ARW>mAt~LBba!_nB3;r*OG=k?mz(Z*0Am9NZf? zS&8==pT8e2dHNW*wLhNBTz=QB;j)?Ml$YgcnNUMXEX0+_G0>yafb^X+Lu37@LlqbbsP0gN~P-f zl3SklF%eS?RjG>c?zMTjDgmcdef=<QguKOsi^fpJ^fGDQHxP;h$yv=VhpNg zLf@Du1PS7$P{?oQ3HK+-s{M@l00j9YpMLm#sXc#(v$Ma?SZ z=G%$hO$-OWcqVEYq=^huQqhguW<{DNv$T6=`|9&+S0VGDdeQ^Ev1ck|tOJzi<`PDE z`V?)I<-YC(e&)ETlSsN@GN}2`_1qWb<5c=F@3aw9&Y&W9r~!;W+7J($b5^#!SuQb+ z(9xzqw=-f~Iew_e^b9r$m0|8J#%4KaY`;2vo*B zHq%cCrwm#+XbL%0KBQ*f9m`c+psPUVlpee!JAW^k*Lw>dwJwT0tXUg4Z89N|k?;MP zx#YuLrNJ&?rgS(E7sEr3zBJkqw#N!(R|);H=j1>KKe_XuXG+lfW*}kV&k}k*yaIv$ z>IYi4bHxDSgZuA(a_AUL?QzYt3i-{=nOjBfN`ih2Pp?cW_dip3XfR`hw6&l^W`<)O z+5>mh+kDO$xAW__Zbf`j(I0s!9cp{#b5E~7^mNr;mz5D;eGs?Y;7h{Dz0|#lw7r6q zzg8EtqE1>UC*)&~g&5YSw)&kG%CPX=v3We+ecZ}oMJvSBZ#=Y=FhbvE=EXX=`LZu_ zwL+QTfCR5%3U$qwM!rvq+-`$6MTrwVBrMZ5@O<@ogg9r>=)vO#>x_Ugz*NGk0EsxK zg?-^4mAI^f-0U~wTuQv<))?rk+2z7!(|dL%S*W=f*IQgOrUVhO+#08aEYi#2{$2;K zpPbmipgp(|CJc9^yXd!#^WAxZ?K`)_>(0kR#nhsH9OaJQd5`@ru1KTDqa&QFZc7i6 z9aSl>(Q-J9)CAu1;5Ws?86mLr$F@6k;kmjNt3` zSiuXFPM=jiQ8x1%2}jab43J~~McTj1%xnt31#lhzILt{mXSp>09?*~3DU=dBUlg7n zt6kjrOI#75(n(zY!|=XOMRaCnfcL7sC(teDH2BP`L$L*_BmH`V&Cdt9cvK`gl9@LS z-)JrjW;Y~g^&AcYF^Ce4tUbz9{O&hjZE#i}*<>QiGwJIbX0D>;IOwcU4y;`mqaMA(MdHm1BfQcYo}^KC?5$G$e3wU&Z;1yY%2Zx`Gl zk@+EELmc`iL8zL9pj&KpUeDbQZ18GSeq?K5#&D=6<)Ju5`|`Y@?!AZe)T}I0R{!W| z;Tw^RmLijlfXN&i^a{&d%46cehU=?!Qt7sd?MBrtogbYijXn=6%H~JNlc_?s*xM|E zNs`-{-EWOsqLmx!&(*_ZD#*qsxtQd_VCWy^H?wBWb6P#hcG89CZJU=Y$@z-B9EZ+D z(|nVOGbzv!2@EMvlF1ZObluzIla6j~@m|Nkk-kV8q|I=5`hB9V>v(~D_b{$4+7npY z`TQSf_CeGT$(S%rqQ1{|=qP-Z+k#P%BGdK-xo=20#2a%nYe~5hWw3@-F=6rhyE;QO zclZGkk2ea6J*$sPx7N$vozLN7p{wfFB+xxKw;U-}J2_;3pF6IHtE>GehM~1e9{&)v z2(Wpl{V+q{nYFCVF$XnNrQ_Cv_7G#`xax_c8DgQMTQZcf+{RcE^+VN}E=QrlZ0CHA z0+Yjjl^12@VP%O}yOj*l1Kh;-vj=}F_-}>|JwE*8))Oynu zhl}S$VP+h?TD$7pr}7fB-oGaX-ow^>$BPM7?;=?Y{K)s0rz^azaf-8iP#-V*m^ADm zy)~a`6zC`h_e~#)J3}DmEXofjsuw&BYU-0RHvJ{=lG^r=7=_EdV)V@{KGaUj@z&gf z{tNfNMwg!#J(}a-gm(W~7Y}Od{Ld;gd5`+)QNq-+2#lnonLwyX>Lg1lDpD~%UO&6M z-;+$V#WtzAIrR0p&$tA5o+8n!@#UOcqv~(tpw7KJPEONl1R{xuHA=Li-J;uQwv8Qm z*V3i%aIF6yOZ$#p`L_Bkq$%zfUZmJ6KadwMCLhkrFAhnP#x-@U;%Qs)_ zN9xr5!KG1r_v;v=+H#QW;RJ$VbBPzQwh0-12*QcU9+;xvBnZuO_U4Lxv_U-fpGDbf zdf5MVY5x42EI=rB`I4!{MDqv-Be8su7X8ZScvGslk?~nm@enTyfi9zo1BBT3T13yh z?4Y{%%zR$yX9{|U_bdlWBC*D^0nHH#7o|h3I!&||+W_OuoS|wH*L$W)qPlu~$6P_^ zbLOi3@ioH$!nw^Ohwqw=`8}=gZ+HA~7)NE7lBD+e4{8QBgptMT%jtN4w3`(80VUut+2fC z5w)JF%!itjuf~=_Z)PW{%xtUvV#Wua4w0_n2|XzFzDyin&{Z&mu*p-thn;!mzuctX zYj2|>N{DnOpOn5wu_Qy>QVnx(TXh@Y${jsM`+*)u5GS0OyB~gTk~e`SG{9d6C3v~&V_$e+}SbRbCOvcr;^1FvQ;P)*g5c$ z?iRySBbIDQCR;u)USiMPy0Uc?cFw4d**MtV9ed) zQY3$LQFV2Wa&1lYKYQWNlF@L*UScsJg9(Ro{4b8R;7&sddJ9+jMAgr$SzH+}FLf8tcFjkcNHaFz^=2kT?w*)6EgEJ|7_KpNF-)Ywi0WQ&&Noz7vTBVf z_szVo%GV5Z!=%>nHVqR`wP(p{dp>uFMJQbw55b&e=cUbxXPd$*BR#c zpQSR^+&gdP(I;)TOx%VCI2Bw14kdVyVI6;YMUx8O8Jrej6ZS<)T3@<)@O=>YfL-Cs z8Wr?@j~llr-UKfVTF#Z}zTq_bh&(Rxbj_8cd$WSVb=7OaKDZrWqqjn^_X#G4lU+P< zgO&r$os?8*bY22eZ*OS3_+N&anhX@z_vvWm5r1IP+W+^_HhzMi1HYqhDqFt*9~nkHN%}6$>+P(SLp29)m`~Mu# zIS94!DDV3<^}=-Dt(UpeNdTJCP^oX@cWXD#?Lad-8_tf}_UqTiXu9NDX>mM<>GPv* zu|%8R%65JdnyD#??UBp_)O< z64sV)qxWIs4K_GmLSMkONlHfXZV{j;^Mx$ZtN+1$oo8_3EwJyHsv`fYW2tqn)61>k zXkM?*Zk>sN(qW!cD$|{)S-ohL`CZihD3e+?f-Uhn&5J zUiA4}!#(N-QS6}&9JnQrVw)xY3&CsZ=yGjyH`l*6{2a7ls%KlO55HL0KQ0Tly?rZQ zhF^(%w4yvIa9nlSPiyn}OtHeqZyRoalhAWQHmdVCiqvqnvX<`LH-Gy$GHRU!oxxDF zgS(~U62p$~j{5qY5VXcd^;#c3G>3M{>$fSa4~)hX4)b-Xd(+913tPhnUK>~+jeO!% zTwFRKjY02;9!@aygm1zpenqA^PHO_orKWn1*k$n4?yrT-UEZAq>*?S6R!+~!-V-~F z0b3**x?rcnve!NJsx|D1w#+j%K^sVg#{$z#ueq; zWG2_6<>7Ebjz2Mk@T%y(oSnDK`p0bvzJtk8zH+gZ*y8k^7>6vQ3AQJF9Bj)!wjQF@9>c*AS zd4-6^sD07=YLOhQ$8=M!Vc8A;%l&Qsd_#Usyxrxpe2>V(xPx-FvfktsO#f5st^K_4 zHFcR{&*7oQqA!n||1GhWwe^(dLf4yU+Zi>d6<^n*SuFiq$@y<4q%X!vs%q~17>=65 zk}-q{)H2=Qh%S{w)b3|GFZh`k_PM*>cxQP5dv%N>xV=->FU+>BWa(x9mTI#v`_IZ816Jzc9 zdaR8>t(D4``t>d(BtaECGy#Hw-yOFv7MajJTvZ;oGMvz;Rs0*Cn3Un^)5dh4#Ntx>ZTwaCRlZ zTwRamLquZQr|s=BxUtAg=GCMv-#+->{x)jdJR5H@74L)~Pfeo{1XS-V*4zHG>@O{e z*hPm?gBCiytaOG6?U&q(2bkLx8u|>L_4Su|y>4HHs$*D(o&Mr}NZ+%}FIF_c`ua!* zs!+Ia8VtOyNJ(}|KSKz^(3VLo zSMn?Ah`(>T7`~?r3Gwi~7v&WV)Z}GR_qI>Fae4J0PQ&wmnay`f^Z(q|f?GFO^4}BF zyzSXzHUID56XtmT4&jy5{R~XxC6+aIg_(}cLNEFY(so!P=GQGbS9l4p$u-tO_-Otf)_~SP%GYGE&@=hE(&lypN4VqKs@Kp-(qid( zShps#e`Yha4#&@!LirO-?ff27=pGQ0(lR28t1vHj#+%O0oT3T7FtT89&?0dN2w+zg z5%Li;lJue=RPpn_Y;44_x20N~m#ZrMy83Xhb9fl{$4xY+BkQp91}`g*(v@{bhI9gd z#NcU`ler;EQ5El;dt+%G_B5Pn6e+zId28h4PhJCSzxyfVOl_rvKEO%UNY>6<$u-|V z^=$tP%ie}!c2=gUgUsKKsiWO{cds>99F8?8^_jF0>?wdy(-~P}$Fpy6E#;F{Sgp~)$_%Ka zauhfolITOyG8NrD`Q|n^aY_6I&0oJW>DJU9Z}8-}&GOH>Nn%9i;`-Hj#2cqG42)nV zI&zVrHMwQYH^(_hLASqZ-lAemzBeTWLl-jf0uoC_1 zKu6nhbEGyB&1$VL)dSkI9S`3B^t|=2RP|dIl|Wc&Kc8J{4yep zAL5hG_mR1|X&zQp<9#r{uF-ZepaWk*gpx|{O5&?t%#Fqixqli64q`_|*&bdGPU9%O z**7lrJL1#h`Sj1;fr3FkHt7MSDYXtFCLb%;g-iB&35(B{!1Y+DV=K;5L2A?K8KM6# zyePq4>avGB>kB4*shkdBHi{HVayiNea9MK#4cke&EnVv$F+uZQ>J~onA_HcyRGRX- z#5SAB*^`Bp2~}ObgEfZg^e4wnGi3$qNp-$I$IWs^kKn?3Y3R#2?}dYiU| zk5XKw%IZzedhSNxE8eXbfxZlGyV>mmbb+3KIJ`KaEQWH|_?^6;)}b{o<+tK<15nK^ zEL9sUkS9AIeQO2=u$R7@T5fHzuOo^4lbJobOq)%;@kbVs9rN4MoWq@)>GW%Y&Fx$5 zu2|ILsRbn^Nqi6M;SM}cWvxeNg1-$UDj)g~kC35Pms- zHWJc&deD$kHgIxqJtvFU?!8y2JO*&3%f9Vu0srC}woFQ5+ubYg2c+_^$PGDD;S<%b zJ!)Yroe{?@m4297zntyja;(OCr*(F#c2*$Em8eEIM7EZl2wr()2*}Gf_~+mnQt9RTi{2EG7g~joKbt?ZrS_l;(!9cTvIL1 z!gddO*mwhJbDP}EwC?cYVqbm5z#t)?2Q!F$nOUM2d^ogfz!NHod48`nI(!J}C$Q}W z?1Cet_`4WzyB;G5dYH}i4wbve4PCS?4D-{csJ}`~&N(uFN2mZY!tsL9+!V1|1MF7CwPuIK3rG8t4@3L98 zoa-#H>>X$qmt#O`ZP7L^1dvm-_&MJ^;mUiRi9YvgFUTKed8VqoqQm-2uEhe3RvY_PTY9$xFr?;hE7rM*sf7LDoPY?jZGhJwB)@|d( z-V)z&8*nWj0-i{N3Q0MYXCX}v5}9wFqy>g6aCeG zInnG=?BaI5O3D#h^H!cU%vmZK7107@S?86?K;5ElyPWM{SdFMjws4 z4-XG~u1vXC`~)hAxl!da-$vrE(=*3-dVigM8vI3~DeKmE7XbFW`f+xXpbW*kTohl5 zz|-;TtUV_M^$^!!O6@LGq-Zk;g9O6jeW26(P6zYs;=fxTP~4RI1XD>F`yYfl$`}}q zT4MovSBLRwV2q{rPM6QQ&luJ@%>DjkD5vVz|F-&gV({NxfTyw=dULsxPf9vj3;)dh z;mBjE{pRCuvHHk{cSKs1X15N0;#H;n<1Hv#Lli79LS**d^lEAy^-Q&>RJNdsQ)lV& zQh?W)7$Q-msQh}PCUall>RCD!&L@>Ic(vW>5*HMmqRs-}YH_3>*hZX15lJrB*~E;z zcsVtF(tp_*iylT=PW3uB`E^;AZ*nq*h^uR(_fYe8@6>JLzj6J`Q(k_(m2%S5l~(~6 zAN~HXQdpheU#xman^;rja5ev_^~g_k4cv408Zz50;Hpl`Z002G8*=--(FghsL)E8Y za=?5n9WvgQh34&AJ^O_wBi~CJ6COT3oozb6+0VfAOTa3MYSVVX3RLS@&ZpSpPGi+B zwC9k{quDD6yCOjF7(a1Bls>>q>4%0!Xsqu(LzPf=KsqmKT#*VBi%BHsX&CO<&W7&o zI2L@iOy5w&(l;_Dd=XcJD7q>GjiS0C$pTZ;Jl; z?_@$}YtWf<^* zmup*#@I~kX>88}bMo9<{?0V#2KtyN$SSd~+jnCs0aX8hzASdaoD*kUwC@8r6K@zNc zL96ZN+#GtoS8`&;TTc)TQ}rL~`!{4I5^cnAO|1kzOC_$IOLgvNAbjUfEw&>T2r0_? z`tzwK3LOl=lC1hT=zNf_esp)Yg8`%d@+k~fIGv1lPG8Hu!~hVT28&8Splp)Hjc#K$ zkxp3^3ose!0rv=YMQF0h)LK=(JWj-4%C2+?13o_0Xsr3%Z{{g9{X_!Xd+NM6OxE29 zf*~O>iC__8!^7it>oW2Z4Bx=eRz^myT|}tZ6%daCrsa6-8fdi3o%8$&C&&uUpCS_Q zUSft{crYPB*poqJ>4cBFIxtB5ci*m)++Q)8%8qT(9wkNq-NUbgY7?5NhMVn?W&TS) zGZTTBh=kGjKcd@jGCuY)lX@Rvevf1K3ZeW_Uiet?$PZBcqXOBe?*cP%HT9O`&9>Td zS*#S;;-JoKdi5$lo!R2r=gR%q{Zk5u$EgK~YT2)A0r9^goi?}l)fyV!%{SUddkLiB zJ>~j@@WzstppGbcpH)=G^a?0i5A%A~LU6q-8 z((q`oHl5=PjmV~-RhSr(W(s)l!-~2Sl+1<#5o3}>G(r~?=i=YSy<*^>60f`W(-XPr zi>s0J0vpEOEKN>2&0F5tkPPZ<=zP9HLjTG`Lw-sCVMN>RBz-#=Y(_3xY9X14?GUf; zd%zQTTAUUs$A0|I1@t~pZRliXj?~-iX%zWv3#87?#Y|(p0xO7WzcM?u9(8wpTM85m zGh!%ke87#l`T^S}nWpvtv$tE0>TH?s(s~c(7S(!pTA+(E`sXu&%LpHd+sUt(EU$8= z$ob7dQeb^rpkb~L44VI}&{ZY<>Tr8y&QC&O9U{|8<9BGAnC0J*e~ucVhC7tjlX&ch z4-uca+k>5UApx~z?E@+0y-XENu4-{M*)-OXs3B=3xgWtfC55VL#CK$zROd;>sB{sL zT%j4jGprteepliV zBZ8CFyNbT5_B@C#TaKp*%JDpw5$orO`}?Jyn|RQDtX=6qE@VKJR53SoC78(lWB^Q# zKyDzoK#Ytd6uF~#i*K+xds7_d5=-*LGf5s7R^oZ=($DZd4tJy&QIc$SGlt<}LAS!E zKui?G+$?VAd9{LQ!XwasYIeDiFk8E7oCt2I!@34g=O1GAj&H=V3tzI9w{h? zSZyi$%K;CKnR00owPWI9X$!!6`O_#IfSOLf{|~cJhMT{|C&`JJ;bspO>*-vaKXk?W z^CZz54st5uv1yF`g#g!87>;C7yS&+tn?pW%iCg&RH6Gj6q6_`)kTsp)^@iy_X+D=5 zqt;l1<*T2(9SrOl2)6Og_^;J2(nhO5f$^d}`tY)L{Rc#PzTA^u~q-lAH|A_8^be3*8m`4=28~JZOG6VSt5M~*m z+e%E^qG@QWUk@6y-zV#(}PWSV{|30$a|A7P0i7>qsvO3s-=Wpb)Y;UD*m7gI9wkUmMB3ZvfUY+3LN!A;d zG^dpnXInj%Y3``><-!U(LV1==pc92L%G6BMf-?Rf!OY5m;5Zhsb+7U1^;{7 zc}B)U9#~{d1j-Yc`_j^Kh0i=$`GnySeGK%b2X9j(Iu){DoDk#DE%JMrPy}?GlG3$x zefwPB!Pn9QDgP;?OU3BrSegRzYDZ%pDi{`u{5Ivdmt7~TD&Kyas-sZ>muBAu_j1{q z8NGJ==OYQdX2Elifb$HPpWOcmA}23^QvIYCV^u(6T?W;{VZf7St6k{<_4*GFOX*Vp z41op^yENzZ=q9r^>T^)W75sjTdzCUDlr}jvk<4b@ zDVV&j;L$l4p2iX8U!7nI17_2=@63FXjeR;yOD7vWSb#zi@sW7bd5xLw zjqQQXB9)YA`lI1Q5-{QEYkZFDP~ty_OY-}nXsQklZmudI9D&AFwB*A9`ZlqpNZ$|Y zV4OdUhGC#G_PoFG)1HfHY?(32-_7*Mo0p;w0mNo=TOH^eh4@A?YxKn?R+fBIa%%|4 zFpWZ7pann^9sDz5J1^T)wajbapQSJRrd)Pja9Q~rdnX#Z>jKsO(BxaY{|yda=auB$ z>(v;srurnHy?r8PlmwH~5V<7zwVgExke$allO>Hf1AAh-lMWu3gYEIcL7`=fXpxO< zsJj7~i@Rp6^D!fOlOL$!fQ7RbD>lwVnB?JDK#C%QAV}N+RG}=%De8t;JcZ(rGJ9SD6&lF z9{8?asdQMSIW!1kqRu|k+(pCuWMeQEqY`ctTI(WY<$h6hVbCMw7cx)01?|ytc~Xnv zkK(A(To3Dm1q48`v^$&9KAGO2EWDO*>>CRrgm3RGyLdGihq8T*dIb@!v0>t-pZ00x z)1!hox6Gf}C(~72I0!K;wKfhl4KgvzUG=?oi)>hGEMR?E1JNl^z1>t)KnhE+RBAOp6tKpxy0<#)M zYfDH!Fxd2|Yy2#5@Wau5|11f#B2qLf>nzvG%ep%q$U&o}2DDI$9FGhl@R`hjJoZ%g z8N6g2sk6f=DbIHrCi-aX83Ka+Wn;bR?Y*p<$;YO-HCA`tDEhAS#0^M%5kPZ=yFG27 zWWN6;bh*0H$il21Q)g#>?V}@14(h_ER$b_zc>dKZshtfWyyi&FIurT^G z6N2bXDm+G1=~iIZ5KW2>B+q=iNgANf7J{)s4=nNQ2E$sn$EzkNJO;s*h@;Kusp+_! zN6B#1nGHiDCb_n*>oHBAffRe*dwpJghT2H%Ad9TKxoHtg8rj%HaM>3Jc9ylxC~+{P z;oX4=W_f$2i8>BwN65rBm7y5B)f=3cz_siL$xs8{#90g!pR-Zg*0%457=oftnWgA} zw+}r8#C)W~v5`e7PTbdxp>otXz#=&OFF2kc@4D8iaJsadkgLzE;!$ihfobpLt%CZe` zvRO!pPQ=Hyp%$P9RZOV$8u_r%3g5A++c#0L?;01NZaU{K9!c#@}XBZT!~(3l2vmxsQS zAkR@-d~T1!`ynwA|DMPxfF1SJde{t>=`jI_2^UMd#AJ&bXdf!&G-$z|D?XQ+nMT}z zXK9wLil73T$(?R(Up60(u_oSAFZAx=w$5%|!W*=HZoH7^5LgAtfL{=>H>86OjO0op zB`_#pjB+e(-+-#WTT+tayRQXyw*Y9tKCK?+gSu)XYA8Shciu{eChWk%--9knklE+< zr$+aan7et2^XbEz*|7k?y+Oa+W~C+R;&9>Qa8b6TP|~aJBnLMX8pO!M{5)I(han6C{%%LpMaD0e(bHs=>~jPDF((ED(aNIe~J8Y zIdOOpwN3~}i36=g!I<~oEa8#5 zYV34B=)7bDk75LwgfP`@lo8}jEuF>j_}5YEfOp@0BDBF1Lybq+e-q5~N*rkHsvj?O z3LA-DA;aERy(5m!+_8EY2S^Rb%UNf;r3tJF~ELkFYrP_Pd^bp5q3P5tpBKr=2NiK>wD zkd!Fz<{zW&a8}l$PatV!uy3YL?we3kG3`;!{@H}^I9RD`{8!TJB& z7443eo2vr@vaTEw>DO#jI7&C literal 0 HcmV?d00001 diff --git a/doc/reference/clutter/box-layout.png b/doc/reference/clutter/box-layout.png new file mode 100644 index 0000000000000000000000000000000000000000..729d2386a8bf878839be20189497058c4ff5a8b1 GIT binary patch literal 5119 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