From e07c14db811f9b91188dde145c16e482c293cb97 Mon Sep 17 00:00:00 2001 From: YohananDiamond Date: Wed, 24 May 2023 12:47:20 -0300 Subject: [PATCH 001/183] Add option to prevent piano input --- src/gui/gui.cpp | 4 ++++ src/gui/gui.h | 1 + src/gui/piano.cpp | 3 ++- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 1f2d4879..e9390dff 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -5954,6 +5954,7 @@ bool FurnaceGUI::init() { pianoOptions=e->getConfBool("pianoOptions",pianoOptions); pianoSharePosition=e->getConfBool("pianoSharePosition",pianoSharePosition); pianoOptionsSet=e->getConfBool("pianoOptionsSet",pianoOptionsSet); + pianoReadonly=e->getConfBool("pianoReadonly",false); pianoOffset=e->getConfInt("pianoOffset",pianoOffset); pianoOffsetEdit=e->getConfInt("pianoOffsetEdit",pianoOffsetEdit); pianoView=e->getConfInt("pianoView",pianoView); @@ -6389,6 +6390,7 @@ void FurnaceGUI::commitState() { e->setConf("pianoOptions",pianoOptions); e->setConf("pianoSharePosition",pianoSharePosition); e->setConf("pianoOptionsSet",pianoOptionsSet); + e->setConf("pianoReadonly",pianoReadonly); e->setConf("pianoOffset",pianoOffset); e->setConf("pianoOffsetEdit",pianoOffsetEdit); e->setConf("pianoView",pianoView); @@ -6835,6 +6837,7 @@ FurnaceGUI::FurnaceGUI(): pianoOptions(true), pianoSharePosition(false), pianoOptionsSet(false), + pianoReadonly(false), pianoOffset(6), pianoOffsetEdit(9), pianoView(PIANO_LAYOUT_AUTOMATIC), @@ -6844,6 +6847,7 @@ FurnaceGUI::FurnaceGUI(): pianoOctavesEdit(4), pianoOptions(false), pianoSharePosition(true), + pianoReadonly(false), pianoOffset(6), pianoOffsetEdit(6), pianoView(PIANO_LAYOUT_STANDARD), diff --git a/src/gui/gui.h b/src/gui/gui.h index 88074864..0fc45f70 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1916,6 +1916,7 @@ class FurnaceGUI { bool pianoOptions, pianoSharePosition, pianoOptionsSet; float pianoKeyHit[180]; bool pianoKeyPressed[180]; + bool pianoReadonly; int pianoOffset, pianoOffsetEdit; int pianoView, pianoInputPadMode; diff --git a/src/gui/piano.cpp b/src/gui/piano.cpp index baae316d..4842d05c 100644 --- a/src/gui/piano.cpp +++ b/src/gui/piano.cpp @@ -123,6 +123,7 @@ void FurnaceGUI::drawPiano() { pianoInputPadMode=PIANO_INPUT_PAD_SPLIT_VISIBLE; } ImGui::Checkbox("Share play/edit offset/range",&pianoSharePosition); + ImGui::Checkbox("Read-only (can't input notes)",&pianoReadonly); ImGui::EndPopup(); } @@ -223,7 +224,7 @@ void FurnaceGUI::drawPiano() { //ImGui::ItemSize(size,ImGui::GetStyle().FramePadding.y); if (ImGui::ItemAdd(rect,ImGui::GetID("pianoDisplay"))) { bool canInput=false; - if (ImGui::ItemHoverable(rect,ImGui::GetID("pianoDisplay"))) { + if (!pianoReadonly && ImGui::ItemHoverable(rect,ImGui::GetID("pianoDisplay"))) { canInput=true; ImGui::InhibitInertialScroll(); } From 2b49dc15bb1d952a5f72a8474e50f1fb449ec642 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 1 Jun 2023 15:47:00 -0500 Subject: [PATCH 002/183] SuperJet Spade demo song updates --- demos/arcade/Tubelectric_Fictional_Arcade.fur | Bin 164204 -> 162819 bytes demos/arcade/UT99_Run_TaitoArcade.fur | Bin 467169 -> 303825 bytes demos/genesis/Stereotactics_Rewritten.fur | Bin 33973 -> 13393 bytes .../multichip/Jet_Pack_Adventure_GBAesque.fur | Bin 199132 -> 169684 bytes demos/snes/MM8_Frost_Man.fur | Bin 55885 -> 54989 bytes 5 files changed, 0 insertions(+), 0 deletions(-) diff --git a/demos/arcade/Tubelectric_Fictional_Arcade.fur b/demos/arcade/Tubelectric_Fictional_Arcade.fur index 147c2ed31b89ce3c289ced3fffdb5e0bae1e2cb8..08929eddf608119b036b71d42bb4bf05e5479625 100644 GIT binary patch literal 162819 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 z%0D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
hlfEpuseKkIw&q*E5e<@r)5w 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 z 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�%el{>rCyBvC{r}lyU7~e%kI45oHk(9VQH(g+^ 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 R6~I#X2MdPnV8H65{{vmRDzE?m diff --git a/demos/arcade/UT99_Run_TaitoArcade.fur b/demos/arcade/UT99_Run_TaitoArcade.fur index 2bdf024210d17e6d7c5becce065b5bfa3a4770ef..bc46eb3aac2895e82b3094b348873c8370603613 100644 GIT binary patch literal 303825 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

    PmU}7 zsw^t^#mXPQELIjOfBceJC};oe$-wqT6P{~iwosReqNbB2*vQm-Abg}_u)?GKIcA% zbGM^yCFyZtSnqhPhL|7d0d&P z%7W6F%FW5}LPj~C^7Gwv`dTVo4p)?C$Q9ka^vab$Ixj#QoJ#mVuX+ohjg3k_+KsQ_ zj`sc9Hm7pJ9~l*-I$y(UTcCCvQqJr!{BdQNKOPeAPnR!czDlQ+nf*F*EweDLG(I_5 zRpTAIRYTa0)c`tLo`$cu97^`s<>B;w{$@Iy zE-P^@lp~qUx8cQ1X(TP*jAZ7=Qwq>hi$d&UzMO)^2m=PGTKPx3?A*PbW&q};RtVe| z>%rHVw6ya_PDA@dA^I3%M0m9qz;L5Us+WV>K zwM?`U{j@Ap_*6~)Y>|*7Qf5)eELI}(ze=Y*k|xWV$2wUds&M9-j4Vj^D@yT;$UP;Y zzo!bu(W)OA8tHWkhLymauNkp6V_PllwEvLAHrqkUK{Rsv3|hxK5UO?VTj#LX8}S~a z(+NA+Rty96EGG^t6j+KV$yib5tEAvIGZ{`rl%LXkxs*<2QsGiKEJdVrCMENJISnhA zla)@%3MD1O3?K$biI;eY5JiCFcv&=nWK>Q{ENFmvhG&$rfif@@P4uUw2V@gWyZ#3eszPqx2izG?1a->syDwC-!1)l%smF6%I zRA6hg<9I!da`u-_Gw%`zw-Q*YJf198!tg?7T!Mtuj;7P!KTrb101(3rcsq^a7yvN5 zX2S>Z|NCvFah_M=OoqoVl_Z&wFD27uBP&RuY4zWKAA?YX!C-V46uR1{b>K$q7eq4c zUl5sBwp@Li=VV@?16iqj_tLzakyEh519;%Nca>ec?;X|2UC&lJjo}8Z!EXE^1ppj` zhQk4~aQ*A__(*XI(Y^Zeah~Ut5S0F<(~Fa3NhT&sB4acDR}+L8_S5?vrrICVsOhKQ zE7(9$fYutEG~RAB>^5Pjwgr<%(*Apl?tW!Kef@z(NO6g zK5M>lKT7|#(}X*>;|kq0YJ1vP)+C-B+VuSj;y_jbFu?>+2z^Pd;3ji^vcyU0abCTU zUi@yj6uB!TiIL|?Ab6H~pV-EU|_H@6wL+l{LBHoTGA zZbaL0Cm!m0*@nly|5tG3JSe6NhjJ?A5dbT-KlA-?N~)w&%y)A5PCApx#I7rRKF{#| z`s5Podi76pD$6M$lddpAv2x%4708DTFZUQIV>@nm6Ic4urj${oxVAenjTfe;)aj4! znwV=**#39lFRg6fqd*0N6e^);DNvJ{Ln^oZ+y zTul0o<`ee!-+dE-c_rcGl%zoQQd*=q-YUL}VxWQYHagy>4fQ=3W~3YU)2|tAfWemT zw?Ryg_*!&8E{*#aA!Om<_3x)vdJWPjMsWZog}?KsZYIgeRQlseU_^m*@*_nUUcZ(S zIZAUc^(la47Sje+4L33oSZBxoX_S5UEs^7u5mzw6NgOQm(qCZszFHdF+=|l17b!!n z!ql|%lU6SvsQO!KtBcU)sx}IK&L~+ZhJ}U5!hJ;r&HZoRGw`3bFTzj;!^VMBYI5=3 zwepG@irkGTa<;g!B>APW!*H65o4^2OS=j%-5CE)@2#f^@qn1A2cJAuCF!RTFlvp@^ zWqWqwMGD*R+)rVf+wsk~aYdXO^uc#<7mjlO%0d(X^4xeh{SS&n7CugWmysi)u<%JL zS@{0Dm3USVpxdhY&pFGGcKNy+w~IG}L- zTgVS+2te3h(5$Vc=iIxD$S4upuzVt+_uR6E;v7}FZs(EUHO8zH3SvewW!J5zsr690RAHjDNKc7GzcI>@>-_EYW{m_G4oye zzKo>9_sdCcQU+Pt*MmA=QWCOJdkEkEB294&UQaSVk6QDGU*oX;|KlA+Nh#Cz#~a6T zs#XKO-mnj}{~U!3Z#xK83!vy(8l>NWVd-0tgTra1YK1?Yhc)SM4b_3vS(f>@B!67y z#qSluQ*s|fVSrPL1|y^|Wy%BDUvru9f2sVgBuQ-9oLZP1FDbZ=AtRzlu6OKrfC6t z;4I$F8b68L3#S!(P^o;KR+6yt-FSL2Gk-lPD^V%P{?q&^wTn>{*<@xowBdevVf*!y<=LBG7JmCCgat2-%%3q zkA+d8M86}1d38&6hfjRx zCm4v*zF#QCm)^h5;V>x1u&?{Wa;`GGIp)eu*>tyC@N>2Z}qL}|oS#jHG#g$aj<&UB=z;I>s(RNr~->tX{ zxE421s|-#PJ+u$r-2M|MO+!YK3#<0O^sdp)NvTP>@@Z0n`3UoC4uiGM791zq|3Y!- z?fV$a=|D$BM*h{L2-2GGxQqyq_dw0>xa(;-dj6}FoXTilROAn)-L2R+oU%iI;P1&1 z{~uC{L&-en!#C54{8yx}EMJnd48y@%#$m9xzi8~KQaX}qf7wwF?t@=)Xcb?LZExRg zz)*kst~{wYJ9$y!%F*pqEnrFq{m|`aqTG1m(M)Pv!aR zk{Cwh=#KA1UU7@15XSkAz3c^#;LK*%W=soruqRQ31TUKOsU;Hv`#>J+^PGlsjfeWv z`+&`)8HYj#vjfSX|5lT@mR=FHM{52gYWM$_!*BmJW&fk9J*4}Oy)k6`SKCkS=M=ZUcdtI#tRIOsLWS=NFaE1rgH{LxREkcJ#tp zMx|rgXV+i8(I+B_sri z1_`30J6RE^`dv#xpWFK(0)&5%aw((L`2WTQbR1 z*7WFToCGAxOXC!;lJ=-C3i{T(q(A95YL@jN9{QISSUX>}@Mh8*Hq&w_u$IZY=`XjU zdD}o~dvwRT6h}e1xzlfW~$ zQC8%${g-D!LCXa`sul1s?FB#T&ZoA508c;G8)K3+{Bpm)@*`M8vuK|)@>HgdqdPs{0;^Ot`Svm{yi^=7CYvBZXmEkY}JZoy6=J?L4#7qaBU#vVvj^G z94P33VxYC5@M*0z%WO8YXIIU)%Dk^7j91#Q@Q4p$tmm(4LK=hfnK|!S?g&?j)=Zl2nDJzxHUmZ>66XLD&oHDL*6>!GH{D?JqYHrq6?98ecYUb zUxcvuF*Ju59`>q);KuKQ|28+0xI(G>fOb_n#A~7L%BuU1$1pw);1E|geT}x=whcG&`CzvV&#PDiHvt~#w!&(VqD{r1w z2LPS%W{^tn7)|Vwd_iq-%8z=FJ?B@vJG_Pu;b86R(BLtn`>D#g8{zf znLQ=G0*T&;d?F8-cEthSI!+=<9bSpb+k0AuMMlIQ+{gHZ+>Yw=80`g z1_=T>KPXUVYEy(h6veg`_-YWB`vwCaz_-k-c^PO1u4=jiu%sGp8jE6UAvuIL$8BB>r<=LknL-(UQ)N^&R6+C&>DE&!FyGeqX9M& zYs1dd4>!Op#m741C|f$u@6XlX3^VWen5{~Ceq2tzBA1Dco1q1T7>UhfD)Ng=*($w&wj zyPzpM83(t;0%T^rLhvnF?4zoPx7K_pngP0}1wh>rkJX4_(Fux@;L5J7%FT-sk8lVq zvS9|`U{(TH1OQkDA=s5wc2H)8>H!91$dy&(07iKdx$@R22(xmNEivULb?DX98?_Ia zT~uC8Bt(yFtn4}+IW)tqd?aKqHlv1kRCr;^!{$iKVCHy1&rvf?v#_@&&0-4@JXyqXHeqJM*qrS{-crq~ud7uZJS>!^aXOS?oU0eYv+ z6TI%gMcIN+H>d`*X(G ziSmXgb*@CRnJQ=u4;#>6^c7Xs0w9)uls&+eWRowiF{EEyY8sLPJI#YLbsp>%-(>bl ziCx+|dx(osD;iqzu$uaZh-XY9y<(kfG*@Rrv|sRM9bEr3{JLpWCZSYE6#KHqgU?91 zgH=Vd-uZ;zt6kQS&@H_g{8BbsvG|SD9!r0u^|1v2F3Y56R6P`?Q|=4tqoE|Tqd)AD zwH56q{3%!0Q3%MdLxHFTOiaChGHZc#RWqEPnn=E(nkK7TZ*hn@6!R;{6L+AN-wW=b zd|*^Rq|wgXqT)|M^{JGbArjeLwtQd{J;QIMZ`GNCQ7cJ3RU>H38#z*_#s+GabvoB< zyn0X7v~a-p#YQTTQrZE(iAm&qpxC#?BC$i zI%QVC{1%kG;qM5>8mf}$8rx@4D=1<4c;vnQnQAPir?bu{TTBzxR9qs+3z4H&WK#eE zV<7J_BNubKupDd|Odo(|{YshMwW{a=g2^4=So&yOKbTaIr?%qXXb7~}_xl>RH>!6$ zgb{`33cDZ?F$3;VN#FTf1ukFKP;rjYnS!(a_iewC2n!g9@4~YLQahu016QO*gYu`E zu9MRZbc{ddi|TFDmZ8{&E?+*n#XTBDnhZ}Gu)Nx0B5s6TQGBV{?VSxbdxoaBKq9k) zo=xthV(g5buGUWN0pqYvHM<21#t4!fm8>=qi_3eVoEdRE)!T3JBpQ-TKFJf}AZsuw|RclgkZgyvDX{ z2{ibUW5XSBu@1|}>bjt5Hub(Q8r-Ft?_|K4Ix6n3pYIy=dsI&atNkg@*0>YW7P_FE zX2f+{w$e{Ebd(F04nnu&JqqeP35{w4zDy#Wmqqn~U?O|)|7Gm$!<)9!eNo8{tz?H* zvO|&VP$WBm?S$4J3B(~3+X-zFI(zcb&ILOAJQO<5rZe-L-9kHso_o%bi^m7^PZIANoH20=m{KeR%S_Y~5Jg`x z`hg^egGPtqm@+z%6c4xPCt#SIfGmh&p&)_7;J58Y67DRv{9ONNZ1bN-f%M(ZiG{A_Evc=?0+ zTaE1h>J#+$v^9S_mfQcKQdm24xx>pR{BXtc^~)dd@^~!Q%l@s7<@)%)^@RF+3Y_K6 zFBfQ|vwZCj?f$*$A2w2_mdAjCmi1QcivO?P^8S!#U=IF|>8)4(+ZzoOEfESvO&EW% z`kK>qVT=23V|_f6%a^n%ftufVVLgQ*h}LxRxFC;MbFT?o0hVKLtIo&-1W2~eHohhy z_Cft?^-T=;!#hmYXu5tf1AWIFr^kyA^WqOUZZst0-v;GJiMp%rD{d~lEfvdN?o|L=LPcVT# z92}fvQEX7`sIVAiw5+4o=CwZ6~;nbE&l`mD0S(R6!j#d#_tql;=?S zFmtWmuAZL#DXOHMy2yms*>c-9YjEoM8-a1*`Ex%FLwpNF-c9 zUccjnGSGX&i3?Oif5u7RU&K?7S&)h5(Ioo_5F7c$syVv3_DvW%ZxK7DD5Gw$di1B~ z4X6Z4{mCDLBWap>kkmpbj?teRn|WO&sBAe83wVS1w)>Ngaj@aE7JK}~?(=eo^*5q} zR%%VL4T(7T5mOHQ* zAN$W*@uOij!oc{*`3K1Hdb1+^l>FM_0;$ifsFhKqr{)QGZU~pBo*<*Az?3c^(Ghk(G6M`1L3u{zmGAPsm-maaT<2a-9&AT}u4NdcM4$p3s8O z-~$L7F7Hpefb()QOy1cMrZW54m{4uI?X>!T7a`b*-HZY|)>bJlD!J7(m33RK_d^r^ ziHM2tBPgvz+|-Y&u3O1864e_f))fy6VCnfmk!^6Fmw_G3)MNE;2}Yct`KynRd6%C3 zbO)jkSFG?TK5+OvZzORc0;OKPAo>f?G=U0d>>j=#}I#^AN%ykS@DWF)7#J*jF#0)Orea>m!WxM^P?p&gSCngey zK{3?|U~dl?o@x@_Z*)ZKPyQAO#{ znEH@41L6?^~#pt$lVN=>*BgHCjOTJITmC=fAXz|SeW z1x+V83f?&!r4l49!f?OZk&KWkN*T%2xS>;XU5XY#!!kzxMF00pEWiBcgFkzY=y>*} zA7HZSzW*3Z{`Vbk{NM6_)${b{(f_{w20GMzet74fu*9wuec7q})b{(C!~CD1f2_$h zLvPIg@;9v7tr%KHzTWChDJxxy`JFn|Cc5q)@+@ya8W#<_{$$0E6n6?~-*-DxZ0k8B z+E_4uY~o>NEkkDxeTYLNj{wMIWEYU$ctpbcr}s<(QuA6+8H{$JpKaA8la7@gAIiH2 zBQ(r>w$YTv5Fx6+vtL1A*d&F&);Ov(x<+F^c{K6-n8| z`D)ryb+l%}io2NiU5@y19hclqe8z8E{`sQ+H|b{MTbvVQ6Q0ju;W3>UmXNh*3M#xB z&vajbtR$1v{=Dv_q)vr6XAItUx{Pm$c>Quh0fNHLrJn@PJ*>$jxz+UfP(Z0aA|Vg! z1m5UnVb{0$|Kk6hcSsQS8<5m6Cm-#+HO=45Fg(QP=*>4wP(3tC-sWvJ71-Rl4K ztka@Xu-Fj6w4T2H7^smb<6xvSe&qr8r%t7%|5}SC>>L*Kx_@eA^V_nwWE0k+NyCLl zK>>z!krjpAKuih4(VxGTh8$w^HAHw6d7HQT!Ka z6iso){nS-{Joss$b)>M}1#g37)d7$aW{`hfNX{~IwEa(BflF=!j|O~ZWGpLMn?0mh9_#>=VbD@NwI*)g`=p(iS^f7 zLC%!v(rbkF+j`0smciKM$(`}JEn&f+8@>A~n9?+q0C28X>pw`uUUHlN@-AU?%^8VTYcb^r(2n!;0Ff3h^4GxxA19{cySJbX#BITn6lQEO1oh4>f&J*ocFknWB|(fjiu{@ z=>DWeIyVxdwS)N|={e>YIjQauE&8ur2ybBx;kOJJfBAXjY6RwW9qMD?Zw*4LgZaW^ z1jWzr`c<>Q!$hhfJikk)HeYk{juVp`G4`~GZ}~T=Q*g!7$z6E&`?6nfChHyFAh_qQ zX}I~sO!+1)qUp%=Q|Xq{~ONbo;6j+u-Wy)C<_SL^@(P7kSYA!e%or! zhGscua>sAr`f$>@^VlFXP?PX!<(F}b7C$Y!-Zn&0{s=yTQva<$?#Z_9;il z=MS1DsCwjmd1v%~O`cxmniH>HkeqKez00aSj(u=t2lAO25fjZsm$JANt#7G1CY zj%ATFnLHY}?v(Vd%ezyM^|c5F^Q#Je^!8RAg$rvuTX1#Vr}cgzmfYqTRAY~#v4TcKD4?N6Lp^~?|3jFEUCxRA@x!zjevp_lG=JgJ zU)ie5*vB8!&Bk^m0fP>@vJK(WO*0(=Pe0roms}U*F4Jv%%UdD_1EYz6;j|GLHBhaC zNlSD6kt@?X*}5C_8oh$WAJ9quu#)^SLtWWHQI{?ItNIzlperG=BK9|{IdYi*s zS2to8SVLEAaD1y{0?h^J)X^6GCum}4Jm1W7(A1BP$OOgKe`rLnKcB*8v8_7zeW$XU zJ|}OneT{>ZL?(V$KMKPm8;?{oFt;LtMwA!wsP%(-+J$^56QXY8RdT6Y6dV&jI>AOf z{G4Osie#n}IidR5k%+D({njvnecr$fxUT?)j!*oG#+y7h2+nckVPwR(YcT80cqVHZ zwnhKVk7>)G*Z@K-acyh7C2l>D^IdaJZ3I)}&r}tk=fk3_Gc|Sm2&cK+4%QR@u5;p< zs)+{tP02H4x>}7!s`6_(M*wc%(1>UOVQ|8FNDCC0vE#fU1)Exvk#jpbzO~X;=nX3c zmV0C~_w|!Ne}=G*f^*N)6I*H52be?*)uqy8`I#dkC_RaulaZfK)|1yQlrDStv}RCx zHGbTjuAj1+J~IHp>DT4`sYqCQjF`fcJK(oi13CMcUSXY48~x2QLd)%Do_BxZh^)#Z zcs?M#z6QXPh=OjUp7||IvoKHQ4<)UmfDsY6*K@%{;DZ5@JCe|dyKW8L@(r$ZQZXRc z{)Og0s1$zWM0HhuOTXj{f6{6$)MPuEv|rH={O(bm2&R7uhHvGcyx+i@mVBSB^~^dlHIqMP@OU*dyK7_s@qccxw46|I5WfP-omtEOmPgj0 zf;ieh?S9*ePH2{v@6CBeGp6Huh1sV6TAN1-rjefsv|QN&fbdlE(W;Yy30Nn0CUtpoAoOX(z4C-eTWH|P_g##^c_RM{-FRzQ z5E6$h9~xNq`>ds&_`L+Rn66=#6Onq|xudQ2uOUNA)s+aQA8-I)JBDi{gdGUZI=FK` zXBjcvpf;Yhjbr%aR!Beenr!0y=N{I{dJ*3mUqgHjbGwp*1D)a9j)+M?Ao)bY$d0Sl z&TkC}aIFQPd74|}$-Ab2EpJIb)z3CxYtGb-@1|!F+_BhnWerA8ReLVGm~ucr|I7&y zk)6or2G_5Ru;**XxC@8EbRzfRXf!ESD{DID_Xs8W_JoKsB!!7 zV~hw0kDw_IiR`+dc2W==#m5^=%Gw&WQ}M@DjjUMz-2g^*pO#ui^M|#XR-#u8 zPS?M108B%`XB$yUNImR4o!_NNGo)5S^l$-Xe{ov0m_Bte3GaC4guxT}a9bRQDc$_x zbG+4gngv!?iDKtS`c(nD+Q5h{k-ATj?EaAl(IkX%Kvn5b5{Qx?Z0t`EEI7U!pi*l+ zX(qd$N?L=TT2ELR&M|ePvt?xT#*-!ylwIgI^}#zWCuEa^aHnAdDSUX$9~VKEi#=?c z6#o$%<)E#nBaSI7`3&$I*%?-Qh8%CETj*rNpusf%;H}7SIh?Mp$vXfA zg5Wo#))VPY0k}*(VxKT#f(7z^9o-eb-Zg%BigopCMu?klyO1OdAmYe_00O^$)RaaA z06jp$zhx~-%eDmEbKB*3810@tFCG#>TDA|Z8h8E!IHDe@#Xz;eJj<-<9OczRR}DG|IMxj?Shkt&BRAle>Ar-a8jQtlLBxMGIyH1QZprZbf6mETs1DKipDF~uAGJ*kF zX}<2F;3H8Gdmr9%b;qx>J7W`Fg2jBh)^ml9`cpB(TMszmn)b?hg#6>VW^t8Duk1LV zcDlf;2@+-u|7gGMgu^)xZwTH-2b^)qyGR<&KZb>G5Ya%YaA*=1m|C*nM?N1s*2Sdw zH4feF`hM1cjyqdMrLJ>495{A@XP=2vbb6aEDea;KN`5{roa#8QxBxZ@ZZmxfSc&&j zRww#C%RMiIZ#eNI@{U1~b)hlo>VGpOl~$07rFWm_A0{UdvB7jri$-|NF>z$uX&J=@ zVD6c^uj_%Bz&W8e=AHp`SB#x0AWc-S%0nHhXKv?6xs&0X8ZrhZ#FpJ}rD1=||CAAY zP&D{spSUw-NjW5vSF2%A4`1HKP{+*UcmM#3DK*^ zZM?iQ$%3h_xx*i+rX<540~mE^3ut}5sb>ij^R zCRll=8j_6R{$Wc~!TfLv;ZCg7r(w@!>tN}H&mn=s9itRtCZ-{Bp zW&+w~O0&#Xor*tOI4$p-z<~2s2;ftg?W-3Q2;jt>=Op%ptLeuyDQt9^=gh}A|G&Ui zlR}jA{l{&y2srGFjh2E9rf(Ck0?^zoHzPYzfW|6lg>1{$F7KR79F8XqTfonZ%`2`s;X%z9V-pCq4LK*HEvfjmAEP{lu{^cnm}5lg zVkRD&`o&<<;IPEGiTzU>jdi2>ddJ&Q&j$_o6j=NrtK~#=KL-kzUlo>l#Z?Psb&USY z!-T@9c*hj$OuR7bz*AG(+_Q0MD;oc-76oT5jt^jNH+XJh8!E;CnBStm{OK01V=%Jn zMhi|8cO1~~qXZn+VyvFAmBg0AR0Qu zSC~_TxaGBRyf!e&;^0x|TYNo4jSK~Z+#VhnNqC0L#Z5ATeS$s`j}QhxKg<7g(89U@ zlzE=!E!0$VgfLbI&!;Mf*nSz6TH=Wl(Zg|e>Jere5KnI zWOed>L2a?<{;$NYILBiKGiS8l-Z9G3T*F%i(}d<=JVLb!BhO53J#BFHtIbiN^McwD zt(s^>vDwo`jUIMSVnWiLzguY z;{VO^)(y6=x11gT$yq>S8iLV@jTHBYU^E_ELzq92JW|(b)v`0m>(_wW!dC}&QG!8l zFm_)DS|(gTd}6Ile$zN;fmp-p$u&fBz>`Wns$(^ZIJ!+h6{ul^$Tq4NoJ5O zAIZB@KMqTTgcdYS`2kyxGB=>s`z0*(h$)RRb361@k~*%p>MvWj{0{?YAU|=4fa^RS zt-IXSuQ8+rmy3V+$X{~AmA+Q7!m6c zKAdxp7=+GGT>xOvU#Wh63QuigM18~p{1)EGEI;b1L;m)ttNUjM_Wkh7#(!P=A6u{U z*Y7}xGqX@_lDOp<50;xtdg~|cW9E}_|Lx|~!$)8&_3GDMBaa<9df!-GHn`Y*WB;{I zr6tvJ-JdrdD)bh5Bot)n<(F&6(c}FQV6JBB&5FKDu)*I6y*B68T|yVYR;G{0o>#H-CwI=UxKAkMwx<$_rn( zXI&?%L2G{$H0V^FfdME^Xaib*=SbP2t6PQb1I(e!I@x|^)yhHVM04JEsy|v29mMn9 zc~V6c=k?~f=Ddd;if_5&E&v1lk6vj}T1U2h+Bs*->ZAQK)IGc0I3A9!tL}Hs)$E_M z=V~JTRskbRPps*0h`Hj`{VfW?SVlT01ButI=HvYX`jxts`sfLGJiq}Q?@)!%SB*2a za!=Ve95w*ir_NMa1lBYZWOvh=vEuNA*!%1mT@iYXt8lA$YUKs`a)re$1Q= zTno(Yob8_TW&zM5)Q{}R#&_QGX2bQ9EqB^3>Z-%Wc>U}Pc}?2Y#$4yRE_W9jhx9OG zj9FGUOa_Z~G5Ai6WLpYlYYc*aa_0>)BDilgj#X8MYg7KTCtGF72j_NO3(N;gO)`xm zg}|aWVUI9ax&3U|K)Wj^I&auy)0oK^-#D`MT-UV@#hG&Q6qnF{5 za(Uetk@kYknazh%FXVkN)g*5>faYWUS~!nA5H{R)%ZjIr=FEx7>e026-HYZ#c*`g5 z`Ovi9Ij^rxdMew8!nj&hJGm#Lb5~YbQ@G%rIpVt9U1&_KiiDl2&%g|9i0X|@HRBo& z6m4hYSjILyvcFOn9ks?Ex#C=ez+nX$3R_B)iwbi!k)I@1bmTWj`|*^2JXr7`_G53j z%T1Af*LnY3w`4kM;^GjG6uj&rDY5D9Mf=$}oK3cV*Rg0zD2{yZP5X3HqTibGmaD9j zFBbK+;f5rsQoG`7-fX$7+0$5m{nXBUs8n}US343YkW$^s5q~Bb%o7VMEOTvR`s!3i zp{`Vyv(MOOYT(j(YZ6a&PPWW;=hhhof*tR^5vG^CJhXXDGN^`b*-Ld0#aJ$rX?y3r-bAt|5pz#h)n9K;TlB}Lo|)=U zBI}RpESDYQf$6$qjDOCZMhf<0LSQkNv6WC@_@RNgQ^5r1oLBA5u5uJtJ8p!sX1T_| zIOkVcQV4W6bTVw=32wqM;rWZXVYWMCit3=D@Rn;%nX)VbSjGEg+dE-vGB9tF&13o} zljK0`+0v@$5i4WiG4s*;Ea&_R$>LQf>x`$H)f!AwUJg!h-yk(REIocQY>YK1ChK>; zVcMB*dslBwHWyb}=Iqhb{=CgN*^{d>sP=)?)$x{DLIn-Q%`J0o-gUb3nm2mFU+5cR zh%`XAeAiYAXY6OI>OaxAIbN`xjQMZbH2)}@jpLB+_?0~+vvJUn^ee&ACII7uYPvCU zdB5Pg`q*foUY#Tv_v zU{vs(jJu{<&vlOPDbyG*dotpxfs`j3_fsr=>O3~YyC#4Bg!8 z{0oQTshH7Ag7rxK4c~N?LBKPsoOkPBfsV$XpSMAh4hx@s!#d)MuSqq3fx;5)!S8Gz zh<7a7jhdO;Bt*2N)=oWN@D0Q|R04RX=4iM&iBCEe|5BB8-nV9AXSp%aZ!kY_qPa*y zEK+0rBp6ZJ#``?HdwohVSYO zDia(^np|J5vlJh4kZoUK$3(@N8Dw`8(pk(Wa2%= z`yAPDPloX(;{GcKN-LZqwAvyfeCX0-$nt%SzXW=tUzo8h?U|uS_MKIRyf2ZibKZ^b z$>|V@W134KYQ4K}WzrYPufxYt6Pq?M2QKN{S*G_?DwyGIkxcU7utGx7uwO&bX#7`+ z)E?C|AoLC;L#~^v$lOGqao!F^3fqmdW~{<^*OXT|O3A+JLLH`Ej*B`7EAnCIpIOHJ zJ*#iMs}BsTn_T4@X9fjKV@j{JTu0=Ry~e^Oi-J(PD2>pT#qGv9pZ{Jsn49pyOZ|>T z6z5^p?l^n7cWAtEKtT-)E1dHvCNmbnBXR3`#=;)B)PK;R>U&E9*jN39-J%Nnjw+2t z#b@N3H2>hF{_dj5I36s5+(Qq~wGSmdGb5gxj9V_!P1SQI$aE&$oLOg_+ip;6w#<4| zjK&L6=-vwJq&xdYU@RWY&^YBYPPSfoc_>D3ENj0s;;DcLS9g-P58Y@QQ0gqV%+7)i z;qqqJEjn~|ywPyOWXOZ4oVTsiW~!X*lMCi&FADDEUD5S>DzP3z+AYV3@V0Ax##`&K zV!u1b`wZhGt25+Zu8w&OOEt~8{5r?QFp&v+K8p7a<(n+?dZGZbH5=z^u#%okq)o1Q zuF1H#%6~J~lMOc)H))WP5uUD|Ys9nh9u|;=0};Vwm?h%f1qN0^e@r$S7xh>stwSvI zr4x=cDGR<3`hQk67o-}`#gr$*C3~r}$>v%AJP50sj9;2tDsuS6Y<@ews6(S5Zp7_%2OA z(@8II>KbXtgk5uFRCyYvcpnHeNAC|5^?SLr8B>1(7wQ~EIDT+QT}PC{d!ovAyb|t- zWU6*%7)%0zoLGa4WwUG1Hjww;d&sH;$7lk~#oCT4|SX$@E<{x(yc@vqDN4s<5jn12VljTcu^R#Nm^4|B--bg{@w;!Fa@h^#{2!%oD zuyQ0g6AP-8FEab`fIw1XNgq^X#rEnXtY9K@O6YTG~O!EApJ0%z1G0-C2rv?`UhhRJ-?yq8Ad?wuli{!AmOEnvpj%$239y!;EB*l#v75s zdnDFWJKjjHyk#b)({&aN1hV68NP=%96YWDsI!cX5jtLD+v_)^Oc9i&a&KcfrsW2W{ ziXX`8dNsF$%Vy6&iT3i=??8DKep9p3g2^*8;fvA~M9|NK1;dIk_?F6MEFHm!re2x57wQX=rxvg!GVmfdD?8fXGYXCm>4;5iAMk^ zn%_)v0wU*s1#=SPGn9nQ_|huJnY7(&SQ7TZ8NoBXA~?p|V2J}*9U53j+l@Nk+C_Fn zuW?BixA55BzZ42Y}1D0DdU@%m43b z!E>*0^W1b%?_-`>0yj7Muz1KEf|*@k;OtD&{|ULyohUv*nmoDK$x`NGK`MP&iW|P9 zHlsF#{uP3vAm}Wr?-qu>oRQhAL>~}AazmTX4%)o6mEut1`?CdkIxDM%uO!{3b`ouD zCqtHgOv=0?Mk?ctGWt&5^qkMZ^ugmTcSSXqo6iFGL^H;pjV-4xIshO#4=BBOPfb@H zBp5dvoo(A};cd0wvDus1V(#N~j^$1Dw@ID-V57~pK4kM*x$>Dxmc6z!bO3-Gk?rG9y zx08zu;z z^z?K(TFfp*3ae}{lPHRqEYzj4;VThJ8_K!}yTQry9~`1H=C(0)COt4`LL2vi&yglr zhiq{25!zn=y}Xn;rOL(ZyIQ{q-#^*f5L=^dl|x)8F3hB5sZvs!y!P#F_NRzC)Z{&x z$&4*!Rryju1?qh0I{Zkt<{&H>-?Q2&il8BSPrQY2(t1-L!jd{i9$gIFO$RFaVK8#XpxcMB8E`>@ zD)Lv+;^q!fL-sbv&cBS>-LV5uVu?PJ&3>uMa_RK5CV8;uShSS+P1dgjT%rtb z9>hf5K_4uqwN6)#I0Uaw|B9Pa>d5KzLK6F4q9gLql7JVB=2u7>QMUKOtUd&A!1VCV zoM^7D%#1?H%l7=3zh7Arj%JhqKLe?x6x~Q$_F4h_EM!( zlHMuj2}(3SVLxa?$vRu_fP#Oos#&>`xu39^0O)>C2Y^N-kef(`=pj@gC6U zBTai71E48nKfq;X%A)Z*BFB?v6GFsZj6nZd&K1UTC9VvKn+g4Mw!NU;M+80obp*=tuBFV; zuZpFMg#<6xnff5x<2JAP00KcaN8!D4c0N}w6sO~Do=r_QbX~~9G0#GYvEm;xQl+57 zgy$N4Pqo?XeI!RqW7E^cch#8;$4ZiUUvEgeS>1uicy{b&k&P6F`kQ)Lz-#-7+f3TL zT)zIV>P%LRE>%R->{#uo>qXm150aJ*52nu(K?@{f9;~YP#h~{%OY=r>BgtGYfe{VL(KT9D1Ww){Wv25s0f)hKWnm4 z?GOiArvH-7rgP;PRYZZl#=c&=&+CzmOUVbn%$DTLbb6I0-8YaXwQ}Q+q^ioo#!Yt)|_ELW%iETv=DR`sH*f+EWf7r{$;i5@6tr2Bh-IudPbL(Of(I>TIK zVWD8UQ~=N%KTy^`MTS5^JiC;YW-Wq3&7%z=0? z)E@+1LJZ2OVuptk-*IAYM$>ZrAqZ`33)=QVfDfBb++5U=-eZewqR3Vq*kJdXYKSOr zy_dg~siEnWtDNL8(uQkd0C#gltwjhD`!AU{#Pi7+I1m>t3lr@ z>Tq zQ`NU9dq8h}9pZ|@<_z;~cE|yhUGXIK1U_C|-eaZNS#5n@J zSYhpvoB0Qdm6>9HfIT{455oFaf(VOhl2K`1ZKamvLiSQ&bI72Wkjx)dR$3|*z%xY+ zQ4gpz{X`E(_qhp{f^Vw#@6{o^t`~EYsYk?LH4%6JnuvMHXZem(mofW@_&(C=ha~ z0Gj;8=sl(l*%yhXb)KJvyr%H4NQnZX*$KxR2Uq}7vDiP}g-e=0NGe5bLf9tsaU4nr z$O1FQd;ZA-n$SAb7s^Ke+)pN;QYEv21W~q6&Qy=CokOGZ-1t6CLX=LvY_<>@D#)#KC z=S>J=zpL(pN%JY`{tyD%u+bOUbx?Gi5Wm+uaw$tjn%+QGFCw7x0s-HZi@fzNs}AIK zfr+-4(RCzYau}~aQq;nE!3@2k!E+lS*`ps9XSDVT+4m|Gq#=Q83F35)4W5UBw2zDy zXBILHC+r0`cj#@}5btH}9y8z|zb{Jf%_pWa{6Lg=zOrVz|?*~Q$=3eV9^SRLED zo&=G0&_rhWk0M{G(dlrLD=hrudDwvpI#DmV1@#M@1DH5 zMk4&8rquv^L;W>q9g&;P48_i*sqD?tr0*b+Y`(uaA)pu8uPA6bcT@4!xxOGbc(h>S zt^(W0q3QCxZ(sECUX(RV?nU}7ROYWzK?KO*67SKSJrO8?x_w>%DT;m2zvd}8buzXW zA?*hZYN9NzAPjk6;M%D{XL(?bb}Y#w&-&Uh(Oc7JoPQ@j)hrCKeR1<0&h0PMIhCqDh|DeAR5(3%>YfPDdx1J5odz?j9Ff1s(!9v#l3h1UB=yiiuid*H zHSNV@bwNdBAxD?nrMBz}pXJhghF4z3)7UAYTw=*bB=aXPuZH<*huD< zEX}CYnbLGx3n%-YLI8xzKv3+U=VL8gsio;fI|8vZ`cENqn-7B)aasj72e{0=Y+7+J zFKeI;&<9au^G-@$&Xp_jsBP#Y5p3!)_xZe1B5}*?emw{;EM!zsel29OCDdsK>8so4 zn7$~gpkbB07syEkHoW-&32VWnl%Ank^p9DMwlp=iwL35t1vZ)N2OQEnYEe_8jqM05 zN}CVbH`%brjD{EULo2FF?_^7Y&GsDGjtM9^c);99M(^e_1-3M4FrOUH9ocK!-iT3> zQ~=xX^^xdb<)X?0_Bz6MhLolaJj~)oGo3Jo=k` z80~x3SXq>2N@60vodoF32#9R&q3P{I%7?!L5iJPH2KbEiivVo zY0I$SrghCHI#Rvu2vXMuK#|;6mD0`WlHp6<6yVow@`7zXH`C;}S;@Rx)YM0|${cL> zdf~9;;=GN#LA=XfQe|pPf$Y*IGQ=I}5RRr^L}HDeX=;U4G0vUQ2&p6UdT4kM7ewE) zrOf}4O;bQb;x`o)`;aGOJ7`Cimr|b;E*3KM*djb0RfZCG zBjb(xOdgGtqP?8TE+i9wbLizq=&1_ zVYac08DqirGty)WnYQC8OarN}X4D8BG2^$G9<>eP#;DioV}KM)J>@JHLT8uco0UAK z_qfHHgN;vlS-s5=Uvn$+aVD`)%&IHAn|-FfHlhyZa?{yLIrpV1O0dK~ZMOx%(0Y_K z+fJtKp(f9n3}sl5Zi>J(G8w3o&|d)#Bp@B0ZN7bxv^8wr25EQTEN~J$krWIBU_ki~`k$}yUg;pIeNu}&Z z6*WuMyoBq0o>f86Hk7#Gl`kIv#w71M5~`_H6BO<-+Y%!^@?sAAs|b}!c}HTyi(s9t z-HY0NL2iBha@NIFL#=*}v^SdrO&&aElwa>5$`?x|9bD14LVq7(_D~OzZcP&` zH6FhcRf}-;CJ3&0$>y^+qMLmVaJVpCnVHFyiWJWxE7~`;Aq2(g+MNZ%9|~}|{+=v7 z)a%>g<*qnM+^Fl~Q(|-qhH(UE`Q2>I163n#ttk(tJV;WU@4c$sF3kH05R`$TU}?KsH&p>S4B zsP7i#Oc88s+HMcoy`cJ9URbxgm*{+v`Yp@D&sVSWZ?ieU;4= z#WTeU#56vRppAWAp9Ykr==bwyis@omUZhZ6=y6it<|9pYXK!(GRvYxpbfq8L95CE{aU`oVe@Rrzg-EHARaXbib&bB~Ol>9`!ESa)rOM5DxtvhN5C+fhvu)l-a4H{- zot-HyC2#o zf><_vM(}W#3N$GLknbb*|DovZg4;IJd{2Os6OeM!04Uj@JHMgT}r?w(UC ze#lPG*$a!5JDJ+rsz`Er&fdk69Nz+z-2osu0p+9z04bYt(lz*?EV+BmE&-5|bEbAz z{7~F`YA-BO$(*^1rS#11-LYiH3*V|lihAGY`9HrO@sdb4i34+YC|ujKmEz;mTep(^ zv!Ns!pe`W@1U+n+PBZXQmI^@dDUt?Ike$!t?^W02;Gw|p_=g#aif3SCb*e8Q_i`KC zt%_5ozjccH%U@uSEPoWEpgcN{^bBm>={YTz)|0KQBsKHk6~fr$SLzc;y-?@il)ao+J63HBfuRB707hl#|zUzi1W`2THQWHqmd*DMl$0+NWAjb&5~`s zrp3f{keY-M4h!AkD%M6rtJUhZ*cUDjyqTUO!^L$j#`Ze->L=9OW)-sP-Aei5<6!MO z`Sn-%Qps47%22k z@kjTWWbJhXPF=cCd{^l!g{8ecYhRJkpvQ{k;RPIE2fWa~V;4Kk z1{73~H^!GHCqM|>QWxV<5aWE{M1uY0AFcrPV!NZQW7@-pP`rCR)C++4@D$_gmA*Ih zfM6;s|BxG9x~DkxRo|5A6GrYXpd)1I#Cw_MPl~~*maS9Sk75J>ke+6Usu8Hyz*4Ja zt8Zjpe---3^8^lwj`hcDqh)yI*i{7XotGdG`qiHyEA!Ntw8*q1USwUoxV zWn*qxdtqvK=kDxc9CwNE))a<=s#$pVasOX!1uNfq9R+y%p$xH8YEOFQcTvqeLjs(3 zq^qrV)AcXnAf#}KSqu_T4B9bdH@~=2)l}gPGOU8o?mu)aOO)PB`sZ;@5S8@5=&D()dwqKi@5@DfY=%my z3Zd0cT!&|T!nL60G3%&(c1lt$9lV?p^K$_Ka{tTUxx06qnpRkvoAb|63@Y(`=k|qq zvtF@GK7wY3qN>OZ5ti?s+5t2^N81a1@9-t()-M`rrPA0_c_NmLp27rmH4FJd>9;zr zsh|CrgF_PkSsA@hSX-BD-}`B5)So2-n{C}FH7YfytraqtD3Z-WoB@f_p<|u2OiRy+ zVj+gd&ZLK6NeQ$SGejky6g2h8Guz0ADNNmQc8SX|8t54p4Fo*DV-!`{zesw+2=Wh@ zN8Y5k@2HOZjPotfi6{tZZbPaWJLToa>Toi`SO4BgZjj< zj3JVM|Dr2sA`BQ|^Y)ZKGtGcu^F#+%WX)Wf!IZ%6ina9@ugbQ$Zv_s=^-4Z58)Ik^ z-t>5@!*4b<$K?1_e2n!V3K}LXep}GW)WDlCCvW?gx7Vrn9^ZgKsA%xf{k#8bCwN#h zpx|!c&m@q^W!Y3D2?h)Ws=Tm^yJ2JbaTW{|9gtiVk6Mp zvs~d&_s1@BJxP1YTE7(4MdSPwN6|Mh2=Jn*A!9NsUS_buz?WB4fnW1KRF=y-tyU9) z^22i^!Fo<#1j!Anex$>dh6V=R(k>AF*Q}3F$^JBg6K7-en&B?pH>|r)_DeNR70yy* z)c@;ZzW2zsc(9vTAd?h9t7z{DA27;)`^@@LG1T&u%1YuZ84R!g-Jw$HssekSoFu7v z7#UT>nqxlEr3Wd2B6G!oCyXq1}7EWsCC+eNTvgRdOJG#m;7$xn!or0&DF-qr^#i zfMViUXz9H?xLDVf5%-`hRaWuvE03udCD`fm$lyMhrgB$t6!v%mKt3ppa4*!MJL+HLY6? z0a7%?St&WmDjY zQ`Zbre5I;tNOJ05%|ZplTYyN048)n(#nwX`+%%g`0eAEp1RF;}Bh6wy{7RKse!%#8 zo8ya>#(3i(nH>F#>pWn#sX49dg6Fi50tTKTy+_XQ__k>lx5UCHFcCum z7W2ij;k~x9+-VxJFQo^cqholS8CZ{`B;U?@h}I7F3_#MsY@jbRWuTX)5gw^K@|x*x zr9j}fcs|2q(lF@Zv;D+1H@c?LvZ4GemCj+I6cvkS5KgGnEVrul4G-)RY8EeJPnzOJ z(-aM5qWi=#WI8a+l8Gb%pjk4KA~dHVow!=7q0~%yIE%!>s;7CYr%x2DSh(-Vi6lGi z1rJD&%j@L7Z}lFVhPh@Vq|*CkW-dmNknc{*X)5*gf$eUsQO1f}kE2mESrLgrtqZhDvIcA(fw#CdjOZX&0 zkHLK&k7Bu<6W1`irr96W(clCBmC#2MU_XOg!xRM$*bFyUf`y*XYc;D1^nN-TNnz1F z<-ic-=pGLvBoqGUMF5+st3X8sYI}S!f!lBss*T|)pFwkY`7>{@*KMiiJkd{!N}1SJ zIL-Evkq>un!D2rlMBuBmKKiFCzHB_|;8jfc_e0H+%E-Ab4Bb;fAb*nxjW=(>kTE9e zeTxWzm4Efz^ld%^I8pRfn#EeB-CCzZnQYjE(SR}yUi@Y}His<4;T|SXKvK0+y)`}r z%w0IiuQf3DJKd}POSq2#8GhiK>oOU>U$=pCe@;UotY;R1DdO{Q;L-0^@lqMDsjby< z`zIL)ghrmYI#BWlxqZxZ&YcXC(LQSQ)+}0teIv$m;?4K^My=8=@_jkFT+NW;7&@qT z8v{Q;cHpRx^izp6$0G40kQhZU-L>hW?NLc36|K(%laqE)WT^-X-yD--ljW}#G#cC4+e)E9d1tL(HdYFNI_+aq>Qe58;dP)riJ zS4yz}hR}(PLb!>QnXi5}Jmt-OLM*A@66Ml38 z9U)MKUlo8N3e1H$l=<6ZQx6u`|K}4Pjm+d{eJF$U{wRZEq$i3*>5F$B{FQBe{)1Um z3Lk^8W)BVYL0O*phyWc=!LH)Vhh-A!Pp3jzR{E~yU>wr>QdMyQlEX{mXP3LKl1ZCC zd%W^!T&J_A=1~OFOeaUtFI7!d3Nyui6!vb4*xF=(-z3|nrTC4 z@hp&GQz7D=6Aj&i>RvFwTN96GA_O6{+J%un{PM7(2tc4Fr^o;I4>-}cAPt8Nr$BwC zX!%%@x?{HNffIB`b?$!PBF5!3MDk&Ka`2CflE-k-{%AQdQV6T=`pBzw$nBQN4Y}x_ zV?6a_Lg)4osNKzv>_g6}R1_75Li3UyI(KXUqH^E%1sn{ zQ?E4Dzzc-~Nc5Ulfv_S%n)Y~XaKC7%5A)<~QMRweqRnNUf{?b?VT?Xwcj-HL<=Q zXrd%XO@Y558FETA`*H)i<{aoGyyqTpQV(8N!AsN>3<(^R$@FebS?WEzqN}H?^54e@ z7%}CKaI?~N3=lhVnsS_olgL;KAhEXTwn|&jPI<5+^y5Q>uMe5y5N-JxSD1TC5l#6# z?pAiyFFnD5Avq&~_bq*SE0p}!-B%T1nxqyGCPPM|qEp*$s@BeHA{ggm%Fy1}7h@t5{*l9qV{V!j z82l=Uac^D+5KLc67H*2Ns%U1*sV#k|X|1Qx;S>qQskCR#?e)>FyZ!o(EIRBA&k^V> zfh0T;C^fz5Zc6|3AxsXT=~#NyU^yB)aokr8vDgG*>5ByriD5Nu{q)eCG8*{$1HDq1 z*l85qCYnNNG?(qk0vyP``%*AfV@(g3)tdxIk>mY2STafnX051uYeDdHp#_Q!!vJvM zcfGo%6)Lq1_A;LoD_>s+1V90kd$M(J9bev!V-+{>!gWI9qI-EL$HE{9uYB987^-B; zYwM{?IEtLg(Sqt9)xK+W4At7ujW~Ta73HISaM0A6;p2@)9*IHcaZX=(69O6E*sK6@ z^wP(jLSSDt1MRkA^fNZH75@YQ$S|qRHYWpiq%U*t-AB(O|QD}~2 zAOPL$yuJhEKD22XK5CI55Eu(d8^+Ev71$7#WiJWZX`YgASKY` zQR03%&1~ulL0zMly;9q8-CDaq%_7L_`*|@@C{VH04ddHgA=ok-U}7jmkUmkVu2gv2`#2%$cML#*r-3m-L-K*6O5vRsdbpewIdqbl408!gwanUgMxYAGlW``Jf_<|= zrILp#$7&gK2mu|+=0aJRD|~EhlqDb5bwM%lR}DdQ6`hvDU)`L55jNX1D;9`g_rO?w zosLK-<(olgp$N_op2$|cwGXO>`}<@c0mKkNIuZ{0EfUK znj_j3kM6oUq+#pSHJqeAD_?9ii#?yIA?&xWPbe-gWu){@r>1~_{~Akj_`X!7yY6Pk zvJJ>9$IB!-111p+aPJ&$mIZ+eU1MY-Y9Q}Nqxq<}m|GW4VR70C-)5wQGSaC?&jL#+ zoIk%@MMrur-rpCwA1!$U?4uJYo&lrPz@E@H4r-2%LA{Dngfn=EVn$z7T-SX7|7>>& zhTJc6qriDO|IS_X^FL5mBD8p5C|(8_$DG@!PP3D-GyoWa|DyI?y(2YU_mA^%C>0Cm zGdU5{9vYH)WUZ%I>hnTLKb3|dA9(SlHedj=flEe z@T65Q^gg;ggHjYNS%#2?{;jQRrVb{^S;G4vwx0MY>hNlEh4WJAai8`eterZszoUFeNs0jrfy##1DTYtqZ2S#O%!I>KFzv9s(H z92(IoZTCzD&hotK4Y6n#m#|{6@3`4|767v9EK%&14`F^`we|-~UMKJvf=`S^kPZ}BNMT7oQknHf)@9@*WiuG6RRPBK8=U2 z1^AUt-y#{0q6`QHk6)j-t2-tahtH(EXlDs{hzM4WT3y%H9FB!k{R}wC5MY>$usgCp zb1em@86t-Wcbctw+pRgT&rNB3Br_RdiAfj~wQ5SdjPWW3yKkMi&%E_>?f%qQhDakR zI3Mh6xZ5?iW*CJ?Dv}#Yp<~`$C7{+rr&Z~ws;c>a^*GBRK$avfoQESjJ>5QHn9XR8ip&Q#MWc@B3Uwo2WW?I6IcZyq2?@6jMcfS)&; zPQ^a`r>RJmnoQ#;p-G2(rm@`Y>W;OouVZ3bTzbzxPhO3skW7jI(4lb2-7~wzW>XP_ zNcxMUFo@N2mH%rV2?z%A?y-?SZI|>R zmSk^WAhEU;yw_Cy!LH#aFMj>`rzEW|J5Js=IlDY0MCLFVTmXt%*Rg(dU8`06!AJL` z`W6_JAt27uh6fK!6OrM~|C&UswhpPvEY#)!a~2Xl|9S%T0L$4k*5|bb8p$Tu@EHPz zD@D6x6nC~wb?IW2te+=Fr9)9vl;V-zkDZP7&`UR90Z=PKQC+=%ESf%Y0hZG-91vQ2 z`DkF<34SqSaeF!sX(wj>L!O}SE#cDyH;1H&abfxB!CQ`L{zb4uGcp4ZL?lb@R9|18 zYtjUH;=@7QqU=zl)5jrE-K`YxK6C!m9OB;qXvEdhW@avaR*tJoSkP z!h~o<=7oWl*+<*S@9Y5eoiB8qLlAaQzIM89T20}=a8~ifi(k>x7?KhNC;~?xeZD&s zl`HMqYVQeQmI^d^Vc3_A`F`Cs0O-C`GYTVe#eVWN``%KjKgQ%R9_FJ@O#M`^3|QL# z8-8L36exnNJja`o0rR(RVh9+U0ARITdc3mw^Dkoo2#ks^{TO8Rpx=WkVvA#^zd8-S zG*w{DSPJ|(b?ZYe0;|3t=YTg6Kt?QKuY9MB!1BodIirC|RcsJq<%l?uqmupeKfKfW zYDxgW)aj+^tbYLp1T7}X{O5f57^-wQD4-(HYGQu5whpO*lklUnvz!lt1L0?ZuFUi> zKl=ev`fx6~n=YE%hF$oZ+u`jm-qjN;w&9D)WFn1cXm#+!tQAr~s(b@h#VyRWSKnK^ zoBQRP*TLn-aB1~Uo_K2&4Sw@>LmkFIa|swAUZCn1*8zyEE4OD+u{_$x{qhHCuNt`1 zRK&7ZP+cQ*$G0g%WP%9h2iz}H0nz2si4PT+&M&B?22@{V!zZd7Ef4e5MaS=Z)2$^} z}Be1@iMeIfeK?-!+PI#obQ>(WMVg5HN$NmUEWO#iRbg!gq$X8}LQ% zj{oywdd0TvGS>T2Y~M{seW$tgWU>ohBFAvfv%tQKW%PSpDRmuc!u@g2P&|}W-k4=m zDTo)yKykm$nLC9PwFq;{azlndd2edcT#VW_r z*&!Mwkf85O)an?ueDTh65GCpnrTEQUmcWX}p3`+5HBXd)udajdPZ0t@!|V)5Bf`$} zlGn;yZ<8~S;Ve3tCRr>rQt38=M^@XanS5V{y#xax93;-rR{PL$+p3}IVt#0_ZwA(y2FHTFzkR0rn7NeaY#jKrMxOXtYugrJeXlTf?6wcdfAabc$}lWy>*3vjS5{Xw6r^V!;9_h#HqGFw zQg3;L(J`!+rxXA%nWI4_l1ouE3>8~HnXixKab??2DmUaG-0oTUEHI+DZ9)V`+xZAPBB*m`lIj8sPrTt~7k9VFHfeT<;gN5P!k` zi+kXOEjVC+z;tBs^-VM5m{3twm;Bz{cFm^31MzegA;CFzm=OfY?beEi(pCkq+-I@$ zw6{|N$0S$2dAHqsShE_kg7!YTkbrY>nwm{fup;eCD)PegFhBs@ei6I0+>q|#Js-EM zLzPEF_zh+{N>G?q?^s=#jU3rB2Zs`aaB`%cKyBWFupd!N!_d zfQgc8f11*~UfaAI4}@E2Vzh7Y^@r2CM$OiSn9xWglAHEMc^dKhu2DZS+>Y5=kEBC* ze~u06_3fsrD&mn2oK1VrJcn~YEG$^=i;Y&xH8oN2s+@-swB`qHz<_U>W!_Va?6-#I zdOIVIoht{2b5yF2!E07idwo{TBNKtook^iragON2i=J!hb!!WRZ%wgdm{BxUX?XNJ zR*3$dpnVrI=o3SRdr!;_L*SNo8R30=3@#apq&jC)9D$}2SszQr@NK76YqcE9*-@y` zNIag3z!-;MZC5+AY7L_SmoLxZaL@;-AV05Z9XZLp-PD!f&XK;{QFMy*FDA$kfo2Fv zI#Hd9Ylqv;!z#w{#LXE1cwG#FzTz12O$LRyX#foFbJD{yhabsOAvAGnI0qBU`^931 z=V`!Non!`%^_&~mOny(7A+>g!T384R=tL7caht9K_ROGDekKEu>pIU)!UUTp{84Ld_p@U~G6Lm*0p>1W zM*sxH0jX8l)0fNnx}3shtZW{}Wd@55HD1F5R?G$sP%Z%Hg3HYn=8&D6ZIL1Kk*@aHd8Jwh-2 z>K~aco?Ul)Pco zPHc;3$oqgVcGZ&%No#84-8{S%i?Q#3%^8@Q^%`!E|VqodrGp{EO2yTb9$G zl9t%?`J@0~07&dqpV&*E-~c8H^2j;@|C_aE)pW5hLjv%5Dor8;R)1(Z2Zp;e4+CU$ zb(ZYQ5b|4%n%0)D5u9dP=BZI|K>drWS1RS91rp+748=(6@4VcxYAr|U&mlkv0e$dT zF0gXcbj&LM5eo@?Sm54_;^s+5G%Ndj!lMM3V8}#<9%*Y{Z?0eVT!!OR!5}YRJa9d_ zx9;8`00_W11$!eab^_7w(H1Lnn~b*g2-Ny z6ZhMuR#7~pB!)0kETrM0@%>IyHPoe4hQcGP^k^|G@3>t@L33;@lJS_!xjT9Y?|9>K zry=lEJQtARvuU^xu&v5|TW3O(X*QHa65|rES#fHn?TZC{=&V+&UVPXnK(GvV`Qg}H zEJ8&2TxxL7n?z=Gue|PI6^2o?bX1KhTeN?@b|q+gj$UHfwd-&nOfme^p7_{0GEZL z2sS>ib+(O)QQ8`~ogqRrt!jnwS4NeVKMMPn)g?AIMidyrxA2y}r`B5ikP;Ku6boQB z%e}gIl?+c;4s<ff%$1t zK;uY+AYoCd{?)O92Db)ZHB}M3@F*KVt`RV(#_{q5AN<`cpvlo{Ze?i0ZK9R(a(Ryv zRX&5?Kj2mxd3X?P<-AdilEm;T^Z%?Mh@b70K$T$m& zumLM24?phJYCOONz~4j_@zyLtaQ!I+TfgA!?QJF3imniYC)9FOdHWA!Dr{c zmF3au?`L2iLph%n5RpE+&=-{vsbNCmO8X~MmdsY;z*f*nB!)(28AvkBwxJ^0vE7qJ zQ$1cVdCiF}{{T+ZyMdTHoEbv2gbQ^c7xWE2hkL(`P@FEqc-V%x@7*M-7( zet1Uka5t&JX5KPcXRLjcZeHe{5dimik`xsv@E;$q9H2az!zycO~i)?fRTFU zOXVOZ>^ug7ic5Wh3~Yt@JKbVOMirKX241O1(fy`x0aoHDIsV0ka&@BiMk)&{p#{w` zR&&4F;?BJi0A;`|$rAT3Edv^Y;l67y0`yHNTKPxAQNaU09Pay7l?>fnK(Gjf8MV6W zxNAp_A&7XVuha+8HTx=qW?|@CO%b)N1tASbnBXaDnij>fc51HoG0FdrO{?_-=)DX9F&p|xIw ze9_e}h>xMV`Nb!A42L*Xd8=CT`9$@TK;aU_(ri+Yv~O!2)kANmZsao*Jd{MF^KcNY zsE1vyvw|S`qGj~WUF`U^ou>c*3_J^{b)kw}A_khFi%rqoR*ni$ zP>B5|o~8j`4p$J-{I=zZlc{h+NdSpY!#oipt<9R3%(h2}D1MWQo_en*s+zt^Q{a8q zt?g$rB=$&!W%G9z^mX*cCD<1(fV5ZA!B?v8*2+LKqLHgJi4=2(A3UhpbxRFpkURr< z@Xl~?09PNjYECn8%Gcrv|6J5)!#k6aOkuS3=vbvcVw?BtD$+6M048R#OU&o zRWtCA)w3{^rV-p29%C5=>$ZM0-I{EeGT)oO6w3lEKn)(3@0BM?O=Br~Ig1h?MTB}g z#r^Xh|J9aXsE~hNffehp5Z3*JdyU~Jhpem*7zZuA^k9}{0Pgl2c7_1wFt}#iX}T>v z1|x#@d?+?VBSGU7R@!Jb+tzj&_QmMFWDJ7A4W%!WqJu{TOoL8@o+RX%XcGY8o}cXx zBPhVb!1s>B1Jh)97pv=8AZ(nOPI>&WXDY>g04Rp$V3a`5N4wPoqY9hVz(d=P_hku| zx@hPlhvj=MU+-TGF<`6Or?VbO1^+1(;3taR^~4M$R&=Ol%00vanWLf#H5DJ_d^f{} zRafQShM`(t&vO_g52t!Njiu4zk4>kj z1Al3~zDVi}v8S6-sB#GUCJBFTHbh22a84>9=Lfnid!<W33VD2aqF z)(eY(Z_UxZl>;(DlecG6XoiN0wza?WOf-d}QhC6BLZa*#LD9^erUIWnQA$=z4Q!>- z^9X`SMh4on+BQ^C!^WN!LZFS`GapfG5=>J7RP^oaLiana>xu`m9s>FnkkA5wcme)G zDU=$VY3fT0zG)`TvUosjgPQQrKG)p6xF0aivr(Y1h^8QVN5A9N>eXd$v>mQBMLyi) z=?9)kLlIa!6;@v8P_fEpu=6CE3Qd8z8MFAp)LKSe)iqhnPYtIh84%YgT6u4GrKz8O zrmBxF4vz|N$(f6Py57T*%$|p;Rek(Nvo0gSQ*>mGB@{Gt-Isu+R=Zj8q>kf=@SDjP zlg^Qm3r~9+wfvflcrsLc96q}U@SwstA}b z6mL2yVCH;o6o5G+!p(;D*Pn>gbkR;g9E`{d!z_#KR63?%sDj{Bpsv>QJ`xN=9(6sIHW2h$n((Nuc6*M=gw5jC^3ru}=?WldMdkmV9~y64Eqk;uM@~l}uhFbi zqZ|ZOlw0rR12^M1AX;X3>6g!n?WS8r(it`j1oU=!g92iBu(SPuh+cwnfQKUHgGJ1H z#vdI;*yh13011amXfetK6-7zMQ{^0aCRpMGH4%9>-K zknuhnRk^^4p7=loidM(v@`HCH|C4RMeJq?BUHSm@h%pBXOR0CuTImGH1#7ih%ivG1 zM-o{KP^^70St*ME97`k#|20}uwNi&4@if45+c!LRNX!JpJgp8-2mv5?;1p}7`Q>{} zrT7fZ4V=O)W#xCVEF_fQJv3V_I|T8<7>VAbLEJZ%0#wbB*PNHGYiy{Z4?mkD00E6; za8NC9RC3F$^$?~daotVeD7hap}KsyFg;6v@KBEFOF?;S{=+8#f(1B|0Ya?2^U`vaho+^&de1Bi z_ota50_3K+l@8bUp&o1o+UDI6lix8BAs1J8@s*LQvUO%3W?OE6o)k~v$$_GCKg*ix~*p0fRyF+v{%<-S&~4& z$fz3nXf&Xm2%6V~!H)Dy24Q4%3>rCHO(*3AieXC4;%2AVKzszBND-k~8VYO}uF$qT zYA$vQ6DBXeQ+;?S$i3^SNp`;IsUqhim{CvPzICmAO%8XBv*UaWKZ6Tijm9!;JQc1f z;zL90a(7yeTd4w{-JO9r^fv^>W@*W+*UXArzZ)On&$HC@sEpSw*K8F=A5W*gRZWds zvE}iDLR9env)c?UWBzM7jFmrg>vhA?I!57QgNwd7i;yr;#)R1AkNpfODaCKUx?r{H z?PjqfaF*bU!RbZ%JewI61#`z#R(1ms8lt%i!yiMiRVfhadFmqsmfD6}tJc-!YM}W4 z%p)Lk6$AR1pgBxVS;ga;RcxDBis-?7- zQo%2?Vj(h5GT!S~;HPlmDl7QLpJN&)zvSRPmhchujoy83$0&MHPu*(*X8AgZE&^yW z04SG8Ty3_j&hm+&2kc8xjs{U;5|7pNd_mw6~zIfQ@B?6!&=84w__D#hO_3ma)KPIq!cnqKx2s%HW&-U)G z9I3UMsbd=Y`LVlmr@Zj`5TynR~+;8Vw#He^@O6zggwV}qu-4GW{9Q1pipo1 z#1RJk+;K=Da0v|-sCmtTw(XT&mFVs_Kp3yMJBL!m0i}+^RcalXMUc@`y`vuHXOXToaD6pV|1F;rDf0(N3H6ySTG zVa4_TaH43H-Ed0>CsPA`1n3uT24sj2E}i@87k3v%4kgzz^_gus5Mma*$vI6!g6nKu zJUgNX|MQjpfvwZ!8v|C`s_UX!X>x^Z7NAmz84%#|aA-h%VykMfUhaM4D*XCh-{l!d zft-%8(ExS|;_02q1IG#ik^pIav{lRO&Fk$t!>nYaJWmb%tc zVtH$@Q5XoF^xCg@QLU9V`AV~gm`?X4Q6z$<%SZsm{*H%zrTJO}wW z+*AusI#x}=kbH8O{SYLnECLzppLaC#SX0G3I&eOgMIzCD76<#@lQ$cVVeK{5lK#es zAXw%jYDN`)LwZY23y9?UCVdN_MkUAuw(?>(DGUIWCr>BGep%P~n!xUzVbE zMEZ#V3`Omr!M&dj8x=>DRztl%ar}j+XePXsue?-Tcv!YUY|F#1?Ua zOfivht-BiunA*`Q`5Q*&^5;_^8m>ENd&l%FIP~tihV~Eo0c$a|5KsVxHOF7sHvFBv zY}okiSqvOakdrabAOLP;_*}QG3*oY){ceu&YaNE6wKWJO}wleZEg%EP9}54WM#2hVeU%!h|x$!lFD!Cuk&+ z1e9Q{Td7w|n|~T2m;fmBLB;&H=82b-T=>>Pc*s*?kK`fb&XLDsuTQ{W4_gM(@oa)G z)^11n96n4d%EPM2Z3tZOB}h<^|Ml1ST(I9bT{Z7@jGB;#)gg3|hWz6BFanMk-`5pG zGd)S}Ct|A$VE_s=-8^(7+yJ1y(GC9Yf8x()1BzuDoM^pz02Q0x8_W9wWLm{fXS|`r zvIz!LQ>wD59+*4`kz(IRX(m_}vBFeqr(MH-_s-3OO|q$5!dn&i0O}dC%s+ zx97akk49L6;Wl+(`SrPMd8GJUR99(icjT4AOSLMDHOSM}5zise3FqhK&yP76Kp4pzz!5S; z!+qRMSmBU!E%Q)o6rGo76@PpBX+RO`58iSeVVDkNNMvXx;DhCKApbMxP=E!845e=n3XV=P zzGF#IN0glyIFQ2MI%HOod<*vz8@Js5j-dq_Dr{~0OCXcRG^;##`6mkW}O2q zD*r!hrD~^=PT};v5ZXE5!>X|~GejaWT=eyO1{l~480EEYoom|>f)Bir^w?hs)E#%* z@dah8c>fui4Z*%icHr(JgXRzf*EIV{)7x%E5EUh`73j~wOXMQh$Dr_a=~(5V7zEXg zy2BwOXg+a8>G==dm7;+|dV>fxn$8Y^HzW-`Ti6Q2l}{5I5j*ifXZkkXuM z!74TQ-%_F3Ow=EEXvu)kH{L3IZWk^ls3}O~N;3G~3+VNSQA&nWTKYv>4R*PBAT$q0 zCU^`?q*&S$f`(=~+|EzX|H!T^+{f-GPIFG`M@A3OpBt^AZPMUG`r))$JSG$-Pl z$66C=df~A8A75BqaJjlf-~ZF>5EIIx3_hb>W2VbrWldvzHM39k}Ub$=-if9U_XyD8Ok|s%ty6>m)zIQtZf~$Ht zA8l^8DqUFt((bAA43&*DOd1G2z2h3Ph#l>5rCOPjen)7?rLZqHH8k!iq}h`?&%{R! z?0eg68sLU?i%BPAX@+{|FHZgSl}kYE`YQ76wmYXn^=&F}lQTF6C1BTp)F*_}Hk}fsF6$R!d(#Y;tfplZoT6ukXN+si+5z zAN$tc=>Q@J;_$=Obb=)rf>}0!{M3O{^32yDY6f3%@bA1D~ zx*cM`8w3dTM@G-%f}&Z6@cM_A9kw%K^U?i3FB|fx+F;K^pMd#g zbZs}_J>EafUP6Qr86z(Y|IMKS8CJKcdCX<^Wf*EYgHlYATI=d&@dveJb&QhZ8*eS; z=7=#556PgaXoZy%quo?QvDH<9U{4mE`~OLLx9GO5Jk1vXP!{E+ zrb&R5l+@{I@gm37a~>>GNvC^W%2Lv+&s*7Yl6eFuCk23V49e*)0Hkcnsh))kWy$G2 zGXy}2shTxwi5J<`{bW&c()|`o&YXEHU2GlroEJT4E#k8G|NnizkHp4KF#$dYXvIe@ zLqX#i9N?3cPY8t+y+p^Aioo4NHTh0Y5%qx9`Z!IaX^)^av15mR zdqF-iRTa@*IEq*VGs$o+%|JMqz=-7|RnW8_bwL$4uK!=A*c6=>5bVy5$>YIT^PAUN zGJ^(Z>v<}kA!jH*fP*h8fR)F7eyECSrx^FZo|=}R97YcQa@P?{T~!x({Jl#qKZoLQ zb5B*EP<|{;rP!Zr@+lr4=x@kKv%`sXewS-<`51uGi`rNH{BLL3IKgEeDiA5~ShKF9 zVkJFCU^7fthA4cO`%$x1OMt^9J)W$v?=vI`A1bD6Z6erMDF6Mo0FfMAIuvijfWa9G zLV-KmAcn}|tyZ9>R?na$ylnLU`^3N`Ccf6ITefnMNvBX|c_9^?2E-rjioj_cHmQW5 zlNBmMk=$BKbC7Q{DSEoBzI?4Xfv>;dBb^0&oJrqmS#3U|h}E5aLoBkH88(Z7p`|nx zoJEGbSZ{jwEf96J-FGdG0_fTgnt3lWke-WJTBkOg3X)vmy!Lqv%VM(^deWgHfDpnz zv0Nkgw-l9<_**S7r1Wq1ABt8@>kD7Q{NSn#CgK;0{YU1`ir+Vt#znQG{YVdl`bJX2Vk{43XR|MTbQZe0`lFM%bAcim-Q`p+6E_l{?uM1pyf# z$>0@$L#D_G_UGH0WY$}poKzpV4}>v_@x9#&(nFQMiqaQW9vyK4>SBDQ21P*h)>A$tR3RQc6~qnK z)D=Hm`b{!VqR`cHF)i*I0)68O1Y`w4lRra3MXKxw9s&K5>P@!&4{OM3du7z!7Uzi1 zQzSHcZ>YIG>OL1GcbiL4Y$k_7X_AC+{K)Ynsm7n%MEvSM65{|!@S&4d$>t#ha0(6*P`pISUxBL~0atsU!6Na;X9sZsenBlxSEqdx@aeW_4ho$6n8iUbXp#;*c- z|2W<%!mYqg+b*|P-Gu@_?geY_W)q0SNoLRLs5>=Koi8{`=m(K@ew^gtAR>xywEV{+ zr-J@NkdBphAXfHRGx-=DM42!56v^q|(||BA9#8QEq{P;q3WbVTizm;+L_Wu%=`*QS zg|pOSLlA;tY>G++Q)3tQRL`bY4coMi>h&Fy8_19x9iJn(IGZ6%A&r(y^JLYK)VkIy zGAVc^_Hm2~lefBU-E1#973yPxq$uP}JPE=8PiFku@I$?$$Z%m0d1t$$mk&9B%Y+F5 zz#2=LiLR5sPJxKnSIA3mpHvjz6g{*liuEONjNp*7>F{W)Z}jPX-P*1jHiB}@drUlX zBZres8Sq=>1sKs%v7=?XZ+>9ZJnyxK7IT_A3hdtR@c`P?IRVywGfSbtbP7Q9U#(0$ zS|@?!Jzf~WRoT5LNMgg%nkZh{p&`w7e zt44?q{dTfAlOYu_jO@!`#2SZvVAM{zrL7Yk2x)n8(K6`3qiv}NB|^b8EEygq|Ms#E zKO0$@36HJ}*;MJ(iPA9_;vBO1End0f1u_oSX?=52^i64AC}BbDW5DcOYOehjSPzj9d}Tdv8A$OAC1PVDboL*ue}@ zl?x8}oeSR7$59Xnm5lXY8+7yxQRku9D_2zr8%~drf|G2dmVtxVG=it@4(*|nPUop)2G{s6?6DT+8bw^Y9 zs1o_M|NK0vCRncr_@8v{%_UOlFv25EU3IiQ*EBZIlQc$VB=ozEtU#}~HI+lJqX3&D z2WC>#1bEuP&h6NZu2Wy4rs#RnGgqmF_^ws$hUX%KY~nlvi^i$~ z%ZT{DbhB;@)OWTXRtu{xZST-2oDfcQkc6l>9BQ~)y@Qn7 z;#w!48fK_86_wnLot>(pO8Xrd8DSGKicmyfi4Lcl+KB<62#9-#q49weL$mU4@5}K7 zGt7nw+;VQVT}YT)>nI)?#YDKXQBwjfQIzTC0hWnTAwGeH#HV*#s<<#}J-y+D5;PdW z_symLy=q&3=8bi5oZwM34IwO`Z7j_DO?k?%HEoq!?70;h2%pJ@^j9(&DhBz>9xqpJ zbxa)*IC5kT5xKq?TKwhqU0Z-YY*g@(7>cXG#pND194X>h;F%B34GHBv$nW6#g_8pT z^o!z37KB1y5S%CaS(1v!@jWVd1($a9vek72Bd~Ql#dwm4fWShUIkyK5?P@#uMR`l7 z2a~WM4YiedX86)(CS2ayz*TXoH{|pVL1Q8pbP}lpV-WDgJ zYkFBmd>JO)bXs*zQ$C=R!B~nSw`>!CZi}vJ!x$UC&W>eJkYXpRJ7%})t_TBxbzJ`- zPE!{nIts2<>$VCvHpSvQJGH>)=MFd!%1))zag2l_(9O0V_} zj9U4R)AVIS))ugjhH8BOAExEtrx-a*2q>8W@U{B?w;hNftry1q>&TfIHiIyfM2Flq z)c-| z+t=ecZ%!ZyEboCZyj3ebQB5vQjUl|BYUC3HQMbNx;2swyfEs%$TKkms7(Gxr)an&f zSvxT0fJ3L5;S5SvfN&y3{fDlh84WL6I(R2|ot{s45nhyb-9t-tq-Sjv=ElMlgAKDx zIGiRS@=2$yISm6?d@3kpIFY4D0hNL=w5iq2qer$N-JT9kAi%;rm5GxP$^6k43-x`& za@=p`>8T7$Mg$p32ecPvTiP)E0+dTKA(c;rIPT5;YNuT)hO?Sje#+-&NH)RH2<{eo zQtM%(+7=Di3rIjFID0-$$5RwuS4{bdDXg_ij+)P<)6-0f3p41Vey6kH+M27&+Ty)yDyN?Q-xx;pQPbnFD7Fg=qYm`nf0c*(kF?hM zg(FAlBTl91Ogds$tDC{tU}PB1r<8Mgo4s``prznM3k8OH(sxfmSZ3J^BS`>chbNbA zwE*!(QbciQV{OL(M2v+yW8skR^y9(`Ai`koIzXr-stP zRSuYm#I}rJoMM07LaErBn`WRUeS7OUPw-)SvKX!Fw$p1N_5vy@+|g7H_yIy`>h`hMLaW_53Nrn z3ms4D!q-6|LBe4*P;00Ak2|n0vK~-h@bJoHQCPhFcPqCZAZb5#&V4mh{rd~PN#`S6 zefaY6b8mzbF?GiG;f8}afv3Jycp8B38-=#2qN`sgW-ip|*Yc!vyX5-_S;)M5$e6(Q z3MS8ZSLB4VT#^gbe)9MyI|3w6b4cJkJG!U9@CwEMpOY>LS!7rkh1>55RJtHm=h@Q*D?bX zYFsA&86u#3L^yTsL1HW-0;Q$92bSkge6@Z9!H|5Z?|pU*hq)1|ByKy>gMN4CRr1mw zuK1x89f6ukFhrVP>OA%r2g*&m3f(nCh#DvJjE7I>Z0t45ZuLJ`mo8P{DMX1_E18TC zIFON0YjNdo4!pA!!;_$Yr#8=@Hmdpek|8|z`ZMeQ!`s#vR<@WPq3?T9sqxs1W z2+We)@(n5mi%;rKWUZwZQ@%MEK*_#oq7wP82W#@OELMUk6r_XiW$|kL_Y<{Llc(nx z5*;MYV==>hA&VWuQYwj18w)aVl>NIO*77(YZbsD`zY5e4vUoj3m`A~gh_757qog84 zcc@6tj{ErrEhE)cYtsQ9g#jaz_q4_{E+g6jK=tKd#;j0cusAN=b4ehr;J^ zL%wUMT3sI?r~FIlSwW`qZ#_E%0NBI%RbCk#q^`6Ow7KWN+^Xpb>Kqmy!(!Zpp3ywu z1ViPc05UR5hnYA-$G$Xlt+``pow{ylLSgC6KOqMF0Y#-oJnc@5ktm2)jYqDjwRLL% zNYKMfA|xmQ?b!3{cHz)(`*(3RET{)o}eh2 zV*9zZp7ylV^4y!Iv1{N=kO9cjA4k8sTk{)nddN7jOFNchs(ETw9GM+p<0&%60-@Em z*=-kgY)$Y*TgKPL2i&dHX6=NlcXX%>9}pH+O-@WLq=W(trY8-h@h-Cx~*#0Q3OOS=C=r{vL>KpE!U1~QBt+zy>sW_G8aui(5Vp%dN){CgHTtBQkFIVvL z;~u!O^!qROa;Zd~I33j)VUXZ!;^%3U-Y`3z+M1`BUiQtx^jw%EF;H$*n@1AsRu zDfJhB3~ll9uiS4Ji&BD~MKs=Adkmwd5%R_Y0PyiB1)_4HekgV{FXckhTXYt8L0yQ z?o*5lQ$ct`6{^m$9N0A~R2&;lW)J|x%I&J_Bi}k+nZ^S02MmG&0NN{j^Xpx)E2C(j z7S6&=B?j2{7v8cjoaAwZSeVA))s}zDXz)}p@`vjbMx0{&T(eT>iLTgH%a6w>j2!Wr z)AYT0Bshj)Hd~(S*QoJnJa~ObfO&RWy*Dv_nXtSg^{lq3tD)atmEz+mM7$9Vzj+`^ zU9)2upfbnJB{7U)nw#LF}PK zpZ*;>@dMQVd2&PHO5LT)?n9n{W`KBxp(7@)I>#NezGGHPMeHL_NU1m->FmnVcZSq8 z01XVoEG~bz6d6y`U)~tSDxvYqsK!5WG_4I5uSgIRc{MkO(m3cledJaxr1;FWMa5K~n=2?Ken5Nvh}~CZ5#lDES?iI3Wm%PaT67=yX7c*WOC0nF zhxDE69yU6*!Lh?BfS)5V0-GXXzIo`FJzXvL)IKK6W}t}N zQ2tSY(8$7D2ZArDHS!U+YHhE53-rBnmf*r!6hek{slMCWa#T5!8liZVvviQHz_9ky|GK5;F6XqKqPWnjQJiUl&C6U+=ys z*_!D$2gbcgPLEMI6o485RS!%V`mxB^uu5FJewB1xKf;9sTo3p zCeiy~z#PA@5(*}!OWVfsHXjm~=1FWG1tC;0&ixSE?N}|#b&TgIz)mOPY%CS|UKP!{ z*l=V*@uv17Nm7&A08@4zI_331x2=mTLr?D9PG#6I6`nl%)>FXXu#zL4D1cbcW=Y2HKJ{5caP+)KC5Y$f z=%YPT&{W{Q{&GVs6ibs7i#)P745xG`mTCYtFc*$!${;=##`(8?00c`rF*pFjVhtT) zqvQXn1@KuEH*RffhVigst^4N0VL})t)2ZQD!7U%Fs@1C6!CZpTUiLXktk%GY>i+1i zb3uR{p%O@NqBk69uZtkq-#qr1gPL3}M!sOeNT4=Ol4#;}M~>k~TCZ++0_oqsca2ZK z+)X=1o%>_x*{&*ZD3r{P7U$DxSPtcfW8JMv*(%~^`hNh%Vo=0a==0m#!~@||j`3(9 z35!7A)VW=|g3-d*Myaa`m~|>V;33|{NWsb9 zG0bid{je=y$Vz8CKH>6Ng?{r7^8^_Ar%#wbB|LN}>Y>U;r^s;EN;hUvQBL<;JC$a; z)aD~+BK8;?lg>^GAc+-Dt<})w%A)I||MLMPRWMb0`g%t}R<2kJ?ASZ^rnv!%zOY?) z7Ct;bWZcNHw;l{_b2zX8NCuXK6?%N0t%8M9Dbn9+8V+ew&Uh|M<}a-FMf)VezUH0+=}InX93HGU%@UL&6+W^*?;fmgE&#u zj*(y{mIG0GsPFX!SQ`ns&kS*x3YB)8#vbgb+QKyv#o+UCwp3N2TL=DoQRCIgmm3q$ za@i<|pm!gfzCB&2;n<^19Su{F$X>1RyG7-GXOKkE(SJ*@p)DEabX2}7_C@Pf+a0;; zo8&-b(RyNdWx<74d8EiNJ8O;!)~yHs#{oSY(`ImJHmZt!Z*m>u^UM6`cIW^AIId31 zX*6l~e-_fKXG2Sq{lA|q#$5c~n|;95s*nC8;ERbPQS80}w~f*d{dv?=4 z=6kcDhq|peV!cNw6c*j8EXxWBEecEjmwPCbEq%4~faMrw{o3u<{_hAdo+Ar#NFSL7 z)P-qZ(ixekenF_>E3l*()jh7T{<9V>a5)y0Y~skXyTii1{HWrQ&3KHIv-r{#N%gA> zxpUwAovC539aZj_cEPNeVe89HwBPur>o>ia&>3MFDn;eqxrbg7|K}%O^BYfG2Q+J?>vT<}9hoC>I816g(!;RK>GT{YWq9c^9O)g?W&wSwQhjc9@)X9?i_ zsLc-l;zTbQMQ|pX_i6|A5^0Mk9#&$->B^N=8DC(D;`qeUSk#vKj}gIioIAgbswn+& z%okM_cl6a_NVw=3VMvCT{-))xO^FIS+k7fminyV2st5%(r`Ia+VTKycFp-L28gFhc z8_pfQ#NTRhXz&e}N0k?fX6koz9OmR}!8xLsNyX`OoDnw^%aFF&c%*zg>6#}mpAGOR zFA1wb-2L$}fS11hC^kUIIVR&@n4+X()2!C;rBJEX9*ZN`d$SY*V&vlC|G!0`sVH1L zjmXm9(vgK6JuOQ6ZlN7ar)eVnF$o9B^NebC`1?+wyVJEaZMg>nVNwC9Pw8Mf8$&=< zdSW05c41Sh{PM`|i?)}&WN^o**R_4eFooi$bew+qz^_0JB*Fd{mg)9{e5kh)17`vM zKQN5{k)k;j0e)df$^fB`O;Jfy3=+XyIE%}LoxQrN<>63gb=N?Lg5Q1Bd%#=~h+avb^A zcA&Z^m9_zR7)^~4r3#aTWmfd&!(Oa`&9}DWW8&xj=mp^>wLP z!@pP`j1>!HPvQe>M+N&w!_Z7V9k6~g%?P7^iU2pR2x6XzoSjBRbbP`VimT%KUEAH3 zyyy*c$aqLznGU|$Zt4mrJ(wM4av4TIMIj9Ol~+=C%u3ljHuXZg0>T;e9E3T3ZBtd@b_E5QM+S7M7TwXYN0vN%8H&d# zhRZ_l9;$80+L6Nv64~Xc{%syy?2F_BHxGgct9=R%lK=;XCG)vaw;G!2H)t+{1E0_g zm@+}Cv~ZD>zPWV(h+2?(>z^+n+}gdu=3w-TOZmyJ0#~=JJwrFSh1^{5<+ikFJcp?E zR^4r@AVN3}aQ0dr75U*wh{n@?=Kekyj=p+25X}@JCCXdONi?{3wdNHaPjS8I& z#{fnO{BCAKdB{C#`%AVc`}?lb@o7QuNOf@Nxb9jV9;BuS7Rt?eb;uNauk8t{&=R{{ z?}WZd_z#~DK0Kcd<|tomY-sb%1HV>;@9eskj1S<$#6Zv+QmS11zE)~;FBe7*=Ww_$ z6~h)~e{l`%Jd)up9k(bbx|)l zeZIf=6H1SM za3g%-g=SguT2Ihyj!Lj$HaUJt0RaGh(h;g02xZuu2#*XoAU#KD^~x;;i-ps(2o^tg zRMq{BErWyoOR-m&II|2POSw$S3;xK~>L!#70RE7*8YvU7*TbMz4^>G z{6=+STSbQ142gL?D7s5@3SBF0!+zC-&~S3_SA~NGiYyi3gWzQ+KZ9bC*0Qt1AxhO@ z4wKdV2NXtXIyu@CHS0++@LV6-#1gpf=ct=ID_}hK8EgYlaEuTN4-nwQ)xBgUJa6$q zmSxfL6u=dZizL-t8gf@g_uTd1wTPnlu+M&la6Z3+iBRnPka>T%1~&|V6F(X<^T8<+ z@=k$6%{`$m*OCv7eB5jJt1@wu?>HY20K(jD%iy^KxKtT!h4xluQEPFM@IOAo@Fm8R zIlK~_PLK+sR^8IE0545Zi}k(~>KO>xULXDHwRY)571U}`0Msui1_8q#rLY7M46U}+ zZNVt*L7`1B{qq)p50Yj3RED8vtHvDTG*vVXDOSWrIQPjN-*&Ir2D+W1zG^uzgJ8S&VnIj3`K$;+FLC_L6z0r z3T*g`S*hb2WBuU_nPFm!x8L4tJ7TM8>;B~me&fOqC>3WTTXLF(1KW?<3hwc>buf(Z zG<(UhhkhHuVEYp^Nfob&bz{BM+3F}&9T2BVn)LN20u1)$l7K?)+CD0a1b$p61)MV; zwK*`JisMVOD96(O@krAQRXVYBRUrpS0-GI+q1Ysp#4C&1A*lHO@XG_~bCMZ&cjbw* z1fwxXxSokY{n}Aok^DD)YIYW)ee)<$8V}Br=mggQwYsi}Du1`~s8s_{rC&W!xsu0^ z`0dXa78?s0?WNaS{-!H{01KY`0ZPo!3CxDT8lmtD6 zgIwo5 z471~8TEK5dX05s^Z8r>Kw-{!?bB8kL`&p~z*(LdT^2Rg|Om_Gbdf|{`py)Fm3@zoN z<9}{99e&7=fvg72FLt2duX)Y%4bK)d=WGh3uyky0%rkJ9-{?AO!2Ygnw3Ix|zA}wt zVG^b3B*q3m4Yb6C|5%fpmPS9a@-r`g?&=ol4__`b*P6D0bH1UC-=$)7N?^tT+W$<^ z`A7q$5BN%!0+!8*#s8|PL@pQMY0|0+_0nG(-gb{q7 zVku-Hbm}#G2e8-LrdjWrOA{P)1@=v_y>jVL3)r`|^)#&ghB!+C6iv?|u)poK$T{b^ z<|rj$*guT;aw)7(i-#vGmo|M9oBo9lcW!@*z?v^cBYi*n6Vm^!r*vDgFS)vqNn%U} zIYlACCU|pOR2Cbi!AJi2S8|*UQ~ZZ^o`PS0uBeK}H&P6H(GG_me(nd)l->Fh5$Gy z!ryJTyZXzo?DR+rEB@?uW*PiH<2b-G z?5{tgh7p>;C;@(BPcuyqvNQpsi4p&M49kw*!21%gm(mmk7aceDP?JMxjjBQW>*bezh@ z<0y%x(AN%2EmN<9J9B;)t}n(<>>k4D+3fIVu9t^9WkfOV8Ct$JJ~- zShfeQvokOnC!uKyQOw{*EQAqrpEc^;)E{~&#^DJbr7l#H*7%A%*}WD!c6D@oC^uKm$&Zkb~-ONi<8N- zsSFd$#OajBndL)s%QCC=3hci(4}{a6`X@0A#m*g@oo>f89WXdgWs(pJNuSvbc9_aKRFn~s>SnOAmG_?nn8!G=SqD?^9%_~OGW%T#nE@{ zBH-U!+flu!27os{q2ux3%gq;sI~`r?R6Ct*LEu>`e{C2^z%mN*MDM;V)N5<)B0WXM zq}%gpiZr`C)E``as9TjayJ-k89~)rjGZf2+w1hmWH#(}SugVJOLq0;G>mJPzD zen0QKR2g}vGC)W@bhMQo2vxObO0^-s<_LLuoMotK`dUclCpzuGv8#ynA_o60n`VM> zHl>-(L)GtgG=)b;h``@dGf_D$C<}kSzlp>)e3W9axTl`%stMHIDZl!<07j9Y{19>Z>Hcrt{Rie_ zmMMkF<=~f&+AEn)41or7Y^0`q#DsS0jh@Dt%EC1&lcC~tmO!NKLc?*NnYPO1BSvNX z!#)!CQGEKX<3h`C9F@1#AUF%+1EB<%i{z)rA`lJ;@OE?8k(@>at{2BrEH#GTh%Vr* zYPG%PYIWHY1~LChf&d9iM{eBu3U@i8%;i6tNWf=K%L|j89-!@GIJm)u+-mI?kEQoK zF?>G)5lYlqzlKRmh38hgRQ);=T6o_RTQ*j5xn~V8RGA7;R|jVKRGdl0DHIXD?CQ#W z$ATJs)$1teZ?*^MIc$m^t;-o0z=k$j`8$pVuG#r?$T#=$SJtwkt+jR4ziPwM?j}v0 zx<-NNu-|onwGISh-P>1!iIfOQ!$Xyb?`Ow?D4M)fOQgcle~2y118hN{%eA$qm4dz8 zwe>DV^#}aI)s&qCSO*}GGS)f^DW+sN>`Ky*&lTH*x^`v}hmKpZSBgWBe z^lZ#;a?MU2Dcsj3{DlI*03QR;_mTo&YR1Kg|Ao$Dem-I>zlzIYGBP;o+}Tqgyqt%_ z=yfe0J>`u7&}?x^!)?12J+ik%%%T}0u*K!4IV|{2{n*-51dwBV(G9PEgM(gFfJR$l z!`PA`%tBSyOE) z%>|KxQ048jF@8SGrb5eJeCA9m*gP!RhWSc55o6CSVHs+QO(CUY(`S;C}o=T#GZUY>D1#k-Azudz_ANIJHPsA|x8iu~MrU^bmWshyquuPUzm;2*ac(1f-U^n@jNPhmr?U!ndLBuA#}nIg-u}dBjog z8qkH#;{r6xWnzQr2`r4IrwAXhW?S8QTQPkR4V?<-m;{^gvekyz0yL{(T5ezo-QWPFgu5ZDzEnhN9Cf=xI*zFMM3FsAdmCWrK=CkZP+96A8pP;08$u9 zg9Fz{Ab!X2ZY_fbI!o_9zVN>zdBXSM`gMkm-tnxpWx4xpfz$L%iH@Pe*Qj_BC=`*E zOTYOKM&YRdpJxGoar7)pMfB5q3bwpHUBzIr^cw`UVZs;oh$r`4Hy}rX%*s zcs9%c`9-;NSbw{;ya+NFQ!bAMPHUBFtJ#mPFnow$PgA}fPK5Yyp zsdtWgQZ;-0Ol@(5YX%`?F?Qxc)IRmZZn zO$F|tEDy{=k)i)aoi_iJf{zq<-vqQZg#)t#DT+FuBw?XjS2g~N%fiyU;?I}O+gUV| zf+oR2xwp`PV0&bV{wYbwM5=!|6zyqWtx*05wj0xgOd9rIuQL&VeC8 z?*9QLDq`uu{3@qNU$A31u-d7Wjw(Rp)fAPBGc+-D081UQ?711*N5uMmS|sQX<LQ%kk1ZJF>E%U6<`h%<#$hH0m35UsSC%ppt?JTBn(6U=VQtG zDv2;v_rYg`APloKN4{f&pOFZ>5_xYDhWC}w%az{vQfe+bNHWM1*Kk0SIH`etzNGtp zYL5`=%EZ8EN6mjq1ZNSd&!ZpitpoKuZi7&^xdQazG(FTg?1}aI%9}g4r~L~gJ9HFJ zM5!C8sJ!TVWLQP-&{J?YOx`izK+_dCMEFfAwB*Gcr0hEAv+^N_q5=R{AGH9urwBk~ zn**tjaBhrAf!IY7(e$x5yA{%l*Wt^)*A$IKAC}f5&$~7Zo6a}@ukvi1iR1q-Rqqzu zwtesW0;C)Rl$-z{WrI@E;zC)J({_;nb#dD6iWl2T_pBL-avHDBd5C0ptvsC*OLnr( z>=%G?5&)DFP;wevD4UYgE?lUK)Ap1ENy%x?%oa(>PS>0Vi&Wa~^JK~C+TDBR%tVrt z9D2^v;f!815cKEo_rv%5{qTZ+fNgh9jU%cWKla1@)FhlpTfoxsh*R6+}sK`g+)TAQ#2m|T*M$<|%AaVUn z;^n6biqqr7GnxXkJAzB8Na)G8hP9(~z0ZjI-#NzQa9V)5^7?lKxuIWR?wM z)HEq{o{I#%(CVh32~Hl^lDmD{h1VFghei>gp)E1(nupbCDMd%VlGw>}cyn&l3)z<7Z}=w~-7>fXL9dhE`Gp&!p<3;siB-V7JwLMX&0PeW=S=k~$rW#2}CY`nI-9^`>Q6aE`hbqsh)#JdD5` z^86#XWFM-W5G>A3Un4PJ(A9PCc_ZJl(w+6HssJ9T@686Z&A1{w@h;S7v!_=BnD7Fc;@S}_UvBYwIVMqT^Vx? zkSK}34Zz=QDptiY?Z!-my%?b)>^MQBi(L29L(wT0jgB2{Ep#fHpy_iAg3&7K-}|Da z6PjTy=VAk7fF`|TxL&r_9V5RZ0PXJ+&fpkDjZ-a7v36}|w`P?p#hI+)C38Px(9R@^ z3mClDerVN;nqF0{_J2zPy%fzRL$@YHPTwxt_2sH)Qr_uUE7VdhiV&^Y=26i;(u#_1 z67y5;$yQ*bBPfSEkec5pmU}~MlYqPRFS`y^%M!n^N@{-B(hgP80NBB34;4XC3ek=@ z?VyENl6|n8@y2{?|2azWp4qW2d!|79vJ2 z1|npus9|+shMP{;7^zvWYfibDq2C5{cNpH@7g`KsENtpa?wRTa>M5(oj_+2dod0kWQ+n~zY)K2XebWeSoMdtx2pDm39LlJ1+-VW*|<7fB;-vukW|AqetyK6bDHv#3!ZVy4nDA zPP3H3zQHJq`^MSX0-}0$ZBxn5pAf`%@xgypAceaSixj9 z0s!;{v{K@*&S3=-EJgpYq1*d*8v!mD$D?y(zn8>%#uV>~8c?ZNGCh(x^Vk;yI>Qup z=kAGGXUuBNIu(m8J10Ite@0-xNTm z23y^s1PZG2+R(T4x^69vq341q1S*&={m)BICEq*#kE2X>3;>eX|JU!w-~8XEt`K43 z1xekSJmEmII&twx<90R0h;7X;izT|-j; z%Z^kNd6aw&`<~b=gu(t(!$D=auGf`J=o&@&sfw1ZDsYB=2O|+lU9CGcjUSK1X(YR0 zXqwV90U}~?OHk#^tEW6dsP24DPMm9j4?Nes>+D;l8`RHOFFmxi_3Y(Pb}CL$C#+_x zEnW;6OF?K0({5Yx;uQkK13n= zOWG~eJsyhOR_YC-7{|QBch747{*#;nUlz{$MPV~Yy+0zqs@>a=)hcY9NBFA(B}iMj z7b~)MiUgQaE3l?h(}+9#ai3;v$eKudufv%Rg~B4knI9V7)nDGWtQ-j)OJHM=+AJ;` ze%FOCMz?nynzow>c1GR7(ib(`KnJNP7D1UY>p&9jQH0C?a9^*PeDr+G8$z@BeaGQ_ zae9JxW}Sv4qXFL}11jxD+WoZmSK~blMdWu&bzJ5moniKb^Q3Grfhju3Wk0CqRhdFh zQvnD~@7i^Hp1p#_A!ebxXY>5z07XNs%(>MfgdUdkcITfM>fBZS*|!bk?Pa5!BfJB2 z4CG$eE2d?jC!Sysc)9Kr+nDnV7>1g=rLqBXgAB%?h<329KoA|nUghs>wKN%soTtK& z`9aOJ+(~adPD-T>r~OX=);j?pYN@_%8Av96&CB?$6=z+|fU$9ubQbna5%3|$s8K;z z8$wyR>h+Fc7;GIuJGkPEGstSy&TpDM>@-CY>S4ABaR}!1{i|4)b+!CBoJ_?7LE75j ziCR`Zmmr6f{ECy$pdqZ2c=6EW+F}7NbPBeeYS7ZQ@4XED+nc1gU@X3+D)@8ESVng> zxA>*EFf`~|$r>68H0?i)81k8qsW7D_t$pOzA&GZsh_v_B z8%YT5nCmk74nSLfvPour&~*erWJD_2f4`bT%F1#sZOnMurf!W1aPBhV4lWl?M=^0!Xi&sZ@U%^AfR@^U zmB1O;`9k4QG(pm|lz*as5_BE;?_&vI#k9*x06!0eThIsb-Bi#FFvcs=tL@-MF~*W0?@V*_FLP-X3nyTek%B|a^I&u9F% zMBf;cdHJ!RCa?)p$2`Kq%tpb#6NqKJFYgxdFHJNx?CoU67Kqw_48Z`UtoZW&^LuUs#TbFI|YyL9?l8hq{!ZyDyMTcdh1XO&1oK5)i-g#j?p^634W?A?*t@VIcgo zNYJj9l_v@{7y=X_u&}FHGZ1tk5Ec};)3a_sJwYhoena24IKZBnOpvNUCbvuC4Yu9% z4xVioz<^(qPY-A7sscYX=s|)5sQ7H%OtHe!J2alREZ{*oSC;j~tHcq5H3}?dz&$+9mE^2nq!~ z3w3P=SLM`oQdD%Gf2XzL!2~%oYE_l4O@;Vu8Znl+dwpE<7m$nqD}ut!O{GX_3iMPf z>Bn|9<&E|tm(*?#>C+Mf$-9E`8Q<-5Bi+@}h8JPeqh?YHUl} zk=%Fy=?%HWJDbwo5#La!2YNJ8w;UqZNro;A`w+3-s9E<$I%5F>ThVK>(LyrrCdjoS zeHH}b08^fxxwLpjE9cIB>={~mv-CA5@cnUy66?21O&5^tVGvHbZOp2wR?kh7u0WSs z*w2IFjcZ9ShOb)XqUmx^V;%!cm+wlmdB4C7$A~LjJh~! zp;5MG2B{>fIOXM{CcL#62!R z$68%L*By0L;~=g->FUys>ZQ5M7ZC&%8&;`l2&V%q>Z#N$xrkk0hB2UtKOc6;trC*GN7H>=2gf3x7O;3)&Z& zQp$CP2Uy0RZtQECj3wwX^rls=sRb-~k!48zU_q%DQMvy-L4aaS+*srwUxE<%=Zi`{ zLnP?StY&YNTI-T}LvaFD?WgM9w=&)+CA8MwivRJRKs*}s>XoW(Vq$0Ss47U?hM>9< zEPa(z^A#tf3df_~Fl29T` zl9BebQd8!@_;{FRYV}Gv{VqbC#|2#5+Em5f7#QQl{H(Jzr~81wE2qWu;`a`M0=@{{ z$-Q!9nnvsz1H=i>zMb8X+uKMNOU)Wvp5ISlEZPGJ`cuo_Y9BoF4vv!kMNjGM`=!NL zNA5^k61-y1TdJAf+aVP28b%KpA?N0uNW`$T%QRYl^o?bIgS9ZzGZJYF6HE9zk>PY zlkJ=O_M&oo5sODc-JfnK?ny>qdOe)b_i69Y&7);SQ|k4Y-Cc0-``_D@#8%uA}k z^*verv|V^^ibVQ^P1tF8-NVRNH(Ma+8$ONOs!y-qyY3=LRBKufbAmqyl7cVUIf_aT ziW$g~-vMw;(&~!r^-clGsSpmjCQ?7#ZOT$j9e`T21Z^my_#P?cKMiM~%isxnXV=s$ z_v;}Li)uo(qhwqLxWy^W8sIvraz}h2tUIcAv19y5_Dv z7skdR|CVl4=FViu!M8YfOwu;H_Z3o!%ufkj@Lt2388H;2ruV#vyQ417uUabb-c^w5Qp?(6D6woZkJ_8cyS__MWthg z?0!vx?W%KXItXG!S8>-CO9%d3PYgv*;&A=QFrD1x@!<>vtd|5}z&i?v9Gq_4XI?&V zg;XUmI04z5YJ^3#^nfpJ^N86yMdI~Y_0Zzb1RM0J=`?l&D*oUPuUz4E-uUs>p`d1n z>39Uypj}PTC`b?f{zt#`*zb~T)V7}%^X_09*U=-&V^}MP-f2m}7&qgAg+2XmMd(zN zA_Uxe0+%?e&~*+?#nH|YTiNy;?ugzoQ0#JKgcLNETQ zW4UH2J>Fri@BbV@$_I#5UwrCM*@UM9x9`p8}?Y$FAUG&8r&9$#N)}Jy5eX>0rim{ZoBP{ zrliJbEJ&aETB^x}`Vo6ILkRbVHwt1Z7~y)~!i$>YzV${=4=S1q#imtA#V1gzpA^fM z$lM1n2`vUwp{GUU7@b7e{vj*9udBsVRIqGy+!q&?T3HdqTO{gO#gKR*7Q)Mx<@vfO zEc%9dx~HoKIfbk8<^GUhrVsPw0_clT3_pP{g+QYEyQ{#$mR{s^JFh}>>CdQSY^z=_ESMY| z@UaszZQcmc@i^6keRyQqZn+CP_J+?ll!JLPhkUDXDLRzjHQ;;H@JGbiuhQ@%`I2HD z^RVOM1F1NZ991Br9rWhkYy;`H0N3e0nOi+j0U1)DK}sbuUGGmoaN)y6MJQF)7qO^< zWWt%A{zR+oo2J-_l6VSui)&lF#PL5|eb0K)-N8%d-Jo$v;W7^J$+ zG|U-s0@%t7!XSx4)Hf>XG2F311}($(*Br;ihy~fTs&FdmKJz~L^D1J_#oHUYdNgl= z*FhNlx_xf-o@q`2t})~Ln^2aM&5?aXZ0oq23=U+Kl7oLV zMIJk=2w7Ky^HFa(Li$f>-aYXefI@cPV_0bGa2~-uwg{elr3#krjh+PP$+TK;%x;3- z>o_Ecs8h5CJ(+1sM%2>r34`-|GGb*im$>Z4V?=a?ld1rGX~I^acZ&1tM&9}a316T{ zBdN7G`Oiu!J#!7=_~>Fswq!ULu0s4!rN-M%Crw?&Y`f(7Yo6*s1B9pe%Wm@zBRlF9 z6hei4$+b{Y2Leo-ZO=FLqf8L%oPbrOQUWZXKS={=W%EB|z?35)XfUK1YHgh}k!vW8 z2Gyr|i+5jR39q=lB`c0NfU(S(BdadY^_?R6X5Q~ot$K09{_DvQogj7p{<q8D0H!+buGa2js4qaceo(ct!f&RJA#D3X&B?rD@s`Uw3b&SD8=pzC zQ9ip>+PtH9Vbnc%-)D!MLuiW^SpG!bBvoTgY`Np|W= z6j8*ovSmSpn~3PWZzy1YdbcFx#!+-|RMd+V8O9T^uMvuU451vjQ#c{qoA6=70eH1(@nk;^ zwWU{WgKs0J0+3K{3aURB=?y`)(EghZQ-rFG(7&L=U{KF*RY7*#N8)%ZRI9i8QbV08 z1m5?*`u9+puI<6mei*r(sR(E$GC4O=THjQG@qU7`GIvbj*=}M)>O_%W5zr%#2@2=X z$Z0>iYU%fhFf-vrw)9+MC%(sO~I-7E5@H4eeE@b zLfgcO`iSdVJ4c{pUZdXF^a!QgS1wJt`$acGJhY6s>m_jJwy|p7ja)@>NvrJg z1S`@JcB57V3WRwPj6%r&!H$&|hgQ^DPyZMstCO;6S@Xq$#l9LK@>Zu993-j#8j)U7v(l5qQUMl9B zb@Mdh9mar;9dka0#N_C!RfoO|&uyC_t4a0ZqGY+@<5vSAf75R0d&>MI9i>EdyR5Ya zYY=3}zCsWF!A`bF`1%u3Ueuqcc@<2$DBSwYzmN;WptI%umUCf~{UjoU%XR0a$5vkZ zH5I2@%UrSQ8h)CcByp>0mP-bNPO;!QCdlK~ZlkQi-asr6_k3Y-3YrW6Vr44_(1{)v z)()L4=f+-(qUjRkl+s(<1yUHCrbqzVsBaa8xg^ui0_iQYv?L6YGJLyArC?=BQSwDL za)luS#)l0~sCRLzvPH-VI!WgQi8=slt&iCbu- z=i~@vYQmw}L-CGYN(ErHZ0EBDi z{UG$#e3yCVs|s$+?}vEoR}^rE=br;M;c3^xbHg$UXCGya%y=0RKKH)GsbNVz z$C2?Z?YBRw0?K;kw(G`Q0H+pRl+#XrCAj0SYTt;r5CEZ;=T2CE7_oC^zIP1rMrSP< zjUnrf4Ee^CCb|P%2;-cCpA#)*UEG8dh(9&k_wgkFFxyM}C$ZO8?UM^<#9 zR?vnsAM8lsxzv?W*^|{;#;7MI}vzDZJQsFkAD7GX)qm$j7Jb7xa4gQR3P9UgZ1-T^=th%8iW#S%_Y z)2-7KH|$a-5eLKA@NT)Jsj2Y!bJVlV3U}?=9MZMc!$!H;`4{So?x_Ijk^O&hv=o(~ z+++B%V+kuo;uk0giBS5fBm0I*$un7iChG|F-lmdn;9_OPoMW|Dzu?G)bS|f zro-F$f+)jZh5B3hJScCJ=g*-bG0rXQ)(n`#e!*ZtO%snA7SP60g8^JBm8)j@vx{R0 zkIO6hx`E`dL1rKQeWvb2|d-_6w4dtd&x^)Jgir z)D=~B_$y=_qQv}zvMHpX)Nm$&yhe%mfo%X?bMIiJR9rO;h41l=f&TISIk0Xx*BED8Ooe)V(PT4^D_?(FM&h%}{FZrr=4ve%5WS)(jUN8^gkW z=cruQmprGv$XHtl00=Yv;i1FFs2D1lUyF*s4@N;k%v;83vCB%8kIG5}x#E?;`)9E| zt$xDk#KFa$BukM89aTlcGOwfl8)=|gAc5y=KE$1b!`=LAjM z;EBa|AOI!-YyOqo>L8>}oZGb3I|ek{{GC0b!0!AS=bTpzNhW56Y#&*c>&+L3rut8Y*&J*KX5rN6|zW z)f;su=|Td&;dG;P!LKSPv|?Dt!zn5xuWr?I;~;`~&wgzwr*Q}Z@paSwO;@(jP|=1nF!AF(Zbc$S+@6cDMwEt7{Vrit3%fwN^;`vLuhQ z)R6DRtp=kj1X?*JI+%B_a;z8`iM|op1XID95z>MqqAoiQB}{5 z0C?Iif;Tf_=Ij*^Qibf7W!pR!qhM}z(KXyY6Bx$Yx}R*MGA~<8v)bLMHs4h;)!j5@ zTl%GB_x&nd`tRV(2->!wnc+Dj9RKC_3`sl^`$d_I4H7SLa#!l|iK;Q`rlUdegL_>c z94LNtW(>jr{Mf59kH7GDu{A(*!K0h=t?I^|vENPuT)TMh`BR?Esv$yPxHp;^D&VVC zQKOfx3moAPHvLpyQAnt>@6&(!^rycW@%-uRP7I9C%CiSht_PX#C}!Xb_Eo3VCv&5^Zrn8nD7@?cZP~H-)m`SEbLxAkah%! z_WHuad+lQTUt#q;+;Yi#K&bui>D(00kp3n0TJTu6Nvq#o6SJ!H4M((|(y+R2!FPdI zz;~kFKD+LGp$Gy*&Yq+~>xxE2e0byyS&16NZbi&kXj|Z_YD#NUa4w07sfRVFtoEQ& zAS}ptlp=&>h+g!K7C_AZ5Nzm{QFdS1FisB)pdJ-rIc`P92G7O3+tt-DnM-v zgEg|mA%B{|NVs$ySDV}zmzU+P{}uw)78=?B0mXd2sJ&3TM?m+c$KX_Yzuo`>SQylv zi@dlf=8pkz5d{7|fdIEnFskS@{P9&YuN3i_Fd10&L3wH4J{qeSk9Uu;T(J@2{k4uysVp>Sv4)HtNy7X`AP>q>EEAf7-(St(Rt z^?d}4kP8c?TBd6|$MuK%(V^7MN0J+jG0{QKm%39`1aIrwZ~>x~wQ@cF-(CtNg7q?& zEg|m)k`U&-RH@e#9_VMsDQjKGb*RRvHw2YaQGGu%4skuyKv%j3HM7;!g%BvCed@L) zVI0ysiEkH8K@QT>cBQ1r{K5E74aJLwAFkdEwROnkzo4*Ka`n9N~UvNGtYj zH41bBmn>J0r%pvKLLHx6Qa2RQMWpXfLn_~cMfF1?tr^GS(=LxZvXjn1$AjELrzn+W z0kc26H%4O54Y~a40kgGih~6nkpHIuK!QlZ|DRz~O;slm7hE73T-m-3G(;wqQ=8daD zd!xp4u2W;6FQ^OaP16KVhI#KW43Ov#pRVL^&_{Hw_4V9r^P`24n@!L|7AE_17_kQ{@ zGfaKv{#QAGes8ZTE{lt?uKCjw6rkG8(pLoN^Nx}-n5}FXhzdLl(IL=(w4+zktQwf5%#GWcxgEzkW?uMc)5*hx#Q zIv-Rm;a2cik{#A+b}hnBvd=#B9Xxf@YL)j>{<@psdI`L|W!V`Oou&}3ZK@xZGTG%? z$s=Q@;}=8XvQnfG{1iT$0S2N{t)^+pufsi|WBwaMTTQDrCy~#welX!p4gsb8g>uod z$3F6(Wbh&k4I+L;-fm5i`yZr+$#p18p=(}$YEmp)yGka6dIRr{dOO4ECq&6&|o z9Hm3OXcq=PUlZAP)6nrzwW0Eh-**}G;1~#c7D`P8y1AK3QW!fh43)O>MJ;4Nof32* zi3`OzwNUT};LdJ!$LcbU{F{m~9rKskuBp0J7I%0sfW1SafVgZ|J)7DNiXgWpSTNSU zrvHyo8fkIJJ~V4JxU=sEQ^1+u7(ZQt-$^T4p+e4GWV>g2zlW@SV4Ca2Lifr3Fg@O9 zsqldS%Hw#;b-$Jjd*&*Lx_`61U$7L-j)`aX zV6Bpuv(oz`h(~x*0$tDc81*a7N>xGK6O?zfGdCnvF}U~aDX5G05jO^+JYhds zF{=Q}Tts1^RIHylpf$Dkf0q>Alk58U4Ax6QRC-@q-qH2ND;UG1Kku_Y{bvY_qPEb| z0>6Or+<9C8(?_0tm5YJ>7sCRC{f7YyH)2Q^f28NPWfF)FpaKcF*%$7sE=`E;fYHpI zqEnuUUm!)HpnR=xay;qsBipu+pFitGrqPYGurzdMj!(jY9+DB3OONXbk^=?(sm9$P z=tN7rHp@2u!I~Na9t9((VZG&*hb%D|@dM6kEr+`x)z}bCMNgHiFp|%hVp+^er$wmL~$&0wxbK3;A z6_U7@)VHeZ3g)FJP>e|%w;Li~LuIx=za88HT(ha6chSI5xbaYJg+4Y(lm5aBj^(eZ zRPN7Qp4Z%?_}|0hSR|BI53S{*m>EcVgXnU}K2YJ#2;q{{r=VMi(=74aCGN#iy>wJp zk-5%L8%YS!p4>G|BF`K(Mf)BeyTJMZ?REiBW%q~oDEk8t1{8AN=HSQ7v8SkWLF z8DNJCNSBdH%hTxBLb}S2%qRNWGaLt#heG~D(T9$8;z5jikb_gcQ6MsORI^$h%Cl1_ z8PB}(TuBRWmkQk8)G|`4*DBOk6k_h85$XdY^=13&w&~^@|HPSohV` z1nm;F#uthxDDKcnjBWd_=|b$vA_$H=hafZTC|yr&b9blH%XdlW&qV>$pw#z%6`5iK zLFrI6m$QY`1P7cZ8Pt?EYSLUg{rSs1gM_~ZxU|{D(~OdK?=OpGoj;QPh)f2Mnakn! z9ZP&Hs*?D3e4L`AHw!>{C1(U9xxn}+X^IQxyHJq0_oV>d7d<1h{cCClE8kiF0Wv6^RQQ&i(X!te@$AQZ8~1aWXIllHuptOLY@m&#Ipd zr;>3xm{*$KiU#sARQ~zLXKRc%fo~KWusJ}ZXUdQC8K|JHU87uAy~J`xS9cq#PpYZ!Uk6*OiWHGKy-7V(ZF zqE!50^9Ta{cYi^lF!z#n(0W$?K1Nd*v|8FxN&8W#zcoRlqLn-QmHe{0XCXP}Sn}-W zt}%MH*il$6BoY7<4jjRGr>4D24N?@*l#1oLeOJF2xyZtzT;DLn5_BUl=_iF16O2K@ z^N`IJNJVNuAneJN2@S=aYPe3&naSg?HNG@w?H^O%5Bn~dJ>Yf6-S?F9OSh0m- zs4TNnURK-?{#I8xmv=JOPe_WXo6FvrDG@F{(YIu763zLNQB1TQ=nzDYp<$%o^Q~D_ zUF11F$!U9-q142drO#m&?tB;@Z0Mc0_JfEbcrR2IUWOtEK>@&|v6~-*>QhE5!aY zgcRLepJ)546S6ip+7EKNe_!9B1Jx_AX6iGMgOqL3oU%sU*IKtmZFT-~xV zNEDF!R_*&+{mk$T>sS7~kU=<*4f}qwSrjzEIC+LTz!Ty2$C{8!%g3V$9w+k;3pyV; z>l=p=Y55-cVUBcB|Ea18x4OnoQ+@KwpP?@`@tbt2a@8ZfeF`O8qPoFP&yv? z@n$M*WgE>*1ne2|(Gn%;-zuu*#obq_51!qqF+q{OF$f^#+a*q+R*XHsI|6F`*;_Fj zkYCtzUsXi~!+Vm(nJ1Nc4sa)kIR3fEM7URW-;3qO0BFI`8|Z=zzZb)z5Z?87d=Jty ziubbJ_aqa1KMYYH@;KBJ#+i?uKf# zIPM(?)j=*uaUCCi1@j&m-l@iJ1XTnJ52U8K95i$Y_hvv-VetXrP!H zkNveH;w8;lv0*X#k#HGC7fJ^_9gmQJ3(z0t3YceFTvY)s<9jQGb$@W6aukbo?Jpr+ zOmq~{w>D#{6T z3>3qCPi^N|0+o1sp|sS08Ne0y&3x4xnN&;xsMz<IiOZ^lj+E3N=PO9bK0z_%wE+V)9 zNjv6?pN=OOs8|+;zH!n1*v1LH%v~)l(Yss3Le=XlF9jXO$b9N*B;FYgeQK#jEHchS()n^#P2Xcq{*!IUL&uU)IUUoUn-!2T}M$aTQ@321G+msWMsxv7<)fS15|i*-z=$|KlL_40e++XVO=I&^duWa zzO>YQRq-VvLD1W`zg|`$AayZLa_J>$uVVTrsBb=&eW)&lWM<|a3bt%ubw^B55rpq2 zcTGDbXcsS#h`LoWALKG|DnJE7eMeSFXmEjX5(06%{;k53h>M*J>U&Z}GwBNqBBSXi z_72xWDyZOT*5pyu`56-r`%Uw~mMItreV&c`O>Jk@QhX7XjET$5s>!*67ug7`=JnjO z)(O}-5^LWD1)vy#*zs9zVZG+KdXi)(C2bW|g%9nFqbk>DJ@%A;J0%m|!LWb5pglDK zFczoy$csjCgBL;9Bq46?W4Jg&#t$TtWpn>{kQ2M+jztB6yD{2zWV8y^F5mgO^>=MC zJj1$1pwI9h>>IcOs)r0C$1m3fMLEwR){*Htvors)_}8en|E%@MpNS$zrH%s-izQXt zO@-U~vdA|$FCyy3;@oH(;tk))-2nWhZ)M&;gSJ~-=2Q~W9CBh&~b1K zQFH%k2Ncq|6s|?Tco%`^i=j84OBc+(`QgCNzfz0{)4f*`q*Jc~bFjZ>=EuP7U$LKR z@1lM1=2HL#j-4sMsPH!E4}xob4|iJ7>-jer>3a?s;;7n>*0|4-EFyo)0dsexB0u+L zXNZG%sI8q|XI0=Sj$wVPduj>t4tGj(&kch(nwu8H59^w-Ln6W;1D%2`Q!FGu3MP=W z8?xuWyH^+X_y`t>=Gv|7SIFE5ycF%Y*H!z@eJy~LdnD&|lnYUMTh{>~Jpuf=eMs$P zXzG$_E~Nj&GGlGT2c>G(#Ea!~!TD(4r-`nQLhWC|b-tf)wFTj)s;at4toLjK!vA;; zMd^{-g)KGXpQFg&5t#-)?oQ22&&~_rwBH47H1|}|O`i(~u-V*AL)L{(a`hgkorF6H zOuenz7&AYeL09hsoC>-BX@2zpHnCVFhS(1cJ%yi+M<~M4zLturASl8`<{Z<>pxVYG zLqVuOP|^2Gt*f**PEu*ALE^7@s3ceB?56$ zsBe@O5mAP6*BQz?1*uQUB|9@UKv8(wsx<8a8lV^wvQ7tIXZUuhQaAOx55Z!YE*#sww#)I z`5yeBX*u(gv^N@DTyb&}U@k^9>vuN6esq8Y#f}zH!*fYA%4yt)wOv@2DJVW2N73x^ z|4Y`}1-EVH>7D>7+W_Sx04Uj@sT9n;ALju%?({tvCAF`7^wN(}=r@Jq9U+y-T51^^|SO1ii4L0NKo<{T0rC3l~_5D6;DoT}ZjD5bmSRP9zQ zxzF@vTXN!s&)#h9UZ^DDf&}nB|L6aENWAasx=pl)=_T2icBIw-)t3Un=jzAAxlb>` zXr(sK{@g5oM_<~(!k3{^;ZSt>af(4xs`RbF2_*gjl@%3aRVh8=aL67QVi^mnH##cD z&ImlYX1Rcm3GqSjTHxy;BwF-EFMM0=AryEYMN5w}WDoM4YN4}mmrW#b8CmOSAWDU* zxpSRrh`0W-ya<2tWB&5^{pup-<(;zbdB}(Di{W6=zm4<&!EoMfQc5&h4 zAplOGkmQoRp9(x# zt@VU15<%QrHck6qvs5<3yCr?2DEiVLUEq2|EUUtMmM+FlObOKMM!TYe!E0FbOUW#E z^8-;9`t%D)o==^b@BY`fx#D^7A8$d;=rfcZNO{_E8+NU0iX;b}SDsV^9>oE0Tp)qd zQSDHBxt;Rg#iQVcS+zvp9D^+Y!sn_H$uNK>Hl5O!(Xf0A==z?rOOxln)jga`V-rYa z&$J7_Wv>TOv1xkJ=Z8}ujB=JNWQPJr27Q%_ae%P)T*M8OHVj_Af~LssLq%Mc zk=`LxQn*kD2q;eA%iihH2!ZzP9Vlr0W}J)w_gjwC_On?u{y+sUJQ~zf=>0EIpcH(4 zQL{hKV?Q~LAcD5p;u9d7X2p}ct>(g_CvT$r(Cq%2!}F&G?XFn}mD={IK0li1O=9Un z+wJfaJC4N`tV1aDFdU~QJ`hD=S5jBV&!yT$1SBnU?NA|^0Sc18`%Khyf;yXvOX_nK z5PRZ1l26I@NH}mrIhSP|jh9QWzG$ifMdv2arE0zK7sQ8AS9Q2vGV1^38mmz1nVvHC zGiOZ}Gr{s}u@_*2V0FXQk2VyT6Fq4eN|Pb~II%n6Qdc0_2NKEIU-DID zRz@Ful1*U%Ja}x)?!j9dYV~f2JQla$XN$tmzX4j}u0 zzi+P3#C_UR$c}#IdwXw7DjT!>TjL(8tS8~s70#ft(&TFJ<8BgN7s7=f5@WrC&85<^ zUHSk;nW@0mJ^#vOU&yXu(%rSK*1|)S@JY#mYcj_wiMKvdefY^`_I0&g1(wquu>7 zCkZO*pM%Oo;EyL;CK*_Nhv^#Cgw~o_1Jjd|KlF0m)8gr=L>3v`u&kD8fuGKf@nM7{ z`G)+)!^E2${JdnGd?JKC&X9B*S>=q!c;VwXA9D}tc`-KuQr#`-iBH`&Lc9?@8}YRvk_Z%4q*z z(27!yen^N-@kJHD=qVI{xvvpf>{vWKJwcVn1W~?ke`Tncp2HPnrc9kC@;@r8rFOF= z0bw<9W=~dohjIV}!v0s)$`iGWCFlvY7s>!g;lSK3qY1?38uIA;v=G&bZ|`@%kP#Gt zytuXbXEGQ@fYGhOSAwRu;$D90&Ywl&{hdQgdpSL|xRMm%yFF6~4^0#wxVvQti{C7* zb@*cp;lt^{C(2S)+%7H-g+|^wg%0x4Q|lR&r%@z|%-8YP{wPCf-^)Et*U{S^hr@?G zbdC)6ckE6uRgX9EdEov$F`kK{p{I4nkWpgfD$Wa-aGTRf9w@yMj0EqC+pZ=L&@sA~ zFn60Au7*+1W=Z7LPnowb{ix6pIUv;ZUDh6E;;5c@z4VQyaKm8;D4#j9WQ<|ws3_l3 zjExqD{)!5k3dV~3-+aAU^&z4hJ(s=mp!|fBYZQ-hvO7YoA`Fut5qqfVPkbKKK~B z-O`6y)^|R?d7$Zhn0RX*cw?o(WBtG760zE?o3p6=-Hv@*uliW_qJZ~3Qvo`;`0o}I z1$BL51R*!{8IurM*;y~Xx?ssJ_XG9LQvb;)<~iKuqKOq@!ZRCHUGcr^Ulozb%X zAMYe_XWyd)_dRGkhNHdLsNX{0eW2P_8DZzDLOi$!v!M|=A3x`S`^G%{8DK5$CcOPdd=@0?INu=b8z-BQx z!HqMBTBxb;>JbMmd@U96ixhQBus0t8h;o)CrNT2&=R|Yy=SB1e=tITs>fzEuj9K7E z@KvFvK8#KK-WGRCACj@VZz0XyFT7|hrqHMipi_GPfEfRne zn(SUjjzH2MCVudnWSu_uuOT+O_ar1EcfPYo7VccLj*}ES!$G%N;+m}~vZe_c+E(hkAlz&1FRliU<)4P=bY8*hOi*=>nBRQnBSCedb zv2-1Ul)>gMs=${hgh7`(rDp&SMN%}1zh+vljbXtXF~E2JP~=5^h?&9`;QGF8S>+*S zgpC7*dZ!FOBf=zU5BsrVACcb5=zbH~u~5oVY{xxiD$b~y?iPasgMZk0dChRGl<>{j;b zCg{sXSQ4x+JTB?#Fm{$Dq(-}CEV45sP2&r@ot7<=33eJqh0@Z2tK_4R3`>U&B)c#$PQ&!$yPKoh;`zLL7R!-2$55>-P>dzxx|h>o6R2)}y2wyNtGH*%HW zqq}>GfQ~aL6@WXd9nU|yl3h3U92h0=lh z#*zVG(7-b}C54Pi{6%!=Is&Xwf|ROo!FQITZIv0>nR}UW5NB0E|p? zQLbaHHqi)POj>(2&7Yg3(~z-Ybrb-`g2WirvF|k=2IDk62WC+S-t;n@*2^$GXsO{T z0u%;FT*ntH(ef}!J^t~|$wj!ltY~M!DG(5Y!pWo3;^+?EXdoqS%_?h)?4F8Nf4sr6jlgr^o1XTMI?_SM<*yM8J;(BhbYjKiLE0YDa7A zh@dyZ)No2$wij&0i_Pf#tBR|&%uJa435Ldv+eNYV`j!_O1^{s-{w)tca<`3E-QRZ`5L#=)u_7^OB&5E_!+lu1PChw}qY@Mc~TH?H$!S2cwH( zR-HC)sS}Y%42zJ1?(U9)=X=>#dUz}P>4N`z?az|&0}fi#5wD|37ZcFSzd0&!3JrX27sM^;?kt{9 z#VqBu)?)0JLje-U>L;kbsxB1)-_I1}Rx`g8E$6gI4iOjlz+cXl+O$J$7yxb*(r*L*CPx26wDq;pRXp zo$d=AnvXeZ7{`rWtE~25*_%V>WHn)-@sCcXds(}Ws!F`Z;& zq`1q4<-gsLEYW|)`A_JXUtV6!0C+wN&0mwgd{E90jDQ2VfV5K#dC#y3A3kMEXsBG`(W2pl`DL#w0guRCZbn8i96*RycKSM-t`L7-l zWIRxQdmnxwh#*`{#<6oBMvJsNqbm1zkRa2)vh0?Q@&elTm{P^PyQ2|0Fpk8e!@-+a z_opW-ofc8Xe*9-Dj7uK^S1B>%Y?S^C)9krk;Y`N{iuC{V2xZY%g&hD;CJ1!&pHn%k z0Y7|TwjgXWuGpo*6LU743gT~eJ~spu8#D({Nj@yqZkfMH5($1}EVQK+q;=r*`xpV6 z?w(;T`m#a#DkRlEC5Zn#dWt~Q)^gLTJPZ@ZN5jDPnwC&k{U@g4{yy`mX$Z{A#XVz< z{gSPO7IV4q%eB5Xp9z8xzsXR{D-GAG*j@B&5=0huz1HhXQ{$9?*D9_6E#C0Lin`RS zA9{wINe^Lo!07PJ?WY?D&RC2q~Es~$s4v)4cfYE-gHC!$6xJu4DgGGZ&cxmOng8NUV=z`{oG+d_%u#l zekv~%i@;T#1RjSv+U6oTLJ`zSrPUPb^x&T<5C4N}TeY?i=}INik*H*D>?lyti;6X1 zQv*J^#&ZPEStq|Knbz9-g@95_4;w+hoGp75wX_Wlg;0%Ua^#_is_0SQDiC4+{ zs`T8@SK{e&40`7Ttpl zMFA73AqF{T9jc1>yKD?|Hbq56N0^=o9WHsmUOe`5;g{DS_)s*pS`o}%$Iz(JIw~oP zN+w77POchDrV8pqX=aF|$|u*!owaou3aAg9?L1Vz=4Yv&fIGKp7@%K!39Fr2L-&(I zsWgd_*6LGT(CA1GB?zPbm2A|;=2P@U(zmpVmR6wD9rzV@{aXbQKS{E!ZOA_oM_{@8 zTce1@5e~ky_T|ep8qd%Ezt?E|f7WOGzy8nv|N4wCkNtnwXMFKuT`1DMDUe0@C>LD% z41fFAubX#9eYcmODD(40UVm}C3dL|we)hA9r;#Eb(-@Ocip4ulz?ci;~v=No{&$TVo5g3(9^iOVY;T<1Pa!nA_o;q#E)qR6?m&aEk zQ$UzO2672p@IWgHwKi&{R@W@j#Sqm(*XE8|Gky5!DU<@J;K^#A^}@DFJCZDpB!e-T z@LdN;Zd9=a6>2^wDL@EdQHb*CF)W2Qe)4+Z$tE&7l@=vm2|e zB3yVzUcp6kiI$R+#MqfF1}!x=E(PkhG#(`y~G zy5t)CI4)?H;-GJcgcaiVra;HFG8maKDt9kitJMh}!oN}^r+$#96J$kGhf8wTjOv-$ z!yIb7@)rcs)k|rjr01ssTJ0CRHES_PPC!G^K(V_ykY%Ga$T@&qP_?70(Nc4MmQD&<+cy2T9JTaJi6Ee;pB*9t&7N2=m*{Kk7EvgO ztlHf5i{$_K8h2$VDnC#(HD8eL?*P4Q7Q^Le&vd-t7Is_Es_S(0QxpLB;6>&J3Md%$ zN(8Q7@?pRAd$hq?;LMRW9Gyd+qwrOx^SdRJoKe`Iw`?b6y zu44lkf>0LjPQWR=Stx(saKIhBcI+AuY9E_G0Az401S#)}#L~8EYO2}60$sWA zRd3ihEI6wcL%Ze|hFSM~S=F(@Pj19PECGRqFCpQXZ%M|x|I%00jz>A)#Of9>5JC~S zbBsg;cxCNhlEHKq0eG*_5UE{!tyO04n`P11l<^{#!;SY44g)xJB=p-1^K!C_3plNn zbkzUBT#$}g+yFV)GR6IceXS-wuc}fN(-!F)6a)l;oTk-_vlW?3#JtRR`Z}P(25cDI zo-g#&DdPMqThgz_Qy>;(a-kZ)zSc44M}f~5rPCzCi|WW#hy<`PSN0FizfjZ&qBd$3 z1F)1bfX#k5Nx+<{jj$*LZGL*8bF!uU-ZD|xGB9N1Du&?FXKz~H)*hG~e{oPI@!m9r zJh06g98B+OE#p$ml$G90Iz7aYSO&!woIR^$q0eo#^pMPqu()psV*|i9R+WM_I2G+l zWum)=kiQt`@TM{_E2w(O$WN%Cr?$%P{^O2mZq|IOEkmpYOS$;zm_ALB+5@NU(I_Wi zp2Z}(-Il7}{gJI58FIW~w9t_uDjdpFBsbLOZrGw3d?4+r)r-Wq*I(&WI;lB(uC8+0 zQ&||nktMS}Kb43JkR3#qjXzoS^4U0|LYf~RiMezKTsTm=k4jq@9gv~^|D0k=e=?jZ zIdByfm0$*uI&E9$&Jq??xjWWD5wF!}Jl4iJhy%dQLlvmo4ZC6Kk@PT&`q(t8J+)n< zVJlpjzLFqGT>N;FWn(Jh_+GS3e#!Eakqb>nE|?!Br~ArdtJZVFX{kJcWI`vB6c*J3 zj~JRcm>=aYMb(B9KUCmi{|iG7HBEEi8b*bag2!+TlfPFEskCytsmW<#~ zY@>8wSG-q*u(PpX?{pTWh6kI1)~UBlgHH*^;}jjch$`X!EjoJOwzo|a)T)t~%F}Fa z2$wICi1g`?JC^Z{AgBUAiCZ^gzKZ#w+kSHAj3-%w{Zr!%MTMbUi~VU^{KcYP_E%)QK;?rO{4HS1PGUo{p} zRAQ1%h1m&3b6x#`;~JLJ8p5z)h8d32OgMwfqpD4=xve1pz%JKKZO__)Ip27iNMIyz zJ*26^u3_($Tu$xEF<2@x0Yp+H)6-oIJTL95tEMUlOwTkHo+dq@H1D-n9ouycwXT%M z$xJ3eg&Ay2D;?BL@1Wx<{YPrg5Q7dS7&_%oLA#dJ@jSwD=Cdp{o@O z9weNfon#X!iV!Qi9{9SpDT93=Fd5Ee(zK@>L4>@n11xmZ4p{2sgEv3~B*ayN?=uRI zqRoo+LM_tMK&W_4k$C^Pufz0J3_>30$7105E%}W@%K)XtsRR+6qKH!YUK6(6&0Wi@ zSSO!JMbZqGxJV}`$SNJ#9j9#7DbDnq4Wg>A>IYl^kKLenw$#MNMqLOHEw z{nLd#-S_s*G3{v+MCpmeiC_%)yetF5*ms|4M#WZ;{46~YT&Na4VpAx|2B*#j>XxxG z`dr#w^}39L0$02g6`TQChFCsQoVIJ%WsIO$7QDfz*x7W7WXUDh(~_`MQ=}&MK8a0w zMC_Y@>$|S4wN%sk8XuuhdX_*_boY)9@#%o!?zZfPv)h%8N{iEopAAyi(QtIb+B0pZ zhPIvjm5?_^AIwGp2wGv&r(%l}qT06aA1a~{grG2Cn^LQsezT*vM)dA%n3-e%34}_^yLI(}TdO%O1s|9r5fBI?0vaYGBqTkr zJ55o8fcw=@aq!`VOKAG!7QVV?R-saR3*FFU=)?p-^&|zU(z5e-?+giqOb{p!PX$h~ z5RF6VDM-#_;N4xt10O>s3oA+iB$<;-)rQ8&P(HXpvQj$Oxy5sDF_2Mw$30MMEO_Sr=i{Gk^N zP?U|8yy79YO|0Log$IwPD1c@p{@?72aRMUlT;5cD-K|wsU2+s|6~HSu8~{*bQ6|L~%a-rt1Z~lb2GE0^-4I6|<$!LL9uel7+DB zQcXkLeZjW27XOzTm&oFt38z!gs`%U%+=eE@pN-xeJl-=qOo1Ltqiyk^?HHwwC5!VT z>2wNAu`H=Yza~Iz^UyIgmy6`cUef1bUV2QEHd<;+*{Ia$p%4c_zW4*rEk4YW8-^|3 zxj2P{WT;l+bnePqb&Iy%G{?BN=K4Wz!_#c{JAj zjpZ5~%=IQkU0SvDlb^BIS={mx3LzOU!}E@~Yr9opAcZR_SdjBS{AGZgkiFQ8Eb>Ew*SGjZG28VV0-BNT~IxsaZGpc=@w z-R_uWeDU2Bgas!AKa(IXF>ybWgc7&6FX{A4np#Im^m&5qg(=u^IvTafc4*S`aCLhrjV1o5XC zHfuR+`-K`Vewvt0qni&}f;35vPe==;}cy~?l9J^}{1xe9QPy+?$U@MqhnOJa^3<2QT>A?C`2%8d6IfWn_@c%~ORV%`SXAfp?wT0xt%qJlh&vK5&|mbQD0( z@6_dR1_&~a(CYhR065MdznVkE(vIrOk8%9{ozjk}RgY!K;8LqJKM{{8-Svl> zuoC@zz92)+>A|~mfGp{uLru%iAwsaA?KyX@VYvOdp%nHd$BXx=OGzNW^JB--K!P2^ zURlWvf|2O_YjSBNOGFqEykFBe^AC<7Cb;we{Q5dV@Rwp8&EC|kmM_BOsQ5^n0}=LJ zSbwc9mOx|5+vj0p!G z{`=!XmIt&`O!uM^`tnl$Z?5tf-u(}6E-qOu%}hT&n-!Q>)|ul;kTK7=4d=kN)jAiP zPP|o~B=V&7n;G9_wP0%QfuUO`ez4<%4MI|C1h?dB562>bC)#}f4p;bkc~|XCg&D~) zZttjuVw(Jw1eVOl*QYaNnBgzCIpAJP5M)i6rr)V2Kqid|6i|Tv?#TBBvjk{?A#OockcEz1vLxACGD9cd|q#9 ziV|Ul7=Lz{L3pn=msADbb{t2qf5H;)qgO~Y33@2tiN`vDaANWMFBB->r=~~x4L-5p zwv^o}A0}VfN<|1o;BTAG=@1ucLU`A-fMUbB2}KBptk%P8q9SZ+VxCyl%@IOVy4H>y zOQ_p?g83m$$HP=Q)!o=amhFIq!stUVi+afg48iGlfd z7)@J$ty9Ke8~z~5bK_|`S{r!FHOfT&DeCUeD~rkf|4UM2o6AH0B<|XN48zJ1ft<1S@uRaMNtTB9)k>JL8jmM3(TjX z9vpfc8xBe8A525INkT7oz-b(#82=Q83zJN=2|tsZ)vCzfeuSz$<1C4Al=aDVI#yda zH06cGSY@vzxpkTUg#iVp!wHHC56UrHJdO6fFjdX*v$qXvSI4I5Ea{sgcoOh^|GDbf zg#WD_Z1hBeNmJl2?A=OB~Dqp4>_&THXK_Ax^Bb(01Qr2 z;izWTzG`|DRxLc&MKj;m+HU&95tf0u9u%6N3pGQBbw|@ao`I#Bx-u0^3s`h<@?ARW zg@W}Nt@3fqG9L$imBqpVWZSH)q-uSKt2MPyeh23XUvPQ~C8GemzVPsS2kpA8RdjWn zLNX{lMGde7c*`_QPG1~qoQqiWrN_67Fp>aXK%u|?d$l>(dbva&qg=`YW^Jm_k=6^ku~`;&%jk6!B;pu5!XTJrtnM}Jn&hP><&$e-Fp(NZPy|2=->6>TwRC(j>B_+T z4f^G5zG!IQf8I0$+>Jp+^(Y*JKs&Q!9f*3gIg%oMfjw*SXC+fxC!UL2WS+r(m?OP0 zhChr|wzNvysk8*mDgQ7XM`@2836$_(Zn&0v;M5J@n8_!okt~TtxoG7{puTO_)cI>7 z2zK9zjwcv)jswYx959tj=U2`&1+ZsI0zSSb_@ZX%$WSgui*RjqCF+>gZ)bNEyrOXG zi5m!jfS7Nvx>;VRcl1ETs3-#|HbJF>6pB{5{@$oO`p&LZuM`EX-1Ra{r8rVlHdo#{ zvh2z_B>Kh&S4K}K>1mom#|aNeA+@oCn}rVwr$-Hd3+8U%DqK<#shsKlh7)z5uX6|I zMt;OmaV#17a*A*u&lx&~){J(*kktO=Rq9e)fWR;-IlZseilKY0!ncY5gE;4(WhjD! zmg}{}zfw!z=s>_RWhkA^1>a?8h8~J9)DI!mEbJOwZ9Gh-`+dHb>xx)ytyGittlH8_ znhm+9m~EKJVSCf4*BuUvgP~^lI)jm6)<-Z8ikquW*_ZS%%J9#D{FRWQSw zC_%IEFHzCEIM)XH{@W}9P6*weAXIRKr07J3jS{1+|e5nbk zRiD4CgxV_Ziu=1(4MN|Gfxu}9)D8?gp8)CbyDY=hTOgu_&$xN~(hM%b`9#t(wY6uW z)NoaZPpatrTzZH>A+&eGQO)g+=D2l}>xuWWnMsyT;mZ8Wnbh9RtCbF{m2oeUVHq$ z#pcfJ0ATjWC#m3A zgrsl*0k`?W(Y9H#o%%|AWTFT40SLgY?F7_KLo;z1`^8Y0j&M{ppQnL^NuB!UL&Unx?_-Yes3Fe(RU*!Qv|ngF9p_rY$b=4r}N^4C2b zF^LpA$j9|pj?|?C!>ZI|R3CbmB4n69o77w#+I(CpbrgiByz>ud*hB&VsMJzxS98sJ z+ca=f?fL%EfJXto(63VLFymDg_xe%W)Xc@cCqg0-p#X6p3nEHd(%eSf-f#?|u&dCy zcL|Q_&C!%j%GqVN<3-(?Wt9>9rzsLGeLMk#o{N^CwKkM;f}!HQvz}^RPVCAdP{G|b z+O}sbrXSz1!Ltl5F20*%V35m}Oy{}g*wtwSZlb-H7*&BH#kw z_q1hOdnybml55tE&4^NdYMewNkkpFb*|trnQbRagy)?smLxE9nt-JOow{167!7`Uy z{w&H2r^w(eM)F?BCpwLNK~X)IG!GR2G^BEph2(v~^Ct@C1@0F)Tbuf#YN_9d!juDLvn{*I#ZL z12nY!6qZ7Vm;{UBE1L%VEI$O-boR21@8b`3u!G|I$Y(2wk#ojm8Y33 zz{Gi9K>S8%L6Impkb`RrEnQlfz-{N{!+?cfUge>o+qwjAv5C;)0L_$cQiOkI1PMpy zZ<}T?{gw`uU)ZK;D4MY{yDUqmnX?3fQo|v^R7=&LlD@Hez3tRL9Tj_t(4Kkc8Vpcp z5j+@j1I~$`fq)n1(4~&{*$onbD|W@px>s2M8$D>)`>McTCl}$LH7hm$br1vtD(A5Y7!XACY z`nNJoPLl!12z@r^pQ8I#3T~&gGLl2$ORiGuJ~VoUf|qr;;#6#b2j&)V$$tOQ$cJ=u%+|9n=^84)LFV1}TE5bJHkGX0^vwqs14F{h}&D zZN-0uP)Xqw31I94Pb?Gxh7O9H^o6TfPOIVSMJ6$e_%Jqn6^xfYNJKfZ{~M`h!CldN zHTbzAXAo&UCM^E=U{_P=84#uDo@?Q_XxlmP`$v_wOviX>;B6Ts_^h&2dso4~GD~g? z0l{Mz_H+>C)2r6NH6)G-i@LTv)M`qZYh49Ud%-8G5>pPyGGj zfA~*?u;Dr#84I1lfp8qk_m_VCSD$!!a95BoQPQ1hHb+9sPQ%`)l^V7U@Rt${hWIiF zaIOZizn`B9NuQf7gBx5g{PKMq#1~QKUQIQ=G92e&V(`PM@FW2MP{A(jtJ=06SQ*Ym zRY;#keSQAry)76j-gfG?b2C1F6=O;NtN*}|Q7+YEzAvc)7*K>8FTbu3EBj{KG~23b z-@J}<2v2$`30m~ z0I{{&vNf|f_{@i<{c{lH6MX=_+c;?3HmAywkt{+%WKS+71o7350S% z6I!w7P0x&)rpX=84IzlBEhdM&-=zby2`EIPBjnShKRFVQn!%B=)r#xZO63ucIdOGq zF~bfz<=4MeRmK074xCDRNeP6I`gT>R{NAzLCJ#`NDVpFsO(h|?iv7XXTAE-;%KH>a zvD8T13pUfZXBV!l8T_RwLC}QYTX(u2jXEzB(cqvxb#V#_lGt=yHcyxaEKLOG5j~;Ab^Og_JfuZ@C?p#8^%9NF)SV?(Vozetv;wXRYQqe zAI*Ru0m*&GNcc3tpWHLGCZ*om|qUzKFvs2r_5nks$vgXiYzBHF!9PQYD1B{W6v9kWcQ_PoZSn@teGpdZFf z(9;eqT#T1EEqv=SzUta5=bB(|RA)!BAYRGOK{6pPRe|L{c_~ft`ttnPhjUa+2`A1! zOeY_ha>;79%3zAZPsHxLA5t7Yds5*Ebw2#sdiS?V5leXOsd(cuBnq6!d7;MKuK5bv zRiOtzJ*EUs<2?`s(NS`bzimGbbT<O7Mu{yMg;qK;)s`IPCme8K~4 zxvhwc_lk%)4&W!^NO9IHy?H7&@C$p@5F3Wv_ZW!4{5T0FVK7_xZ8p)pZD@skTV1N< zdt!+xlAfdxkX#)Y6rBUBMg-|=U{s*|*AXGUSq{|2Pp;#J45Iy8>6rEOW)_JK#07O1 z6s^;7c)PCESCRq>ZLIWvnT9~_J*0!l}NUV0Q^5)9hDlSVHhB>%wj_?Kkv%j>70@@cd)o z3N;*6>dggr$*oul_%2I^WC6Q0Ltp_@ZM%k8+d*2(uvn1?AGj6SAaf#ftS3jsNEa|}NHzh}{*QC3n$~$Zv zND0K98(Bm(Dr()@wamro6aa}b@WU*N>Y@!lx7}Ls!l!ehA=-|y@;)Gd*fmH&*$v>c z8NJZtO23{>34)jKt6h{yQ3>ntW>aLelwc1jx ziM*G3`GJU6?hIUMH`S)KZEyfW@%YEH<21>Fl&Ri2Y8cRboWr;`nsBlIUw*LIA~an8r9GY(!K%tGNF}jw_&~9 zSDuS)CBa}Sf}BmoQCL&V{SC7PrhOAMJ4XVEc&N4NTJFBH>(w34TuHO!%cTYQrB>7 z{>o-cFUHXvf&Mfe%poK!>181F!qtV6Q8^Yr&d^f`EY#JfEve&pp#VV7ro&W*^vA$} z)p1IV|C^(?3vS!W6FmV^PC&}(03dCHa=Hf}ltno`cSrz~oSr+iCO|pqt-5tBQcm~2 zbtL!fJWebp*++nOIshoQLA(220F+|NnZAn;N^&w?wIo1FnY%CIhwRy^eTYao>3xeO z=T7b0M3U`2T0hb@ae(vx`27yRg99M{PA~$!pQRHLL@z(er?z@6aIl~!r9aEgr!Y*> zx(Kf+YjzPv|M1DI1i`9dAdj7DAE;VjJJiVaJkN6|5^=0%@$SGcyLM?-Uq}{20h2J( zI&OM)5&ar#U#!E)Wz1E%`q^_PYJ9X(+KgKa)K9{avDK!sVyKe&CpEdPcg!iL8jH zEWP~FZv`zk*t2muKF8yEnqrEiVeWO?t`$5=4AjtE5{r}YuTT(8t(NO`RScdMQ}Ho5 zMohd_v$9&~3Z=?3NIYlY1bSq8Pu;bXCu3sh1&%Iqg20?m-aALj{hsexZb|$EXK03{ zaQ5Qyrq^n>OkfKb&x_(soJM1*Mr$(|0CqrIiam3uMB~@dcY*84%U-Ys&fc+atQ!zy z#jm7fR74{~dAaG&OEXC5Itp2O^_8R5JtxE$p)8h#LJWmR&jI~!wR#}BZc`sI909|q z9V?vPE&D&Tx}cGpm0T$XH)Ap^Bm z-rSx_-CF<&0zrve^H~1;0Fke@+~&^E)T_b0#mPss^lsXUxnsr1zM~`bD_76*A~&llDpC(j@ZGYI zdEzvoL}TOzG>$V7tCaI<6CAps!{cK|jmQ(*gs~(|MS&k>63)6EtDa*YG#wdLZ%hrFcL$<3G2*T`;s`sc5 zs!*&XB^AtDXKaQ zJO^n9pYf69)dyYEeR%C;D>;lw;CEWh4YyxOd0W0G#RWX}5lh0*$rCA?HN^7G(EBt) zNu@b9{xOD1=CWTtb_2)IE>ILfsLeC8CGiSL(dFKL-Bm)&yu^qKE*!gEZyVFP6NJhj#{UCV2H!t*qXlDgJ!u9cPsZBwzlf%RHGGehB^bJ@%LCu=mwy~{8) zF^}RIT*PK@5*|J7w%oSsDsTagi8!ST_?5hfRGUb9P;a%uM0kOXU2+vFI(RxzMo4H< z-g<4!bgGrp|NB)H&z*KQE0_lU(L_2#q2@-<+pXcFhn7uRBNRMw6Qd+b?N|GO1?sgv z7s2Vwgh1nf*$FJ_;u}Y87c>TiffSsLw8hpodu_}CYV1(>J93m6`0t#zs$nlAtOZ-3M|Mfnw5i18Sn z+6xAeR%_7momHBwOe|m*NEA^6<0fI6)}hi=OLMX76pX14Y|9J-2*qAl0P&iB-M)1b zBU;M20!>2^6RMw6tw!vIL_X7e6+XecI>F%96N4# zy(S#{k6+KmiEySdAHG2+i|0G#z@8CN38nVj&j;l|LS7fpIL}~3QK=5p&6d^e>k*?Q zdbb32dQqe!tIF~|@O_DtLN^KBfZ)X2;EbiEK2PUmkk9UQ_0A@>eW`bMu5u2I2Q!xXooB zm1%q-PtO!t1S$v3rQ>?nsu3gUmZDc*FVa|2q|aPDt_HoPQ%QB=*T@Srg=1Mt$SJ1> zbzf_=yKbj`pN6Up6q=q_)mnaf7E2lGYG`h9mZ*VmFXV)UW*B zSUU0!JsYJHXL1w3lBDuLue$JqX5BbT(RHJ0zx$yQz6`?=(8}GO*VL72Df;eQ24YZH zEavEPcdzGQ(S66Yrb$mVln^$)$O#dAf+Yu11-TjVTROUFgfg3;f1N9!hT`73sgzK4 z_0Gfm<$ABxtzs9sB zy>9h+uc?#wZ-mZ&u^77(*#*!w-7Vr=^IoUJ|GB zG*4k70V8WC>vn!KR{nENEs^JL&@i2gu`R>+yl0aK6^NmxX`=0%&CvC_Y0eSkR#UhCpD2Om+>o@?ORCi6UW}jZ2 zzDdUlF_xyO$>10udJq_qU3i?lbra_qDmD*AJnQ+6Yin&glq$_b*f=GNGGQR4R923xBOtTN7L5C(DWyU$#ItEpD| zHeNs`c!4cYRFYDy_OR9JwtNLJBcj{*yVBJH()%d;iK$TD+zG!MfxDo6XR zpu1Lgm%Ek``KP!4n8WVaMlnxDlrBDzsRqN|R~OG^oUz8VfOzGR5FR-=eL5kT^%}}X06He$qfvmvt&rbENd(9hV`Lq$V?`d{AWwfgMYc@>N(i|0E1ST@tb=7{q-iW$({O!Nw z5xn`=13dC5mQB4&3pC8kOs=jR1!lQ})R$}1EJL5X-xVYL2c5cM^#jkB^LUmnjB|w$ zRk~WcOkPR*kB!XRix%66YzLTpOC7`;N2Ta}XG%?%W#} zX(o@6Gv^&}GSA&$Sc9l!{;DcpC*fG)Q7%6D*oC1pRJymV-oA`{=QRM!MkHvu!15Fq z%97?rW4UKK>y9~sg|c~35MWG#L)6N5f!A)R{(3Wn7qS8s7qWQ7S?>8;K`#ipG6esw zkmNz)axfayx4Mq8+-jO}G^gy@A%uHwpFhQk^yLjxr)A=C&_&M>YQOUHdt>AL95oKC zIL`?QW%-r!GfQ7wA{sBeeRyS{l&Dai zo})rZ5y;U~SKT!3_-+Mru3_U`o)+nZPPFZ#+DXj8F5*=wxGi5yGzJ@1K1k<9pHKk(Hpce6%FcuMA6DlYxQpWd_lfunxwN;p)#RTOi9zvchStS%<9 za{|UB3rre<`c{A6ZPmMe+X#U+bA@FoI$>LT{hntXT6L$ClHwn+JSzwo25mOI_R#P9 zcEq#CIX3oNa6!ZrOhun5KL9}kQ%upZY?@9kP%x7|!nT?^RUX7HV~DP`Z{OK8B;K4M zD)AeV8O}ips+C_T^=;ESlBSIH}}ML@qvic;PFS}!;< zgMkSnXh=-vg)BqyEL5SFj2{Muci>1dya;>;o1!C|Mmz9_lIGj-%eu^SVq)(UMPH}q zXebtST(t|~$^Y=IuZQT-wrhQ({Z24r3n&!6y5;~u+XKi@A-3*MZcp=BHcO)sseEXz zwdyU)l1Vi2&o^K$3pzmJs~agJ{q?V38fD+X@?2)(q!aK6vg02bt~_RLN?K?pOTjoZ z85WCTeP+d0gSAzRE+bB!nxMu5aXJ<@4Pz?N>Gtl>Fx*KK3kfb2c=$em{dwag?KD8wn zZF%AAB1Z-rf!_cnIocj{zpZY3)ZHsNBZ@Sp(@fD{KiTHXR-yvm=bAv(%TC>V|ibF z(ln3?4s1j$Ff0V7-}yHKY1=RnPIuSsP%fF)v((4}D&0A3*=8*QaJ(Sk39@YB1zNYYCHR4NG_5}(wt#52upKoc1honrBuB!!Dh9aDYY zcRg2vp~!C;d_m-JZn>+6?sk1ifykW!i73uGs`Oyr!MM!3V_nB>D-OJ(pKkVJ=Y8|4r(si^l*iP&f=BlA>} z4PDj|d+Vj5sGiph?D|9|o)rYpmS9q!Vlrwo`C#AmrPwbk8%Ks(8nt8GZz&9a`W^sYHx3%QHbcjvU2oUz`GFIIXZ4HU z@bB_Tfl0#=Yp)gb9Cc`RR7X2ZisBThD4r7I{`TL~QY^Lg6c{(eYQdotqJ?RiDbRwE zXw@I_x#i=-8o*`-V5rCQ;%gcEtr#Z{RVCZd2NEe$L zz4cCe`vRH8@rb+CHS2+O5R}gQ>i+O`md8X2%Muc5szZDtYLpM}G*qRH*k#>}bSD-K zc^nN1%bTWQlyCjwr4+)1@jQ;@bMncnY2m~ZyV}zwYjc%LOiWQB3Zpvca=l4yE_=PL zN7(3gX^}2)phINB)Nh_UhQ88_dQE38Vk)|Mg$)tY3UuxRRnBNQdGheB{=`;gYMjDm zI1I+4LA!CfSv`DgM;ocqW#d;oE5#`0s(dwY+>Jx6>kgcrB+&q{XIPF#W6GQRj-~kc z%6(cS)%D6OPMNf)y);|03qNVVWch_@C?;aO%kdaPF;x8S*OHPS15KU2`~%4LHAljT z@yW^z%bec_Ar^gMTixnFX<&a(GvF90g-SR}&wb15?-^G0(OZWwJq>`3V+x3eJPn4n zQr78Unx99^@EjNfYOdEd8r9A!8vHI7n{3bn>siPD`WGRs&ziV2BA9A2fFY zAuW5)G~eF>^J}Pjy#mb?3pfL&NNEMf zJ{TxQ;}kY6GO5aJoK4B~^@DaRa8NwNo|z}L#!9oqiq{2Lt!@+A4}f&eQQUaOQO5?Z zdf?XZ-*P-d1cOcA)mugk)$SZ_K0@i~B2z$P8A@Gm@BaUH$h|?^l|o`ho&J!fSkyEh z4}H~YIidMHm8t%*fTv@8${sy3t>b>(lqkHI3Q=PR6`DfEvssP|wz_`3w~ET#bwR|^ z&jC_WSfmtvt$2Cl^l-~j6eM&>m&Lsb9=m#KMgX{~D(n8HFZo&tTZ}}$^-Gy>PKxN% z4Lq$s*$d>Be$*r#&#h{7~b3Vom4Mz`K}h1!i)`Uvn%+g1!5TzeTIHl#{$1 zi#`PxA>lputB>ZVb5cxD95sB^Y&Akx>y_O33ZuD6>80Y1h)VpyK03ltUEY#JLt z;Opi<5|cR`g;`>F+;gIS%eD8Ip!6|`GaN|CPk$QJMxUVuPXET{Suy!$bHld$=dK>n zVR}Ba5Sk%z8j-QgQ}5W6EXcRVvB~=j{523T1qE7Z1^r>ybtMS-bdElgLF58OEC=_~ zwN&fO>978mf11Y-O=*?hdg0g<80(LCX!6+dni;M65zdn8?GM&$44H-)fnLZ!cZP;h z-!~g-6V>&PxFV2dk*Mn4xBjr{RtJb}T&L;C?VA{_-J7QrP1)>$gEy5}5t`;vM56go z?{$HVHty`}WN55+Z=P5l>UTQ`4k>FDfzDB;H*mzY%F|Hde&SaMVjw#;=v|fr;L<7| zd*I6?Me)t*rysEtmst?#Xm1D9QKeixwiPN2#J9-uH!zICM~zLd_p0N1wNUb8;|XTg zv1+f0#dK)H(J`EeW%NZJ`^Bq&mm~y3usS4DflU#w44o)HlS7P%7T z_HqB@jWrMgMj>+`s@d3lEVI#bAp`LuJH2hF{E)iB#uga?Rxqmcf&Ev*de1dwah#Nt zDH>^S)1ts69P3EcQ5M2M`T_&gkZ56AAHxNas-|gWvV59V9l|SlO@c^rX1JU|BRid9T3ZnT==F?Q&pf zXA=G``X;Iwjm0>}aARMutktkZ97D17?v@Qhp~*+uV;jM&TLp9^2XRQydi6aVk+G!) zaeT7Uog@`^Wmokc{zhGMTg^C&^NZvuG9;$^j%AE}56K(PEZ4JVs3dwT!_A4A3n{DT z_d4ZWL{|^PiQBAdLoaU$u_BGE)kxxtMHqQvs9L*1Vb$P5#H_x~z1f8!F7X-Vpx(Y> z!gce&-FDw+3KaC#zoMp6-fNlFfm3dNc`Xyq3s~lY5b=YN)IdUp>Q+-4+l^d^gvP;z z%4H`FwOU(ozV%^qOIM=Xq;~tgd)W9jib^?1GC3PDl+6LA2CdtKGkvK+tj-hGP#Ix9 z0+q!(SXGn*ZyRFB+wT^rgxM%7k1n?loIAUSoUT3#O%>>jdV#`_x{c_Uz3)JOP+&7M zP^<}oCgMy=&e`Sf)!pd#<*y<9i4mzG7wCjO#bU_lHr8%;B~{WR%?tSTJPjdX60YC=*)xe$ z)uHX+zqi%A_NiFJB4-GjEd4`k8;aBq9DQ~R@Sj?nBTe{1CPa^?K^oJu8%;@atTROY zk1StMOJo`8!HvH}TT1C<;KMSFhr z&~4Q+=0*d0UV{_c8Rl0x0wxB~ieV`6$dys|{s$f%ttFmrg;Mnu9ULDWd5sCF)7XusYQ}IVLL53>LeAsv~2S zyEZIfe|=<27o6L2uZ&MPE7Dg01Qs?9yIy*;pRvp#@3{)ovyM z)-4a*r4l`BZFGa0Op7y|C~D5F%+{e&SE_CeZC>N(xg?jz)Mnz?x1H#4WeCg|EiFv3 z3`#}R+T{1>8^?;P+IcN>vWAVZh_YGlNR(y`tj9H6q~{Vay5_1L0Ee|h#bg8|Ir$Ag zFOvA=o@1D_P+on~^`Q`;5hjm8@r!%@x8QR-dXJ6NK86@Z6wf#7L%Ve=I&ijhCaug7 zu^R$~(qlb)+1~1U>s>>#&d{Lz%~2Gx;kO(IN-clQ;G>_AXp)GPyJp#bs_ZoF(OWmU zL?|I&C{hx!*YbffQ_!0)bXcJUGR95;#W{b}?ROO=Q4twT7|HT{l4v{SZewFtwX9Ao zOVV)tlmO3=27Jd4OuzExs~QI3JeB2WFnqPYcCtpBFv9uwek6cIXzl*Pgi$@Td&;IR zW(7Va!IAeVw3cwzcQJ+87#JlaoPdnD5{;fqio6{7}7#|C$!LYQ|tti!f46qQzMdCas&YGitO4Tcg7fqysfOOn4 zP*5gKW14%zP>kA5aDj3P@l6PYx>D6X_vRx)e_)O9G#AzW9cL0xotEMF)%JmbkBjW6 z46U6Zf8T{;A3(r`zJzaF!1#y;e_nr>S~L1q;57hDTk;u^=CYai0!bjHc~x2N9#}H! zn%Yi-=n7k1C7eUh=}Was4{y*^Jk_=K%g>+?jE+MeN9^)8foaABmVPw9uA`bAZcnT@ zCQOEw{+x@w^F6$E^3Jshimg6M{ApH+Po?CaA8Pf$QI;j?+L%qa&V(?-(&Hz;u!OEt zv^Bo5Yq_pLv`l#9{Q7gl0R0`kK)8r}Z-y>XDD$luJYtFjGjfCUsz)|pL~-)9(Lv8{ z!3rz?@_5(uW3vzv8W$qgaRZO%MO=u~E`9@FKEsJ8KT-wqqP7hz?It(Af$V zx#QR`br@zwJK9Fqk`pf^Iv24T*n>Zdg&a*S8+9M2Vzco#eap4J^@B&L+rRcg0J|tI5k;W>Xf^dUakN4%X^-G|7Ss$mva-B8WFvJkILh-FeRG%rSt`WJU>4) zq_QoGrCBIpDoFzv!jK3{Guo(F&K(R*IjFK=ms@Nk*w<(xj4rpWHK}fn-zCoqY&=*c6j-;d5{ias5UF_@4ZcNc7wZhDWUu zMZfuMsiT_Su&IZmp9$C$4RjDy9SflBt6d01H*G@-AxqsDw?Kb@;bae4{p+J1IC%N7 zsb?vzR+!>G!0C{{kjh3^1t#C?^}7aek8bG9Yz)O0LLUOikx_H2Wh+WZER5&r*c^?z zuzz{4-L=iiy6>9dJPK#$D25Z6*e{MSZ>wK}jJ6we;B4exk$s2+{wY|~mFw)~#7Zg>V1E6!#!VRRZr6xH0_=y**lJkL#KrZO~C zxvZ;b^~G{?#aZ($9na6uF)GUnxTfwjJ8OZr?;4hSPdJxJ7PA?KN}I=~?e%)#2wz+d zHX5lZkr9|wX%6S#{tJ(CsI+|ViQlU3R|oDumDGqaAu#wNg)iwaH3nj|q6Un=)!AzWgQ{uP2TGXF(=#ZXXEA8aR)?nB>j9to z$*z=7lx7$p@~O(3c8u3L<$WneT>0rf2ocZ(&1wTpMpv%`vqYdfU0r@KP+(w1MV^Zb zp(Q!?5#dNmw12YIr&HnuEGdHeDnxra_Qs&w8-UAhIr5wU?0E)5@m$L^)RjHZ@D&4V zSCHv>3WKvKil;Z-dj$R9M?;Zlq=8i{ACq3Y@0yM_s1&jyY>a-d7+Xz68s`c$lv9{_ z1>35ySt1CWeeHQuH7g6)cs9ui@q|6<4!ox=Agju-7Cj|oc{coBiA}BBRo@ME4tlCz ziJs&5A{Ea;U^?lIT4bm!^?HzUEoFx21q$~zhJokr*PBXwp2-tZ+t7|+MB(yu7DBC4 zX!?76D&ydz&!DwVs}w;D()dJR@gg1dmA1Rt8g>nUQ;IU3r1>mPs*q;6k9)4#YPZx* zD9jXZax6?nk?JlmFK27mu3<8D=XHXP2{9pZ0Oa57Jq{Xi8jMn**8L_%#gbPzivDS5 zl`C6^a~Pd`qoZhn!4%o_bNj5wX6}*AW$%Sk4URen7E#x%KP>VB&N317*fGnX^VY2H zff0}8xeKhw3ToS}28N*?2M0zdNi#X)8k0vQwffxi-C?`yxg)%Y%9+xKmT{Ijxf2}S z=>?v2>!+>%Lre;)tCLXd8WnN7@^k?{KX4Rt=}>h*xtPEp#L(xcX%dqVZ6~Pvy?Tuq z-S3U0rN%Uv);2&Tm8Xyq zhrLQDD+)A}q)hp)zuB`LuOvR!lVYA@*&0XN>LT*4axFHpZOp%(Xx|x{U0T|>@}WL zEMupFN%4G|C$QKLckctm>d>4J{=07waLG6Rm1bro>Cy`cLZ!Q%(T<`hPay4+SOY#pw>e=&0Qhw3v2bc60&Vp+2aaJ>D|f#s!J$0MA(?{_c08k890YqZ!q6XlUZGMgTtfMcVb_#Y zd-8?p!g!uO|3ZSXENF=!Pb8$;EdAYat4Y{bNIX)>5)%Rv%b2x~DHx|e_uGMOn(BAY z5DALWNs%H;^N9wZFwVbltw))!@ASIbt?X3;GUfan!|^F?4fMpCX7klY*O*v-KB_AN zX=_(8eRtQ4iJ9?~_b+*xzd|9Z0ny&4cl=&|;B^fo`;PP}DBO9LT)O{Wct#}XwV*4f z17!Kzp=+S-L`sGxFb)$D0hD0$f{9`R!_rS3z$rstW=B88 zKEY8L`$-L>6Gu)RG^?^xb^laE$GIsA&di|dIF$(YEq^oUH#JMjbD_m4mXKt$+Mv!- z)rax999+sAhZy#aCQQC`OvQ){j0iLnE&a_SaFHQ7{hb?(6IEY&HwPyL!oPRnZ+Dyc zTMr}CA1E?{EIr~<{i854Iyg4BK);HZr3}8vi!6jsvxQJfuRe9FM%$^|aCkn?rC~IS zrdp$i7&`aXy^D|Xqa*29bou_rZ~{059J%-Qw&v_=opS=Ihd!Y(sO;5yQn?mgU3llw z$CTQ)u*&FPCT)8moIAg3(-(IqD5P)b-8Fyd*aX3*!AUODo)9wf6pb;F(O0{YVkl~f zLd?(R5wjAF&tvQzqcm$o7&vzuz3>sJxk6Q0^H=;1ybRjhpef_ISW&n}glJ;N?;CiQ zz#xfv`z!HU#IBAob0o4n7k+Q6i6T`W`OaSInuZfppH&;?Z1AA5T)F=V&GHx)E?Yas z(xJp9u!u4Jw|^LQw>cgam=8SA7-vRx6i*g#ESX`S8~qZsrmXG4)nH)Avv^i4#3+tP zALx$_D^B>xp^Y^tY6egL`L7-lT37ucG}a6$#GfXg*GSViPSg_Mg9B${&3#DG9|O@q zrIxZ^wP7Ri8mjtR9o0#i+1RxdjGz-AB8Y@i_k?U_yr6}o*nfHkU67;AtAu++iip;_rM9tqdeQR#0LoeEqPZ)+lAV>R;;MlA135lh!Eo|S0$gSJyXbV6cs%+>E6H5jgdMh$yqXgPZP zw4n|w)O1KBn))JBD8Dof3>PSD5@baC7DL)|(V;ByT;>V@%S`y~zYx+m>y5D4rR6>U z5t6)Ef86zIm`-1(aGw5s-BF|@d#5pt(fAw`qG^)+dg;54Zq;t061mX=Qc=2WXhYb4 z=asH_@o3LhqCS59FAM44(kwLDyEl*VTDOtd@9A77`OEuoT%CPxV=4~)Jx$eJU0~Pt zYEUeC`miLx1#E=UUKk||HM>_bsx2v}(hd?iN6#;tBj@)`WA!&J$7~wjDXw_A1#cR0 zmia}~|NK#E&)M5oFjRr3FLrbxe%aPXZ%6*>nSqhr>HwQsYE^I+|Jff3IFe|HbC+t! zoX8@>TLp5hwJP8#^DGHRj|}7PZrxu^hc5O0m`^E{f_{0+#^WrO&_%@Ied3D;FOU#6 z8!_;k7o|zhd9ZJ_x`tJWlvKK3DN@Vcca9Oxp)e}OKFTmKs_xyJqr}lJ(3csq+NoEE zy?Z|m{MYhyk^osiroTFc8j)pxqZ6W}c#)J4Na+QyIxr%OGif-s0A#b}0@t#ve{1Rz zBF#iPIIfH*%r1^zfeYo@($MbNk6oFzrVBJ&P(!Zz)IWLdFgh?{C|gjZ*p;zylzw6Z z62jAJL$jfGvD{}jbSBT_ZV7~mc=g6!yP-B)2J)@xM1F8&HI@}vCZn>`X^&Yts5(3K zZ8EA)%u?bk!bs%zq*dKl*B(2H?0&8|dLg=bU{qixnRD9}5b5c< zp=kg0e;RCqJPFNXB8{<+1AEJ{HtglVfkk#gWYUJ>jvMc__F6r4&+9r8F(MYzQ#?=0 z8B@-zyDu#Vm|evRCr-`qEIh|TB+_fy8-@}%(o9)8LyPhaN}=9Od3NM5#3Iu9W0++w z*LAJN{^aOU!YPU38@&pij#FF5h-22Rc8NjflJhu6m4wMJ|Fdtd2VQXGn43-|BSp^4 ziMdz?bK8Ese_)z{6Qw!E5Mspl}$yr%29&Z6!4X)4AL= zLUdB#Y3f2QN!Sy#Td|P-QInx0WVxvw_Vv+5Ry_Y`Vb;J!I=9)g*1J~Ej5wuy)R@RA zl|}AkrJUGnHOs+33BBR1UhU~KVkYzfQo=9(h<@HMqU}}%m6A8JG)-j)`Hg1~YC6l0 zJNB}ppFF>sPnU9pE~=rozWAHN?qm@;O{&$GS~;wBaCk4S$C=( z2Y&EOan^c=1_CgPn-i%p&!c2y_43LOAdgy-8lMe`oJ3 z5Wh~boRD~F84wg2+cOaD`w%rXN8l(*v`Xu?>xB{R%dJ;6h{E4!R`{GfF7iN4GMW#- z(yW`+Ly216Uu7AV&oXpu>_}F{n~7H2sP7wQ&;-1~CV^vd0+nd#(t5vXRXY%d!ZQ@~ z8a>BcS_#&Jp;05YY{j(9dh_*c5^!ql2BB7a(S5@)zjY7;&lh-xgJ)GZmKV==Jgw{1 zk6Npf7l_8DF6*v_Su}k2#koa<-LC0wX}B2a(y|^G9M*@)5f5wREXX1 z+V)b=3lX(nF(LwmN0lu*cG-xw4qSgc>XhiKMtos%OH5-m9yitT+eir%K66G>sgTzIUx-#_xnM+*;LHYN8${hOBPNx6Gq~R zf$2LB4$Y?GJK^L)mQK=S{NkQ1tI(G3Zn;J&&QJ?thOAv(wkmfO5A)0yI@$>l;rEWZ zzSip9D`xQmO2fQx@?5QRvj4`OSBuRfVUgpeZ{VN`(S2{vZ?}S`>!a}kegTyDEFD8J zqIv*|qti286rP*QVIsvL@yXq~cK}q{cC~hQmAJLY2sHB{MDf7+O>eil-&ADi8qQ)# zp>C+B|D9&jHHLW{y0dS2!9fu0xtjMq&2v*?7Q=alMxXk@$tI3&UmnlI3XI5$Od-Ri zOMm;q_u4(T>-z91pygaK$x?7MIJR~Gsu?C)5zcUnAigWKFy<$QN3BM^>j21(?873N zjQvKfE%GFTobT*eJFeSu6{V6aQpRlmK#CPvp67}*89RU6_x*m~GSo+@+w**$=W-+r z>7zaOhpwTT`qCEyH^Uc_EK`6{_w+%_Z*2yquKD_z84j7w#OaubX!~pJrdxN7m?#!t zj>!`t)Mz9>RQ=#p(*@3JX`2rA;HzBuM+w5Q*JojzDc?tzc6|7B*9*G(?Bizg(&|lK zpy`a(oQO1_&znn5cgsNP@;G;mVo)sq21ue|S2e7L17+uU2IONbpN3Y=kPb1(w)kzWT4h^*lcdhKK1wN+IwEZ-v=^DBzMscR?X( zT1`AQ50f@We~i&l7izaFKkKZyj>5!dJz$0~_jv`w7m|tYimlp2Nlx|h%YRVwLFcpGa8Ihe6Du+pfW+l_@5se5T+uVjt=vMa?o<@%YU3zy3oXAZ254vV+*lM}HjovD3G(f5Sjb$LybTO@Mc5A9PaO^Cn#>M$@0W}g` zSc;reHT%wyPOC^?!4&Sx8}Uo}`L1-S_oUaQSGRxD^LRH z=ON|vJ|H$oZEYUZU^Mp57jJ)mfx`<1gkL8xm3ZMAFcy)>*Y4=@dq-xZ^3FknI?@r0 zQ0nWCu#rpZ%Mx4UxKw-K$~-3B87K;Z-UVGaM3)xWXl;%!PzX=BO~!lKFy)A;+&Q*! zQ0zz~&r*3}-8ZyQ^=S`)=mk_JR+FVfm17Ei4C z4olEvAR->EcaIa&HmRBA?AriJ@%;d)0Qcsw0aj=SmWb1I7(rqc9~GJ=!?gtEXz5o%~Y3h!^(B z??q7H_7!UMm5HY?E?FQ##4Yj0($KHLTw>?{BkS#g+qTnmPXLl*fKoaDNZFvAo`Vm{ zqMYtiBtS}X=G2z>A=^Etwkjg!boXAxvU_Ist}V&&*4`{YsnY-`C!n030YJ*8oZcOL zP?Fs}vqb`=l`}iFYZ8<_vwLHaO84wtEID)bvMoEwLT7Kb>fGo;MTyiO@B2KzhXUVs zJ?G=%8FKW6D)Dp0M;G5h-#Z2-6LA<%pu5MSPcl+zQ~(mch=Is%DbHc#fhldcUKQ1y zrZE^DUkv&cw~i)J=-jt_@yHSZ3@F_M6EvT>@8c;(6v&-@*sXYlxv?~XPMpGi?czVRLg-d;_j&Z5*Xz?d~Aa>>8i-q#&V2E*|dIC0o3k&!Bu_ zGG?tr?!OXo7%pTf(u{wxXsKI`Kehox)E~$OfB6~{12MLVYx(eD2EZ30DYA<0ni8&y zJHMZ?oo7CDn06sr9lu3kP%w=Y;?^Gz6;Y$iQ#r)XFvUY9>~(obRHOV)xu`0azke=B z4gQ>`2E(P@e?IrS`4n@VrG2+=D%!4V>Ry6 ze|BuEQpJ$Est_nFv1`@w9Oq*>iOMfee7|YA26N%J%YMf3Q+?o7+3~!60}p1Bq5psf~GQfRJp+=ax{yt9cxz0v=2008Cbx_7|O>|?Y~UF?f_*a8=>Y= zFq`Hm)Ur1EZQZl?95WPExy*bX^VtkN_uA{Y`hlY=lO!0)`c#MkpZ47b46nTXAe)$v zuai3_NriNa3RekP*@YSr+`=f;%DY1 zc8uLph?eFy`!%OlGqtx^kj~?|;8NPhZN$;d-KVZ+)Kn~zW5GO0Q}EMT*J_$=>GK$V zJ`+h|Nshz-OVQU}d#^30>$~&{>J`1 zoyf9K_`pEi=COUO@w)#Po)0?%=?_UE=W91Ou^C+3{mOE!mT%4eWApwwmtVGZ-O|5A zacVr9Nps8sieX{%z^J@vI;LLhzycZpZ*l1{Iv~&!!fv}(a}H6Tny5ltWazwvHl*tGn+6|>?*2($2XR&__W@Oje`A+!kvys}yY8?X6ohjtT+eZ1kz6Ap12_#0HiKST%sl z3-rmq=!3BAot~4e1Fh_kwelNN64C%ep1ua6s@)im87chElY5ryR_D3M1l(Y6#|M35 zWSh;+YkIX6IM&+=i!Vt$4~E@0hBWk|{6uq4PYh;!#28pcp+p!^t*1ROZlZ;EUwbXh zDP_W!SSp@m!w+WozOP805z`NWz>z1wq4^9QWY9_WLz)CJR2H9kcBdzIOc+Z3J-`hXbA=Bi(2-xS)$QGO!Ouw0 zY%G+bquR*`zo+J!+jZQ&iqqT@Mq1;{xr3?-?7B^->hjLF zs%!IiT23hqCn+G5k24dc9jy+(aW&6Jbhll&hOyMp?{1z9w_YZ3k%E5mHEixQ{hunK z(A%G|EX7dd7dO>yqv@Y=(^P1Db}SAo_*NkhHT(IG_bvbT*rq;}N?@6IB#Vxbpe$}# zC+pQZrdBp^^vryk9Gt@_93ac3$~aLP?a6O?c2#!AMmNdLh4a}s$qQtq)f2l7OO+Cd zM4G41J-m%mXm#3KrML@kTJDza)=avx8oSKgi2LAYH=kfz$ChKi0P)zsGQ}h*Hb+OI z4T)d#UOFwyv1mzzQov7XYH$XkE4`krsL?m3W|;RK3qph?qVyp}56%G+e})a{>V?;Z zwCs*!2sHfL1tCob`i<6?RABGO@(fIe;nU>6&5<-ZFk@Su+=hO5Xjzgw7!_dPc8r^1 z<9^-*0BFti&93PJ%IIb=`3o+`Vw9#oZs_idQKMEsoh4RQ-3$LuwD>o~;}T6Y+iPEj zH^UE8--*0_85Kca-yms>vgm;i_Tlptb*pE{Pkbmpn+=`}M3IWmkzG%#xh=b+U_ma5 z-(u49aTLdhaT@7}PqmZVnoI-#;luenoxup4=mm$5D^06FY%4xIFiXIEDwr;s#eFk$ z;X6r{1uTLk<3EjpC@Kw-_d1f%RFJM!7z%~E?wfWg(By&Ya*Cl6>9M#kR87yS9GkwF z#b>F^SdI+REIdA^TYg8mX8BN6vErE^9a&ECzWC^#x$WA&J@_1l`4Z02*F>H~#**=&7jR+7t^UQa*x5PM zB)P+5TMa(cDJnqMjTDjLO?`g8G;ImBLH*O4G`DMA=>{~5Mv%rxoF_<9%JQub` z`+C3K>Szy`;ZpeYWF{V*pVkmn?pXTYrpqT|5G=7(8Zsk0DiW*(e|GD|8?prymRTlWR90@-XQUWw4nm0hWk=|PD3gyx6&Ax_p!z5Jhtu`lCa&7Ru?E{0SHU{u=~Y3&vi{V zgV}tRi-)bN^iUmm<{zx*JAW0MA|dL-Y}kZbAkp*;c-trnV=4Q$EcvTciCGFCX(jzC zfkM-r2S0DE%pvu%<12hOL|>Hq)yp#?1Q7-tes$IVy1vHSwO{{SD>k--I1^kZB$e5P z(DKUthW^F5b@Fk0&R)HdlHi)7@T_n<3QNGsT!fmvSYPutQ)2mdf87+-q36ud(fAd< zqVh=Zv8B84BkndKX_4?cn;HCTai^{+@>>*Yto<)@=qUmO5TTyGxWD1lnxb}=-O^m; z?n0i4uW7a-ujYzl6R%+rsmsqAt~rv3;|rB)WC4%U?|$)_ZW~go^md2b6G9WezX^l+ zC@x_l_zO;w_RP{}zIXcB_55s<4@-ShdvpukGOboaNKi<5Gfl4EA_bCg2MKlP^=`v0 z{$@dv%&k%+pW`S6hFd%$Og}r+OsQ;Cnq7y#g`puB#JC&m$x?&IW=lFUZLg}Ye59VI z(W?wgOKzvBMqfk4-kzZa8fiQ{#bxMB8nKl#i)B1u+i%2ynIMawpMIFl`0=i6A8OU2 z`_i#Hsw=sZ(8PFt5sL>&xPH$Re{g8lsa8`HEp>H?<(4rlm;!0=8nE4#txCu0v^13% zq#)n#5dGN2jM)ia*?->?9Q%JYZn_$_eDuo$K#XONvZgIj*!gkLbUb|4w{ak|0?DimqCwR%CNy?Fzf@| z5&YV)x(zU3X@l`xULldwTm5VukBUKF9mFEot^_Zd^t{&Nkm%P?dUB>S1WZ)K05Z3!$Oi&(x|7~-!$Oz zJ|Ul_B!LdsKZXUGbjHG6KOXY6ww55zE}#$%;L9gVDZ$Ziold#emQ1kHSXrj9U@{Yj zaXJ(J;++>-v)L$`Eqi5VVES|lz$UQ_GDb1O-L@p`SSqLk)GZQ|&6ON<#|VAo3!m@K z?J*{%L~bPG7#HCJ#+F?oxAo&rv*$L%a{WwfbpdB{NtRLvaskgfaQzm07>ufCGd_B7 z9L7G=I9|6jKv96A^$EYEk=-Pfi8cQ=_FQeVR0AQm3HzVJtv}~uRV&&D$5*kWyX(k^NMZM{*|2Idj)$LdoQX)@( z5KQElOls6r3H_T!vFkcKI7O{cV|iba1Z#Yqan2bOYRCQXxNN8N32wN<_8@GZC_iX-`1I>Y42VA$I8yq3N1o4Cm*GbjIl zVe)>bG8g)LcGGbmduq9En^PDypN+7IIX`bdK5;Co>B!IhqR-I@n#oBJP2Bft&Qrf9 z+>iRUOQ;lta{~8H&rkyezMFZ zF^EY3fx_B%wr5r4jslJ4Fz$RF!)X+gI~C>ef#sU=UIRetktL4t)ocMIps;u>np!FG7#f)yNan+1lPnC&*5G}=#vl7n)3EBvZ&wet1AO$=ywo z`Is0$>BuPXRM&vGzS~oz24c6=FFvN@!~mFOW6j5AHPGB`X$q>GI~<5yP2d=a7`oR# za38_cP8%A`5pduxcY^|1?bCIAZp)P)Bqw~KGUg1q_JqETF&Hm~W@N7?IaNfsZ=!3z zoA|~wE~hY9m!as9#p_k}Z$HvaboGMvMxhrdd`>ovoC*iNS3@w|;ZgX&YMCIjaGskG zh`cB(j}2J2zBe@mHn_lTn&qOZuHElx&9+sgLN`?koI`6WlpqHF!<$l6YJ4(d6#r?F z&=nZ*c1?4VNd>bpOaA>w@+%%hBIs^il(wzS2~nTADf4{X8t^;D2u*8ehU%3se!M>! z@j*ABJxUqpzFR3i0k4iel;m!uZ#$7pmWo`51z|zg_=?l?UN=-A{P0Geq?0oyhLn4I zdeekguAOYbjt;(C|NQ;>POBk;mGNm6eJh715fQLE2gb<``&n{eB7{nldIZ26^gGu) zcP!ajBUYH@k}Nk3QeYCq{R>1swh-(Us3`Q?1#^X`mWboNkKO# zWZ)VA`5|r3bDXaG=)LE8lE1-GOyS~})8ATVtsd^2&4m?=5P9k=RkB}p)WMWG5`&>= z;bSK1O5K`c9~7vuln6|c40D~tiv6BcK2qK4aHqS9r6Vj(W9Qz8{v+E$K<~_w`~r%c z@*O=$0?yL5DIZkj|2d7iMy>BQ-0{V@?2FF$N5No9-?Drdv{n;;Rq|_p}X?Y zgAeS|O!HJa{JZqpi?XK+L&uvZ_xOS|O^ncQuV3`~z6U8_@)8AL(b6&pB#@ftd5$K8 zAA8MurqMXsM6^iB755n6BxKgQ&Q6`jODYawqx4XSU`GC2o)u`K%$st|I;m;`&o6Z zx~5g{`LbM<&NIttI!$0wLM;BF_06_g_IK%;T_N6Ggyvg-}yXFXNNZtyWgq@Tv`9}N8PXU zRA^4bvBU>pgmi5O`QEA{rc!&D&9ezQrz@swfA5%O*V94>{tF5tHuFg`+Azo9PrpFp z;U4)~Tx*xIMW}c-&*AeRS_kjc?`($G|Kn?1ON;wG6LEg{a)wXw&vS z(JxVY%;TT3NGpd!T1X412y6r_Uhz4kkO<-dPzmMHL^pZr$RIXuHJ4dh9yB9NA4 ze)a-{@AWMqE@684HAH^C5J7`C{C2ZV!uYhODhtI`E{DZ^V%+uvjJ@kQ)j2;2@{vqD zbSVX(cp~N+iQ=K#H(RP~Kas~5K|m#Oa%-Q`%$f)9In5O^8$Q-T)V7H)GEtsXYE}^B z&OO^NDm(R>`XNywOAHpRU!_T0Sd!IR_5C-Sfg^o0tUqoC7w|Ce8`8PH5pcRHyy5N{ z{3Q$>oabP<@b*I~e5lqQyFJ+UWiOqGPvQ)h8cdVG+xz8?tBZ%?KA_?W5U-sj&ERLv zwm9?xDc~dx&7p4KO%)n_`Nd77Bm$vaJ~#sh-~YD3>+YF&#T3Gy=Tl=`oO$o-vVEXT zjXEdy*Me(*p9U_W7(i26-mYuI-#X<(t*m6}_^&>|M$&`?PW#;USZipzJ*yBE&!(S*L{(mI)w~9T6f##Ski#-@TDa1N?;mO>A3~-n zW#UE6Opawhc&pO^YU_)vC=#OMOody9x}}`W0YWfcS!L-^@FpUe#8F3UHQNJMY*h`v zUY`>vF>aZc^8w@h=&@^B*5Eaqqely3Xeu7M1#6bw_Y`@Pe2_~pw`dl-il~kxIfH-x zD*VFII;sY*-hy!^rV9MOZ^Q(Y+fi%l^o=`qr|VXMbnq{ZExR2YyUHe_qR$SZv)%S% zB=}b>8X|E*Z|AV_@H(;OJheNzvqCKHjk zKEIAmJotAF%QuBWd2!{@_eKw6>wC<*0;4(7B!r~-Z zHso&_O~+EEXsV)>`_4doYAMEpz^*Z52tFZ>VjBKu? z=-Wgv4t`W~n>-k;HH6Faq=*IJRtMiO1CV;Zqsi?{aghd>SUiQ4JK3VT@g#Z-ZdguR zxmP84U~)E&5(^5;LclE~xM2Xoc-&Zw!$nJje^A~|bet>k9MFv0zmnbm8gw-GJW3lej zM#VZ=q){^mmhnV9$}~_7}#>1Uf9#czACvJ z>sjh!02Tq#SBj%Rzxp4J#j?4+gyENHI?JS?2p)KB`%i8R_f_3ePh}IC3>PgBP`Xrn z)~+2iOw$bPD`8Li?LvBr!b3i4Y$y)`_TBq$B+*2nD1VzUQ2)8l=eZ5hgso1c*8yH? zRWy`OCrLpPusHEXZ*IG8Ri`J}c-J(A8ySj;Ct=fXorQ%hkmxd(?%rebHAD;VsYzeS|1JBgl>e-Zl)_6pmS|mWK*wD4t=t!Jid+plI z)p#}?^@RA=`F1)l34bf91`=F$v<4l^(umHu}rU+%N>(n}$K)|NHFLmBp!Xu<2 zsm{=EmO&`ITXR|pP{`6Klm?^N_#%#0+-+C9SAro~Te%U3gTl?S-K!3!@heTfQRzL_ z3qz0AdX6zUm5WfY3fS15w~0?2wQ9Cix=M=xhOCg~!qn|J1tO|w_qIAsv$jq+8*kBh zEMS%vgPd(Y$QeZGW?yjK)*DMJ2>7~ya^&ft(S|zp|tPD`;fm<;lddO>C`M4A_2s6(uQh*5ZS}PcV!2~<)I-gt*KYH&!MLoAK;@?<)UH2U$t!3d^3eQZQ45e?n2Te~w zJW-iK$FK;d(Y5xV52~~G3_gdJQhcgrr0kx&=M1Lxm0wVDb*K>d)X;a^YI*bW3=h(T zo`ljk#!i3VFxU1=Z#xhxe{u4@XD}aDCGw>S{=q24t-A{tgqEVj_q^m5W}1V`sK7AM z9$fA|_NT8C#+A{zN=0*^zK1`XA`?@Y(EAKp>M(p)?(;;DfA zTt8S}lray_$ptt1rHTc__f0Z zhh>vb1z2NgA^Ioz^g=Qe5~e z3c~;@1M5%C^>=$GH+o~9SG(XhX^qq(z2iMB&@V~W8)i*#8 zS^~sCQ|mc+mIjl|QdGV0`w!$Ney;K?@J`QBPTfL5@(ha#h%O(Bnj^iDOs?Yf3qg1c z(eU#Wdaz}hr8y0KvY3>3z3DoqGK?CTPsH`&K0wu_e{%wx(WcddBbU=S0Zq;LrPk3K z73EXcGd>*ETwpMMo)qA#QH#H4J8fLtFwjsAF`qTCflF~P8p+Z?rAq2X``%ZMq=_21 zxp*d>0iZ|@g?AlOcHGiXyZIY7a8!@uv)M3Q`iaT!yp~m57QIq#i~+FVZ1n6bsRC#L z-mA*y=qut6merPw;mxtszzsSbOj9h<+-kaqfNM1!*4E&krol`!coFT~{iV}`d;aTn zbTt5dvIO8G^90Bf#yw}veKsRpn?3aizGBt zh>f6oru%5RDU|;-`n6_#8L;}NG61mZM@OI9X&y!Lw6kGFZ&UUAcVVjFMH>b=9=P@x^?6pk0W@vEn@8Vi8vrPMF zm|$m0BQ&sA>-r7Y&_Y=z!d+rf&&t9$uj%xV zftVIy=Tia^Tq3Nm{5pQ(3%ki*qD-=-4Bj9uX@z9}w_oz-*#w4$9d#gk-#hRWSSue3 zJW;-TeKwNG#8r5c>~7xQ_pe6Hkyoy=3<(jxo+GK2-q>|(4R?KsWzb+UO)6B`4t=V8 ztDBOvKIgOwIT+`e>$9Y&5T{b`vZPyB<65QXm7kr!KL%aJXOd=U5~I-X>?ESHkBT_3BJ;YMh<5&d;oVPa>m ziExMNwzsUdfzi>2AA@+DhONsNR85`uRuw~|4~NcX2&Yz}^>0*JSJkOJwtz2SFsy0x zsH?WNUN`lPj;YW;D$ubrX#hr^tlX3ue^3LO)@DNBjq5m_p%W;v<+;y^R>w9AK(r^Y z!J*$~^V#q^6W)5|o@HU{!4g((6kki`Kq$QO^XH?&R!gBd0Qz^oUtpu+QS)1OfWZ?6pE;roqEUd2luz?9z&MsoXGy#yc`n9G}d+A%`mP)8|uqsmYPj8A4 z>ARbR1mF33RMq(4N8@uqkWgXdwJDx#J#@N;I+8m90We;gPsot{)TuQL?ni(BvkoAj z4?m1UH&H}4%U?#fe)Il50R~Q|kGpA>o=i@Y@=;iN3O^wiieb9l$@eGI3HfkMKUQt-N-)|`L z>Le?YCZTQq8QEYbxlBfW@?6Ah(I6HI8t-_ZUZEr zs^t=~x`d8hrwEe=E1zGFYgqYl(s7)N;&fSnlTd5*nmg1O_$^ z#gQvbU&|Y-DSm|=pHPG0KKRxZ(<>{&RZch2V2WN?+ZP8fKH=r^^ECCXCPKu@N9M}) z?2K9K*mWkqW^Ord8(I07%~GPKNrQ8Y506@{J=BxbQwt*CYj7-5TS0?AI~?w5;#isx z5lt!&ec!MeytUI13zsRfFzcu2oC@exFxFjJX1Vvehq?(CKB{R=7aZ;Z{KOZZdDg=u zca=pVc#=AIYXFz4u2z#$EUDK92X})S4Y3 z{;UDlsv?m1%QTMi001jf(RoW=`EmVL0ZiO_gl5oRgVzwNefYQu0fMkc}x+lvaM$6h4d> z9pWp?ZnQSjQjojB(%E?y#C%cNvcC0;+vmducqWqu@GM70D17ug|DipzPQ%+O0FwA3 z97<#GNL*5W%3;VRt=)f7?D04qeBU4@^9v*(O1qv>aU0bS^fv}S=HoH&U>WcY9e}Ii zg*SV;62EgO7G{9Rh7d_j`lcZRr!oPf4190Zy0!}X&HzQ`=UI%7#M*k(+jUFBwr8$< zNMisu8x^7=ENzEs+96O)le-PMj`+$+PM!ToMfrGwgj!kl~tm0wy-k@-Q}cW0dCenEz2VA#0uMiT#E z>8iv;_W^!9hsA^bxnJo8QH>7X|4!3Fe#9S)@rn2A2)OMew#_?_@|bv_HcRn0J_9xt zN;-8iy*?R?q36TiQ`0tBSyN9ff=v9aI7El*($vo%#jJ0en_$$`t;XuLVC?iw6vQaG zJts^Y^gE&=tF>~o2ad$4@l*u&5jzccYlpgRsd49M9HVJJrbf=aA|de82lTmb>l}&) z_Byt@XQ-eMpPgdi5XBMAuMFLf^BwyM4CT?4>$4m)4{$6YcUoPqqsfm=5vL=mky)At zDPr5L+B+Q|PEc&e0F<(KCZbCpHh*g`_uEMII5dsn zlba94^4+1SB|bq%SYlvN0<6A8!_@Z%Vs16~Y2}k;jAjzaI8SuVJ^%4rwzWy}W0`!C z#p769yVsHX-6mf&>_-<%kAve0Hk6K#1uS{ZzZea>)XJ70z4ILLn|U@ey+Y^5xD18{ zyl=FoebA_xUgH#%VSF-7Gx2*?`77&W)VKzP4YYE54ueHJLf)V=RP_pv)(&gVuG=+v zh*^Zv;Sry-Wa|aeb9}~aHuSdJ{t)xyHFG0Fks{pktd`kzP-}g7ef|cGlPa%_(_*Zv zq>O7K7`VH8T(eYBC_k7!JC(!JvZ&EbyWeqY&XHz}aH&%<5x<-R09h?s4NrcpYfr1N zF&Rnmh>6d$uo^D!^X1Tm?|J2IYs-P5A@}oz^I07CNm*R?oz&~=em23USPbWo(~Bek zYhtI!-k^2WBt|I2{M4rLU}$ zH~N#Ps4IoUZ5#s-xvSb8Y0r?{M)`kFjSjxMiCvCUV8CjwF2bc59@uGYDA>d?<^#j( zQVQdJEsd!v`Rdc>VzU8A)pJJ;^{$UmAg-0$lJ+{JF!y^3CnOe&3K6<+H+Ikn{KNH} zuY)}O-kTDObbI!JDGp>fJQ29NJZ&Q2PS4cafUb5e<9hsTZbIQz5DUhRi+#gaMOuFJ zF$`dF5TGlH{kL;sV&!7zY+Nry-t8Y)o}(yGJhgh^^wk)~Fr)5)-Sk}T$dU#EPj11g zFo|MG6frdMpgtbuVYX#9a$75G9H2j>33Mu6F2!4RkN;NHM6+Sg`Vlpp5l+bB@WAVZIk2%em&wb#0~z3teJz`Q*Yhmx}iIvE#8 zV7FB}S-n)cQ-=qmh1(R)v7=4judFKl?W5vg9|JC6&tX4o22QqG9moHX>DGq)5Fap zBZz_n%TQVB%gsUZLlPrYY&O1Sc6qC|UoJ&o`1xXz8d#=5K#W5Z|K_;;#xGV|ZR|NFFYkLjrz<{!m6oqA2w!li<8_`vF zk8P)^rj;x*kGpOOqxz+;{Z+v)JE{X{od}l zu4Aezw^)`=VB9PYbB6dh-4BR3m_;Fd}e;7`7K~Sb=8xP|EH6Fd4@H# zYr2QJ1sK>Lt#UOucPdX&Ofrs`5B_@fBUOWuugvnX=_;ZaTEKJXNel&8VUBM^56h(= zeXmOr&?zzW5}uEN@Je88^kMATVc><&32-41T=HK{Fj_+NukYC%+deWhp18ZrEl`&* zlt!t5Cwb+UjdIg!!!519nUV*ta40zwQ9tVt^!%VL0w|841ote z-);LeZuc!d1Ll)S-*_>)1?+aL`i5-@!3k;QHWs{22jdu0>w8V_VYIz%RXQ~l#248y zmWqUVE-kjaXO3;Q9!8Bwl1c@0*%*|MnL`S(bvn@2gO#U-8r<^xP&2Z0<^~Mt#V6R% zabjRbZ-l-60CQ8ILIL#4^qEC0288=Px7%pCPOrd>E%;}}uq;~cwrsEOxu(@%Zm}3Q znMN@(6f>=to@1+PU(Bh)uS8L{&QJ+d7_|=vit9gq1v|wfQ^}ySTmp_zW5}7AQs6CA z*PSFXHqkt&nR+R4VZC-aUSMgOpmvYFhTSQ_bf6zX&qr4lW?29OM0X@1MvuDNu7B`a zozAAmGLv*7!b(cKw%4`veGxV^U}ZTUNubQdQncLvN-1}oo@A{o4*1CBj)d!MD^$_# zBd@_Dzqx@Mh^Gl=%!e|%#<8G6D5K%Lh!ms89l#`%hah1*%@rd~WW z0w%KC=F1K9c6=-iV19((GhP1`hmUxSg)ZkQ7K2eJE?4h&c6&|VuP7DI!CEyrK9`^v z40h~YpP_8=w{wJ(h+&Z%tO`Z)%yN{c_-@xxHrAt}V*-0%Au&<-N#{?g$7*GB$n&42 z8YhIzJPMfQQ_Iu{oeAr@=eG4D`Oybjdmyfj$0PBvJd7{srqI-%w)_yleL6rml6ET3 zT}=TjRjx|A##77nN-1a_Rp}aB`!a=UQ!|o}hn4|87Jfkiuquk^PjQOD1!fs7chm!I z*MOlY&rg)Jj3xaK$Au)bB#U0{z|fnPg+Ao2yvSS+V`_RGJrUo$uHp<^L~@M^Sv ze;-H1TQp7xJ8cy&+HQaS+;4JRxnzm$jFca*$0_?6|jZ394#QCM`2VN*W7CmyGNZmRLYWFO&Qq5cw@jyNB(?wX4oqkgV35_bN zr`}l~Jwu8@W+{S7eqgf-H`uU&Op!dxoO@Fr6@GKmPZryUjv7G>B7~~r*GK`89!|z( zxU^XDno_0TP?5orG!2dRnh%!g7@rw(-L|`1->r)lpp3_{;-g#mB<;g)8U+*OZ!Hsq z)v=k5W^D0|i|y9NK942R=U!{Y7d$u?=V5SQ_<=b+{>!yGJ>6+`8x`@v%?L374&1_! zQ>duY*c67sdo8zVwxhL9sgPsNr%6}|k;tzS50NZ5@QH;EC=Xjt?8NCVbg^9OVns}V4>{TF96`|g+{p{IUf>sZRJv0STnRW_oZot zMuiM4uTEa20qA0B{N&amS#@hiW`shC!C9pI`ITNx)kD`OOhZ_p><1qyzJC&qyE~T=2_iBpz-j?pa5Uuv3*(@ziw~%EeJ|^lNzK`ourSr45Hq`F(KbAC^!B zNKm_NNp-FI+Yh5>Q7Doo>im)zb9UUmv0GPDWuI#aG5F3VB01;rk5M1`m9_dnbaHO3 zz=XAK5B6>DSfy4zI+LRmAQ-iLlkC~MFC4pYhX?f#ehr0-9r;+r-#<1lp`xYf3~b9J)3_qsrP>j_wDC9w?VmmS`^fYy$o4SJ=g4xlZqt z0;`{@D8>%;%8a`6N(`l;g_A8oY+(Xe`{zHaZdev@-$91G#NV-e3IHVOmgS$TG#LO(`;aKHYH(D8VDlE z`}+nox=I$SOlo{lL&st!+3!1Mc}tZ`e@O*FP%!z}#2iQn(tq6a^}tTArE+abZQg|E15JSJ@2N0C#zX?G|Y6k7i+FY@VjV zD%^>0E|)#iu8Pl|NJFpfNAV1B<;n1KAUMxK?|IdCUYtl#dw8>qgY&F@>iR+=3dwLs zy@~)EZmp|rrm)BoiWke(PgR$#r+oc;0q{OFkrq%whX48JU$ezW)2jWf&KA3$=P9_= z*r>t-ABX)|T>$uWWPvD@nWs+E?pdMv3`fI7Z~az+#AN=dWr&s$p?}bBc1+j|T_?v0 zN!)UE@l0B;w6)@)0zyk9$dOw;1J49#bSJN2h&kACIX6Zy(gW1~K^m za`kReab$P8XGA8dibzy;ToNe~x$U?lC{el3$+#q-a<6Iff=boB&RQa&>^?IuC6If( z=3&MK$Te>hk*Ms51f)o++>VF@k*Msm;*x;M?mmZ%$OLuIJdhV8Pd|xF%H?@8pmO(P z2~cT*GjGFMys&`C*n9uK@At*tu{S%FREz`1?BSx!K*Meq2Ab;S5i#HFG>TO#oJn&8 zK-Ajc`{$`%gB-6!^W(SFbmVy~@bf8@8IQ?TYw-|7a^FAlbgOdz2xPE<-+owZ*D3&! zOI{r)E${2#D4An*qaqF6k`hr;i0Eyj)fUAlsm$-jw}xh@OvLfZ7TmNlkhD>OoyK+> z#lWi+3ZPI5^HWUZ%q)6fN8|bYcmCT4frWnF7XSWBzMcZ8?>zy(Q^-eMRl_5tqFeho0#HE*~_E z*ZZ%89-|MRu9lD-DI#RGt3zYhBY6ktcsX>0?V_prZ~_;<{X|mYZfE&X?uO z-`VP?*?=+)QgSEslA?RCNd?|o*PwfoG}`_3e1VjP;=K9Y&##>N)&^c+1M?H}2X-ON zbf%rEXM2Y&;geZ{|fEnB|z^MxeOfcr*i`7&F6n zLr&=<2t~z3x3ba@)jU6c2$Wsd8_KZqC`bOAV~RAY$QMr=ZYi3g$5S)`?U(_s*fmL| zSDZ$xgpa4tNT*&@)rl-d!!oi_!l;20qbd^gYfB9yRl_kQSj!nnr>)PtRDCe>W zI*7(PDoEc!K=grWG&D*YOi+Bpt_w8cbFCDypEWFr210u+&sCX}z@%@MhSi5{-G=i2 zIKhT}LxZ{yhF12fIXco9MNwe6|Jpuh&;%U#-Ar?}r2}d@Fc#Cv-`@(xE-=^jA2f8u z!TVEmYIy0bU67Nm{eE-bwM4?HD35;fF(PQeWcV%w(s|?9)07DacS0w2Ka)m)K~xUX znM`aSD6t~GxYw#{%2FR`+PPaU`tjct=K_&BL}yBPm2 zohD>wm*`xIxPj?JLk9t4wf9%7e3r^qrSo6vO;fQ3YW~5+M!QG}nEQ#8XsekY`Km7p59N)^rVv zZ9n=>X(&Nxu%?{I+B;`f;7X?i7&rLdPlq-Ba$GZ<-%J;?1kCoC<7~oqc)!YC6)zL_TFx61m(GYrfCxsPctnSKZ3EGMAW0#iYK0 z5;Ffal*f$fYFiAr@5bZ+GDE^$X+x_XIi{SJW)YDajD=yGC@d-`R_K-P>D9+bA_kqm zL{`(y%m2A>6t;$LuZ*#RAVPd!??ZDA4<6uL?eNqrtyxU_&Dq6Gc(`+6hD#Pi*aB zDer@FUlL`1NE((LSUr>=KqS53EDE*x<>r!>Rg~qYp8D3l3ZZ~c-@+I=VA9HV30v56 zN}=E0dZGGBmI!8Pl@k{0GFS@^H;+U*z1dL7EG`sj1MTW@H1yz>Q_+YH5MY|6wfcP%OfkKvHqw$qv z8JIs>ZaCm_wWI3=eTZiG3=`A3Uu-31p!-A~iXf{c07D2V_@90Y&lMjYspn5oazh+~ zuKadBsu-;k(UCD?vndgCGbkVa5Q6s1ylo=IQ%I3|ZZ@m;NHOU$jvxwOZh=UDnn>^? zfy97a{FgE9R?R|SEmO-cDcFbRRBY)sbFKCmU4H!Dkqv}e_EEW^$+2CHGd`XrOc{^; zA_>q#V*uD&S44W?t5UJ;;JscOM`vhpDn)aB7kxW5m73NU#D zttt6(c{?1>=f=Y02pCSIK+P^)eDeLZeEzfdem`9_mIl^qzWsGS;vO71B@rZ~RA5X4 zFJHT~;HjIY-j(2CRl`JUbR3*PGPDwKIt6IcM75nG-E!r*8A{Ja(;1qQ^W}QJ!a&dd z2s=I+sf(2=I5#pxV|3Z4=3+^SecWrBdGhtw8ju3#_#qOf?TL*wz>B=v!$-&`2 zv5SSvlQctNi!W3Wgf*gL;dCNF5}Nrl8c0MrqvGj%Zn@d4JB5o~*I!#wOhlPM6h}Zn zSl`-|;Y#>M%v?A!R0{0jW2G4=nr}c`kqQ_1-#>omz+39RkmiSaHT*6Cg`B-DC|}AD zs7`+R-6JUt8yAFRf`~M$+l~pFZ?#QIx2U!0L7KhFpXy=(FAu=B2P@Md?5}jpC{ocG0F)k3XHiAI`*;&ps`$r zf*9mR3MKc4cPXX#n0{R~j`X5wBDw4T^p}STND#O@0$$nQP*JRJMC?6;8WK*`E)eS9 z(@~m9#EhM`;?rr_-ICpYWGIW^96nsRc53#%ux+C)ddAB@KUv8Cm-yWKoGNS z@4Pl_r(s*Jt0(ZObb6fPXg$(aeF|Shkto%Nh;L)@=p#-ixnxwm>ox|ei90^80f&hDt zh-MN3g`yi~(cWxZuJJ-w1GF%nk~b1QCK2-Zs#|sh{|TJ{FYSSK$6cKb;EKsZ^hlB%kNT5 zdXz#D$f@KW)XN>a>Y3VAE`tgrXJ1V*0!PBdGked|i=G57+MmqwY(Fzeio5&5dD4f`a7+rREA9M&uA7K1cks6=ef%WN&F5~OM(hL|y`{<9=88{}v3A!O%8HpN zpB(i|EI8TgKByZ{EyJ_xQXWO$O<_zXickm~+-YoE%ZJq!5_)pwci)oF zsz%+ggVQQ1jNkT|jnXK%tsE-L?w6LWH)H^MGu6XU_?ReC*lD2{V7kv-x4PGs4F%`V z-@H+$=t-)NQmO7&ZrODzvhMmh=zPwihs9#5qQds;Bg?ZJmNu7|O7U3MuZ5bmUa^aZ zPODLuk+3i>qy<`mKoH*0l`kzT@6!22wN6IX}p)N-I)t%!T_a&x;8;K2!gh-cU!8yG1%lqp4q>5a~(j*OOXyjD4kez+B*ZOk> zz))gt_IxQZ8@Odgs`;axite4-4OK|_t;me~y>^L|%gt)D*^re2{8b5`%u7?efXG_8 ztZg*a^Fy47Lok0qn2HMmon|%7qpI6qxJt27wjbZle~e~O>XQ#~q+F4)W$({szCdHQ z1J~VCNG?A2>jkciZ)3a=$t}mu9A{?>5V7D4{RW?dkM+KmAxh*fdkiIm-@>V)KcNa^dfF69yTIp0Y zG4xox`CrB)Qbd1w7s5j4lc9^MxE#FxaisQC9cV-ce)rDRTMCLHqfDy%xMj9nz);~E zL@pIgWcU>6kC)Si({ycRLycIUyzh?>Cc~2gyRECxdZoIjtr)spU|4zRr-mkLa!S3} zk6;g68!ImTIPRg#2My=~ofXm~q!3DOY_Wm9sOm+f6dkAOAs&?ka-+ogRa1Fp8F{gI zFCOUDoIidP0|#l0z(e|rhHbAmfP7ssem66iPGdYZ&`?U>GeheQ;#ozpFhWQLM=r-S zIm(CrYigmiZd;=5P6N}wIh(~`_JF#7Gz7iaoNuns8I_I*G zT0AMYEL#Hsj7;z!h0K@YA?LM(1lV^+L<%L1d+%+VTE0~=;Z|$u@3xrm$gYAu zGw~4+i2~1TbEPiQ_bVv87Mw|9=`6!%@ryOb_=BawvR;(IH}3F!mWHjR_=`1cIll{c z3S{v5zJC#|u=pH=Eqs&>@<__I$^}aK*{Y}6b&O61;)Pjy&>z77bAC8#!#-}R!HF!& zQ@zcutfIrm>#mPAK$u#dTQrr+14o+ThBJg2`Fson()932{tuQbp@Te(A&)*vLJ0u$ z4Zr4SigI$$kN^sLGNbEnpi%!4tw8swMA4D@-kzxhzw;<`kORXUdV>QpH2xt9>rczB zBKs(?`ln!m=9na~taMDcy7E%?tU%T;Ck)JxsB-aD+t-6!=xXfo!f^pb^p!1QyTA=1 z!Pq4MV-SqHV!b{UAxkeFZCMFA#f)>zWCQ@Y?r*GeTQdM0E`fI`W&oVK4XX%{#+1au zD@&yy_!~n5{W3?G6qsZZWY4hm;8d4^vQ~8-(}O97Nu+t^))Nwc=e1SUR3(RqK>r<@ ziAk_Ja6&flv8`U848@VB&Vg%zkxxd}W;s07$IuGWI%rv%S#GRvVH8hIWvO5$ngRqY zcHovv-3Ln3&~kSKhGqCPqRc%-Yi+xpw=|@9vR8s2FkfKO({r;vLkY2}+j0&XcEkC6 zh>fyC6h`Ao49+`ej_nmc-`U@i!9eWYSa9I^aE==n2ZxV!UEQ&pcC)Ro#lV#w_KkrH zLW%}?5^376^gY{lbijF2Nb?CUL1C-{e`PpsvwQ>rc~D>l`35P=C7*mAz5Pm5YF2e0 zYN~LKyf+c$1_`_`g;KOQP?x^+svUbvSMAGbwkwTKZ~_a(&OE!Y+3=gOSfCL^{ZUNQ z_t6VeSgb2cDz-WQ+AZ0-`xv`RgY+GS!)UPhRi*gSs``aG-%z0;KFtkrXg`aF_WhPR zwM<=B(I2xxVH^wT_n$Kx&hGZ-bew0v{DQ8kV7<45B( zHx?WYT%F}8MXm@?v-tQAP1VrLA`^{IdgY;M6fm%Plc2kg?HA^{=>bTu5Q#LvekMyTC%u369|JnF3PieRrYaV-2L7m2e?L$bRR2K5bj@SDNRY zmSlk6FwuVgP8m=r=!;{q&c7bGCPK~eBkO@fhJq>)eKK_=Wm02$B!k1BR_a)TXWaz z@=hV}A)yDNJT1exY(Mx$&$j`w_o!SEhmwGfhSOw!3I!l}#|Hr!yRSEPgEM}$6E+t4 zVo#Igq8V~tX|SgomiD6&#U0N~{`Xbg`bw#M{_^u_Ln}o6Vb@QFQvpPjx@#+^o^5Pf zh8j8QqNDt1Toj0>IzY}#Ah5cNA;z1xMZ+o{%_VbpD2n4LgFJ=p&e8HgMb+p0TF;;& zh>WL&-aqBfbU$+`_7?QiRl45iSs*j)q7+&)UX&{v4c!W6Xd-y!zfGa%hmq3QrVc=g z2K`&PV`?JQ#e#Q8Bj+;=?0n;Rt_@evT;L;Em&UPaiqL^#*C@vb*MHwzs}$=w7Fs=v zs8Qh@&anKEY{5sa@dvkNsvwDt>}fLBo$mR1)KX$eUS;P9a~&dzKG1xo-QQ zAonrck2tb0R$WRn1hDn(GtE--6&-ax`@yR>k~A}khE%EuY?PfnTidh6Al*+hataMk zQKA4l&g+U^Km*EKhv!FSqWv+;Q2yXT(6V0nvZ6yEg{1XS8utEiCUt&LaR4Rzsrm9T z>@M$_0e%vTt);>lo|W!zJv6J^m7=?BJ+%Oa;;LRqj+phos-2#rRp&C{B0xHj06#;-gc;J4pDg7Uw8XXvLQ9TiY1t3@Nh`ThBWX09cM(9M zvEtT-_^lHy5XpVpjHdY%gX}a)DE3~xC_W5AJ);~65c`^Qi3V2pMNq_wtjSC*oF zE%ATxD_X$Pva@e&_4@hF#QOMab2|J_Gm)h!CVb15)r_yg-Hm2LqKc&q`}yC#Hk^hF z*}m8S848sqnEoUH0w{p(oSFe_2A~Xi{-1_-w>3kNzVk{3!IW<>4Ey&H%TqBvHSoG^ zSU&gigDC!k_EsXAV%evbEg?=}r2zggu3P7eCuTNOU_9dLRa1F);J5+>6JzwYEYbNb zX7#zP!lwlv|5J2X1Ji&nD!!C%wEb{T3(1{|hQM-^#poZ#+M>V#31+1tGV@R&9orxJ z-jSgx4q%+Bcmm6$eFhP(yfhVwKx!u%o<`FY_E)F!x+?-Wmc8;y!%`rVrelvs&gv4O zg8YNMhNgI;a*ul>o-a&fc!BBev|QNAC7INnII3pG1q5C2Ixizl)jOlRqI zn!tK@6ErEpudQO+mm4dPl=16pH!`dc+fnC_LJ zXsawXn&46iQZo@qnzrCSE!Ok4SZo*AcS)b~Z^U*Z?qYrU$nOgzJPm-1e7*z068UaK z2ay6FzIMXRpAhU+98N`cRuG*h*F+g zY&v%Cig%KmG#7G1lTk_&e92Q5z3QQ};#sh6jiJoI&<7|~k!hLO=#-rGPcJ$>i7bVu zQy>BI^YwH}xqp15d-;7004es(B&5$}`PK3o9KE=OUgk8Ay0mDLu-{+H`=D-{i76&2 z#Le3>)ROZSeqU7v;Zh=UfeKHt0phsXaC~&g7ec{$dWyeGG87{xV%kEbywfha#zBcR zndk>gw8*c3{Sm#QY#f+Ia4-WT&>T5;-LBLS=M=yB`FQlNUP6W{gTS+j?{Srjr*jP3 zk|^dblgvd5*szEEx#^fIo%IIDC75xPrf(U=WAS`O``9f|Hz=x4NXG(f5m#@%Zn&;v zNt6-#)g%gruKErgQB;HrEgy8M7ElANl_e~@<7xrc9NDvg=8nGfbKqXjxLEspx-pO=PDMAceFLx51&L7*T!d-g)Vpn@P!g=4ggyI39ZR-f7K* zjmk!4xvmMcAY{2aq!>ZN1L`xoZI|TYr)=mYUo5#pw=v4hpB6agHlB(Fe^T{_?u*Kb zuNxYTKo}bQ2!aCPJ19fok#fta>*D8+satIjO4W5e9X=J061XeVBCTA>sGFyvUKDjIfZyPhK}ulw2?(e;9i!Fk!lGG_A(`D%Q2z5DQ@L?+6hZaSqn%St%Qxf#gbR0w zduXzd!aOj!wrW1C=bKv)7XLaOjowg}6-(ChoqZ!WmV5iT(03aV!8};_c02tC=_BDMlL=;cj^BAML(5xbeQuih)>eQ^4+Pn9 zW(HM&Z*=i|3w8~lF>d)1I6*>a1)3t`U)in(H#@43;K;#fmskmZSO#VOa zb~k=ANfWyaJ`K=la25<)S=v0)bY;brK`a%K`~jLEqeLy3=bkkTQ?I$|cq%vs5GyBQ zf$KK;_XU4=fdi(!xf^*2fUq7g34S(;%-tNKV&yMALs{|BBY`M*RtV+#Xt4Xx%6rF8 zOIL#m7NEJnMbG=9b!cCew;s)&nKE__|xQfI!;5pc$8Ce<5`3fRVZBg>7ySUt$m{!ROrm4x1ay>AKO+;xFj62?!He78Kn`$&ABoQ(4 z*$~@zMWY{rkc!?v6f5T&ucDiWA{6dzSli%ALGUvZn#e+mS*vzhwuR;& zk-57JH^|XMZAXb1TK*NboL03xtGGn~wrF&t#$)VAY##r`&J? z>?=uLs0_t`z7f+`$vE`c%vTi|eQ4qlE9%GBRBUZ=AF5TP-fuL>0t7CTrfDRXU0$~| zKh}_jlpeS@Cd*>cJwDEjv;tSj0>)|x{-CXgYR(ZrRF@_qp#R~cV~V2K?fmc2`Htof zXb=U{6xoABe*J^j=&{Zsr;A}h)W&Psb*@DdtFE`4H)Z+;jo&S>r z-)6OiJ7E*z3EDZs-FL`=2lNcdXPmZ>a(BffJijEqJP)1nn<*F zyKSr?T=7?IAD8tFQ)Is1K4`X85y*=XxAgYwuO$>`_@rWAN|TS`DtGa9-M0MdW+FYI zPy1LN;qFbA^^S&*b0hmoDfGe>@oP^O-nGgS5*jfnoE;@`>*T zfdS?ld%5A~6&j@B`@hai(HWiq^Iw^YtkfLusH~~P1)fDNXT?6ANrtrIsR_z0n>grL z&Sx2Zf{W-iQyK%YzF1S+KGFa&m$a2v{`kd4({X8Jp{+JQ($x7Zmhc-RZFD$;!ejkZ@tNkpFcuV?Bd*j`TC_{ zt2#c&N>K*o8Fl*O>j#cv75BBoN(In0^>!{fzJG>_-Aau>h=IY+2QV zhFvUi#t=Qm1!oWhR%-fztyi}e>p%%%hHeAcwWa7Z7|a4-Z|QpT^uSuTovMhl(jAWL zV>2{rXc^eA%X)sNAuHX@Ly%oD12X_q3?!NFf1bYbO|@b{%cV>TyJ?1pgYR@9{P+GH z4G*`r#Kp>j*>nAq@vl@;BuYFBZ@Uiitf; zw;Lu@?ASS4njAb|`Hd;+vyZ|fj8 z!6qmGi?=FB{#6Ms$xu1Ruh!d|iF18ZSsEp6(cW3>N22n4qxhm`DOMoz$>bnIkHP_C z`N)sJxq+^S<>RtmLTO++aD6`t;b{cTjXYk+(f2-l=DPErO)^tF7bWwb-q-a?6kRlT zwu+})5XkTul+8_28vW&oW9up-(9^nBkuN1!j(=xg$;I)TyGG&Y4h&1!m+s>S6&XPA zX^fwQqVpn;UQN;ev949UhGN^Gb2-wVPGJo5?YgF$8YKNiwe5BajF1^mg-XHhj$aY= zfwp)$Hzo&ylN)|oqOlC8a#-(cMYC(4U2ogs{g#|VfGFGjgh_(B@a;1<7hjrY;>z-| z{upQZB6++o&T;@g4nVXGH=ovxruEF$#n9TUz|kCG1czr?DDuo}Rm!f6iqZ%8ltAA` z)OlmyG4H#!ML+-k=kXs46pF{*dcLf7H^F@9u#=-Z|0bs%)&gc(NxQNGAa(Jn%f`?04^O)?x2s zLLK55G}B!V@(erL?e5jAVnb5IcVpExo|^j^m6xHadt_)LeDCeE92-)@Nq{vvN@Km6 zLq39lG!rSYJ8H}FMHdDNpo|v3{3@Y%S3-~4qf!| zQz=(~9*&6-m$(Gfp9;Cf%G|e|6P2N``To8X+{NXY5&Q>dvQ}vd=l^vu9_V13C$1VM9W$EETg6|eM@f)p`Qex2WYKby8@1ySg3-ujHkzhWk=<}| z+tKa$*Sc)jR&G2PZ{VW>ilTi9vUho3Uv7Ax{NN=J%p#yV$Ymnyu3Bs~3dPT+!I(+D zni~`VNac|LJ+l5wHnr2x>rh?y)+Hv@cU^7<-yKs#VogYeDw`Uy)2SD(16c=MkOM-G(8mYsvAw&s1$eBFopsK8E%$PbJt1~5TAdQ z|NUQfT-gZTmigH3IK`72OPfm*02;NpH*N#Fkwu@dYfh@xnu6wBB?Q< z$|%)`3TT3U`%jQt;Kr%V+dl_;HMBvV%#Be|2(<}h*61(@C)t0Sj zke>~s1a@JdFNW_ql|u<26s^|OFT|wEZ0;{h{Ou?OEH_vl8oOjB{UUT`g+jJy67Muh@zrwB6hHY(Fa_m@N{v?Y< zQ*0pn(6J$<1bwLj)e=6QM2W5u9Uw05hZj#YN)A&|A*EwQ{bjXP0m^kc-zRYVXo^DZ zvR?kG0N3iWbDnwyh=~|aA{WqE$a*8@$sp@})v)zq37LO${K_F6362v%YR9U&O!E9*GR)kiDT=us=zs4}mfmVuM#D3+f*JtO%O*ovQORu4VSh0`$%MK_O{&MstOp&sTA?MJ*G zDo6h1OL*yiv*K7{CKcus<9;vP)B9b9JDq|5mF{uO6w-J zd8#U9Ysc15G}`A^c(8A9pnxIL;@SDuWrpIIhN1jwIzZpy#$oAF43Giv;&IdIbo3Gk z-y`9l(ZP)0_aW8UJTfY_-KuMtymW^}`guPbfh6B+Y;+nMZOzgfx)zv%`UZJ{A_`D< z$Fq0Zo+|@+IXudYBT+t;;ZOvaKeK9n9RkWqUAEWIyBw2_3QUv?i3{$|u~XG`qovC@ zGLfbe6BNT`5ye@1=au2Koo2ad`7PqpTE@Q@R4Jd@HQTe5;x3)MOosj7k?Y@g8H`VJEWJ?KIW!!nVXHuHEO$%FaBO&nWa0rK-r8=~m9{M#`t}yA z4W$z_$1zhl1(Y|c+pb=$RpbC-y`Q0?B-khLC^%MpWr=xDw@U}MJU5f!$RQL_uxR&- z^L6EVP1QkgG?AdNbXv*zMh_6LJ*(w4t>v~=i0PM7eRRUF#w;a;>`m`Poo{H01n{Y~ zJ6VVTv-8j8iHKWJoUO&Dbu83$ds1q&FH6WEF3|I5rSgH_gpf*KNTvIPaT+5X2|;Rg z=d|Tiy=nA`xJ<=#!IBy02ex<{P^$e{l1Wl5z-S9_2$C5Wngf>Xx!VE`Gp$ORhym)@>YejFCKaP37N+Q8jl%k?o^5NRGeFemo ztHaf`9lZnrmy?KQ>!%l+hjP(U92FeDHw*eb$EAHf9jO-cuWkLmA81otV<&na-Q}@M zoWx=D*?9WhFHN-9+qONU ztp@naWH>|8DF8?An{ee1RnMyK7as>A_a-^+Dw?386i%nexz*2Cn%bgU71hXZexmvE z%ckXV0_Y3Djm@oPd#_@L+~CO4nDy=$0QMoI2v^%)wPJX3{f3aHFeY?qEH4w9@AB=I z-Vn$IKn?YnRe=ma;mYPH>Uq zPIEVJZy_})b~!~2vH>bgK{dVj!Zi%(L1q4#1<)LW^ikAAbP`d-$URn?r(ZX#u0F?d z*x$aAKsrHD0J!kzw(f|pDzf5+Y52^`-Qk!)%GgIhJOwJi&Pxp{(OBdzAz?`%a$<>4 z>Dr$j)MdC8Sg_{CO6ka466ni@2j;Fc4vI%Q9&709UMZT&Py`K7zxpt=7V(yd%WQva z&p9-Fi3;AVmXP2$lOdTE3oStNe_Z{&QIiPL*e(D8?(a#-*1YoEw{~e{wW6cBae9j5 z6<{b1K2uRxXCUU@v=b(w;~oKFRx5^G6$@l;^$b#=K!y^BztJT^$B_KoU);kd26EKO zzx>2R!TSxpQoT1ah|;SC5dGxsz}occ7Ang4vh##^ZGsfA;QaF#5aw`H2)+1(T@Lcw zvhiS-0Q-`Prvn|)*_(^+nR5d}aj_@O&j0$hm{@d8O)FOP@U8OC)66tBEJh=pCkWhX zxsK%vPd|HgK;j7y|6cLTDz*z?A|??-B*QZF;Kh}Fx!AHKL?Rk}fo!iVzkx*d_4Nv1 z_3%^pz(3#o_-0iM{;hBRt|+F_nZB4r@v|sJU)#NSVq5+nZ`bp(1}5K#OY=)iyf`#X z5&3-s*jl#!VFc61p}AQuD$sHL2&&7WmhK$RKhMw2(rJVtTe>U#L2;_>qT5^pGHGxO z5Lh8Wi12CEsRP;slg5VCWw&Cy)|Hyo2uQ*NpQZ#RrGw~~cFn2zRjTsmQ@H{aPLK!} z+c~m~YC|>^*}BXLgFMQC-);H&Z_Qtbphjjm@H5sg(g7EX8P5s%8(BkkRGBI^!VfAY z#z#}>G_gcgi;}wfyT3YXiiY*s^~cd`zhHCYiD(MHeo#R1EP|1lXNOv`VaQOfx6u`y zpztKd0qKQf4c_aB3!YgJgb6N@!dTK#AwLNDT~XJ9eCl2Q_tMyi6gg;hY`Y>`CFusD z2c|%BG=ZQJr38d4OVVA)t7?#gMP3)(atFZZ34T0@Q9TsL{ootjsCnlnb}OH}_j76r zqo*R4ksGd)N*y`q`Zp7jVM_>o%1xnIngZ!q@9R_9ZzRH`FQ?Jy1QX?=!{_T2tM*P) zcZ>C64jc576`iKJ!0?$}wwJxVEkF*8hk~;dN`@Z2{n;!BUr2?q8DhSK*d6W5U0v5L zV~(BbPbnHDAc=ufzjt6)SGI`DALMfxKmNjMQh&U-e!lq&4x8K%H_B7}6v%Y%nM$#~ z@`YXW?>^tGxRZEG#nEG|oNMipQF*7BvXGS^r@wnnWQzOyOg&-B#MU zhfL{l{4>d!QzWx|FWc>C+| z%pe`5F#)(=RrWl4Uz=b9E^gfBix4_waj7(mI=;u>*pxU%XU*k`iQbTvio zVH17hjBm6-6dbUgJ)igNZMV3;t|7RP5g2+xMlmWcuY6Ifz*X1P>)5+oI7v|$3v2`W za--VWD@0V|LhNHfAW=D8)GL3{c+pUN3aep}YR5j7d@A&FWLG9GVqsFcZ?~G7ykjbj zxoL)&OW(#)h=}THUwr4lwaZUk-Btn-dv1cC@c*Mo3^93cYsB5GTefvIZjr$iZEyvh?nB0P{)SW54?TIaOa<-rZ6GFqyYa4+b)(@mtO+zM%#D1 zg%Uzf#fRe91bTj+H=r>qFN!VG7d0)H1e5r7kjp@Q5v{njQ!g7w%XL}Nn9K~#lyPZH zjmsumPd&5kjwp?egIPSv$9*lY>Blduyrw(Oai^m7&P{PpE{nLM=Nn0};(FlXvF&Wv zOxU}}4+@N+Kq~tpH||5Zbib)>c(VM^YpyM>F~}$>0BAo)=XKzX|8S^Pf}>apj0cC0 zg8Z#|=+p0+J`bbPqSLHn2|h!HBc%qrr{QtB=A6ljrF1~-{S-)Qqf|7F4Ri_=(ESAI z>)v@~Ya$3h_xCk9;45M%I!YO80MZ^-pIR~iVIY@RF8tt?W?LD)`$&br7@&ePfuBCJ zKr{?a<$VUq0^;x=uYC4buQU|PM&m|s3_v*PTb6t4nQO~>9)9I&vZ&x$HT2tQ*c?qw z(Me}bAbdibchwsU-fkZjzdEcjDU!!$WF|2D+UI^r)=ynYmuVr3Fj>f5U!xZEoiqO$ zDT+Z-U1OE}dIc>?udN(N-$9T-H!9ePJXxg@D|Kri-hN?Un9uAP^nQ!VvzJ89RZBvi=XLNMXfnK`nRB z6It=f|Mel5#?o0J6&UEKi?&60&vxMwh-Z2HeGcQN6fN+y%xPv#x;EI|O0qhQ`YN?Gzq4!J`izg;5V$=j8MAHx^44>f8W<@JD z-E!S=`bMll@TL|;*Mwk^ljk)s7iJ{ovzkfh=kEeliVX zbKg7dxYf397G;UKgpB{ETU=lS0J3-g*S}2v8yE@P7b6S^fXM z-vB`1{OkN@-@N|+f4u~8K7GD3>w;#>zxyAbZxm%~qteEEq4p9#OQ-r_!0@xyy%{X7 zcDIik&f|e!U>xX2v`)UX@MHnc^ihcrRbOb>t~B(MV1&~m4cVJ+BJ!dNwIh#vb1!?J zPh$f1lR~$*ybhXMl_=aN^S3ZOKElTc&rajAl}`nxFDo~ywugX=_GZ2fC7}#LSBc4Vi@3Eua}JEsI3obSIf2CqzgFT7vu#) zzG!ahsvY<*)C7!j?UH3JPV_pIHkfI5WWtB$rT_~z`V&Gi(^eh5hDQXYnkkp_%mhs% z?$UZ)ONFR_jl8w2#ryqyIj5E@4bgs!EPeHD1H&=v8$cV@p^=A4ME!(h5Vf==-^oThNxn&{n%S;?zjRTaEmnXm zjdlOMkjiA!;z@zBp`*(}GtfS7Uez;e#)$CcN1zM%>Q|DGIF?>c(fwlkjB-ndfj>0< z9h{JWex40^-phRHPR{ZVesmns?Hh*TyfD|>%DhqMrwHY$1B6q(+coWYlN!H5>T;a; z>%5pgl0%N^QxwUUmx^x+zkeq-6^4m3a9Y?*KqpAJq@T+aH)$(6he0>T->>R}ig~7= zWEB`b&_%WO#Z`=>Ml>DtKTvg;@XTXW!9S3S@InVkA0+^rutFJAq#6g~DAHO26!~8t`A;n;Jc|W5h z)2>so29iuy*K203Vs8#HqW~r*YP*JF^SoYxE|*M$>oNe1+vB&i#_C++RKzw;Qx@6R z#WffjWcnEt+fa48QJw7UevboSagR5uyvlsSw#!lxTmiob`;Pfs%8Pmk!WZX zM9TG?oFc*acmv#|<)rM78YE(L#^udx2^D$8>a%y z7zz>7=7FN7Fee!rY#>*pOqOp5+b79~zueW02CriRr(KDp`pt5c&r;FOkZJ`8 z@9|K`kMonaHVjpPC$C|cqQHA{+S$m4((Px!DH8KVN%!?>t+@?Lv>OiR?*+y zNf&t_IuIOG*afvJIk3*2pAxcBNN;2XXtW`M@ukvsIm-p`^LUUfZbjNm1uZzN@Vii&EVjV8OYB!9Tn{s)pz?TKvkX_N(E`Kj-3xo|544$yln#avFv?z*$^ebL609B zWV22ATuqn9aV*BVg=h9Pd+k#qgp=(%nbIx@dIJ4kk6IJH{^6RE#mDJ36wcKWH5&n3 zX?78+R%KS7!0_C0KOGPcIQOm~8&l&b6ijc5s|BEO=3@#F)K!@%w0e1upVYZq6-Tau zst?DbF30Jr!B4|qKAIngv+gwk^gRXN%nmv1bM4>%SJXhu>s<6IfC;KFyUR-Wc$gQ; zxdPM&1Ggo zM zxxb#10_Q1YstMcVp{D72#XkVh5V~rZ+4*0#VJJImXv#QCa2a85>EaZCp6S)A3n`~7 z7#stvgQ+T;OecmF)k8MzwEfa%@jd#iqzvon&FlvV-{9#hR)N%M^Iry8yEvbC=eO-t zy~bAIGybs6{?1`pY7Rs3F)Wia*y)mS4fHBlIHk?Mgd@@q;MKfpYh+Xa6vF>7=%5yKb!&dQ z+G@cAXZ{oN(h0XLJjj@;=dE4+{&f*qkP z(d0MsZRl`2tTh_n6w{WFhC&W%y0#-&I7RWlR0_n)`sXGShP=bO92ozGv>;3=aB-wX00JGfk~NNOlz zBPim@PYw&(8_7Fp{QO$)3nN!Ze;NwL2tcl7 z*6f*zG!=+hDj@Ew2J(4p04Ig}vQaD}+LhNEl`PiGk^x1J4~1b=y00j86E@DoXeQ9O zr>_(h_+&8baQGHYam^G8ox^ZkOx(}bW+(glLm|q)P}>yqy6s9o3S&a`xgzUst=mKU zwS0^GQs9VInWjHPl!W=+g5(&bc+6dURFE9KmG~HrA)cV{R`_)2l2&CAnXl`A!5)Hh<^kLmZVyBQqMBz7)9$uRYyN(R* z^@l-zbYf#oNNj#OWQp_i1NU|*^$`FQ+ysRn=2meo{aMsL6Ftqr zljYfkdb|g|9x2o1dUC)4_9Pw#?ntTjRaSjQ10LprHe0lUaymW=0IjgCX<3&r*fD4h zJF-29Tz+eR9!BtEe)q%8I?5jl5*7j7h4*1O5`rS?^>!YqJy={WRZ*;q?hm_4-$*J) zM|*&$-Un~ZkQDi^P3kk>?TfM`ruWq|0A_JC^;oIAF~f)GW9{s$utVOXP_TC6UixE@ zQp87wPM#ugkW6eD;2$o0ej%wC9p9xJ_zS6ECv1j4>wp^Nqh*2hgq?m1pz6Ac0|S6h z(=(??s?`qNV8z@q3hc|fUsm~M*yPFGfvuzU_Dy>+7?27VR+1i;)u;>n+slhX6jb&szT6EnMdk_67vI1ew>in=sL zqnJAVUkG(jmf6NXt|7sx=(}^}11Z>yq0IMc{5GI-S7I0_YU?7pR=vO<6OF)EolthU*y;w}S;uAty>jXM|YLZ_qz~e!qeTz31iW5|;)>)bH>J z7;Vqmm6uj$@efc3wWz7Q7;kwu`%47V31XM1 z?V_1gF2=7=bd(F{{#-I_kx(p7CN^|X^E&%UV`EbiWj_5`jP_%f9aR`ObK-(V zLeLn^%j8iVPD}8;@hd(aQTFtl+(}u2Hl5xzXJRNr0-F6#I*(QYnDYwEhNH{;`~|#c zd3mSIGCtcIoSM6nmByKvrBmubt)Ri!shEdStBS}KnEA-KsvIpyXgm^hx2o)R$~8Bh zmQJr3$?>S=PC-RIDr_YQ%;~jHxet`I&G|7-k?9(8AOnJxq$AdNe(FkHu)0Nos{PQ3 zikA71v#5Oj()?vLd&ek%{lQ_J;NVA`Sp#w&0lKSE?9>I0?E-xe_zgZ?ntWqZNQWMR z{=f5sDDh1toeJX^HUC$2a7$)@kjVs`Z#|Xmdr52{LNgthDgWd5wds99uF8{RIEq%- zn=(Dw@23o;d9iK?x4q1GCn1y)hl!+P6a~fXs+L8VD~OH#ReV)WV!q*UQO4h9kRO_IeRZWzhI|2q|XOzny0%QXRV* z!Ed@wkUhmZoHg4*V+@Mm7=4J1EZ zm>W#&07DdFzaMYfl4dRfd@^|r)_Cl;uhl<5Wa?~A)5#C0^t$FUvd1kXXN6AIUdlZQ zEArIEfL>j<+JP+4U01X)M1AOGB~I-()BClk(s!p|-b-sHDu`GBgQ>;m2EFM&tcVFpFQV?#I3~_UE1Rn|! zVq6^dFBFr#^-AL$d$Z&mMgx5-IVn*rI6n3h{LCfA(#|6}X|;3Wmr7}=M?67-EMZqj$AhWJ5?Q@DWg2NpelQidDSv?qLcs=I;s`@KXu^ zl06H{dIb?TaZ7|yz31R=K2AdTd)*gZx-3|s+&pUK7M#m%inOEgiQR!rE}U->>gK$+ zGty>RBB5rkm$>2A+ekGYt`tB6KqJRU+|_+CiIjG6N_LI{!mgSJwo@TuGBCngW%tXs zmVDIjhete^GaGO~1|+-)z-uRhh$ z_$bXl9Y;k_o(cq`v>KX!>j)GCjy^@%8u6A_SwS#T!81X>^Xwy22OdU(bhr@6cwS&& zrcjo^))9!BuH@21DP)@n1_lN5P&Ttn;2MA?v}Fy0^ZZ)h@iD9uR%=F~j@r)ABp{f3 zdby;?r|7}JBynR2T2;zPc!CM}-SzcST>?TwH0i3WR0IW(U*GtJU)Br}D;|ipaV#`M zB3tD>qdXak2AFB{P>@-c8$%~O10=w{-Vgu^gdIaI#YcL&qCOa-9AhY7GS_8^yN1E6 z&ozg6fyak3&o*4?lVP)F*0Mt$_&g;jy85)lp9l++VXFwmw}it@K=F(_Tyj%s%ghgu z)Mq|eFsiEg%=dcBWkM5_YXGlEcXbCd2!yc}a|c2s>*yx*;(bBCjk=GG0?O@n3OUIB zfHOV|qo7Zk-d|uPLvHn>s=S6-jNT{X+zq)qMuKKwW1#?rshLaCO+&Y*zq~rc^Jsf{ zxki3*$$=8$buyCuD0O;oS>jOQ1I%wBtmPi={ryZhWS19?u|yI5N5AbV*f-Zycq}V4 zJUKJ&{6T(}P1o(thEdF`mvvWZW8O_}L7mrdFp;SnikuoAr9dkQjX%pE7xA%a6?pux zr8$Vg0NOp`mU8h~y=r)V0gxErTP^R%05%!u4sQ75|sQ3meMY+Mlsj(k}B)?rz5n>P?8J0i2ugR zCxPBGgG${RW&sC3@e#m6P06M=(U3C&pYXf4)Mq?EGs95=oZi+|T}gH^;}i$quc#W| zhWmlUjtgALq79_E93P#D} zA9^B=01hOIk9Q^Ii$Mg388^7~XALRPfbYz&FwEJ$S}YYuz+++Dr<;E?G}S|4U>Hih zC6>P9(Q^UJZ_2x>y3a$+0ThOCviD$bN9LhGu&WP(rKT5#&bQJy9=@QguM}CPE9hr| z#CBg>ik^;KjnA$HEb~d#^$;K+pJW8aF??4y-i8QL;VDR&D||;XdDv_ zl6>jNEX%-|zz|Kj3$@*}X4I(9M{zJ?fPwkd`kV`QwVuaOU^bVprRWbBs$D$LOG)qT z!7I2oQLDq|atZA3q`Wp{wU%CDqs)0SC`kMdm)qasXgH7;Bs8QHtD8GDioJ0;v zWi!>)O$P~ceZ8nmjyfVZZnvbKbFIVqn2&#gG#VQf`Xq%>%|t_DiGKg3mL#}A2j==? zp#a)B#`7@>^HvV;7L|DLgJ8c4SgsU!*)n)IAl5QvV{(YlItXreRbz=v{unq)hZ`b- zY>h@?`w1CCF+yKo$z^e@(-X$j#e#y)CMkTd6QzLl>XraFBV8eXlTlqm0F7c2``L(# z`%@w7<@x?DhK%z7y1FLM%0~AviR3IFm%|+&V^(oK5$LUf{WdtFZd9Sq}4Anfco6!Snv|MD^*oVlcyvoI{#!H?nt zJ?YZz5g7-m6~4h|zLH!V(BMbrF7xD`vMxg*EceA2=Q7mXrT|35?oNvKl8-dlmR5Cf zeIJT!O-ro+fUwOsAaz}tiGj|GHUtZii(3X#fr4W&1P7Ck4P^;|-r59xAz62s+2YT} zB!H%QreN=5x=#8R^LNx#&dkk(+GG6fkGMp(BTE$hSmu%Bh~%AW zj9-6uAH%>C?dG~rVK1bv;%+XiKbH+*=GL4{#wYy#)a6O(vME>W@JZR##>>nN-KxFw zeKOx+{GY#)fgpRejWE=T&@b4U{c!xk;!{zp zlnc2v?y^K01?c^{;+&0N6_kY{7;m5a1SO8SR5AC^4}=Qu?@OIZyf=jmnd;%R`5BD1 zx*#|DXe}*EX32tVxph(=_r?_T?& zQmkRYPY6sMzm zR%zs*oWjOHUC_82IsS}aV1*{;TOl zQx}vSzR$?l&>`%-(s82OrR!6DJnc76u&1~4SigHY8;qoj?tdOs57SEnelGpR1R{$P zjyjgmYYv}zCj~xIU1?oVpNn6FNe`U=$l29c&a&97Gz@voEg_Hpq;%x)zo7}|Xay+^S$*YG zKL0Jt6odI`<5OSjyDwRk&*(NLhMH4I)PGPq7Is%HtL8$o{^cUL`YrA_y=l(|r>$}r zbi@|G5cozqi(R494*U~9T;_=MZW716K&B|)j@`;a^x1tX8%7*Y+DW$OWgcXD+2dHm zd?9eb2v7(hk2fVjMje2E0zx)q97sRuCmA3xrm$Gkk;e6C-uVmO7rJ00zNaspBr{nU z9QUfz&(LH9?H)s{%rWe@ZKDJzE*?s7qa<2}#I9+7`*}=aMll_s?tMZCY)LfM*QWv; zpLpvph%5jK)d_5l(8x&vif!MmtZH{rz|U2ClJ9Q;b#7M zu{7zI292-!lD}*SRMeTblCGKGjs}K_Mnh9pHED7XkUuIHtAGG8tCRKy%9q=8**+Vh zaJ;8}`bc0Y1`0QRu`DtzN3#mZx!`Ah^+N|kB))pHqR#t2q|Xb|jU-RZ3_ke2WJ!ix z1;M^HjCV^-n}Yjash%k4+eBvWCVLLhpq;KG%gr?InAb@PS6T z(_`Y_@SZ?xfVsIeysf4zYlqHUmQ}|xoKHNpGU$IoCA=|i8(EY%kwcx*n7D-9+UErcg=!A0 z8;rF4Be6P%!U%7Zng3xQ#~jgqF@9r{*QcMd#OtNVE+ijIK&7R0Zzy^x-s*Fb)3PQj z9g*+gT2-W8$p8StBz7<@_qVffgC}~KHQf1@mn!e!I-{gw$Y=j@UlwvK9U~w7z0A7g z?{8XgXGjbUFp-ZQB4_+^qMoa3gu&wHD9ZB#q(={Cg0kb?4(HOPGVChdgkWFM=3K`%8neoo3DRO>WV_C1eRy}!Pb?Pm803RaQZnm) zuy|M~aKM`uIIxI;g@|I=Bfs~v2;*HX8Kx#P*KmwaH}0!S`g5NUIZvU=s%2F2$0Ib2 zi^V(pN&^J~%vF%s(iYS*uQ@3@&^>~(YzuR9E9n`)0$yQv!;nCrvy+z39vDScVy?s} zi(8b%8m}c?^7w!s5sRywm>LKQqNDdo)0$~K*7Z&bN0BpdrfLJnkYwwC-&H6b8OsvY zAE9V*Z$Vc$M{tNC%v~N<)J+fg&aO=w;kS%d{bAmz)%b)@SH$zRabS1xd1q$9^i+& zrY0QsGm(I0ga1@E^!PcN!qT}yZKD8og@P^+$*&g8g)G2)jG?d~XYJ{ix(xPX)Cfqg zi0cKJXr;mT*zAT~S>N=xcF`ziRv*c-;qkP+b|(6pnt&JsuyYWT+&cdkWHpIGLnMX@ z=8?KpY^I`7!RFqrRRsH!!F!`#USH61ngX8>M1xi({Wn=x(0G*U_dbO)MJYnx)DowB zNnr@(S4&R;M`YN?^Q&b=2XN0|bHpo&hlXNx@TXV^$t@uZ%9;@LA8U?Le9QgU+o=XH z;A7B~?R*No^#`qI@}oF3)N;5i$+#^#K_gAEaaygFeU1L0i7%odDu!xSm-`W0ZVX|KGla4@%y}~-ATz25&5nUY~N4M-{9nadWi9_rgvb0Z-@n5sT^u1zQ)sc zpWaN$QJS`^sQ*&S$*n_>4h(#IjGjxc#u(*#X1{7lYEk<}@IaIhg zO2T&Gb7Yxy9qs~Le2|U+nLXLUcB++X^*hdPY0IYE9iVAezFRV~i9;BWg56i}_R{*U zF&ATEI7L{nC~UDn2-oP5=A1HHTGv4->i-0T5VgE(@Ke!H2!|KUQXP&n_+`EUZCu)0 z5tlgIm4I^u2jn~Ds?5h6o|q3g5UP@h!A?OxGidV}H+KXrK8TNEKrU0-lwa4kQKvVf zZOBqQ(&|$lj>xEjmzHaFn>-K-xC<)_ikb=p$TQ=xY5xJ6yX$~*8gni zE6J|*Bt*h{Y8L-hzRd?9{B%CKDg&(NoXB|yh*cgxOIIA>>jBDJpRLN6crro*s0r$~ z%5lX!)gF()0RKEQm)J{<@Qi;9uzWXKE{xMIZgI_}O)r(y)Y#V_&Cz7z~c0 ztolOJb^Gn$DEQ7Zf`#+FC)x`;{%)LN)x`d`%rODN(eJ+dt-#9(soTdWm=!5oaw~`o zIbu|Tlf_pB7=kXP7}s`9;Q^*F(BIBaj`*c=hI8*HM?F-dp59+6NtizZo}=C6l4R%a zof-4w>9@+>SGP$^U*;j-DCxyHB>0-H_p?2DUez=7V@Dm=!v?_t-WG#gQJ3U%m;D* zVMm4te?!ACrHb;+O|4^cs9m3~)XIp)4J9WS0=0P;tIIlo#yumLBdGa8nOCaHF|K1l z;#QRv4d&FKiwFJURx$w_-J23;I5d1kB=%&8&muuebMm#Q3nk zTtVl2Z`NyanRODuVK0i_dgut)74MdwJOY9q|ImVj|L{P!xZeGBe{i8d$k}cL1iWi8 z)tLWJ-^GKO$rj)syWSbSkfq?p-Nh{CxGTXR%H%rHz9K2mU;X$cFBv#9##cu8|@{{Y1c z!Xr%(@JayfCgwuq!!WPiabrY`I($B#IhElEBS;;qPmo$pGEWW$IJA`JD#71hj7(q)rLra=$66x+$g7r*^fCeY{Nxw! z=NC8QF~*{D{jE4RSTxy|7rbl))6CEOFeKlpq`yg7lI_iD!bZV1=!t>e(9&(Xh!Gi6dkU5B1DMc)RgZm5{j!OMhlH)m)wr z40!qgT->Yjsne)>G5~KekwIHdUeDDYc)?>{Xo3b4HBAhx{fs6v+P0dLJVOCg5z6Ll zomJ6>{?34wR@8%ncq&Y{KX~WsAl=*a_&~K%9BdoJ1e3q}Oy(`}j0R)EdU2l)GR~OD zZ>t<}LIKRL+*{q3`Lss6Ps9KO*bz@mG1=9RqQ+*%{4z4ga-J6MOZa0H01|)JdBEX`s+r{?>i*AR z+=o=b)xv>VTDWxxr}V|bf|9b0(p-D?um7NsNVSw&bbZ~|##7|&#kpxnVn)$~ z@m=FH!O#O%B6J5#srkNc1G!PIM4W%HG;?<5wZR~rN+r%Zt)?D zroW}zd}x)0m#azUs?FCGJY6!%TXkhJG|GbjV3zkd$8_=a`FunM9+!06WgH{%caH>v zd?o<+DCeT_$7Z#F!x85>i)Li`ZmpE1&yZa-shYdRN@Cs@o201TrN25-a4>uli~4Tp z#f`ECJFbLn5n{nuH}iNZ7R8v$pz8W_NmeE20MkkG`hBB_0Wqf2c9~GC-xx^?gNINx zX9WZgbYbnM&;TG!ADXo}s*PqM0uHQ*n|y9&`Z|p;h~wXj{CuR>hNC^-_TNRcEZH{X zce;y>kIb5kvO~C!kTh5B)l(P(JH6B-rd>84DfWkG1cu)00;I(?Ot1|Jxr{vD*m4x_ z!OsT}NKoF;4-6mlQ<^e3l6dg=fH#s@)Frv-N${KD*Q$@bSy-I@2cmhp zm2#luvQck;mUxId>=s$P`Vtz1%UM4>efz4-iz>@zZC6T-)9rui`xyh51A9M-T*=M@<6h#-p zxO>$oAZ=+!!$*=@(%2u}b2XrLV?`RZU1dcez4R#)nD7wOdcCweLe-rJS~^e-42tm5#;hue3Ayi5~~|9gzbf%f<>cNNi0g?fyixm-?{*?3stQTF&C zn+z-HPm14BJT%}9F)Q~q#jsJ%HgDW=ZPi=*JO(8L@2S~W0LPI|ANWN(7wW-Zn42&% zLxw@~*Nu)hw%F1>Z|iUMllXG341tab6rWC1mNqhR0HwNV?gzQ~j9L6CYHxo~b3dTY zUleW94KV8ATH62Vhv|J#NWjPNKFmCsSxmBSoDO-;s$X6B@jeX1BTlq^%krzaX4(e< zWo%hLK_Y8Z%hNK;T`JwXhN%{@`+nCsK_Yx+y~2YGNr&1G3#hR0fSeimdelE%Vg0k! z_%Pj+g#vdAI!7!W8^MHBBK@7y51IAlTLmr{3^UQi;yy@|$$@~s_zf>F$njt&@5-;F z*Wf_>3ZuXMm3ZMF@Sf}|4s<2qp~xLoBhK!FIO*F#!?^6y7N1NDOTMX5)UU3T3!Pwa zs3D+knU%)+%wWXvmc|Q93yuib!@dE&KtZ~XRae#$Ktr%UkkI$+`#RH#w##V0_VX;U zT2SEYKY*sl-t|(29q^E&03r*C++$&ei2!fp^2kGY026S1VXJ1FV9?ZEqXw|u6wbZ- z@MfWG5hsb)sW_>GpD#QhAQ${?Cjn>w_FH($Z~LVz#}xW*v1SVrpT3!d=Umra;@qWD zb~`%|h=RmnooAsg6d=(u{6b+FN{-Anpu*(Y`j*WrpHwCEJYuuI;JkqKhz@jUjYmZc zl{#byir}Ot!dxHAZJ1k@q?`$cNqM2Fm*?O%EHr4Dh~-6H)FIz50t9RtdqqIRaGiPc?A(NRxuoC%83M!8&lhy@2i6tY|@X-iCGoQ_89#%gKH)Ntk+ z?MKzEa#02;$5=za&&=+r6*67iys)8}5^;j|HT$veJr%5GC&%$HOFcFUx&)o` zcflBd)N|FunyVqyi3S1nv0RWi@)R0x`QrVoIsIMBL%(yB#i{i>rKCj12K?eAkrUAK#BSGKWBl@NGPlpR`f){{9i`sD-KjN zZyYKMNfbXv2MI;lvKJ17I2mfSqm?&U_3XFtzHXGv-()KS@$eleKGx9F_^igtH1wOsYO$Hm>g^ic7lSwp(y%0zx9P^yysyK#C~4f;aj~*_0QHH1)bpmnxUts4^+c) z^fT8S7}-~<9mw#UNnfJ?IGxYjPfC4k5Nvw`-sb@z=!8a5SoqzoP5JfZmo86OX*?+F zIf?JaI;j9D4uk^zb~UrPq8Bi5l#TY_ z*uruxD}&fjCx!QW8cT2`S3Zs-9p9oktKdHLf9RhfIs+T)!UF{yYQr#>H5h#15r<<~ zXov?W_VpBJ(7-!MICVN;Maeil8Ta|m1i<^bhwXY5 zkD=ZZ2r`HFFIJ_%`%8|YK!Ouy_e*5c5;fsc^`@!WEEJ6qjDL*jdI}b>Dz|lhGja_WpDpaK(d)tPTw?-_W_I1ItxW{*X(dzMO=q1nJs4yk73J1|WhA%L zTdC%lpMg6LYr6vOp=l4+erRk8h%GpVHEjwKnDm{eBZ^mRs=B{JAHFGJfk94?#M6ff zjwQmaowSL^z;|Ayb=Yl@9ZkKRUo2F))<_Ij;M{sqqPv+O*7DL&5Y9X4@9wksMPgQD zx#eIXi4TRTKwvw!Whxvr?08Qj*lhL{FJP$%#ph&#OirwG>UtB2|I`#n>q|R=c z%WJTIYS7E3E<^q+DpB~8BFI>m3&MUv_} zE7eO69m9bz^upG0LD<1$^s@n(J`Gp)@q|?Z^e(^w1=RTmgP}KdvtN9*Z1y^4E$GbEMx!{R0{?654#<8vQI zMGGWKeS1#FB^%`->3=V>i5(cA@eb2#yh;Wr{DS%vSxkCas4tfv=#!l=1stw(MAbt_ zJT#JHU&(@^d0Ee}-$`Q$zIs6SsFP&j%%YhWYD@IcDUvKG+eRA-#gg_WUH?tHSXo&~ z!tqcj!nCZ__-%m;F=Kf9|!vMbTMT~rcqP5Q1bNJDDJn#NBz#mI2bwJ z!v`n7|EgG!Q_$;`0B(f;zbgTRe)P%6$AA$BfS+FYf1a;b0r-FC{Qv(~0r({1HIp&1 z+8kccaUbhn-EnxgQ-Q@LkE_a2E*Y4ei_Xpk#HCIebU)8V7nk~5_HpmloIkzRiPRdr zwc~zs?g}Dz_LOGE&?KH%nm~(FBZvep=oqYM=_<4M!YY+naVr(hR5;o%7N{&OWBY1~Uv3sniXZxy9}?{keIRA|s#`jFyivTKMe&kc|~>kMQnIB6C#ds)Up zCKlk+TY36sDIT7cLatou^)AC;h)hm|#jGP5gO@c{fg*S7GM26K;S*Gb(eYY=Qet|Q42v&(ej;jx&#mTV1CiLH1nQG=n6CxnBBID-e6{n zi=qoUi&T#FK9_mLoRc z-q1ba#%d~r6lK8i0d-%qUhXCP{pl)5s(E>%*gQlU`Tv`%H-T=WI>Uywc+uizBzckT zEE-96oDjg$NOquXmgKOtv{(*pX@NF2rL=_t2?Poh$pI?a3ALe6Np`41foieC4v|K( z*&!M!0TQxUauTxGiRHwO<0anz=Zf!~|9oFLrzdgbnS0;&d7tIZ#L3jZ8Wq&G9%FfC4t== z=xz*VXUZk3>~?pK_;?+&?M7Ai?s8h(;j)-S0IS-f>fX8Oh7MM+Q5k(vEsgnX^3pkf zfa692NL`f?pFrlZX(@X(L-Pt7m2Pb<-%#oMgGuCWQ-5OXMeLkbjd88vs=_^Wk<#)9i_0=E4%$Zr%f5&*>J;N)**6r`0aGxQV`P*fs)fbp^Qdd zE4%d(8Q-X(MLis7#_1O}(!DW%yIj}e-P%GS8@NUm(1;HHtQvcJzmj{a94%8HPL3E z{axkes_s3_7K^^bTVraCdF5t3pXYEp{=>caD2*sUwZwvUS~ADlgho2@+9p*GyS1@a z+2V!~>o`(lrr0Q7EsnTqm{NRD9EgQ5$Ei@WLDk`Ri5z|5e>K&%gu4n1qR`gO6uU=m zrbV`l#;QKfEvH+88THOE8!W7sx!g{FEU|M#RS#!V>pMeRH_@H5UPZmiX`{t#kYCVH z>kRU%dScOM8v$Kr-9GNcMx8Xt0wC;*=4JCCzK$obn3NHpjnY1{Ch03j7uxFdO1HTu9ru2(v=R%LgvLN5tr)zki{$G>%B zNyM$yy%6iF*0%!QB}ovGbUxUO)cJM|LwWq(0xLuzv$5(`f2LW&d9^fHx`CFmy9-p^ zd*l{XYm5uJM3Qqpty!9CtEN4{We8CUfnpH-)&|@z!-9$k%v4~H!lVpzX=;_up48h0Q)w!AqpAmjP}1j<>sn{K6t$vm zz}Xo^>uk1;;pR;il^DdA*lA?MoXdj7cWF$e(Tv8DxKF`|ldR7sa=JXBRaN^?YcN=* zxiS_NY|=}@ZE8ufty-t_d+p9%pUiBo+81rpRCXq!HqGk2p%<&Ez}H$+>oBNO%=!5m zT5+#N1?fQY(VFY%mSn#}LAUnX&C>bZ^4iuBpB>oV*`Py(74`6ba$SZ+IL7RR~_sz`eiD9_I~sKw}>PCD$> z=sWrgAF1qP+YEZ?Tu2TX@(P%e)b0wk627Rmb#8ZoRZqFvWUnUPt~OKMQLt7gYh!Mg zCb1lGZ@{6UVo{rnanXQ@xopWVu;^P5txU>p)-O~kyGKI13mf!h3jwdNzA_L3 z00aHPCcQWm^!o)H^d^~1xhtCfsgbd$%T{fs9d2jqBDb?fBkJZt?HX`jTjTALc*tI- zuk^59d%0QXVcY9W81_O7Q`MOW3ZNAIHg)UV9==7@!m*+5P_qR@!?npbn`ueFvy0n# zhei^5u2J7H?-LmDrJ!A-llY2El30JpUQfGiEeq_64Z3Z^UV*+O?p180ojw)<;!6VOIf=7*yz9jked(9VymsPz6vrT?rS=uu^VlRv+8ELDmx5YDGJ{ zwDr7>aGOG3%61tg^XQtswO?Rfz1RPurK*E85ePE^20@#$v;U>X^d%9$&Il0l=D>g@M|ky0VWBOojy@K!N)>odn#B6 zt?mbvDBU(qm+}tUg>UbQkTTSE`f!hM$n*^_}d#yB{7g0mJkJcsBqL?rz?%K zK711pNsz_0Z_uFCLB%E-D{C{V9S|l)n%XUFVwA~Hv$?V_w6%#5kFaf81J%L8zhXZx zZosco7@=Cshrj|9xs3YN-K@>1mw6%_K&n^CjOw?BgEkG_(sc(cVk+8hfSM)TGCkGp zZ&TFKVqa#HS+#?GdzGoGwciJ?;t2l4&5&{M8W%T)TeK1#Q8 zT{kki&VGy{K?iOvfm+)wC>+}+r@D8pH&eY~bV9H6L_;o`p_QF+pYTyVE%t|sER3oT zDq{vEL~RBJ)E5r6QcvgrfL^koeA+PuOVU`Mhoq$NJj@n{F>*+s(?61Z!W< zm{ejnJHUnbb)*%*C%nG~y-g)p7sd1VY93WnErGTg6XgkIG{GqL`|WZWc ztXE4@oUe^fiK@*xBYtm&QAfFX)r?+kR>7-S7-df~?04~@MXl^VnsnQeten7Tp<9z&C;&$fXKibM{5reI zMyNO!dUlhQ7DvK}9pQok1MT#?6trDalGx*NJ07*Dk&s-n(uFY6UIX1aA8j*R zF*Aaay`eTmBU9NOb<1d_t;VX)iDPXwOyw?^1i4Pa?yT0S_>|m)@AcUkgIsITNk*V! zb!IcQqkp$ut#lNmcjOfk-AP+Te6SXt-EOf`Z*ibcrn1#1H!Ix{UxroBb9(j?0OS6V zaIm>rPj@Du;$~jJ$7@M!ebh{2aN2A1kOi08tlyT3f?@S7aetefmdP6!$sDY-QRd;m zIBI1}hu>zdZSnIPYF|i(+Y9uSEp63iJg5 zq?hrPJz>fksZ-)g4%xG1!NsqEo=%|<=#jIlNhkiV^_5!Ncs?P=3m8D$`ajp6q_ zETL&E5QC*KsCk~Y0z=M1dS9YGHrU)?u2pu#*tP;jr*!Zg1IT?^vsowJg+yo8^&~k| z0t45YjQSK%fI!HumU;XyZ84iFcg5Hc-$)*P&@w zHbcFx1%fPCuh&cVhPp^^BVPDGQLz19gH9RYSf4|orMgp~E_kHX$$po>P}v!FA@1?u zjr3y7fkR`ps4D{rvT1ax6E~^qn+w^s`j!!lyG9%)x0Nw!&_VkatHnTjQm7N7bGkC> zRgr#gxlzq)@q{BF6nVPR{mno}BFb+-FmgLYeOy;fyRK$iKp@>KK8^6Eqm~l|3NlMjd2@+Lh=J0#-;S z9PVjRs~rCBu)lDViSCH`Uj$iDtpkye7vyN-`TKp%)dq$s>5YNS08PCp49>t6)z029 z_H5E&`nwcX15J7QxsX?janwonhC?=^MU5cKhEOTBvO5ggQ8XB6WnehuvzOOtXiwa4 zM++ozF5uEyG?lF}zt<*jFzPEiV;qKfgF!Fu<)RJ+0aG`-TWB?tWMt!O?yXZhBS?vY z4HnEu5`NVTo{3lfR*TNX0`2IJvIAr&Y%<7NVyw5osK;1Du^mKkho>VR4z|~s z8CfT)AZ)CsTH^ssvq2@oSa~&86H-M>lJgZ}=~JvD`<`RxS;+@gg`g}|W= z8eK_e*v;1WLJOnc77zO!8q`qI&9+zTv6?O@kDz$e}GGbvVatL zc>r`KkDNJM>Y4t_Obr90+X zNZm#VfduQ{x?ZE_c{n1DTC3Hpc7iKxe7;<*{tx;gQ1&GDY=u-wdV%b6gI>mSIJ=X6 zJ8q_PMu5_`8iSseuw0mB0l6kCXe-W!d=9~SphV>FXZ$U5TSYjZ6;SX;Tpq$}AKjt22vdXQ@vGXXT{ zoV{4I0u2(e2|xg@SFNGtRt{w<`@lXl@nFKPxe0X5 zv~&P9W_=`)QY{1FsL!TYZ-5|yX)wR20@aZW2jC118kwYr#h+_Iquue4-zH#iRV*eM z2eNFM&FBG`A>hR*7}QiJhk7W?CNLZbo@X$dRG^(bE{!DC4P^-&JS@p2a=rrUvDt zFkHT^#Ke++Yr9Qh(dem8*e{1n%?n3e6)2D=65U;7ZDe#9EiPyy-B5PM&=-qQt@2>a zu4b(P1`u%P%Rr3f4G`^lV8d0g!2oP_C)prcXVK7@lV}i;HkN>BmopX(w$FtWn@!@q z0IkLfyA{J8HW1G0;bH-In;ZlwibTQFKzkT|r_OAWp}c;ZjH#!^Qb8+Bm814*rw#yY=U9K zUP3NSqZv@}Bw}1N2w$RCi!q2{w_Rbe7#Lki56cDoZkqt!EfDRFr9yUD324e!(12Y- zHdrp?YrYYBM+H)lJ~EwVFwl-L7jg?~48;C%q*HcCD=-uV)mSw$4{;nWZ4-u;YE2~r zK0c^TO(ItqU=`Fb=|Mo#9O?#evYK*WvVAVTy4=XXeI~;ZtVyOfXzCf7qD6h+UC5@< z02L4iVgU>l6v|>SVZIWa-|tp{DfGOK0X97*45OiCfw@T9x1`;GGZGJ{vr}U|S}7uT z2>8IeR=6Ad((jd9tiX)J?RTRVv?R3~#EtHCEP$6o9{vVUj!qmQuy!{SVZ&Zy0UzMa z)axl{m_svxH7JT+*%N2Oi0oF(lG5!9B@&^KL#8n?je2n`mPmB_y)qq5DViG0@Lw^| zN_#o>MT{HB%`0d!*K1@BHWdkh_8MTwkf*T*TR|O@X4C#?2#lg&u-fhs4wbDjs?{0; z$c^V7h=43Zgf|Up9oaJ`NM>$etXes-J)|5P7*MdXhal9gXvA<-5+ni-M(~ze)EXzB z5?G8H1{{o;bn(=fX%WnR&}M1S>v=FbYLU}X$f)01B+k%JMocg60k~Or+BV3X9Z=Y) zySdtkJ}X;ErT7*zoMcBbhIzLej0O#;F^0?g1V{~fLONkzyIie;AjQZC==Gw`aMbVR z1E#nNBpnFwDmD=vf>8jj!8Im8N)$)|&OV4Ba1wPMe)gM_)VG9DRKlx5~)bQ?;@u!17gGI0;CgWFobmC67?o|f*MPvF{aSsfWer8^u0OxlfBj8LT~MZBM)kIUIis~xx@WzAk6KqX+#B(Xkjg|WMLhl2UL@k*=<*o3sGVZaH_ECr3+vr zf>K>&BpzVHQMP>p7KSoM5;3$;(?pmXevDWz_`N#f9e`C3e4CsxTZ{%1$cAVhRHID+ zpKFp+m}h9DT|+9O1nw~PHo_waZy0KavNsv^V^`h^d_bdCl7Q;t*O{$kgku=2D4b25 z785OEhr@wz$jxUk81)7<&_dJ|-3ODI)wHZ-ZyZ}}1Hy?rYK{E3!}R*G=^EQ)NXVge0Edxp1nWu)(KvCpW$6^?i z;wF3tjthgmyuxZ=K_(`QL^vAKtp_nHo&IolZ!AJo8{r9?@(@Undf;~kM1@`=t3)qM zfS$u0N+dxLJ~u+6iI!ohl6_%+$R~WvXjK0=w?4jkqY2BB^nzz&egNJGl#=`tL}X+b ztyp+fXOu8fxiNLMe91gxwBU9X4 z&6ss90}wbCq>DJjAUJTCEF>DUNv#0M0SurpgBC1C>Ops&OQcwiIM-?oyq(A;_W1qq z&b8Dw$Sb&1*kmPe7eNhRBf?}IHU(n=OOXPD7D6nyb&J8I^CYoD_=SRM27i!d9?*Cj zerq6YN3%?7M>l2w+F`EONfMFtwGcR3lF0}Q?6g66us<1(CnNus5iRNs#{e5d1%t{- z0OGP^7|mv?2SNZLf!cu~5cK78xkj~P9_u4n2A7~INiVd~B`|?OdQu3wE`bqp2%p17 z+vG-C$tKzi*jJUZbt%mGeNLWSZZ?(dWfQSjEEFVH#{LK?1m;ou0P9a5!st|DKkIWl zI}zCnVd|7_whJ~_Cc@PXG_7Sy&tXi6U$f}afyO0MR~v{rk-&sM3A>4tgI7`$`vP4e z!ek(Nk$%Ad%7m=0K)BS?GN&K@)E(Ge{)cM9@eUXlQc=jKMkaFm{2^NrGMrI4kROaV1ENGagApKwbl;MNsSpvhl58Z^ml2;$rYiSWUp!u5BPQ)DlY<%V@@LFi{@2 zO=G@c7l?z!_ql|Ps0Adq+wb@6ipRmE2%sB`#Db_=pu+@T0)Wks&g9XM$K!^RtOF5X zErfqUEL>(?S`$Su;FuvBx`-w@Y;c1ZLvbHQoRE=M3&mhG#Bg`B3E~!5w{SDj0ky~z z?+&oY|J4?7ubtEn+=yF2(m|UT-IhqeEeC-D$sKc~ z%3#fU3_azJ5L#xtV`(E_XGCjg_;&DKo2J2%c66{iXlW2p+YAVxLNZ5$OX1rBPGn1J|N+7XTuegSdX_)Se<4Gjw4hi`<`A?=eEx5NpT z`P~APhp3Pay#OLXXs{U$fng&Zm?Klw{HTQl&5qs>?6#bkG7L7-k%!;V2xiwKK_#FW z(I7z42)m+TWZ+Q_t5F{Zya(qk#MGyc??46( zj7;ga)ifAL2I-hfViy4yGNDC7Bj zrIKDG3_rRn`1kF93r! zxfOI~P&0H-GQC2cmI#|(CgY2D#jsaD$tY&R&ji8!>0%IP104E8Y$6qlMuBT>I=AuM z>~LEo{$Mr%EEPA_wFgy*}oWXNS6uAf5%`$K8{FcXK5V3h2}a6;OR8Z-He5o|xp zCU9Nk$PKX3P!ZstL+LpPdYuN))tmH8<&FVT#gNNho?bIWP81=KZHh*SVEPC*5h49_ z^T`Jc8W@XK7{3@c8g%io9;*g?8;C{8*`Y{qFPMvL-II!NxH~!JgrQ_;UP}*V5lV}} zus0#rA?1plo^X1g!AcrE!UhPDNKA;NB1@ViK`2nP5Jo@%{>8MxpeJDUU1?C@+c1sb zwkVMfkeiyuf3jBGI!uflNY5=;j}HPFJV;}=-^G(N4G1}UC6tc@xFE5P=|c>noy2!R zz04ZIu&p33a=6+^-51bsL2hlY_^z8dIT(F4wgh$GedO~3l&1(f-o3}3nxPF zN@G<6(!zlElSAclV&?Re8{5YR_WU2k6nQY`0Irc}9NY%xIFhDLp2AF^Ea%Az>*@@I zT$DTF=|hn=xy1^5uK%&wL?V%OuwiGI_*cJ!czu(MCvw9E29Ri4d=B{rjoD(bpl|45 z-vBXzUY^_nzBiF`gIN05yG@JD5_qE7d%0mUEKZCjRxJ|+FmK_I3%P)Su90|zB!NM0 zLb2oua`qNT!kVKWSi2oWVbww^oCM`$68I=ONJ1q}2a1r_M*OIWOoBL^B#G1ScJRr> zr)8-d5=zce31O0b?;=hT){@p(>x{&~!9T++5L7u3xazSBx+I<7{Vs&eayUvgIiF*r z0UwF{292T|;-l(Ffk!xx!>+cVqVQ~<2n$6f17-lg&|8g+q^nTcoys>@EP6oQP594G z9tCLY$iG&pQ=(<0UT#}+xrJnWXHS?MuUiT1L=FK-byW8NJV(IeBG0B6lbk2=gG2+w zm9hOk#TFyM0xvMq?L!v#xOs)BE7>T9JIWGgYfLA9c!ng2&Mpy&3Zz?92g!myj~~ve zpFA4__e)Y9E^VT zEr+mQo#|DEwTaP zOROl5I*pz%v3Cwd1F_KtTBU?K5&!0L$jQHi4v*GLysNmCR;f7V=ff)>efk=3eIs}UFjkXnaaYrwJq4g|Xt z7YdRsnN@)SECWNuG^Ra!OA2lF@G4LYo~U~y!G%3&jg??fuWC)fA;5PNQ6^V{mWLw* zkv6p@?cc#xdwl$AG!h$@KqW|MaohMZ_)vsV%IWu3HegIM!Q$?y4~z9Bc?l62z%!h~`ip^3W3z7CNCKV{5=5juksd$3 zqKYvEJiw7a zmwx2YO-|4pJd9@qG*Ls03N3PahvuDt?W#n>qNaaC;_q%u`V%k9h*R|L12a>!?Y!0;V78Zrl>Qf1wMTU z74nBbB;^~7+*? zd49+*yc|%3?pw*D$d*_DpXxAoi#w0X2lpf#;Gahir8_8LL9@|FVW77{T%#GE|Mr@0AL=p)u3P+$#=NKI&_Qc2` zD?uo603_%kgpx?$(lnS%WZDCmQCv94hj9i&>B(6DvD3hCbGm+vj&eHP7*@o1ze7ll z(e&vTGRWz7&|YpJQ>JVI$Wg8!IsJh<(aXRr5iT4hXK~~K1$kMDLj+1c-Gu2; zQny0}>xPt191b)UF_z4q6UwR8t|yNZXeY`{9z!u3VHA1r(J)VL#PA=F0{G6pR3d#) zQ?P-YW>&TmK1IQsa9cfjdJ=&Fiz3U(n~eWQ^q+FhPf(n;iCXTUh{}KZLnd~M6=tcsD3Z&oLf$iqO6cIn)5>BR5ER?s2 z1WEGVMEZe|oPk2P+Z2x($ogod8}W!=$J9#Vm|Wt#to7s_G7LfbWG{Ve<@2%b469Xx z5rUnm>>1(6L1=&+J)xcqc~nKJiRmB#Ue&^))P+Wx>LF2pJf|fm{U$Zsy@}B&``9Q% zL<_0Xi{d0Xk>f@)IkqBshD`*>vw=Db!IBECfQ9$@oDR9AjuZ%Ul?0qPpSMk6)yCuawq}|VYU*#BXT%+ z&S)Fe2PaE*QpYgLUVz_aFCb5NR2?G`@;)ZXM&zjhIa{=n+z9!AWrabu$s5Tb19=9W zN|Ds;ZN>oC6L0PzXK>_1R%>R&`!GzHGgk$%8)g&Lg4AHs>!d(FIEFL;J121fBuyM) z$lGkhg{)+U9VDovbF>;WuF*>u2v-p4H;@wtgNAD5`h&jq3i3choqmAmwaMi`VMo+k zZZYRVS;^z zLSsu9ag>TjR1p-#65J3cY=x2orN~X>P!L5fhnpgvm3Ah{(N5TBGyZtSD<(n+kHb?K z4O%jnA`j4)2mpLA0~+#-6Fh~L2*Jl14NcQ(m9irReMpetOCD5Vav)D4m?ZcnT6oz|O(Fd%PK&(>l!aq{9t>Oin4un0G|r!2<3A!r4&rc#ItQVSNTGIa`2{ z6_GQy0RDq_bGZvPz-=1HBYrZHzzV+{0;)lSoDNSfCerP0FUK^fUM1-x8uB<~X4_?xzCRqw%4UIG^5v*^d!4JIshu<^wX|R>oQy_ zH&0AEN8&qTCGMo7d8ioZoZM3^zFddwqB zVy+zsBm67lQ9Ms9>~=%x!(1%tlF{&+Tz8n5CQXB-T4OSSJ%45mjLz^h4Pb}#(Njl^qzV$CVY-nF*<>O~!cDtkBSwO}okSxok~j0bXyd^xz4#c22$Pg1%QTuy#HEOOddY+~lNHlyx`o)aH0cSe4J35v$SY8w z0zY|`6iiRvrJ+1rGLaz1elmlVh#M#y75BL88UyVJw;__zP8dIYCIs`{K*k#6nMk6Z z7#VT`W+s3406v8XKO6?IOU{7;^WpSCzC$LXVux{ONN7D{AmA5A0IhyG3_}H8?Is z9xV6;4bTDovL*&Di`*%VPbH*s)+`XCqRe;Q4o`z2sj!F$uQ8Z3*cPx zb{AkFQyhP;aAP;lAxK$(JMG6L(9DPxueI!B# ziKD@KRITYVT-K{-fR&JuHyB)ewMoyTR^3aU$%7KpH0|bV$&9CuJY#A0AV2rtyQ&d@ z)6p^}eJnuBY}E#a+QB8_{3m)LA^h-@{enSKCnd06s_$>r;iAEYM zn%c@z@U*%jQc=#h)m+{MV&-X8%U`+0tk8+h#{E{?bK=N82*2M{zG{kIol+6 zh{iLkgxpfq{6m+TC&FXJ=f=*q4b7dt?{w^R=}^sCdgSov_{G*suP+P=wu$QVQi>_% z*=7G+`H|`$s?#fm%HA$6m!Fev&n#I=Tv~VWzVj`^pA0DmU8k=b>>p|z-f`}a7oME_ z{Y=Gzf}fN5t|%;3=55cP&-dqllxNJ{CY4G)7VXX+$$B{J4_OmgOW7O5XCtk^-|W{(A3B{J^D)OPiMBCW=_8GgZKEO#|=Mxc|v%4*U%Hgb?3^) zj*ah}v|M^{_80Tx3x8P3;~x-woWaljvsjVyR-RmTyJEE9eBt9ow-uEYo{-;8eVl8N zW{Ib=)S2%H-xo9qe1cyKpU8-2=4ER{lsF;wO14O|a;kC`r4LGY4`(I^8wU>#{`}0@;pfknU0i?ZlZDN~ zeDS~YK2`i)dGj*m%6V0a{)UdL-e2)yS+F=M-<|uI=x*U_ix1DvOkFV{7{6ldi}T-} zTX~Kf**|jSxw`X$G12&I6JJjMbM6M-gPD6J8B}M%UzCky4=sOa#S<$&S^kSZFrP{M3Q-hsW8et+V?Us(3bjFMpbM;}Sdn zznQzHiY|snZyhN=`}p9&Qy-to8hrfBe5zxtfAX($dj1<(|B-&1uT=yKUn%}p`LB|^ z(z{DrOJ6O0tF) z7b@?{Lo389jxW2TY+K33;?9C;>fxMQvft+`E&# zo*fH6`|ba9pYze?P7`nJ*HnHL1VlWtHfFMVL8RC83DS-wT{S5?`vzZEUzSBS3` zyf9~;{PXBD!v_bqor;{SI`!P?cZR+ke)s$p7cWeIG;iczmC1?XQc<2ge*@*GI;me% zms1z=L-~jEhw?wlx8^^Sm&^_2ex1wDTgYw6-I0?g6^gfI4GJIUYnHMX9-do0yJ1E) zvu0*!rf%-SeAbegzeV_5W-{x}?6ujltm=$K{??_z`KM-|y+lpdOdXo+pS*f1H6^-q z|4ilFO$#?IUC)17_+4fsJ5&6m__*l$?EZ`d|CftfXWyH8=;E3Sw~a|IB{xw;Pl7@V-;z;4s#R}!$ir*|0D-P#BkaMMYDAO-^YH96!)=cr#?=N0?;la_& z^DEE2Inq1w;5q;K_s1T*cy6kA?v16_GsF^a{tJaal>Jn_t+L^Y0_LUa=hk(v^Hg7{ zKXO@0v#0cHsw``EmKz;8^;-XbzI`hC(ieaEY{lp1ul^ic`0nn0>xm1)Ll^hXug_HG z-dNC9y0r3H?a-=yt5s{NSIbuwYImttE)SR3i(HCv>ao0^ly`!;m^q$%K{xi|Xwm5C`R$`W zjD0n(ne$SQbAVUTa6?#sI-=aP6j`@^ievyNsR z%U%?n5Z@!QO5PB^E83oYS=N^szZZ`1b9vnhW3yjP-!mb&aO|8mB|f`jXz$?jgZl>K zLq9z$NSz*upWiv=ACFADKQ(&EHh0V7Q~aR}m1s^fpK~Pl@!X5jcg3$~bqMZX5Kr$N zJvQ{tv6(|Fzx8t0e0}cA$G&=d&rjm7fBV5fN3!JPFNZH5ziU<_?95?`+E$iU=3lwo zkY6)gGgkeCAyQSi_C$qDuuK3Mwu<-1pYMBk!0q`jG(wR#Ro1fTwFK#@l@HREi=bwZ<}{5Jg}HpJhQlE(X;T@{P^61 za}Upr%zZxJzi?>resYhwni_hnY?QI)%JCHhPulewTY7Vav$J*J#Ia{|L|3NulrKbl{Osz}m%VyfveKZXR~#ua=D(Zm$=B!i=iQapoqH;0T~4cXx%9Y1AnlYgIUnX+ z%K0K^P0mrt2cnNNFYq5&xck!B_%F}(3>i;6F!0|aXAic1ANv0Hhu-RMI#zKyk*d5n zKl`%q>l|&7bLEN3cXT_iy5fcpEfecMTK_A{WjEY<^{0Bz>UAr>P;Adm&E9x^`iG)} z|KL9Q^kw$;53}DBygT)-_X9!b-M&}9{M%msq0wXCoq74f+S#89PKd+Qn?;VY%#{aJ zQI&jUU)fO6o7A}Ie%|BLkDV_coILu_k;M0P2Od38dGOUE|2djE)iN?U@%Vx_Qf+iNJug@E zC#pxeQDsCCB#z#}-b`oO$B>yA#jN zc?AWMU&_8Ieqi}7x=Jf5uhUx9cdfj!Oj#tS{wKa5_~pEJN;rP|d3WlSvxYP844oPJ z-x<;Hc$YEBM!%?VXC9pH9X@mP`vbiA?ysglZ~XktFP{DS+1RhX zJ#er$dHBTAnPsEm$q!~{m%h!oMx2{lMoHxd<*&%M%FgER%#BK}$j%gYEk=gR$O2DYT;$n$Kpo?mf6QI zY&^61Slyuy_T9Rt>GQ>p|JwI#-)}$p{PTzRY}sc!*nKqP% zv!C?U?ppuh&7NECxH)_MJ2%*`+Fy0Us)pqr#mkaM1UJnkCdx+(hMlL!ez^bG^+%sS z`pL07PFyi4Pp!GIG=2Nh7g+~#*B3-eG%HN>H|m4xyXXg3l$W*@9M5gfqLwI4rU;nKCYx6$)LF3W0r`Md@d9i$E z+d>vUEc_~SW42H9fcQ#ru4qNp<-(RF!`zKi>n>o)8Zt zkIH`#oO*j`-AM0+`RT_N&t+UEEtLJHNLBX9%C*|)s`fS8*KWJ~H%q>XrSPhRP4uK2&uxbJ}p;@N4G&s)DsEEB34?EBa&37{7OFLn`Zd-uJ!H zpMD|=KK|}^Jyn6Y|F-VGzjgQfLm|^=h4EVt|LN4HW2%MkMK(oj*&SN(nr|*&yz-%{ zb60$RS;Z(0NC*mkHJ_+&pvblxX6M@khtwan+@J#+RL&In#f7_~eR{U!2G}$((v*@F&BM zjY_6YEb|M_+WhAAmaFzwZLGMd^v2xtOT**6 zgB^**Z;esr^H|^SBgK)gdms7quCHq1-|yeq|L_m0Ge0@M>EgcWKg?}fT*LPXg;|T) z`^Eo|ew}kZcQo(5{I2{b^4Yvl?qfM(>1X0yqSxS9R%TfEk1Q-)x_;uz(ae#FGrfaH zPv0=uIdt~y*vQ|bUb{F;A-ct7<`@dwLqRzFxiRN<`nul9fR^z!UdMbS^?@8{hltq`rt zY!PhXSZLg#WtOEBj?h zqbgWYxYky6jJc~?v95Vtb4|bDp{kqKyrNE)Y@!U=lZ(OWx(nT@cL!IWC^}l-f5oBT z0p9+}Z)M;9;hW^Xntku>HSHaY>-L)WjeXO;|K>vziI;v@99lbiWNP=~KeEo|1`BR4 zeQ3o`>G#wp)O@vAb$ZzY$_w&ua`aiNmNGB>?!p79+QDm1{Pq|-@bLiu*b6`0eY$vf zboB324GX`@sF(U>b47I7?&aE*e_Z+2is9wd@;@$Pmc`1hEL&aLtbDFWR}hi?EB{z- zN6tr5mGmEy6XGWEO7Wdyi9{~-=Dd*i59$^9!v$vwxuW@^JB!{f;LA7UT@o+L{A}sw z+4+g1qs1xzVEDwgW2*;VPJGw@N&gLrr;?8xJ$d}d$*Q4$4)f3d=|bm3aQe)wb#a=1 zDDzA4LeAR!8<3Em$Scb!7E7|~gqL`~T~aMxnBO|LdnPy?oGhPMe(~$^8!nnAKAe1V zdeh7sbGI$N$iF5tOZ;5UuKZ`^69vOXS1LbNKBwGXd}Yz?1=;e>d@A=9i9vKa^OW!k zL4@aBdV4Xppjvov{_xyZ_`!X1JLjpzmAvf&D)ZIsUr3hcUP}!q-Y@o)tzUVSTAG{GT>K*AdS+DYr%q~r6MqOt=KIJ{G7>FPF=-~eSOW)kGR~dUY`sJQ$ zqodrZy}|EV54|vO)2T;O{o`w9_5A(W$8)U;MtRG!w^!bw)@sjc@7Ma&+gILK_Ii<3 z_CM)#=5xFk=iZz?G@-iq{CLI1vlH6s{+ZeNt9gFmxvUZKA9AL0-Fd6>cIS8`SBs8k zJ}Io?U$gYd!qEIf^Q-3nG=IxNXz?rFt-?F99um_z&*j}j-6ZqNZjseeqj_)U+H>5} zWzquazod`nT$kIHTa$ZT&hrwvXhY`j1h+3;K7ZlTTa*7B4~%A=^9?)B92s<+{^O~) zPHsDS%c(P`>(6|h5|8bj5X?3#1v9RYxbnX*aF+O&>u651x%|P3Lls|ETwjq}zCm*x z{oaZ%%5GC$QSe0mqmsKa8D8z&yHn4Me|P@Pl<4erL-m8I!GXaS&#X&*d46pC*z_M3 z)(A7jtMgu!KUQ>kNk-X`vW~Kr(mRyO!s}!+IbEXWj8Ay3h3n@&pSg7D@0W@%6<+%C z(n~YX&3-hOod4BgYUxh?5y52{cV*t5HJa6$oh!Odv|My7`_b%^S+`_aGe?EL72L=> zv+(F#@1<`h-x@cJZb^BE-Z=U4vDXrbL!TXZ`n$<*8o!zP=0D$Azh8gkilbkgTs(X8 z*cDTc&+&L)2@hu#h+ma_Exk2|%DGbds(5qu{tTty@g>E=m2;W1Z_G$%skt}jeT#j( zvx23J&$I3keJkEAp`-?BjZ`OnMtVn%J$GN8jQX`~xBPu%L!ZJY|Cwww|GPYS-rsZk za!yI}rBcZ`(eCUgvzjvP8MDGO!j&0;jQ29DvTqW9EPWvFH?s1A7m75>|0q`~KPq~q z;DSt;|F(1>yH|MGl5BSW#1o@855I7_@`q;zI{S5p>kh^ahz?K(#ty^}wjXI45S=(Q z_+4sptbFR>xo>&zW=-YXpt!B1Z^fOO_bPr}xvDY;KJLclj}$9qFG>PJ!9sM(d|_h5 zadyqnnbYpm^@C$Ww+!c;yJjqS@lVrTbJy?=Wn3Z7$*rNb%F7F`DeN!2wdm6#rubjQ z2aCTeexmr>qE8B+DY#xyCU2Czpnm_wywOk?CZkY z@;8g({GPc7rkHWz=<$(bshp8tpZj?9GVDh%|1VxL<7Lq^(&uvZ`HR#FMQ7o)${nS( z%hoP$SiWu9=cWC{>kE9;n%sk8ch=oP9WQI)!i;MArxV@_j?unzZ;Tj6E+6@LWcu8- zWB?e`rPjiodP+)$*#cp5piA59icpjxYQ$_3&6~ zxOK4gGy|6qnI>oL)%l6P|dD(ftKq2$WtKT%z) zR%?>#8|cuA=gM9yzD@Cqymv+a6TC7noSwY!?zuk?E6#|AZXL3p`C_>L+_e{GCrW4h z3l9l~vQm=Y|TQ+#>Gb6Mk}F-bvAb#Fm@^F0o)!8Nf zTcXaqcNNj%g0csevnz5|UbiA=*)Nnuid{Ls&pfp7-qf9AkEA{y5}$tOHbY=Sy?)TB&R0Rf@kU)+t_+?~*yF zmHGGPYNc0+c4l138AAggmGj%@33wCdwf{dO*)WognUM^PWD_(a8Dtw0YcXC(Qd_c#A!!S?X(8Ppke1wg z+lzrT$!&Y@NH#E%O(NMO(PBV0kZ1#JNE%y`7f9OLl1(66y^)x#tO+53cmsa#8TbC5 z-~azl`#foRur+$;eb4!x^PclL@2-#c{XO`O_?>^e^V#2b#2m^f@m=4A|z4#q| z`|TfErwv$2@~|X1?YC4;`X3hll3uG^nz?uJPaatEz!#ZcDpTp5>AxVER2i`{X&-ib zX2qoDcJ8+YH`ZSH@C(^zk6#)XcV2qpvz9NKEZ$XUZ>YuDpEX zfm_G!h^BAe`ybJ#$txvyQXiy33)U+89_VM!WqrJCLVHiULhD-EqFKY1FWH>2Y~iu_ zX~bXeD}Qi({py#yKRGkp_2KIGZSTGGe(FbyN1UJB{Nju2_rA-WUM{i|%hEoU^(-7x zC^BmnzqUA%*{|$gbVcr(KP?T+NfO_?|HfU}%-N~bshg8EQ)j1l+|}HVVKew&M86eb zqB%H$S?;&pzl@y{r6zwmH;B|mU)r1V-3?AFCpSrD z^Iw<$2mQ0fFR*`Eb}#q!htl;A8GQO3d08vcvft2Ds;*}2U-X0Q=Da@>!y@zD>p!G^ zr~YQ|b=8@^H8xjIuRzDoS(yfO06^3@A2FNiL9E&UbQ@%i?Y=jWWjo}1#oH+=KK zRsO4vFMj{UPruxI`PQ}9ZXUSv%-z)F^m*ihXy%}LD7)psC-vVOm#?H())-TCYnK1_ z(#0x=LM8vzyr+oYCw+iFjY+Ut>=3?Jym*dEVosIMFQ#f`hh%#LuiZN`Isbdb*L7e0dHnUEU!C93_g!xwa`4RuPW`sc z*mku2oi{diZs>XG@6mIw{Bvyl->(*bpLy@<+(s&)d_=uHXXK&Z8REutW0TIlLZ^*0 zGfHW?VcxAd+wtKU^W>pB_rGuc{`~EyCemlNV(m#I#LKBTxl>-SXj{f#QB=H2dm`8Q z;O0D9_jKNa4}OrdXX$Z<&y+6u5w$esWYWytydU=5thxHo7w5-+aq;gXslywGo*&va zTsQjs$9FE}efh!F^WT);zBqLhduC1|WiEAa!32FvY0UUi@#{rx@+I?cN=!-Nd;ZBs zZwJ1e`1&U|zP|qPjZ5Ej-r93#WNPMKhv-z|G|l^IdX4hp604?E8_L;|o0-$M)Wf)xm9njpxmeeoC11P0+%Ud(blp(h zN5vo2{d4(<{A0;yq07g=KJ@*a$?f+($6rs<%#BE{q`pX&q>n68XXHQdH`Q;D-z-wU z!L~4;EV-B2M_0(Vrmjo+>GX+j?|-%FW6_7T1K+&U-c3jH-+J<|e}3!P$jY84{?S-#Dy|rW_c=rd9ZSIN`HZ4GA$$bm{w&-VyUnqUbKPYc2{z3oyBE`bdbUOW~ z^2cS#RQdcl^R`G`bKg!9i#FdsJR_PK`(eQy>Foz^uf4N(;^y=cY)VZ}250}1`{dMlh^5W&{oJW_wqtYn5WTR5Q$Trn+%X%&Ei|8ktM|TX}{Am26Z~ytp z@RhL}9_vxdT#&ahnz`zI`^*n{(StN=$}c^Ic}m-`e5puv_H(xA`|oH zrF|)N&3OXfI6e7&{@1_w>ZS43BQqb!E|k3cw|D>X-m;;WKe=`J+3$Mq9g(hH$S~sE zUV~xPmeRM&=T+>eIJo*#)88H`FS!3ut+r29pjaSVm$D`Kml!=Gp3MAV{hipIxfA46 z=gf}#H*h-XV)9dSBZNr00Y#5z=jEksNVBK?ciQGO8bv7Tc}r6N6P+%P`0%~p#HDYY zSHJpn%jhE?{Cbf3#~Wu}@5+rfMwZ25J@?DSXuNh-Ot?|% z4qaaUMb{Usd*_`^o0?xjxn&pRpQWcQtXxz_?^h7YQAN5UXAzZtdw#2QUDCsM z-?_c#>#JW`KfUpBlud?r3?G0 zmei>^i}CE~s@v?%OV{j|*)JzQ&;MfR%hIc>zxmDW^qC3K+mfZ^XeDU#-&pvwP z{n&ZOxmO2QocoXS|NgDG{`&HYYs5Db-~Ds)F|1(ji)n)kyqVqX*s`O!3m()z zH27=WYU%kI& zQv2QJ8@9_!zj)=dPd>Z;1%E~I^`h_gOz7_25dT^7dD@5a40Co_jBUGkgE z|D-R-pHFKdej&Orz5Vv@zIpq~_~*HoKL7ZqA8-BSgG;~uqVvk5U;pveqj!EcIXOLb zxBC7(6wegi@4tI?`X`f-JKMkCb8GFlw{AZ4?cle4w?6w$dAsV)&wognsF-+WqIKe* z6Qz@DrhGGRVo%H|n)lp-f(PoCPORuPyj7qq{(EtA(bUR$hQF^kw(Nvzq2kw6jbsSF zI(6>*OW)kPrn}PlRmWG$t_)mT^-bM(GZU5fe?RBjd21H@EYr=NUiNRf4J(QtJhtLe zZfbUZR*5QCIai*YLW!47zw;e)w7=Hu$K6%;2k-Oux8K`3W1VE~oVxYq zH|;mRxn6r?>TBh!pSme^UCQqz=jZ%U{M!B2 zY3mPrzf<3Ax^ezm#Qnt%d6iG{pS<|w&vZC5y4HOF%=KbHrLis|S5VraMJ;6ozXY>ERPUyMkwi7m+ z+wBepqi$;!H2Da%-quq@C>{-m&_81XAwOO%)S#Of%oC1vg`r1^qZl=H z2q<#_i@dA~ehow0ypd=k5e$t&@oEs7UQGs;>xqHrC{%o_tD!{E zMA7zGJPKW}p+GPMojc}ys6wVl!VR^TL3jPdu26IY3as7u%Ca&uV9xAaP;}Yp=W!7< zdCFxBc6=-m@p#eK4@IGmyc}AB=;m0Uaf8s(LE5^y!%+2$Ug%0=ncg7d0YVZFxOiJQ zmWX*QOUuzZs~Pk>qyK7O*#K?%EQRsm#7M|v^LT>ZvB3mXnuh}JK&0O-`Wf_)1DioQ zC?F`fEcCfROHmw83|p*=^SddT!-Ai1hisO-iG z!iD7b^D#h4%iW zax)+x7}5<*+(HADL%yv{!|I_SC>oj>OGNwKI8M7e-JXH5U?X&bK_R?RMtGt5Ct#6D z2cr?5cW;dTP9carKlZ6tFVK zXQENGbZGAzOstI6ORqyAC3HAI7jEJzYk(gs4R7*07LFg=ZY=Hh|12mRhjKxAwT#8|# z>uC91q`|DhvOeLMSD-K&zTTB|*E?#*23&E2=h{ z7~aNF_0!j(bR4}vxlj~N+MuTe`oK9k+M7_yneeghnJTFQ;+fjpUQ9508>g2gsMTP<;K+L zH0IS$$6-VX^rsGlq5v>lX% zTAvLS-+*Dk*?gm()yr99dA<=4JkY<{JT?+VM%5)UGsg#n{!@T70SpxFoKVDV-Bu0U z%`yYp8n~@{0Lrrg`9wjtsTq31pvfZG3C)oJ7D3J`F@XLXbi3R>PDF;T_0NHWtQO#q z(C(OSu0k#oTHKM9ia`lEI)^frVUf$R^+2N~_*`h;rzFkM(Qr)Y=;wJ4GPALf=;%NI z<_Q3pMootY6L8j{*F@-ZM1~MKPocp+5C{fb8_M*Gfl&b!XQ7N$=4znXK%b(X^o&6d zol8~*+!urD(7D(EP+J1PNd#VzPGvieJY_uOwq!vMg+T302+h#~pA(+IKuOTvLm%en zzF% zi8!(Zkk2eU3;6@s^;tq2Dl+mh=oCXAC90l9ebK_-fmTabdKt7dA;%>2rX$;i8LBk^ z%p$$r(ESL0T~sBs_p_3oE}@|ey0g^K7K8SzHDsUL4zzYnO$czAVa4IbG-NOT8F{FIL&_9ZN z9w1#{`Qk|Bq*qmIkV%&@G!G4=XnD{^aLAGE1gM7x?OZ?xAgis`rQC}qkW)mSIN}mP zkG@fjypw%w6m0_mRECxmnQH^(xh?>c&mJ*7hCBe{GcUL$h$QNJ=vB*SK<_lHyXpwum z-~~fBt42Top*PwLf=TGFHA0&%QeOl*^x;rIR;FhacY)m`d^Qg>r%Lptfb9XhA{O+? zs(`Ek{r_Xom>mgrC1!y&&~N}PT?V1o5&dm28G%56r_hsDAxDW8ReNv@%q;pnyog0M z2OT)%ae4;gz_pErgw9G}`3QX-0p4Q2-Zd!nxx|qq6d8?z0n;0Fbhps_65xpeE3(Lca#-1D^<_Hqv^?JhC8$My~+~3)hq( zXQ(1&GLl%jtx_d)4#zw^rO_CW2ZEL}ZT%?nBuL}Ngyv9QR<;uD69FTDHaoN)hk_oD zhfB{_3*0dDz158OE};4R4otq%i2gxVS+65)!EUrZ=sS5h`AQ&RFc`;qkdDNVW)E;I z(~Nd+Fwzxth|7&gYUZPN(*uT&6M;E^CNzqOLKAfq?S+v@JZQs_7o%;i0(b$?LG2M3 z8Sa4F0Yro+NNA+3|O4SEmZV4xr` z4slF6`WEQb2>rNV;h_c3Tm^76x_$uqb&+S~(YDc(l;PR3DnlvFqbCL;rF0A+N;V85 zaSS=X>48|lAzN+KGctU289I_OwLyi;$gb-s+Cb(T9Yp}%!D9mLWDxj-*40230cOAm za_%U`MEek}hTeos)*u`T7%u~T`zB;ckh~K*`vNY%TY#PE^$dgK1z@hB212l;>YaJ`t=3^2*3^bR=(m$}BWgBKH!9 zMymi)I$+UJNOBxj2hb
    };FO7PG~e>-qB0Pg^Q0!ti0+XWqje3m>u2nP-scY}!} z)w{vn7|=7*Ck95Zbphzt2+Iup$p=xS3RD1(1!&FSsPlnbgq~C+(;Y%0JA{Ivc)&)8 z3ZV1c2uJQ5+D_;vIE~PdM-lblS0gU;caVl*Z0=|ziq^v-JS{Y~s+tptj&!|t20A#= z_kwm<6pO1ko5!X&=JjJg8GWMU7SnG7gWRd1tPEjH%1!?WFyb< z&Zo_+th}m>RRL%LnLHbh%OC;ZSWsOCh+-c4+(Ln(p&8Pq*)zgs#Qmg^_2I$#Ef}j~WV5FA9fHX^>0CA-O z9V`<-0Y?Sw^-3^V6pB32mMv_EMVhLZhB0I||>R%wQ83R=FwL7)c#J*3Pa0963WHVV=kS^i3vAuz&zTxjkMy0|Q8 z5(aQvH?VqUX~9UXVwmT66!{mlg+a3!kTUH?&kIx*SJno=_X7?J0`UZZ>v14;=vfx? zK%XVrtCj-ThFQR{^4t(G(U^QzOCWzK5VoR0r=|++Vv~tsC=^~@1YU|uy|q%!g7G>Y zLn}EN^vfa2HkhgULBJ>lgO)6G;Lv|q2@qR@ZnW)ewos(*XU0+@G#Uz`zvUM{3&a`- z3PuI`ET9|Et6~W7>oH^yBaW4z`Alk-L|z46ZzvKCAaxA{Fwz4+D}XUBh5QWCx888T zB4V|JC}0mDd0|Gb2zut@korNQ(+F1KU!)Z`LD)i_ZkE128i@mc&;U>+qh1Xj2b3hP zE-OdQ3xIE=Gz?z~i9Cy@8pYrY2}(K<^Z>3$8tE@Ukum88fG)E4maJ-Ya8N9UH4FlJ zCcqOEC0kt$V-oCPfC-}D7Dj%SJ`r~}UqoRB5)de+Sq&!M2#7>tmbn*n zVRAsFBE<`I#suhFH&RLE22h47w4XTKj)IstuYSs)vR~{LbSrT1%%DK+;aNbNz^67K z6R*c?p=)r?f*#~}tEvR9^k6*N3G@U#MN(>A>RrIlqIap;3Mvis6|iOjSrQ7kZKBlx zaDxth!Bs@Sl>*QQA|3QnNl6dzvw2^|N2u;T(8E*4JZ+akL!$jawNwh=q%c_wOdhy&W_!QZG zBS>%I*^!`=4g!q^0!DypmBSzffD2PRa-%{l1>6`D5V8Q^BWV4YpOc{|gw-33)sR&& z0VzUp4k8M)3Vw?m{r)ltlLWpHdUqi}@U9fT6O5nnxCq;z&;bsx+4PlY_pm^HrENi^ z?&y#n;Kodo}s_b81N}z~<%!>lWX(hDAGZ0*%O&Sk{U@JJw(9S>+m0H*egbkDQTt`N$ z3!+RnuHGgDILO}B4+{1VS&wufaloi(NW#E`2!QhkmH~ndpvh>%mQ__DpVvJw7=>UU z;1*~WM&WUUs3!{aQUI(%_6+lMA-xZOn217>2gGg>v1Ix+;ZqXJS1X_cTqET-X00hAEAA^iJ>=U3$83d9|xI5Yv^dJ$* zqK84pk_g8FqN=hDz<4njDDU;r(f`M01878#w7eIxk^)Rn4R1>imoy+YVqxSF09%iQ z7^^O?g1iR+L}+N;M+O7TFS`{`uX^|j!qW&dTgqVtSsj4d;O(Ksk+F=-gd_tD&stdx zsz@))9ze=41V{ql)uG3!{1jDM`kVrIb1zUp}>Wbq5~4_v^)k#E+fqLz78@d z9`O^LWdr&Kpy@~$(SUqL5LwsR7tEqf*&PDDbkK|5A~Fo=yUR6(t#Azko(U*TfCvjB znO6mIIe=}t&>?|8^FT5It(P7^;}S10I?X2Hgzys}$weCkKZy=0WABMU;tHZ#5!_=y zIt%j%1k_06U!+o#nxX3<>j8TbV+@caVPL8ba&pTAh=>Ff znQ=Cw$js)hgXsBO_Heu_j8v@?(#GIVjOy7{5SVRQJ8Oxw^=}NURUmy!YU>^$#*%>)_CKJ+SZg(&eLFUEz+%6#_#scMb0Mar+ zbo^K(8-WQMbQvK6gf|WbFFezQbPuv7q75kS(?gswD6AJi-?l<#68x>C3$FTHA`Jv7 z49(j$j~VqEAj_EmmotiDH`rQ`g5V6h04+w?+%S{P4C5+1!Olp?t=9;7b5m5d9>Br9W*pBgHq681cC9>aA4*<`^cijE)H*eb8l5 zgIEGMEoln|4*U@=1}MS{>?7pKIa@g7=F^d#&7K*HBB22@&kA4%Kq5!4Q3HpN?-3v? zppwce(VIrjS+4`uDntlw6i@-G9ZAYDK(~Y5_qZI8pN89126OQg)^iQ5soz1dNb^@4 zfT@ULl2}|gy-1YVW5O*7^5&EVxpEWw<>U7{{Iq!lO`(nBZVZpMlB7^`hYP9z4=i-#9)08lRS z3r1n^9dPiFhhJwG7xU&t;o94p&Q5=z=ac#PT;UX z3darItn+z5j1j18*ONZ15Aicr~*p~&><$&|@0GJ)b1+oYE|FSeJ4r8Gp z`31j6!y@Hll(BLdOTUYPEQl_{=wB`oWGc*Ckx5fCl&xzN;DpE!fn+xeAaTNbZ7>8A z2K+!V25b!(9upWoeomw*hkF;P{vzqQf%D)zU##X?UvcTR&epUdV@>CgcYxOY1N!ry7m#jd} zH=|?XL5DgKcP#~!iCLf501(Ro$lpiY@HlGp-n@fIf&?S*G~l6tK2Ce!`W)%qP78_= z^)PM=kc%-$t_`5I57PH zQnZW>MYMuzh6K3WIW)A!PB6fs;&Z8jcgToMP4NR7)ByutXW47jsZhD!U5@dc1VI} z_P9lbd11mm10p{vzA&;w9Nzn;H_6w{G#ORnD z`J^f!r0PM!d3^2CKJ~oO>EmZ2bdAJ)wx)*rZdcEod)FhyfL2n3$Sy%>SBp8afg@Ml= zi*&+R1_OGHfcgf!R1m3BVb~>FsS_wNfvHk5bER5s{MVR_&=}PD2p5P()=*`ly%22y z-wk6Jr1;j;0CS2u#H>p5vwS4`h4|i3sMFhTI(i{dfUk*H z169iaM8t#F1Uxs~?pABS;FLl1fTCv$~aI_Owo2ua2Rc%s3lAE(#yxtAjzJ3RaFDuo+ zu_OeVb3!2dLn28HOsp^@65X6g;0VI5Z3fajk^zu!Lm4#AWli>sEs}0sJ*ci+IrEcGx6t z(bLt!{2gyM+MO_v77U?40t1dTkoQH~1RlJB@?5)yR6xYdvEU}m0yuN53yf1pFn%yq zL=W@Tgeh4vbcA%2cMR%9Mq$}mRdYYC-esVhZ*)hInT4^4!blwkoe_%eh8P=WN{Tc_ zoyt8Bi}=MG3{`MXr6z6BYmjF}CL~K32ZT%{TxG%Y!8k6s-qNci5C(u-u*g9^z;!3^ zWFcS++Bl@uU}PeO%M6ufD3B1WCDAoDAY=&q77bkLK z5PCo+hHO43;4oqM9u%Qf&E^z@EBLNReD>f#+6U%+!sI`|U6b_#FrEvF6GY`^Cr<122YIalkTj#+=$&*1oLOiYAgcf0xgp?? z)zy#<6~@p-kqv?*Rou_AAfH9gd=EtO`qyVWNosE}JY_W9~ zoXN^aLZ}l!OXen!Ju_DeISVkmWHTUmgo+#;I+c zrKfAaGa{cK?usR5q2n?X3goMetPJizVXL8l1QQBvgan~X2&5Bnu+So;XE9Ga*tEM^ z$WNNp6o_+(F9R-~QzO?4rGG>S4g=8RT{zOJkW7Po3-WXVh!jOjKDgh3Vin}+++Dz} zMFGDEc%%##6h9{v1yJbtpuZgw5UIjv5w=h`f*u++jxcEmv*6`$1!*t>z0+I?fK6f8 z1Sek!V0b9!0fHqI@R&)+%Bmr>f*Ih#-91|VXksJ~x(HXD!Z0Br7G_m2jyhl|gP&$0SPlhY zGFzuxT)h>U2pKX3a8ZZc4W}*>%2Lo$#9a<7t9P-NyA5HwaCDH6zm8U!kR45~#(f^ZoM zoPDTR5(eo(?hjJ~d6cCvit@~iM0uE_3&zF7*o29h{@T@01i~USEffjHLf}B5zCkGb zfJ8VHxIrLD&Ca(0{3pQo(dx=zNCD{nphF~-g{izyBaQ`dW>lr1y@WqyR`92AX#uMsYJgz*3@=81(8$RI^RZlo4>L$Nw&G_ScNbe7y1VtKlXq34^-{m^3;PrFZ~&|WG#+` zL4!GFTL}KQW#IqYLcsADPhdR8!T-QGo*>}=M|g?N>9g6C5{rY!NK%ATRL1@D293cs zFz6Sp)*TPXS@OYxMdq1N?w=1NEc5@+8)zJ>uL_RFrJQdhL@|xth-Vs zSV>#HHWsi28+T@3ODgVIps(-eJ$SkDx^HKH(Oi$qs(e{mG(k{d_Sgywuc&=E>58IJ zLDl}(nFh5+dF&w8USez8*_)GW^E9rgb<}h?D#PT_2HdK=q%`%ZWG8(sPacubEzi`2 zRc9nFSIs4*%wfNf6|eEycAg$udm&rhS6>}b)rntnIEjpX#SxCWK(8NKbvjhjdV;j%xLHHu zggSz0_tjIE^47imDCSo&k@dqxwZY-L28(|F*4>hg!ZE8QLX&-gf%BSki) zaw_!iKWI5sy5cmsye+W!Oz!IvNqbS{3m_+vWE{Sav*&&p3l?=kjE*F=qi!tnV*6mOF_R z9zDL^uVl_=H-=?oEz_`Nh-Pdzi`)}ROMgkbRC_@oKFstLnZ|RS0sl_tJlCES*0(O? zFb!?mW2fsHWW7ok=VkS;E+J&Zpxk)^Z+$q~U6}0FS&ILfiM=ji`lQ}h2*$zv*VzwJ}MeJ1^CrFT@q%*u!&O6^(Z9GFOH5 z_2PM@Jh1(UYkQNH!VOscmh;*E z0gvX$TGi_hQSF7^iR|`_q!?CU*S9Ywj?|andlx%-+oTK~o%Tm-JDyCBR9HD8pnGf$ z9;)~6&B+@lYK}^ozWQ=EeJZ!J=`W`n$o@dlF@jh%Ly9s2){}cBOzR_}x1SKZv*n(^ z`5Iip#hhDe$%;kZ?M>3=Q_GWiUC3jaDLm4wT;M9?mZezv)DFiJ6Uw#*-Fs=O-fYZ~ z(@JkiaF#;PK56b7ul<`fy2drK&Q~axa?5^P>&orCkW+{8k58yrzt(UUcjq0eU-P<@ zJ)){~Na_@BscXu$Ud*TLK9f^Ba@bkVIkTMheJ|_@ zJku&s)k#GyH6A{8oKGhehJF7=w&xNP6|Htvz-_!s`O{pDN-Wqh{|v2av+X>e=cE@n zA5H44sO8q2$xf%8x||E?HH-y&{#3K63M#gQ^7M+Cd+Y2-C+)y zW2x@eBaJRaU6^Vra;M80vLB;J?ZQ~*8_g*nEXN($c;k-YY+pjM$cFnZhmWX>nuZ_p z5gb?eX2Z_bJay|ctw9E_%f0ApT2G1a`HqfF{u#PW${f-CQ7Uq$SdP5l^zh_(DL$mg zis<}YmgC1q_cJ1e{(MD}EyTEcOR6!9-_lo~<#@ENSyAVeHa&hJ*E8W^JEX&rb7D~% zb|6!RVFfhR_Dl;#@2e-zu!VaiUeVkVinfI8`yL_AuWIUj#L-cbApJqpBB{$~%=u8I zJk#~?xXoo%HFmRoD)&UuX=#z`!W!>cYBxta4h4tu8XMN1$}yjpWZ4_(`u>*Z9ZH{e zvXbn0cv(=(S++QeUz5nQ6qOx{BvA@89M4-;$Op9XYgqiH#zRDtUG-YFkHpfM(r%8^ zpA@k@*c*!}jxM(m?Q3eW+_xTP+7z+4#->? zecZc^wKX1@aUl2XNzzH|bYwe8S*2%@0=K4TTZhB?w<@^E+Mzh*Kjf6M`=mr`j<*gs z$&&u7E%X#GQlG?6|ES58TVN+!B-A#-Qhb!vEopIQ&b8E7j${4?4awljw(&>(of7G( zOvO|;->(!$xn((G|Bj=)YEhw#(|S*zY~10JSWKeq?AMETb19C%iw8);VsbR3PI`G~ zM}}jPUg#;@SA?ue>$}8|1Us^((c_hzePp09rcY;FY5aT3mys#04Tsus9i_I>Rafjj zYq)UFp>S*HLN>X{PKlX?w#}zE(?b$Vj24MXDqY79 zc7_@i;l6C=+2`M;H#df~EyWWGPc*d68%Q+eR31H1_<>S`H?)QF-m8(>vRyNHBd@f$ z&bf!YK2kL&BQm8uomyj+XwPcud{q&VZXbN*BIE&`JR5VaIP+Ac)->xNhkTGv}`D|qh(WV zjv~^x>8M=x9A`tZymP)Iy6UWS{h5QjUlGykPycDix3x5>l#cWe?J4OCb@?RGvZ}NF z(LHpYFZj|php%^}xDLhrDM{F7kzIQ!mGkqmtqfNfon*Dk)|39Q{ialg^UFw`?|IId zdqkQ&F52V^gr37`6!r8rSOOcJ-i@bv{2dJuE1SGFHiB!DtMVKTs`pZ;*XWfLRlAXI zo7du2wI)5^C?a;YD4q2)z85V4eX_LZ%t?2^%V!zzb-@visIAhqyepY(z&K(hspw1b zw>*4Ip}6cXa`MsVEF@06=s(W+)`{w~-#E-UY2Kn=ROkyVQdxKFNxSxDy=;%7njsrg zLhUQ|s&t%t{$;n#)Rc{%81;AY0o^h}b>t-P=c%PSkuDY&$?_{z{^Q#7FH#n1HKl6H zCXPOInk?+KKhRv3h?rGw-FE3E7lD~M-VZ(ydf%+XU*GoFP_?C*=owgv(S$5HFC+N$~wzm4m zWO)v|{mlFpMa3zs_^e`}(pi|4p5_<`#8vq5;!nevHN!KcJ+dA7U}JNYOuT-5O9OHG z;nkeBj>Z}ve#NFZ<^H!JX+Y+z(P+>4W3~{MMD9qk)BY1&TZPrEurZB}=khQ+b1ID- zIw6v+6OlyIr-Yk&zj-Gj2cQ>n^(VBIm1j^%cKdI2Lj>xt|r`TA4V9 z`gGMkBJ&u{h_hdl>P~0o&PbhQ6uW@x@dq84$TpDuZN0edrN+LZGgRs@?{hzg-W(tB zM22$bQWaKD>J@3PE$_U7IkUE-b)&e>oY6QI3nmlX=H5dNr)sIK=u}ClU%yCNMPY^{ z6>Ga(vR767GOe<1Jdja1A(c-`eeT>^(Qc`KU?A8>h)mX^xr+U*p^c|hIsLl5&E*zC z-?+BLLzKK;l9y~#v=v^#48z5Xf@{vW*Bqb?w9(!ZY<;l<^XE*T^R|V_)9dYVMf=HG zONj>CoJ>pjPEs;=Glr9Xyoy_Upoc$8uWzIc^BjSmK%$|E&08tTJ$|N{=_vF}sah9r z;3Zbu`Xl@8opHJDF`DMNa{=BhJF=p(X))5y8iMilTy{&(OY8qiNCJ(Ek*<=CV6OVT zjGS8g16*0Cc3w)jH`{-wH7Zb#0n?8lDT|dz~yn&^zYZWGxpeW{z_tA zk+^W@WkOy+Wiblb(iE&Q1+QE4N`}U@ykj)?Qzd2{#4zj{5p><~%L2u(RuBiW*@=vx zOT<0Ah$yMm>gFnJuV^xkEGTkf_VKhn8=IVw)w0QA&GmKr!ZJBt+Oc>n;Ln+iE^djM zT2hE<+tK|pyhMJXM#SZ1Ok&a|rqr*Ivm0y~pN3U$lIt9_{E*w-?e14~Fd085NcEl! z(OA&cMKzYx>ejuSiC?y<@p^gARXaaGg*$Z0m%c5M2Qv2r^Uf{~I1jbvsHYXKp$vyr z^nBxT?&X&per2yYi(QvYFct;b_;5SU9&(i1vZ&53~^L30!y4B zce|>zPGZ?Kp|AxHnDZ8rPl*bN@l{QodCZ{S`uvd+MXzj~OE#}PT=*urYVx4pPQA9u z)w^9xmiPv29kwyTsj?Ml>vEe8sq5-%`sO)YHs?u4Ku1oo;tb4xrN}ywBOj)hY59gCc;vUR9GeV^U$2lw-}-aK=qZeWNb}04+e$zklWcWW0bt=atg=g)|B;kpN8p+2t;}~wj9Yxx^5~m~kHHDF9@cNPui_;@rvH(H3 z?_o}V7Gfl=&V?lil{3o6DhphMTxVy;*!+lkgO!|zDL@lhia7u z{A9e2X0|w%2L}2HNo{kbD^(m=@*ak#vubsXL!uGMAM8wcj|OXARuBu7PP@Ewap3&M zMya&p!bZOKCElUKQEap0RjF+#&DN(9Tgzy^wwbCs@ z1f=Z&Q#D3aG`;8viFc7k$M%k9?Hh+#3u8!P3rZboWI=MSMH-wFYZllU<8fQ3vNzoP zW|7sUuuo?A@%yAxONokKRTyHarxI&F)8^GNWbGEWQFqwSd)%Va@1~!A1V6Cq4XvvG zMNh|0$2^x+sc+2i?873o%07Sc2K3yL|gO{|Udx-?<~HnQZTA zaUmCUsIeq+LZo+9s*?9(BT_lH>YWV2>E7GGew(L1mRGG&*=m*a8_LZi^-V=fu~mzR z%w9=-Uqf?SzEb2Y?755wGv3aSy_&6Q+re=uaZl?Zxwve-NKZ?~H#)qF&qP%%HJ0q$ zn;Bexk$Y0%@>OnZ^X8MBMj^c`X~WiBs+VhUB{xtQgJ&ucu$_x2F}lq`&w zBpl85VKU)xccmvk(&(=cH|})Jb1DqgNZfCC%|SlhvOP&+l$oj|s@hG?z=OxU*)L;C z6wt4lv0?AJ9CkmpxhdD&aoE+S=+s7kr*djV_E(CB{L0nN^;QY-O13{B@y+wx%y!Pv zsanQ(QG@OD6GzDTe(54tMIF8N^ub`XwIWM;&f-$``FEt|Z~VY79+U3TJ% zQ&;uc8m!|br=;+*+un!G(W+~A@NqZa5-56g2klI;bXGA^`OQ_w_@cVnUEa9Y$}bL_ zdNf&w4|@9SMU!?eF0lj(-OLodjp9l(&S&hh zy2fmbs~m2?hqTV)0WO;2+xM_W{`iawbFMv7Uvl8M?#vpeMnbq=&5_yq@m-d831_jW z?@4h>4K4`|23oo?j*_~jlr0Bpn&@>-zv?P}s)CHXYYFQ3eOh@^-lns8V(G%##p3== z?e(Q~4cUE3g{3~K_|&1{mjVe%qwJ3stt=MB-AuxeWRT)LzTAK8z}*V@mFx}|Wt-pc zVOtgDd^6EGwZF|<*z1uFtr+*>uDo5I!a1~L0f!gAnPI_6OZjd~snu4|)UC6)nf!bb z%a?Xy<%D)Pxb|j>$f{6H6H`(rrznu9ndTV_mxG;O>xhs(-5>cE-S_P0TCX3@{)bc zC91@)IFc!uurZUARg#TQ6Aj}^nWa)M-|2k7M@ZX7*ZEy}l#8udprdI1Dp6OTd2=4# z!LRq}YBxH%qxP$~#L25>Jp4p%OTcJQZR6JrVJ6N?TnW;3+zvHfqRx;{Grq9){f+6I zZmUDfl-s2V?`Y%tCTUscJlEBnqgbAtpifX!gv=I`T)U#Evz5#t^Q7xdXHC1b z=&wDlwnE;z>Sj)s-^}zC_BMC|m-ge08Rc|C|EkXMl7(EUg>E<_BtlGDo(ugbgK#!wig|o3D8PA!Nv~}*NmFS&{lb0og`^bZ?pkqB# zfK@aWr@a4wqmvG{X=5p`uEEmt^Bmkup7R-2#|mpObz0TxUH%qkw(4^yJ#>=%(T+H7 zQZ1t^db4e3S2(ZGE{lnzU)K`Oe66D?wR9rW+479l&i7}GdkT+AcZ${%e!DJuv$(Ct zr=pjwTj$hD&!_m}Dn*ARoO(&(jqIx+EH4GGC|iStNnXiS?Hh`XXTmb;E*<8Pkry8C zO;~p_%T#$SC57kLh{6(oonG}~n>Np1u$#aY^p%u8cVRM3@ypTU9Z5C2>Jj$ zY_az<ZT;y?SKwJ+194VSPDor$>oJl0 zrM6&D>)5xW(xSEU^LwL2r-+HJJH13E+V6=6yBclle4&(gl(DP2%PH#CC06GawK|VT z^dI(HMC+*}(^js~(fRm04U!S3hN!a6_xo%bnc2XFb1r#OdNFnCbG#Jqm{(`hb|gvy zDf=FAx7f3XYAdUFoyGTjdyg&Q5NV&XEOEFL6t^C?xr%4pM6Cf^BARZn`imE7E3JGw z({ScNi<NBdA@DN>@;O<|H2TS@&ydf9!B64|tvu=h2Mf%Hco@#{7)Rc8+?EO3l_3 znQh76*6=O4)Fdrq>0J^>NnpTn&L>*T^(}65YwHe4I=p^DboNKCt06v#R3u4tuRnqL z$ltPxw&jlAb!rz=SIQR9mON|BpDJ(HbJsU;y)zVCTVR0!9dy?NLol{&IZz%O}fus z2h!PlrE|XUr?Z>R`$e)zBgrI4h9r`0f^0}D+Yk(-Gq!;M>Fl!&q%G;}cP$|4KI!Z) z(9T&aJ)a=y%)IRP`=hn=JokNH*Y#UkT2GVyC?t4vqGPXO=qFhCo{YlB-3#*Ebde4^ z>ue&P4LmBOXPeJ~E%N+I++Ko^#W3fy#eYfebE~EteX6LlI&hzq2v3hJae#IA>%JDu!Wl5V^ zGyzHA(vCpoGhHmQnn3sNigYuhc1n^ZoP1#a7Z4RhciY^vgvhmtWZ-*l>?nB6Ysqx^ zCPK=Z#tG~q@-2_Xoanq~Ya1HqT4Aekz<*McX}K0Le13zI;~b_7{w9>2uHVsosHZH- ze&`(VI~&Cwc<#mq2dL?G0$4Z>fFL%QHWZNNn4>RtDxTq_5d9Y}6UKd04ES_}p^s(a z+L`7`p(mc`O&y_ELN&M*v6$)is|_ON>&asrU78PLLoF2mFm9fG7~oIT4+rY zq)QK|lc}1kuxM1rx^*&=PwI8OY6Mv-0=6)W9ms^YQCg0DIGN_jy{a3B9v=z#E}aM=Y^>83_jfPZLa#zT1m8M2lj#|Pdl}Li0<2TpD6FPBX)e)| z(lTP}Kf^c;=;)5m4TLxa%nb~?M`&(sDkS+`XX#N!Y11S78?pFq<}hol;#{!)>DGcO zVBX=nvN97vU7r3}NtWKB@R*lM7w$!r5XbJZG&Z2yuF!n(x{~0wcwxtL3vuU=rtbqH zUG60ytg5mLu?Q{DlVA5sZM4+Hv?cO}svA@Hk!f2~lVP0F#giFhFRE4xr-UG4Vs zZNVuvL8*{)-_I`b@jUMitOye_3F_W$jh3|xUvwR$<3)7# zU@8p6JnicK7M}|fG)OwGUo!g!EX!9k04t70!=7=hQyh)U3FEl#>#|`*W&Ys^PJUmsh%(eotC8wPbP7N z>YBAxpXH6|KhFhArD$8Qv1zP3kM)2nh8;vP%Sia%;x;GpZ3mF%8ILJP6(`W2WQ7OH zNm7Vi;C>oWgU$ZNcEY@`m>Vb%yi3QqMJ0gwsh%0fOndbSTQzGEL$>ImG?%%-jyGTe zIQ-iu;nIyc%X2R-c&dOJ6o-hqZ8@y{&ki5+UfyGLo5gYO0kRB4# zIDWb>XE`YJK7=*u0gLD5Kz3~{ss&%Vgox*b)~dStAh)%LahuCb)`~}0&&CZULhTUU zBZsALLrbWhK+gJYp8oF}g6!Q5LzJsVlA2eJ*^uGyNzx?T1!3DXer21V8K}IjH7%o7 z)2r;N%9dNZh)N4)+8b0k;Yp$fZQZ2;5;{D4u8}D zVxXa#o)R`3e$C1Bl)OfZh^5@Admnd7_P{__1|6i;lE@KQHWZ5wYE@XHp?{8ugtdmaqpKAe=K$itvrn3ul_ZSv&H3TDGp&0FG5 ze^u@8OX&sWP)-e~dnS>t(mUTFF=aqh>uMmEtH9FE0L`mKY6uk2Uu4^u31f5(bd`{F z0zU`XWU~9=C!NoVdrnYXlYE_8^1?4Lh*!JLREvXyBxvv(T^Dp zNlyYxZSe@Z7hwdX=`?261FqPh5VuFk_TA=u)>O6-N(f;h36OufnlUWTowo7BAz@;+X5bEt%!X5VW#l}-24cs zc!4sjpm??ya1LR1cGok%F#x7b^4M<}DnB%^k)*Z}O3-wICrB1_i>>SyGBXG+?XN`S ziRrKmML)8Xk>(s#cCST~^|C@QW}g}4Qk-d%LqGR_NN0{JKqcR>bQANxp=?o!4G#f9 z-Q!J`O4IE@AxjB6)Qr(A1$!OomD0zLvq(DHGsN{Q8OU|+I9Uzbxd$zRgfH$P$?Xsx zZ6K_b{T~b`s2T8z%IorL+AM_AwvgR%%%B}n?n4%qS7^d~U_i>wUS*d}9WU%a+!$Q# z1yEPd9A!&Zy#Qtsvw$}ZQNezHkBtia)_ zzNYdl1S2b{4>Y-EWu+rpdw`|lkKKC|nC9OHl=>G*OvLa#?`((k5&?H?G>75lUz%`O z=L)|XS=ls>0lk9k6)KhuMDj26njELKeUQ03s`cZQnnRV(TYPhkx~JyE-{KO3S&!qo zT4?2i%xcS@&?*6FqnmU+I2%^C;@YJ}XsE6_b|I=>WKA`z=+c)ABwNZb{_IkNMproA zqYt?@65izwJSk%W{?NUhd1|wM~_{hz8YPs8Qj&n(cso_AO@aUQ5rK?eCTxYNz{FpL)&1FW+y*LXFQInj8`83)te{rTp9th0PQ*D4_o3Mi4!t!C z8<_!aMj!cs;24o}Xs0ifge7s^>fKX~CA zgcN9WG`=ISEX;6rSxjuH%IUX zuMyBem5Ic;g)h}G16WzxZ^ZM5X++P_!Iq4sW$!*6437D35#D#^l@1dHtptF;bWwJgYMnK7#9SYe zRrDxGpB&N}*2CsoO}cKH4KQ?MYWgu94YWR}J56KOI^FJ-AmoWH;K^uh)!L-}5t%&n z4R)$ba?lmnzMkM-pN^+WSjfPPSswbFML(}7Lq(k-=D2-&8OK{7@YHF%c>Ye2RF z@+M|_WeC!>#QgEC9y(+juP95PkGDeEz=K-7>lI*0|M{%owI&V)5gPYQ{}mWBK*593 zmyvjAj`M@gUs-iG-quih@%16t#U#*Iw%IpXaS;@7;O|L*VN2Kf{VJB*iFLaMyD%Ow z>|qjrJil4zYp{J{7)jwBj||jmGX2o9-l8Gi9ERO-u*Zk{f3C#YGC%%WY;}Ku=f?qX zL7G?;;uQyQF9=t%SrhzSgGroQT<}Y+B7f*P4@s`GfGPdomSnqz{SbFz?*Jq`ZS)VO z`5Q}e^SGxecp*P=U!VlAL!3uu!H1DPGSBr7tOabDlGKMrQ`IaJFRAw#nNrJDnxo}4DJvy zs@$S$nO>A7KOV8{P|J7WTUx6~oyLG`b^YvB2`Sx7SWHj$$CPfm5ASGG^qC(A;B6T9 zH)vWRm_)X)Y4>leiHN*WI3%M>1N=8VL6qFqS~pQYB9*t5VHTE`7k*&rO-H_L^G|dI zn?adN{#6q<`uuN++IV2Blg=|zFU((tV(NPZ0eIZbJ?aqHD*RYxzAzV>RA87sQCk-6 zCWtEQp&)O#=k#vxQ=c9FNtIp0mKKE#WXgLK*1_zyF(eCg<`trQ9I*cY;I?Q8ljUW2 zZe+z6r!)GW7Y?;c;iPkL47QdN^1izBiXLw9&fo$c?7PaXd zKQI&F4&z2h9k8xVrMV`MA3x~a4bYD&is?$}-3E(ZJJ8r@J%&F%HxydzVYD)mPQnFq-j3Duexy+SyTM)e3&$TK%ze3La1WNJ= zs|(_b;Po3^tX@d{!?tYS;Ytv5F~!Z4#=~~#2Zu3QGY$D%g ziPa@{Cj~BT|Bkc>JM<#67Z7OUxThL6 zF-q@r3w|Pusq2P!V8BoDPwK|BnMY#UDJk6QBM<4hAYjv~cS%ZL@zIYExK)oV|Se}M5##ix!I|!cc)`1;T z7@jkwR_cE&&191o$9mfGLex6UFFU5cmO_)lQ)-4se#w$}nX9a_q9RhH>$h1Js7%T}LkK_>bGm&fYxJ0CDW0}=I@zI+MKsQ_lZcJgon z%aePC3|4$T&gz5Rge#GKHP^U31*!*W!QdYtG#$WjXD$F8CY!3Uh%g_5~MM{UIGq=O!r*=Ge36tDY3HfYpnm{EA$@4{Nq|w_P&OUY0)xT@z1FIWB%hS}EC1nB&bE(^N|BVj z9|yR#MxVRq91f8FL52&*He1FjHbCz%*$0wXkSnP++k6kX^rW0NJgKOheapAfeBI>G zu!HkMt}0yP3{$U;OdAf4-{evV7i;sK41%PuR9HD}|1j@7yAjy0K@>I*UGgt(ss`$X z$*yjaez>800LU2on{1!e7Av*VOsCJS=>xRfM)+MAcswGc>;Dw6ZNq0ZE)w}Z$!~IG zWK+2e8R)yc{6qUd<{ahOVH z+%>fzxG$XZJ0zQ7>(>*e*~QBBLr@voZ_8tAZ|Scn0}>XZbc+2W43q9>Hv?k<=h6sq z+XK=A_tiM>3q;@PqGix`NW)#YMVy=gtj-hR9JL38$nSw-q`3gW!ANKYT{dPn+0%q) zH9APojK)*O;HERa2-Bs%GjL0$Gs~b+H{N@^%AwvTIL$?q`;$64H6_o@XM7Q4*L<f-!uVVN368W=WX27&Qi&L0RXe^2Kz9cod<8V0&!Pf#Nvy{ z+z(mO8ttoW+`@*nwtuUy*0hkDq-YKzqr#Ueh%c0}g~xsM_q35TpU+%X7jT`S3|`DI zkF~+@NYt1gMuv;v&C*%my`eQ5cmVH#EJT8OQuvO`b{MwJ6ooTeDr>!wEpEb?_K^I= zlsaB#9j^0_vim2SbpG3AQZIAXPwP*}7_eEX9`(UMffn1Elw)9f4Q|S^WwfO_!pC0U z$Cdb!mzK7u3}pY@`A>xm50vAbK@Rh2>1R^0OV>oHQ)}UkHSQ7Cy5u^$-vtjPwPHuc zA-T(vIwoynpwv*XZ~Hbs+O>_q>Z)6J>x#&kGxzDI{L&HMY>#dWCP-HMbZbuFb(8m3 zSVsNFVcA5lSu~fH5#WTm8qrl=Gqj0M8-|_l!x*?!eSJDW6yE_--qIq(T>ssUuf)&v*I2HP)Z8jiz;2aB*OVXE7IHE7k! zFI9U1+;rUrMQaJx`BPvlURrKvJn5T^yeMu3rmIZ-y_!i33LL(yFanEF-wfUlUA^k&$ruoAcp_9ZHugM$6=_I<6(C#&?1VZT@7|wh1 z07*sz=1-lF7WmheYJt)d4SF{My&aIZ16xwHa4H}0(g|A{%_T&4;-df!=4#A*7r~g_`J>aq zV%dY5)rxy?QyG3{=Ct#iuWpB(*h2gfYY9Teni)8ZZUhH8g$sVP&#<`xP(42cc0q;1 z_V!`~U7Ap=XQX4$tIpLW2bawc80OVD>iOqk_*Y@yA#%@gHcuM=g+aQ&wYMd z+Yhxh3^~XHA^RP(&TPAV6Jm|mq}QVag?wT*S0=uUv(jLY4_q&#W{+^b+S$ReRF`eV zR22t>bz{tTYDruCm{%XNvlZnyPw4c{ z_IZ`Il9+#edb@%w>qGhDINL zu|56fHJU89kr|Xz>;LbWJlzH4g%cn+`;uXPdIWf^+k7oJ^xtEgeH}Ds>i4A6xXYpz z5jD1k+awaS`@S^1k~PA6x7-at&IQvMuN=zOw8|4p56R^T^aWtyi1z#`xNEk$)45~B*Mtea|Jmh&aXiiT=)^S8iew|8i@yRsX@?*W;e+kGnKn=JE|B?b# zv*Y(&9$=|{orM+4N2E#B;;A?NDLW8fxSt4W)qv*f)K?*O*OYHF1yOy%{iuk(-oXG) zAm0W=SKr!{7!v#^a~W-mO&af^qyme_gz2Nw3dUx>j;BMN<6fNR^BmP%+GufSlyzr= zeJ1SjL{_x6rZgXm1E!@@?1omAk0**^iSsl3<;nT*N<3Mu=>`CT=olU$b8u6-?F0f< z+NYnPdo0Do&zYqGFy0*9F^3*b2W&42@r^=}`xUkcxjFFi$T^nt?c>v4cC_xuCYY3=+R=(7OeG~(1K%(#)}u&`FQrw z5(WoN`zbwjP<-_3d=||n$xTX{pw|}V?|Dw~Umc;j@bpj5CJ|4S)WKi>85J4-_9sOVNN`kI(V}@8$AKYXPj9a?@WN(ayE=rzTr8^>d z4R7(_)@BGX4*C z4OJ_sb;qXe`$=|kL7b#TK-FJ{8fr)sVn_Nh*y?{1%o!q?$~|v6 zWy-q?q)49o!&HuHf*TN?H7q974Kb-Py4 zydKQHmY(N>hT(zGo@ANs1`_w#IPENhTa6`N7bi4`;P2s~@`}(8+aO|3l)L1%wrd3~Wu&`R@3AJ;mf-%dVMBY~iAgBmH zc19H06AYc-1t9co@CK7P8V%WJ3LC(4xJ^@TP%L!C^&-~4h{fueYqos81}7oz$PUv7Rc1%Uop^mfTA3&NGKVG@j65A?T z8j+$l*EKJvuHF~O$LTQiH7#kGZ?5VA*vDD3uHy(a^xogYuxXmFy^j6&Z3$Ei@KbpQ z^{rLRq(7tq+t$1s*&w0Fs?3}dx*5dv2~{OI*t92c=#M;D4m1(4bXjsjdqqNmR$%!j zk63YB8dX+NBKZSN0O(-^-8x-m(fhCDv$lT3nJWrn*g2aO^-AL6E-g{1(Uo+7*~B5U zRrvTbo?qg%PfYu!MV^M-mjR2}IZR%7foh^xHA2fRQrG0kG9TnH&=NlRB7SIg-lPfF z{_AV02~{X%_9$WEA&k!Xr^`I31U6uJxDqrrD1auFL8Q<1<@`6_x*bE`a{KQYH#7p_8^2QUS zZhhXiUPP+_5xcR}DoI^cOoRC_X_4$r>-FOy=v`M0&?-ejsUkXqOl|TUAUkIJa9y*1 zO3EA*Qg24(!gNz3?e#g|wOFb^16p43-aV|jfW##X2W^i&UXFXzSEjf+VO6e%zAFk& z0Ni9ccWHy?H)LI~%Y58SSfG>iqRNG?TN;KsiS#8VF_JPQH%(iQ0m)3}M%m0x?a%;s z>!y@OHzg$1QBHe7-xZpnxacLJ_@Iw9={og5-5sYrX6N^)@JeDNInB4z`YAaUApUS{ zI(>=GP>Qz1++GItfi6HvbPSc8AA=kGR9En4Id(Cl6*fF{`e=VO9%#lbz8zB;By7Im(%b4fr6(;fepKm z`4Tegu|7<|K%ITyMcp;F?r;`4U?YfDKkM2+OBfrmksO_wKr?fVWB+p*bHx{DzIVhD zgE1%QK5f&SGgrbVH?V%-QUPM}8L;0~D9LBZErm0s702Mq5Ip+^G~J_N9S^2b16*ok zV!DCQzv~4FuU_^jP@{6;&aW9wU0$w!7&r>5Oe=E}q&Z=3YL}z4m!{|K_X3JMDZ$^W zRtc;86%F=$Lb;`YW$UPDf{WpN#G;0$lrY;a97@Th(`%kbrRfFa^8t%;Xfw_WVnDv* zan+berSX7W109PcT7G9T48t&R&DkExZ=@T6irujB`F%j8fCPH)h)9sxgy)665csCU z{h-y#v|KZpr5k=Dxohbd_W(fpz1h)Z@IPo8U4hXTH)x3m)Af&9_3y)x5Iw;RNV(=; zg3e;p7DF1Z8EDGSwzmg8kHOV8agn}l@C94sv?=rY6Aon_^C|OG9(GdQE)DXu*j$da z`740&jxtFr`LkCTjop9jddM_Ws^IW2w>X@kDr`ra6F$dKQ};(vBc%} zAu`)A-i)6eenTI8T_c_v)557mY0I1|gq5#pR=z3npnejWZSJphu8%Sqqfe|Y?=sQ4 zLYg7^_Oti-0@`>jWWQ(H*FX*S4ub9o1A;Gf=9^JESjfIa1fr5T7JJAA=|WNGb&X%q z)6JSSI(l{3aO4X+w(QB{M(DX~&CFBX(YVe~@$#e^9h{lRBsH)V{=-385S-;!Pg&-| z7uv3T1IT#3xC*QcFv>-j6+HnlzhO{%U{xv9<=#lA>mCf!5^Fk*a}|4#tD%Hw1w-V_ z8Q;*)MdC8;Oz&WNj_u4%Ni2U{c1)jqr5JLLu_$66Hx6AUJh87h<{3k@jyoDZHPX{9 z!E+4+rW-hcg(uSz^$t{jk1ZVHJiE?F2ESIytOn4}Fs*Mf87qaLV?oUQU2~rJGe7MG zEP=SMrpu@GjVf&6?a=vUb6u?B#JqbT3n;Jeav|)Nhx#35*rB4F_B(e~ymQ!Ax6C<{ zcdpOh_5Df1^9dwSfsdi9ffU(-ko+YZK)zA^9(U zGi1|=Ki9pq1w-B%3NmH0_D$I`u%i5r)Vv|RdRd7?k$Jr#`V1XD?IA*Io^i)HnmZnE z6I}%y`gx>Mb2Ay2naeuTIwiBFl?D6mO>#=~agZNQjd8-bw zJvvH9k1#$jte>O)>q;WS`b{tsKA@go4~6;->f_S@*hcg5V0nXvwB5pNsk%L*?u+-T zg=RUy-y-V%8s#|wlo~Fk{!ZCXqCAl9$g0&W`VPkuKHhT+Y27F5IVwFzyy!VhI&rm4 zh9~F5)1;=6(T?2&9^ALhzRs#3J0)gKhX<156kB61k`(eR?h#J)F980C<#&!eixG^> z6q$x}Q!g0K_F1ilJ|%1+YWR7W|D(}d(7K;$Csok!DOLqF(vi{^M+DlaCoVItq+n)7 z*BRpcOz^5-yb75>v2Nzi$dfwd`$AfAeCfv>GnWT44J95uZ4h@lgBYbI#lVMh!bcO0 zWsxK65m$~Qck%u=n7OHyEm(kIfo?~xxlJqi2EG937_#q&L*OM4G?iGqI@Hk*O(}lL zece_=v9dO{`rd!mQqxmHGQ4e;)tedEB;PqB&s=c*u?OP>=I9Vx@xz)0837fD^U`jyT84M-@;5AFP$l5ZIaMo$r{GP)+?^{j3l}aM z;BQ9AB`<-@?cR)MwW;t_6myZ$qxf_~qceEDdkAP1!_-S|$m}`nJx;pVOnqXPELv{0 z!lW-zu(;3~$# zHO=O0rp66Qd>T>bAkO_+8!|-kTfVnqK;zr2OVF-_Zag;-O5JtLu5sDp(f@<7E7r@< zc(+ez(&iJVe6b{ zwnq-VK6?m=N7(7QX~UNxW-a9SD`O_6KOlsP+hOy}2Z@~hGp{9MGkxPB$hosc&&VmzND_npsAvu`ibrFq_)~p>0W2|c-+3U2G8GeCJAk71k{*-GT(bkrpB35)lriru4#HbicY48 zqRbqUdG%Uw4GnI&6US1#{nJ7X?SLM2HUgOzA6MSM`w-8omVEluSj1WdTXi3&Jdq84 z?R%D=4w$bSP5Q!O6xl`T;9JvS=gefqIjizgX4^zgo(VITR79+zi z3pe0Kn(hJFfb}Un96ox7f~;=6v2E;(nlqH}5e2ymf%B6&n$wo8l;+Dvr$_jWKuB?~ z1^lq-qkVzQbL8b2jsN$&Pe0fhzeyz=U2n^{{r zc~L0449Fo6f^Gj1U)Aoyh94;?Rj=DJZd0nJQ-{>xW-_*5epfi(A4dBN^+Q(^^Gt4} z9L9B^hauumT)c?@!uVbZ*a2e6b^|Y z>)RxfK@<1e#+^AJXKQ?p zo&K+DyJ4vsac92X1o7yZyp@Xdc602MEJ00JA8XQ_=E|_d$=@5W;3@KjU0{LLyLpMq zw-MNfA_YW+GV`-oS@W%C4cH-kg{KPX|FUMtpe7@$xt8rvK9$`lV)wLi9Gx-tp-dIZ zKDm_ko4m2|j(*BHYwTG@kjz=e==;|z5Y`Bx`YaT{nFS_$joSaO?#jh40FQ zlG0Q5gefpqG~QN~=XGvWq*utH3F=9c3H$|MfZ}2=D73u;*k+EPOE;1!=O$Op!upUY zBfS;GM?+tn2{xTnzk;)dmF%U@4b(bpnrXy)0h5B;%guc#7JQ9=VU(g>pz6wi$0=WV zhuKHipievYS?)G!OFx!|T7$Lx9uI6$nb1Q)AzQw=tAknmr|@1NE;z=LeGKhMg`Q0; zS72*Lkm5%4}w3z;wNl!j|m6M6}mAbcu_kjY}htgkO#qrC_cX zL<4sM#BryttTTF0m5j^rj^%wU)3lpGxqZ5umi_H51$F%L6rZXSg$6=ynyiZ5u$-KaVF!@rC6av5q5n5I^EZlgOo8De)BGqecFg-q^HY9gVK*I4f?YRlcHHxt0yut#TY zJ%DL$aM2s^?630}hu`0WR|4pc)l*^u779o%nElyyC>$(gw&09PrjPB)m`-n}rs)s; zb@}W~CIm1aOw%97O!k=9JXHA+mbPoc!#$*apmZHY#@=F7yCyywzng|Z0_c);?hivn z(q>VRgN1OO=4uXxGmdkDt?2~dF6PMM2qPIclkp)642h4|Rd=GQqBnBS`NT{KCW z`9n(-=>Pcv+NQ*=uvnhiq9M6l7pYf%_F(>4bdnQEFn%a~LzG&Cr7IwS^%0m$xC>>@ zqyh`;9eE)~F7v^3Lzzjgw4UQG@+#194}0%Bt@Nml*r*Sh*XW;btYUfA#wHzA#*GfG z9a33Dsr$X%m0Gx*HUyd4vi>IfKLa3WSP7Tz8r7V=Kx&R*My6Gr`v?RHz1yN2(Eg6M z{VovMfMWqFpd2(EtO_>9rU9M z>W(SJbgSf0#o2qcZ9$s_%Ijdh6wBZy!TBmge)9piiden};v*^s=5-N?P+)V#OTVO| z0r&JN@F{YyMYD3|FzfUK$x3~L=krl90pSCAFIzr^T?crGwjZc+5sfu4fQffOpWK!i zm9l&+%)dfzg{kYPEgrwiAjY}%j^F|~Ik6OKS--)G+Psi!Ra1GkH;-b~4Xzy261loO zx+5Ca9O&^CveSn5HSK78ZecZD`zSEe!9G7kPuB(eThifbrq7IDglgw@rJ`xNwuCb* zRj6XeaA{feXL+$J1k;FXFzVY)Am!D2v*}9(k~2ML*yDYLAY<->df~(z^&G2xj$qSW zAP?`@^z*Gb$rHsc+lDb3O*c)9Zo37(<&UM6X{w57{=B;kb7`kkt?>EO^@BE#JV&VS}H`^-)7Wc+yC@{9dM&c0(e z#|A~s8{;rJL|n9VY-j^3k69@6EffexM@+XJsj%sripn1^`FyTQ{?)29&x>f*F}C}6 zdF+{#{z|ZgfvshxKDOB>jItuoe3%a@RD9F<;^a{L^;Fz5&X?IC;u#@fDOqreAa zhX56~JvL7t3qq}$glP;N6`3OZfXf|$9`gmH=QEGhN1Z0zr@bOjDrOAZ#FP{Y<1bM9 zTM-)=)7JmH$2@e9R&8_huV^%7m`dL(WoM2FO7qYNt*P~6ABj#Z6(KX97&J-Uy9oa1 zz1d6Q7j?w87XkqGW_%LKftbW~ERB6U&Nef2qj+_gvicmqh}S7ABg}lxF&5ayFERtV zJ#!7`X6}QaGk8*Ss}6q&V^XqGD(?{^U_`7u2<|!dmHRrXAv_%L?TSH(Tl@00RPdSG zcPxmZw;c4IEe3bw^DIE$*Hr?IGWFS|8C!Qg*Wj;(eU2|K>9$DW2cbVOrAGHLa#W(> zOBS9V^m^M?_7tk0=WN-i`&Q<`cT$2f@slf)Kex0V~|Kqd_^4c+%$7BwycP>9q5B z{2XA2tz38za*maI*|I9zkbOFEn{2pF^$vSXv~i}Wis=N@*K-sstr&x2Coew@$%|3; z2+_=#+6XeM44P)4%QDR@5WO;yCw52(^T9Ht>QHy@626V zL*^GjvY{;2qd`d9OAeR+jMF-zliYFi!=Bp?c3P`UDRZ9ae|CeuP@6JELkC6Jq%>M` z@BIPwGKhV=P1nXInaE4X85lT-9|1EJPxj*QtF zX63#dZY~4Q>_}(saqT>v@9y!{t7%6~$QiVS%B}QCpSqYRiQi0okBA11RHy{|#1`Kw zcTVQ0=>LHwj$bdFshIVD=v(O)Q6OlbeLXS;hOy19@EiYTz-Ei6*-M`~G1^uZ?-jN7 zTj8mkaKpzU9BlrqTLh|fr@$Pd1WER?Wdt%P=yBiRcJ%x$**Fb##+y?E$MtBL?7~ax zsRRam%LE?{AU4VQ}rhxD74$G zyuy^P0F`5m(C^RtGd4WaGCZL4rpONw886)Dg4u`gb;?ZJ6GNu*ULT2Ixtsj>4Q%x; z!xf1voT$ntE1siP-9B7DPWXPJh7EBE{o~z+%>Xle31Zps4$SK5KElde0yawvI5JpE z?UD?j$7)Lw0VO)$<)7qM7RBhLxM-gK*&QB<3B96)B%a!pf)UQSk&F7Y0wppBdh%$dFcJd zF7XWc!brrfNU~{lff>*U2KF-pC+^jMg11?D_of-<$bYNv&$xQhRPuYZc8>s8K&Zb% zmeAv1HS9dhb_m&vBHkr)G!naH(P$$J!+iIWOg_3mywWDNXs9!l1W$wkoV}^}0oJE~ zHX}RLHs9mcmGB8puHh2^Be(Z!sjpRJA+@%GqV%XMa$@C~T9Udq-NGlD; zfrelJM}9((oZOiKLJ@iS|c zH0!X(7HjTO0fI&4h9|WU&#n}f{e=QmvJ74bEsaV_sSxcHZTd+xIB)yBR1Ct-;mX$u z<@_tru}6&|*4S$oGaV4^0M>j{dK2+(m5r%*X`B{67Bk&K2*^~VzhzT4_JxPYmUjkC zb?b;XXD_2s#r_WOO~ubYf~mhq_N6>$wN#juRpEm>q$TKS*f#hWS1%&b?*nBQZ4%^p zMG=1?1+^u}LjgYO>-{Us(0F4yuiI~G75Kn&G-z@|N0pcM)cnZ4G7$ev37S?yb4h{0 zA58rN=2YqN;$|QocsyplNka(GI%d4Phk`4PrIm^?u#W{N=I6#+qQEabDfsAgq9X^} zceP5W%1o659SYbQ%3+?{Hr@CY$k!4yh{>x@q|WI9Ase#2n#e*~(?6SFU+vIcc*&0Z z6T8ko0j{ir*7l>Ve*TC!(0(M@ti`=tsH$?_{YUAG^oxQCFd zuvI=X-KB%NnRvzgqXBe=ynL-5d?vHuc=Wd~5?qw+l}S!B$tRyzl$arNQA)b90aLq3 zP;wSqEEfARZ~v=6(p4VKwW~h5Zgz^BF)>{0@Ihux8+xu4=#01ID(!dZnTqcPa;NSZ zXUhZIeD>s0XfXyZfU-dU29mWe3_$QTCh9zl1F$wm_ln-oVSQt!yC@gz#CDZ`2l+7M-QZ$EmP7@tPmOq4nRbWSD+6vQAZ9a+(R_U%M9xN z?$o|kKU6>-q}gIqL@?|b^tlVdb8kP^CLwsd@SD2+1C5Q4%Mjf(?9ufvNHC;1Ytt?RIoFP^|Gf?eK% zH%jwa=i4mi<3s44i928e*8E1*`8OoSQ{#7aqSwL#?5P4RUkpcl>|FKOZ*@w=;iUE@ z($Cgjy9)-X&=V~Ueo_l&&KkFgMBBC6;H_hMPy+}xK!vlV6H!C@dbi}`Z2h5Q(xjBZ zPQzxs0h<18Ec#xQ#hc8WuJtd-maJk@^zUwCE(mdtUFbJ{E7-+UpBQb%)5yg2t86^% zOLgn)Ip&S^WQ)R6&rwy=u|UTY&GNQ%@PVtHp_-!qGsQg=jj63J25Jr(q`2BCZ&5Y0 z`FH~jo?o8?GPeJZqxX+$+s^ksB^iQbLn6r#B%7p`4M8?($2O1{l1{;-Q%L6S1=6`o zdY^q3lDW^O^E`VFkan88yJwGNlSGms$Tn#t8G;PSRJI`)NN4>bM_oayU&w5e*sC`rTf4BkUl!!&-?Y#_j~lI4_#yh{=TfPSfUSb!;Y;KYZ%D4 zCLfO`PyD0al{7ea8wc(q)D}Obr3miIXkmvmBrfxXe0K;yaVX{9?lsa)^j$7P7GbS^f{5DOXHNlv z*#lA3iuc_95}2&P%gxaUu;yx!-kNlvvGv1gb_&bR#E`&jTlpY-yTbXWHfW-q#au5D z{5m7bU7>-BGU$-xdp$?kvaV98|Fd&=%0PbO?2l%2j2zCTX-%B8T zvMTgC8!ZlmbX}S1GiwMdK-h3_yTLCu8E*lZW}P|lhds=vJ$LF_E7?9DYAbbC-Nk(; z!_of`7Wh2uTa1MdW%4NURR>nN-1aew8TEw`=dR|8ByTC0@Md z>Qdv0#W|1u4|MCcSiw{OzC(f`Q=Q~{qnZcw;a?DY=;TYEnY@o& zq5a;bRgT_8Vb=04%+uEb07R#1e)gh~O&<*}v?sY@4N3m|9TX9AST~<)ogK4|RES`2 zvCBwV&d4>j)e|xRT4(d9bl3e934qNn-y+;!5 zp}SmYhU4L!*B)($1gQDpY4qOp7H&+Nia#U|!mT;M`KKmNT<5`0W!mw_zOK|1@JBPX zYxdU-=Mi1}5*l;PI(~)5_37+?14LlOuq8Ez&7G?AIO@qhFQsdJ_f2y%s$0_s<451& zP1~rF=^xo|1o=|PG52PUSCWk_lQR)^_YljTC?_z@R85Y4V_?;j(!C0aTC!iQ3us@) zoG-pXkb9XW_N51XQ`stC6On&TjJTVOt+OTd{?pQGKL}HzWQqNnZP3+z55m&^ zkRh@(W_s8T@b9u@L8in%%0a^D2KP9gGkT6x2FB;OK2B>1dL|9J&f=@G;~xIAAh!}P za&jx0IPd|izo92@8{mhBHe^5y1izM|ry7m`74Xe=G#)eRjobDm&hb0KtI{PtutI*+ zFs)S+wMPt*fA)xJQ!r2OI0p=oJ7YWpl?*U7sekXoOqzv!a@YFM11}q{AU3QXJCF|& zqZ>Ix8Pvq7-RhuGKdpWNvCdlm>zuT&9k;liY8L<`)ldu5-c7%&9cl4D2vT9P-9QeYmg(&4+ zQ95sT`6(D!e3)-mV|y!0TILMPN#M5_3D$gL?PC#3z9J`*OGsIuQ_XY~@}LgX#S ztsNqn686BRb6Id}j`he5I!K6T(Rk(M7fxI5FryGjbN0C#zh1=?#0@i|?pEaPY8 z#nqbf?BT0=f#Dx>80*3y@8H`?%dvQSp@}UtLBg*jLdP~8q-bX1mvZh)F6fCFqT#;| z#hY$gu<+^6qb@^gAv2W8KDT`0v0NE6vgcB)eWK6!01VrXM!|7;)sbE>eau_q&9^-# zw%eM+C%)E9Q!)0;roc}n#r@X5Tm~V>Rg{pdrj__+u^5ATb+$Lve79(VMe{Y93HAFD z7eUGKAUYUXD{GeZtGo!*Tx)BWc;q1kjua|Hl>U(RUf!oZf$n94b zKyk8Pj;R+#8*TT6{`!UHoH%TR%=Oc}gh&&YGcnHmr?x8bx@}hwWl3C|w{!&gk~LoB zpVFb_j>@=~LvB0TZ|}!rhH|gR&-r?Eh)u}73--s%rSZd)gZg^}8Jr2X6}Yh`2ARTt zWW*t0@(?2mY4gXhxf~I~l%vQ4f5e&CcpxbJN+y?v}5J+adjLI#uN-As$s!+f3CCwP`d`S}K21*^PEF|FUq><6OBT4b*01?GX0G|$yH zY!m3Lv%|RNn0QXLJkS|iu_^s$XOhX+OEt5_%4SLLwIad5}q?0 z^^TQfE#)TkV}rY}#D`mSl)b1!;uF$9PhC|pppjKl&C>lUA`_;me`@ETKt$a#+$700 zp(zC$|5etIgJ4b6${hpIQ{Xt5=W&7Yz4amvv(vTWU}?u)77x;uf$Z0bRK7hIs1)tT zW#=AK5JHr$8~6~lCLU{R4U@O{+3W?JRs)k4ip8Orzi!-Ls_%Mahf@{mD~1DG^!#Ur z&N6sE6Lq3%NAHk$L2Kz4ytJS3nX$Aq>>EVV&&h27yQ?w9{(P&rGA1U#z^1hxtnc6u zWpE4?{CiyNSfGJXJo^UmP00RxFS7?s2?ADAZd>Kluc((PtI-_%O z_G+-Zl)Wg*VhkBk&da0z$n_BCc<>PLY{L4U}Uaf7DsxazPfQcXnE$q$42 zaG!g`QJ1b^=YDGxAaA9$3EpJ^e!dq-d&;!l=oFydV#gQ`nR?>oM|I1?%xGZE?Op)(jrlY)v|cRd(=MIOT;69D+arp!Yu~eBov~jc zB;o5sY{Vg~Rnp#a!tu<6Y3@sLE1{nqPs}dLqRiJm>Q!&|vT~D{P{I47i4B}W_ZAUc;Vi>(N z()eq&OILbsfTR{6SK{4*qoU6&Z7nRMKIfta%O?$Bq)gcFTOLZSfV#ljl|b!z$ztXB z$umVj+a}YrjewbiZ8~KA*_uTk6SP6~z-+>BT)xb5)=GU<1lInA#SVq6tZZ828)AXVkRglME-008em^V%ZWM+wLSODF2YQrk_zIN@Omq2_nB_*cVF{d z3ev{_eMk?mmg;UU3ESDx8Tt9B6mu346pQ#4k)41T8j7O!;PG~&4RKA_UjoR)Yh^Nd z)o?wkXXGgkhj%HCL%vH)@e>E|eRlUin{ixZ0`b*7Rsl3)ztL6`PPZ-Za^d1~0>0v; zp4o%y(W{t#BM7sR^~T*yiY}`3l*XLbNI5yKO7@gT{i?ePZ$dSWTQZ+lhm%lXVmQ7F z2ZigiCSV=5ECpV|u>{lt{sKKhR5HV2@}wpUp@zy_KS*`>Y6cF{C zfnTE0$F9&VFngDYD^(QRs;gDIBRd(_a}r!@9N4I90d4#nt0=|{;WE~8N^h)8UJmkb zoDTiS$cIAH`oaJ*;i|0nf`fiybX_j?6#%_U4gaUD-QYje6 zdFy`labo&Wo2Gd_<$EPXgPWHOr#6Hj?60(oKT5_6pgL9kGn_x)ZjZtGqgIWOj5NXP38nCLCUI8c$O;S3vq9HlrodB$U@TeNTWAeZve& z)IGYcH@}xMa9SfGW!D>i~F+_ z{k<9oEIYJZ$HBKL1< zo#D1L_&fx3g%&~0f~I=8$iQ@9QgPfv_@S*t6d#1QTVDcF1uxJWPg*ls_Cxk7zhs;yGC zEO`Dg(E1O>P`FLYznSMmA@YQ**^DpL&K-DYEg4V@J5p@H@NdOj)YJm@0B(WPxyOy- zkp|Z`X}#HIH2yRgW`nz8r`7`Kyk{!xTYN!9=7>7kyD&}u*Ed3})rg-Lo7f1lHUu)r zem~b+k2yl<*(n~n&wchLv~FfsEu3eK1gc4f(f^nfhGO}eRi44ngM4#tQ1ue7C)&`B`UDk=NpiGBdt??ok zQ7=7U)Pgs|_eWFex%t!FGCWXRmNpdJXay5fKWGTQhu-tOjOz&KDO2qCXe#}Ig}uNN zkm{+%!R{k8A;$656T1q`6qj?JiORNA%r~wgO0dH+(7fDHO=7rp56yI zj>ClKpGssAwgnn~rbQA30q?c3 zWdY~@b2PC573*GMArn$`dXF$kEp@(T6SfEOf*XEZ7KNBN6J^_tP*)To!k%B~*@=ttO($1iYrN?c zk}KY1CD$uI`qHx8YU7ju#e>dgHPh?69#7kA9v6===hQj?c(!NpFy)pXMZF`?fI zO#W?hvNwnKZJIEVx5?ITE753&&gJX%d#dK%XOh2}Ll!jtIMI*6ly=vLb2XnX*Q{p8 zW@~iqzmvHTD-sl|Tw=efLN6*bLPxrk$cbcz>oH2?aw2KskYyU)%dXyyU)3gs1r-E4;c zcoYmZBsQAo|2A6R_z=A$Szn((J+>PcLj?L%s+#6+d#c1PV4xj=5J2R{ll#?(6(;MS zT~uXzaEgiF&DZPiXQO)P+!EaO*=YNco=e|~BJjRW5W(JtO_4vfLFo!+o1AzfCK7(G zKkDuSITt(mUv8KHHPAfy-d9a6;$bFcVuDRB-%Rqjr&8B}TLL?$A7vYYUm)wG1}J)| z{7{%y4Kuj~(^sazHtF+qX*vqKq$A1H?bm|-Gv!sSKESOb?&s?m68N-4l0&aW_4-d7 z6<^t*I_KPJ=p`MS?JcF;RCS|o;y_3qojt5F_Uh(l76oQYc(uO4FE`JuNa>1yGso|} z39U85;hG#L4riZcKNpQIuXOS=`2Blo zv)3WO*JqSS>?P_OWA@QHZ!=RYZwJ6USCfqV+6|lywfd;(^o%b1+Jtgl)yuMWHwb^u zCA)bt_O0R587_#3H=H&nKpey(w$HPlGdDa{Msqo82^q$s^gfbPO^27zi0|9T6I0C} zhp;q$2}9?9lVcpoBb}hlV|{oSi{D~aK*?U-;VGn1m9$J6Tpw&9j1&pIHln9Orq11B ze?-r$Px*QmV)9g~v_seGdw@)SPRu@#a4Xb8PxP_wz;2u;{=FFYo2gy9-@r~i1ucC8 zjVt9eV4e66K}G)wb{=$rJR2U~j`2__0UkqL`%Kn!iIfFL{(3?`8Xg6-vA8ecqJJd7 zWoa>?j@n-URv-Nij9GELKDJFi$oQxW2VFp_{VD?cNEeb$ormR_b(l5GjcX&wZ&`t1 zO(6o8p$}lHyd4F#ntjYTla)tYb!F`!46ysPWKD>L-}`h%#D&hpc#?yd!&d-9PCD_# z@HCQYhQ#)k71vj^ z@z>OVvoqLErVP(znRtd-tI4-9AZSW0oxTCItIFUi4KtYv?XlK87(y?nrjc(-q?lQ~ zcV_aU3U|U!;k+Dkt@M^*N3RhuL-5a$B@|5$N2d@tI0!x>D?VxU^RCIBN~m{o$TI2f z7p=VUm?fr-Ck4MpS9BSh>jgze@GiH^0?Q@@Va9;|RqS^%<43qU?>n;TKp-5YTs|#<#e50-t@Y8lXe@)(PtclJnd9_t{yu zVmwkT%q{{^5{O+Ya2$6=3Z~#YW~M&C?ez{u!m#he1?1TvxHJsrVQV1qaYF&tnlep2 zYN}X@y-^@G$oU@8QDi}G9}u}3_0gF;pPgEM5Cr8q3C&%C5;e#F9y8j5WuCCxxlG?q ze1!6&n8x?8C83z@7H5##r14puYE& z)gC^oh~G{75)H@OEs%i8T_K@wbf=;MeMPge$Vcl`)mo;dwaBo@4-Wu0qI zBWM3~)C=SfXjh!B&>QIlIe9YnJ-HguKQnPr_g;2CeifpRV7OzX-g9=Mn_(=v!72qX zn!KOB!KNeUS-dH+*1=(}HImiW?Hm$!$e@fXkD*9@;=p=Bu?0Q!z$>c{>q(lgAhutj zrCIuSu*W!Ut8&Wq5rzB21pw=#{O<;9Q`dd+p$Ws_Iy&I$DIh5jqTU9O0kq;8S!s37 z4@b9!_`S9pRI{R*vURu5f$ZqC$_$UVTz6>mPGC8PswM2B_pYE$DZ@YX4F{6E>(`j^ zt)xt^aTixjID_{o;Cf>^{j>E1oYg$iKeQ7Qj_lJB>$xIJCrj8y-e4Jw*;~DRM!i)? zkNTJ0zuhpE^6_xRBvR{<(d9T}N{?UR$*c1ID9nHzA>;x}oZ@PH z>66!55TKgk{YM{~nRQbAkqn_OQIS@huQ=fuQixcwP#3rlJNn21S^5F;AY=NJbnFO- zhJng&LH&ST@c~VEbjJF^Y2_2X#mc9=nxOwLGn7vENZ88$6i^%n91HXBof0V z3&JfQ)0H&An*l(bQKU2)&|ZOtnjj`xiDb1!zOEZ}u|#K!Zqm*Oj#6TWv)WUJ6oN#b<5MaaSEL z;79bxDVX%j~IO4)v#=rQvBBGn0!{*yN-)Rt>Xa(G`J^{SEXr&8px zJo~qIh``z{P=nzI@wEAQ+OCQGc}Xzu>}U6~gkJc!Gq=UQ;7{9Q5QJ8_{su;slnL2k zE9O1kxt{@R&7wWC+px6K97QQP4y@Nlj^SWWC&4#-gZ48pmUGO~vGC>c1t27QCa+I8 zlIKyCIA!aB>2DNg=tq#@*=1x&DHtWL>FtxZWH^nKBk^MrEkQQnV$mUVX_QeNpB8H| z^E~&zZ;OM`bQ}<8?qQVASMji?x*Z!puzfUS0omH~nq~edb~fFGUp>G{7DhX{Bls+y zx&LNaLr5*cJuX$!x}gQ>snL7o5I5&QcI=tVF|gUX&>eQ1DuXGmfV3K04y}3Ppzbig zYH)7@SR4p`IWo#!A@skqbE2-tGSMs~-2=k|#Mx7NYW6T1B`XbnW%vaHPdYN$Cp~yP za6Z|AqL?;*ub7`}cyHUxvM@0gtvWh@BpyE`bl_|F#9ORn4<8?P1dM!yB&hkA5}g11be>oMF}q;F5@ zsiGzbwv28_@K6rLyahGn_6#7JgHyLu&Z>3Ka(yA0k{6Uh*h_soI9IVwkE)B@D#7Oh zb3k*D8r(r1InUPXTA?aa6+=|J&@v~$^r?2|$RNhwO+$%L%d&l7cpFAS*NMG8Dwag` z$QHorYhD=mLZhb|e#|I=E5%CGb&S6x+Pxzcr69^w)z&x1^b>L#!v*k-s zn!-m~Eg`)pv-PDWnjSg>&s@}4y*7ktC3~_OFKjWoHpY{t=K!~^_vIVb;^tMv`mGK~ zoLXwAD)n}tHuD_|Swvw4=W*1%?0}w}m>i8fkJ5ntdu4WXIkLQIfKq+3vOi~%7DQ$Y zO0{uc(Zp@{TTg^|&aQmoEhGzKHCKI(dlpJM?uDoYBwDAq`0o#dBztlyvI&C^IDjr? zFSBe7d=EQU)P$-HO!QJIUCr5{{K^Op+1)1M;rCd?_3?FK0?z&|n^D`3Gvs=5mRsDU=- zPB+Lqeesqulxz+Wzs6$RxRf_P1KO7c!I<19W88U&666ihH1D|hmxkJb_kw`s@f5S` zjKu+;(826Rs#1rej8Np%>B)_CdItd&o>_Q~7~_VN`PD{X%>+ezYlFRjWHGvM{38ok zS&JIIb>~Kun&0zu==D&*@hZ*j3Q5>d#V3a5hp^C?^n7qlmhxDszG)VyIf%qupS&jW z7M-gKcw_Pq7Peb%wzCuiV6_M4rrCU2}FAeXK-^l)$9$mYKGg3W3z+gLx*i; zl*=QT4>^)cN&enXYXaK=c9RTE^S(glb1I7tCyzdk=Nd-b9i?!)kEm?MZg+G-9V|u< z*t{J+gKLdV(_&E=j# zK6{NVBsfi86eAj*?H_1n?M(Q!xx7i-+ON{MyTE5I#jPS*_Vw8koaG!D^*hJQ_)219*6yEjPYm|osgR;*rP~&7QC^0ckGWgK!D^|d zkSm#_A^r5SRx8%rwD9L+8-_b~!z9u3Dr zr2S!oR&V-TC8n;SRv`+%0;4DW%xg*6bgdJ>K)`vBPsFbfUk3AJ^cLW^SIY5B@e8h4 z%N}c-Sj=p|&b{WFLD4^}@%EHy@CgiRZ@UW7#v5FZ&tvVpCT1E z5Kt?AE@P!l1A<-q_Ew6~lbeyX0@Dp^2Ve;*=l*C%Mx55;UL>f;|IUi~1Z_MR{iQMa zvk>CU33A?wUt+(WVq)x}as#r?QJ;0&P^_}4G+whKHDzFh*d%lxUu0Ggb#Ts6u^OSC zycf@YEoJidC$e)xpthtkwSSK-e0x~M){O^^y;e-Xx%G<4NPE=wAw&2*h0vMX5ohix3$UR6vx{}p z8Rgrcf&7bud}63uKtlE`y;j|MjKN(&>j7>HC}0@ONSBXoa1SwZD&{l1GquElFZfeVaTWSP!d?X72mV+TfZ zDF2*$F8HK|FxAavmH6>KDA-H}+m}t(8m!^Q`qar}0RdY+`B_W^5YD<=$DCPTcKWA0 zSLt-g12w?LTo0lhRP=nOk8DA{W+KMm`;%|Ch8j^n)h|mxciy-M-WSZbhoh;J+D>s$ z#u&#Fv|&4PRS(<3eQ2Sc-Ukzvtx3R}LA>8K{GLR7i-`sG&kRg3P~!_)TZD5Z%o-xf zoJer5aDGwJS^FXIbeQQ8V@4l^J6Nax5&E$*)=>V}22noT$cSRWpB{m82T88sUt z1D3&RSEpM_cl*R%7OuV4%4g-wzZ66WUEn|(kr=2g&+ZRy7`_dbj-mtOOiYl{T@wu= zf!yq`V+4hLE|mi2YeYX}wJ4+Cv_d}nG0>@Vp9e+Ev$P0iGum5ovHx|81A@iOI%9NI zvX?`&QxPl4(3z+I*jmODirSJm_kyP;PhXK~R<_6=@41<Ee?1jep%Sz^qZqV@T?25rCuwL z$+;O~z6Xc>E%rj2T{FL`b^rg9nwHuz&F(vJ&m2fExHcmEf6sHWMzTRS;d`eB{zHwl zL)NYAnH|*Z`Qvp?4JgP<+5b)x8~3v5=1||GTd@L#XWTs-gk8l7y%kB~mlEP-DLY0g~K zgBe0)=6b0{U1+(|WUFm~F6zLeez_!ZySX^2Z+ZzwUdlj;f2*0r_wv$~sPlZG#Y~@~ z95r9|SJ8N1aFEMeAmCKQ`FptSj%+i{_gmIk$17ff)57ow@&SmsRDHn%h98|BLq4^m z(EUnF!5}!w{sQt+Xf@(ii=8h9)ksX|NNm}6dCS6Mh)9}01S)F*$H(R%)}9+|nd`!% zrV)dGhKVdn%ThH3lyGS?yIZqqU_wpWU2p@bjZIVE22DpWj7S^)>BMu;vToO<`Z$HZ z(Srr5(1?!hJ7TfA!26?7t~uBk()uyvhJ21kA@dq$rjg| zXKwf*H>~kZ18z5}$&tG7&ohe7^$`-efi&E->(etq0&zcPj8v8ma9 z|4h_k{tEB)Su7IEjYE;?d`6kAdOa~=uy5N(GlqZgRO@Wa8&nfhHv7iiLh_ zh&s_#>Jr;rYe8@S=C+-hHT0~R__WX39A6$zXRoz_Hs|bcomz9nA{QJ8t=Lnu{S!xh zksXec7Fs6GQZ-5Lp-QgP*tR!r9Xe;-b?#U3yq*kfgf4{`!TC|4Z5r}Wbe;6eqHrZ&BSYfqW;DEBw-#`ERY^Asc(te}v5b4Gy!l%l^yND4G`V+5e~_ z3b1EFRFtBbv4xy%+#h^H43&rqxNIKyo>NDeP#bv7k+1>Npzo>Ld=RM(+6_CujK#1F9{`=ZLiO;^VPc>_1wSgmV&4CqL>aE2vH5#jk1@aUYBRkGP4 zt~Ffy=0pA4QmtbLqNuOBV5yX7xVk^kk zOxGi`E`wiuDG`AehzR@IVg5O>gK*Iir zWaF>nMvvx0`ae6JykB)dIkO24m)TxSFu!Tx!?{UN~m*p#d$HAUxZxrRs26?8(q_^fxce zKFxCC1tA$89m)i`U-4Xmd^s4L{8^ZBYcr5!JT@dkq*XO70`tEt2RKaa)0!c!GFtO? zvfaE5U>09fe54o1@b|gdH<^F0P=if4dY+|$;bnD@&BIjS`+&%lOf1-P<|uygv)0nuYGzz&;Y)n>N* zDA9R^wn@nFIwt8^v8Rx<nW0Sq%L_u!n#3Bt?9?&QF_jE>89OiYY1BEUhbK(3vZ#9>JY=`80&Meg#G{N z3hM*cX1JgoDI^$YNRJ|~v|%-i=@sM-BlFiji_Lm@YV@G&HXDQGg(XgqjrYj9KUyS60F33%kgX?a;LVP0cXT& z3s&k#3Xrcs{E?U|MwbXvs6(Xmn~{k_5ATK>7w#PbzG{c?4wlE2ijVbEt7h)1%?a!? z=|Y#)X*o!U)BLW$&bJy-_FPV>$G!j_nr}LV=m9q71mnGPbPGJK7Oy8zF%fM0s`@;H z)}|c3C%uRwiakaF3pWk)ri)YQ#Vd?s9W-PNS4OSDsg7iumVL$h^fP|F5bR^c4%KvA zIGmHoq#i_TCtfSZ0Gri{zvCc3+mFoF^(x2`QHY_&F(cD3#-=Ze} zSH(JYEX^4^_>|#A#D?#Gs!VN@{tQjM+5>xtN?&jvw?n4qI5H>niD>s+>k*!U$+gs* z&-8LkW+KN4qwoD263U2`U%>0rlCFdSh)O{JSe-K6bAAzvEL|^+gJnGZJJbup9C-HQ z1|}1$dzU6A-(nv%Qa^AE$4ZCQz}=L~2oSXP$?L{cWA=MYE1nRLPuj6$7t0E~RB+&- zNmE9v5gh9M7;p6}ShRH(9bO`U2v`c9E619gPsV*hwg7ew^nga^L&I6tZ1Ib~=#-kE zX};V9X9BxiUFfeuTtqjlEF)vF0ViSH=Ox~OiO`rbV%jq&2g!o&m z*u~1k0v!6Be&TdT9m~5w+daBZlmq#x`2)-v4X-v$2z3x=8!7;LMYhgHl{M*1_Lmi9 zF#-~*sgA-iPJ^+`;wGnAN&y;7y`CcS-$L>D{{oY&!oQ7Zh9yG;{8E)W#b$VyoEr}M zuujUW>k6T~v?xh|=T`r3befCXajkse=cOxlUAW5_J&~ffPj2H*_2PiOkceD~ce9a5 zE)H6IAMbg|Vos1?AKE)%ew)RPaj;0U8~qZ8-lV+xoH_m+lc$J3bw%yjogp^W4l;C# z+v{8B$CgG@VyLEP?q$WJ5-w%P?znvBA`=9Tnm-{#ce13Mq6?^gz#6#^KRn=Y`KsFF)&(r^KlFILZMUvtUiEu>8PBt(f(KfK$+FRu2`z+bk*Q}vC3@Q8C6vKmJ%8Rbm&>B$ynxrv%5#b zKYh@BZC6PV3!8M%*T=|6U>(#m&<9jY3k{t;{iFg&BgMOTDXsET;n7Zwy#5eoJ&%t1 zxH{;K#1EW?o$|H$V9UFBlg^=|gfX`MOF(p4 zx&5=nzA0rradyCiu}b!MJ4oRC{0CU+C4ihvT=ps1XI5q!Of4Am9RM?~1Ff&k8g4bdICA(lb(z<}a@$7P>r`*uD2)0Q5yjer8T4nURd;dW!}?Zzc*TY9HKn~@@m zB8)K=6Ugg#U|3EA=DBzJL0t!DwRQY783rLXlp>N<31z2st`&d=e@#S3t)gS)yI5X- z&wDoLG3HMDdD!s1ssK3~P!YOhS{sj!a(o74T$9}&@X|3J@YB$FOS)}-8c7d5eF`kQ z@JPQea+bfP>N69)rIOcn%vNi3l0O6(B_1Qn65Ziq<@V7L^mO`&B@*1EfCs7ja?tcE z$W(@TZrkJOvH3Rq(dl5tQnyb3KzhXn2eT@C!}B*FBC@Sv*PzCoScCp-xu5x3))Ip^ z48Y_see9d*4WFJn-i{qZu{xaa>Aw`yrY(`0GX6rqGSeXI1!{pVAd~n{g0iSC$nMF0 z3~2ip#$scd-G9wvHI^ix&GI2Px~_OBdFk~&V7p>YtXoVv9j=MCzbw@2+@ zQ6hBakx-C#S~t-T2-ePgC*5D>MPj1QC$`qhWQchi)!!ZxS$FNic=p?6A+=0Q2v%$N z?QuXX-p9LGvEPQD>I8W>vLVU(wf10^`Xu1mVQqZv&C^lF<{d?z%PZ6l>{h8tvSr6P}4; z`1cKA-uhe2SlJ=zxpda5PtL4n0@Y~iLq)7}<~;Tv0T2ZEh2==nh^{4FxNo*<@{$RZds8sH~K?{zv;X7mRJA+H$EeR9 z?h2l@RNhh+()S^Fh1}$A$D44@yuH`iJXfc6wkAoR%O-*kEU!3?f^3)PBKZ*6hjsElh8VbtV6b0Xy*P$4f7bNc z$kZ24-R#d@M`uMC2{Z=B!GXCgPE5E4lo4nAd{ZZ&yq?G#G6@Y3Dq2m`JP=7ZFHN=t!Ucd}PS#KGA-9~;!VlbhafSKUA)quRR@Nfv7yjXzN z;(F`%A_oWAH!}m487)7orHdyJ_cB(`*Qvu3(x{H8c;a9+=drBg z*cOQYoMpdqBshQt2MekdJ1s%L9 zc1X%d2VgYCpS3-~`yj3(%ctc&NnpO#Q7WaYdbc;2h^$8>|HZlXz$OJTp0x!AvsrHC z6V()A(?3qOt+D+^6QM?oU*F0xIDUzWTi%uX*k>OytmpZ-C=W75d$8?hs};-GH_^w5bt%Rn zI`Oq-P<~16fo=MAQSFwq3f6g*#49mdr?1pG_u3P!;t_jtRX^#ebH(}@ayhAA42px* zL^F$mBYmX~Q9F>%TclLG>}O7=mii#Os9)R}69F=&wr-jsy<0b``<7C^kMkju{kTck zfx%E;xFeFPP}e#niPSZhnV|af{^k}`17=nkQxtLMBcsaJU7>L);;%h#HR-;9 zLyz^@I8^rmq*tCft0_!=ERRK%5|xKX`f)q9VED$^tBxg-yoYltUu5!p(4f|q4{H-7 z{R0O9?oyAg_TmVA!B5pZ_eC<%(BH4QjS46J>zuXm1x>7tPH_KUch?#mM|GvUr@PhN z^L|PrjX?9zYb4nojU?;khvY}VWH-S!A+UrPMAj_WJZ$3_oa~K#bx>Pxw{A;|L!r1! zan}Y2UfkUR!8JvS2Z}oscc-`qFD}I?#Y2JOh0WK)LGXwC<5Q$7ITu>;IAxcL>VOb zRMpOHvvBU*seL#ezTwmc@$Z_E+?2dp6A!$}zeUv60N^|yf|};EfjvjP*-MWq*Nb{@ z&D&TLv+nn0U)km6vnKXBBoP~RZ+5c?cx{Q&=b4>+=J?~r85J9fkUz_lk1b-_6ctf^ z5cp;aJT21d0-+UWT9(ZH{RTgoV_&@<{4BM4y^pClKF*fVyZz;H{oVMiPC8z%#Bf0o zu*qro;akeg1U{SC`SV8V?;y*gz%!o+S~ zC2O=?_gJr-4fypah3~ogy^7G1Zxbt3&3D;R?XSDpj*l)KU6=YlJ|JXG2M34^B*S@w zwt6qTnVyaf>jiFC9MaRO!-EM`!0a{7cpeqCi39=R7GoU*&nl;Os&^mj9KF94*sPiz z>;171_t-uyJ4u7uw)$Itd_*ALSM0sD>)j?kJPam{HT-t@>G;qGDE`f&hJ{z5!Xl^} zerjI5(^8hlbvyDvEHxzDX0s;N=wo5~1GssG8D0F_%LeKB2$Tzf{tP%c7FP^%aW8;o z7421+6;~@guIB^6g}~Myle;;lQD%0xgTuBv4n_C{uocr*!Uo#DHvyJMax$^RO85Y-3MI6<8* zKVKnpFzm~x;XYJ4Vphr&<*zX`Y8aii#((*XDGOsQYc)7!x7Pxk?SqFudTAkfMz})k z>m~VzU=(}4?Q9X&hW*>X?N`=>I05A=%;j-*Qtx|4F&Ak>(!<{V^(=5D(L={wiT`lg|H11B6_Rm-thQF;#0*uW#{O93>U4`h0c$Qm;E~p#BxoDk>S_3$)%Oc6s286 zJ4$^0l-j7o10p2)74H>VXllI0MONs`j|g>d-N4KuOAy&OAIKLjqHVI@D~BV^i(~_ zi`gnJ+fC@{z=_I25nl!CDE@X@J;5;T+}7yM6(R9P?s%7c`R1a}e*N}YxluoZ+VL;o zLr`K71D;&{Q#bs%KjQd3CIGe41>(9$okF|4sdyWa~BO>PN7x8TGui@L6O3FL$sqxzhXlbwS z93_5I|K)tyLURChV5h+OjRa0N_?mr6)EXJpu+UI^Z$uBE@4U8aUV=t4VRemBi?rU? zjJXeAw+NEEf7yZ}J=#47f&)uprO&QXh}~Fq`4W@xL@=rg-d5qW#bn4uiEKy`*VSXc zgE^jstOn2h-To4OXG-r;ns!JO)LfpkV}VQ0>_gKpDh1$olJJ6(OFvxv-TzRX2DZzB zD*bVlcEfUE$Hq(6BS2@m97;*PXdC$6SGa3=ce7O#)0PHKblNGeS~Xjw!R?_7-dyQV z5x*YbpXgMzIKa_8?k@s**m?Yj)DlC@cwXb(XNU{cg@vo~8ZzTZ}yO_1U~Ac=hW3 z>WW(d?aLE(9Btu`6f&ew$2q7sVdW_Pizl+c+C`M z++DYq1>fOkcahSPn#Rv~BvQ1EEPqJ+o8L6xW)(^rM*CGOE=;(;W*)6Z6}N_yr>v$` zRTe~`dMvy4x1g!j&Bn<9H%qb6clF9Tg_pY-)WMaceYJeD?<#JeBT%boSuj%;i~PQ_ zZG{e9KSKJWL&J&8S_@eO4^43B$|j$XKGnC$6|~}1C46>detIi95tEjyO>}|Bq2ffQ zd#S1iVy2+0D=e(nFy{GM z*HkZp%*6b*KjzfGC|GA$tGk_V7e+&AIb%_0lg(W!0yTtvcVX4*|5S?hf6v&=p#w`CkWM0h^sWove61OFwISuRb1y5V8~ zHP&Y_nZ!4AkXqTyLkvHWHfFQ2w;hS>7=MGgJ~5D%U6{)%{vqX_e~)f*Z-~T$F~o6k zeVTip&v?q+mN04|a9Za^aLlb$dHrb)4K>Ald_JQsL=#K}#yE3J`>Esvr}K|WX;I(a zCDj^fYOMt(kSY}_-n{#WLdpGkJrLrw8i!vRM8LSVfQP!KW{*qL(y{aymAHJa} z{UMPJv5x4;+fez#I;)^{b6COOMD-ZAh(-AP1Dw5%NS25F<$M@XhH|VpPQ82vS$fqs z)Enp^?Gi&=)rhu_@&zbnDU1joq;0KYl|k6cnZ3eqYY&kBLzCk7>+2dup)|jIB)a{KbHw|B320kw}D(3q%cI|eqwO@oKW8d3j@jh~BS9+!XE8&k+=R65KP~Kk1EpVC?EEdUzU0 z4}2sJ^px|h7+^%nxVm59vy&Tp3Yhr=FI9x!iK5doOJp?w8?2@jb|jvq3@ zR9NDYH*!d_^-G%5REK~xe@32tPv2n6VDHu9)bTIUM~$CU%kM*V_uD(d^0xwZYF$4{g?hGt_e$(5_6XPov8Avgg?8F3Zwnep8)C=Q3^5onoE3L@wxmX9LV|?$|3G(j%>(b|m zt{B&4-7I?>(nn7p?7&R|&AO@y3Vll9`97s&632?wqQ{Cn(C-Pl?%xwY$X4p|AFb4F zTTUXXfMdl_ClMU=Zk-&bb_=U7d_5iS^7b)N*B0mjPpRaO((DB>;(KCWJMNNs`klI1 z7@_C|<_20g%K>IY+?cU`s6utnJNH_8(At4f+`(p(@?yh3CZFrYTe9|>whyNF$RCFN zuI{xK{T+*L#%l+BCUplpE?8CNh{?&79d;(*cn7qAoG0azI*XGv4No3Jr6BR{^`aQ+ zUVdcW%qD)NG2t-A@%KoSC5JZY$8!ns4Wl`x92xQ_FK3pRUwgxx zdyqUM*rngkgKQ(%wBJvVK!X|A+1CrA={D7Xw9B!`Y-OdT!+q~_ke9if?*iD;dY!dO ziTGN<{}em%4(fKfSN@q5S9sYrblSN#GsY$Gh|=$lMwwo?L5-8unl+{=6U8Z2?A>yNz&GMw~aznZ=RAqF?jJsA^J(TF4W2R3k>ZDBG!#T zVt`x4KMrD>0TB$~hk($Uc{3c)`5YIv&|Rn`N}aYTd$n%jD-t{vBo1?1WSW06gqR$B*gRT1qG_ck%c= zFet>BME=pw;`5&>PLC)2qn|K2gro=!jQ?*gI)WaGuDkK6DMB7h4(ajvDb!-6w!86b z{{(!+|Bv|2e`Wbk{jZ{^;D47!6-CAVyELk(EC0XpqVk|ZME=#&znA}8dxrm$@gyRO zVZ1%(`kD=H|Eh9^EUZgfWcN<$EH&xy%%VdIvG3KQb{kxmAZyfC>}5a=GHSE(GRS)c zUW{5)ak+7K5jD$uLq}u><>9b_rwX#7;9II7844Ct1pz3q2>HkpflSuZp^VNKIYK%Pb<@u*060?dWNFLZTw0^~pQTEDg{7>s0liO3%n>N%OD|$DVaYZGSHa z8X*ueG{Utt2J<9adAG?#EiR%_{!d~aMW~@Xcu*c~ttgNGCjkcOD*l)Ehc>t%2*fZ1 zaSFw&Ek_ru%Oo3b{D(Mzpom%&0Yed8DB{N3fck&$;QwmrKZ*a*QUZ6ffQ?gGlbtaCg*l>yTW6=F~`R*xNScRqva%zWx1JGZgGP#CF@v;Bzr6FpkxNV<)i z1U36*nyjylp4>TBMyl;T%zngwmFZ{_~T4z(nK#bn>Bv(Y z)N_&0-V)J9BNEKZxE}-Ns1>fbmZx7{us7c=xC-4tFppG=4HY=|L? zGQ_-!44f6dHKy^FBp@uEUKEJs7K@>QXZIWO28SU>BM>Yf9b^13^d$y;8T_EQ*Mwc) zl1Ms8Yj8Gj7O5N~bHm!-)MJ1c&5(vw3o=}A@*Ywu;aMCtoMoJno#&4dIg`%H>|I;q z_`ISm9E=;&NpiB4ZuEQ!Vq%PYM_CcsG#eS(xwEMXG39H7o*oQ)yE0!V+QOlVF=F)O zJCuaU9|_a^C8%{`Sa7LHE|DuT>82dc8>?EL_rj}MYC?)%X`&z$3)F zlA(k|>uuj;N3*hu(W9wF3g2Dm3-V?Q)ZYo&;4sX4Y^jB!s)2Nq4&wFSRzBsc97m}M z)4z*!YS-K$<)&yYyBIABmB#AF%u+0P6TbbRKNZ*-3B#reB%N@+VNJ)Vo7J?%by z+I{x){pnNkU(a|aFps7%&2kAkxak}DMEHY*&wf&Hch<{VB+Z;($d|&j&vN#R^o(UR ztYlwDM#4!9t1B8gUq>3$a?~kmShYcLa8Z_~hSdcG=dHHhGLd&gY@xf8>kBUv*G6U6 z#?dv)xiw3T&d<4?;cdGZriIjXuSJYaT^ldgENMGG1N*UAN8P#JX+OuP_v3e*!VUih znE2S1l6)hP3@b zFCR@wYv{E+w=ExSI*UeYuJT#IkMwJe4u6o!^7!Yhhy(^_Kv?5SHg=w5HqnN;$+2dM zjc8ydKhGESJ0a@&>>TW+li)Rh66m!C$pKX)bcs8_B$BTi`IDq?ZO}+SfcQG=hnbJ; zZBVi5txm5HCI*Sk6P(y96;VN$rzY&JChWZ?%t6!jB!4YctaC%Gv)t2T(tg`@(99x} zOSn2uId9xq>06Bbi*1Za!qhzV%V38D2JP2jD%ecdZe)tm9|a$$-n8aeCIXmBeU6UW(Ut75oDUf5iXYEKF`v3#KXuvA^vtxJu8 z9;T>x0yTfW*gTyK3gcWP(l5{a2x)u1SjAFh$RlfovZ`6C%z0$-amgdb zV${{hm}5S6t*^L#REb&q*0FvM2m0oN!e{Og`JI^++h%I-c&&Qv$dc8c2?~eK9Igez zK~5D|5f;nWv?4e8y32BgNvqXOxO)G~803 zwF-T=^n4I3gylQMu=YCq-BLcbuiFp_j<1b#`xs?qm*klw^A8H|5z=a|L<2P%I*4%T z)|tXSfh~qWBjxbGo;qH9k+r>Np;iHUTn@N{}EN9l#cu9NxGXo;zhZk8B<&u|gc z#xk1&Xg3&{>YJ7X6-e!lF->pA)%{aK1fjG@S}Ms5$*1d*L9!XL8fZYUiEYaR*=$== z2rL1;C&1w;-=@jHq%Rrrv|xl4AIa_0G#EyAPgHPP%rZ|?qv~11IaOXG++H&;QKQOb zXaI_>neRbasFOo;YUTqtRfvo5n#-xkW+Pidc=OTKOO5YBaGqEYa~~}L^p}5d;hF{* zSbb>Vbv}6=$eWfKd#e^9g<=PmoG++*tS)nUzvzYwbi}%=czz7~=tq8^p~d z*dR!C#>oV15X?R0EcG+DYuz;%J@w0&%Qd2OIpZvqY!C$Q87Mj=+QsN3*FCyCy?0Zq zcue>et6hotyVM#T{EiC|W-0`JcQ;yZfCy{2APFZYug41^;gA))tuhvf)W591K*9w= zo`Qi~hC1`@7|Mf!4kY|pexV-}odCSL#mC60*FL(8y zbnY^=qm8Gb$6}A1Mi6yUG=ydA`oRSK!uawS0B<{&>l7OIWhI=^PZ~*whYSe`OrL$6 z3Nuz<7kf^affK_SQe`LueC8z;s;#8F!YwYS#AA6eIowk`#L1oy2c$M+kD z|Kw)s!4X3^;na0(t)Oqb)0;yUk%LPuMpd=SKxu{)f@Y?%3T)Ptd+8c-h zJ#_Ek%Fj4RN75pU0TEEBn|vZ#AI$Dq-yB9jDgF_s{j=`4l>wObr&ls|J;mgDc`DGDh+e*2H%$5^eO@mkDYrO`66|4>8};3DSo$xZfoW#9Ei9K<~>xEIWJqbd~W=V z;X~6BN;~FkIVNCgKPGVG?>zW%lh^*20E9dbAKiJd_EbDBQD>D>r39&Z$E*0y_MtDS z3ekV;ANt{Ha%+kB=+Hxso>evNprrW{op%Altb%7p@MO;$AYF51cy{@6({R#a!W>dd zdS;f**2CJjST~L{J&nWBM3Wua-XTa|LDzItN|z#7V{fBBGg_6Cpd(JrBtc#33Q)Xv zj*nWQP;<520%JIj+uYI#oGrgGmvw&AN<`h|7aMn+I2ND!1kT#=lZ_?~?i0-{P?Ek} zl}@3-CdH`XtosJQ#b}zIJeiSPuR0E3u@#q(V`b~(^b literal 467169 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

    8!PX6c3Sjkeh`qWr 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 z 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%0D*919nt8ot(O)>5LiCo8 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

    eEU~ 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

    4pe9*2*^E}$bm1DTcl-~!VC;-pnDHG@b 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�AAJ)zpIY5`RfE8nkNyRxHVor=pVd@4V&{Fw4J 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 z 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 diff --git a/demos/snes/MM8_Frost_Man.fur b/demos/snes/MM8_Frost_Man.fur index bad1ceeef76074da3ab429e90b8f663dfc3e9d5e..f49221ee9b81485a59129f037c03dc2271890115 100644 GIT binary patch literal 54989 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

    ZPa2KR04H_U*(6OfFj%{C?Vzc?Iqwjh7_0 zq4b}uI{`25$`FdB)A^UVj5m6gLEC8di5d z=_(NC+n$CPRT7#*6QFJzJY^61!ET*+L~_@DJfL_%X?R0WQrH^-W}m8XdH7pY{Y?2} zK;P}h#`~HYylA_j!G4@l&RP+|CH?G%F=tII8`#l2(($nvE45>gVKZT$`-O#l9b89! zL3teA9&(nznQoFVd5NzA>NYp~EB0EyMl}U)<}`;Ccb6Te+V-?8=sqBCncPnL zGJ2Y$4D1QJ=3nD8OcMsqP^Y0+^xp{He$w!KPs6kjI(gf6(8oRCEQdor?_Q_>LV8-D z>gw$18M&)}0qkU(0v89YU~>XM(lOs2_FXoDz_os%{;e&u+SZue5ve$7{RJgqEe>f4 z*nu?8ta8woI?mbfUl@O~&r^^j1!Wn9>dSZAXwvZ~YX5w;WgvM> zVp?pUCO+jXicIn8wb!dxkJyKb_)wvAkfe=7Z1VmqU@iTpp!>|9eUm65q@8pR&wksd zGDKH+qoiwxkfzT9zDDivH3us>>)rPm?v7rc*u%dgspFp!m)I}hmiV0J$o;mmLn+sM zJIFepjRb_d&y>e-ZM(6hln+tV&fJ04VY~eq;VSPk`ybM;L_;IyktJe}QR)QUk(J%{ zJ>l<7Po@3h6U2ft{w5S7->{1&Zuiu5*7WX@9x`5W9|EVSLjk0aci@Lre+l!4(BnJD zp9>pDPMMw&lQ9Or0@}+!x-ZM$o&E{wu}8j1qkJ-u+p}M^c@V1q8Ks03dbd!&kKqs= zn2(Md1t$llWga4bag;>sfhSI2sXqVumom-1LoAS9?8UYnQN~Xo`W1sIg0=DukPegq zZ1w{fR3_J>K$j*y+$Wr%NIz0t8hxOO1^*^Qf#E(61Ky_Z_HAbudM|*P6bW;1(eWis8}Iz371((s7MaBT>%xYQqkI3B*r0 z$7t*P{$%_4JOQ%A8zk_)?*$=hoob7P=*#oJ=4WM8vU)*{`lpFE_=x^M;e>Ln;g&30 zH}3fl_A2o&^6%^x>X!j0IJ=M+#T)pa_c40rjdBgY>dxZq{*Qvs_^N{Td;416kl@E| z_a+P!NS3R1s`r_srcJoTV2V$Jzlwd!ml*tmcamX>A0&+LzdW*g5@(Bov;307_i� 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 z Date: Thu, 1 Jun 2023 15:51:39 -0500 Subject: [PATCH 003/183] new demo song by Hortus --- demos/opl/Sliding_on_a_Rainbow.fur | Bin 0 -> 3598 bytes src/gui/about.cpp | 1 + 2 files changed, 1 insertion(+) create mode 100644 demos/opl/Sliding_on_a_Rainbow.fur diff --git a/demos/opl/Sliding_on_a_Rainbow.fur b/demos/opl/Sliding_on_a_Rainbow.fur new file mode 100644 index 0000000000000000000000000000000000000000..934fda703b5688180269e688b1ed677e779c102d GIT binary patch literal 3598 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 UZ%?TG66^``|3NqTe;AQXYpsLjj{pDw literal 0 HcmV?d00001 diff --git a/src/gui/about.cpp b/src/gui/about.cpp index fa020b98..3bdb3b28 100644 --- a/src/gui/about.cpp +++ b/src/gui/about.cpp @@ -85,6 +85,7 @@ const char* aboutLine[]={ "Fragmare", "freq-mod", "gtr3qq", + "Hortus", "iyatemu", "JayBOB18", "Jimmy-DS", From 827a0074baacdd8961a7054e5afa1edcefa66c5d Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 1 Jun 2023 15:55:01 -0500 Subject: [PATCH 004/183] another demo song by niffuM --- demos/genesis/Fancy_Promenard.fur | Bin 0 -> 4732 bytes src/gui/about.cpp | 1 + 2 files changed, 1 insertion(+) create mode 100644 demos/genesis/Fancy_Promenard.fur diff --git a/demos/genesis/Fancy_Promenard.fur b/demos/genesis/Fancy_Promenard.fur new file mode 100644 index 0000000000000000000000000000000000000000..f0ec68a973f2c3d1400f195e7e1ad869fcc6a365 GIT binary patch literal 4732 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 L*", "NyaongI", "potatoTeto", From 8c10c7ed5d4e5e77d3998414062f62cc589a9b4f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 2 Jun 2023 14:06:25 -0500 Subject: [PATCH 005/183] GUI: fix possible division by zero --- src/gui/gui.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 614066a1..106685af 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6209,7 +6209,12 @@ bool FurnaceGUI::init() { // special consideration for Wayland if (settings.dpiScale<0.5f) { if (strcmp(videoBackend,"wayland")==0) { - dpiScale=(double)canvasW/(double)scrW; + if (scrW<1) { + logW("screen width is zero!\n"); + dpiScale=1.0; + } else { + dpiScale=(double)canvasW/(double)scrW; + } } } From b56be5934401e5828f5f648b18b58abbea4ae884 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 2 Jun 2023 14:11:47 -0500 Subject: [PATCH 006/183] GUI: check SDL_Init status --- src/gui/gui.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 106685af..bb806dcd 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6021,7 +6021,14 @@ bool FurnaceGUI::init() { #endif // initialize SDL - SDL_Init(SDL_INIT_VIDEO|SDL_INIT_HAPTIC); + if (SDL_Init(SDL_INIT_VIDEO)!=0) { + logE("could not initialize video! %s",SDL_GetError()); + return false; + } + + if (SDL_Init(SDL_INIT_HAPTIC)!=0) { + logW("could not initialize haptic! %s",SDL_GetError()); + } const char* videoBackend=SDL_GetCurrentVideoDriver(); if (videoBackend!=NULL) { From 81e53f39f0fd7e0c36a7ac9736eb4516e4a152c7 Mon Sep 17 00:00:00 2001 From: YohananDiamond Date: Fri, 2 Jun 2023 19:21:50 -0300 Subject: [PATCH 007/183] Fix pattern editor focus when selecting instrument --- src/gui/dataList.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/gui/dataList.cpp b/src/gui/dataList.cpp index 72269988..4d108c96 100644 --- a/src/gui/dataList.cpp +++ b/src/gui/dataList.cpp @@ -292,11 +292,10 @@ void FurnaceGUI::insListItem(int i, int dir, int asset) { wavePreviewInit=true; updateFMPreview=true; lastAssetType=0; - if (insListDir) nextWindow=GUI_WINDOW_PATTERN; } if (wantScrollList && curIns==i) ImGui::SetScrollHereY(); if (settings.insFocusesPattern && patternOpen && ImGui::IsItemActivated()) { - if (!insListDir) nextWindow=GUI_WINDOW_PATTERN; + nextWindow=GUI_WINDOW_PATTERN; curIns=i; wavePreviewInit=true; updateFMPreview=true; From 55c2be8cece0815252f76615553eb3b317029e84 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 2 Jun 2023 20:21:37 -0500 Subject: [PATCH 008/183] GUI: prepare for multiple render backends I want to see whether I can bind OpenGL to this thing --- CMakeLists.txt | 4 ++ src/gui/chanOsc.cpp | 8 +-- src/gui/gui.cpp | 58 ++++++++--------- src/gui/gui.h | 52 +++++++++++++-- src/gui/image.cpp | 8 +-- src/gui/intro.cpp | 4 +- src/gui/pattern.cpp | 4 +- src/gui/render.cpp | 36 ++++++++++ src/gui/render/abstract.cpp | 79 ++++++++++++++++++++++ src/gui/render/renderGL.cpp | 0 src/gui/render/renderGL.h | 0 src/gui/render/renderSDL.cpp | 123 +++++++++++++++++++++++++++++++++++ src/gui/render/renderSDL.h | 43 ++++++++++++ src/gui/sampleEdit.cpp | 8 +-- 14 files changed, 373 insertions(+), 54 deletions(-) create mode 100644 src/gui/render.cpp create mode 100644 src/gui/render/abstract.cpp create mode 100644 src/gui/render/renderGL.cpp create mode 100644 src/gui/render/renderGL.h create mode 100644 src/gui/render/renderSDL.cpp create mode 100644 src/gui/render/renderSDL.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 3e2f5ee5..a9ed390b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -587,6 +587,10 @@ extern/igfd/ImGuiFileDialog.cpp src/gui/plot_nolerp.cpp +src/gui/render.cpp +src/gui/render/abstract.cpp +src/gui/render/renderSDL.cpp + src/gui/font_exo.cpp src/gui/font_liberationSans.cpp src/gui/font_mononoki.cpp diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index 7bcece95..f697a142 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -152,10 +152,10 @@ void FurnaceGUI::drawChanOsc() { if (chanOscUseGrad) { if (chanOscGradTex==NULL) { - chanOscGradTex=SDL_CreateTexture(sdlRend,SDL_PIXELFORMAT_ABGR8888,SDL_TEXTUREACCESS_STREAMING,chanOscGrad.width,chanOscGrad.height); + chanOscGradTex=rend->createTexture(true,chanOscGrad.width,chanOscGrad.height); if (chanOscGradTex==NULL) { - logE("error while creating gradient texture! %s",SDL_GetError()); + logE("error while creating gradient texture!"); } else { updateChanOscGradTex=true; } @@ -170,10 +170,10 @@ void FurnaceGUI::drawChanOsc() { if (chanOscGradTex!=NULL) { if (updateChanOscGradTex) { chanOscGrad.render(); - if (SDL_UpdateTexture(chanOscGradTex,NULL,chanOscGrad.grad.get(),chanOscGrad.width*4)==0) { + if (rend->updateTexture(chanOscGradTex,chanOscGrad.grad.get(),chanOscGrad.width*4)) { updateChanOscGradTex=false; } else { - logE("error while updating gradient texture! %s",SDL_GetError()); + logE("error while updating gradient texture!"); } } diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 614066a1..3781f289 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3537,8 +3537,8 @@ bool FurnaceGUI::loop() { } } // update canvas size as well - if (SDL_GetRendererOutputSize(sdlRend,&canvasW,&canvasH)!=0) { - logW("loop: error while getting output size! %s",SDL_GetError()); + if (!rend->getOutputSize(canvasW,canvasH)) { + logW("loop: error while getting output size!"); } else { //logV("updateWindow: canvas size %dx%d",canvasW,canvasH); // and therefore window size @@ -4418,7 +4418,7 @@ bool FurnaceGUI::loop() { portrait=(scrWgetOutputSize(canvasW,canvasH); #endif if (patternOpen) nextWindow=GUI_WINDOW_PATTERN; #ifdef __APPLE__ @@ -5796,30 +5796,24 @@ bool FurnaceGUI::loop() { } } - SDL_SetRenderDrawColor(sdlRend,uiColors[GUI_COLOR_BACKGROUND].x*255, - uiColors[GUI_COLOR_BACKGROUND].y*255, - uiColors[GUI_COLOR_BACKGROUND].z*255, - uiColors[GUI_COLOR_BACKGROUND].w*255); - SDL_RenderClear(sdlRend); + rend->clear(uiColors[GUI_COLOR_BACKGROUND]); renderTimeBegin=SDL_GetPerformanceCounter(); ImGui::Render(); renderTimeEnd=SDL_GetPerformanceCounter(); - ImGui_ImplSDLRenderer_RenderDrawData(ImGui::GetDrawData()); + rend->renderGUI(); if (mustClear) { - SDL_RenderClear(sdlRend); + rend->clear(ImVec4(0,0,0,0)); mustClear--; } else { if (initialScreenWipe>0.0f && !settings.disableFadeIn) { WAKE_UP; initialScreenWipe-=ImGui::GetIO().DeltaTime*5.0f; if (initialScreenWipe>0.0f) { - SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_BLEND); - SDL_SetRenderDrawColor(sdlRend,0,0,0,255*pow(initialScreenWipe,2.0f)); - SDL_RenderFillRect(sdlRend,NULL); + rend->wipe(pow(initialScreenWipe,2.0f)); } } } - SDL_RenderPresent(sdlRend); + rend->present(); layoutTimeDelta=layoutTimeEnd-layoutTimeBegin; renderTimeDelta=renderTimeEnd-renderTimeBegin; @@ -6186,22 +6180,27 @@ bool FurnaceGUI::init() { SDL_SetHint(SDL_HINT_RENDER_DRIVER,settings.renderDriver.c_str()); } - sdlRend=SDL_CreateRenderer(sdlWin,-1,SDL_RENDERER_ACCELERATED|SDL_RENDERER_PRESENTVSYNC|SDL_RENDERER_TARGETTEXTURE); - - if (sdlRend==NULL) { - lastError=fmt::sprintf("could not init renderer! %s",SDL_GetError()); - if (!settings.renderDriver.empty()) { - settings.renderDriver=""; - e->setConf("renderDriver",""); + if (!initRender()) { + if (settings.renderBackend=="OpenGL") { + settings.renderBackend=""; + e->setConf("renderBackend",""); e->saveConf(); - lastError=fmt::sprintf("\r\nthe render driver has been set to a safe value. please restart Furnace."); + lastError=fmt::sprintf("\r\nthe render backend has been set to a safe value. please restart Furnace."); + } else { + lastError=fmt::sprintf("could not init renderer! %s",SDL_GetError()); + if (!settings.renderDriver.empty()) { + settings.renderDriver=""; + e->setConf("renderDriver",""); + e->saveConf(); + lastError=fmt::sprintf("\r\nthe render driver has been set to a safe value. please restart Furnace."); + } } return false; } // try acquiring the canvas size - if (SDL_GetRendererOutputSize(sdlRend,&canvasW,&canvasH)!=0) { - logW("could not get renderer output size! %s",SDL_GetError()); + if (!rend->getOutputSize(canvasW,canvasH)) { + logW("could not get renderer output size!"); } else { logV("canvas size: %dx%d",canvasW,canvasH); } @@ -6213,11 +6212,7 @@ bool FurnaceGUI::init() { } } - IMGUI_CHECKVERSION(); - ImGui::CreateContext(); - - ImGui_ImplSDL2_InitForSDLRenderer(sdlWin,sdlRend); - ImGui_ImplSDLRenderer_Init(sdlRend); + rend->initGUI(sdlWin); applyUISettings(); @@ -6439,10 +6434,10 @@ void FurnaceGUI::commitState() { bool FurnaceGUI::finish() { commitState(); - ImGui_ImplSDLRenderer_Shutdown(); + rend->quitGUI(); ImGui_ImplSDL2_Shutdown(); ImGui::DestroyContext(); - SDL_DestroyRenderer(sdlRend); + quitRender(); SDL_DestroyWindow(sdlWin); if (vibrator) { @@ -6463,7 +6458,6 @@ bool FurnaceGUI::finish() { FurnaceGUI::FurnaceGUI(): e(NULL), sdlWin(NULL), - sdlRend(NULL), vibrator(NULL), vibratorAvailable(false), sampleTex(NULL), diff --git a/src/gui/gui.h b/src/gui/gui.h index 296014e1..ac8908cd 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -70,6 +70,11 @@ #define FM_PREVIEW_SIZE 512 +enum FurnaceGUIRenderBackend { + GUI_BACKEND_SDL=0, + GUI_BACKEND_GL +}; + // TODO: // - add colors for FM envelope and waveform // - maybe add "alternate" color for FM modulators/carriers (a bit difficult) @@ -1191,7 +1196,7 @@ struct FurnaceGUIQueryResult { struct FurnaceGUIImage { unsigned char* data; - SDL_Texture* tex; + void* tex; int width, height, ch; FurnaceGUIImage(): @@ -1213,15 +1218,45 @@ struct FurnaceGUIPerfMetric { elapsed(0) {} }; +enum FurnaceGUIBlendMode { + GUI_BLEND_MODE_NONE=0, + GUI_BLEND_MODE_BLEND, + GUI_BLEND_MODE_ADD, + GUI_BLEND_MODE_MULTIPLY +}; + +class FurnaceGUIRender { + public: + virtual bool lockTexture(void* which, void** data, int* pitch); + virtual bool unlockTexture(void* which); + virtual bool updateTexture(void* which, void* data, int pitch); + virtual void* createTexture(bool dynamic, int width, int height); + virtual bool destroyTexture(void* which); + virtual void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + virtual void setBlendMode(FurnaceGUIBlendMode mode); + virtual void clear(ImVec4 color); + virtual void renderGUI(); + virtual void wipe(float alpha); + virtual void present(); + virtual bool getOutputSize(int& w, int& h); + virtual bool init(SDL_Window* win); + virtual void initGUI(SDL_Window* win); + virtual void quitGUI(); + virtual bool quit(); + virtual ~FurnaceGUIRender(); +}; + class FurnaceGUI { DivEngine* e; + FurnaceGUIRenderBackend renderBackend; + FurnaceGUIRender* rend; + SDL_Window* sdlWin; - SDL_Renderer* sdlRend; SDL_Haptic* vibrator; bool vibratorAvailable; - - SDL_Texture* sampleTex; + + void* sampleTex; int sampleTexW, sampleTexH; bool updateSampleTex; @@ -1454,6 +1489,7 @@ class FurnaceGUI { String midiInDevice; String midiOutDevice; String c163Name; + String renderBackend; String renderDriver; String initialSysName; String noteOffLabel; @@ -1601,6 +1637,7 @@ class FurnaceGUI { midiInDevice(""), midiOutDevice(""), c163Name(""), + renderBackend(""), renderDriver(""), initialSysName("Sega Genesis/Mega Drive"), noteOffLabel("OFF"), @@ -1887,7 +1924,7 @@ class FurnaceGUI { bool chanOscWaveCorr, chanOscOptions, updateChanOscGradTex, chanOscUseGrad; ImVec4 chanOscColor; Gradient2D chanOscGrad; - SDL_Texture* chanOscGradTex; + void* chanOscGradTex; float chanOscLP0[DIV_MAX_CHANS]; float chanOscLP1[DIV_MAX_CHANS]; float chanOscVol[DIV_MAX_CHANS]; @@ -2040,7 +2077,7 @@ class FurnaceGUI { void highlightWindow(const char* winName); FurnaceGUIImage* getImage(FurnaceGUIImages image); - SDL_Texture* getTexture(FurnaceGUIImages image, SDL_BlendMode blendMode=SDL_BLENDMODE_BLEND); + void* getTexture(FurnaceGUIImages image, FurnaceGUIBlendMode blendMode=GUI_BLEND_MODE_BLEND); void drawImage(ImDrawList* dl, FurnaceGUIImages image, const ImVec2& pos, const ImVec2& scale, double rotate, const ImVec2& uvMin, const ImVec2& uvMax, const ImVec4& imgColor); void drawMobileControls(); @@ -2189,6 +2226,9 @@ class FurnaceGUI { String encodeKeyMap(std::map& map); void decodeKeyMap(std::map& map, String source); + bool initRender(); + bool quitRender(); + const char* getSystemName(DivSystem which); public: diff --git a/src/gui/image.cpp b/src/gui/image.cpp index 976504b8..a075d8ac 100644 --- a/src/gui/image.cpp +++ b/src/gui/image.cpp @@ -49,7 +49,7 @@ const unsigned int imageLen[GUI_IMAGE_MAX]={ image_pat_size }; -SDL_Texture* FurnaceGUI::getTexture(FurnaceGUIImages image, SDL_BlendMode blendMode) { +void* FurnaceGUI::getTexture(FurnaceGUIImages image, FurnaceGUIBlendMode blendMode) { FurnaceGUIImage* img=getImage(image); if (img==NULL) return NULL; @@ -57,14 +57,14 @@ SDL_Texture* FurnaceGUI::getTexture(FurnaceGUIImages image, SDL_BlendMode blendM if (img->width<=0 || img->height<=0) return NULL; if (img->tex==NULL) { - img->tex=SDL_CreateTexture(sdlRend,SDL_PIXELFORMAT_ABGR8888,SDL_TEXTUREACCESS_STATIC,img->width,img->height); + img->tex=rend->createTexture(false,img->width,img->height); if (img->tex==NULL) { logE("error while creating image %d texture! %s",(int)image,SDL_GetError()); return NULL; } - SDL_SetTextureBlendMode(img->tex,blendMode); + rend->setTextureBlendMode(img->tex,blendMode); - if (SDL_UpdateTexture(img->tex,NULL,img->data,img->width*4)!=0) { + if (!rend->updateTexture(img->tex,img->data,img->width*4)) { logE("error while updating texture of image %d! %s",(int)image,SDL_GetError()); } } diff --git a/src/gui/intro.cpp b/src/gui/intro.cpp index 73f1cac1..75cc0fc1 100644 --- a/src/gui/intro.cpp +++ b/src/gui/intro.cpp @@ -24,7 +24,7 @@ void FurnaceGUI::drawImage(ImDrawList* dl, FurnaceGUIImages image, const ImVec2& pos, const ImVec2& scale, double rotate, const ImVec2& uvMin, const ImVec2& uvMax, const ImVec4& imgColor) { FurnaceGUIImage* imgI=getImage(image); - SDL_Texture* img=getTexture(image); + void* img=getTexture(image); float squareSize=MAX(introMax.x-introMin.x,introMax.y-introMin.y); float uDiff=uvMax.x-uvMin.x; @@ -162,7 +162,7 @@ void FurnaceGUI::drawIntro(double introTime, bool monitor) { getTexture(GUI_IMAGE_TALOGO); getTexture(GUI_IMAGE_TACHIP); getTexture(GUI_IMAGE_LOGO); - getTexture(GUI_IMAGE_INTROBG,SDL_BLENDMODE_ADD); + getTexture(GUI_IMAGE_INTROBG,GUI_BLEND_MODE_ADD); if (monitor) { ImVec2 textPos=ImLerp(top,bottom,ImVec2(0.5,0.5)); diff --git a/src/gui/pattern.cpp b/src/gui/pattern.cpp index 55498404..934faacf 100644 --- a/src/gui/pattern.cpp +++ b/src/gui/pattern.cpp @@ -49,11 +49,11 @@ void _popPartBlend(const ImDrawList* drawList, const ImDrawCmd* cmd) { } void FurnaceGUI::pushPartBlend() { - SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_ADD); + rend->setBlendMode(GUI_BLEND_MODE_ADD); } void FurnaceGUI::popPartBlend() { - SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_BLEND); + rend->setBlendMode(GUI_BLEND_MODE_BLEND); } // draw a pattern row diff --git a/src/gui/render.cpp b/src/gui/render.cpp new file mode 100644 index 00000000..069205d5 --- /dev/null +++ b/src/gui/render.cpp @@ -0,0 +1,36 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "gui.h" +#include "render/renderSDL.h" + +bool FurnaceGUI::initRender() { + if (rend!=NULL) return false; + + rend=new FurnaceGUIRenderSDL; + return rend->init(sdlWin); +} + +bool FurnaceGUI::quitRender() { + if (rend==NULL) return false; + bool ret=rend->quit(); + delete rend; + rend=NULL; + return ret; +} \ No newline at end of file diff --git a/src/gui/render/abstract.cpp b/src/gui/render/abstract.cpp new file mode 100644 index 00000000..69adad0d --- /dev/null +++ b/src/gui/render/abstract.cpp @@ -0,0 +1,79 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "../gui.h" + +bool FurnaceGUIRender::lockTexture(void* which, void** data, int* pitch) { + return false; +} + +bool FurnaceGUIRender::unlockTexture(void* which) { + return false; +} + +bool FurnaceGUIRender::updateTexture(void* which, void* data, int pitch) { + return false; +} + +void* FurnaceGUIRender::createTexture(bool dynamic, int width, int height) { + return NULL; +} + +bool FurnaceGUIRender::destroyTexture(void* which) { + return false; +} + +void FurnaceGUIRender::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +} + +void FurnaceGUIRender::setBlendMode(FurnaceGUIBlendMode mode) { +} + +void FurnaceGUIRender::clear(ImVec4 color) { +} + +void FurnaceGUIRender::renderGUI() { +} + +void FurnaceGUIRender::wipe(float alpha) { +} + +void FurnaceGUIRender::present() { +} + +bool FurnaceGUIRender::getOutputSize(int& w, int& h) { + return false; +} + +bool FurnaceGUIRender::init(SDL_Window* win) { + return false; +} + +void FurnaceGUIRender::initGUI(SDL_Window* win) { +} + +bool FurnaceGUIRender::quit() { + return false; +} + +void FurnaceGUIRender::quitGUI(){ +} + +FurnaceGUIRender::~FurnaceGUIRender() { +} \ No newline at end of file diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp new file mode 100644 index 00000000..e69de29b diff --git a/src/gui/render/renderGL.h b/src/gui/render/renderGL.h new file mode 100644 index 00000000..e69de29b diff --git a/src/gui/render/renderSDL.cpp b/src/gui/render/renderSDL.cpp new file mode 100644 index 00000000..aea055a4 --- /dev/null +++ b/src/gui/render/renderSDL.cpp @@ -0,0 +1,123 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "renderSDL.h" + +bool FurnaceGUIRenderSDL::lockTexture(void* which, void** data, int* pitch) { + return SDL_LockTexture((SDL_Texture*)which,NULL,data,pitch)==0; +} + +bool FurnaceGUIRenderSDL::unlockTexture(void* which) { + SDL_UnlockTexture((SDL_Texture*)which); + return true; +} + +bool FurnaceGUIRenderSDL::updateTexture(void* which, void* data, int pitch) { + return SDL_UpdateTexture((SDL_Texture*)which,NULL,data,pitch)==0; +} + +void* FurnaceGUIRenderSDL::createTexture(bool dynamic, int width, int height) { + return SDL_CreateTexture(sdlRend,SDL_PIXELFORMAT_ABGR8888,dynamic?SDL_TEXTUREACCESS_STREAMING:SDL_TEXTUREACCESS_STATIC,width,height); +} + +bool FurnaceGUIRenderSDL::destroyTexture(void* which) { + SDL_DestroyTexture((SDL_Texture*)which); + return true; +} + +void FurnaceGUIRenderSDL::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { + switch (mode) { + case GUI_BLEND_MODE_NONE: + SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_NONE); + break; + case GUI_BLEND_MODE_BLEND: + SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_BLEND); + break; + case GUI_BLEND_MODE_ADD: + SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_ADD); + break; + case GUI_BLEND_MODE_MULTIPLY: + SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_MOD); + break; + } +} + +void FurnaceGUIRenderSDL::setBlendMode(FurnaceGUIBlendMode mode) { + switch (mode) { + case GUI_BLEND_MODE_NONE: + SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_NONE); + break; + case GUI_BLEND_MODE_BLEND: + SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_BLEND); + break; + case GUI_BLEND_MODE_ADD: + SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_ADD); + break; + case GUI_BLEND_MODE_MULTIPLY: + SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_MOD); + break; + } +} + +void FurnaceGUIRenderSDL::clear(ImVec4 color) { + SDL_SetRenderDrawColor(sdlRend,color.x*255,color.y*255,color.z*255,color.w*255); + SDL_RenderClear(sdlRend); +} + +void FurnaceGUIRenderSDL::renderGUI() { + ImGui_ImplSDLRenderer_RenderDrawData(ImGui::GetDrawData()); +} + +void FurnaceGUIRenderSDL::wipe(float alpha) { + SDL_SetRenderDrawBlendMode(sdlRend,SDL_BLENDMODE_BLEND); + SDL_SetRenderDrawColor(sdlRend,0,0,0,255*alpha); + SDL_RenderFillRect(sdlRend,NULL); +} + +void FurnaceGUIRenderSDL::present() { + SDL_RenderPresent(sdlRend); +} + +bool FurnaceGUIRenderSDL::getOutputSize(int& w, int& h) { + return SDL_GetRendererOutputSize(sdlRend,&w,&h)==0; +} + +bool FurnaceGUIRenderSDL::init(SDL_Window* win) { + sdlRend=SDL_CreateRenderer(win,-1,SDL_RENDERER_ACCELERATED|SDL_RENDERER_PRESENTVSYNC|SDL_RENDERER_TARGETTEXTURE); + return (sdlRend!=NULL); +} + +void FurnaceGUIRenderSDL::initGUI(SDL_Window* win) { + IMGUI_CHECKVERSION(); + ImGui::CreateContext(); + + ImGui_ImplSDL2_InitForSDLRenderer(win,sdlRend); + ImGui_ImplSDLRenderer_Init(sdlRend); +} + +void FurnaceGUIRenderSDL::quitGUI() { + ImGui_ImplSDLRenderer_Shutdown(); +} + +bool FurnaceGUIRenderSDL::quit() { + if (sdlRend==NULL) return false; + SDL_DestroyRenderer(sdlRend); + sdlRend=NULL; + return true; +} \ No newline at end of file diff --git a/src/gui/render/renderSDL.h b/src/gui/render/renderSDL.h new file mode 100644 index 00000000..d6071b2a --- /dev/null +++ b/src/gui/render/renderSDL.h @@ -0,0 +1,43 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "../gui.h" + +class FurnaceGUIRenderSDL: public FurnaceGUIRender { + SDL_Renderer* sdlRend; + public: + bool lockTexture(void* which, void** data, int* pitch); + bool unlockTexture(void* which); + bool updateTexture(void* which, void* data, int pitch); + void* createTexture(bool dynamic, int width, int height); + bool destroyTexture(void* which); + void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + void setBlendMode(FurnaceGUIBlendMode mode); + void clear(ImVec4 color); + void renderGUI(); + void wipe(float alpha); + void present(); + bool getOutputSize(int& w, int& h); + bool init(SDL_Window* win); + void initGUI(SDL_Window* win); + void quitGUI(); + bool quit(); + FurnaceGUIRenderSDL(): + sdlRend(NULL) {} +}; \ No newline at end of file diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 9d0fcc19..301c3b8b 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -1110,12 +1110,12 @@ void FurnaceGUI::drawSampleEdit() { if (sampleTex==NULL || sampleTexW!=avail.x || sampleTexH!=avail.y) { if (sampleTex!=NULL) { - SDL_DestroyTexture(sampleTex); + rend->destroyTexture(sampleTex); sampleTex=NULL; } if (avail.x>=1 && avail.y>=1) { logD("recreating sample texture."); - sampleTex=SDL_CreateTexture(sdlRend,SDL_PIXELFORMAT_ABGR8888,SDL_TEXTUREACCESS_STREAMING,avail.x,avail.y); + sampleTex=rend->createTexture(true,avail.x,avail.y); sampleTexW=avail.x; sampleTexH=avail.y; if (sampleTex==NULL) { @@ -1131,7 +1131,7 @@ void FurnaceGUI::drawSampleEdit() { unsigned int* dataT=NULL; int pitch=0; logD("updating sample texture."); - if (SDL_LockTexture(sampleTex,NULL,(void**)&dataT,&pitch)!=0) { + if (!rend->lockTexture(sampleTex,(void**)&dataT,&pitch)) { logE("error while locking sample texture! %s",SDL_GetError()); } else { unsigned int* data=new unsigned int[sampleTexW*sampleTexH]; @@ -1217,7 +1217,7 @@ void FurnaceGUI::drawSampleEdit() { } memcpy(dataT,data,sampleTexW*sampleTexH*sizeof(unsigned int)); - SDL_UnlockTexture(sampleTex); + rend->unlockTexture(sampleTex); delete[] data; } updateSampleTex=false; From 02c316f9d163f928780609dae739919aa0c21beb Mon Sep 17 00:00:00 2001 From: YohananDiamond Date: Sat, 3 Jun 2023 02:27:35 -0300 Subject: [PATCH 009/183] Part 2 --- src/gui/dataList.cpp | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/gui/dataList.cpp b/src/gui/dataList.cpp index 4d108c96..57dafb25 100644 --- a/src/gui/dataList.cpp +++ b/src/gui/dataList.cpp @@ -292,15 +292,10 @@ void FurnaceGUI::insListItem(int i, int dir, int asset) { wavePreviewInit=true; updateFMPreview=true; lastAssetType=0; + if (settings.insFocusesPattern && patternOpen) + nextWindow=GUI_WINDOW_PATTERN; } if (wantScrollList && curIns==i) ImGui::SetScrollHereY(); - if (settings.insFocusesPattern && patternOpen && ImGui::IsItemActivated()) { - nextWindow=GUI_WINDOW_PATTERN; - curIns=i; - wavePreviewInit=true; - updateFMPreview=true; - lastAssetType=0; - } if (ImGui::IsItemHovered() && i>=0 && !mobileUI) { ImGui::PushStyleColor(ImGuiCol_Text,uiColors[GUI_COLOR_TEXT]); ImGui::SetTooltip("%s",insType); From 541985bd87e0cbb1e288efe9bd7565cb2e1cccc5 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 01:41:34 -0500 Subject: [PATCH 010/183] GUI: add an OpenGL render backend enable by adding `renderBackend=OpenGL` to furnace.cfg --- CMakeLists.txt | 37 +- .../imgui_patched/imgui_impl_sdlrenderer.cpp | 253 ------------ extern/imgui_patched/imgui_impl_sdlrenderer.h | 31 -- src/gui/chanOsc.cpp | 2 +- src/gui/gui.cpp | 35 +- src/gui/gui.h | 7 +- src/gui/intro.cpp | 2 +- src/gui/render.cpp | 42 +- src/gui/render/abstract.cpp | 23 +- src/gui/render/renderGL.cpp | 365 ++++++++++++++++++ src/gui/render/renderGL.h | 65 ++++ src/gui/render/renderSDL.cpp | 24 ++ src/gui/render/renderSDL.h | 6 + src/gui/sampleEdit.cpp | 2 +- src/gui/settings.cpp | 10 +- 15 files changed, 603 insertions(+), 301 deletions(-) delete mode 100644 extern/imgui_patched/imgui_impl_sdlrenderer.cpp delete mode 100644 extern/imgui_patched/imgui_impl_sdlrenderer.h diff --git a/CMakeLists.txt b/CMakeLists.txt index a9ed390b..75cd110e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -54,12 +54,21 @@ else() set(WITH_JACK_DEFAULT OFF) endif() +set(WITH_RENDER_SDL_DEFAULT ON) +if (APPLE) + set(WITH_RENDER_OPENGL_DEFAULT OFF) +else() + set(WITH_RENDER_OPENGL_DEFAULT ON) +endif() + option(BUILD_GUI "Build the tracker (disable to build only a headless player)" ${BUILD_GUI_DEFAULT}) option(USE_RTMIDI "Build with MIDI support using RtMidi." ${USE_RTMIDI_DEFAULT}) option(USE_SDL2 "Build with SDL2. Required to build with GUI." ${USE_SDL2_DEFAULT}) option(USE_SNDFILE "Build with libsndfile. Required in order to work with audio files." ${USE_SNDFILE_DEFAULT}) option(USE_BACKWARD "Use backward-cpp to print a backtrace on crash/abort." ${USE_BACKWARD_DEFAULT}) option(WITH_JACK "Whether to build with JACK support. Auto-detects if JACK is available" ${WITH_JACK_DEFAULT}) +option(WITH_RENDER_SDL "Whether to build with the SDL_Renderer render backend." ${WITH_RENDER_SDL_DEFAULT}) +option(WITH_RENDER_OPENGL "Whether to build with the OpenGL render backend." ${WITH_RENDER_OPENGL_DEFAULT}) option(SYSTEM_FFTW "Use a system-installed version of FFTW instead of the vendored one" OFF) option(SYSTEM_FMT "Use a system-installed version of fmt instead of the vendored one" OFF) option(SYSTEM_LIBSNDFILE "Use a system-installed version of libsndfile instead of the vendored one" OFF) @@ -92,7 +101,7 @@ set(DEPENDENCIES_LIBRARY_DIRS "") set(DEPENDENCIES_LINK_OPTIONS "") set(DEPENDENCIES_LEGACY_LDFLAGS "") -if (BUILD_GUI) +if (BUILD_GUI AND WITH_RENDER_SDL) set(SYSTEM_SDL_MIN_VER 2.0.18) else() set(SYSTEM_SDL_MIN_VER 2.0.0) @@ -278,6 +287,12 @@ else() endif() endif() +if (BUILD_GUI) + if (NOT WITH_RENDER_SDL AND NOT WITH_RENDER_OPENGL) + message(FATAL_ERROR "No render backends selected!") + endif() +endif() + set(AUDIO_SOURCES src/audio/abstract.cpp src/audio/midi.cpp @@ -580,7 +595,6 @@ extern/imgui_patched/imgui.cpp extern/imgui_patched/imgui_draw.cpp extern/imgui_patched/imgui_tables.cpp extern/imgui_patched/imgui_widgets.cpp -extern/imgui_patched/backends/imgui_impl_sdlrenderer.cpp extern/imgui_patched/backends/imgui_impl_sdl.cpp extern/imgui_patched/misc/cpp/imgui_stdlib.cpp extern/igfd/ImGuiFileDialog.cpp @@ -679,6 +693,25 @@ if (APPLE) list(APPEND GUI_SOURCES extern/nfd-modified/src/nfd_cocoa.mm) endif() +if (WITH_RENDER_SDL) + list(APPEND GUI_SOURCES src/gui/render/renderSDL.cpp) + list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_sdlrenderer.cpp) + list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_SDL) + message(STATUS "UI render backend: SDL_Renderer") +endif() + +if (WITH_RENDER_OPENGL) + list(APPEND GUI_SOURCES src/gui/render/renderGL.cpp) + list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_opengl3.cpp) + list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_GL) + if (WIN32) + list(APPEND DEPENDENCIES_LIBRARIES opengl32) + else() + list(APPEND DEPENDENCIES_LIBRARIES GL) + endif() + message(STATUS "UI render backend: OpenGL") +endif() + if (NOT WIN32 AND NOT APPLE) CHECK_INCLUDE_FILE(sys/io.h SYS_IO_FOUND) CHECK_INCLUDE_FILE(linux/input.h LINUX_INPUT_FOUND) diff --git a/extern/imgui_patched/imgui_impl_sdlrenderer.cpp b/extern/imgui_patched/imgui_impl_sdlrenderer.cpp deleted file mode 100644 index 9da0d488..00000000 --- a/extern/imgui_patched/imgui_impl_sdlrenderer.cpp +++ /dev/null @@ -1,253 +0,0 @@ -// dear imgui: Renderer Backend for SDL_Renderer -// (Requires: SDL 2.0.17+) - -// Important to understand: SDL_Renderer is an _optional_ component of SDL. -// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. -// If your application will want to render any non trivial amount of graphics other than UI, -// please be aware that SDL_Renderer offers a limited graphic API to the end-user and it might -// be difficult to step out of those boundaries. -// However, we understand it is a convenient choice to get an app started easily. - -// Implemented features: -// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Support for large meshes (64k+ vertices) with 16-bit indices. -// Missing features: -// [ ] Renderer: Multi-viewport support (multiple windows). - -// You can copy and use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. -// If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. -// Read online: https://github.com/ocornut/imgui/tree/master/docs - -// CHANGELOG -// 2021-12-21: Update SDL_RenderGeometryRaw() format to work with SDL 2.0.19. -// 2021-12-03: Added support for large mesh (64K+ vertices), enable ImGuiBackendFlags_RendererHasVtxOffset flag. -// 2021-10-06: Backup and restore modified ClipRect/Viewport. -// 2021-09-21: Initial version. - -#include "imgui.h" -#include "imgui_impl_sdlrenderer.h" -#include -#if defined(_MSC_VER) && _MSC_VER <= 1500 // MSVC 2008 or earlier -#include // intptr_t -#else -#include // intptr_t -#endif - -// SDL -#include -#if !SDL_VERSION_ATLEAST(2,0,17) -#error This backend requires SDL 2.0.17+ because of SDL_RenderGeometry() function -#endif - -// SDL_Renderer data -struct ImGui_ImplSDLRenderer_Data -{ - SDL_Renderer* SDLRenderer; - SDL_Texture* FontTexture; - ImGui_ImplSDLRenderer_Data() { memset(this, 0, sizeof(*this)); } -}; - -// Backend data stored in io.BackendRendererUserData to allow support for multiple Dear ImGui contexts -// It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. -static ImGui_ImplSDLRenderer_Data* ImGui_ImplSDLRenderer_GetBackendData() -{ - return ImGui::GetCurrentContext() ? (ImGui_ImplSDLRenderer_Data*)ImGui::GetIO().BackendRendererUserData : NULL; -} - -// Functions -bool ImGui_ImplSDLRenderer_Init(SDL_Renderer* renderer) -{ - ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); - IM_ASSERT(renderer != NULL && "SDL_Renderer not initialized!"); - - // Setup backend capabilities flags - ImGui_ImplSDLRenderer_Data* bd = IM_NEW(ImGui_ImplSDLRenderer_Data)(); - io.BackendRendererUserData = (void*)bd; - io.BackendRendererName = "imgui_impl_sdlrenderer"; - io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset; // We can honor the ImDrawCmd::VtxOffset field, allowing for large meshes. - - bd->SDLRenderer = renderer; - - return true; -} - -void ImGui_ImplSDLRenderer_Shutdown() -{ - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); - ImGuiIO& io = ImGui::GetIO(); - - ImGui_ImplSDLRenderer_DestroyDeviceObjects(); - - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; - IM_DELETE(bd); -} - -static void ImGui_ImplSDLRenderer_SetupRenderState() -{ - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - - // Clear out any viewports and cliprect set by the user - // FIXME: Technically speaking there are lots of other things we could backup/setup/restore during our render process. - SDL_RenderSetViewport(bd->SDLRenderer, NULL); - SDL_RenderSetClipRect(bd->SDLRenderer, NULL); -} - -bool ImGui_ImplSDLRenderer_NewFrame() -{ - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplSDLRenderer_Init()?"); - - if (!bd->FontTexture) - return ImGui_ImplSDLRenderer_CreateDeviceObjects(); - - return true; -} - -void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data) -{ - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - - // If there's a scale factor set by the user, use that instead - // If the user has specified a scale factor to SDL_Renderer already via SDL_RenderSetScale(), SDL will scale whatever we pass - // to SDL_RenderGeometryRaw() by that scale factor. In that case we don't want to be also scaling it ourselves here. - float rsx = 1.0f; - float rsy = 1.0f; - SDL_RenderGetScale(bd->SDLRenderer, &rsx, &rsy); - ImVec2 render_scale; - render_scale.x = (rsx == 1.0f) ? draw_data->FramebufferScale.x : 1.0f; - render_scale.y = (rsy == 1.0f) ? draw_data->FramebufferScale.y : 1.0f; - - // Avoid rendering when minimized, scale coordinates for retina displays (screen coordinates != framebuffer coordinates) - int fb_width = (int)(draw_data->DisplaySize.x * render_scale.x); - int fb_height = (int)(draw_data->DisplaySize.y * render_scale.y); - if (fb_width == 0 || fb_height == 0) - return; - - // Backup SDL_Renderer state that will be modified to restore it afterwards - struct BackupSDLRendererState - { - SDL_Rect Viewport; - bool ClipEnabled; - SDL_Rect ClipRect; - }; - BackupSDLRendererState old = {}; - old.ClipEnabled = SDL_RenderIsClipEnabled(bd->SDLRenderer) == SDL_TRUE; - SDL_RenderGetViewport(bd->SDLRenderer, &old.Viewport); - SDL_RenderGetClipRect(bd->SDLRenderer, &old.ClipRect); - - // Will project scissor/clipping rectangles into framebuffer space - ImVec2 clip_off = draw_data->DisplayPos; // (0,0) unless using multi-viewports - ImVec2 clip_scale = render_scale; - - // Render command lists - ImGui_ImplSDLRenderer_SetupRenderState(); - for (int n = 0; n < draw_data->CmdListsCount; n++) - { - const ImDrawList* cmd_list = draw_data->CmdLists[n]; - const ImDrawVert* vtx_buffer = cmd_list->VtxBuffer.Data; - const ImDrawIdx* idx_buffer = cmd_list->IdxBuffer.Data; - - for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) - { - const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback) - { - // User callback, registered via ImDrawList::AddCallback() - // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) - if (pcmd->UserCallback == ImDrawCallback_ResetRenderState) - ImGui_ImplSDLRenderer_SetupRenderState(); - else - pcmd->UserCallback(cmd_list, pcmd); - } - else - { - // Project scissor/clipping rectangles into framebuffer space - ImVec2 clip_min((pcmd->ClipRect.x - clip_off.x) * clip_scale.x, (pcmd->ClipRect.y - clip_off.y) * clip_scale.y); - ImVec2 clip_max((pcmd->ClipRect.z - clip_off.x) * clip_scale.x, (pcmd->ClipRect.w - clip_off.y) * clip_scale.y); - if (clip_min.x < 0.0f) { clip_min.x = 0.0f; } - if (clip_min.y < 0.0f) { clip_min.y = 0.0f; } - if (clip_max.x > fb_width) { clip_max.x = (float)fb_width; } - if (clip_max.y > fb_height) { clip_max.y = (float)fb_height; } - if (clip_max.x <= clip_min.x || clip_max.y <= clip_min.y) - continue; - - SDL_Rect r = { (int)(clip_min.x), (int)(clip_min.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y) }; - SDL_RenderSetClipRect(bd->SDLRenderer, &r); - - const float* xy = (const float*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, pos)); - const float* uv = (const float*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, uv)); -#if SDL_VERSION_ATLEAST(2,0,19) - const SDL_Color* color = (const SDL_Color*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.19+ -#else - const int* color = (const int*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.17 and 2.0.18 -#endif - - // Bind texture, Draw - SDL_Texture* tex = (SDL_Texture*)pcmd->GetTexID(); - SDL_SetTextureScaleMode(tex, SDL_ScaleModeBest); // ??? - SDL_RenderGeometryRaw(bd->SDLRenderer, tex, - xy, (int)sizeof(ImDrawVert), - color, (int)sizeof(ImDrawVert), - uv, (int)sizeof(ImDrawVert), - cmd_list->VtxBuffer.Size - pcmd->VtxOffset, - idx_buffer + pcmd->IdxOffset, pcmd->ElemCount, sizeof(ImDrawIdx)); - } - } - } - - // Restore modified SDL_Renderer state - SDL_RenderSetViewport(bd->SDLRenderer, &old.Viewport); - SDL_RenderSetClipRect(bd->SDLRenderer, old.ClipEnabled ? &old.ClipRect : NULL); -} - -// Called by Init/NewFrame/Shutdown -bool ImGui_ImplSDLRenderer_CreateFontsTexture() -{ - ImGuiIO& io = ImGui::GetIO(); - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - - // Build texture atlas - unsigned char* pixels; - int width, height; - io.Fonts->GetTexDataAsRGBA32(&pixels, &width, &height); // Load as RGBA 32-bit (75% of the memory is wasted, but default font is so small) because it is more likely to be compatible with user's existing shaders. If your ImTextureId represent a higher-level concept than just a GL texture id, consider calling GetTexDataAsAlpha8() instead to save on GPU memory. - - // Upload texture to graphics system - bd->FontTexture = SDL_CreateTexture(bd->SDLRenderer, SDL_PIXELFORMAT_ABGR8888, SDL_TEXTUREACCESS_STATIC, width, height); - if (bd->FontTexture == NULL) - { - SDL_Log("error creating texture"); - return false; - } - SDL_UpdateTexture(bd->FontTexture, NULL, pixels, 4 * width); - SDL_SetTextureBlendMode(bd->FontTexture, SDL_BLENDMODE_BLEND); - - // Store our identifier - io.Fonts->SetTexID((ImTextureID)(intptr_t)bd->FontTexture); - - return true; -} - -void ImGui_ImplSDLRenderer_DestroyFontsTexture() -{ - ImGuiIO& io = ImGui::GetIO(); - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - if (bd->FontTexture) - { - io.Fonts->SetTexID(0); - SDL_DestroyTexture(bd->FontTexture); - bd->FontTexture = NULL; - } -} - -bool ImGui_ImplSDLRenderer_CreateDeviceObjects() -{ - return ImGui_ImplSDLRenderer_CreateFontsTexture(); -} - -void ImGui_ImplSDLRenderer_DestroyDeviceObjects() -{ - ImGui_ImplSDLRenderer_DestroyFontsTexture(); -} diff --git a/extern/imgui_patched/imgui_impl_sdlrenderer.h b/extern/imgui_patched/imgui_impl_sdlrenderer.h deleted file mode 100644 index 379265de..00000000 --- a/extern/imgui_patched/imgui_impl_sdlrenderer.h +++ /dev/null @@ -1,31 +0,0 @@ -// dear imgui: Renderer Backend for SDL_Renderer -// (Requires: SDL 2.0.17+) - -// Important to understand: SDL_Renderer is an _optional_ component of SDL. -// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. -// If your application will want to render any non trivial amount of graphics other than UI, -// please be aware that SDL_Renderer offers a limited graphic API to the end-user and it might -// be difficult to step out of those boundaries. -// However, we understand it is a convenient choice to get an app started easily. - -// Implemented features: -// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Support for large meshes (64k+ vertices) with 16-bit indices. -// Missing features: -// [ ] Renderer: Multi-viewport support (multiple windows). - -#pragma once -#include "imgui.h" // IMGUI_IMPL_API - -struct SDL_Renderer; - -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_Init(SDL_Renderer* renderer); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_Shutdown(); -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_NewFrame(); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data); - -// Called by Init/NewFrame/Shutdown -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_CreateFontsTexture(); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_DestroyFontsTexture(); -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_CreateDeviceObjects(); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_DestroyDeviceObjects(); diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index f697a142..d7d3c9fd 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -179,7 +179,7 @@ void FurnaceGUI::drawChanOsc() { ImVec2 gradLeft=ImGui::GetCursorPos(); ImVec2 gradSize=ImVec2(400.0f*dpiScale,400.0f*dpiScale); - ImGui::Image(chanOscGradTex,gradSize); + ImGui::Image(rend->getTextureID(chanOscGradTex),gradSize); ImVec2 gradLeftAbs=ImGui::GetItemRectMin(); if (ImGui::IsItemClicked(ImGuiMouseButton_Right)) { if (chanOscGrad.points.size()<32) { diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 3781f289..a6fab88f 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -30,7 +30,6 @@ #include "imgui.h" #include "imgui_internal.h" #include "imgui_impl_sdl.h" -#include "imgui_impl_sdlrenderer.h" #include "ImGuiFileDialog.h" #include "IconsFontAwesome4.h" #include "misc/cpp/imgui_stdlib.h" @@ -3763,7 +3762,7 @@ bool FurnaceGUI::loop() { layoutTimeBegin=SDL_GetPerformanceCounter(); - if (!ImGui_ImplSDLRenderer_NewFrame()) { + if (!rend->newFrame()) { fontsFailed=true; } ImGui_ImplSDL2_NewFrame(sdlWin); @@ -5848,9 +5847,11 @@ bool FurnaceGUI::loop() { ImGui::GetIO().Fonts->Clear(); mainFont=ImGui::GetIO().Fonts->AddFontDefault(); patFont=mainFont; - ImGui_ImplSDLRenderer_DestroyFontsTexture(); + if (rend) rend->destroyFontsTexture(); if (!ImGui::GetIO().Fonts->Build()) { logE("error again while building font atlas!"); + } else { + rend->createFontsTexture(); } } @@ -6116,7 +6117,27 @@ bool FurnaceGUI::init() { logV("window size: %dx%d",scrW,scrH); - sdlWin=SDL_CreateWindow("Furnace",scrX,scrY,scrW,scrH,SDL_WINDOW_RESIZABLE|SDL_WINDOW_ALLOW_HIGHDPI|(scrMax?SDL_WINDOW_MAXIMIZED:0)|(fullScreen?SDL_WINDOW_FULLSCREEN_DESKTOP:0)); + if (!initRender()) { + if (settings.renderBackend=="OpenGL") { + settings.renderBackend=""; + e->setConf("renderBackend",""); + e->saveConf(); + lastError=fmt::sprintf("\r\nthe render backend has been set to a safe value. please restart Furnace."); + } else { + lastError=fmt::sprintf("could not init renderer! %s",SDL_GetError()); + if (!settings.renderDriver.empty()) { + settings.renderDriver=""; + e->setConf("renderDriver",""); + e->saveConf(); + lastError=fmt::sprintf("\r\nthe render driver has been set to a safe value. please restart Furnace."); + } + } + return false; + } + + rend->preInit(); + + sdlWin=SDL_CreateWindow("Furnace",scrX,scrY,scrW,scrH,SDL_WINDOW_RESIZABLE|SDL_WINDOW_ALLOW_HIGHDPI|(scrMax?SDL_WINDOW_MAXIMIZED:0)|(fullScreen?SDL_WINDOW_FULLSCREEN_DESKTOP:0)|rend->getWindowFlags()); if (sdlWin==NULL) { lastError=fmt::sprintf("could not open window! %s",SDL_GetError()); return false; @@ -6180,7 +6201,7 @@ bool FurnaceGUI::init() { SDL_SetHint(SDL_HINT_RENDER_DRIVER,settings.renderDriver.c_str()); } - if (!initRender()) { + if (!rend->init(sdlWin)) { if (settings.renderBackend=="OpenGL") { settings.renderBackend=""; e->setConf("renderBackend",""); @@ -6222,7 +6243,7 @@ bool FurnaceGUI::init() { ImGui::GetIO().Fonts->Clear(); mainFont=ImGui::GetIO().Fonts->AddFontDefault(); patFont=mainFont; - ImGui_ImplSDLRenderer_DestroyFontsTexture(); + if (rend) rend->destroyFontsTexture(); if (!ImGui::GetIO().Fonts->Build()) { logE("error again while building font atlas!"); } @@ -6457,6 +6478,8 @@ bool FurnaceGUI::finish() { FurnaceGUI::FurnaceGUI(): e(NULL), + renderBackend(GUI_BACKEND_SDL), + rend(NULL), sdlWin(NULL), vibrator(NULL), vibratorAvailable(false), diff --git a/src/gui/gui.h b/src/gui/gui.h index ac8908cd..1fd1e71e 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -24,7 +24,6 @@ #include "../engine/waveSynth.h" #include "imgui.h" #include "imgui_impl_sdl.h" -#include "imgui_impl_sdlrenderer.h" #include #include #include @@ -1227,6 +1226,7 @@ enum FurnaceGUIBlendMode { class FurnaceGUIRender { public: + virtual ImTextureID getTextureID(void* which); virtual bool lockTexture(void* which, void** data, int* pitch); virtual bool unlockTexture(void* which); virtual bool updateTexture(void* which, void* data, int pitch); @@ -1235,10 +1235,15 @@ class FurnaceGUIRender { virtual void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); virtual void setBlendMode(FurnaceGUIBlendMode mode); virtual void clear(ImVec4 color); + virtual bool newFrame(); + virtual void createFontsTexture(); + virtual void destroyFontsTexture(); virtual void renderGUI(); virtual void wipe(float alpha); virtual void present(); virtual bool getOutputSize(int& w, int& h); + virtual int getWindowFlags(); + virtual void preInit(); virtual bool init(SDL_Window* win); virtual void initGUI(SDL_Window* win); virtual void quitGUI(); diff --git a/src/gui/intro.cpp b/src/gui/intro.cpp index 75cc0fc1..db886316 100644 --- a/src/gui/intro.cpp +++ b/src/gui/intro.cpp @@ -69,7 +69,7 @@ void FurnaceGUI::drawImage(ImDrawList* dl, FurnaceGUIImages image, const ImVec2& ImU32 colorConverted=ImGui::GetColorU32(imgColor); - dl->AddImageQuad(img,quad0,quad1,quad2,quad3,uv0,uv1,uv2,uv3,colorConverted); + dl->AddImageQuad(rend->getTextureID(img),quad0,quad1,quad2,quad3,uv0,uv1,uv2,uv3,colorConverted); } void FurnaceGUI::endIntroTune() { diff --git a/src/gui/render.cpp b/src/gui/render.cpp index 069205d5..cc7cdba2 100644 --- a/src/gui/render.cpp +++ b/src/gui/render.cpp @@ -18,13 +18,51 @@ */ #include "gui.h" +#include "../ta-log.h" +#ifdef HAVE_RENDER_SDL #include "render/renderSDL.h" +#endif +#ifdef HAVE_RENDER_GL +#include "render/renderGL.h" +#endif + +#ifdef HAVE_RENDER_SDL +#define GUI_BACKEND_DEFAULT GUI_BACKEND_SDL +#else +#define GUI_BACKEND_DEFAULT GUI_BACKEND_GL +#endif bool FurnaceGUI::initRender() { if (rend!=NULL) return false; + + if (settings.renderBackend=="OpenGL") { + renderBackend=GUI_BACKEND_GL; + } else if (settings.renderBackend=="SDL") { + renderBackend=GUI_BACKEND_SDL; + } else { + renderBackend=GUI_BACKEND_DEFAULT; + } - rend=new FurnaceGUIRenderSDL; - return rend->init(sdlWin); + switch (renderBackend) { +#ifdef HAVE_RENDER_GL + case GUI_BACKEND_GL: + logI("render backend: OpenGL"); + rend=new FurnaceGUIRenderGL; + break; +#endif +#ifdef HAVE_RENDER_SDL + case GUI_BACKEND_SDL: + logI("render backend: SDL_Renderer"); + rend=new FurnaceGUIRenderSDL; + break; +#endif + default: + logE("invalid render backend!"); + return false; + break; + } + + return true; } bool FurnaceGUI::quitRender() { diff --git a/src/gui/render/abstract.cpp b/src/gui/render/abstract.cpp index 69adad0d..996cf4e8 100644 --- a/src/gui/render/abstract.cpp +++ b/src/gui/render/abstract.cpp @@ -19,6 +19,10 @@ #include "../gui.h" +ImTextureID FurnaceGUIRender::getTextureID(void* which) { + return NULL; +} + bool FurnaceGUIRender::lockTexture(void* which, void** data, int* pitch) { return false; } @@ -48,6 +52,16 @@ void FurnaceGUIRender::setBlendMode(FurnaceGUIBlendMode mode) { void FurnaceGUIRender::clear(ImVec4 color) { } +bool FurnaceGUIRender::newFrame() { + return true; +} + +void FurnaceGUIRender::createFontsTexture() { +} + +void FurnaceGUIRender::destroyFontsTexture() { +} + void FurnaceGUIRender::renderGUI() { } @@ -61,6 +75,13 @@ bool FurnaceGUIRender::getOutputSize(int& w, int& h) { return false; } +int FurnaceGUIRender::getWindowFlags() { + return 0; +} + +void FurnaceGUIRender::preInit() { +} + bool FurnaceGUIRender::init(SDL_Window* win) { return false; } @@ -72,7 +93,7 @@ bool FurnaceGUIRender::quit() { return false; } -void FurnaceGUIRender::quitGUI(){ +void FurnaceGUIRender::quitGUI() { } FurnaceGUIRender::~FurnaceGUIRender() { diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index e69de29b..1c6e2e2d 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -0,0 +1,365 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "renderGL.h" +#include "../../ta-log.h" +#include "SDL_opengl.h" +#include "backends/imgui_impl_opengl3.h" + +#define C(x) x; if (glGetError()!=GL_NO_ERROR) logW("OpenGL error in %s:%d: " #x,__FILE__,__LINE__); + +PFNGLGENBUFFERSPROC furGenBuffers=NULL; +PFNGLBINDBUFFERPROC furBindBuffer=NULL; +PFNGLBUFFERDATAPROC furBufferData=NULL; +PFNGLVERTEXATTRIBPOINTERPROC furVertexAttribPointer=NULL; +PFNGLENABLEVERTEXATTRIBARRAYPROC furEnableVertexAttribArray=NULL; + +PFNGLCREATESHADERPROC furCreateShader=NULL; +PFNGLSHADERSOURCEPROC furShaderSource=NULL; +PFNGLCOMPILESHADERPROC furCompileShader=NULL; +PFNGLGETSHADERIVPROC furGetShaderiv=NULL; +PFNGLATTACHSHADERPROC furAttachShader=NULL; +PFNGLBINDATTRIBLOCATIONPROC furBindAttribLocation=NULL; +PFNGLCREATEPROGRAMPROC furCreateProgram=NULL; +PFNGLLINKPROGRAMPROC furLinkProgram=NULL; +PFNGLGETPROGRAMIVPROC furGetProgramiv=NULL; +PFNGLUSEPROGRAMPROC furUseProgram=NULL; +PFNGLGETUNIFORMLOCATIONPROC furGetUniformLocation=NULL; +PFNGLUNIFORM1FPROC furUniform1f=NULL; +PFNGLGETSHADERINFOLOGPROC furGetShaderInfoLog=NULL; + +struct FurnaceGLTexture { + GLuint id; + int width, height; + unsigned char* lockedData; + FurnaceGLTexture(): + id(0), + width(0), + height(0), + lockedData(NULL) {} +}; + +const char* sh_wipe_srcV= + "#version 130\n" + "in vec4 fur_position;\n" + "void main() {\n" + " gl_Position=fur_position;\n" + "}\n"; + +const char* sh_wipe_srcF= + "#version 130\n" + "uniform float uAlpha;\n" + "out vec4 fur_FragColor;\n" + "void main() {\n" + " fur_FragColor=vec4(0.0,0.0,0.0,uAlpha);\n" + "}\n"; + +bool FurnaceGUIRenderGL::createShader(const char* vertexS, const char* fragmentS, int& vertex, int& fragment, int& program) { + int status; + char infoLog[4096]; + int infoLogLen; + + if (!furCreateShader || !furShaderSource || !furCompileShader || !furGetShaderiv || + !furGetShaderInfoLog || !furCreateProgram || !furAttachShader || !furLinkProgram || + !furBindAttribLocation || !furGetProgramiv) { + logW("I can't compile shaders"); + return false; + } + + vertex=furCreateShader(GL_VERTEX_SHADER); + furShaderSource(vertex,1,&vertexS,NULL); + furCompileShader(vertex); + furGetShaderiv(vertex,GL_COMPILE_STATUS,&status); + if (!status) { + logW("failed to compile vertex shader"); + furGetShaderInfoLog(vertex,4095,&infoLogLen,infoLog); + infoLog[infoLogLen]=0; + logW("%s",infoLog); + return false; + } + + fragment=furCreateShader(GL_FRAGMENT_SHADER); + furShaderSource(fragment,1,&fragmentS,NULL); + furCompileShader(fragment); + furGetShaderiv(fragment,GL_COMPILE_STATUS,&status); + if (!status) { + logW("failed to compile fragment shader"); + return false; + } + + program=furCreateProgram(); + furAttachShader(program,vertex); + furAttachShader(program,fragment); + furBindAttribLocation(program,0,"fur_position"); + furLinkProgram(program); + furGetProgramiv(program,GL_LINK_STATUS,&status); + if (!status) { + logW("failed to link shader!"); + return false; + } + + return true; +} + +ImTextureID FurnaceGUIRenderGL::getTextureID(void* which) { + intptr_t ret=((FurnaceGLTexture*)which)->id; + return (ImTextureID)ret; +} + +bool FurnaceGUIRenderGL::lockTexture(void* which, void** data, int* pitch) { + FurnaceGLTexture* t=(FurnaceGLTexture*)which; + if (t->lockedData!=NULL) return false; + t->lockedData=new unsigned char[t->width*t->height*4]; + + *data=t->lockedData; + *pitch=t->width*4; + return true; +} + +bool FurnaceGUIRenderGL::unlockTexture(void* which) { + FurnaceGLTexture* t=(FurnaceGLTexture*)which; + if (t->lockedData==NULL) return false; + + C(glBindTexture(GL_TEXTURE_2D,t->id)); + C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,t->width,t->height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,t->lockedData)); + + C(glFlush()); + delete[] t->lockedData; + t->lockedData=NULL; + + return true; +} + +bool FurnaceGUIRenderGL::updateTexture(void* which, void* data, int pitch) { + FurnaceGLTexture* t=(FurnaceGLTexture*)which; + + if (t->width*4!=pitch) return false; + + C(glBindTexture(GL_TEXTURE_2D,t->id)); + C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,t->width,t->height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,data)); + return true; +} + +void* FurnaceGUIRenderGL::createTexture(bool dynamic, int width, int height) { + FurnaceGLTexture* t=new FurnaceGLTexture; + C(glGenTextures(1,&t->id)); + C(glBindTexture(GL_TEXTURE_2D,t->id)); + C(glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR)); + C(glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR)); + C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,width,height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,NULL)); + C(glActiveTexture(GL_TEXTURE0)); + t->width=width; + t->height=height; + return t; +} + +bool FurnaceGUIRenderGL::destroyTexture(void* which) { + FurnaceGLTexture* t=(FurnaceGLTexture*)which; + C(glDeleteTextures(1,&t->id)); + delete t; + return true; +} + +void FurnaceGUIRenderGL::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +} + +void FurnaceGUIRenderGL::setBlendMode(FurnaceGUIBlendMode mode) { + switch (mode) { + case GUI_BLEND_MODE_NONE: + C(glBlendFunc(GL_ONE,GL_ZERO)); + C(glDisable(GL_BLEND)); + break; + case GUI_BLEND_MODE_BLEND: + C(glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)); + C(glEnable(GL_BLEND)); + break; + case GUI_BLEND_MODE_ADD: + C(glBlendFunc(GL_SRC_ALPHA,GL_ONE)); + C(glEnable(GL_BLEND)); + break; + case GUI_BLEND_MODE_MULTIPLY: + C(glBlendFunc(GL_ZERO,GL_SRC_COLOR)); + C(glEnable(GL_BLEND)); + break; + } +} + +void FurnaceGUIRenderGL::clear(ImVec4 color) { + SDL_GL_MakeCurrent(sdlWin,context); + C(glClearColor(color.x,color.y,color.z,color.w)); + C(glClear(GL_COLOR_BUFFER_BIT)); +} + +bool FurnaceGUIRenderGL::newFrame() { + ImGui_ImplOpenGL3_NewFrame(); + return true; +} + +void FurnaceGUIRenderGL::createFontsTexture() { + ImGui_ImplOpenGL3_CreateFontsTexture(); +} + +void FurnaceGUIRenderGL::destroyFontsTexture() { + ImGui_ImplOpenGL3_DestroyFontsTexture(); +} + +void FurnaceGUIRenderGL::renderGUI() { + ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); +} + +void FurnaceGUIRenderGL::wipe(float alpha) { + C(glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)); + C(glEnable(GL_BLEND)); + + quadVertex[0][0]=-1.0f; + quadVertex[0][1]=-1.0f; + quadVertex[0][2]=0.0f; + quadVertex[1][0]=1.0f; + quadVertex[1][1]=-1.0f; + quadVertex[1][2]=0.0f; + quadVertex[2][0]=-1.0f; + quadVertex[2][1]=1.0f; + quadVertex[2][2]=0.0f; + quadVertex[3][0]=1.0f; + quadVertex[3][1]=1.0f; + quadVertex[3][2]=0.0f; + + C(furBindBuffer(GL_ARRAY_BUFFER,quadBuf)); + C(furBufferData(GL_ARRAY_BUFFER,sizeof(quadVertex),quadVertex,GL_STATIC_DRAW)); + C(furVertexAttribPointer(0,3,GL_FLOAT,GL_FALSE,0,NULL)); + C(furEnableVertexAttribArray(0)); + C(glActiveTexture(GL_TEXTURE0)); + C(glBindTexture(GL_TEXTURE_2D,0)); + if (furUseProgram && furUniform1f) { + C(furUseProgram(sh_wipe_program)); + C(furUniform1f(sh_wipe_uAlpha,alpha)); + } + C(glDrawArrays(GL_TRIANGLE_STRIP,0,4)); +} + +void FurnaceGUIRenderGL::present() { + SDL_GL_SwapWindow(sdlWin); + C(glFinish()); +} + +bool FurnaceGUIRenderGL::getOutputSize(int& w, int& h) { + SDL_GL_GetDrawableSize(sdlWin,&w,&h); + return true; +} + +int FurnaceGUIRenderGL::getWindowFlags() { + return SDL_WINDOW_OPENGL; +} + +void FurnaceGUIRenderGL::preInit() { +#if defined(USE_GLES) + SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS, 0); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,SDL_GL_CONTEXT_PROFILE_ES); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,2); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,0); +#elif defined(__APPLE__) + // not recommended... + SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS, SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,SDL_GL_CONTEXT_PROFILE_CORE); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,3); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,2); +#else + SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS,0); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,3); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,0); +#endif + + SDL_GL_SetAttribute(SDL_GL_RED_SIZE,8); + SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE,8); + SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE,8); + SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE,0); + SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER,1); + SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE,24); +} + +#define LOAD_PROC_MANDATORY(_v,_t,_s) \ + _v=(_t)SDL_GL_GetProcAddress(_s); \ + if (!_v) { \ + logE(_s " not found"); \ + return false; \ + } + +#define LOAD_PROC_OPTIONAL(_v,_t,_s) \ + _v=(_t)SDL_GL_GetProcAddress(_s); \ + if (!_v) { \ + logW(_s " not found"); \ + } + +bool FurnaceGUIRenderGL::init(SDL_Window* win) { + sdlWin=win; + context=SDL_GL_CreateContext(win); + if (context==NULL) { + return false; + } + SDL_GL_MakeCurrent(win,context); + SDL_GL_SetSwapInterval(1); + + LOAD_PROC_MANDATORY(furGenBuffers,PFNGLGENBUFFERSPROC,"glGenBuffers"); + LOAD_PROC_MANDATORY(furBindBuffer,PFNGLBINDBUFFERPROC,"glBindBuffer"); + LOAD_PROC_MANDATORY(furBufferData,PFNGLBUFFERDATAPROC,"glBufferData"); + LOAD_PROC_MANDATORY(furVertexAttribPointer,PFNGLVERTEXATTRIBPOINTERPROC,"glVertexAttribPointer"); + LOAD_PROC_MANDATORY(furEnableVertexAttribArray,PFNGLENABLEVERTEXATTRIBARRAYPROC,"glEnableVertexAttribArray"); + + LOAD_PROC_OPTIONAL(furCreateShader,PFNGLCREATESHADERPROC,"glCreateShader"); + LOAD_PROC_OPTIONAL(furShaderSource,PFNGLSHADERSOURCEPROC,"glShaderSource"); + LOAD_PROC_OPTIONAL(furCompileShader,PFNGLCOMPILESHADERPROC,"glCompileShader"); + LOAD_PROC_OPTIONAL(furGetShaderiv,PFNGLGETSHADERIVPROC,"glGetShaderiv"); + LOAD_PROC_OPTIONAL(furAttachShader,PFNGLATTACHSHADERPROC,"glAttachShader"); + LOAD_PROC_OPTIONAL(furBindAttribLocation,PFNGLBINDATTRIBLOCATIONPROC,"glBindAttribLocation"); + LOAD_PROC_OPTIONAL(furCreateProgram,PFNGLCREATEPROGRAMPROC,"glCreateProgram"); + LOAD_PROC_OPTIONAL(furLinkProgram,PFNGLLINKPROGRAMPROC,"glLinkProgram"); + LOAD_PROC_OPTIONAL(furGetProgramiv,PFNGLGETPROGRAMIVPROC,"glGetProgramiv"); + LOAD_PROC_OPTIONAL(furUseProgram,PFNGLUSEPROGRAMPROC,"glUseProgram"); + LOAD_PROC_OPTIONAL(furGetUniformLocation,PFNGLGETUNIFORMLOCATIONPROC,"glGetUniformLocation"); + LOAD_PROC_OPTIONAL(furUniform1f,PFNGLUNIFORM1FPROC,"glUniform1f"); + LOAD_PROC_OPTIONAL(furGetShaderInfoLog,PFNGLGETSHADERINFOLOGPROC,"glGetShaderInfoLog"); + + + if (createShader(sh_wipe_srcV,sh_wipe_srcF,sh_wipe_vertex,sh_wipe_fragment,sh_wipe_program)) { + sh_wipe_uAlpha=furGetUniformLocation(sh_wipe_program,"uAlpha"); + } + + C(furGenBuffers(1,&quadBuf)); + return true; +} + +void FurnaceGUIRenderGL::initGUI(SDL_Window* win) { + IMGUI_CHECKVERSION(); + ImGui::CreateContext(); + + ImGui_ImplSDL2_InitForOpenGL(win,context); + ImGui_ImplOpenGL3_Init(); +} + +bool FurnaceGUIRenderGL::quit() { + if (context==NULL) return false; + SDL_GL_DeleteContext(context); + context=NULL; + return true; +} + +void FurnaceGUIRenderGL::quitGUI() { + ImGui_ImplOpenGL3_Shutdown(); +} \ No newline at end of file diff --git a/src/gui/render/renderGL.h b/src/gui/render/renderGL.h index e69de29b..6f824a03 100644 --- a/src/gui/render/renderGL.h +++ b/src/gui/render/renderGL.h @@ -0,0 +1,65 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "../gui.h" + +class FurnaceGUIRenderGL: public FurnaceGUIRender { + SDL_GLContext context; + SDL_Window* sdlWin; + float quadVertex[4][3]; + unsigned int quadBuf; + + // SHADERS // + // -> wipe + int sh_wipe_vertex; + int sh_wipe_fragment; + int sh_wipe_program; + int sh_wipe_uAlpha; + + bool createShader(const char* vertexS, const char* fragmentS, int& vertex, int& fragment, int& program); + + public: + ImTextureID getTextureID(void* which); + bool lockTexture(void* which, void** data, int* pitch); + bool unlockTexture(void* which); + bool updateTexture(void* which, void* data, int pitch); + void* createTexture(bool dynamic, int width, int height); + bool destroyTexture(void* which); + void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + void setBlendMode(FurnaceGUIBlendMode mode); + void clear(ImVec4 color); + bool newFrame(); + void createFontsTexture(); + void destroyFontsTexture(); + void renderGUI(); + void wipe(float alpha); + void present(); + bool getOutputSize(int& w, int& h); + int getWindowFlags(); + void preInit(); + bool init(SDL_Window* win); + void initGUI(SDL_Window* win); + void quitGUI(); + bool quit(); + FurnaceGUIRenderGL(): + context(NULL), + sdlWin(NULL) { + memset(quadVertex,0,4*3*sizeof(float)); + } +}; \ No newline at end of file diff --git a/src/gui/render/renderSDL.cpp b/src/gui/render/renderSDL.cpp index aea055a4..0eb6271a 100644 --- a/src/gui/render/renderSDL.cpp +++ b/src/gui/render/renderSDL.cpp @@ -18,6 +18,11 @@ */ #include "renderSDL.h" +#include "backends/imgui_impl_sdlrenderer.h" + +ImTextureID FurnaceGUIRenderSDL::getTextureID(void* which) { + return which; +} bool FurnaceGUIRenderSDL::lockTexture(void* which, void** data, int* pitch) { return SDL_LockTexture((SDL_Texture*)which,NULL,data,pitch)==0; @@ -80,6 +85,18 @@ void FurnaceGUIRenderSDL::clear(ImVec4 color) { SDL_RenderClear(sdlRend); } +bool FurnaceGUIRenderSDL::newFrame() { + return ImGui_ImplSDLRenderer_NewFrame(); +} + +void FurnaceGUIRenderSDL::createFontsTexture() { + ImGui_ImplSDLRenderer_CreateFontsTexture(); +} + +void FurnaceGUIRenderSDL::destroyFontsTexture() { + ImGui_ImplSDLRenderer_DestroyFontsTexture(); +} + void FurnaceGUIRenderSDL::renderGUI() { ImGui_ImplSDLRenderer_RenderDrawData(ImGui::GetDrawData()); } @@ -98,6 +115,13 @@ bool FurnaceGUIRenderSDL::getOutputSize(int& w, int& h) { return SDL_GetRendererOutputSize(sdlRend,&w,&h)==0; } +int FurnaceGUIRenderSDL::getWindowFlags() { + return 0; +} + +void FurnaceGUIRenderSDL::preInit() { +} + bool FurnaceGUIRenderSDL::init(SDL_Window* win) { sdlRend=SDL_CreateRenderer(win,-1,SDL_RENDERER_ACCELERATED|SDL_RENDERER_PRESENTVSYNC|SDL_RENDERER_TARGETTEXTURE); return (sdlRend!=NULL); diff --git a/src/gui/render/renderSDL.h b/src/gui/render/renderSDL.h index d6071b2a..afae3b3c 100644 --- a/src/gui/render/renderSDL.h +++ b/src/gui/render/renderSDL.h @@ -22,6 +22,7 @@ class FurnaceGUIRenderSDL: public FurnaceGUIRender { SDL_Renderer* sdlRend; public: + ImTextureID getTextureID(void* which); bool lockTexture(void* which, void** data, int* pitch); bool unlockTexture(void* which); bool updateTexture(void* which, void* data, int pitch); @@ -30,10 +31,15 @@ class FurnaceGUIRenderSDL: public FurnaceGUIRender { void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); void setBlendMode(FurnaceGUIBlendMode mode); void clear(ImVec4 color); + bool newFrame(); + void createFontsTexture(); + void destroyFontsTexture(); void renderGUI(); void wipe(float alpha); void present(); bool getOutputSize(int& w, int& h); + int getWindowFlags(); + void preInit(); bool init(SDL_Window* win); void initGUI(SDL_Window* win); void quitGUI(); diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 301c3b8b..c0691f7d 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -1223,7 +1223,7 @@ void FurnaceGUI::drawSampleEdit() { updateSampleTex=false; } - ImGui::ImageButton(sampleTex,avail,ImVec2(0,0),ImVec2(1,1),0); + ImGui::ImageButton(rend->getTextureID(sampleTex),avail,ImVec2(0,0),ImVec2(1,1),0); ImVec2 rectMin=ImGui::GetItemRectMin(); ImVec2 rectMax=ImGui::GetItemRectMax(); diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index e2a30e35..943646d5 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -2711,6 +2711,7 @@ void FurnaceGUI::syncSettings() { settings.orderButtonPos=e->getConfInt("orderButtonPos",2); settings.compress=e->getConfInt("compress",1); settings.newPatternFormat=e->getConfInt("newPatternFormat",1); + settings.renderBackend=e->getConfString("renderBackend","SDL"); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -3050,6 +3051,7 @@ void FurnaceGUI::commitSettings() { e->setConf("orderButtonPos",settings.orderButtonPos); e->setConf("compress",settings.compress); e->setConf("newPatternFormat",settings.newPatternFormat); + e->setConf("renderBackend",settings.renderBackend); // colors for (int i=0; idestroyFontsTexture(); if (!ImGui::GetIO().Fonts->Build()) { logE("error while building font atlas!"); showError("error while loading fonts! please check your settings."); ImGui::GetIO().Fonts->Clear(); mainFont=ImGui::GetIO().Fonts->AddFontDefault(); patFont=mainFont; - ImGui_ImplSDLRenderer_DestroyFontsTexture(); + if (rend) rend->destroyFontsTexture(); if (!ImGui::GetIO().Fonts->Build()) { logE("error again while building font atlas!"); + } else { + rend->createFontsTexture(); } + } else { + rend->createFontsTexture(); } } From 398a896d6edcbf15a242683a1eb8fa1830334534 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 02:10:28 -0500 Subject: [PATCH 011/183] opengl32.lib doesn't provide glActiveTexture --- src/gui/render/renderGL.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index 1c6e2e2d..f76ffaac 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -29,6 +29,7 @@ PFNGLBINDBUFFERPROC furBindBuffer=NULL; PFNGLBUFFERDATAPROC furBufferData=NULL; PFNGLVERTEXATTRIBPOINTERPROC furVertexAttribPointer=NULL; PFNGLENABLEVERTEXATTRIBARRAYPROC furEnableVertexAttribArray=NULL; +PFNGLACTIVETEXTUREPROC furActiveTexture=NULL; PFNGLCREATESHADERPROC furCreateShader=NULL; PFNGLSHADERSOURCEPROC furShaderSource=NULL; @@ -163,7 +164,7 @@ void* FurnaceGUIRenderGL::createTexture(bool dynamic, int width, int height) { C(glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR)); C(glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR)); C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,width,height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,NULL)); - C(glActiveTexture(GL_TEXTURE0)); + C(furActiveTexture(GL_TEXTURE0)); t->width=width; t->height=height; return t; @@ -321,6 +322,7 @@ bool FurnaceGUIRenderGL::init(SDL_Window* win) { LOAD_PROC_MANDATORY(furBufferData,PFNGLBUFFERDATAPROC,"glBufferData"); LOAD_PROC_MANDATORY(furVertexAttribPointer,PFNGLVERTEXATTRIBPOINTERPROC,"glVertexAttribPointer"); LOAD_PROC_MANDATORY(furEnableVertexAttribArray,PFNGLENABLEVERTEXATTRIBARRAYPROC,"glEnableVertexAttribArray"); + LOAD_PROC_MANDATORY(furActiveTexture,PFNGLACTIVETEXTUREPROC,"glActiveTexture"); LOAD_PROC_OPTIONAL(furCreateShader,PFNGLCREATESHADERPROC,"glCreateShader"); LOAD_PROC_OPTIONAL(furShaderSource,PFNGLSHADERSOURCEPROC,"glShaderSource"); From 20b4ad5cbda83928794b8886e3f3b17039a16a95 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 02:27:37 -0500 Subject: [PATCH 012/183] PFFFFFFFFFFFFFFFFFF --- src/gui/render/renderGL.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index f76ffaac..0abc00cc 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -245,7 +245,7 @@ void FurnaceGUIRenderGL::wipe(float alpha) { C(furBufferData(GL_ARRAY_BUFFER,sizeof(quadVertex),quadVertex,GL_STATIC_DRAW)); C(furVertexAttribPointer(0,3,GL_FLOAT,GL_FALSE,0,NULL)); C(furEnableVertexAttribArray(0)); - C(glActiveTexture(GL_TEXTURE0)); + C(furActiveTexture(GL_TEXTURE0)); C(glBindTexture(GL_TEXTURE_2D,0)); if (furUseProgram && furUniform1f) { C(furUseProgram(sh_wipe_program)); From 169b664837eefc8701dbc3a5ef6165e3c2774e60 Mon Sep 17 00:00:00 2001 From: YohananDiamond Date: Sat, 3 Jun 2023 16:54:52 -0300 Subject: [PATCH 013/183] please work --- src/gui/dataList.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gui/dataList.cpp b/src/gui/dataList.cpp index 57dafb25..2ccbca94 100644 --- a/src/gui/dataList.cpp +++ b/src/gui/dataList.cpp @@ -287,7 +287,9 @@ void FurnaceGUI::insListItem(int i, int dir, int asset) { } else { ImGui::PushStyleColor(ImGuiCol_Text,uiColors[GUI_COLOR_TEXT]); } - if (ImGui::Selectable(name.c_str(),(i==-1)?(curIns<0 || curIns>=e->song.insLen):(curIns==i))) { + bool insReleased=ImGui::Selectable(name.c_str(),(i==-1)?(curIns<0 || curIns>=e->song.insLen):(curIns==i)); + bool insPressed=ImGui::IsItemActivated(); + if (insReleased || (!insListDir && insPressed)) { curIns=i; wavePreviewInit=true; updateFMPreview=true; From b2cf64c117b89bb65997ade66f8c35825f3f2b29 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 15:05:55 -0500 Subject: [PATCH 014/183] GUI: GL render backend now supports ES --- CMakeLists.txt | 13 +++++++++++++ src/gui/render/renderGL.cpp | 14 ++++++++++---- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 75cd110e..536ec434 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -61,6 +61,12 @@ else() set(WITH_RENDER_OPENGL_DEFAULT ON) endif() +if (ANDROID) + set(USE_GLES_DEFAULT ON) +else() + set(USE_GLES_DEFAULT OFF) +endif() + option(BUILD_GUI "Build the tracker (disable to build only a headless player)" ${BUILD_GUI_DEFAULT}) option(USE_RTMIDI "Build with MIDI support using RtMidi." ${USE_RTMIDI_DEFAULT}) option(USE_SDL2 "Build with SDL2. Required to build with GUI." ${USE_SDL2_DEFAULT}) @@ -69,6 +75,7 @@ option(USE_BACKWARD "Use backward-cpp to print a backtrace on crash/abort." ${US option(WITH_JACK "Whether to build with JACK support. Auto-detects if JACK is available" ${WITH_JACK_DEFAULT}) option(WITH_RENDER_SDL "Whether to build with the SDL_Renderer render backend." ${WITH_RENDER_SDL_DEFAULT}) option(WITH_RENDER_OPENGL "Whether to build with the OpenGL render backend." ${WITH_RENDER_OPENGL_DEFAULT}) +option(USE_GLES "Use OpenGL ES for the OpenGL render backend." ${USE_GLES_DEFAULT}) option(SYSTEM_FFTW "Use a system-installed version of FFTW instead of the vendored one" OFF) option(SYSTEM_FMT "Use a system-installed version of fmt instead of the vendored one" OFF) option(SYSTEM_LIBSNDFILE "Use a system-installed version of libsndfile instead of the vendored one" OFF) @@ -704,8 +711,14 @@ if (WITH_RENDER_OPENGL) list(APPEND GUI_SOURCES src/gui/render/renderGL.cpp) list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_opengl3.cpp) list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_GL) + if (USE_GLES) + list(APPEND DEPENDENCIES_DEFINES USE_GLES) + list(APPEND DEPENDENCIES_DEFINES IMGUI_IMPL_OPENGL_ES2) + endif() if (WIN32) list(APPEND DEPENDENCIES_LIBRARIES opengl32) + elseif(USE_GLES) + list(APPEND DEPENDENCIES_LIBRARIES GLESv2) else() list(APPEND DEPENDENCIES_LIBRARIES GL) endif() diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index 0abc00cc..951208ab 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -19,7 +19,13 @@ #include "renderGL.h" #include "../../ta-log.h" +#ifdef USE_GLES +#include "SDL_opengles2.h" +#define PIXEL_FORMAT GL_RGBA +#else #include "SDL_opengl.h" +#define PIXEL_FORMAT GL_UNSIGNED_INT_8_8_8_8_REV +#endif #include "backends/imgui_impl_opengl3.h" #define C(x) x; if (glGetError()!=GL_NO_ERROR) logW("OpenGL error in %s:%d: " #x,__FILE__,__LINE__); @@ -138,7 +144,7 @@ bool FurnaceGUIRenderGL::unlockTexture(void* which) { if (t->lockedData==NULL) return false; C(glBindTexture(GL_TEXTURE_2D,t->id)); - C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,t->width,t->height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,t->lockedData)); + C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,t->width,t->height,0,GL_RGBA,PIXEL_FORMAT,t->lockedData)); C(glFlush()); delete[] t->lockedData; @@ -153,7 +159,7 @@ bool FurnaceGUIRenderGL::updateTexture(void* which, void* data, int pitch) { if (t->width*4!=pitch) return false; C(glBindTexture(GL_TEXTURE_2D,t->id)); - C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,t->width,t->height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,data)); + C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,t->width,t->height,0,GL_RGBA,PIXEL_FORMAT,data)); return true; } @@ -163,7 +169,7 @@ void* FurnaceGUIRenderGL::createTexture(bool dynamic, int width, int height) { C(glBindTexture(GL_TEXTURE_2D,t->id)); C(glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR)); C(glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR)); - C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,width,height,0,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8_REV,NULL)); + C(glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,width,height,0,GL_RGBA,PIXEL_FORMAT,NULL)); C(furActiveTexture(GL_TEXTURE0)); t->width=width; t->height=height; @@ -364,4 +370,4 @@ bool FurnaceGUIRenderGL::quit() { void FurnaceGUIRenderGL::quitGUI() { ImGui_ImplOpenGL3_Shutdown(); -} \ No newline at end of file +} From 9c4a7cd6d4ed48f8b7ca014fa594a900425ada2d Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 17:08:20 -0500 Subject: [PATCH 015/183] renderGL: fix OpenGL ES stuff --- src/gui/gui.h | 8 ++++++++ src/gui/render.cpp | 8 +------- src/gui/render/renderGL.cpp | 16 +++++++++++++++- src/gui/settings.cpp | 30 +++++++++++++++++++++++------- 4 files changed, 47 insertions(+), 15 deletions(-) diff --git a/src/gui/gui.h b/src/gui/gui.h index 1fd1e71e..6fed038a 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -74,6 +74,14 @@ enum FurnaceGUIRenderBackend { GUI_BACKEND_GL }; +#ifdef HAVE_RENDER_SDL +#define GUI_BACKEND_DEFAULT GUI_BACKEND_SDL +#define GUI_BACKEND_DEFAULT_NAME "SDL" +#else +#define GUI_BACKEND_DEFAULT GUI_BACKEND_GL +#define GUI_BACKEND_DEFAULT_NAME "OpenGL" +#endif + // TODO: // - add colors for FM envelope and waveform // - maybe add "alternate" color for FM modulators/carriers (a bit difficult) diff --git a/src/gui/render.cpp b/src/gui/render.cpp index cc7cdba2..908fd57d 100644 --- a/src/gui/render.cpp +++ b/src/gui/render.cpp @@ -26,12 +26,6 @@ #include "render/renderGL.h" #endif -#ifdef HAVE_RENDER_SDL -#define GUI_BACKEND_DEFAULT GUI_BACKEND_SDL -#else -#define GUI_BACKEND_DEFAULT GUI_BACKEND_GL -#endif - bool FurnaceGUI::initRender() { if (rend!=NULL) return false; @@ -71,4 +65,4 @@ bool FurnaceGUI::quitRender() { delete rend; rend=NULL; return ret; -} \ No newline at end of file +} diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index 951208ab..90adf5a1 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -21,7 +21,7 @@ #include "../../ta-log.h" #ifdef USE_GLES #include "SDL_opengles2.h" -#define PIXEL_FORMAT GL_RGBA +#define PIXEL_FORMAT GL_UNSIGNED_BYTE #else #include "SDL_opengl.h" #define PIXEL_FORMAT GL_UNSIGNED_INT_8_8_8_8_REV @@ -62,6 +62,19 @@ struct FurnaceGLTexture { lockedData(NULL) {} }; +#ifdef USE_GLES +const char* sh_wipe_srcV= + "attribute vec4 fur_position;\n" + "void main() {\n" + " gl_Position=fur_position;\n" + "}\n"; + +const char* sh_wipe_srcF= + "uniform float uAlpha;\n" + "void main() {\n" + " gl_FragColor=vec4(0.0,0.0,0.0,uAlpha);\n" + "}\n"; +#else const char* sh_wipe_srcV= "#version 130\n" "in vec4 fur_position;\n" @@ -76,6 +89,7 @@ const char* sh_wipe_srcF= "void main() {\n" " fur_FragColor=vec4(0.0,0.0,0.0,uAlpha);\n" "}\n"; +#endif bool FurnaceGUIRenderGL::createShader(const char* vertexS, const char* fragmentS, int& vertex, int& fragment, int& program) { int status; diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 943646d5..e66926b1 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -1278,17 +1278,33 @@ void FurnaceGUI::drawSettings() { ImVec2 settingsViewSize=ImGui::GetContentRegionAvail(); settingsViewSize.y-=ImGui::GetFrameHeight()+ImGui::GetStyle().WindowPadding.y; if (ImGui::BeginChild("SettingsView",settingsViewSize)) { - if (ImGui::BeginCombo("Render driver",settings.renderDriver.empty()?"Automatic":settings.renderDriver.c_str())) { - if (ImGui::Selectable("Automatic",settings.renderDriver.empty())) { - settings.renderDriver=""; + String curRenderBackend=settings.renderBackend.empty()?GUI_BACKEND_DEFAULT_NAME:settings.renderBackend; + if (ImGui::BeginCombo("Render backend",curRenderBackend.c_str())) { +#ifdef HAVE_RENDER_SDL + if (ImGui::Selectable("SDL Renderer",curRenderBackend=="SDL")) { + settings.renderBackend="SDL"; } - for (String& i: availRenderDrivers) { - if (ImGui::Selectable(i.c_str(),i==settings.renderDriver)) { - settings.renderDriver=i; - } +#endif +#ifdef HAVE_RENDER_GL + if (ImGui::Selectable("OpenGL",curRenderBackend=="OpenGL")) { + settings.renderBackend="OpenGL"; } +#endif ImGui::EndCombo(); } + if (curRenderBackend=="SDL") { + if (ImGui::BeginCombo("Render driver",settings.renderDriver.empty()?"Automatic":settings.renderDriver.c_str())) { + if (ImGui::Selectable("Automatic",settings.renderDriver.empty())) { + settings.renderDriver=""; + } + for (String& i: availRenderDrivers) { + if (ImGui::Selectable(i.c_str(),i==settings.renderDriver)) { + settings.renderDriver=i; + } + } + ImGui::EndCombo(); + } + } bool dpiScaleAuto=(settings.dpiScale<0.5f); if (ImGui::Checkbox("Automatic UI scaling factor",&dpiScaleAuto)) { From a0b426eec8401cdfcef67276d3722a3b830fb390 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 19:01:03 -0500 Subject: [PATCH 016/183] update doc --- papers/doc/1-intro/README.md | 17 ++++--- papers/doc/1-intro/hex.md | 97 ++++++++++++++++++++++++++++++++++++ 2 files changed, 108 insertions(+), 6 deletions(-) create mode 100644 papers/doc/1-intro/hex.md diff --git a/papers/doc/1-intro/README.md b/papers/doc/1-intro/README.md index a550aca1..580d2ed7 100644 --- a/papers/doc/1-intro/README.md +++ b/papers/doc/1-intro/README.md @@ -7,6 +7,17 @@ It has a music tracker interface. think of a piano roll, or a table that scrolls Another core feature of Furnace is its windowing system, similar to that of GEMS or Deflemask, but with a few more features. +## Interface + +Furnace is built to have a user-friendly interface that is intentionally made so that it is quick and easy to get around when working in Furnace. +However, we understand that the interface may not be the easiest to learn, depending on how you learn, so there is documentation on it as well. + +See [2-interface](https://github.com/tildearrow/furnace/tree/master/papers/doc/2-interface) and [3-pattern](https://github.com/tildearrow/furnace/tree/master/papers/doc/3-pattern) to view said documentation. + +## Hexadecimal + +Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [hex.md](this guide) for a crash course. + ## Sound generation Furnace generates sound from 3 different main types of sound sources. @@ -19,9 +30,3 @@ Wavetables only work in the sequencer if you bind them to an instrument. See [4- To sequence a sample, you do not need to assign it to an instrument, however, to resample samples (change the speed of a sample), you need to bind it to a Sample instrument. See [6-sample](https://github.com/tildearrow/furnace/tree/master/papers/doc/6-sample) and [4-instrument](https://github.com/tildearrow/furnace/tree/master/papers/doc/4-instrument) for more details. -## Interface/other - -Furnace is built to have a user-friendly interface that is intentionally made so that it is quick and easy to get around when working in Furnace. -However, we understand that the interface may not be the easiest to learn, depending on how you learn, so there is documentation on it as well. - -See [2-interface](https://github.com/tildearrow/furnace/tree/master/papers/doc/2-interface) and [3-pattern](https://github.com/tildearrow/furnace/tree/master/papers/doc/3-pattern) to view said documentation. diff --git a/papers/doc/1-intro/hex.md b/papers/doc/1-intro/hex.md new file mode 100644 index 00000000..7f3325d7 --- /dev/null +++ b/papers/doc/1-intro/hex.md @@ -0,0 +1,97 @@ +# hexadecimal + +the hexadecimal numeral system differs from the decimal system by having 16 digits rather than 10: + +``` +hex| decimal +---|--------- +`0`| 0 +`1`| 1 +`2`| 2 +`3`| 3 +`4`| 4 +`5`| 5 +`6`| 6 +`7`| 7 +`8`| 8 +`9`| 9 +`A`| 10 +`B`| 11 +`C`| 12 +`D`| 13 +`E`| 14 +`F`| 15 +``` + +when there is more than one digit, these are multiplied by 16, 256, 4096 and so on rather than 10, 100, 1000: + +``` +hex | decimal +----|--------- +`00`| 0 +`04`| 4 +`08`| 8 +`0F`| 15 +`10`| 16 +`11`| 17 +`12`| 18 +`13`| 19 +`20`| 32 +`30`| 48 +`40`| 64 +``` + +# hex to decimal + +for example, take hexadecimal number `AA`: + +``` + 2nd digit -\ /- 1st digit + A A + 16^1*10 = 16*10 = 160 + 10 = 170 +``` + +now for hexadecimal number `4C5F`: + +``` + + 3rd digit -\ /- 2nd digit + 4th digit -\ | | /- 1st digit + 4 C 5 F + | | | | + | | | 15 = 15 = 15 + + | | \16^1*5 = 16 * 5 = 80 + | \--- 16^2*12 = 256 * 12 = 3072 + \--------- 16^3*4 = 4096 * 4 = 16384 + ------- + = 19551 +``` + +# decimal to hex + +if it's less than 16, just memorize the table at the top of this document. + +otherwise find the power of 16 that is closest to the number you want to convert, but no larger than the number. +then divide, and take the remainder. +divide the remainder with the previous power of 16, until the divider is 1. + +for example, for the decimal number `220`: + +``` +220 ÷ 16 = 13 (r = 12) D + 12 ÷ 1 = 12 (stop here) C + += DC +``` + +now for decimal number `69420`: + +``` +69420 ÷ 65536 = 1 (r = 3884) 1 + 3884 ÷ 4096 = 0 (r = 3884) 0 + 3884 ÷ 256 = 15 (r = 44) F + 44 ÷ 16 = 2 (r = 12) 2 + 12 ÷ 1 = 12 (stop here) C + += 10F2C +``` From c1367beeb9366af83a60371978de5c4b91dd111b Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 19:02:01 -0500 Subject: [PATCH 017/183] update again --- papers/doc/1-intro/hex.md | 54 +++++++++++++++++++-------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/papers/doc/1-intro/hex.md b/papers/doc/1-intro/hex.md index 7f3325d7..6139ca87 100644 --- a/papers/doc/1-intro/hex.md +++ b/papers/doc/1-intro/hex.md @@ -5,22 +5,22 @@ the hexadecimal numeral system differs from the decimal system by having 16 digi ``` hex| decimal ---|--------- -`0`| 0 -`1`| 1 -`2`| 2 -`3`| 3 -`4`| 4 -`5`| 5 -`6`| 6 -`7`| 7 -`8`| 8 -`9`| 9 -`A`| 10 -`B`| 11 -`C`| 12 -`D`| 13 -`E`| 14 -`F`| 15 + 0 | 0 + 1 | 1 + 2 | 2 + 3 | 3 + 4 | 4 + 5 | 5 + 6 | 6 + 7 | 7 + 8 | 8 + 9 | 9 + A | 10 + B | 11 + C | 12 + D | 13 + E | 14 + F | 15 ``` when there is more than one digit, these are multiplied by 16, 256, 4096 and so on rather than 10, 100, 1000: @@ -28,17 +28,17 @@ when there is more than one digit, these are multiplied by 16, 256, 4096 and so ``` hex | decimal ----|--------- -`00`| 0 -`04`| 4 -`08`| 8 -`0F`| 15 -`10`| 16 -`11`| 17 -`12`| 18 -`13`| 19 -`20`| 32 -`30`| 48 -`40`| 64 + 00 | 0 + 04 | 4 + 08 | 8 + 0F | 15 + 10 | 16 + 11 | 17 + 12 | 18 + 13 | 19 + 20 | 32 + 30 | 48 + 40 | 64 ``` # hex to decimal From 08511475dc40fc23586307faa9b3d0f9547c2a1c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 19:03:36 -0500 Subject: [PATCH 018/183] asfdkljakl;sfdj --- papers/doc/1-intro/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/papers/doc/1-intro/README.md b/papers/doc/1-intro/README.md index 580d2ed7..0f89f6cc 100644 --- a/papers/doc/1-intro/README.md +++ b/papers/doc/1-intro/README.md @@ -16,7 +16,7 @@ See [2-interface](https://github.com/tildearrow/furnace/tree/master/papers/doc/2 ## Hexadecimal -Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [hex.md](this guide) for a crash course. +Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [this guide](hex.md) for a crash course. ## Sound generation From fe5b96bb059bd3b420bd57086a9730b6a58f499c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 3 Jun 2023 20:20:59 -0500 Subject: [PATCH 019/183] update doc hopefully I don't get bored and start doing something else --- papers/doc/1-intro/README.md | 33 +++++++++----------------- papers/doc/2-interface/README.md | 4 ++++ papers/doc/2-interface/interface1.png | Bin 0 -> 564402 bytes 3 files changed, 15 insertions(+), 22 deletions(-) create mode 100644 papers/doc/2-interface/interface1.png diff --git a/papers/doc/1-intro/README.md b/papers/doc/1-intro/README.md index 0f89f6cc..c21ad355 100644 --- a/papers/doc/1-intro/README.md +++ b/papers/doc/1-intro/README.md @@ -1,32 +1,21 @@ # introduction -Furnace is a tool which allows you to create music using emulated sound chips from the 8/16-bit era. -For a full list of soundchips that Furnace supports, please see [this list](https://github.com/tildearrow/furnace/tree/master/papers/doc/7-systems). +Furnace is a tool which allows you to create music using sound chips ("chiptune"), most from the 8/16-bit era. -It has a music tracker interface. think of a piano roll, or a table that scrolls up and plays the notes. +it has a large selection of features and sound chips. from the NES, SNES and Genesis to ES5506, VIC-20 or even Arcade, Furnace has most likely covered your target with many presets to choose from. -Another core feature of Furnace is its windowing system, similar to that of GEMS or Deflemask, but with a few more features. +every chip is emulated using many emulation cores, therefore the sound that Furnace produces is authentic to that of real hardware. -## Interface - -Furnace is built to have a user-friendly interface that is intentionally made so that it is quick and easy to get around when working in Furnace. -However, we understand that the interface may not be the easiest to learn, depending on how you learn, so there is documentation on it as well. - -See [2-interface](https://github.com/tildearrow/furnace/tree/master/papers/doc/2-interface) and [3-pattern](https://github.com/tildearrow/furnace/tree/master/papers/doc/3-pattern) to view said documentation. - -## Hexadecimal +## hexadecimal Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [this guide](hex.md) for a crash course. -## Sound generation +## interface -Furnace generates sound from 3 different main types of sound sources. - - Instruments are the most standard and most used type of sound source in Furnace. -The instrument format is how you can specify parameters and macros for certain channels on certain soundchips, as well as binding samples and wavetables to a format that you can sequence on the note grid. -See [4-instrument](https://github.com/tildearrow/furnace/tree/master/papers/doc/4-instrument) for more details. - - Wavetables are the way that you create custom waveform shapes for the HuC6280, Seta X1-010, WonderSwan, any PCM chip with wavetable synthesizer support, etc. -Wavetables only work in the sequencer if you bind them to an instrument. See [4-instrument](https://github.com/tildearrow/furnace/tree/master/papers/doc/4-instrument) and [5-wave](https://github.com/tildearrow/furnace/tree/master/papers/doc/5-wave) for more details. - - Samples are how you play back raw audio streams (samples) on certain channels, on certain soundchips, and in some cases, in certain modes. -To sequence a sample, you do not need to assign it to an instrument, however, to resample samples (change the speed of a sample), you need to bind it to a Sample instrument. -See [6-sample](https://github.com/tildearrow/furnace/tree/master/papers/doc/6-sample) and [4-instrument](https://github.com/tildearrow/furnace/tree/master/papers/doc/4-instrument) for more details. +Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. +due to its nature of being feature-packed, it may be technical and somewhat difficult to get around. therefore we added a basic mode, which hides several advanced features. + +it also has a flexible windowing system which you may move around and organize. + +see [2-interface](../2-interface/README.md) and [3-pattern](../3-pattern/README.md) for more information. diff --git a/papers/doc/2-interface/README.md b/papers/doc/2-interface/README.md index c61bf575..ce2b822b 100644 --- a/papers/doc/2-interface/README.md +++ b/papers/doc/2-interface/README.md @@ -2,6 +2,10 @@ the Furnace user interface is where the job gets done. +the default layout of Furnace is depicted below. + +![interface](interface1.png) + - [UI components](components.md) - [global keyboard shortcuts](keyboard.md) - [basic mode](basic-mode.md) diff --git a/papers/doc/2-interface/interface1.png b/papers/doc/2-interface/interface1.png new file mode 100644 index 0000000000000000000000000000000000000000..ae995013994ede9a906e00df9065fc54976754f5 GIT binary patch literal 564402 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

    #ZIFPl{EYZ`4)80ldUo%vf@0MY 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 Nf$M?-ir4H+`Co!*^F#mu literal 0 HcmV?d00001 From e10dc2d2c2f314dfcea35ea048925a1acb64c23a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 00:53:15 -0500 Subject: [PATCH 020/183] update doc --- papers/doc/2-interface/README.md | 30 +++++++++++++++++++++++++++ papers/doc/2-interface/components.md | 29 +++++++++++++++++--------- papers/doc/2-interface/docking.png | Bin 0 -> 438920 bytes papers/doc/2-interface/tab1.png | Bin 0 -> 45024 bytes papers/doc/2-interface/tab2.png | Bin 0 -> 37229 bytes papers/doc/2-interface/tab3.png | Bin 0 -> 44311 bytes papers/doc/2-interface/window.png | Bin 0 -> 151607 bytes papers/doc/8-advanced/README.md | 3 +++ 8 files changed, 52 insertions(+), 10 deletions(-) create mode 100644 papers/doc/2-interface/docking.png create mode 100644 papers/doc/2-interface/tab1.png create mode 100644 papers/doc/2-interface/tab2.png create mode 100644 papers/doc/2-interface/tab3.png create mode 100644 papers/doc/2-interface/window.png create mode 100644 papers/doc/8-advanced/README.md diff --git a/papers/doc/2-interface/README.md b/papers/doc/2-interface/README.md index ce2b822b..2ff1ebfc 100644 --- a/papers/doc/2-interface/README.md +++ b/papers/doc/2-interface/README.md @@ -6,6 +6,36 @@ the default layout of Furnace is depicted below. ![interface](interface1.png) +primary topics: + +- [menu bar](menu-bar.md) +- [play/edit controls](play-edit-controls.md) +- [instrument/wavetable/sample list](asset-list.md) +- [song information](song-info.md) +- [pattern view](../3-pattern/README.md) +- [instrument editor](../4-instrument/README.md) +- [wavetable editor](../5-wave/README.md) +- [sample editor](../6-sample/README.md) + +advanced topics: + +- [mixer](../8-advanced/mixer.md) +- [grooves](../8-advanced/grooves.md) +- [channels](../8-advanced/channels.md) +- [pattern manager](../8-advanced/pat-manager.md) +- [chip manager](../8-advanced/chip-manager.md) +- [compatibility flags](../8-advanced/compat-flags.md) +- [song comments](../8-advanced/comments.md) +- [piano/input pad](../8-advanced/piano.md) +- [oscilloscope](../8-advanced/osc.md) +- [oscilloscope (per channel)](../8-advanced/chanosc.md) +- [clock](../8-advanced/clock.md) +- [register view](../8-advanced/regview.md) +- [log viewer](../8-advanced/log-viewer.md) +- [statistics](../8-advanced/stats.md) + +other topics: + - [UI components](components.md) - [global keyboard shortcuts](keyboard.md) - [basic mode](basic-mode.md) diff --git a/papers/doc/2-interface/components.md b/papers/doc/2-interface/components.md index 0243662b..ed236126 100644 --- a/papers/doc/2-interface/components.md +++ b/papers/doc/2-interface/components.md @@ -4,14 +4,14 @@ the user interface consists of several components. this paper describes some of ## windows -TODO: image +![window](window.png) windows may be moved, collapsed, closed or even docked around the workspace. to move a window, press and hold the mouse button while on title bar or any empty space on it. then drag your mouse, and release it to stop moving. -to resize a window, drag any of the bottom corners (marked by triangular tabs). +to resize a window, drag the bottom right corner (marked by a triangular tab) or the borders. to collapse a window, click on the triangle in the title bar. clicking again expands it. @@ -24,25 +24,34 @@ windows may be docked, which comes in handy. to dock a window, drag it from its title bar to another location in the workspace or to the location of another window. -while dragging, an overlay with five options will appear, allowing you to select where and how to dock that window. +while dragging, an overlay with some options will appear, allowing you to select where and how to dock that window. the options are: -``` - UP - LEFT CENTER RIGHT - DOWN -``` +![docking options](docking.png) drag your mouse cursor to any of the options to dock the window. -if you drag the window to `CENTER`, the window will be maximized to cover the workspace (if you do this on the workspace), or it will appear as another tab (if you do this on a window). +if you drag to the sides (marked with blue text), the window will cover that side of the workspace. + +if you drag it to a window or empty space (marked with yellow text), five docking positions will appear. + +if you drag the window to the center of another window, it will appear as another tab. + +if you drag the window to the center of empty space, the window will cover aforementioned empty space. otherwise the window will be split in two, with the first half covered by the window you docked and the second half covered by the other window. +![tab1](tab1.png) + when a window is docked, its title bar turns into a tab bar, and the function provided by the "collapse" triangle at the top left changes. -if this triangle is clicked, a menu will appear with a single option: "Hide tab bar". +![tab2](tab2.png) + +if this triangle is clicked, a menu will appear with a list of tabs, or a single option if there's only one tab: "Hide tab bar". selecting this option will hide the tab bar of that window. + +![tab3](tab3.png) + to bring it back, click on the top left corner. to undock a window, drag its tab away from where it is docked. then it will be floating again. diff --git a/papers/doc/2-interface/docking.png b/papers/doc/2-interface/docking.png new file mode 100644 index 0000000000000000000000000000000000000000..7a4eaa775862a987860ef43bbc882ab4177d4c6f GIT binary patch literal 438920 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%0Dk@BZDZW41 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 lBzPUj_x0W^xx@ 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 literal 0 HcmV?d00001 diff --git a/papers/doc/2-interface/tab1.png b/papers/doc/2-interface/tab1.png new file mode 100644 index 0000000000000000000000000000000000000000..2c63a7d916fa9110abdecb4cad3404541f9ce4e7 GIT binary patch literal 45024 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

    Z3$3+jtdNk)HRv#AdZ?W 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 DFy%5J literal 0 HcmV?d00001 diff --git a/papers/doc/2-interface/tab3.png b/papers/doc/2-interface/tab3.png new file mode 100644 index 0000000000000000000000000000000000000000..4ebc1077a9936429679cc850cafc3b67a344b486 GIT binary patch literal 44311 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 AS^xk5 literal 0 HcmV?d00001 diff --git a/papers/doc/8-advanced/README.md b/papers/doc/8-advanced/README.md new file mode 100644 index 00000000..3c001173 --- /dev/null +++ b/papers/doc/8-advanced/README.md @@ -0,0 +1,3 @@ +# advanced + +advanced Furnace features. From 10a62b68165346edc72854747c0d88cf345d3fd6 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 02:13:30 -0500 Subject: [PATCH 021/183] wow --- papers/doc/2-interface/components.md | 8 - papers/doc/2-interface/menu-bar.md | 226 +++++++++++++++++++++++++++ 2 files changed, 226 insertions(+), 8 deletions(-) create mode 100644 papers/doc/2-interface/menu-bar.md diff --git a/papers/doc/2-interface/components.md b/papers/doc/2-interface/components.md index ed236126..c2fce999 100644 --- a/papers/doc/2-interface/components.md +++ b/papers/doc/2-interface/components.md @@ -58,8 +58,6 @@ to undock a window, drag its tab away from where it is docked. then it will be f ## text fields -TODO: image - text fields are able to hold... text. click on a text field to start editing, and click away to stop editing. @@ -69,24 +67,18 @@ the following keyboard shortcuts work while on a text field: - `Ctrl-X`: cut - `Ctrl-C`: copy - `Ctrl-V`: paste -- `Ctrl-Z`: undo -- `Ctrl-Y`: redo - `Ctrl-A`: select all (replace Ctrl with Command on macOS) ## number input fields -TODO: image - these work similar to text fields, but you may only input numbers. they also usually have two buttons which allow you to increase/decrease the amount when clicked (and rapidly do so when click-holding). ## sliders -TODO: image - sliders are used for controlling values in a quick manner by being dragged. alternatively, right-clicking or Ctrl-clicking or a slider (Command-click on macOS) will turn it into a number input field for a short period of time, allowing you to input fine values. diff --git a/papers/doc/2-interface/menu-bar.md b/papers/doc/2-interface/menu-bar.md new file mode 100644 index 00000000..8fac9e65 --- /dev/null +++ b/papers/doc/2-interface/menu-bar.md @@ -0,0 +1,226 @@ +# menu bar + +the menu bar allows you to select five menus: file, edit, settings, window and help. + +# file + +- **new...**: create a new song. +- **open...**: opens the file picker, allowing you to select a song to open. +- **open recent**: contains a list of the songs you've opened before. + - **clear history**: this option erases the file history. +- **save**: saves the current song. + - opens the file picker if this is a new song, or a backup. +- **save as...**: opens the file picker, allowing you to save the song under a different name. +- **save as .dmf (1.1.3+)...**: opens the file picker, allowing you to save your song as a .dmf which is compatible with DefleMask 1.1.3 onwards. + - this will only work with the systems mentioned in the next option, plus: + - Sega Master System (with FM expansion) + - NES + Konami VRC7 + - Famicom Disk System + - only use this option if you really need it. there are features which DefleMask does not support, like some effects and FM macros, so these will be lost. +- **save as .dmf (1.0/legacy)...**: opens the file picker, allowing you to save your song as a .dmf which is compatible with DefleMask Legacy (0.12) or 1.0. + - this will only work on the following systems: + - Sega Genesis/Mega Drive (YM2612 + SN76489) + - Sega Genesis/Mega Drive (YM2612 + SN76489, extended channel 3) + - Sega Master System + - Game Boy + - PC Engine + - NES + - Commodore 64 + - Arcade (YM2151 + SegaPCM 5-channel compatibility) + - Neo Geo CD (DefleMask 1.0+) + - only use this option if you really need it. there are features which DefleMask does not support, like some effects and FM macros, so these will be lost. +- **export audio...**: export your song to a .wav file. see next section for more details. +- **export VGM...**: export your song to a .vgm file. see next section for more details. +- **export ZSM...**: export your song to a .zsm file. see next section for more details. + - only available when there's a YM2151 and/or VERA. +- **export command stream...**: export song data to a command stream file. see next section for more details. + - this option is for developers. +- **add chip...**: add a chip to the current song. +- **configure chip...**: set a chip's parameters. + - for a list of parameters, see [7-systems](../7-systems/README.md). +- **change chip...**: change a chip to another. + - **Preserve channel positions**: enable this option to make sure Furnace does not auto-arrange/delete channels to compensate for differing channel counts. this can be useful for doing ports, e.g. from Genesis to PC-98. +- **remove chip...**: remove a chip. + - **Preserve channel positions**: same thing as above. +- **restore backup**: restore a previously saved backup. + - Furnace keeps up to 5 backups of a song. + - the backup directory is located in: + - Windows: `%USERPROFILE%\AppData\Roaming\furnace\backups` + - macOS: `~/Library/Application Support/Furnace/backups` + - Linux/other: `~/.config/furnace/backups` + - this directory grows in size as you use Furnace. remember to delete old backups periodically to save space. +- **exit**: I think you know what this does. + +## export audio + +this option allows you to export your song in .wav format. I know I know, no .mp3 or .ogg export yet, but you can use a converter. + +there are two parameters: + +- **Loops**: sets the number of times the song will loop. + - does not have effect if the song ends with `FFxx` effect. +- **Fade out (seconds)**: sets the fade out time when the song is over. + - does not have effect if the song ends with `FFxx` effect. + +and three export choices: + +- **one file**: exports your song to one .wav file. +- **multiple files (one per chip)**: exports the output of each chip to .wav files. +- **multiple files (one per channel)**: exports the output of each channel to .wav files. + - useful for usage with a channel visualizer such as corrscope. + +## export VGM + +this option allows exporting to a VGM (Video Game Music) file. these can be played back with VGMPlay (for example). + +the following settings exist: + +- **format version**: sets the VGM format version to use. + - versions under 1.70 do not support per-chip volumes, and therefore will ignore the Mixer completely. + - other versions may not support all chips. + - use this option if you need to export for a quirky player or parser. + - for example, RYMCast is picky with format versions. if you're going to use this player, select 1.60. +- **loop**: writes loop. if disabled, the resulting file won't loop. +- **loop trail**: this option allows you to set how much of the song is written after it loops. + - the reason this exists is to work around a VGM format limitation in where post-loop state isn't recorded at all. + - this may change the song length as it appears on a player. + - **auto-detect**: detect how much to write automatically. + - **add one loop**: add one more loop. + - **custom**: allows you to specify how many ticks to add. + - `0` is effectively none, disabling loop trail completely. + - this option will not appear if the loop modality isn't set to None as there wouldn't be a need to. +- **chips to export**: select which chips are going to be exported. + - due to VGM format limitations, you can only select up to two of each chip type. + - some chips will not be available, either because VGM doesn't support these yet, or because you selected an old format version. +- **add pattern change hints**: this option adds a "hint" when a pattern change occurs. only useful if you're a developer. + - the format of the "hint" data block that gets written is: `67 66 FE ll ll ll ll 01 oo rr pp pp pp ...` + - ll: length, a 32-bit little-endian number + - oo: order + - rr: initial row (a 0Dxx effect is able to select a different row) + - pp: pattern index (one per channel) +- **direct stream mode**: this option allows DualPCM to work. don't use this for other chips. + - may or may not play well with hardware VGM players. + +click on **click to export** to begin exporting. + +## export ZSM + +ZSM (ZSound Music) is a format designed for the Commander X16 to allow hardware playback. +it may contain data for either YM2151 or VERA chips. +Calliope is one of the programs that supports playback of ZSM files. + +the following settings are available: + +- **Tick Rate (Hz)**: select the tick rate the song will run at. + - I suggest you use the same rate as the song's. + - apparently ZSM doesn't support changing the rate mid-song. +- **loop**: enables loop. if disabled, the song won't loop. + +click on **Begin Export** to... you know. + +## export command stream + +this option exports a text or binary file which contains a dump of the internal command stream produced when playing the song. + +it's not really useful, unless you're a developer and want to use a command stream dump for some reason (e.g. writing a hardware sound driver). + +- **export (binary)**: exports in Furnace's own command stream format (FCS). see `export-tech.md` in `papers/` for details. +- **export (text)**: exports the command stream as a text file. only useful for analysis, really. + +# edit + +- **undo**: reverts the last action. +- **redo**: repeats what you undid previously. +- **cut**: moves the current selection in the pattern view to clipboard. +- **copy**: copies the current selection in the pattern view to clipboard. +- **paste**: inserts the clipboard's contents in the cursor position. +- **paste special...**: variants of the paste feature. + - **paste mix**: inserts the clipboard's contents in the cursor position, but does not erase the occupied region. + - **paste mix (background)**: does the same thing as paste mix, but doesn't alter content which is already there. + - **paste with ins (foreground)**: same thing as paste mix, but changes the instrument. + - **paste with ins (background)**: same thing as paste mix (background), but changes the instrument. + - **paste flood**: inserts the clipboard's contents in the cursor position, and repeats until it hits the end of a pattern. + - **paste overflow**: paste, but it will keep pasting even if it runs over another pattern. +- **delete**: clears the contents in the selection. +- **select all**: changes the selection so it covers a larger area. + - if the selection is wide, it will select the rows in a column. + - if the selection is tall, it will select the entire column. + - if a column is already selected, it will select the entire channel. + - if a channel is already selected, it will select the entire pattern. +- **operation mask**: this is an advanced feature. see [this page](../3-pattern/opmask.md) for more information. +- **input latch**: this is an advanced feature. see [this page](../3-pattern/inputlatch.md) for more information. +- **note/octave up/down**: transposes notes in the current selection. +- **values up/down**: changes values in the current selection by ±1 or ±16. +- **transpose**: transpose notes or change values by a specific amount. +- **interpolate**: fills in gaps in the selection by interpolation between values. +- **change instrument**: changes the instrument number in a selection. +- **gradient/fade**: replace the selection with a "gradient" that goes from the beginning of the selection to the end. + - does not affect the note column. + - **Nibble mode**: when enabled, the fade will be per-nibble (0 to F) rather than per-value (00 to FF). + - use for effects like `04xy` (vibrato). +- **scale**: scales values in the selection by a specific amount. + - use to change volume in a selection for example. +- **randomize**: replaces the selection with random values. + - does not affect the note column. +- **invert values**: `00` becomes `FF`, `01` becomes `FE`, `02` becomes `FD` and so on. +- **flip selection**: flips the selection so it is backwards. +- **collapse/expand amount**: allows you to specify how much to collapse/expand in the next options. +- **collapse**: shrinks the selected contents. +- **expand**: expands the selected contents. +- **collapse pattern**: same as collapse, but affects the entire pattern. +- **expand pattern**: same as expand, but affects the entire pattern. +- **collapse song**: same as collapse, but affects the entire song. + - it also changes speeds and pattern length to compensate. +- **expand song**: same as expand, but affects the entire song. + - it also changes speeds and pattern length to compensate. +- **find/replace**: opens the Find/Replace window. see [this page](../3-pattern/find-replace.md) for more information. +- **clear**: allows you to mass-delete things like songs, instruments and the like. + +# settings + +- **full screen**: expands the Furnace window so it covers your screen. +- **lock layout**: prevents you from dragging/resizing docked windows, or docking more. +- **basic mode**: toggles [Basic Mode](basic-mode.md). +- **visualizer**: toggles pattern view particle effects when the song plays. +- **reset layout**: resets the workspace to its defaults. +- **settings...**: opens the Settings window. + +# window + +- **song information**: shows/hides the Song Information window. +- **subsongs**: shows/hides the Subsongs window. +- **speed**: shows/hides the Speed window. +- **instruments**: shows/hides the instrument list. +- **wavetables**: shows/hides the wavetable list. +- **samples**: shows/hides the sample list. +- **orders**: shows/hides the Orders window. +- **pattern**: shows/hides the pattern view. +- **mixer**: shows/hides the Mixer window. +- **grooves**: shows/hides the Grooves window. +- **channels**: shows/hides the Channels window. +- **pattern manager**: shows/hides the Pattern Manager window. +- **chip manager**: shows/hides the Chip Manager window. +- **compatibility flags**: shows/hides the Compatibility Flags window. +- **song comments**: shows/hides the Song Comments window. +- **instrument editor**: shows/hides the Instrument Editor. +- **wavetable editor**: shows/hides the Wavetable Editor. +- **sample editor**: shows/hides the Sample Editor. +- **play/edit controls**: shows/hides the Play/Edit Controls. +- **piano/input pad**: shows/hides the Piano/Input Pad window. +- **oscilloscope (master)**: shows/hides the oscilloscope. +- **oscilloscope (per-channel)**: shows/hides the per-channel oscilloscope. +- **volume meter**: shows/hides the volume meter. +- **clock**: shows/hides the clock. +- **register view**: shows/hides the Register View window. +- **log viewer**: shows/hides the log Viewer. +- **statistics**: shows/hides the Statistics window. + +# help + +- **effect list**: displays the effect list. +- **debug menu**: this menu contains various debug utilities. + - unless you are working with the Furnace codebase, it's not useful. +- **inspector**: this options opens the Dear ImGui Metrics/Debugger window. + - unless you are working with the Furnace codebase, it's not useful. +- **panic**: this resets all chips while the song is playing, effectively silencing everything. +- **about...**: displays the About screen. From 07bebe67e8e8ee59f44dde507d142401486ed05c Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Sun, 4 Jun 2023 19:44:03 +0200 Subject: [PATCH 022/183] Add QSound demo module (#1137) * Add QSound demo module * fix echo and lower the filesize * feat. tildearrow --- demos/misc/QSound_smile.fur | Bin 0 -> 351319 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 demos/misc/QSound_smile.fur diff --git a/demos/misc/QSound_smile.fur b/demos/misc/QSound_smile.fur new file mode 100644 index 0000000000000000000000000000000000000000..5153ddcf8e8eff62aa523b4fdd129e441ecb7204 GIT binary patch literal 351319 zcmaglLy#t1uK?h-&1u`1wr$(CZQHhO+n%;<+jhUL|J&ciU7Re=I#sDWNj!3{J4`)r zuA165jLg!eahXFG49(0=InEiF#|qKSW?{@jGyefY;x)q+sYPd&H_hpNa3X?cx8}m(kfI<6nziai z&Lb12BXD<&TfVCh|Bgv#{~CS}gpssQ{4OE?-qC+k$VXhV+CPSHDt?#6-MnLAb|;DkdK1*{35cBa$Eo73BH}3nd&2boj&9 zz>UBtGe(r%bT6^)$+H+QDlkh0J)VCP0rdcZ{GlfxwE86|bWBECQbvZgu^AszqEAR7 z%1kN2yAMkGfo6i#Ku`ffY_60*G+<%??|{?+&k;DHNtq%1ZjuzApgma2=T$0e4 za~n0GF({}7qzt$n7!s*5DaZw+3{*NGcffTYRX{^j&Jg7$4~U1+9d)0pA1m9S8scvxvJ6 z^#ufBUqTokkRf}28!!}rrO}faL~2(^2--f_Yg(N1 z*Z{T;hYK_d>K?E*fLMUv0Q|0t76K^(j3q!*0Lg%x0YMAF1{@v`J;1w9rvOp`3@NY; zKM^-{1SNu!DfI1c5dH2A8$N^@0mgLlyQu+^`Q?Au!?DdT7yfw`H1@rA@>}*?V-x#D zhu;5-{Hq54#qUNS?DqZC;bv?Wo6Sj5rF-XRxuGcO3;13wgpg?O$?NqJd%4^yRZh?I z+$jdUV9z)E{`Ps^bbXJVHw=H(iuB6|qlG&F;S&Oh1b`&~!w7&|0O1(`$pnBm03!f_ z1CP=e_MrSf;TQk&Z6sm**HLh?5M|w89dtY=Zs&!gR#HFW;Sb;WUR)t_1}$6Q zQmJ|W^`87SWm3rVbTLWq*s-{4jvj+O$Rf#KaNxw#Fro3Ry<&El{ZnL+rZ)mZ&fg2& zFu)5TF)3K&_573j`0X#ugaCvb7Pt9y%>?t)ueA&;4Ors+Zw%4-JoqpKrouJOqNaTD^SNYPvYqbAJj`Wv={-oa%M5Tm4$LgnKuW-pf zyzJ*mNdq;LvnBpG{y4Y<7e(lc8x3Uy&;t#dR4|YKi^o%G7_`lyUj==Z>kYE8wNWew{AQHe>gpg(bq~Qx7;#gmVC?gG>kwk{w((Y`>qxK<&NfKVfPp{ccsF!tV6iPeG}Jrb*yao9DAmWXL$Wt{h$lFZGGmTB9YAmC>TmHEnmQ z(#nb4T~z})J4U{kYe>w@5qtY+>_FxR+^=Zgm2gAmC7vYQ;cEVCl3Vp?26`Ckk^L8P z3e>%+Jl?sq4iqqc&L~$KM;-ks;p2W^T=wUitH{Gb@q3EO-V;4GM*g{Zs!xSybw-8# zcm8oph?r+tK-DH?6$VoER_0r{UE(La^}8z z;A(XWpEb3+{klNg_=Ma#s^X!b%jg?-S^8c6sSjthH2@>>b$}8hsK|@aK~Ev>5h1EJKzblz$3Wc4Vo2o(sW`Tw%hK7LePI!NA_o zx`fk$F{io9Hppt=^@pPf3W2?b?=j?fuh#UY{Ft^oe2B`7)Mvgkw?>^L$y9_af;Bd7 z^0c*M^UT#wXZiaf{kT+vs%h_B>l1GPPRDdDteA4$2$zOip$( z(t5q~;Np1%dXEH_gkLnNXpQQTbZ9ts&@LnyjjjZ8SijR`(@+b!HHRrUO`1=Fu1vi7 zl)(Wk$v5O8<;Ajr|AW&~(ICgUG}Ip3nBH;crJxR*`|wq>|H8c@ZDo!XY=#T~e$LoJ zwz?Rjd4${9wjmd9-2T*(jD5TxQMj|KEtmdOI%QhV+RoJ4j;4X5fw;APyGx(dJ$vW& z+psN!lc5qP+gIKv*oU{9JS$}@5UHb?8NY+1Kg zs##B8wX3|_dfn_qu{ok;2dM1R_qwhAxeAzs?g}iU;i?3*F!eaud~_&TUF_<|5k&4; z_lc*Kd}DuG8(n-l8S-M@R9Py2S6r4>rITw_*PE}fSKkypRzj(E=JWS&KK$IK!|FQ{ zkYk?stv?3-cuh~~{@v|c^XF3Vc`vRzAKfa#L?qDb_kF9ki$BuS_xC=yNnqdEljh^2 zRO&nEqx<5xpE|9#?)!NuU3t?bJCf4(`2@6n#wVf3mUfWWt?D%kjx68S-6?77@~<*% zd@a9gst4?{Z`ugo*xUG-_gy7VA@|_9eDZ(b7P^M0hqRY`EN{ekwzvRvFJZ%CO;4>f z8D-eQNxEp`P&!4r-zhdiX-TZ|6n>wGC&>d2d}jmhJrZ zB9M-2k-GeCbGFT0FG;JhTl-tfto`d9qRB6w`CK!1F1&LKW`fo3wpU!P*IMfj2G*j@ z_hLKQv6kOWuEA+-7%#RWwz9TN+RU4TwR>%wo2T_{uWD;qc(y-fCuwcdZ3muRYFFCa z+DY24mW7smwUuof2cs?IVPZkc!H!F)i7^|Uog2x`b>`30$K}5=h-BquJ<@3J0uo!=%`V~f3ee1_d-53AWw+bB9 zJ&6_RRMou(Kg(W~nH9RFGOO2$-L=_@JKg^BF3**P$ud=cRWdc^)a>fwD$vyFtl3Mm ztOwWfDzh}XpT?uJW@=f}rAaK)z{Pe`cj;oOcYYCl3QU3@;-ANtqd4~$(UW`tTDrf9 zU)2}Klk($P+z4}j>z7|?##5jY%hS>3VdKbE)E$Pnua@fbWAN!x!QUl5#Gm{3)cciA zc1Z%?k->a2vW30Jep&zq;GyZ*Wn!VJ9v!qwYBDWF#i!Yi06=ozJCSamZ|8UUYby<{ zBYP1(xvRQXO{j2cRY3xIRA*Bj!opB`Tc4p{W`l!`iPR4rfX^1&Sf2;k182oTttrcTZIu(jHyY^wM-$tk7R+J?FfV4Oo|nO*j`%su1D#?O#G*?c=)N4uuGN8S~h zCst=0r!-e5pHVxxI?X-cKCnI=a|yRW#|e$`e8OBIN`rcPtLL0$M_)^{CDk;(hPg$) z#PDu>EOHJ%j5w|--WGWL>5CXB-Dey0I%E}sXrv%Zen?Z4$rq+8mNjnp?j2&o8X^XS^Pn1wlN&8&**OCY+PB0I!9MrE9xGLI*dm3BX?d*oTj_@R+2BD zotroP9>+@grcus4nPw`hm(0sv}fxdN-|^vP~(O)y{Nfu5y~%HZh8(I`N+f zKgKS*YPNFzb;dU3mnX>EWTCoyUHez{~FZdt(Cqy%^-H4>K(Qhn?0q*7=^WlMJwj-6_Ga8G0nn+!!&8Ze=$*mp~DkDU^U?( zk0-4YEG>$#KY6c`6z-DDk}*EO|F4$#81?LMD--}e3*hrC{>}$2nx7wF*dw^Tio4Bqb_JdH z_y)3}3uA^`vtOcW!I%MJE%r0fbyn>G*nW?7p}$nV3|+!p-Bz?!v02Ggkt~mP-MBto zaxFhyVy}uV^C+RD`j}P#1Xm`b)KBE8Db%c~<5N;o^!`d$(^lYDsi-5+RezOIU#RFQ zwaRd6aW(;b(FHw)F6w{OKFXXlUbeBbAI(?Vq9{)2CizoQsS(vjRQqd*RduWXsEktc zDr~l@sJ|8{=`mN8$-C~sh*`ELm68oJxqVzZsd?&n+F%vSD6#cEt82P^Bq~W;=08@V zOP*+=Yg6N=wtli+l>eIFCH0p6om^Ajsivhl`nFQ&s=d}8iJ~rba&*m)x-|u*{;7$m z{-eOz)fM?Dyy9jWoyBkUxe8Zhx|*ZTmAa+MxXGENqFRwxa$8NUI&v-qQT~wR*^+6T zs+pbji9HQywqUktp;|C&aczosdv*!qX5SKh{cMx^1TjzbuDGgvD!EENOQe9_T{YQ5 z)9+;8WS`vHQNFmm`8t$&I{%Uuf^;+tfeu-P!oUvfkIxr#N-#^FlmIW`SyWq8yTlZe zXG`afr#ZPf(FR9+H{9OcR_)meG8Zb-AOw(i0Bf6zx{EF(p;*o}04L@aLx>tgy+)Zv z;YGzo%|#i36T!jz|M{jVb63#`;ppKYMw*D{#NQ(Hv)rETIOovqA%&JaBt1Xs8g-ZZ zlhnX&s3%lE3>kh5|fN|#|&w*$n>}5 zuVjDX56P3n>#>g6P>L8g4x88#APtVzZVB?>J8qkvxsm zO@14VZmyVYcBU8UjS^t=xrs&kvgMd_B9jVyLLYT)lprE~#65ax)MO-0bgF1g>@_9_ ziz=!MyYp`mkB@f;Wsm$iO{c=D;vt5n$T#Uu3H<~30r)?@e>jFw=hY6C_niv#0O<=gL#)T z0Ih3kHx+-N(#yBPX2vGqa9x2di@(*8S%#ZxTwQj(aY148#JwOm#d`sdFFfDQI}|g% zbXDF}`ZnXt&jY6yPYuQZepjOz!IcU?uxtLMwuRTFm$iSD-b!0Vt_p=3_~n!88;k0u z{$}6iw-&{4}1-}J?HG);R6)cN8YkZ4omvWa{m)j=k4e!}JufS|Rt%F;kq!6OsW+oguYSd{N3^4k8S?18Vti(4cxB!5>r~XYXCW^qg@vG+)$0WSqQcSj+_P(=NYa$=^aKrV*X&ev$#{elf5(SJ9to9kzJB`Qmav@M-ht@GL{>yjmrDK@$GZv z{V%n#DkJw%*?4c%c3OPd^^^#CYN;q|0jmZED(VM=!+lcm!=Vy^ChpXXtlTD+4^JhN zV0HMkvL30vC4uaBPR75Lv=@p>*$|l6J#u+@OpK=9j~&OpRMAU|OkY?-OzftwQ)njS zW;e5W+0As>IWH{6ZleTPeKEZE(n6yx&l4ASOG!%l6#7ze;RqM9kC(^tlJ6y|k=m#@ z6unZ|X)Y8*vRE-}ofzRw}&whKKLq*g{LypQ$cwg+Dgj!|xgphHPR z04jv>VpHskKNr*!u8KJtq!)jw(AZIWQF9K^o#vcKK4d?{JM%TgMuEJT0SH|&j$wMz z{Bz^x5f?_6oR6}Hyn`TLD%)_lL3e>;M+676#HIhT_H*~=_LB`%EKJY+D!83cE<&~A zydzQ|#UT$t2)?xT;O)EIqtj2juWxQw1Fp`Ef9+^m{TgVSbXf10ZrJS@bcVPL;e`JV znaUKa8@|D>!Pmk+HHre3xN6-(*i^UFgcq1t$Cle!rCsh8L@T7$B->TOh4qV~7ecvW z+p_6}+x3}scQnbAOqc5`t@Q~i@$2hU?Um0e{FlX7=W6_`CRb}#dX&5`&sJb3=N{?N;~w=)$Lsn1Fn(Q9uYXq_(>uZ5 zu4d}5n*`B|qQ*@BN>P=v_V4~~s$BlKzOM!7r~5HZ!kLDe?o7_6-OwPWve&O`JJu7o z3Mt>#cW9H$km+yk@inCyUPWzEJ=6^DYUR)ey8*tlU8~h1B%5=`Oj?ligJovtjeVTcO zf0zPI24VmH{PqPk{I~YcwU9mnOAY5xjBTItJ?@>pBVU4Q5xyOI4b&a}A^?pz*fHMW z%+av}oP+xZ=>heE&lAm*$d#fsrYWN-->4|3ILUIx0oI_?)AdT9aW+v6~r1+Tl zL)5eH&@Y3ohwo6qgIiQ!RYr|+Dse0%G?X2-ovP;1@v-=E=h3#wWrHqL+D#{~s-vW% zf)e2h=YfToJqdq<@KJbpV7xLhp16plOq@1Sr07(PE=DR^Dr%d+ku(TPGA0W{H1dbp zOU^~(`Td-HVXGLnIFvEh2x4?QLN2ZkS2RKo>=U&Z7ulUy1sR^iTO=;VMZ7Ogs3=oW zH1Q-+m}E;NFN%Y}k$sWC6K+;4#LAtfN4$fTmJ1g?8p@l3fIeOg2|e93B8AGADmHbY z#CTX#5{Q>F6%nwqq$AJGA{|@dBWNwIi!g|zu?q(o+faa*o zQQf)cS`3$>oI?Fy=5(Fm#0H|K%B!UsHBDe^R%={q9A^-+{GEKaAi7fOaTqDFBSInL z0Ulr80ENv6q{B)F_O_yq@t5eA!xx(fwieR*iTHOgNZ~-h{=ojOK<{tdZz?}I1CzqB z|B?0)-3#tB%j^7(aPHI%t+x4Se%mn>g02dE}iCoqtdJsTjf<@bOn3qwnATJt3FmovVu_Ssi&;j-594d zS2I_^zP52yxAIcCrG=x3Q{kx*OwBq;ZJOew=jw=Fm!;a<1@LnPh4v@QA#yFnzCwoGd3oZ z&2DJ#7ll=&R-`L@NmCV0RCyKsRo_;40sFW6+r}naTbp28Z`G5d9d*eu|PkaMAvNYr`p{xSAK z`^e0Z#gTAI;E{6l2Hjd2eN4>5{^@4;BJT>t2g zdQR+)flo9QtVI#58+{o?Jb*kI(>x1i#j<4&+jUDUZ zj8u%X=Z%bm>&=am8nV}w>qL#r#{R?fQQEj~G;OLjM%(WmuG{D92G6PI`3u=bckx%enkx)Nhb&?rrXC!fR@(J*L%{*`JY~ z8J-1SMpE`RDm|(^S~;3GN({P0IJOOt`X=_R@k7xn)vk>&8g4S9;&je*jA9O$52&Q^Q~x7)2-4gK^wYTvZA&EtVmhq zFYDD@Y5W%N>g}n%NT^oGE$J-!fcRP5T8&*GoNr!;bfMf(*hbY!umiIe#=pFH(XZlF zkM*n**+7Xg;j-kgUNiBq<1)xGHBM8V@=qtz`U;@_Ho@3_+RWUH-8^0UdB+{q@|yVH zaNKO)(7LfX%{aI^#5y(ZkZjZJh}KEdhjowFI-YqF_mJD0>s$ZQ`CAFx<>Q@WYv7&} zWMFzAYoNg)s)mviL)p>GMcf7F$N7gK?th}Pp<<)>yc71JAHWsDGm6L%o+L*}nmAcM zGCZ0&B|N9PguBGHq?-`Zk=>EbQOFbiO6p1TiLxb}DLX9FFZV73y~t~ccg6nXImT?n zhcP$Uli@5_{8GlW0z=(GW&_M({JN5lt!|oje8n)cI8U zB;qEW(R0zA(c;m#(Xpb8Jfj9HI0`su`f2&$ir=GHz>6{v=?$xGqH20=QfkDg)668` zjM7ZNJ3a`KdXpTJT$A#X5*J}E>@IXJBrKJw{!YtITa;xg4v!mN7qyoXl=zolop+x{KDV{BFXt_@SP5SeTTxtU zO!__IDS<(YKO#>>envhSw&6fa4m*p)cm%Actw(YM{SlWTiX*=smA=PuXm%WO#5bW; z!pg$-!m%MRfv5-92vqwq?W5Yo$rH@m%A?;EY!H35admfs)P1-`Sz}Ufx(a0;q;h0w zzH5hXWo??UnW`D1GfY!UYfA$)c=gK^D#KQe$~4Hc)-uC2<+0&0lVQMTj$s|f${Lui zAMi5ZZ3K%6*je#kN6cC|<1JS$e6rRyUAt6VxVzA11W^?cHnDaBuoV#ja65r~LfJxR&$v}W%+H{OzdBX^ zQpcq=smOV-!tln0(l98BG3AH*P>MFB@k!&c4rj3{^1fu)(u> zPrszOt?I2Bua>d(+vfDH?k+!U61memRONou$rdz;nMXdAFdy?=7j^G-t#%-E^>t%+ zjSYOoKjA+4+@pEBd7OH`dPnS0Fo5TBf&)GZ2}(~@pia#bbROelKo=-qToqxNV-pPNN)%Y zK*>WEPliaIjF^fPZ73y+CFUokp@gJ#uHaDG`R-8 zMzBG>V!DE;4pW^53`-d(b0Ts~YW}?B{tf8sY`ia2pxCCj0eUJe zyiZb~$0p&T;Uew&dr3qtQ782(*<#dX!Zs;T|q?y2x2tVj6^;o7E9mfV`MHdSRJ`Do-B>J!_eb!1rsZpW)CZ9+g(UJAhpSs6SL>i@5aOfv}C z$FdM80zz#;k3+8lvj-OkcLpQ>!SUcHQp;C(D5wRoMNwg4&!-c7Zk%P&3jel%u?X!F53gV1Eas6|>KuQU-|?E483< zLF9(QEZFRb+Jf$I>UQ2T)*M*4w@?A3-SylR)vIXcV^?bzXVx@Zv2Q$eOYIWlN}}h% zTg7g?bTPc}ZG+uJlox*X{Z$#b&5It+xt@stpgTcauIa9KE+bvsT`vMWUO>4aKg+($ zk_&?8de4X)U94H5TrM&!nCOM3T-aS8uXke5UXWE_@xIExxT~LlDX(rm&r_iHd4&r zhLg{< zVhH6nh1bQy3hBxOO5y*p1LY;gCFJ_946meYxu#|Mg<=eQ%*ymGEowE+C$Tr&bJ0%6 zQb&F#5q%!TVeH|}=?swF6Ypy3NlZ;|KvX~U@@_6S9&EF;ymcLw2?;C}x3F0H1jl@(i$N%NYRN@Xw%q#OD^fDlIar6rE8=z6H1OHe^6&odC{dpyaEO9H60}H z#S~zv9Yq`D=auIb2GDvAy*K;t#e@WnQp6!aS1rZQ{p`o#ow#-Q=AZ!HDPAMO{(3Lpk_kERZ{n19FY_jd*Q4 zEjJB24Qg6i8j~~H)3DR(vXN!XqdLZsg#!hn*hXuGWqymi=4?*)|sR}eyob_>V~5Sxg)VAxDD zze0CQm{$ZBzl(dT^~-l)bR6}Ff%zE`azG~%;^Bqj3%cj9&o~~z`ukSc=jm7c=Tpyi zzSh@VYQepO2*zx*Ljw$?SWE|%f8aYu;fxy(Di2Bvvm3#dNoHE6OqhHbdf96kx2Cgc zD@-ST;t60a(n{9DU8(l|G{n{aCdqVG6LW;bSW&zLASPF(OD z5ua_ITb`#u%;(p)wz(I&r@VJRhqq>>U)vt#USHo39{ipGy>z~aK6?6rzmffl1|kO1 z`yv6D+gNbm!GgvLIM-OzFrg&I1zslmaR*fnwhz|#+z;XRi6ICfZXs4*Kwr>4a71AP zgeE9?NYv0O#EBV#(-e6We4yb8!dl{wNo|StiLA%7DRyY|FK93Fm%vq_T}f>rZV_eW zGe!L+pXbOi6wj8=2hYR+?5;?9!xp1sCN1X2KfHgaM-fk5F#_>s@hAL7Zbv>QCXT|K z`<;IFeU3Ufk~`8nx$1(qQr$z`bJWMX=cZ2ePvtS7LT5t1L#0C@i1bp(vB>~rhmoJr z1ksQZuL0rh(zB9%5)q3$7s{2mmtTArz?QizifmwJr>O5XL^#yaDR-&z>98j}=V15~ zHB5~>vUx=E37;l($I8b~|5QyVv#9eXn9;k@=DH)1*%AOTQyviqeCXhjE8ehd~V`0AmJI`X~D1b)IMC38N={D-{>0JJ$CP zf3|N5hN(Ft9m{{<=~I$l%3jW2Lb^C~K~E76C^w2QV_JD+&u0%vd1OCX*ysH@aW6f z$KPvHzn~0y>9C`Fq;($U&g#Glp*zo|&RLv;Jw`spHKrCm-Z=3ynP%8+Tic9c^H$4S z(@vXAH$_hx0ecywBdpf(NSKo=FSd7LK5iZrx4>jJa~2kSS+O&A7WERwK!<{Gj$A+OW5< zo@k5#D963VvG)PdxJuF30Y?ohAIBa`AFCd#94C9A59ElMWMP=4G#f<*_{enKo?VVT zmrCi^_KYg;vM&S|4WZhsJXd7>vA8mPQ zvTdzxx~S={HLodMb!+gaJij;B9>*}hv&*;twfU_@XpFNNvl|l;4=PR`GWs?6+wiyT zu5AxIe_@@zF}{Vr9TkrRZwuEJj~Cb00Po;^sBsDTB7sW@&l)!#_b(o#fO(Bu7RjFD z;KQsVz90Yo`*{IJH-|mf8i(er#Mz%S*E2@*+NCR-tE{uGgRWz)gDPP5rYYX#+=JU& zzDvISpHsU-sy9-vHE(?nSG^?r2E+&c7fi4?$X#%3$aL^_2zfAn2v}j25@;sW&LAE^ zo^h!hg0n%^(W3_uA8my^b}*cO;`>PEsMe8|C7vZ$^WiQe>dEzrWeWC6uFKFZ(kzIz zpx-RM?7b;`(F>W4sez0L41bwCYd}^#R;kjEzr--SQM+?)Oyf_s4YKz8MJf&5teTMKdvWCEa$LZU+}96~JeB}ns#cj@q{@<{pUPlsZ7Nf{-S z49SC6k{C)O7e@-n2};x|^*4pvM8%Tb6WJ zXUZhjht7RJ#y|dx(v8v>!RgfJ6K#}Xlz)&2q(Y$ldc@|$?~!Ejh-`mUf8;;$0oP_! zV$@iW{HN-1%zZ-Jsk8Xoz?M2^&HA*&KS#p^f zd0}PtMcf2%>sxeVvt!3Y+kyp)0Pn6juFbWvjvcNouKhHd88$BjsLEw|!QU-7X1G|m zCwO%@NO+$is~Xf*Ozvo8_#wj`I|)Xc;SdeuYi_o6hMjx7sR81Kz;*a*RyQo~xCJ;( z2*g*Y?hrh%R_wr;kynGg{ZFSF@X?_X4SI}FQ6tZFks31cfu_a>4Rj3C0vs0&&az=@ zMyj0d`GysS@rK0!Y!C>rx~68v?f0DmR+T?mIMuOoN17yS5r4F?5C?c^S=$)gm=GA< zKzpqXukEf4b3nWR^Y2sR5WLz(03(!4k{ORDSPuxRB^3`TG3GfGW9aq8@EX{M~<8SCZAEn?r5GY)fn-Y-_9F zZFXCeHW1p8H+8n@H}KEwLjwMBfzclbyfIq~2!IKM*~D3^@|BG()`69&m3j0dt2?i& z&4ad%`Y!Fx_-?ySwoYc=Po8QX5?&gfzq}FdG4A2+)$WDrC%V_lpZ9*t>PJU_y^m(l zDG&k>_@L(C?qH1hq}KuxDN=}bpf@~l%mD^!(C2`)Q1KkK4mokSd^o}+jZ}y@xg}*fbvuP8Nhdi) za$TvBg)%bHFD);H(}br}D34~3M19H`T^F4O4G|q;#C$}01bl>X1ZO0#LGj??z}3)v zs4v79;S*yNAs?lWsYlqO``+;Y@E^9jlk|!D#8F0_<8F{O*_Y59)4nTz-h z7e*`~FOe(~=N!a2_<^A`{->QjCLLrw(jrq4T<1o9Vd#Tie*n2oBb1>!jF7YVm4sAw zA&xN8otxz8+Teqp1&*ov!yOb&h1)_BpmWz&UX_EOEKKxie-2X0pa7O)1j{ zG9j9C?}O_D1`K5j)fRXbbCtB0hEmigY##`n2{B1t33906$lxMOj=%>ne2{a){iCge zru$j@5*c+GB`YIAPeX_HjYWY?ftRhr_Q@{;Z=%^b1Sv!rK- z2euz%T99?!m%bm>3;Vl&#wZg_H;@8&02l&p0XDt_=Qf*{I9L3II17UFh|fZ2Lh=k) zHxX@uR28ak!s?~o71{Mqmi5-|R&N$>mULQ)an;S1BV5(5csBOSjSFTL1S}A(=W#-a zi}LO=<;xeYR=H|#TA1Ly5n!?68x|N`5WHc#f^UV&3m`81UD&x0=D2aQ0@4bYUQoI* zr^Vj$pp=+(Rf#`odZoXmcje_*(hEi^k!i(X>s#7)qGQEY=T6u~)dnFTy*1jvxpT6) zAYIK==K?KcI#aSP9eqmqp{!$Bh9WX?r9oDSaGqfk1-?&k%<%oJw@C-#2XTg-hPemT zM5uZ4tqWE?=F2$T83+M=+e~x}tn9J>6~7s_^o)lzA?G5`-c0*UJ59q6J7i7e+UDAe zRUi+-e$&7ed)d~P#?TFoHpVt7ZS_xxPigKU#@UB|M9zn~bGYre?6^K>n&u>Hc~ zx#!UlG;Wa?k#bS*hq{MXMp(-~UXGBG{~`Q@(gaq<5O~s05`L1;gvoitB$<+Bm`m<+ z&~w*w;xpofhsITj-i78pQhljPrWiK)CzUQWeEMy2lqoV(@^jg9flJFXTFsq-PDl%q zQK`hJbevGUtGts2lUNe<2NfSVAGIH`A1NP^9^EZ5#vqrfk6MqA3~D`is|R@xwGN>T zF&wHHECF;EEL0HjkNc1E4>jN5@2vNv_5}B^_RQ5V>OK8{^7#;%qrP*SGj@O*uGv{b ze#2^0TGOK@@hYPksu`X!K{1{1;64M)`Ie=urC?PwS3DqLuuzArovd2YTQXa6N6ws)M+HL%ZyUu1y9Lq@Y!!_52g9$* zKfb>5F3mk9{gC(8^03mC-!i;uhwU3Wcf@VU zc**R275P+#U$*(jeU#-&7D73tv)nTx)57gvW9F&cX`KVwhD>np z&@{y~`ICUOG3=61Gh8?gp9!aZC(w&u_(_0iQfap-?zBehh|PnL{ZOd)6+#_sv)Cr_ zKq$IqxmI$GbB$zMaGPtJPR7tgn=xDLO|dPjMKz>Z^UNzM--TNx?CvY0b#q~Y z<{duVHn9!g*R#02U+yYL9mnZle6z^n%>#FboQGKv^AP5J296)6YlmqEIJcPax95M1 zqYJ>h8)Rd`W8Mm=jm_ZqJC56qV}buT%8O?W9V2p7?sMD=ARjq&7*2bRGK{&OmC|wb zaqaQcAa^EQm2x!y69UfJv{}b__!}n-&eZ>o9vE%5a;0_dbTw}iZ#mq9xW{@YzlV88 zp8hGHBzhb7H2x>|vU-X3k@l_jZFeE^cT>;tPyH|K2su!cpgn|qfAC^Lqh1--8J5XX z(4}B&VOK%`Bs7Wa65viSnqfRblpT;AGCur0(B=cJqxmDuP@qua&{t6KP+VUEK{*}4 z9q}Gf9+7_t-NNI3nJQCCC|oJF#^aO~M4BkLEt3)2ADMjEN7S8o5P{~2d5PhLYJ<8A z&IWD-BIV!tTf#r}yU;#%_Kfhr_L$T|z>CM@Ge^z-uNQmUO#Da&-nxYORwKumyH(^q!)~D*sgedfxSW~pVlwDZ%Ca;cEN@P zL`PoTe)DRP`M{G)7%#~J`Z)v(7TsFzn(xZO0!vEVq5?HQ`E35fr8NL8H&#!uzLU&LSGSIJ*xPne+c?A-Zf0s!V4)0fMqEWgq(pkIu@BE>KJ3tGoi(SGHBc^6dd zRp|fU=4NtZ<+{ZAkDDPp+!=go7*1GTn20d;vqc8cwuWtng#|e8fgR`)$5hAG`WgqS zSF_6!{*wF>?~<@`jc1)F=yOT+bo-2*v-_0Xc{zlJye7ZKjT(4IK`vV{9V}Pb#_QCp zmp6ezLwOvGcvy3PbE9*{lYIH$%VO%O-l5(t->F-7x|g3Pxi_OdYW}?XmF#`*+suPH~201ps=!#rhrVR1cwRzc{sXe4EaI!-VZnID!6`-ox+8fmfVMe zg#p)s{3orR1J zg{utqnfZCl1=yJS2%#AHznu@7C)VVd!={p&#u|j0gPPu&ehnQr8aDzr|5wRZ?^pU) z=vVo+AZGZM5<2lw%NfmS&)Le;gihOzZUO$~?b9Ch9*i%cA6`Eyesu@seRPG;$U*2q z*1dXHQ+XCaJ zLGi|s%%dTr$0FAv)B}qpQP_ddtqAqV`9P00|NX(Goc;4a>4@VbvKc;}`T--q-&Cfk1x0T>g0e z9DWA>72LfD{yyim;90pf+}qqgxy`ucoOPU4oZaAw=5YFPXq>C;-R$G+sqA{t=+3M< z=27Nt=6U8sW_M;OqmYrtaMIt?zkss8fHy>@_oP{=H>e}1vD9+PdWwy_kDNiqNIFtI z={l(wNkn=`972pHejuzTL=rCJXW&!uf8ti-4&gT7E+S7uLqmn38{nj$2N}W7fxiNa z16qF<|6AV--*xX4Z>HDp`QKPN3pgq2|Nl?d*4^IGB`Mu0NJ@8icS%SJ2r3dHjWp6J zd{G)Cq&uXgq~mUPZ)0YsXMQjE{~w>nXL>efKl6M)Uw6y#yZ)JeOj`*{dZSK2-pWi) zO*Tip+^js8r^vi~H?cACO`>ihHSr?;ZM-e4VOM-vyir_@jf*9s*P=CJjbe|Z6{DxJ zzRmJv-Hlv|JdS)9`8;wmygA%6TrPYvGz)ZDA371r2;B?K50wn1hTdlG$gGk1WoG}( zSx7g0=EaOB8Amg^Wz@=8nsF*)Z$|%&vAFMtX4J!7zYXcBY)0mX>mSlGT4uD$m z%9xl@9^5FO(LAGgMs8%Sp&3oFRtQHH$D_1G!fK7AG!Msh!Z8gp24;AX`)Xvq%*aC0 zDuHJmnYlP~6F65U)FV_iM213{WGD^GKcfu~)e3b8tq$D`l?|^6ZwfCDj}Ctyo*%vx zeigRDr6PGEM5IBa2lCT_$d6z}-^l5R4+gj{>sb~XtsET>YrGRxq7`HFV;S(Td`M1R zaPGl~rWK&KNr=nBa8R6`72=_a8g}cE$?0)=n2SbR7#5JNh zxtaVQ`6IcHOr@G)OckcaQCXBhU8BxWhpDqLm=*LJ`WF3)K8)mbh)%&6T*FB0Q)V8s zl*!M|V=uE3SBk5|xokeJIyaPS%#GpJa4uJh@6U@o#}DHF;1BZqcuJTooD^ONH-#g@ zZXqs|65EJ9#m(Y&agX?eI9vQy+#q_SFQxp_dGWEB4hJeOwUd66j!R3W>e3r=Eohc0 zR+ldFa{cS?Jl~ zdEvR>+3xwybI9|Bcc8bdw~M!zceeLOZ)4Q?z98Z)^qb!8-ud3k-oc>aP$Zh;zT3Wa zzD2&%zHI&+{;+SnuZ6F%Z;5ZUFWo=e-_q~#Kl45G74`S`uko+)U-xJDa|Nme`UeKW z#pVRw1`4H=NvW4IE@f4Ul`=dvp2{IhT}d@l2L`VM_XT?e+Xq(%0@IBv(FT%g&{^E{tt++AlD`p$UghtPxBh(Mn6LK|Kj|`GC3EeH`UUv34 zeVtSG1beI9%ARiN7`0{1|BSUTpd7|4eY{TV2`#35qdia$shicI>XBp*u&HgbMKX|F zr*u;CDzD^C@-K2bIffcMEioujB|#|83LNo?u z^^E3>hO(AtmCjNlC9)c4)y;YvnH~8uQZ1EV*i zbz==;1!A>gqwxL*#{Q0_#4E=6c;$G{_>b_!t?|e4^hEANg+!r*fO+-A@Wi%6ez~Gt zMII)fkZ;L1DBlYEjqp4^!HHhDi;K|P^fQ2(cvN2R!~w$>(U-)bGT zIodAG(3^sV|;eXnllt&P>jVxxv}K@S>pjN;}mW_?pLZX5dz)o5xSH~%%m=3CP; z8(2H6u=T_W+I{Suc5bJUGtJrO#GK~tPItAt+r8w{L}OwBagTUL1j*`TKXMisC#zBU zsFKtdRA1^VsvmWVDor<`Q|XVXY8M@&%QA(S+)O$%oq5WXWOK0+dzrb#XiQyp5&M8W z&-TQ&QEVFbBR36P>dGy~NDXsod<(ua-+<4-6Fdb*E#Y_YEBFQc4E|d<{R2Kl5QP## z8KIWYUKlBy6$**1#fsu9VXZI$Yq`bjVhORT*i3YVzlHt6Q!wqiAc_^lFT`A;N8Bx} z5H<=ife;^I>4abl)y0Bh3}-G7rU*NP5ZWKY5TTE-NGOPNBG}qgC?$L*3={qmGK5t^ z10k2tNZ26U5Kal(g`L7_VXv@QxFh7nb5;?T^cC=ZigLj@VD|e@PF{#^fCT#{6wH^Aj3b$-^M@Kzrg>{ zf7^f1zuWH*ObBcV>dz5)jirBli+$^T+5Ln3-TjYz z-F^4)DldDlddGS{_g?VK_w@HP@Z|QSdAy#uv`A_%RgiK>dr>K7h~>pU;Zn7P5WkF1 z;n#B|xFF}{-mptBHukcm*yRkt+^6@`=jdznM0z+f+cI(v`6oG#97ZOICd3Ym%iZpC z_cxbyCp)w=&1UVb);Cs8>!o?j{L}1U{%d??T+#dJDW87&v`TBQx$1Pas`?-~KRG+u zI~h@iD|MBz$|R+Laz$Pzca*=9UnG7=hjfio|lo-beRDH^U_c zM!$-tM?Fy^%Nupj*cMFvGW zMg~V_My7uH?%RJ6JyJcZd{!x#8l9ChYg*RbtYT3idNC^y?G!B?eVlbT%gRcP_Kp4; zHKPS%^)noNzPV@~tuSaZ6>}c$_*zDNaSR|&$vc;Rk7sh{zuZ^FB5pIt^k9SJ^ zl30`2k+_lAlem;c;ShH_PjDEV*|zEAc^)=d^qev$k!xg6JJ zNb;BD`(#tKm)cIPrB=iBnyZG@TpFoyS{1FLmPc!>E!3K8{b4`-v}M{^?K!5ywAmV? z*VU)Pf_{YuJ<%WQuk>ohx5hkUrLoV58`;cCW@WR5ImGsRm?3rjo?OyiR=#y;4 z?%|Yi@;I(t!YSs=bv8Mtk=goSd9ZWQx$PWwT<3zb$mtEk`rw#Y-iLnNS?o-8t~r*o z-D&Uia;7+cI47}R2Jr^C-?;hQN6rAJsNd9&=LM5$;OYazpMP?j(1t zJHZ|K>HB>=QHaQJ-?^oT>BI)&Izf?li9^IyA_v)$oKD^%FOYwbzmadqtK<=k;hp43 zQl#=w0;M8JHm0^vPvLYq>2h=nx*4re4e4ieO{OCAmVQJZpp$eB<`Pqdoy>m6_G3%3 z|1qzbM(iB+5B4m(f!)sj#%{qq^MEbLP3H!p)_3PdbKh|Nxe;6kt|K>!n+vX<;r`@4 za9zRCmV8fsI=_hz@ku_LP)O(}bOA@V3X~WWS+SwG5XQDfJSN@{mx{B*Lt;(oD@l?L ziEqT5(gx|VR2A-~!}(UAUzScu&!j9Vk4KRROn3jU{z=HP6a3%%&-;`9(gAAtjBQrnm%!;yIrmiH&%lbnkU;UkjsTmI8JHNT1U`KmxF5I$o}CQ5f!X~L z=nQWf66g@<8E75o6sU{GzT@xYFXwOOKjOFi)BURNiSNGex^J8Bl&`NZ-FMP^#M|Fn z$6Lwk^PceJ_iV*G{7(vaUV&UesRSH0Abl%}qAau*|H2ijC>|4*3)Kaizl5tPV7`$r z#y{Zp;cAQgGVUF_lI_ptV`njKm^@5c%PK z3)FYNQP`+#+}7LaWpqQcv>VzwEeS(-sS4UwHJciTG5FQtNk>Udc1$)-mQMbyTvU?E z4drV^kr%-?7Rndp-SRlOkz7?SAU{paO|(voNh|{qJ0!X!1|&)*{*70QzlfCrYtF={ z#q-8@#eR&vkIjn@h_3;gM#o;nuEnm$^2RsDC&roh^4I|+t_k4M7x8H9-&i1CG@dQ~ zJoYN~DE2gVA@(-5GIj*#d*T_fhp}W#ij(m-pjqem-uRvPZ}DdF-0@cNCGpeo*YVs) zy`fLG6pcTP>+wK>Nt}qUk8g`#ivJT&Nz_XWNn}s_6t5GXjlJ{0yx(C{PvVc_#S+UC zBCNEXTu06!zfGJ@+)GGuP>v>Oxs5zSo{zRqUMl}2kCLa#yW}hKGdW9sF5i_u$XC&> z%aqbenWpqrDkw72;TOuc$_cPDq+}?WO3q~M+~0T zZDWz~#0VKXj1ERW_}W+IEc3FNFdJH5S*+!l9j)Egzm^DF?_hVc3Hz>PTeIzR_FnrQ z{Ovn?Be>YkY3huJ$L(<@I&GaH&OeR>m)nQRIoF-&4gHHErCm81vKwdp?e zN|0(0=yiy0#x!BPj7~drKKNe;W(2c=+0I;K^0M97W^7xwIXi%@$g0d+rU4kHu_BiX zwLc3q%Ve8!5v~R=@#ncC+ym}Et^hw3`E&`tn7_)u=S86oNOexAEsj7oZ7+5dC&4BT zh;gx(v{)LA6f{BFDY;TV&l%4qPZ#9N&Yt@ozgP4so-}V$?=tUN?{ZA{c$a#QdmH*% z`l|R!`*Ql4`1<+Q`pzLUrubj`LO!oQ)!)Q*}x29&K<_Q)ECR3lKQo%2RgM$@a^6+sdH0rrM^kMl=?$zm((1o&r|+OIh@ih9@qWd3(znuA$#>5CtM`9M(S-MyXN~6TI>YdN7$gc~m*7{H|K2D{!w7N~XMC?kSg-o5`)^`f_eLm;5lX zF)=JLBJpeDVd8aSET}XezIH7BD*hn8Azm~7Aa)O|sT1!L?-+j;`vJD}Q*3wabZk;g ziDpGh$EwD1#$HG7!{>HK*G7MjUX2!uRf=UsA4V@nFGY7o$419TS4HPXe}sKij(!oX z5UqjUHaaVMCt4`h4lc&VO2tOTX2!b5%EZRT_Q!_DTEseH`|8*}5N$RX_zqrHAf7Ak zi_5VSvH!)?SpWFo_~-FQv0bstF(O_DbnAr#I3PYO-aGzn+=&Mh&*K;3_v4>~TZNGZ z^Cb!-nkB|1t|Y7kDeDPAevDpAZh&l9Lav6TZE{o&%V*@H@_V$4@=B!d!Qj|gS(X#n zC(DXlO)06w<-cT~QdWt`9;Jv_O1&hJ+^O_b8Y>f(r%H$9$Mrvz%Q&`ra?B@ZtengXi`<@+)I#dX zpE4OuFh;{m-D-0IFsG8u7}`=&xz{9CgLw*8!?ag zgLq1?zY;4WUxtwNx{3qD9%3)? zcky4?Qa5oXTm${A57$=MM}H zj0^M)^ay+dujvolDVEYcWpv7hlwm0yQ>vv5PZ^xDBjsqy`jmMoi&M6NP(@QJr2Luk zdFs;CO{slTi>AI$QBzu{u1Ymh^do9H z)t0(~3YU$vi08yQq80JPW!zOr1PvYC{>Hvx5!MECwmH$PYkqD%H+mb4aa^CIC$voM zy|z(%sJ2#p>eb}lWUFMh$TX2tlA$Ng8T}}L)sGGPLUx~Xt8S4PyP(7RBr z@W61t@aN$w;ez3w;q74|(jWP?KBglhn<7@ELRO!wZ?eW^jmjFEwK9u}R*lw+4u~$q zyQ%_ezK`aPQL((SIV|HGpZ=v9gMm`@25x53+OHMOL$XprVE_uKZapxHp$4$Kg@k57dw$X!T!f4 zSszz~E6x?>T63ql27C)XJO7fCxir2$zk)x>pM@`7=QX~GP)QJlG$Fr02%iZ}gb6|) zVU_TQ@Khj?VI1MTpa~_!zT(f~9I$MpcuxEqG~12z_fmAk(r|+-`~FNzW@1>z6$<<{vZ4s{d@fD(T?~(__IL8Y=K&VGJ%GHsYr>l1Kk3HkOvnB z)&=ebJ_M|Q91v382U5Yn0x1sy*8(0evV4jW*okBR#C`+ZxgLlFo(Jv*9tQGbZ^x9* zDOFO6q$q*Sf%bUZ;ep9mx{ouT2POr&1pWu+{vMbgSREJ!J~au{2owuM{8a+MfG=>_ zf6BkeKhHnYzX2(CsK2y7kN=@>zHcHNEWfWT=pOUV^p^K}yk759RDgzPKF=d*y)<9y zEe(_kN&CdsViD0N-V#;{^@SMRw=wT<=ec!UCoYp6##Uto_CMwz(-)3?nf{ahfi6b> zMiqvWEhi_F)ybPgZzAOGcE`Kf+#AkJ=L_e|r@wCyuv=IM%*Ez5^R(H+Jcrcy9(m)O z-c-M;wbyvG&wCPC0D@`@++hgRPrh(Wk#Nz7>PSok1viljc3J_*!kF) zSOvILjaXXjcC=?SmUTO8c~>`;YpzHmJBI1~PiF zYO+J}K#~HRzEmfw`_x0~0rj4mr9M@^(nf2Gw0_#x+Ei_u7S{}|vc5sL^twg^qnc6F z$Z1qCW*FOy-;E2#J0pi##_VhEH1k+(tkKpWYpWHp1Y5UU%dy(q1MTkkRKG{wtLOZN z*54WGeD54`o;c;*LT+}qmRs4a~r=i`;NWEK4zb?Wx3{D z1MU^O4f`T&VXh_C8go;)d0Z*(4ts_5a4c7k`x;hujGK);CAdb|dzgEQM0gX1wv*eB zwd>q_&d+=JH{3%`;qveu_-_12B*mTlM7{uOzRDHh8}Rvg5`4VCz2azI#^&!*7Z)Ib)fc;qB{jJ%8ZX(w;J&9^m+L&p^+6u>M~V{(=;h z!qWHBmy#t)Qf?_t;-n%{S&5fU!F)H0e~H({`{Fin2&nas@BsDY3^MvSp{k(q2l=$~XCQo+bAPrP=2N44GUPI5i&QRfGzqr*D;?4|ZrdofZ D5B zZB<43ENXo)=b07ESH>#T`H_at*rQj|RqdVTYPxn_TdfV#0@@O_8!~84wUjETZ<33W zZIZ>4g_HS{C6kVFNSTRb6p|moMo!ARdBJ$2Z5f!2kzitx!r}$)KzwYt&;AyY; z_wj-8ddRL_xg!{|m5w8C1tR#R)K&DHk6iy6I*K34Cmf3BzKb@T&zM33v&^s9Q7Ud@E(`sbZw>nurTMw=K)&=V?%r9A4)@OEC zdx8CnJ=q>?&#_P1Av?`Ucl=H%r-swoY2ws(8abn#W6o=bcdNPG+^*nXZMTCv${puU zbAQ5kx#qrfU%Ld6kElcxA#xA}i6+Ek;&)iuKg0t{M@R9My;F zMm40mQ@yC+)MTW|Vbl_87j>38PTit1DVi=pr_l_pQu*jwbOX8`){E00zY8`6V|Xb2 zH9d*mL_eZw<}KzM>GO1UrU6p}qdXgv@6)&AKeif7J7zf3k@=FTg83R|H8YL*A8hYE z^Ne}Km`n+_0b82&u`FAGt;@D!TcZ9qV<)jquwH`g#P+~aO|}<1nO)4zV@I+>*g@=Y zb|5>N{e~UOeusR!likgpM#`Pf4h4$`vvb*V>^=4_`;dLazGY3;Wpi?MxiQ>&ZV$JL z+YCA`<4$oOIDyaNo`AI*x%nVvURX$eur@c}gWm$?{lTB+6+X`Y%Rl6w@KK%@SfPy2 zMrbb-7LwTG7fJ|KgoZ+Ap{vkV_)2Ig{2=TT_6v^%K`bmb00Y~KRYAL7#J%D^5b%k3 zOFSSR6?HK`=vEb7gny2cHb_UMX;K$yyfh1j^tIGqY9}?7TER$ffllY8-=)3i8B%sn zV^1Aq>n>p4crb1xD0UG3`QBrBlJL>Zo|T??NQ$F8zhO@s&sUz|p7q$a+%p8kYwh_4 zTbFr$1{WK77!Tpe=PBl4J$}y{X%!53u(U)PEqSB|VisPZCLTfFuP7E53yB5AE5dA{ zlh8q^CA5ZNR~HO^BWgoqczFe$<_~c{a&0)9eaXIOU*Ou8Wh2br%n{iAK;}8UfgVM- zpwsCq)M9D`)t;(D6`(lkF*%FOPd+4e5Tl6f#9jBWyUG35ZQ&Mi-#C9c6P=#UK#X}0 zi1(FU(#~V2+0U#6R$XM4@)l+NVm3Ej2i4mup*7aN(PnB3wGG<8 znx-W+Rr^f;T0gHphBx2TU+9ui(HLd?Wc&(aTL@=+VYo)7@xXXvgpE?>aPy#f##~~~ zHvcjonQzRn`O3VGUf*hK4X}D!9YDIS)_UuP_0D>Y{>r*-J-5>A3U+0?x?S7uYky<^ zY_GL<+xzT4?SJgt&ID&Z9Iqdo{-Gne`Q5^9QMb5T#ck$}cIUV&-S5#hxc6Ph^$-D~ zB+-uen)ni|t4fR{W}|L?{3+RC;y7`dND=`u8(E2LOg1O$kz>f2Y;Ppl-`MHw_v{k(Fle-!UBez{Z^I5> zgGUY<#XN-R8{9Jymg7=5kxPEs=0)l)!FAxebImYkI6wCpR}noI5^*&cV>|9QIO7Ix zIDD}sH;cQ(-QmuHXtTJn@W)M9zk&TruymEn;7pF=bMZytdR6%^`0_l#zvjGrE50?h ziEzcdu)gMedl0WJ-x7BD1JZR2YbBeA+8e-iJ8;x8r1;U|_u^`CJKEw;-!=JB zJcvZUAEr4J7TQkiB32Xq;$z_!o-0FmBRmxT0F%e#+1ClvggSzSck>s&m0tvdUcfKo zd-4UruVQ>fv?9FD{fnxwi`xPB9>e9tC-ONympANeRHHm>DYhD0nI+hROjlI4=1e!( zTsGzgJ(>QDR;V-7YHAwQoJyzeky|n5Nb(MGlXyxz!D#%3s6r&&?d~t`GIzQ=7>s*} zI$qRyYhSR}quQ6TA6ma!1FhCpIV*=1G0%VcNnCc*FfJh}bun7v9=rqBFtyj(TkW}a zS=*`&)Kava>UZi?b+-C5Qf<0=E4e(mFgYPPIQeCgPu@{}R@y6Nlmd!J3Cs88E%I2o zj$8tX?&H6n;bk>(J25}eGtoNHG|>vQsh#*d!6%$}p+uoXF!3;c0!&&KUj#GzAKJF~ z*7zydpM&<%&vM|H(usCBzbTH-mgt)A=64%q>ezT(4 z)f@>n9WnngBc@_{t*@-_tc}+1)*UMV0=2b&vTxW)yO2}XX$bNxLR;ZnaDw1XJ-3&; zz+K_)aUZ++@%hyUV?KjV)xgqML{C`NZ^T|?%OiwJq>*_@fwYM@VG)JM3S*TQmK?e zUMEi?tNw?SdWT$3jwd^jb?}Hkl1s^@VL+m8Z5pRfsc<+_TB4i4gn=C_CBnzPxC%ciqko(A^xKcOCtK@IEwmUvu=@H}< z@_VGIBjkDV1djNFoK3Do1$aTe!wQ#YuW zluU7SDqWWz2ZK2U^5=xbPG`Pl#xiq3{VmKHCX>m==4V^MK{v2}f$BNAVqo%c*w7DP z$Z=$Bmj4W-9n4QahW<#=+x#0oMeqxyg`nW@sc^>GAm(xOYXXb(TuA%^DY=*UmDmXx z`G4Xu@sXGT5{6)mjin({N2#+kS=u74kfuumVQV|2o6;*OF8N?_k|(<-73sD&tgi{y zGGUDuV2y92f3UPsS||N1{UEJI%Iz(chUfhU8+|Q406*u7GsIEIwzZLNONeE~fcR8c zCJYdIgPFeyi-bW!4I!K0^6yX)c7mME`5@X!V0Sy)s3P^!}s*XdON+f-b`fh>7^*s6(B)*~Qm+EJ*#?ERVwZ3X5?_FD17oe+6-OB$p*8 zC8we5OKwX3nY@m3jAT6dEO`cxVI`~K(dwyX)GA2grPa^XHtJmU z4`j_bNSi&>3F@zS1-I1;>hJ0_^;=9osHW$Nam%ocqUM)o6|$XsFW zHE)|Y%_ru4^8&2zok?1>C0Tw;M9QsiO|;fntF7s1Yph#V)Ov4Sw*F`RX05VLS^pvJ zX15F2xozHl4J(XW8jkSd6E0@wu>ELx?V5HwyO~|zE@9_Fg=}JXwA&*ekF>|zL+#df zW2~*R&)cstHXhl>?ceNm_Aw-8*Cw4f=9%^@`vungPF_cHqPA=YoIDQe=(cTB4&w+; zs`K%899^7moq5gzOb0k)KAGnbXNhyrIp>^l?l_jixP%*W!f0uz+cn(!ZhIu}4(Ov` zqdUOSBkm>lh0BAom5H)oTNMy<9qPgf;xh5?r_5b|tPXb7BukOC$zkLIayzK>fQ*qG z?t$D?Icg-xbB#JrU8WvUk12)93-|QV2}-0Z(B0|&bZ2@X?xNlF3VJbEbc+r$g^{px zp;utqf=0)f$ILq>3p|R!K#Q~W*^X>uwmGu!Z%D=0*-Pwx_7HoMRoD#NrwW^!>jb}< zizK`W?I1|?f+LW7X+92Ltj3Sy=kP=LrhGdr{R~^$%)d*- z1;=tX*#EJM*uF5rAREQ?pTsm_(ix3@Pd}x1ATPA1OV9+JM2>h%J*C!B^{8j$a15?Q zrMZ${;T1s%C{>j<%1~vn(hb{MDgBf=%4TJ&@;_yrvR2unyi(GWpCyYVOC-xD^Cfd8 zQ}KEVBpV^CPfIRJ9tA;jsm;O1G3pc$@>g}Wx<=ik9#-Qj4Kf;P0j<8)N1LJT&@O3r zwfow2Fg_QESQ@RIUR7_Z57B?p_v&Z$S9)0IjTBUd7RC?8Mq@uJ#ziA$6fvurHOw~V z6mzw?!@Pks``%2Lf>p$70g|nU0KE<~hsI*MTXwoOh1vlS8jHgSxb0aVYGI{kFdP?#LqCjgTyuBD%|KiaS6T@Cv;d+ zh!8QtETmroP8xtAwI#=r1IYF;(r#ok)Y}SVL6Rc9@W%3_4>{!>Qpzpj6in+q{FNl* zL=%Zq|2qzj)3ErlPEkbf6W2xo;0!aYF|80>m0Tt;gCSD?jm zVo5PwWZ+><;elPm_MlW9WabITyLH8e;8h*50;ZiXuMS_UCbmKL?Jg_OJmEUzjw6PhB&GXf{X`7qjR z{vUof$lr)B%a`IS@ws>v$#@Mn8g-))SCrG)F#Cpm!CpXB8ON4p6U;;A1oIcOj2Xyq z%wO~}Wa1HY6S^#I;!`PtpcIp+}d=y3jPs$i`TVVTbh`hur_mDfwo#6I# zzi>(Ss52FJQBLQTecE1OPqLfam2Aa2Wc^@Gv07Pa)+KYRIS$TO$h3{8#sS>J-xxKG zOnsj|N1vik(EI6?bp`owp*BqGu6?CdfHm>jd-WRlw?kc}E>{<-6V*m)9+dHsX4V$T2-yMR#O|KZP#vU z8JeOc(MbI>Fsp$+T>oC5p^wG;nW?YUckB0c7B<_+sA5!r(>63(8@-HCVE-6nva#Mc zVLUXR7|)EihG}FotD5y;YkkbA<`z&a%Ve$mFy$83Nb5&XY^${gSMnm-Gb?F1))VWJ z^%C>qc5V37FnhS&%kE^iusdUEs=dJ80Jd$jw`0E5K4d?(!?tQi?ECg9`??*o^Py7J zaD4cr?!dS{{xzM#STk)4wxzj)g~fWM8$<**EQ{Sbkw2 zMXme6UJQp@h(tc!{?;C44+L48+C}Y;-WaniE5o{Low1Hv$50Kgq5TQBTyGt*uA?2d z=370i_SQJe7g-CeCDv4omT}f7tBWEof zktJIuo+X0kqV4Rk&}w+@zPJWs@T#`kyY031MvTUfulKS2pKaPToUTqE(7lOM%_$Df zcW}OUHanY~)y`UHpL5U2ax$F^$8b`?`66y1H@7Qd+Q99KG2Y6p1@d=yzjrsff4LXk zYw*WwNYLpp#|A_PVifTUv6=Xr_>TyJj#bE#WPQ+Z3v%re&$)2E#dZnXF2$;AlM}kLFaP{WrR9H6QP6f9nxwRs6~P< zd0|kk#qr`=@w|9Lye(#m>By-gq%l%2sgE>R8ZS+g_Q25$iTAjYEoJjG@(e*f?d9p~ zndVvHIp8_^sbBX*JsvOZH8D?kXm1{G5pQX4Id2(nA#YwRm-E)~mhxJjx1JdGhCL5F z$2~VaS)Od(^4?0`;$8{oGU(~v>|W9P#&g^AKhGM^bk7((TQg4uPkv7}kI&;sQRyyB za-+0F8Y?xEDj)}Eld{CC;-ARCBVdMY;Hss>0^sFK;X2w;VHWO6WXPT8v=;^uC1 zgxSz6X0ql(W34g5Xlj%)RQ;g-gWgAP19Cjle$%FDleOXSzT%pqUPQJWthQFmBEQ~9 z?ghyfB*!J|C37cTMOGdu2bG_dpOop!B&CZ|PbsFPD72!&=OXeO`L=ulp7%d_t-MTL zEdL~rmV3xOF>O+Gx3(+)?f)FOjdwFXbnn z{%ye}`JwzlmStWksdQBO!znw!1LrDBl-vYIb9WGS1!%rkT??KcSN{c5qpGV0w2wa@?2h;UqqY_apVZ6h zU!fjM(>LlzK+(9K*QkV61L=1(?C)1&C920CAZG!y?x)t?9BVEx4 z&ex#Gx7JSN)O4_+f!!8t_}*S_ueKN2`|VqxTGDoG5%jC!GyoHN!r|9D$DJ!kkpCe= zro#6q*KsH}=$1r=Eam2L1=r)IVy&Uu#%<@;bSt>E!G_W9M0b)q&Hc`u;f{6tB4zf0 z9ZqxSxl^#W8C-FWyBE~B>fU!VVTd1G#TAKM#OFj&B0KD`3>Z=#88n?B2oF($XiR)b z6em)MAeI{t&Eb*t(HjuWkWohxLx@3`jv>YobBR^N0%8fVm{?7$Bz6;rh>OG(;y!VY zxIx?`-oXY-A-(h`hmeEGE^xkPFuI?}WymyZ;A{KH{p5M_1!=<2-jXC$n(9e?Lrnmg zzNe;wOQ)y@NVc!2_pmdG{tRTQNPmtyf<#6V=sZ}iLYJb8Bki`Pd(mCc27+7*k#&Eg zf2O~s$HU^5gJe_bp-97HkgsOZ)9A6-GnJl0ulfImcbq;?Kcll~msaU8{p8bk46`xC zV0-zQB1}1^6*C&PHx3l+!gOc8W;QW*m>0}dq_y11;h@B1-{P-Q8BkW=JZ}u*dbQZF-&T6d1nk>Qb9LG_d1xxgCg}91bC9WLi z#kkhoB<@FU0{1mH5e{_-zW5hX_hN1-cZB=E1^6O-8So?@pN^%fd_%r9-;8hh={Gc; z_%?hmegZ!i8FUOk5L;^Um9eiK-xJ%LVyz_XtTx}CZ^75+OW^#{{1;fN&)3Di;(Rgm zYDljY_?*1WMYy}%CGHq^lKYceiPtiSYX+Nb&h_Gka>Ka(Tq}5OVJ;8e2hTa|OZG2z z1G|Ks$d3Q?Z}O(HL)fltZMGO|G0&Lm%q7&34a`r>NYs@&xVmMSoXlf<3Nz@QbRD_~ z>d#B+1obo3iz-8Ts3fXY7WtGsh>S1<Fz`huI%P? zb>}7W(rl-<)6^;Nkj{O3kG;lT3MMXqrPQ#4cHFvcZM0^g%6GL&ShN)}-GAw8E)>YDaOd#qi6 zkuB4H)mCep(f+{NYS3hu)>rGKb<=uiJ+ah7Yl&1{Lu;tD(S~Sawb9ttLMx+{2X}wc zc58ca<~(f{&ReLh*A8eW&<=ymbFp=;c1C-rX<8U5^@z3(ThD5`=F@roo%Tq3tMPie z9zf5A3@>Z%wGUcUBXpmhf}T?^fizoQ|5EP-s*TY5>x1>Ku*F6CG5wZ)1O2pqRR06* z5?GhZC}89>(v2KOPNSGn-xzMpFlHNbjF}+cFUC>hxnUU@#uekB@wf5XpiBWiZ5yiL z8fj)FvlcwEwK)JhoM6rb6E~P^%~j@a<{>0w(sE75v`otKSh=k-@XIn*WvdxDIo0|J z{*xASa8jd#){9I$N13z!tFX4kn@Y!y#FMy@G z{Tkkw1%ph&4mF!{yiUOR$k)8Et@;=dwXu}V31YizbJ+Jew)SvFJF}eK&MD`DbKW`X z>~gli$W|eHZ-$X=bEac|KO~Ep&QfQQvl7#t&SfX;$j)=;rgPD`4_`AK(e=ANusOy3 z%&i0d4t58+{XyjA?jHBFd)s~L-gS?bz63!07wO$QLY ziOxhnVgfOV_y+3>h-3tQgQ{kkvvZR`zhy2 z)E87AY7Es6B%MetM}j&)-KKOZjm}Ny1S#v#{XoE(^dfp2eUpAi`e@0K>1`0!j5kg0yIgaZn z^cK2esfo}INx7L&SNH}T79;YqNs3H_XR?RMCLtfQ+llKT-K}B9YidXR+7}*iz zY=YO>h;P7G0Ue9+g?JxN@fzNN!oB0paeKMV+&pd!*M)1tl?L>$H_mt8ow4WHmbh zv~R^WXREQfkZT_?`ez=nBGiVrW*3?eR>bQgdR?Jpc}yJ3eplCq3+}JS%FWg zGgX}`gq-W57QQ0Sk~7KP+OA{j$9-AAk;z9%N5Plx3<#;Bo*5AHu0S7+VbsO)1< z?Q6OPUBZ3moOXV5zHz!a?VL7nic&~W|Js|8lP1}t?Phino3z8$YwMo1-^0HjlZ&EMWYA^NE;u&r?yldqW9GYfF5=9 z?7FH&w2<~nd!Stctu|U4QRQvf?9s9h*llRycwpI(b{Mu z@q9mPi$KHQwZD;wA8D`giXvK;=4ff3ezQ>y(_(rnB;p7V~ zF$Nd|(Yk*6UB=Q+zrlC~lI1W9n|aNgxE^KAdS-XCzu6B=n`SOD51No+9J`&QKQ*v0IU$b?_nJ&{YNAPt_dAKK55a%Ip; zwX-`FosLd-XP`62`4RrU(%A_6d*;L)20Y1*^yh=?6>zJ&U%9Q_mPmlj;e2C2l_U7% zFX8k5*L~q;xRx7$trdaErNZH=gD2fVkzT}5VlXiRt~Q>ShS4(;>%&2n2^dBH@B7W` zF&_=18xN0LL#!n>VcP~`7jcBR4u3m_rC+gUA+Z%+cZArEBNoB;HW7P?6T}&e%U7TN zPu?UE!_*{bGL=jrdD0;$GAEgj%to@LglP$~I9Z6y^Xd1lMaaURewLk!EK8On3y?*z zUJUb($65r3@t#fw$$~htBwA(M12r)%jmId5c~!CkmW$)~960L>vK85y>;no8Av=&Y zustUptvFc+#@U=~M-GHDY$dlL|L!ICkn6z7ov_Wj7tl^3Z*7C6ULkLxpCgZw2XM|kGEQowOh(CPrmKsL2z;a7!5H*AvPK}_xqoz=kuzex5hq_2zpnj*;QM;*|Fx&@l z+$=b*3Q}|6^yhR@@F6Fi9n`K)H$tmUmxbllrkl`B>H45Y9V~sc-EMRz@T3oxMxc$O zC)2;s>tMEP|BtS-4zQ|f!~L!^4Gaw3Al;30mmu9CBGO_IiUNX^l!%H-D2gHqf}nti zCx{LZE!)_31Ri|B`pepCeFUF-mn+P-7FbKH53RM<_Z+ju`qY|dEwetcHgTo-DBG@9 ze`}2O2G^erHV)#4@qA;BG1(YkG&Ab(H3G(c{S@DEul^&dW31jl z&#&ux9O4JEW9Y}w!O*$T z+0Z4zF>r1N{O$M9-=V)?a({#lv%E93HS`O6ABD0)$)U_pB)*`AUDxi4x*ci{vU_7M z!RfxSe}v8Lu@Bj&?2A&{k!WAG&%vRe!0swK9i0A7JKpjc<|CXw&R}PxGs=0M<)MTZ zoVm^_XN$AP`NKKr{Oz1W9Va`6Ti7k&YHq5N<^&zx4Y)3Gm+geP1>I6^8TJ+6h#GDK zVz!mr#qA55f6IN7>5JGTmKUL^SHlIr1!GUSN8J7HZ|(v2PxlyKCeaP|DtL9V3NXO( z@V;VRz|*`~PqpBw%$9my8?Uq17Brsjz2~ii4<1H?UqMYIdaf4$jRSs|Z=t^J|Ue-k_8Z}B(zd;IKZeFe5!`$5~U9ngM5$!BW?LGV)Gc1f9*0^cj?jinA|9GrBjz8FovMgIZ& z6+1z$I|0_-)F10fV5M$E86NyJU5_@Zz){;99gPk~J9y7fxaw$Q9EkaX@hZCSE8_>_ z7wk{txN*&RB8d2u+05(+;`K%&P8a?+wtkzaX zkggY;c91m!jF|>5eFCDbv%a?WTF21s_pJL?junS4t%7>58E6vdA9y9O9Id`1@H0yN zVBqh-G3+G#EbzCD0gdo@5;dfxooY5IzHmCtJ^gq|IQQ zHNg0AD~Z_o*<3?h4S{#oH1nH@#(vQ9d*XQm@%_5d$Eab%80wdCuIoqjo%&XM;4*!( zK16?7FRy27SMl{*wGSo5b<^r;#kG+C03CC{|HfbLPxkx!H9^O--X3z!bZ;VTrngti zOGA^bfp@-0UagOkyH9@K;C$q~<&1XfI$_Rr`>?&;{>uKyUSvdxSn;0M8J!C}GP!LC@BVDn)4pcYJo>)p(`opUYcJSzF~oOwBu zP}MJ@sz;-%Uu11u&d8kpIlbVC-I;dI>5$U~?$`${J`zpd3oYJ+&=YG8%Z$m%&$La> zfSl(z;~8}O)SUNnR_A<({+ddH}BGz%B!D%Ubp`b~pQ3yC>NCGCFyu{kMJ9 zz6*v1?P6f)Bxj!Up0gVJ*7?Ob`cJBfIcSWvJT9;PRpa*F#t+f^fN`;>8;l`<8yx?RqfaQzzc7HTYj(osC|vC*EX_e zAAEC{wg>P0GxKer(x=)da8!j)TS25<%+=kdXfF%L9mgG2nPm&uZwIX<(!EdIS{EEGffdjUE!j`=JwF@FP4|O-v{p`Qq*VoFB+(mm<>%_g9agSD7XWnlzPcTgDr}ftc@|M%UMOuXyVdVCoeuUURfG_;Uax9i)$j%l6ct#U`NtKGVO1vu=UAoYC*-LA{hw&8Q5+ zYzV9DW%Pts4m5@vQ;fyNdNA`l<2TSU%P`G=SqSD>ik#lXe8rq)zGn6VJG+=;&AH|( z^CR6k^VMxf;wYqT}WdQM6L)>_|zEMEy`?t=Z@vQjKP z5D3Hs!UCR^AKYvo=n?1^=*YZXpkH7V`1x93d|+6hSD;g%ZJ=vlY+zYnJ4kvwupjK& z7dQ|&6gVCDFK`9bd=k4BNDcUburNI=UsyEg7Yj0$CPatXfhU24KqC7y0%{!L)IfG1 z7)S{?fvB*mVHLs(hNTKB#&gu;z|Fu}?yx7Y5gq=1U`b#F)8&ELX!2QsX@OS*6L_W` zffj+ffm(z{fog&LfduP6>$G)PN+Z99p>DQ5K&^KHHOp9W;O2F6C*I|KbEP>4&iSm_ z#H?uA#$~W`yYY>&3YPi2(a5m%ljwyXz|7C|<@mw|dPuvkozu>vo>r4O2a^(uYPuHm z@1WT}@@M*^;0%U;&imf`kQ_S1YXl3i-G}a7_ojQ=-Ri#KwuT4Ycdn4*FTxuaIfKxa zg&hN?=-UbQZ)nhQc3)I!Ej!M3U~8vCTi}PU!2YHY285c0Du!ZExKW`%$Oe!84Q>vu z4z3G+8T>rBCb%NF2rWE2I2P>ch%O!)oDiH9TnN4n4tB@-1xJ9ieS$rL{aNc6Y>(D| zF*rQ4%WIQv9V8??mXzw3|Nw_BRvO_p!g$|IFXu?}hO_1YsQC z0(FXLg|xz2ek~uqGr>>tBS4g@gktQA)=Fz_K#55pW_PsvvmjVUkYpI>ISRBL2gXf8 z&5wuC&D7?BA!|WH#nU#z-OoK~|7M**hX}7iO+#`|mHSS*+ zP2T{0-%9VGch%eLEkVR~%)5h#!}U>c%op@Y`fPnQnD{lCe7Am(oOcHOeMi)II%@oZ zejm$%$G9?nV09FETNHS0qdwNr=w$Q;HG3L^!OdZWNyfXzYGVs({3j6f8{=Cr^e^KS zIQqy)G183t#!ce_(<~!k<}-_-$g85lTf#!0Hz&eAM}P}2n^R#{3(OVZ>Zf4E0`pz- z6Z3nN>JD=c%=93<^iQT|%?D<>>6yNniMEYrDW6pk6`mi9wj!+ptQ7%^tD%KkT2EVb ztvXgc5V@IH6Huu-)(rhV3WOePb+cM=TzeSqNb4nQ3b@_R>H+6f`o53ViM?&XvK}1Q z1wPoDtmU0q3{ne#I@z(ybV)lvRPPv6gKnvKlH=F?_vvy2&QT4tv4z<5Z!*~H{;#xmIb z5MurrqqEV%sAyP5njWuTg==on=i&2u=>zrtdN;iWsU(tAlSDe*EWUm$93)2b{2S<{ z@BEGAtU3N@zl~qfkMTp^b#FJh^L6h(EOig{f$I(p4dZ%aLa&D2LcLGH-Vgm2x)ORAiVvls#O+WR zSg*35QIwU0d}QuH`gvYB-gcw{o5Z z6~{O)J8wAeVymQ#^0;%@+2L$c-lqgBH9_5e9wgPjeBl`0;#fOPdOxcQ~9%-x{f zea!-^>VZ9t!L5dRXZ;y{us#4jHUNJ<5oJ4Fe~sxheJ-hWp}s`_NO;-z*mwE{SlVa$ zdVLMkjcnNnLVX1vIHjM~|CKVtKlQ&*!e>}N%JO;rKm7{JSHP)aMoFWvk>4m_6f(+z zQguMAI3r-VdW=yPjojCG&ggG+WvL-dqnk0x7=vE!0IEHWwLm?0Wou`wxlzxkWi&Bb z87+;*@Wi4{0G*i8%ct>8HQ(AW{epH-o}{G zW}I09L{V(EB+F4|1fi%|8MJ9*wlJHSHOyLA6SKM5%52B9Hb+K*KRVMWGuyaooaD*Q zF~7^552AWE6ZUiO!^R$Clktf$&zNmY=S^oAi(t~rjrqLy8`7VBy2QW?VnfBxDBgYy zaW)dxt>V0w(GTlRj8`Lm%NSMgFfI5t-S9K@j3UH;n30b!nX2F7TVLR--@-rL;QRl9 z|5~CiCCzNtztLBawnoDEyOQ$ikO~{>HSv}ObQ=$RS^W0zq}bWoMAENPUW3poHmb1)905HdNI9 z1k&3;mM6k5w`<3-LnxZP(laFk4rjvV3X)PQk!qXiP2p>;NW=Z~G5QpJhW;{Ib}0DS zSMP&g9|)d~(}%I%TWlc9WAyQ0>vQnCww&D#)a|2pf$w!8FAQe?AkOQq_rQ8`#xTwq zpm&t=sNzzi)P%F@>J|0UV0U@F0#*QCYQtEwv=l8#djvOCwdTjQKX~eW%x}UqleDYo z?gMb(AGMvl&o)erMz&VU7goTdR|>QK0`H*uXnqZ+{t(9f7B-K4tJ%8%fAX^SiZ++y zSFvrmHeY)Kr8iCLXWwW26YV{&`8_dqTzde2PSWm>kN<^p-()$HXH1o;r$rNk<#_hu z%&X}2_2#hO?!-iYIPZ9=;h(O*qko{U0x34adN-mq&*~5LWO(jv{hl6>-xp{C29+}^ zgXM$4?U#(Hp!f_hd!Dh-_{jJI#QVuO0hfJj+%po4pkbQ%LDi?s@@8qX5*XS@YLuFp zP0b$W5IF5P_?>DwwaT1lzHYu@E=LEiF}Im}VS#(hpJBIK3ERvs%+=;na~ad^aKm5C z@8G~I&5z72=05YJu*Q8Xe+?g2?Xfm-*0<&cj+kf8Fc)(5wH&*EwU>oO&oSRaZNJB! z`Q{?_uIC{009R(1=!v0Vdp7zS(2fGcLf8SjKHz*&!m zehqC8tqv^j4)Z zA+_zFz-xEehv4dG?6dYoJHd`}$~e`W%1&K4ZDXf1KICm@xs;I}!Vf)wvARxqSn41= z)?|3<+wLm&OZNwNAI$V$5I4bf+-Uq$IwFs29#`Ox?nJ-W&G0j6@w zxQ+t72d7Fh!p(AKT~d5EbAZ?&LO-*=Ig~u{95#u3^oIG8Il+9zeAApoc%6JTlDyIu zZq!6-jXRiqIIl0)=w){2>^>}am$iOu?{0QR$F=6jj;OgtW)<#O$}CF`D}|~4F|lT0 zLL}@;v9ugm+XEw!sbX5c8@s`pZN^6O+$v*%F$Zq72#q}#Mm5eDAiSv+%(XuGu0Bk( z3CyWDdCxG?^+)Kzi&6`J28Og(-$VFG{}smkuYQC)xdz5G8+!}BG=^N+2bSI*Yp%D! z_cX;bG}Rm77s}ufR2f7?y`)}Pk0V6s0D~StSK6R%s`ePq5Y%jZnCi1+vn4^hhh5h$ zYG=>`f6MpWi;wt0`w9QBRr^kq!Y(|*r`lrq>O1i$zp=g%A245=i7%Loe^5Q!XW#|i zzz;0c7O|$rllz9__Gv$pPW~W`{HI;P16|;5kHjCv6LNT(AZrQQZ9K#cESLFRV@oDa z8IraYMMzVXc(bZZOXBs)vHUc?x3QGARAGBd(%WG1l|A)N#LrOD-AkmrS7em(xADu9 zh`ky5`}#UG%D4K@D3gETrWc6yJ9-M~F@R<0iFlXMvpy*1J(I@%>?mbZ2|0zTk0+F7JGBO*S(SC_`2|`a$Z5t^zOjA4#USzxqIEO z+z&zEneH@q0vxU%NZbsrR}AK7JL%37C&fvH^?A&1!V~|5FCIWW|Auz{!dU^^T?7Vw z2%l8Uay}Y+C^i_*s_MK4IIW#V;8iO)=@3|JbEm3P$|;F1?;squCD>lUsR@=1;`m`O z+~zRfYMfJ_r3OqJIJKRoP8(S8NEG~N=Q-xXVAE6Kv!B3ZKY_(=bq-4JmVcc~pkRt) zx&_@LZb`SCTgff&RzSNqb6cX~TL^FM;kI!b<7?^>RF9Qs+13T?>Av8;?!E(Ookv&# zYyHgq#@*%~bkDeFiK&0wE7B7upBL#Fo(pFUCoao))$wKRyiTyy9$r6`eoyAZqy<_( zZ-O`9`@-9R(qD_-S2gSEcSp{7N4?|TDH$X7HvBaiZSsVW;YIkxQ7v`+hSJ-mKOFWo zsZ(F*FTkhH@?VF`PGj42FnXN-l0OxG`x&X=3xAcrh9y-RaLE4?v^cG#*i-oKrr`RsQjar@{QEjN_j7XpemL9_OriS?Em_MJ z#0b~(kq2v_))eN{A@?=VTYyC>Ww$3sHi6T2CnpXD`zPpc>aW6v2NTptLQC~!g!lAM z$%E@rg5Tj2e$x+tbbIj)=g32eR zM3<_Tp1q8|Ovj;BUxDL{F(#v3Ra=;M;5;*7gA4L zdXw=TYW^$ZQ{#QMEM>aNSi$stVsetNI&$br!w$% zysclBvYR{lP5jgWJkrP_^C?$~$G57IX?Yrju>ovai~w?Bn)6`)B)G_}gN89!&Kud#e4CJ>H&RzXGotZuhf$ z3CDZh9&Goq+uH5zI(9X?l3m4q$}VCTv{@nhww1Tb!3>MprD3@}?4kAm`x!WI zGtTI4KWC5Q%Cqe^?P>NDdxkxeJI%G{+e^6XEc<2qHTw;Fq5YoyfxU>mv+Wi3_x3^i zU;Bc6(mo20{)eTj_D!DoynWriYpWJnIkx8bu*^cBavM;5vNH>mUF&QDVO0;n%TBVR zxzTQ{TgI({&L1jxxk6axcks*~-Cx}UsQc3>`V=?TEAQ2ZX*LHRp8*wzcin@YGkwarJ71lcIQ){KQ)cVl+%KE|DVQsa(XS&n+$=YOnV{Nf^S-Y)mY}sz@WofUq58KVY z)z)%rp|!|*&-%z(WzDz7S-q`}Ru`+EHOLxj^|5+c?W|^2eXAi>%PMabw+dUamTxAQ z*UXFNah~q5c@Pz=wCXDJQyDK~HavO|int|gxEee-8VobdaMLlejXPkKD)Br5Cha5^ zJ_3ofZh#sXer|n<=0(!=xuz= zO{Q1ji2uTa&SEF_=*<~;sJHmKX=e-x0kH(%8AKwcbgr4n93h&}|^jdpuNbMb1 z>ICMr!Md}pu~*Nl;njjE)c0z7)x4@KH};-J0oV1O^2&M@*;2==&Az&9>jZ!3$+QE@ zt-Tham0Mt~y|!%Y1jA6)nPZ;wrt^HWVRusrZ)0zHuX$5=>UYRv3(0BIS)a+%zlVLm zdwt{W_I@Vpkdn0B-f!f;-QKq_#gDxYVJcg^J>0m^@XKNxgw@3-GmGha@R)D?t+1L6{yLb=TK^OOV}B(aXr8~6weP@yy|5d_ zbAI!;v;G5KVIAN2U4Jh2Hb=e%c1-4uqx~1el&@&-xA32qmOrZBU`4+aT&pD0I6ogx z9*G%#j+f{qc`2x2*VFtUtn9vbPinnYIdV23#G4u%8}J>DOdzCr>4X%Hy9ld0=AFR{ zUB?SuBX(|h7rgUqKTDjcm^&`v1Y0k`(XWvDu5*XG9D9N7st?X3u9LvFJ8XS`-6v## zjRpL|JZ(AHVMV_Jv0Q+sF65VGxu#zmw%ApAJ&yE;q2N`#_aO}QhZD=svDDx1%bu~s zuNqBng+B)-IfJ-b%=&U-e5q{z%>T+)zn-{s-vyjR*(9)MLI zg8}@m9n_AZd9I-ZRaxPER9_03Pu05zwFnqPKGdtJN9rZeNj3G#;6e*x;NHt+{wq3U-S zev}c>_P|JYq2KnQy#FHnjtW15QoJNe@jv;!zJu)9&r#oT1*Id;!H+KL$GO&C{TKEq zA95aVav<-R@0su7`kT4yCp^nn`Zm^f$**Ru*Eh&`9bd>3&IKKZqhQ;kZ0qp0RYlKN zW16ezWA!jSM|*&hRw`Oy<)7&5-J;MpYa58~#dyB?*!$YMOkdYt;+s6L4bysQ&)^%| zYt2xQRp9-W7D5d?@UNf`PVl||^#4FB{6fC_LUPgqY#}*w207_9l*VXM*C=xDXwp$n zSXY12R&HABNltI+cVyde8C_Y`zVwyWA#K^(!SCWfL+%^E-j~RiOXS)!P%y8N3g6*g ztNhRX^-^ZI&|k#zHgfd=2}ekUH~q(cGAS?FPx4ckX84{T0W*x|4Z^j8=$B@szGtM3icAOM6EIUCT;grTfu&OmrhzctplMoo~$XJtfp37tEg4bifcv4ZBbed zZ~X|Sli_Fa#V+{A_*SY7^{@U8zSla5yLbHg#Of==@-tvuJ;Aqp;8YN7dL&qL8f@AR zp8w!&hJSs4hggb-myKXT>-E96H1`_dk80qlDq_XGST6#_>%g9Gp@A>C z7vXsOQN~}Pkr%mh-M8E~+{x}JcK}+tjoSg8-QI2OHg}u24N=-n-KPo7(clfyh)HC@jMXBy>(yAf`Fw~$+$qv~>QeRO+m&S}myJGs5xLD(>NjQf&1)tvh;^A_A+!+wp_2Q(Zdwpr+q}sN>f$y45iv1J~a)8+1hyVGC=70(rB(@qd(v7cf%ON1XlfM5i~0>T_gy*X2Hfo`c7d%YG1Zd& zrhbe2Tm=I!%b1b5Z26?z=_=@Wjp=`!d6j244;CKhs9T(M88kcyismBYQE3%$K>ven zf3W8-wj2aQzX1h5*T2=b@^)JVC)b09i^1?2*jv~eAo^teRechiT`|ZPrL3<%KA?x* zRd0)_vcO8jWL30ha~OUtVmFpJj?;_lMe!g8I`pw1=W!IlK77%4;KS$II&3}PXt^-U z7q#c$l>@<(u39UtHuzFpivwpOwEW;rB&efnuAc)I-SN+XPzT9{d*GN`{EhxqmIgg_0Y`;e-2++wnZLU}$Z@<^CYE;t8sS$!l;kh2g_tOfQq#XZtfjl|`_FMZy?fXS!70 z@I7#R2}`T-7GJ{{Hp3gffyJ2A6a*1m?J{RmgvPVV^wR{odl+vD%X z_DEj(lbAfn{19>a8{77B+;NcZgnt$vbs0P3pZ1UXCt>wBLBl700?gzNc&J#3?;Cs_ zjj!VhR|%j3)Cj7Ir#y|<>#Vh4sS1qcDKtVItp*s|Kx=~4(;7-U<|b%}>RK(lV+$Bf zd##(aM(l;k7_N;0tKT3e&(L0x*47iX3EFE?VlkQYGJ*Mfq@gcB`gLIaDs7JJQSB8M zNUznY(n5PMcrXmbG6;MaMk*V}nPXTQf)^OAjbuJd8>NkvR_24W{@MVoue2NQ&+$EZ zgLYVFyoG9o-JIvGA&RHD)`)kg$9gmTM@M`~XMD-CoY{wWXvbDHaz!WJsVPUcWN$C= zIBmq=G-I0@akiXRid0^JG#*J%BVU9OlbOV%&h`@QFTu6|Y2Wdq$O{o#kXTQ|;_=T9 z`4YGM|L{y#K*S4tr*r;w|C;Epy>N7(Ivq^zdR7>{s`*!3LyZff%7mW5 zx{|U-fZn}XQYpU^^Y*0wuAI}2;|57T^>O|re}UE)E(MzWPPy)2C^|Gj|${gE>d#a~sCqAkl zvGM|bY9clX?K6$sI#=@Oaum@N;_W3FCuI@#4*RA`FRhit_-7#3xBez<8~N@x^4&hZ z&|$vfW&bWYE!j^M2KI;?r$Ry=8%tul>O+v@yG&J&0>x0$u?*I;m_GC``hRo9-{q_S zB%^++{Ctr#a+MVGkn5#!rly&gMfx(x!#Tdg6*bNG!_o0^;BR44XEEjlSkEsbA=kp{ zlZRCfXev3jHTk?D+nO?O!QYQ4awvxQL9+tdSRLFkqN9}u-_ptOg zK0z_+d(!ULg83E0mo(BlNH5#|(r%-#K0ti)SbYpWX)bDFt$5;nc(l{_yvz7Tyda|CRr|FrxWkeZ;2vJ5f^P)x(qaah&KCJ{+jP)X{sa6ctjOs>BLJgyV(bVW* zv^H9>RMn_tlqJ-X+QT||M?KB{o<T*%0W72-}YMuZWNnnq90 z(o=c1c&X#MhIju97O@*%u@+sj5}U8j!pBa~N203w@$Mb{)r9b&kNitu z{C>Q^52V2_#Dji<|NPKjMmn8KdYwYLohS-k<=ZagwN`#((tbU1PgQb55wv?azRt(z zh47$hXm+LHQ}Lu3UNZjkGJf(Dy8Do@U&Zo%#(wg)dK)QmMc#aGj`t3>$Xnvg zgB6eThI&1`E?!HosaGE^T+S;24=&)vz=b0{%ky2^&2%$hnNQpVH`#sQUUiSS`(UBp z!$v=l8nvnJIQK<&v^x=YJkA~N4s`pv{oS5!54W4!-F=2>N7!v0x2jvweF{EY82(#C z`huFS>$r}_REHlMuFjTl_;NnCpj*N%3xh7mu`#gaf^JdHD98D#e`s@mc9*!TVCtLQ-R>Tq?~wZ^9Qhn9{y+CNPoClGUbI)*tLZiLI`YQDy%)WS-pkTb z^>ty$UwRw7uh0y;y@TEn*zsB6B6o=EFh35wsxR&TNBA%Dt=@$Je9f2K2(oYIs~*Gy z{7ZhniJwTtGl!9fOOXPe!Z+8%4>yxON<(GL^w(fts?^{;QqKzV>c@E0ueEPca9iQc zyJ2j9N-H9z#ge53k?LVz5O!A!=GPR?*Md~q8W#NwxmC3~m;z^f9kw`~rMYm)Wiqbj zO8sNBwhAls_eu9(h#LPHe!5Re0}jJW&%=)&>*<)IN02*<8Ks!!C;!G6g~^Mx$Y*UZ z)vjLEMD;X=7=w-HjG@K|Y^*WSc-43rn`lfjCP@GHH;h@vQe%NJkEI#L9OjD%^NqPu zoAagdEw;tjO!&t5n)T0(PmK?xF6wjR3*#$ejq$Ouf@7B%OE_;HS6Ir@QsW(#-ZZ9h zm*=_jNWx&FpV5t{Y6dRU#;Sq_5r)INWaxZs-7pjeT+q*9=Y@^$(7z`ZR_P0fsj)IX z>0rGNu~`>oQkM8F2p$?}-Y4kX+hF8P?Hu^I4ZgEnn}wF02!9y?YZ(sKwue#F=G#^Q zrz5oxKH&+TLh%DtW4)79u?^cu9)B0U`7$~CMe=qZJXt-wUU~d&Nx!IH*e?Kg4f6x& z*K{e7OD8Yihv};HcZ}Tp2a0W*>nxT08u;_t`1v}_Ye=cy zQ+V|{f^0Q8LLH~p6tijXcg`zEQH*9RY-KXud^grv>z}cteE&BxhVJip{a@hdJNQDsNImjS^6*BE+ranw zku95H2%DKJHg`})U_1g#*bkRGj-Bz(OL^gW5d9+j?AgePSA zki5yhyngFyeHSsKN}qR#0{oR2+aqtcjiBb6rSy6&@x6}k@Cj_|W8!~3@%XKLkxvQh z_&zGE7oGGa=(&aSe&8BAxziEhOGjZ*f6J5n!~CGc{%NV#zn?dr-Tgc+l_q@5W2zWb zBUEYDX$wK#h1xP{?fH%N75r$klw|Ff za@u3szuFn{{#of&b)LB@QTt0ft({`~3Gn#LCX=@0diz@$8S`Y1zvQ2f3-S9Pag-!T{4Km{1D(nNE^&=@^ zTaT^d{MAg=`D?XL*z+;RtmdeXSzaUR>?7fUYSg~Pc$*o#xoWjEOG@M>NnhWW2)QHt z&493YyD>Ou1R6u!D zKnd7SVW|m-6b2N9#R=ZT_?GX&f3gXV)MeOM4yI~qGQ0q|S`d6K$gxG_I;B9LvS3hg zv_)y|&;q<^gKDV?235nuHxcbpA6!!Ur7_w>^`dSABJ~2jRf%tZY#{n+AnQG`0seEm z#}ujEnZ;YpL2WDr^*<1X_Z2DpH)25L`*Y;*8{}uzUr_ZHEJV5uBi0I`I%}iS>!8@5 zLZd!S4EKRY4ipXjoTT5^v01Q&Ioe$2i||LP1@lHpV_Qi*yR^fk(yQ3@yk31zWYnHa zEvSX*ae5(w8nL@DQ`KHhjiFORZw8A{Z5J9z8?*M(Lc1H&R(fOXX_?m6t4nXc`g%i- zX~22~y}Ynv0}I!q@tXOWntG7CsTR+PJi$5giz;{iRmNTUl60z`c4OYyL*J3&H%Yoz z+f-S?`=r$+1eIc!Y41qA$~okTLEX9Mfx0x>hDd8RLZ}7o(5`zskGS< zQ{@Mp*w>c0tdDYP%)F&2C)Jy~t&~D{1s_!3^`3HkYqqHJgVtC}tRqL|mWq{u$CW0P zt6t>+EtseKvOu34U$OfjsGKIad<#@P1$HSrLpUX+0^9H_>!q*gmw1_Vq>1JJ0#eFr z@PPrO_+Fy%2ayB1;r-f4-Cb>bVrf!r6zNyh#ify+6TQ3ME$^n3m|el{!uTJvb{XG% zRhE;nG^wk*&v7@s>+DtYTlj5NEB80*K($Ri3#&MYZ~qZi@DpBs3;zB)?+5(;7TCfT zc*Q38#-=<*@jYDPdrU3uVtF@5ZkOXWbIiA*E;f5>;U^z@AHguzz%$k|UCmtW`36?8 zR<>>s&hi~+e$TysL8Bb@j(bOWx@$ahn(&Bd$*bka_jQCb)DVVHgZx>CT&XxhE6Is3 z!UoplBjlV*Xw6$%g0w@6)&poz zSK1p#lh0J!qFB9*l>I&}BW2YgA6G{i)F5v*)!XWw^seZFuF_6z0Qz>E{t7l8oiJP< z!TR(1XeoQ|joxoBzdO>HGwbLzxk62@Q;Qs~ddM}A5xHvW)nr>8X_HzGU0g&;npJP# z@=~f_h^GqIBY3`Wp4HY=*>gOW0EfOIiunwt{Hf}tu|vG!dg){F0Uqk3Jg>Ea+^!h5 z8pmvu_5#!KQfipnH+n3~6J*@P5!f(k5z&ut(H%|I6W=sU$`t#-%6qV_yZmlc3$3Zv z5RR_CWCI!Np{Vr2&L>|ypyihCS$T6!%2QRzOhC%LZMcQ071WC0+X`vb)Img zCxR~7gf!NYI6`qib@X+X?sDWE)~*V3{Eu*tvs0y}}zkk7fQJ`_FTRI`cfoofZVkEx%INxW*ft7v_2drg)koj!TVzTKk9j z0r7E%rH(*x#jU~>cZ%&MFK#7wu94b1Rk}W%ockvHU6phyKK~Y5XR`Gra`i~O=?nhz z1XaKKta#Y|EGdLkb^TpI$d>ryj(!j984$C%lv%18Sfw0PslS@HVM|-4on@(+-!yLo zr}pgYEG(myAZ-IYe0}EX{4Q*%2i8=EcT_;Xlt7`Ckuu8K!Ua^>t2(chEU9wNPQnX% z5_*B{sEaw5vD<%TPQ+wVzUDoLl7g;1r|(k~?f< zX#?D2bsigD4s&{!=b6cKz9e}4D$h8Hpq^jVUc3O33>JJ*^&!J#eJC-|50n|gmZ9?I z16g}UN?)IbPqdWMoz_yD(oX6iR2{c!!Cni7to%xGtSE6EB{*VX5yXBp{7=>4q?6xO zS+J^UNX|n9g&y~@d(!9gKfdKzzVn}a@4e)(z07m#kPhJ6cEPK6N&V8#gkMl@zq0f_ zDMaZpHBQAkQqpSC$RA0)!~d8Nry^Lua`D6 z+sV!99zV;y_QL8_3Hp&d&U0GyMalq)*iXNR7&&)_x?_ z|13Ihi=@!?c{)zzkTo(@itZE9bRUyy7YoC9RlMW#q`tmVJEr(-1Ng0~<*NisElhrn zByM#~)l#I0XGoNKs|SMfH~A_zu(P1{QS2Ymlxhp}gZz^GHu<_LE&U|5S%Qj_(Q z;JGS0IfO1(HC!qM?#rvWJSEpU!k&|?pOUMpHC2as8f-ejJ^qliqDmEZap5RC_N~de%dJ6R8te-4-lv3Vti)maFKB`}t(_ zJ{!iI;iX{luwqqP{D^Q5&U^;G`6oPhKP+~$@YGMekEJB+eQ$}kz?gR4^dgWe%&ad;GdegdX`3{$-(RGs%Vf+~Ca*E`SB z4Y>RxxNma%?G4wk1&vm0-(_MX|OZZrb7L`ba;w7x6o9NY9ED%kxMSaX;rP$Bf>*zfuzQi&C(prgXc!*G4RSF053q$zv#*m zu-m8f%J54ywrok(E5bV~%6fVEZ7B7tCyj)&Ds5VWX>GlpaMe1}UqfxF0W+>mP)xR| zl$on@>PpMHYB1UA!ffkfPqR;zsH?tZjXAm@N7a$@8pDB=wUJ&Qee_{)=NI%*`cV0` zD%B!yi1hy$!k$t3SeSNhn~ka1oBDKpwu~n+0UOUAweKZ;B6Bs8?F4xy_6YrKq`brd5d{4@T zE`UR4gm<16#Q0OnNskJ%RPFP=1RGR~SXF+z5%04el*si|ssw2fXz?aU@e<5wvb2I7 z2U-k*Ee?|wqN>eae^hmEVUdb0sy@1^1)s_r&B!IHjHxNQvL>8Q)jKx=O>%3X>#?Lb zUoBZy46&|XUD}qEMVpp}6{^<1v8dI2ez>pNv}8!xQ<$&&hM!vs6_OIDL{a4F-Vf4;7>J5Q1pIv9m3&F6IZRm(TTFs%6GeDUrVb_T7{6aaF#aA&f;6hNiGDhICw5 z%731MCs)PSHrASB%?PTL=oxr%&pZ`6LOA6#8HwgKxXKh6K|nE<+;UbGRLQ}Fyi(UG zQX2ibj4Pn(kaN#gW>n0PdVy&igT3L5-pKgZ3RvW2Z3ZzlEvf zGMUq8ZN-=GklR&1*bERr*CSEtMbYmi(d;EbR5dDhWxa}w&0ST>_v(Oo4P*pvRTJJu z@1VB=`P%ATWqht@!KDEp-Dt2*1vPyU+?ou=y{^yFXXFoNWrRO6IlJX~Z2mpjta~@6K2^<~>2k zXGO;jCby}2%CS=4_NwSn#Tu4LYq$?U-*w>dCf-mn#b0HNkrPsvbQKb~fh2eSM?${upnsN$z-QihVka+dF5s@z5Of&-d_g;>Hs!bLSjY5^&yDS#El zO5<@#$#{DOrR9to^)pV|5J$^;$vnkXnDqjpwW6eCM_u0`m#5~n=Tg4tj+C)Hmgl>} z8|1d@QpoTx)4!ze#da9-HYr`)B+7e3-uGQ2sH6H7C}#Bmeo6K1m?o-zmSEFDX+gLY zTP!_4W=ngod9svS1~7xPF-=+}z9e33w3Kvoms-%?|7+vb4eRW8lona4omD-lKdmF> zq`76Ksw|^vo^MmBsvSPBw|KS+PvPmO z@%>+7Z4CQVi?Q6}Mo2reF;b#2Ro+we(w$0}LYRtCId55MGg%8Z(+s7qY6E&|{bgL&fq5+B z?}8CZIVx?oM(W-+VQM7#tx}@9NqT#1#UZYck$| zYSncfmVKHt4$AfRfqd$>U-xsz9oly7C+>GZ)a;)i;%{>ItvvbH;GwF6S;@OD0S}i* zkBYZt9P!t*H^m#hBD(u!sU4ie@Ql2^N^RCk4e3UC%JtGxMyZNj(wglc z@ArRw-bwjAvMa>GZT#LtJYS;Jfn{i!GV+282Ts-=u0FA-nk zNl(v_u6p4~+Dffdb9h8UxN~($i^`*fOUaOGcbX-wNK}efT3WRd{zY0VY?T_0O<<2I zOI-@K%pspm2Qwy+EBgsPw3jxb3LUCT@4wQ1VOX69Q+(jvh7n#8eR;t975%x>+u{A- zZIb$#kGvJwVs9m3u{RG@tMu<^bngi4IaIF-!@PlBKlue?H6I}T0#$#&_IW)4pCNSi z+Oe)i3FywU>M7V9YwR`g8hG`+x?U}>hF8_A;#Km>d8ND}USTheX)&+3SAtNK zdF8!|1U0YhRr6|lb;N3UHCb-pHRB$tukApz`4}|&Thf1VzVr>8?Y+Z0EJu%j=)Ff+ z>8+B!jvJ-EYLnPz?|W2uuKwOn_=D+Rm>RF(cwUQ_>)uVc^<#K;mZw_XMdDS95~CG~ zS=B1_Y4N3$27sOj8I(s8Jd!O*k^XQ#BeiB|!VN(EqR1hqx!1r$; zt(DurC7;y>p{K`7&HO8HLe;K%KKXIE)RJtF(W+G4k!mAwh?IYp6n~F&p3Co|^*9+7 zr3%_tY2>H%mTC5$%`U?F+<}37N*m8Y| z{w_9OU#QPxI$wVWJ~x{)W=LDJY0~%XHQ{xW(X~qDz9=Ig3_!c~7LD3Z`YjBU`wrK~ za95>#l|okS)n1j6uau%53G*AyaZ2^}A`IXvgIHH1h7N)oKF|JP(k`_(Z}BYe(_Qbx zJLT3=*AvxWQCe)O_FDzvxvDorlpX;m49f4; z;KBdP``4ux#Tgkf_Y^VymyEZ&o!tI4-{UJ8VR9YJe37(-pCRSRc8-p{2uKQx!M7|_I@eVQwX&MbW&}swn~kU!Yfr~ zsB*ww>BX)v><1}fRQpvctBr7}4N|AEQPy(%zn;T&HORjpLE>hr4Z+Em8$%N?~}wchU`+^@5=i|fR*50Ta;6L`n**d+Nq z(D@*aii3I5x8Plv=prdgRs9;(bT0ee7S6dq_}F48)&EH913nQx_L-Efd@F6%a%&NG zN`1ob|7-JhmNar%`27|1@_lJzmYi3%{76`Rg0Otmg6)CeoGqy{OB8i(YkAd9B3yjX&VP?+Jh0A)av;EpFd5@%yOb5Qq#4} z3@g02o)a6Jlj)c-W_Y&i$7#uFIkyu_2C|&6m_WJ~p5ytcZmJfMoRyLo%F%*$@p5j+ zDO$=2PmL^OdUo2wOLro(&)tr*9>r&w<)dvke~B>Lj1IreceX}2?@GBciJSIE4bSRf`V*+{>a6%)GQ#FW2x~^dn_aU#L0~ECGy`* zuUIJne~sPID0@!QP{oC#^+!J9W971y(_W#36p$_N&Wb%SPH;*%Pc z4reuOaPwTcfBp6`y;y1elAjuW>{eXP`9d+b%wo0EZr}9c^!Th=HDdpJQv30vaPvu8 zN~V{1^zPLwDZxi}%FPo_)pHNXnCXe((SCHX*!UuaVl6YWP{@c$_QEp~N<^Oe_K6od zbICT$3#ViBN5O;}MG8cP-S;Ck+seu*l&z-*;*;Z2(yhn;HK`f88!{g}@iJ1f(<71& zr<5s}dF@DM+0=_E8Nq8=UWAnuy7i=>{~%n;3g~xp8r8l2*wSq~JIZmhubd4Q_RQdo z$B~)Y=Tmcz-FD5Gg5HBPE7lLi6?>AC^{9Ng|56`4437*u^G9r4;-N=n!GW zrKQIdv>ry*37)u;T2lM<;e*7m@RWGAHpgBkvX+m4$RO3V&(GZOAa_&GV@agRemdX40NZ(W$rYy73nuhn(B@q7!qxoSJ2Hx3F8RN^E4lsyXKq z>zBE4{(hlgR=%s}Zaof*znEN5`(yj<*s}3=Z``zsW+&yZTOd5-mo8klW=3|Xoc*wR z#DmPV1h?puvq@Rm*RFcm{$Ho>KdIndNyrIBN2f>SFBXw@wQ!5TZQDpSpIlFgD&XBs zNi7tem{BM*K2p!la)URL%*e3ES@CzWlCq2Bq~xS#+vyxhv{AkgsT}{Fn^X-szTP?w4^dcv(v(gIcF~E=^62Zo7MPBJT$ z5B`^0Am#S`=+YJSi0BJRfg;&i`70Um+N11z5ATMDrJGqd3#1(UCnmCZg>3stq8XNU zvs~k>3)hO2Ou6u+O8%TORSLzQN{ov$EX}u!)2AatscF~!f?1iN^S7fT6CRZ-R3s|p zMsletB?4*p@)wIuv-4ZYhLKS;|IOP4!Y@589C_{cTZOAWNlMSiNlH(6P^x0!QGCg= zZm4*f;*n8tB~y}%C8tNaPmIX;`}c0x=AHDcq{qp2(xa5ZC7kT2h_viDKe9~i{K2PU z^JSk%DH|0Q^sMYVCvzfFo;*%1>872F_p>ht>Kb-|sD#HQN@rvhtDZl9c1~o#((H7- zc<5eyPDD;ZhHk_Jj~?AQlO+3?-{`-3Bgc! zY-&nIc;(awId)2NW>&Tv?Hd72bDRvbM1f$@hIV3pFFvkp;*;VP(oWuVj8JA+Oqi2( zH#=NQO}HIfQ@?#P&GrN3O1hB+a~{W3OVNwgt?g#!52PmDH6qFu(#{`B%(!sLEm^?3 zbs;@2%DtCfyK%mlia>6nR;KDH+)*x|QrX32DJtEy3}^V)NzKBJ&rirlpmO z&Gz#J3Py(9$2no4n|C7%Ss5ugX`x`E9||j$W5>nW@m5@f6&4*AUD&;xQ9XZBRK9Tg zPO4s@P$(rOwL}s7YHHEgR!poOQz$G;3v>mlB1tK(?S?X)lsnM9~-{u5chMJSwMHj1^Zh)=$5Y;kZ`*n5?^rVP;aiUm!UY%q~>W z^E|y|<$A%pc8TIo63aBq{~*b)Se#gnj>>Ukle2U;DO5Z%+_pW>O!S{BlypC?s+k<_ zxcMU!a!OV-AN?Qp-ZRXys!SVRap!$fok|@E3J9Vg7#Jf)#DIzlDj4xKprC>}iV4&~ zQFLU~ag6Ag!|1$@j>;H83}8S|0fDCJP+j4qo%f3Gv#P-f*LS_w_w)Plm0nGE)j4~w z^*r};hkZ`%gXWUCt!S^mjoi7ucvQ4!Uo%8&vrbx4JtkctW{dM1X6w+Z)(jSQ_-Zkw zMx@)-U3EZ(XZKHiZ(McQETdDqxZtz6%Vun8p&z5*ke;zNW<@W-eC0RImZ04ypk!^8 z%&Sq`3Fi75lP#(0&T+#Mppnq1WX|`vhsL>578m0N^L_jK_g*?sY#;VnuD2Y1xZGG+ z>>EzCY6$a~AZi+`jbJNUk^QvHhyMQh@U7bR$fW8Xww>de?-VWTZQ-J92J_R^Xlk~2 zDB`#5FBTt)cB6%^Da%fxSM=h}?uZ4ApLXv!+S}OMbn>aGW&^f1G6Ou3O!!CNNAHf0x3h4$ zSLyA8jP5wRlQ(!_o{si~TL$|_dWMr~9Szbu??hXIeeL}Agm;pKZa=2!j$qo|mhxiI zEsG$YB3|#x(!ShP_k;D-QF>&zSP2K|Ac&T>+W3&2L!)Xtcj&@_l`Zkgidh(}uhFoa zq&;uCR^fh{PDhK2RCC+A_fD;LoUrwPI-=j0E-PvUU^Kcddc|Ft2xtq&qD)gfcS5vR zJm}%PAS{Uo9UTn3Y(L*3|B`h`7VT{QaG*wmolEU%l`yum+ugBT^X&^AW9gzX{hr;m zABSmw(A;()j#21qu)S!wHQZYS!@gYVck~o54uZKT@>s`Id~37MKddLGdz&Z_*!>pX zzC1X5epfc!5=C>?U+82DiG2hzj3bgrvl z0XduN`$g;Z+BQr=uY=UeDw8;-rRt`#oEy}9+ji`C)z}-(4{0#uMc!LR&rNa6R0*}|j| z;liTtcNe3&ZQ^b7JJTxX#H^Kv&aK}O9WoIZkv0qaUQ9)ncMn^PLJt*qdHdGxq}Xv% zxGLw(E#;vnboZ^S?3>m8QnlgpJYU{|_cjkWZrL}%yq|@~-Y*qJP3BUj_qXAs?%>gQ z?|5n1%!;fIhldOoe35KD0{Mpw0^|+0vekNA@?lq^cBQ}`mDtZlNv|sUbKR!ey2F-( zMec3gh9-6~4CV)T1E=!NGO{purik?|E87m~$c7s)Obyx^BHQQPUO}zjU-TspX))Xx z+ESY7Y#|*tjq;+lovhOBac@VWI-ZA<2lUp=e8;E&jmqI%JQrxOK4E<}Z4$nUVNmk6 z7z}OPoo9R0eU4Pci241)O*_9J@)7 zJ$l!4=ix*Lexu_%Zq`HZ`kjbq}#4az%NtuMa6M_0vd1_HEuQ z*VLpG4ZK;^l-L2!t1wIX%6@vnp}Afjj0(=f{$e^?O;6Y+g)~tRE(K z$8D+DjP%lwc(f(S(!G+ISlj~BvDB{=j6HO;EXFn!vbf7o3Kn57hgcZtHtI%$Egcka zW5XWZc5HcT%S7vmb(Jo5_D!wws||MajykVM%+o{6Mms-`k?e14>%;HGwWu=7=A(5J zmn$n(yyQy}5*5~}okcsg1)U|jVdj%G+&-@{uGqrH?sQ(166?uG>U6=I72FRP0YfX} zs6Q7(Hd-2{qqXCp*}WERbf68JR)n8 z!JM}R&Yk-0+}0?DW6v)qa#Bct$fr8h!t;b0RAbwnH`Qpof(~6u?6lr8XFXrVdcVH! z(PG{2H!_(IwCAmhxgn|6XPpizXKgte&&>&`a7ab>_yz5wsor*IT`k|QKiNlmYPLsr z1Kh69;$ozDXUia;6rCOP_Ts25K1ml*R(f&Q7{9C$4J?`CO?R-dHejTq8$IZ(+%k=~ z#FOe>khsCVO}&xvv9%dcX^agJO0gg;kdl34d{WrGuiJ|>*4afgQ>TDyYcV6 zgu)&3hDK%U(F{}*?_XOT)i_b(R*F`n3%>M1zkBFB3b!6&WUn(o`!=HO^ZA|9Tbt2j z^>#aClXbc*_cvkE-QH_9WRD|%kfw3dKO`=*D%#$o)%rM?BaP&I?{zD~R80z$?+=dd z5DIS2M=6l(0;%r*K=YTo23x!B+J*`yd+}lbzWH{4!0Tx>2pT+yTiy$Xu&u-+Et;SA zCv9hYys}XVh}C=Nx0g5Vv-3&5K}?<`Sr#t^#BPmqKG*m9{V0wbuzcaP9OBVb&2q6Z z5%XlWQFa$P2Uh#r4%;dWcr)4hz4>Lo+6S>oPh$VTgoSc4tu+q(?5;BOZ7(n7ulj?9 zp=jHs?cPLg8+83*DhNcQrdq!X&5J1o`Pe6764@j`OZ}!u7Q&{pjH0N3K8sl%dn(IW zHa28D1*??BoL94STUwgAeh1Y0uNI};4VhsqQz_@Go;*CZ5t}x8^9P*40fIbb9kzN z{>;is=o?n<=OW$5Vs8s5;A#F2`+GwYm%zo4aPztEI^b zFh(i~eIlmGqL7_AuyP9#N^B!+KgP3JUQ`t&`HBujQ3AfYlmr7UmwFR>=pwhw^M^5# zf>7QVEQ<9On~iC6VCvW7I6g2A;8;B}#*ncWw{)5+o+DUOI0?zdy}8+4`whn90~>p* zcK_;dc-I~AeY&lki`o3v{=#r!*-Y6&tN^KnSFNw^+i!S&=bA5fZy?>GDAZAZX-JYz zG6()P7D{8EQeC&j0d2C4JwgR|ZDtc*79>GWqjj+mNiOsZbMf2TL)ax zh+#skALZjgSE*Tvt7;G(*j>l87$efeHq%EY{X# zTvNZDt;%Q+U?RuW0L!i)DCH#!9IPMYVN+|#{H8=6+IuHxSXPQ^#^wk4h-1-NB)Ja< z$DJ+(W6_Bj06SC#SyFp8>}1^^w0qWTArO)b3t{KG7<*|v4<^=jSfx5!@TBBuwjtzf zQszamUJ7Jd=40^UUa6Pn<0PF+sUqE!fkjU0m6bAL`}e{Fz1jXuHk$iXrvoI72hosg ze@7RWYKd13iBMCwbyZs!YX!r!F~(Y2f&(v5rHu+6X-> zR&Q5x?F{DCdbm}J(#2(sdZ7(@FiecpjS0+be<5pKPivg*TjPs*Bf}8{frJG9H0#YH z76DBBLARX>%@9^A>z*kMH{(g8a*{NY4X+1A!=r&Iqb*&V$^LRez*0=hsAndlHI2rT zAh`3!3}9LkUB#z% zvZ{>r#d?+k`cTs0N|AV(j3KE+eNUHrX8kxXd2>e@G!qqpb7$6g`B;TXCunikWNe{> zOUc57NX6y;a?qRYgR_I6YcaV?%=cv>3zRS~q8VAjyvGX_!({jT*{EVjYg?`EtAb{_ zCnIXTVnmnH+qtc(=ZB4g5Qt<8RA~$@Hfm%^{^t!W8_@vHn*q?aq?pk#2x-d*_$>|A zi+2V=Sri7_nGT9wD~K70@x&JjaXl*f+ekw@0Yh?bfwUw}62G42)>hKALKiC|RX3~a zfiH{7a1NxqxMXv&Fi(` zX#GAZfN|J7uunm|UZLZT9UI!E^2Kgj$4i|O zgqDO+F|y%gG8?IKO~&mADmkvLYB@Neh-w;JFAX~|LotU1;@L>!W~R`1UtMhEmGwCx zZPPRmq;N8bjpQj2Ee)bzK3dz|_*GfgM&SCu#F(aN2byI^M5kR?&bKVv? zW?o3sB-D118>B3U6*kibsmh{iHDkDJNi!4J-IdGAhNUqPk}Dadfu?fCduHZ7?zY=& zrlUL?>nN~leI}633yU#a`IMRnt8L zni@3)k+9i`7Bi`2JDM4-WL->Z&?g#tGBcfkQZI;;PKT656Qx3hwAg4oUFXegW^LP= z9HKgf5Nrq>abB-U)|p>Spb^z-xQIrTXR8Jh;;1NKOpRF2wIYGe#&jw2+^0Jx0)vgt zgdYWYqWj!F^* zpm9l}!BNd|+(n8GSzcCFOWBsSfeK2SPbG4{<708Fc{JaxE6>L~g^XZ9P8g}3%oeRK zCX`I;&|6=x5jSAN0YbdjGkbxbO>VrPXb|SMDGLR3SBth{R4OA&Fb&9<$wbg@sw$~! zma>}lBWXDc?6^u6V%f+hYg(Y*k-+V=p`t2q(t=}a1)kqZqd;hsCRoCOkndL;qb3PN zCPX=1ufgeQV~U!2rja;W8ZeMrKL`UFcEXqhL=xYpAlTEH$7U0ZilPD#a9*s< zY7Rjwp#_0ig2j5nh*J+38x-7Sqxt3*8+gfiB+ocyEpnH&ru$W|dC4E&?c_WSV5;SS& zm&0PJy)^OSVUo}C-0OJ=%c`nPwr8VFJJq-{;0Hi~30TgS(YTNDCY@uLp(==h4UL9l9YP-R}0qLyU|)ir>~hH+HS{0`(Yxgpa4F{+tn zTx*2gdmdsg%%0Y`~351vbMnr5hQhYzh-ieYAHkij7f? zEy34G6-NZ7DE1_**iU_8E1Pz>tzkM_N~&5(*^D+2Q?-I&ro|{@pl@O5c`T&sSv(K9 zMWJ>)E0j?*uGYpDXI0a%5L~1ULPeCA5Yci14X-kf%xZ+1X&VC6+^a~I z`&xN}h!qt$GpbNTq?{=RD^)-nFgn#}qo9x;4U7S43ZOx-#9RiRsFa^FD6~?%J&-qG z$U)%@DH;z~ieai{*zF+dSst5GhjT$&H^o@5hKwwS<#7RYo&xKAu=lrg8^h%wTjyyHDD1jBSs49=D#QjQUp!M;JCr+s__J( zvjL(4aQKWuI7+(-w^GL-=7_^C2~-&zXstMtU@!t))S58`;dd;%q38QdG?nOV9niYf zk~2|QZj7j!*-Ghwrr>gK(+Nr&5RAgO6I3-DgcdPIxwdj#y7v<`Rn@f9+_x~MMX5W1 zM2xWBJg;R3ypB(SOarkpp<$EF@>W#&q^8m^fD(cX?)B&AX)C?BMsWv$-1mcW1MH*( z+hUuwoaqg;K&F}#;2y~a1CDh~0%brUp;}qaVh$|rnaO&AbWOP_XRV-I=+vdpIieU# zF=dom4iy52qlH@A0CLS6Rpb(~t!VTd8@EvelNu&n(4nBGbr6zDV6HMvVTe^;gTWP8 ztWClpDtTx$O5By3MU`8CIn&B`U_soRH93@GG_|10xXG(H#TJo}OB4;ls^NWa(ng`E zX`k$!MWkqPo0XtQ2$nXTgj<4gqJb!qi2I@?gka_b$H@?cUtz&_0}=}w0`?71tI-V$ zswN63LL^F+z>EWen#RD?iqb^IYJ;t&VpOD^+5W2IBZeVi5e7oXG369Pq1R0xk7hs+ zpjlaMO)b2Dmt(>;gXT-+ha6lK%n$c5OiQ-mcXU3jis05$HTzYxVhtWo4glpq^0usHG1gD8XAyq1K>S{0L)!a!Ls zt)QEfoCVPG^E^O$6H6oMn}b+Cl(hGDCr zoEX=$8VFrW(bga|?ml~{X;2)sC0Q79h39-|ZmK0fghPVCVRitFMm?HJkXearRa2V8 z%5(;};`6LRVQ6xih}8^%vsD53B~Xu%jy=^V$$DKoYdbvyR?s>x4Ym!$TTlv2UIE!P zt;ZU`oZYBNqkZ4DmLbL^3^8rJ6hT-q%J{Sqq79M;JhAa{1tu5C(uNkY9%hz!Tvs;6 z)|n-bx7ZOZf^crUc3g_A1};FDfX*uG#R2n33Ib|lD!{~ox1I<_QB|pI+9+ZbBak?g z5L|BH=D`z!#2mV%H>TD@1walrwpg#g-3yeoxw|l9sE0B5P}&r@7g>mz;7xrWxU^{` z;YccCN@)ckw$iRBBfvaC-C@v5*F)~8#kW-n!WN`DgW&_5Lk6)S2C7ur>(Z<=K4f{B z3|Kxj{cbrz0S6*!Q40=AL+f4SEecVXLD!ZI=_CkDItM9=q0>cXBG9_LfEj4^tb<4> zKepKnAl>URjA`2OlnT2h2cK2}{1~`kqQFp8t*9q?FP=ccjaxcMNZo`9S30KHhdj+R zAjvb`gXctU`!LS3+d&q6QTTSI`QvCe8H$1~}ZrsiFekHE4>!^0Rn z1!M(?Xe^0==UTwkOhL?7AQg3kp*f&*5c!q0<;-6SOWVU)<2aWf0aRIMC5y3fbPInX zn6?=-*Jv=TkpiVQCWxZgR-i!ORk#AQ1f~+xu?S){ZDrK}Lg9aYNZgxH7`Mbvy%N?~ zgZC8-R7?YbDkSpU0t>g$Tp5DeQaf#e*awv~SePVsR~Ue*%kfkPtc6G^wX8IzzIN%% z+GeWeyQFnDFM?3*b&aru)S1*p?NN|ZUQbjft}=Kc8o50P=%U?NlcTZ)PPl8|kL36v1H5 zrVWoF07*s}%rqo6NULE?iYeF>n79@Q%WGF_hM>T`P%Ca4)b|VBhYY%TGbz=A8)$8- zA@Mhm;xGs&n^hhuY|I(~5zvH?h!~Q73UwA`4(3NxPO9Mmh>6mR?W|;8tKz`4##F%^ z_!N@TT=4)*oirNkBEYuN9>gpG>q9s{;jw2t26;iF4$mMe!vZ`m!Tb_WLv{)~GE?9#1HWl7M8ABYp+LjIvS6h^hXJi#6fw|2$SPCQ2?+*BG_I4N z9G;!lG(_2q%q3ctuzZ~+<$ zkMlwToT%#x2moM`2@dUT!F%EYoTVyEe~VXgH&m;x{tT40JT zhA?D#Rn#htz-?*)w3p6>YG(Q!UkMZsDe87rUI8T{Pfj*!FA(FRodR7nB1zg3G9uGB z>Bj-6QW!LiJ4>Dy?yYBn5exiQqtM5o^{`v8`P_qZ_>@=)+Xok7a0_DKN4RRSs>khI z0wol)8bUit23U2IdeR15_#KZjo7b3VS%V%DpEY2+O&CBqC{facAz&ovBn)yNBnp@V z%D^#MaLz#Vw#rlxh#JBdgYvSllM;n3V4M2UFR);ez<88wG5%v98m^LPm8L^#~488^z#(A=XOh zy}M<-?|cL}DR;er;=F{UB3qiUx~wWe2oN4no5#S8f-QnF8BQw^JHyt1o(0aGHj)ws zbK->*q&Q+idTERh1u%n8)|f|;olH%eLoNjDLkNR$hdHBO7}>lG=R%0x6*wudbFkyK zwiHadmN4SjWHX!iN>h-*00_VUi9(Ep6^TNIJyI)E=gP-rX+6`F5>_cpqq`jot|*R} zyXwo`z0A2NCHQn<4CJVp=5oF8n4?w;Odn#1mVxCUM361PZvq$9iqh7gvM{JF5CKRA z5mbHgAFcLnPMWrY# z2gs1HkT&DClfW9GsUph>7!+c&3c`XxEbN9bJMJbNK13Xpph*Q~(FXblLocXmFlvPF ztICEcSO&~J0`{0_g~OmI!&u0`ch|)TbH6zwmDRN-05sr!3&a3WVYr6eV!c6F%m}14 zZm7y+!e+Sv9g>Cea6Y9&U${3tLAtciR~2-_%@Eo;$N=I?YwNsjoY6213^>%+UA+hX z1)mGbkq-PuIzJPrnecE?L2>~JwOTep`=L=h1t&wiD1oFCq_ovw!UJD|Ph}#@DxnF` zb|YX0ET9m3h$LJSO56)>6o3qf(GZy_N0zi;y=xRucg=wW7_=Qq!=N|Xc#*RL9>k3k~C7{#pMLGlsaxb99T~xLZ zAS`pvOp;DeR>TVG{0^vY4p9M8F;T$9x{#a)zPle&Jm6&;rQH4Ux%=$-R<+P2;CCdm zsx=JO4tz#K_p&*_(06nJ4DLFt!RuJaT*4aAFbxt(Tp9wSC}*-e--fL14WEhN3_go>BqQ&Gy+by2L7zZt-D`NrXz|8hS>yHq=0<^k3=aLBOt@7 zf#Jro1rlD^&g`uFxU5FdZ)4~Q=U?2Fr&03JoywF-$*CdEuE%7XkBQWZa zZ~GlXoIzCu`Sh`OE2S^|W^#!BVj0(U_h{_tm zG1S6(071f|7(w_?LzmMG#JvFQBCMC-CI{zAEd*%=Pz5q35a<20*I`n^_bt>AIf4~M ziHT644nS9M488d)anb~=6mjZ%04L8EF8jKap^S?!nS*50u$0!VXx&RY6rya=1fhq3 zvWUCaBY*}Ir342ShYzrg{QK)rC578pij z_nT}6hwyj=wg~9LNDExYC}&n$$S6Se9l(&(}@RqtI8!&>D;b1LN(k zYEcd9A{+2%65KQmh(ZYZ%R>e{9&$ebR)v9zOk3BRpOVu;&;_hYurY|jIaq`R1*2dI zgZ(myGL*sO=Hncu08o{et$~g!fV6>`CSk~cCp0iSj(ph|SYKOVkV{a0Wr5gWCEE8K z9~$ci6wZNx4MU&+1Og1(Y!n4k*)-1JfwM5Pf<>&UL8t+0Q4G`50i1yyfpUZI29>Z_ z0n_Tt)uS9YVBoa-yj5t5*8$<;JzvAHg6g>!JL)M^8`w}30$@{uuYm(lpF3bdKxZCM z1`rYy7CT1*Rjwt}xPe{PGw^g8FihPKnTssMy=BCJECG~&#vVYHuQ?A zaM$axcGm>8^=#`dpm-_MVPY#4c-R=AG^l}76bd}82*he|94??!a6f1>RHUf~5t?Bz zmkO2%dDR#&Dpb$h`vo@NPGBHSfnHc3@+b;`QyFkSY|j9&TVm@H=E%ruR>9zc!)8_O z#fXA*MBsA~#|F8ZDl6cfI*4Tf5v;ANmH<|XYTc_^T$+h#c}i zX)^Gx5HE`cta&9ihm83?=N|AQJXQCKr z0xm@0`P<6X8)^YS&s%6-+wu-C!P%uLkW9=St3z{YcLA;fh@f&>F$5FtpWqTMh<@$f)l`CN0#1>#fI|ax&OJzz5w{ph zX{?50a3aBF%NYOwvKk<;b)TwikcS}UFzHkh28Rb6m_cLM4bXxTkan#s8z&K{QXT|i z&@C8ym}?8<>;V%g&{_-~iU{TY z1D**y07y53rb8b!tOU3dPyqJQz>~F@f~5qwLnk$Gh8F@cBoK5ViDG~Xqu}MCx3Dyr zyEc=cP6A+}R1G{w!AEPThzF4sq{kJQV`!IZf$}YcVr;+x)Qtw7hByN`N-!|>q}TT( zj1X&7002ZT>;NSe5=?Q4pp*szrh;thRw&`8V9!8zBJOgd%mqusHX|KY6%hYm?vOLX z23#4?LxZ6j!T>HI)@i>(ol^jefK@O?xYs!#U_*Qb+J@os5cpq)0B9h5ehR_W0P_K6 zm4I!x5c*9q1>}-Vih>RT{{$h2qC?g;j`S!b8suICQZPN%eRLyLC4dscY{J2SwiN&i z$kD}e*o8svrgs?C!kKH#KoY=YQB&nQPCe%*u+WbBxqGjJ%ClN?umPYi?qx%uTI*1V zCB$AI$O*lA`j9kq3i%G0jq%r660QGc5{N`UW{N40aNfSYrwdGNWeOvNq|_G zQ_yW8DRdON%c9Wn5zsxzlCfa`F5bPi0n&%6%K4nOETN1r74UH6IRSMHZJhP20VqfV z#w;im91J{_yD|>pu>x}h%d^zufLBbpbIwp21gOMr0S(ZOXpH;3BA1VyfmQCdoxTV5 z+r5Mijv81DIs`-x`tELvWJF`BX<$O3ZqN_HIIM&?1;C(paCX~5tQ3`yfN3!J;59UG zDWyh%aq|GaE{K49IMu)cCIZ+#iI;*Z_PHDKmo>Y&_kU?3LXB~{oAv>P_-qy%r`!i8lpYGAmnaxV+O;t8CU^_VkjoWV1=s?dhXfG;lm^gJ3_Sz9z?R%AR2CRjV(Tad{z-v&AbG-^ z1tDydI+F`*0fJ_oB}cFYXtL7IU4tctIl(@6$qY<8NELGd7xn|jr5>5}xBMuwH^Po1&g-b`_Zh=m* zfVJE|+|aoKI&E<;+_|@(`qW+QbB4@adUBse=PW36ixYU7b`A$TgLNJV9FrzNh^2-2 z3iYxsg8=_X1P&KAsoh-@V58UxECFOVumkhB^}r9{d(H`ilxUd1&9_%!S3_q+tfMLH zWQMpT022aLa(>yt3L3k4Fyvw-xI$M%=WGEj;GgKhn}s=VH-bQ$J=uKU3f{cRBu)>2QgWOA{ggO3qtZ4DU;<`(iF!>;y;Hfa$EEmY|=BMbo^&9ts17O#= zIlznKSg0Ve2hAsd2+*;)(oGxUj4g53)Zm;>U#Yt!jU01v;tuXgMj*;KZ|&9rPoI8?0N(bu zTUak31u(n$6bAuH-Aka@F_>$=OT6gd-2h#SnY($tJGk9^%^ZO4eh#PEEV?Vj=Ht;O zl-=dS&A_>dF&GKgdRH&Axk%RrCEe$60%YAT-N?FQyLwp%8P|5`@jKDdv2BHJeH z&}P-KTc&H$=56il!C8W(xhKJmDoJ%W@GMdEV<{{cdu%* zESumoo1^58??mEm^x1os;kN9sM(?ia=A8`PHl1MHU73RqJ2;g1?qeT>>^%^{2Mc(x zE(d$`-wX8D$8T=Q?eLy<-SZ>#pN~az@4{JjTKEAN|F8eAf87o9|N77W@~^vj=|88|{m0!n>VtRO24i07SXy)(#wCv+?=?(Db_x~&E`@gz%nx33K@h`7j-b1b_ zNcqg=qgEaf|I{2mctQDMNTbK&H}CA;`e?fN&>NdPe3$oOe(a)Q$=bcwzq##~oz9M?wpIm=fhU}M;1Ll3V?kjHSTr>M{a@BC}Z(lr@d1m<0`rX?`)K14o ze719M@raeDZ`;ybz5Les)2FZL{6lvAzQcpR6o+PSQYTdZ*xb15cRS2l`^TRi`|#qp z>#o?o;y>+Ieck_E@2JTwK_J7)yU-`sU)8yfe_nUnD8QHdAK3Zz zeV<8eI9});5Twg!XTvWbf;nOQWJmh+G^qn_| zn-HJ>yV0$^GuxlubgTp!D_#+vI(`j$v3wQz#mb?}uMAFGJ8}8LllPgI&%eGt)Ze-H^~dVs^3ms$n|h~V zWw+0r+M1oeD<9~+ut_`LA;l`8eM*i*M-`{@TeOA#2_Ri0LW_C>P zL+y*yErMjv3O;7?LjrZHf+bu^tU~O1_Y7nxodMC|z zeeSjo*1v4OJ9=dLs-PKV;d`dn;GYh!x$(s4tNym+UHd;%?If$gp>bM0YW%;W)A%Lw zTk^q65OC1v;=?BO7M0vlpTBzbj*ad``D^J)5_;>|rQ|0cOAzd!zke~8|S=F^i#$9MlD z{lWNO!d>3^#k=X%(JksT{!hyz#i{JE_Km}Ptvsrf!?n?&!~5-fnEiVEE_-hLl#S~a z`s}58u6Swp6@x1$fq7+h=wP>cQ*}xB%j)IP3HYfi=PxX<8xGvue@^xqxv_9$@il#n z=qxQ}?6x8TBdrV*mc~CFObHYta$aH}EQbh>Y|j zy1Dp3#skBzH}~52tHX|%TyJjd+&KNa_&r4){}ew-?nB4N>&?VhI0%9;Z@w3j3b=B=%N_M-R5wc0ZDRi=KjZ*erfj6ZTge#E%6`3%gp_}f60z!k40JY6q~KzpFN)j z-nXX8^oI3;+rno>rx&lofA;C~1Y!#nRe_|SWe0*+kxmiJP>0Pt_GP5Hn^-I`C@JnVt?SIpLK)$@??AiD(bFn@e zzt(@TIi$Qw-D+-}+r4&Kc({F^xrV$$-^;#5?T?PD&q3GI@AD^3en9`1dQj{2zCj*k z&c>_34m0mvjqVM3{A=tN;&oBEacS_w*(0L$`swzD;1}7l{CP50WX+S?D}&SYH)bE| zyj2bx-1&lhb#?8)H}54jUN4UFpT<8~ALzVXz1d^!ZS3>J%O9E?Xun`jCXWceP@JoO z9lgAGt+>nliu|*!CO3rx^M%>d28-FL_!sfx>mTwT$=zl-+G+awXTgW@_vBS6)yBiSqEcl8DI2O*h!wGZ{FZ{|DoR{m4<4*duF7Mq)A>d#lN?tVqR zgL*3QFHjfgqty%OQ|YJu+czGS-hd9&FEj*7x!bkJN16#ca zZ3N$8ACQ-le^58$-_tY5EowQsQ$4VJFPf)w@ZC35%lO0M%;<*Z{_4H-aq@8ex$pw> z=pys4HE(G@9lx5MS$D|=Q(ei`7!TV?Q8jE-k)ako!`lwdd~h?-)02)5`9o{lWJ*3PZsYKJIPPUwdL{Nh2~Ct zO?3=?Ont16gK6{ldZ11G3350dG?zs`W`=)IeJwtx{Z)Ed`9c1YbkLqJ-)s|kM*6z) zD)DOcB6UXa4>{yU^-T1a=9S`o%#st!4~g^rH=}Rb8vm>i{X2jgadd)sO!&(7OE|?z z^aK4V`&j!NezCsP`}*|K?$ze2;#Ra5KM)@(&I*2=JvRJ=_v31dy@Kv%|5zpFhxi)* zC+Lgil)c7YC|3F9%_99KPMUdkUv(Y*t@@O{t38LUQ_?&Ly}+C&A4VR+zb8I{sl5@_ za4C9VcqVz9xRB3<3SU(JZS+Zdm^v;Uwt>m%Z{;2K{rF+{e(l5gM|4{aqX)I8_-9m4 zvB$Fk{(im3{2Mu2JltMOma97WqByHQJRbN*nmfeH$t&oq>2>A?x=n3G17HW${vvv= zx~V;iABL~fA^98n(CS2bCcC-1*8C`VM)pNd&{sCQ*!@se?`Dr9=X(#VzGprezE7=~ zlj$jVrR_#9ub)r;k#ASS=EL+C3#M7_v+xP1ZrSMe45e)2kT zB6+Lb>$^1(46#WzR zYISvR8F{HX-F}(u!pG6w^grt5=mdU3`6=>tj_Eh`r;0lGxqps4AMGSJnL>Y`|45vn zF7da?>*Nh+MyWZW{wARE*?7=iKnLp9<}81rFH-ko9scQdUY;4g4*edTA^w@Y#rs%w zfBrD~T`{CxR;fPuZTP*}S!|vhDNg~u&8x=+?xg~m5@Y?)?^mF{PveLWQX}TaMS&T2158+>>?`bZQS4EG( zzb)=0$D@xcA897r!|gZti)3z(Ab+F3fS#!$^ENL+Z^~a79;IGrr{rDsEc;R0RZnKe znbY*u{HgL}`+Dz->i+m&QDIId*XSSVv-KNUV1H)*1;3E|lQ^5cS6zzEj&5#VuRrI1 zoV>C<%>T9gt@=v(esQEV^oi(Kc18ULzXX4myv=@9uH*B)Q{-dotI4J2D0{id^lRnq zqrM%!M4m%V$6P&|-$E|Nd(_MEZT8zb z@)p`9emOo0|4L5r4)$|7uTHcVpj%8p?n^#6)81+19pVCWqJNIKP+!R&tq;Q=M_$xAdWZcK`VnsAjpRJ_Uh+_SgE*2r zk-U!nR(#!9zg8EcKbxPJ&!RWbci0P?or$r}X}-jtW2W-m!M&Pakw+qh8%6Y&`AD6M z|J5F*hva&49$oufq^{?-p7j(=j?Aq#lPJ|8{K z*7|kslatNKnu0XTQL&$yW6%Lp#V6Tenwbf^FFL`_2+>bRUt>=Y zJLrqi2T(aRP<1NI6lf8hIgn#(AU9nZlhXmN0Ph_XXs7#6iDwiIaB?f{@Pw`u4YH8%#h$g zc0*o(-UGt>HvL_5xOp|cK|e|VJGxLGLtA@e`wG0k|6ng_pFuCPuLIm1Z)@@`m7Cq@ zb`z1a@zH46e4pKiU82slmW=J!^{>dO`c3HL<~itX=)30UXfN83H=@_#&#EWTMLj`} zMR(wv^)F1w_URYl$Ku;%!~Rj9h<4!Tpy%Sp>!*>KxfuNfeNcaqZc#UpCG)7!Ui&`%d;B513w;A!YR}X;eIh+dJelP9rTE8Wt3Dod>}K>k z^?wNa%BZ-KuIsAn_qO2@2#|z$LfqZm-6rnt?rsy;iMtDNH=;y{5f=hP(6;MRZ{_*% z{rwh;=_cJ>bf0tlFqKvI8BZm}885xEakux_%5SAyydIp&w2+ z?h);YQkHD(CV!%JILeu*6VV#XF^3YnP*JlW`3b$XN@9oGV=gx;lZ)WLmc!Z!tAHP9 z3&=GK5WB1;Fcob<-#}xO4_cc}>IX_dqs$=kKd|1IOPZ*Hx^T0PF6AdE^q$70btVjL(73L_`n0xA$YP1SlpT(Yhbm#t%<6%0W0K?!RM znE=OI_pArjNuo9Cf)U(|4uIKUskIaDA7f22Kaj;?dm|T)HLt-cC?2D8*StmCw&sFr ze{UFpz0I#c2X)XftDW@%=34)OMC%RCga)%fZ*&_C2lKG2mjVsZ2C&C!g>mc#)65TW z7mT)Oa1Qv;DQhaS;0E*w`_eP$MyK%H-p;xNl0hEcqa%6-;!s7<4;BWS!9_F<5^#t$ z4IJ2h&hG90vf7@07I-x_wwNA+XG{ zVT{J36x;z5P*-pTtOS2=N*e)ofJR6J;ULSJh9LM17Nf$Lefek@CHW`394>2#%v#jxfq9?`GMuP4#B=)D$2K7p&1yf^`NS? z78Qm4(Q@oS=W)fpStIe|URWG#ux8^Jzkwp4Eqa8fuMXfUo{F4cB<53Na1d){FWO*n zumb7`*Q1{3C|C`Kp=D?l`VS*M8>OL0$N&m|auzs>dg1IZpt_(dssppE5?~7o1kW(0 z!@v#fD22dC!~hqr^l32J+7Ary3UgG!85{)dK`(R;D|;S#-Dg!|%j`lNJhcml_N?;r}p;4eE(5!2O#j#}Km=f@`3y>SN z1c5k$L{tToKs9k>EXcuilW^X3QFm|?C}a(Whs8WDUi@F9Dft++@ToZpV;5R!E5Y7 zS!gJZ?HI--96MtK=4wB56%7Ft=4=dBKsoRiv*Ngi7eL#jC*m6cNTt+f-#C*Q*fuO3A*F{)*5rX1Ln>mT!U(O0$YrE`4Y1-2xw>{cHbeOH3FCi$B>DVPyn#- z{ys!wKTN?L^dY)}Gi?R_-XHZEEyC4G!_GtDz8i^g=!uqKCalIa@?e(5054YASB!=e zJHQEa6aV{E@Ykb?f>g}%nqUO3NeE!E6HmeKwDA6s7}xul$A53ob>QC|%-{^%Y3kt2 zyW@JC!|@Kn6Lc^16%__1uE~6i`CpyWxF?;%I^b{>VzE-Mpmh9G4U7P5aaQH<3V-ih zZG+j;2uHU8pGn(;lX%(*$DRSOy8Wm;_uETh&{?AiNx;P z9^)4Zo?uOM!M>7#dqOKv5a;p%V~TqM?nl+I#$?==37l~YjLSWoyMW)BfY%ei0L-@! zxH6I0#Wi#vXB&)HOT+uPa6R4V?+r+S;0@j{{C{_wzD6XTGDWlSEB`1k%ARg3u~mn|86zL^B3@AXPtmo_2c?p!ta83 za-r}$(~yX{cK}yvH26CcRltb7!R#xBnN$$>pkSQW1uhmvN;Ff*1HN9#@gapRa(qEMdjju`X)kEJch$5RN4a*P$}j zX&&ZiX^cWHUekpYTn=R8^+GTjzi@sznCXqdPW&tktKNro>cE+Jv7Y|k4)q0d?-|ae zE%J6OQYQX9tvty}Af~{sa}l+2`XO>Hk$X9V12JOn&2T6^q|p z5U&G48T{IBT-QpNb?JDrZi2Cr@qRkqyDqqdKU*Fcc()hG!tcq(lW`bcRl;$6#>_YH zZrRBC->q$#7^?`Zj_Y{GCOGQ9lae1t$KzZy+%0UFQy(!Btua&6ag5RUZ-66;#WDTO zGX(GXmoqt7jphD!U(8?*;{vb~M&g*>V+1|e#|nYJckdR(F}%QW75(3RRvVN4-`5g4 zH7Z-Zdf856`cD{Kw(*3?qgyv=+PQ2+P<#LYYTN(+cN1)w*-`42vY#SH@n&Xy>9tcXx4Y?Fad+dm)hWB8&R09qH0|cr zs_Q++HhrA>>oLzd54v~vxgS#pV1?$-ak>jN|cB?#KYKg@nYf3 zgjyw|gJu;OS-v^KxgWN?PQ3f*cIwk+Pax7t?XK=|P3Uo{>>kCcp)O#Jbs@CO-kBi@|nqKEZ`GJKh zNAKmYlWhuCvTw*+{W-~VEZ|kH=Q+5Oa_7jW>z|Tulz;4bzN-yuH-zW{Vr;?qwbg+;{3x;6vvfHTmnYja#Bl*3EAD?9g8M@#&Y;)ipP| zr(d{H{Bgv)rZ;{*-SlkZ&B@RFFEc-m`7L|gx$&8oq@VdVBi3m73FQ0oyNY{2<=<<5 zk0E-&jrxj+zUne>%Yf0MX&$9_W#44mmTm8xA^+Ed zjXqgwLBi&;;q_*gd{p6K-I_I`qC1vzm-)B;gP2QY#?`M;re(Rz7JRddB?rdeZ9|nS z8JAJxW%)^^w(@n#RxRO=v{mk1-zw_(86*pJKCNRYjJz1aL_rEXu zb>QX7=hgEk=cGQm{{6}KC+Wy5Z{JgTW;|Erm zTJC;@+zLq*7FViKd|JXk)q=|fl%G*@Mzy6SFT`z)xKN~DOsj%x}pBH}6?D?oy2OmuOXnT1psn6#jkL+(EpVxfa^IO)N zCdt2FS>K1HY<*iRef7`iKNqrd-i}D8{mv}?``Rx-e`e_w)p_bAv#M48PgDIJ_^8zZ zt=Z;*N3_o9wDTFWS^vzI;1=<{BRt_!_>tJxwproJ3U?}cGIC?-!STi8rIIP}K>;^{ zTNO!)y&s=abbry5$blu66)jjUrX+uoLJ?7PCb(J$}= zPiafN2fTO8BW`cDA$LJjy?kcjtZ?tuwClgN{BnOE#(@&4(rLVn^~(;wG4_WcOTXrCUM zdnkKxcJr*d`TpNkGLL)KWcSULJ(Kb;sXxWX1}$~XZRDNeoC8g@ziT5D^v`!G5K6nU>{U}f= zU|!6b$bX~PM-M16JFZp1dvP7(L!w{Bqk@k@KiR*9l?{1n&kbJ|QMbS^`*WdvM1-S! zNCC&g(DcYlA$6UjT(4bQrN_>T!Jq85=$)>Hgq!OUl&f^0wh14k4l0EZGen$Lw{C(WJ zr=G~nvOjlt;{Kfdup)ENcUPYAdHK_)IU~G5zcMpA|A~Hg;_JQK@3|X&tNdHjgR_$} z*XEK+L$Jm@Apeu+i~E2v$lWXNV@@9*^qvt%<~Np_z!ltM+e`TbIv8Fy)D4g8o5HRO zi@|T_6wvSsFBW5#cG8wWc^`(%8UqKN#_u416xJ-!Pm&2k+Z;W;c?tgCYF8_-G#vOf7DyY zWZN-%0y&D@Obt=Hn%hIuoFh>`7|qrvcY+yg!QkF7+3-`f!Cm#O{R?~61C~~;_Q>De|I}2P z8(C@Xe~;JYoJF1w($}y*j z;B;E7Bh+%94QU;AGc1{}i5kL(>`BfDY|n++uLo43Pf{ntJ_fyGrUVZQI>lPZZEMW; zlHJ01#--F#9uPaoZR#V`i5`LG(v86?gE0r?j(6|U@~qD6C+)l3P8{RwCP$c$t-U%S z7SK!N<@z2g0~D{aRy(T?x3u(!-T|D`ee!oPwTdz@eOzvCPIS&E<5+GTulM(++@_uq zS#R^JdZ)sDc?&bo=5)zll3OcdoWEsubu(T4@#|8yjXdk!A|4Z1_xRj%Vs+{V2voj; zo*)HLqgGK8fYJt6=uq1$XMg=rv-*BbK(b8?641dMfRksJm3Z?Wj zOko!%tgxT5YKQ$Ba+r92P*}mH2Bro66H-SgPQK%U!_pil zoJ@F$K%I8E4CfO|f$O*`_66Kx*TV3A&Zlr8-;B@T);SFIBr}S2F^%YFwxjfwfKjfp zgk~NLIz}x8W8o9-DF`w&*CbE^L2{!$jb0bN!?}?h&G)j8(~80PfVuQUG*s_p-^4~x zKG#gqDYc^mxifNk|4gmDc9iH0mq>iR>M^Bu;F6f(KMVo!I7?M7>rJdmKim5*%1gw) z;sr}ovvQVZP4thK%SS!iW$-1`TwyE+{WfoV>c2~Mds{BS_q9Ca0 zREG14`T~9p+(Z!Q4;ddg#_?2Z01B}^)j8G>*ZQEkLf`1yR zy=84)M z8I>hJ;@8`Pk>&`xA2*70%0Xg+_q&>fjvHItJLCt(=PI8fjetacH;m7VRXyQY1YEHG}D{ zviw5T>6(H$Q<~TbuGkaVu|$=CT*o}_3>+kQ!WIR(Y;kOFwkKuKtsV85zWQ1EQh3$C zG2Fv|>Ev9tQ9vQ*Iarz)8Pt@$#r+ffoUJ2NC-?KCY)#4O0v)qL$PeZ5B>g!wmbpuw z3*IK22{`U*7!c@6(g*UHf@r_S&ZpW~=crl!2r}3F;NJ{JE93IdYnMTW(a7+Lw{!2B z+o;l7!Mu7|rJ*MO$)A{Y)jw97>v4Mz`7e2#;(T+K+&6EDXStRwjnCSb?ec7u2Fi!r zWplrIC+D*1eX@^wHffc_40pFbMe}0wTFJ@ZI;2lPv%O>7b3M(aDLF?yn$ph?lnG?2 z_RJ%L!8)OxcTT4ZQ3HZ&T7$H^j**-n-6G%EDv)cq-@;0!n=9Ehg8FDwvM;BmGFi6m z&LAO+>+SesTMu_ybC^b02H1;m> z&R6>Ax;N0>#XtS`{k(;8qUWcIJOlC<<&^kcBWJ^(6`3P)2e@JOz)XiUL7VV%QT~Kn zU*>prD}|A#rnl+k7Cgm4v(1snX&tUz-B{YCwU*vS0?M*|_o)#vCP zuqWs+*D+{PSZcJ#zAHF0x?|9rkey+V0|B=w@Ir73J&^4m{3+y^MmS@m5~O5`T{MZKxg(0pMX`uqP- zy!DhOL=i3A-(Lwb59L)9cG4%@HtDzaTZ$D$ld-Wx{BVh1Z4>AZC9Af>=9#| zO`?mn{SW$&c}`q1pOGaPgT4Ukq7H~**D*e@om_0K zB>piAt2SaXH4x4qhf_AxfS2^7p=_djXn9`g zG<>5BLiMc5zLTaM{;RG6J%|=CSuUHmp4`PAG>gOa+AfKf*Q%y64(=7tD>YHPMH4{T z?_Z+)){7b0WM8ubHOLwy*FcwHEwzO?RMW*YW4ck;?5q_a!}Q}yb1l~_Z8kCn)6tgY zZ%ZyVn}AYUycC6G6mMji*R7FMUFHQHLp*@hU@tg;nC@$Dl`+1673_OBP48+RrX_MC zno12LtHTJq-aPbD4k8y*?X>Y!4IZ(PTv=2~ex#Cgb$&N!fSvb?evQ8f7L$wE^GpaW zo0;@2;vqSiqF}HP&#a|)v5HQjuhe|7U5_V68|C0iA)hY;D(Mw~Mw~YWG7Z?Xl%MM( zj3M8UF}AJ3PN4yWs5;%=d5)fBne-!K1t`pnw~6|7Z4xl@Gp;-edWb^DBu#o|?*AzvkVix~+V@kX#;F`W*AO`cl0k zj+gVGOr}{MH3xXEzlJ)z1uLOAa~QaXS}-!$VS4El=Xj>M6~NvkOPeLQTgDf4DR+rI zVB9j3&@E7optVTy1Rq9Z!vr)8{G#fBdE_a0740*2NF|MFWE$UBkeThUAGMAB#7?0{ zQc1R%)Esbt%VN&L`=&*Y;qSpML^OTIJ{bOM7N?7F6^MFP53pW64=xZ5VJ`KG4Wg#V zq*5N8*FtsH*lzq%>Vdgr1ErxmP3tL76x)ee#(p(d?5@<3yL%e>2U%nM>;0 z6Y-wD$gQOQWd$LDYD+9~RB<}^f4SRC32Lrc$vVRxq9chZIHo1@>o3+68Hqr)}MqH6YGp+ z+EQbmF<8qGEBVH2*VVJ~8aY&x(QxCVA%OsE7bwYi^awbB38e|@5L=8{!ZqQ)F+4w( z-9TyVXMB$6Mtz~9EGJn7bNi-whdf6PwP-ljNHx-|TV_kOgyGXhn0@i-p{D#mtQW>grIZq*{iik8cf)8<+~^9XQW@kHW)WMFRrn5$LHt#MV4~Pg_Q%;bwE=0hI)1Y6>cC0W-}c zbelQWn6G^|H(Qid&RlCXpvIvGW-MB)o!3Ln-R2I)O$Sh|$yjD18BIRnrm!@h#|6Rt za2|V7ILhek1>qHULU_WhvW<5%r5ajY$){YJ`OFxJO3+KlNz8G&4*8N~>1?ts$5Btf z3#{uWaD|zO>Y0zx5ONMTin~uW67KUPd&rh1JSE35L%2swCy)mTwis2B=tjO^qrn+u zhh>S!;ITGD{-z36cfGYTToH+oB5q+?=d{|ae>_lI~1pA2Ymq54a`sfLZjH z%5SxyHAHVMnNkC(jXoG5j0RMW7@EEV)iL_&ea-1+Drkz*%>;tB#vAvoNgAUrwknf} z6ddS(v6m*6BN?s?&W7VuCQo%8@Dl?iHNR%e-v-_zq zVi#3|jH5f#Nz_5+DYJ`)tew70l0;?lGDi(oHnw{abYLqlt#okU|S zr`kY0qE|5}tEX~OovDtM&lr|wQ4V%@8z(gvKWWpI z8qy2jPH~Gk#_yE(X}7dI$?f0lA0VeF^X1oa19h&}OkJbhQD2HNa*q5>Jgt0FFKQdq z1S=9F3YDkoX(QSCV}90I>jE*3_QBfBM>3y1!>*&(FvEp=%v<`NFwLH7E9rdU&;rwg zQ(fgk$^~5xtr1o&bavpJfPTTVg6{^63K|x;AUGzhfADSleP>R{@PHx#j{^f;?*isI zviJ$MdHi*u98(APm`UW{@6cU^7jOlyk$0`b*oTknU&XC{x713zEGGHi%E!bqVsyTl z@6Iplal3Elk9Fs`C%NnA{*zxauUBrt+@87P^AC8B`v-Yz_~yEYx$oty&JS@1dl%#l z`4i?%^~8G4ic`hk(j>K_c2rAH_ek~hJY$yj)JVb%g8F#MEec7(>GcA4;n z4ImVu3%X1w{9Pw*6ePHLuX^kzuA^$4}BTwLno+u`pc z?vO&{CH|+*b z(NAcSdD@ty`K&2sdCjM$%3q~(VjJm`{L6a?v#PDPl=q~km3Odjv6uH}c~AQv%WHj_ zNAVu;&y*RZhg?Q#;osqX<*(_znqSFtS~?&l`WE}Ud+PWn`?rWar81&J93Tq5Wgg8} zTFMmfOQV#Rey3PPt*P48f7PK>OQ3>e^S?F^Z&E@7=Q{4StdFQzY=2plH$S>!qoVO{zqWeN_5FVqQdkZ}%v7kNjWmfu3KU*Y1;^Zr*af zVd5&WkpGhZos=xD6pP4r#Z252lk|4RZu1CO5C3C6v7NbR^b|Utsmt!+y7A3y(;c#N zXJGrFFRtUkQ$ofCKMH&hFf3?6aL164;AMe>gO3K>3g{CwCwOMSMMsvsaX@I`6US<{tBt{6z#(HK@{5 zDlr%48ADKUNI(y2fxJd@W1)FnqttXcPTj5eC9l*@lI4<$Pi!Xnd~3vm{xsiev8V5f zyMudJUJLh1PpogUr=XYh=eQHSPd(5V>DN3>{k*u=o8vz0^}8LOTRu`eBF^*2$@k=+ z;w>>(8LnMWkE^ZZGI9|$PCKYa8THTtaKVa#{}O$vCR9gOW8Y#<%;lfkDmnQ;XHa?| z3S1F%)YUp*OJEJhM?TzkQfO%_ZmZzfVcWxdgf9FRt}nZn8bKB$4--+~95{e`UOt|sme)QaWXEihT8{f>TXdMAz0GJ>?`cv z>|N?FEH3uF^d*UwB&s9iVEMZWW6WHu22mIW!E|B>oJPlS$GEi&&lTl{ zFt^zObXBr36-AFGMi4%77kP_JCT0_7@Z3sJ?@2Fyc96&g6Y#XU0>l6pIAq;3&w|zP zHb|i2_yR&W`-xdjhf$@d?*swbLlq{0qSiJm81+RikZestZW9=7_0wv7t*%~5E2zy; zYb&jlN9ru~i*{bys5R1V>v6_!{hMLx!A2;oMYW_Cv-jwx)HZT0`HYERe$pn}gYnVb zm|@HSZakmFI#`u{MfN2tQ~RJD0aMg&su%RmMt5_xe%@GS=4;K>8tN2zr5qw1@yE-Z zrE2nR6{+iGo7_RJr8d?>javFFZI!;waGSbW-%K{AAP$T~m%v0&9d#gzQ3r8#Ytl=p zkrW^ol2gd(AOU>EGem82EVYyJ5e2EX^kXWH8cszrO{j)!vhateg?7R<{xG+TJ;zYY zNG5^)N&H7@bQSg~lgHH&nh8UM&s;WJh<(e9V{bF}*iasp;GF z3T8{Qq)r+C8h?yRRteP48e#S{o1#tTD}BHD&}eGR&=ZUj`Z)cgUeIu>b7ZIXPFtw$ z)AyN)<_YV86@~~iQQM)V>#g({0~xD~9_nWO082o$zoGSy)gIUKsTpqGG!%WLQAO*k z53s6P&-MM54GykPdQv<; zyy4;*>85m5l>KA;KmDJi9ljF2RX&&ZO1>?BYtF~4li7Q6dgfNmtDFDUJ~DEB|Dvf_y;o%fpOjMzA^5s$yk<7;+?eoES#$VW)Gw`PxD&empmioyBC(tGP}# zO=xIu!haMLdn@Nv$96lgA8e}$j-Mf>`BTY9&8`}zj? zZ~I?~?R_f7?3OfA%J5$oMe&QcQw)~gD-V>aw>VAl%AMrqQj*kA zZlyL-Le$SjEb3+sFnM#Sxz4(24Ym%LL1-7+3*WJ&5qv;Jft{#Fyu>I5Q0M3|RC$_Z8!(B~TCR-UZ<`~;+jlscJ3<{-oM-G^Z9{GI z9IKqI?S6Y3r^|lEG1oqmKOig+(zsvjX0|rhlO>rg6wTbBi!z0%D%5T&l1e70Q{|{q zWH;hp;t%l;IhXK)7gmCK(5i#lp)ST=?T=PP&(PAfnubRkuL;-_zG#(=-s&~=sl-ZM zl>hJvd!h7Bj>J=KfI3k1$koL;(q4JESY6uc-|BnnZ|N2IXv;4coUl`#xVrel# zUMLNg{$48ouk;*0ewV%~^|Z%${W#NUPBXoh1)9RY-*G<$Lm(vH!3_8XR3;0NL&#^u zJyOBv@JXDVZ_3L;V_P4g6;pz#z-?eJaQAKdg}TB^p^D(bGh8AYz~}L$g;Q)dHi5l| z`&daPir!C`Wm+?HsHN0J@+`$u1?Xg|Dp`@5NKPhtkRM?qm;q`Lort5vFXARViz?yy z_Y(SQO$GaiBAC}MVgXs6aDg7EAR215G7A~^jToz$F~F#4JX33ED-B6+j=g$}7NIg~ zvfKhI@sYwxE0hfRr1V4di9^IH(nfKPZ;m)!8ZHMZ4(z!H%%EPQj;^69mK^sRj9rTt@zZw~0w~ zQ+hpho^DHpk)`N`m@}D72X-h^pRP|I#y>L#K(f`DE-cLkFlTWuj$q#46T={S8Sx1gg$NcU z_F0|LZ*!!fy14OR1$f@%wG0A>uYLhQ;L4 zyWji7J4jq2mdC$aq)PG;>6^$(JtVh0QCX+dQvN6ob)?=HbMc8j%y?(!S)AoJidb8% z!RA)1tclipeV|d%+-Bxjqm7lO-%3DU^Q4svN)s($546pi3>w2ypeWo8wwqa~33vy# z!u@a!d66QS)ue}5L>?kXk>AN2@+g^xPus_+Q+P)GLB=zoti@z8m)XKtMRV9?+&#um&@U<*3n-?Y$#ojzRH5~R9Yt=mH)`3bXlA)ub1P*f#OE-U*COyV}H7L zlJBbbnYXj|pm(tUt#1PMGdq57Px+--UOFR>(kkh}`bllG(b#fZ^}ti~61{>|h-0|p zYD6;Cl^)L;+#G%~+mk!NpX60;1Gkl3$IN9j_(b+G6Tv%Ke8yoqFlVT%WDeDzSxx;* z`N=WFN}?)x9Il36$i>uXx(GFt$z}dwF0zPmaSiy@d^=&R(3rcyAFxffZ?HA9PqR<5 z(Y8f=D}E>6LpaOdAwoG1@ce#?avQaK>im+~Zs!YHMbpUME`g8Ey%r4Cf8NrJpX zo-A)viYSHTVR8}WwR}<;rkf=5^>@Io7Y72A~Cz~2_e35m9zLILbsOZXAoC(gzu;;xxaI_MV6 zCaMpP9u`rQ*PJJTB(+}uT>}u?~Hlc{H zj@!zQ5i+=n>{WcecGA7*33MT$tB+a09B!=D ze;AzJ+srarSjX^;4?%frJ?al~&}lRt^+Yt737^4SP!RNmtH}Szsl*G|7skRAPz($N z3_4&%7|V^D#&i9gwm=_b?$+OExHBmY)G~52wTl{s)pbhSqb^o!sZO<}I!_;J%rLs) zTn1VftP^M>_WI%AA*urU!BxaSvJY{G$j1MjiaqxY5l>CQUDQWKGfSB;wiGjyt?pP%m(SMb75*XDi|-=r;}>$%xkF4*I)vU$9VQ9#1sO?&kavmuL2boA7CjtGEdP5bZ0Ocjd5fX@pt3f58f>E$M@e`H< z%fVQ<74`>2TUhKV(+Xujy#IB{hedOlQy+ z=wz}5xrxk$BVa8!9lQc=$l;mdG+YB{a357c^Q|?;1Fa;+`-yI9yryaMj4t|kEm*y; z)liG5<<J*A@BRx74@l{#v!vIsxkR$6M+w32EkB|!bEEWrHghLQcQ4p%!XT~xRF zRGA?IHAy`npHaNZH+hkA6Zi3cszaNk0o<>~|GoFcT81j1?N(<{0SI{3nG2tiJ*nGd zP3jAEn3_*br$xFJM{_zik=F&*=CsK|tbLh1!5(2dW3TD_RpWr}Y7PLH(w>P(7nn*Qernrmu2NZlZKhuFL0?WlA4>CJ0bVsB6?5 zj1H|{QXVUXmEHJkP(V&p3Sq9SRsm+$SS>^+jlKG7qk+-b*rGSpSK$*UuRYdt^sjiL z+-1d~>OcWBjKxvaLQ}yv&=r=26+jAXNbJEqu|3(G+(%BLCejZ23B8j(!}erj*@^4} z`VF<3+KuO$-DFMjG*Oz|O+BU4>DJ61W)<_6rszx51u}-pCL5A7u$nT7jpT6hHnpB! z%LrV1b{IX6L39)PDqV#s#@HA;dyl!t#Ng@g9Q~N~(;B^m>W^3ENtP%;On@c8c*MeD z@Ee+hMq6p-5hGVm)hiqQjFm>F;noB6fmlb?v3D`J!yHp5YOl27#yw+>UdI?}lEyBr zpnhAws{PdG8`(x7leH=$$%;pc8DxGkyBeqUAKFR$vq*h}C&4U?@dss)`crAG-cavo zN!ny}yqc!;R;MZZltAT@GE|E(UhDVt9p+)HuvN?Ih<;j+%?iK+oS-5sN}eKo1R{PA z%gI=rdjYaNd7b!DaWd)K5Mk=^NKbZdG)lfu+s(ik^eh5L_P$YygD zxit0!*MtRZbG8~Aie0}Vm%z8?b?zUbrp+O!9N=DYz1U{V9<~a5ka05(rT`O3`zVHfvyY%$%p3G1waI74FP(eg+|*ZSyx@S!NE-s|ufh-QpjXU`H@2{gxg}*JL^| zgPCxItVeACPs49AY$ilGsi>g?m5`@EM#1MZi8(2lYUasJgkwNHAI$^^MJX zbA7uOsTIb~TMVBcJ}bMF)=DrwamFZ?GF%PCSS?jZb%m;^f_4rwC{Qn}e>N5v9re=s zRK1=yO8cUX&`asJ@nZx1s{TfgFmui0=3euq+0z_n)d63?4N!>)!|?@EDWseFh`XDI zp2Un}ve`C#gh1MA+8zqOZK7?GEy2FuR!UgU59eR;wfNWEX8sj-mHWVb$LG)-wko@U z9l+LN7SSi^XVf6-6t#)^Om-*VkrT|XoM@rkh3W#9ZDZ(*0DZjAlsX(&23}%;Q4(i#$_bSa?99* zY;|@QyN~_J9A|nl*XSmAGF?Qy!){TQ7U4)y$U$W%`U$ zx~j8gHqP!Lo@L%^`>}gQ=yf$#6VyAhQ=Ti|m7mGCS0zrWEd7uw$jjv#a;{7&{p783s3OWA<>J_(^Obg5SEH^`!Z>AgG3%PQjUHA( z_NTbUd)m zU()aORq)mERrb~QmiJ!q?)Db*we>#r_VX?E#rR74J%LTZQ1C+N33Rlk)7+Wk+;F0u zp(0YA6YZs21>^&DSU=D&byjjlPtjq-MSqgjGzH7fUShUwOm;6;pWbD=_z+{YVVK|H z77?y%Rxc~Ux(BUTZQU?8o9(SKP`ee@1#`B!(QtS-<2+Bq2lIB=Ch!e>02_*0`nhDu z`8Yn5_vB&xJ4?;;@n$&k96Sxb%?h&H^exn68_Uffpc-}Jp1UUX=x_1>gqVwzA-TwX zwO+MSIiyc^Rz;!iOd4{Xm?Y+ciNpyVDf!rheXg5@8C>Ja#pU!9UFyp3C1*yNS+0%S!Hge5@UQ~DY za_{t<@XYXZ_FVFe_Z;-haQ|>UbiH+ra~gX> zPwYg_XFJ-y9V!zV6FM4v5G)wV8(JQG7Azdf8mboR5qcUtAB+xF43!Ty#%(r*irXFR zKlT^93(`Xo(HgmXjk>BLb#1*@HzDcB4IR{*$qw>^P}Z6)p}lAhx&gTrc8Y z9YekJ9;?FVvWm>jSMncxknzOWg&dKF)-0>IE1xT)tA^{TYr1QzmB97M zI%X|}UKTVjAz$9*t@%|x5jio&Xlh=x8oJh4JH)lPLwRn`|&1UmD&c;s|&wm~yrI1S;3DMfu8SuwFm6czJDVmU}ILCzb2uSMlY zF+}thv0|mrP6csQTo8lAJCPeob4X;D;c~agFCxWTP@H2Yb?P}+>@rSP(L$^e-DM9s zP@Yzc)hEnA0ewdICNoKI@(&3k1xN`}kZSUl1ZZRShn}Z`_JivmVjn?V|M73EF{hY# zw-Lirg1Sb5i}n~Z4AbaqtS}OokBpDT7$c+67>V+Q;WiVQ+s%Du1?#%i+Ujm?c6ETi zd;pjIww{_}K&olXS>`aDj+*JsMZ7p4$!oC~`W;=_9y)fJ#J#7^9IW*bbqy)!75H$0 z^U>Msl)&s?gO_Z!Q#tLO=T0v$c^AROHD`_U!|rM?boM#loOGg-*o^vBMID=p0V1&| zBnpdkPAjJ=bYrVC#GV)Wg6&Z-6Owh+V9Q{^V4+|&xJvn8RB(3SZs0`Vd>~ zsO%2TOwn2>r=?gd9*A->lZw)Fbr+~^3VIouFKISbfc>U@k%KC8moeOk0GkxF)}dG4 zSX*4>kZe3*XTutV*9t!p)+fAf#MX$n5sM?|M5c|*AK5G7X~ckt))Da{$42Z9&k%7m zJT~lbSRKzD_b1mGi@Azh9nE;=N#hmIXlU+WI(;N7sjru)BeI()ErxyPlS_pS03@(=bCe}Df4 z{}KOkzwIyU*WPIFdhdR36K})V!rtn>Nj|?XS>So#Zg5Lzcj#rPkn;oCFHH86Lse$| zOSdB}p!{#yP+rM+Z%i_em=&$;uJ=|8S8DeRS5H?wSEOqyc(?wRA>>R#b4=fzfvtr`0>Hk-GjH>bChx4ZXA zY+3JYuN}K8wt%;aH@|m>cRvXJjK4x~SFmnqMktfL&~9WKc55frnJ)fO3G_@oh>WEN zprRk)ER}c{UKDh_71W;0>|)-J|EYpDwZ>gr+LHm925W^W^d(Vcf-HdS;T-9tG&s;iT##6$Y&yt=cVt&@>mNUHzo zg3#2m`ju|4uc?~Q*sW^6+#(rfZ;bk)9;<_@67p?#l|){0COX&c3U+<4epYDhKXxK; z&D+p|(2wAM!9hqosr=demOsDmn)i=)uJ>ZB9Xr|^-`CEU9=y}p$9#FcB6fXj-`JOW&G0vErb6e6Fdj?4|F~_sW4;TMYudGN2rc^Hc3Z^()cD zR@KyOwN+h}<>ghVvEhi&!B9jfEwo}?uuO1qU_+pHpnf1-pl+a!zm@N<_nr5Uw-}gi zvv-(xfcJ?vnXe)e-X~uoe^=jEUjhFg-!ETof29AiZ@%xUZ?W%=Z=0{2@0Ra3zWe5@ z>Tl-1@2?l=6DS$H9lR7Q9{2cEXc3&PjeW-+=@b+n#X}jXlaToIB<;c4@`^@!V>6#; zv@!cx1ze|G72MqO-m^K(6<#d7T=NJP8v&EXj%8b>6Lh>j=`*$wCOBBn=F z!cWFUOo@0MQ6w@^tAMzvn7YL3C4Dy%q5B44Op7k#C z7Vv(JJsum3t?bpYO}(AG7h*TX9`ly=-iXbQs@btJb{ab8tap|7j(4B;xwjK^Du@4y z|5{*B@MX{y`WYHxPq%;BQBEl*iSx~V3O<(34>4D^Q8!fwU5nfyHZkd3nwyuF9c#C-7$Hv6g@HX-e^7_25y_dZgytllAUr;1?eCPTkl__z44$31f!$Q;NQ7!-&JbO;85gWwkP>?ig>r-m@) zKDkK6*W-|Si;(H$3dsk09YHNNj@@CSx#Iba5=KR1iE$lCd8skaIBxu7t}~k=QM`5y zc4zmz@N5ao8@>{``$k0T$RClj;{A@7B&t=^=BN`B1ZiDl$v76fu zL+L`tf+K_ZgLQ&O&<~%3$Ae>oZGt(1PXgNl*Wui=1I+_Tkha|cpZ|vck^i+nSzt`S z3rEZo{1bQ)hz=AET=!4$&-Rb?Z$xG8!T0Lo7Lx)!1IGhNgFS;6gLbfbXjdpH`pjo< zhU-5QLuDd0MMXd>Z|Kyd6M0NZ&~sq>k*o`tm+)ac#Jm3`p%LaEv$A!~O5!T&YU-Np zdge;!p6K?u+oMNbdt70zuvebBo|K+>?p*E!?o@EV67It8516s_u9`@novd$WBlEE_ z-)LcQ;{?CNFY~i}5pT&od>w1U6dg~K($i!p89>^ji)xZypyl4AG`Xu==&X9X%8qn+ zS8fC=?g#gUobAp?XMmH~nP}IuBW-W!S7=XY7P$CPC?<3dybv$6ELbu4D$p5OoChie zrUiZns>9`YXmIFjsDi!E_JX!rI`?QixQ+JyjwZ$zweSJ}0179aLGBRV7z3a<@D!J?dXI zRGn0>)m^nmJyLJf6*XPeRSDEu*<9uWPiWy6pG7L!R1QZ+HkN(l0(n{HP_5NE<*O|hL!Q8PRYuE>vXg8nv%*m_%J}kMIZDRL zDyo~Bsn)6kYOk8ARv;TB*W>kD-Hd!BZD}(0j5X!Ac~|3%@dcc91~b^(s0a4mWLz^c zn{CW-=1eo%oQtpH%t~g+@R-TWKghGajrV*2^5`m7k_mc>Hl|<6Tv8d8*sfO~g?7-x zQU9a*k$$89XhOd019~y`zmhJl%VS**fe|{BCFCJidjQEnzUuD!kP6Bw(E5hRQ%9XC zPI>3PUE7Yb&xVGDYKDr2a)k?(>2#M!8OFy*cI;D zZKbk?nto%Yk;I4wgB@kP*}v=^9Za*(6Ql)EdLmY|g3b>v%8SevsUN9JYPZ@C4%(&G ztNJPmUN=RSltFPoEEWAkdt|TdZHw78)2vrY# z#qoBAJ`*_FmcXjO#=upm@QJ|bz`4NfKv=L`a8s}^RK|49IYUHsnM?gvi*#)w$Q{E`2YWicWqV!X{rQc>poEG8#?#lG-@V3}D>2_a}=aT3?2S<CroQ4B_#!;RYPlXLSzb(#*>mq<-jVB%PSiBSO|2`7&L1>X(){yPx1nA>h`Aim3 zbJY!%2C8vVQ<9$K#C_d|#≺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

    _|W4ve!ENs-c z3}SxAxF56(K@)ZS&DZdNUr^(J82haQ15?asGsFxsLwU%lwMaAE^alkE)8U+A|HE8E zd^O|rJ7ejG8AY^LKwDLj(6Vs#Ba({7Ga#nd^=ooAd!(B`xF%s-s}^PW5A; z!A-LFpfi9q?lQkb<|;Am#wzmsSfk6BBuad3(r@*lZW-n^*NK9Epovc!`>4zl;anql zUn!bDL-lfm$5FmIi7h0*Rf1GQ*dc@*v((sP+(#Yu2z>3=MDX81kf(V(Vf@DUk?}Po ze>a|%Z$ugntalSs`5UDmc~!aGA7CqAcYYGa@)769iMg*ie?gvo6W-cS zL>0h}KZlP#kMER_C*<#s;S2rdpxKB#SMaNsiJ?E>f!{K}fc5sng%*+R$H`nb(Dy-n z`7N}54(+$YfD^Fphs@vMt7B%O@d4v^WKoB)7+&%V+aWM@))oq8Zl@mlqWvfKKiHqO zzhpmPKV*N){+j)1`{VX++doOISV+7L*-F6VKf%jBp!2a9v^tKKYlyZpAliS8zoCmC zf~%h(gYARU78$8V06C^Z&jr1t)3UFaAJ@B*a?L1mZX15^2AKOJ=VzVo0ezOk;u4(+ zaNGdroMRUJ>2lP-Q?7BH0eesJ@r>i5<2?9#of^8z(ctLdRb!56hw1Qgdh>f;PG6@% zQk-|lnePkQ`<`tSoD+o&BqJsR!D`Mobt zb7zos8sWln$J&Q&8$sx4qXfVErSWMpZ?55I^n(>|f(hRMO*RrYhS`Ya{srUuuyZr= zdN?~BH^?jhaQsqp?MEE%=U8c5N-P$Thw{iqOJJVs`RO*>PP||TnM>}pdlzx~MYzfDY=0&H9D}Wv z!9iL-f7FUIf>dA;IQ{m0nOv#Z-A3uGT-U)>Ir=UZojtL(A2yH1X9~#Jdz>GlBK)26KRQ7eaC(7A`PAL_ z6II`b!yNsk@8qT5 zQ73*CJiebywE}swj1)uue}>g$)qAKSKgG|#O_u!`ul*(bP3|535lrqI#-qmPz?=^m z@8ET7`Ri#$GWCqNF>MZzmx{rhm&uAhV(0HR_mO9^%y>{X5YO-ee?6#my!7m%C*KEi z#bVPubhHP4`X%_qbMVh5(?Nu<0Ea$K#r+sEziu2Qla?CIiiPvoH^deJkBlUC18l-0 zTB#t;8Hd>66UL8?Z&K@h%=jof{3xG4h1B0<55H&c&yr8yGENZZ*NFByR_r(CU?35! zl}62zX-mS-LtrG6{Hzpa_ixtwtZ^5(8KUPXUxE33&|HJ;{m#o|+23QQk7Lbk&c)6g zXFT={b%s;HC2-|p%XQd!5A5@O#KdRxr0kEVVjg$?-TA!Un<};b1?M$T^@j5nK2i&o zjG&=7a@jr*?>l7N7eULLFp*ZX8+JWmI;r2nu-Rg;>0WmD2=@6sR{kI8b(mUQ?$D4k z=2tX_G#VXL9&=Q6(d@23@6p}DwG)ruNoLw@yN^utZt~Fw$xvUT7Ji&6SWa@>rmAa& zsdnJ^;`z7n{Hyr>8Gib*PDKS7?j@pv;G(DTzc1jA$slDJIQ<8r^j)BKBDNmDi_f#$ ze}j>~fuqUH?fZQGkxtznbN-Qh@@I7UxPJW@p8tDZ_Z#Og^>tr#ej5GVi;g#ftINT` zL)XMKctDkm0>ijNM?r)t>fQ&CW51`8mvb-JNTTNE}6g=k%Slc=B(2(g%jky-j z_!5=x3uveo{^~$Ck+xV{7S}3x=1%tX0POY4FwZ~0+Fl0*Z^7I8Y##PNxJizEg?$aV zW(yBFgSpwh)V>T3v&bIB&u6Gys%=+nZ`q!*{e)Hal4HDWJ^0+e@WXfG*`XlkEjZ(^ z$RT_2|47(tFFfNGRqlBZ^fEiB#1F>Eq)Bko{nRvHGk<9Q$$SRp_ZHZ4g#Eliv^)vQ ze1}~0QS-gT&=y{str2IK!yrx-D_&&1(;&}D{dgLGI}T4iMh-v4_gDCNDPC92Rj2nF zmGJ#-XE9&bA=5M!a}JpMVe{L>^#Sm<+w?S&*n`~l_$Vyrd9qHW(Qepn;oz#=-S~0a zqqd*vyUx7=-#v*RU8M540>3RrFSU472NmA{EV$R!qh9qE{`OOR?|$1dqHm5UzhN99 zR{sDB$^3i2vCPOsYaXzi9^#-{S?VpkO#Wx0HnZ0p=OS^MrfD8RHXUF&F}-kWsHI6{c!JUs3$;`?j(;SS>;B90-?Tr3uJWlB zX7H;^VA7wcydOf#xnTGhY~_gYC$iQ9WU53^sTqF!B3STUeBs?-c%GheYQf_V!RUYQ z{Gt92Z0~j61G4OO?&9&Xa(?14v3i|2Yt?tSkoz?P ziN6G@i5y~aDVc4fxsAx&3xB=`JinV*+G;K{i>Ni?$RPn#8GdF280pULzo4$V4ATrH z#y$i?KVozm;qaG_Q}@5b9-HBIp0LJr+rZFR@sMf4u|-{lNSpInjDA>l~Phzv5XFnmGgGc?PZhkSzJI z^WAvPR_9vy%}PFQ0MB=z<9%rPZlY|Tb34}t=O%LIda~vw=Wa6RJDl&w0*^Sq1#fzi ze0v0RYDLqr#PYlGVwo=0n+Eu>3vTiY<7ML#`EK5bq3Yg4PJ0x+JqrrmqQ;)K1*5Zc zJ#8r`4~y)%cuy|Aw%op!>fnB&@6+}#*}r9f6yN&1{bTkA>>K#0KN`Lbn*GN1FibJQ zHj73Mpueved*y#<1RbUkNO2~^6(XJf&S3bTKMXJk{tyd~$OM^Ip^ts)fseo&lyh_?3@eM3NyYBk9pYk zSvc>{h@PkMqT{gMa%H_8z$#$gnzw5vB@9K)T+GjRj}tVxa%X-3U})n!zk+OQM{y#taJc$eF7%%9d`P#^Fil* z&YjqQDLP1}j*5X%g`%NgXCRMIXNWTbq>6Q>QezZ4m+{K&_{qEZ&Cfc&;rtma;=klJ zsTzW)81ACJd<@A@%3;d5}O`)zlD&}-ok8L){E?FGx3q;lgd z-tu>R^UK8ERwJESauPheP9}er%=CTp^XfP2%ruyQ-IV@q71Cb?Th3{gK7rMbqobo- zCy6QPIuw(|>Zr!M+2ycvlB_g|PYh6fH*u8{CD-`*2A$+R-9L!OEW=-XZT&_AO!XzK z@m2J))`+Ews3Dr40-xV+?ld!rp(%3HO|bSkxZsb$5V>Fa15}3Z#NPKhAJEwN95(;C z^Kans86u<0X=3$skZ7xB=TGBt--5mTkev5@J_}p=I(YSEwElTMe}UZnEj^q258~%6 zd8^eNghzydaZBOXR$B!z>GnMe{a-+=kkQqUx&Iu~` zzLcLA^SV+#*6@6XYS4lAMS`>0w#DeNh-x(z#Pz~w+IiI_aQ|gJ3HKB7*QY?;J#e5j zDy=ax>Us0O=Huo!%}-#(&1BystSav_)Q(5o#@?r3DzBrp7t!1E`c8HK*1Yuxu3zgr z!2N*74`J88BJV#AuKbnPJgxo0w}{4T@W6hjVaosBwjT}tjEeIDOv^A5jP>M`uY)Mk z&+jlsjUZbx(r&WL_O_57s13*fV$#nXKCxb2rj$ye}{hp04mPc#&=MO788F5BD6;B+GP%e`ys2fIc6?XSu z^Up~5WjOHtLS`ZMaBcLow`dE}7Y<~v|Q;srl4 zf2qCAC*UxD)$2*~FX;IR^Y=Xa7+?K~>q)ME;w#T{y-MsH0duc_x~*_NZzCEj$tj1g zP>=ru9i7EXT0q@t!$yr1qZMWz`YIqh%TmS^P$DW5hYA?=m(CkC}JQQGpu7pD(YAHW!g+mckWx z!C)RFraq%F^?mA>-=nMNsYg!px9ZJ4;wIF{!g}wd^8Ow=cpe>G#P93T!Jsjtr$)u^ z!`X8r{vHet%o}n#{U$a3b5yb4psu)|J&FB;4IeOJ$n1yTwwX;_U1lfDUhdHi!ygLx zOS_Ht8lU91erY@fD?X+tYAZmgRy~i}N{wFuUp@nlJ;Ulh)c?h1udxz+g&MQwfLTRl zeGDZ27dHL5o^bdKI=V;ie9mR>5g@W*j+4pdUCesmHQjhtFM1k7OAe;RRrt=MVCh%T+2_#OhuH7^Fx{YLF$58ZiRyF@gQ7K%Z0W z{6*qWa>*aD_K&FAzd(Nf0C95<(X$yXE=Qv|u(c%i8U|AQE6NHF@jry53s_O~jq~F;=ChmfpjOpo>2y#>bUa*7T zdcXNF_Wv%Gj!e#8V~_H_)XlEWmKRnJh9O0Or3pl70d|o8ed>L9`y)D=|Gn{7#g!Ar z4R+W~E|u<0CRt^RZ8v=6y|#~$i9XHam_*n$l;A41!rSo{>IFj{&KMmOVhMw(z9{WB9qj;2P_yCc<-CPBt zCR6taQZ$iet~k$9Q@;uiea`t$uD_FApV8UeAu1SQWKC#k9(yOCmkn6_{dmb&$w9wi z?f-yC7xAnv{<<$YPo_4~o85|E?lAW8*u~e|wVqpRY~mrcofQi^`T4zQ>%(yHZ|MI8 z^EB8ed8io#cEUR1U>yav<+fGY6JN{M`Q)Goka!MkXyKJ-(eATE#81dO9|M_o7#oPX zEbI|QEc(MjJc!SE(0+;afz}&o$TlksSP#=HGvr&w)^HX!gAf zcF2UbhG?wjDu?M86O}i~Nw@GVIipa8OikFZ8*5IO9w1#fTFr#b$p5AF0CE3ieCtXZ7sI8)V_5V1(S6a8_C0QSjmbY~=+q)l+Epw_wKi(9sw0ppR-+ejicw02+IM z942-5yNtW>-Tl~Vr=nFMdQ2m;MPpUrF(F1EvIL?{Z)47scP!{Ld&v;>I*FB&7pHap zdI)5B9b|clz5g3l@&vm0HGJi#py&@2qrU+Xe~Yh#<^GtT{6c4Ie@6FDXlLp-T)*Sl z-|{p0`Z0bkZ07Go_Vc>>X(I8acGP;Xrb#455)1k0Xg7QL1f1rF=;uk$@_91Hi^l)> z_?*rc{)jGq&h>4s&vShgO}v+#i?^<0*Na&tn_Z`X>z11ws=4VB&s{}3H?YbL z{^B)WcZ2Wcbc}Q&r5`Dh+*VJNtk8hBbs^0Jf6oIf3C7y-WU(}~kY(h8xXX#^4d`bl z*uEcK-Ai7-kL>d99m!uyQ1nPdvq_3Ccg0k zzV|$yC)aa)^*`-&zD5MTiEkb-kMr>q$as#g&gq?Xm(bfKJ-a05gDz+%QqB{c*3a_u zi>kqL&7~b&!^(@Mz+5MlhTV|&Vew^0qPZw`6NkKs>^F&zN$ewu{iotLS$I%^YBZmH zN_+`RNawLgJuFQh>Fhd_M+RS|tJh`oJ4L*HC3aYgMmH*+Zc&`w2C8nuIve=B8XK+P zRg2*Rx%^g!GLbm4L>RL9qCXGSUjVX7)=K8DW+6=>s}~_z9^WPN`f$a~3FYT4_(v5Q z7JRy>T0RU~zOE;;{)dL;M9IHY=g$)J&zi4j?7ygw7x?Z4c*YCp|3&owKYa)~$g5u9 z`X8@*nOD4J9>gA}^z2G0f31$#ZdI=wLeml_r5v($6{aAl5XUH2Kj0btdMt18q#UYv^mLdPqF@_@&d_b6MQY~Y1H)&OY#`y z8sqsXel85cgyDFr7lyOjM2+5jbg&wI3#-2$KYFj~`4ec`s)Rm_o*%#l`?1CrVstsN zCb1o@6{FJ>FA{981JR4|qf2_X?|HOxMzKfEI9g|v1g-12+SsA&ZbWAjfo;itj`JGtsKL*G^(J7~b5AfAt^)ER?byn{=zND}<2LzI%zG_o0P{iOSEDiN6YO{SLAB1Netb=6|eA zY$VXIR^l$}|2(3_eYC{ztLv zHJ6v3Q#%wZKa*3ho%mM2o)nrS0v#@`_#&xjCLWp7$Xr<(lLhQ$iDJkmWy8X=gnNAy z|M;xF$N9HFFF~qbf?B_U-ThwQ5&bvt{@?2NKZoJ|06l&U{Q3+U`yl$VYNAzCms#3V z3Fq>{tLCuMs5#=|xOLiJ5iTGZ?i|`Ut-3gXh!-fgy@GZRXmxp!h!%!ct_azI*Y@d&fI*^c5@s_G zqI;vQNFzjZR4!T)JlUaVzU~IE9wdrB!EUYhs}=A03D?i4gXAIjE~x%Z?KpiNM1L5a zypISJM3cHhDgik&vIgxhC+6g2RF?j&B%&`88wDx{@gxdm3Ok`_(T%LldhV+Rot3hS z>&gjED!w07eM#>6AG>}QM*0uM>n9brg`qyB8v7U8cm|C=uX*xKe($iJK0K>T?WW#m zU7^gY9v^PjIPKAQbsI)U;~LqsME1NX^{s_EfeSn-1#4#!8%2uH5-oeQr|=Fm_g?(s z{o0?Ay!JkQ2*Z7!i|GsE@56I;@o}5R+EyMLl-;dXtS>@a^1oQgUy)u$IDc8{Y!5?Z z62Iz2ORYpe16nHA>~~Fh=S6+Dg7ccAtk37Ut;0j%E^%l`&idpMc?D=m zxRB(j)yj_6>RvafZ&;jZt=6OKbpLBWot66P#fsF6c@*d>g7oRi)-2vH3@;Mhgs5dC z>g>wfr?J{NdK$up11^sm(A?C*S55kkT~eP5tCGm5RV@mKs8OsfbJc@4xUT7B+O40f zXy%$eUyNs3Ix6FLtI?CJC2P04d`NPZQ#%yG<^z#5QZrVnR+2f|m0H5?gexp#$E!4p ztz5|c@{D}HLVvQH*DS#=7AtSfRYa3&C>bA#*BU4R)Qd(Jq5L(e5k2sjc`BJ1&95_B zcaLcF4{-G;G6^QMt2XM0fO?IEdeujreymaL)bqJXAGPXnQUkT}TN0)1d~DY|AlM>o zOxS>AR0kd+wy3`u-4K6+NBFe;z(ud;d~$I`Yuu{U3pEUX1E~sA=O;~pZ$3F zYDdBS@YC<*`9Q5>nnN2 z`Y5k`=iT=$`}L!SvHy!-{$$~jr4JOo=hGkk@<$%|)EB?-@xtvZjl1~Kj+d>6FMsNN z@8G46T8sWa|C~<8{QSJbY4h~)4-Sinj*U-9OiYZAi3suYn4cUS8XB3Hao9XOJy7D* zaA!kRWlc-Z=#0be6Brs1=I0#lXliI|?d<6vne~pzS-o+?@|?toV1FMwzdSbQmyo}D z!@A}98OgDsUQ^vQw{Mm<^v~G5ynO?L!@~ULdnzv+J$U5wrJH57t%LIc(TVY)w&AwA znwq-$y87ncY5%06wHwy2UbeWXs30TOZ+>ia#w$E2BReZAD>pwsD#DWl{Rz@Pn$krNjXbbEXzxY4D$C63Js5pj!!Gvu=gGBx^MUTCE2NQtTNo)**k6v zjEap43-Gqhk9F5vJ@MA-2aaF3R$N+9*ETRYH#a%ZQgQ3r_2ROc#?GPnfcUJUrG?ok zanX?x;UPhRK@mxLYqsyZYv0bz>sAzH#s}FZhXzNcOfSEHz@XreAYXH&rS!t_BS(&% zI*VL&ox@WzQ^Q@2Rpq5+xO(+w zRmX&PRBCoX(c&eGi}ErOqe6m0V^Z^$t=+V3=bruh_iSC26BlTkothXQAD@_ZdIf|8 z`#MJ2s%~C9edMiIUw-w#$*YykUA?_MU7hXC^_9ifuAtAp8Sk+8w7jLOH*8qDEH^bS zIyyczt6=HsO}p-S*L&WzfAiAx=pZj+ZgOO3czn*oFVNp}ezd!({MxCvUVQf7&%Jc; z^wpB;hSrX*uJ)#?;;R=gUcFu0K0N0exu|f}hD{q*FU`wHO-@cp%gkG{X4_rwdhi1e zzH8r>mHCTegFI$N1_nlF?S6ql{+^DB{tTURe#x?Wn}IqLL}PA^)u zVdJ`$MLB6HmY_@5Zb#7fzxV##8<*v#LJcvmX2-_wDkJr%hzsKw++mA;-1UatY5ckNp5;dQc_Y%T2{e|4ZH4n_XF>_f6wL> z`Dw8sUUOrEgQL@iPe7o*mpLVZUOw^W%P+k6+QOPW-R+H4x36Ele!Hr;cUyhM?VC4mS2lKy%z1|;W)&@8xqNY6MoL0_Tzq0mdd}k2TXx@l z&t1DWuPV$;j0~{Pjtviw&)R(a1AIN5Q^Va&71z%mJ@Dp%Bd0Il(lz_~d)a;Y?c$Qk zhK|80TR?PbPSLWZMY3jGY%Ggrpwcb7_U_%ed38}%a&)k_b8>WeY})DR=kMob%#QW9 z*Ogv5bM(-mqo*(362r4*e@}a3b$JP~+S)hn@Ci%E$j9sRGE)=dVq)VGk``qZuH3MF z_nuu_*DlRj6c^@an;9D!nVh%#`1=XO4s|zG-Z+2a@S!6oFI>m)ZC$H`6Y$9Y(6$7CN3d44Kr=rzI*qM zO{*7YrNo5znA4*pqf-tKUw=Pu+uX!pXJh&GbH@)KJ_gvA*EZ?qdpnzJD@sc%YRM>b zULmn*xkXEg^0Q>~B4}!6{<3vjckbS`b=|VuwD<_DG(IviF>CYo^Yig=PLK4qR2N@5 zb@cGjljpCMR5i4A_Vy3-b+Zwa~_ zL3i!gyk<#GYOGjkd}MTTP6f3)riOc(t8QI9bqu(>cmo_3D-HB@wboaal~vRwU&-4Vb(&Q*sGQE8L#7gQ;SI?d}dW_BAu4-r@1!JX- zrkaYf^6G|;feEK?SVDSkVNpR&dUAYBbaZSSf)*@aw`Ir9Z5vnOqH3kFk+CV<$$mRMv3325 zf(*5i3hMAcP+)puu&c4+#svgDdG1QF%Sr=%oh@~h<>ggaX>1;M5pjgRQtu)fxT66pInd8TfpSiSPrGDJ0x}vLdg+qbM+mWP#syc}vJ+)1n??$l6r?fl7O$4`ls>Mbkvb~M)_Xmvw-|Af;A zcgiVX^Oluj;u2Hv`?Z_5@7TIQtrY5O%#4qUmAtVMK|kD$J6$?`+-0SvJFHY*S=Z7t zGV2i-ot%|lxUl)ycyXsy8@6uWw#jWJ+zBh0Y9)22`qFFXP98sT`r;i{!tX1~)k>45 zx>G>`n^!Bv#A$%8-Mnr47RyTNP6!G&^!4>3=!d$RDsNpnbK=D53mTtYeS-@Ikhx)p_3Da_x)G0o;BKK(6p>S!pxdHMX=bC#lhJRy<8Xtd<|r3)7>UAt9URfm~+ zV54nKbv0GhbxrMk(7}N4xa73-v{V+2LQ;XzoT3#hx}HU|QsX0nyp6eqMFmFtI~prt zp6AbBx_-N|uBi>`)YH@1)>vCrSzXuCJv8O?4vtP-l#!X9niwm)7j%N=ty;ec-nTd> zEipP2GtEp<&XJb{ofb5D?!whuWz`MMZJj-ECzyCuWmRpHXw>c>9-o?#nPKf-HV=6! zTDfl1rVVSB6(A^(=bRCZ3gU@I)$}(mojWUnR@64O3LnEtn7*>Q9zpTZ(AbppOc7Lp zL}9dW`Pz+}H?0>knG_R3Fij(E=f6qT5k znU$F)N!f)?Lih2}wW3jpdWTz3F}>h@ZRs@v^z4PJ#TB(p5}|Bf-Kh$V4o@3?Y(6tP zJHw55l9h`rBw6JOCKDu4zeiAWW?TYPkmU5a%Qs8eZo9Y>elIyhd~}?|6q7=LW~D1M zyR-7z&0Du_63U+<^kHstVrotjC@`u4T3vkkERaW8CxUhnOx^8@PF3}-JtH%A5>tA1 zZVrwgAFGK;v+~BR+bltaJ~*Z(CZuflTfln~)9I6^&Rx2pc;D0K7PPXaN$7)5Slptl z+}vygy(25H+q`Y-W(3U?`e4l5DX2vsE}c1f^0a7F{C+`DvT|$h=&WZ@baF<{+k(2Y zvRhD1Oah}$(Wv(VeK>dOgkZBayNYlPe{wo6G4SI-kIzyL7@-k%*4dhyv@ty zPJ;K>FPxUdWC^NPY7R&^b9ZXR6<` z`C-dSCr_Nh^aPXmXbJ0K<~vxCD}<<&d*RnChp{P1--zi zSn1S>lOz!hrp|6%v$CwTT-^yaij~xz660fKQTOJ_%2a!npjIsTxvbRXwvqt8R<+%@ zJ(kxDDs0r1K{FR6$1B5S^Wvf^=(7Bbq$o5xI}JK{x&##~mAVDh%+%RU2`X8+w7j}e z-HD)g`MpK&6-X>WS7?B`1@-Zlf=Ni8u+cLo)k6gOv196#X-CbbflFE1@AQ|2gD819q@e~?8*qv=>_ z^Y&fPW=Wy(VZOH6DNCc8L?(wiA$jLcLYsB>q`R)}F6n2Kl}HuVH9X^i-)H9LVS23= zV=W-rux%H`&3Z|p(E_8EpaEo1{GQ_G)+K6&qbJX~;Hj%yHeXtN>vlz58=S;9JRvF_l_As++%c z^HynfQ}@W6m(XT5?-o?bS~kCXAA-WjGLtCk=ce8!c~aCjmR~!2Olsxx67@~(YNgup zVg#+IZ||Qp0-}_S=422|;!g;=c=hI;`}XfujV_7}p%9svoR#)ifEM+At<^WFzYiWh zcE$xy5=(Uzw{PCC1fBN@Ps+@f;wIf%RN#IEo4;%S9t!Y+jD#@w{lvtyl05A`40hDs zzIgJ`TW=kb0$g#ltCOm>^yc*&#pQMFgEO8X@#%R*izyeWYt@}_(RJJQ-hJ=gd!$p4 z5*-M?AD^5xyaR%Q{Jo8tk?zK_E2j><@%o#GPH3k$EO{_aIMx$Yt@ajN8Wt>jf2`Ls1v`Z z1}kUHYq!elJBDVx!lbvlq)0j%@o{ldDi^NYwEOP+?z?->mNiSVlOz4%_Y=Z!1A~M7 zz0B#Mj@sf2#}B;z`df!jQ7o(9ceK`5-oAe2%JtjTEq#;rpt$tB#oEzG7KJ8IFRj?H z^RD~eaUX&%&r6L7@{}AhYxo2N2L}?Y?#;i3py#fY2sU?gv^7?j-n@F{+O5ha-F$L3 zf?AtbmLqPz=broTzkAoFl~_q*X+kz1#G3ZGvA&k78|RL^`Pyr59X(_DeMcwcp`!TO zm8-YP8#;&Qyh9T*3zjTp^CTv~DH#-9v2oYk_uqfdo-Nd%#FEF{q)>66fFP?5>8QJX zQ8$0&l-uvc?MrT4yCyC2{z+R@W#RPjf zrp6~E=>5e-)$&)*9C_=FHxC}O+^LPtH>r!>EU9Yh8FN~jU%HqAJUJm=kU4kp>P@@$ z-+S*}yEd;X%t(m9N|P)~vXgestb)^p;|Fo4!>2CYR5ISt(F%~_6j)XMa}!XBVbRX5HbKd7;ES*ixsY==B3kW@8xVWqHy z3}T6*9*rg@CRu4|``)|m+P8C)bn>F$PUMhTYxDN`iGhx~k}Ic=9C+)1)pZkhYHw{6 z#Jh2;thQ}n$}UZ}!o`aV6-mVMnfXiCY}tL+J$LWjwr*)|YAi*)x|4?wRs!y|<9P1a zfj1HK+*OOq~W4jwoJI^C4ouA{S)suIi3jUG5`b=_LpB|u%!jG*IA--sj?l*E)I?v$Jcdsx41&s}Pz{B+z& z1Qi(d)z;{EzX*B?jSAwam88?&Tw8Hl1??Q1Mx%>z1@W@eq%SOu;T$(KZ(1!~Hw&7j z^WyLC78H#hI&kplsSDT8XtPVuvfITaQh-|;mA+F>hNV#r(DmCihio7#TRCJxNS=?c zk5Cd!FA4O}!NbSTTo%6vos{O378jRP*0&E#*`$+~S11`2LE{s&*}Q6#E7^%ggH@wa zGx+9@%=L~}@@CFu0LyQ3i^ z8iMKQ!2^fi)@Y|d-mU95ZdYgrI}jh$zEg_8z2g0nHCuP@msyZxWzp!2#m54zWY>%7 z&z(4Y=<@1+RKDqOj7$39GN`DlcYJcuKiK1kXm3VD}L zA3Y>lSvq9R00|1MD87DGAg>)C4USC}N|K$XHE3*tW_sM|?)|&nK5EX+%sM^&f8>8GG&BTB2+-}?&=EmrXUR)J zp`pS4B4~SU@&98bU=+jy?{AjXwGXJES$TOmnXa0F#8j|i!;XD--?M+0m_7y58}oBc z8J&iOBB+JUN=Z(@oyuz)TiV(c@vdLhfe6^_E5!{3(*hsU#Izg8+q2CjsE1ZR+bBa+(Bg`Q&LL=XOp27CQiZt~Zovvm&>b5o z!z7r@x!HLUG#Ga>r$?0J9X~8H0j+M_8ohDt`mHjBCqH-1aEC_MZrQbO|Gr&Y*Dcpn zZ+Fbi8=k&_K|ujN_IY?twYKk%9(PqYt!-`10?pSom^z1Ny+UGBGO}~Bs2PMlSZ${b z+ciKpu974YBpP+vU4lxguP?odMvojjWhJ|oHcO*7uVbY;l8CF1Nh~QPiMOi7&AayQ z-@60I%aw7E2r3;%;ZDYkre$ceSn2Z3(khqftpF{Px&6GBi8(ZK4@=i>*|~S`ZZPYbaf1nQr^}~RP@S^00?m-8YKj{KZ4yor61ONj&#DM=bU-MMG)u5AlJ zKdlWi{{Sg&a3|8T2zpFnN!ra;WhWU_Y6iu7DQ>i8kePr&-U<~|W?|WPR(4i#W8uAJ zB^SNd60};YFe`(GgHGCNcOi-JduzC;h!-o3g12i1i#e9KDm&NYrnj%BQ!^-)UGqZ0 z}wm=k)eUi>RXHc1d|{t1CWprL09z>0?^W=8fBS z?%b~6Br#7}JB^R}1!%!Er0twj$B&=XnO%$3am4iHT7R>7Pi^N&{hb`|+PrJXvRwxv zG7Zw2LET9yrR0Xy>DFlPRSYB*_oD{s!<63noV1z zjj2sHnKQ6?ZMsRnRl0+>uUoR z9nm?1G@H{>T+L=}-!EOYZo~RD%ZqZfhid~!W*mlxm$#=~&gpbDSC?GBeDUJt>%}T) zkNACibA4@1ZGCfR|MT2tn+IvT5Y`&qhOYMIYSm*vu4%O{LGZN zh+tp4V|IF$%;fFkWp~bu4R*Imv3*(BtZTAHOk$?`y80%WUCevPL8L`#i&CtZ7otNJ zS-gDJsufEMK!WH{5p;TH&a``ZdwCf1Q=NT@b$W_-1 zIQ94Ui%J_C8k^gDh9>4c{KH}rl2b?^tQiq$Ieu=@vK1?qFV4?el%Rsn&CJe=plH-F zGd|eeQd?ep<2u~4Qk&xaB4}r8Q$quS_K(gOKEaW3Nh#FHvC)wc*4zpwU9xy*Q$gFB8|xdI+Ixm49i9O$LE~Z~Bf?n|LDO>zSajLq zJee?s_<2}@dU*SY>8HmAx~ztfY+l;JDrm0?+SJ-LFgA;zQSr$L%H~$ zdej#7ByiW)M{T-rLJ=isQFP!nk=$1a+_3+u0_IVtVn>kf^xCWU&%!hRPgN%v88^ z*)kDS+zE}U-z$>fPa}ODO=LF7>#k|-(9n?OPYojIq?$evjV8oeYl@($S^0})&78EP zSaqivMJHchaeSRyk%EhF-7ZtN@9iHN9vTphHnREdficVUiHSs~?p=nf@gnGwrHc!4 zGg8%^%=y_lg5KN5M;u=UY)v&4r6nb0m9&tO_?m?Puk+iNQsLKL8FfOc{!gcEe(8hq@TP_7Ah^*&G)eA-~hqY(!`ow{UcLO zPyf)U*!Xxcd?^3IBgl6uXpwF{COpX3?wp?&#PdN;gJ4oYWl~XP%|J!azV43J=H?dk zJ0wS=g2JO?<6^~`SW`6$dCV&)kW8KA7Sv(dJiS~#DuUKkk=iP2>eWhvLqh{B+Sc0A z*3msMDrfgXBV%G?V+c=OR860e!=ezsl!RzG)F^_Qc29vPjryLpMwus7RMl#HijNNT z%A&39U46ro^LAeqR3&u@O4w)S<`)!@{&A;ZKQa9*D)sR4^0YZ;(I~7&cV8`n_8=(! z)YsMC+5-3w$mt+78keAETJWdj^z3|X9*Cfr9weC+m3p!Hc{JLqM_kIv5mZb+I6N{k z)W0C;#GIHu7SqQ`(1)p{G2|wwPhO5{G}sp;!AE8HY#xmYl+>fq@=6i3i#10_hQ;=6 zt!Na}JJj@SUe*i^4MC+UsPHKvX&Rso^-%=X-A@enc97RADk`h%1VsmiMn;AQ)l98o z`iVKwXcT4=g$4%)tK%bRjcPBjo%L5(F50h~AL!|9YiVwg z02PgfM8+UzWOzt$P*6}Xi$e79C#C0cQK11Us6+hTkEj>N2TEk%Tcv5Ke{f`UbYxJi z)Uu#aOmE2DzxBv^uGtKU<0N`R6>B$!-TM92aRq(M$QvF6z5unLOl)ko22WONMr z3=0Vg3JeSi3750J*?E?g#GPdGiX;M09xg%as;jE1>kt$mLD1pBUUer+P&=k48AnHn zpsX1j8cBp^E?7zYUN-->pqfSMRnU61((r!D^)}iTWIY(J;}dB8j)q zQOopQLg^&vWdQ7QC*Y~sZF-4%(Wq~lH;R7R8U>hpG7?k&C7DoK{wwi z(Ck{XNwIlo9Mj{Y(cnm^2#Ta(k!mFoltLm_Om8}!x~9KB#2Na8pqA-HP=I83SP~Q1 z+|Z;%M~)Up$f5`u7!VNXawi1Ut{H;*d)Z8Rfh6L_(J0I916}S! zEP+l17B-9N*}UD$mjYbI>a%bAy$kV%tqj`S*a(Tn^bRq-d-J-cYx6~g(lv{Z3YE>P zpj2URZ@va>CV{rfp;1=`UEm~hB#|&SPp)&hJ(kzaYggNaBo1+VKdEb7o0r3KK(mD; z%1OjZ4UKnfJ|@=XPPk}Tq!68aZ5C5W2$I;G2h+}PCoHr_`|rk6z}FGa;Ed2+dvWKg?PO|M63T&Z3-NqMEE z(SA6|fDp1K%SA0gqb<{ixX6=BQ1$!&A3>)^m6Mc9R#qzRB4lmNAc<;J+)0w10)EIH zEKfC>>gFWYqQ0upx5<;sN8vdZc>>)J*E5k(QvilLn|V z$2m8}^)%G1{&>(0uQ^=kSi7m~Q5 zp505-H(7#W`oOR|D6a6)7zE9?1Qp2BRPUk>!b!-W)@fGDN4qSNr#|X7y@y4}1n?C~ zBr5}>iX;@^F`DWve(z^xP)a5@bJXHSH@{Hb2$HDZyWA-_C|Ds6yf1Lgg*i$~WO(@oNPkdHj`p?79T6p3f+`h9&|a%g(%RK; z)u6G|3^9?KL6trvrsYtB%1}I6_`TgB-3RH72FR&AZ9UbLm)tI`aBqH01Z``ouZN(y zHy@vv5E~U{2^ta>B{woHSt>=nRo6PD4$sXqHHE3{e{`Refj)quC1Z}7T1f=(3^9_kkNJ>tOkJjQw zV<|Z!Z}IZw%jDjkc&m>&t%qjaE-Jm3l3O=jg7%?N6|}LwuA#Z3cNi-LMaCs1C##^Y zpifwoUAT0)tDh652XS?H;csnza;UqxrmXm;_MOC?u+k{*)Z9=f?lgdv{KI0U^%57Y z)eVA*i{>v8LAC3Km1d`>W*v4JUI@vPL!J$lCAZLMm0P2r6IQCLgYqJ%SSdaUjS@_E z#OLDWD^@HmlztAeG{_b< zFD_cJbj8XQOVpi0h@}}>(qijQ$2o}g$( zp7b%7iaW)IyAjWdC5_Kc*}OE!#P6jLkvgQcv97kRLETAXDJdx-F3QDoA_bfZm#tj6 zd`W(0s<@K|y|`$gOhg=tq6>mrg$Si`dy@#-)Go2)9USSlk|a<`%3}EyD_5$OENGr} zS>9idISzEntpBE3Nwcz0lFrtKS~lORK`#y0B#9*@Phpaj({iwqHgQv2=p@Z%UyI&r z58H~RvMN_;r*%kET`gQnJHy^+)D`q@_Mk4hQvE(r+Tx}{^V^7rpjB>-T3t6u$}Q4s z7k3(Wxs!YIO2u)}B`a2~T48B4$lI8onVq+}Yliu$;qDeaiFB*fW%?n@O0{l{N?wZB zppS5ARO1sDUAfFc5`R|?@mbJle@8>5)x@>#k&tFqkGNBHjpg^Apc6r#DA;WAdtxbX z$;#EMS1!^1y$Cuxt5fx$K$!2@ccPQ*UaZ9C*Q{B! zFlCva0Z2UM;0J>0;HswV=Cx}#EF^KclUAi@w0md@zmJkudjbKfj0BFCnq9Pf_1e`d z1W96bZZ)Gp9~2bezTc{%_`1yct%j>wsU3n^RbAKIIWQ(S-N;NJ@$CR5=<}DZTC--Q zOhhCxNe5fpDbR&Z!&s@r+I+3mA;Xw7AhRy^uKrI)ouEJ`#lcH0ippzB!y7{a^mzBhw0_8A?S}8Cnz&bEZES0=%B`raF z)Jh9?bI9;Qpjq8XYa5r9mKA0%67FOd;;8PVplbd4KKtyi0@0Pnc+%AfhtV|!} z?qJ6Y+!IUUqKhoNXY+2FV_NJ%V(F$%ZlwJ%D5SaJ{|$OwRObxQahmH^uU@rW$3bB_ z6Oh4;pPrZ2yi`}N?quD@Ba<7sp`lKLzMCB4sgxu+3CMHJE)wLva;&t{h4&(;i#Ymu zy9llx=)7@zVZJsXh{u{TT^zF}fypurlHrBSnB>g`01~y5(g#mLCsR+5x$Zb>RV&@F z=4+Nl<^CAiygS*&CtK5?i12V0jY&wg5O2BMZ)^qq?3@f)q(A0i#S%g9)~NLFrBrTd z5NK{eP|YDCXo5~e!T=`(MWd@$uXND|%^@&cRCi0Ig=zP7gBo$PcL zCP_qhuhXD{Wh>Q684GN5-te><1vc#*(h-wWZaDIF6?Ov6icVJ1AdLbcqhxxa;;x`iOD+CnF>(!7#9OQRNR)|27aZd%MyU{tblL#+&}33{hMbIKwWG(2oU zPy%$-3K@f1M+#(8ueY5n2zuM)_e~3UuNt)&u38B}6J72k^N>Xdx^k5(=z(UvEzG88 zA7ol>33_88*|}6LTlT|I&OSO0hy>~SVLKlj#rG@VJ)WalpZQqNaBYiUdcM(Syy@%(t zHZ{~QOzNdtw2~clh*I%%oh!SlMLqhUF6yrhY;h+_<=av%>K)M1&=?+Am@B&{^}=wY ztTn9+YR#1wShE%Me*S*0VYQ6^rL1+$)E5MmQrVi+TXW^8g*qfA$*SoKb23~t{ft#J zsGz2rUQRbzBVgAwXh50|4UH|9m8j_xtor+onqKPfBKOe;sY8T{-%-}qSC(q?!Cfj_ z%?C?Rsp+-zVl^KEr1@ZJR0iN$+gJljt4reVPE7K43?15A4tnqi)c^=HzAQatBznz*N_E`YHL(GFG6!% z1(Pd-N|&UzQu|{vxEXYHN!qo2-_<{2HS(+$kq&O8og;!47FlhlNOy}!lby@-z3uLf zqY66e60}*m;ypSAMbJ3eyfqC9(soXEzSV3_j1JSoBo=)TzjtfYEvWVhbhxP9L90LJ z9pvt1S!-%XBQwu65{Q*{tL6|(P}h+HtK(Q@O>2kUf?8d19RXX7JhhUVUW$5Yjpn5YEi(PrIbgRoG+Y|B=74uLu-%*2W^=xtD6ob>I{!AT)~M@zjx}C$kE*5b)GvoL zv@blR^N<+rHS6YeY?ZhuOAb?7miKpANfW5godZkjKtaEI1l-Zu+|sH?A6yOW*eKn+ zC^TH#_xbs*QwpxJvh)8AS*(GjtADLQ-)oJPwb$(F9}*$+5Ni|`Xh9x==DEhoR#SXo ztSp`O(S98PSGlJQ0?j(BmJa^2S0k-o2)WU zk9}B3qI2c;&fdYX8KQ$pMu}n$NvQAS*Tc;FeT_?y?P?@i3fuOUXKKy=sd`x%W-a$GYotn3f zKIr^gd$=w$WoBn*$>!beq$kLHy#J4&we?o>o>&?m8&*L(yZeVHj33~SlG7mjW z(r2|qTqhq!$0raJ(|6oqC2J1&wxDv5=>MbZz2B-zvp>;&a*l*U&KVUkV8n!?fPrK} z#cWk|Rd;`Tp1JeO{Uh#k@63F=tGX-`0tzTW5D+A*fC)s&IUdg8x6FP5@|?)P@MIPi%aq~o!Lnis35sV)(KClBN@eq zfP@ffKu>iJ&LxM%pq3NjL{?L*6S|0V$xdC-s3%pz+%82kfB7#uB^5aC>2Ayd%fE`^~S^~NW zE&-u3k2vu>Uo<8*CYlsc3NB7SD4a?26g;8m2u}c`%bQF_J!t64^0Hj1LE~#YX=TFM zk=`yMIwm$cGAxJ`Q2==kyf%pxCz8-9gu^v@qseSC=s=m4&}=)n{6;SExLhu8olvBo z5~QDY6oOhT7HoR)~_XcqUM1|v?WQog*rf?pm(B^v(3H;2*i@qpsNzmm(1HG5GZn!++(#*v8*aW(~ zk~q_-Q!5am3f1=_D&(Wf^VcsQ9!wNIpv&8FE}>F4oA>g#*n=veGvV^9%ZN+p@*WXI z4wOq4lc3Avqcuq5WJORMDJX-!;qqg+*du8oE|0_s*H6TGlv78S=X<#nj4G&OJe+qC zmnW1SSv(D%r$EsWuJdrF8C`y5d0j*$xQK$-^SB%i94he*42{GuA0i|46TdtanNhFO zPfd)ElR6KVH=962<#48lP%r1vnH>0{8@c4wPbaocsG1;j61U87d9#P}`1nOM2Mg6u zp|TJ7pl~Laj}n2Qk(cq$0Qo+K1q9_f;YP%%y@&U&!-h|maJM3Ju} z4T;x>fYPHxBJ!WO&f_AwQJ1)=+{q6YdxA^2E=5I0M}mm@cnyiC8WR^MA~c-x7$>hG z@#qp;fD=lJz4!9b(NRc5#W-~GaLJ=fL>3i|qgf@46MlIhRE~5Bp$D>%Mno7AK3Ac({nl*5#hirHDW25@GR} zgvDFu5~)js(&K(B z2|`I-BK?w^6wwV1R7^T$+<}ToE_vZSMj&w#vrmm1b zp@$8ZCpwl$xi^u9gz!stj6nBZPtU`jbHd>AXxf)2Qnq-(D1|6Wo0}Xb!VrQ`;_}M` z#>`3>&`TpWuc&d0{ZMSIcx zI+qCCNL(Hvand?{cX=@PWaj}HG7#}nC_>^f-vL}t@jYHYhB)sDLkL1i;89(Rznh;ch_U>$q`j zWCVYBA!0C6MAy0G>nWk~yf_A+%i~ck@$h1^n9&0^PAI9LC^B$x1lJb{l4 zFQM{TFLzpxmq45#w878BfKWQlCGXnGe7>>_DKjU=HfWW_9MHzI1iyo92V9u4L~ z;)J+lGL!HgCsebF^5;0Ah)XzX#@`7%gc8rfp39R~6usu42MxSdnu0EG!QnlVY_=js zEaGo&IG2#c^Sl$_1=t=g5%!*NArR6h;xjn$M@&LQ2_Hh1;UX^K4~}xL(vz<_#5yUgzTU&-W8#Uf=s;93>$I(NX+s0o*KZ>pLUBVPCkXX$iA-GxNkf7- z4`1 zrUkqy41c`GtrPk1vaqn;78SUWP%&|NqIVrNNDy4IdAWqjh4J@moKV7y8i>o!FD$PT zTtb%*2_nrXe)-U-II?#gRrY$7-rK!KTplMB;T-gog}>v?d%1)z?H(# zy20Y%6|*Sy?aF!cSq4&^d`TZd zczQbVg6rv9BnU-s%?9s7yAl^CF-|CMNj%ka8^npQP6VNFCi$4-6(`(->IiYd30)+;nuNC){+UZe=EB<^LRu%nj1mv+TEd4Q(;P&$f(k|76Dr1wDNJ5M z-9&fk1a3wN_<-AcZ{7y?^a8?+;vjEB(u&Nk;aoy;@3l@FeaHkUqDGJ06Iq50KE!KA zaRo)AXYn=`RDDiz$%C4g*L?^cg{`MUK(+8r4j;nVtrrvoghr8R!0(-%7d7La9(7fd zXw=}jJSk3e0*?_rsd$ z#vp=F^76R7C%Q{4K#7-VUtsZCR_H@LN-KAu3v%!oagzIgn zCv%G))a+@kMUM|2XXkZHQzXLmaA{qf@W!C;;t+2xC?3twLhW0q+335B02zni2zQ-J z_!nJVAmtwK2@47&QUYH1fZ%-`8QEcfj_JK|2oWn2;)Jjho?tSNDfOU0obv+yhSXw0 zoTq(@2x~Diti@k*X4V6y4RVjed#!n$P+ULPK^`85gazVqzcF&aR|K>_CwU3T6KFp3tVJy~TGGko_b z?&(t>Bh%kPKuX&zx#wI+u3sRi$u=dZnf8P2RC0|L%cPE>dOWp+2xF@lyCZIST zDlcw$cOoCK`RnmFO4hEwJFOGC;n8i3%>9!obq}HF4VTDQ;u)rOLh-k(_4FD}=!W#S zk|dPK{d*!iIeL5`-ksR%PosY#6g@V3241X-ljms^U7mOy)UQ7g5f5bO4HqYrkKB85i>Oa;j=a1#!9+e| z(z!UHKHij_(37(Bq`#3k+1KSBe{#g@1o4LQ?^1ST){06JD)lCVNJ7!N3b;Hm?Zdv2 zOJGUxBFU)@mnR8b&n*I>z69qv#2e9i)(Yp6%PUTV2SsnActPWa+~Ru5&R{{gMX`^s z@A~CYN&pCribnIU{KTk7|NlTJ-sV3`r0k4D%1$X?SwXo)oKT^}$Ja+HCNsdq^L=<^ zRAfXbo?ArXgvy<$VlF;ed1@iKE z)(XDp3gVIx&CW$%6kVS89ifrv@`y_Wp*WXV8^0(jXk7B9>~Pitp-Q#hLn!${2}1GA zY9wAg?u&EDGm&OJ`7bBB=gG^P@gyiBRIUI*ZD`u57!H+?muC}%h5@1B9xk~&T=LXq zX%u*y|ExD(X*THzLJ^nnLGfNf+5bO;dbmVZx~&ts=q*w}c?O(NmDc1TR7w!a@(>DN zG=ks~A{15R5nS>Rx{M~U%x&ZnPN*DyHdt{&B~s6sERs+(k_~S`67h&H>g5uiTttM< z!kHVmgb0<(R}q&`0~ru1m3X;C5*i+Xm$?I>^mRf>xkrSe;XCt-9uXzJ=&F1beg<*+ zj!^uI3UNY-sbo?ih!g6kcY4gIhfq`{xj|C zGtFovZOUy7%m4c?*Z+2F031Q%zH>pw=H0tD=U)HY=FDIIum6f~rCq!A{Z?A@K@8h< z>wn)$i?-b2dwML%W1Q_NfOY%N2P+8xoPmd zA>gG_z|K%yE((K=VRR-Pk-%VK4i^=3q7&eE;RhN8ZS;k6Yw z=}tFGEM%C?E)JjNax-~sR7;E5jW!0ujtTt0d)qZ?7tN%`gmjfc2NyS6>}WoQ$!Kw4 zR*ey3z*oQ=ZbY+_B9!teR4!_bbJ|UMlgZ!^2{EGyV+q-q-9_W_Xf7a}YBO2wpc5LS zNw3yBKumq5G>n3(E#0QIr5UA@Vsp^xE*BHC*#!X-m(j=y2^9l#>{|Joz;M`VF(#Ig^BIsL(?p-n&G<&{CqgTP0V3fTT$rI#+?-`G%A2cr(zTi zAJZ8ywt(hh_y&q;X0?1tV^SN%Nnu=!!Sf3eGc8)Jesxjjc2l_iQXa*o(kbR9rMkxthVHJ2@iw zEXFm3RTvf_b!eSJ5z}s`$^4nx`DHWa&?wY&A0CEr*-pJ`O-l`k@MDMvqYY>Q(Gn`(5@$O;IO(JdB`PP|=279@3>EiN>v2n61~Jh4jW zF=@h}n7BZOc4b8i21j9_OM?Aq7NgFD{tOP?X;3P3ZoX8+VKE$Q^Rsiy1{X#ZhQ>q% z39Jj#S}Kdimdb=~jfo+o(}f~TV}i>XKx@PTE@p9a=r;Mh8j}Y5vFLp2+QgXLjvCC| zEFQ&T=STqiQ!F|M-KA1!oD2>q5yfG4y0j`$QZ$?A>n~+EA@~xAs5*lKEG-0~d?DX$ zaDY4J3z;-J+o_(LU$eUmDyu-|Lo*vpM)jJB&Se8|aA9vdkW;+32frmkb*DjsHCJYqWmKKao z2PG(6iW#+92j7orRNDakVN4$}2LP>r$&;|HN`=k{Nn=JyVVh1ILQ|9L_ zn8`@>k%foKm^RRUgB7DO`9e&&puuro2$9fLlY>LkCN_^s_X`%; zwMxC4A1GtlEjBwvAf`FMhS-BPhdY!iJI3Y*goaBXEYi!BE}oc&*~~h<(ZS#{>{=Cy z`Z1SHJ12LFL=4PrT$x)kGni&Oo8z)D1Y8=APtk!qSX};b{uGtM#E|%h21zIuy`ASL zpwg%qX17_utlGi!flIVdczjH?s&mnOLnzZ<%c8<_jBoK-C42PZ)9v{NC8yz&eUgu%~0XFR_s?&9{cxe5Y#fjNgXBX8p z5!a=hTXoQorvjjF1OGv_IK(lr!D37+*V$cWJIg;bTE=sk06g<#;lXUf%95TT6;n+H zJDo?@FUi$rCmmvX3f;1*wHuWy1_!u9-TdeZCY5rX2Az${=79U52?By795#od(_mbw z(4waX`tg}`E}sL65g?&j;F1n-DmDzWTFm;@g(b7VpRHFL&3cR7Vb$x@D!99CX?E2{ zp;I|5hXM2RrI;W*_Kgn3lr|32j!DDAxppH>1lr)>`TFpM0*>2mvN@b)o!aPdnY1Ri z!>CkRB{EDozc9P3ce?BpHp8g0Iy6c<({7;n3h8bJg~1CH*iE7kKRO*iHk}_57b2z@ zjTl6rLcUFh1x5iE)ou~P0uT=3b%V))*_114v(=)UThK9tH0|QD4ig6YnWq=kCL3Mq zC+4x40-r!JW}$NEjDT<-o0;zCC!y21{-82C2g7E>0-}OAHtm|8!lh^y7S%SpMWdLT zS!4T)tcw#1dcE3Uw*&9kVhKg3RD%lo3MdYcEs_|6{YFaixXeRRhUz~tTfqeYPpuqqF9Y8l~d}+#vI1QMY9;Z7|UdE z3L=x@LlH3M@dZ)=)rNt1aRq!jT_9yy%ov*|W|?Qk=WSfEQz=(0O-?K9F8w_Goy`M} zXQZ(lYp73;&So+Zw4e)R{w$NmDGH5EjFpMSvQR%3h0b9!018n#5h?UNo9UKDn{c;q+F}oU^8oVMw>-B^=))PYqM#WXUE4EG#Vwqqsg%aHL#Ip zH(3GW+U=OgSBSYd;aihK{Dd?c#t)2$iU<%(gW`8=i}hhqsPGRNOc>u^Ox4Q)psD7^ zzK(wTxf{@&raRlUolo*Nk&99z<;=BMTsSG5lK2O;c3 znMaJ{BlGnQ3JwSij|c*#7x_dbCr1SO2zfq%k&)p+QWlj;bLo~B7G{@BfTb4YTJ6%< z==8+cj6yA+ot&CgfDUMurzaOR7OT zkWfE~uOG*zL#1*H^KzY8IXf}Cyf8UAySOkpIF*EF&2#>3J41H z2Rp@=`Uix^M+e9vlarF-qeFuu6B5FGc}z6A4~2&`idiu?H$6G8F{5>$W22L^vs2SE zV?(1$@YAf)=!9^@Zqlsjoh-gUAQVcaQXz}u9}yj$xFsbqK0YBnDJd>2G$_Cq6pMvX z0k=EAGOer`v@0_+a-(*2VQT1I&*04b%q%*7esNVHR~j)oW(F_hcG18Jfjfzai3$!0 z3JF6KV3U%P;}etPLS!;ue}6HZ%4WL3nSswV04iLbpPHDSot~YapB(J#L*ow6M7-%a z71Dl@leHtD?V=<>kzRg?cJT4tW z(@+4*0mS5@eW(esF|l!p+xDjKO5K!{7!$X7YwD&Luy-amod$5ks8xe^ayYazL!Sn| zjgO3c`}FP&S~0hX=GP8>nX|AME*sbgo0}!_0pm_%%c7!UQ}^uNwkdVjzWuvXH$?>n z#Uv+22KkD8eR-JCU^MDf@)f0Oacpcwy*m1#<5hFlhcAPJ-=-Fp=RvNP*Oq7I6h=FR zEA|cWW!atV;Mmweu_z#6Z&vQ<%>8Lw6QZJHV`JkI;)4AHWdZ;`F5Tp(Pt#@wrkkG_ znV6g$9_;UFtFP-Co*Et;m|9gX%}gzz9Fx`MrU=91qNOfyd6M9GxN$;!O8Uvd(+5-W z2IY{@sD#8YA?9#69d`5DJbF+EQ#U{K?(M+T;zUnFeM@)mhrx;2`Gutw`O5M#8fnC2 zQ0Zt04}d|2I4pkCmMtke4;?>t=eB4&{F=^! zvB0I#St7sCh#-m7PZpH0D>FO$@ZPk2=?BvH??{S?4Dpu*1^J5DE-iRn{o1M=?KYnn zANe*k@V>jX@#U+YPXnJmejFN^m{V$$XnYD>pT(C*d?02Kg~Y?>j7!+ObKlX^1*eYg zPfOjhB`GQ_HZelP7fV@AyIs9Fx3VH%URs#=HuU+!r!Rva-nKTpXnNJzKQc2vH$O8z zzM|J@bWRAeIN&h3lHkb5u+Ye))SY`XPGlZAcJj=rj2&@crXnJu!hJb38r`8$87+GC z^7QDpk+Jc~sp0<4w$`@J?$?cVjXhr{Cct2=Dimvaiw&(eMdP2u{$VjO;UVFPyN=~# zAIms;{KSc4htiVc;u9i$!8h?SCxt<^>sOb-Z_39%^nDro(%atr;>F9>j?Rwu&i>)a zS+E4FI)l;bu$n9wS0rS+9S}Qg-juX;Z${>c?33BYj$~$?IJ9$9Y*<)$u&;zqb;6-E zhe3xB=-R@!zOIh$p6<@Zy84$buRGtoLpzw}R+bhO8nY8~m<E(-tmd@_C zpGLs~%&xAf4G#R#$nK<}`EbEtK~nY}J9+keUQYJO(^;9vGt*P>ZI(fPe7LwC;D+07 zM&n|>ef|1%ptrTAwDehXS5HT0Pj^T6hi`MMilrsB-3>QF!4RD<3r|Q+hzyTOJ%0J8 zzuh^PnZ7T5e|kpNk!?`{z9KXr$!#~R>8x-s_435GFGC}v!|xlPlstM^{<7zNfB*ab zH{I`NjSh=Juhl!~0s)IgW3c$LxNUoOZc5s+@AQ>hx36EwPT#(5`?j=wyORTWEGAbh z;!>SPjY_??GBY+h`sKriflu$dnx2*1E2-`1|2+KdWBnmOnX+YTa#To2kiU?_h6sFZWm#?1uP%ae4h^A|t@SS( zUpy%-t*q}F92*-Momf~^tf*}ijzGj^($HuGL15gbl(hW^Gf(E_<`!JOasA?{gWESH zLqEEH;nN zLT`L@fnQks_PqyBWO(^9f7Xy65=W>(|bm&N_NHBPaLt z$?St$LjA--h;rBf?d{s-x!J{4rF>!H>xb^vrn-vKvZ|MDotb&Z`L$LHi~qd}uK zn9X(yPvYw<<_mm+A`{Y%=A6tuf9=|ZtV8LCj-Nht^uV6vARz>07=z)`>-2h+d~O^>tPTpG{*3q%tr<;R)OK9my)ZRD8MU z{Mj>^`*!Zyf8@x%&7ndD;5L`bZ38OMQlQ!KuLJMjwl`Egsd!dh^|bP3&*$MUZ`(T2 zqCKs}MWIvN7zFPEK3^P?ux)4BzT;<$iY^pgxpwVb=I*V@iHVyxqnSBEOs@v8>@e!k zAnmcyvEhN<*Uw8!9zJ+jURC{~t$%2Ae01p3`@v}q+V06^gU_M!(U{hl*iE}K3yN>v zx_-6z()qmXL%WkBLZcElC4>kto7G~}s#IFNM!qyVGB7ao`At*R{a=55SYA=x*xJ_h zVPtk;7R{?wI^aCEM9gK-SVCFs*6mwU(vB8h|LHHcubeN;%|3eM(B3U!KGL9w5D^=E z+!A0J0Jdw>V3bM1ZkM7;MZBrB&QGD6C%doPrtk$X_02zA!rn{r*S$WBW$K_9- z)it&Eyy^WsJU)x!5Q|1-!nnSHNU=phiSR|!PZV6f{kLCkTs&Ktf8r2Yl@t>qq*5Tp zWzi{C6{2-*b$0MgM@Rdsy2`SLcke%WUQ^T1*86#2;OpdqLT7WiT@IU*#`gz>2@H)$ z-j$J)ckW{GjoWvwU&zbJJbYl^p42$B-i1lSP)Y&K98oLK;Hkdu*G;vR<&PiUyZ7*E zeS24D_xoX#0Y~#0ENIRnL=AMle`NB`ef!dn<`!MLeDlY@+%C?`*nc2BZF5YhKLmMv zA3uRpwY0FHG}ugvvHtG1*4Hf!m8B(*?*DPWysoXM_rn0%psq8T%{t|pmF*uECgU-9 zevzAYXJqA^F1&L4=fC~+$7_Wr(sypb3!TI)45M-QY`1=8dTdIrRxXUZZ+}@+U0Yr8 z=&KX6EGvh^(9zliiKBWQF)i{X!FW9L~LZ^ZM26x9+Kn5<7Ya@u z*|#GlE)vbm<4{36!PueNiLq}3{cqY^T3VZ5JTEVKR90T~qPeZDt>-hKT(t=w*}?;h zCY3?d5D>LBJtx25%$d9k#n-OiyjpPl@PYK*+Y&;g5H>JrV44@EXV3!O$*GBsi-Myc`qM3keTC?3v z1@y#~pw(M35m8$Yow;)7=bvs~$ji;o%Q<>ze_Bd>L})lz5*lh+Q7kX7tf1QP!B2f1 zFRLCu_~WkEPtF6K zZlZ*N$wsrUgQHT9!;q1S9Q-y@BZhn51&-ky=nuT*Zpxqt~FbXI)mL! z=Sf6d29+TQircy?{n+XA*Z=a5fBf}_;)2XWhcgcD-mxjdhtEQ_tadX9zRu#XY8Qsz z0T^qpuPnLu>wo_C7|wj%)&+sX_@W9aoD-ypFW|8#F1l~jwu8q{X+_Q7Xj;#rS9ETY&rqgCN;GNiObEEw&)m0Ub|M>l3Sy|b$#@8L4U2opK|MYD} z4M8$mnCql*I7~W?Ee+q2aq-TNKis}~^Tzcn7xPaZJFq7$H8CLutcHM zp*5&)UzFazfBykklE)SG&97c}zw7&i_I2t^W;>P5<*}Iz2Aj+G3E#Z$MBce;KmGmh zKNg=ob>etdb|&yXDLzsr1XFJ}>hvaqa&ZBqX?Uo&=~-n}<>Pzz%Bo+!Y6lS2*gY^Z zKDDUS8jLoK#b(esVqY};G&wartKibLn>UNkokk0)j~qI%cSp*mxL_fjN~5|=Mh9kH zg`oKB`!_w^?Jq0t{|-ksx3{%6Hvylz`vxHtQ2?bD8%DusqOkb5n1qy_yY?Q<&2Z+#DEw4Lz-htqc zP0uZB9W*)(rBB(S!06;{dk-DWK2>n})~#z-z|9{$n7%J<+t%cm(4fEoF%|e^wVF-% zB+QT9aOR83C*YII%E~M2TDrP>`Ui(cLGI;pjh)VBqM~m)*FQRC@1czB^VhClzk2Ch z;km+`Lwon^N!zv=zNkNsPNz8ZYK_t6v>BDNU*ElMYN#o@{|Crt)zc?c^(~O_rrht zzyI6MH?I_CAI&&+WN%7LkPq7V>$d21TBDoJpxE`xqo3dR_jNWtz574^$FKJvmOOja z-ukM&cW7#HWld{B?GscQzTK8B4vgHi6T*eFSAY83fBgODAFdW2Pv5<3M{>AK4B&#| z2Cr_-gT$qVu^&Qsd*2l4E5|yTt*3$mKApGrS^3w0{_BsoZd@rmb0#pC%+92e0!> z>E?~%OP4MdUAmBa{LtR*Nl^iOiqmQW_Gq;l#lrOT+}zZ+_nog^RM%8LtFEnkUQzb6 zy76^8gtZe3Y9}ha1QgEXhXxOC-8QDNbQE0+p$GSc^K-;xj+C}lf! zN~KDN3S>Y&$Hzv8`rGTCls+ykud1tmQC(I2vh7VD80HnFN^fVNdE*>Zk^)~eIyvpg z>5IizE?)t=d?v3T_r#%nyLP0+%J@t=hPJ?34T{)poz0OAvX9bBj?1asM4Y*~0zY~t3vnP<)w z-@XlC^kTu8oMY*`&=lC{s1RQs&1r3JX zq*$1lnq5-qb@B<&cmQEfpH@~reNtK5*xK6i8jL-XrnQwNg@q=Ng@p$QIUGSi?9L1b zYt9y)y>JCEPWJK4V;P6`ZH@BdQmJgdM8b7x7AHn0<`x&GzV^Oucve+i-&p&!45Xg; zpl?5n$;}wWX@syAF63k6w+_wLxXeQR7G*QwLmn0x_; zVq6>^7#sy8+WWc&82_{e*#5k_?qy3?@5jNR;fW=UlflNUCaqdelO?2VNlHrIvg;U} zcl-9`GbfJcoIaCtG=2Bhgvel-nC&)d3=SHTO*74Z{rF*EXz+b+=Zi=GFQ zH7#!kM#e@*Mn)zUl&EHg!xx^nHt%_{|2=_ygcLBXLR z{%8iS4dL6BWrfC|T^?$!dIFxKrmn8Ks=T!Pd3{Uw$I+R&x!Ku8wT%LZ5kRv*;^!-o zhNNWV7lHk}1QJzr{#^dajQu;3!ew|-F57J}8H@(d`N`3-soCklwr7tXJ}$4Ssd@hF zc}>HsjyLbWjL)IMTdf&mvglMQQy3T(8yAz9mU;f>4?o^4%7qyDWL5@1htw^}vG~q0 ziXEa0i(a|1Fh2P4)0fZh+G$;#hS+KrZK>b0MztB55n8` z9?QS>(=R{WxOgTrBjfPFeV|M6_@ZGU(`7a4G+G^+)cWmXf8X1V#^;ak|Nciw21^?}Y&3!?ziQRxhkEiH`@&_70^-|*_) z=PzFdKK6eaUp2aEV9DI*eFUE$opvY-j8fsbqRSTxPv>N39@w!ZIeF9OO)&ugMJ<4a z!N<$zCdR%(VABms53&SCwBhB;##f#FgF|So*R(?KpmO+J01qslZ*X|b=ClLZ=Zdf0 zzI`2R=&9ow2li}FjtUElhz#`;a2V*xO{rR2LlacTKK8r<;Pmfbe=h}*YC!ARKMjwg z`g61!%i*T71wx6G&jm}mX;((Ul^Zv1-ML+S_Vme|6B+xrL!5|)b_=;ETrw->re~Jc zG|Ksrk6lgGWe@J(`~A0jPa9fVTUtANzf8=|&o3%8=-GuU4G2bi10(^l+tZJoEVz90 z&YhorD9$^6H#perUL`&V1naB zW1tvxt~7izK+!V==Zo+B^2?9t$r0TAw#2AF2^R#8M>Q!?W6J89!K_&t?rm$Vt9tsh zqWtlL2alfCwV>7C!_#uD#cng`t(d?+0MuH{Ws5>Lr=J8*ck|liE4P2TeevWGK=w&! zCO_M0LJ4h$K`}prW?!lmQy*W~fOwXbl^`@))!5mK=1R}W^=|ZJj~6!tgocKNg@(m$ zJD5{=>GI_(SFaXdzL0-nUrG{cgY!eP$t^ZFok?@(LFM0!dz>fZE~iZ~RT zUZVlF+O3*}k%7+xpZhx-N`L*=Z+A<|DyqOOzv}rkI)^gqs6JL45a=(!>~6Mi)TV8_ z_GjdryYcfcKi<9$zW#Jh=E2>YBmF^`_-wk{qL>+|`3HrBMJDY&b_#$KgkaY$U(CCdb)f1zAk9(s0`FiL4d?p78HiI zH|@zdS$Og4ou7WXb*%`@)9%!*Terl@xD=P$?L^?kszTF^Cr1b0zin@-eOCS$qR;Y5 zgh={6fBE`t3>``VBua&F9u4J>h)LSE=iu?&i&t-6FTM;PH21{8w3Niy=$Ht9mK|V| z9o57-^eYoXgM**mw$@cVeh49LSp}fHhL+BEAHPk`%+8^b3O1TI?ZB8q|L|DAP1*V9 zAX2<_Nc>Wl(4=abPrn#?$A{pTBbR=G9ApOY%+~P2agWItcAx6QCMD1?ucv zQvnVi>wEq3dHLh=vXYV~5H>u0UjO>-r{S69HJuq1!%+ojD4dUg!xsg{?aVB^a^o6M zdhO!5^XKxiGxl#w2=fP(N9DShO^+JAmKDm?g^~Ad4V5K-+`Wfx|Gf4^{mWM!??-0j z8Z!tejgBC**gsGv6-(jJqxr=@{`IfGq~eSDr?N8-@7o#|8sNjjjB2$`r!$!FmX(>= znTaoNo1Q=Z{kPx#{oqk41R>3BJ@3Du^ooVT!3TQqI9#zTBr+;GE_r);*4gV2E8Yg& zn0qP{VEC4Vh(NUI-mKH2j#0TB!sO2%`uh6bw1QtMdGx5Pvbyd?J^G{rUnf`828)x< zK@Bzj0l^W`afzE#cOA+pJb&S0@r@hTE}uOOLCB8eg!s5n5!GQe>(-R3^OIB41Pn)+ zznbdj$T5{Yeg2}Uwfn=@v5AQVEym{Y@HI=p_#XPCEhxWIaPiVb_|Mt=yxdbK4({5T z2x{-cc7sb^o1dDPoE-h~;r;vmcikOrO|_Lzo>o*RlTbJ{5fJbQ%E(H4u*>sxA z2B8fqeMg?|OMllZAg;Co;Ld|Y6(5Mpgsds74IV!iUVU(4`vk>0T8=> z%YRM)@id_O$1xGYCQ z?wLHHSSseDCM~fzAb$6W^LPICkH7zT_58VW=g;P49oQBhjyA}kj#9G@t)-MJ(PHoU zsju&vp8WpL|NQ4~51u@$u7U6Qc3^aRL7}sfgPhqyf1t%j78VZ?16a|&{g;3Ia`PfY zpP3MTZjKF+vMCNT+{x{>suw56CT3Fnxy^I>>uQDt&b z=`=89OrCFOG_W@~dh^cxS%p`w-MsVDk9Ugmk002ZwtaJaWT1e81~fa(Xk+m5GU~sc z{r0xyMFpt*ANTG*cvN29)YXfYT1_nK-KZv>&J&A8Qkl%pKR7&LN5<*Gq8qpG+`4)5 z`jrbO4{T3K*%Tic?89*xH4uC%P+`u@{L<{V_dTr;AXb!@mz6)Ms;;SR?Ck&adGPD_ zg31IR6e*G#l?u+B%FfumIT}E7pp;8>7}gZ4Ybxc^JQ|}s z^!9agV|`WWqel-PmOOc0-_YFt?h7zpg&It#d|!MZoLGViQ#S8BaO~8D8$bT^(+{_b z&z=H{w`W^Ih?t2Fwy>y|W>M?x>dO4s=iWD6uV2wDM}__(kPf+w=_O7KD)Fy zJ3iRk-qcY0tfCSmzOJ^mrmpdI_q+ZNpNHr0fS$@0`UOWsgocF2ByZn;EbC+e1oCI| z&z#OJEX>O~ygM~1CR`?DxNK&FdJWA4o0uFQ9_Z_As(oHvU0GFA2XLg}#fyffwzr?Y zjZG~mj2P<84Mfv9qoZPwFlFZz7Umb6J$JU?R8CG-=3x*geESa5Z9@Av=ize>4}ShK z_`a*Drt(SIQ}jqs-`v*O+1}pO_hoWXp#wk91_SCZ5ldyEF`IYp-j{Le{B>~2*NO_V zkEHL}wR?Bk)`W1Gm`6t=&exU~7UhbS+2Id8ot+)8n`)js`2Ai?_J;E*fc60Lt6s`JQhpn9}*rO5u0)#@A_YUzJ0kc zx8VH6bEh+aNx-5&)TxLn32asq1Ya{_Bj3J!eA`-Ga`!ISklGh7>Knm(qRk-_^9r4b zXt!puIU-qjOyZW*o$1*{cYglq_RXv3^Uy;pc)Iwg@X$aB%LPDGXS6vj8aQ<5Q{UU3 z_J)f4zx|HDZ9`K_Yg(WQ>$0!hWk63 z>YhKVDu3|DeE=kNO|2boJ`7DP8SqvaDxEEog@*Wvcsy~)mP4n`Un#zFsp#sBo7W)* z%RGqEYC#eRJ&gvV#bQv*j*W~>%`eW4f9`Gs+$OI~fBgtPZS-?T?W13R z{iFN^#P#jXFF}?12F4cFbS67mt{@PJC1RAE-<*=NJ^f_S4}bsLk5}?C4`&?D$~txc z#3@*SS@c?bowrh@QLjvYdDq_7-TU@+UFqFl@0QiK_jH52wsyQ57+*Hg_;4B;8qQ|Y zIlfV;2aacD9yxZp2%!DVLa?Cw4<0&vU?-qPrrn^DFD)sw29w2XRL*?vsH=Sb^7ZSN zRS*9Cd&#rL&Ud}w_uqe+SX|RvsXVElFQ1O)?DOEzL#NJNyik~X27u1Z%Ya1T?pxv` z{DmB}FW!iJl1{fKUxLrs(^OS*?_ODLYg=R0H@?4M01l_8dNO3heULD;Lk^oyt0%dGz4kw3KK+zzwLk z4HfaYZK_%HdfD0jy1Bmk>0=P3=e13*+ge)M-h7@~H3C|tvxH(1hw5}PWbr9G()R2J zbPJKqb^Lw(M8=_m`_q!c{RHTd*{TEAxn^)+w$*QMTAN#2o9dobl$AWLeA(Li8l?VB z??-U+Didl=1wM)REGmWNo3JP2_=%H+mv7v+txT zTxX|pcpMg!D-ff_Rl#AgDe0$+e*iNAVB~CJ!RZX3Ga)kAUqrL&6cDF_!?74uV4de6 zu<5LM@aw~vqtaM> z5deD>gn))7rtUkOnS1$%zy9U+jpFmCj~-0lpSB5Y9b!}LCcRFh!e_@CHOte(AG?|x zn;WXjA3b{X`04Y;&bNJi?>-FADRdSWg@w=^d`>>t=D^skdoxbtoG!QsR;2i1!Rh0N z_NMJjO$d>4>3AI$(JrY_Yvj|P+h5kz*45P1Jg-1^Z*K2-_x|(H*xahliu!_C9DHuR zua94F?Dj+1XY%s$^3Pr@x=?r~2YLDJn`45}9w(~_H5-6mLQSc&Q{VdAUe?ys*1v41 zt*(Lq>{aKRzE49Fi)bM?jltn@**vt&CoC)~ar>du7q48okasfYbZ*|6oTGcUZ{3^} z6(C?x+zw#8MvoF;vuGdp=eMt(fgpjQf7SG|;bn8%TV(I1m(@m_i^AaI(^fwV0#!M+k9zElux z2%noo;C|p;7dZCj`sWo-E1oyBc6PMAZtw0JoLpAv3}`|S+Bo8iz*saKx@-U8%&b!d zMa4yDbF+>dI(#U7=a#rIKR$zkIgoK$#aDz34Gau?0*KdC|Dv`MxKz{F-t(rX=k3Sg zd6kvIV6wp1`AB^O!y;poHf`FpJ^jR)vk)v^xOn00nauPwv~wyZP{edVP_w3ltFJ81 zjE@Zue)`b=1_-T1H4oJD&FI4C zFrej+J^|qgDQO3R%nL>6Okn&m@W@+Y!%%ZFk4ZycRI!M5c~4GGeEayOy|Jd^$0)YIywL0BUM!yFO{BD(X) z8L-P>n$DliKbd)W|IU=e*r-rn4!$?uMNje^&Xl;@NZb9^3|A zet3L(QDp(8N8PU+floky3@zB&k_L{x_}aD0=L-w+Pi1BtNJ~k?m+7LWbel;Fk+NE` zyf}xdj=P(mmp*tS^bp7UytCx@w z-M?#lN>X%KpdT8PW3yPydYu+6(wiO|`tYW`>BY0M2Y=iHJocjX4FFrTU~N@xusTtr zHCur1zl)4bPThSt>vTcU)tfi2TqrnsZ2z`oGyxS2QQ^=qu+0`diWa6uQBg`)bM4c| z5ANQ*Us_q$*!FHsIM zu+f1JF`5Jr{-&$#RRegs2Y=kXSNgoE`xCyoP@y$h(Ozhb%H&H>I&sVPw7uy^j^~^@ zc`Enpg^TBNGxu$cN29T%;I-&1EylGKfFH%fIgbHnp&_ z1{g>Kc7#f2&;Z@}MF0%lu`4|zGY6o3K|w*@DZusV+v3AyXe15zST@yVcQ~DP!^*^$ zkMDbXI$kx@RFsvLmX?&1Ro1ok4bQEDs%Z?Uh`>#U(3{2ckKVcqFwNnk$4;C)lV5nY zFz-xO#=g{qh|tjRu+Shs)a&j7&LiJBHSo5*rLn#q6#iKSdK-IE^Xl!FnN<|&E&~=o zQZEqu1q231CZ`=Zl98E}b22OY6qwNb)0yeJ;LzZ}Kzw!*pG9+`s_Uis>4~rJyWr3o zB=u!w(uY9}CFZP%ifx;!Z7?wwnc;v!@c z9-GY(NTfoR+oW8aoA`=8Xv6c$ii)RCO3R)=wD9Kr2Qc+>%WFoP!|AY@^d^k!6B4&& z=kDEm(vN1HI+K6)Y(ehH6UPqk-L@$)E;<5@q?Zc8*6?^7ie+tX_+xK(S9eD<__+s< z%ASBBX?Xo^XdKnEE`rpX(F8FJqx1a2(bbO}K6K>7Dey@b^0G5C4(;E$B`F~xHZn3Y z)L(?4CDj4p($eG*;QFR|a7Zg*EBT0?m-nPv&3v93tl}VK+8^JQ}!G_hMY#m z@l$z)pz%i!?B2C&XG&ana8M8$Mu8SGqZ#}QGb10nTN+=~*1o6*gI8W!`n0y?4cglX znxw?jHB1(VC&JgnZ{2n9Xl5o@q|EFyh37Av0}u|dDLy((CJ~~lMk=a8)XLEa#DV_K z<`>{S>uRej${v@LR=jBcI5sl}IMnKLfy$vh1Y*C?n4~Q!JN9K{pE?DW4)_np7M$3> zH36SUFJ@E0cjNo8^lJ-agCE}Yv^Ui}tE{MeUQ<(5{7vQFukxy?saA|r{`tZTy zCsoh!65){rrOu$!XpI(!3!@-|7Z{n83PAMGQGmDSi!K)CLP&?6TvDU`_$-bL2 z9a|`>o&MU_+4dT#QtAD>|GxY1X>DT*gf$Z@5Fk4tu+Rgo7>zCP4T(u!EswqoS1nc>(trHH}3p+=W2dN+NQWj5Ku7-jJ=!65le+kml5Kc z;m`eV+Fn*aEq!?R*Z=w7|KI=bUuDf7CeYi6*5qb!n3&C|GuWuY!0?!a%{%sIWPx2O zx^(GM@%5Wm^AD$@Ck_NG88ix&&J|1ebgN=!?90dAHyusY<&PhsEYPq2`tAO+_JOG- zVrC~AI{-9bEOAiGrfq4v_8iR2Ig_7XPG5aXAY%A_=&+6K*Wz`QGji>=oRzh zU;2AGUbi4)|LFc7ckllG`yZt*y1&Y;Zup$|1R^wSi!YD_MkOOKaxC-2sk4_Z7hSxF z5Zk<)h#K{rew}D(afsx_ZAZS*T28 zY;<}vnyx4dkKMFm-=QN%k7s9}IDYEfWxzN&$AC?MZ$mf^i;FGs^AR#2Vp>~W1kSfL zHq_TXtE_xla_^4^$pavI@q9i? zc>}sliVE>%qjpY+Dg`XeqFI?7z~N1G_4CRnWhD`94_ii!yIk%+~7CX+?Sta`=V*wDv!9j_YeDoX)^ zS65e*JOsbg-uG=mt%u+g<;jdrI#(d^3yn?MoVx44v6BTCFJC!#>R9IK3s)`|X6;Xj z3iR`l@Y!shP>70JwQ9xEG$0(5|9W12@7G`Nl~+|&R#w%u_K&U@0AHYjC4<52Vu=I7 zVmA|QH3u?Ip1pee&eekB2h$Iq$jaCiFXK=tG$sdtphU=~Sd`OWdfOW7!OHzFvfetn z?lZ|26-!5S#7EMRj+mL5EekB$vSjAOPMl8C-7`J2?)(4VyY4{Wo^;5LnL!paGcz+Y zGxMwc{gj^d);lw^CUFw!J0Dc-s@k=yBscl(Z$JI?_;K0D(u=Cfy{QBP2NM9F6R}T*-3n5>Y&K|KJ${QQgJ>)+qT1bV#i+}a- zhaaDO%BgAZ?&%$xSlrm&+S=Mi4o_KAXk>v6J$)wXOjuB0$eGJ`zPfkqjIXV+fr*v1 zsh+wLPZkqj#dnvd$>6ouS8$2&goLr~(msZvm zC;MA#OY^eQQ$D|W^6Sq({rZ%wQ*LQp`_SAvn&fsi*EbI&G4j^P9M}F-XxJIR+go?< z-iV1nzRAJD5K_X@WWAMn7f73F4Sq$b6^d-e3!AAf%KDFd}CLQV^t2NDv8 z+Z!9ZVhY;Emez1t~v;4AUf z*f^j4jm7D){ULH$DNa2*7SHVVCR(vuPs$j86`@F_kaAvv?K zy0w3Fe0+3xcx+}FlQQ@^MubB>{7#Woz7T!>+_`h-W69T@jXF(nqPc+{VLV;>nR4Ps zdoUyIghz6K7(afB`yBW2?YsDNioY5<1}0`^rzRjsek8?{S5y~S(_IP*J{563HUM=& zioO=sp1>%D3qgMFwx$#-35145`s#AW+iS~n z``*1T5QBsV`+3-zk^dCx5^hpbR^mw>Y|M@H_4IT!RpzC9{`BGP%V$rYzj_}JYv0f{ zI)&=}!p82w!NH-pyaok{E*@ZyoR5jUboIu~8)WUzMFxAj+8AkTG3kE|w7*InZ_bYN zfrVC*pZ4kXlShvpJ$(51_2;zw>dxV*h2^CMOc?|{TtZ3~oD3Il|3GrdSMPlJ<-L3N zzPx=oik`fYjuts(HrET1mHT_Ut5f|He3hVM>Gk7ZfBEInlUJY8O6uGD#-=95M#g7X zccFa*Jff~=X7BEYHofy#?tJ}+2lww1An|o|v@sRwi3|*d>O2Vwfh46Q4%TM|$=(%a zrxIX%^Yquh|Lt$TyiCZeYV8|Cs(4{;ah-knV~|9RtsLEbLn5Ou5_GtI@4+|U+`n-) zz`=-((^k=-8>$E)s~u=Z_jk3{mSiS;Kt%WI$DQ3_TtrRVD=$D z5*Zrk?dr%Zo|d{Yqzqw52;X&)wJ*$~9sT(F`QzVyd-gUVyQHe2wY`(Vj-EAe7#&99USa!&;Y8Z2|d8wrSbmGmb!|foYVw{#a?lB zy0V(4j^4qMF;1U$6QY5#8WbqPFh`ufNN)c2?VHz-7z;tt-qhIG$j}h_%nHz2+ngO} zYpky+%}Xa6`uyqR$Io7W_?(hk(a_r2H+Z5fOBjzJCdCVubnro8=PzEqc#&Sy-P_kL zL*PPa{`%hCD`!L8t&N02J$<2;s*=1s5@_<0y9;CeT`e`mSxFQk zzkc@H!=Hct^~u}hqNbraR%nOb@4+F(3}P~{d5&Je5z!YfU%7hY&fU9r@7%r~6Ygsd zVuG5cHZ(eU??dgk`FW)5>G!4$IZS8C=&(F`ZW+3QA z2#qWqJ%i80T)uwe=B=AIZd|>3?eh6hKPOWibrrskl;yyUE++OFY= znYqQK`I*_}U2$0jOx(~A+4_W?yAXZu+=a{FT;IHSHjKuc<6IHJ+~1tEaTmpB}$UEvRg0>lvBf5|bhjI5Rc7Mm_}7Ta0bo{KM&rUc*A~ ze|7)n`CvCY8*57wJvE-BB*+GQx#P`+$#HVMgIx_JnV+$t&z?Pb{NzniUR7foRQV@Y z4kTqDKzbypsHtaQXkre+VB|%*p?B`w{o?Me%jZJ89BnXmN0Z>)-tK{zl$6-c(&S)w zduub&ZSS5xe)8<)oA+@E`}m?p`%SlASS6GFm?3w4~e*N>kohW)A!$ijdk|S=|E3~|{i$z!2mxOc3fnGQh;^*mPX{ZYca0MB$?d7?t z@yVH)*_rXK+Cp>!p$7Kh6Ph2h3M(5sk-jBszef%f8s`L#l-2dDJi{-OUB)Thx_bFy zbQHl+D`TOSGDKJ;#n@aq2t-i0SYMp}>D9BRFJ8U*5TBHqmY$hk-q1BTKDV|9j3X^A zBhS|qXlZB&L{=VjMZf*ipTB=_AHhvjc(AvVrLmrXFMY7JvA(vpzP^shI75T|T}|aV ziEp3%_UOrrx1SP{367T6we*foFHs;O%i}@nR$fIQGB!20Ci8su$`=p5`|iP)H!fW` z8y@2C>4btZpC@sElGWn;+{`3-rn;)iN^*D!AK$zrjF*z0k(FCiQQOqsKR(OU?d6qJ zG&BX6Wnk;*>P04>Y~C05?|pHL?9=H0PbXU&OG8Z_WTRJ?ut-{EZ#My*yv)?(r1-cG z@7{l8=TuhP+|k`Tval;5C(q5Oqg!ukY3tsK#bj5!w`;^*#QWp1RS zEP1fKzC1HFJUGxpZn>eZy1WEwr%#{aXhYM%Z!4*8?m`-KeP2p}uO>hnv8lDAvzw=1 z2;I?pU(=(%dLb&}bcnx)gO!Ph@n^O-*4NjTKt}3nuCJ{w`@I0lC?A=*s8|h-O~H*w z%HS&TRn)W$tX;hPPlc0bx_SSbZy(&gbS@&q-^bI%#zbF>&x3wAp{*4t_>c6pQDB#m zmX?z6@!jiJ?-DYLE30d2>sz{qCgxYxHg-@3LpY?WrfqER6L#VH?Ym!oNha_1bylNx zb+pCMAys)!fqs5racOyRcD%QtDE;&McgTh(CM71OWaJfBHKCK3Td1s}iV7d&G1Szx z&0J5#e);`B|MPd~%)WFfHtLkOqa`TkNHZVrGDYJ#)bGAXK7PfRjoJC7 zb*+TQW|6y=M3bhxil&y9Kv&#&a2^7>47X6fxQ(RhBQPbQ#GzA@cG4gig#?|$VO^pprtew3>qv_Q% z#^B{M!MBxvZJ~j=qhEORl{;TOc)-}AF{gc8T^#K!P4qPt#C9oMT|1Gw9qDZ*NS2SHed7xh*3p-j<}o^!p{cDq1&q-bufW$+7FFDqQy_9GJnF)gt5=ZEITsyGv7L`A zSaWC*JltK!h{mD8K?+3B1eTJTnoK`3J0~wUCp#y}f$ zm1CpNMn*=22Kj;GB@!^Q=<34k%+x43y4KcaaJ&-ZKE)@eXJ+LT6ql8imX_Bb5?k8b zrvOY@Rh7?I)uhnQ&CBmp)TKLLe?vAjIy~6l$IHvx!`a3}sLAI^9`9|fFU`%&%*~AT zHdT}s7Z*{y`1bX?xRjitvhoUib%JCQ3#;45QgV#d$XC%6nmYN1pNqM4<@(Lrw{KiN z9~S8Anb~u!00fSx5HKhf4IiR1u zBd3&=Us6$7UDwn(2+8w}eQ{ZNc{zxPDrp+nfP+Y${;LOH-@ki3CNddA2=&dJ0;BKz;ahZsM1)5~h6VX~IHBEu{HHj$8SCq-OVdML zt!-UhZM9&{y?CFTS6*9NQBqh`R^8YEG8!l!WSbNe2|4H*S=iV+fzx{b+i&k(jS2}2 z3JDD*E9yXS3`ZEb04u)Vgtw4$n_C?oFmOQdqDYig>>%PQ;I24*(F5r(ui z+DUoph7LZbPM-=neeT+qUw?HgCfwi4)7#h2$IS*Vd3Swz2@`-Qz+9gnZY|GFNzKYH z$WH$F7M041`sSAArsmFp@wt_)BS~7OjHINLw5+0rp`A~7?3JsRW1?fP-MV?@Jcuby zpiWUhFDE0uzqzu!y0*GFGdbGdUR#v*>Ft|O=>^64>4_);RyK6>4GvGtt!(b@i%Elu zhv^XNI;M`kNV8wR5*>+DCeluXN6d}&G?m!^tL^or1wtgF{XLy6wXn>I@dQJ2atSe$ z6{&0L=o5rRCKveUpnDy9Y<&GCcC(M~4zBA}dEXFJD6U(N}KX zzIo}~nebDAe!kvrcBVoNB_1m;EG^KTKHgs*YA!Fx%gfEqNG0=>lwAxnQe9Jr)&Q1l zl#*9cR+5*I5R>8?I{Jl1L`8$od-vwWNJ0)?9xjfy<|6cOD9DQKtuHPtE#dGNN874c zClo5b3CXP6yS^Ez=Ee1`t(`-}b;^8I6~2Oks>mTQ`qurg35Z_1Nbx7Czs?R;ASKC5 zL-dKT(;^#NF+JW>o0sqg5lC_dS>~eB%6f8iJ8)%mIM(c%7%+WgNipFV#Bf*W&m3^&aZ43|<+ zV#SC)-tO&)$hO-BPd*Ob#bya!O6==i68IpY_1Y$URa!;=&38p&df+pOG_hfmqFjX z`eZ|K?ZK0!{lw4}4Q&H!_du4szQ`5SL+F@X?aA7!!z=CYLco4udSYy3c&N9nmV(7J zG{9wNWnxFccIh3S1a@H4A9$#J3q{7}cAlZpDAS&cjEIN~XPw!0R%QkSMZrnh+1S|H zJQ-HkTw9u*{24kaMJ2^WMa5+7J250_8nY*kBxE7yuLx}ub6fYIsEgNbT)!NBCOkBR z^{XM@rl+H>i0Rq8jCqZTWo=D$l||X93G`FbbBoHz)>qe%tLq=0m}TEyOk7FKH}I6ct*$>kl|PxNTAL1k=?A|Oe0ENCRLWSj!M zT%8^5EDR8WLDB|U-hgdi#3X>dNv!l1{>{FDb9CYiw=r=pC8g+CL=JC?!jg9h-wEGPUzO zb?y@V%&Qk;&Yw9QE|Dij&vp*peV*MMa&BrY9O373^VeZir$4UlDnGa$SdeTg&8FzBI89kaRfz{} zjs3mtmC3&L<_5w_1=%SG=i?ZwwX$_!a(;1P;e?JRL9U+1*EM%^_ww-z2<8Y`^f)6= z`MKGei1aWj1e31iBo4RNR#sP+ruv#HOA2zb&2hPG$u$wo!B~_LvUhc*`8k<%Lm5RpF*Uom zhQ9sG(%L3w#H_CGh@t9lY+-Hd;Nl$|7I}s-vMwM);N=eLvA#f6NdYKGRZ;qAV}5+F zyM^pheg?v?_|I_!Zgb0On_9d2Mu>LD!H>p;&okcC@#Zu6#DdhfvFS_W=rCuUtOSUXyxn^gs~}6?P6kQ{`{8*cIRTe|ISRg5KDhu{r{htLZ73fqr=040|xXDG1P?1Yl_o7lavrgX8mN+$;qe_Oc6#K zlQ=#S&@d6Fe+Lte4h{~v&k^^*kEK7~+d~nHefIY7TMiEY@lWyBr~|T}$bKYJd+hJo z2Y)Gz5B(MXIh%eWfseS@$+y8z!mngYWb0+$1;6HyEs2d~VXHk^KR)z`Pkuih3D&o_ z|NHW}^&g)6x5vjPzmxmf>`yVr1zAPR9FyXH9<5Y{;wlAso~$%BM}jT$_g~8WcI@@h z?}KD8Ltt-*kxmXMx;)uP_C5ab%P`FmqkgdG+>$Ysjs1FY7?2PMoNZ<7>PV5MK&@rvWRZvFjbC>H2#ng@BVv7>05D|MJ9h2-LhCI zcl=_eX7B>)C8qt!JI9u8dYh%Ku@MM@V!Vdp_PTYUa9UIsZ>PX!AvsKX&cF^>EbTYz7^7m;!>}18*39=KySX8!?SfcnbJ2xB(&XBf; zzQZxYKzu%%W5;6?;uMut)z#J2_zH5g=j_lWxt~JkMj-`;ZlY0>ez7DbmZRf?&D_G; zaD5Kg>S*6V0NsV$*+0Gkds8^JlW%^szlDyG`NidR`Z|Z)>*Lmba(qaAv*h>s8tu^P z8gpJ!*iW{t+?SJO+l#S|bjIlR#J12M(Z3^&D{*{s#s|RKjQm7b7k^5JyTcBWd*Q4T z4sio{-d*l~OP;(+@`C8##isw`;-bnTg+<74zlNKpbc}x$v)wS=3^9wiBp#q5wEox| zlw`BXRH2P4CBYQl>AGO8>}QDmKIlt~O_7t3;jtIMeU#V(k)^LMkGDeC7w`n%fgSwZG7rKG8}k_K<eTBJ5b}M z@3OahGH!DUGxEl#W@hIA-0!=dvhH%umf>9Wj1>fL#CMu8JlJ% zDXXL@G%z+bF%+utSoh2x2gVg-#dnrx#xW-l5MZ5EJurQ?zmJU}o#mYPiE}w*{*qZg zF=hzGFx48e{;G;H5^PI3R+>6COq;b9Q;a~{uB@!Abh1(MxbC>Cit_B4g5^sQwhEhL z$VPP^OL2f6Rz?yg_n6M>aF=5Bq5gr9sreO19ug&qZ3={|M> zB+e6DaD?f2@E=Obv=oU$6rq*~lcFI`UV+_ZNy5-C~Iow>Donn*{jMiP4VWUikMn<3pKQ%QmI@r_RSX)!u za022s_Q>!ZAN@Y$jrJ2(nKk0G@wODLNgZLWix|`?E~})5S@iS~3Wd75x;kuc`4}Hh zakQSkNMBzMbM}Ds6_qjdNXWhf>di1KaP>0uqqVpQ<9MH33Pdv}$A;N7%Ne?>^xPqf zGuYW!SzK6DR@*)}xk!fl5aZ$(A!xS8=C^T=6M%qhk(>hFll1Wpv}!O{bNg6EnI-X! z3`F{9UeLi(HRz?_xvL|pu(7qaFxJ!2(!ge8@w8A46*f2!wOPzdRpOJ+QQ$F`asW#C z6nZ|ISgvDkae0Npt?_}*rs~q-qT;gJ)}E2cnK^s|m@P65WGXh{5NPKZc^|WPSpzkJ z_Cu7n$bu{^t?x-FXhOx#$<@uxl>%>LJxzMvC=}@!S~$4-__EMhUt3d6RUI2j|3gtU zT?=}!a9Hqjv|tQwIASCfGNNnq6NBAt&CRVy>`zS2%+5@WQ-sjbTwhz)(AqsP!sb%W zVq)YW;R6}5o#n})zP^D`bR9}6sA<)HX3O)E6R<Q{$-ml;me;S&qeFwEQ;S<-@@f={npxS{+B-PdS(_Q^(%!M#C^9rLHM6j!0N=>a z(8!pZ)J<`@vb+q^R{!vRuz<2`w)Q%bDl4li^vwG^8mr68$||etTY84Z=rxT{+)%`B|#NhzM(c^M|bx`vtO6zCkH@kU)}YU|?Z z-oUo;-v4P0I(Adn<+Rnkr*~!7q#>(8()YMpnK`JoIaI8EaGz?)BhrK30c(l)P zT(`G37AFVV>nlo%ODpS|y9UQ5rzX&dURhF9SXfw8QdU+`)6g+6HiO}_2Ta&{gPU`@ zu(Ek54MU@)t|ZHHUXbV}fJaC~k}Q|9hS12u#?HZ!Rz=IQvv+iHhmwGclcT+@jkUFn zE&Y*`lf9L(P+f_&UJ(dknM1mi+mMun9o*YyV|r`kxceOXySC!Es^YS3b3fVvA4}iHDe4+oPZ@jmEEG@61 z!A&-nlZI3)AU#1P;3GOmCQWbW=;Gq+XlG+XVY!EofAHzZsHmujQ~n+fmZnB@6L3k* zX`wopGp`8W!H^rd#LaC&M7!w3Tg8Q1U!EE6Ld#@HX?b;BLnC+y#Ra)Jx%mb8`FXjy zxjA_y)y*jHuM)bX|8NukB^&ii(Far8;;X1(9506^6k$~4gEoH zdlZ_(VlT$VM4t%@g3PRwi>nJ#yM}t&ni_1_I_w8JqQ@p?Fxz6E%=g0F9E5Yk#P&BA zMthoTt12q0>zdnXKRcRhN(*yyvNJQ%($ceX3(6Zh2FW}Tk|uz?0pZfA$;p{TZlpK) zaCvSwfrq6q=$V#GKucXy2a*pi9^SrwzFr=lUcP}L;ZZTD+<$fV+PPCc&bIU|T-{L8 zFcfO=6#>TNq{Q|%SY3Q_dY)VlW}o-=4iYw6Tw0tR8|Z3lZfa_7X>Mt4X{xWSD#^>r z$jHts#3q-Ol#X;JIU4Pi$rv)7S?p| zZk}FVUY=flA>rp@uR@gP{_RUqAwF)-F77^oArL;XF~x8)4%$hJb2D%W$bqspJlNOA z3K`4vdtvVz>G718m6jA27tz(s$;u?lR8&%0Mo+(}tcDo_c-Tc+>N0&(v_r5!1|gU% zhX4uF?H!+S&p01J)H0!EA~E6q(tMoSnZW6Uhc)H~9-`}zC( z`FMGH2ZWuweDm(T`(J&{+Tc$I`g;5L1_Xx$`MKGdi3Do!>L*Eo-ED5#FEs9k2KpH& zURhmUm>TMAs-f*HDWOxYs;Vq2%F9B}TYO?NEi*YeJ+HjJjlR_oaB5FaS4UfGNB`Ii zqy^@2Q6*&Q_@%`l7Q2OcTgqwzJvw(2a~mhGfRNCz(BMEnzrfI_i`Q>`asTUY{_xF% z`**HfI2#!jN>&PO!Kl6bKA`>(z;j~>F??oVXk?g{+ehCLHwb8Z>rhfo5&l^MzXw4J(4@%3 z+}gp_C-`*4naGGxT4>N|j`#NcAOHCMw-4@KzZ@GKeJ<)uL@>C?26{RIHo6{&T3+g4 zgMyFYAp)K#44{i`eG@vDQ=|Qz&2{96ic88X%IKaJq2n(pKJL>8eBzRzXJ1uaQ%?vB zi=`lCaG0R$C_S&mHO!tzQ1p9vstDAn3kJHg2fd#&QBh~YPXz~`j*7W@``&|ZzyJQb zZ@;;J_tuSTS1(_TiH>9qSeRCgh(rk*fa;1;d#kgf{oS2i-F?FoGlVfHiU;Xva-<&} zDzwn@$|^eg@{)p_3_AO`5AWZSB1`Lp4tLQaL9jk$8`%dftE@Zg(ozP|s(?VC5RUx_^z z9^htUf??GHf(y{^(GltrtUp+t9qH@t?ipY*)p%fAYsmEvut#4G|5;mCTU}AY?dYeE zj4YIro|OaoKu&&f1-jpQ`iF+uxeSfaj-p1bgc;Ppx#;yHV61IuY476c8x$IG_Cjnd zT2IcOJAdKg6?6rDLA(0hcYmO@-n?`!)X#(V(@>9KwI&(}$Vcc41uC*f8}nmimIlUV zS9T6DER?J_veW(D?JW(p)m7Eiwe<}R_0{D?xf#iyKhk!-dGr2Ld~!-MBa7t}Rn#`N zw$q7pcXf7l^$wA@UqOwUqH>CyxDQ`dLmT^vbB{O=r6klWW1^XcCwiprJ@~`7-+lv| zAHz66=0G{ha3Fm@A#*!AUw+3E4&{+^Du7IK}n1eBYa z8mdck(@>yz4TUXQ>F4;*A3+pM%`U1!NvWf~t%bqt5l|cH;8h`k$tUxI^oNR;p0S0k z6W4b^>%4rGZsVnkv6rrZk^B`claBt&JB*ec=;P*SLts=$Q58ji4L%Tq%1G<% z?jiF)al_mc`6yVNmgc6$hK9z*#@e#H^!WF$7=4)*`tHLA^cuW=`za}_sIs=9zK%Y% zkoq2&T-rbnIg2#akw@Tcy*@4|YIYYdU!l+COCUX6x_a}@m-p_|=Zo7nz^j7li?64P zBYAp)sUjAiDuS|g0GPLfoKSMXj$K;%1nAwWT%1TU|>Kk9&+!vFSqnAn{CSfyZhp21mqWjqm?W)mq zE71~mF_v5AeR@e>-@AJgmHSg?5tTsirt9@%{6M zKm7GS|NYncYplTAHRi^K8W~UZXD!?lO+SAnsVmJ%{`l(2&;RxB|NDRb&;Rqc zpP#&b_nubz?OpvNAiKm5o4{$Ky=-~KPHlOBEC z`&UnX{rT4?ZxXUfzz*(%U1I5Ac9$5>2?-A^eN$UE-{8|w4X5kp?&-%G!|px!{-6Hx zFaP>4e|m7|Vnl$uqpg*NDcFTJ4lZu)?(VM6bnyDDd0=a6Ph3IEz{0_WFsd2EaKs7j zFF{DIudBVSt-ZaIj-IY)TVqXGUh1cp4}bX2fBQfG_V0iF;g`oR-?835dQUIt{{VJ$T24t#Yad1!0_^XxDi~B% zk?e%P2lfcC&d<-++tbq z-+%n&;cxWTpFV&2=0hCR*z*bs$%D2KES;E~U50QNa?vLlUJY$MLsK&gD=QlU^zL31 zdiVtdaq(o2wH=(CAItU&q)V zB$ukeAaA5ti98ee&b)N+tDn7i{r3Gk$Pm1I{XRaupt7Nz%xq6*Yg2t45|N|R3#-4g zkyI#%6KLz`3iU)rrWRHd5>xa+Au&|BJzN}V-GLFX{8uiX5BGPoGu6}9Lhq)?*xc6H z(?2*Q0Ieumic(_71a4Tu!k%m^sA0NlJc+%vxv@U_z3_+ighLt{o0^&$>ne*N3-k8P zn>TbZ-!a-mdOjNTddMd9b+-8Plxz>I@{aW*pbtRLA?-tHi96CEv6R=g*rMykty(ha7duHvz37sMNAMJ($+UJ zH8(dmGcnZH(d5fvw&OSg&jxOd%@lz)QtVj{E_8B2d>n8Sfsn+s{PNmn4%x$awba*C z*EF(E@wO%)*k+&6A?J0CM8?))p34^t{}?{J`*Jv{`pY8%tmi z9UTZ+9p=4GJM0sz~3!h=2>dZf|cdcY5_EXb&a;rJQ3#rqnUR(P#r=%z{E{kY8!s#^(6j4otS&Dt ztEy`xa7Ur*^bC_X+1x#n$C=O*{hDT4!fF3j-a2 zw$Rwhf!68eP&L@u(nt`f0}y>}b8CHRda$jggm#gZQd5suq_m{0rln_W zjyyX4@lYr2Xkk%FMSWWj1KTO2HMR9jtR0-38S9jcmANfDdA6Na zmX_A`Zhoi2&w!T8rZZSt&||Z;gERB>^>Vc{)lrh%U74L29Yu+5b`FYPLlk;Y=+i$k z#fHIdE>HHi)lqO)QBy}DQ+<71O*J9TmhR!H#ntuo)%l5j_X7#N$J93SfM>FR86ZlsNdLF;5($zy3Ak5!E2 zP`{EVitBEwIIhWL3p+ge#!K^>gdiLYaAqN9w0%GeMN9@#k5GT1oj z>8a`2dHBKY?MpgvK^*zCj@r3fm)DqeK4N9{3|TB=mIH=~HNJu(P3?LB7D# z%hQ$OWuc19!3IT|cu34lO|CE?n zRNabfBX2D2z7-9 zX1EC6{)GF&!a_sP9cORvz$y@A5$r7u(cZF)vi9T@?cM^tb~?d9HVG8F ziOKiTO|^CNgSAA=PDY&EI#c2E@CyzN3#SbY1dG(pj?UfL*^zvbg)w@V(bohe7RWQr zP%wv!2{!KL&H*yJ>&x^l#>YlcmxId0)IeKxej1aj`}jF2v#`9jsim!>lb-qDFdBhJ zhKHcF26o2|BZ?tw%U9teK}H{303&M`pTH2>&;UO#7h7_r<<$HFx;p57fars+C6pUke-%pCUQzY-`U}I%%Yj4kVEg=Wa$Wka`q4qUDj{@;JN^5(JhP1i1va+;@ zfs}NCAyr5YKN(rP_*6Cls)pby;lQ?@;hE))ZSJN_O@cB*Fpol8Il7%HY@Lv8)zC4r zbR_5&7#tkv=jlRM6gY_xva2^m&bXjK^v85T$;XpRrFZY-LTJiV4*@(fVJoYcU%Q0n znKkaSy0)>!RSVfX7}!;$NovcBa?(?h5)+fsvhtwvTUCXuNJIPZ{Kmf6@&48lnFq`| znMI!MP(oG#jfH$#DEgPkgFtcZ_aO$m$bC8V^}(vLMXU-M_Qu|eaQEdxpzgI zps7$rmZHsNdf{v95JlYCLR0JF0tTM#9it(X^^Y!0qc@N2d1Yx~UQSj9#Jf^6atexy zOXyQx-OxTXv$}hDxVNz|If8UG7zj%kkHb^Zz>pZ8tgO5W;}MwCE;+lwgwsR8hX9;~ zxuva(cR)x8ZL=3SdD>1}J5)lg=_@$Fd0FbKO7E@FHC$Llt>y4wcVmTY5gi=#Hl;u- z5cd_VU0VySTcc^?9k8x9hZrLb`(B~SV1uh%KIOfPGe4CX;n=fp{&jU zG8K!+q>c^`4H4p>n3`MNli<;5Q}{z$D$irIC3PK&fmxx>hawSFk8P~1EKJc3&TKp6 z`3X-ERzfUqYHVZ*l<(?bE>srZTErX?zz$CFMbi8L5e%KfZhW<{i3xE9)BSK!BmQ1h&S^kga?Td;Om256ekMy=eOER6#J3cWfF(KhIltklFa!RUdYHHx# z+k1xyCX>}bFEqNO=Fz{QrXw;oB~&gaegI|`L1-OgYiC+#fImpm<|f7_h$sns&}(uB zy8xvzLinDDob0R#q1qwkNO6mr%--tU>Hgv7-7PaodCCBKC3it;khH&6qg1zm56l^2(m=z>ZsqHjfCm%NJD!QS3J z@{eTgoxKBsf|;z1k;s6+9+(5p#jo#)7YjyrUF| zh1)ChvlQ%XA4)L^n|Y*ln9fl0=Z}!zreK-Y`R)T5(t_e*n9|1f-Vx60!WV(Z3aS^G zP&FMr^bpCSgn4iz!Bf#Sck~Ph31VQx0PBQ|EA3@K5WRSRUr%yLuFOy|59{G%V`d~` zQN9-XJodLY*4Ng-uK@#8k`8-@wg;LDhg&PNBR#DRHB}WQc^T{tp|jxq+qZAf+@Hva z7`1ky`hmKa6v!x&M`X}e5Y+Qj1VTNbKve<7#qHfASv7r27aw1`pH>7xF{T*<3jF*7 z1A{_BXq{dZin@9F1cpL?Gd$SG*~(Z?fEIKkL-d6oY*CoBy1otkr~oy!b#hS)%d4AP zWUHny7=b`?X+c&h<~JlJB_+~^vIh4Li5UfzC@fNVJhK9&d{ETn!5UgvSl-x|praP* zX{#y8N>;p*(fB+sH_FUCL|*uqd(psh!d zp^1SuAHz{u69=6YA9Ji7z!~78x`M8j)TkSx@4lbA_GCw-tLYzun0=Y z$fu{Jr)OrS#=m>|%MXA1;g?6x-$6pRrm?kWXnJ)|3QS2ueQh;)@m+|&tZ(hpmDJSH z(NdL{JlxrUN}QsaK+n*`6ipT)Lsk$Y{|*&8Ovqw`@!WkwBG5HL=kDv_;t20#X$C40 zUtS6{V*2cH3`J1tkQ0X(8FmxNyvp*DLe?Iio0pUR8M)^F`0L+)efs8OQbt~BO>@uK z!X`BBX+QOKH53Vs;d}2wQkJi#uBs$Q>jVQ_T$XW2L4G!?} zaCdX}@(&@P7kTDnk3A4kS(=FG%PR4tIXXLjHcCq%mT#^u&Y^v*x3i_bs-m1er6_+F z6y#;6eSZDqmmmJ?ho2rkeTnK(Lh!hjR2r6EAUmp#$!?&AZ^Pi zs-Vq|j?)N2KekS8UVee6!XnQ^h7nfwLFoahG6JP%A|pe`u(XUTdz0%-{7CEk@$WzU`18ZZ&t82@EvV@jSs(`l8D?l3 zVp+!=FBn;SB_#!}7zoz)p}3rqin=!2QHnW@&8_U6v4vrn7XuK@iX;T6DG&Rcb`t6Zm|&fqkrMyz`NJRo_SgUW z!_U7xe;c1(Slcl)yKzLvt|bt#G#d|0Vb)Ecpup;CYy#&N=o(UTm>Z%6_9cCU2By~b z1nmM5d?4RQaM=ynN3>yGzI5R%r!tQAJLEwzy%=R05SJ-Ro?k*=7#cB$$#zzkmlQD= z2gpSGnVuZ~;nh=G=->YS^W&Evk|3pV6!ROi&MuxL2DH$HWYTN2 z&Mmy8p|0jSkl9K~X*03RyqwIm?MHo3aGc?CtBkG*!|#&u}fLbAcZ z*4ok>JF3B#mp&vnG&b1ZKQKHoyNF)2c__^@8eT~;8(Dy3XUSWp+4ajWzr8>=c3x?9 zGZIgmhj=w=>KI@uFL$y~aGGg9#SR$PpgtNyY~#)&(VXd6mMZ$&vm}PzW&dg&q<9uP_(m z2I4<5fAr>KBD%XV8Dkhh@u38{bS-Ud%vq5~0*8&8;pn_*KtW3b7`Xt?;8j9RUu0y) z7RvB5Ay7JX5C71!m#*Eq`^6m$xH=Oa8pJ_T^q|otRg&CWof#eM>+NN|i!&4%j}G;* z(nd`M-g+T@@^ir+`5XtZ41tiW-29@F%7%`?NoeFBgT$nU2?>gfEQ0YU%8cL7wU2s-= z!3Jm4|H1yge){xwb+k4&RF@Uy=jP<(O!N#K4BQrZMzo4KHeb`+P1cKw0l9g9t zL=mJH8R3WCy8@QXN2(D-a4wsNJApbQl#`52O-zi907sFo^Y9G{i((p-H*egyaqaTO z3+KW^eBGVwaPkKFx*+lZ0YU!0LWyu}sIRBH3x!!!y8F7jJKGv-$_uhH($dn>GtyHM z*UTCdX#wL7;}i^gS0em0JuOD zIq4f17$E1;Y=8x-V!M7Om!Dxw%r||VKgGD>BJ>1zh!l?`a$#A@IbfBrwtWIxc$fO(g)|Y0+hx)qOn(AsQS?mMRmhPtV?1Z<^pD@j{ z6igh6ZsMEAzx?{-<;RrV;tED$FDa|6ZAAEveD3-dOZKsr)gy5XZK9PDFv51JB6%ZZ z1#fFI>daYdX)rJVaZK2L<{HRX;cryv-_|o`*ThIqhv}9$y8HOkJ)jWZ+s)ogs49C% zq3}?DZ+A~Wx_?GSM_G5x%vfJbMNZPYXOACKw2_ftQjS7hIX6oSnVY3mmQLGYt)oZc zEJ4rucyzdC9|64>Lqh}9k*sWN$;6nFEkt7j-Vd0$3=O~&U_Z%Epi*jLgn)yuq9HW4 zbf8Go7g-8FivEoR%8Y_J(9_w;D43|(fayIB5reXPHoH46IjgX=qLOx$R$5Whh^eLv zjDi8m8NK&|V+o|`>6M=>6ut3K$RCrXH2}(C`k5w0O(GmOjI;n6;q)vB9-)cC*4k80 zLkV5a=#Ro_AT1*YD@Ku)00VQtftADD4iV151+{N`ia||9T1paI3zI`VUERGy6R0CB z&Q1*XbzzVUyl8np4R52{=9O=v1pb%+dEYjvn z?XJv>4G$0!om)b;+W24(g~v7YsjY7yAJp7fi^6tMX=PngTW9a!$mHA#=QI!YwxJNg z`X)JRs0?j6V>7gLP}r^~WYUt>w)QB&!0wpQ9aWMMJHV*RWenGvU0B^Ymc>H#buc~v zy^hK%8Ulo==9XkEObK0yKzh(pmL@Yww{moBa&~TZYHY9Xjy_yuMV1QB2ix5)`OrX!@7S5I3Fk@Lsw6AEzXAO_vfBfg;=3H_Gtgz4+5@U*Lum&M_O>D1iR$k;EfoxR*T!C^yhJerMBiU5e`THjQ(^i8eEX3~c0 zz?afnMz-F{8j8dQLc)4#DvC14+e?%54m!Jf2ZqTDW6Crf6yO0YfCc~;;(k3050b~# zSJgn`Qj;$yw!Mr&rW7PqRd7vJ)m1edb*#CSecB<`!?Een@y=Tio;C}bU{TXc#P9Gw=iecUJH&>UTS}B9@w|Nliu&#>h3XnK&qG^j@BXUDESId zgf;jIfZB9Y0)6Dx3E}UpOb>N7)mBl=$(qti%gVuF2UC@hQfGHBN{16O3+PQ}J;_}A zt+*uFPWthv$6*eyk)^$hyE{k0pml*bCKMS`U?yT$O$%T}8rf@tYTaaK*qF0pDe@F# ze*vP&pE3)_fq!QGWo700S_Wp8WTLbgoqZgtGB8DXc?HPekTIg|B%DMCG&X@2cGe_! zASSIq2Sw+^ItjrK<2oYvn&kHET)cd}JzdDCm>TMn1t-TOq6Z;BhcrGw`5ec0Y#4pn zXmOKdxK*eRofrIDnykJf5^+aQmmdPUCKeWEhB~Tr_7I$gzF{_|J!R!#23f#&>Sx!QI zv!bSzaW z6hAyTz%}8qJQPN2EzeI)j8DugZD1BSpKT&`R7;Zr8FjE^v{*+L#IDHf@%R*5Q^2gt znnR}gTdIq)lH(v}`za}d6FO^WQ{!e&5FO+zcxu}EhKBkA6&}Ou1davTIAc&4$0I%*0t65hXh@%+WBcX6p0a|H|EJ1{aai{V5})q)LCGBGg} z(oZ1s41Od~=oXU$V6ESr zD1nL+6MevlGI~!Kw<>u|zgC*ylmYFi8q|LVno6@1KfHSO_{p;uuRkWG6I2F)v3GEk z0{3mEwt%L4G8D!}w4t)l_K*R3Fg7zIYec_BlW_zg2d0O|ps%Z`NEO$wwP zee?cvDr5tj+sPNrl51xz*W@&`bo2-f>vLC!UXq%Yu7NQ@1|7zpB?G7jL(SHyhyBDb zgwEEMmX7|(WqRL0p=j^gXG#VV(lYeK_$>C0co5xI5K##>U^G*7)9X<?l)t+uFwgp=VqN;8veqdky42w6ulX*0J~;%NB9# zq<;m+w!4Hjz2@fDuEEJgPSg&K%VJ{8?_w+2(_u7F4VF^l1Y;y+mFPAAoD$0AA#Nb2 z#w7M9`de$Dm6?>3`1unEEpbVi1?BY^3B0*40opI^7H*-C;S7f1bQstLmm`89?;QJQ<9T7*j$_(>g_`CFa(LnV}`RpfT91RV3d|fQ7h~D(bC|QC|HZH7+w!< ztn%-Lb6xVEWbEfq<|Jc}Cb~3eZNGgVmy%Q3*f)jqVlaVR47`Pb5m<_D&NdVPGsOlq z#Jg~G2-oqipyh}F1f)cc4|dn)CJ5`2x9l6HuY4%2L{6LRCHHcoIWmv=tx&56v@o@_b#(P$v6h2{J|YS**wBklfJBCTDZ2IO{8)AoF{ZqX z`2O0=P*+Q1V@nsRWzs4-hNfm_W?bZ~fpf>cVwv=ibsD;PA4y z0cj3pWNMM4;VbbZc2@y)>Kj|TN9H!gwwgrmxz{;`|&a0~eN7*0=VIOfT{_|?NGe1y1sKLDUX(MbtH#0)R~A5!GoPuy6nB6g`+F64s37MM_X3a*f}(_ zb|9moO(@OG!ot!L+(>&{xNv&WY|qfiJferTFvy>qJ+FCb*%yuBt@48nx3trfh<_9l+)*^J|7;Za#t zQ_namM{49ADV8uZ2Q}Z+1c!zmd=xg1nRpco@sN9hl!LUArk;_BiIJYB!ZAUdf!?Q96~41N zKf!DVgLvNi~u8;bIzf2Qmb37U`dv| zW6$h*f8W1hAMbj`p7A`kB#&%`4$N%k2qF+U=bUo}_I%#DUxb!s_F8R8Es|Zhx9Zdh zZ^+9lD6MU^B32i!9ZfEuRY{21=!w90YI3-*yGwbrT6y*^W`eor+yNc4JfyZ73CoV| zUg?0~(`6xY%5twHT2UG7qErW7)Kq_1FoDo84-sj>(?0w%yv6%jXGy7joyrP`)YY~1 zjg5_XHvq@%1XUGAQlpdUdKl!|;@_j%+To>sV;V_IzzAjDWw=E4NhP+Pb-MO`uw!#F1D=bF)yX|MOm+3DdFsW-X2%vMlY_b1%KYiQEipr|$8py@U8B4|caVi%Z_vBsk*W@W=>b@3xkf zwl)-?kMXEMLYHV%#yg04ROnPdAXb(+}^tB6srdppi`N;6-7zodS zfnikJ{HE~o4qP0S1cK<~X=fUck`Ns(RYCh7(L!`uj*#7G2(ExgZINYqY}md|H*z=X z9xMv5zcVx-047Rf9Zd}lE#0Fti^6T85lceR{2BBq!39VfZisSp+Rtx#%+_gJx(E3U z1n=n3joH81FBqSa$eq6>ZHtz~tl7Bp(8)7rPaiwDXWPb>p73 zX`IPqeS>?W<0KUJi@;BejEuvt#L77|WN~=(%Jgmfj-5Vt9?sgX&1(~ug$DXbTMN`h zM{8SW?CuSc>L(?8?;5J5hcpbG-(pXpD)Hyh1<%Sftc%8_02S5R|+EMywR{Jcq;61Jo;y*Ro+f<(a^2O`?Qp%4> z|G>aNiA1t5(0guiPpfTVv|fh>+3QY-2%x?s_Xb5Ehph{OV7Zkp$!VLm?>PXV<>ax0 zm>}9^qyyOtYlfM2WxWrP!nGF(gkq7-e^?~Ftc)!i*egN)(z*m6+Fnu?)^*Sx zV9L|Ut#5;lVXvg89rKK;nueCneg%&)&V@xKKb89{Q`To}M;nKM z!M;6MHLjAI#{^jIc25GOth%vtXbL0}<%l;R3&&!JS>BfIS@1*F#93a6Y%ESS4W-$S z?%lrg;3;xAol=DMpRw@WA%hH%Pe@P{IW?z|QLWS7r#gJHc$W61?Eyx3%of*Y?zZ%G z-`+h^M%uPHZFQ{F{YKa_&5aFpwKdh%wf0jEjM<0Bx>KzuTWnNxY`kq5Sna#_?%kD< zMxHJm*@?l9y5d)l?%uj}=fU&*3RR2&fp(>%$Xt~B;>km_GMF$`$mi2;2nF62u-1c8 z2n`IdbZh|O%&A37W0F#(IU}^{J{VOQ8&VQ!?o1+V-;UH`a|=|IR@+7sa>-q_(pR6z zIuwr6?mgb{X3dI-5OhUHdRuFXUt8L2Df6?u^2VOAnSh{xsgdrc%A(xtmzGg62zzF` zm+Z0~eEzT(1_(P{j7GS(VUD+)lTRkdv@>Mvv=RVJ=+}})PHKYrx}@f^rjwID%#XLHtjbvIo#b? z0mSk7^XE^WI-0Gm6XLY&NS)+ofKR12NJ^@9XD?bBw;II+kjgAl{4{#{aZzCbn~6odh|TEw4tLP z;ki!rOKp`eVFN#X>S+x&$meokY&sw)RD^k_^Ggz-#sN*DG~5cEWEbEYL?%*JYTDl4 z0T!K~w0}@Iz^MQs^i?t^5+k-kXg+4^1U0;WpRHB9J3cC8%C=|Oo7XR&J(aFRNfj(0 zPGrfOoR`m@J)=UQp-&IL)M?qHlg=DV$RNZkk+k(BIGJXz-wcp)Bc$J5_|$F056Ft) zv4O5uEJ6{C>(?C{jB;Zv^YEAzNy(tKcI`WS3{=_iV@D3|%i6h3EzH!U<)K#Es3*=U zv+0A2j)db~PWB7F_p4Xp&Ax=R@}{W5&U`;mz(wIvR&=Y%owluMH_;OHwX9-g7PeaT zHR6J{PP;P0Kn)M{K=47R$N_4V&x49tx-2FEm!2JHrX6*fX_mY|63X1VEpuZ^+>)7o zE+bnB>=~L6u>IVSiT}vEv<<3p&dXOh1?3IMcmW<-91#UNAa-f+6c*(4p)J5r46ROz zi)N_3dfmn?+qQ4poSsY&oS7uZVzy$hv=5XXK*-1_auB5aQl+2;l)zr-$&)8oCs^@K zn>Vjto47P!xTPYW5ByB)vd{nc!MFGB-KT*MPf_zGTe^6OIfa#t9U`IAf3zYE)tykk zal1?{bVkHTWiW9?wB6K;=nPd)AkW#O@?*^CVjTFDd|os_aJbxp!@0$xDS;>Z%Djl)Mo$2z=kmu>E~DQlAAq885#wpJAaynKMB$gAg% z?tJ|Rz&Kys1d8*fun>J0;dY+kT~Xg|-waMaS)*Oeam&MlK%MsVkNStNSY_pJLbPN8 z?MDfZrmMepZE{k4%+f_uBUHm9N&%(KOiw*VmRyW?*QQF0F3aNk0ermAp26ac5t?rQ zu)y)|y3#zm-yb}%H}+JRaIovYqvM!YP*hZqm*beKFJI*fIy8cTJL0gBDi^Gr81L_D z@8}y347ZqVn=>+;E}rcT*Yss(922>i^CnGNBvdIpg2JK_l98PhGGc9N+QtmK)a@by z=6>!X=9{u@UltK=ktKvavkZS8XaM%$?v1a0_iw-bx8Hwr=kZG_eYl?p4CUwL7oz;s z=ZyxUqG;;I<8EaUyrsFlZ!7>L5p|$*nd`qD;a*fb!yHV5y9{-#Lr5mruv4~F3T$x+Yydl76#E^U}$XG zU-b_FxLA^5D@pWL7llPc$E{quX{RMD2P^<>*_dtz2FZdgI}lblcGzxRGMI#@CBgpF zkYK2B`Z~BgpFc+F^7>a_e);vyyZ4oS*lk%=*I>DOL%j%8jji3o-b6^uIl4%}0q7RB zy1AAsT+kF|nfIt0d(r;f?KaYNd=)Kq6|dF1Gk1G~i( zOo~~$IM~y=9szDGf!3!Fzs0XYf`W`dU%Yn8vgrFYtJ1LQc|1V)&`8Qs`y*7q!xn66 zZ1QMORH)AH$?E*UF~5+Ao;WXK6w1}X{${3?AQXxAr)tl zT}oP!#k6IHpz%$Qa8yo_&Gav`pFO-QEbEP%ckbP{IF(aSQd!^9-a&!i+ScA~cjh?G zWDGQ=H&4OSC+;BeyNf9)1IST+c)NV;?&%(!3<`@*O2&SBxxJiV(HT~yZa`gj+m7A) zDM`;+Nty*X)Rw*}BUA8^)Z{fQ<1Njy_dq#5Lo2VjvAz!Oc7C>fdk4F{eedB@Xjz$#WMko(lfIexx~t*hHh2N7_HCOXA^mwY5UJJcE1=Lh#3r2~m*Z+#sEdnY_c5yYfEo>>u> zl${_1WwveIMvipw*qO_3y>;!1oL{VIjZYlrPox68a;jLRsB*Fmw>O1e*LQfysnU0Py4F}u)JQ(tj zxwbfg^I@vN=Grnl^pCjeNjkIhOKMuIphx%LwtuXpHXOp}(CHzIm$g-ul}-V%41f)? ztzB06IFI2r*w+@&peo}N5lELa0VLt-WN(bNR|+!E0Mbz%Wa)c9?8NJ5e(c6>3cHXh__sJsMP)S&_L2Mg2b5*Dx5H`|_j^E~Lf1Y7ww}Jx&XAq+{kwN;argS> z?RyTNx^U&~ciz5o?nu_AH8C=vnv`%l&KCGPHP+QzwM)?+;6FLkY02pGC$`Wh&p`tV zbTU5MuXc{cB+@-#v*e6FO)b1OUOWM28UBPJ9;%QeWG1qa514Xv5Ybjwh z>BcspEBEf+fs&wImmAO_Ie+Eawae#@VlNxBByf7dv*qA@4)=AoHZ@8v#!AS*nTdfm z)T8Z! z12YVZNnNc?4GaJVtp0=W-R*clmg7BsVd-XVb2o+?cGM%|R;On;!EF0efW?#*Hmy%x z9k1&ax@uao<6vcaRi*}jvav_#s-52iUXkuchojnNQj_q5wY+Scy z)vDz6nLGC(>__gj-dT5sI`<3NBv1gteePlmAdLo!cR?GU`JSohPP)7JIHGn)=0~>_on_ zVUv_zRwZLLdcbl~Oaqc)B9~w!5bvNJ(GkIu!@ZU<*bzlUl+cWza8(siv9heF;7vgh zmBzqyXcRE3bj-F^$1ewp5&(}CFmZX|>!%Oz-@~KviRD+oNbRPaWFk5?GRACU4EG`n zY{~_fG9-)xc4f7&3e6P2J8RNp>t-)>=azK@`jEv-t;}ARE_!Ns@D#p#UAEb~>~?_} zAU#RcBuU?^lwh>?jQWK}#YsGEU5Z`OODz+jUp|EMMRjTZ3%aMu17EuYtH-&>Oi-9Y z$se;98i;VP$f9hV9Q|2x)9VAtQ8A$dctrsT(sg)wT&^WRGP9 z>K%=BCq$++YV7Ql97 zAd@pQKBQiBBk7HOY*D{nK7Rpb*@|F6LIIr960p~hAZ6buip_}7z{$Z5MF+ChZvkY# z%9W&O3+6JtgKn;{49+S>#&k+$r@%tpI2vpK^3YK$R&UsG@Wh#Or;qH$t5(d0WpS(5 zXYSgwZ_l>0gvb!T2@9fax~w6piMsMk(0}of=phDsW=au}%Nc*7{?5dl-ob!Hr@~yi zeUBeYpp|vjqm|M@x(Zk^iX$6nrI^E(28VdmmDm`^!BXnHJZW8~Wh3X#ofHv0R)HaY z)w<0)vi9!H%1ld)T%?7z*mZ4{Z)s^sQNGs6=`AR)Z|}!y2u1`z<;4O|%4sMzJ~2Kv z(iRGS1>Cbx&)IOYtUj$*L)R`$(9;&$v0{(_xD2HhhetXFmaCJ40_pLr*|_7t@iSJm z@5xxVimjWJv^vESt6h6&f2Su!h4_sRcDF%SDx|4Un4cpuz!Q6+Wds=jUQ3`tgacoJ zY2sRJ4iz;sXg95ed$bZ?;bvcG`?|Kl)gkotn3l&vD4&@a#iKY-;4j#;P6InwdQ?kM zHQjsU#Ho`<_wU@2p0ZkiL)eQucJJGpwUtXS6bsL`hN{w{H+d30MD-A39mG01nCS{Fr zUFstT+g6B(S-CD__raqljvv9TRb2<<<*~cS%G#N+A$3)pw46GdYn+tiD+HL)J$r3? zt+Ju5%c==EW`sNIlW-l_7*YD-(B7RKXp?6=%mI3*R{T|33T8#$h@8lromRL^sN_P1 zH+O_Xf#b#{AG*jGoX=5dJA7b|@@L5;f{R6~cgu!#YmyusqP@|oxIBB6FWr-!lkY(F z_W8!f@rToWyHq#{{Xg4c0!vJA)!X%zt&7Qms0I7x4saR_apl8>c^qW~)>Uv5Lc&B- z0*yd>ACTFq)J+IU9yz?%!mV>^OV^vTxn@%%>nI-A@Jo$V$&+2RIfTf@!| zPrd|PegcA_$wkw8ao|M1?V93TI0MRDUt_|}cPAqmbryfJB6Jg+$tetuA|oTLm;@+5 z3Ju0|L*}l1hYm|C3&D>RN@rUp#r%4^2gywwqpk)NmhH`Fjs&6?$~B12y?sPD(o1~= z=*6ORqH{-1(%0TlZaJ2K@An_QK+MlBB__>WMN@(kfW!y_IWj#H5NdlT5_fKYd|Sn> zOkTHfTh{)A2!3ozU7bV%us&leEr(4TKu!WHiU?XVULFCO;{?m<3=ISh zKNENj8+Y!tOk_Xmr%7?@*aOtbPu~wTU0Jrvz}h*&`fx4ECYk| z<>jEg1i-h0m6AXqD83CTydwv9XIcyb(z^=j91MB3Wp3G&E+QWNDSyP9+MSfWP@=5$ zReotra}R?9S56I5LIjHw9UC8yZyM88RKMDBBENt0`t_T4A6sOSh+8x2%vQ)!jOjNI zN`*oL8JW^0$VG<b%*xvkZBcg(ACm&q~E+{vnA6a23v&ihgyR&pW}Vz+vm5~ zB+T(-0D`DEnZum(cXnj9&gBt{Ku%EtH`P}b`Oiq+ zgeij6APy}rsCyza;x%e}?mIyKxqU-&VhkULyXbB%jlx0_n)RnB19vw^zod=y-SNfWS7*!|Go4DaonS)FR?+I@> z)n>Lst@_0M(L%SK{k(!=Mnv~!+9s(f=tw~8;n*!q2P7AUgdk!5rdI*UumV=P175d5R)^FIjapPw0 zBezcP!;hm9-(oogodV1C(By=v(%dyTF55&jsK6=7gf?J$w70_&!cwOQ@Cp^w=T9Fo z&-?0|+xKx}ZXW=tC7W8U73p%SNkKf#Vnp0fe+=(2!aC#x0tf&kvVnumav&yQYl?sy?TX#sqUY1HLY#WA0#U-gE zUB5w^4))8F?ftK^+Y`jTXHPglTWoxwvk9BJJS4e#MrMK+he0uMj;aIw{q`~&@E*^7 zNeBAQ-TRN9y?FWJ>BBqMzxwj4Z|=~ICNCVF(&ZrGj0k598w0Q$n5nH(((nYJ9cabw z%gS80GB(oEhov!zYxF+Xp^&-;uFghV^6J53sH?HEINvf#kgO;2;~EWOA0_iC zUA4Jx<5ua29y@w)*M?Ow5tKObD^t=K7E|7@PD!`iX~)*hX)tdCbp^_8Y+{BE)Z}n? zQ+0`b__{Vwe^WSeVor-wWnX7=b>ZvhPb8LP>%3{D@jV!Aj~+jIh|trmyN|Mq>bk}P z!lG8h%P%ojRVK?+{hng`GtmNloYuK>_deEnXwTO4l`+xLF(7Z!($e6grVtQpU+e@D zW9i+JkYIo_WB9b;Mr&`+Hf(c4y)!ZDb2_bH97o57d(dZoaQCjQ&0^6ld!e^(-DIAF z4b#&{55B#3|HnEuWKI55bWIZxUhguQE1V*_I>jA#)Y9qhMd7FvRI=MIY8 zTICI>cYpZun>!DlBG~-GQs(TU+Ro9SrE#lM?Y*E5m*Dv6wg&DZF@w0tEzob2P~U#E z&3C#yIayNZDUKg(&o=mOTbu+%STLU1GVKbOah}@#(_{VZc3#RWs_Rib?aI$1{$7!I$Vt!d! zWi`6Nl{mcC)zy?2zJ7e?#@AokJN)BU==%J|Nxa;=|175fCkdzI*E-wl81i zNkJ@K0!~m)+kVp^Q@M3$$i8_~P*_q{QBjir`uW4VH@^DA@8w+e&;R|O{`;@~$M3(s z_3h*5Tmd zcJ11|Zy%#>gt@t}>|Jl(VHxy6H0S6)uStwsPNyT5t`CgS2@F_dQH>ybkrhBM1P{u$ z)lx}4zIXGF|BeFUfBlDl_{V?xm*0MQ)2>Sz4%AjfJf+o5-J^j^6V~D90FWsG7+r$a z2_ZJjQH7SR0OF`QqMfFL2jReMLt;ksa{xv=_u9RBpbjp=r z)8hk>KVLi++1Dle$e!N4@g*d-f09GQZ~pzOTlXKo!1o|0C&$vIVteh?^{sSIV^^nb z*@63Ln*JFHD_5;Tv>_~LMrU>r(hcc4@|N0pqAe6~obRzeTtR`VrXC6$@$k`{mVc9%dccz^7YL-_t9q0 z$)i`12Vk^8G{za`#i^UO?btzu24O7;AfsEb zq}_=>%c(PGq%plAIf>gLkv|5{CdP~Y)6NRe(tONdEUG_zD4Q~LgYEhCuYdiozx~}G zzq$@~^Tg%hkZ}5Y;1~3c_=QPM7XQD~XLwE?J&?7X z4(=iLy-Q&IHvq!G5oQ9K1QIlsj999+&a%nW)p3y_Gm->s z??7015pO#q>(Gfa=Pz8icmZka-P}{!rm#s)j7P%@i)DPun#N7vmC5D>3amW4>=PzHqdgb!@(+G2C zZrZRBp}|9%)8WH&>ZJV(sY#2)M9~#1Bn}WJl~(!6(sQ&@IXmY~QBh&uiw8G;|Lgzu zU;h5T{L^oK_YHefsLPz(+MmYSTqg7=STqb1O3Zy|A1KZV~A`x8z>gFbaZzEmu{%7si|x28lX!LI|xd| zBy%~Z13=k0BtPO2#=H@+Yc}pWeEP!W%NNd^I3`S!Q;gno;Mkc97cX7BaN)xFv!{+9 zrUSKOi{0{8gDCS3wXifb+J`M+X<;6?MNUX@X=!P3-m`nxfB&z){?%{({mUDc9zUUH zR#2cTwW7KK{}2brsFFqltqEy(Q*BzbR1+*5DvTIG3`V8{!=e*YGxi)geI8A|L;LME z-?aeO&gYkd{cBiTaR7CPzwqTJ^XZhrOq zfB)SdzrJ-(F*Cow4UMVV=N4Lv)nmJ;O6sSKYU0Jv1HevzC|8&sk4-|eCpH~CZaeVs z{ypdl+Bz+Pl4PGP^qM`FFPuJh$gY8`ZHV(CK%xPtM58f_C{UxBp0=$MYfKh;`}$X3 zSxkEH~*!3sA^nw*C8 zK?JyW3O2MG^y1lzSFXMF)>~IEokRanVngX`;-i;3!B6{Ce&c;DHDy-!=Fkey&b5TC zysD^{(M9>{8=62biFWO@ z#9wLWal<1+5w$|nA0mYukO4J7tgQW*gJD~F_0olND9i56B0o)88IMe9Sf~ij6aB5V zW%R|=vd<|fwSR7X9cULY&2k@oQ(RUm(+b-eujNWtF28rKhuW$N=e^p|-P_yKg9&*+ zNZ69ai`1;LQfqK@QmfQ_Vwto*EM4A5W{3KjT}XBl9X);V+Pm+)_wHL)F4z@-c)aXc z(4JZ9k!)s0x_P0rnqJd0Dq)@26qZ5#&efvo>T4_IwwBGQ&wrzZcHqU+By5vyl$v_y zRNsr~V^{=CEUdlz`mC~rmKwp>Cp===id9aFU!~ICU0XM8*sw8U=lw^|rQC1?9jTIxUP4!i!+^Vlx`I|R| zrBzOwida#G&?EAh8r1;L!yaO(B@g3+F#j~Oi(KmDlcM8r_RiX~7lrTx`*zyJleRH) z*TK`5-~0H}Pe1wa-D{W5p3p>OeQNS*2}LB}Mjj|aN{cNt*AmP8Lc0>H?R~oY25*o$ z{_%EWwbWbi%Fj^}jSgMC71DzPJq$wLl3KKQ#)d(ggMlEJ)GChjftG==& z=}rr$!MQrM3A5iL)Jj`pO=&@%aKeQY{4L%61N}Yi%t2m0f6g4amI$SGXdvSb`}Tn% zuWdXCJ?N`RwsS?1*$LN>(cu zak~^rrN&BSA@*KK*x=GOwa8++ySt}H_A9-eZH-kW1$p^}g#{7|YJzRj*VR&2W_7@W zN6)g~lmc>*`h0*-fC@uV_5G)&r`>ywj$4h75#|e4hG1)er`CqdJx9-8egBj1%R}|d zag;=Fv|Zu0MYU2U!glKky)V>8T?GPf1qHOu${22Uc6GMZ zm*u~BaQoJs`_Cnj*V#KLl`~1m(Y~D$GZez2rhZGJobS$NGEeMxQj_VEW$twH!5_SD zhyMJjBbKG$w6;1aUNRK+bx^+?=xnMkdGq?^3wM^v8Gu7b>5_efr+eK5%s^+WSe21Q zqn6gzmWHa5+^6?%-?;hhlUH!JNy$QUpFe*5)Y9OBQlaW#@u6xuBi305 zw>eOaa`(v086Tkri&=Jg-MW7L*1g9s^ULgj4T&k}=Z2j#(?A~w2DDIln=DUQleS?K z%80IrTbqU##J+<^PjW3?Bif%nendtR8_@fT3U{bMKjv87&c|C;t)-Q94N%-r#Th32 zg#@CLSXojG@u#*9I1G3gCLYaA%%lolJ-Tz_y4|tQ@)+r32_zi-v>e?Xrxso?pPm^5 zt=o;ZPP*MGYu8El2@6+^;NEboUW0xY`>ni}l1g%$xS!Re@>UQE4u0+_|x(l;*=$NlQYy=VCqP2Iy&0czL- zKoupI4v{}h*ojGWOkxsNrKE4zv_%816zccPto>G$oV)ziyYIbo?b10+$dTuUgq03^ z1TLfPAF7Y8w)zUYm+}g*n`^NwxUs1jT=f`!m=tB*P1U8?|L{{Z3r=hC3!r$Tylw1_ ze*Mj@2QLe&n|ns4PG=AvNZJKwf8>! z_+tr2TZ+0L=K#nI>(?emFZKg)+zpyr*7$yOR^^^(O=Nm!=>VBeIn zW8bl}SKs^Sd!I_-+VZ>oSxQv4S+Tutb!?d5C@s)B-c75U6xG!?2~1A}#bwkn@5e{b z1;f{>!p>P8-yZX&rsfvgBQ@m(*-!4>x^eT~lh;L6mZ0`fa9B`toFt0@nxTX*5tzU~ z$g<{?ja#=f;o59>{QC79Hg4Im@A!pxkhuQrdmmi8aPqL7BZ+nI+PN)b!`g(UL1UIH zSKFzua!2S>?jiY+baq;(hYStre~{^6hvl5L)k5x6qdICo6Xwd*R0IMK-G5|pw4BSn z6ORy*D6p5kgJaWvs`dmX2nq?0S(R=VsO5H`6jySyr;UFoCQa3fe>Ei za@q5B__NyD1&!vGnwG{`FzKYN6D@-6+?`Uyv_~AjQy1TQ4}0o&?S&rMkA3paEO~)t zY)Fo?H`?7&U*nENs|bUj8@szj9PDHF3QDNASiz-X)cgoAeV(8^7_E7EN1-#37mhH5l zzh*^v;5eRTb|QdAw|2JI1+z!$zXDyTMJ1&mqzcv7 zA(5@C6+-|7^Nb*lq$M)`MSRs+yy5z|fB)V+yLazB;CvTO%T*T!-2um8#>a3|+UnTw zph;LI?X9p;n!(z)w#%{1Zp{&^oZ-?`%cc$n5LQohjrLhv8mp~9c_nwPTzii+c z_1}fvQtHasr6B=A_A{n!LNo&)H!_FFAfUlh>buvgSSL_N*?`trh<^=9&@M9ICgpOb z1$ABE5-(y`Q!78S)$(#h10#$c+tTHU$SIRLItO?ur$07cFGUV<(G3?+_l)aKdTnvVC!|T))jq^OYq|L#~ybS6o&OSVDa&t4(Sf z!~^JnSR>{}dnYGq#?3;l2#HVLxNYyD<7Y3u_5Oz+ymQ&oqaVQrRBWSqQW8t zrGf(2N-0IK|LGIJ`Ih2!_35|UCjhoUNx$NJvgM`u5)dpYnMBJ*GO`Yyv~|Aw{s$kt z_tu3|M-N)nwBL^Xsk5}3toFniM3n0+=dHWlN~$$+%R=mpB5i@iIaehCza2kF)Y%;q z@c#V=2pwbdT`GYhR&4QzoYcZ;A?_ECp1jCGjSh>EK4@Rf>h5*Q83{}R>}8-=nLGE1 zo%Gf_@4jon{fs4^2RTD0&tACbOjK!xrlngdO;rUJ57YD&5y4Z#eSL$Z$5OiKY9&@R z)=|*sy?k>2?(N%%9p8HZ_}gA#Nm*GL8snvoR#`5?;-?R-V0sN_6=bxEmKKTHv}ucu z3w5|GHZd70{a$>tEx21Q|Mu037TxWY9z1&L+{Me6FPuAd#BO;j_11#PA}3+GxMh7x z0tQaQ1E7*7rIpd&(PGEnl9S4kH?N-DN0Ir??OV7-+dAdx?F!M3P<`FE~fIDKT_9^9%RgIu|I_QZj#tsB>+ zAh?%~r6RN@yX=!tNgf{-Q5c*T$~fS}tC)s7d-yHmVyiQ-pRN=Avs|#K zoLrIDUqT|_$Ea?=w@wSS55uL4it{90Qf71+J8*VCdh*=mx2fTHp~nu`K{|Ts!qvCm zzIN&Ssl&UqPHOqJ>(X&o<9&)w>G&2s-f_YyrlztKp+T|0?%u_}M*87*AHRBoT&pju z_eqghMVc#NY$^CR5q1?lz%KYUQ1{2s2W4wLiI|(@w%bZ$|?z&(E2;-+=*m^ZM6+ zfck6MW;W^*4b9wQ$cw+Se2INq47=@#ZPTaO1r?1T@!VLYuEyQ>;|OP@Y;ZjDV<%mu z`Oe#KUAuhY?CDdd&(ILHqh;$peRTiM4CHc?5)(ld04GUNhb(MSzzoB$R@Z+Y92&re z!%op-nLypWcmKXTmcIPsmp8tB`nssHp}kvHrgquCe(_vQzlyTLoaYbkVtSBMT;0^! zH!#qTSCiJ+Drq@Om{7kseB3tYwYT23HD0}X_1e`dmoHtqd|3hD{SV%M=Q2%)9a{uw zT#5c1%5DtOXxj(ammlnDbIDUz4}+VA%EH&6*06vWZSACwFgLzjgmvF7iKvR)BQ3TZ&cR(A;iE-Y+CFE_vhjeGIp3N$^!w*AM?UwhZq^pR!8moHts#MgfBgO5J>o+b64e)_$S z-+$X~Qz%PV0j)`jhZZh*!6@c^NHYx&I8F#(s;S);+Ekur|KM+~-+J`YzHE6}ae)(0 zdHAZh9)If5q2AV-l6<;;WmQ(+mlwQzcw2DM7r7-hP3@f>POC*F7wfc)K4Xuq^F5YH zlh)oRQS`l!KK=ZQAOGYhKmOropM3bv6-$`WN7&4mFD42DoT%uSx{Jq`?^~# zr7Nw(khr}&A3V*kXzaAQbfm8pPTQ*-J6ct;XL)ev z#`Wtr?%aQjw+&=Z2wUB~R&R|ns9Bl1CF}4RMI`&~Z+m<5%C&bt`t*l?@$;Ym>?fap z^zPM*XHTE7l5UIo;LDZ@Ilq{?b#jRLu|&4VMh80T$_nzp3bwX1R2IB^bnoVkI}ctI zRMa&!)z?%M!Kiqi{idQ3&7NMGVz0A#+vTMN79Z|^dzbid8#LbQLWH(Eux4e{9R$5` z-KOpPPMp8;_B-#qYlq!V(iN@q?f1X;#m|26SHJw(k3M}*O^0I#cV|Mjh>i?jvUu_0 zMgB9>6Jx+{ME%27tGBJLEH4{2PhCSp4XwF5w{Cy?EWf<2nFd3xa99?J><8)W?dfQ$ zEX>Wud%CFL^>YhLM26cpL}RD-RNE|9F~?$vNdPWnC+Xz53$`se@mDWjym0>FrK|6L z{P|CQ{>xwd{KubJfqYuiZY57Q^| ztj3G0Qr4jswI64?OZFDu;nUlHio0eHPTEfpI1;)S=ZFugdWAChmW4V%9Hia;2@3K3VVn4#;Y5wyd(`^p*c+Q zk=SsC5?_Dy&8_<{3aae)$WCoZBwEM-tT23&`US7lzWc?C_CDYF;FHh3`0-DF`ja1i z_R-sy&RWKNaL+a*RgoT;lpJOsX{~pCbdcvX;yG+dTQxl|${{8=uk(wmfi+J}jnT*} z&d-riL|vT-;VSI1ZRc9D`s6V#SKrvNfB34Xx}|4$3Vn4D8I$P}V{y_l)y<=QJRudJ#lEfVkVDXKXLJ3W1L|L)D}-+Xi9&ZC!a%IiCa zCIc5E{|rbKu(#!DJ8>mEZtoNqLRyMvFIr6f_Fy@m zo|qDtZNQB$YieEZ&^5j4?A4YiH7={P+_G=Pe)0G~M`NW`NJ3UqfX{xMjE7yccn)Zk_fNQL+ptn#!2~wDs{p`^_ zNPo}lf0&aRP@& zB_i)xTz$uO1GcFf)~tvKnjGrwhEFuj1OQ#g(SAE2wk%txtj6K^*Va^FG(ls&MY*Jf zg^up-&Ne$fPA0|PX7*Ey?smJ{IkIYfp`a znN~kG*4PhG3n!twqotm1V>y~G1$GPF{Q65vq8~m3s{!KV`IE`lh;SPE%8BXHPFQwzA?v9NP(_9eUf<6?7PKUeE#m@|)XWbn@to<-LBvrIib_ zuA#kucAdLL=azR-{0gL`QqnhO?A$8{rGp3d@28r>q4L-fbWk%ktX&lsE%!ZXyd#>u zGB(_QsI##K$8e|-D&bq|s;jES#dY z19E#^Ks_o)KH5FC68Q;@va2XHeKTM%rmYCflL#%d*iW#^wDV8ni^f z>_K1yO9**IwLi4U!6mUX;T?n>G3oZ5k z_STJCcOO2_DJZK_D;Mu^e#ky|j#5(B37ed5l z{kxs#_!`w7Yu2Ww3C(UBJ25)Ue-sNE)P;j3mkx}i46h|l6_6*ZLMyNavnW+pS5r|^ z%t*Wj>7hzZKW<*XdGFB+7*$QGHPy62JqN+XBnj`KaF2SqQ`}zel1o%l)}|tcLWrgB zP21a+4FnT@gT2i(4RyRmqrZOu6MnQ>p)1x^Vp7@IijBCHxkM%!^Ni?9iooL7W_1Jc zdPkkUb<;AI?81t=)=u%-JJqe52@Zogg7`CB)R;Jld93gtRpGGRL@HWI8N6{z##U^` zo!(5ky+&yci4L??!rzH8k>O%;Mn^4O>_67u!K98a?8rTYeW>o?OFqlLraa-=RP?Tz-LwCTnhYP~|)26$nKM{z;!Yf*X&%IrKd zd}wdBh1wpy_wA$SuZyZEH;0_O*~FBTF(TmJh6Y(El)Y+<^lPJ+MT79~>GU zB`dqkZFZzk?OL-2b#7=Y8#XvS4YVC?oe6?O$9cNkBYhoBcE{Jz`~XLwxl2b&1NcGg zRE2nfe_`bhZm@M_Z(colaGyM$4-e&UOw<}DAs=oF4e^^89TwSX8J4xn1c89IF(U7< z#Y0uB!UdG0B6^;g^g`oTtVl?q|!C@;0$JRfj&V<;v5R%`NRv`$FmUWP9h{JiCsESLcUeF=Own3u< zP1atg+!`IfCVlhPZCjz(#KkPP3Lq^b>)^4Ir_Y=|ab*9l3{k*V#KwUo-?1Yjebw?M z7!s?IBb~>#*5+oHKzW{(&j4P&5ebn}t+$(-luT8&+IqwwShW^^Qo4{A&z?BAYx6pm8JDn1tc+dTm7q=z z_Hkuw);dl1b5IqhsWj8ZhO_ zhTE@h>*%#SKg8A!W2b{*{5y<<~yOvvO=cZa&cW8>qa1G>=bYGml12c{Wm#*!-U_V4l}(HkWHVNoj^ zn~K){NuS0D=Ex~PUDwdoKM@oWo4C>vspJ&EAO>n;u7Tj0{OqLT_?jz>a=Nd!}b_WOUg6 zQTD1CnA$I4V^|_uP}$Ty78s8I!wUQy?7Ks5mXbE7jSdXw+ z?4_>9%i{o-{l0zs8R6~TzBvs-BMG4tQ*DPPEeoEo?QPe|#I!i2&icx(ZQ8TBFCO2& z|KQ0hTT9pA_~ZnGdewds@B;&D1#4Md`_N1%8pV(dK;ODHtL-5swX|PG$HC0>w%I*b z*Vxu$rBv9mSnPw=+C7=Mb1#OpCypKfK7f~0#wNR@Fl@p?BXcWeeDP6>1E3$s{DIt$dkc_?w_j)Aessqq0ktGVzQ(+jI-SzUEY?|4u|OnjmvLx6V}9~rbG z*G?6V)Vo~;NbTV)iuQ8f$YcPj+bdaT#*RG)5tuu39JCm)dnij>R`z6MY~GNzc9k4g z(bDvrneh)q2oY9TA8l6&lH_MUhrXX%1Rro4}P9Qvffe02AZSkdS7SFB9QI(XvT#f#@o9NO)4@T>~l!3YGB z&8D>Eq*z?WK(^wJ66PfK;gO>@M#@xN_y)?P2Y|ujbEseZK;$n467KG3w!*}cWL3pW zQNn=wq4O^MzLnsXF?dSB7N|H}sG<)@ZPpfw+#$q@vuAxsamZER-|WFij$R2s(U34t z5(IVjAOKD1W7pLZnS2c3-29@7T9;3W-oWS!0A`PXjaVYG=_b(PL?3@=Y~EkoOOHgE8Yezb3|6waek7122fGfNLq0Y)`L797dyV_epLNqqF_sXC{E;N?g zsIGE}4KR&XClws%wEV3+Cv^(J5D9VN%pJQ?I6Zmt6l{R~!s7ygTDvkf!ue86*)O-W zfE#MdrquXwzrnVevSLvamc!tn|U|ARWO-@Vz zwPMh>W}PJ_X)B{cCVHBxK{_?HwL9b!=rwQ*fL0yawSkgPhXm1Y`uuGk9?GtH%S1v0 zCMU!l&8>B!H zzalz3#BW@3RklGBQ*4>ZsK)howpgm%Gc-OmB>+in1;uZP2C*KFrNWB;Rx~mCU43t5 zfQ(R-=p!qMaq1bOv|rKVol`R^y@l2+*Xg zN=g#Tn=mvsKIsq1ZOyv0)RoIa#=4vB>^64}!0}!j;4t{=CKQ!bfD|e!Dk>>0M>`T2 zcwe9D=yKX2eWO6{rbHrx$wGo?1r0&T{x|!lgpu9H#90Oc*xOnCNNZ=+8m-f=&*P^~ z)3b;E#i>^tEjd6B{Uj2;EC?~(mWKnUn4M~nJkir z<(NZ&%cZkpWp!z})lYpR6VuaEV?$uj1R}M!-qtR7mwkEm?owHJu3m+!qkFW@)oT#h zr~Q2Vgq`<8d$w*^Yp)#2KPI%cm(e^O8=deASt^<5Ws4?z8_SD}N^9DO1DDw~Xxp`` zwg{DYlvC^sRRdP%eKPU3)8D{w1a;1;IvGPuO^&n93WSzQY7nCs9YIv1hnydC5BvdB zlkv8bc9%0OO-%z;aQNtP;?mIrmM5=@Ly;JjuSEFPmMsSRBUcr)1jr z(z>pRMN4DjW0wYxb=H;w9Ht{)?k4gWZ2%e*!M3X0&UKl%HlTRyUdOKqxuk;f`i?;y zFeV)rWEutZn54Do%v)C{BJ2?>n>M}8y+=-+Jr5w`@a{}^S<37*mc|8MYo5ynirrWu z%?x+emlYLPHuX*fM_4Qjp6F}U7F8Kw<*iA_%1gr{!uN-=EX?RBnA+q7-Z;Zx@>UAcTg>r7w0VwuNdm7yxE z&$#80c>m6zeiWwips%gIy2gr$=|y&wpcYy#he%U?VR0GU3&4+vZ`x`~-T)xrlvUI< zw|9a#qEksQs}?b+cWBhL+b5lHP2>tUWl%i{SAInT-1N-dhtFJg=!|3gcWy~r1+Uv~ zb!yY-IC(TC#bbX8Cw*GbXiQ4F?7YgOKv?OaUb(I1=hEj?+qA34g1nvcl6-(d$WoP7 z)k`L~-tNyX3Zo`q`p$4`d}3mplpX;@0?T?j3hDGbmqkXQ=#si|>z-pwL*IY<%K765 zm?S2mFb|y@$43dGV@j*ZydUbkqsSSJ4l=#z=@ncSW3K^r9K4#`;;P1WfT}nn?p z7=HX1U`q`%6L5}ILWuHW1vVUZY%26X18EgYF?G`>l3#|J7UsdY?c9It+?96($vS;?pWp#lE&#`-++9Jqt&B_lXLJ}miY-&VolBR;qk)pPPC$PP_L1}$HdA?=0(a@= zA9jvF+c`OL#0VpoNmM6Zo}YnJj_)`yito(0NSdI&&~zB=X{)a)wmn)@i9HNh;l6gD z5ZNz5W0WBT(1tD{sPYn()pmbNO&dEW&^dNvm&mt|emPb(xI-2c z6j9dI33p91MJ>M$$6K-e&EprSf0`Whq}3OLS17Vfa-dUYw;efI98UITZFBKcCq5YC zwlGUs!onl*1I1I%5^-LrRor-^Ifc1}xLY3pmsCy1i_^x9Ih$o`mN(~Jp?Oah6bnrDPv#=#y(%wF2P7#O=u&DVu96^34 z=i{(o3$<{=Muoz?Iu#+3J-f4ZN{&DWO>95WaXqa(kttDo_tTbQ_m2(%7@b9mI-Pov z<|Jnfnh}FX%(Ag{=%gmZs{bt=JRB{^@tnp-k|lR3^lGCv~<%!X~SICL?J*NCVfe1)=;=bIeot#w5-P9x3( ze$Y90`QwejwW`J#E(K$r1BK9-%xe3n-I1FuvJ^Sb$;I-~;RH3citN&-%RTrx8g>abCKy-w&%_{(QFV7Wm89O9;D8ov*{Mw%vh_LN)dtrD%*~UY6NYq^y zQe9&NiTl-_5d_mm?F`w5C&tGhEe6u1$Dz)g3_n`Nj^M023Y#WDyW2#gWsl15!7cQ) zBQsEi&aSghe-=M9!kmoi7KJ$jARNHOE|zi9+BFF=R!&GhRz;fyD71)BZ-GP@k{g3HAQ1H92A{5!2V zm^7$3kjwMoSIKHvvu`Pg333q{5*p^MQ_3_e+&Y&ysZys;DoT)Xbqg&ir$q+uLnI0--=@^V>F-A>bI}qOqN^v_N+gBzjdIqCUmm5M7~^yD zcIJ-q*C162cD_L(v`>0yEN9Y#Cp9*ZOFf-n`wfBQeBd1g(Q^EBhIUMu(C^KrYObkk zRQ*Q#174@*3H^OqC--@*HsESo=O*}QTs!!p$1eAxRIGg5br&pipAxfIS&H%E#JfkCPIBO6HLK6s2oU579;Q zWZ^5)-L;dHAS-bqQ8Wu)9wm8N4NB$ZI^kp>7B3D(JCjpA;1HaPmqta)^L4Q${hs`8 zm^4H1q@j7-s4eQH$(EPU%BglFJkjchB?yiH)bP-tE>N-jL%n;)*`!IMk&y0MO)-K( zEc48)IY#bijN%gM$980$GtRD6`3R|u1b3z69vzLGHv{wuWEpW%sh?$`*0?-R>jX{K zrj{+&8ya1kqzV7g9H zXs~11L)>-Ag5IeNukpyWg%Wt3SA8PxTyiAR3vFo-7Zrk{YlypsC@nIn!aLJppL~mF z<~HF(5^x}QFLbSCmwfiv7^g4k^1blc)D&UjND0d*!C>RayTs*3Dnwx4^64XRkwn8S zkxG#uf#R4IAN8_~sD_?M5??m=LThTJw@xiR=KfsC%!uLb`VApVTtc$SE8*hYhmYYD zDYA!3*WaylsS*r62>WKziIIkS-l2Z}Ub++!seZspuSw4DfCkpl+T@{|DkW}P;i(Xa zL|sb_FClZ<4Em!ME%I%DG%C60eF2>>HM`CjPt=|#)RXnM+%yb<%W0*-;}cH8owmaw zDmj&P5&>5MqvT5lX&M7}N&K36UCtKXf?2I6n9z)c1Z+7kRgm7gGx3>GY$A=1b?K$I zPGxZl?cQ8TpEJs0DYa3cgnTF6A3%eIMh;cyBHzyx>BN?qeG)+B4h6YZ!V}J$hg{BdgE9g5d(&ncZCfS~)f(zkZ=mlx1mz-3v|BTMK zvz|v7MAy0diG1%~wx!`-EVJ^szqhB8Z(md8WyW5}7Zsg^UJ-O)$mya;#zUtxz}e9* z0)L~h7q0nHp3G@X>$ha-bX&Qg$MY&;!jSFpHW z#(n9874+w^CFO$WbjvsZ`udCAFC}Mk_GJT(kS^0Hr$N)v>Dk=0x}hi4=CI>$^W{Tk zn?zcu{#dSS=7tQv!WGt8roAK<8st9x>@VfF2MTbeeH7*`Uky_CO103%(lYaR&g%2m zId7q!JD%h3vrynGQ%-4sHxQ~7@VJUrUAT}%zO(JiA?3pt?0%)U+C|(t;F|H1Zl&y`mjbZlbM>m!FcOql*4Z>`!6z9^)R zPn6d>-NQP4ugkr|#V&6qyoN7ve;z-IUcL9ZByKY0gkl)};u0iVG!i)`%bl}Nhw5i2 zQ}RHadHd4U9g{!s^ZW4gUwr--pJ$xhaPk;H7AN}=@ewcA$hu>ZMpYr}MKfhf2 zE7Z^5?~Bj;{C@TWPw{2mV}Hlbc{SKgq@p+=(0AT_A;cR;txc2MEGq6tj-Nbr`t+Hz z=MW@3$8+|~nbUXzL%`pgg(+5QvQKxO&X-zLJ)Js#x+mZ;? zgm5X`wq4JTg^&B2+w}`(fkcw7*o+nsfYSA7<${+ckxWUE6!EH6t|6q>)(Rz-a)u{e zb3P|w?ohgb8mM$aEqnwgafgzA3K&A#lJZ>ZY84{@%hk9qo-;S7SByGSO70$a zLKT469wL}SrLyyh#3gzXATT<5`sH9Az6@eq+NR8%KvK?Kdh5N9KK;RufBKhy^&kG@ zfBHZE_HX~szx~_4{onu7fBftJ@W1`yFMswIKmOwL?|fB2K1{^c+J>OcJTU;oYD{Kvofo4>JL@K@RfKl;IEpRy0$zIx^2`Lm}_N?2x( zgqXKD%L*FdNj@5eDn4Z*+7Ox}ks_hD(hK>cz1^ugG&re&stQ*hm9R02q}Ia)10pXs zC&yhfJTK=xFaG@VQg_NLq#oG=5?9qZKupuNg51K3y*oyG0R<*S4BHMKMy`| zfW_otV8NDfjnlc9;LC%6|6w4}R#LFTVJ}=bwH5(@#FO9N`_?11?24Jhum+ zhOJd3n9C8oo59!KQ71-`z`~XDDFq+^muhYcl$X!n0foMJkU#seb7r5p|MGh7`Oc|l zE4Zh?9si>F$KQAQYwKpO1K;`gc7e|RpwKn83%~$5TVNf1cksQAfIIwreqRzW*GhIr zTzA6keeZ63cPkM4ljlF~E?BkjnY}Aqrr_ZaG+R@m>E1XKT&D-DiBlV#aJLiQNYK~9 zsr_ZI$O)opio-6L@$CZm9Q(Xo@a_j6ee&sNKltK@Kl;&+5q0?SkAL(-+X=Q2KKkJO zxqUEuBV_t+1g5v-2ky2CbJeQ9?C!_B{D1_(S=G{ahIu9BwsKts^S?c*LQal%5&W4O zK)!9y95>w67tV5S_D=9UzPka_G9sg$G54YV~az8eCLx*@3$doIK3{cY#cT zd|BemT!x^+d$BJ?a96?n3}G(dC%C?uwMJj`{7~MjdF~Yy6cvLls&907B6P%~+%B+7K?tlX*R%^h|Kf)~{)@l( z>Cb*{&(D7L)4%wMZ3PPn-?NBdMZ*#=8*QGnXjLW(t4$ynOj5+rWj2dD+2igm3|Z z@KEhCMX!$Vl7oeJM86juyu!id2GcXHMeIcgH5BIMj4o-MOAEZbz)KzD=WYQn8TkKu z7Um7EMIa zOIO}{_kG(4-~arJF9-(;20#4b^Uo|Z`1m7T3+w{R5RZ%GVA}v+k&MkU!5}8AR7{8k zP2qCHP=Oc#JD zgD&4TkS)Yqy*M>*4+IGU=4)?jPB^;(=1#u55BTnLh2mVPIR9A~|5twZS&%QxVw2*; zlXiE4#v)cKh)4=`sk%ycg1sXb4Je*5<}N9(gk}H|9&NuRk#vqy*GpLA(9sj8&Z7V0 z?E;CaXdC!?NEQjspS3bU>YfMoxqYx8JBZgd@PR7W1+H2go4pTQ=c}zn#Uj4 z2z+@y{al@};5*MgN)6}k2i*a4Pqy!QJ$oy7?E}fO&gP81(m{8^yyn5Ym@r!@`a*)Q zR@C^wOAZ$Hj3TuimM@>T6TGzG&)xj-YxR)DD3GD;Y zecrWDknfsDbdLm}k�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�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 OQ!*wI>i+@JBk4{eNYdT_ literal 0 HcmV?d00001 From 0c43900922b4e5d9881c3b116709f145ef9991e7 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 17:09:18 -0500 Subject: [PATCH 023/183] GUI: make it work with SDL 2.0.8 which openSUSE Leap uses --- CMakeLists.txt | 1 - src/gui/gui.cpp | 12 +++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 536ec434..fd9be912 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -610,7 +610,6 @@ src/gui/plot_nolerp.cpp src/gui/render.cpp src/gui/render/abstract.cpp -src/gui/render/renderSDL.cpp src/gui/font_exo.cpp src/gui/font_liberationSans.cpp diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index f1238834..456de03a 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -2951,6 +2951,12 @@ int _processEvent(void* instance, SDL_Event* event) { return ((FurnaceGUI*)instance)->processEvent(event); } +#if SDL_VERSION_ATLEAST(2,0,17) +#define VALID_MODS KMOD_NUM|KMOD_CAPS|KMOD_SCROLL +#else +#define VALID_MODS KMOD_NUM|KMOD_CAPS +#endif + int FurnaceGUI::processEvent(SDL_Event* ev) { if (introPos<11.0 && !shortIntro) return 1; #ifdef IS_MOBILE @@ -2962,7 +2968,7 @@ int FurnaceGUI::processEvent(SDL_Event* ev) { } #endif if (ev->type==SDL_KEYDOWN) { - if (!ev->key.repeat && latchTarget==0 && !wantCaptureKeyboard && !sampleMapWaitingInput && (ev->key.keysym.mod&(~(KMOD_NUM|KMOD_CAPS|KMOD_SCROLL)))==0) { + if (!ev->key.repeat && latchTarget==0 && !wantCaptureKeyboard && !sampleMapWaitingInput && (ev->key.keysym.mod&(~(VALID_MODS)))==0) { if (settings.notePreviewBehavior==0) return 1; switch (curWindow) { case GUI_WINDOW_SAMPLE_EDIT: @@ -3449,6 +3455,7 @@ bool FurnaceGUI::loop() { break; } break; +#if SDL_VERSION_ATLEAST(2,0,17) case SDL_DISPLAYEVENT: { switch (ev.display.event) { case SDL_DISPLAYEVENT_CONNECTED: @@ -3466,6 +3473,7 @@ bool FurnaceGUI::loop() { } break; } +#endif case SDL_KEYDOWN: if (!ImGui::GetIO().WantCaptureKeyboard) { keyDown(ev); @@ -6007,7 +6015,9 @@ bool FurnaceGUI::init() { e->setAutoNotePoly(noteInputPoly); SDL_SetHint(SDL_HINT_VIDEO_ALLOW_SCREENSAVER,"1"); +#if SDL_VERSION_ATLEAST(2,0,17) SDL_SetHint(SDL_HINT_MOUSE_TOUCH_EVENTS,"0"); +#endif SDL_SetHint(SDL_HINT_TOUCH_MOUSE_EVENTS,"0"); // don't disable compositing on KWin #if SDL_VERSION_ATLEAST(2,0,22) From d3aed5a06e8d93f564e9947a627a80db546eb3c8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 17:28:29 -0500 Subject: [PATCH 024/183] more doc updates --- papers/doc/2-interface/asset-list.md | 11 ++++++++++ papers/doc/2-interface/play-edit-controls.md | 23 ++++++++++++++++++++ papers/doc/2-interface/song-info.md | 5 +++++ papers/doc/8-advanced/channels.md | 0 papers/doc/8-advanced/chanosc.md | 0 papers/doc/8-advanced/chip-manager.md | 0 papers/doc/8-advanced/clock.md | 0 papers/doc/8-advanced/comments.md | 0 papers/doc/8-advanced/compat-flags.md | 0 papers/doc/8-advanced/grooves.md | 0 papers/doc/8-advanced/log-viewer.md | 0 papers/doc/8-advanced/mixer.md | 0 papers/doc/8-advanced/osc.md | 0 papers/doc/8-advanced/pat-manager.md | 0 papers/doc/8-advanced/piano.md | 0 papers/doc/8-advanced/regview.md | 0 papers/doc/8-advanced/stats.md | 0 17 files changed, 39 insertions(+) create mode 100644 papers/doc/2-interface/asset-list.md create mode 100644 papers/doc/2-interface/play-edit-controls.md create mode 100644 papers/doc/2-interface/song-info.md create mode 100644 papers/doc/8-advanced/channels.md create mode 100644 papers/doc/8-advanced/chanosc.md create mode 100644 papers/doc/8-advanced/chip-manager.md create mode 100644 papers/doc/8-advanced/clock.md create mode 100644 papers/doc/8-advanced/comments.md create mode 100644 papers/doc/8-advanced/compat-flags.md create mode 100644 papers/doc/8-advanced/grooves.md create mode 100644 papers/doc/8-advanced/log-viewer.md create mode 100644 papers/doc/8-advanced/mixer.md create mode 100644 papers/doc/8-advanced/osc.md create mode 100644 papers/doc/8-advanced/pat-manager.md create mode 100644 papers/doc/8-advanced/piano.md create mode 100644 papers/doc/8-advanced/regview.md create mode 100644 papers/doc/8-advanced/stats.md diff --git a/papers/doc/2-interface/asset-list.md b/papers/doc/2-interface/asset-list.md new file mode 100644 index 00000000..7e8dc9a6 --- /dev/null +++ b/papers/doc/2-interface/asset-list.md @@ -0,0 +1,11 @@ +# instrument list + +image + +# wavetable list + +image + +# sample list + +image diff --git a/papers/doc/2-interface/play-edit-controls.md b/papers/doc/2-interface/play-edit-controls.md new file mode 100644 index 00000000..db159cc2 --- /dev/null +++ b/papers/doc/2-interface/play-edit-controls.md @@ -0,0 +1,23 @@ +# play/edit controls + +image + +these are used to control playback and change parameters of the pattern view. + +TODO: explain + +## other layouts + +the layout can be changed in Settings > Appearance to one of these: + +### classic + +image + +### compact + +image + +### compact (vertical) + +image diff --git a/papers/doc/2-interface/song-info.md b/papers/doc/2-interface/song-info.md new file mode 100644 index 00000000..e2aa806f --- /dev/null +++ b/papers/doc/2-interface/song-info.md @@ -0,0 +1,5 @@ +# song info + +# sub-songs + +# speed diff --git a/papers/doc/8-advanced/channels.md b/papers/doc/8-advanced/channels.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/chanosc.md b/papers/doc/8-advanced/chanosc.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/chip-manager.md b/papers/doc/8-advanced/chip-manager.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/clock.md b/papers/doc/8-advanced/clock.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/comments.md b/papers/doc/8-advanced/comments.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/compat-flags.md b/papers/doc/8-advanced/compat-flags.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/grooves.md b/papers/doc/8-advanced/grooves.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/log-viewer.md b/papers/doc/8-advanced/log-viewer.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/mixer.md b/papers/doc/8-advanced/mixer.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/osc.md b/papers/doc/8-advanced/osc.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/pat-manager.md b/papers/doc/8-advanced/pat-manager.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/piano.md b/papers/doc/8-advanced/piano.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/regview.md b/papers/doc/8-advanced/regview.md new file mode 100644 index 00000000..e69de29b diff --git a/papers/doc/8-advanced/stats.md b/papers/doc/8-advanced/stats.md new file mode 100644 index 00000000..e69de29b From 8cd65546598e67e81b487cad8055eef2ca412643 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 22:37:32 -0500 Subject: [PATCH 025/183] GUI: do not initialize haptic if not mobile too slow --- src/gui/gui.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 456de03a..e6a94beb 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6026,14 +6026,18 @@ bool FurnaceGUI::init() { #endif // initialize SDL + logD("initializing video..."); if (SDL_Init(SDL_INIT_VIDEO)!=0) { logE("could not initialize video! %s",SDL_GetError()); return false; } +#ifdef IS_MOBILE + logD("initializing haptic..."); if (SDL_Init(SDL_INIT_HAPTIC)!=0) { logW("could not initialize haptic! %s",SDL_GetError()); } +#endif const char* videoBackend=SDL_GetCurrentVideoDriver(); if (videoBackend!=NULL) { From 63f5e6e3be484a5ee07379ddd1790aeb3fd3dd58 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 23:55:50 -0500 Subject: [PATCH 026/183] use -O3 for Linux releases --- scripts/release-linux.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/release-linux.sh b/scripts/release-linux.sh index 570712f0..b554ed70 100755 --- a/scripts/release-linux.sh +++ b/scripts/release-linux.sh @@ -14,7 +14,7 @@ fi cd linuxbuild -cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="-O2" -DCMAKE_CXX_FLAGS="-O2 -Wall -Wextra -Wno-unused-parameter -Werror" .. || exit 1 +cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="-O3" -DCMAKE_CXX_FLAGS="-O3 -Wall -Wextra -Wno-unused-parameter -Werror" .. || exit 1 make -j4 || exit 1 cd .. From 7560b9c10e2cee15063c8abe6f908c942d462018 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 4 Jun 2023 23:55:57 -0500 Subject: [PATCH 027/183] GUI: more debug info --- src/gui/gui.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index e6a94beb..c19ee1c4 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6158,6 +6158,7 @@ bool FurnaceGUI::init() { rend->preInit(); + logD("creating window..."); sdlWin=SDL_CreateWindow("Furnace",scrX,scrY,scrW,scrH,SDL_WINDOW_RESIZABLE|SDL_WINDOW_ALLOW_HIGHDPI|(scrMax?SDL_WINDOW_MAXIMIZED:0)|(fullScreen?SDL_WINDOW_FULLSCREEN_DESKTOP:0)|rend->getWindowFlags()); if (sdlWin==NULL) { lastError=fmt::sprintf("could not open window! %s",SDL_GetError()); @@ -6222,6 +6223,7 @@ bool FurnaceGUI::init() { SDL_SetHint(SDL_HINT_RENDER_DRIVER,settings.renderDriver.c_str()); } + logD("starting render backend..."); if (!rend->init(sdlWin)) { if (settings.renderBackend=="OpenGL") { settings.renderBackend=""; @@ -6259,10 +6261,17 @@ bool FurnaceGUI::init() { } } + updateWindowTitle(); + + rend->clear(ImVec4(0.0,0.0,0.0,1.0)); + rend->present(); + + logD("preparing user interface..."); rend->initGUI(sdlWin); applyUISettings(); + logD("building font..."); if (!ImGui::GetIO().Fonts->Build()) { logE("error while building font atlas!"); showError("error while loading fonts! please check your settings."); @@ -6275,6 +6284,7 @@ bool FurnaceGUI::init() { } } + logD("preparing layout..."); strncpy(finalLayoutPath,(e->getConfigPath()+String(LAYOUT_INI)).c_str(),4095); backupPath=e->getConfigPath(); if (backupPath.size()>0) { @@ -6286,8 +6296,6 @@ bool FurnaceGUI::init() { ImGui::GetIO().ConfigFlags|=ImGuiConfigFlags_DockingEnable; toggleMobileUI(mobileUI,true); - updateWindowTitle(); - for (int i=0; i Date: Mon, 5 Jun 2023 00:08:37 -0500 Subject: [PATCH 028/183] move documentation out of papers --- CMakeLists.txt | 3 ++- README.md | 4 ++-- TODO.md | 10 +++++----- {papers/doc => doc}/1-intro/README.md | 0 {papers/doc => doc}/1-intro/hex.md | 0 {papers/doc => doc}/2-interface/README.md | 0 {papers/doc => doc}/2-interface/asset-list.md | 0 {papers/doc => doc}/2-interface/basic-mode.md | 0 {papers/doc => doc}/2-interface/components.md | 0 {papers/doc => doc}/2-interface/docking.png | Bin {papers/doc => doc}/2-interface/interface1.png | Bin {papers/doc => doc}/2-interface/keyboard.md | 0 {papers/doc => doc}/2-interface/menu-bar.md | 0 .../doc => doc}/2-interface/play-edit-controls.md | 0 {papers/doc => doc}/2-interface/song-info.md | 0 {papers/doc => doc}/2-interface/tab1.png | Bin {papers/doc => doc}/2-interface/tab2.png | Bin {papers/doc => doc}/2-interface/tab3.png | Bin {papers/doc => doc}/2-interface/window.png | Bin {papers/doc => doc}/3-pattern/README.md | 0 {papers/doc => doc}/3-pattern/channelbar.png | Bin {papers/doc => doc}/3-pattern/channels.png | Bin {papers/doc => doc}/3-pattern/effects.md | 0 {papers/doc => doc}/3-pattern/keyboard.png | Bin {papers/doc => doc}/3-pattern/pattern.png | Bin {papers/doc => doc}/4-instrument/8930.md | 0 {papers/doc => doc}/4-instrument/README.md | 0 {papers/doc => doc}/4-instrument/amiga.md | 0 {papers/doc => doc}/4-instrument/ay8910.md | 0 {papers/doc => doc}/4-instrument/c64.md | 0 {papers/doc => doc}/4-instrument/fm.md | 0 {papers/doc => doc}/4-instrument/game-boy.md | 0 {papers/doc => doc}/4-instrument/list.png | Bin {papers/doc => doc}/4-instrument/lynx.md | 0 {papers/doc => doc}/4-instrument/macro.png | Bin {papers/doc => doc}/4-instrument/n163.md | 0 {papers/doc => doc}/4-instrument/pce.md | 0 {papers/doc => doc}/4-instrument/saa.md | 0 {papers/doc => doc}/4-instrument/scc.md | 0 {papers/doc => doc}/4-instrument/standard.md | 0 {papers/doc => doc}/4-instrument/tia.md | 0 {papers/doc => doc}/4-instrument/vera.md | 0 {papers/doc => doc}/4-instrument/vrc6.md | 0 {papers/doc => doc}/4-instrument/wonderswan.md | 0 {papers/doc => doc}/4-instrument/x1_010.md | 0 {papers/doc => doc}/5-wave/README.md | 0 {papers/doc => doc}/6-sample/README.md | 0 {papers/doc => doc}/7-systems/README.md | 0 {papers/doc => doc}/7-systems/amiga.md | 0 {papers/doc => doc}/7-systems/ay8910.md | 0 {papers/doc => doc}/7-systems/ay8930.md | 0 {papers/doc => doc}/7-systems/bubblesystem.md | 0 {papers/doc => doc}/7-systems/c64.md | 0 {papers/doc => doc}/7-systems/dac.md | 0 {papers/doc => doc}/7-systems/es5506.md | 0 {papers/doc => doc}/7-systems/fds.md | 0 {papers/doc => doc}/7-systems/game-boy.md | 0 {papers/doc => doc}/7-systems/genesis.md | 0 {papers/doc => doc}/7-systems/k007232.md | 0 {papers/doc => doc}/7-systems/lynx.md | 0 {papers/doc => doc}/7-systems/mmc5.md | 0 {papers/doc => doc}/7-systems/msm5232.md | 0 {papers/doc => doc}/7-systems/msm6258.md | 0 {papers/doc => doc}/7-systems/msm6295.md | 0 {papers/doc => doc}/7-systems/n163.md | 0 {papers/doc => doc}/7-systems/namco.md | 0 {papers/doc => doc}/7-systems/nes.md | 0 {papers/doc => doc}/7-systems/opl.md | 0 {papers/doc => doc}/7-systems/opll.md | 0 {papers/doc => doc}/7-systems/opz.md | 0 {papers/doc => doc}/7-systems/pce.md | 0 {papers/doc => doc}/7-systems/pcspkr.md | 0 {papers/doc => doc}/7-systems/pet.md | 0 {papers/doc => doc}/7-systems/pokey.md | 0 {papers/doc => doc}/7-systems/qsound.md | 0 {papers/doc => doc}/7-systems/ricoh.md | 0 {papers/doc => doc}/7-systems/saa1099.md | 0 {papers/doc => doc}/7-systems/scc.md | 0 {papers/doc => doc}/7-systems/segapcm.md | 0 {papers/doc => doc}/7-systems/sm8521.md | 0 {papers/doc => doc}/7-systems/sms.md | 0 {papers/doc => doc}/7-systems/snes.md | 0 {papers/doc => doc}/7-systems/soundunit.md | 0 {papers/doc => doc}/7-systems/t6w28.md | 0 {papers/doc => doc}/7-systems/tia.md | 0 {papers/doc => doc}/7-systems/vera.md | 0 {papers/doc => doc}/7-systems/vic20.md | 0 {papers/doc => doc}/7-systems/virtual-boy.md | 0 {papers/doc => doc}/7-systems/vrc6.md | 0 {papers/doc => doc}/7-systems/wonderswan.md | 0 {papers/doc => doc}/7-systems/x1-010.md | 0 {papers/doc => doc}/7-systems/ym2151.md | 0 {papers/doc => doc}/7-systems/ym2203.md | 0 {papers/doc => doc}/7-systems/ym2608.md | 0 {papers/doc => doc}/7-systems/ym2610.md | 0 {papers/doc => doc}/7-systems/ym2610b.md | 0 {papers/doc => doc}/7-systems/ym2612.md | 0 {papers/doc => doc}/7-systems/ymu759.md | 0 {papers/doc => doc}/7-systems/ymz280b.md | 0 {papers/doc => doc}/7-systems/zxbeep.md | 0 {papers/doc => doc}/8-advanced/README.md | 0 {papers/doc => doc}/8-advanced/channels.md | 0 {papers/doc => doc}/8-advanced/chanosc.md | 0 {papers/doc => doc}/8-advanced/chip-manager.md | 0 {papers/doc => doc}/8-advanced/clock.md | 0 {papers/doc => doc}/8-advanced/comments.md | 0 {papers/doc => doc}/8-advanced/compat-flags.md | 0 {papers/doc => doc}/8-advanced/grooves.md | 0 {papers/doc => doc}/8-advanced/log-viewer.md | 0 {papers/doc => doc}/8-advanced/mixer.md | 0 {papers/doc => doc}/8-advanced/osc.md | 0 {papers/doc => doc}/8-advanced/pat-manager.md | 0 {papers/doc => doc}/8-advanced/piano.md | 0 {papers/doc => doc}/8-advanced/regview.md | 0 {papers/doc => doc}/8-advanced/stats.md | 0 {papers/doc => doc}/README.md | 0 scripts/release-linux-AppImage.sh | 2 -- scripts/release-linux.sh | 1 + scripts/release-win32.sh | 3 ++- scripts/release-win64.sh | 3 ++- src/gui/image.cpp | 3 --- src/gui/tutorial.cpp | 2 +- 122 files changed, 15 insertions(+), 16 deletions(-) rename {papers/doc => doc}/1-intro/README.md (100%) rename {papers/doc => doc}/1-intro/hex.md (100%) rename {papers/doc => doc}/2-interface/README.md (100%) rename {papers/doc => doc}/2-interface/asset-list.md (100%) rename {papers/doc => doc}/2-interface/basic-mode.md (100%) rename {papers/doc => doc}/2-interface/components.md (100%) rename {papers/doc => doc}/2-interface/docking.png (100%) rename {papers/doc => doc}/2-interface/interface1.png (100%) rename {papers/doc => doc}/2-interface/keyboard.md (100%) rename {papers/doc => doc}/2-interface/menu-bar.md (100%) rename {papers/doc => doc}/2-interface/play-edit-controls.md (100%) rename {papers/doc => doc}/2-interface/song-info.md (100%) rename {papers/doc => doc}/2-interface/tab1.png (100%) rename {papers/doc => doc}/2-interface/tab2.png (100%) rename {papers/doc => doc}/2-interface/tab3.png (100%) rename {papers/doc => doc}/2-interface/window.png (100%) rename {papers/doc => doc}/3-pattern/README.md (100%) rename {papers/doc => doc}/3-pattern/channelbar.png (100%) rename {papers/doc => doc}/3-pattern/channels.png (100%) rename {papers/doc => doc}/3-pattern/effects.md (100%) rename {papers/doc => doc}/3-pattern/keyboard.png (100%) rename {papers/doc => doc}/3-pattern/pattern.png (100%) rename {papers/doc => doc}/4-instrument/8930.md (100%) rename {papers/doc => doc}/4-instrument/README.md (100%) rename {papers/doc => doc}/4-instrument/amiga.md (100%) rename {papers/doc => doc}/4-instrument/ay8910.md (100%) rename {papers/doc => doc}/4-instrument/c64.md (100%) rename {papers/doc => doc}/4-instrument/fm.md (100%) rename {papers/doc => doc}/4-instrument/game-boy.md (100%) rename {papers/doc => doc}/4-instrument/list.png (100%) rename {papers/doc => doc}/4-instrument/lynx.md (100%) rename {papers/doc => doc}/4-instrument/macro.png (100%) rename {papers/doc => doc}/4-instrument/n163.md (100%) rename {papers/doc => doc}/4-instrument/pce.md (100%) rename {papers/doc => doc}/4-instrument/saa.md (100%) rename {papers/doc => doc}/4-instrument/scc.md (100%) rename {papers/doc => doc}/4-instrument/standard.md (100%) rename {papers/doc => doc}/4-instrument/tia.md (100%) rename {papers/doc => doc}/4-instrument/vera.md (100%) rename {papers/doc => doc}/4-instrument/vrc6.md (100%) rename {papers/doc => doc}/4-instrument/wonderswan.md (100%) rename {papers/doc => doc}/4-instrument/x1_010.md (100%) rename {papers/doc => doc}/5-wave/README.md (100%) rename {papers/doc => doc}/6-sample/README.md (100%) rename {papers/doc => doc}/7-systems/README.md (100%) rename {papers/doc => doc}/7-systems/amiga.md (100%) rename {papers/doc => doc}/7-systems/ay8910.md (100%) rename {papers/doc => doc}/7-systems/ay8930.md (100%) rename {papers/doc => doc}/7-systems/bubblesystem.md (100%) rename {papers/doc => doc}/7-systems/c64.md (100%) rename {papers/doc => doc}/7-systems/dac.md (100%) rename {papers/doc => doc}/7-systems/es5506.md (100%) rename {papers/doc => doc}/7-systems/fds.md (100%) rename {papers/doc => doc}/7-systems/game-boy.md (100%) rename {papers/doc => doc}/7-systems/genesis.md (100%) rename {papers/doc => doc}/7-systems/k007232.md (100%) rename {papers/doc => doc}/7-systems/lynx.md (100%) rename {papers/doc => doc}/7-systems/mmc5.md (100%) rename {papers/doc => doc}/7-systems/msm5232.md (100%) rename {papers/doc => doc}/7-systems/msm6258.md (100%) rename {papers/doc => doc}/7-systems/msm6295.md (100%) rename {papers/doc => doc}/7-systems/n163.md (100%) rename {papers/doc => doc}/7-systems/namco.md (100%) rename {papers/doc => doc}/7-systems/nes.md (100%) rename {papers/doc => doc}/7-systems/opl.md (100%) rename {papers/doc => doc}/7-systems/opll.md (100%) rename {papers/doc => doc}/7-systems/opz.md (100%) rename {papers/doc => doc}/7-systems/pce.md (100%) rename {papers/doc => doc}/7-systems/pcspkr.md (100%) rename {papers/doc => doc}/7-systems/pet.md (100%) rename {papers/doc => doc}/7-systems/pokey.md (100%) rename {papers/doc => doc}/7-systems/qsound.md (100%) rename {papers/doc => doc}/7-systems/ricoh.md (100%) rename {papers/doc => doc}/7-systems/saa1099.md (100%) rename {papers/doc => doc}/7-systems/scc.md (100%) rename {papers/doc => doc}/7-systems/segapcm.md (100%) rename {papers/doc => doc}/7-systems/sm8521.md (100%) rename {papers/doc => doc}/7-systems/sms.md (100%) rename {papers/doc => doc}/7-systems/snes.md (100%) rename {papers/doc => doc}/7-systems/soundunit.md (100%) rename {papers/doc => doc}/7-systems/t6w28.md (100%) rename {papers/doc => doc}/7-systems/tia.md (100%) rename {papers/doc => doc}/7-systems/vera.md (100%) rename {papers/doc => doc}/7-systems/vic20.md (100%) rename {papers/doc => doc}/7-systems/virtual-boy.md (100%) rename {papers/doc => doc}/7-systems/vrc6.md (100%) rename {papers/doc => doc}/7-systems/wonderswan.md (100%) rename {papers/doc => doc}/7-systems/x1-010.md (100%) rename {papers/doc => doc}/7-systems/ym2151.md (100%) rename {papers/doc => doc}/7-systems/ym2203.md (100%) rename {papers/doc => doc}/7-systems/ym2608.md (100%) rename {papers/doc => doc}/7-systems/ym2610.md (100%) rename {papers/doc => doc}/7-systems/ym2610b.md (100%) rename {papers/doc => doc}/7-systems/ym2612.md (100%) rename {papers/doc => doc}/7-systems/ymu759.md (100%) rename {papers/doc => doc}/7-systems/ymz280b.md (100%) rename {papers/doc => doc}/7-systems/zxbeep.md (100%) rename {papers/doc => doc}/8-advanced/README.md (100%) rename {papers/doc => doc}/8-advanced/channels.md (100%) rename {papers/doc => doc}/8-advanced/chanosc.md (100%) rename {papers/doc => doc}/8-advanced/chip-manager.md (100%) rename {papers/doc => doc}/8-advanced/clock.md (100%) rename {papers/doc => doc}/8-advanced/comments.md (100%) rename {papers/doc => doc}/8-advanced/compat-flags.md (100%) rename {papers/doc => doc}/8-advanced/grooves.md (100%) rename {papers/doc => doc}/8-advanced/log-viewer.md (100%) rename {papers/doc => doc}/8-advanced/mixer.md (100%) rename {papers/doc => doc}/8-advanced/osc.md (100%) rename {papers/doc => doc}/8-advanced/pat-manager.md (100%) rename {papers/doc => doc}/8-advanced/piano.md (100%) rename {papers/doc => doc}/8-advanced/regview.md (100%) rename {papers/doc => doc}/8-advanced/stats.md (100%) rename {papers/doc => doc}/README.md (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index fd9be912..5e99a8dd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -872,7 +872,8 @@ if (NOT ANDROID OR TERMUX) install(TARGETS furnace RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) install(FILES res/furnace.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) install(FILES res/furnace.appdata.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo) - install(DIRECTORY papers DESTINATION ${CMAKE_INSTALL_DOCDIR}) + install(DIRECTORY doc DESTINATION ${CMAKE_INSTALL_DOCDIR}) + install(DIRECTORY papers DESTINATION ${CMAKE_INSTALL_DOCDIR}/other) install(FILES LICENSE DESTINATION ${CMAKE_INSTALL_DATADIR}/licenses/furnace) if (WITH_DEMOS) install(DIRECTORY demos DESTINATION ${CMAKE_INSTALL_DATADIR}/furnace) diff --git a/README.md b/README.md index 7f2a34cf..4ecbd14c 100644 --- a/README.md +++ b/README.md @@ -120,7 +120,7 @@ check out the [Releases](https://github.com/tildearrow/furnace/releases) page. a # quick references - **discussion**: see the [Discussions](https://github.com/tildearrow/furnace/discussions) section, or the [official Discord server](https://discord.gg/EfrwT2wq7z). -- **help**: check out the [documentation](papers/doc/README.md). it's incomplete, but has details on effects. +- **help**: check out the [documentation](doc/README.md). it's incomplete though. ## packages @@ -301,7 +301,7 @@ you may need to log out and/or reboot after doing this. > where's the manual? -see [papers/](papers/doc/README.md). it's kind of incomplete, but at least the sound chips section is there. +see [doc/](doc/README.md). it's kind of incomplete though. > is there a tutorial? diff --git a/TODO.md b/TODO.md index 0b7f1cd9..4af99b6f 100644 --- a/TODO.md +++ b/TODO.md @@ -1,6 +1,6 @@ -# to-do for 0.6pre5 +# to-do for 0.6pre6 -- tutorial +- tutorial? - ease-of-use improvements... ideas: - preset compat flags - setting to toggle the Choose a System screen on new project @@ -8,9 +8,9 @@ - a more preferable highlight/drag system - some speed/intuitive workflow improvements that go a long way - Had a hard time finding the docs on github and in Furnace's folder. - - make .pdf manual out of papers/doc/ - - you're going too fast; please slow down - - break compatibility if it relieves complexity + - make .pdf manual out of doc/ + - you're going too slow; please run + - break compatibility if it relieves complexity - ins/wave/sample organization (folders and all) - multi-key binds - bug fixes diff --git a/papers/doc/1-intro/README.md b/doc/1-intro/README.md similarity index 100% rename from papers/doc/1-intro/README.md rename to doc/1-intro/README.md diff --git a/papers/doc/1-intro/hex.md b/doc/1-intro/hex.md similarity index 100% rename from papers/doc/1-intro/hex.md rename to doc/1-intro/hex.md diff --git a/papers/doc/2-interface/README.md b/doc/2-interface/README.md similarity index 100% rename from papers/doc/2-interface/README.md rename to doc/2-interface/README.md diff --git a/papers/doc/2-interface/asset-list.md b/doc/2-interface/asset-list.md similarity index 100% rename from papers/doc/2-interface/asset-list.md rename to doc/2-interface/asset-list.md diff --git a/papers/doc/2-interface/basic-mode.md b/doc/2-interface/basic-mode.md similarity index 100% rename from papers/doc/2-interface/basic-mode.md rename to doc/2-interface/basic-mode.md diff --git a/papers/doc/2-interface/components.md b/doc/2-interface/components.md similarity index 100% rename from papers/doc/2-interface/components.md rename to doc/2-interface/components.md diff --git a/papers/doc/2-interface/docking.png b/doc/2-interface/docking.png similarity index 100% rename from papers/doc/2-interface/docking.png rename to doc/2-interface/docking.png diff --git a/papers/doc/2-interface/interface1.png b/doc/2-interface/interface1.png similarity index 100% rename from papers/doc/2-interface/interface1.png rename to doc/2-interface/interface1.png diff --git a/papers/doc/2-interface/keyboard.md b/doc/2-interface/keyboard.md similarity index 100% rename from papers/doc/2-interface/keyboard.md rename to doc/2-interface/keyboard.md diff --git a/papers/doc/2-interface/menu-bar.md b/doc/2-interface/menu-bar.md similarity index 100% rename from papers/doc/2-interface/menu-bar.md rename to doc/2-interface/menu-bar.md diff --git a/papers/doc/2-interface/play-edit-controls.md b/doc/2-interface/play-edit-controls.md similarity index 100% rename from papers/doc/2-interface/play-edit-controls.md rename to doc/2-interface/play-edit-controls.md diff --git a/papers/doc/2-interface/song-info.md b/doc/2-interface/song-info.md similarity index 100% rename from papers/doc/2-interface/song-info.md rename to doc/2-interface/song-info.md diff --git a/papers/doc/2-interface/tab1.png b/doc/2-interface/tab1.png similarity index 100% rename from papers/doc/2-interface/tab1.png rename to doc/2-interface/tab1.png diff --git a/papers/doc/2-interface/tab2.png b/doc/2-interface/tab2.png similarity index 100% rename from papers/doc/2-interface/tab2.png rename to doc/2-interface/tab2.png diff --git a/papers/doc/2-interface/tab3.png b/doc/2-interface/tab3.png similarity index 100% rename from papers/doc/2-interface/tab3.png rename to doc/2-interface/tab3.png diff --git a/papers/doc/2-interface/window.png b/doc/2-interface/window.png similarity index 100% rename from papers/doc/2-interface/window.png rename to doc/2-interface/window.png diff --git a/papers/doc/3-pattern/README.md b/doc/3-pattern/README.md similarity index 100% rename from papers/doc/3-pattern/README.md rename to doc/3-pattern/README.md diff --git a/papers/doc/3-pattern/channelbar.png b/doc/3-pattern/channelbar.png similarity index 100% rename from papers/doc/3-pattern/channelbar.png rename to doc/3-pattern/channelbar.png diff --git a/papers/doc/3-pattern/channels.png b/doc/3-pattern/channels.png similarity index 100% rename from papers/doc/3-pattern/channels.png rename to doc/3-pattern/channels.png diff --git a/papers/doc/3-pattern/effects.md b/doc/3-pattern/effects.md similarity index 100% rename from papers/doc/3-pattern/effects.md rename to doc/3-pattern/effects.md diff --git a/papers/doc/3-pattern/keyboard.png b/doc/3-pattern/keyboard.png similarity index 100% rename from papers/doc/3-pattern/keyboard.png rename to doc/3-pattern/keyboard.png diff --git a/papers/doc/3-pattern/pattern.png b/doc/3-pattern/pattern.png similarity index 100% rename from papers/doc/3-pattern/pattern.png rename to doc/3-pattern/pattern.png diff --git a/papers/doc/4-instrument/8930.md b/doc/4-instrument/8930.md similarity index 100% rename from papers/doc/4-instrument/8930.md rename to doc/4-instrument/8930.md diff --git a/papers/doc/4-instrument/README.md b/doc/4-instrument/README.md similarity index 100% rename from papers/doc/4-instrument/README.md rename to doc/4-instrument/README.md diff --git a/papers/doc/4-instrument/amiga.md b/doc/4-instrument/amiga.md similarity index 100% rename from papers/doc/4-instrument/amiga.md rename to doc/4-instrument/amiga.md diff --git a/papers/doc/4-instrument/ay8910.md b/doc/4-instrument/ay8910.md similarity index 100% rename from papers/doc/4-instrument/ay8910.md rename to doc/4-instrument/ay8910.md diff --git a/papers/doc/4-instrument/c64.md b/doc/4-instrument/c64.md similarity index 100% rename from papers/doc/4-instrument/c64.md rename to doc/4-instrument/c64.md diff --git a/papers/doc/4-instrument/fm.md b/doc/4-instrument/fm.md similarity index 100% rename from papers/doc/4-instrument/fm.md rename to doc/4-instrument/fm.md diff --git a/papers/doc/4-instrument/game-boy.md b/doc/4-instrument/game-boy.md similarity index 100% rename from papers/doc/4-instrument/game-boy.md rename to doc/4-instrument/game-boy.md diff --git a/papers/doc/4-instrument/list.png b/doc/4-instrument/list.png similarity index 100% rename from papers/doc/4-instrument/list.png rename to doc/4-instrument/list.png diff --git a/papers/doc/4-instrument/lynx.md b/doc/4-instrument/lynx.md similarity index 100% rename from papers/doc/4-instrument/lynx.md rename to doc/4-instrument/lynx.md diff --git a/papers/doc/4-instrument/macro.png b/doc/4-instrument/macro.png similarity index 100% rename from papers/doc/4-instrument/macro.png rename to doc/4-instrument/macro.png diff --git a/papers/doc/4-instrument/n163.md b/doc/4-instrument/n163.md similarity index 100% rename from papers/doc/4-instrument/n163.md rename to doc/4-instrument/n163.md diff --git a/papers/doc/4-instrument/pce.md b/doc/4-instrument/pce.md similarity index 100% rename from papers/doc/4-instrument/pce.md rename to doc/4-instrument/pce.md diff --git a/papers/doc/4-instrument/saa.md b/doc/4-instrument/saa.md similarity index 100% rename from papers/doc/4-instrument/saa.md rename to doc/4-instrument/saa.md diff --git a/papers/doc/4-instrument/scc.md b/doc/4-instrument/scc.md similarity index 100% rename from papers/doc/4-instrument/scc.md rename to doc/4-instrument/scc.md diff --git a/papers/doc/4-instrument/standard.md b/doc/4-instrument/standard.md similarity index 100% rename from papers/doc/4-instrument/standard.md rename to doc/4-instrument/standard.md diff --git a/papers/doc/4-instrument/tia.md b/doc/4-instrument/tia.md similarity index 100% rename from papers/doc/4-instrument/tia.md rename to doc/4-instrument/tia.md diff --git a/papers/doc/4-instrument/vera.md b/doc/4-instrument/vera.md similarity index 100% rename from papers/doc/4-instrument/vera.md rename to doc/4-instrument/vera.md diff --git a/papers/doc/4-instrument/vrc6.md b/doc/4-instrument/vrc6.md similarity index 100% rename from papers/doc/4-instrument/vrc6.md rename to doc/4-instrument/vrc6.md diff --git a/papers/doc/4-instrument/wonderswan.md b/doc/4-instrument/wonderswan.md similarity index 100% rename from papers/doc/4-instrument/wonderswan.md rename to doc/4-instrument/wonderswan.md diff --git a/papers/doc/4-instrument/x1_010.md b/doc/4-instrument/x1_010.md similarity index 100% rename from papers/doc/4-instrument/x1_010.md rename to doc/4-instrument/x1_010.md diff --git a/papers/doc/5-wave/README.md b/doc/5-wave/README.md similarity index 100% rename from papers/doc/5-wave/README.md rename to doc/5-wave/README.md diff --git a/papers/doc/6-sample/README.md b/doc/6-sample/README.md similarity index 100% rename from papers/doc/6-sample/README.md rename to doc/6-sample/README.md diff --git a/papers/doc/7-systems/README.md b/doc/7-systems/README.md similarity index 100% rename from papers/doc/7-systems/README.md rename to doc/7-systems/README.md diff --git a/papers/doc/7-systems/amiga.md b/doc/7-systems/amiga.md similarity index 100% rename from papers/doc/7-systems/amiga.md rename to doc/7-systems/amiga.md diff --git a/papers/doc/7-systems/ay8910.md b/doc/7-systems/ay8910.md similarity index 100% rename from papers/doc/7-systems/ay8910.md rename to doc/7-systems/ay8910.md diff --git a/papers/doc/7-systems/ay8930.md b/doc/7-systems/ay8930.md similarity index 100% rename from papers/doc/7-systems/ay8930.md rename to doc/7-systems/ay8930.md diff --git a/papers/doc/7-systems/bubblesystem.md b/doc/7-systems/bubblesystem.md similarity index 100% rename from papers/doc/7-systems/bubblesystem.md rename to doc/7-systems/bubblesystem.md diff --git a/papers/doc/7-systems/c64.md b/doc/7-systems/c64.md similarity index 100% rename from papers/doc/7-systems/c64.md rename to doc/7-systems/c64.md diff --git a/papers/doc/7-systems/dac.md b/doc/7-systems/dac.md similarity index 100% rename from papers/doc/7-systems/dac.md rename to doc/7-systems/dac.md diff --git a/papers/doc/7-systems/es5506.md b/doc/7-systems/es5506.md similarity index 100% rename from papers/doc/7-systems/es5506.md rename to doc/7-systems/es5506.md diff --git a/papers/doc/7-systems/fds.md b/doc/7-systems/fds.md similarity index 100% rename from papers/doc/7-systems/fds.md rename to doc/7-systems/fds.md diff --git a/papers/doc/7-systems/game-boy.md b/doc/7-systems/game-boy.md similarity index 100% rename from papers/doc/7-systems/game-boy.md rename to doc/7-systems/game-boy.md diff --git a/papers/doc/7-systems/genesis.md b/doc/7-systems/genesis.md similarity index 100% rename from papers/doc/7-systems/genesis.md rename to doc/7-systems/genesis.md diff --git a/papers/doc/7-systems/k007232.md b/doc/7-systems/k007232.md similarity index 100% rename from papers/doc/7-systems/k007232.md rename to doc/7-systems/k007232.md diff --git a/papers/doc/7-systems/lynx.md b/doc/7-systems/lynx.md similarity index 100% rename from papers/doc/7-systems/lynx.md rename to doc/7-systems/lynx.md diff --git a/papers/doc/7-systems/mmc5.md b/doc/7-systems/mmc5.md similarity index 100% rename from papers/doc/7-systems/mmc5.md rename to doc/7-systems/mmc5.md diff --git a/papers/doc/7-systems/msm5232.md b/doc/7-systems/msm5232.md similarity index 100% rename from papers/doc/7-systems/msm5232.md rename to doc/7-systems/msm5232.md diff --git a/papers/doc/7-systems/msm6258.md b/doc/7-systems/msm6258.md similarity index 100% rename from papers/doc/7-systems/msm6258.md rename to doc/7-systems/msm6258.md diff --git a/papers/doc/7-systems/msm6295.md b/doc/7-systems/msm6295.md similarity index 100% rename from papers/doc/7-systems/msm6295.md rename to doc/7-systems/msm6295.md diff --git a/papers/doc/7-systems/n163.md b/doc/7-systems/n163.md similarity index 100% rename from papers/doc/7-systems/n163.md rename to doc/7-systems/n163.md diff --git a/papers/doc/7-systems/namco.md b/doc/7-systems/namco.md similarity index 100% rename from papers/doc/7-systems/namco.md rename to doc/7-systems/namco.md diff --git a/papers/doc/7-systems/nes.md b/doc/7-systems/nes.md similarity index 100% rename from papers/doc/7-systems/nes.md rename to doc/7-systems/nes.md diff --git a/papers/doc/7-systems/opl.md b/doc/7-systems/opl.md similarity index 100% rename from papers/doc/7-systems/opl.md rename to doc/7-systems/opl.md diff --git a/papers/doc/7-systems/opll.md b/doc/7-systems/opll.md similarity index 100% rename from papers/doc/7-systems/opll.md rename to doc/7-systems/opll.md diff --git a/papers/doc/7-systems/opz.md b/doc/7-systems/opz.md similarity index 100% rename from papers/doc/7-systems/opz.md rename to doc/7-systems/opz.md diff --git a/papers/doc/7-systems/pce.md b/doc/7-systems/pce.md similarity index 100% rename from papers/doc/7-systems/pce.md rename to doc/7-systems/pce.md diff --git a/papers/doc/7-systems/pcspkr.md b/doc/7-systems/pcspkr.md similarity index 100% rename from papers/doc/7-systems/pcspkr.md rename to doc/7-systems/pcspkr.md diff --git a/papers/doc/7-systems/pet.md b/doc/7-systems/pet.md similarity index 100% rename from papers/doc/7-systems/pet.md rename to doc/7-systems/pet.md diff --git a/papers/doc/7-systems/pokey.md b/doc/7-systems/pokey.md similarity index 100% rename from papers/doc/7-systems/pokey.md rename to doc/7-systems/pokey.md diff --git a/papers/doc/7-systems/qsound.md b/doc/7-systems/qsound.md similarity index 100% rename from papers/doc/7-systems/qsound.md rename to doc/7-systems/qsound.md diff --git a/papers/doc/7-systems/ricoh.md b/doc/7-systems/ricoh.md similarity index 100% rename from papers/doc/7-systems/ricoh.md rename to doc/7-systems/ricoh.md diff --git a/papers/doc/7-systems/saa1099.md b/doc/7-systems/saa1099.md similarity index 100% rename from papers/doc/7-systems/saa1099.md rename to doc/7-systems/saa1099.md diff --git a/papers/doc/7-systems/scc.md b/doc/7-systems/scc.md similarity index 100% rename from papers/doc/7-systems/scc.md rename to doc/7-systems/scc.md diff --git a/papers/doc/7-systems/segapcm.md b/doc/7-systems/segapcm.md similarity index 100% rename from papers/doc/7-systems/segapcm.md rename to doc/7-systems/segapcm.md diff --git a/papers/doc/7-systems/sm8521.md b/doc/7-systems/sm8521.md similarity index 100% rename from papers/doc/7-systems/sm8521.md rename to doc/7-systems/sm8521.md diff --git a/papers/doc/7-systems/sms.md b/doc/7-systems/sms.md similarity index 100% rename from papers/doc/7-systems/sms.md rename to doc/7-systems/sms.md diff --git a/papers/doc/7-systems/snes.md b/doc/7-systems/snes.md similarity index 100% rename from papers/doc/7-systems/snes.md rename to doc/7-systems/snes.md diff --git a/papers/doc/7-systems/soundunit.md b/doc/7-systems/soundunit.md similarity index 100% rename from papers/doc/7-systems/soundunit.md rename to doc/7-systems/soundunit.md diff --git a/papers/doc/7-systems/t6w28.md b/doc/7-systems/t6w28.md similarity index 100% rename from papers/doc/7-systems/t6w28.md rename to doc/7-systems/t6w28.md diff --git a/papers/doc/7-systems/tia.md b/doc/7-systems/tia.md similarity index 100% rename from papers/doc/7-systems/tia.md rename to doc/7-systems/tia.md diff --git a/papers/doc/7-systems/vera.md b/doc/7-systems/vera.md similarity index 100% rename from papers/doc/7-systems/vera.md rename to doc/7-systems/vera.md diff --git a/papers/doc/7-systems/vic20.md b/doc/7-systems/vic20.md similarity index 100% rename from papers/doc/7-systems/vic20.md rename to doc/7-systems/vic20.md diff --git a/papers/doc/7-systems/virtual-boy.md b/doc/7-systems/virtual-boy.md similarity index 100% rename from papers/doc/7-systems/virtual-boy.md rename to doc/7-systems/virtual-boy.md diff --git a/papers/doc/7-systems/vrc6.md b/doc/7-systems/vrc6.md similarity index 100% rename from papers/doc/7-systems/vrc6.md rename to doc/7-systems/vrc6.md diff --git a/papers/doc/7-systems/wonderswan.md b/doc/7-systems/wonderswan.md similarity index 100% rename from papers/doc/7-systems/wonderswan.md rename to doc/7-systems/wonderswan.md diff --git a/papers/doc/7-systems/x1-010.md b/doc/7-systems/x1-010.md similarity index 100% rename from papers/doc/7-systems/x1-010.md rename to doc/7-systems/x1-010.md diff --git a/papers/doc/7-systems/ym2151.md b/doc/7-systems/ym2151.md similarity index 100% rename from papers/doc/7-systems/ym2151.md rename to doc/7-systems/ym2151.md diff --git a/papers/doc/7-systems/ym2203.md b/doc/7-systems/ym2203.md similarity index 100% rename from papers/doc/7-systems/ym2203.md rename to doc/7-systems/ym2203.md diff --git a/papers/doc/7-systems/ym2608.md b/doc/7-systems/ym2608.md similarity index 100% rename from papers/doc/7-systems/ym2608.md rename to doc/7-systems/ym2608.md diff --git a/papers/doc/7-systems/ym2610.md b/doc/7-systems/ym2610.md similarity index 100% rename from papers/doc/7-systems/ym2610.md rename to doc/7-systems/ym2610.md diff --git a/papers/doc/7-systems/ym2610b.md b/doc/7-systems/ym2610b.md similarity index 100% rename from papers/doc/7-systems/ym2610b.md rename to doc/7-systems/ym2610b.md diff --git a/papers/doc/7-systems/ym2612.md b/doc/7-systems/ym2612.md similarity index 100% rename from papers/doc/7-systems/ym2612.md rename to doc/7-systems/ym2612.md diff --git a/papers/doc/7-systems/ymu759.md b/doc/7-systems/ymu759.md similarity index 100% rename from papers/doc/7-systems/ymu759.md rename to doc/7-systems/ymu759.md diff --git a/papers/doc/7-systems/ymz280b.md b/doc/7-systems/ymz280b.md similarity index 100% rename from papers/doc/7-systems/ymz280b.md rename to doc/7-systems/ymz280b.md diff --git a/papers/doc/7-systems/zxbeep.md b/doc/7-systems/zxbeep.md similarity index 100% rename from papers/doc/7-systems/zxbeep.md rename to doc/7-systems/zxbeep.md diff --git a/papers/doc/8-advanced/README.md b/doc/8-advanced/README.md similarity index 100% rename from papers/doc/8-advanced/README.md rename to doc/8-advanced/README.md diff --git a/papers/doc/8-advanced/channels.md b/doc/8-advanced/channels.md similarity index 100% rename from papers/doc/8-advanced/channels.md rename to doc/8-advanced/channels.md diff --git a/papers/doc/8-advanced/chanosc.md b/doc/8-advanced/chanosc.md similarity index 100% rename from papers/doc/8-advanced/chanosc.md rename to doc/8-advanced/chanosc.md diff --git a/papers/doc/8-advanced/chip-manager.md b/doc/8-advanced/chip-manager.md similarity index 100% rename from papers/doc/8-advanced/chip-manager.md rename to doc/8-advanced/chip-manager.md diff --git a/papers/doc/8-advanced/clock.md b/doc/8-advanced/clock.md similarity index 100% rename from papers/doc/8-advanced/clock.md rename to doc/8-advanced/clock.md diff --git a/papers/doc/8-advanced/comments.md b/doc/8-advanced/comments.md similarity index 100% rename from papers/doc/8-advanced/comments.md rename to doc/8-advanced/comments.md diff --git a/papers/doc/8-advanced/compat-flags.md b/doc/8-advanced/compat-flags.md similarity index 100% rename from papers/doc/8-advanced/compat-flags.md rename to doc/8-advanced/compat-flags.md diff --git a/papers/doc/8-advanced/grooves.md b/doc/8-advanced/grooves.md similarity index 100% rename from papers/doc/8-advanced/grooves.md rename to doc/8-advanced/grooves.md diff --git a/papers/doc/8-advanced/log-viewer.md b/doc/8-advanced/log-viewer.md similarity index 100% rename from papers/doc/8-advanced/log-viewer.md rename to doc/8-advanced/log-viewer.md diff --git a/papers/doc/8-advanced/mixer.md b/doc/8-advanced/mixer.md similarity index 100% rename from papers/doc/8-advanced/mixer.md rename to doc/8-advanced/mixer.md diff --git a/papers/doc/8-advanced/osc.md b/doc/8-advanced/osc.md similarity index 100% rename from papers/doc/8-advanced/osc.md rename to doc/8-advanced/osc.md diff --git a/papers/doc/8-advanced/pat-manager.md b/doc/8-advanced/pat-manager.md similarity index 100% rename from papers/doc/8-advanced/pat-manager.md rename to doc/8-advanced/pat-manager.md diff --git a/papers/doc/8-advanced/piano.md b/doc/8-advanced/piano.md similarity index 100% rename from papers/doc/8-advanced/piano.md rename to doc/8-advanced/piano.md diff --git a/papers/doc/8-advanced/regview.md b/doc/8-advanced/regview.md similarity index 100% rename from papers/doc/8-advanced/regview.md rename to doc/8-advanced/regview.md diff --git a/papers/doc/8-advanced/stats.md b/doc/8-advanced/stats.md similarity index 100% rename from papers/doc/8-advanced/stats.md rename to doc/8-advanced/stats.md diff --git a/papers/doc/README.md b/doc/README.md similarity index 100% rename from papers/doc/README.md rename to doc/README.md diff --git a/scripts/release-linux-AppImage.sh b/scripts/release-linux-AppImage.sh index 7c20476f..4cf8a8cd 100755 --- a/scripts/release-linux-AppImage.sh +++ b/scripts/release-linux-AppImage.sh @@ -47,5 +47,3 @@ cd ../../.. [ -e appimagetool-x86_64.AppImage ] || { wget "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" && chmod 755 appimagetool-x86_64.AppImage; } ./appimagetool-x86_64.AppImage --appimage-extract ARCH=$(uname -m) ./squashfs-root/AppRun furnace.AppDir - -#zip -r furnace.zip LICENSE.txt Furnace*.dmg README.txt papers diff --git a/scripts/release-linux.sh b/scripts/release-linux.sh index b554ed70..030f8259 100755 --- a/scripts/release-linux.sh +++ b/scripts/release-linux.sh @@ -51,6 +51,7 @@ cd .. cp ../../../LICENSE . || exit 1 cp ../../../README.md . || exit 1 cp -r ../../../papers papers || exit 1 +cp -r ../../../doc doc || exit 1 rmdir usr || exit 1 strip -s furnace diff --git a/scripts/release-win32.sh b/scripts/release-win32.sh index df603dba..e0c0eec6 100755 --- a/scripts/release-win32.sh +++ b/scripts/release-win32.sh @@ -27,13 +27,14 @@ cp ../../LICENSE LICENSE.txt || exit 1 cp ../../win32build/furnace.exe . || exit 1 cp ../../README.md README.txt || exit 1 cp -r ../../papers papers || exit 1 +cp -r ../../doc doc || exit 1 cp -r ../../demos demos || exit 1 cp -r ../../instruments instruments || exit 1 cp -r ../../wavetables wavetables || exit 1 i686-w64-mingw32-strip -s furnace.exe || exit 1 -zip -r furnace.zip LICENSE.txt furnace.exe README.txt papers demos instruments wavetables +zip -r furnace.zip LICENSE.txt furnace.exe README.txt papers doc demos instruments wavetables furName=$(git describe --tags | sed "s/v0/0/") diff --git a/scripts/release-win64.sh b/scripts/release-win64.sh index e1678eda..9183007b 100755 --- a/scripts/release-win64.sh +++ b/scripts/release-win64.sh @@ -27,13 +27,14 @@ cp ../../LICENSE LICENSE.txt || exit 1 cp ../../winbuild/furnace.exe . || exit 1 cp ../../README.md README.txt || exit 1 cp -r ../../papers papers || exit 1 +cp -r ../../doc doc || exit 1 cp -r ../../demos demos || exit 1 cp -r ../../instruments instruments || exit 1 cp -r ../../wavetables wavetables || exit 1 x86_64-w64-mingw32-strip -s furnace.exe || exit 1 -zip -r furnace.zip LICENSE.txt furnace.exe README.txt papers demos instruments wavetables +zip -r furnace.zip LICENSE.txt furnace.exe README.txt papers doc demos instruments wavetables furName=$(git describe --tags | sed "s/v0/0/") diff --git a/src/gui/image.cpp b/src/gui/image.cpp index a075d8ac..c4528445 100644 --- a/src/gui/image.cpp +++ b/src/gui/image.cpp @@ -15,9 +15,6 @@ * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - * this license only applies to the code. for the license of each font used, - * see `papers/`. */ #include "gui.h" diff --git a/src/gui/tutorial.cpp b/src/gui/tutorial.cpp index 71ad3ca4..c1be8912 100644 --- a/src/gui/tutorial.cpp +++ b/src/gui/tutorial.cpp @@ -279,7 +279,7 @@ void FurnaceGUI::drawTutorial() { ImGui::TextWrapped( "if you need help, you may:\n" - "- read the (incomplete) manual: https://github.com/tildearrow/furnace/blob/master/papers/doc/README.md\n" + "- read the (incomplete) manual: https://github.com/tildearrow/furnace/blob/master/doc/README.md\n" "- ask for help in Discussions (https://github.com/tildearrow/furnace/discussions) or the Furnace Discord (https://discord.gg/EfrwT2wq7z)" ); From 8d07441d2e1395fe5430557c947b6e8be83c712f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 5 Jun 2023 01:05:19 -0500 Subject: [PATCH 029/183] update QSound_smile tiny additional fixes --- demos/misc/QSound_smile.fur | Bin 351319 -> 318367 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/demos/misc/QSound_smile.fur b/demos/misc/QSound_smile.fur index 5153ddcf8e8eff62aa523b4fdd129e441ecb7204..b3e361b4322e1b515749c3025f3009c5fbadce6b 100644 GIT binary patch literal 318367 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μh7DV^r(No>ft?%EBcOF#CJ(mj-lr$3gfpR| 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

    &pb?2gX@ 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 b9eZNdu_tC7d&0)39d1oezOv}1^Zfq;YZlop literal 351319 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 D5B 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≺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

    _|W4ve!ENs-c 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�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�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 OQ!*wI>i+@JBk4{eNYdT_ From 5e0eb9aa23b43517f33871280975bdf9e2c91f2e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 5 Jun 2023 04:28:07 -0500 Subject: [PATCH 030/183] dev159 - add 8-bit dither option --- papers/format.md | 4 +++- src/engine/engine.h | 4 ++-- src/engine/sample.cpp | 34 +++++++++++++++++++++++++++------- src/engine/sample.h | 11 +++++++---- src/gui/doAction.cpp | 2 ++ src/gui/sampleEdit.cpp | 13 +++++++++++++ 6 files changed, 54 insertions(+), 14 deletions(-) diff --git a/papers/format.md b/papers/format.md index 248a98d0..bf0b929e 100644 --- a/papers/format.md +++ b/papers/format.md @@ -32,6 +32,7 @@ these fields are 0 in format versions prior to 100 (0.6pre1). the format versions are: +- 159: Furnace dev159 - 158: Furnace 0.6pre5 - 157: Furnace dev157 - 156: Furnace dev156 @@ -1232,7 +1233,8 @@ size | description | - 2: ping-pong 1 | flags (>=129) or reserved | - 0: BRR emphasis - 1 | reserved + 1 | flags 2 (>=159) or reserved + | - 0: dither 4 | loop start | - -1 means no loop 4 | loop end diff --git a/src/engine/engine.h b/src/engine/engine.h index bf842aae..2b9f5992 100644 --- a/src/engine/engine.h +++ b/src/engine/engine.h @@ -54,8 +54,8 @@ #define EXTERN_BUSY_BEGIN_SOFT e->softLocked=true; e->isBusy.lock(); #define EXTERN_BUSY_END e->isBusy.unlock(); e->softLocked=false; -#define DIV_VERSION "0.6pre5" -#define DIV_ENGINE_VERSION 158 +#define DIV_VERSION "dev159" +#define DIV_ENGINE_VERSION 159 // for imports #define DIV_VERSION_MOD 0xff01 #define DIV_VERSION_FC 0xff02 diff --git a/src/engine/sample.cpp b/src/engine/sample.cpp index 57bf7e09..5f9b2554 100644 --- a/src/engine/sample.cpp +++ b/src/engine/sample.cpp @@ -54,7 +54,7 @@ void DivSample::putSampleData(SafeWriter* w) { w->writeC(depth); w->writeC(loopMode); w->writeC(brrEmphasis); - w->writeC(0); // reserved + w->writeC(dither); w->writeI(loop?loopStart:-1); w->writeI(loop?loopEnd:-1); @@ -131,8 +131,11 @@ DivDataErrors DivSample::readSampleData(SafeReader& reader, short version) { } else { reader.readC(); } - // reserved - reader.readC(); + if (version>=159) { + dither=reader.readC()&1; + } else { + reader.readC(); + } loopStart=reader.readI(); loopEnd=reader.readI(); @@ -1196,8 +1199,23 @@ void DivSample::render(unsigned int formatMask) { } if (NOT_IN_FORMAT(DIV_SAMPLE_DEPTH_8BIT)) { // 8-bit PCM if (!initInternal(DIV_SAMPLE_DEPTH_8BIT,samples)) return; - for (unsigned int i=0; i>8; + if (dither) { + unsigned short lfsr=0x6438; + unsigned short lfsr1=0x1283; + signed char errorLast=0; + signed char errorCur=0; + for (unsigned int i=0; i>8; + errorLast=errorCur; + errorCur=(val<<8)-data16[i]; + data8[i]=CLAMP(val-((((errorLast+errorCur)>>1)+(lfsr&0xff))>>8),-128,127); + lfsr=(lfsr<<1)|(((lfsr>>1)^(lfsr>>2)^(lfsr>>4)^(lfsr>>15))&1); + lfsr1=(lfsr1<<1)|(((lfsr1>>1)^(lfsr1>>2)^(lfsr1>>4)^(lfsr1>>15))&1); + } + } else { + for (unsigned int i=0; i>8; + } } } if (NOT_IN_FORMAT(DIV_SAMPLE_DEPTH_BRR)) { // BRR @@ -1277,9 +1295,9 @@ DivSampleHistory* DivSample::prepareUndo(bool data, bool doNotPush) { duplicate=new unsigned char[getCurBufLen()]; memcpy(duplicate,getCurBuf(),getCurBufLen()); } - h=new DivSampleHistory(duplicate,getCurBufLen(),samples,depth,rate,centerRate,loopStart,loopEnd,loop,brrEmphasis,loopMode); + h=new DivSampleHistory(duplicate,getCurBufLen(),samples,depth,rate,centerRate,loopStart,loopEnd,loop,brrEmphasis,dither,loopMode); } else { - h=new DivSampleHistory(depth,rate,centerRate,loopStart,loopEnd,loop,brrEmphasis,loopMode); + h=new DivSampleHistory(depth,rate,centerRate,loopStart,loopEnd,loop,brrEmphasis,dither,loopMode); } if (!doNotPush) { while (!redoHist.empty()) { @@ -1312,6 +1330,8 @@ DivSampleHistory* DivSample::prepareUndo(bool data, bool doNotPush) { loopStart=h->loopStart; \ loopEnd=h->loopEnd; \ loop=h->loop; \ + brrEmphasis=h->brrEmphasis; \ + dither=h->dither; \ loopMode=h->loopMode; diff --git a/src/engine/sample.h b/src/engine/sample.h index c2f08ced..ce1bf1fa 100644 --- a/src/engine/sample.h +++ b/src/engine/sample.h @@ -61,10 +61,10 @@ struct DivSampleHistory { unsigned int length, samples; DivSampleDepth depth; int rate, centerRate, loopStart, loopEnd; - bool loop, brrEmphasis; + bool loop, brrEmphasis, dither; DivSampleLoopMode loopMode; bool hasSample; - DivSampleHistory(void* d, unsigned int l, unsigned int s, DivSampleDepth de, int r, int cr, int ls, int le, bool lp, bool be, DivSampleLoopMode lm): + DivSampleHistory(void* d, unsigned int l, unsigned int s, DivSampleDepth de, int r, int cr, int ls, int le, bool lp, bool be, bool di, DivSampleLoopMode lm): data((unsigned char*)d), length(l), samples(s), @@ -75,9 +75,10 @@ struct DivSampleHistory { loopEnd(le), loop(lp), brrEmphasis(be), + dither(di), loopMode(lm), hasSample(true) {} - DivSampleHistory(DivSampleDepth de, int r, int cr, int ls, int le, bool lp, bool be, DivSampleLoopMode lm): + DivSampleHistory(DivSampleDepth de, int r, int cr, int ls, int le, bool lp, bool be, bool di, DivSampleLoopMode lm): data(NULL), length(0), samples(0), @@ -88,6 +89,7 @@ struct DivSampleHistory { loopEnd(le), loop(lp), brrEmphasis(be), + dither(di), loopMode(lm), hasSample(false) {} ~DivSampleHistory(); @@ -108,7 +110,7 @@ struct DivSample { // - 10: VOX ADPCM // - 16: 16-bit PCM DivSampleDepth depth; - bool loop, brrEmphasis; + bool loop, brrEmphasis, dither; // valid values are: // - 0: Forward loop // - 1: Backward loop @@ -323,6 +325,7 @@ struct DivSample { depth(DIV_SAMPLE_DEPTH_16BIT), loop(false), brrEmphasis(true), + dither(false), loopMode(DIV_SAMPLE_LOOP_FORWARD), data8(NULL), data16(NULL), diff --git a/src/gui/doAction.cpp b/src/gui/doAction.cpp index 7520162f..87d74e6c 100644 --- a/src/gui/doAction.cpp +++ b/src/gui/doAction.cpp @@ -791,6 +791,8 @@ void FurnaceGUI::doAction(int what) { sample->loopEnd=prevSample->loopEnd; sample->loop=prevSample->loop; sample->loopMode=prevSample->loopMode; + sample->brrEmphasis=prevSample->brrEmphasis; + sample->dither=prevSample->dither; sample->depth=prevSample->depth; if (sample->init(prevSample->samples)) { if (prevSample->getCurBuf()!=NULL) { diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index c0691f7d..238f37e8 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -291,6 +291,19 @@ void FurnaceGUI::drawSampleEdit() { } } } + if (sample->depth!=DIV_SAMPLE_DEPTH_8BIT && e->getSampleFormatMask()&(1L<dither; + if (ImGui::Checkbox("8-bit dither",&di)) { + sample->prepareUndo(true); + sample->dither=di; + e->renderSamplesP(); + updateSampleTex=true; + MARK_MODIFIED; + } + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("dither the sample when used on a chip that only supports 8-bit samples."); + } + } int sampleNote=round(64.0+(128.0*12.0*log((double)targetRate/8363.0)/log(2.0))); int sampleNoteCoarse=60+(sampleNote>>7); From 982678eff31533b08f5f3264a125ef850397afc4 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 5 Jun 2023 18:59:27 -0500 Subject: [PATCH 031/183] GUI: fix one digit effect when it is 10xx issue #1141 --- src/gui/pattern.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/pattern.cpp b/src/gui/pattern.cpp index 934faacf..a34a856d 100644 --- a/src/gui/pattern.cpp +++ b/src/gui/pattern.cpp @@ -287,7 +287,7 @@ inline void FurnaceGUI::patternRow(int i, bool isPlaying, float lineHeight, int if (pat->data[i][index]>0xff) { snprintf(id,63,"??##PE%d_%d_%d",k,i,j); ImGui::PushStyleColor(ImGuiCol_Text,uiColors[GUI_COLOR_PATTERN_EFFECT_INVALID]); - } else if (pat->data[i][index]>0x10 || settings.oneDigitEffects==0) { + } else if (pat->data[i][index]>=0x10 || settings.oneDigitEffects==0) { const unsigned char data=pat->data[i][index]; snprintf(id,63,"%.2X##PE%d_%d_%d",data,k,i,j); ImGui::PushStyleColor(ImGuiCol_Text,uiColors[fxColors[data]]); From 6b89dec812aa43089b3cde6e1e410ac90f515c9a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 5 Jun 2023 23:24:34 -0500 Subject: [PATCH 032/183] ZSM: code style --- src/engine/zsm.cpp | 87 ++++++++++++++++++++++--------------------- src/engine/zsmOps.cpp | 73 ++++++++++++++++++++---------------- 2 files changed, 85 insertions(+), 75 deletions(-) diff --git a/src/engine/zsm.cpp b/src/engine/zsm.cpp index 5fdcd623..b65bbcbb 100644 --- a/src/engine/zsm.cpp +++ b/src/engine/zsm.cpp @@ -23,7 +23,7 @@ #include "song.h" DivZSM::DivZSM() { - w = NULL; + w=NULL; init(); } @@ -31,8 +31,8 @@ DivZSM::~DivZSM() { } void DivZSM::init(unsigned int rate) { - if (w != NULL) delete w; - w = new SafeWriter; + if (w!=NULL) delete w; + w=new SafeWriter; w->init(); // write default ZSM data header w->write("zm",2); // magic header @@ -50,7 +50,7 @@ void DivZSM::init(unsigned int rate) { w->writeS((unsigned short)rate); // 2 reserved bytes (set to zero) w->writeS(0x00); - tickRate = rate; + tickRate=rate; loopOffset=-1; numWrites=0; memset(&ymState,-1,sizeof(ymState)); @@ -63,44 +63,43 @@ int DivZSM::getoffset() { } void DivZSM::writeYM(unsigned char a, unsigned char v) { - int lastMask = ymMask; + int lastMask=ymMask; if (a==0x19 && v>=0x80) a=0x1a; // AMD/PSD use same reg addr. store PMD as 0x1a - if (a==0x08 && (v&0xf8)) ymMask |= (1 << (v & 0x07)); // mark chan as in-use if keyDN - if (a!=0x08) ymState[ym_NEW][a] = v; // cache the newly-written value + if (a==0x08 && (v&0xf8)) ymMask|=(1<<(v&0x07)); // mark chan as in-use if keyDN + if (a!=0x08) ymState[ym_NEW][a]=v; // cache the newly-written value bool writeit=false; // used to suppress spurious writes to unused channels - if (a < 0x20) { - if (a == 0x08) { + if (a<0x20) { + if (a==0x08) { // write keyUPDN messages if channel is active. - writeit = (ymMask & (1 << (v & 0x07))) > 0; - } - else { + writeit=(ymMask&(1<<(v&0x07)))>0; + } else { // do not suppress global registers - writeit = true; + writeit=true; } } else { - writeit = (ymMask & (1 << (a & 0x07))) > 0; // a&0x07 = chan ID for regs >=0x20 + writeit=(ymMask&(1<<(a&0x07)))>0; // a&0x07 = chan ID for regs >=0x20 } - if (lastMask != ymMask) { + if (lastMask!=ymMask) { // if the ymMask just changed, then the channel has become active. - // This can only happen on a KeyDN event, so voice = v & 0x07 + // This can only happen on a KeyDN event, so voice=v&0x07 // insert a keyUP just to be safe. ymwrites.push_back(DivRegWrite(0x08,v&0x07)); numWrites++; // flush the ym_NEW cached states for this channel into the ZSM.... - for ( int i=0x20 + (v&0x07); i <= 0xff ; i+=8) { - if (ymState[ym_NEW][i] != ymState[ym_PREV][i]) { + for (int i=0x20+(v&0x07); i<=0xff; i+=8) { + if (ymState[ym_NEW][i]!=ymState[ym_PREV][i]) { ymwrites.push_back(DivRegWrite(i,ymState[ym_NEW][i])); numWrites++; // ...and update the shadow - ymState[ym_PREV][i] = ymState[ym_NEW][i]; + ymState[ym_PREV][i]=ymState[ym_NEW][i]; } } } // Handle the current write if channel is active - if (writeit && ((ymState[ym_NEW][a] != ymState[ym_PREV][a])||a==0x08) ) { + if (writeit && ((ymState[ym_NEW][a]!=ymState[ym_PREV][a]) || a==0x08)) { // update YM shadow if not the KeyUPDN register. - if (a!=0x008) ymState[ym_PREV][a] = ymState[ym_NEW][a]; - // if reg = PMD, then change back to real register 0x19 + if (a!=8) ymState[ym_PREV][a]=ymState[ym_NEW][a]; + // if reg=PMD, then change back to real register 0x19 if (a==0x1a) a=0x19; ymwrites.push_back(DivRegWrite(a,v)); numWrites++; @@ -109,24 +108,26 @@ void DivZSM::writeYM(unsigned char a, unsigned char v) { void DivZSM::writePSG(unsigned char a, unsigned char v) { // TODO: suppress writes to PSG voice that is not audible (volume=0) - if (a >= 64) { + if (a>=64) { logD ("ZSM: ignoring VERA PSG write a=%02x v=%02x",a,v); return; } - if(psgState[psg_PREV][a] == v) { - if (psgState[psg_NEW][a] != v) + if (psgState[psg_PREV][a]==v) { + if (psgState[psg_NEW][a]!=v) { // NEW value is being reset to the same as PREV value // so it is no longer a new write. numWrites--; + } } else { - if (psgState[psg_PREV][a] == psgState[psg_NEW][a]) + if (psgState[psg_PREV][a]==psgState[psg_NEW][a]) { // if this write changes the NEW cached value to something other // than the PREV value, then this is a new write. numWrites++; + } } - psgState[psg_NEW][a] = v; - // mark channel as used in the psgMask if volume is set > 0. - if ((a % 4 == 2) && (v & 0x3f)) psgMask |= (1 << (a>>2)); + psgState[psg_NEW][a]=v; + // mark channel as used in the psgMask if volume is set>0. + if ((a%4==2) && (v&0x3f)) psgMask|=(1<<(a>>2)); } void DivZSM::writePCM(unsigned char a, unsigned char v) { @@ -135,7 +136,7 @@ void DivZSM::writePCM(unsigned char a, unsigned char v) { void DivZSM::tick(int numticks) { flushWrites(); - ticks += numticks; + ticks+=numticks; } void DivZSM::setLoopPoint() { @@ -154,12 +155,14 @@ void DivZSM::setLoopPoint() { memset(&ymState[ym_PREV],-1,sizeof(ymState[ym_PREV])); // ... and cache (except for unused channels) memset(&ymState[ym_NEW],-1,0x20); - for (int chan=0; chan<8 ; chan++) { + for (int chan=0; chan<8; chan++) { // do not clear state for as-yet-unused channels - if (!(ymMask & (1<writeC(ZSM_EOF); // update channel use masks. w->seek(0x09,SEEK_SET); - w->writeC((unsigned char)(ymMask & 0xff)); - w->writeS((short)(psgMask & 0xffff)); + w->writeC((unsigned char)(ymMask&0xff)); + w->writeS((short)(psgMask&0xffff)); // todo: put PCM offset/data writes here once defined in ZSM standard. return w; } @@ -179,16 +182,16 @@ void DivZSM::flushWrites() { logD("ZSM: flushWrites.... numwrites=%d ticks=%d ymwrites=%d",numWrites,ticks,ymwrites.size()); if (numWrites==0) return; flushTicks(); // only flush ticks if there are writes pending. - for (unsigned char i=0;i<64;i++) { - if (psgState[psg_NEW][i] == psgState[psg_PREV][i]) continue; + for (unsigned char i=0; i<64; i++) { + if (psgState[psg_NEW][i]==psgState[psg_PREV][i]) continue; psgState[psg_PREV][i]=psgState[psg_NEW][i]; w->writeC(i); w->writeC(psgState[psg_NEW][i]); } - int n=0; // n = completed YM writes. used to determine when to write the CMD byte... + int n=0; // n=completed YM writes. used to determine when to write the CMD byte... for (DivRegWrite& write: ymwrites) { - if (n%ZSM_YM_MAX_WRITES == 0) { - if(ymwrites.size()-n > ZSM_YM_MAX_WRITES) { + if (n%ZSM_YM_MAX_WRITES==0) { + if (ymwrites.size()-n>ZSM_YM_MAX_WRITES) { w->writeC((unsigned char)(ZSM_YM_CMD+ZSM_YM_MAX_WRITES)); logD("ZSM: YM-write: %d (%02x) [max]",ZSM_YM_MAX_WRITES,ZSM_YM_MAX_WRITES+ZSM_YM_CMD); } else { @@ -205,10 +208,10 @@ void DivZSM::flushWrites() { } void DivZSM::flushTicks() { - while (ticks > ZSM_DELAY_MAX) { + while (ticks>ZSM_DELAY_MAX) { logD("ZSM: write delay %d (max)",ZSM_DELAY_MAX); w->writeC((unsigned char)(ZSM_DELAY_CMD+ZSM_DELAY_MAX)); - ticks -= ZSM_DELAY_MAX; + ticks-=ZSM_DELAY_MAX; } if (ticks>0) { logD("ZSM: write delay %d",ticks); diff --git a/src/engine/zsmOps.cpp b/src/engine/zsmOps.cpp index 0207a93d..6c935b83 100644 --- a/src/engine/zsmOps.cpp +++ b/src/engine/zsmOps.cpp @@ -27,36 +27,42 @@ constexpr int MASTER_CLOCK_PREC=(sizeof(void*)==8)?8:0; constexpr int MASTER_CLOCK_MASK=(sizeof(void*)==8)?0xff:0; SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { + int VERA=-1; + int YM=-1; + int IGNORED=0; - int VERA = -1; - int YM = -1; - int IGNORED = 0; - - //loop = false; // find indexes for YM and VERA. Ignore other systems. for (int i=0; i= 0) { IGNORED++;break; } - VERA = i; + if (VERA>=0) { + IGNORED++; + break; + } + VERA=i; logD("VERA detected as chip id %d",i); break; case DIV_SYSTEM_YM2151: - if (YM >= 0) { IGNORED++;break; } - YM = i; + if (YM>=0) { + IGNORED++; + break; + } + YM=i; logD("YM detected as chip id %d",i); break; default: IGNORED++; logD("Ignoring chip %d systemID %d",i,song.system[i]); + break; } } - if (VERA < 0 && YM < 0) { - logE("No supported systems for ZSM"); - return NULL; + if (VERA<0 && YM<0) { + logE("No supported systems for ZSM"); + return NULL; } - if (IGNORED > 0) + if (IGNORED>0) { logW("ZSM export ignoring %d unsupported system%c",IGNORED,IGNORED>1?'s':' '); + } stop(); repeatPattern=false; @@ -64,7 +70,7 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { BUSY_BEGIN_SOFT; double origRate=got.rate; - got.rate=zsmrate & 0xffff; + got.rate=zsmrate&0xffff; // determine loop point int loopOrder=0; @@ -91,13 +97,13 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { int loopPos=-1; int writeCount=0; int fracWait=0; // accumulates fractional ticks - if (VERA >= 0) disCont[VERA].dispatch->toggleRegisterDump(true); - if (YM >= 0) { + if (VERA>=0) disCont[VERA].dispatch->toggleRegisterDump(true); + if (YM>=0) { disCont[YM].dispatch->toggleRegisterDump(true); // emit LFO initialization commands - zsm.writeYM(0x18,0); // freq = 0 - zsm.writeYM(0x19,0x7F); // AMD = 7F - zsm.writeYM(0x19,0xFF); // PMD = 7F + zsm.writeYM(0x18,0); // freq=0 + zsm.writeYM(0x19,0x7F); // AMD =7F + zsm.writeYM(0x19,0xFF); // PMD =7F // TODO: incorporate the Furnace meta-command for init data and filter // out writes to otherwise-unused channels. } @@ -126,25 +132,26 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { int i=0; // dump YM writes first if (j==0) { - if (YM < 0) + if (YM<0) { continue; - else + } else { i=YM; + } } // dump VERA writes second if (j==1) { - if (VERA < 0) + if (VERA<0) { continue; - else { + } else { i=VERA; } } std::vector& writes=disCont[i].dispatch->getRegisterWrites(); - if (writes.size() > 0) - logD("zsmOps: Writing %d messages to chip %d",writes.size(), i); + if (writes.size()>0) + logD("zsmOps: Writing %d messages to chip %d",writes.size(),i); for (DivRegWrite& write: writes) { - if (i==YM) zsm.writeYM(write.addr&0xff, write.val); - if (i==VERA) zsm.writePSG(write.addr&0xff, write.val); + if (i==YM) zsm.writeYM(write.addr&0xff,write.val); + if (i==VERA) zsm.writePSG(write.addr&0xff,write.val); writeCount++; } writes.clear(); @@ -152,9 +159,9 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { // write wait int totalWait=cycles>>MASTER_CLOCK_PREC; - fracWait += cycles & MASTER_CLOCK_MASK; - totalWait += fracWait>>MASTER_CLOCK_PREC; - fracWait &= MASTER_CLOCK_MASK; + fracWait+=cycles&MASTER_CLOCK_MASK; + totalWait+=fracWait>>MASTER_CLOCK_PREC; + fracWait&=MASTER_CLOCK_MASK; if (totalWait>0) { zsm.tick(totalWait); //tickCount+=totalWait; @@ -163,9 +170,9 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { // end of song // done - close out. - got.rate = origRate; - if (VERA >= 0) disCont[VERA].dispatch->toggleRegisterDump(false); - if (YM >= 0) disCont[YM].dispatch->toggleRegisterDump(false); + got.rate=origRate; + if (VERA>=0) disCont[VERA].dispatch->toggleRegisterDump(false); + if (YM>=0) disCont[YM].dispatch->toggleRegisterDump(false); remainingLoops=-1; playing=false; From 2f45f599067f087d74244b51a47ebf928fc12363 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 6 Jun 2023 03:31:05 -0500 Subject: [PATCH 033/183] ZSM: variable set but not used --- src/engine/zsmOps.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/engine/zsmOps.cpp b/src/engine/zsmOps.cpp index 6c935b83..deddd4ec 100644 --- a/src/engine/zsmOps.cpp +++ b/src/engine/zsmOps.cpp @@ -95,7 +95,6 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { //size_t tickCount=0; bool done=false; int loopPos=-1; - int writeCount=0; int fracWait=0; // accumulates fractional ticks if (VERA>=0) disCont[VERA].dispatch->toggleRegisterDump(true); if (YM>=0) { @@ -152,7 +151,6 @@ SafeWriter* DivEngine::saveZSM(unsigned int zsmrate, bool loop) { for (DivRegWrite& write: writes) { if (i==YM) zsm.writeYM(write.addr&0xff,write.val); if (i==VERA) zsm.writePSG(write.addr&0xff,write.val); - writeCount++; } writes.clear(); } From 540af1e2effd060800fda67788da4b5aa58ffa6b Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 6 Jun 2023 14:58:02 -0500 Subject: [PATCH 034/183] Tremolo is broken. --- src/engine/playback.cpp | 2 ++ src/gui/sysConf.cpp | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 00b4a1d2..c5c49f4c 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -791,6 +791,8 @@ void DivEngine::processRow(int i, bool afterDelay) { // - note that a volume value does not stop tremolo - instead it glitches this whole thing up if (chan[i].tremoloDepth==0) { chan[i].tremoloPos=0; + dispatchCmd(DivCommand(DIV_CMD_VOLUME,i,chan[i].volume>>8)); + dispatchCmd(DivCommand(DIV_CMD_HINT_VOLUME,i,chan[i].volume>>8)); } chan[i].tremoloDepth=effectVal&15; chan[i].tremoloRate=effectVal>>4; diff --git a/src/gui/sysConf.cpp b/src/gui/sysConf.cpp index 07d39582..58ee524e 100644 --- a/src/gui/sysConf.cpp +++ b/src/gui/sysConf.cpp @@ -863,7 +863,7 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo if (echoBufSize1<0) echoBufSize1=0; if (echoBufSize1>2725) echoBufSize1=2725; echoDelay=2725-echoBufSize1; - altered=true;; + altered=true; } rightClickable ImGui::Text("Echo feedback:"); if (CWSliderInt("##EchoFeedback",&echoFeedback,0,255)) { From d6c91a688a0a4f8e8998423b8f0859a55272fce4 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 6 Jun 2023 15:54:24 -0500 Subject: [PATCH 035/183] Tremolo is broken. part 2. --- src/engine/playback.cpp | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index c5c49f4c..0ed7264c 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -781,23 +781,17 @@ void DivEngine::processRow(int i, bool afterDelay) { dispatchCmd(DivCommand(DIV_CMD_HINT_VOL_SLIDE,i,chan[i].volSpeed)); break; case 0x07: // tremolo - // TODO - // this effect is really weird. i thought it would alter the tremolo depth but turns out it's completely different - // this is how it works: - // - 07xy enables tremolo - // - when enabled, a "low" boundary is calculated based on the current volume - // - then a volume slide down starts to the low boundary, and then when this is reached a volume slide up begins - // - this process repeats until 0700 or 0Axy are found - // - note that a volume value does not stop tremolo - instead it glitches this whole thing up if (chan[i].tremoloDepth==0) { chan[i].tremoloPos=0; - dispatchCmd(DivCommand(DIV_CMD_VOLUME,i,chan[i].volume>>8)); - dispatchCmd(DivCommand(DIV_CMD_HINT_VOLUME,i,chan[i].volume>>8)); } chan[i].tremoloDepth=effectVal&15; chan[i].tremoloRate=effectVal>>4; - // tremolo and vol slides are incompatiblw - chan[i].volSpeed=0; + if (chan[i].tremoloDepth!=0) { + chan[i].volSpeed=0; + } else { + dispatchCmd(DivCommand(DIV_CMD_VOLUME,i,chan[i].volume>>8)); + dispatchCmd(DivCommand(DIV_CMD_HINT_VOLUME,i,chan[i].volume>>8)); + } break; case 0x0a: // volume ramp // TODO: non-0x-or-x0 value should be treated as 00 From 62c8b7d56b0e507c75dd271dbf04c8cae1dfe24e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 6 Jun 2023 16:24:15 -0500 Subject: [PATCH 036/183] GUI: draw per-chan osc on mobile --- src/gui/gui.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index c19ee1c4..4ea2eccf 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -4354,6 +4354,7 @@ bool FurnaceGUI::loop() { MEASURE(log,drawLog()); MEASURE(compatFlags,drawCompatFlags()); MEASURE(stats,drawStats()); + MEASURE(chanOsc,drawChanOsc()); } else { globalWinFlags=0; ImGui::DockSpaceOverViewport(NULL,lockLayout?(ImGuiDockNodeFlags_NoWindowMenuButton|ImGuiDockNodeFlags_NoMove|ImGuiDockNodeFlags_NoResize|ImGuiDockNodeFlags_NoCloseButton|ImGuiDockNodeFlags_NoDocking|ImGuiDockNodeFlags_NoDockingSplitMe|ImGuiDockNodeFlags_NoDockingSplitOther):0); From a02853b5611625fd033993899325455ef4a19ba2 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 6 Jun 2023 16:46:12 -0500 Subject: [PATCH 037/183] fix --- src/engine/platform/genesis.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index e32ec528..9f905105 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -190,10 +190,10 @@ void DivPlatformGenesis::acquire_nuked(short** buf, size_t len) { oscBuf[i]->data[oscBuf[i]->needle++]=fm.dacdata<<7; } } else { - oscBuf[i]->data[oscBuf[i]->needle++]=fm.ch_out[i]<<(chipType==2?0:7); + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?2:7),-32768,32767); } } else { - oscBuf[i]->data[oscBuf[i]->needle++]=fm.ch_out[i]<<(chipType==2?0:7); + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?2:7),-32768,32767); } } From b3b1f3abc6fd83383a3918dec120fb075735d765 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 7 Jun 2023 04:36:33 -0500 Subject: [PATCH 038/183] renderGL: don't glFinish --- src/gui/render/renderGL.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index 90adf5a1..06a057cb 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -276,7 +276,7 @@ void FurnaceGUIRenderGL::wipe(float alpha) { void FurnaceGUIRenderGL::present() { SDL_GL_SwapWindow(sdlWin); - C(glFinish()); + C(glFlush()); } bool FurnaceGUIRenderGL::getOutputSize(int& w, int& h) { From 05cff9afb54a3a6ea6c093c7dc383f7c506b5409 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 7 Jun 2023 17:41:08 -0500 Subject: [PATCH 039/183] GUI: fix chan osc overflow, part 1 --- src/gui/chanOsc.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index d7d3c9fd..edd40e7f 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -403,9 +403,10 @@ void FurnaceGUI::drawChanOsc() { for (unsigned short i=0; i<512; i++) { float x=(float)i/512.0f; float y=(float)buf->data[(unsigned short)(needlePos+(i*displaySize/512))]/65536.0f; + y-=dcOff; if (y<-0.5f) y=-0.5f; if (y>0.5f) y=0.5f; - waveform[i]=ImLerp(inRect.Min,inRect.Max,ImVec2(x,0.5f-(y-dcOff))); + waveform[i]=ImLerp(inRect.Min,inRect.Max,ImVec2(x,0.5f-y)); } } ImU32 color=ImGui::GetColorU32(chanOscColor); From f7d2b81e913de0b6907b78fbdf6e373176c18479 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 7 Jun 2023 17:45:08 -0500 Subject: [PATCH 040/183] GUI: don't hide chan osc title bar --- src/gui/chanOsc.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index edd40e7f..d2ccfb90 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -116,7 +116,7 @@ void FurnaceGUI::drawChanOsc() { } if (!chanOscOpen) return; ImGui::SetNextWindowSizeConstraints(ImVec2(64.0f*dpiScale,32.0f*dpiScale),ImVec2(canvasW,canvasH)); - if (ImGui::Begin("Oscilloscope (per-channel)",&chanOscOpen,globalWinFlags|((chanOscOptions)?0:ImGuiWindowFlags_NoTitleBar))) { + if (ImGui::Begin("Oscilloscope (per-channel)",&chanOscOpen,globalWinFlags)) { bool centerSettingReset=false; ImDrawList* dl=ImGui::GetWindowDrawList(); if (chanOscOptions) { From a5abe19b2a2673379fb33e39c2e5474559d50ce8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 8 Jun 2023 00:29:16 -0500 Subject: [PATCH 041/183] update ImGui to 1.89 commit 8fd0a041355e3cfc6556bbe1e00f262d9a897946 with Furnace patches --- extern/imgui_patched/.editorconfig | 8 +- extern/imgui_patched/.gitignore | 13 +- extern/imgui_patched/LICENSE.txt | 2 +- .../backends/imgui_impl_allegro5.cpp | 106 +- .../backends/imgui_impl_android.cpp | 30 +- .../backends/imgui_impl_android.h | 1 + .../backends/imgui_impl_dx10.cpp | 106 +- .../imgui_patched/backends/imgui_impl_dx10.h | 4 +- .../backends/imgui_impl_dx11.cpp | 118 +- .../imgui_patched/backends/imgui_impl_dx11.h | 4 +- .../backends/imgui_impl_dx12.cpp | 160 +- .../imgui_patched/backends/imgui_impl_dx12.h | 2 +- .../imgui_patched/backends/imgui_impl_dx9.cpp | 76 +- .../imgui_patched/backends/imgui_impl_dx9.h | 4 +- .../backends/imgui_impl_glfw.cpp | 356 +- .../imgui_patched/backends/imgui_impl_glfw.h | 13 +- .../backends/imgui_impl_glut.cpp | 15 +- .../imgui_patched/backends/imgui_impl_glut.h | 1 + .../imgui_patched/backends/imgui_impl_metal.h | 5 +- .../backends/imgui_impl_metal.mm | 112 +- .../backends/imgui_impl_opengl2.cpp | 29 +- .../backends/imgui_impl_opengl3.cpp | 228 +- .../backends/imgui_impl_opengl3.h | 11 +- .../backends/imgui_impl_opengl3_loader.h | 31 +- .../imgui_patched/backends/imgui_impl_osx.h | 23 +- .../imgui_patched/backends/imgui_impl_osx.mm | 148 +- ...imgui_impl_sdl.cpp => imgui_impl_sdl2.cpp} | 207 +- .../{imgui_impl_sdl.h => imgui_impl_sdl2.h} | 3 +- .../backends/imgui_impl_sdl3.cpp | 949 +++ .../imgui_patched/backends/imgui_impl_sdl3.h | 36 + .../backends/imgui_impl_sdlrenderer.h | 31 - ...nderer.cpp => imgui_impl_sdlrenderer2.cpp} | 114 +- .../backends/imgui_impl_sdlrenderer2.h | 30 + .../backends/imgui_impl_sdlrenderer3.cpp | 258 + .../backends/imgui_impl_sdlrenderer3.h | 30 + .../backends/imgui_impl_vulkan.cpp | 160 +- .../backends/imgui_impl_vulkan.h | 8 +- .../backends/imgui_impl_wgpu.cpp | 514 +- .../imgui_patched/backends/imgui_impl_wgpu.h | 4 +- .../backends/imgui_impl_win32.cpp | 292 +- .../imgui_patched/backends/imgui_impl_win32.h | 4 +- extern/imgui_patched/docs/BACKENDS.md | 34 +- extern/imgui_patched/docs/CHANGELOG.txt | 1538 ++++- extern/imgui_patched/docs/CONTRIBUTING.md | 80 + extern/imgui_patched/docs/EXAMPLES.md | 153 +- extern/imgui_patched/docs/FAQ.md | 173 +- extern/imgui_patched/docs/FONTS.md | 155 +- extern/imgui_patched/docs/README.md | 154 +- extern/imgui_patched/docs/TODO.txt | 8 +- extern/imgui_patched/imconfig.h | 15 +- extern/imgui_patched/imgui.cpp | 5250 +++++++++++------ extern/imgui_patched/imgui.h | 666 ++- extern/imgui_patched/imgui_demo.cpp | 1139 ++-- extern/imgui_patched/imgui_draw.cpp | 230 +- extern/imgui_patched/imgui_internal.h | 1046 ++-- extern/imgui_patched/imgui_tables.cpp | 370 +- extern/imgui_patched/imgui_widgets.cpp | 1470 +++-- extern/imgui_patched/imstb_textedit.h | 36 +- extern/imgui_patched/imstb_truetype.h | 2 +- extern/imgui_patched/misc/cpp/README.txt | 2 +- .../imgui_patched/misc/cpp/imgui_stdlib.cpp | 3 + extern/imgui_patched/misc/cpp/imgui_stdlib.h | 9 +- .../misc/debuggers/imgui.natstepfilter | 13 +- .../misc/fonts/binary_to_compressed_c.cpp | 34 +- extern/imgui_patched/misc/freetype/README.md | 2 +- .../misc/freetype/imgui_freetype.cpp | 62 +- .../misc/freetype/imgui_freetype.h | 2 +- .../misc/single_file/imgui_single_file.h | 11 + 68 files changed, 11423 insertions(+), 5480 deletions(-) rename extern/imgui_patched/backends/{imgui_impl_sdl.cpp => imgui_impl_sdl2.cpp} (83%) rename extern/imgui_patched/backends/{imgui_impl_sdl.h => imgui_impl_sdl2.h} (92%) create mode 100644 extern/imgui_patched/backends/imgui_impl_sdl3.cpp create mode 100644 extern/imgui_patched/backends/imgui_impl_sdl3.h delete mode 100644 extern/imgui_patched/backends/imgui_impl_sdlrenderer.h rename extern/imgui_patched/backends/{imgui_impl_sdlrenderer.cpp => imgui_impl_sdlrenderer2.cpp} (65%) create mode 100644 extern/imgui_patched/backends/imgui_impl_sdlrenderer2.h create mode 100644 extern/imgui_patched/backends/imgui_impl_sdlrenderer3.cpp create mode 100644 extern/imgui_patched/backends/imgui_impl_sdlrenderer3.h create mode 100644 extern/imgui_patched/docs/CONTRIBUTING.md diff --git a/extern/imgui_patched/.editorconfig b/extern/imgui_patched/.editorconfig index c6dc600a..5adfefa2 100644 --- a/extern/imgui_patched/.editorconfig +++ b/extern/imgui_patched/.editorconfig @@ -1,7 +1,11 @@ # See http://editorconfig.org to read about the EditorConfig format. # - In theory automatically supported by VS2017+ and most common IDE or text editors. -# - In practice VS2019 stills gets trailing whitespaces wrong :( -# - Suggest install to trim whitespaces: https://marketplace.visualstudio.com/items?itemName=MadsKristensen.TrailingWhitespaceVisualizer +# - In practice VS2019-VS2022 stills don't trim trailing whitespaces correctly :( +# - Suggest installing this to trim whitespaces: +# GitHub https://github.com/madskristensen/TrailingWhitespace +# VS2019 https://marketplace.visualstudio.com/items?itemName=MadsKristensen.TrailingWhitespaceVisualizer +# VS2022 https://marketplace.visualstudio.com/items?itemName=MadsKristensen.TrailingWhitespace64 +# (in spite of its name doesn't only visualize but also trims) # - Alternative for older VS2010 to VS2015: https://marketplace.visualstudio.com/items?itemName=EditorConfigTeam.EditorConfig # top-most EditorConfig file diff --git a/extern/imgui_patched/.gitignore b/extern/imgui_patched/.gitignore index 86bed609..dc716466 100644 --- a/extern/imgui_patched/.gitignore +++ b/extern/imgui_patched/.gitignore @@ -26,6 +26,9 @@ ipch *.VC.db *.VC.VC.opendb +## Getting files created in JSON/Schemas/Catalog/ from a VS2022 update +JSON/ + ## Commonly used CMake directories /build*/ @@ -37,7 +40,8 @@ xcuserdata examples/*.o.tmp examples/*.out.js examples/*.out.wasm -examples/example_emscripten_opengl3/web/* +examples/example_glfw_opengl3/web/* +examples/example_sdl2_opengl3/web/* examples/example_emscripten_wgpu/web/* ## JetBrains IDE artifacts @@ -45,9 +49,12 @@ examples/example_emscripten_wgpu/web/* cmake-build-* ## Unix executables from our example Makefiles +examples/example_glfw_metal/example_glfw_metal examples/example_glfw_opengl2/example_glfw_opengl2 examples/example_glfw_opengl3/example_glfw_opengl3 examples/example_glut_opengl2/example_glut_opengl2 examples/example_null/example_null -examples/example_sdl_opengl2/example_sdl_opengl2 -examples/example_sdl_opengl3/example_sdl_opengl3 +examples/example_sdl2_metal/example_sdl2_metal +examples/example_sdl2_opengl2/example_sdl2_opengl2 +examples/example_sdl2_opengl3/example_sdl2_opengl3 +examples/example_sdl2_sdlrenderer/example_sdl2_sdlrenderer diff --git a/extern/imgui_patched/LICENSE.txt b/extern/imgui_patched/LICENSE.txt index 4023e0ca..fb715bdc 100644 --- a/extern/imgui_patched/LICENSE.txt +++ b/extern/imgui_patched/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2014-2022 Omar Cornut +Copyright (c) 2014-2023 Omar Cornut Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/extern/imgui_patched/backends/imgui_impl_allegro5.cpp b/extern/imgui_patched/backends/imgui_impl_allegro5.cpp index 83203382..ae91443c 100644 --- a/extern/imgui_patched/backends/imgui_impl_allegro5.cpp +++ b/extern/imgui_patched/backends/imgui_impl_allegro5.cpp @@ -7,7 +7,7 @@ // [X] Platform: Clipboard support (from Allegro 5.1.12) // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. // Issues: -// [ ] Renderer: The renderer is suboptimal as we need to unindex our buffers and convert vertices manually. +// [ ] Renderer: The renderer is suboptimal as we need to convert vertices manually. // [ ] Platform: Missing gamepad support. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. @@ -17,7 +17,10 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago)with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. +// 2022-11-30: Renderer: Restoring using al_draw_indexed_prim() when Allegro version is >= 5.2.5. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). +// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago) with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. // 2022-01-17: Inputs: calling new io.AddMousePosEvent(), io.AddMouseButtonEvent(), io.AddMouseWheelEvent() API (1.87+). // 2022-01-17: Inputs: always calling io.AddKeyModsEvent() next and before key event (not in NewFrame) to fix input queue with very low framerates. // 2022-01-10: Inputs: calling new io.AddKeyEvent(), io.AddKeyModsEvent() + io.SetKeyEventNativeData() API (1.87+). Support for full ImGuiKey range. @@ -35,6 +38,7 @@ // 2018-11-30: Misc: Setting up io.BackendPlatformName/io.BackendRendererName so they can be displayed in the About Window. // 2018-06-13: Platform: Added clipboard support (from Allegro 5.1.12). // 2018-06-13: Renderer: Use draw_data->DisplayPos and draw_data->DisplaySize to setup projection matrix and clipping rectangle. +// 2018-06-13: Renderer: Stopped using al_draw_indexed_prim() as it is buggy in Allegro's DX9 backend. // 2018-06-13: Renderer: Backup/restore transform and clipping rectangle. // 2018-06-11: Misc: Setup io.BackendFlags ImGuiBackendFlags_HasMouseCursors flag + honor ImGuiConfigFlags_NoMouseCursorChange flag. // 2018-04-18: Misc: Renamed file from imgui_impl_a5.cpp to imgui_impl_allegro5.cpp. @@ -54,13 +58,27 @@ #ifdef _WIN32 #include #endif -#define ALLEGRO_HAS_CLIPBOARD (ALLEGRO_VERSION_INT >= ((5 << 24) | (1 << 16) | (12 << 8))) // Clipboard only supported from Allegro 5.1.12 +#define ALLEGRO_HAS_CLIPBOARD (ALLEGRO_VERSION_INT >= ((5 << 24) | (1 << 16) | (12 << 8))) // Clipboard only supported from Allegro 5.1.12 +#define ALLEGRO_HAS_DRAW_INDEXED_PRIM (ALLEGRO_VERSION_INT >= ((5 << 24) | (2 << 16) | ( 5 << 8))) // DX9 implementation of al_draw_indexed_prim() got fixed in Allegro 5.2.5 // Visual Studio warnings #ifdef _MSC_VER #pragma warning (disable: 4127) // condition expression is constant #endif +struct ImDrawVertAllegro +{ + ImVec2 pos; + ImVec2 uv; + ALLEGRO_COLOR col; +}; + +// FIXME-OPT: Unfortunately Allegro doesn't support 32-bit packed colors so we have to convert them to 4 float as well.. +// FIXME-OPT: Consider inlining al_map_rgba()? +// see https://github.com/liballeg/allegro5/blob/master/src/pixels.c#L554 +// and https://github.com/liballeg/allegro5/blob/master/include/allegro5/internal/aintern_pixels.h +#define DRAW_VERT_IMGUI_TO_ALLEGRO(DST, SRC) { (DST)->pos = (SRC)->pos; (DST)->uv = (SRC)->uv; unsigned char* c = (unsigned char*)&(SRC)->col; (DST)->col = al_map_rgba(c[0], c[1], c[2], c[3]); } + // Allegro Data struct ImGui_ImplAllegro5_Data { @@ -71,20 +89,16 @@ struct ImGui_ImplAllegro5_Data ALLEGRO_VERTEX_DECL* VertexDecl; char* ClipboardTextData; + ImVector BufVertices; + ImVector BufIndices; + ImGui_ImplAllegro5_Data() { memset((void*)this, 0, sizeof(*this)); } }; // Backend data stored in io.BackendPlatformUserData to allow support for multiple Dear ImGui contexts // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. // FIXME: multi-context support is not well tested and probably dysfunctional in this backend. -static ImGui_ImplAllegro5_Data* ImGui_ImplAllegro5_GetBackendData() { return ImGui::GetCurrentContext() ? (ImGui_ImplAllegro5_Data*)ImGui::GetIO().BackendPlatformUserData : NULL; } - -struct ImDrawVertAllegro -{ - ImVec2 pos; - ImVec2 uv; - ALLEGRO_COLOR col; -}; +static ImGui_ImplAllegro5_Data* ImGui_ImplAllegro5_GetBackendData() { return ImGui::GetCurrentContext() ? (ImGui_ImplAllegro5_Data*)ImGui::GetIO().BackendPlatformUserData : nullptr; } static void ImGui_ImplAllegro5_SetupRenderState(ImDrawData* draw_data) { @@ -130,35 +144,40 @@ void ImGui_ImplAllegro5_RenderDrawData(ImDrawData* draw_data) { const ImDrawList* cmd_list = draw_data->CmdLists[n]; - // Allegro's implementation of al_draw_indexed_prim() for DX9 is completely broken. Unindex our buffers ourselves. - // FIXME-OPT: Unfortunately Allegro doesn't support 32-bit packed colors so we have to convert them to 4 float as well.. - static ImVector vertices; - vertices.resize(cmd_list->IdxBuffer.Size); - for (int i = 0; i < cmd_list->IdxBuffer.Size; i++) + ImVector& vertices = bd->BufVertices; +#if ALLEGRO_HAS_DRAW_INDEXED_PRIM + vertices.resize(cmd_list->VtxBuffer.Size); + for (int i = 0; i < cmd_list->VtxBuffer.Size; i++) { - const ImDrawVert* src_v = &cmd_list->VtxBuffer[cmd_list->IdxBuffer[i]]; + const ImDrawVert* src_v = &cmd_list->VtxBuffer[i]; ImDrawVertAllegro* dst_v = &vertices[i]; - dst_v->pos = src_v->pos; - dst_v->uv = src_v->uv; - unsigned char* c = (unsigned char*)&src_v->col; - dst_v->col = al_map_rgba(c[0], c[1], c[2], c[3]); + DRAW_VERT_IMGUI_TO_ALLEGRO(dst_v, src_v); } - - const int* indices = NULL; + const int* indices = nullptr; if (sizeof(ImDrawIdx) == 2) { - // FIXME-OPT: Unfortunately Allegro doesn't support 16-bit indices.. You can '#define ImDrawIdx int' in imconfig.h to request Dear ImGui to output 32-bit indices. + // FIXME-OPT: Allegro doesn't support 16-bit indices. + // You can '#define ImDrawIdx int' in imconfig.h to request Dear ImGui to output 32-bit indices. // Otherwise, we convert them from 16-bit to 32-bit at runtime here, which works perfectly but is a little wasteful. - static ImVector indices_converted; - indices_converted.resize(cmd_list->IdxBuffer.Size); + bd->BufIndices.resize(cmd_list->IdxBuffer.Size); for (int i = 0; i < cmd_list->IdxBuffer.Size; ++i) - indices_converted[i] = (int)cmd_list->IdxBuffer.Data[i]; - indices = indices_converted.Data; + bd->BufIndices[i] = (int)cmd_list->IdxBuffer.Data[i]; + indices = bd->BufIndices.Data; } else if (sizeof(ImDrawIdx) == 4) { indices = (const int*)cmd_list->IdxBuffer.Data; } +#else + // Allegro's implementation of al_draw_indexed_prim() for DX9 was broken until 5.2.5. Unindex buffers ourselves while converting vertex format. + vertices.resize(cmd_list->IdxBuffer.Size); + for (int i = 0; i < cmd_list->IdxBuffer.Size; i++) + { + const ImDrawVert* src_v = &cmd_list->VtxBuffer[cmd_list->IdxBuffer[i]]; + ImDrawVertAllegro* dst_v = &vertices[i]; + DRAW_VERT_IMGUI_TO_ALLEGRO(dst_v, src_v); + } +#endif // Render command lists ImVec2 clip_off = draw_data->DisplayPos; @@ -185,7 +204,11 @@ void ImGui_ImplAllegro5_RenderDrawData(ImDrawData* draw_data) // Apply scissor/clipping rectangle, Draw ALLEGRO_BITMAP* texture = (ALLEGRO_BITMAP*)pcmd->GetTexID(); al_set_clipping_rectangle(clip_min.x, clip_min.y, clip_max.x - clip_min.x, clip_max.y - clip_min.y); +#if ALLEGRO_HAS_DRAW_INDEXED_PRIM + al_draw_indexed_prim(&vertices[0], bd->VertexDecl, texture, &indices[pcmd->IdxOffset], pcmd->ElemCount, ALLEGRO_PRIM_TRIANGLE_LIST); +#else al_draw_prim(&vertices[0], bd->VertexDecl, texture, pcmd->IdxOffset, pcmd->IdxOffset + pcmd->ElemCount, ALLEGRO_PRIM_TRIANGLE_LIST); +#endif } } } @@ -252,14 +275,14 @@ void ImGui_ImplAllegro5_InvalidateDeviceObjects() ImGui_ImplAllegro5_Data* bd = ImGui_ImplAllegro5_GetBackendData(); if (bd->Texture) { - io.Fonts->SetTexID(NULL); + io.Fonts->SetTexID(0); al_destroy_bitmap(bd->Texture); - bd->Texture = NULL; + bd->Texture = nullptr; } if (bd->MouseCursorInvisible) { al_destroy_mouse_cursor(bd->MouseCursorInvisible); - bd->MouseCursorInvisible = NULL; + bd->MouseCursorInvisible = nullptr; } } @@ -396,7 +419,7 @@ static ImGuiKey ImGui_ImplAllegro5_KeyCodeToImGuiKey(int key_code) bool ImGui_ImplAllegro5_Init(ALLEGRO_DISPLAY* display) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendPlatformUserData == NULL && "Already initialized a platform backend!"); + IM_ASSERT(io.BackendPlatformUserData == nullptr && "Already initialized a platform backend!"); // Setup backend capabilities flags ImGui_ImplAllegro5_Data* bd = IM_NEW(ImGui_ImplAllegro5_Data)(); @@ -421,7 +444,7 @@ bool ImGui_ImplAllegro5_Init(ALLEGRO_DISPLAY* display) #if ALLEGRO_HAS_CLIPBOARD io.SetClipboardTextFn = ImGui_ImplAllegro5_SetClipboardText; io.GetClipboardTextFn = ImGui_ImplAllegro5_GetClipboardText; - io.ClipboardUserData = NULL; + io.ClipboardUserData = nullptr; #endif return true; @@ -430,7 +453,7 @@ bool ImGui_ImplAllegro5_Init(ALLEGRO_DISPLAY* display) void ImGui_ImplAllegro5_Shutdown() { ImGui_ImplAllegro5_Data* bd = ImGui_ImplAllegro5_GetBackendData(); - IM_ASSERT(bd != NULL && "No platform backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No platform backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplAllegro5_InvalidateDeviceObjects(); @@ -439,8 +462,9 @@ void ImGui_ImplAllegro5_Shutdown() if (bd->ClipboardTextData) al_free(bd->ClipboardTextData); - io.BackendPlatformUserData = NULL; - io.BackendPlatformName = io.BackendRendererName = NULL; + io.BackendPlatformName = io.BackendRendererName = nullptr; + io.BackendPlatformUserData = nullptr; + io.BackendFlags &= ~ImGuiBackendFlags_HasMouseCursors; IM_DELETE(bd); } @@ -450,10 +474,10 @@ static void ImGui_ImplAllegro5_UpdateKeyModifiers() ImGuiIO& io = ImGui::GetIO(); ALLEGRO_KEYBOARD_STATE keys; al_get_keyboard_state(&keys); - io.AddKeyEvent(ImGuiKey_ModCtrl, al_key_down(&keys, ALLEGRO_KEY_LCTRL) || al_key_down(&keys, ALLEGRO_KEY_RCTRL)); - io.AddKeyEvent(ImGuiKey_ModShift, al_key_down(&keys, ALLEGRO_KEY_LSHIFT) || al_key_down(&keys, ALLEGRO_KEY_RSHIFT)); - io.AddKeyEvent(ImGuiKey_ModAlt, al_key_down(&keys, ALLEGRO_KEY_ALT) || al_key_down(&keys, ALLEGRO_KEY_ALTGR)); - io.AddKeyEvent(ImGuiKey_ModSuper, al_key_down(&keys, ALLEGRO_KEY_LWIN) || al_key_down(&keys, ALLEGRO_KEY_RWIN)); + io.AddKeyEvent(ImGuiMod_Ctrl, al_key_down(&keys, ALLEGRO_KEY_LCTRL) || al_key_down(&keys, ALLEGRO_KEY_RCTRL)); + io.AddKeyEvent(ImGuiMod_Shift, al_key_down(&keys, ALLEGRO_KEY_LSHIFT) || al_key_down(&keys, ALLEGRO_KEY_RSHIFT)); + io.AddKeyEvent(ImGuiMod_Alt, al_key_down(&keys, ALLEGRO_KEY_ALT) || al_key_down(&keys, ALLEGRO_KEY_ALTGR)); + io.AddKeyEvent(ImGuiMod_Super, al_key_down(&keys, ALLEGRO_KEY_LWIN) || al_key_down(&keys, ALLEGRO_KEY_RWIN)); } // You can read the io.WantCaptureMouse, io.WantCaptureKeyboard flags to tell if dear imgui wants to use your inputs. @@ -558,7 +582,7 @@ static void ImGui_ImplAllegro5_UpdateMouseCursor() void ImGui_ImplAllegro5_NewFrame() { ImGui_ImplAllegro5_Data* bd = ImGui_ImplAllegro5_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplAllegro5_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplAllegro5_Init()?"); if (!bd->Texture) ImGui_ImplAllegro5_CreateDeviceObjects(); diff --git a/extern/imgui_patched/backends/imgui_impl_android.cpp b/extern/imgui_patched/backends/imgui_impl_android.cpp index bb8de811..48828ec2 100644 --- a/extern/imgui_patched/backends/imgui_impl_android.cpp +++ b/extern/imgui_patched/backends/imgui_impl_android.cpp @@ -3,6 +3,7 @@ // Implemented features: // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy AKEYCODE_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen. // Missing features: // [ ] Platform: Clipboard support. // [ ] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. @@ -19,7 +20,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago)with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). +// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago) with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. // 2022-01-17: Inputs: calling new io.AddMousePosEvent(), io.AddMouseButtonEvent(), io.AddMouseWheelEvent() API (1.87+). // 2022-01-10: Inputs: calling new io.AddKeyEvent(), io.AddKeyModsEvent() + io.SetKeyEventNativeData() API (1.87+). Support for full ImGuiKey range. // 2021-03-04: Initial version. @@ -163,10 +165,10 @@ int32_t ImGui_ImplAndroid_HandleInputEvent(AInputEvent* input_event) int32_t event_action = AKeyEvent_getAction(input_event); int32_t event_meta_state = AKeyEvent_getMetaState(input_event); - io.AddKeyEvent(ImGuiKey_ModCtrl, (event_meta_state & AMETA_CTRL_ON) != 0); - io.AddKeyEvent(ImGuiKey_ModShift, (event_meta_state & AMETA_SHIFT_ON) != 0); - io.AddKeyEvent(ImGuiKey_ModAlt, (event_meta_state & AMETA_ALT_ON) != 0); - io.AddKeyEvent(ImGuiKey_ModSuper, (event_meta_state & AMETA_META_ON) != 0); + io.AddKeyEvent(ImGuiMod_Ctrl, (event_meta_state & AMETA_CTRL_ON) != 0); + io.AddKeyEvent(ImGuiMod_Shift, (event_meta_state & AMETA_SHIFT_ON) != 0); + io.AddKeyEvent(ImGuiMod_Alt, (event_meta_state & AMETA_ALT_ON) != 0); + io.AddKeyEvent(ImGuiMod_Super, (event_meta_state & AMETA_META_ON) != 0); switch (event_action) { @@ -195,6 +197,22 @@ int32_t ImGui_ImplAndroid_HandleInputEvent(AInputEvent* input_event) int32_t event_action = AMotionEvent_getAction(input_event); int32_t event_pointer_index = (event_action & AMOTION_EVENT_ACTION_POINTER_INDEX_MASK) >> AMOTION_EVENT_ACTION_POINTER_INDEX_SHIFT; event_action &= AMOTION_EVENT_ACTION_MASK; + + switch (AMotionEvent_getToolType(input_event, event_pointer_index)) + { + case AMOTION_EVENT_TOOL_TYPE_MOUSE: + io.AddMouseSourceEvent(ImGuiMouseSource_Mouse); + break; + case AMOTION_EVENT_TOOL_TYPE_STYLUS: + case AMOTION_EVENT_TOOL_TYPE_ERASER: + io.AddMouseSourceEvent(ImGuiMouseSource_Pen); + break; + case AMOTION_EVENT_TOOL_TYPE_FINGER: + default: + io.AddMouseSourceEvent(ImGuiMouseSource_TouchScreen); + break; + } + switch (event_action) { case AMOTION_EVENT_ACTION_DOWN: @@ -251,6 +269,8 @@ bool ImGui_ImplAndroid_Init(ANativeWindow* window) void ImGui_ImplAndroid_Shutdown() { + ImGuiIO& io = ImGui::GetIO(); + io.BackendPlatformName = nullptr; } void ImGui_ImplAndroid_NewFrame() diff --git a/extern/imgui_patched/backends/imgui_impl_android.h b/extern/imgui_patched/backends/imgui_impl_android.h index 8bfa1860..eb97c4c8 100644 --- a/extern/imgui_patched/backends/imgui_impl_android.h +++ b/extern/imgui_patched/backends/imgui_impl_android.h @@ -3,6 +3,7 @@ // Implemented features: // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy AKEYCODE_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen. // Missing features: // [ ] Platform: Clipboard support. // [ ] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. diff --git a/extern/imgui_patched/backends/imgui_impl_dx10.cpp b/extern/imgui_patched/backends/imgui_impl_dx10.cpp index bd8e32a6..05b106cf 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx10.cpp +++ b/extern/imgui_patched/backends/imgui_impl_dx10.cpp @@ -3,8 +3,8 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'ID3D10ShaderResourceView*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. @@ -13,7 +13,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-06-29: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). // 2021-05-19: DirectX10: Replaced direct access to ImDrawCmd::TextureId with a call to ImDrawCmd::GetTexID(). (will become a requirement) // 2021-02-18: DirectX10: Change blending equation to preserve alpha in output buffer. @@ -64,7 +65,7 @@ struct ImGui_ImplDX10_Data ImGui_ImplDX10_Data() { memset((void*)this, 0, sizeof(*this)); VertexBufferSize = 5000; IndexBufferSize = 10000; } }; -struct VERTEX_CONSTANT_BUFFER +struct VERTEX_CONSTANT_BUFFER_DX10 { float mvp[4][4]; }; @@ -73,7 +74,7 @@ struct VERTEX_CONSTANT_BUFFER // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. static ImGui_ImplDX10_Data* ImGui_ImplDX10_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplDX10_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplDX10_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Forward Declarations @@ -106,7 +107,7 @@ static void ImGui_ImplDX10_SetupRenderState(ImDrawData* draw_data, ID3D10Device* ctx->VSSetConstantBuffers(0, 1, &bd->pVertexConstantBuffer); ctx->PSSetShader(bd->pPixelShader); ctx->PSSetSamplers(0, 1, &bd->pFontSampler); - ctx->GSSetShader(NULL); + ctx->GSSetShader(nullptr); // Setup render state const float blend_factor[4] = { 0.f, 0.f, 0.f, 0.f }; @@ -128,7 +129,7 @@ void ImGui_ImplDX10_RenderDrawData(ImDrawData* draw_data) // Create and grow vertex/index buffers if needed if (!bd->pVB || bd->VertexBufferSize < draw_data->TotalVtxCount) { - if (bd->pVB) { bd->pVB->Release(); bd->pVB = NULL; } + if (bd->pVB) { bd->pVB->Release(); bd->pVB = nullptr; } bd->VertexBufferSize = draw_data->TotalVtxCount + 5000; D3D10_BUFFER_DESC desc; memset(&desc, 0, sizeof(D3D10_BUFFER_DESC)); @@ -137,13 +138,13 @@ void ImGui_ImplDX10_RenderDrawData(ImDrawData* draw_data) desc.BindFlags = D3D10_BIND_VERTEX_BUFFER; desc.CPUAccessFlags = D3D10_CPU_ACCESS_WRITE; desc.MiscFlags = 0; - if (ctx->CreateBuffer(&desc, NULL, &bd->pVB) < 0) + if (ctx->CreateBuffer(&desc, nullptr, &bd->pVB) < 0) return; } if (!bd->pIB || bd->IndexBufferSize < draw_data->TotalIdxCount) { - if (bd->pIB) { bd->pIB->Release(); bd->pIB = NULL; } + if (bd->pIB) { bd->pIB->Release(); bd->pIB = nullptr; } bd->IndexBufferSize = draw_data->TotalIdxCount + 10000; D3D10_BUFFER_DESC desc; memset(&desc, 0, sizeof(D3D10_BUFFER_DESC)); @@ -151,13 +152,13 @@ void ImGui_ImplDX10_RenderDrawData(ImDrawData* draw_data) desc.ByteWidth = bd->IndexBufferSize * sizeof(ImDrawIdx); desc.BindFlags = D3D10_BIND_INDEX_BUFFER; desc.CPUAccessFlags = D3D10_CPU_ACCESS_WRITE; - if (ctx->CreateBuffer(&desc, NULL, &bd->pIB) < 0) + if (ctx->CreateBuffer(&desc, nullptr, &bd->pIB) < 0) return; } // Copy and convert all vertices into a single contiguous buffer - ImDrawVert* vtx_dst = NULL; - ImDrawIdx* idx_dst = NULL; + ImDrawVert* vtx_dst = nullptr; + ImDrawIdx* idx_dst = nullptr; bd->pVB->Map(D3D10_MAP_WRITE_DISCARD, 0, (void**)&vtx_dst); bd->pIB->Map(D3D10_MAP_WRITE_DISCARD, 0, (void**)&idx_dst); for (int n = 0; n < draw_data->CmdListsCount; n++) @@ -177,7 +178,7 @@ void ImGui_ImplDX10_RenderDrawData(ImDrawData* draw_data) void* mapped_resource; if (bd->pVertexConstantBuffer->Map(D3D10_MAP_WRITE_DISCARD, 0, &mapped_resource) != S_OK) return; - VERTEX_CONSTANT_BUFFER* constant_buffer = (VERTEX_CONSTANT_BUFFER*)mapped_resource; + VERTEX_CONSTANT_BUFFER_DX10* constant_buffer = (VERTEX_CONSTANT_BUFFER_DX10*)mapped_resource; float L = draw_data->DisplayPos.x; float R = draw_data->DisplayPos.x + draw_data->DisplaySize.x; float T = draw_data->DisplayPos.y; @@ -320,13 +321,13 @@ static void ImGui_ImplDX10_CreateFontsTexture() desc.BindFlags = D3D10_BIND_SHADER_RESOURCE; desc.CPUAccessFlags = 0; - ID3D10Texture2D* pTexture = NULL; + ID3D10Texture2D* pTexture = nullptr; D3D10_SUBRESOURCE_DATA subResource; subResource.pSysMem = pixels; subResource.SysMemPitch = desc.Width * 4; subResource.SysMemSlicePitch = 0; bd->pd3dDevice->CreateTexture2D(&desc, &subResource, &pTexture); - IM_ASSERT(pTexture != NULL); + IM_ASSERT(pTexture != nullptr); // Create texture view D3D10_SHADER_RESOURCE_VIEW_DESC srv_desc; @@ -404,7 +405,7 @@ bool ImGui_ImplDX10_CreateDeviceObjects() }"; ID3DBlob* vertexShaderBlob; - if (FAILED(D3DCompile(vertexShader, strlen(vertexShader), NULL, NULL, NULL, "main", "vs_4_0", 0, 0, &vertexShaderBlob, NULL))) + if (FAILED(D3DCompile(vertexShader, strlen(vertexShader), nullptr, nullptr, nullptr, "main", "vs_4_0", 0, 0, &vertexShaderBlob, nullptr))) return false; // NB: Pass ID3DBlob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! if (bd->pd3dDevice->CreateVertexShader(vertexShaderBlob->GetBufferPointer(), vertexShaderBlob->GetBufferSize(), &bd->pVertexShader) != S_OK) { @@ -429,12 +430,12 @@ bool ImGui_ImplDX10_CreateDeviceObjects() // Create the constant buffer { D3D10_BUFFER_DESC desc; - desc.ByteWidth = sizeof(VERTEX_CONSTANT_BUFFER); + desc.ByteWidth = sizeof(VERTEX_CONSTANT_BUFFER_DX10); desc.Usage = D3D10_USAGE_DYNAMIC; desc.BindFlags = D3D10_BIND_CONSTANT_BUFFER; desc.CPUAccessFlags = D3D10_CPU_ACCESS_WRITE; desc.MiscFlags = 0; - bd->pd3dDevice->CreateBuffer(&desc, NULL, &bd->pVertexConstantBuffer); + bd->pd3dDevice->CreateBuffer(&desc, nullptr, &bd->pVertexConstantBuffer); } } @@ -457,7 +458,7 @@ bool ImGui_ImplDX10_CreateDeviceObjects() }"; ID3DBlob* pixelShaderBlob; - if (FAILED(D3DCompile(pixelShader, strlen(pixelShader), NULL, NULL, NULL, "main", "ps_4_0", 0, 0, &pixelShaderBlob, NULL))) + if (FAILED(D3DCompile(pixelShader, strlen(pixelShader), nullptr, nullptr, nullptr, "main", "ps_4_0", 0, 0, &pixelShaderBlob, nullptr))) return false; // NB: Pass ID3DBlob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! if (bd->pd3dDevice->CreatePixelShader(pixelShaderBlob->GetBufferPointer(), pixelShaderBlob->GetBufferSize(), &bd->pPixelShader) != S_OK) { @@ -519,23 +520,23 @@ void ImGui_ImplDX10_InvalidateDeviceObjects() if (!bd->pd3dDevice) return; - if (bd->pFontSampler) { bd->pFontSampler->Release(); bd->pFontSampler = NULL; } - if (bd->pFontTextureView) { bd->pFontTextureView->Release(); bd->pFontTextureView = NULL; ImGui::GetIO().Fonts->SetTexID(NULL); } // We copied bd->pFontTextureView to io.Fonts->TexID so let's clear that as well. - if (bd->pIB) { bd->pIB->Release(); bd->pIB = NULL; } - if (bd->pVB) { bd->pVB->Release(); bd->pVB = NULL; } - if (bd->pBlendState) { bd->pBlendState->Release(); bd->pBlendState = NULL; } - if (bd->pDepthStencilState) { bd->pDepthStencilState->Release(); bd->pDepthStencilState = NULL; } - if (bd->pRasterizerState) { bd->pRasterizerState->Release(); bd->pRasterizerState = NULL; } - if (bd->pPixelShader) { bd->pPixelShader->Release(); bd->pPixelShader = NULL; } - if (bd->pVertexConstantBuffer) { bd->pVertexConstantBuffer->Release(); bd->pVertexConstantBuffer = NULL; } - if (bd->pInputLayout) { bd->pInputLayout->Release(); bd->pInputLayout = NULL; } - if (bd->pVertexShader) { bd->pVertexShader->Release(); bd->pVertexShader = NULL; } + if (bd->pFontSampler) { bd->pFontSampler->Release(); bd->pFontSampler = nullptr; } + if (bd->pFontTextureView) { bd->pFontTextureView->Release(); bd->pFontTextureView = nullptr; ImGui::GetIO().Fonts->SetTexID(0); } // We copied bd->pFontTextureView to io.Fonts->TexID so let's clear that as well. + if (bd->pIB) { bd->pIB->Release(); bd->pIB = nullptr; } + if (bd->pVB) { bd->pVB->Release(); bd->pVB = nullptr; } + if (bd->pBlendState) { bd->pBlendState->Release(); bd->pBlendState = nullptr; } + if (bd->pDepthStencilState) { bd->pDepthStencilState->Release(); bd->pDepthStencilState = nullptr; } + if (bd->pRasterizerState) { bd->pRasterizerState->Release(); bd->pRasterizerState = nullptr; } + if (bd->pPixelShader) { bd->pPixelShader->Release(); bd->pPixelShader = nullptr; } + if (bd->pVertexConstantBuffer) { bd->pVertexConstantBuffer->Release(); bd->pVertexConstantBuffer = nullptr; } + if (bd->pInputLayout) { bd->pInputLayout->Release(); bd->pInputLayout = nullptr; } + if (bd->pVertexShader) { bd->pVertexShader->Release(); bd->pVertexShader = nullptr; } } bool ImGui_ImplDX10_Init(ID3D10Device* device) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Setup backend capabilities flags ImGui_ImplDX10_Data* bd = IM_NEW(ImGui_ImplDX10_Data)(); @@ -545,9 +546,9 @@ bool ImGui_ImplDX10_Init(ID3D10Device* device) io.BackendFlags |= ImGuiBackendFlags_RendererHasViewports; // We can create multi-viewports on the Renderer side (optional) // Get factory from device - IDXGIDevice* pDXGIDevice = NULL; - IDXGIAdapter* pDXGIAdapter = NULL; - IDXGIFactory* pFactory = NULL; + IDXGIDevice* pDXGIDevice = nullptr; + IDXGIAdapter* pDXGIAdapter = nullptr; + IDXGIFactory* pFactory = nullptr; if (device->QueryInterface(IID_PPV_ARGS(&pDXGIDevice)) == S_OK) if (pDXGIDevice->GetParent(IID_PPV_ARGS(&pDXGIAdapter)) == S_OK) if (pDXGIAdapter->GetParent(IID_PPV_ARGS(&pFactory)) == S_OK) @@ -567,22 +568,23 @@ bool ImGui_ImplDX10_Init(ID3D10Device* device) void ImGui_ImplDX10_Shutdown() { ImGui_ImplDX10_Data* bd = ImGui_ImplDX10_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplDX10_ShutdownPlatformInterface(); ImGui_ImplDX10_InvalidateDeviceObjects(); if (bd->pFactory) { bd->pFactory->Release(); } if (bd->pd3dDevice) { bd->pd3dDevice->Release(); } - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); IM_DELETE(bd); } void ImGui_ImplDX10_NewFrame() { ImGui_ImplDX10_Data* bd = ImGui_ImplDX10_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplDX10_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplDX10_Init()?"); if (!bd->pFontSampler) ImGui_ImplDX10_CreateDeviceObjects(); @@ -594,14 +596,14 @@ void ImGui_ImplDX10_NewFrame() // If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. //-------------------------------------------------------------------------------------------------------- -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplDX10_ViewportData { IDXGISwapChain* SwapChain; ID3D10RenderTargetView* RTView; - ImGui_ImplDX10_ViewportData() { SwapChain = NULL; RTView = NULL; } - ~ImGui_ImplDX10_ViewportData() { IM_ASSERT(SwapChain == NULL && RTView == NULL); } + ImGui_ImplDX10_ViewportData() { SwapChain = nullptr; RTView = nullptr; } + ~ImGui_ImplDX10_ViewportData() { IM_ASSERT(SwapChain == nullptr && RTView == nullptr); } }; static void ImGui_ImplDX10_CreateWindow(ImGuiViewport* viewport) @@ -611,7 +613,7 @@ static void ImGui_ImplDX10_CreateWindow(ImGuiViewport* viewport) viewport->RendererUserData = vd; // PlatformHandleRaw should always be a HWND, whereas PlatformHandle might be a higher-level handle (e.g. GLFWWindow*, SDL_Window*). - // Some backends will leave PlatformHandleRaw NULL, in which case we assume PlatformHandle will contain the HWND. + // Some backends will leave PlatformHandleRaw == 0, in which case we assume PlatformHandle will contain the HWND. HWND hwnd = viewport->PlatformHandleRaw ? (HWND)viewport->PlatformHandleRaw : (HWND)viewport->PlatformHandle; IM_ASSERT(hwnd != 0); @@ -630,7 +632,7 @@ static void ImGui_ImplDX10_CreateWindow(ImGuiViewport* viewport) sd.SwapEffect = DXGI_SWAP_EFFECT_DISCARD; sd.Flags = 0; - IM_ASSERT(vd->SwapChain == NULL && vd->RTView == NULL); + IM_ASSERT(vd->SwapChain == nullptr && vd->RTView == nullptr); bd->pFactory->CreateSwapChain(bd->pd3dDevice, &sd, &vd->SwapChain); // Create the render target @@ -638,25 +640,25 @@ static void ImGui_ImplDX10_CreateWindow(ImGuiViewport* viewport) { ID3D10Texture2D* pBackBuffer; vd->SwapChain->GetBuffer(0, IID_PPV_ARGS(&pBackBuffer)); - bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, NULL, &vd->RTView); + bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, nullptr, &vd->RTView); pBackBuffer->Release(); } } static void ImGui_ImplDX10_DestroyWindow(ImGuiViewport* viewport) { - // The main viewport (owned by the application) will always have RendererUserData == NULL here since we didn't create the data for it. + // The main viewport (owned by the application) will always have RendererUserData == 0 here since we didn't create the data for it. if (ImGui_ImplDX10_ViewportData* vd = (ImGui_ImplDX10_ViewportData*)viewport->RendererUserData) { if (vd->SwapChain) vd->SwapChain->Release(); - vd->SwapChain = NULL; + vd->SwapChain = nullptr; if (vd->RTView) vd->RTView->Release(); - vd->RTView = NULL; + vd->RTView = nullptr; IM_DELETE(vd); } - viewport->RendererUserData = NULL; + viewport->RendererUserData = nullptr; } static void ImGui_ImplDX10_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) @@ -666,15 +668,15 @@ static void ImGui_ImplDX10_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) if (vd->RTView) { vd->RTView->Release(); - vd->RTView = NULL; + vd->RTView = nullptr; } if (vd->SwapChain) { - ID3D10Texture2D* pBackBuffer = NULL; + ID3D10Texture2D* pBackBuffer = nullptr; vd->SwapChain->ResizeBuffers(0, (UINT)size.x, (UINT)size.y, DXGI_FORMAT_UNKNOWN, 0); vd->SwapChain->GetBuffer(0, IID_PPV_ARGS(&pBackBuffer)); - if (pBackBuffer == NULL) { fprintf(stderr, "ImGui_ImplDX10_SetWindowSize() failed creating buffers.\n"); return; } - bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, NULL, &vd->RTView); + if (pBackBuffer == nullptr) { fprintf(stderr, "ImGui_ImplDX10_SetWindowSize() failed creating buffers.\n"); return; } + bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, nullptr, &vd->RTView); pBackBuffer->Release(); } } @@ -684,7 +686,7 @@ static void ImGui_ImplDX10_RenderViewport(ImGuiViewport* viewport, void*) ImGui_ImplDX10_Data* bd = ImGui_ImplDX10_GetBackendData(); ImGui_ImplDX10_ViewportData* vd = (ImGui_ImplDX10_ViewportData*)viewport->RendererUserData; ImVec4 clear_color = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); - bd->pd3dDevice->OMSetRenderTargets(1, &vd->RTView, NULL); + bd->pd3dDevice->OMSetRenderTargets(1, &vd->RTView, nullptr); if (!(viewport->Flags & ImGuiViewportFlags_NoRendererClear)) bd->pd3dDevice->ClearRenderTargetView(vd->RTView, (float*)&clear_color); ImGui_ImplDX10_RenderDrawData(viewport->DrawData); diff --git a/extern/imgui_patched/backends/imgui_impl_dx10.h b/extern/imgui_patched/backends/imgui_impl_dx10.h index 94957d43..c2c0f936 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx10.h +++ b/extern/imgui_patched/backends/imgui_impl_dx10.h @@ -3,10 +3,10 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'ID3D10ShaderResourceView*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. -// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. // Read online: https://github.com/ocornut/imgui/tree/master/docs diff --git a/extern/imgui_patched/backends/imgui_impl_dx11.cpp b/extern/imgui_patched/backends/imgui_impl_dx11.cpp index 78b8147e..fa60d9eb 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx11.cpp +++ b/extern/imgui_patched/backends/imgui_impl_dx11.cpp @@ -3,8 +3,8 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'ID3D11ShaderResourceView*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. @@ -13,7 +13,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-06-29: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). // 2021-05-19: DirectX11: Replaced direct access to ImDrawCmd::TextureId with a call to ImDrawCmd::GetTexID(). (will become a requirement) // 2021-02-18: DirectX11: Change blending equation to preserve alpha in output buffer. @@ -65,7 +66,7 @@ struct ImGui_ImplDX11_Data ImGui_ImplDX11_Data() { memset((void*)this, 0, sizeof(*this)); VertexBufferSize = 5000; IndexBufferSize = 10000; } }; -struct VERTEX_CONSTANT_BUFFER +struct VERTEX_CONSTANT_BUFFER_DX11 { float mvp[4][4]; }; @@ -74,7 +75,7 @@ struct VERTEX_CONSTANT_BUFFER // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. static ImGui_ImplDX11_Data* ImGui_ImplDX11_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplDX11_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplDX11_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Forward Declarations @@ -103,14 +104,14 @@ static void ImGui_ImplDX11_SetupRenderState(ImDrawData* draw_data, ID3D11DeviceC ctx->IASetVertexBuffers(0, 1, &bd->pVB, &stride, &offset); ctx->IASetIndexBuffer(bd->pIB, sizeof(ImDrawIdx) == 2 ? DXGI_FORMAT_R16_UINT : DXGI_FORMAT_R32_UINT, 0); ctx->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST); - ctx->VSSetShader(bd->pVertexShader, NULL, 0); + ctx->VSSetShader(bd->pVertexShader, nullptr, 0); ctx->VSSetConstantBuffers(0, 1, &bd->pVertexConstantBuffer); - ctx->PSSetShader(bd->pPixelShader, NULL, 0); + ctx->PSSetShader(bd->pPixelShader, nullptr, 0); ctx->PSSetSamplers(0, 1, &bd->pFontSampler); - ctx->GSSetShader(NULL, NULL, 0); - ctx->HSSetShader(NULL, NULL, 0); // In theory we should backup and restore this as well.. very infrequently used.. - ctx->DSSetShader(NULL, NULL, 0); // In theory we should backup and restore this as well.. very infrequently used.. - ctx->CSSetShader(NULL, NULL, 0); // In theory we should backup and restore this as well.. very infrequently used.. + ctx->GSSetShader(nullptr, nullptr, 0); + ctx->HSSetShader(nullptr, nullptr, 0); // In theory we should backup and restore this as well.. very infrequently used.. + ctx->DSSetShader(nullptr, nullptr, 0); // In theory we should backup and restore this as well.. very infrequently used.. + ctx->CSSetShader(nullptr, nullptr, 0); // In theory we should backup and restore this as well.. very infrequently used.. // Setup blend state const float blend_factor[4] = { 0.f, 0.f, 0.f, 0.f }; @@ -132,7 +133,7 @@ void ImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data) // Create and grow vertex/index buffers if needed if (!bd->pVB || bd->VertexBufferSize < draw_data->TotalVtxCount) { - if (bd->pVB) { bd->pVB->Release(); bd->pVB = NULL; } + if (bd->pVB) { bd->pVB->Release(); bd->pVB = nullptr; } bd->VertexBufferSize = draw_data->TotalVtxCount + 5000; D3D11_BUFFER_DESC desc; memset(&desc, 0, sizeof(D3D11_BUFFER_DESC)); @@ -141,12 +142,12 @@ void ImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data) desc.BindFlags = D3D11_BIND_VERTEX_BUFFER; desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE; desc.MiscFlags = 0; - if (bd->pd3dDevice->CreateBuffer(&desc, NULL, &bd->pVB) < 0) + if (bd->pd3dDevice->CreateBuffer(&desc, nullptr, &bd->pVB) < 0) return; } if (!bd->pIB || bd->IndexBufferSize < draw_data->TotalIdxCount) { - if (bd->pIB) { bd->pIB->Release(); bd->pIB = NULL; } + if (bd->pIB) { bd->pIB->Release(); bd->pIB = nullptr; } bd->IndexBufferSize = draw_data->TotalIdxCount + 10000; D3D11_BUFFER_DESC desc; memset(&desc, 0, sizeof(D3D11_BUFFER_DESC)); @@ -154,7 +155,7 @@ void ImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data) desc.ByteWidth = bd->IndexBufferSize * sizeof(ImDrawIdx); desc.BindFlags = D3D11_BIND_INDEX_BUFFER; desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE; - if (bd->pd3dDevice->CreateBuffer(&desc, NULL, &bd->pIB) < 0) + if (bd->pd3dDevice->CreateBuffer(&desc, nullptr, &bd->pIB) < 0) return; } @@ -183,7 +184,7 @@ void ImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data) D3D11_MAPPED_SUBRESOURCE mapped_resource; if (ctx->Map(bd->pVertexConstantBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &mapped_resource) != S_OK) return; - VERTEX_CONSTANT_BUFFER* constant_buffer = (VERTEX_CONSTANT_BUFFER*)mapped_resource.pData; + VERTEX_CONSTANT_BUFFER_DX11* constant_buffer = (VERTEX_CONSTANT_BUFFER_DX11*)mapped_resource.pData; float L = draw_data->DisplayPos.x; float R = draw_data->DisplayPos.x + draw_data->DisplaySize.x; float T = draw_data->DisplayPos.y; @@ -258,7 +259,7 @@ void ImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data) for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) { const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback != NULL) + if (pcmd->UserCallback != nullptr) { // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) @@ -332,13 +333,13 @@ static void ImGui_ImplDX11_CreateFontsTexture() desc.BindFlags = D3D11_BIND_SHADER_RESOURCE; desc.CPUAccessFlags = 0; - ID3D11Texture2D* pTexture = NULL; + ID3D11Texture2D* pTexture = nullptr; D3D11_SUBRESOURCE_DATA subResource; subResource.pSysMem = pixels; subResource.SysMemPitch = desc.Width * 4; subResource.SysMemSlicePitch = 0; bd->pd3dDevice->CreateTexture2D(&desc, &subResource, &pTexture); - IM_ASSERT(pTexture != NULL); + IM_ASSERT(pTexture != nullptr); // Create texture view D3D11_SHADER_RESOURCE_VIEW_DESC srvDesc; @@ -416,9 +417,9 @@ bool ImGui_ImplDX11_CreateDeviceObjects() }"; ID3DBlob* vertexShaderBlob; - if (FAILED(D3DCompile(vertexShader, strlen(vertexShader), NULL, NULL, NULL, "main", "vs_4_0", 0, 0, &vertexShaderBlob, NULL))) + if (FAILED(D3DCompile(vertexShader, strlen(vertexShader), nullptr, nullptr, nullptr, "main", "vs_4_0", 0, 0, &vertexShaderBlob, nullptr))) return false; // NB: Pass ID3DBlob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! - if (bd->pd3dDevice->CreateVertexShader(vertexShaderBlob->GetBufferPointer(), vertexShaderBlob->GetBufferSize(), NULL, &bd->pVertexShader) != S_OK) + if (bd->pd3dDevice->CreateVertexShader(vertexShaderBlob->GetBufferPointer(), vertexShaderBlob->GetBufferSize(), nullptr, &bd->pVertexShader) != S_OK) { vertexShaderBlob->Release(); return false; @@ -441,12 +442,12 @@ bool ImGui_ImplDX11_CreateDeviceObjects() // Create the constant buffer { D3D11_BUFFER_DESC desc; - desc.ByteWidth = sizeof(VERTEX_CONSTANT_BUFFER); + desc.ByteWidth = sizeof(VERTEX_CONSTANT_BUFFER_DX11); desc.Usage = D3D11_USAGE_DYNAMIC; desc.BindFlags = D3D11_BIND_CONSTANT_BUFFER; desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE; desc.MiscFlags = 0; - bd->pd3dDevice->CreateBuffer(&desc, NULL, &bd->pVertexConstantBuffer); + bd->pd3dDevice->CreateBuffer(&desc, nullptr, &bd->pVertexConstantBuffer); } } @@ -469,9 +470,9 @@ bool ImGui_ImplDX11_CreateDeviceObjects() }"; ID3DBlob* pixelShaderBlob; - if (FAILED(D3DCompile(pixelShader, strlen(pixelShader), NULL, NULL, NULL, "main", "ps_4_0", 0, 0, &pixelShaderBlob, NULL))) + if (FAILED(D3DCompile(pixelShader, strlen(pixelShader), nullptr, nullptr, nullptr, "main", "ps_4_0", 0, 0, &pixelShaderBlob, nullptr))) return false; // NB: Pass ID3DBlob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! - if (bd->pd3dDevice->CreatePixelShader(pixelShaderBlob->GetBufferPointer(), pixelShaderBlob->GetBufferSize(), NULL, &bd->pPixelShader) != S_OK) + if (bd->pd3dDevice->CreatePixelShader(pixelShaderBlob->GetBufferPointer(), pixelShaderBlob->GetBufferSize(), nullptr, &bd->pPixelShader) != S_OK) { pixelShaderBlob->Release(); return false; @@ -531,23 +532,23 @@ void ImGui_ImplDX11_InvalidateDeviceObjects() if (!bd->pd3dDevice) return; - if (bd->pFontSampler) { bd->pFontSampler->Release(); bd->pFontSampler = NULL; } - if (bd->pFontTextureView) { bd->pFontTextureView->Release(); bd->pFontTextureView = NULL; ImGui::GetIO().Fonts->SetTexID(NULL); } // We copied data->pFontTextureView to io.Fonts->TexID so let's clear that as well. - if (bd->pIB) { bd->pIB->Release(); bd->pIB = NULL; } - if (bd->pVB) { bd->pVB->Release(); bd->pVB = NULL; } - if (bd->pBlendState) { bd->pBlendState->Release(); bd->pBlendState = NULL; } - if (bd->pDepthStencilState) { bd->pDepthStencilState->Release(); bd->pDepthStencilState = NULL; } - if (bd->pRasterizerState) { bd->pRasterizerState->Release(); bd->pRasterizerState = NULL; } - if (bd->pPixelShader) { bd->pPixelShader->Release(); bd->pPixelShader = NULL; } - if (bd->pVertexConstantBuffer) { bd->pVertexConstantBuffer->Release(); bd->pVertexConstantBuffer = NULL; } - if (bd->pInputLayout) { bd->pInputLayout->Release(); bd->pInputLayout = NULL; } - if (bd->pVertexShader) { bd->pVertexShader->Release(); bd->pVertexShader = NULL; } + if (bd->pFontSampler) { bd->pFontSampler->Release(); bd->pFontSampler = nullptr; } + if (bd->pFontTextureView) { bd->pFontTextureView->Release(); bd->pFontTextureView = nullptr; ImGui::GetIO().Fonts->SetTexID(0); } // We copied data->pFontTextureView to io.Fonts->TexID so let's clear that as well. + if (bd->pIB) { bd->pIB->Release(); bd->pIB = nullptr; } + if (bd->pVB) { bd->pVB->Release(); bd->pVB = nullptr; } + if (bd->pBlendState) { bd->pBlendState->Release(); bd->pBlendState = nullptr; } + if (bd->pDepthStencilState) { bd->pDepthStencilState->Release(); bd->pDepthStencilState = nullptr; } + if (bd->pRasterizerState) { bd->pRasterizerState->Release(); bd->pRasterizerState = nullptr; } + if (bd->pPixelShader) { bd->pPixelShader->Release(); bd->pPixelShader = nullptr; } + if (bd->pVertexConstantBuffer) { bd->pVertexConstantBuffer->Release(); bd->pVertexConstantBuffer = nullptr; } + if (bd->pInputLayout) { bd->pInputLayout->Release(); bd->pInputLayout = nullptr; } + if (bd->pVertexShader) { bd->pVertexShader->Release(); bd->pVertexShader = nullptr; } } bool ImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_context) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Setup backend capabilities flags ImGui_ImplDX11_Data* bd = IM_NEW(ImGui_ImplDX11_Data)(); @@ -557,9 +558,9 @@ bool ImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_co io.BackendFlags |= ImGuiBackendFlags_RendererHasViewports; // We can create multi-viewports on the Renderer side (optional) // Get factory from device - IDXGIDevice* pDXGIDevice = NULL; - IDXGIAdapter* pDXGIAdapter = NULL; - IDXGIFactory* pFactory = NULL; + IDXGIDevice* pDXGIDevice = nullptr; + IDXGIAdapter* pDXGIAdapter = nullptr; + IDXGIFactory* pFactory = nullptr; if (device->QueryInterface(IID_PPV_ARGS(&pDXGIDevice)) == S_OK) if (pDXGIDevice->GetParent(IID_PPV_ARGS(&pDXGIAdapter)) == S_OK) @@ -583,7 +584,7 @@ bool ImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_co void ImGui_ImplDX11_Shutdown() { ImGui_ImplDX11_Data* bd = ImGui_ImplDX11_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplDX11_ShutdownPlatformInterface(); @@ -591,15 +592,16 @@ void ImGui_ImplDX11_Shutdown() if (bd->pFactory) { bd->pFactory->Release(); } if (bd->pd3dDevice) { bd->pd3dDevice->Release(); } if (bd->pd3dDeviceContext) { bd->pd3dDeviceContext->Release(); } - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); IM_DELETE(bd); } void ImGui_ImplDX11_NewFrame() { ImGui_ImplDX11_Data* bd = ImGui_ImplDX11_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplDX11_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplDX11_Init()?"); if (!bd->pFontSampler) ImGui_ImplDX11_CreateDeviceObjects(); @@ -611,14 +613,14 @@ void ImGui_ImplDX11_NewFrame() // If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. //-------------------------------------------------------------------------------------------------------- -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplDX11_ViewportData { IDXGISwapChain* SwapChain; ID3D11RenderTargetView* RTView; - ImGui_ImplDX11_ViewportData() { SwapChain = NULL; RTView = NULL; } - ~ImGui_ImplDX11_ViewportData() { IM_ASSERT(SwapChain == NULL && RTView == NULL); } + ImGui_ImplDX11_ViewportData() { SwapChain = nullptr; RTView = nullptr; } + ~ImGui_ImplDX11_ViewportData() { IM_ASSERT(SwapChain == nullptr && RTView == nullptr); } }; static void ImGui_ImplDX11_CreateWindow(ImGuiViewport* viewport) @@ -628,7 +630,7 @@ static void ImGui_ImplDX11_CreateWindow(ImGuiViewport* viewport) viewport->RendererUserData = vd; // PlatformHandleRaw should always be a HWND, whereas PlatformHandle might be a higher-level handle (e.g. GLFWWindow*, SDL_Window*). - // Some backend will leave PlatformHandleRaw NULL, in which case we assume PlatformHandle will contain the HWND. + // Some backends will leave PlatformHandleRaw == 0, in which case we assume PlatformHandle will contain the HWND. HWND hwnd = viewport->PlatformHandleRaw ? (HWND)viewport->PlatformHandleRaw : (HWND)viewport->PlatformHandle; IM_ASSERT(hwnd != 0); @@ -647,7 +649,7 @@ static void ImGui_ImplDX11_CreateWindow(ImGuiViewport* viewport) sd.SwapEffect = DXGI_SWAP_EFFECT_DISCARD; sd.Flags = 0; - IM_ASSERT(vd->SwapChain == NULL && vd->RTView == NULL); + IM_ASSERT(vd->SwapChain == nullptr && vd->RTView == nullptr); bd->pFactory->CreateSwapChain(bd->pd3dDevice, &sd, &vd->SwapChain); // Create the render target @@ -655,25 +657,25 @@ static void ImGui_ImplDX11_CreateWindow(ImGuiViewport* viewport) { ID3D11Texture2D* pBackBuffer; vd->SwapChain->GetBuffer(0, IID_PPV_ARGS(&pBackBuffer)); - bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, NULL, &vd->RTView); + bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, nullptr, &vd->RTView); pBackBuffer->Release(); } } static void ImGui_ImplDX11_DestroyWindow(ImGuiViewport* viewport) { - // The main viewport (owned by the application) will always have RendererUserData == NULL since we didn't create the data for it. + // The main viewport (owned by the application) will always have RendererUserData == nullptr since we didn't create the data for it. if (ImGui_ImplDX11_ViewportData* vd = (ImGui_ImplDX11_ViewportData*)viewport->RendererUserData) { if (vd->SwapChain) vd->SwapChain->Release(); - vd->SwapChain = NULL; + vd->SwapChain = nullptr; if (vd->RTView) vd->RTView->Release(); - vd->RTView = NULL; + vd->RTView = nullptr; IM_DELETE(vd); } - viewport->RendererUserData = NULL; + viewport->RendererUserData = nullptr; } static void ImGui_ImplDX11_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) @@ -683,15 +685,15 @@ static void ImGui_ImplDX11_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) if (vd->RTView) { vd->RTView->Release(); - vd->RTView = NULL; + vd->RTView = nullptr; } if (vd->SwapChain) { - ID3D11Texture2D* pBackBuffer = NULL; + ID3D11Texture2D* pBackBuffer = nullptr; vd->SwapChain->ResizeBuffers(0, (UINT)size.x, (UINT)size.y, DXGI_FORMAT_UNKNOWN, 0); vd->SwapChain->GetBuffer(0, IID_PPV_ARGS(&pBackBuffer)); - if (pBackBuffer == NULL) { fprintf(stderr, "ImGui_ImplDX11_SetWindowSize() failed creating buffers.\n"); return; } - bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, NULL, &vd->RTView); + if (pBackBuffer == nullptr) { fprintf(stderr, "ImGui_ImplDX11_SetWindowSize() failed creating buffers.\n"); return; } + bd->pd3dDevice->CreateRenderTargetView(pBackBuffer, nullptr, &vd->RTView); pBackBuffer->Release(); } } @@ -701,7 +703,7 @@ static void ImGui_ImplDX11_RenderWindow(ImGuiViewport* viewport, void*) ImGui_ImplDX11_Data* bd = ImGui_ImplDX11_GetBackendData(); ImGui_ImplDX11_ViewportData* vd = (ImGui_ImplDX11_ViewportData*)viewport->RendererUserData; ImVec4 clear_color = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); - bd->pd3dDeviceContext->OMSetRenderTargets(1, &vd->RTView, NULL); + bd->pd3dDeviceContext->OMSetRenderTargets(1, &vd->RTView, nullptr); if (!(viewport->Flags & ImGuiViewportFlags_NoRendererClear)) bd->pd3dDeviceContext->ClearRenderTargetView(vd->RTView, (float*)&clear_color); ImGui_ImplDX11_RenderDrawData(viewport->DrawData); diff --git a/extern/imgui_patched/backends/imgui_impl_dx11.h b/extern/imgui_patched/backends/imgui_impl_dx11.h index 8e2aa685..cee486f5 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx11.h +++ b/extern/imgui_patched/backends/imgui_impl_dx11.h @@ -3,10 +3,10 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'ID3D11ShaderResourceView*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. -// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. // Read online: https://github.com/ocornut/imgui/tree/master/docs diff --git a/extern/imgui_patched/backends/imgui_impl_dx12.cpp b/extern/imgui_patched/backends/imgui_impl_dx12.cpp index c7445522..36b12ec7 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx12.cpp +++ b/extern/imgui_patched/backends/imgui_impl_dx12.cpp @@ -3,9 +3,9 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'D3D12_GPU_DESCRIPTOR_HANDLE' as ImTextureID. Read the FAQ about ImTextureID! +// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. // [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // FIXME: The transition from removing a viewport and moving the window in an existing hosted viewport tends to flicker. -// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. // Important: to compile on 32-bit systems, this backend requires code to be compiled with '#define ImTextureID ImU64'. // This is because we need ImTextureID to carry a 64-bit value and by default ImTextureID is defined as void*. @@ -22,7 +22,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-06-29: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). // 2021-05-19: DirectX12: Replaced direct access to ImDrawCmd::TextureId with a call to ImDrawCmd::GetTexID(). (will become a requirement) // 2021-02-18: DirectX12: Change blending equation to preserve alpha in output buffer. @@ -71,7 +72,7 @@ struct ImGui_ImplDX12_Data // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. static ImGui_ImplDX12_Data* ImGui_ImplDX12_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplDX12_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplDX12_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Buffers used during the rendering of a frame @@ -113,13 +114,13 @@ struct ImGui_ImplDX12_ViewportData ImGui_ImplDX12_ViewportData(UINT num_frames_in_flight) { - CommandQueue = NULL; - CommandList = NULL; - RtvDescHeap = NULL; - SwapChain = NULL; - Fence = NULL; + CommandQueue = nullptr; + CommandList = nullptr; + RtvDescHeap = nullptr; + SwapChain = nullptr; + Fence = nullptr; FenceSignaledValue = 0; - FenceEvent = NULL; + FenceEvent = nullptr; NumFramesInFlight = num_frames_in_flight; FrameCtx = new ImGui_ImplDX12_FrameContext[NumFramesInFlight]; FrameIndex = UINT_MAX; @@ -127,36 +128,36 @@ struct ImGui_ImplDX12_ViewportData for (UINT i = 0; i < NumFramesInFlight; ++i) { - FrameCtx[i].CommandAllocator = NULL; - FrameCtx[i].RenderTarget = NULL; + FrameCtx[i].CommandAllocator = nullptr; + FrameCtx[i].RenderTarget = nullptr; // Create buffers with a default size (they will later be grown as needed) - FrameRenderBuffers[i].IndexBuffer = NULL; - FrameRenderBuffers[i].VertexBuffer = NULL; + FrameRenderBuffers[i].IndexBuffer = nullptr; + FrameRenderBuffers[i].VertexBuffer = nullptr; FrameRenderBuffers[i].VertexBufferSize = 5000; FrameRenderBuffers[i].IndexBufferSize = 10000; } } ~ImGui_ImplDX12_ViewportData() { - IM_ASSERT(CommandQueue == NULL && CommandList == NULL); - IM_ASSERT(RtvDescHeap == NULL); - IM_ASSERT(SwapChain == NULL); - IM_ASSERT(Fence == NULL); - IM_ASSERT(FenceEvent == NULL); + IM_ASSERT(CommandQueue == nullptr && CommandList == nullptr); + IM_ASSERT(RtvDescHeap == nullptr); + IM_ASSERT(SwapChain == nullptr); + IM_ASSERT(Fence == nullptr); + IM_ASSERT(FenceEvent == nullptr); for (UINT i = 0; i < NumFramesInFlight; ++i) { - IM_ASSERT(FrameCtx[i].CommandAllocator == NULL && FrameCtx[i].RenderTarget == NULL); - IM_ASSERT(FrameRenderBuffers[i].IndexBuffer == NULL && FrameRenderBuffers[i].VertexBuffer == NULL); + IM_ASSERT(FrameCtx[i].CommandAllocator == nullptr && FrameCtx[i].RenderTarget == nullptr); + IM_ASSERT(FrameRenderBuffers[i].IndexBuffer == nullptr && FrameRenderBuffers[i].VertexBuffer == nullptr); } - delete[] FrameCtx; FrameCtx = NULL; - delete[] FrameRenderBuffers; FrameRenderBuffers = NULL; + delete[] FrameCtx; FrameCtx = nullptr; + delete[] FrameRenderBuffers; FrameRenderBuffers = nullptr; } }; -struct VERTEX_CONSTANT_BUFFER +struct VERTEX_CONSTANT_BUFFER_DX12 { float mvp[4][4]; }; @@ -172,7 +173,7 @@ static void ImGui_ImplDX12_SetupRenderState(ImDrawData* draw_data, ID3D12Graphic // Setup orthographic projection matrix into our constant buffer // Our visible imgui space lies from draw_data->DisplayPos (top left) to draw_data->DisplayPos+data_data->DisplaySize (bottom right). - VERTEX_CONSTANT_BUFFER vertex_constant_buffer; + VERTEX_CONSTANT_BUFFER_DX12 vertex_constant_buffer; { float L = draw_data->DisplayPos.x; float R = draw_data->DisplayPos.x + draw_data->DisplaySize.x; @@ -228,7 +229,7 @@ static inline void SafeRelease(T*& res) { if (res) res->Release(); - res = NULL; + res = nullptr; } // Render function @@ -244,7 +245,7 @@ void ImGui_ImplDX12_RenderDrawData(ImDrawData* draw_data, ID3D12GraphicsCommandL ImGui_ImplDX12_RenderBuffers* fr = &vd->FrameRenderBuffers[vd->FrameIndex % bd->numFramesInFlight]; // Create and grow vertex/index buffers if needed - if (fr->VertexBuffer == NULL || fr->VertexBufferSize < draw_data->TotalVtxCount) + if (fr->VertexBuffer == nullptr || fr->VertexBufferSize < draw_data->TotalVtxCount) { SafeRelease(fr->VertexBuffer); fr->VertexBufferSize = draw_data->TotalVtxCount + 5000; @@ -264,10 +265,10 @@ void ImGui_ImplDX12_RenderDrawData(ImDrawData* draw_data, ID3D12GraphicsCommandL desc.SampleDesc.Count = 1; desc.Layout = D3D12_TEXTURE_LAYOUT_ROW_MAJOR; desc.Flags = D3D12_RESOURCE_FLAG_NONE; - if (bd->pd3dDevice->CreateCommittedResource(&props, D3D12_HEAP_FLAG_NONE, &desc, D3D12_RESOURCE_STATE_GENERIC_READ, NULL, IID_PPV_ARGS(&fr->VertexBuffer)) < 0) + if (bd->pd3dDevice->CreateCommittedResource(&props, D3D12_HEAP_FLAG_NONE, &desc, D3D12_RESOURCE_STATE_GENERIC_READ, nullptr, IID_PPV_ARGS(&fr->VertexBuffer)) < 0) return; } - if (fr->IndexBuffer == NULL || fr->IndexBufferSize < draw_data->TotalIdxCount) + if (fr->IndexBuffer == nullptr || fr->IndexBufferSize < draw_data->TotalIdxCount) { SafeRelease(fr->IndexBuffer); fr->IndexBufferSize = draw_data->TotalIdxCount + 10000; @@ -287,7 +288,7 @@ void ImGui_ImplDX12_RenderDrawData(ImDrawData* draw_data, ID3D12GraphicsCommandL desc.SampleDesc.Count = 1; desc.Layout = D3D12_TEXTURE_LAYOUT_ROW_MAJOR; desc.Flags = D3D12_RESOURCE_FLAG_NONE; - if (bd->pd3dDevice->CreateCommittedResource(&props, D3D12_HEAP_FLAG_NONE, &desc, D3D12_RESOURCE_STATE_GENERIC_READ, NULL, IID_PPV_ARGS(&fr->IndexBuffer)) < 0) + if (bd->pd3dDevice->CreateCommittedResource(&props, D3D12_HEAP_FLAG_NONE, &desc, D3D12_RESOURCE_STATE_GENERIC_READ, nullptr, IID_PPV_ARGS(&fr->IndexBuffer)) < 0) return; } @@ -326,7 +327,7 @@ void ImGui_ImplDX12_RenderDrawData(ImDrawData* draw_data, ID3D12GraphicsCommandL for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) { const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback != NULL) + if (pcmd->UserCallback != nullptr) { // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) @@ -388,9 +389,9 @@ static void ImGui_ImplDX12_CreateFontsTexture() desc.Layout = D3D12_TEXTURE_LAYOUT_UNKNOWN; desc.Flags = D3D12_RESOURCE_FLAG_NONE; - ID3D12Resource* pTexture = NULL; + ID3D12Resource* pTexture = nullptr; bd->pd3dDevice->CreateCommittedResource(&props, D3D12_HEAP_FLAG_NONE, &desc, - D3D12_RESOURCE_STATE_COPY_DEST, NULL, IID_PPV_ARGS(&pTexture)); + D3D12_RESOURCE_STATE_COPY_DEST, nullptr, IID_PPV_ARGS(&pTexture)); UINT uploadPitch = (width * 4 + D3D12_TEXTURE_DATA_PITCH_ALIGNMENT - 1u) & ~(D3D12_TEXTURE_DATA_PITCH_ALIGNMENT - 1u); UINT uploadSize = height * uploadPitch; @@ -410,12 +411,12 @@ static void ImGui_ImplDX12_CreateFontsTexture() props.CPUPageProperty = D3D12_CPU_PAGE_PROPERTY_UNKNOWN; props.MemoryPoolPreference = D3D12_MEMORY_POOL_UNKNOWN; - ID3D12Resource* uploadBuffer = NULL; + ID3D12Resource* uploadBuffer = nullptr; HRESULT hr = bd->pd3dDevice->CreateCommittedResource(&props, D3D12_HEAP_FLAG_NONE, &desc, - D3D12_RESOURCE_STATE_GENERIC_READ, NULL, IID_PPV_ARGS(&uploadBuffer)); + D3D12_RESOURCE_STATE_GENERIC_READ, nullptr, IID_PPV_ARGS(&uploadBuffer)); IM_ASSERT(SUCCEEDED(hr)); - void* mapped = NULL; + void* mapped = nullptr; D3D12_RANGE range = { 0, uploadSize }; hr = uploadBuffer->Map(0, &range, &mapped); IM_ASSERT(SUCCEEDED(hr)); @@ -445,31 +446,31 @@ static void ImGui_ImplDX12_CreateFontsTexture() barrier.Transition.StateBefore = D3D12_RESOURCE_STATE_COPY_DEST; barrier.Transition.StateAfter = D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE; - ID3D12Fence* fence = NULL; + ID3D12Fence* fence = nullptr; hr = bd->pd3dDevice->CreateFence(0, D3D12_FENCE_FLAG_NONE, IID_PPV_ARGS(&fence)); IM_ASSERT(SUCCEEDED(hr)); HANDLE event = CreateEvent(0, 0, 0, 0); - IM_ASSERT(event != NULL); + IM_ASSERT(event != nullptr); D3D12_COMMAND_QUEUE_DESC queueDesc = {}; queueDesc.Type = D3D12_COMMAND_LIST_TYPE_DIRECT; queueDesc.Flags = D3D12_COMMAND_QUEUE_FLAG_NONE; queueDesc.NodeMask = 1; - ID3D12CommandQueue* cmdQueue = NULL; + ID3D12CommandQueue* cmdQueue = nullptr; hr = bd->pd3dDevice->CreateCommandQueue(&queueDesc, IID_PPV_ARGS(&cmdQueue)); IM_ASSERT(SUCCEEDED(hr)); - ID3D12CommandAllocator* cmdAlloc = NULL; + ID3D12CommandAllocator* cmdAlloc = nullptr; hr = bd->pd3dDevice->CreateCommandAllocator(D3D12_COMMAND_LIST_TYPE_DIRECT, IID_PPV_ARGS(&cmdAlloc)); IM_ASSERT(SUCCEEDED(hr)); - ID3D12GraphicsCommandList* cmdList = NULL; - hr = bd->pd3dDevice->CreateCommandList(0, D3D12_COMMAND_LIST_TYPE_DIRECT, cmdAlloc, NULL, IID_PPV_ARGS(&cmdList)); + ID3D12GraphicsCommandList* cmdList = nullptr; + hr = bd->pd3dDevice->CreateCommandList(0, D3D12_COMMAND_LIST_TYPE_DIRECT, cmdAlloc, nullptr, IID_PPV_ARGS(&cmdList)); IM_ASSERT(SUCCEEDED(hr)); - cmdList->CopyTextureRegion(&dstLocation, 0, 0, 0, &srcLocation, NULL); + cmdList->CopyTextureRegion(&dstLocation, 0, 0, 0, &srcLocation, nullptr); cmdList->ResourceBarrier(1, &barrier); hr = cmdList->Close(); @@ -574,7 +575,7 @@ bool ImGui_ImplDX12_CreateDeviceObjects() // Load d3d12.dll and D3D12SerializeRootSignature() function address dynamically to facilitate using with D3D12On7. // See if any version of d3d12.dll is already loaded in the process. If so, give preference to that. static HINSTANCE d3d12_dll = ::GetModuleHandleA("d3d12.dll"); - if (d3d12_dll == NULL) + if (d3d12_dll == nullptr) { // Attempt to load d3d12.dll from local directories. This will only succeed if // (1) the current OS is Windows 7, and @@ -582,23 +583,23 @@ bool ImGui_ImplDX12_CreateDeviceObjects() // See https://github.com/ocornut/imgui/pull/3696 for details. const char* localD3d12Paths[] = { ".\\d3d12.dll", ".\\d3d12on7\\d3d12.dll", ".\\12on7\\d3d12.dll" }; // A. current directory, B. used by some games, C. used in Microsoft D3D12On7 sample for (int i = 0; i < IM_ARRAYSIZE(localD3d12Paths); i++) - if ((d3d12_dll = ::LoadLibraryA(localD3d12Paths[i])) != NULL) + if ((d3d12_dll = ::LoadLibraryA(localD3d12Paths[i])) != nullptr) break; // If failed, we are on Windows >= 10. - if (d3d12_dll == NULL) + if (d3d12_dll == nullptr) d3d12_dll = ::LoadLibraryA("d3d12.dll"); - if (d3d12_dll == NULL) + if (d3d12_dll == nullptr) return false; } PFN_D3D12_SERIALIZE_ROOT_SIGNATURE D3D12SerializeRootSignatureFn = (PFN_D3D12_SERIALIZE_ROOT_SIGNATURE)::GetProcAddress(d3d12_dll, "D3D12SerializeRootSignature"); - if (D3D12SerializeRootSignatureFn == NULL) + if (D3D12SerializeRootSignatureFn == nullptr) return false; - ID3DBlob* blob = NULL; - if (D3D12SerializeRootSignatureFn(&desc, D3D_ROOT_SIGNATURE_VERSION_1, &blob, NULL) != S_OK) + ID3DBlob* blob = nullptr; + if (D3D12SerializeRootSignatureFn(&desc, D3D_ROOT_SIGNATURE_VERSION_1, &blob, nullptr) != S_OK) return false; bd->pd3dDevice->CreateRootSignature(0, blob->GetBufferPointer(), blob->GetBufferSize(), IID_PPV_ARGS(&bd->pRootSignature)); @@ -607,7 +608,7 @@ bool ImGui_ImplDX12_CreateDeviceObjects() // By using D3DCompile() from / d3dcompiler.lib, we introduce a dependency to a given version of d3dcompiler_XX.dll (see D3DCOMPILER_DLL_A) // If you would like to use this DX12 sample code but remove this dependency you can: - // 1) compile once, save the compiled shader blobs into a file or source code and pass them to CreateVertexShader()/CreatePixelShader() [preferred solution] + // 1) compile once, save the compiled shader blobs into a file or source code and assign them to psoDesc.VS/PS [preferred solution] // 2) use code to detect any version of the DLL and grab a pointer to D3DCompile from the DLL. // See https://github.com/ocornut/imgui/pull/638 for sources and details. @@ -655,8 +656,8 @@ bool ImGui_ImplDX12_CreateDeviceObjects() return output;\ }"; - if (FAILED(D3DCompile(vertexShader, strlen(vertexShader), NULL, NULL, NULL, "main", "vs_5_0", 0, 0, &vertexShaderBlob, NULL))) - return false; // NB: Pass ID3D10Blob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! + if (FAILED(D3DCompile(vertexShader, strlen(vertexShader), nullptr, nullptr, nullptr, "main", "vs_5_0", 0, 0, &vertexShaderBlob, nullptr))) + return false; // NB: Pass ID3DBlob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! psoDesc.VS = { vertexShaderBlob->GetBufferPointer(), vertexShaderBlob->GetBufferSize() }; // Create the input layout @@ -687,10 +688,10 @@ bool ImGui_ImplDX12_CreateDeviceObjects() return out_col; \ }"; - if (FAILED(D3DCompile(pixelShader, strlen(pixelShader), NULL, NULL, NULL, "main", "ps_5_0", 0, 0, &pixelShaderBlob, NULL))) + if (FAILED(D3DCompile(pixelShader, strlen(pixelShader), nullptr, nullptr, nullptr, "main", "ps_5_0", 0, 0, &pixelShaderBlob, nullptr))) { vertexShaderBlob->Release(); - return false; // NB: Pass ID3D10Blob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! + return false; // NB: Pass ID3DBlob* pErrorBlob to D3DCompile() to get error showing in (const char*)pErrorBlob->GetBufferPointer(). Make sure to Release() the blob! } psoDesc.PS = { pixelShaderBlob->GetBufferPointer(), pixelShaderBlob->GetBufferSize() }; } @@ -765,14 +766,14 @@ void ImGui_ImplDX12_InvalidateDeviceObjects() SafeRelease(bd->pRootSignature); SafeRelease(bd->pPipelineState); SafeRelease(bd->pFontTextureResource); - io.Fonts->SetTexID(NULL); // We copied bd->pFontTextureView to io.Fonts->TexID so let's clear that as well. + io.Fonts->SetTexID(0); // We copied bd->pFontTextureView to io.Fonts->TexID so let's clear that as well. } bool ImGui_ImplDX12_Init(ID3D12Device* device, int num_frames_in_flight, DXGI_FORMAT rtv_format, ID3D12DescriptorHeap* cbv_srv_heap, D3D12_CPU_DESCRIPTOR_HANDLE font_srv_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE font_srv_gpu_desc_handle) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Setup backend capabilities flags ImGui_ImplDX12_Data* bd = IM_NEW(ImGui_ImplDX12_Data)(); @@ -801,7 +802,7 @@ bool ImGui_ImplDX12_Init(ID3D12Device* device, int num_frames_in_flight, DXGI_FO void ImGui_ImplDX12_Shutdown() { ImGui_ImplDX12_Data* bd = ImGui_ImplDX12_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); // Manually delete main viewport render resources in-case we haven't initialized for viewports @@ -812,22 +813,23 @@ void ImGui_ImplDX12_Shutdown() for (UINT i = 0; i < bd->numFramesInFlight; i++) ImGui_ImplDX12_DestroyRenderBuffers(&vd->FrameRenderBuffers[i]); IM_DELETE(vd); - main_viewport->RendererUserData = NULL; + main_viewport->RendererUserData = nullptr; } // Clean up windows and device objects ImGui_ImplDX12_ShutdownPlatformInterface(); ImGui_ImplDX12_InvalidateDeviceObjects(); - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); IM_DELETE(bd); } void ImGui_ImplDX12_NewFrame() { ImGui_ImplDX12_Data* bd = ImGui_ImplDX12_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplDX12_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplDX12_Init()?"); if (!bd->pPipelineState) ImGui_ImplDX12_CreateDeviceObjects(); @@ -846,7 +848,7 @@ static void ImGui_ImplDX12_CreateWindow(ImGuiViewport* viewport) viewport->RendererUserData = vd; // PlatformHandleRaw should always be a HWND, whereas PlatformHandle might be a higher-level handle (e.g. GLFWWindow*, SDL_Window*). - // Some backends will leave PlatformHandleRaw NULL, in which case we assume PlatformHandle will contain the HWND. + // Some backends will leave PlatformHandleRaw == 0, in which case we assume PlatformHandle will contain the HWND. HWND hwnd = viewport->PlatformHandleRaw ? (HWND)viewport->PlatformHandleRaw : (HWND)viewport->PlatformHandle; IM_ASSERT(hwnd != 0); @@ -869,7 +871,7 @@ static void ImGui_ImplDX12_CreateWindow(ImGuiViewport* viewport) } // Create command list. - res = bd->pd3dDevice->CreateCommandList(0, D3D12_COMMAND_LIST_TYPE_DIRECT, vd->FrameCtx[0].CommandAllocator, NULL, IID_PPV_ARGS(&vd->CommandList)); + res = bd->pd3dDevice->CreateCommandList(0, D3D12_COMMAND_LIST_TYPE_DIRECT, vd->FrameCtx[0].CommandAllocator, nullptr, IID_PPV_ARGS(&vd->CommandList)); IM_ASSERT(res == S_OK); vd->CommandList->Close(); @@ -877,8 +879,8 @@ static void ImGui_ImplDX12_CreateWindow(ImGuiViewport* viewport) res = bd->pd3dDevice->CreateFence(0, D3D12_FENCE_FLAG_NONE, IID_PPV_ARGS(&vd->Fence)); IM_ASSERT(res == S_OK); - vd->FenceEvent = CreateEvent(NULL, FALSE, FALSE, NULL); - IM_ASSERT(vd->FenceEvent != NULL); + vd->FenceEvent = CreateEvent(nullptr, FALSE, FALSE, nullptr); + IM_ASSERT(vd->FenceEvent != nullptr); // Create swap chain // FIXME-VIEWPORT: May want to copy/inherit swap chain settings from the user/application. @@ -896,18 +898,18 @@ static void ImGui_ImplDX12_CreateWindow(ImGuiViewport* viewport) sd1.Scaling = DXGI_SCALING_STRETCH; sd1.Stereo = FALSE; - IDXGIFactory4* dxgi_factory = NULL; + IDXGIFactory4* dxgi_factory = nullptr; res = ::CreateDXGIFactory1(IID_PPV_ARGS(&dxgi_factory)); IM_ASSERT(res == S_OK); - IDXGISwapChain1* swap_chain = NULL; - res = dxgi_factory->CreateSwapChainForHwnd(vd->CommandQueue, hwnd, &sd1, NULL, NULL, &swap_chain); + IDXGISwapChain1* swap_chain = nullptr; + res = dxgi_factory->CreateSwapChainForHwnd(vd->CommandQueue, hwnd, &sd1, nullptr, nullptr, &swap_chain); IM_ASSERT(res == S_OK); dxgi_factory->Release(); // Or swapChain.As(&mSwapChain) - IM_ASSERT(vd->SwapChain == NULL); + IM_ASSERT(vd->SwapChain == nullptr); swap_chain->QueryInterface(IID_PPV_ARGS(&vd->SwapChain)); swap_chain->Release(); @@ -934,9 +936,9 @@ static void ImGui_ImplDX12_CreateWindow(ImGuiViewport* viewport) ID3D12Resource* back_buffer; for (UINT i = 0; i < bd->numFramesInFlight; i++) { - IM_ASSERT(vd->FrameCtx[i].RenderTarget == NULL); + IM_ASSERT(vd->FrameCtx[i].RenderTarget == nullptr); vd->SwapChain->GetBuffer(i, IID_PPV_ARGS(&back_buffer)); - bd->pd3dDevice->CreateRenderTargetView(back_buffer, NULL, vd->FrameCtx[i].RenderTargetCpuDescriptors); + bd->pd3dDevice->CreateRenderTargetView(back_buffer, nullptr, vd->FrameCtx[i].RenderTargetCpuDescriptors); vd->FrameCtx[i].RenderTarget = back_buffer; } } @@ -961,7 +963,7 @@ static void ImGui_WaitForPendingOperations(ImGui_ImplDX12_ViewportData* vd) static void ImGui_ImplDX12_DestroyWindow(ImGuiViewport* viewport) { - // The main viewport (owned by the application) will always have RendererUserData == NULL since we didn't create the data for it. + // The main viewport (owned by the application) will always have RendererUserData == 0 since we didn't create the data for it. ImGui_ImplDX12_Data* bd = ImGui_ImplDX12_GetBackendData(); if (ImGui_ImplDX12_ViewportData* vd = (ImGui_ImplDX12_ViewportData*)viewport->RendererUserData) { @@ -973,7 +975,7 @@ static void ImGui_ImplDX12_DestroyWindow(ImGuiViewport* viewport) SafeRelease(vd->RtvDescHeap); SafeRelease(vd->Fence); ::CloseHandle(vd->FenceEvent); - vd->FenceEvent = NULL; + vd->FenceEvent = nullptr; for (UINT i = 0; i < bd->numFramesInFlight; i++) { @@ -983,7 +985,7 @@ static void ImGui_ImplDX12_DestroyWindow(ImGuiViewport* viewport) } IM_DELETE(vd); } - viewport->RendererUserData = NULL; + viewport->RendererUserData = nullptr; } static void ImGui_ImplDX12_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) @@ -998,12 +1000,12 @@ static void ImGui_ImplDX12_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) if (vd->SwapChain) { - ID3D12Resource* back_buffer = NULL; + ID3D12Resource* back_buffer = nullptr; vd->SwapChain->ResizeBuffers(0, (UINT)size.x, (UINT)size.y, DXGI_FORMAT_UNKNOWN, 0); for (UINT i = 0; i < bd->numFramesInFlight; i++) { vd->SwapChain->GetBuffer(i, IID_PPV_ARGS(&back_buffer)); - bd->pd3dDevice->CreateRenderTargetView(back_buffer, NULL, vd->FrameCtx[i].RenderTargetCpuDescriptors); + bd->pd3dDevice->CreateRenderTargetView(back_buffer, nullptr, vd->FrameCtx[i].RenderTargetCpuDescriptors); vd->FrameCtx[i].RenderTarget = back_buffer; } } @@ -1030,11 +1032,11 @@ static void ImGui_ImplDX12_RenderWindow(ImGuiViewport* viewport, void*) ID3D12GraphicsCommandList* cmd_list = vd->CommandList; frame_context->CommandAllocator->Reset(); - cmd_list->Reset(frame_context->CommandAllocator, NULL); + cmd_list->Reset(frame_context->CommandAllocator, nullptr); cmd_list->ResourceBarrier(1, &barrier); - cmd_list->OMSetRenderTargets(1, &vd->FrameCtx[back_buffer_idx].RenderTargetCpuDescriptors, FALSE, NULL); + cmd_list->OMSetRenderTargets(1, &vd->FrameCtx[back_buffer_idx].RenderTargetCpuDescriptors, FALSE, nullptr); if (!(viewport->Flags & ImGuiViewportFlags_NoRendererClear)) - cmd_list->ClearRenderTargetView(vd->FrameCtx[back_buffer_idx].RenderTargetCpuDescriptors, (float*)&clear_color, 0, NULL); + cmd_list->ClearRenderTargetView(vd->FrameCtx[back_buffer_idx].RenderTargetCpuDescriptors, (float*)&clear_color, 0, nullptr); cmd_list->SetDescriptorHeaps(1, &bd->pd3dSrvDescHeap); ImGui_ImplDX12_RenderDrawData(viewport->DrawData, cmd_list); diff --git a/extern/imgui_patched/backends/imgui_impl_dx12.h b/extern/imgui_patched/backends/imgui_impl_dx12.h index 63a3c1a8..a4d02aa8 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx12.h +++ b/extern/imgui_patched/backends/imgui_impl_dx12.h @@ -3,8 +3,8 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'D3D12_GPU_DESCRIPTOR_HANDLE' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // Important: to compile on 32-bit systems, this backend requires code to be compiled with '#define ImTextureID ImU64'. // See imgui_impl_dx12.cpp file for details. diff --git a/extern/imgui_patched/backends/imgui_impl_dx9.cpp b/extern/imgui_patched/backends/imgui_impl_dx9.cpp index e4006260..7274f299 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx9.cpp +++ b/extern/imgui_patched/backends/imgui_impl_dx9.cpp @@ -3,8 +3,8 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'LPDIRECT3DTEXTURE9' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. @@ -13,7 +13,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-06-29: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). // 2021-06-25: DirectX9: Explicitly disable texture state stages after >= 1. // 2021-05-19: DirectX9: Replaced direct access to ImDrawCmd::TextureId with a call to ImDrawCmd::GetTexID(). (will become a requirement) @@ -69,7 +70,7 @@ struct CUSTOMVERTEX // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. static ImGui_ImplDX9_Data* ImGui_ImplDX9_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplDX9_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplDX9_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Forward Declarations @@ -93,8 +94,8 @@ static void ImGui_ImplDX9_SetupRenderState(ImDrawData* draw_data) bd->pd3dDevice->SetViewport(&vp); // Setup render state: fixed-pipeline, alpha-blending, no face culling, no depth testing, shade mode (for gradient), bilinear sampling. - bd->pd3dDevice->SetPixelShader(NULL); - bd->pd3dDevice->SetVertexShader(NULL); + bd->pd3dDevice->SetPixelShader(nullptr); + bd->pd3dDevice->SetVertexShader(nullptr); bd->pd3dDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID); bd->pd3dDevice->SetRenderState(D3DRS_SHADEMODE, D3DSHADE_GOURAUD); bd->pd3dDevice->SetRenderState(D3DRS_ZWRITEENABLE, FALSE); @@ -159,21 +160,21 @@ void ImGui_ImplDX9_RenderDrawData(ImDrawData* draw_data) ImGui_ImplDX9_Data* bd = ImGui_ImplDX9_GetBackendData(); if (!bd->pVB || bd->VertexBufferSize < draw_data->TotalVtxCount) { - if (bd->pVB) { bd->pVB->Release(); bd->pVB = NULL; } + if (bd->pVB) { bd->pVB->Release(); bd->pVB = nullptr; } bd->VertexBufferSize = draw_data->TotalVtxCount + 5000; - if (bd->pd3dDevice->CreateVertexBuffer(bd->VertexBufferSize * sizeof(CUSTOMVERTEX), D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY, D3DFVF_CUSTOMVERTEX, D3DPOOL_DEFAULT, &bd->pVB, NULL) < 0) + if (bd->pd3dDevice->CreateVertexBuffer(bd->VertexBufferSize * sizeof(CUSTOMVERTEX), D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY, D3DFVF_CUSTOMVERTEX, D3DPOOL_DEFAULT, &bd->pVB, nullptr) < 0) return; } if (!bd->pIB || bd->IndexBufferSize < draw_data->TotalIdxCount) { - if (bd->pIB) { bd->pIB->Release(); bd->pIB = NULL; } + if (bd->pIB) { bd->pIB->Release(); bd->pIB = nullptr; } bd->IndexBufferSize = draw_data->TotalIdxCount + 10000; - if (bd->pd3dDevice->CreateIndexBuffer(bd->IndexBufferSize * sizeof(ImDrawIdx), D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY, sizeof(ImDrawIdx) == 2 ? D3DFMT_INDEX16 : D3DFMT_INDEX32, D3DPOOL_DEFAULT, &bd->pIB, NULL) < 0) + if (bd->pd3dDevice->CreateIndexBuffer(bd->IndexBufferSize * sizeof(ImDrawIdx), D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY, sizeof(ImDrawIdx) == 2 ? D3DFMT_INDEX16 : D3DFMT_INDEX32, D3DPOOL_DEFAULT, &bd->pIB, nullptr) < 0) return; } // Backup the DX9 state - IDirect3DStateBlock9* d3d9_state_block = NULL; + IDirect3DStateBlock9* d3d9_state_block = nullptr; if (bd->pd3dDevice->CreateStateBlock(D3DSBT_ALL, &d3d9_state_block) < 0) return; if (d3d9_state_block->Capture() < 0) @@ -245,7 +246,7 @@ void ImGui_ImplDX9_RenderDrawData(ImDrawData* draw_data) for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) { const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback != NULL) + if (pcmd->UserCallback != nullptr) { // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) @@ -292,7 +293,7 @@ void ImGui_ImplDX9_RenderDrawData(ImDrawData* draw_data) bool ImGui_ImplDX9_Init(IDirect3DDevice9* device) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Setup backend capabilities flags ImGui_ImplDX9_Data* bd = IM_NEW(ImGui_ImplDX9_Data)(); @@ -313,14 +314,15 @@ bool ImGui_ImplDX9_Init(IDirect3DDevice9* device) void ImGui_ImplDX9_Shutdown() { ImGui_ImplDX9_Data* bd = ImGui_ImplDX9_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplDX9_ShutdownPlatformInterface(); ImGui_ImplDX9_InvalidateDeviceObjects(); if (bd->pd3dDevice) { bd->pd3dDevice->Release(); } - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); IM_DELETE(bd); } @@ -345,11 +347,11 @@ static bool ImGui_ImplDX9_CreateFontsTexture() #endif // Upload texture to graphics system - bd->FontTexture = NULL; - if (bd->pd3dDevice->CreateTexture(width, height, 1, D3DUSAGE_DYNAMIC, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &bd->FontTexture, NULL) < 0) + bd->FontTexture = nullptr; + if (bd->pd3dDevice->CreateTexture(width, height, 1, D3DUSAGE_DYNAMIC, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &bd->FontTexture, nullptr) < 0) return false; D3DLOCKED_RECT tex_locked_rect; - if (bd->FontTexture->LockRect(0, &tex_locked_rect, NULL, 0) != D3D_OK) + if (bd->FontTexture->LockRect(0, &tex_locked_rect, nullptr, 0) != D3D_OK) return false; for (int y = 0; y < height; y++) memcpy((unsigned char*)tex_locked_rect.pBits + (size_t)tex_locked_rect.Pitch * y, pixels + (size_t)width * bytes_per_pixel * y, (size_t)width * bytes_per_pixel); @@ -382,16 +384,16 @@ void ImGui_ImplDX9_InvalidateDeviceObjects() ImGui_ImplDX9_Data* bd = ImGui_ImplDX9_GetBackendData(); if (!bd || !bd->pd3dDevice) return; - if (bd->pVB) { bd->pVB->Release(); bd->pVB = NULL; } - if (bd->pIB) { bd->pIB->Release(); bd->pIB = NULL; } - if (bd->FontTexture) { bd->FontTexture->Release(); bd->FontTexture = NULL; ImGui::GetIO().Fonts->SetTexID(NULL); } // We copied bd->pFontTextureView to io.Fonts->TexID so let's clear that as well. + if (bd->pVB) { bd->pVB->Release(); bd->pVB = nullptr; } + if (bd->pIB) { bd->pIB->Release(); bd->pIB = nullptr; } + if (bd->FontTexture) { bd->FontTexture->Release(); bd->FontTexture = nullptr; ImGui::GetIO().Fonts->SetTexID(0); } // We copied bd->pFontTextureView to io.Fonts->TexID so let's clear that as well. ImGui_ImplDX9_InvalidateDeviceObjectsForPlatformWindows(); } void ImGui_ImplDX9_NewFrame() { ImGui_ImplDX9_Data* bd = ImGui_ImplDX9_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplDX9_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplDX9_Init()?"); if (!bd->FontTexture) ImGui_ImplDX9_CreateDeviceObjects(); @@ -403,14 +405,14 @@ void ImGui_ImplDX9_NewFrame() // If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. //-------------------------------------------------------------------------------------------------------- -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplDX9_ViewportData { IDirect3DSwapChain9* SwapChain; D3DPRESENT_PARAMETERS d3dpp; - ImGui_ImplDX9_ViewportData() { SwapChain = NULL; ZeroMemory(&d3dpp, sizeof(D3DPRESENT_PARAMETERS)); } - ~ImGui_ImplDX9_ViewportData() { IM_ASSERT(SwapChain == NULL); } + ImGui_ImplDX9_ViewportData() { SwapChain = nullptr; ZeroMemory(&d3dpp, sizeof(D3DPRESENT_PARAMETERS)); } + ~ImGui_ImplDX9_ViewportData() { IM_ASSERT(SwapChain == nullptr); } }; static void ImGui_ImplDX9_CreateWindow(ImGuiViewport* viewport) @@ -420,7 +422,7 @@ static void ImGui_ImplDX9_CreateWindow(ImGuiViewport* viewport) viewport->RendererUserData = vd; // PlatformHandleRaw should always be a HWND, whereas PlatformHandle might be a higher-level handle (e.g. GLFWWindow*, SDL_Window*). - // Some backends will leave PlatformHandleRaw NULL, in which case we assume PlatformHandle will contain the HWND. + // Some backends will leave PlatformHandleRaw == 0, in which case we assume PlatformHandle will contain the HWND. HWND hwnd = viewport->PlatformHandleRaw ? (HWND)viewport->PlatformHandleRaw : (HWND)viewport->PlatformHandle; IM_ASSERT(hwnd != 0); @@ -437,21 +439,21 @@ static void ImGui_ImplDX9_CreateWindow(ImGuiViewport* viewport) HRESULT hr = bd->pd3dDevice->CreateAdditionalSwapChain(&vd->d3dpp, &vd->SwapChain); IM_UNUSED(hr); IM_ASSERT(hr == D3D_OK); - IM_ASSERT(vd->SwapChain != NULL); + IM_ASSERT(vd->SwapChain != nullptr); } static void ImGui_ImplDX9_DestroyWindow(ImGuiViewport* viewport) { - // The main viewport (owned by the application) will always have RendererUserData == NULL since we didn't create the data for it. + // The main viewport (owned by the application) will always have RendererUserData == 0 since we didn't create the data for it. if (ImGui_ImplDX9_ViewportData* vd = (ImGui_ImplDX9_ViewportData*)viewport->RendererUserData) { if (vd->SwapChain) vd->SwapChain->Release(); - vd->SwapChain = NULL; + vd->SwapChain = nullptr; ZeroMemory(&vd->d3dpp, sizeof(D3DPRESENT_PARAMETERS)); IM_DELETE(vd); } - viewport->RendererUserData = NULL; + viewport->RendererUserData = nullptr; } static void ImGui_ImplDX9_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) @@ -461,7 +463,7 @@ static void ImGui_ImplDX9_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) if (vd->SwapChain) { vd->SwapChain->Release(); - vd->SwapChain = NULL; + vd->SwapChain = nullptr; vd->d3dpp.BackBufferWidth = (UINT)size.x; vd->d3dpp.BackBufferHeight = (UINT)size.y; HRESULT hr = bd->pd3dDevice->CreateAdditionalSwapChain(&vd->d3dpp, &vd->SwapChain); IM_UNUSED(hr); @@ -475,19 +477,19 @@ static void ImGui_ImplDX9_RenderWindow(ImGuiViewport* viewport, void*) ImGui_ImplDX9_ViewportData* vd = (ImGui_ImplDX9_ViewportData*)viewport->RendererUserData; ImVec4 clear_color = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); - LPDIRECT3DSURFACE9 render_target = NULL; - LPDIRECT3DSURFACE9 last_render_target = NULL; - LPDIRECT3DSURFACE9 last_depth_stencil = NULL; + LPDIRECT3DSURFACE9 render_target = nullptr; + LPDIRECT3DSURFACE9 last_render_target = nullptr; + LPDIRECT3DSURFACE9 last_depth_stencil = nullptr; vd->SwapChain->GetBackBuffer(0, D3DBACKBUFFER_TYPE_MONO, &render_target); bd->pd3dDevice->GetRenderTarget(0, &last_render_target); bd->pd3dDevice->GetDepthStencilSurface(&last_depth_stencil); bd->pd3dDevice->SetRenderTarget(0, render_target); - bd->pd3dDevice->SetDepthStencilSurface(NULL); + bd->pd3dDevice->SetDepthStencilSurface(nullptr); if (!(viewport->Flags & ImGuiViewportFlags_NoRendererClear)) { D3DCOLOR clear_col_dx = D3DCOLOR_RGBA((int)(clear_color.x*255.0f), (int)(clear_color.y*255.0f), (int)(clear_color.z*255.0f), (int)(clear_color.w*255.0f)); - bd->pd3dDevice->Clear(0, NULL, D3DCLEAR_TARGET, clear_col_dx, 1.0f, 0); + bd->pd3dDevice->Clear(0, nullptr, D3DCLEAR_TARGET, clear_col_dx, 1.0f, 0); } ImGui_ImplDX9_RenderDrawData(viewport->DrawData); @@ -503,7 +505,7 @@ static void ImGui_ImplDX9_RenderWindow(ImGuiViewport* viewport, void*) static void ImGui_ImplDX9_SwapBuffers(ImGuiViewport* viewport, void*) { ImGui_ImplDX9_ViewportData* vd = (ImGui_ImplDX9_ViewportData*)viewport->RendererUserData; - HRESULT hr = vd->SwapChain->Present(NULL, NULL, vd->d3dpp.hDeviceWindow, NULL, 0); + HRESULT hr = vd->SwapChain->Present(nullptr, nullptr, vd->d3dpp.hDeviceWindow, nullptr, 0); // Let main application handle D3DERR_DEVICELOST by resetting the device. IM_ASSERT(hr == D3D_OK || hr == D3DERR_DEVICELOST); } diff --git a/extern/imgui_patched/backends/imgui_impl_dx9.h b/extern/imgui_patched/backends/imgui_impl_dx9.h index 2d75662d..3e7c1736 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx9.h +++ b/extern/imgui_patched/backends/imgui_impl_dx9.h @@ -3,10 +3,10 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'LPDIRECT3DTEXTURE9' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. -// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. // Read online: https://github.com/ocornut/imgui/tree/master/docs diff --git a/extern/imgui_patched/backends/imgui_impl_glfw.cpp b/extern/imgui_patched/backends/imgui_impl_glfw.cpp index 92f6c552..87ea528b 100644 --- a/extern/imgui_patched/backends/imgui_impl_glfw.cpp +++ b/extern/imgui_patched/backends/imgui_impl_glfw.cpp @@ -1,10 +1,11 @@ // dear imgui: Platform Backend for GLFW // This needs to be used along with a Renderer (e.g. OpenGL3, Vulkan, WebGPU..) // (Info: GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) -// (Requires: GLFW 3.1+. Prefer GLFW 3.3+ for full feature support.) +// (Requires: GLFW 3.1+. Prefer GLFW 3.3+ or GLFW 3.4+ for full feature support.) // Implemented features: // [X] Platform: Clipboard support. +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen (Windows only). // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLFW_KEY_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange' (note: the resizing cursors requires GLFW 3.4+). @@ -20,11 +21,22 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-04-04: Inputs: Added support for io.AddMouseSourceEvent() to discriminate ImGuiMouseSource_Mouse/ImGuiMouseSource_TouchScreen/ImGuiMouseSource_Pen on Windows ONLY, using a custom WndProc hook. (#2702) +// 2023-03-16: Inputs: Fixed key modifiers handling on secondary viewports (docking branch). Broken on 2023/01/04. (#6248, #6034) +// 2023-03-14: Emscripten: Avoid using glfwGetError() and glfwGetGamepadState() which are not correctly implemented in Emscripten emulation. (#6240) +// 2023-02-03: Emscripten: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) +// 2023-01-18: Handle unsupported glfwGetVideoMode() call on e.g. Emscripten. +// 2023-01-04: Inputs: Fixed mods state on Linux when using Alt-GR text input (e.g. German keyboard layout), could lead to broken text input. Revert a 2022/01/17 change were we resumed using mods provided by GLFW, turns out they were faulty. +// 2022-11-22: Perform a dummy glfwGetError() read to cancel missing names with glfwGetKeyName(). (#5908) +// 2022-10-18: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. Using GLFW_VERSION_COMBINED directly. (#5785) +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). +// 2022-09-01: Inputs: Honor GLFW_CURSOR_DISABLED by not setting mouse position. // 2022-04-30: Inputs: Fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX. // 2022-03-23: Inputs: Fixed a regression in 1.87 which resulted in keyboard modifiers events being reported incorrectly on Linux/X11. // 2022-02-07: Added ImGui_ImplGlfw_InstallCallbacks()/ImGui_ImplGlfw_RestoreCallbacks() helpers to facilitate user installing callbacks after initializing backend. -// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago)with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. +// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago) with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. // 2021-01-20: Inputs: calling new io.AddKeyAnalogEvent() for gamepad support, instead of writing directly to io.NavInputs[]. // 2022-01-17: Inputs: calling new io.AddMousePosEvent(), io.AddMouseButtonEvent(), io.AddMouseWheelEvent() API (1.87+). // 2022-01-17: Inputs: always update key mods next and before key event (not in NewFrame) to fix input queue with very low framerates. @@ -64,39 +76,54 @@ #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast #pragma clang diagnostic ignored "-Wsign-conversion" // warning: implicit conversion changes signedness -#if __has_warning("-Wzero-as-null-pointer-constant") -#pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant" -#endif #endif // GLFW #include + #ifdef _WIN32 #undef APIENTRY #define GLFW_EXPOSE_NATIVE_WIN32 -#include // for glfwGetWin32Window +#include // for glfwGetWin32Window() #endif -#define GLFW_HAS_WINDOW_TOPMOST (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3200) // 3.2+ GLFW_FLOATING -#define GLFW_HAS_WINDOW_HOVERED (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ GLFW_HOVERED -#define GLFW_HAS_WINDOW_ALPHA (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ glfwSetWindowOpacity -#define GLFW_HAS_PER_MONITOR_DPI (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ glfwGetMonitorContentScale -#define GLFW_HAS_VULKAN (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3200) // 3.2+ glfwCreateWindowSurface -#define GLFW_HAS_FOCUS_WINDOW (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3200) // 3.2+ glfwFocusWindow -#define GLFW_HAS_FOCUS_ON_SHOW (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ GLFW_FOCUS_ON_SHOW -#define GLFW_HAS_MONITOR_WORK_AREA (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ glfwGetMonitorWorkarea -#define GLFW_HAS_OSX_WINDOW_POS_FIX (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 + GLFW_VERSION_REVISION * 10 >= 3310) // 3.3.1+ Fixed: Resizing window repositions it on MacOS #1553 -#ifdef GLFW_RESIZE_NESW_CURSOR // Let's be nice to people who pulled GLFW between 2019-04-16 (3.4 define) and 2019-11-29 (cursors defines) // FIXME: Remove when GLFW 3.4 is released? -#define GLFW_HAS_NEW_CURSORS (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3400) // 3.4+ GLFW_RESIZE_ALL_CURSOR, GLFW_RESIZE_NESW_CURSOR, GLFW_RESIZE_NWSE_CURSOR, GLFW_NOT_ALLOWED_CURSOR +#ifdef __APPLE__ +#define GLFW_EXPOSE_NATIVE_COCOA +#include // for glfwGetCocoaWindow() +#endif + +#ifdef __EMSCRIPTEN__ +#include +#include +#endif + +// We gather version tests as define in order to easily see which features are version-dependent. +#define GLFW_VERSION_COMBINED (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 + GLFW_VERSION_REVISION) +#define GLFW_HAS_WINDOW_TOPMOST (GLFW_VERSION_COMBINED >= 3200) // 3.2+ GLFW_FLOATING +#define GLFW_HAS_WINDOW_HOVERED (GLFW_VERSION_COMBINED >= 3300) // 3.3+ GLFW_HOVERED +#define GLFW_HAS_WINDOW_ALPHA (GLFW_VERSION_COMBINED >= 3300) // 3.3+ glfwSetWindowOpacity +#define GLFW_HAS_PER_MONITOR_DPI (GLFW_VERSION_COMBINED >= 3300) // 3.3+ glfwGetMonitorContentScale +#if defined(__EMSCRIPTEN__) || defined(__SWITCH__) // no Vulkan support in GLFW for Emscripten or homebrew Nintendo Switch +#define GLFW_HAS_VULKAN (0) #else -#define GLFW_HAS_NEW_CURSORS (0) +#define GLFW_HAS_VULKAN (GLFW_VERSION_COMBINED >= 3200) // 3.2+ glfwCreateWindowSurface #endif -#ifdef GLFW_MOUSE_PASSTHROUGH // Let's be nice to people who pulled GLFW between 2019-04-16 (3.4 define) and 2020-07-17 (passthrough) -#define GLFW_HAS_MOUSE_PASSTHROUGH (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3400) // 3.4+ GLFW_MOUSE_PASSTHROUGH +#define GLFW_HAS_FOCUS_WINDOW (GLFW_VERSION_COMBINED >= 3200) // 3.2+ glfwFocusWindow +#define GLFW_HAS_FOCUS_ON_SHOW (GLFW_VERSION_COMBINED >= 3300) // 3.3+ GLFW_FOCUS_ON_SHOW +#define GLFW_HAS_MONITOR_WORK_AREA (GLFW_VERSION_COMBINED >= 3300) // 3.3+ glfwGetMonitorWorkarea +#define GLFW_HAS_OSX_WINDOW_POS_FIX (GLFW_VERSION_COMBINED >= 3301) // 3.3.1+ Fixed: Resizing window repositions it on MacOS #1553 +#ifdef GLFW_RESIZE_NESW_CURSOR // Let's be nice to people who pulled GLFW between 2019-04-16 (3.4 define) and 2019-11-29 (cursors defines) // FIXME: Remove when GLFW 3.4 is released? +#define GLFW_HAS_NEW_CURSORS (GLFW_VERSION_COMBINED >= 3400) // 3.4+ GLFW_RESIZE_ALL_CURSOR, GLFW_RESIZE_NESW_CURSOR, GLFW_RESIZE_NWSE_CURSOR, GLFW_NOT_ALLOWED_CURSOR #else -#define GLFW_HAS_MOUSE_PASSTHROUGH (0) +#define GLFW_HAS_NEW_CURSORS (0) #endif -#define GLFW_HAS_GAMEPAD_API (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ glfwGetGamepadState() new api -#define GLFW_HAS_GET_KEY_NAME (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3200) // 3.2+ glfwGetKeyName() +#ifdef GLFW_MOUSE_PASSTHROUGH // Let's be nice to people who pulled GLFW between 2019-04-16 (3.4 define) and 2020-07-17 (passthrough) +#define GLFW_HAS_MOUSE_PASSTHROUGH (GLFW_VERSION_COMBINED >= 3400) // 3.4+ GLFW_MOUSE_PASSTHROUGH +#else +#define GLFW_HAS_MOUSE_PASSTHROUGH (0) +#endif +#define GLFW_HAS_GAMEPAD_API (GLFW_VERSION_COMBINED >= 3300) // 3.3+ glfwGetGamepadState() new api +#define GLFW_HAS_GETKEYNAME (GLFW_VERSION_COMBINED >= 3200) // 3.2+ glfwGetKeyName() +#define GLFW_HAS_GETERROR (GLFW_VERSION_COMBINED >= 3300) // 3.3+ glfwGetError() // GLFW data enum GlfwClientApi @@ -116,6 +143,7 @@ struct ImGui_ImplGlfw_Data ImVec2 LastValidMousePos; GLFWwindow* KeyOwnerWindows[GLFW_KEY_LAST]; bool InstalledCallbacks; + bool CallbacksChainForAllWindows; bool WantUpdateMonitors; // Chain GLFW callbacks: our callbacks will call the user's previously installed callbacks, if any. @@ -127,6 +155,9 @@ struct ImGui_ImplGlfw_Data GLFWkeyfun PrevUserCallbackKey; GLFWcharfun PrevUserCallbackChar; GLFWmonitorfun PrevUserCallbackMonitor; +#ifdef _WIN32 + WNDPROC GlfwWndProc; +#endif ImGui_ImplGlfw_Data() { memset((void*)this, 0, sizeof(*this)); } }; @@ -140,7 +171,7 @@ struct ImGui_ImplGlfw_Data // FIXME: some shared resources (mouse cursor shape, gamepad) are mishandled when using multi-context. static ImGui_ImplGlfw_Data* ImGui_ImplGlfw_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplGlfw_Data*)ImGui::GetIO().BackendPlatformUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplGlfw_Data*)ImGui::GetIO().BackendPlatformUserData : nullptr; } // Forward Declarations @@ -272,35 +303,30 @@ static ImGuiKey ImGui_ImplGlfw_KeyToImGuiKey(int key) } } -static int ImGui_ImplGlfw_KeyToModifier(int key) -{ - if (key == GLFW_KEY_LEFT_CONTROL || key == GLFW_KEY_RIGHT_CONTROL) - return GLFW_MOD_CONTROL; - if (key == GLFW_KEY_LEFT_SHIFT || key == GLFW_KEY_RIGHT_SHIFT) - return GLFW_MOD_SHIFT; - if (key == GLFW_KEY_LEFT_ALT || key == GLFW_KEY_RIGHT_ALT) - return GLFW_MOD_ALT; - if (key == GLFW_KEY_LEFT_SUPER || key == GLFW_KEY_RIGHT_SUPER) - return GLFW_MOD_SUPER; - return 0; -} - -static void ImGui_ImplGlfw_UpdateKeyModifiers(int mods) +// X11 does not include current pressed/released modifier key in 'mods' flags submitted by GLFW +// See https://github.com/ocornut/imgui/issues/6034 and https://github.com/glfw/glfw/issues/1630 +static void ImGui_ImplGlfw_UpdateKeyModifiers(GLFWwindow* window) { ImGuiIO& io = ImGui::GetIO(); - io.AddKeyEvent(ImGuiKey_ModCtrl, (mods & GLFW_MOD_CONTROL) != 0); - io.AddKeyEvent(ImGuiKey_ModShift, (mods & GLFW_MOD_SHIFT) != 0); - io.AddKeyEvent(ImGuiKey_ModAlt, (mods & GLFW_MOD_ALT) != 0); - io.AddKeyEvent(ImGuiKey_ModSuper, (mods & GLFW_MOD_SUPER) != 0); + io.AddKeyEvent(ImGuiMod_Ctrl, (glfwGetKey(window, GLFW_KEY_LEFT_CONTROL) == GLFW_PRESS) || (glfwGetKey(window, GLFW_KEY_RIGHT_CONTROL) == GLFW_PRESS)); + io.AddKeyEvent(ImGuiMod_Shift, (glfwGetKey(window, GLFW_KEY_LEFT_SHIFT) == GLFW_PRESS) || (glfwGetKey(window, GLFW_KEY_RIGHT_SHIFT) == GLFW_PRESS)); + io.AddKeyEvent(ImGuiMod_Alt, (glfwGetKey(window, GLFW_KEY_LEFT_ALT) == GLFW_PRESS) || (glfwGetKey(window, GLFW_KEY_RIGHT_ALT) == GLFW_PRESS)); + io.AddKeyEvent(ImGuiMod_Super, (glfwGetKey(window, GLFW_KEY_LEFT_SUPER) == GLFW_PRESS) || (glfwGetKey(window, GLFW_KEY_RIGHT_SUPER) == GLFW_PRESS)); +} + +static bool ImGui_ImplGlfw_ShouldChainCallback(GLFWwindow* window) +{ + ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); + return bd->CallbacksChainForAllWindows ? true : (window == bd->Window); } void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window, int button, int action, int mods) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackMousebutton != NULL && window == bd->Window) + if (bd->PrevUserCallbackMousebutton != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackMousebutton(window, button, action, mods); - ImGui_ImplGlfw_UpdateKeyModifiers(mods); + ImGui_ImplGlfw_UpdateKeyModifiers(window); ImGuiIO& io = ImGui::GetIO(); if (button >= 0 && button < ImGuiMouseButton_COUNT) @@ -310,16 +336,21 @@ void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window, int button, int acti void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window, double xoffset, double yoffset) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackScroll != NULL && window == bd->Window) + if (bd->PrevUserCallbackScroll != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackScroll(window, xoffset, yoffset); +#ifdef __EMSCRIPTEN__ + // Ignore GLFW events: will be processed in ImGui_ImplEmscripten_WheelCallback(). + return; +#endif + ImGuiIO& io = ImGui::GetIO(); io.AddMouseWheelEvent((float)xoffset, (float)yoffset); } static int ImGui_ImplGlfw_TranslateUntranslatedKey(int key, int scancode) { -#if GLFW_HAS_GET_KEY_NAME && !defined(__EMSCRIPTEN__) +#if GLFW_HAS_GETKEYNAME && !defined(__EMSCRIPTEN__) // GLFW 3.1+ attempts to "untranslate" keys, which goes the opposite of what every other framework does, making using lettered shortcuts difficult. // (It had reasons to do so: namely GLFW is/was more likely to be used for WASD-type game controls rather than lettered shortcuts, but IHMO the 3.1 change could have been done differently) // See https://github.com/glfw/glfw/issues/1502 for details. @@ -327,7 +358,12 @@ static int ImGui_ImplGlfw_TranslateUntranslatedKey(int key, int scancode) // This won't cover edge cases but this is at least going to cover common cases. if (key >= GLFW_KEY_KP_0 && key <= GLFW_KEY_KP_EQUAL) return key; + GLFWerrorfun prev_error_callback = glfwSetErrorCallback(nullptr); const char* key_name = glfwGetKeyName(key, scancode); + glfwSetErrorCallback(prev_error_callback); +#if GLFW_HAS_GETERROR && !defined(__EMSCRIPTEN__) // Eat errors (see #5908) + (void)glfwGetError(nullptr); +#endif if (key_name && key_name[0] != 0 && key_name[1] == 0) { const char char_names[] = "`-=[]\\,;\'./"; @@ -348,19 +384,16 @@ static int ImGui_ImplGlfw_TranslateUntranslatedKey(int key, int scancode) void ImGui_ImplGlfw_KeyCallback(GLFWwindow* window, int keycode, int scancode, int action, int mods) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackKey != NULL && window == bd->Window) + if (bd->PrevUserCallbackKey != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackKey(window, keycode, scancode, action, mods); if (action != GLFW_PRESS && action != GLFW_RELEASE) return; - // Workaround: X11 does not include current pressed/released modifier key in 'mods' flags. https://github.com/glfw/glfw/issues/1630 - if (int keycode_to_mod = ImGui_ImplGlfw_KeyToModifier(keycode)) - mods = (action == GLFW_PRESS) ? (mods | keycode_to_mod) : (mods & ~keycode_to_mod); - ImGui_ImplGlfw_UpdateKeyModifiers(mods); + ImGui_ImplGlfw_UpdateKeyModifiers(window); if (keycode >= 0 && keycode < IM_ARRAYSIZE(bd->KeyOwnerWindows)) - bd->KeyOwnerWindows[keycode] = (action == GLFW_PRESS) ? window : NULL; + bd->KeyOwnerWindows[keycode] = (action == GLFW_PRESS) ? window : nullptr; keycode = ImGui_ImplGlfw_TranslateUntranslatedKey(keycode, scancode); @@ -373,7 +406,7 @@ void ImGui_ImplGlfw_KeyCallback(GLFWwindow* window, int keycode, int scancode, i void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, int focused) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackWindowFocus != NULL && window == bd->Window) + if (bd->PrevUserCallbackWindowFocus != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackWindowFocus(window, focused); ImGuiIO& io = ImGui::GetIO(); @@ -383,8 +416,10 @@ void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, int focused) void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window, double x, double y) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackCursorPos != NULL && window == bd->Window) + if (bd->PrevUserCallbackCursorPos != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackCursorPos(window, x, y); + if (glfwGetInputMode(window, GLFW_CURSOR) == GLFW_CURSOR_DISABLED) + return; ImGuiIO& io = ImGui::GetIO(); if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) @@ -403,8 +438,10 @@ void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window, double x, double y) void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, int entered) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackCursorEnter != NULL && window == bd->Window) + if (bd->PrevUserCallbackCursorEnter != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackCursorEnter(window, entered); + if (glfwGetInputMode(window, GLFW_CURSOR) == GLFW_CURSOR_DISABLED) + return; ImGuiIO& io = ImGui::GetIO(); if (entered) @@ -415,7 +452,7 @@ void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, int entered) else if (!entered && bd->MouseWindow == window) { bd->LastValidMousePos = io.MousePos; - bd->MouseWindow = NULL; + bd->MouseWindow = nullptr; io.AddMousePosEvent(-FLT_MAX, -FLT_MAX); } } @@ -423,7 +460,7 @@ void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, int entered) void ImGui_ImplGlfw_CharCallback(GLFWwindow* window, unsigned int c) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - if (bd->PrevUserCallbackChar != NULL && window == bd->Window) + if (bd->PrevUserCallbackChar != nullptr && ImGui_ImplGlfw_ShouldChainCallback(window)) bd->PrevUserCallbackChar(window, c); ImGuiIO& io = ImGui::GetIO(); @@ -436,6 +473,69 @@ void ImGui_ImplGlfw_MonitorCallback(GLFWmonitor*, int) bd->WantUpdateMonitors = true; } +#ifdef __EMSCRIPTEN__ +static EM_BOOL ImGui_ImplEmscripten_WheelCallback(int, const EmscriptenWheelEvent* ev, void*) +{ + // Mimic Emscripten_HandleWheel() in SDL. + // Corresponding equivalent in GLFW JS emulation layer has incorrect quantizing preventing small values. See #6096 + float multiplier = 0.0f; + if (ev->deltaMode == DOM_DELTA_PIXEL) { multiplier = 1.0f / 100.0f; } // 100 pixels make up a step. + else if (ev->deltaMode == DOM_DELTA_LINE) { multiplier = 1.0f / 3.0f; } // 3 lines make up a step. + else if (ev->deltaMode == DOM_DELTA_PAGE) { multiplier = 80.0f; } // A page makes up 80 steps. + float wheel_x = ev->deltaX * -multiplier; + float wheel_y = ev->deltaY * -multiplier; + ImGuiIO& io = ImGui::GetIO(); + io.AddMouseWheelEvent(wheel_x, wheel_y); + //IMGUI_DEBUG_LOG("[Emsc] mode %d dx: %.2f, dy: %.2f, dz: %.2f --> feed %.2f %.2f\n", (int)ev->deltaMode, ev->deltaX, ev->deltaY, ev->deltaZ, wheel_x, wheel_y); + return EM_TRUE; +} +#endif + +#ifdef _WIN32 +// GLFW doesn't allow to distinguish Mouse vs TouchScreen vs Pen. +// Add support for Win32 (based on imgui_impl_win32), because we rely on _TouchScreen info to trickle inputs differently. +static ImGuiMouseSource GetMouseSourceFromMessageExtraInfo() +{ + LPARAM extra_info = ::GetMessageExtraInfo(); + if ((extra_info & 0xFFFFFF80) == 0xFF515700) + return ImGuiMouseSource_Pen; + if ((extra_info & 0xFFFFFF80) == 0xFF515780) + return ImGuiMouseSource_TouchScreen; + return ImGuiMouseSource_Mouse; +} +static LRESULT CALLBACK ImGui_ImplGlfw_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) +{ + ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); + switch (msg) + { + case WM_MOUSEMOVE: case WM_NCMOUSEMOVE: + case WM_LBUTTONDOWN: case WM_LBUTTONDBLCLK: case WM_LBUTTONUP: + case WM_RBUTTONDOWN: case WM_RBUTTONDBLCLK: case WM_RBUTTONUP: + case WM_MBUTTONDOWN: case WM_MBUTTONDBLCLK: case WM_MBUTTONUP: + case WM_XBUTTONDOWN: case WM_XBUTTONDBLCLK: case WM_XBUTTONUP: + ImGui::GetIO().AddMouseSourceEvent(GetMouseSourceFromMessageExtraInfo()); + break; + + // We have submitted https://github.com/glfw/glfw/pull/1568 to allow GLFW to support "transparent inputs". + // In the meanwhile we implement custom per-platform workarounds here (FIXME-VIEWPORT: Implement same work-around for Linux/OSX!) +#if !GLFW_HAS_MOUSE_PASSTHROUGH && GLFW_HAS_WINDOW_HOVERED + case WM_NCHITTEST: + { + // Let mouse pass-through the window. This will allow the backend to call io.AddMouseViewportEvent() properly (which is OPTIONAL). + // The ImGuiViewportFlags_NoInputs flag is set while dragging a viewport, as want to detect the window behind the one we are dragging. + // If you cannot easily access those viewport flags from your windowing/event code: you may manually synchronize its state e.g. in + // your main loop after calling UpdatePlatformWindows(). Iterate all viewports/platform windows and pass the flag to your windowing system. + ImGuiViewport* viewport = (ImGuiViewport*)::GetPropA(hWnd, "IMGUI_VIEWPORT"); + if (viewport && (viewport->Flags & ImGuiViewportFlags_NoInputs)) + return HTTRANSPARENT; + break; + } +#endif + } + return ::CallWindowProc(bd->GlfwWndProc, hWnd, msg, wParam, lParam); +} +#endif + void ImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window) { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); @@ -468,20 +568,31 @@ void ImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window) glfwSetCharCallback(window, bd->PrevUserCallbackChar); glfwSetMonitorCallback(bd->PrevUserCallbackMonitor); bd->InstalledCallbacks = false; - bd->PrevUserCallbackWindowFocus = NULL; - bd->PrevUserCallbackCursorEnter = NULL; - bd->PrevUserCallbackCursorPos = NULL; - bd->PrevUserCallbackMousebutton = NULL; - bd->PrevUserCallbackScroll = NULL; - bd->PrevUserCallbackKey = NULL; - bd->PrevUserCallbackChar = NULL; - bd->PrevUserCallbackMonitor = NULL; + bd->PrevUserCallbackWindowFocus = nullptr; + bd->PrevUserCallbackCursorEnter = nullptr; + bd->PrevUserCallbackCursorPos = nullptr; + bd->PrevUserCallbackMousebutton = nullptr; + bd->PrevUserCallbackScroll = nullptr; + bd->PrevUserCallbackKey = nullptr; + bd->PrevUserCallbackChar = nullptr; + bd->PrevUserCallbackMonitor = nullptr; +} + +// Set to 'true' to enable chaining installed callbacks for all windows (including secondary viewports created by backends or by user. +// This is 'false' by default meaning we only chain callbacks for the main viewport. +// We cannot set this to 'true' by default because user callbacks code may be not testing the 'window' parameter of their callback. +// If you set this to 'true' your user callback code will need to make sure you are testing the 'window' parameter. +void ImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows) +{ + ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); + bd->CallbacksChainForAllWindows = chain_for_all_windows; } static bool ImGui_ImplGlfw_Init(GLFWwindow* window, bool install_callbacks, GlfwClientApi client_api) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendPlatformUserData == NULL && "Already initialized a platform backend!"); + IM_ASSERT(io.BackendPlatformUserData == nullptr && "Already initialized a platform backend!"); + //printf("GLFW_VERSION: %d.%d.%d (%d)", GLFW_VERSION_MAJOR, GLFW_VERSION_MINOR, GLFW_VERSION_REVISION, GLFW_VERSION_COMBINED); // Setup backend capabilities flags ImGui_ImplGlfw_Data* bd = IM_NEW(ImGui_ImplGlfw_Data)(); @@ -489,7 +600,9 @@ static bool ImGui_ImplGlfw_Init(GLFWwindow* window, bool install_callbacks, Glfw io.BackendPlatformName = "imgui_impl_glfw"; io.BackendFlags |= ImGuiBackendFlags_HasMouseCursors; // We can honor GetMouseCursor() values (optional) io.BackendFlags |= ImGuiBackendFlags_HasSetMousePos; // We can honor io.WantSetMousePos requests (optional, rarely used) +#ifndef __EMSCRIPTEN__ io.BackendFlags |= ImGuiBackendFlags_PlatformHasViewports; // We can create multi-viewports on the Platform side (optional) +#endif #if GLFW_HAS_MOUSE_PASSTHROUGH || (GLFW_HAS_WINDOW_HOVERED && defined(_WIN32)) io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport; // We can call io.AddMouseViewportEvent() with correct data (optional) #endif @@ -505,8 +618,8 @@ static bool ImGui_ImplGlfw_Init(GLFWwindow* window, bool install_callbacks, Glfw // Create mouse cursors // (By design, on X11 cursors are user configurable and some cursors may be missing. When a cursor doesn't exist, // GLFW will emit an error which will often be printed by the app, so we temporarily disable error reporting. - // Missing cursors will return NULL and our _UpdateMouseCursor() function will use the Arrow cursor instead.) - GLFWerrorfun prev_error_callback = glfwSetErrorCallback(NULL); + // Missing cursors will return nullptr and our _UpdateMouseCursor() function will use the Arrow cursor instead.) + GLFWerrorfun prev_error_callback = glfwSetErrorCallback(nullptr); bd->MouseCursors[ImGuiMouseCursor_Arrow] = glfwCreateStandardCursor(GLFW_ARROW_CURSOR); bd->MouseCursors[ImGuiMouseCursor_TextInput] = glfwCreateStandardCursor(GLFW_IBEAM_CURSOR); bd->MouseCursors[ImGuiMouseCursor_ResizeNS] = glfwCreateStandardCursor(GLFW_VRESIZE_CURSOR); @@ -524,24 +637,44 @@ static bool ImGui_ImplGlfw_Init(GLFWwindow* window, bool install_callbacks, Glfw bd->MouseCursors[ImGuiMouseCursor_NotAllowed] = glfwCreateStandardCursor(GLFW_ARROW_CURSOR); #endif glfwSetErrorCallback(prev_error_callback); +#if GLFW_HAS_GETERROR && !defined(__EMSCRIPTEN__) // Eat errors (see #5908) + (void)glfwGetError(nullptr); +#endif // Chain GLFW callbacks: our callbacks will call the user's previously installed callbacks, if any. if (install_callbacks) ImGui_ImplGlfw_InstallCallbacks(window); + // Register Emscripten Wheel callback to workaround issue in Emscripten GLFW Emulation (#6096) + // We intentionally do not check 'if (install_callbacks)' here, as some users may set it to false and call GLFW callback themselves. + // FIXME: May break chaining in case user registered their own Emscripten callback? +#ifdef __EMSCRIPTEN__ + emscripten_set_wheel_callback(EMSCRIPTEN_EVENT_TARGET_DOCUMENT, nullptr, false, ImGui_ImplEmscripten_WheelCallback); +#endif // Update monitors the first time (note: monitor callback are broken in GLFW 3.2 and earlier, see github.com/glfw/glfw/issues/784) ImGui_ImplGlfw_UpdateMonitors(); glfwSetMonitorCallback(ImGui_ImplGlfw_MonitorCallback); - // Our mouse update function expect PlatformHandle to be filled for the main viewport + // Set platform dependent data in viewport ImGuiViewport* main_viewport = ImGui::GetMainViewport(); main_viewport->PlatformHandle = (void*)bd->Window; #ifdef _WIN32 main_viewport->PlatformHandleRaw = glfwGetWin32Window(bd->Window); +#elif defined(__APPLE__) + main_viewport->PlatformHandleRaw = (void*)glfwGetCocoaWindow(bd->Window); +#else + IM_UNUSED(main_viewport); #endif if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) ImGui_ImplGlfw_InitPlatformInterface(); + // Windows: register a WndProc hook so we can intercept some messages. +#ifdef _WIN32 + bd->GlfwWndProc = (WNDPROC)::GetWindowLongPtr((HWND)main_viewport->PlatformHandleRaw, GWLP_WNDPROC); + IM_ASSERT(bd->GlfwWndProc != nullptr); + ::SetWindowLongPtr((HWND)main_viewport->PlatformHandleRaw, GWLP_WNDPROC, (LONG_PTR)ImGui_ImplGlfw_WndProc); +#endif + bd->ClientApi = client_api; return true; } @@ -564,7 +697,7 @@ bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window, bool install_callbacks) void ImGui_ImplGlfw_Shutdown() { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - IM_ASSERT(bd != NULL && "No platform backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No platform backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplGlfw_ShutdownPlatformInterface(); @@ -575,8 +708,16 @@ void ImGui_ImplGlfw_Shutdown() for (ImGuiMouseCursor cursor_n = 0; cursor_n < ImGuiMouseCursor_COUNT; cursor_n++) glfwDestroyCursor(bd->MouseCursors[cursor_n]); - io.BackendPlatformName = NULL; - io.BackendPlatformUserData = NULL; + // Windows: register a WndProc hook so we can intercept some messages. +#ifdef _WIN32 + ImGuiViewport* main_viewport = ImGui::GetMainViewport(); + ::SetWindowLongPtr((HWND)main_viewport->PlatformHandleRaw, GWLP_WNDPROC, (LONG_PTR)bd->GlfwWndProc); + bd->GlfwWndProc = nullptr; +#endif + + io.BackendPlatformName = nullptr; + io.BackendPlatformUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_HasMouseCursors | ImGuiBackendFlags_HasSetMousePos | ImGuiBackendFlags_HasGamepad | ImGuiBackendFlags_PlatformHasViewports | ImGuiBackendFlags_HasMouseHoveredViewport); IM_DELETE(bd); } @@ -586,6 +727,12 @@ static void ImGui_ImplGlfw_UpdateMouseData() ImGuiIO& io = ImGui::GetIO(); ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); + if (glfwGetInputMode(bd->Window, GLFW_CURSOR) == GLFW_CURSOR_DISABLED) + { + io.AddMousePosEvent(-FLT_MAX, -FLT_MAX); + return; + } + ImGuiID mouse_viewport_id = 0; const ImVec2 mouse_pos_prev = io.MousePos; for (int n = 0; n < platform_io.Viewports.Size; n++) @@ -606,7 +753,7 @@ static void ImGui_ImplGlfw_UpdateMouseData() glfwSetCursorPos(window, (double)(mouse_pos_prev.x - viewport->Pos.x), (double)(mouse_pos_prev.y - viewport->Pos.y)); // (Optional) Fallback to provide mouse position when focused (ImGui_ImplGlfw_CursorPosCallback already provides this when hovered or captured) - if (bd->MouseWindow == NULL) + if (bd->MouseWindow == nullptr) { double mouse_x, mouse_y; glfwGetCursorPos(window, &mouse_x, &mouse_y); @@ -682,11 +829,11 @@ static inline float Saturate(float v) { return v < 0.0f ? 0.0f : v > 1.0f ? 1.0 static void ImGui_ImplGlfw_UpdateGamepads() { ImGuiIO& io = ImGui::GetIO(); - if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) + if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) // FIXME: Technically feeding gamepad shouldn't depend on this now that they are regular inputs. return; io.BackendFlags &= ~ImGuiBackendFlags_HasGamepad; -#if GLFW_HAS_GAMEPAD_API +#if GLFW_HAS_GAMEPAD_API && !defined(__EMSCRIPTEN__) GLFWgamepadstate gamepad; if (!glfwGetGamepadState(GLFW_JOYSTICK_1, &gamepad)) return; @@ -704,10 +851,10 @@ static void ImGui_ImplGlfw_UpdateGamepads() io.BackendFlags |= ImGuiBackendFlags_HasGamepad; MAP_BUTTON(ImGuiKey_GamepadStart, GLFW_GAMEPAD_BUTTON_START, 7); MAP_BUTTON(ImGuiKey_GamepadBack, GLFW_GAMEPAD_BUTTON_BACK, 6); - MAP_BUTTON(ImGuiKey_GamepadFaceDown, GLFW_GAMEPAD_BUTTON_A, 0); // Xbox A, PS Cross - MAP_BUTTON(ImGuiKey_GamepadFaceRight, GLFW_GAMEPAD_BUTTON_B, 1); // Xbox B, PS Circle MAP_BUTTON(ImGuiKey_GamepadFaceLeft, GLFW_GAMEPAD_BUTTON_X, 2); // Xbox X, PS Square + MAP_BUTTON(ImGuiKey_GamepadFaceRight, GLFW_GAMEPAD_BUTTON_B, 1); // Xbox B, PS Circle MAP_BUTTON(ImGuiKey_GamepadFaceUp, GLFW_GAMEPAD_BUTTON_Y, 3); // Xbox Y, PS Triangle + MAP_BUTTON(ImGuiKey_GamepadFaceDown, GLFW_GAMEPAD_BUTTON_A, 0); // Xbox A, PS Cross MAP_BUTTON(ImGuiKey_GamepadDpadLeft, GLFW_GAMEPAD_BUTTON_DPAD_LEFT, 13); MAP_BUTTON(ImGuiKey_GamepadDpadRight, GLFW_GAMEPAD_BUTTON_DPAD_RIGHT, 11); MAP_BUTTON(ImGuiKey_GamepadDpadUp, GLFW_GAMEPAD_BUTTON_DPAD_UP, 10); @@ -734,8 +881,13 @@ static void ImGui_ImplGlfw_UpdateMonitors() { ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); + bd->WantUpdateMonitors = false; + int monitors_count = 0; GLFWmonitor** glfw_monitors = glfwGetMonitors(&monitors_count); + if (monitors_count == 0) // Preserve existing monitor list if there are none. Happens on macOS sleeping (#5683) + return; + platform_io.Monitors.resize(0); for (int n = 0; n < monitors_count; n++) { @@ -743,6 +895,8 @@ static void ImGui_ImplGlfw_UpdateMonitors() int x, y; glfwGetMonitorPos(glfw_monitors[n], &x, &y); const GLFWvidmode* vid_mode = glfwGetVideoMode(glfw_monitors[n]); + if (vid_mode == nullptr) + continue; // Failed to get Video mode (e.g. Emscripten does not support this function) monitor.MainPos = monitor.WorkPos = ImVec2((float)x, (float)y); monitor.MainSize = monitor.WorkSize = ImVec2((float)vid_mode->width, (float)vid_mode->height); #if GLFW_HAS_MONITOR_WORK_AREA @@ -760,16 +914,16 @@ static void ImGui_ImplGlfw_UpdateMonitors() glfwGetMonitorContentScale(glfw_monitors[n], &x_scale, &y_scale); monitor.DpiScale = x_scale; #endif + monitor.PlatformHandle = (void*)glfw_monitors[n]; // [...] GLFW doc states: "guaranteed to be valid only until the monitor configuration changes" platform_io.Monitors.push_back(monitor); } - bd->WantUpdateMonitors = false; } void ImGui_ImplGlfw_NewFrame() { ImGuiIO& io = ImGui::GetIO(); ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplGlfw_InitForXXX()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplGlfw_InitForXXX()?"); // Setup display size (every frame to accommodate for window resizing) int w, h; @@ -800,7 +954,7 @@ void ImGui_ImplGlfw_NewFrame() // If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. //-------------------------------------------------------------------------------------------------------- -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplGlfw_ViewportData { GLFWwindow* Window; @@ -808,8 +962,8 @@ struct ImGui_ImplGlfw_ViewportData int IgnoreWindowPosEventFrame; int IgnoreWindowSizeEventFrame; - ImGui_ImplGlfw_ViewportData() { Window = NULL; WindowOwned = false; IgnoreWindowSizeEventFrame = IgnoreWindowPosEventFrame = -1; } - ~ImGui_ImplGlfw_ViewportData() { IM_ASSERT(Window == NULL); } + ImGui_ImplGlfw_ViewportData() { Window = nullptr; WindowOwned = false; IgnoreWindowSizeEventFrame = IgnoreWindowPosEventFrame = -1; } + ~ImGui_ImplGlfw_ViewportData() { IM_ASSERT(Window == nullptr); } }; static void ImGui_ImplGlfw_WindowCloseCallback(GLFWwindow* window) @@ -871,12 +1025,14 @@ static void ImGui_ImplGlfw_CreateWindow(ImGuiViewport* viewport) #if GLFW_HAS_WINDOW_TOPMOST glfwWindowHint(GLFW_FLOATING, (viewport->Flags & ImGuiViewportFlags_TopMost) ? true : false); #endif - GLFWwindow* share_window = (bd->ClientApi == GlfwClientApi_OpenGL) ? bd->Window : NULL; - vd->Window = glfwCreateWindow((int)viewport->Size.x, (int)viewport->Size.y, "No Title Yet", NULL, share_window); + GLFWwindow* share_window = (bd->ClientApi == GlfwClientApi_OpenGL) ? bd->Window : nullptr; + vd->Window = glfwCreateWindow((int)viewport->Size.x, (int)viewport->Size.y, "No Title Yet", nullptr, share_window); vd->WindowOwned = true; viewport->PlatformHandle = (void*)vd->Window; #ifdef _WIN32 viewport->PlatformHandleRaw = glfwGetWin32Window(vd->Window); +#elif defined(__APPLE__) + viewport->PlatformHandleRaw = (void*)glfwGetCocoaWindow(vd->Window); #endif glfwSetWindowPos(vd->Window, (int)viewport->Pos.x, (int)viewport->Pos.y); @@ -918,32 +1074,12 @@ static void ImGui_ImplGlfw_DestroyWindow(ImGuiViewport* viewport) glfwDestroyWindow(vd->Window); } - vd->Window = NULL; + vd->Window = nullptr; IM_DELETE(vd); } - viewport->PlatformUserData = viewport->PlatformHandle = NULL; + viewport->PlatformUserData = viewport->PlatformHandle = nullptr; } -// We have submitted https://github.com/glfw/glfw/pull/1568 to allow GLFW to support "transparent inputs". -// In the meanwhile we implement custom per-platform workarounds here (FIXME-VIEWPORT: Implement same work-around for Linux/OSX!) -#if !GLFW_HAS_MOUSE_PASSTHROUGH && GLFW_HAS_WINDOW_HOVERED && defined(_WIN32) -static WNDPROC g_GlfwWndProc = NULL; -static LRESULT CALLBACK WndProcNoInputs(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) -{ - if (msg == WM_NCHITTEST) - { - // Let mouse pass-through the window. This will allow the backend to call io.AddMouseViewportEvent() properly (which is OPTIONAL). - // The ImGuiViewportFlags_NoInputs flag is set while dragging a viewport, as want to detect the window behind the one we are dragging. - // If you cannot easily access those viewport flags from your windowing/event code: you may manually synchronize its state e.g. in - // your main loop after calling UpdatePlatformWindows(). Iterate all viewports/platform windows and pass the flag to your windowing system. - ImGuiViewport* viewport = (ImGuiViewport*)::GetPropA(hWnd, "IMGUI_VIEWPORT"); - if (viewport->Flags & ImGuiViewportFlags_NoInputs) - return HTTRANSPARENT; - } - return ::CallWindowProc(g_GlfwWndProc, hWnd, msg, wParam, lParam); -} -#endif - static void ImGui_ImplGlfw_ShowWindow(ImGuiViewport* viewport) { ImGui_ImplGlfw_ViewportData* vd = (ImGui_ImplGlfw_ViewportData*)viewport->PlatformUserData; @@ -961,10 +1097,10 @@ static void ImGui_ImplGlfw_ShowWindow(ImGuiViewport* viewport) // GLFW hack: install hook for WM_NCHITTEST message handler #if !GLFW_HAS_MOUSE_PASSTHROUGH && GLFW_HAS_WINDOW_HOVERED && defined(_WIN32) + ImGui_ImplGlfw_Data* bd = ImGui_ImplGlfw_GetBackendData(); ::SetPropA(hwnd, "IMGUI_VIEWPORT", viewport); - if (g_GlfwWndProc == NULL) - g_GlfwWndProc = (WNDPROC)::GetWindowLongPtr(hwnd, GWLP_WNDPROC); - ::SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR)WndProcNoInputs); + IM_ASSERT(bd->GlfwWndProc == (WNDPROC)::GetWindowLongPtr(hwnd, GWLP_WNDPROC)); + ::SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR)ImGui_ImplGlfw_WndProc); #endif #if !GLFW_HAS_FOCUS_ON_SHOW diff --git a/extern/imgui_patched/backends/imgui_impl_glfw.h b/extern/imgui_patched/backends/imgui_impl_glfw.h index b96f3ee2..2e3b8bf2 100644 --- a/extern/imgui_patched/backends/imgui_impl_glfw.h +++ b/extern/imgui_patched/backends/imgui_impl_glfw.h @@ -5,6 +5,7 @@ // Implemented features: // [X] Platform: Clipboard support. +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen (Windows only). // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLFW_KEY_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. // [x] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange' (note: the resizing cursors requires GLFW 3.4+). @@ -18,10 +19,6 @@ // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. // Read online: https://github.com/ocornut/imgui/tree/master/docs -// About GLSL version: -// The 'glsl_version' initialization parameter defaults to "#version 150" if NULL. -// Only override if your GL version doesn't handle this GLSL version. Keep NULL if unsure! - #pragma once #include "imgui.h" // IMGUI_IMPL_API @@ -34,13 +31,17 @@ IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window, bool ins IMGUI_IMPL_API void ImGui_ImplGlfw_Shutdown(); IMGUI_IMPL_API void ImGui_ImplGlfw_NewFrame(); -// GLFW callbacks (installer) +// GLFW callbacks install // - When calling Init with 'install_callbacks=true': ImGui_ImplGlfw_InstallCallbacks() is called. GLFW callbacks will be installed for you. They will chain-call user's previously installed callbacks, if any. // - When calling Init with 'install_callbacks=false': GLFW callbacks won't be installed. You will need to call individual function yourself from your own GLFW callbacks. IMGUI_IMPL_API void ImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window); IMGUI_IMPL_API void ImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window); -// GLFW callbacks (individual callbacks to call if you didn't install callbacks) +// GFLW callbacks options: +// - Set 'chain_for_all_windows=true' to enable chaining callbacks for all windows (including secondary viewports created by backends or by user) +IMGUI_IMPL_API void ImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows); + +// GLFW callbacks (individual callbacks to call yourself if you didn't install callbacks) IMGUI_IMPL_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, int focused); // Since 1.84 IMGUI_IMPL_API void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, int entered); // Since 1.84 IMGUI_IMPL_API void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window, double x, double y); // Since 1.87 diff --git a/extern/imgui_patched/backends/imgui_impl_glut.cpp b/extern/imgui_patched/backends/imgui_impl_glut.cpp index 1bf036b5..3f911a13 100644 --- a/extern/imgui_patched/backends/imgui_impl_glut.cpp +++ b/extern/imgui_patched/backends/imgui_impl_glut.cpp @@ -9,6 +9,7 @@ // [X] Platform: Partial keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLUT values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // Issues: // [ ] Platform: GLUT is unable to distinguish e.g. Backspace from CTRL+H or TAB from CTRL+I +// [ ] Platform: Missing horizontal mouse wheel support. // [ ] Platform: Missing mouse cursor shape/visibility support. // [ ] Platform: Missing clipboard support (not supported by Glut). // [ ] Platform: Missing gamepad support. @@ -20,6 +21,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) +// 2023-04-17: BREAKING: Removed call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). Needs to be called from the main application loop, like with every other backends. +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). // 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago) with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. // 2022-01-17: Inputs: calling new io.AddMousePosEvent(), io.AddMouseButtonEvent(), io.AddMouseWheelEvent() API (1.87+). // 2022-01-10: Inputs: calling new io.AddKeyEvent(), io.AddKeyModsEvent() + io.SetKeyEventNativeData() API (1.87+). Support for full ImGuiKey range. @@ -30,6 +33,7 @@ #include "imgui.h" #include "imgui_impl_glut.h" +#define GL_SILENCE_DEPRECATION #ifdef __APPLE__ #include #else @@ -187,6 +191,8 @@ void ImGui_ImplGLUT_InstallFuncs() void ImGui_ImplGLUT_Shutdown() { + ImGuiIO& io = ImGui::GetIO(); + io.BackendPlatformName = nullptr; } void ImGui_ImplGLUT_NewFrame() @@ -199,18 +205,15 @@ void ImGui_ImplGLUT_NewFrame() delta_time_ms = 1; io.DeltaTime = delta_time_ms / 1000.0f; g_Time = current_time; - - // Start the frame - ImGui::NewFrame(); } static void ImGui_ImplGLUT_UpdateKeyModifiers() { ImGuiIO& io = ImGui::GetIO(); int glut_key_mods = glutGetModifiers(); - io.AddKeyEvent(ImGuiKey_ModCtrl, (glut_key_mods & GLUT_ACTIVE_CTRL) != 0); - io.AddKeyEvent(ImGuiKey_ModShift, (glut_key_mods & GLUT_ACTIVE_SHIFT) != 0); - io.AddKeyEvent(ImGuiKey_ModAlt, (glut_key_mods & GLUT_ACTIVE_ALT) != 0); + io.AddKeyEvent(ImGuiMod_Ctrl, (glut_key_mods & GLUT_ACTIVE_CTRL) != 0); + io.AddKeyEvent(ImGuiMod_Shift, (glut_key_mods & GLUT_ACTIVE_SHIFT) != 0); + io.AddKeyEvent(ImGuiMod_Alt, (glut_key_mods & GLUT_ACTIVE_ALT) != 0); } static void ImGui_ImplGLUT_AddKeyEvent(ImGuiKey key, bool down, int native_keycode) diff --git a/extern/imgui_patched/backends/imgui_impl_glut.h b/extern/imgui_patched/backends/imgui_impl_glut.h index 98d4e598..545cd8dd 100644 --- a/extern/imgui_patched/backends/imgui_impl_glut.h +++ b/extern/imgui_patched/backends/imgui_impl_glut.h @@ -9,6 +9,7 @@ // [X] Platform: Partial keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLUT values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // Issues: // [ ] Platform: GLUT is unable to distinguish e.g. Backspace from CTRL+H or TAB from CTRL+I +// [ ] Platform: Missing horizontal mouse wheel support. // [ ] Platform: Missing mouse cursor shape/visibility support. // [ ] Platform: Missing clipboard support (not supported by Glut). // [ ] Platform: Missing gamepad support. diff --git a/extern/imgui_patched/backends/imgui_impl_metal.h b/extern/imgui_patched/backends/imgui_impl_metal.h index 8407290f..a281f6a2 100644 --- a/extern/imgui_patched/backends/imgui_impl_metal.h +++ b/extern/imgui_patched/backends/imgui_impl_metal.h @@ -6,7 +6,7 @@ // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. // [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. -// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. // Read online: https://github.com/ocornut/imgui/tree/master/docs @@ -45,9 +45,7 @@ IMGUI_IMPL_API void ImGui_ImplMetal_DestroyDeviceObjects(); // More info about using Metal from C++: https://developer.apple.com/metal/cpp/ #ifdef IMGUI_IMPL_METAL_CPP - #include - #ifndef __OBJC__ IMGUI_IMPL_API bool ImGui_ImplMetal_Init(MTL::Device* device); @@ -64,5 +62,4 @@ IMGUI_IMPL_API bool ImGui_ImplMetal_CreateDeviceObjects(MTL::Device* device); IMGUI_IMPL_API void ImGui_ImplMetal_DestroyDeviceObjects(); #endif - #endif diff --git a/extern/imgui_patched/backends/imgui_impl_metal.mm b/extern/imgui_patched/backends/imgui_impl_metal.mm index fbe04a15..521a01ac 100644 --- a/extern/imgui_patched/backends/imgui_impl_metal.mm +++ b/extern/imgui_patched/backends/imgui_impl_metal.mm @@ -13,7 +13,11 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Metal: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Metal: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2022-08-23: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount'. +// 2022-07-05: Metal: Add dispatch synchronization. +// 2022-06-30: Metal: Use __bridge for ARC based systems. +// 2022-06-01: Metal: Fixed null dereference on exit inside command buffer completion handler. // 2022-04-27: Misc: Store backend data in a per-context struct, allowing to use this backend with multiple contexts. // 2022-01-03: Metal: Ignore ImDrawCmd where ElemCount == 0 (very rare but can technically be manufactured by user code). // 2021-12-30: Metal: Added Metal C++ support. Enable with '#define IMGUI_IMPL_METAL_CPP' in your imconfig.h file. @@ -74,16 +78,16 @@ static void ImGui_ImplMetal_InvalidateDeviceObjectsForPlatformWindows(); struct ImGui_ImplMetal_Data { - MetalContext* SharedMetalContext; + MetalContext* SharedMetalContext; - ImGui_ImplMetal_Data() { memset(this, 0, sizeof(*this)); } + ImGui_ImplMetal_Data() { memset(this, 0, sizeof(*this)); } }; -static ImGui_ImplMetal_Data* ImGui_ImplMetal_CreateBackendData() { return IM_NEW(ImGui_ImplMetal_Data)(); } -static ImGui_ImplMetal_Data* ImGui_ImplMetal_GetBackendData() { return ImGui::GetCurrentContext() ? (ImGui_ImplMetal_Data*)ImGui::GetIO().BackendRendererUserData : NULL; } -static void ImGui_ImplMetal_DestroyBackendData() { IM_DELETE(ImGui_ImplMetal_GetBackendData()); } +static ImGui_ImplMetal_Data* ImGui_ImplMetal_CreateBackendData() { return IM_NEW(ImGui_ImplMetal_Data)(); } +static ImGui_ImplMetal_Data* ImGui_ImplMetal_GetBackendData() { return ImGui::GetCurrentContext() ? (ImGui_ImplMetal_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } +static void ImGui_ImplMetal_DestroyBackendData(){ IM_DELETE(ImGui_ImplMetal_GetBackendData()); } -static inline CFTimeInterval GetMachAbsoluteTimeInSeconds() { return static_cast(static_cast(clock_gettime_nsec_np(CLOCK_UPTIME_RAW)) / 1e9); } +static inline CFTimeInterval GetMachAbsoluteTimeInSeconds() { return (CFTimeInterval)(double)(clock_gettime_nsec_np(CLOCK_UPTIME_RAW) / 1e9); } #ifdef IMGUI_IMPL_METAL_CPP @@ -91,12 +95,12 @@ static inline CFTimeInterval GetMachAbsoluteTimeInSeconds() { return s bool ImGui_ImplMetal_Init(MTL::Device* device) { - return ImGui_ImplMetal_Init((id)(device)); + return ImGui_ImplMetal_Init((__bridge id)(device)); } void ImGui_ImplMetal_NewFrame(MTL::RenderPassDescriptor* renderPassDescriptor) { - ImGui_ImplMetal_NewFrame((MTLRenderPassDescriptor*)(renderPassDescriptor)); + ImGui_ImplMetal_NewFrame((__bridge MTLRenderPassDescriptor*)(renderPassDescriptor)); } void ImGui_ImplMetal_RenderDrawData(ImDrawData* draw_data, @@ -104,19 +108,19 @@ void ImGui_ImplMetal_RenderDrawData(ImDrawData* draw_data, MTL::RenderCommandEncoder* commandEncoder) { ImGui_ImplMetal_RenderDrawData(draw_data, - (id)(commandBuffer), - (id)(commandEncoder)); + (__bridge id)(commandBuffer), + (__bridge id)(commandEncoder)); } bool ImGui_ImplMetal_CreateFontsTexture(MTL::Device* device) { - return ImGui_ImplMetal_CreateFontsTexture((id)(device)); + return ImGui_ImplMetal_CreateFontsTexture((__bridge id)(device)); } bool ImGui_ImplMetal_CreateDeviceObjects(MTL::Device* device) { - return ImGui_ImplMetal_CreateDeviceObjects((id)(device)); + return ImGui_ImplMetal_CreateDeviceObjects((__bridge id)(device)); } #endif // #ifdef IMGUI_IMPL_METAL_CPP @@ -143,9 +147,16 @@ bool ImGui_ImplMetal_Init(id device) void ImGui_ImplMetal_Shutdown() { + ImGui_ImplMetal_Data* bd = ImGui_ImplMetal_GetBackendData(); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGui_ImplMetal_ShutdownPlatformInterface(); ImGui_ImplMetal_DestroyDeviceObjects(); ImGui_ImplMetal_DestroyBackendData(); + + ImGuiIO& io = ImGui::GetIO(); + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); } void ImGui_ImplMetal_NewFrame(MTLRenderPassDescriptor* renderPassDescriptor) @@ -306,8 +317,14 @@ void ImGui_ImplMetal_RenderDrawData(ImDrawData* drawData, id c { dispatch_async(dispatch_get_main_queue(), ^{ ImGui_ImplMetal_Data* bd = ImGui_ImplMetal_GetBackendData(); - [bd->SharedMetalContext.bufferCache addObject:vertexBuffer]; - [bd->SharedMetalContext.bufferCache addObject:indexBuffer]; + if (bd != nullptr) + { + @synchronized(bd->SharedMetalContext.bufferCache) + { + [bd->SharedMetalContext.bufferCache addObject:vertexBuffer]; + [bd->SharedMetalContext.bufferCache addObject:indexBuffer]; + } + } }); }]; } @@ -347,7 +364,7 @@ void ImGui_ImplMetal_DestroyFontsTexture() ImGui_ImplMetal_Data* bd = ImGui_ImplMetal_GetBackendData(); ImGuiIO& io = ImGui::GetIO(); bd->SharedMetalContext.fontTexture = nil; - io.Fonts->SetTexID(nullptr); + io.Fonts->SetTexID(0); } bool ImGui_ImplMetal_CreateDeviceObjects(id device) @@ -390,7 +407,7 @@ struct ImGuiViewportDataMetal CAMetalLayer* MetalLayer; id CommandQueue; MTLRenderPassDescriptor* RenderPassDescriptor; - void* Handle = NULL; + void* Handle = nullptr; bool FirstFrame = true; }; @@ -401,15 +418,15 @@ static void ImGui_ImplMetal_CreateWindow(ImGuiViewport* viewport) viewport->RendererUserData = data; // PlatformHandleRaw should always be a NSWindow*, whereas PlatformHandle might be a higher-level handle (e.g. GLFWWindow*, SDL_Window*). - // Some back-ends will leave PlatformHandleRaw NULL, in which case we assume PlatformHandle will contain the NSWindow*. + // Some back-ends will leave PlatformHandleRaw == 0, in which case we assume PlatformHandle will contain the NSWindow*. void* handle = viewport->PlatformHandleRaw ? viewport->PlatformHandleRaw : viewport->PlatformHandle; - IM_ASSERT(handle != NULL); + IM_ASSERT(handle != nullptr); - id device = [bd->SharedMetalContext.depthStencilState device]; + id device = bd->SharedMetalContext.device; CAMetalLayer* layer = [CAMetalLayer layer]; layer.device = device; layer.framebufferOnly = YES; - layer.pixelFormat = MTLPixelFormatBGRA8Unorm; + layer.pixelFormat = bd->SharedMetalContext.framebufferDescriptor.colorPixelFormat; #if TARGET_OS_OSX NSWindow* window = (__bridge NSWindow*)handle; NSView* view = window.contentView; @@ -424,10 +441,10 @@ static void ImGui_ImplMetal_CreateWindow(ImGuiViewport* viewport) static void ImGui_ImplMetal_DestroyWindow(ImGuiViewport* viewport) { - // The main viewport (owned by the application) will always have RendererUserData == NULL since we didn't create the data for it. + // The main viewport (owned by the application) will always have RendererUserData == 0 since we didn't create the data for it. if (ImGuiViewportDataMetal* data = (ImGuiViewportDataMetal*)viewport->RendererUserData) IM_DELETE(data); - viewport->RendererUserData = NULL; + viewport->RendererUserData = nullptr; } inline static CGSize MakeScaledSize(CGSize size, CGFloat scale) @@ -458,7 +475,7 @@ static void ImGui_ImplMetal_RenderWindow(ImGuiViewport* viewport, void*) } data->FirstFrame = false; - viewport->DpiScale = static_cast(window.backingScaleFactor); + viewport->DpiScale = (float)window.backingScaleFactor; if (data->MetalLayer.contentsScale != viewport->DpiScale) { data->MetalLayer.contentsScale = viewport->DpiScale; @@ -585,8 +602,8 @@ static void ImGui_ImplMetal_InvalidateDeviceObjectsForPlatformWindows() { if ((self = [super init])) { - _renderPipelineStateCache = [NSMutableDictionary dictionary]; - _bufferCache = [NSMutableArray array]; + self.renderPipelineStateCache = [NSMutableDictionary dictionary]; + self.bufferCache = [NSMutableArray array]; _lastBufferCachePurge = GetMachAbsoluteTimeInSeconds(); } return self; @@ -596,28 +613,31 @@ static void ImGui_ImplMetal_InvalidateDeviceObjectsForPlatformWindows() { uint64_t now = GetMachAbsoluteTimeInSeconds(); - // Purge old buffers that haven't been useful for a while - if (now - self.lastBufferCachePurge > 1.0) + @synchronized(self.bufferCache) { - NSMutableArray* survivors = [NSMutableArray array]; + // Purge old buffers that haven't been useful for a while + if (now - self.lastBufferCachePurge > 1.0) + { + NSMutableArray* survivors = [NSMutableArray array]; + for (MetalBuffer* candidate in self.bufferCache) + if (candidate.lastReuseTime > self.lastBufferCachePurge) + [survivors addObject:candidate]; + self.bufferCache = [survivors mutableCopy]; + self.lastBufferCachePurge = now; + } + + // See if we have a buffer we can reuse + MetalBuffer* bestCandidate = nil; for (MetalBuffer* candidate in self.bufferCache) - if (candidate.lastReuseTime > self.lastBufferCachePurge) - [survivors addObject:candidate]; - self.bufferCache = [survivors mutableCopy]; - self.lastBufferCachePurge = now; - } + if (candidate.buffer.length >= length && (bestCandidate == nil || bestCandidate.lastReuseTime > candidate.lastReuseTime)) + bestCandidate = candidate; - // See if we have a buffer we can reuse - MetalBuffer* bestCandidate = nil; - for (MetalBuffer* candidate in self.bufferCache) - if (candidate.buffer.length >= length && (bestCandidate == nil || bestCandidate.lastReuseTime > candidate.lastReuseTime)) - bestCandidate = candidate; - - if (bestCandidate != nil) - { - [self.bufferCache removeObject:bestCandidate]; - bestCandidate.lastReuseTime = now; - return bestCandidate; + if (bestCandidate != nil) + { + [self.bufferCache removeObject:bestCandidate]; + bestCandidate.lastReuseTime = now; + return bestCandidate; + } } // No luck; make a new buffer @@ -700,7 +720,7 @@ static void ImGui_ImplMetal_InvalidateDeviceObjectsForPlatformWindows() pipelineDescriptor.vertexFunction = vertexFunction; pipelineDescriptor.fragmentFunction = fragmentFunction; pipelineDescriptor.vertexDescriptor = vertexDescriptor; - pipelineDescriptor.sampleCount = self.framebufferDescriptor.sampleCount; + pipelineDescriptor.rasterSampleCount = self.framebufferDescriptor.sampleCount; pipelineDescriptor.colorAttachments[0].pixelFormat = self.framebufferDescriptor.colorPixelFormat; pipelineDescriptor.colorAttachments[0].blendingEnabled = YES; pipelineDescriptor.colorAttachments[0].rgbBlendOperation = MTLBlendOperationAdd; diff --git a/extern/imgui_patched/backends/imgui_impl_opengl2.cpp b/extern/imgui_patched/backends/imgui_impl_opengl2.cpp index ccd00554..47e7aef9 100644 --- a/extern/imgui_patched/backends/imgui_impl_opengl2.cpp +++ b/extern/imgui_patched/backends/imgui_impl_opengl2.cpp @@ -20,7 +20,8 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-12-08: OpenGL: Fixed mishandling of the the ImDrawCmd::IdxOffset field! This is an old bug but it never had an effect until some internal rendering changes in 1.86. // 2021-06-29: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). // 2021-05-19: OpenGL: Replaced direct access to ImDrawCmd::TextureId with a call to ImDrawCmd::GetTexID(). (will become a requirement) @@ -45,6 +46,13 @@ #include // intptr_t #endif +// Clang/GCC warnings with -Weverything +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunused-macros" // warning: macro is not used +#pragma clang diagnostic ignored "-Wnonportable-system-include-path" +#endif + // Include OpenGL header (without an OpenGL loader) requires a bit of fiddling #if defined(_WIN32) && !defined(APIENTRY) #define APIENTRY __stdcall // It is customary to use APIENTRY for OpenGL function pointer declarations on all platforms. Additionally, the Windows OpenGL header needs APIENTRY. @@ -70,7 +78,7 @@ struct ImGui_ImplOpenGL2_Data // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. static ImGui_ImplOpenGL2_Data* ImGui_ImplOpenGL2_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplOpenGL2_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplOpenGL2_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Forward Declarations @@ -81,7 +89,7 @@ static void ImGui_ImplOpenGL2_ShutdownPlatformInterface(); bool ImGui_ImplOpenGL2_Init() { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Setup backend capabilities flags ImGui_ImplOpenGL2_Data* bd = IM_NEW(ImGui_ImplOpenGL2_Data)(); @@ -98,20 +106,21 @@ bool ImGui_ImplOpenGL2_Init() void ImGui_ImplOpenGL2_Shutdown() { ImGui_ImplOpenGL2_Data* bd = ImGui_ImplOpenGL2_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplOpenGL2_ShutdownPlatformInterface(); ImGui_ImplOpenGL2_DestroyDeviceObjects(); - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~ImGuiBackendFlags_RendererHasViewports; IM_DELETE(bd); } void ImGui_ImplOpenGL2_NewFrame() { ImGui_ImplOpenGL2_Data* bd = ImGui_ImplOpenGL2_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplOpenGL2_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplOpenGL2_Init()?"); if (!bd->FontTexture) ImGui_ImplOpenGL2_CreateDeviceObjects(); @@ -219,7 +228,7 @@ void ImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data) continue; // Apply scissor/clipping rectangle (Y is inverted in OpenGL) - glScissor((int)clip_min.x, (int)(fb_height - clip_max.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y)); + glScissor((int)clip_min.x, (int)((float)fb_height - clip_max.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y)); // Bind texture, Draw glBindTexture(GL_TEXTURE_2D, (GLuint)(intptr_t)pcmd->GetTexID()); @@ -323,3 +332,7 @@ static void ImGui_ImplOpenGL2_ShutdownPlatformInterface() { ImGui::DestroyPlatformWindows(); } + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/extern/imgui_patched/backends/imgui_impl_opengl3.cpp b/extern/imgui_patched/backends/imgui_impl_opengl3.cpp index 0e8d53d5..ea270936 100644 --- a/extern/imgui_patched/backends/imgui_impl_opengl3.cpp +++ b/extern/imgui_patched/backends/imgui_impl_opengl3.cpp @@ -5,8 +5,13 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'GLuint' OpenGL texture identifier as void*/ImTextureID. Read the FAQ about ImTextureID! +// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices (Desktop OpenGL only). // [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. -// [x] Renderer: Large meshes support (64k+ vertices) with 16-bit indices (Desktop OpenGL only). + +// About WebGL/ES: +// - You need to '#define IMGUI_IMPL_OPENGL_ES2' or '#define IMGUI_IMPL_OPENGL_ES3' to use WebGL or OpenGL ES. +// - This is done automatically on iOS, Android and Emscripten targets. +// - For other targets, the define needs to be visible from the imgui_impl_opengl3.cpp compilation unit. If unsure, define globally or in imconfig.h. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. @@ -15,8 +20,17 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. -// 2022-05-13: OpenGL: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-05-09: OpenGL: Support for glBindSampler() backup/restore on ES3. (#6375) +// 2023-04-18: OpenGL: Restore front and back polygon mode separately when supported by context. (#6333) +// 2023-03-23: OpenGL: Properly restoring "no shader program bound" if it was the case prior to running the rendering function. (#6267, #6220, #6224) +// 2023-03-15: OpenGL: Fixed GL loader crash when GL_VERSION returns NULL. (#6154, #4445, #3530) +// 2023-03-06: OpenGL: Fixed restoration of a potentially deleted OpenGL program, by calling glIsProgram(). (#6220, #6224) +// 2022-11-09: OpenGL: Reverted use of glBufferSubData(), too many corruptions issues + old issues seemingly can't be reproed with Intel drivers nowadays (revert 2021-12-15 and 2022-05-23 changes). +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. +// 2022-09-27: OpenGL: Added ability to '#define IMGUI_IMPL_OPENGL_DEBUG'. +// 2022-05-23: OpenGL: Reworking 2021-12-15 "Using buffer orphaning" so it only happens on Intel GPU, seems to cause problems otherwise. (#4468, #4825, #4832, #5127). +// 2022-05-13: OpenGL: Fixed state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. // 2021-12-15: OpenGL: Using buffer orphaning + glBufferSubData(), seems to fix leaks with multi-viewports with some Intel HD drivers. // 2021-08-23: OpenGL: Fixed ES 3.0 shader ("#version 300 es") use normal precision floats to avoid wobbly rendering at HD resolutions. // 2021-08-19: OpenGL: Embed and use our own minimal GL loader (imgui_impl_opengl3_loader.h), removing requirement and support for third-party loader. @@ -57,7 +71,7 @@ // 2018-06-08: Misc: Extracted imgui_impl_opengl3.cpp/.h away from the old combined GLFW/SDL+OpenGL3 examples. // 2018-06-08: OpenGL: Use draw_data->DisplayPos and draw_data->DisplaySize to setup projection matrix and clipping rectangle. // 2018-05-25: OpenGL: Removed unnecessary backup/restore of GL_ELEMENT_ARRAY_BUFFER_BINDING since this is part of the VAO state. -// 2018-05-14: OpenGL: Making the call to glBindSampler() optional so 3.2 context won't fail if the function is a NULL pointer. +// 2018-05-14: OpenGL: Making the call to glBindSampler() optional so 3.2 context won't fail if the function is a nullptr pointer. // 2018-03-06: OpenGL: Added const char* glsl_version parameter to ImGui_ImplOpenGL3_Init() so user can override the GLSL version e.g. "#version 150". // 2018-02-23: OpenGL: Create the VAO in the render function so the setup can more easily be used with multiple shared GL context. // 2018-02-16: Misc: Obsoleted the io.RenderDrawListsFn callback and exposed ImGui_ImplSdlGL3_RenderDrawData() in the .h file so you can call it yourself. @@ -98,15 +112,24 @@ #else #include // intptr_t #endif +#if defined(__APPLE__) +#include +#endif -// Clang warnings with -Weverything +// Clang/GCC warnings with -Weverything #if defined(__clang__) #pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast -#pragma clang diagnostic ignored "-Wsign-conversion" // warning: implicit conversion changes signedness -#if __has_warning("-Wzero-as-null-pointer-constant") -#pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant" +#pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast +#pragma clang diagnostic ignored "-Wsign-conversion" // warning: implicit conversion changes signedness +#pragma clang diagnostic ignored "-Wunused-macros" // warning: macro is not used +#pragma clang diagnostic ignored "-Wnonportable-system-include-path" +#pragma clang diagnostic ignored "-Wcast-function-type" // warning: cast between incompatible function types (for loader) #endif +#if defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wpragmas" // warning: unknown option after '#pragma GCC diagnostic' kind +#pragma GCC diagnostic ignored "-Wunknown-warning-option" // warning: unknown warning group 'xxx' +#pragma GCC diagnostic ignored "-Wcast-function-type" // warning: cast between incompatible function types (for loader) #endif // GL includes @@ -123,9 +146,6 @@ #include #endif #elif defined(IMGUI_IMPL_OPENGL_ES3) -#if defined(__APPLE__) -#include -#endif #if (defined(__APPLE__) && (TARGET_OS_IOS || TARGET_OS_TV)) #include // Use GL ES 3 #else @@ -164,8 +184,8 @@ #define IMGUI_IMPL_OPENGL_MAY_HAVE_VTX_OFFSET #endif -// Desktop GL 3.3+ has glBindSampler() -#if !defined(IMGUI_IMPL_OPENGL_ES2) && !defined(IMGUI_IMPL_OPENGL_ES3) && defined(GL_VERSION_3_3) +// Desktop GL 3.3+ and GL ES 3.0+ have glBindSampler() +#if !defined(IMGUI_IMPL_OPENGL_ES2) && (defined(IMGUI_IMPL_OPENGL_ES3) || defined(GL_VERSION_3_3)) #define IMGUI_IMPL_OPENGL_MAY_HAVE_BIND_SAMPLER #endif @@ -179,11 +199,24 @@ #define IMGUI_IMPL_OPENGL_MAY_HAVE_EXTENSIONS #endif +// [Debugging] +//#define IMGUI_IMPL_OPENGL_DEBUG +#ifdef IMGUI_IMPL_OPENGL_DEBUG +#include +#define GL_CALL(_CALL) do { _CALL; GLenum gl_err = glGetError(); if (gl_err != 0) fprintf(stderr, "GL error 0x%x returned from '%s'.\n", gl_err, #_CALL); } while (0) // Call with error check +#else +#define GL_CALL(_CALL) _CALL // Call without error check +#endif + // OpenGL Data struct ImGui_ImplOpenGL3_Data { GLuint GlVersion; // Extracted at runtime using GL_MAJOR_VERSION, GL_MINOR_VERSION queries (e.g. 320 for GL 3.2) char GlslVersionString[32]; // Specified by user or detected based on compile time GL settings. + bool GlProfileIsES2; + bool GlProfileIsES3; + bool GlProfileIsCompat; + GLint GlProfileMask; GLuint FontTexture; GLuint ShaderHandle; GLint AttribLocationTex; // Uniforms location @@ -195,6 +228,7 @@ struct ImGui_ImplOpenGL3_Data GLsizeiptr VertexBufferSize; GLsizeiptr IndexBufferSize; bool HasClipOrigin; + bool UseBufferSubData; ImGui_ImplOpenGL3_Data() { memset((void*)this, 0, sizeof(*this)); } }; @@ -203,7 +237,7 @@ struct ImGui_ImplOpenGL3_Data // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. static ImGui_ImplOpenGL3_Data* ImGui_ImplOpenGL3_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplOpenGL3_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplOpenGL3_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Forward Declarations @@ -238,7 +272,7 @@ struct ImGui_ImplOpenGL3_VtxAttribState bool ImGui_ImplOpenGL3_Init(const char* glsl_version) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Initialize our loader #if !defined(IMGUI_IMPL_OPENGL_ES2) && !defined(IMGUI_IMPL_OPENGL_ES3) && !defined(IMGUI_IMPL_OPENGL_LOADER_CUSTOM) @@ -267,8 +301,30 @@ bool ImGui_ImplOpenGL3_Init(const char* glsl_version) sscanf(gl_version, "%d.%d", &major, &minor); } bd->GlVersion = (GLuint)(major * 100 + minor * 10); -#else +#if defined(GL_CONTEXT_PROFILE_MASK) + glGetIntegerv(GL_CONTEXT_PROFILE_MASK, &bd->GlProfileMask); + bd->GlProfileIsCompat = (bd->GlProfileMask & GL_CONTEXT_COMPATIBILITY_PROFILE_BIT) != 0; +#endif + + bd->UseBufferSubData = false; + /* + // Query vendor to enable glBufferSubData kludge +#ifdef _WIN32 + if (const char* vendor = (const char*)glGetString(GL_VENDOR)) + if (strncmp(vendor, "Intel", 5) == 0) + bd->UseBufferSubData = true; +#endif + */ +#elif defined(IMGUI_IMPL_OPENGL_ES2) bd->GlVersion = 200; // GLES 2 + bd->GlProfileIsES2 = true; +#elif defined(IMGUI_IMPL_OPENGL_ES3) + bd->GlVersion = 200; // Don't raise version as it is intended as a desktop version check for now. + bd->GlProfileIsES3 = true; +#endif + +#ifdef IMGUI_IMPL_OPENGL_DEBUG + printf("GL_MAJOR_VERSION = %d\nGL_MINOR_VERSION = %d\nGL_VENDOR = '%s'\nGL_RENDERER = '%s'\n", major, minor, (const char*)glGetString(GL_VENDOR), (const char*)glGetString(GL_RENDERER)); // [DEBUG] #endif #ifdef IMGUI_IMPL_OPENGL_MAY_HAVE_VTX_OFFSET @@ -278,8 +334,8 @@ bool ImGui_ImplOpenGL3_Init(const char* glsl_version) io.BackendFlags |= ImGuiBackendFlags_RendererHasViewports; // We can create multi-viewports on the Renderer side (optional) // Store GLSL version string so we can refer to it later in case we recreate shaders. - // Note: GLSL version is NOT the same as GL version. Leave this to NULL if unsure. - if (glsl_version == NULL) + // Note: GLSL version is NOT the same as GL version. Leave this to nullptr if unsure. + if (glsl_version == nullptr) { #if defined(IMGUI_IMPL_OPENGL_ES2) glsl_version = "#version 100"; @@ -308,7 +364,7 @@ bool ImGui_ImplOpenGL3_Init(const char* glsl_version) for (GLint i = 0; i < num_extensions; i++) { const char* extension = (const char*)glGetStringi(GL_EXTENSIONS, i); - if (extension != NULL && strcmp(extension, "GL_ARB_clip_control") == 0) + if (extension != nullptr && strcmp(extension, "GL_ARB_clip_control") == 0) bd->HasClipOrigin = true; } #endif @@ -322,20 +378,21 @@ bool ImGui_ImplOpenGL3_Init(const char* glsl_version) void ImGui_ImplOpenGL3_Shutdown() { ImGui_ImplOpenGL3_Data* bd = ImGui_ImplOpenGL3_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplOpenGL3_ShutdownPlatformInterface(); ImGui_ImplOpenGL3_DestroyDeviceObjects(); - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); IM_DELETE(bd); } void ImGui_ImplOpenGL3_NewFrame() { ImGui_ImplOpenGL3_Data* bd = ImGui_ImplOpenGL3_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplOpenGL3_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplOpenGL3_Init()?"); if (!bd->ShaderHandle) ImGui_ImplOpenGL3_CreateDeviceObjects(); @@ -374,7 +431,7 @@ static void ImGui_ImplOpenGL3_SetupRenderState(ImDrawData* draw_data, int fb_wid // Setup viewport, orthographic projection matrix // Our visible imgui space lies from draw_data->DisplayPos (top left) to draw_data->DisplayPos+data_data->DisplaySize (bottom right). DisplayPos is (0,0) for single viewport apps. - glViewport(0, 0, (GLsizei)fb_width, (GLsizei)fb_height); + GL_CALL(glViewport(0, 0, (GLsizei)fb_width, (GLsizei)fb_height)); float L = draw_data->DisplayPos.x; float R = draw_data->DisplayPos.x + draw_data->DisplaySize.x; float T = draw_data->DisplayPos.y; @@ -394,8 +451,8 @@ static void ImGui_ImplOpenGL3_SetupRenderState(ImDrawData* draw_data, int fb_wid glUniformMatrix4fv(bd->AttribLocationProjMtx, 1, GL_FALSE, &ortho_projection[0][0]); #ifdef IMGUI_IMPL_OPENGL_MAY_HAVE_BIND_SAMPLER - if (bd->GlVersion >= 330) - glBindSampler(0, 0); // We use combined texture/sampler state. Applications using GL 3.3 may set that otherwise. + if (bd->GlVersion >= 330 || bd->GlProfileIsES3) + glBindSampler(0, 0); // We use combined texture/sampler state. Applications using GL 3.3 and GL ES 3.0 may set that otherwise. #endif (void)vertex_array_object; @@ -404,14 +461,14 @@ static void ImGui_ImplOpenGL3_SetupRenderState(ImDrawData* draw_data, int fb_wid #endif // Bind vertex/index buffers and setup attributes for ImDrawVert - glBindBuffer(GL_ARRAY_BUFFER, bd->VboHandle); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, bd->ElementsHandle); - glEnableVertexAttribArray(bd->AttribLocationVtxPos); - glEnableVertexAttribArray(bd->AttribLocationVtxUV); - glEnableVertexAttribArray(bd->AttribLocationVtxColor); - glVertexAttribPointer(bd->AttribLocationVtxPos, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*)IM_OFFSETOF(ImDrawVert, pos)); - glVertexAttribPointer(bd->AttribLocationVtxUV, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*)IM_OFFSETOF(ImDrawVert, uv)); - glVertexAttribPointer(bd->AttribLocationVtxColor, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(ImDrawVert), (GLvoid*)IM_OFFSETOF(ImDrawVert, col)); + GL_CALL(glBindBuffer(GL_ARRAY_BUFFER, bd->VboHandle)); + GL_CALL(glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, bd->ElementsHandle)); + GL_CALL(glEnableVertexAttribArray(bd->AttribLocationVtxPos)); + GL_CALL(glEnableVertexAttribArray(bd->AttribLocationVtxUV)); + GL_CALL(glEnableVertexAttribArray(bd->AttribLocationVtxColor)); + GL_CALL(glVertexAttribPointer(bd->AttribLocationVtxPos, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*)IM_OFFSETOF(ImDrawVert, pos))); + GL_CALL(glVertexAttribPointer(bd->AttribLocationVtxUV, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*)IM_OFFSETOF(ImDrawVert, uv))); + GL_CALL(glVertexAttribPointer(bd->AttribLocationVtxColor, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(ImDrawVert), (GLvoid*)IM_OFFSETOF(ImDrawVert, col))); } // OpenGL3 Render function. @@ -433,7 +490,7 @@ void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data) GLuint last_program; glGetIntegerv(GL_CURRENT_PROGRAM, (GLint*)&last_program); GLuint last_texture; glGetIntegerv(GL_TEXTURE_BINDING_2D, (GLint*)&last_texture); #ifdef IMGUI_IMPL_OPENGL_MAY_HAVE_BIND_SAMPLER - GLuint last_sampler; if (bd->GlVersion >= 330) { glGetIntegerv(GL_SAMPLER_BINDING, (GLint*)&last_sampler); } else { last_sampler = 0; } + GLuint last_sampler; if (bd->GlVersion >= 330 || bd->GlProfileIsES3) { glGetIntegerv(GL_SAMPLER_BINDING, (GLint*)&last_sampler); } else { last_sampler = 0; } #endif GLuint last_array_buffer; glGetIntegerv(GL_ARRAY_BUFFER_BINDING, (GLint*)&last_array_buffer); #ifndef IMGUI_IMPL_OPENGL_USE_VERTEX_ARRAY @@ -471,7 +528,7 @@ void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data) // The renderer would actually work without any VAO bound, but then our VertexAttrib calls would overwrite the default one currently bound. GLuint vertex_array_object = 0; #ifdef IMGUI_IMPL_OPENGL_USE_VERTEX_ARRAY - glGenVertexArrays(1, &vertex_array_object); + GL_CALL(glGenVertexArrays(1, &vertex_array_object)); #endif ImGui_ImplOpenGL3_SetupRenderState(draw_data, fb_width, fb_height, vertex_array_object); @@ -485,25 +542,40 @@ void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data) const ImDrawList* cmd_list = draw_data->CmdLists[n]; // Upload vertex/index buffers - GLsizeiptr vtx_buffer_size = (GLsizeiptr)cmd_list->VtxBuffer.Size * (int)sizeof(ImDrawVert); - GLsizeiptr idx_buffer_size = (GLsizeiptr)cmd_list->IdxBuffer.Size * (int)sizeof(ImDrawIdx); - if (bd->VertexBufferSize < vtx_buffer_size) + // - OpenGL drivers are in a very sorry state nowadays.... + // During 2021 we attempted to switch from glBufferData() to orphaning+glBufferSubData() following reports + // of leaks on Intel GPU when using multi-viewports on Windows. + // - After this we kept hearing of various display corruptions issues. We started disabling on non-Intel GPU, but issues still got reported on Intel. + // - We are now back to using exclusively glBufferData(). So bd->UseBufferSubData IS ALWAYS FALSE in this code. + // We are keeping the old code path for a while in case people finding new issues may want to test the bd->UseBufferSubData path. + // - See https://github.com/ocornut/imgui/issues/4468 and please report any corruption issues. + const GLsizeiptr vtx_buffer_size = (GLsizeiptr)cmd_list->VtxBuffer.Size * (int)sizeof(ImDrawVert); + const GLsizeiptr idx_buffer_size = (GLsizeiptr)cmd_list->IdxBuffer.Size * (int)sizeof(ImDrawIdx); + if (bd->UseBufferSubData) { - bd->VertexBufferSize = vtx_buffer_size; - glBufferData(GL_ARRAY_BUFFER, bd->VertexBufferSize, NULL, GL_STREAM_DRAW); + if (bd->VertexBufferSize < vtx_buffer_size) + { + bd->VertexBufferSize = vtx_buffer_size; + GL_CALL(glBufferData(GL_ARRAY_BUFFER, bd->VertexBufferSize, nullptr, GL_STREAM_DRAW)); + } + if (bd->IndexBufferSize < idx_buffer_size) + { + bd->IndexBufferSize = idx_buffer_size; + GL_CALL(glBufferData(GL_ELEMENT_ARRAY_BUFFER, bd->IndexBufferSize, nullptr, GL_STREAM_DRAW)); + } + GL_CALL(glBufferSubData(GL_ARRAY_BUFFER, 0, vtx_buffer_size, (const GLvoid*)cmd_list->VtxBuffer.Data)); + GL_CALL(glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, idx_buffer_size, (const GLvoid*)cmd_list->IdxBuffer.Data)); } - if (bd->IndexBufferSize < idx_buffer_size) + else { - bd->IndexBufferSize = idx_buffer_size; - glBufferData(GL_ELEMENT_ARRAY_BUFFER, bd->IndexBufferSize, NULL, GL_STREAM_DRAW); + GL_CALL(glBufferData(GL_ARRAY_BUFFER, vtx_buffer_size, (const GLvoid*)cmd_list->VtxBuffer.Data, GL_STREAM_DRAW)); + GL_CALL(glBufferData(GL_ELEMENT_ARRAY_BUFFER, idx_buffer_size, (const GLvoid*)cmd_list->IdxBuffer.Data, GL_STREAM_DRAW)); } - glBufferSubData(GL_ARRAY_BUFFER, 0, vtx_buffer_size, (const GLvoid*)cmd_list->VtxBuffer.Data); - glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, idx_buffer_size, (const GLvoid*)cmd_list->IdxBuffer.Data); for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) { const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback != NULL) + if (pcmd->UserCallback != nullptr) { // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) @@ -521,30 +593,31 @@ void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data) continue; // Apply scissor/clipping rectangle (Y is inverted in OpenGL) - glScissor((int)clip_min.x, (int)((float)fb_height - clip_max.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y)); + GL_CALL(glScissor((int)clip_min.x, (int)((float)fb_height - clip_max.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y))); // Bind texture, Draw - glBindTexture(GL_TEXTURE_2D, (GLuint)(intptr_t)pcmd->GetTexID()); + GL_CALL(glBindTexture(GL_TEXTURE_2D, (GLuint)(intptr_t)pcmd->GetTexID())); #ifdef IMGUI_IMPL_OPENGL_MAY_HAVE_VTX_OFFSET if (bd->GlVersion >= 320) - glDrawElementsBaseVertex(GL_TRIANGLES, (GLsizei)pcmd->ElemCount, sizeof(ImDrawIdx) == 2 ? GL_UNSIGNED_SHORT : GL_UNSIGNED_INT, (void*)(intptr_t)(pcmd->IdxOffset * sizeof(ImDrawIdx)), (GLint)pcmd->VtxOffset); + GL_CALL(glDrawElementsBaseVertex(GL_TRIANGLES, (GLsizei)pcmd->ElemCount, sizeof(ImDrawIdx) == 2 ? GL_UNSIGNED_SHORT : GL_UNSIGNED_INT, (void*)(intptr_t)(pcmd->IdxOffset * sizeof(ImDrawIdx)), (GLint)pcmd->VtxOffset)); else #endif - glDrawElements(GL_TRIANGLES, (GLsizei)pcmd->ElemCount, sizeof(ImDrawIdx) == 2 ? GL_UNSIGNED_SHORT : GL_UNSIGNED_INT, (void*)(intptr_t)(pcmd->IdxOffset * sizeof(ImDrawIdx))); + GL_CALL(glDrawElements(GL_TRIANGLES, (GLsizei)pcmd->ElemCount, sizeof(ImDrawIdx) == 2 ? GL_UNSIGNED_SHORT : GL_UNSIGNED_INT, (void*)(intptr_t)(pcmd->IdxOffset * sizeof(ImDrawIdx)))); } } } // Destroy the temporary VAO #ifdef IMGUI_IMPL_OPENGL_USE_VERTEX_ARRAY - glDeleteVertexArrays(1, &vertex_array_object); + GL_CALL(glDeleteVertexArrays(1, &vertex_array_object)); #endif // Restore modified GL state - glUseProgram(last_program); + // This "glIsProgram()" check is required because if the program is "pending deletion" at the time of binding backup, it will have been deleted by now and will cause an OpenGL error. See #6220. + if (last_program == 0 || glIsProgram(last_program)) glUseProgram(last_program); glBindTexture(GL_TEXTURE_2D, last_texture); #ifdef IMGUI_IMPL_OPENGL_MAY_HAVE_BIND_SAMPLER - if (bd->GlVersion >= 330) + if (bd->GlVersion >= 330 || bd->GlProfileIsES3) glBindSampler(0, last_sampler); #endif glActiveTexture(last_active_texture); @@ -570,8 +643,18 @@ void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data) #endif #ifdef IMGUI_IMPL_HAS_POLYGON_MODE - glPolygonMode(GL_FRONT_AND_BACK, (GLenum)last_polygon_mode[0]); -#endif + // Desktop OpenGL 3.0 and OpenGL 3.1 had separate polygon draw modes for front-facing and back-facing faces of polygons + if (bd->GlVersion <= 310 || bd->GlProfileIsCompat) + { + glPolygonMode(GL_FRONT, (GLenum)last_polygon_mode[0]); + glPolygonMode(GL_BACK, (GLenum)last_polygon_mode[1]); + } + else + { + glPolygonMode(GL_FRONT_AND_BACK, (GLenum)last_polygon_mode[0]); + } +#endif // IMGUI_IMPL_HAS_POLYGON_MODE + glViewport(last_viewport[0], last_viewport[1], (GLsizei)last_viewport[2], (GLsizei)last_viewport[3]); glScissor(last_scissor_box[0], last_scissor_box[1], (GLsizei)last_scissor_box[2], (GLsizei)last_scissor_box[3]); (void)bd; // Not all compilation paths use this @@ -590,21 +673,21 @@ bool ImGui_ImplOpenGL3_CreateFontsTexture() // Upload texture to graphics system // (Bilinear sampling is required by default. Set 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines' or 'style.AntiAliasedLinesUseTex = false' to allow point/nearest sampling) GLint last_texture; - glGetIntegerv(GL_TEXTURE_BINDING_2D, &last_texture); - glGenTextures(1, &bd->FontTexture); - glBindTexture(GL_TEXTURE_2D, bd->FontTexture); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + GL_CALL(glGetIntegerv(GL_TEXTURE_BINDING_2D, &last_texture)); + GL_CALL(glGenTextures(1, &bd->FontTexture)); + GL_CALL(glBindTexture(GL_TEXTURE_2D, bd->FontTexture)); + GL_CALL(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)); + GL_CALL(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)); #ifdef GL_UNPACK_ROW_LENGTH // Not on WebGL/ES - glPixelStorei(GL_UNPACK_ROW_LENGTH, 0); + GL_CALL(glPixelStorei(GL_UNPACK_ROW_LENGTH, 0)); #endif - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels); + GL_CALL(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels)); // Store our identifier io.Fonts->SetTexID((ImTextureID)(intptr_t)bd->FontTexture); // Restore state - glBindTexture(GL_TEXTURE_2D, last_texture); + GL_CALL(glBindTexture(GL_TEXTURE_2D, last_texture)); return true; } @@ -634,7 +717,7 @@ static bool CheckShader(GLuint handle, const char* desc) { ImVector buf; buf.resize((int)(log_length + 1)); - glGetShaderInfoLog(handle, log_length, NULL, (GLchar*)buf.begin()); + glGetShaderInfoLog(handle, log_length, nullptr, (GLchar*)buf.begin()); fprintf(stderr, "%s\n", buf.begin()); } return (GLboolean)status == GL_TRUE; @@ -653,7 +736,7 @@ static bool CheckProgram(GLuint handle, const char* desc) { ImVector buf; buf.resize((int)(log_length + 1)); - glGetProgramInfoLog(handle, log_length, NULL, (GLchar*)buf.begin()); + glGetProgramInfoLog(handle, log_length, nullptr, (GLchar*)buf.begin()); fprintf(stderr, "%s\n", buf.begin()); } return (GLboolean)status == GL_TRUE; @@ -777,8 +860,8 @@ bool ImGui_ImplOpenGL3_CreateDeviceObjects() "}\n"; // Select shaders matching our GLSL versions - const GLchar* vertex_shader = NULL; - const GLchar* fragment_shader = NULL; + const GLchar* vertex_shader = nullptr; + const GLchar* fragment_shader = nullptr; if (glsl_version < 130) { vertex_shader = vertex_shader_glsl_120; @@ -803,13 +886,13 @@ bool ImGui_ImplOpenGL3_CreateDeviceObjects() // Create shaders const GLchar* vertex_shader_with_version[2] = { bd->GlslVersionString, vertex_shader }; GLuint vert_handle = glCreateShader(GL_VERTEX_SHADER); - glShaderSource(vert_handle, 2, vertex_shader_with_version, NULL); + glShaderSource(vert_handle, 2, vertex_shader_with_version, nullptr); glCompileShader(vert_handle); CheckShader(vert_handle, "vertex shader"); const GLchar* fragment_shader_with_version[2] = { bd->GlslVersionString, fragment_shader }; GLuint frag_handle = glCreateShader(GL_FRAGMENT_SHADER); - glShaderSource(frag_handle, 2, fragment_shader_with_version, NULL); + glShaderSource(frag_handle, 2, fragment_shader_with_version, nullptr); glCompileShader(frag_handle); CheckShader(frag_handle, "fragment shader"); @@ -884,6 +967,9 @@ static void ImGui_ImplOpenGL3_ShutdownPlatformInterface() ImGui::DestroyPlatformWindows(); } +#if defined(__GNUC__) +#pragma GCC diagnostic pop +#endif #if defined(__clang__) #pragma clang diagnostic pop #endif diff --git a/extern/imgui_patched/backends/imgui_impl_opengl3.h b/extern/imgui_patched/backends/imgui_impl_opengl3.h index 81722bdf..1c7666c8 100644 --- a/extern/imgui_patched/backends/imgui_impl_opengl3.h +++ b/extern/imgui_patched/backends/imgui_impl_opengl3.h @@ -5,8 +5,13 @@ // Implemented features: // [X] Renderer: User texture binding. Use 'GLuint' OpenGL texture identifier as void*/ImTextureID. Read the FAQ about ImTextureID! +// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices (Desktop OpenGL only). // [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. -// [x] Renderer: Large meshes support (64k+ vertices) with 16-bit indices (Desktop OpenGL only). + +// About WebGL/ES: +// - You need to '#define IMGUI_IMPL_OPENGL_ES2' or '#define IMGUI_IMPL_OPENGL_ES3' to use WebGL or OpenGL ES. +// - This is done automatically on iOS, Android and Emscripten targets. +// - For other targets, the define needs to be visible from the imgui_impl_opengl3.cpp compilation unit. If unsure, define globally or in imconfig.h. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. @@ -14,7 +19,7 @@ // Read online: https://github.com/ocornut/imgui/tree/master/docs // About GLSL version: -// The 'glsl_version' initialization parameter should be NULL (default) or a "#version XXX" string. +// The 'glsl_version' initialization parameter should be nullptr (default) or a "#version XXX" string. // On computer platform the GLSL version default to "#version 130". On OpenGL ES 3 platform it defaults to "#version 300 es" // Only override if your GL version doesn't handle this GLSL version. See GLSL version table at the top of imgui_impl_opengl3.cpp. @@ -22,7 +27,7 @@ #include "imgui.h" // IMGUI_IMPL_API // Backend API -IMGUI_IMPL_API bool ImGui_ImplOpenGL3_Init(const char* glsl_version = NULL); +IMGUI_IMPL_API bool ImGui_ImplOpenGL3_Init(const char* glsl_version = nullptr); IMGUI_IMPL_API void ImGui_ImplOpenGL3_Shutdown(); IMGUI_IMPL_API void ImGui_ImplOpenGL3_NewFrame(); IMGUI_IMPL_API void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data); diff --git a/extern/imgui_patched/backends/imgui_impl_opengl3_loader.h b/extern/imgui_patched/backends/imgui_impl_opengl3_loader.h index 67ac389d..7ca72e37 100644 --- a/extern/imgui_patched/backends/imgui_impl_opengl3_loader.h +++ b/extern/imgui_patched/backends/imgui_impl_opengl3_loader.h @@ -9,6 +9,14 @@ // YOU SHOULD NOT NEED TO INCLUDE/USE THIS DIRECTLY. THIS IS USED BY imgui_impl_opengl3.cpp ONLY. // THE REST OF YOUR APP SHOULD USE A DIFFERENT GL LOADER: ANY GL LOADER OF YOUR CHOICE. // +// IF YOU GET BUILD ERRORS IN THIS FILE (commonly macro redefinitions or function redefinitions): +// IT LIKELY MEANS THAT YOU ARE BUILDING 'imgui_impl_opengl3.cpp' OR INCUDING 'imgui_impl_opengl3_loader.h' +// IN THE SAME COMPILATION UNIT AS ONE OF YOUR FILE WHICH IS USING A THIRD-PARTY OPENGL LOADER. +// (e.g. COULD HAPPEN IF YOU ARE DOING A UNITY/JUMBO BUILD, OR INCLUDING .CPP FILES FROM OTHERS) +// YOU SHOULD NOT BUILD BOTH IN THE SAME COMPILATION UNIT. +// BUT IF YOU REALLY WANT TO, you can '#define IMGUI_IMPL_OPENGL_LOADER_CUSTOM' and imgui_impl_opengl3.cpp +// WILL NOT BE USING OUR LOADER, AND INSTEAD EXPECT ANOTHER/YOUR LOADER TO BE AVAILABLE IN THE COMPILATION UNIT. +// // Regenerate with: // python gl3w_gen.py --output ../imgui/backends/imgui_impl_opengl3_loader.h --ref ../imgui/backends/imgui_impl_opengl3.cpp ./extra_symbols.txt // @@ -146,6 +154,8 @@ typedef khronos_uint8_t GLubyte; #define GL_ONE 1 #define GL_SRC_ALPHA 0x0302 #define GL_ONE_MINUS_SRC_ALPHA 0x0303 +#define GL_FRONT 0x0404 +#define GL_BACK 0x0405 #define GL_FRONT_AND_BACK 0x0408 #define GL_POLYGON_MODE 0x0B40 #define GL_CULL_FACE 0x0B44 @@ -164,6 +174,8 @@ typedef khronos_uint8_t GLubyte; #define GL_FLOAT 0x1406 #define GL_RGBA 0x1908 #define GL_FILL 0x1B02 +#define GL_VENDOR 0x1F00 +#define GL_RENDERER 0x1F01 #define GL_VERSION 0x1F02 #define GL_EXTENSIONS 0x1F03 #define GL_LINEAR 0x2601 @@ -299,6 +311,7 @@ typedef void (APIENTRYP PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSi typedef GLint (APIENTRYP PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar *name); typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIVPROC) (GLuint index, GLenum pname, GLint *params); typedef void (APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint index, GLenum pname, void **pointer); +typedef GLboolean (APIENTRYP PFNGLISPROGRAMPROC) (GLuint program); typedef void (APIENTRYP PFNGLLINKPROGRAMPROC) (GLuint program); typedef void (APIENTRYP PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length); typedef void (APIENTRYP PFNGLUSEPROGRAMPROC) (GLuint program); @@ -324,6 +337,7 @@ GLAPI void APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei GLAPI GLint APIENTRY glGetUniformLocation (GLuint program, const GLchar *name); GLAPI void APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint *params); GLAPI void APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, void **pointer); +GLAPI GLboolean APIENTRY glIsProgram (GLuint program); GLAPI void APIENTRY glLinkProgram (GLuint program); GLAPI void APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length); GLAPI void APIENTRY glUseProgram (GLuint program); @@ -361,6 +375,8 @@ GLAPI void APIENTRY glGenVertexArrays (GLsizei n, GLuint *arrays); typedef struct __GLsync *GLsync; typedef khronos_uint64_t GLuint64; typedef khronos_int64_t GLint64; +#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002 +#define GL_CONTEXT_PROFILE_MASK 0x9126 typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); typedef void (APIENTRYP PFNGLGETINTEGER64I_VPROC) (GLenum target, GLuint index, GLint64 *data); #ifdef GL_GLEXT_PROTOTYPES @@ -452,7 +468,7 @@ GL3W_API GL3WglProc imgl3wGetProcAddress(const char *proc); /* gl3w internal state */ union GL3WProcs { - GL3WglProc ptr[58]; + GL3WglProc ptr[59]; struct { PFNGLACTIVETEXTUREPROC ActiveTexture; PFNGLATTACHSHADERPROC AttachShader; @@ -499,6 +515,7 @@ union GL3WProcs { PFNGLGETVERTEXATTRIBPOINTERVPROC GetVertexAttribPointerv; PFNGLGETVERTEXATTRIBIVPROC GetVertexAttribiv; PFNGLISENABLEDPROC IsEnabled; + PFNGLISPROGRAMPROC IsProgram; PFNGLLINKPROGRAMPROC LinkProgram; PFNGLPIXELSTOREIPROC PixelStorei; PFNGLPOLYGONMODEPROC PolygonMode; @@ -563,6 +580,7 @@ GL3W_API extern union GL3WProcs imgl3wProcs; #define glGetVertexAttribPointerv imgl3wProcs.gl.GetVertexAttribPointerv #define glGetVertexAttribiv imgl3wProcs.gl.GetVertexAttribiv #define glIsEnabled imgl3wProcs.gl.IsEnabled +#define glIsProgram imgl3wProcs.gl.IsProgram #define glLinkProgram imgl3wProcs.gl.LinkProgram #define glPixelStorei imgl3wProcs.gl.PixelStorei #define glPolygonMode imgl3wProcs.gl.PolygonMode @@ -675,7 +693,13 @@ static int parse_version(void) return GL3W_ERROR_INIT; glGetIntegerv(GL_MAJOR_VERSION, &version.major); glGetIntegerv(GL_MINOR_VERSION, &version.minor); - if (version.major < 3) + if (version.major == 0 && version.minor == 0) + { + // Query GL_VERSION in desktop GL 2.x, the string will start with "." + if (const char* gl_version = (const char*)glGetString(GL_VERSION)) + sscanf(gl_version, "%d.%d", &version.major, &version.minor); + } + if (version.major < 2) return GL3W_ERROR_OPENGL_VERSION; return GL3W_OK; } @@ -699,7 +723,7 @@ int imgl3wInit2(GL3WGetProcAddressProc proc) int imgl3wIsSupported(int major, int minor) { - if (major < 3) + if (major < 2) return 0; if (version.major == major) return version.minor >= minor; @@ -754,6 +778,7 @@ static const char *proc_names[] = { "glGetVertexAttribPointerv", "glGetVertexAttribiv", "glIsEnabled", + "glIsProgram", "glLinkProgram", "glPixelStorei", "glPolygonMode", diff --git a/extern/imgui_patched/backends/imgui_impl_osx.h b/extern/imgui_patched/backends/imgui_impl_osx.h index 18a7554f..08b6ab74 100644 --- a/extern/imgui_patched/backends/imgui_impl_osx.h +++ b/extern/imgui_patched/backends/imgui_impl_osx.h @@ -1,9 +1,11 @@ // dear imgui: Platform Backend for OSX / Cocoa // This needs to be used along with a Renderer (e.g. OpenGL2, OpenGL3, Vulkan, Metal..) -// [ALPHA] Early backend, not well tested. If you want a portable application, prefer using the GLFW or SDL platform Backends on Mac. +// - Not well tested. If you want a portable application, prefer using the GLFW or SDL platform Backends on Mac. +// - Requires linking with the GameController framework ("-framework GameController"). // Implemented features: // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. +// [X] Platform: Mouse support. Can discriminate Mouse/Pen. // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy kVK_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: OSX clipboard is supported within core Dear ImGui (no specific code in this backend). // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. @@ -17,9 +19,28 @@ #include "imgui.h" // IMGUI_IMPL_API +#ifdef __OBJC__ + @class NSEvent; @class NSView; IMGUI_IMPL_API bool ImGui_ImplOSX_Init(NSView* _Nonnull view); IMGUI_IMPL_API void ImGui_ImplOSX_Shutdown(); IMGUI_IMPL_API void ImGui_ImplOSX_NewFrame(NSView* _Nullable view); + +#endif + +//----------------------------------------------------------------------------- +// C++ API +//----------------------------------------------------------------------------- + +#ifdef IMGUI_IMPL_METAL_CPP_EXTENSIONS +// #include +#ifndef __OBJC__ + +IMGUI_IMPL_API bool ImGui_ImplOSX_Init(void* _Nonnull view); +IMGUI_IMPL_API void ImGui_ImplOSX_Shutdown(); +IMGUI_IMPL_API void ImGui_ImplOSX_NewFrame(void* _Nullable view); + +#endif +#endif diff --git a/extern/imgui_patched/backends/imgui_impl_osx.mm b/extern/imgui_patched/backends/imgui_impl_osx.mm index 49526d9f..bfd0dba9 100644 --- a/extern/imgui_patched/backends/imgui_impl_osx.mm +++ b/extern/imgui_patched/backends/imgui_impl_osx.mm @@ -1,9 +1,11 @@ // dear imgui: Platform Backend for OSX / Cocoa // This needs to be used along with a Renderer (e.g. OpenGL2, OpenGL3, Vulkan, Metal..) -// [ALPHA] Early backend, not well tested. If you want a portable application, prefer using the GLFW or SDL platform Backends on Mac. +// - Not well tested. If you want a portable application, prefer using the GLFW or SDL platform Backends on Mac. +// - Requires linking with the GameController framework ("-framework GameController"). // Implemented features: // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. +// [X] Platform: Mouse support. Can discriminate Mouse/Pen. // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy kVK_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: OSX clipboard is supported within core Dear ImGui (no specific code in this backend). // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. @@ -24,13 +26,18 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-04-09: Inputs: Added support for io.AddMouseSourceEvent() to discriminate ImGuiMouseSource_Mouse/ImGuiMouseSource_Pen. +// 2023-02-01: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). +// 2022-11-02: Fixed mouse coordinates before clicking the host window. +// 2022-10-06: Fixed mouse inputs on flipped views. +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). // 2022-05-03: Inputs: Removed ImGui_ImplOSX_HandleEvent() from backend API in favor of backend automatically handling event capture. // 2022-04-27: Misc: Store backend data in a per-context struct, allowing to use this backend with multiple contexts. // 2022-03-22: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key // 2022-02-07: Inputs: Forward keyDown/keyUp events to OS when unused by dear imgui. -// 2022-01-31: Fix building with old Xcode versions that are missing gamepad features. -// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago)with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. +// 2022-01-31: Fixed building with old Xcode versions that are missing gamepad features. +// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago) with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. // 2021-01-20: Inputs: calling new io.AddKeyAnalogEvent() for gamepad support, instead of writing directly to io.NavInputs[]. // 2022-01-17: Inputs: calling new io.AddMousePosEvent(), io.AddMouseButtonEvent(), io.AddMouseWheelEvent() API (1.87+). // 2022-01-12: Inputs: Added basic Platform IME support, hooking the io.SetPlatformImeDataFn() function. @@ -63,23 +70,23 @@ // Data struct ImGui_ImplOSX_Data { - CFTimeInterval Time; - NSCursor* MouseCursors[ImGuiMouseCursor_COUNT]; - bool MouseCursorHidden; - ImGuiObserver* Observer; - KeyEventResponder* KeyEventResponder; - NSTextInputContext* InputContext; - id Monitor; - NSWindow* Window; + CFTimeInterval Time; + NSCursor* MouseCursors[ImGuiMouseCursor_COUNT]; + bool MouseCursorHidden; + ImGuiObserver* Observer; + KeyEventResponder* KeyEventResponder; + NSTextInputContext* InputContext; + id Monitor; + NSWindow* Window; - ImGui_ImplOSX_Data() { memset(this, 0, sizeof(*this)); } + ImGui_ImplOSX_Data() { memset(this, 0, sizeof(*this)); } }; -static ImGui_ImplOSX_Data* ImGui_ImplOSX_CreateBackendData() { return IM_NEW(ImGui_ImplOSX_Data)(); } -static ImGui_ImplOSX_Data* ImGui_ImplOSX_GetBackendData() { return (ImGui_ImplOSX_Data*)ImGui::GetIO().BackendPlatformUserData; } -static void ImGui_ImplOSX_DestroyBackendData() { IM_DELETE(ImGui_ImplOSX_GetBackendData()); } +static ImGui_ImplOSX_Data* ImGui_ImplOSX_CreateBackendData() { return IM_NEW(ImGui_ImplOSX_Data)(); } +static ImGui_ImplOSX_Data* ImGui_ImplOSX_GetBackendData() { return (ImGui_ImplOSX_Data*)ImGui::GetIO().BackendPlatformUserData; } +static void ImGui_ImplOSX_DestroyBackendData() { IM_DELETE(ImGui_ImplOSX_GetBackendData()); } -static inline CFTimeInterval GetMachAbsoluteTimeInSeconds() { return static_cast(static_cast(clock_gettime_nsec_np(CLOCK_UPTIME_RAW)) / 1e9); } +static inline CFTimeInterval GetMachAbsoluteTimeInSeconds() { return (CFTimeInterval)(double)(clock_gettime_nsec_np(CLOCK_UPTIME_RAW) / 1e9); } // Forward Declarations static void ImGui_ImplOSX_InitPlatformInterface(); @@ -376,6 +383,18 @@ static ImGuiKey ImGui_ImplOSX_KeyCodeToImGuiKey(int key_code) } } +#ifdef IMGUI_IMPL_METAL_CPP_EXTENSIONS + +IMGUI_IMPL_API bool ImGui_ImplOSX_Init(void* _Nonnull view) { + return ImGui_ImplOSX_Init((__bridge NSView*)(view)); +} + +IMGUI_IMPL_API void ImGui_ImplOSX_NewFrame(void* _Nullable view) { + return ImGui_ImplOSX_NewFrame((__bridge NSView*)(view)); +} + +#endif + bool ImGui_ImplOSX_Init(NSView* view) { @@ -424,11 +443,11 @@ bool ImGui_ImplOSX_Init(NSView* view) NSPasteboard* pasteboard = [NSPasteboard generalPasteboard]; NSString* available = [pasteboard availableTypeFromArray: [NSArray arrayWithObject:NSPasteboardTypeString]]; if (![available isEqualToString:NSPasteboardTypeString]) - return NULL; + return nullptr; NSString* string = [pasteboard stringForType:NSPasteboardTypeString]; if (string == nil) - return NULL; + return nullptr; const char* string_c = (const char*)[string UTF8String]; size_t string_len = strlen(string_c); @@ -475,8 +494,22 @@ bool ImGui_ImplOSX_Init(NSView* view) void ImGui_ImplOSX_Shutdown() { + ImGui_ImplOSX_Data* bd = ImGui_ImplOSX_GetBackendData(); + IM_ASSERT(bd != nullptr && "No platform backend to shutdown, or already shutdown?"); + + bd->Observer = nullptr; + if (bd->Monitor != nullptr) + { + [NSEvent removeMonitor:bd->Monitor]; + bd->Monitor = nullptr; + } + ImGui_ImplOSX_ShutdownPlatformInterface(); ImGui_ImplOSX_DestroyBackendData(); + ImGuiIO& io = ImGui::GetIO(); + io.BackendPlatformName = nullptr; + io.BackendPlatformUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_HasMouseCursors | ImGuiBackendFlags_HasGamepad | ImGuiBackendFlags_PlatformHasViewports); } static void ImGui_ImplOSX_UpdateMouseCursor() @@ -516,7 +549,7 @@ static void ImGui_ImplOSX_UpdateGamepads() { ImGuiIO& io = ImGui::GetIO(); memset(io.NavInputs, 0, sizeof(io.NavInputs)); - if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) + if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) // FIXME: Technically feeding gamepad shouldn't depend on this now that they are regular inputs. return; #if APPLE_HAS_CONTROLLER @@ -541,10 +574,10 @@ static void ImGui_ImplOSX_UpdateGamepads() #if APPLE_HAS_BUTTON_OPTIONS MAP_BUTTON(ImGuiKey_GamepadBack, buttonOptions); #endif - MAP_BUTTON(ImGuiKey_GamepadFaceDown, buttonA); // Xbox A, PS Cross - MAP_BUTTON(ImGuiKey_GamepadFaceRight, buttonB); // Xbox B, PS Circle MAP_BUTTON(ImGuiKey_GamepadFaceLeft, buttonX); // Xbox X, PS Square + MAP_BUTTON(ImGuiKey_GamepadFaceRight, buttonB); // Xbox B, PS Circle MAP_BUTTON(ImGuiKey_GamepadFaceUp, buttonY); // Xbox Y, PS Triangle + MAP_BUTTON(ImGuiKey_GamepadFaceDown, buttonA); // Xbox A, PS Cross MAP_BUTTON(ImGuiKey_GamepadDpadLeft, dpad.left); MAP_BUTTON(ImGuiKey_GamepadDpadRight, dpad.right); MAP_BUTTON(ImGuiKey_GamepadDpadUp, dpad.up); @@ -605,6 +638,26 @@ void ImGui_ImplOSX_NewFrame(NSView* view) ImGui_ImplOSX_UpdateImePosWithView(view); } +// Must only be called for a mouse event, otherwise an exception occurs +// (Note that NSEventTypeScrollWheel is considered "other input". Oddly enough an exception does not occur with it, but the value will sometimes be wrong!) +static ImGuiMouseSource GetMouseSource(NSEvent* event) +{ + switch (event.subtype) + { + case NSEventSubtypeTabletPoint: + return ImGuiMouseSource_Pen; + // macOS considers input from relative touch devices (like the trackpad or Apple Magic Mouse) to be touch input. + // This doesn't really make sense for Dear ImGui, which expects absolute touch devices only. + // There does not seem to be a simple way to disambiguate things here so we consider NSEventSubtypeTouch events to always come from mice. + // See https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/EventOverview/HandlingTouchEvents/HandlingTouchEvents.html#//apple_ref/doc/uid/10000060i-CH13-SW24 + //case NSEventSubtypeTouch: + // return ImGuiMouseSource_TouchScreen; + case NSEventSubtypeMouseEvent: + default: + return ImGuiMouseSource_Mouse; + } +} + static bool ImGui_ImplOSX_HandleEvent(NSEvent* event, NSView* view) { ImGuiIO& io = ImGui::GetIO(); @@ -613,7 +666,10 @@ static bool ImGui_ImplOSX_HandleEvent(NSEvent* event, NSView* view) { int button = (int)[event buttonNumber]; if (button >= 0 && button < ImGuiMouseButton_COUNT) + { + io.AddMouseSourceEvent(GetMouseSource(event)); io.AddMouseButtonEvent(button, true); + } return io.WantCaptureMouse; } @@ -621,7 +677,10 @@ static bool ImGui_ImplOSX_HandleEvent(NSEvent* event, NSView* view) { int button = (int)[event buttonNumber]; if (button >= 0 && button < ImGuiMouseButton_COUNT) + { + io.AddMouseSourceEvent(GetMouseSource(event)); io.AddMouseButtonEvent(button, false); + } return io.WantCaptureMouse; } @@ -636,11 +695,15 @@ static bool ImGui_ImplOSX_HandleEvent(NSEvent* event, NSView* view) else { mousePoint = event.locationInWindow; + if (event.window == nil) + mousePoint = [[view window] convertPointFromScreen:mousePoint]; mousePoint = [view convertPoint:mousePoint fromView:nil]; // Convert to local coordinates of view - CGSize size = view.bounds.size; - mousePoint.y = size.height - mousePoint.y; + if ([view isFlipped]) + mousePoint = NSMakePoint(mousePoint.x, mousePoint.y); + else + mousePoint = NSMakePoint(mousePoint.x, view.bounds.size.height - mousePoint.y); } - + io.AddMouseSourceEvent(GetMouseSource(event)); io.AddMousePosEvent((float)mousePoint.x, (float)mousePoint.y); return io.WantCaptureMouse; } @@ -672,18 +735,18 @@ static bool ImGui_ImplOSX_HandleEvent(NSEvent* event, NSView* view) wheel_dy = [event scrollingDeltaY]; if ([event hasPreciseScrollingDeltas]) { - wheel_dx *= 0.1; - wheel_dy *= 0.1; + wheel_dx *= 0.01; + wheel_dy *= 0.01; } } else #endif // MAC_OS_X_VERSION_MAX_ALLOWED { - wheel_dx = [event deltaX]; - wheel_dy = [event deltaY]; + wheel_dx = [event deltaX] * 0.1; + wheel_dy = [event deltaY] * 0.1; } if (wheel_dx != 0.0 || wheel_dy != 0.0) - io.AddMouseWheelEvent((float)wheel_dx * 0.1f, (float)wheel_dy * 0.1f); + io.AddMouseWheelEvent((float)wheel_dx, (float)wheel_dy); return io.WantCaptureMouse; } @@ -706,10 +769,10 @@ static bool ImGui_ImplOSX_HandleEvent(NSEvent* event, NSView* view) unsigned short key_code = [event keyCode]; NSEventModifierFlags modifier_flags = [event modifierFlags]; - io.AddKeyEvent(ImGuiKey_ModShift, (modifier_flags & NSEventModifierFlagShift) != 0); - io.AddKeyEvent(ImGuiKey_ModCtrl, (modifier_flags & NSEventModifierFlagControl) != 0); - io.AddKeyEvent(ImGuiKey_ModAlt, (modifier_flags & NSEventModifierFlagOption) != 0); - io.AddKeyEvent(ImGuiKey_ModSuper, (modifier_flags & NSEventModifierFlagCommand) != 0); + io.AddKeyEvent(ImGuiMod_Shift, (modifier_flags & NSEventModifierFlagShift) != 0); + io.AddKeyEvent(ImGuiMod_Ctrl, (modifier_flags & NSEventModifierFlagControl) != 0); + io.AddKeyEvent(ImGuiMod_Alt, (modifier_flags & NSEventModifierFlagOption) != 0); + io.AddKeyEvent(ImGuiMod_Super, (modifier_flags & NSEventModifierFlagCommand) != 0); ImGuiKey key = ImGui_ImplOSX_KeyCodeToImGuiKey(key_code); if (key != ImGuiKey_None) @@ -796,7 +859,7 @@ struct ImGuiViewportDataOSX static void ConvertNSRect(NSScreen* screen, NSRect* r) { - r->origin.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - r->origin.y - r->size.height; + r->origin.y = screen.frame.size.height - r->origin.y - r->size.height; } static void ImGui_ImplOSX_CreateWindow(ImGuiViewport* viewport) @@ -855,7 +918,7 @@ static void ImGui_ImplOSX_DestroyWindow(ImGuiViewport* viewport) data->Window = nil; IM_DELETE(data); } - viewport->PlatformUserData = viewport->PlatformHandle = viewport->PlatformHandleRaw = NULL; + viewport->PlatformUserData = viewport->PlatformHandle = viewport->PlatformHandleRaw = nullptr; } static void ImGui_ImplOSX_ShowWindow(ImGuiViewport* viewport) @@ -904,7 +967,7 @@ static ImVec2 ImGui_ImplOSX_GetWindowSize(ImGuiViewport* viewport) NSWindow* window = data->Window; NSSize size = window.contentLayoutRect.size; - return ImVec2(size.width, size.width); + return ImVec2(size.width, size.height); } static void ImGui_ImplOSX_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) @@ -985,6 +1048,7 @@ static void ImGui_ImplOSX_UpdateMonitors() imgui_monitor.WorkPos = ImVec2(visibleFrame.origin.x, visibleFrame.origin.y); imgui_monitor.WorkSize = ImVec2(visibleFrame.size.width, visibleFrame.size.height); imgui_monitor.DpiScale = screen.backingScaleFactor; + imgui_monitor.PlatformHandle = (__bridge_retained void*)screen; platform_io.Monitors.push_back(imgui_monitor); } @@ -1031,17 +1095,17 @@ static void ImGui_ImplOSX_ShutdownPlatformInterface() [NSNotificationCenter.defaultCenter removeObserver:bd->Observer name:NSApplicationDidChangeScreenParametersNotification object:nil]; - bd->Observer = NULL; - bd->Window = NULL; - if (bd->Monitor != NULL) + bd->Observer = nullptr; + bd->Window = nullptr; + if (bd->Monitor != nullptr) { [NSEvent removeMonitor:bd->Monitor]; - bd->Monitor = NULL; + bd->Monitor = nullptr; } ImGuiViewport* main_viewport = ImGui::GetMainViewport(); ImGuiViewportDataOSX* data = (ImGuiViewportDataOSX*)main_viewport->PlatformUserData; IM_DELETE(data); - main_viewport->PlatformUserData = NULL; + main_viewport->PlatformUserData = nullptr; ImGui::DestroyPlatformWindows(); } diff --git a/extern/imgui_patched/backends/imgui_impl_sdl.cpp b/extern/imgui_patched/backends/imgui_impl_sdl2.cpp similarity index 83% rename from extern/imgui_patched/backends/imgui_impl_sdl.cpp rename to extern/imgui_patched/backends/imgui_impl_sdl2.cpp index 499676fc..ccf8ec86 100644 --- a/extern/imgui_patched/backends/imgui_impl_sdl.cpp +++ b/extern/imgui_patched/backends/imgui_impl_sdl2.cpp @@ -5,13 +5,14 @@ // Implemented features: // [X] Platform: Clipboard support. +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen. // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy SDL_SCANCODE_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. // [X] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // Missing features: -// [ ] Platform: SDL2 handling of IME under Windows appears to be broken and it explicitly disable the regular Windows IME. You can restore Windows IME by compiling SDL with SDL_DISABLE_WINDOWS_IME. // [ ] Platform: Multi-viewport + Minimized windows seems to break mouse wheel events (at least under Windows). +// [x] Platform: Basic IME support. App needs to call 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1");' before SDL_CreateWindow()!. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. @@ -20,7 +21,19 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-04-06: Inputs: Avoid calling SDL_StartTextInput()/SDL_StopTextInput() as they don't only pertain to IME. It's unclear exactly what their relation is to IME. (#6306) +// 2023-04-04: Inputs: Added support for io.AddMouseSourceEvent() to discriminate ImGuiMouseSource_Mouse/ImGuiMouseSource_TouchScreen. (#2702) +// 2023-02-23: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) +// 2023-02-07: Implement IME handler (io.SetPlatformImeDataFn will call SDL_SetTextInputRect()/SDL_StartTextInput()). +// 2023-02-07: *BREAKING CHANGE* Renamed this backend file from imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h in prevision for the future release of SDL3. +// 2023-02-02: Avoid calling SDL_SetCursor() when cursor has not changed, as the function is surprisingly costly on Mac with latest SDL (may be fixed in next SDL version). +// 2023-02-02: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + Scaling X value on Emscripten (bug?). (#4019, #6096) +// 2023-02-02: Removed SDL_MOUSEWHEEL value clamping, as values seem correct in latest Emscripten. (#4019) +// 2023-02-01: Flipping SDL_MOUSEWHEEL 'wheel.x' value to match other backends and offer consistent horizontal scrolling direction. (#4019, #6096, #1463) +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. +// 2022-09-26: Inputs: Disable SDL 2.0.22 new "auto capture" (SDL_HINT_MOUSE_AUTO_CAPTURE) which prevents drag and drop across windows for multi-viewport support + don't capture when drag and dropping. (#5710) +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). // 2022-03-22: Inputs: Fix mouse position issues when dragging outside of boundaries. SDL_CaptureMouse() erroneously still gives out LEAVE events when hovering OS decorations. // 2022-03-22: Inputs: Added support for extra mouse buttons (SDL_BUTTON_X1/SDL_BUTTON_X2). // 2022-02-04: Added SDL_Renderer* parameter to ImGui_ImplSDL2_InitForSDLRenderer(), so we can use SDL_GetRendererOutputSize() instead of SDL_GL_GetDrawableSize() when bound to a SDL_Renderer. @@ -64,10 +77,16 @@ // 2016-10-15: Misc: Added a void* user_data parameter to Clipboard function handlers. #include "imgui.h" -#include "imgui_impl_sdl.h" +#include "imgui_impl_sdl2.h" #include #include +// Clang warnings with -Weverything +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-int-float-conversion" // warning: implicit conversion from 'xxx' to 'float' may lose precision +#endif + // SDL // (the multi-viewports feature requires SDL features supported from SDL 2.0.4+. SDL 2.0.5+ is highly recommended) #include @@ -84,12 +103,12 @@ extern "C" { #else #define SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE 0 #endif -#define SDL_HAS_MOUSE_FOCUS_CLICKTHROUGH SDL_VERSION_ATLEAST(2,0,5) #define SDL_HAS_WINDOW_ALPHA SDL_VERSION_ATLEAST(2,0,5) #define SDL_HAS_ALWAYS_ON_TOP SDL_VERSION_ATLEAST(2,0,5) #define SDL_HAS_USABLE_DISPLAY_BOUNDS SDL_VERSION_ATLEAST(2,0,5) #define SDL_HAS_PER_MONITOR_DPI SDL_VERSION_ATLEAST(2,0,4) #define SDL_HAS_VULKAN SDL_VERSION_ATLEAST(2,0,6) +#define SDL_HAS_DISPLAY_EVENT SDL_VERSION_ATLEAST(2,0,9) #if !SDL_HAS_VULKAN static const Uint32 SDL_WINDOW_VULKAN = 0x10000000; #endif @@ -103,10 +122,13 @@ struct ImGui_ImplSDL2_Data Uint32 MouseWindowID; int MouseButtonsDown; SDL_Cursor* MouseCursors[ImGuiMouseCursor_COUNT]; + SDL_Cursor* LastMouseCursor; int PendingMouseLeaveFrame; char* ClipboardTextData; bool MouseCanUseGlobalState; + bool MouseCanReportHoveredViewport; // This is hard to use/unreliable on SDL so we'll set ImGuiBackendFlags_HasMouseHoveredViewport dynamically based on state. bool UseVulkan; + bool WantUpdateMonitors; ImGui_ImplSDL2_Data() { memset((void*)this, 0, sizeof(*this)); } }; @@ -117,7 +139,7 @@ struct ImGui_ImplSDL2_Data // FIXME: some shared resources (mouse cursor shape, gamepad) are mishandled when using multi-context. static ImGui_ImplSDL2_Data* ImGui_ImplSDL2_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplSDL2_Data*)ImGui::GetIO().BackendPlatformUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplSDL2_Data*)ImGui::GetIO().BackendPlatformUserData : nullptr; } // Forward Declarations @@ -140,6 +162,20 @@ static void ImGui_ImplSDL2_SetClipboardText(void*, const char* text) SDL_SetClipboardText(text); } +// Note: native IME will only display if user calls SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1") _before_ SDL_CreateWindow(). +static void ImGui_ImplSDL2_SetPlatformImeData(ImGuiViewport* viewport, ImGuiPlatformImeData* data) +{ + if (data->WantVisible) + { + SDL_Rect r; + r.x = (int)(data->InputPos.x - viewport->Pos.x); + r.y = (int)(data->InputPos.y - viewport->Pos.y + data->InputLineHeight); + r.w = 1; + r.h = (int)data->InputLineHeight; + SDL_SetTextInputRect(&r); + } +} + static ImGuiKey ImGui_ImplSDL2_KeycodeToImGuiKey(int keycode) { switch (keycode) @@ -256,10 +292,10 @@ static ImGuiKey ImGui_ImplSDL2_KeycodeToImGuiKey(int keycode) static void ImGui_ImplSDL2_UpdateKeyModifiers(SDL_Keymod sdl_key_mods) { ImGuiIO& io = ImGui::GetIO(); - io.AddKeyEvent(ImGuiKey_ModCtrl, (sdl_key_mods & KMOD_CTRL) != 0); - io.AddKeyEvent(ImGuiKey_ModShift, (sdl_key_mods & KMOD_SHIFT) != 0); - io.AddKeyEvent(ImGuiKey_ModAlt, (sdl_key_mods & KMOD_ALT) != 0); - io.AddKeyEvent(ImGuiKey_ModSuper, (sdl_key_mods & KMOD_GUI) != 0); + io.AddKeyEvent(ImGuiMod_Ctrl, (sdl_key_mods & KMOD_CTRL) != 0); + io.AddKeyEvent(ImGuiMod_Shift, (sdl_key_mods & KMOD_SHIFT) != 0); + io.AddKeyEvent(ImGuiMod_Alt, (sdl_key_mods & KMOD_ALT) != 0); + io.AddKeyEvent(ImGuiMod_Super, (sdl_key_mods & KMOD_GUI) != 0); } // You can read the io.WantCaptureMouse, io.WantCaptureKeyboard flags to tell if dear imgui wants to use your inputs. @@ -293,16 +329,27 @@ bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event) mouse_pos.x *= std::ceil(platform_io.Monitors[0].DpiScale); mouse_pos.y *= std::ceil(platform_io.Monitors[0].DpiScale); } + io.AddMouseSourceEvent(event->motion.which == SDL_TOUCH_MOUSEID ? ImGuiMouseSource_TouchScreen : ImGuiMouseSource_Mouse); io.AddMousePosEvent(mouse_pos.x, mouse_pos.y); return true; } case SDL_MOUSEWHEEL: { - float wheel_x = (event->wheel.x > 0) ? 1.0f : (event->wheel.x < 0) ? -1.0f : 0.0f; - float wheel_y = (event->wheel.y > 0) ? 1.0f : (event->wheel.y < 0) ? -1.0f : 0.0f; + //IMGUI_DEBUG_LOG("wheel %.2f %.2f, precise %.2f %.2f\n", (float)event->wheel.x, (float)event->wheel.y, event->wheel.preciseX, event->wheel.preciseY); +#if SDL_VERSION_ATLEAST(2,0,18) // If this fails to compile on Emscripten: update to latest Emscripten! + float wheel_x = -event->wheel.preciseX; + float wheel_y = event->wheel.preciseY; +#else + float wheel_x = -(float)event->wheel.x; + float wheel_y = (float)event->wheel.y; +#endif +#ifdef __EMSCRIPTEN__ + wheel_x /= 100.0f; +#endif #ifdef __APPLE__ wheel_x = -wheel_x; #endif + io.AddMouseSourceEvent(event->wheel.which == SDL_TOUCH_MOUSEID ? ImGuiMouseSource_TouchScreen : ImGuiMouseSource_Mouse); io.AddMouseWheelEvent(wheel_x, wheel_y); return true; } @@ -317,6 +364,7 @@ bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event) if (event->button.button == SDL_BUTTON_X2) { mouse_button = 4; } if (mouse_button == -1) break; + io.AddMouseSourceEvent(event->button.which == SDL_TOUCH_MOUSEID ? ImGuiMouseSource_TouchScreen : ImGuiMouseSource_Mouse); io.AddMouseButtonEvent(mouse_button, (event->type == SDL_MOUSEBUTTONDOWN)); bd->MouseButtonsDown = (event->type == SDL_MOUSEBUTTONDOWN) ? (bd->MouseButtonsDown | (1 << mouse_button)) : (bd->MouseButtonsDown & ~(1 << mouse_button)); return true; @@ -335,6 +383,15 @@ bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event) io.SetKeyEventNativeData(key, event->key.keysym.sym, event->key.keysym.scancode, event->key.keysym.scancode); // To support legacy indexing (<1.87 user code). Legacy backend uses SDLK_*** as indices to IsKeyXXX() functions. return true; } +#if SDL_HAS_DISPLAY_EVENT + case SDL_DISPLAYEVENT: + { + // 2.0.26 has SDL_DISPLAYEVENT_CONNECTED/SDL_DISPLAYEVENT_DISCONNECTED/SDL_DISPLAYEVENT_ORIENTATION, + // so change of DPI/Scaling are not reflected in this event. (SDL3 has it) + bd->WantUpdateMonitors = true; + return true; + } +#endif case SDL_WINDOWEVENT: { // - When capturing mouse, SDL will send a bunch of conflicting LEAVE/ENTER event on every mouse move, but the final ENTER tends to be right. @@ -374,7 +431,7 @@ bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event) static bool ImGui_ImplSDL2_Init(SDL_Window* window, SDL_Renderer* renderer, void* sdl_gl_context) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendPlatformUserData == NULL && "Already initialized a platform backend!"); + IM_ASSERT(io.BackendPlatformUserData == nullptr && "Already initialized a platform backend!"); // Check and store if we are on a SDL backend that supports global mouse position // ("wayland" and "rpi" don't support it, but we chose to use a white-list instead of a black-list) @@ -390,25 +447,29 @@ static bool ImGui_ImplSDL2_Init(SDL_Window* window, SDL_Renderer* renderer, void // Setup backend capabilities flags ImGui_ImplSDL2_Data* bd = IM_NEW(ImGui_ImplSDL2_Data)(); io.BackendPlatformUserData = (void*)bd; - io.BackendPlatformName = "imgui_impl_sdl"; + io.BackendPlatformName = "imgui_impl_sdl2"; io.BackendFlags |= ImGuiBackendFlags_HasMouseCursors; // We can honor GetMouseCursor() values (optional) io.BackendFlags |= ImGuiBackendFlags_HasSetMousePos; // We can honor io.WantSetMousePos requests (optional, rarely used) if (mouse_can_use_global_state) io.BackendFlags |= ImGuiBackendFlags_PlatformHasViewports; // We can create multi-viewports on the Platform side (optional) - // SDL on Linux/OSX doesn't report events for unfocused windows (see https://github.com/ocornut/imgui/issues/4960) -#ifndef __APPLE__ - if (mouse_can_use_global_state) - io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport;// We can call io.AddMouseViewportEvent() with correct data (optional) -#endif - bd->Window = window; bd->Renderer = renderer; + + // SDL on Linux/OSX doesn't report events for unfocused windows (see https://github.com/ocornut/imgui/issues/4960) + // We will use 'MouseCanReportHoveredViewport' to set 'ImGuiBackendFlags_HasMouseHoveredViewport' dynamically each frame. bd->MouseCanUseGlobalState = mouse_can_use_global_state; +#ifndef __APPLE__ + bd->MouseCanReportHoveredViewport = bd->MouseCanUseGlobalState; +#else + bd->MouseCanReportHoveredViewport = false; +#endif + bd->WantUpdateMonitors = true; io.SetClipboardTextFn = ImGui_ImplSDL2_SetClipboardText; io.GetClipboardTextFn = ImGui_ImplSDL2_GetClipboardText; - io.ClipboardUserData = NULL; + io.ClipboardUserData = nullptr; + io.SetPlatformImeDataFn = ImGui_ImplSDL2_SetPlatformImeData; // Load mouse cursors bd->MouseCursors[ImGuiMouseCursor_Arrow] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_ARROW); @@ -425,24 +486,38 @@ static bool ImGui_ImplSDL2_Init(SDL_Window* window, SDL_Renderer* renderer, void // Our mouse update function expect PlatformHandle to be filled for the main viewport ImGuiViewport* main_viewport = ImGui::GetMainViewport(); main_viewport->PlatformHandle = (void*)window; -#ifdef _WIN32 + main_viewport->PlatformHandleRaw = nullptr; SDL_SysWMinfo info; SDL_VERSION(&info.version); if (SDL_GetWindowWMInfo(window, &info)) + { +#if defined(SDL_VIDEO_DRIVER_WINDOWS) main_viewport->PlatformHandleRaw = (void*)info.info.win.window; +#elif defined(__APPLE__) && defined(SDL_VIDEO_DRIVER_COCOA) + main_viewport->PlatformHandleRaw = (void*)info.info.cocoa.window; #endif + } - // Set SDL hint to receive mouse click events on window focus, otherwise SDL doesn't emit the event. + // From 2.0.5: Set SDL hint to receive mouse click events on window focus, otherwise SDL doesn't emit the event. // Without this, when clicking to gain focus, our widgets wouldn't activate even though they showed as hovered. // (This is unfortunately a global SDL setting, so enabling it might have a side-effect on your application. // It is unlikely to make a difference, but if your app absolutely needs to ignore the initial on-focus click: // you can ignore SDL_MOUSEBUTTONDOWN events coming right after a SDL_WINDOWEVENT_FOCUS_GAINED) -#if SDL_HAS_MOUSE_FOCUS_CLICKTHROUGH +#ifdef SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH SDL_SetHint(SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH, "1"); #endif - // Update monitors - ImGui_ImplSDL2_UpdateMonitors(); + // From 2.0.18: Enable native IME. + // IMPORTANT: This is used at the time of SDL_CreateWindow() so this will only affects secondary windows, if any. + // For the main window to be affected, your application needs to call this manually before calling SDL_CreateWindow(). +#ifdef SDL_HINT_IME_SHOW_UI + SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1"); +#endif + + // From 2.0.22: Disable auto-capture, this is preventing drag and drop across multiple windows (see #5710) +#ifdef SDL_HINT_MOUSE_AUTO_CAPTURE + SDL_SetHint(SDL_HINT_MOUSE_AUTO_CAPTURE, "0"); +#endif // We need SDL_CaptureMouse(), SDL_GetGlobalMouseState() from SDL 2.0.4+ to support multiple viewports. // We left the call to ImGui_ImplSDL2_InitPlatformInterface() outside of #ifdef to avoid unused-function warnings. @@ -454,7 +529,7 @@ static bool ImGui_ImplSDL2_Init(SDL_Window* window, SDL_Renderer* renderer, void bool ImGui_ImplSDL2_InitForOpenGL(SDL_Window* window, void* sdl_gl_context) { - return ImGui_ImplSDL2_Init(window, NULL, sdl_gl_context); + return ImGui_ImplSDL2_Init(window, nullptr, sdl_gl_context); } bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window) @@ -462,7 +537,7 @@ bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window) #if !SDL_HAS_VULKAN IM_ASSERT(0 && "Unsupported"); #endif - if (!ImGui_ImplSDL2_Init(window, NULL, NULL)) + if (!ImGui_ImplSDL2_Init(window, nullptr, nullptr)) return false; ImGui_ImplSDL2_Data* bd = ImGui_ImplSDL2_GetBackendData(); bd->UseVulkan = true; @@ -474,23 +549,23 @@ bool ImGui_ImplSDL2_InitForD3D(SDL_Window* window) #if !defined(_WIN32) IM_ASSERT(0 && "Unsupported"); #endif - return ImGui_ImplSDL2_Init(window, NULL, NULL); + return ImGui_ImplSDL2_Init(window, nullptr, nullptr); } bool ImGui_ImplSDL2_InitForMetal(SDL_Window* window) { - return ImGui_ImplSDL2_Init(window, NULL, NULL); + return ImGui_ImplSDL2_Init(window, nullptr, nullptr); } bool ImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window, SDL_Renderer* renderer) { - return ImGui_ImplSDL2_Init(window, renderer, NULL); + return ImGui_ImplSDL2_Init(window, renderer, nullptr); } void ImGui_ImplSDL2_Shutdown() { ImGui_ImplSDL2_Data* bd = ImGui_ImplSDL2_GetBackendData(); - IM_ASSERT(bd != NULL && "No platform backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No platform backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplSDL2_ShutdownPlatformInterface(); @@ -499,9 +574,11 @@ void ImGui_ImplSDL2_Shutdown() SDL_free(bd->ClipboardTextData); for (ImGuiMouseCursor cursor_n = 0; cursor_n < ImGuiMouseCursor_COUNT; cursor_n++) SDL_FreeCursor(bd->MouseCursors[cursor_n]); + bd->LastMouseCursor = nullptr; - io.BackendPlatformName = NULL; - io.BackendPlatformUserData = NULL; + io.BackendPlatformName = nullptr; + io.BackendPlatformUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_HasMouseCursors | ImGuiBackendFlags_HasSetMousePos | ImGuiBackendFlags_HasGamepad | ImGuiBackendFlags_PlatformHasViewports | ImGuiBackendFlags_HasMouseHoveredViewport); IM_DELETE(bd); } @@ -514,7 +591,7 @@ static void ImGui_ImplSDL2_UpdateMouseData() // We forward mouse input when hovered or captured (via SDL_MOUSEMOTION) or when focused (below) #if SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE // SDL_CaptureMouse() let the OS know e.g. that our imgui drag outside the SDL window boundaries shouldn't e.g. trigger other operations outside - SDL_CaptureMouse(bd->MouseButtonsDown != 0 ? SDL_TRUE : SDL_FALSE); + SDL_CaptureMouse((bd->MouseButtonsDown != 0) ? SDL_TRUE : SDL_FALSE); SDL_Window* focused_window = SDL_GetKeyboardFocus(); const bool is_app_focused = (focused_window && (bd->Window == focused_window || ImGui::FindViewportByPlatformHandle((void*)focused_window))); #else @@ -593,7 +670,12 @@ static void ImGui_ImplSDL2_UpdateMouseCursor() else { // Show OS mouse cursor - SDL_SetCursor(bd->MouseCursors[imgui_cursor] ? bd->MouseCursors[imgui_cursor] : bd->MouseCursors[ImGuiMouseCursor_Arrow]); + SDL_Cursor* expected_cursor = bd->MouseCursors[imgui_cursor] ? bd->MouseCursors[imgui_cursor] : bd->MouseCursors[ImGuiMouseCursor_Arrow]; + if (bd->LastMouseCursor != expected_cursor) + { + SDL_SetCursor(expected_cursor); // SDL function doesn't have an early out (see #6113) + bd->LastMouseCursor = expected_cursor; + } SDL_ShowCursor(SDL_TRUE); } } @@ -601,7 +683,7 @@ static void ImGui_ImplSDL2_UpdateMouseCursor() static void ImGui_ImplSDL2_UpdateGamepads() { ImGuiIO& io = ImGui::GetIO(); - if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) + if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) // FIXME: Technically feeding gamepad shouldn't depend on this now that they are regular inputs. return; // Get gamepad @@ -618,10 +700,10 @@ static void ImGui_ImplSDL2_UpdateGamepads() const int thumb_dead_zone = 8000; // SDL_gamecontroller.h suggests using this value. MAP_BUTTON(ImGuiKey_GamepadStart, SDL_CONTROLLER_BUTTON_START); MAP_BUTTON(ImGuiKey_GamepadBack, SDL_CONTROLLER_BUTTON_BACK); - MAP_BUTTON(ImGuiKey_GamepadFaceDown, SDL_CONTROLLER_BUTTON_A); // Xbox A, PS Cross - MAP_BUTTON(ImGuiKey_GamepadFaceRight, SDL_CONTROLLER_BUTTON_B); // Xbox B, PS Circle MAP_BUTTON(ImGuiKey_GamepadFaceLeft, SDL_CONTROLLER_BUTTON_X); // Xbox X, PS Square + MAP_BUTTON(ImGuiKey_GamepadFaceRight, SDL_CONTROLLER_BUTTON_B); // Xbox B, PS Circle MAP_BUTTON(ImGuiKey_GamepadFaceUp, SDL_CONTROLLER_BUTTON_Y); // Xbox Y, PS Triangle + MAP_BUTTON(ImGuiKey_GamepadFaceDown, SDL_CONTROLLER_BUTTON_A); // Xbox A, PS Cross MAP_BUTTON(ImGuiKey_GamepadDpadLeft, SDL_CONTROLLER_BUTTON_DPAD_LEFT); MAP_BUTTON(ImGuiKey_GamepadDpadRight, SDL_CONTROLLER_BUTTON_DPAD_RIGHT); MAP_BUTTON(ImGuiKey_GamepadDpadUp, SDL_CONTROLLER_BUTTON_DPAD_UP); @@ -644,11 +726,13 @@ static void ImGui_ImplSDL2_UpdateGamepads() #undef MAP_ANALOG } -// FIXME-PLATFORM: SDL doesn't have an event to notify the application of display/monitor changes +// FIXME: Note that doesn't update with DPI/Scaling change only as SDL2 doesn't have an event for it (SDL3 has). static void ImGui_ImplSDL2_UpdateMonitors() { + ImGui_ImplSDL2_Data* bd = ImGui_ImplSDL2_GetBackendData(); ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); platform_io.Monitors.resize(0); + bd->WantUpdateMonitors = false; int display_count = SDL_GetNumVideoDisplays(); for (int n = 0; n < display_count; n++) { @@ -666,6 +750,7 @@ static void ImGui_ImplSDL2_UpdateMonitors() #if SDL_HAS_PER_MONITOR_DPI monitor.DpiScale = 1.0f; #endif + monitor.PlatformHandle = (void*)(intptr_t)n; platform_io.Monitors.push_back(monitor); } } @@ -673,7 +758,7 @@ static void ImGui_ImplSDL2_UpdateMonitors() void ImGui_ImplSDL2_NewFrame() { ImGui_ImplSDL2_Data* bd = ImGui_ImplSDL2_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplSDL2_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplSDL2_Init()?"); ImGuiIO& io = ImGui::GetIO(); // Setup display size (every frame to accommodate for window resizing) @@ -695,6 +780,11 @@ void ImGui_ImplSDL2_NewFrame() io.DisplayFramebufferScale = ImVec2((float)display_w / w, (float)display_h / h); } + // TODO: is this before, or after? + // Update monitors + if (bd->WantUpdateMonitors) + ImGui_ImplSDL2_UpdateMonitors(); + // On Apple and Wayland, The window size is reported in Low DPI, even when running in high DPI mode ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); if (!platform_io.Monitors.empty() /*&& platform_io.Monitors[0].DpiScale > 1.0f*/ && display_h != h && w != 0 && display_w != 0) @@ -706,8 +796,11 @@ void ImGui_ImplSDL2_NewFrame() } // Setup time step (we don't use SDL_GetTicks() because it is using millisecond resolution) + // (Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. Happens in VMs and Emscripten, see #6189, #6114, #3644) static Uint64 frequency = SDL_GetPerformanceFrequency(); Uint64 current_time = SDL_GetPerformanceCounter(); + if (current_time <= bd->Time) + current_time = bd->Time + 1; io.DeltaTime = bd->Time > 0 ? (float)((double)(current_time - bd->Time) / frequency) : (float)(1.0f / 60.0f); bd->Time = current_time; @@ -718,6 +811,13 @@ void ImGui_ImplSDL2_NewFrame() io.AddMousePosEvent(-FLT_MAX, -FLT_MAX); } + // Our io.AddMouseViewportEvent() calls will only be valid when not capturing. + // Technically speaking testing for 'bd->MouseButtonsDown == 0' would be more rygorous, but testing for payload reduces noise and potential side-effects. + if (bd->MouseCanReportHoveredViewport && ImGui::GetDragDropPayload() == nullptr) + io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport; + else + io.BackendFlags &= ~ImGuiBackendFlags_HasMouseHoveredViewport; + ImGui_ImplSDL2_UpdateMouseData(); ImGui_ImplSDL2_UpdateMouseCursor(); @@ -731,7 +831,7 @@ void ImGui_ImplSDL2_NewFrame() // If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. //-------------------------------------------------------------------------------------------------------- -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplSDL2_ViewportData { SDL_Window* Window; @@ -739,8 +839,8 @@ struct ImGui_ImplSDL2_ViewportData bool WindowOwned; SDL_GLContext GLContext; - ImGui_ImplSDL2_ViewportData() { Window = NULL; WindowID = 0; WindowOwned = false; GLContext = NULL; } - ~ImGui_ImplSDL2_ViewportData() { IM_ASSERT(Window == NULL && GLContext == NULL); } + ImGui_ImplSDL2_ViewportData() { Window = nullptr; WindowID = 0; WindowOwned = false; GLContext = nullptr; } + ~ImGui_ImplSDL2_ViewportData() { IM_ASSERT(Window == nullptr && GLContext == nullptr); } }; static void ImGui_ImplSDL2_CreateWindow(ImGuiViewport* viewport) @@ -753,8 +853,8 @@ static void ImGui_ImplSDL2_CreateWindow(ImGuiViewport* viewport) ImGui_ImplSDL2_ViewportData* main_viewport_data = (ImGui_ImplSDL2_ViewportData*)main_viewport->PlatformUserData; // Share GL resources with main context - bool use_opengl = (main_viewport_data->GLContext != NULL); - SDL_GLContext backup_context = NULL; + bool use_opengl = (main_viewport_data->GLContext != nullptr); + SDL_GLContext backup_context = nullptr; if (use_opengl) { backup_context = SDL_GL_GetCurrentContext(); @@ -786,12 +886,17 @@ static void ImGui_ImplSDL2_CreateWindow(ImGuiViewport* viewport) SDL_GL_MakeCurrent(vd->Window, backup_context); viewport->PlatformHandle = (void*)vd->Window; -#if defined(_WIN32) + viewport->PlatformHandleRaw = nullptr; SDL_SysWMinfo info; SDL_VERSION(&info.version); if (SDL_GetWindowWMInfo(vd->Window, &info)) + { +#if defined(SDL_VIDEO_DRIVER_WINDOWS) viewport->PlatformHandleRaw = info.info.win.window; +#elif defined(__APPLE__) && defined(SDL_VIDEO_DRIVER_COCOA) + viewport->PlatformHandleRaw = (void*)info.info.cocoa.window; #endif + } } static void ImGui_ImplSDL2_DestroyWindow(ImGuiViewport* viewport) @@ -802,11 +907,11 @@ static void ImGui_ImplSDL2_DestroyWindow(ImGuiViewport* viewport) SDL_GL_DeleteContext(vd->GLContext); if (vd->Window && vd->WindowOwned) SDL_DestroyWindow(vd->Window); - vd->GLContext = NULL; - vd->Window = NULL; + vd->GLContext = nullptr; + vd->Window = nullptr; IM_DELETE(vd); } - viewport->PlatformUserData = viewport->PlatformHandle = NULL; + viewport->PlatformUserData = viewport->PlatformHandle = nullptr; } static void ImGui_ImplSDL2_ShowWindow(ImGuiViewport* viewport) @@ -966,3 +1071,7 @@ static void ImGui_ImplSDL2_ShutdownPlatformInterface() { ImGui::DestroyPlatformWindows(); } + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/extern/imgui_patched/backends/imgui_impl_sdl.h b/extern/imgui_patched/backends/imgui_impl_sdl2.h similarity index 92% rename from extern/imgui_patched/backends/imgui_impl_sdl.h rename to extern/imgui_patched/backends/imgui_impl_sdl2.h index 92755414..1ca91b3a 100644 --- a/extern/imgui_patched/backends/imgui_impl_sdl.h +++ b/extern/imgui_patched/backends/imgui_impl_sdl2.h @@ -4,13 +4,14 @@ // Implemented features: // [X] Platform: Clipboard support. +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen. // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy SDL_SCANCODE_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. // [X] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'. // Missing features: -// [ ] Platform: SDL2 handling of IME under Windows appears to be broken and it explicitly disable the regular Windows IME. You can restore Windows IME by compiling SDL with SDL_DISABLE_WINDOWS_IME. // [ ] Platform: Multi-viewport + Minimized windows seems to break mouse wheel events (at least under Windows). +// [x] Platform: Basic IME support. App needs to call 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1");' before SDL_CreateWindow()!. // You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. diff --git a/extern/imgui_patched/backends/imgui_impl_sdl3.cpp b/extern/imgui_patched/backends/imgui_impl_sdl3.cpp new file mode 100644 index 00000000..47fe49f2 --- /dev/null +++ b/extern/imgui_patched/backends/imgui_impl_sdl3.cpp @@ -0,0 +1,949 @@ +// dear imgui: Platform Backend for SDL3 (*EXPERIMENTAL*) +// This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan..) +// (Info: SDL3 is a cross-platform general purpose library for handling windows, inputs, graphics context creation, etc.) +// (IMPORTANT: SDL 3.0.0 is NOT YET RELEASED. IT IS POSSIBLE THAT ITS SPECS/API WILL CHANGE BEFORE RELEASE) + +// Implemented features: +// [X] Platform: Clipboard support. +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen. +// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy SDL_SCANCODE_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] +// [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. +// [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. +// [x] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable' -> the OS animation effect when window gets created/destroyed is problematic. SDL2 backend doesn't have issue. +// Missing features: +// [ ] Platform: Multi-viewport + Minimized windows seems to break mouse wheel events (at least under Windows). +// [x] Platform: Basic IME support. Position somehow broken in SDL3 + app needs to call 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1");' before SDL_CreateWindow()!. + +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. +// If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. +// Read online: https://github.com/ocornut/imgui/tree/master/docs + +// CHANGELOG +// (minor and older changes stripped away, please see git history for details) +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-05-04: Fixed build on Emscripten/iOS/Android. (#6391) +// 2023-04-06: Inputs: Avoid calling SDL_StartTextInput()/SDL_StopTextInput() as they don't only pertain to IME. It's unclear exactly what their relation is to IME. (#6306) +// 2023-04-04: Inputs: Added support for io.AddMouseSourceEvent() to discriminate ImGuiMouseSource_Mouse/ImGuiMouseSource_TouchScreen. (#2702) +// 2023-02-23: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) +// 2023-02-07: Forked "imgui_impl_sdl2" into "imgui_impl_sdl3". Removed version checks for old feature. Refer to imgui_impl_sdl2.cpp for older changelog. + +#include "imgui.h" +#include "imgui_impl_sdl3.h" + +// Clang warnings with -Weverything +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-int-float-conversion" // warning: implicit conversion from 'xxx' to 'float' may lose precision +#endif + +// SDL +#include +#include +#if defined(__APPLE__) +#include +#endif + +#if !defined(__EMSCRIPTEN__) && !defined(__ANDROID__) && !(defined(__APPLE__) && TARGET_OS_IOS) && !defined(__amigaos4__) +#define SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE 1 +#else +#define SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE 0 +#endif + +// SDL Data +struct ImGui_ImplSDL3_Data +{ + SDL_Window* Window; + SDL_Renderer* Renderer; + Uint64 Time; + Uint32 MouseWindowID; + int MouseButtonsDown; + SDL_Cursor* MouseCursors[ImGuiMouseCursor_COUNT]; + SDL_Cursor* LastMouseCursor; + int PendingMouseLeaveFrame; + char* ClipboardTextData; + bool MouseCanUseGlobalState; + bool MouseCanReportHoveredViewport; // This is hard to use/unreliable on SDL so we'll set ImGuiBackendFlags_HasMouseHoveredViewport dynamically based on state. + bool UseVulkan; + bool WantUpdateMonitors; + + ImGui_ImplSDL3_Data() { memset((void*)this, 0, sizeof(*this)); } +}; + +// Backend data stored in io.BackendPlatformUserData to allow support for multiple Dear ImGui contexts +// It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. +// FIXME: multi-context support is not well tested and probably dysfunctional in this backend. +// FIXME: some shared resources (mouse cursor shape, gamepad) are mishandled when using multi-context. +static ImGui_ImplSDL3_Data* ImGui_ImplSDL3_GetBackendData() +{ + return ImGui::GetCurrentContext() ? (ImGui_ImplSDL3_Data*)ImGui::GetIO().BackendPlatformUserData : nullptr; +} + +// Forward Declarations +static void ImGui_ImplSDL3_UpdateMonitors(); +static void ImGui_ImplSDL3_InitPlatformInterface(SDL_Window* window, void* sdl_gl_context); +static void ImGui_ImplSDL3_ShutdownPlatformInterface(); + +// Functions +static const char* ImGui_ImplSDL3_GetClipboardText(void*) +{ + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + if (bd->ClipboardTextData) + SDL_free(bd->ClipboardTextData); + bd->ClipboardTextData = SDL_GetClipboardText(); + return bd->ClipboardTextData; +} + +static void ImGui_ImplSDL3_SetClipboardText(void*, const char* text) +{ + SDL_SetClipboardText(text); +} + +static void ImGui_ImplSDL3_SetPlatformImeData(ImGuiViewport* viewport, ImGuiPlatformImeData* data) +{ + if (data->WantVisible) + { + SDL_Rect r; + r.x = (int)(data->InputPos.x - viewport->Pos.x); + r.y = (int)(data->InputPos.y - viewport->Pos.y + data->InputLineHeight); + r.w = 1; + r.h = (int)data->InputLineHeight; + SDL_SetTextInputRect(&r); + } +} + +static ImGuiKey ImGui_ImplSDL3_KeycodeToImGuiKey(int keycode) +{ + switch (keycode) + { + case SDLK_TAB: return ImGuiKey_Tab; + case SDLK_LEFT: return ImGuiKey_LeftArrow; + case SDLK_RIGHT: return ImGuiKey_RightArrow; + case SDLK_UP: return ImGuiKey_UpArrow; + case SDLK_DOWN: return ImGuiKey_DownArrow; + case SDLK_PAGEUP: return ImGuiKey_PageUp; + case SDLK_PAGEDOWN: return ImGuiKey_PageDown; + case SDLK_HOME: return ImGuiKey_Home; + case SDLK_END: return ImGuiKey_End; + case SDLK_INSERT: return ImGuiKey_Insert; + case SDLK_DELETE: return ImGuiKey_Delete; + case SDLK_BACKSPACE: return ImGuiKey_Backspace; + case SDLK_SPACE: return ImGuiKey_Space; + case SDLK_RETURN: return ImGuiKey_Enter; + case SDLK_ESCAPE: return ImGuiKey_Escape; + case SDLK_QUOTE: return ImGuiKey_Apostrophe; + case SDLK_COMMA: return ImGuiKey_Comma; + case SDLK_MINUS: return ImGuiKey_Minus; + case SDLK_PERIOD: return ImGuiKey_Period; + case SDLK_SLASH: return ImGuiKey_Slash; + case SDLK_SEMICOLON: return ImGuiKey_Semicolon; + case SDLK_EQUALS: return ImGuiKey_Equal; + case SDLK_LEFTBRACKET: return ImGuiKey_LeftBracket; + case SDLK_BACKSLASH: return ImGuiKey_Backslash; + case SDLK_RIGHTBRACKET: return ImGuiKey_RightBracket; + case SDLK_BACKQUOTE: return ImGuiKey_GraveAccent; + case SDLK_CAPSLOCK: return ImGuiKey_CapsLock; + case SDLK_SCROLLLOCK: return ImGuiKey_ScrollLock; + case SDLK_NUMLOCKCLEAR: return ImGuiKey_NumLock; + case SDLK_PRINTSCREEN: return ImGuiKey_PrintScreen; + case SDLK_PAUSE: return ImGuiKey_Pause; + case SDLK_KP_0: return ImGuiKey_Keypad0; + case SDLK_KP_1: return ImGuiKey_Keypad1; + case SDLK_KP_2: return ImGuiKey_Keypad2; + case SDLK_KP_3: return ImGuiKey_Keypad3; + case SDLK_KP_4: return ImGuiKey_Keypad4; + case SDLK_KP_5: return ImGuiKey_Keypad5; + case SDLK_KP_6: return ImGuiKey_Keypad6; + case SDLK_KP_7: return ImGuiKey_Keypad7; + case SDLK_KP_8: return ImGuiKey_Keypad8; + case SDLK_KP_9: return ImGuiKey_Keypad9; + case SDLK_KP_PERIOD: return ImGuiKey_KeypadDecimal; + case SDLK_KP_DIVIDE: return ImGuiKey_KeypadDivide; + case SDLK_KP_MULTIPLY: return ImGuiKey_KeypadMultiply; + case SDLK_KP_MINUS: return ImGuiKey_KeypadSubtract; + case SDLK_KP_PLUS: return ImGuiKey_KeypadAdd; + case SDLK_KP_ENTER: return ImGuiKey_KeypadEnter; + case SDLK_KP_EQUALS: return ImGuiKey_KeypadEqual; + case SDLK_LCTRL: return ImGuiKey_LeftCtrl; + case SDLK_LSHIFT: return ImGuiKey_LeftShift; + case SDLK_LALT: return ImGuiKey_LeftAlt; + case SDLK_LGUI: return ImGuiKey_LeftSuper; + case SDLK_RCTRL: return ImGuiKey_RightCtrl; + case SDLK_RSHIFT: return ImGuiKey_RightShift; + case SDLK_RALT: return ImGuiKey_RightAlt; + case SDLK_RGUI: return ImGuiKey_RightSuper; + case SDLK_APPLICATION: return ImGuiKey_Menu; + case SDLK_0: return ImGuiKey_0; + case SDLK_1: return ImGuiKey_1; + case SDLK_2: return ImGuiKey_2; + case SDLK_3: return ImGuiKey_3; + case SDLK_4: return ImGuiKey_4; + case SDLK_5: return ImGuiKey_5; + case SDLK_6: return ImGuiKey_6; + case SDLK_7: return ImGuiKey_7; + case SDLK_8: return ImGuiKey_8; + case SDLK_9: return ImGuiKey_9; + case SDLK_a: return ImGuiKey_A; + case SDLK_b: return ImGuiKey_B; + case SDLK_c: return ImGuiKey_C; + case SDLK_d: return ImGuiKey_D; + case SDLK_e: return ImGuiKey_E; + case SDLK_f: return ImGuiKey_F; + case SDLK_g: return ImGuiKey_G; + case SDLK_h: return ImGuiKey_H; + case SDLK_i: return ImGuiKey_I; + case SDLK_j: return ImGuiKey_J; + case SDLK_k: return ImGuiKey_K; + case SDLK_l: return ImGuiKey_L; + case SDLK_m: return ImGuiKey_M; + case SDLK_n: return ImGuiKey_N; + case SDLK_o: return ImGuiKey_O; + case SDLK_p: return ImGuiKey_P; + case SDLK_q: return ImGuiKey_Q; + case SDLK_r: return ImGuiKey_R; + case SDLK_s: return ImGuiKey_S; + case SDLK_t: return ImGuiKey_T; + case SDLK_u: return ImGuiKey_U; + case SDLK_v: return ImGuiKey_V; + case SDLK_w: return ImGuiKey_W; + case SDLK_x: return ImGuiKey_X; + case SDLK_y: return ImGuiKey_Y; + case SDLK_z: return ImGuiKey_Z; + case SDLK_F1: return ImGuiKey_F1; + case SDLK_F2: return ImGuiKey_F2; + case SDLK_F3: return ImGuiKey_F3; + case SDLK_F4: return ImGuiKey_F4; + case SDLK_F5: return ImGuiKey_F5; + case SDLK_F6: return ImGuiKey_F6; + case SDLK_F7: return ImGuiKey_F7; + case SDLK_F8: return ImGuiKey_F8; + case SDLK_F9: return ImGuiKey_F9; + case SDLK_F10: return ImGuiKey_F10; + case SDLK_F11: return ImGuiKey_F11; + case SDLK_F12: return ImGuiKey_F12; + } + return ImGuiKey_None; +} + +static void ImGui_ImplSDL3_UpdateKeyModifiers(SDL_Keymod sdl_key_mods) +{ + ImGuiIO& io = ImGui::GetIO(); + io.AddKeyEvent(ImGuiMod_Ctrl, (sdl_key_mods & SDL_KMOD_CTRL) != 0); + io.AddKeyEvent(ImGuiMod_Shift, (sdl_key_mods & SDL_KMOD_SHIFT) != 0); + io.AddKeyEvent(ImGuiMod_Alt, (sdl_key_mods & SDL_KMOD_ALT) != 0); + io.AddKeyEvent(ImGuiMod_Super, (sdl_key_mods & SDL_KMOD_GUI) != 0); +} + +// You can read the io.WantCaptureMouse, io.WantCaptureKeyboard flags to tell if dear imgui wants to use your inputs. +// - When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application, or clear/overwrite your copy of the mouse data. +// - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application, or clear/overwrite your copy of the keyboard data. +// Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. +// If you have multiple SDL events and some of them are not meant to be used by dear imgui, you may need to filter events based on their windowID field. +bool ImGui_ImplSDL3_ProcessEvent(const SDL_Event* event) +{ + ImGuiIO& io = ImGui::GetIO(); + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + + switch (event->type) + { + case SDL_EVENT_MOUSE_MOTION: + { + ImVec2 mouse_pos((float)event->motion.x, (float)event->motion.y); + if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) + { + int window_x, window_y; + SDL_GetWindowPosition(SDL_GetWindowFromID(event->motion.windowID), &window_x, &window_y); + mouse_pos.x += window_x; + mouse_pos.y += window_y; + } + io.AddMouseSourceEvent(event->motion.which == SDL_TOUCH_MOUSEID ? ImGuiMouseSource_TouchScreen : ImGuiMouseSource_Mouse); + io.AddMousePosEvent(mouse_pos.x, mouse_pos.y); + return true; + } + case SDL_EVENT_MOUSE_WHEEL: + { + //IMGUI_DEBUG_LOG("wheel %.2f %.2f, precise %.2f %.2f\n", (float)event->wheel.x, (float)event->wheel.y, event->wheel.preciseX, event->wheel.preciseY); + float wheel_x = -event->wheel.x; + float wheel_y = event->wheel.y; + #ifdef __EMSCRIPTEN__ + wheel_x /= 100.0f; + #endif + io.AddMouseSourceEvent(event->wheel.which == SDL_TOUCH_MOUSEID ? ImGuiMouseSource_TouchScreen : ImGuiMouseSource_Mouse); + io.AddMouseWheelEvent(wheel_x, wheel_y); + return true; + } + case SDL_EVENT_MOUSE_BUTTON_DOWN: + case SDL_EVENT_MOUSE_BUTTON_UP: + { + int mouse_button = -1; + if (event->button.button == SDL_BUTTON_LEFT) { mouse_button = 0; } + if (event->button.button == SDL_BUTTON_RIGHT) { mouse_button = 1; } + if (event->button.button == SDL_BUTTON_MIDDLE) { mouse_button = 2; } + if (event->button.button == SDL_BUTTON_X1) { mouse_button = 3; } + if (event->button.button == SDL_BUTTON_X2) { mouse_button = 4; } + if (mouse_button == -1) + break; + io.AddMouseSourceEvent(event->button.which == SDL_TOUCH_MOUSEID ? ImGuiMouseSource_TouchScreen : ImGuiMouseSource_Mouse); + io.AddMouseButtonEvent(mouse_button, (event->type == SDL_EVENT_MOUSE_BUTTON_DOWN)); + bd->MouseButtonsDown = (event->type == SDL_EVENT_MOUSE_BUTTON_DOWN) ? (bd->MouseButtonsDown | (1 << mouse_button)) : (bd->MouseButtonsDown & ~(1 << mouse_button)); + return true; + } + case SDL_EVENT_TEXT_INPUT: + { + io.AddInputCharactersUTF8(event->text.text); + return true; + } + case SDL_EVENT_KEY_DOWN: + case SDL_EVENT_KEY_UP: + { + ImGui_ImplSDL3_UpdateKeyModifiers((SDL_Keymod)event->key.keysym.mod); + ImGuiKey key = ImGui_ImplSDL3_KeycodeToImGuiKey(event->key.keysym.sym); + io.AddKeyEvent(key, (event->type == SDL_EVENT_KEY_DOWN)); + io.SetKeyEventNativeData(key, event->key.keysym.sym, event->key.keysym.scancode, event->key.keysym.scancode); // To support legacy indexing (<1.87 user code). Legacy backend uses SDLK_*** as indices to IsKeyXXX() functions. + return true; + } + case SDL_EVENT_DISPLAY_ORIENTATION: + case SDL_EVENT_DISPLAY_CONNECTED: + case SDL_EVENT_DISPLAY_DISCONNECTED: + case SDL_EVENT_DISPLAY_MOVED: + case SDL_EVENT_DISPLAY_CONTENT_SCALE_CHANGED: + { + bd->WantUpdateMonitors = true; + return true; + } + case SDL_EVENT_WINDOW_MOUSE_ENTER: + { + bd->MouseWindowID = event->window.windowID; + bd->PendingMouseLeaveFrame = 0; + return true; + } + // - In some cases, when detaching a window from main viewport SDL may send SDL_WINDOWEVENT_ENTER one frame too late, + // causing SDL_WINDOWEVENT_LEAVE on previous frame to interrupt drag operation by clear mouse position. This is why + // we delay process the SDL_WINDOWEVENT_LEAVE events by one frame. See issue #5012 for details. + // FIXME: Unconfirmed whether this is still needed with SDL3. + case SDL_EVENT_WINDOW_MOUSE_LEAVE: + { + bd->PendingMouseLeaveFrame = ImGui::GetFrameCount() + 1; + return true; + } + case SDL_EVENT_WINDOW_FOCUS_GAINED: + io.AddFocusEvent(true); + return true; + case SDL_EVENT_WINDOW_FOCUS_LOST: + io.AddFocusEvent(false); + return true; + case SDL_EVENT_WINDOW_CLOSE_REQUESTED: + case SDL_EVENT_WINDOW_MOVED: + case SDL_EVENT_WINDOW_RESIZED: + if (ImGuiViewport* viewport = ImGui::FindViewportByPlatformHandle((void*)SDL_GetWindowFromID(event->window.windowID))) + { + if (event->type == SDL_EVENT_WINDOW_CLOSE_REQUESTED) + viewport->PlatformRequestClose = true; + if (event->type == SDL_EVENT_WINDOW_MOVED) + viewport->PlatformRequestMove = true; + if (event->type == SDL_EVENT_WINDOW_RESIZED) + viewport->PlatformRequestResize = true; + return true; + } + return true; + } + return false; +} + +static bool ImGui_ImplSDL3_Init(SDL_Window* window, SDL_Renderer* renderer, void* sdl_gl_context) +{ + ImGuiIO& io = ImGui::GetIO(); + IM_ASSERT(io.BackendPlatformUserData == nullptr && "Already initialized a platform backend!"); + + // Check and store if we are on a SDL backend that supports global mouse position + // ("wayland" and "rpi" don't support it, but we chose to use a white-list instead of a black-list) + bool mouse_can_use_global_state = false; +#if SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE + const char* sdl_backend = SDL_GetCurrentVideoDriver(); + const char* global_mouse_whitelist[] = { "windows", "cocoa", "x11", "DIVE", "VMAN" }; + for (int n = 0; n < IM_ARRAYSIZE(global_mouse_whitelist); n++) + if (strncmp(sdl_backend, global_mouse_whitelist[n], strlen(global_mouse_whitelist[n])) == 0) + mouse_can_use_global_state = true; +#endif + + // Setup backend capabilities flags + ImGui_ImplSDL3_Data* bd = IM_NEW(ImGui_ImplSDL3_Data)(); + io.BackendPlatformUserData = (void*)bd; + io.BackendPlatformName = "imgui_impl_sdl3"; + io.BackendFlags |= ImGuiBackendFlags_HasMouseCursors; // We can honor GetMouseCursor() values (optional) + io.BackendFlags |= ImGuiBackendFlags_HasSetMousePos; // We can honor io.WantSetMousePos requests (optional, rarely used) + if (mouse_can_use_global_state) + io.BackendFlags |= ImGuiBackendFlags_PlatformHasViewports; // We can create multi-viewports on the Platform side (optional) + + bd->Window = window; + bd->Renderer = renderer; + + // SDL on Linux/OSX doesn't report events for unfocused windows (see https://github.com/ocornut/imgui/issues/4960) + // We will use 'MouseCanReportHoveredViewport' to set 'ImGuiBackendFlags_HasMouseHoveredViewport' dynamically each frame. + bd->MouseCanUseGlobalState = mouse_can_use_global_state; +#ifndef __APPLE__ + bd->MouseCanReportHoveredViewport = bd->MouseCanUseGlobalState; +#else + bd->MouseCanReportHoveredViewport = false; +#endif + bd->WantUpdateMonitors = true; + + io.SetClipboardTextFn = ImGui_ImplSDL3_SetClipboardText; + io.GetClipboardTextFn = ImGui_ImplSDL3_GetClipboardText; + io.ClipboardUserData = nullptr; + io.SetPlatformImeDataFn = ImGui_ImplSDL3_SetPlatformImeData; + + // Load mouse cursors + bd->MouseCursors[ImGuiMouseCursor_Arrow] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_ARROW); + bd->MouseCursors[ImGuiMouseCursor_TextInput] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_IBEAM); + bd->MouseCursors[ImGuiMouseCursor_ResizeAll] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZEALL); + bd->MouseCursors[ImGuiMouseCursor_ResizeNS] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENS); + bd->MouseCursors[ImGuiMouseCursor_ResizeEW] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZEWE); + bd->MouseCursors[ImGuiMouseCursor_ResizeNESW] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENESW); + bd->MouseCursors[ImGuiMouseCursor_ResizeNWSE] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENWSE); + bd->MouseCursors[ImGuiMouseCursor_Hand] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_HAND); + bd->MouseCursors[ImGuiMouseCursor_NotAllowed] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_NO); + + // Set platform dependent data in viewport + // Our mouse update function expect PlatformHandle to be filled for the main viewport + ImGuiViewport* main_viewport = ImGui::GetMainViewport(); + main_viewport->PlatformHandle = (void*)window; + main_viewport->PlatformHandleRaw = nullptr; + SDL_SysWMinfo info; + if (SDL_GetWindowWMInfo(window, &info, SDL_SYSWM_CURRENT_VERSION) == 0) + { +#if defined(SDL_ENABLE_SYSWM_WINDOWS) + main_viewport->PlatformHandleRaw = (void*)info.info.win.window; +#elif defined(__APPLE__) && defined(SDL_ENABLE_SYSWM_COCOA) + main_viewport->PlatformHandleRaw = (void*)info.info.cocoa.window; +#endif + } + + // From 2.0.5: Set SDL hint to receive mouse click events on window focus, otherwise SDL doesn't emit the event. + // Without this, when clicking to gain focus, our widgets wouldn't activate even though they showed as hovered. + // (This is unfortunately a global SDL setting, so enabling it might have a side-effect on your application. + // It is unlikely to make a difference, but if your app absolutely needs to ignore the initial on-focus click: + // you can ignore SDL_EVENT_MOUSE_BUTTON_DOWN events coming right after a SDL_WINDOWEVENT_FOCUS_GAINED) + SDL_SetHint(SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH, "1"); + + // From 2.0.22: Disable auto-capture, this is preventing drag and drop across multiple windows (see #5710) + SDL_SetHint(SDL_HINT_MOUSE_AUTO_CAPTURE, "0"); + + // SDL 3.x : see https://github.com/libsdl-org/SDL/issues/6659 + SDL_SetHint("SDL_BORDERLESS_WINDOWED_STYLE", "0"); + + // We need SDL_CaptureMouse(), SDL_GetGlobalMouseState() from SDL 2.0.4+ to support multiple viewports. + // We left the call to ImGui_ImplSDL3_InitPlatformInterface() outside of #ifdef to avoid unused-function warnings. + if ((io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) && (io.BackendFlags & ImGuiBackendFlags_PlatformHasViewports)) + ImGui_ImplSDL3_InitPlatformInterface(window, sdl_gl_context); + + return true; +} + +bool ImGui_ImplSDL3_InitForOpenGL(SDL_Window* window, void* sdl_gl_context) +{ + return ImGui_ImplSDL3_Init(window, nullptr, sdl_gl_context); +} + +bool ImGui_ImplSDL3_InitForVulkan(SDL_Window* window) +{ + if (!ImGui_ImplSDL3_Init(window, nullptr, nullptr)) + return false; + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + bd->UseVulkan = true; + return true; +} + +bool ImGui_ImplSDL3_InitForD3D(SDL_Window* window) +{ +#if !defined(_WIN32) + IM_ASSERT(0 && "Unsupported"); +#endif + return ImGui_ImplSDL3_Init(window, nullptr, nullptr); +} + +bool ImGui_ImplSDL3_InitForMetal(SDL_Window* window) +{ + return ImGui_ImplSDL3_Init(window, nullptr, nullptr); +} + +bool ImGui_ImplSDL3_InitForSDLRenderer(SDL_Window* window, SDL_Renderer* renderer) +{ + return ImGui_ImplSDL3_Init(window, renderer, nullptr); +} + +void ImGui_ImplSDL3_Shutdown() +{ + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + IM_ASSERT(bd != nullptr && "No platform backend to shutdown, or already shutdown?"); + ImGuiIO& io = ImGui::GetIO(); + + ImGui_ImplSDL3_ShutdownPlatformInterface(); + + if (bd->ClipboardTextData) + SDL_free(bd->ClipboardTextData); + for (ImGuiMouseCursor cursor_n = 0; cursor_n < ImGuiMouseCursor_COUNT; cursor_n++) + SDL_DestroyCursor(bd->MouseCursors[cursor_n]); + bd->LastMouseCursor = nullptr; + + io.BackendPlatformName = nullptr; + io.BackendPlatformUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_HasMouseCursors | ImGuiBackendFlags_HasSetMousePos | ImGuiBackendFlags_HasGamepad | ImGuiBackendFlags_PlatformHasViewports | ImGuiBackendFlags_HasMouseHoveredViewport); + IM_DELETE(bd); +} + +// This code is incredibly messy because some of the functions we need for full viewport support are not available in SDL < 2.0.4. +static void ImGui_ImplSDL3_UpdateMouseData() +{ + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + ImGuiIO& io = ImGui::GetIO(); + + // We forward mouse input when hovered or captured (via SDL_EVENT_MOUSE_MOTION) or when focused (below) +#if SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE + // SDL_CaptureMouse() let the OS know e.g. that our imgui drag outside the SDL window boundaries shouldn't e.g. trigger other operations outside + SDL_CaptureMouse((bd->MouseButtonsDown != 0) ? SDL_TRUE : SDL_FALSE); + SDL_Window* focused_window = SDL_GetKeyboardFocus(); + const bool is_app_focused = (focused_window && (bd->Window == focused_window || ImGui::FindViewportByPlatformHandle((void*)focused_window))); +#else + SDL_Window* focused_window = bd->Window; + const bool is_app_focused = (SDL_GetWindowFlags(bd->Window) & SDL_WINDOW_INPUT_FOCUS) != 0; // SDL 2.0.3 and non-windowed systems: single-viewport only +#endif + if (is_app_focused) + { + // (Optional) Set OS mouse position from Dear ImGui if requested (rarely used, only when ImGuiConfigFlags_NavEnableSetMousePos is enabled by user) + if (io.WantSetMousePos) + { +#if SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE + if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) + SDL_WarpMouseGlobal(io.MousePos.x, io.MousePos.y); + else +#endif + SDL_WarpMouseInWindow(bd->Window, io.MousePos.x, io.MousePos.y); + } + + // (Optional) Fallback to provide mouse position when focused (SDL_EVENT_MOUSE_MOTION already provides this when hovered or captured) + if (bd->MouseCanUseGlobalState && bd->MouseButtonsDown == 0) + { + // Single-viewport mode: mouse position in client window coordinates (io.MousePos is (0,0) when the mouse is on the upper-left corner of the app window) + // Multi-viewport mode: mouse position in OS absolute coordinates (io.MousePos is (0,0) when the mouse is on the upper-left of the primary monitor) + float mouse_x, mouse_y; + int window_x, window_y; + SDL_GetGlobalMouseState(&mouse_x, &mouse_y); + if (!(io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable)) + { + SDL_GetWindowPosition(focused_window, &window_x, &window_y); + mouse_x -= window_x; + mouse_y -= window_y; + } + io.AddMousePosEvent((float)mouse_x, (float)mouse_y); + } + } + + // (Optional) When using multiple viewports: call io.AddMouseViewportEvent() with the viewport the OS mouse cursor is hovering. + // If ImGuiBackendFlags_HasMouseHoveredViewport is not set by the backend, Dear imGui will ignore this field and infer the information using its flawed heuristic. + // - [!] SDL backend does NOT correctly ignore viewports with the _NoInputs flag. + // Some backend are not able to handle that correctly. If a backend report an hovered viewport that has the _NoInputs flag (e.g. when dragging a window + // for docking, the viewport has the _NoInputs flag in order to allow us to find the viewport under), then Dear ImGui is forced to ignore the value reported + // by the backend, and use its flawed heuristic to guess the viewport behind. + // - [X] SDL backend correctly reports this regardless of another viewport behind focused and dragged from (we need this to find a useful drag and drop target). + if (io.BackendFlags & ImGuiBackendFlags_HasMouseHoveredViewport) + { + ImGuiID mouse_viewport_id = 0; + if (SDL_Window* sdl_mouse_window = SDL_GetWindowFromID(bd->MouseWindowID)) + if (ImGuiViewport* mouse_viewport = ImGui::FindViewportByPlatformHandle((void*)sdl_mouse_window)) + mouse_viewport_id = mouse_viewport->ID; + io.AddMouseViewportEvent(mouse_viewport_id); + } +} + +static void ImGui_ImplSDL3_UpdateMouseCursor() +{ + ImGuiIO& io = ImGui::GetIO(); + if (io.ConfigFlags & ImGuiConfigFlags_NoMouseCursorChange) + return; + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + + ImGuiMouseCursor imgui_cursor = ImGui::GetMouseCursor(); + if (io.MouseDrawCursor || imgui_cursor == ImGuiMouseCursor_None) + { + // Hide OS mouse cursor if imgui is drawing it or if it wants no cursor + SDL_HideCursor(); + } + else + { + // Show OS mouse cursor + SDL_Cursor* expected_cursor = bd->MouseCursors[imgui_cursor] ? bd->MouseCursors[imgui_cursor] : bd->MouseCursors[ImGuiMouseCursor_Arrow]; + if (bd->LastMouseCursor != expected_cursor) + { + SDL_SetCursor(expected_cursor); // SDL function doesn't have an early out (see #6113) + bd->LastMouseCursor = expected_cursor; + } + SDL_ShowCursor(); + } +} + +static void ImGui_ImplSDL3_UpdateGamepads() +{ + ImGuiIO& io = ImGui::GetIO(); + if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) // FIXME: Technically feeding gamepad shouldn't depend on this now that they are regular inputs. + return; + + // Get gamepad + io.BackendFlags &= ~ImGuiBackendFlags_HasGamepad; + SDL_Gamepad* gamepad = SDL_OpenGamepad(0); + if (!gamepad) + return; + io.BackendFlags |= ImGuiBackendFlags_HasGamepad; + + // Update gamepad inputs + #define IM_SATURATE(V) (V < 0.0f ? 0.0f : V > 1.0f ? 1.0f : V) + #define MAP_BUTTON(KEY_NO, BUTTON_NO) { io.AddKeyEvent(KEY_NO, SDL_GetGamepadButton(gamepad, BUTTON_NO) != 0); } + #define MAP_ANALOG(KEY_NO, AXIS_NO, V0, V1) { float vn = (float)(SDL_GetGamepadAxis(gamepad, AXIS_NO) - V0) / (float)(V1 - V0); vn = IM_SATURATE(vn); io.AddKeyAnalogEvent(KEY_NO, vn > 0.1f, vn); } + const int thumb_dead_zone = 8000; // SDL_gamecontroller.h suggests using this value. + MAP_BUTTON(ImGuiKey_GamepadStart, SDL_GAMEPAD_BUTTON_START); + MAP_BUTTON(ImGuiKey_GamepadBack, SDL_GAMEPAD_BUTTON_BACK); + MAP_BUTTON(ImGuiKey_GamepadFaceLeft, SDL_GAMEPAD_BUTTON_X); // Xbox X, PS Square + MAP_BUTTON(ImGuiKey_GamepadFaceRight, SDL_GAMEPAD_BUTTON_B); // Xbox B, PS Circle + MAP_BUTTON(ImGuiKey_GamepadFaceUp, SDL_GAMEPAD_BUTTON_Y); // Xbox Y, PS Triangle + MAP_BUTTON(ImGuiKey_GamepadFaceDown, SDL_GAMEPAD_BUTTON_A); // Xbox A, PS Cross + MAP_BUTTON(ImGuiKey_GamepadDpadLeft, SDL_GAMEPAD_BUTTON_DPAD_LEFT); + MAP_BUTTON(ImGuiKey_GamepadDpadRight, SDL_GAMEPAD_BUTTON_DPAD_RIGHT); + MAP_BUTTON(ImGuiKey_GamepadDpadUp, SDL_GAMEPAD_BUTTON_DPAD_UP); + MAP_BUTTON(ImGuiKey_GamepadDpadDown, SDL_GAMEPAD_BUTTON_DPAD_DOWN); + MAP_BUTTON(ImGuiKey_GamepadL1, SDL_GAMEPAD_BUTTON_LEFT_SHOULDER); + MAP_BUTTON(ImGuiKey_GamepadR1, SDL_GAMEPAD_BUTTON_RIGHT_SHOULDER); + MAP_ANALOG(ImGuiKey_GamepadL2, SDL_GAMEPAD_AXIS_LEFT_TRIGGER, 0.0f, 32767); + MAP_ANALOG(ImGuiKey_GamepadR2, SDL_GAMEPAD_AXIS_RIGHT_TRIGGER, 0.0f, 32767); + MAP_BUTTON(ImGuiKey_GamepadL3, SDL_GAMEPAD_BUTTON_LEFT_STICK); + MAP_BUTTON(ImGuiKey_GamepadR3, SDL_GAMEPAD_BUTTON_RIGHT_STICK); + MAP_ANALOG(ImGuiKey_GamepadLStickLeft, SDL_GAMEPAD_AXIS_LEFTX, -thumb_dead_zone, -32768); + MAP_ANALOG(ImGuiKey_GamepadLStickRight, SDL_GAMEPAD_AXIS_LEFTX, +thumb_dead_zone, +32767); + MAP_ANALOG(ImGuiKey_GamepadLStickUp, SDL_GAMEPAD_AXIS_LEFTY, -thumb_dead_zone, -32768); + MAP_ANALOG(ImGuiKey_GamepadLStickDown, SDL_GAMEPAD_AXIS_LEFTY, +thumb_dead_zone, +32767); + MAP_ANALOG(ImGuiKey_GamepadRStickLeft, SDL_GAMEPAD_AXIS_RIGHTX, -thumb_dead_zone, -32768); + MAP_ANALOG(ImGuiKey_GamepadRStickRight, SDL_GAMEPAD_AXIS_RIGHTX, +thumb_dead_zone, +32767); + MAP_ANALOG(ImGuiKey_GamepadRStickUp, SDL_GAMEPAD_AXIS_RIGHTY, -thumb_dead_zone, -32768); + MAP_ANALOG(ImGuiKey_GamepadRStickDown, SDL_GAMEPAD_AXIS_RIGHTY, +thumb_dead_zone, +32767); + #undef MAP_BUTTON + #undef MAP_ANALOG +} + +static void ImGui_ImplSDL3_UpdateMonitors() +{ + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); + platform_io.Monitors.resize(0); + bd->WantUpdateMonitors = false; + + int display_count; + SDL_DisplayID* displays = SDL_GetDisplays(&display_count); + for (int n = 0; n < display_count; n++) + { + // Warning: the validity of monitor DPI information on Windows depends on the application DPI awareness settings, which generally needs to be set in the manifest or at runtime. + SDL_DisplayID display_id = displays[n]; + ImGuiPlatformMonitor monitor; + SDL_Rect r; + SDL_GetDisplayBounds(display_id, &r); + monitor.MainPos = monitor.WorkPos = ImVec2((float)r.x, (float)r.y); + monitor.MainSize = monitor.WorkSize = ImVec2((float)r.w, (float)r.h); + SDL_GetDisplayUsableBounds(display_id, &r); + monitor.WorkPos = ImVec2((float)r.x, (float)r.y); + monitor.WorkSize = ImVec2((float)r.w, (float)r.h); + // FIXME-VIEWPORT: On MacOS SDL reports actual monitor DPI scale, ignoring OS configuration. We may want to set + // DpiScale to cocoa_window.backingScaleFactor here. + monitor.DpiScale = SDL_GetDisplayContentScale(display_id); + monitor.PlatformHandle = (void*)(intptr_t)n; + platform_io.Monitors.push_back(monitor); + } +} + +void ImGui_ImplSDL3_NewFrame() +{ + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplSDL3_Init()?"); + ImGuiIO& io = ImGui::GetIO(); + + // Setup display size (every frame to accommodate for window resizing) + int w, h; + int display_w, display_h; + SDL_GetWindowSize(bd->Window, &w, &h); + if (SDL_GetWindowFlags(bd->Window) & SDL_WINDOW_MINIMIZED) + w = h = 0; + SDL_GetWindowSizeInPixels(bd->Window, &display_w, &display_h); + io.DisplaySize = ImVec2((float)w, (float)h); + if (w > 0 && h > 0) + io.DisplayFramebufferScale = ImVec2((float)display_w / w, (float)display_h / h); + + // Update monitors + if (bd->WantUpdateMonitors) + ImGui_ImplSDL3_UpdateMonitors(); + + // Setup time step (we don't use SDL_GetTicks() because it is using millisecond resolution) + // (Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. Happens in VMs and Emscripten, see #6189, #6114, #3644) + static Uint64 frequency = SDL_GetPerformanceFrequency(); + Uint64 current_time = SDL_GetPerformanceCounter(); + if (current_time <= bd->Time) + current_time = bd->Time + 1; + io.DeltaTime = bd->Time > 0 ? (float)((double)(current_time - bd->Time) / frequency) : (float)(1.0f / 60.0f); + bd->Time = current_time; + + if (bd->PendingMouseLeaveFrame && bd->PendingMouseLeaveFrame >= ImGui::GetFrameCount() && bd->MouseButtonsDown == 0) + { + bd->MouseWindowID = 0; + bd->PendingMouseLeaveFrame = 0; + io.AddMousePosEvent(-FLT_MAX, -FLT_MAX); + } + + // Our io.AddMouseViewportEvent() calls will only be valid when not capturing. + // Technically speaking testing for 'bd->MouseButtonsDown == 0' would be more rygorous, but testing for payload reduces noise and potential side-effects. + if (bd->MouseCanReportHoveredViewport && ImGui::GetDragDropPayload() == nullptr) + io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport; + else + io.BackendFlags &= ~ImGuiBackendFlags_HasMouseHoveredViewport; + + ImGui_ImplSDL3_UpdateMouseData(); + ImGui_ImplSDL3_UpdateMouseCursor(); + + // Update game controllers (if enabled and available) + ImGui_ImplSDL3_UpdateGamepads(); +} + +//-------------------------------------------------------------------------------------------------------- +// MULTI-VIEWPORT / PLATFORM INTERFACE SUPPORT +// This is an _advanced_ and _optional_ feature, allowing the backend to create and handle multiple viewports simultaneously. +// If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. +//-------------------------------------------------------------------------------------------------------- + +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. +struct ImGui_ImplSDL3_ViewportData +{ + SDL_Window* Window; + Uint32 WindowID; + bool WindowOwned; + SDL_GLContext GLContext; + + ImGui_ImplSDL3_ViewportData() { Window = nullptr; WindowID = 0; WindowOwned = false; GLContext = nullptr; } + ~ImGui_ImplSDL3_ViewportData() { IM_ASSERT(Window == nullptr && GLContext == nullptr); } +}; + +static void ImGui_ImplSDL3_CreateWindow(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_Data* bd = ImGui_ImplSDL3_GetBackendData(); + ImGui_ImplSDL3_ViewportData* vd = IM_NEW(ImGui_ImplSDL3_ViewportData)(); + viewport->PlatformUserData = vd; + + ImGuiViewport* main_viewport = ImGui::GetMainViewport(); + ImGui_ImplSDL3_ViewportData* main_viewport_data = (ImGui_ImplSDL3_ViewportData*)main_viewport->PlatformUserData; + + // Share GL resources with main context + bool use_opengl = (main_viewport_data->GLContext != nullptr); + SDL_GLContext backup_context = nullptr; + if (use_opengl) + { + backup_context = SDL_GL_GetCurrentContext(); + SDL_GL_SetAttribute(SDL_GL_SHARE_WITH_CURRENT_CONTEXT, 1); + SDL_GL_MakeCurrent(main_viewport_data->Window, main_viewport_data->GLContext); + } + + Uint32 sdl_flags = 0; + sdl_flags |= use_opengl ? SDL_WINDOW_OPENGL : (bd->UseVulkan ? SDL_WINDOW_VULKAN : 0); + sdl_flags |= SDL_GetWindowFlags(bd->Window); + sdl_flags |= (viewport->Flags & ImGuiViewportFlags_NoDecoration) ? SDL_WINDOW_BORDERLESS : 0; + sdl_flags |= (viewport->Flags & ImGuiViewportFlags_NoDecoration) ? 0 : SDL_WINDOW_RESIZABLE; +#if !defined(_WIN32) + // See SDL hack in ImGui_ImplSDL3_ShowWindow(). + sdl_flags |= (viewport->Flags & ImGuiViewportFlags_NoTaskBarIcon) ? SDL_WINDOW_SKIP_TASKBAR : 0; +#endif + sdl_flags |= (viewport->Flags & ImGuiViewportFlags_TopMost) ? SDL_WINDOW_ALWAYS_ON_TOP : 0; + vd->Window = SDL_CreateWindow("No Title Yet", (int)viewport->Size.x, (int)viewport->Size.y, sdl_flags); + SDL_SetWindowPosition(vd->Window, (int)viewport->Pos.x, (int)viewport->Pos.y); + vd->WindowOwned = true; + if (use_opengl) + { + vd->GLContext = SDL_GL_CreateContext(vd->Window); + SDL_GL_SetSwapInterval(0); + } + if (use_opengl && backup_context) + SDL_GL_MakeCurrent(vd->Window, backup_context); + + viewport->PlatformHandle = (void*)vd->Window; + viewport->PlatformHandleRaw = nullptr; + SDL_SysWMinfo info; + if (SDL_GetWindowWMInfo(vd->Window, &info, SDL_SYSWM_CURRENT_VERSION)) + { +#if defined(SDL_VIDEO_DRIVER_WINDOWS) + viewport->PlatformHandleRaw = info.info.win.window; +#elif defined(__APPLE__) && defined(SDL_VIDEO_DRIVER_COCOA) + viewport->PlatformHandleRaw = (void*)info.info.cocoa.window; +#endif + } +} + +static void ImGui_ImplSDL3_DestroyWindow(ImGuiViewport* viewport) +{ + if (ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData) + { + if (vd->GLContext && vd->WindowOwned) + SDL_GL_DeleteContext(vd->GLContext); + if (vd->Window && vd->WindowOwned) + SDL_DestroyWindow(vd->Window); + vd->GLContext = nullptr; + vd->Window = nullptr; + IM_DELETE(vd); + } + viewport->PlatformUserData = viewport->PlatformHandle = nullptr; +} + +static void ImGui_ImplSDL3_ShowWindow(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; +#if defined(_WIN32) + HWND hwnd = (HWND)viewport->PlatformHandleRaw; + + // SDL hack: Hide icon from task bar + // Note: SDL 2.0.6+ has a SDL_WINDOW_SKIP_TASKBAR flag which is supported under Windows but the way it create the window breaks our seamless transition. + if (viewport->Flags & ImGuiViewportFlags_NoTaskBarIcon) + { + LONG ex_style = ::GetWindowLong(hwnd, GWL_EXSTYLE); + ex_style &= ~WS_EX_APPWINDOW; + ex_style |= WS_EX_TOOLWINDOW; + ::SetWindowLong(hwnd, GWL_EXSTYLE, ex_style); + } + + // SDL hack: SDL always activate/focus windows :/ + if (viewport->Flags & ImGuiViewportFlags_NoFocusOnAppearing) + { + ::ShowWindow(hwnd, SW_SHOWNA); + return; + } +#endif + + SDL_ShowWindow(vd->Window); +} + +static ImVec2 ImGui_ImplSDL3_GetWindowPos(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + int x = 0, y = 0; + SDL_GetWindowPosition(vd->Window, &x, &y); + return ImVec2((float)x, (float)y); +} + +static void ImGui_ImplSDL3_SetWindowPos(ImGuiViewport* viewport, ImVec2 pos) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + SDL_SetWindowPosition(vd->Window, (int)pos.x, (int)pos.y); +} + +static ImVec2 ImGui_ImplSDL3_GetWindowSize(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + int w = 0, h = 0; + SDL_GetWindowSize(vd->Window, &w, &h); + return ImVec2((float)w, (float)h); +} + +static void ImGui_ImplSDL3_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + SDL_SetWindowSize(vd->Window, (int)size.x, (int)size.y); +} + +static void ImGui_ImplSDL3_SetWindowTitle(ImGuiViewport* viewport, const char* title) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + SDL_SetWindowTitle(vd->Window, title); +} + +static void ImGui_ImplSDL3_SetWindowAlpha(ImGuiViewport* viewport, float alpha) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + SDL_SetWindowOpacity(vd->Window, alpha); +} + +static void ImGui_ImplSDL3_SetWindowFocus(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + SDL_RaiseWindow(vd->Window); +} + +static bool ImGui_ImplSDL3_GetWindowFocus(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + return (SDL_GetWindowFlags(vd->Window) & SDL_WINDOW_INPUT_FOCUS) != 0; +} + +static bool ImGui_ImplSDL3_GetWindowMinimized(ImGuiViewport* viewport) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + return (SDL_GetWindowFlags(vd->Window) & SDL_WINDOW_MINIMIZED) != 0; +} + +static void ImGui_ImplSDL3_RenderWindow(ImGuiViewport* viewport, void*) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + if (vd->GLContext) + SDL_GL_MakeCurrent(vd->Window, vd->GLContext); +} + +static void ImGui_ImplSDL3_SwapBuffers(ImGuiViewport* viewport, void*) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + if (vd->GLContext) + { + SDL_GL_MakeCurrent(vd->Window, vd->GLContext); + SDL_GL_SwapWindow(vd->Window); + } +} + +// Vulkan support (the Vulkan renderer needs to call a platform-side support function to create the surface) +// SDL is graceful enough to _not_ need so we can safely include this. +#include +static int ImGui_ImplSDL3_CreateVkSurface(ImGuiViewport* viewport, ImU64 vk_instance, const void* vk_allocator, ImU64* out_vk_surface) +{ + ImGui_ImplSDL3_ViewportData* vd = (ImGui_ImplSDL3_ViewportData*)viewport->PlatformUserData; + (void)vk_allocator; + SDL_bool ret = SDL_Vulkan_CreateSurface(vd->Window, (VkInstance)vk_instance, (VkSurfaceKHR*)out_vk_surface); + return ret ? 0 : 1; // ret ? VK_SUCCESS : VK_NOT_READY +} + +static void ImGui_ImplSDL3_InitPlatformInterface(SDL_Window* window, void* sdl_gl_context) +{ + // Register platform interface (will be coupled with a renderer interface) + ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); + platform_io.Platform_CreateWindow = ImGui_ImplSDL3_CreateWindow; + platform_io.Platform_DestroyWindow = ImGui_ImplSDL3_DestroyWindow; + platform_io.Platform_ShowWindow = ImGui_ImplSDL3_ShowWindow; + platform_io.Platform_SetWindowPos = ImGui_ImplSDL3_SetWindowPos; + platform_io.Platform_GetWindowPos = ImGui_ImplSDL3_GetWindowPos; + platform_io.Platform_SetWindowSize = ImGui_ImplSDL3_SetWindowSize; + platform_io.Platform_GetWindowSize = ImGui_ImplSDL3_GetWindowSize; + platform_io.Platform_SetWindowFocus = ImGui_ImplSDL3_SetWindowFocus; + platform_io.Platform_GetWindowFocus = ImGui_ImplSDL3_GetWindowFocus; + platform_io.Platform_GetWindowMinimized = ImGui_ImplSDL3_GetWindowMinimized; + platform_io.Platform_SetWindowTitle = ImGui_ImplSDL3_SetWindowTitle; + platform_io.Platform_RenderWindow = ImGui_ImplSDL3_RenderWindow; + platform_io.Platform_SwapBuffers = ImGui_ImplSDL3_SwapBuffers; + platform_io.Platform_SetWindowAlpha = ImGui_ImplSDL3_SetWindowAlpha; + platform_io.Platform_CreateVkSurface = ImGui_ImplSDL3_CreateVkSurface; + + // Register main window handle (which is owned by the main application, not by us) + // This is mostly for simplicity and consistency, so that our code (e.g. mouse handling etc.) can use same logic for main and secondary viewports. + ImGuiViewport* main_viewport = ImGui::GetMainViewport(); + ImGui_ImplSDL3_ViewportData* vd = IM_NEW(ImGui_ImplSDL3_ViewportData)(); + vd->Window = window; + vd->WindowID = SDL_GetWindowID(window); + vd->WindowOwned = false; + vd->GLContext = sdl_gl_context; + main_viewport->PlatformUserData = vd; + main_viewport->PlatformHandle = vd->Window; +} + +static void ImGui_ImplSDL3_ShutdownPlatformInterface() +{ + ImGui::DestroyPlatformWindows(); +} + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/extern/imgui_patched/backends/imgui_impl_sdl3.h b/extern/imgui_patched/backends/imgui_impl_sdl3.h new file mode 100644 index 00000000..e2d9f90f --- /dev/null +++ b/extern/imgui_patched/backends/imgui_impl_sdl3.h @@ -0,0 +1,36 @@ +// dear imgui: Platform Backend for SDL3 (*EXPERIMENTAL*) +// This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan..) +// (Info: SDL3 is a cross-platform general purpose library for handling windows, inputs, graphics context creation, etc.) +// (IMPORTANT: SDL 3.0.0 is NOT YET RELEASED. IT IS POSSIBLE THAT ITS SPECS/API WILL CHANGE BEFORE RELEASE) + +// Implemented features: +// [X] Platform: Clipboard support. +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen. +// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy SDL_SCANCODE_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] +// [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. +// [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. +// [x] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable' -> the OS animation effect when window gets created/destroyed is problematic. SDL2 backend doesn't have issue. +// Missing features: +// [ ] Platform: Multi-viewport + Minimized windows seems to break mouse wheel events (at least under Windows). +// [x] Platform: Basic IME support. Position somehow broken in SDL3 + app needs to call 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1");' before SDL_CreateWindow()!. + +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. +// If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. +// Read online: https://github.com/ocornut/imgui/tree/master/docs + +#pragma once +#include "imgui.h" // IMGUI_IMPL_API + +struct SDL_Window; +struct SDL_Renderer; +typedef union SDL_Event SDL_Event; + +IMGUI_IMPL_API bool ImGui_ImplSDL3_InitForOpenGL(SDL_Window* window, void* sdl_gl_context); +IMGUI_IMPL_API bool ImGui_ImplSDL3_InitForVulkan(SDL_Window* window); +IMGUI_IMPL_API bool ImGui_ImplSDL3_InitForD3D(SDL_Window* window); +IMGUI_IMPL_API bool ImGui_ImplSDL3_InitForMetal(SDL_Window* window); +IMGUI_IMPL_API bool ImGui_ImplSDL3_InitForSDLRenderer(SDL_Window* window, SDL_Renderer* renderer); +IMGUI_IMPL_API void ImGui_ImplSDL3_Shutdown(); +IMGUI_IMPL_API void ImGui_ImplSDL3_NewFrame(); +IMGUI_IMPL_API bool ImGui_ImplSDL3_ProcessEvent(const SDL_Event* event); diff --git a/extern/imgui_patched/backends/imgui_impl_sdlrenderer.h b/extern/imgui_patched/backends/imgui_impl_sdlrenderer.h deleted file mode 100644 index 3281a758..00000000 --- a/extern/imgui_patched/backends/imgui_impl_sdlrenderer.h +++ /dev/null @@ -1,31 +0,0 @@ -// dear imgui: Renderer Backend for SDL_Renderer -// (Requires: SDL 2.0.17+) - -// Important to understand: SDL_Renderer is an _optional_ component of SDL. -// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. -// If your application will want to render any non trivial amount of graphics other than UI, -// please be aware that SDL_Renderer offers a limited graphic API to the end-user and it might -// be difficult to step out of those boundaries. -// However, we understand it is a convenient choice to get an app started easily. - -// Implemented features: -// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! -// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. -// Missing features: -// [ ] Renderer: Multi-viewport support (multiple windows). - -#pragma once -#include "imgui.h" // IMGUI_IMPL_API - -struct SDL_Renderer; - -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_Init(SDL_Renderer* renderer); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_Shutdown(); -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_NewFrame(); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data); - -// Called by Init/NewFrame/Shutdown -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_CreateFontsTexture(); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_DestroyFontsTexture(); -IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_CreateDeviceObjects(); -IMGUI_IMPL_API void ImGui_ImplSDLRenderer_DestroyDeviceObjects(); diff --git a/extern/imgui_patched/backends/imgui_impl_sdlrenderer.cpp b/extern/imgui_patched/backends/imgui_impl_sdlrenderer2.cpp similarity index 65% rename from extern/imgui_patched/backends/imgui_impl_sdlrenderer.cpp rename to extern/imgui_patched/backends/imgui_impl_sdlrenderer2.cpp index 8cc79f7e..fd5a0747 100644 --- a/extern/imgui_patched/backends/imgui_impl_sdlrenderer.cpp +++ b/extern/imgui_patched/backends/imgui_impl_sdlrenderer2.cpp @@ -1,12 +1,11 @@ -// dear imgui: Renderer Backend for SDL_Renderer +// dear imgui: Renderer Backend for SDL_Renderer for SDL2 // (Requires: SDL 2.0.17+) -// Important to understand: SDL_Renderer is an _optional_ component of SDL. +// Note how SDL_Renderer is an _optional_ component of SDL2. // For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. // If your application will want to render any non trivial amount of graphics other than UI, -// please be aware that SDL_Renderer offers a limited graphic API to the end-user and it might -// be difficult to step out of those boundaries. -// However, we understand it is a convenient choice to get an app started easily. +// please be aware that SDL_Renderer currently offers a limited graphic API to the end-user and +// it might be difficult to step out of those boundaries. // Implemented features: // [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! @@ -19,19 +18,27 @@ // Read online: https://github.com/ocornut/imgui/tree/master/docs // CHANGELOG +// 2023-05-30: Renamed imgui_impl_sdlrenderer.h/.cpp to imgui_impl_sdlrenderer2.h/.cpp to accommodate for upcoming SDL3. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-12-21: Update SDL_RenderGeometryRaw() format to work with SDL 2.0.19. // 2021-12-03: Added support for large mesh (64K+ vertices), enable ImGuiBackendFlags_RendererHasVtxOffset flag. // 2021-10-06: Backup and restore modified ClipRect/Viewport. // 2021-09-21: Initial version. #include "imgui.h" -#include "imgui_impl_sdlrenderer.h" +#include "imgui_impl_sdlrenderer2.h" #if defined(_MSC_VER) && _MSC_VER <= 1500 // MSVC 2008 or earlier #include // intptr_t #else #include // intptr_t #endif +// Clang warnings with -Weverything +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wsign-conversion" // warning: implicit conversion changes signedness +#endif + // SDL #include #if !SDL_VERSION_ATLEAST(2,0,17) @@ -39,31 +46,31 @@ #endif // SDL_Renderer data -struct ImGui_ImplSDLRenderer_Data +struct ImGui_ImplSDLRenderer2_Data { SDL_Renderer* SDLRenderer; SDL_Texture* FontTexture; - ImGui_ImplSDLRenderer_Data() { memset((void*)this, 0, sizeof(*this)); } + ImGui_ImplSDLRenderer2_Data() { memset((void*)this, 0, sizeof(*this)); } }; // Backend data stored in io.BackendRendererUserData to allow support for multiple Dear ImGui contexts // It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. -static ImGui_ImplSDLRenderer_Data* ImGui_ImplSDLRenderer_GetBackendData() +static ImGui_ImplSDLRenderer2_Data* ImGui_ImplSDLRenderer2_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplSDLRenderer_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplSDLRenderer2_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } // Functions -bool ImGui_ImplSDLRenderer_Init(SDL_Renderer* renderer) +bool ImGui_ImplSDLRenderer2_Init(SDL_Renderer* renderer) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); - IM_ASSERT(renderer != NULL && "SDL_Renderer not initialized!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); + IM_ASSERT(renderer != nullptr && "SDL_Renderer not initialized!"); // Setup backend capabilities flags - ImGui_ImplSDLRenderer_Data* bd = IM_NEW(ImGui_ImplSDLRenderer_Data)(); + ImGui_ImplSDLRenderer2_Data* bd = IM_NEW(ImGui_ImplSDLRenderer2_Data)(); io.BackendRendererUserData = (void*)bd; - io.BackendRendererName = "imgui_impl_sdlrenderer"; + io.BackendRendererName = "imgui_impl_sdlrenderer2"; io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset; // We can honor the ImDrawCmd::VtxOffset field, allowing for large meshes. bd->SDLRenderer = renderer; @@ -71,42 +78,43 @@ bool ImGui_ImplSDLRenderer_Init(SDL_Renderer* renderer) return true; } -void ImGui_ImplSDLRenderer_Shutdown() +void ImGui_ImplSDLRenderer2_Shutdown() { - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + ImGui_ImplSDLRenderer2_Data* bd = ImGui_ImplSDLRenderer2_GetBackendData(); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); - ImGui_ImplSDLRenderer_DestroyDeviceObjects(); + ImGui_ImplSDLRenderer2_DestroyDeviceObjects(); - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~ImGuiBackendFlags_RendererHasVtxOffset; IM_DELETE(bd); } -static void ImGui_ImplSDLRenderer_SetupRenderState() +static void ImGui_ImplSDLRenderer2_SetupRenderState() { - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); + ImGui_ImplSDLRenderer2_Data* bd = ImGui_ImplSDLRenderer2_GetBackendData(); // Clear out any viewports and cliprect set by the user // FIXME: Technically speaking there are lots of other things we could backup/setup/restore during our render process. - SDL_RenderSetViewport(bd->SDLRenderer, NULL); - SDL_RenderSetClipRect(bd->SDLRenderer, NULL); + SDL_RenderSetViewport(bd->SDLRenderer, nullptr); + SDL_RenderSetClipRect(bd->SDLRenderer, nullptr); } -bool ImGui_ImplSDLRenderer_NewFrame() +bool ImGui_ImplSDLRenderer2_NewFrame() { - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplSDLRenderer_Init()?"); + ImGui_ImplSDLRenderer2_Data* bd = ImGui_ImplSDLRenderer2_GetBackendData(); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplSDLRenderer2_Init()?"); if (!bd->FontTexture) - return ImGui_ImplSDLRenderer_CreateDeviceObjects(); + return ImGui_ImplSDLRenderer2_CreateDeviceObjects(); return true; } -void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data) +void ImGui_ImplSDLRenderer2_RenderDrawData(ImDrawData* draw_data) { - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); + ImGui_ImplSDLRenderer2_Data* bd = ImGui_ImplSDLRenderer2_GetBackendData(); // If there's a scale factor set by the user, use that instead // If the user has specified a scale factor to SDL_Renderer already via SDL_RenderSetScale(), SDL will scale whatever we pass @@ -141,7 +149,7 @@ void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data) ImVec2 clip_scale = render_scale; // Render command lists - ImGui_ImplSDLRenderer_SetupRenderState(); + ImGui_ImplSDLRenderer2_SetupRenderState(); for (int n = 0; n < draw_data->CmdListsCount; n++) { const ImDrawList* cmd_list = draw_data->CmdLists[n]; @@ -156,7 +164,7 @@ void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data) // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) if (pcmd->UserCallback == ImDrawCallback_ResetRenderState) - ImGui_ImplSDLRenderer_SetupRenderState(); + ImGui_ImplSDLRenderer2_SetupRenderState(); else pcmd->UserCallback(cmd_list, pcmd); } @@ -167,20 +175,20 @@ void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data) ImVec2 clip_max((pcmd->ClipRect.z - clip_off.x) * clip_scale.x, (pcmd->ClipRect.w - clip_off.y) * clip_scale.y); if (clip_min.x < 0.0f) { clip_min.x = 0.0f; } if (clip_min.y < 0.0f) { clip_min.y = 0.0f; } - if (clip_max.x > fb_width) { clip_max.x = (float)fb_width; } - if (clip_max.y > fb_height) { clip_max.y = (float)fb_height; } + if (clip_max.x > (float)fb_width) { clip_max.x = (float)fb_width; } + if (clip_max.y > (float)fb_height) { clip_max.y = (float)fb_height; } if (clip_max.x <= clip_min.x || clip_max.y <= clip_min.y) continue; SDL_Rect r = { (int)(clip_min.x), (int)(clip_min.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y) }; SDL_RenderSetClipRect(bd->SDLRenderer, &r); - const float* xy = (const float*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, pos)); - const float* uv = (const float*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, uv)); + const float* xy = (const float*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, pos)); + const float* uv = (const float*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, uv)); #if SDL_VERSION_ATLEAST(2,0,19) - const SDL_Color* color = (const SDL_Color*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.19+ + const SDL_Color* color = (const SDL_Color*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.19+ #else - const int* color = (const int*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.17 and 2.0.18 + const int* color = (const int*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.17 and 2.0.18 #endif // Bind texture, Draw @@ -198,14 +206,14 @@ void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data) // Restore modified SDL_Renderer state SDL_RenderSetViewport(bd->SDLRenderer, &old.Viewport); - SDL_RenderSetClipRect(bd->SDLRenderer, old.ClipEnabled ? &old.ClipRect : NULL); + SDL_RenderSetClipRect(bd->SDLRenderer, old.ClipEnabled ? &old.ClipRect : nullptr); } // Called by Init/NewFrame/Shutdown -bool ImGui_ImplSDLRenderer_CreateFontsTexture() +bool ImGui_ImplSDLRenderer2_CreateFontsTexture() { ImGuiIO& io = ImGui::GetIO(); - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); + ImGui_ImplSDLRenderer2_Data* bd = ImGui_ImplSDLRenderer2_GetBackendData(); // Build texture atlas unsigned char* pixels; @@ -215,12 +223,12 @@ bool ImGui_ImplSDLRenderer_CreateFontsTexture() // Upload texture to graphics system // (Bilinear sampling is required by default. Set 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines' or 'style.AntiAliasedLinesUseTex = false' to allow point/nearest sampling) bd->FontTexture = SDL_CreateTexture(bd->SDLRenderer, SDL_PIXELFORMAT_ABGR8888, SDL_TEXTUREACCESS_STATIC, width, height); - if (bd->FontTexture == NULL) + if (bd->FontTexture == nullptr) { SDL_Log("error creating texture"); return false; } - SDL_UpdateTexture(bd->FontTexture, NULL, pixels, 4 * width); + SDL_UpdateTexture(bd->FontTexture, nullptr, pixels, 4 * width); SDL_SetTextureBlendMode(bd->FontTexture, SDL_BLENDMODE_BLEND); SDL_SetTextureScaleMode(bd->FontTexture, SDL_ScaleModeLinear); @@ -230,24 +238,28 @@ bool ImGui_ImplSDLRenderer_CreateFontsTexture() return true; } -void ImGui_ImplSDLRenderer_DestroyFontsTexture() +void ImGui_ImplSDLRenderer2_DestroyFontsTexture() { ImGuiIO& io = ImGui::GetIO(); - ImGui_ImplSDLRenderer_Data* bd = ImGui_ImplSDLRenderer_GetBackendData(); + ImGui_ImplSDLRenderer2_Data* bd = ImGui_ImplSDLRenderer2_GetBackendData(); if (bd->FontTexture) { io.Fonts->SetTexID(0); SDL_DestroyTexture(bd->FontTexture); - bd->FontTexture = NULL; + bd->FontTexture = nullptr; } } -bool ImGui_ImplSDLRenderer_CreateDeviceObjects() +bool ImGui_ImplSDLRenderer2_CreateDeviceObjects() { - return ImGui_ImplSDLRenderer_CreateFontsTexture(); + return ImGui_ImplSDLRenderer2_CreateFontsTexture(); } -void ImGui_ImplSDLRenderer_DestroyDeviceObjects() +void ImGui_ImplSDLRenderer2_DestroyDeviceObjects() { - ImGui_ImplSDLRenderer_DestroyFontsTexture(); + ImGui_ImplSDLRenderer2_DestroyFontsTexture(); } + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/extern/imgui_patched/backends/imgui_impl_sdlrenderer2.h b/extern/imgui_patched/backends/imgui_impl_sdlrenderer2.h new file mode 100644 index 00000000..0f1b2b6c --- /dev/null +++ b/extern/imgui_patched/backends/imgui_impl_sdlrenderer2.h @@ -0,0 +1,30 @@ +// dear imgui: Renderer Backend for SDL_Renderer for SDL2 +// (Requires: SDL 2.0.17+) + +// Note how SDL_Renderer is an _optional_ component of SDL2. +// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. +// If your application will want to render any non trivial amount of graphics other than UI, +// please be aware that SDL_Renderer currently offers a limited graphic API to the end-user and +// it might be difficult to step out of those boundaries. + +// Implemented features: +// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! +// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// Missing features: +// [ ] Renderer: Multi-viewport support (multiple windows). + +#pragma once +#include "imgui.h" // IMGUI_IMPL_API + +struct SDL_Renderer; + +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer2_Init(SDL_Renderer* renderer); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer2_Shutdown(); +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer2_NewFrame(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer2_RenderDrawData(ImDrawData* draw_data); + +// Called by Init/NewFrame/Shutdown +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer2_CreateFontsTexture(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer2_DestroyFontsTexture(); +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer2_CreateDeviceObjects(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer2_DestroyDeviceObjects(); diff --git a/extern/imgui_patched/backends/imgui_impl_sdlrenderer3.cpp b/extern/imgui_patched/backends/imgui_impl_sdlrenderer3.cpp new file mode 100644 index 00000000..7c1b3bf1 --- /dev/null +++ b/extern/imgui_patched/backends/imgui_impl_sdlrenderer3.cpp @@ -0,0 +1,258 @@ +// dear imgui: Renderer Backend for SDL_Renderer for SDL3 +// (Requires: SDL 3.0.0+) + +// Note how SDL_Renderer is an _optional_ component of SDL3. +// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. +// If your application will want to render any non trivial amount of graphics other than UI, +// please be aware that SDL_Renderer currently offers a limited graphic API to the end-user and +// it might be difficult to step out of those boundaries. + +// Implemented features: +// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! +// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// Missing features: +// [ ] Renderer: Multi-viewport support (multiple windows). + +// You can copy and use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. +// Read online: https://github.com/ocornut/imgui/tree/master/docs + +// CHANGELOG +// 2023-05-30: Initial version. + +#include "imgui.h" +#include "imgui_impl_sdlrenderer3.h" +#if defined(_MSC_VER) && _MSC_VER <= 1500 // MSVC 2008 or earlier +#include // intptr_t +#else +#include // intptr_t +#endif + +// Clang warnings with -Weverything +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wsign-conversion" // warning: implicit conversion changes signedness +#endif + +// SDL +#include +#if !SDL_VERSION_ATLEAST(3,0,0) +#error This backend requires SDL 3.0.0+ +#endif + +// SDL_Renderer data +struct ImGui_ImplSDLRenderer3_Data +{ + SDL_Renderer* SDLRenderer; + SDL_Texture* FontTexture; + ImGui_ImplSDLRenderer3_Data() { memset((void*)this, 0, sizeof(*this)); } +}; + +// Backend data stored in io.BackendRendererUserData to allow support for multiple Dear ImGui contexts +// It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. +static ImGui_ImplSDLRenderer3_Data* ImGui_ImplSDLRenderer3_GetBackendData() +{ + return ImGui::GetCurrentContext() ? (ImGui_ImplSDLRenderer3_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; +} + +// Functions +bool ImGui_ImplSDLRenderer3_Init(SDL_Renderer* renderer) +{ + ImGuiIO& io = ImGui::GetIO(); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); + IM_ASSERT(renderer != nullptr && "SDL_Renderer not initialized!"); + + // Setup backend capabilities flags + ImGui_ImplSDLRenderer3_Data* bd = IM_NEW(ImGui_ImplSDLRenderer3_Data)(); + io.BackendRendererUserData = (void*)bd; + io.BackendRendererName = "imgui_impl_sdlrenderer3"; + io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset; // We can honor the ImDrawCmd::VtxOffset field, allowing for large meshes. + + bd->SDLRenderer = renderer; + + return true; +} + +void ImGui_ImplSDLRenderer3_Shutdown() +{ + ImGui_ImplSDLRenderer3_Data* bd = ImGui_ImplSDLRenderer3_GetBackendData(); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); + ImGuiIO& io = ImGui::GetIO(); + + ImGui_ImplSDLRenderer3_DestroyDeviceObjects(); + + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~ImGuiBackendFlags_RendererHasVtxOffset; + IM_DELETE(bd); +} + +static void ImGui_ImplSDLRenderer3_SetupRenderState() +{ + ImGui_ImplSDLRenderer3_Data* bd = ImGui_ImplSDLRenderer3_GetBackendData(); + + // Clear out any viewports and cliprect set by the user + // FIXME: Technically speaking there are lots of other things we could backup/setup/restore during our render process. + SDL_SetRenderViewport(bd->SDLRenderer, nullptr); + SDL_SetRenderClipRect(bd->SDLRenderer, nullptr); +} + +void ImGui_ImplSDLRenderer3_NewFrame() +{ + ImGui_ImplSDLRenderer3_Data* bd = ImGui_ImplSDLRenderer3_GetBackendData(); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplSDLRenderer3_Init()?"); + + if (!bd->FontTexture) + ImGui_ImplSDLRenderer3_CreateDeviceObjects(); +} + +void ImGui_ImplSDLRenderer3_RenderDrawData(ImDrawData* draw_data) +{ + ImGui_ImplSDLRenderer3_Data* bd = ImGui_ImplSDLRenderer3_GetBackendData(); + + // If there's a scale factor set by the user, use that instead + // If the user has specified a scale factor to SDL_Renderer already via SDL_RenderSetScale(), SDL will scale whatever we pass + // to SDL_RenderGeometryRaw() by that scale factor. In that case we don't want to be also scaling it ourselves here. + float rsx = 1.0f; + float rsy = 1.0f; + SDL_GetRenderScale(bd->SDLRenderer, &rsx, &rsy); + ImVec2 render_scale; + render_scale.x = (rsx == 1.0f) ? draw_data->FramebufferScale.x : 1.0f; + render_scale.y = (rsy == 1.0f) ? draw_data->FramebufferScale.y : 1.0f; + + // Avoid rendering when minimized, scale coordinates for retina displays (screen coordinates != framebuffer coordinates) + int fb_width = (int)(draw_data->DisplaySize.x * render_scale.x); + int fb_height = (int)(draw_data->DisplaySize.y * render_scale.y); + if (fb_width == 0 || fb_height == 0) + return; + + // Backup SDL_Renderer state that will be modified to restore it afterwards + struct BackupSDLRendererState + { + SDL_Rect Viewport; + bool ClipEnabled; + SDL_Rect ClipRect; + }; + BackupSDLRendererState old = {}; + old.ClipEnabled = SDL_RenderClipEnabled(bd->SDLRenderer) == SDL_TRUE; + SDL_GetRenderViewport(bd->SDLRenderer, &old.Viewport); + SDL_GetRenderClipRect(bd->SDLRenderer, &old.ClipRect); + + // Will project scissor/clipping rectangles into framebuffer space + ImVec2 clip_off = draw_data->DisplayPos; // (0,0) unless using multi-viewports + ImVec2 clip_scale = render_scale; + + // Render command lists + ImGui_ImplSDLRenderer3_SetupRenderState(); + for (int n = 0; n < draw_data->CmdListsCount; n++) + { + const ImDrawList* cmd_list = draw_data->CmdLists[n]; + const ImDrawVert* vtx_buffer = cmd_list->VtxBuffer.Data; + const ImDrawIdx* idx_buffer = cmd_list->IdxBuffer.Data; + + for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) + { + const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; + if (pcmd->UserCallback) + { + // User callback, registered via ImDrawList::AddCallback() + // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) + if (pcmd->UserCallback == ImDrawCallback_ResetRenderState) + ImGui_ImplSDLRenderer3_SetupRenderState(); + else + pcmd->UserCallback(cmd_list, pcmd); + } + else + { + // Project scissor/clipping rectangles into framebuffer space + ImVec2 clip_min((pcmd->ClipRect.x - clip_off.x) * clip_scale.x, (pcmd->ClipRect.y - clip_off.y) * clip_scale.y); + ImVec2 clip_max((pcmd->ClipRect.z - clip_off.x) * clip_scale.x, (pcmd->ClipRect.w - clip_off.y) * clip_scale.y); + if (clip_min.x < 0.0f) { clip_min.x = 0.0f; } + if (clip_min.y < 0.0f) { clip_min.y = 0.0f; } + if (clip_max.x > (float)fb_width) { clip_max.x = (float)fb_width; } + if (clip_max.y > (float)fb_height) { clip_max.y = (float)fb_height; } + if (clip_max.x <= clip_min.x || clip_max.y <= clip_min.y) + continue; + + SDL_Rect r = { (int)(clip_min.x), (int)(clip_min.y), (int)(clip_max.x - clip_min.x), (int)(clip_max.y - clip_min.y) }; + SDL_SetRenderClipRect(bd->SDLRenderer, &r); + + const float* xy = (const float*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, pos)); + const float* uv = (const float*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, uv)); +#if SDL_VERSION_ATLEAST(2,0,19) + const SDL_Color* color = (const SDL_Color*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.19+ +#else + const int* color = (const int*)(const void*)((const char*)(vtx_buffer + pcmd->VtxOffset) + IM_OFFSETOF(ImDrawVert, col)); // SDL 2.0.17 and 2.0.18 +#endif + + // Bind texture, Draw + SDL_Texture* tex = (SDL_Texture*)pcmd->GetTexID(); + SDL_RenderGeometryRaw(bd->SDLRenderer, tex, + xy, (int)sizeof(ImDrawVert), + color, (int)sizeof(ImDrawVert), + uv, (int)sizeof(ImDrawVert), + cmd_list->VtxBuffer.Size - pcmd->VtxOffset, + idx_buffer + pcmd->IdxOffset, pcmd->ElemCount, sizeof(ImDrawIdx)); + } + } + } + + // Restore modified SDL_Renderer state + SDL_SetRenderViewport(bd->SDLRenderer, &old.Viewport); + SDL_SetRenderClipRect(bd->SDLRenderer, old.ClipEnabled ? &old.ClipRect : nullptr); +} + +// Called by Init/NewFrame/Shutdown +bool ImGui_ImplSDLRenderer3_CreateFontsTexture() +{ + ImGuiIO& io = ImGui::GetIO(); + ImGui_ImplSDLRenderer3_Data* bd = ImGui_ImplSDLRenderer3_GetBackendData(); + + // Build texture atlas + unsigned char* pixels; + int width, height; + io.Fonts->GetTexDataAsRGBA32(&pixels, &width, &height); // Load as RGBA 32-bit (75% of the memory is wasted, but default font is so small) because it is more likely to be compatible with user's existing shaders. If your ImTextureId represent a higher-level concept than just a GL texture id, consider calling GetTexDataAsAlpha8() instead to save on GPU memory. + + // Upload texture to graphics system + // (Bilinear sampling is required by default. Set 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines' or 'style.AntiAliasedLinesUseTex = false' to allow point/nearest sampling) + bd->FontTexture = SDL_CreateTexture(bd->SDLRenderer, SDL_PIXELFORMAT_ABGR8888, SDL_TEXTUREACCESS_STATIC, width, height); + if (bd->FontTexture == nullptr) + { + SDL_Log("error creating texture"); + return false; + } + SDL_UpdateTexture(bd->FontTexture, nullptr, pixels, 4 * width); + SDL_SetTextureBlendMode(bd->FontTexture, SDL_BLENDMODE_BLEND); + SDL_SetTextureScaleMode(bd->FontTexture, SDL_SCALEMODE_LINEAR); + + // Store our identifier + io.Fonts->SetTexID((ImTextureID)(intptr_t)bd->FontTexture); + + return true; +} + +void ImGui_ImplSDLRenderer3_DestroyFontsTexture() +{ + ImGuiIO& io = ImGui::GetIO(); + ImGui_ImplSDLRenderer3_Data* bd = ImGui_ImplSDLRenderer3_GetBackendData(); + if (bd->FontTexture) + { + io.Fonts->SetTexID(0); + SDL_DestroyTexture(bd->FontTexture); + bd->FontTexture = nullptr; + } +} + +bool ImGui_ImplSDLRenderer3_CreateDeviceObjects() +{ + return ImGui_ImplSDLRenderer3_CreateFontsTexture(); +} + +void ImGui_ImplSDLRenderer3_DestroyDeviceObjects() +{ + ImGui_ImplSDLRenderer3_DestroyFontsTexture(); +} + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/extern/imgui_patched/backends/imgui_impl_sdlrenderer3.h b/extern/imgui_patched/backends/imgui_impl_sdlrenderer3.h new file mode 100644 index 00000000..71eec439 --- /dev/null +++ b/extern/imgui_patched/backends/imgui_impl_sdlrenderer3.h @@ -0,0 +1,30 @@ +// dear imgui: Renderer Backend for SDL_Renderer for SDL3 +// (Requires: SDL 3.0.0+) + +// Note how SDL_Renderer is an _optional_ component of SDL3. +// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX. +// If your application will want to render any non trivial amount of graphics other than UI, +// please be aware that SDL_Renderer currently offers a limited graphic API to the end-user and +// it might be difficult to step out of those boundaries. + +// Implemented features: +// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID! +// [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. +// Missing features: +// [ ] Renderer: Multi-viewport support (multiple windows). + +#pragma once +#include "imgui.h" // IMGUI_IMPL_API + +struct SDL_Renderer; + +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer3_Init(SDL_Renderer* renderer); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer3_Shutdown(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer3_NewFrame(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer3_RenderDrawData(ImDrawData* draw_data); + +// Called by Init/NewFrame/Shutdown +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer3_CreateFontsTexture(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer3_DestroyFontsTexture(); +IMGUI_IMPL_API bool ImGui_ImplSDLRenderer3_CreateDeviceObjects(); +IMGUI_IMPL_API void ImGui_ImplSDLRenderer3_DestroyDeviceObjects(); diff --git a/extern/imgui_patched/backends/imgui_impl_vulkan.cpp b/extern/imgui_patched/backends/imgui_impl_vulkan.cpp index 1fc210e1..59bb6d65 100644 --- a/extern/imgui_patched/backends/imgui_impl_vulkan.cpp +++ b/extern/imgui_patched/backends/imgui_impl_vulkan.cpp @@ -2,9 +2,9 @@ // This needs to be used along with a Platform Backend (e.g. GLFW, SDL, Win32, custom..) // Implemented features: +// [x] Renderer: User texture binding. Use 'VkDescriptorSet' as ImTextureID. Read the FAQ about ImTextureID! See https://github.com/ocornut/imgui/pull/914 for discussions. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. // [x] Renderer: Multi-viewport / platform windows. With issues (flickering when creating a new viewport). -// [!] Renderer: User texture binding. Use 'VkDescriptorSet' as ImTextureID. Read the FAQ about ImTextureID! See https://github.com/ocornut/imgui/pull/914 for discussions. // Important: on 32-bit systems, user texture binding is only supported if your imconfig file has '#define ImTextureID ImU64'. // This is because we need ImTextureID to carry a 64-bit value and by default ImTextureID is defined as void*. @@ -31,7 +31,11 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-01-02: Vulkan: Fixed sampler passed to ImGui_ImplVulkan_AddTexture() not being honored + removed a bunch of duplicate code. +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. +// 2022-10-04: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). +// 2022-01-20: Vulkan: Added support for ImTextureID as VkDescriptorSet. User need to call ImGui_ImplVulkan_AddTexture(). Building for 32-bit targets requires '#define ImTextureID ImU64'. (#914). // 2021-10-15: Vulkan: Call vkCmdSetScissor() at the end of render a full-viewport to reduce likehood of issues with people using VK_DYNAMIC_STATE_SCISSOR in their app without calling vkCmdSetScissor() explicitly every frame. // 2021-06-29: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). // 2021-03-22: Vulkan: Fix mapped memory validation error when buffer sizes are not multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize. @@ -93,7 +97,7 @@ struct ImGui_ImplVulkanH_WindowRenderBuffers }; // For multi-viewport support: -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplVulkan_ViewportData { bool WindowOwned; @@ -204,6 +208,7 @@ static bool g_FunctionsLoaded = true; IMGUI_VULKAN_FUNC_MAP_MACRO(vkDeviceWaitIdle) \ IMGUI_VULKAN_FUNC_MAP_MACRO(vkFlushMappedMemoryRanges) \ IMGUI_VULKAN_FUNC_MAP_MACRO(vkFreeCommandBuffers) \ + IMGUI_VULKAN_FUNC_MAP_MACRO(vkFreeDescriptorSets) \ IMGUI_VULKAN_FUNC_MAP_MACRO(vkFreeMemory) \ IMGUI_VULKAN_FUNC_MAP_MACRO(vkGetBufferMemoryRequirements) \ IMGUI_VULKAN_FUNC_MAP_MACRO(vkGetImageMemoryRequirements) \ @@ -355,7 +360,7 @@ static uint32_t __glsl_shader_frag_spv[] = // FIXME: multi-context support is not tested and probably dysfunctional in this backend. static ImGui_ImplVulkan_Data* ImGui_ImplVulkan_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplVulkan_Data*)ImGui::GetIO().BackendRendererUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplVulkan_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; } static uint32_t ImGui_ImplVulkan_MemoryType(VkMemoryPropertyFlags properties, uint32_t type_bits) @@ -474,9 +479,9 @@ void ImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer comm // Allocate array to store enough vertex/index buffers. Each unique viewport gets its own storage. ImGui_ImplVulkan_ViewportData* viewport_renderer_data = (ImGui_ImplVulkan_ViewportData*)draw_data->OwnerViewport->RendererUserData; - IM_ASSERT(viewport_renderer_data != NULL); + IM_ASSERT(viewport_renderer_data != nullptr); ImGui_ImplVulkanH_WindowRenderBuffers* wrb = &viewport_renderer_data->RenderBuffers; - if (wrb->FrameRenderBuffers == NULL) + if (wrb->FrameRenderBuffers == nullptr) { wrb->Index = 0; wrb->Count = v->ImageCount; @@ -498,8 +503,8 @@ void ImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer comm CreateOrResizeBuffer(rb->IndexBuffer, rb->IndexBufferMemory, rb->IndexBufferSize, index_size, VK_BUFFER_USAGE_INDEX_BUFFER_BIT); // Upload vertex/index data into a single contiguous GPU buffer - ImDrawVert* vtx_dst = NULL; - ImDrawIdx* idx_dst = NULL; + ImDrawVert* vtx_dst = nullptr; + ImDrawIdx* idx_dst = nullptr; VkResult err = vkMapMemory(v->Device, rb->VertexBufferMemory, 0, rb->VertexBufferSize, 0, (void**)(&vtx_dst)); check_vk_result(err); err = vkMapMemory(v->Device, rb->IndexBufferMemory, 0, rb->IndexBufferSize, 0, (void**)(&idx_dst)); @@ -542,7 +547,7 @@ void ImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer comm for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) { const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback != NULL) + if (pcmd->UserCallback != nullptr) { // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) @@ -581,7 +586,7 @@ void ImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer comm IM_ASSERT(pcmd->TextureId == (ImTextureID)bd->FontDescriptorSet); desc_set[0] = bd->FontDescriptorSet; } - vkCmdBindDescriptorSets(command_buffer, VK_PIPELINE_BIND_POINT_GRAPHICS, bd->PipelineLayout, 0, 1, desc_set, 0, NULL); + vkCmdBindDescriptorSets(command_buffer, VK_PIPELINE_BIND_POINT_GRAPHICS, bd->PipelineLayout, 0, 1, desc_set, 0, nullptr); // Draw vkCmdDrawIndexed(command_buffer, pcmd->ElemCount, 1, pcmd->IdxOffset + global_idx_offset, pcmd->VtxOffset + global_vtx_offset, 0); @@ -594,7 +599,7 @@ void ImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer comm // Note: at this point both vkCmdSetViewport() and vkCmdSetScissor() have been called. // Our last values will leak into user/application rendering IF: // - Your app uses a pipeline with VK_DYNAMIC_STATE_VIEWPORT or VK_DYNAMIC_STATE_SCISSOR dynamic state - // - And you forgot to call vkCmdSetViewport() and vkCmdSetScissor() yourself to explicitely set that state. + // - And you forgot to call vkCmdSetViewport() and vkCmdSetScissor() yourself to explicitly set that state. // If you use VK_DYNAMIC_STATE_VIEWPORT or VK_DYNAMIC_STATE_SCISSOR you are responsible for setting the values before rendering. // In theory we should aim to backup/restore those values but I am not sure this is possible. // We perform a call to vkCmdSetScissor() to set back a full viewport which is likely to fix things for 99% users but technically this is not perfect. (See github #4644) @@ -686,7 +691,7 @@ bool ImGui_ImplVulkan_CreateFontsTexture(VkCommandBuffer command_buffer) // Upload to Buffer: { - char* map = NULL; + char* map = nullptr; err = vkMapMemory(v->Device, bd->UploadBufferMemory, 0, upload_size, 0, (void**)(&map)); check_vk_result(err); memcpy(map, pixels, upload_size); @@ -712,7 +717,7 @@ bool ImGui_ImplVulkan_CreateFontsTexture(VkCommandBuffer command_buffer) copy_barrier[0].subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; copy_barrier[0].subresourceRange.levelCount = 1; copy_barrier[0].subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer, VK_PIPELINE_STAGE_HOST_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, 0, 0, NULL, 0, NULL, 1, copy_barrier); + vkCmdPipelineBarrier(command_buffer, VK_PIPELINE_STAGE_HOST_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, 0, 0, nullptr, 0, nullptr, 1, copy_barrier); VkBufferImageCopy region = {}; region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; @@ -734,7 +739,7 @@ bool ImGui_ImplVulkan_CreateFontsTexture(VkCommandBuffer command_buffer) use_barrier[0].subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; use_barrier[0].subresourceRange.levelCount = 1; use_barrier[0].subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, 0, 0, NULL, 0, NULL, 1, use_barrier); + vkCmdPipelineBarrier(command_buffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, 0, 0, nullptr, 0, nullptr, 1, use_barrier); } // Store our identifier @@ -767,72 +772,6 @@ static void ImGui_ImplVulkan_CreateShaderModules(VkDevice device, const VkAlloca } } -static void ImGui_ImplVulkan_CreateFontSampler(VkDevice device, const VkAllocationCallbacks* allocator) -{ - ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); - if (bd->FontSampler) - return; - - // Bilinear sampling is required by default. Set 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines' or 'style.AntiAliasedLinesUseTex = false' to allow point/nearest sampling. - VkSamplerCreateInfo info = {}; - info.sType = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO; - info.magFilter = VK_FILTER_LINEAR; - info.minFilter = VK_FILTER_LINEAR; - info.mipmapMode = VK_SAMPLER_MIPMAP_MODE_LINEAR; - info.addressModeU = VK_SAMPLER_ADDRESS_MODE_REPEAT; - info.addressModeV = VK_SAMPLER_ADDRESS_MODE_REPEAT; - info.addressModeW = VK_SAMPLER_ADDRESS_MODE_REPEAT; - info.minLod = -1000; - info.maxLod = 1000; - info.maxAnisotropy = 1.0f; - VkResult err = vkCreateSampler(device, &info, allocator, &bd->FontSampler); - check_vk_result(err); -} - -static void ImGui_ImplVulkan_CreateDescriptorSetLayout(VkDevice device, const VkAllocationCallbacks* allocator) -{ - ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); - if (bd->DescriptorSetLayout) - return; - - ImGui_ImplVulkan_CreateFontSampler(device, allocator); - VkSampler sampler[1] = { bd->FontSampler }; - VkDescriptorSetLayoutBinding binding[1] = {}; - binding[0].descriptorType = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER; - binding[0].descriptorCount = 1; - binding[0].stageFlags = VK_SHADER_STAGE_FRAGMENT_BIT; - binding[0].pImmutableSamplers = sampler; - VkDescriptorSetLayoutCreateInfo info = {}; - info.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO; - info.bindingCount = 1; - info.pBindings = binding; - VkResult err = vkCreateDescriptorSetLayout(device, &info, allocator, &bd->DescriptorSetLayout); - check_vk_result(err); -} - -static void ImGui_ImplVulkan_CreatePipelineLayout(VkDevice device, const VkAllocationCallbacks* allocator) -{ - ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); - if (bd->PipelineLayout) - return; - - // Constants: we are using 'vec2 offset' and 'vec2 scale' instead of a full 3d projection matrix - ImGui_ImplVulkan_CreateDescriptorSetLayout(device, allocator); - VkPushConstantRange push_constants[1] = {}; - push_constants[0].stageFlags = VK_SHADER_STAGE_VERTEX_BIT; - push_constants[0].offset = sizeof(float) * 0; - push_constants[0].size = sizeof(float) * 4; - VkDescriptorSetLayout set_layout[1] = { bd->DescriptorSetLayout }; - VkPipelineLayoutCreateInfo layout_info = {}; - layout_info.sType = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO; - layout_info.setLayoutCount = 1; - layout_info.pSetLayouts = set_layout; - layout_info.pushConstantRangeCount = 1; - layout_info.pPushConstantRanges = push_constants; - VkResult err = vkCreatePipelineLayout(device, &layout_info, allocator, &bd->PipelineLayout); - check_vk_result(err); -} - static void ImGui_ImplVulkan_CreatePipeline(VkDevice device, const VkAllocationCallbacks* allocator, VkPipelineCache pipelineCache, VkRenderPass renderPass, VkSampleCountFlagBits MSAASamples, VkPipeline* pipeline, uint32_t subpass) { ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); @@ -917,8 +856,6 @@ static void ImGui_ImplVulkan_CreatePipeline(VkDevice device, const VkAllocationC dynamic_state.dynamicStateCount = (uint32_t)IM_ARRAYSIZE(dynamic_states); dynamic_state.pDynamicStates = dynamic_states; - ImGui_ImplVulkan_CreatePipelineLayout(device, allocator); - VkGraphicsPipelineCreateInfo info = {}; info.sType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO; info.flags = bd->PipelineCreateFlags; @@ -947,6 +884,7 @@ bool ImGui_ImplVulkan_CreateDeviceObjects() if (!bd->FontSampler) { + // Bilinear sampling is required by default. Set 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines' or 'style.AntiAliasedLinesUseTex = false' to allow point/nearest sampling. VkSamplerCreateInfo info = {}; info.sType = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO; info.magFilter = VK_FILTER_LINEAR; @@ -964,12 +902,10 @@ bool ImGui_ImplVulkan_CreateDeviceObjects() if (!bd->DescriptorSetLayout) { - VkSampler sampler[1] = {bd->FontSampler}; VkDescriptorSetLayoutBinding binding[1] = {}; binding[0].descriptorType = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER; binding[0].descriptorCount = 1; binding[0].stageFlags = VK_SHADER_STAGE_FRAGMENT_BIT; - binding[0].pImmutableSamplers = sampler; VkDescriptorSetLayoutCreateInfo info = {}; info.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO; info.bindingCount = 1; @@ -1044,7 +980,7 @@ bool ImGui_ImplVulkan_LoadFunctions(PFN_vkVoidFunction(*loader_func)(const ch #ifdef VK_NO_PROTOTYPES #define IMGUI_VULKAN_FUNC_LOAD(func) \ func = reinterpret_cast(loader_func(#func, user_data)); \ - if (func == NULL) \ + if (func == nullptr) \ return false; IMGUI_VULKAN_FUNC_MAP(IMGUI_VULKAN_FUNC_LOAD) #undef IMGUI_VULKAN_FUNC_LOAD @@ -1061,7 +997,7 @@ bool ImGui_ImplVulkan_Init(ImGui_ImplVulkan_InitInfo* info, VkRenderPass rend IM_ASSERT(g_FunctionsLoaded && "Need to call ImGui_ImplVulkan_LoadFunctions() if IMGUI_IMPL_VULKAN_NO_PROTOTYPES or VK_NO_PROTOTYPES are set!"); ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendRendererUserData == NULL && "Already initialized a renderer backend!"); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); // Setup backend capabilities flags ImGui_ImplVulkan_Data* bd = IM_NEW(ImGui_ImplVulkan_Data)(); @@ -1098,7 +1034,7 @@ bool ImGui_ImplVulkan_Init(ImGui_ImplVulkan_InitInfo* info, VkRenderPass rend void ImGui_ImplVulkan_Shutdown() { ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); - IM_ASSERT(bd != NULL && "No renderer backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); // First destroy objects in all viewports @@ -1108,20 +1044,21 @@ void ImGui_ImplVulkan_Shutdown() ImGuiViewport* main_viewport = ImGui::GetMainViewport(); if (ImGui_ImplVulkan_ViewportData* vd = (ImGui_ImplVulkan_ViewportData*)main_viewport->RendererUserData) IM_DELETE(vd); - main_viewport->RendererUserData = NULL; + main_viewport->RendererUserData = nullptr; // Clean up windows ImGui_ImplVulkan_ShutdownPlatformInterface(); - io.BackendRendererName = NULL; - io.BackendRendererUserData = NULL; + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_RendererHasVtxOffset | ImGuiBackendFlags_RendererHasViewports); IM_DELETE(bd); } void ImGui_ImplVulkan_NewFrame() { ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplVulkan_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplVulkan_Init()?"); IM_UNUSED(bd); } @@ -1172,11 +1109,18 @@ VkDescriptorSet ImGui_ImplVulkan_AddTexture(VkSampler sampler, VkImageView image write_desc[0].descriptorCount = 1; write_desc[0].descriptorType = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER; write_desc[0].pImageInfo = desc_image; - vkUpdateDescriptorSets(v->Device, 1, write_desc, 0, NULL); + vkUpdateDescriptorSets(v->Device, 1, write_desc, 0, nullptr); } return descriptor_set; } +void ImGui_ImplVulkan_RemoveTexture(VkDescriptorSet descriptor_set) +{ + ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); + ImGui_ImplVulkan_InitInfo* v = &bd->VulkanInitInfo; + vkFreeDescriptorSets(v->Device, v->DescriptorPool, 1, &descriptor_set); +} + //------------------------------------------------------------------------- // Internal / Miscellaneous Vulkan Helpers // (Used by example's main.cpp. Used by multi-viewport features. PROBABLY NOT used by your own app.) @@ -1196,7 +1140,7 @@ VkDescriptorSet ImGui_ImplVulkan_AddTexture(VkSampler sampler, VkImageView image VkSurfaceFormatKHR ImGui_ImplVulkanH_SelectSurfaceFormat(VkPhysicalDevice physical_device, VkSurfaceKHR surface, const VkFormat* request_formats, int request_formats_count, VkColorSpaceKHR request_color_space) { IM_ASSERT(g_FunctionsLoaded && "Need to call ImGui_ImplVulkan_LoadFunctions() if IMGUI_IMPL_VULKAN_NO_PROTOTYPES or VK_NO_PROTOTYPES are set!"); - IM_ASSERT(request_formats != NULL); + IM_ASSERT(request_formats != nullptr); IM_ASSERT(request_formats_count > 0); // Per Spec Format and View Format are expected to be the same unless VK_IMAGE_CREATE_MUTABLE_BIT was set at image creation @@ -1204,7 +1148,7 @@ VkSurfaceFormatKHR ImGui_ImplVulkanH_SelectSurfaceFormat(VkPhysicalDevice physic // Additionally several new color spaces were introduced with Vulkan Spec v1.0.40, // hence we must make sure that a format with the mostly available color space, VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, is found and used. uint32_t avail_count; - vkGetPhysicalDeviceSurfaceFormatsKHR(physical_device, surface, &avail_count, NULL); + vkGetPhysicalDeviceSurfaceFormatsKHR(physical_device, surface, &avail_count, nullptr); ImVector avail_format; avail_format.resize((int)avail_count); vkGetPhysicalDeviceSurfaceFormatsKHR(physical_device, surface, &avail_count, avail_format.Data); @@ -1241,12 +1185,12 @@ VkSurfaceFormatKHR ImGui_ImplVulkanH_SelectSurfaceFormat(VkPhysicalDevice physic VkPresentModeKHR ImGui_ImplVulkanH_SelectPresentMode(VkPhysicalDevice physical_device, VkSurfaceKHR surface, const VkPresentModeKHR* request_modes, int request_modes_count) { IM_ASSERT(g_FunctionsLoaded && "Need to call ImGui_ImplVulkan_LoadFunctions() if IMGUI_IMPL_VULKAN_NO_PROTOTYPES or VK_NO_PROTOTYPES are set!"); - IM_ASSERT(request_modes != NULL); + IM_ASSERT(request_modes != nullptr); IM_ASSERT(request_modes_count > 0); // Request a certain mode and confirm that it is available. If not use VK_PRESENT_MODE_FIFO_KHR which is mandatory uint32_t avail_count = 0; - vkGetPhysicalDeviceSurfacePresentModesKHR(physical_device, surface, &avail_count, NULL); + vkGetPhysicalDeviceSurfacePresentModesKHR(physical_device, surface, &avail_count, nullptr); ImVector avail_modes; avail_modes.resize((int)avail_count); vkGetPhysicalDeviceSurfacePresentModesKHR(physical_device, surface, &avail_count, avail_modes.Data); @@ -1338,8 +1282,8 @@ void ImGui_ImplVulkanH_CreateWindowSwapChain(VkPhysicalDevice physical_device, V } IM_FREE(wd->Frames); IM_FREE(wd->FrameSemaphores); - wd->Frames = NULL; - wd->FrameSemaphores = NULL; + wd->Frames = nullptr; + wd->FrameSemaphores = nullptr; wd->ImageCount = 0; if (wd->RenderPass) vkDestroyRenderPass(device, wd->RenderPass, allocator); @@ -1386,7 +1330,7 @@ void ImGui_ImplVulkanH_CreateWindowSwapChain(VkPhysicalDevice physical_device, V } err = vkCreateSwapchainKHR(device, &info, allocator, &wd->Swapchain); check_vk_result(err); - err = vkGetSwapchainImagesKHR(device, wd->Swapchain, &wd->ImageCount, NULL); + err = vkGetSwapchainImagesKHR(device, wd->Swapchain, &wd->ImageCount, nullptr); check_vk_result(err); VkImage backbuffers[16] = {}; IM_ASSERT(wd->ImageCount >= min_image_count); @@ -1394,7 +1338,7 @@ void ImGui_ImplVulkanH_CreateWindowSwapChain(VkPhysicalDevice physical_device, V err = vkGetSwapchainImagesKHR(device, wd->Swapchain, &wd->ImageCount, backbuffers); check_vk_result(err); - IM_ASSERT(wd->Frames == NULL); + IM_ASSERT(wd->Frames == nullptr); wd->Frames = (ImGui_ImplVulkanH_Frame*)IM_ALLOC(sizeof(ImGui_ImplVulkanH_Frame) * wd->ImageCount); wd->FrameSemaphores = (ImGui_ImplVulkanH_FrameSemaphores*)IM_ALLOC(sizeof(ImGui_ImplVulkanH_FrameSemaphores) * wd->ImageCount); memset(wd->Frames, 0, sizeof(wd->Frames[0]) * wd->ImageCount); @@ -1510,8 +1454,8 @@ void ImGui_ImplVulkanH_DestroyWindow(VkInstance instance, VkDevice device, ImGui } IM_FREE(wd->Frames); IM_FREE(wd->FrameSemaphores); - wd->Frames = NULL; - wd->FrameSemaphores = NULL; + wd->Frames = nullptr; + wd->FrameSemaphores = nullptr; vkDestroyPipeline(device, wd->Pipeline, allocator); vkDestroyRenderPass(device, wd->RenderPass, allocator); vkDestroySwapchainKHR(device, wd->Swapchain, allocator); @@ -1555,7 +1499,7 @@ void ImGui_ImplVulkanH_DestroyWindowRenderBuffers(VkDevice device, ImGui_ImplVul for (uint32_t n = 0; n < buffers->Count; n++) ImGui_ImplVulkanH_DestroyFrameRenderBuffers(device, &buffers->FrameRenderBuffers[n], allocator); IM_FREE(buffers->FrameRenderBuffers); - buffers->FrameRenderBuffers = NULL; + buffers->FrameRenderBuffers = nullptr; buffers->Index = 0; buffers->Count = 0; } @@ -1615,7 +1559,7 @@ static void ImGui_ImplVulkan_CreateWindow(ImGuiViewport* viewport) static void ImGui_ImplVulkan_DestroyWindow(ImGuiViewport* viewport) { - // The main viewport (owned by the application) will always have RendererUserData == NULL since we didn't create the data for it. + // The main viewport (owned by the application) will always have RendererUserData == 0 since we didn't create the data for it. ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); if (ImGui_ImplVulkan_ViewportData* vd = (ImGui_ImplVulkan_ViewportData*)viewport->RendererUserData) { @@ -1625,14 +1569,14 @@ static void ImGui_ImplVulkan_DestroyWindow(ImGuiViewport* viewport) ImGui_ImplVulkanH_DestroyWindowRenderBuffers(v->Device, &vd->RenderBuffers, v->Allocator); IM_DELETE(vd); } - viewport->RendererUserData = NULL; + viewport->RendererUserData = nullptr; } static void ImGui_ImplVulkan_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) { ImGui_ImplVulkan_Data* bd = ImGui_ImplVulkan_GetBackendData(); ImGui_ImplVulkan_ViewportData* vd = (ImGui_ImplVulkan_ViewportData*)viewport->RendererUserData; - if (vd == NULL) // This is NULL for the main viewport (which is left to the user/app to handle) + if (vd == nullptr) // This is nullptr for the main viewport (which is left to the user/app to handle) return; ImGui_ImplVulkan_InitInfo* v = &bd->VulkanInitInfo; vd->Window.ClearEnable = (viewport->Flags & ImGuiViewportFlags_NoRendererClear) ? false : true; @@ -1682,7 +1626,7 @@ static void ImGui_ImplVulkan_RenderWindow(ImGuiViewport* viewport, void*) info.renderArea.extent.width = wd->Width; info.renderArea.extent.height = wd->Height; info.clearValueCount = (viewport->Flags & ImGuiViewportFlags_NoRendererClear) ? 0 : 1; - info.pClearValues = (viewport->Flags & ImGuiViewportFlags_NoRendererClear) ? NULL : &wd->ClearValue; + info.pClearValues = (viewport->Flags & ImGuiViewportFlags_NoRendererClear) ? nullptr : &wd->ClearValue; vkCmdBeginRenderPass(fd->CommandBuffer, &info, VK_SUBPASS_CONTENTS_INLINE); } } @@ -1745,7 +1689,7 @@ void ImGui_ImplVulkan_InitPlatformInterface() { ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO(); if (ImGui::GetIO().ConfigFlags & ImGuiConfigFlags_ViewportsEnable) - IM_ASSERT(platform_io.Platform_CreateVkSurface != NULL && "Platform needs to setup the CreateVkSurface handler."); + IM_ASSERT(platform_io.Platform_CreateVkSurface != nullptr && "Platform needs to setup the CreateVkSurface handler."); platform_io.Renderer_CreateWindow = ImGui_ImplVulkan_CreateWindow; platform_io.Renderer_DestroyWindow = ImGui_ImplVulkan_DestroyWindow; platform_io.Renderer_SetWindowSize = ImGui_ImplVulkan_SetWindowSize; diff --git a/extern/imgui_patched/backends/imgui_impl_vulkan.h b/extern/imgui_patched/backends/imgui_impl_vulkan.h index d2cb0ab4..044437ad 100644 --- a/extern/imgui_patched/backends/imgui_impl_vulkan.h +++ b/extern/imgui_patched/backends/imgui_impl_vulkan.h @@ -2,9 +2,9 @@ // This needs to be used along with a Platform Backend (e.g. GLFW, SDL, Win32, custom..) // Implemented features: +// [x] Renderer: User texture binding. Use 'VkDescriptorSet' as ImTextureID. Read the FAQ about ImTextureID! See https://github.com/ocornut/imgui/pull/914 for discussions. // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. // [x] Renderer: Multi-viewport / platform windows. With issues (flickering when creating a new viewport). -// [!] Renderer: User texture binding. Use 'VkDescriptorSet' as ImTextureID. Read the FAQ about ImTextureID! See https://github.com/ocornut/imgui/pull/914 for discussions. // Important: on 32-bit systems, user texture binding is only supported if your imconfig file has '#define ImTextureID ImU64'. // See imgui_impl_vulkan.cpp file for details. @@ -74,12 +74,14 @@ IMGUI_IMPL_API void ImGui_ImplVulkan_DestroyFontUploadObjects(); IMGUI_IMPL_API void ImGui_ImplVulkan_SetMinImageCount(uint32_t min_image_count); // To override MinImageCount after initialization (e.g. if swap chain is recreated) // Register a texture (VkDescriptorSet == ImTextureID) -// FIXME: This is experimental in the sense that we are unsure how to best design/tackle this problem, please post to https://github.com/ocornut/imgui/pull/914 if you have suggestions. +// FIXME: This is experimental in the sense that we are unsure how to best design/tackle this problem +// Please post to https://github.com/ocornut/imgui/pull/914 if you have suggestions. IMGUI_IMPL_API VkDescriptorSet ImGui_ImplVulkan_AddTexture(VkSampler sampler, VkImageView image_view, VkImageLayout image_layout); +IMGUI_IMPL_API void ImGui_ImplVulkan_RemoveTexture(VkDescriptorSet descriptor_set); // Optional: load Vulkan functions with a custom function loader // This is only useful with IMGUI_IMPL_VULKAN_NO_PROTOTYPES / VK_NO_PROTOTYPES -IMGUI_IMPL_API bool ImGui_ImplVulkan_LoadFunctions(PFN_vkVoidFunction(*loader_func)(const char* function_name, void* user_data), void* user_data = NULL); +IMGUI_IMPL_API bool ImGui_ImplVulkan_LoadFunctions(PFN_vkVoidFunction(*loader_func)(const char* function_name, void* user_data), void* user_data = nullptr); //------------------------------------------------------------------------- // Internal / Miscellaneous Vulkan Helpers diff --git a/extern/imgui_patched/backends/imgui_impl_wgpu.cpp b/extern/imgui_patched/backends/imgui_impl_wgpu.cpp index b9f363b9..8da8e457 100644 --- a/extern/imgui_patched/backends/imgui_impl_wgpu.cpp +++ b/extern/imgui_patched/backends/imgui_impl_wgpu.cpp @@ -13,8 +13,14 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) +// 2023-04-11: Align buffer sizes. Use WGSL shaders instead of precompiled SPIR-V. +// 2023-04-11: Reorganized backend to pull data from a single structure to facilitate usage with multiple-contexts (all g_XXXX access changed to bd->XXXX). +// 2023-01-25: Revert automatic pipeline layout generation (see https://github.com/gpuweb/gpuweb/issues/2470) +// 2022-11-24: Fixed validation error with default depth buffer settings. +// 2022-11-10: Fixed rendering when a depth buffer is enabled. Added 'WGPUTextureFormat depth_format' parameter to ImGui_ImplWGPU_Init(). +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. // 2021-11-29: Passing explicit buffer sizes to wgpuRenderPassEncoderSetVertexBuffer()/wgpuRenderPassEncoderSetIndexBuffer(). -// 2021-08-24: Fix for latest specs. +// 2021-08-24: Fixed for latest specs. // 2021-05-24: Add support for draw_data->FramebufferScale. // 2021-05-19: Replaced direct access to ImDrawCmd::TextureId with a call to ImDrawCmd::GetTexID(). (will become a requirement) // 2021-05-16: Update to latest WebGPU specs (compatible with Emscripten 2.0.20 and Chrome Canary 92). @@ -26,33 +32,22 @@ #include #include -#define HAS_EMSCRIPTEN_VERSION(major, minor, tiny) (__EMSCRIPTEN_major__ > (major) || (__EMSCRIPTEN_major__ == (major) && __EMSCRIPTEN_minor__ > (minor)) || (__EMSCRIPTEN_major__ == (major) && __EMSCRIPTEN_minor__ == (minor) && __EMSCRIPTEN_tiny__ >= (tiny))) - -#if defined(__EMSCRIPTEN__) && !HAS_EMSCRIPTEN_VERSION(2, 0, 20) -#error "Requires at least emscripten 2.0.20" -#endif - // Dear ImGui prototypes from imgui_internal.h extern ImGuiID ImHashData(const void* data_p, size_t data_size, ImU32 seed = 0); +#define MEMALIGN(_SIZE,_ALIGN) (((_SIZE) + ((_ALIGN) - 1)) & ~((_ALIGN) - 1)) // Memory align (copied from IM_ALIGN() macro). // WebGPU data -static WGPUDevice g_wgpuDevice = NULL; -static WGPUQueue g_defaultQueue = NULL; -static WGPUTextureFormat g_renderTargetFormat = WGPUTextureFormat_Undefined; -static WGPURenderPipeline g_pipelineState = NULL; - struct RenderResources { - WGPUTexture FontTexture; // Font texture - WGPUTextureView FontTextureView; // Texture view for font texture - WGPUSampler Sampler; // Sampler for the font texture - WGPUBuffer Uniforms; // Shader uniforms - WGPUBindGroup CommonBindGroup; // Resources bind-group to bind the common resources to pipeline - ImGuiStorage ImageBindGroups; // Resources bind-group to bind the font/image resources to pipeline (this is a key->value map) - WGPUBindGroup ImageBindGroup; // Default font-resource of Dear ImGui - WGPUBindGroupLayout ImageBindGroupLayout; // Cache layout used for the image bind group. Avoids allocating unnecessary JS objects when working with WebASM + WGPUTexture FontTexture = nullptr; // Font texture + WGPUTextureView FontTextureView = nullptr; // Texture view for font texture + WGPUSampler Sampler = nullptr; // Sampler for the font texture + WGPUBuffer Uniforms = nullptr; // Shader uniforms + WGPUBindGroup CommonBindGroup = nullptr; // Resources bind-group to bind the common resources to pipeline + ImGuiStorage ImageBindGroups; // Resources bind-group to bind the font/image resources to pipeline (this is a key->value map) + WGPUBindGroup ImageBindGroup = nullptr; // Default font-resource of Dear ImGui + WGPUBindGroupLayout ImageBindGroupLayout = nullptr; // Cache layout used for the image bind group. Avoids allocating unnecessary JS objects when working with WebASM }; -static RenderResources g_resources; struct FrameResources { @@ -63,186 +58,151 @@ struct FrameResources int IndexBufferSize; int VertexBufferSize; }; -static FrameResources* g_pFrameResources = NULL; -static unsigned int g_numFramesInFlight = 0; -static unsigned int g_frameIndex = UINT_MAX; struct Uniforms { float MVP[4][4]; + float Gamma; }; +struct ImGui_ImplWGPU_Data +{ + WGPUDevice wgpuDevice = nullptr; + WGPUQueue defaultQueue = nullptr; + WGPUTextureFormat renderTargetFormat = WGPUTextureFormat_Undefined; + WGPUTextureFormat depthStencilFormat = WGPUTextureFormat_Undefined; + WGPURenderPipeline pipelineState = nullptr; + + RenderResources renderResources; + FrameResources* pFrameResources = nullptr; + unsigned int numFramesInFlight = 0; + unsigned int frameIndex = UINT_MAX; +}; + +// Backend data stored in io.BackendRendererUserData to allow support for multiple Dear ImGui contexts +// It is STRONGLY preferred that you use docking branch with multi-viewports (== single Dear ImGui context + multiple windows) instead of multiple Dear ImGui contexts. +static ImGui_ImplWGPU_Data* ImGui_ImplWGPU_GetBackendData() +{ + return ImGui::GetCurrentContext() ? (ImGui_ImplWGPU_Data*)ImGui::GetIO().BackendRendererUserData : nullptr; +} + //----------------------------------------------------------------------------- // SHADERS //----------------------------------------------------------------------------- -// glsl_shader.vert, compiled with: -// # glslangValidator -V -x -o glsl_shader.vert.u32 glsl_shader.vert -/* -#version 450 core -layout(location = 0) in vec2 aPos; -layout(location = 1) in vec2 aUV; -layout(location = 2) in vec4 aColor; -layout(set=0, binding = 0) uniform transform { mat4 mvp; }; - -out gl_PerVertex { vec4 gl_Position; }; -layout(location = 0) out struct { vec4 Color; vec2 UV; } Out; - -void main() -{ - Out.Color = aColor; - Out.UV = aUV; - gl_Position = mvp * vec4(aPos, 0, 1); -} -*/ -static uint32_t __glsl_shader_vert_spv[] = -{ - 0x07230203,0x00010000,0x00080007,0x0000002c,0x00000000,0x00020011,0x00000001,0x0006000b, - 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, - 0x000a000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000b,0x0000000f,0x00000015, - 0x0000001b,0x00000023,0x00030003,0x00000002,0x000001c2,0x00040005,0x00000004,0x6e69616d, - 0x00000000,0x00030005,0x00000009,0x00000000,0x00050006,0x00000009,0x00000000,0x6f6c6f43, - 0x00000072,0x00040006,0x00000009,0x00000001,0x00005655,0x00030005,0x0000000b,0x0074754f, - 0x00040005,0x0000000f,0x6c6f4361,0x0000726f,0x00030005,0x00000015,0x00565561,0x00060005, - 0x00000019,0x505f6c67,0x65567265,0x78657472,0x00000000,0x00060006,0x00000019,0x00000000, - 0x505f6c67,0x7469736f,0x006e6f69,0x00030005,0x0000001b,0x00000000,0x00050005,0x0000001d, - 0x6e617274,0x726f6673,0x0000006d,0x00040006,0x0000001d,0x00000000,0x0070766d,0x00030005, - 0x0000001f,0x00000000,0x00040005,0x00000023,0x736f5061,0x00000000,0x00040047,0x0000000b, - 0x0000001e,0x00000000,0x00040047,0x0000000f,0x0000001e,0x00000002,0x00040047,0x00000015, - 0x0000001e,0x00000001,0x00050048,0x00000019,0x00000000,0x0000000b,0x00000000,0x00030047, - 0x00000019,0x00000002,0x00040048,0x0000001d,0x00000000,0x00000005,0x00050048,0x0000001d, - 0x00000000,0x00000023,0x00000000,0x00050048,0x0000001d,0x00000000,0x00000007,0x00000010, - 0x00030047,0x0000001d,0x00000002,0x00040047,0x0000001f,0x00000022,0x00000000,0x00040047, - 0x0000001f,0x00000021,0x00000000,0x00040047,0x00000023,0x0000001e,0x00000000,0x00020013, - 0x00000002,0x00030021,0x00000003,0x00000002,0x00030016,0x00000006,0x00000020,0x00040017, - 0x00000007,0x00000006,0x00000004,0x00040017,0x00000008,0x00000006,0x00000002,0x0004001e, - 0x00000009,0x00000007,0x00000008,0x00040020,0x0000000a,0x00000003,0x00000009,0x0004003b, - 0x0000000a,0x0000000b,0x00000003,0x00040015,0x0000000c,0x00000020,0x00000001,0x0004002b, - 0x0000000c,0x0000000d,0x00000000,0x00040020,0x0000000e,0x00000001,0x00000007,0x0004003b, - 0x0000000e,0x0000000f,0x00000001,0x00040020,0x00000011,0x00000003,0x00000007,0x0004002b, - 0x0000000c,0x00000013,0x00000001,0x00040020,0x00000014,0x00000001,0x00000008,0x0004003b, - 0x00000014,0x00000015,0x00000001,0x00040020,0x00000017,0x00000003,0x00000008,0x0003001e, - 0x00000019,0x00000007,0x00040020,0x0000001a,0x00000003,0x00000019,0x0004003b,0x0000001a, - 0x0000001b,0x00000003,0x00040018,0x0000001c,0x00000007,0x00000004,0x0003001e,0x0000001d, - 0x0000001c,0x00040020,0x0000001e,0x00000002,0x0000001d,0x0004003b,0x0000001e,0x0000001f, - 0x00000002,0x00040020,0x00000020,0x00000002,0x0000001c,0x0004003b,0x00000014,0x00000023, - 0x00000001,0x0004002b,0x00000006,0x00000025,0x00000000,0x0004002b,0x00000006,0x00000026, - 0x3f800000,0x00050036,0x00000002,0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005, - 0x0004003d,0x00000007,0x00000010,0x0000000f,0x00050041,0x00000011,0x00000012,0x0000000b, - 0x0000000d,0x0003003e,0x00000012,0x00000010,0x0004003d,0x00000008,0x00000016,0x00000015, - 0x00050041,0x00000017,0x00000018,0x0000000b,0x00000013,0x0003003e,0x00000018,0x00000016, - 0x00050041,0x00000020,0x00000021,0x0000001f,0x0000000d,0x0004003d,0x0000001c,0x00000022, - 0x00000021,0x0004003d,0x00000008,0x00000024,0x00000023,0x00050051,0x00000006,0x00000027, - 0x00000024,0x00000000,0x00050051,0x00000006,0x00000028,0x00000024,0x00000001,0x00070050, - 0x00000007,0x00000029,0x00000027,0x00000028,0x00000025,0x00000026,0x00050091,0x00000007, - 0x0000002a,0x00000022,0x00000029,0x00050041,0x00000011,0x0000002b,0x0000001b,0x0000000d, - 0x0003003e,0x0000002b,0x0000002a,0x000100fd,0x00010038 +static const char __shader_vert_wgsl[] = R"( +struct VertexInput { + @location(0) position: vec2, + @location(1) uv: vec2, + @location(2) color: vec4, }; -// glsl_shader.frag, compiled with: -// # glslangValidator -V -x -o glsl_shader.frag.u32 glsl_shader.frag -/* -#version 450 core -layout(location = 0) out vec4 fColor; -layout(set=0, binding=1) uniform sampler s; -layout(set=1, binding=0) uniform texture2D t; -layout(location = 0) in struct { vec4 Color; vec2 UV; } In; -void main() -{ - fColor = In.Color * texture(sampler2D(t, s), In.UV.st); -} -*/ -static uint32_t __glsl_shader_frag_spv[] = -{ - 0x07230203,0x00010000,0x00080007,0x00000023,0x00000000,0x00020011,0x00000001,0x0006000b, - 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, - 0x0007000f,0x00000004,0x00000004,0x6e69616d,0x00000000,0x00000009,0x0000000d,0x00030010, - 0x00000004,0x00000007,0x00030003,0x00000002,0x000001c2,0x00040005,0x00000004,0x6e69616d, - 0x00000000,0x00040005,0x00000009,0x6c6f4366,0x0000726f,0x00030005,0x0000000b,0x00000000, - 0x00050006,0x0000000b,0x00000000,0x6f6c6f43,0x00000072,0x00040006,0x0000000b,0x00000001, - 0x00005655,0x00030005,0x0000000d,0x00006e49,0x00030005,0x00000015,0x00000074,0x00030005, - 0x00000019,0x00000073,0x00040047,0x00000009,0x0000001e,0x00000000,0x00040047,0x0000000d, - 0x0000001e,0x00000000,0x00040047,0x00000015,0x00000022,0x00000001,0x00040047,0x00000015, - 0x00000021,0x00000000,0x00040047,0x00000019,0x00000022,0x00000000,0x00040047,0x00000019, - 0x00000021,0x00000001,0x00020013,0x00000002,0x00030021,0x00000003,0x00000002,0x00030016, - 0x00000006,0x00000020,0x00040017,0x00000007,0x00000006,0x00000004,0x00040020,0x00000008, - 0x00000003,0x00000007,0x0004003b,0x00000008,0x00000009,0x00000003,0x00040017,0x0000000a, - 0x00000006,0x00000002,0x0004001e,0x0000000b,0x00000007,0x0000000a,0x00040020,0x0000000c, - 0x00000001,0x0000000b,0x0004003b,0x0000000c,0x0000000d,0x00000001,0x00040015,0x0000000e, - 0x00000020,0x00000001,0x0004002b,0x0000000e,0x0000000f,0x00000000,0x00040020,0x00000010, - 0x00000001,0x00000007,0x00090019,0x00000013,0x00000006,0x00000001,0x00000000,0x00000000, - 0x00000000,0x00000001,0x00000000,0x00040020,0x00000014,0x00000000,0x00000013,0x0004003b, - 0x00000014,0x00000015,0x00000000,0x0002001a,0x00000017,0x00040020,0x00000018,0x00000000, - 0x00000017,0x0004003b,0x00000018,0x00000019,0x00000000,0x0003001b,0x0000001b,0x00000013, - 0x0004002b,0x0000000e,0x0000001d,0x00000001,0x00040020,0x0000001e,0x00000001,0x0000000a, - 0x00050036,0x00000002,0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005,0x00050041, - 0x00000010,0x00000011,0x0000000d,0x0000000f,0x0004003d,0x00000007,0x00000012,0x00000011, - 0x0004003d,0x00000013,0x00000016,0x00000015,0x0004003d,0x00000017,0x0000001a,0x00000019, - 0x00050056,0x0000001b,0x0000001c,0x00000016,0x0000001a,0x00050041,0x0000001e,0x0000001f, - 0x0000000d,0x0000001d,0x0004003d,0x0000000a,0x00000020,0x0000001f,0x00050057,0x00000007, - 0x00000021,0x0000001c,0x00000020,0x00050085,0x00000007,0x00000022,0x00000012,0x00000021, - 0x0003003e,0x00000009,0x00000022,0x000100fd,0x00010038 +struct VertexOutput { + @builtin(position) position: vec4, + @location(0) color: vec4, + @location(1) uv: vec2, }; +struct Uniforms { + mvp: mat4x4, + gamma: f32, +}; + +@group(0) @binding(0) var uniforms: Uniforms; + +@vertex +fn main(in: VertexInput) -> VertexOutput { + var out: VertexOutput; + out.position = uniforms.mvp * vec4(in.position, 0.0, 1.0); + out.color = in.color; + out.uv = in.uv; + return out; +} +)"; + +static const char __shader_frag_wgsl[] = R"( +struct VertexOutput { + @builtin(position) position: vec4, + @location(0) color: vec4, + @location(1) uv: vec2, +}; + +struct Uniforms { + mvp: mat4x4, + gamma: f32, +}; + +@group(0) @binding(0) var uniforms: Uniforms; +@group(0) @binding(1) var s: sampler; +@group(1) @binding(0) var t: texture_2d; + +@fragment +fn main(in: VertexOutput) -> @location(0) vec4 { + let color = in.color * textureSample(t, s, in.uv); + let corrected_color = pow(color.rgb, vec3(uniforms.gamma)); + return vec4(corrected_color, color.a); +} +)"; + static void SafeRelease(ImDrawIdx*& res) { if (res) delete[] res; - res = NULL; + res = nullptr; } static void SafeRelease(ImDrawVert*& res) { if (res) delete[] res; - res = NULL; + res = nullptr; } static void SafeRelease(WGPUBindGroupLayout& res) { if (res) wgpuBindGroupLayoutRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPUBindGroup& res) { if (res) wgpuBindGroupRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPUBuffer& res) { if (res) wgpuBufferRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPURenderPipeline& res) { if (res) wgpuRenderPipelineRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPUSampler& res) { if (res) wgpuSamplerRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPUShaderModule& res) { if (res) wgpuShaderModuleRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPUTextureView& res) { if (res) wgpuTextureViewRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(WGPUTexture& res) { if (res) wgpuTextureRelease(res); - res = NULL; + res = nullptr; } static void SafeRelease(RenderResources& res) @@ -264,35 +224,39 @@ static void SafeRelease(FrameResources& res) SafeRelease(res.VertexBufferHost); } -static WGPUProgrammableStageDescriptor ImGui_ImplWGPU_CreateShaderModule(uint32_t* binary_data, uint32_t binary_data_size) +static WGPUProgrammableStageDescriptor ImGui_ImplWGPU_CreateShaderModule(const char* wgsl_source) { - WGPUShaderModuleSPIRVDescriptor spirv_desc = {}; - spirv_desc.chain.sType = WGPUSType_ShaderModuleSPIRVDescriptor; - spirv_desc.codeSize = binary_data_size; - spirv_desc.code = binary_data; + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + + WGPUShaderModuleWGSLDescriptor wgsl_desc = {}; + wgsl_desc.chain.sType = WGPUSType_ShaderModuleWGSLDescriptor; + wgsl_desc.source = wgsl_source; WGPUShaderModuleDescriptor desc = {}; - desc.nextInChain = reinterpret_cast(&spirv_desc); + desc.nextInChain = reinterpret_cast(&wgsl_desc); WGPUProgrammableStageDescriptor stage_desc = {}; - stage_desc.module = wgpuDeviceCreateShaderModule(g_wgpuDevice, &desc); + stage_desc.module = wgpuDeviceCreateShaderModule(bd->wgpuDevice, &desc); stage_desc.entryPoint = "main"; return stage_desc; } static WGPUBindGroup ImGui_ImplWGPU_CreateImageBindGroup(WGPUBindGroupLayout layout, WGPUTextureView texture) { + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); WGPUBindGroupEntry image_bg_entries[] = { { nullptr, 0, 0, 0, 0, 0, texture } }; WGPUBindGroupDescriptor image_bg_descriptor = {}; image_bg_descriptor.layout = layout; image_bg_descriptor.entryCount = sizeof(image_bg_entries) / sizeof(WGPUBindGroupEntry); image_bg_descriptor.entries = image_bg_entries; - return wgpuDeviceCreateBindGroup(g_wgpuDevice, &image_bg_descriptor); + return wgpuDeviceCreateBindGroup(bd->wgpuDevice, &image_bg_descriptor); } static void ImGui_ImplWGPU_SetupRenderState(ImDrawData* draw_data, WGPURenderPassEncoder ctx, FrameResources* fr) { + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + // Setup orthographic projection matrix into our constant buffer // Our visible imgui space lies from draw_data->DisplayPos (top left) to draw_data->DisplayPos+data_data->DisplaySize (bottom right). { @@ -307,7 +271,38 @@ static void ImGui_ImplWGPU_SetupRenderState(ImDrawData* draw_data, WGPURenderPas { 0.0f, 0.0f, 0.5f, 0.0f }, { (R+L)/(L-R), (T+B)/(B-T), 0.5f, 1.0f }, }; - wgpuQueueWriteBuffer(g_defaultQueue, g_resources.Uniforms, 0, mvp, sizeof(mvp)); + wgpuQueueWriteBuffer(bd->defaultQueue, bd->renderResources.Uniforms, offsetof(Uniforms, MVP), mvp, sizeof(Uniforms::MVP)); + float gamma; + switch (bd->renderTargetFormat) + { + case WGPUTextureFormat_ASTC10x10UnormSrgb: + case WGPUTextureFormat_ASTC10x5UnormSrgb: + case WGPUTextureFormat_ASTC10x6UnormSrgb: + case WGPUTextureFormat_ASTC10x8UnormSrgb: + case WGPUTextureFormat_ASTC12x10UnormSrgb: + case WGPUTextureFormat_ASTC12x12UnormSrgb: + case WGPUTextureFormat_ASTC4x4UnormSrgb: + case WGPUTextureFormat_ASTC5x5UnormSrgb: + case WGPUTextureFormat_ASTC6x5UnormSrgb: + case WGPUTextureFormat_ASTC6x6UnormSrgb: + case WGPUTextureFormat_ASTC8x5UnormSrgb: + case WGPUTextureFormat_ASTC8x6UnormSrgb: + case WGPUTextureFormat_ASTC8x8UnormSrgb: + case WGPUTextureFormat_BC1RGBAUnormSrgb: + case WGPUTextureFormat_BC2RGBAUnormSrgb: + case WGPUTextureFormat_BC3RGBAUnormSrgb: + case WGPUTextureFormat_BC7RGBAUnormSrgb: + case WGPUTextureFormat_BGRA8UnormSrgb: + case WGPUTextureFormat_ETC2RGB8A1UnormSrgb: + case WGPUTextureFormat_ETC2RGB8UnormSrgb: + case WGPUTextureFormat_ETC2RGBA8UnormSrgb: + case WGPUTextureFormat_RGBA8UnormSrgb: + gamma = 2.2f; + break; + default: + gamma = 1.0f; + } + wgpuQueueWriteBuffer(bd->defaultQueue, bd->renderResources.Uniforms, offsetof(Uniforms, Gamma), &gamma, sizeof(Uniforms::Gamma)); } // Setup viewport @@ -316,8 +311,8 @@ static void ImGui_ImplWGPU_SetupRenderState(ImDrawData* draw_data, WGPURenderPas // Bind shader and vertex buffers wgpuRenderPassEncoderSetVertexBuffer(ctx, 0, fr->VertexBuffer, 0, fr->VertexBufferSize * sizeof(ImDrawVert)); wgpuRenderPassEncoderSetIndexBuffer(ctx, fr->IndexBuffer, sizeof(ImDrawIdx) == 2 ? WGPUIndexFormat_Uint16 : WGPUIndexFormat_Uint32, 0, fr->IndexBufferSize * sizeof(ImDrawIdx)); - wgpuRenderPassEncoderSetPipeline(ctx, g_pipelineState); - wgpuRenderPassEncoderSetBindGroup(ctx, 0, g_resources.CommonBindGroup, 0, NULL); + wgpuRenderPassEncoderSetPipeline(ctx, bd->pipelineState); + wgpuRenderPassEncoderSetBindGroup(ctx, 0, bd->renderResources.CommonBindGroup, 0, nullptr); // Setup blend factor WGPUColor blend_color = { 0.f, 0.f, 0.f, 0.f }; @@ -334,11 +329,12 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder // FIXME: Assuming that this only gets called once per frame! // If not, we can't just re-allocate the IB or VB, we'll have to do a proper allocator. - g_frameIndex = g_frameIndex + 1; - FrameResources* fr = &g_pFrameResources[g_frameIndex % g_numFramesInFlight]; + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + bd->frameIndex = bd->frameIndex + 1; + FrameResources* fr = &bd->pFrameResources[bd->frameIndex % bd->numFramesInFlight]; // Create and grow vertex/index buffers if needed - if (fr->VertexBuffer == NULL || fr->VertexBufferSize < draw_data->TotalVtxCount) + if (fr->VertexBuffer == nullptr || fr->VertexBufferSize < draw_data->TotalVtxCount) { if (fr->VertexBuffer) { @@ -350,19 +346,19 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder WGPUBufferDescriptor vb_desc = { - NULL, + nullptr, "Dear ImGui Vertex buffer", WGPUBufferUsage_CopyDst | WGPUBufferUsage_Vertex, - fr->VertexBufferSize * sizeof(ImDrawVert), + MEMALIGN(fr->VertexBufferSize * sizeof(ImDrawVert), 4), false }; - fr->VertexBuffer = wgpuDeviceCreateBuffer(g_wgpuDevice, &vb_desc); + fr->VertexBuffer = wgpuDeviceCreateBuffer(bd->wgpuDevice, &vb_desc); if (!fr->VertexBuffer) return; fr->VertexBufferHost = new ImDrawVert[fr->VertexBufferSize]; } - if (fr->IndexBuffer == NULL || fr->IndexBufferSize < draw_data->TotalIdxCount) + if (fr->IndexBuffer == nullptr || fr->IndexBufferSize < draw_data->TotalIdxCount) { if (fr->IndexBuffer) { @@ -374,13 +370,13 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder WGPUBufferDescriptor ib_desc = { - NULL, + nullptr, "Dear ImGui Index buffer", WGPUBufferUsage_CopyDst | WGPUBufferUsage_Index, - fr->IndexBufferSize * sizeof(ImDrawIdx), + MEMALIGN(fr->IndexBufferSize * sizeof(ImDrawIdx), 4), false }; - fr->IndexBuffer = wgpuDeviceCreateBuffer(g_wgpuDevice, &ib_desc); + fr->IndexBuffer = wgpuDeviceCreateBuffer(bd->wgpuDevice, &ib_desc); if (!fr->IndexBuffer) return; @@ -398,10 +394,10 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder vtx_dst += cmd_list->VtxBuffer.Size; idx_dst += cmd_list->IdxBuffer.Size; } - int64_t vb_write_size = ((char*)vtx_dst - (char*)fr->VertexBufferHost + 3) & ~3; - int64_t ib_write_size = ((char*)idx_dst - (char*)fr->IndexBufferHost + 3) & ~3; - wgpuQueueWriteBuffer(g_defaultQueue, fr->VertexBuffer, 0, fr->VertexBufferHost, vb_write_size); - wgpuQueueWriteBuffer(g_defaultQueue, fr->IndexBuffer, 0, fr->IndexBufferHost, ib_write_size); + int64_t vb_write_size = MEMALIGN((char*)vtx_dst - (char*)fr->VertexBufferHost, 4); + int64_t ib_write_size = MEMALIGN((char*)idx_dst - (char*)fr->IndexBufferHost, 4); + wgpuQueueWriteBuffer(bd->defaultQueue, fr->VertexBuffer, 0, fr->VertexBufferHost, vb_write_size); + wgpuQueueWriteBuffer(bd->defaultQueue, fr->IndexBuffer, 0, fr->IndexBufferHost, ib_write_size); // Setup desired render state ImGui_ImplWGPU_SetupRenderState(draw_data, pass_encoder, fr); @@ -418,7 +414,7 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++) { const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i]; - if (pcmd->UserCallback != NULL) + if (pcmd->UserCallback != nullptr) { // User callback, registered via ImDrawList::AddCallback() // (ImDrawCallback_ResetRenderState is a special callback value used by the user to request the renderer to reset render state.) @@ -432,16 +428,16 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder // Bind custom texture ImTextureID tex_id = pcmd->GetTexID(); ImGuiID tex_id_hash = ImHashData(&tex_id, sizeof(tex_id)); - auto bind_group = g_resources.ImageBindGroups.GetVoidPtr(tex_id_hash); + auto bind_group = bd->renderResources.ImageBindGroups.GetVoidPtr(tex_id_hash); if (bind_group) { - wgpuRenderPassEncoderSetBindGroup(pass_encoder, 1, (WGPUBindGroup)bind_group, 0, NULL); + wgpuRenderPassEncoderSetBindGroup(pass_encoder, 1, (WGPUBindGroup)bind_group, 0, nullptr); } else { - WGPUBindGroup image_bind_group = ImGui_ImplWGPU_CreateImageBindGroup(g_resources.ImageBindGroupLayout, (WGPUTextureView)tex_id); - g_resources.ImageBindGroups.SetVoidPtr(tex_id_hash, image_bind_group); - wgpuRenderPassEncoderSetBindGroup(pass_encoder, 1, image_bind_group, 0, NULL); + WGPUBindGroup image_bind_group = ImGui_ImplWGPU_CreateImageBindGroup(bd->renderResources.ImageBindGroupLayout, (WGPUTextureView)tex_id); + bd->renderResources.ImageBindGroups.SetVoidPtr(tex_id_hash, image_bind_group); + wgpuRenderPassEncoderSetBindGroup(pass_encoder, 1, image_bind_group, 0, nullptr); } // Project scissor/clipping rectangles into framebuffer space @@ -463,6 +459,7 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder static void ImGui_ImplWGPU_CreateFontsTexture() { // Build texture atlas + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); ImGuiIO& io = ImGui::GetIO(); unsigned char* pixels; int width, height, size_pp; @@ -480,7 +477,7 @@ static void ImGui_ImplWGPU_CreateFontsTexture() tex_desc.format = WGPUTextureFormat_RGBA8Unorm; tex_desc.mipLevelCount = 1; tex_desc.usage = WGPUTextureUsage_CopyDst | WGPUTextureUsage_TextureBinding; - g_resources.FontTexture = wgpuDeviceCreateTexture(g_wgpuDevice, &tex_desc); + bd->renderResources.FontTexture = wgpuDeviceCreateTexture(bd->wgpuDevice, &tex_desc); WGPUTextureViewDescriptor tex_view_desc = {}; tex_view_desc.format = WGPUTextureFormat_RGBA8Unorm; @@ -490,13 +487,13 @@ static void ImGui_ImplWGPU_CreateFontsTexture() tex_view_desc.baseArrayLayer = 0; tex_view_desc.arrayLayerCount = 1; tex_view_desc.aspect = WGPUTextureAspect_All; - g_resources.FontTextureView = wgpuTextureCreateView(g_resources.FontTexture, &tex_view_desc); + bd->renderResources.FontTextureView = wgpuTextureCreateView(bd->renderResources.FontTexture, &tex_view_desc); } // Upload texture data { WGPUImageCopyTexture dst_view = {}; - dst_view.texture = g_resources.FontTexture; + dst_view.texture = bd->renderResources.FontTexture; dst_view.mipLevel = 0; dst_view.origin = { 0, 0, 0 }; dst_view.aspect = WGPUTextureAspect_All; @@ -505,7 +502,7 @@ static void ImGui_ImplWGPU_CreateFontsTexture() layout.bytesPerRow = width * size_pp; layout.rowsPerImage = height; WGPUExtent3D size = { (uint32_t)width, (uint32_t)height, 1 }; - wgpuQueueWriteTexture(g_defaultQueue, &dst_view, pixels, (uint32_t)(width * size_pp * height), &layout, &size); + wgpuQueueWriteTexture(bd->defaultQueue, &dst_view, pixels, (uint32_t)(width * size_pp * height), &layout, &size); } // Create the associated sampler @@ -519,32 +516,34 @@ static void ImGui_ImplWGPU_CreateFontsTexture() sampler_desc.addressModeV = WGPUAddressMode_Repeat; sampler_desc.addressModeW = WGPUAddressMode_Repeat; sampler_desc.maxAnisotropy = 1; - g_resources.Sampler = wgpuDeviceCreateSampler(g_wgpuDevice, &sampler_desc); + bd->renderResources.Sampler = wgpuDeviceCreateSampler(bd->wgpuDevice, &sampler_desc); } // Store our identifier - static_assert(sizeof(ImTextureID) >= sizeof(g_resources.FontTexture), "Can't pack descriptor handle into TexID, 32-bit not supported yet."); - io.Fonts->SetTexID((ImTextureID)g_resources.FontTextureView); + static_assert(sizeof(ImTextureID) >= sizeof(bd->renderResources.FontTexture), "Can't pack descriptor handle into TexID, 32-bit not supported yet."); + io.Fonts->SetTexID((ImTextureID)bd->renderResources.FontTextureView); } static void ImGui_ImplWGPU_CreateUniformBuffer() { + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); WGPUBufferDescriptor ub_desc = { - NULL, + nullptr, "Dear ImGui Uniform buffer", WGPUBufferUsage_CopyDst | WGPUBufferUsage_Uniform, - sizeof(Uniforms), + MEMALIGN(sizeof(Uniforms), 16), false }; - g_resources.Uniforms = wgpuDeviceCreateBuffer(g_wgpuDevice, &ub_desc); + bd->renderResources.Uniforms = wgpuDeviceCreateBuffer(bd->wgpuDevice, &ub_desc); } bool ImGui_ImplWGPU_CreateDeviceObjects() { - if (!g_wgpuDevice) + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + if (!bd->wgpuDevice) return false; - if (g_pipelineState) + if (bd->pipelineState) ImGui_ImplWGPU_InvalidateDeviceObjects(); // Create render pipeline @@ -556,10 +555,41 @@ bool ImGui_ImplWGPU_CreateDeviceObjects() graphics_pipeline_desc.multisample.count = 1; graphics_pipeline_desc.multisample.mask = UINT_MAX; graphics_pipeline_desc.multisample.alphaToCoverageEnabled = false; - graphics_pipeline_desc.layout = nullptr; // Use automatic layout generation + + // Bind group layouts + WGPUBindGroupLayoutEntry common_bg_layout_entries[2] = {}; + common_bg_layout_entries[0].binding = 0; + common_bg_layout_entries[0].visibility = WGPUShaderStage_Vertex | WGPUShaderStage_Fragment; + common_bg_layout_entries[0].buffer.type = WGPUBufferBindingType_Uniform; + common_bg_layout_entries[1].binding = 1; + common_bg_layout_entries[1].visibility = WGPUShaderStage_Fragment; + common_bg_layout_entries[1].sampler.type = WGPUSamplerBindingType_Filtering; + + WGPUBindGroupLayoutEntry image_bg_layout_entries[1] = {}; + image_bg_layout_entries[0].binding = 0; + image_bg_layout_entries[0].visibility = WGPUShaderStage_Fragment; + image_bg_layout_entries[0].texture.sampleType = WGPUTextureSampleType_Float; + image_bg_layout_entries[0].texture.viewDimension = WGPUTextureViewDimension_2D; + + WGPUBindGroupLayoutDescriptor common_bg_layout_desc = {}; + common_bg_layout_desc.entryCount = 2; + common_bg_layout_desc.entries = common_bg_layout_entries; + + WGPUBindGroupLayoutDescriptor image_bg_layout_desc = {}; + image_bg_layout_desc.entryCount = 1; + image_bg_layout_desc.entries = image_bg_layout_entries; + + WGPUBindGroupLayout bg_layouts[2]; + bg_layouts[0] = wgpuDeviceCreateBindGroupLayout(bd->wgpuDevice, &common_bg_layout_desc); + bg_layouts[1] = wgpuDeviceCreateBindGroupLayout(bd->wgpuDevice, &image_bg_layout_desc); + + WGPUPipelineLayoutDescriptor layout_desc = {}; + layout_desc.bindGroupLayoutCount = 2; + layout_desc.bindGroupLayouts = bg_layouts; + graphics_pipeline_desc.layout = wgpuDeviceCreatePipelineLayout(bd->wgpuDevice, &layout_desc); // Create the vertex shader - WGPUProgrammableStageDescriptor vertex_shader_desc = ImGui_ImplWGPU_CreateShaderModule(__glsl_shader_vert_spv, sizeof(__glsl_shader_vert_spv) / sizeof(uint32_t)); + WGPUProgrammableStageDescriptor vertex_shader_desc = ImGui_ImplWGPU_CreateShaderModule(__shader_vert_wgsl); graphics_pipeline_desc.vertex.module = vertex_shader_desc.module; graphics_pipeline_desc.vertex.entryPoint = vertex_shader_desc.entryPoint; @@ -581,7 +611,7 @@ bool ImGui_ImplWGPU_CreateDeviceObjects() graphics_pipeline_desc.vertex.buffers = buffer_layouts; // Create the pixel shader - WGPUProgrammableStageDescriptor pixel_shader_desc = ImGui_ImplWGPU_CreateShaderModule(__glsl_shader_frag_spv, sizeof(__glsl_shader_frag_spv) / sizeof(uint32_t)); + WGPUProgrammableStageDescriptor pixel_shader_desc = ImGui_ImplWGPU_CreateShaderModule(__shader_frag_wgsl); // Create the blending setup WGPUBlendState blend_state = {}; @@ -593,7 +623,7 @@ bool ImGui_ImplWGPU_CreateDeviceObjects() blend_state.color.dstFactor = WGPUBlendFactor_OneMinusSrcAlpha; WGPUColorTargetState color_state = {}; - color_state.format = g_renderTargetFormat; + color_state.format = bd->renderTargetFormat; color_state.blend = &blend_state; color_state.writeMask = WGPUColorWriteMask_All; @@ -607,39 +637,37 @@ bool ImGui_ImplWGPU_CreateDeviceObjects() // Create depth-stencil State WGPUDepthStencilState depth_stencil_state = {}; - depth_stencil_state.depthBias = 0; - depth_stencil_state.depthBiasClamp = 0; - depth_stencil_state.depthBiasSlopeScale = 0; + depth_stencil_state.format = bd->depthStencilFormat; + depth_stencil_state.depthWriteEnabled = false; + depth_stencil_state.depthCompare = WGPUCompareFunction_Always; + depth_stencil_state.stencilFront.compare = WGPUCompareFunction_Always; + depth_stencil_state.stencilBack.compare = WGPUCompareFunction_Always; // Configure disabled depth-stencil state - graphics_pipeline_desc.depthStencil = nullptr; + graphics_pipeline_desc.depthStencil = (bd->depthStencilFormat == WGPUTextureFormat_Undefined) ? nullptr : &depth_stencil_state; - g_pipelineState = wgpuDeviceCreateRenderPipeline(g_wgpuDevice, &graphics_pipeline_desc); + bd->pipelineState = wgpuDeviceCreateRenderPipeline(bd->wgpuDevice, &graphics_pipeline_desc); ImGui_ImplWGPU_CreateFontsTexture(); ImGui_ImplWGPU_CreateUniformBuffer(); // Create resource bind group - WGPUBindGroupLayout bg_layouts[2]; - bg_layouts[0] = wgpuRenderPipelineGetBindGroupLayout(g_pipelineState, 0); - bg_layouts[1] = wgpuRenderPipelineGetBindGroupLayout(g_pipelineState, 1); - WGPUBindGroupEntry common_bg_entries[] = { - { nullptr, 0, g_resources.Uniforms, 0, sizeof(Uniforms), 0, 0 }, - { nullptr, 1, 0, 0, 0, g_resources.Sampler, 0 }, + { nullptr, 0, bd->renderResources.Uniforms, 0, MEMALIGN(sizeof(Uniforms), 16), 0, 0 }, + { nullptr, 1, 0, 0, 0, bd->renderResources.Sampler, 0 }, }; WGPUBindGroupDescriptor common_bg_descriptor = {}; common_bg_descriptor.layout = bg_layouts[0]; common_bg_descriptor.entryCount = sizeof(common_bg_entries) / sizeof(WGPUBindGroupEntry); common_bg_descriptor.entries = common_bg_entries; - g_resources.CommonBindGroup = wgpuDeviceCreateBindGroup(g_wgpuDevice, &common_bg_descriptor); + bd->renderResources.CommonBindGroup = wgpuDeviceCreateBindGroup(bd->wgpuDevice, &common_bg_descriptor); - WGPUBindGroup image_bind_group = ImGui_ImplWGPU_CreateImageBindGroup(bg_layouts[1], g_resources.FontTextureView); - g_resources.ImageBindGroup = image_bind_group; - g_resources.ImageBindGroupLayout = bg_layouts[1]; - g_resources.ImageBindGroups.SetVoidPtr(ImHashData(&g_resources.FontTextureView, sizeof(ImTextureID)), image_bind_group); + WGPUBindGroup image_bind_group = ImGui_ImplWGPU_CreateImageBindGroup(bg_layouts[1], bd->renderResources.FontTextureView); + bd->renderResources.ImageBindGroup = image_bind_group; + bd->renderResources.ImageBindGroupLayout = bg_layouts[1]; + bd->renderResources.ImageBindGroups.SetVoidPtr(ImHashData(&bd->renderResources.FontTextureView, sizeof(ImTextureID)), image_bind_group); SafeRelease(vertex_shader_desc.module); SafeRelease(pixel_shader_desc.module); @@ -650,50 +678,56 @@ bool ImGui_ImplWGPU_CreateDeviceObjects() void ImGui_ImplWGPU_InvalidateDeviceObjects() { - if (!g_wgpuDevice) + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + if (!bd->wgpuDevice) return; - SafeRelease(g_pipelineState); - SafeRelease(g_resources); + SafeRelease(bd->pipelineState); + SafeRelease(bd->renderResources); ImGuiIO& io = ImGui::GetIO(); - io.Fonts->SetTexID(NULL); // We copied g_pFontTextureView to io.Fonts->TexID so let's clear that as well. + io.Fonts->SetTexID(0); // We copied g_pFontTextureView to io.Fonts->TexID so let's clear that as well. - for (unsigned int i = 0; i < g_numFramesInFlight; i++) - SafeRelease(g_pFrameResources[i]); + for (unsigned int i = 0; i < bd->numFramesInFlight; i++) + SafeRelease(bd->pFrameResources[i]); } -bool ImGui_ImplWGPU_Init(WGPUDevice device, int num_frames_in_flight, WGPUTextureFormat rt_format) +bool ImGui_ImplWGPU_Init(WGPUDevice device, int num_frames_in_flight, WGPUTextureFormat rt_format, WGPUTextureFormat depth_format) { - // Setup backend capabilities flags ImGuiIO& io = ImGui::GetIO(); + IM_ASSERT(io.BackendRendererUserData == nullptr && "Already initialized a renderer backend!"); + + // Setup backend capabilities flags + ImGui_ImplWGPU_Data* bd = IM_NEW(ImGui_ImplWGPU_Data)(); + io.BackendRendererUserData = (void*)bd; io.BackendRendererName = "imgui_impl_webgpu"; io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset; // We can honor the ImDrawCmd::VtxOffset field, allowing for large meshes. - g_wgpuDevice = device; - g_defaultQueue = wgpuDeviceGetQueue(g_wgpuDevice); - g_renderTargetFormat = rt_format; - g_pFrameResources = new FrameResources[num_frames_in_flight]; - g_numFramesInFlight = num_frames_in_flight; - g_frameIndex = UINT_MAX; + bd->wgpuDevice = device; + bd->defaultQueue = wgpuDeviceGetQueue(bd->wgpuDevice); + bd->renderTargetFormat = rt_format; + bd->depthStencilFormat = depth_format; + bd->numFramesInFlight = num_frames_in_flight; + bd->frameIndex = UINT_MAX; - g_resources.FontTexture = NULL; - g_resources.FontTextureView = NULL; - g_resources.Sampler = NULL; - g_resources.Uniforms = NULL; - g_resources.CommonBindGroup = NULL; - g_resources.ImageBindGroups.Data.reserve(100); - g_resources.ImageBindGroup = NULL; - g_resources.ImageBindGroupLayout = NULL; + bd->renderResources.FontTexture = nullptr; + bd->renderResources.FontTextureView = nullptr; + bd->renderResources.Sampler = nullptr; + bd->renderResources.Uniforms = nullptr; + bd->renderResources.CommonBindGroup = nullptr; + bd->renderResources.ImageBindGroups.Data.reserve(100); + bd->renderResources.ImageBindGroup = nullptr; + bd->renderResources.ImageBindGroupLayout = nullptr; // Create buffers with a default size (they will later be grown as needed) + bd->pFrameResources = new FrameResources[num_frames_in_flight]; for (int i = 0; i < num_frames_in_flight; i++) { - FrameResources* fr = &g_pFrameResources[i]; - fr->IndexBuffer = NULL; - fr->VertexBuffer = NULL; - fr->IndexBufferHost = NULL; - fr->VertexBufferHost = NULL; + FrameResources* fr = &bd->pFrameResources[i]; + fr->IndexBuffer = nullptr; + fr->VertexBuffer = nullptr; + fr->IndexBufferHost = nullptr; + fr->VertexBufferHost = nullptr; fr->IndexBufferSize = 10000; fr->VertexBufferSize = 5000; } @@ -703,17 +737,27 @@ bool ImGui_ImplWGPU_Init(WGPUDevice device, int num_frames_in_flight, WGPUTextur void ImGui_ImplWGPU_Shutdown() { + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + IM_ASSERT(bd != nullptr && "No renderer backend to shutdown, or already shutdown?"); + ImGuiIO& io = ImGui::GetIO(); + ImGui_ImplWGPU_InvalidateDeviceObjects(); - delete[] g_pFrameResources; - g_pFrameResources = NULL; - wgpuQueueRelease(g_defaultQueue); - g_wgpuDevice = NULL; - g_numFramesInFlight = 0; - g_frameIndex = UINT_MAX; + delete[] bd->pFrameResources; + bd->pFrameResources = nullptr; + wgpuQueueRelease(bd->defaultQueue); + bd->wgpuDevice = nullptr; + bd->numFramesInFlight = 0; + bd->frameIndex = UINT_MAX; + + io.BackendRendererName = nullptr; + io.BackendRendererUserData = nullptr; + io.BackendFlags &= ~ImGuiBackendFlags_RendererHasVtxOffset; + IM_DELETE(bd); } void ImGui_ImplWGPU_NewFrame() { - if (!g_pipelineState) + ImGui_ImplWGPU_Data* bd = ImGui_ImplWGPU_GetBackendData(); + if (!bd->pipelineState) ImGui_ImplWGPU_CreateDeviceObjects(); } diff --git a/extern/imgui_patched/backends/imgui_impl_wgpu.h b/extern/imgui_patched/backends/imgui_impl_wgpu.h index 8f80acaf..09142078 100644 --- a/extern/imgui_patched/backends/imgui_impl_wgpu.h +++ b/extern/imgui_patched/backends/imgui_impl_wgpu.h @@ -6,7 +6,7 @@ // [X] Renderer: User texture binding. Use 'WGPUTextureView' as ImTextureID. Read the FAQ about ImTextureID! // [X] Renderer: Large meshes support (64k+ vertices) with 16-bit indices. -// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. +// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this. // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. // Read online: https://github.com/ocornut/imgui/tree/master/docs @@ -15,7 +15,7 @@ #include "imgui.h" // IMGUI_IMPL_API #include -IMGUI_IMPL_API bool ImGui_ImplWGPU_Init(WGPUDevice device, int num_frames_in_flight, WGPUTextureFormat rt_format); +IMGUI_IMPL_API bool ImGui_ImplWGPU_Init(WGPUDevice device, int num_frames_in_flight, WGPUTextureFormat rt_format, WGPUTextureFormat depth_format = WGPUTextureFormat_Undefined); IMGUI_IMPL_API void ImGui_ImplWGPU_Shutdown(); IMGUI_IMPL_API void ImGui_ImplWGPU_NewFrame(); IMGUI_IMPL_API void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder pass_encoder); diff --git a/extern/imgui_patched/backends/imgui_impl_win32.cpp b/extern/imgui_patched/backends/imgui_impl_win32.cpp index 89ef37a2..d24c655d 100644 --- a/extern/imgui_patched/backends/imgui_impl_win32.cpp +++ b/extern/imgui_patched/backends/imgui_impl_win32.cpp @@ -1,8 +1,9 @@ -// dear imgui: Platform Backend for Windows (standard windows API for 32 and 64 bits applications) +// dear imgui: Platform Backend for Windows (standard windows API for 32-bits AND 64-bits applications) // This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan..) // Implemented features: // [X] Platform: Clipboard support (for Win32 this is actually part of core dear imgui) +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen. // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy VK_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. @@ -35,8 +36,15 @@ typedef DWORD (WINAPI *PFN_XInputGetState)(DWORD, XINPUT_STATE*); // CHANGELOG // (minor and older changes stripped away, please see git history for details) -// 2022-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. -// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago)with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. +// 2023-XX-XX: Platform: Added support for multiple windows via the ImGuiPlatformIO interface. +// 2023-04-19: Added ImGui_ImplWin32_InitForOpenGL() to facilitate combining raw Win32/Winapi with OpenGL. (#3218) +// 2023-04-04: Inputs: Added support for io.AddMouseSourceEvent() to discriminate ImGuiMouseSource_Mouse/ImGuiMouseSource_TouchScreen/ImGuiMouseSource_Pen. (#2702) +// 2023-02-15: Inputs: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse position over non-client area (e.g. OS decorations) when app is not focused. (#6045, #6162) +// 2023-02-02: Inputs: Flipping WM_MOUSEHWHEEL (horizontal mouse-wheel) value to match other backends and offer consistent horizontal scrolling direction. (#4019, #6096, #1463) +// 2022-10-11: Using 'nullptr' instead of 'NULL' as per our switch to C++11. +// 2022-09-28: Inputs: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). +// 2022-09-26: Inputs: Renamed ImGuiKey_ModXXX introduced in 1.87 to ImGuiMod_XXX (old names still supported). +// 2022-01-26: Inputs: replaced short-lived io.AddKeyModsEvent() (added two weeks ago) with io.AddKeyEvent() using ImGuiKey_ModXXX flags. Sorry for the confusion. // 2021-01-20: Inputs: calling new io.AddKeyAnalogEvent() for gamepad support, instead of writing directly to io.NavInputs[]. // 2022-01-17: Inputs: calling new io.AddMousePosEvent(), io.AddMouseButtonEvent(), io.AddMouseWheelEvent() API (1.87+). // 2022-01-17: Inputs: always update key mods next and before a key event (not in NewFrame) to fix input queue with very low framerates. @@ -76,10 +84,10 @@ typedef DWORD (WINAPI *PFN_XInputGetState)(DWORD, XINPUT_STATE*); // 2018-01-05: Inputs: Added WM_LBUTTONDBLCLK double-click handlers for window classes with the CS_DBLCLKS flag. // 2017-10-23: Inputs: Added WM_SYSKEYDOWN / WM_SYSKEYUP handlers so e.g. the VK_MENU key can be read. // 2017-10-23: Inputs: Using Win32 ::SetCapture/::GetCapture() to retrieve mouse positions outside the client area when dragging. -// 2016-11-12: Inputs: Only call Win32 ::SetCursor(NULL) when io.MouseDrawCursor is set. +// 2016-11-12: Inputs: Only call Win32 ::SetCursor(nullptr) when io.MouseDrawCursor is set. // Forward Declarations -static void ImGui_ImplWin32_InitPlatformInterface(); +static void ImGui_ImplWin32_InitPlatformInterface(bool platformHasOwnDC); static void ImGui_ImplWin32_ShutdownPlatformInterface(); static void ImGui_ImplWin32_UpdateMonitors(); @@ -87,16 +95,16 @@ struct ImGui_ImplWin32_Data { HWND hWnd; HWND MouseHwnd; - bool MouseTracked; + int MouseTrackedArea; // 0: not tracked, 1: client are, 2: non-client area int MouseButtonsDown; INT64 Time; INT64 TicksPerSecond; ImGuiMouseCursor LastMouseCursor; - bool HasGamepad; - bool WantUpdateHasGamepad; bool WantUpdateMonitors; #ifndef IMGUI_IMPL_WIN32_DISABLE_GAMEPAD + bool HasGamepad; + bool WantUpdateHasGamepad; HMODULE XInputDLL; PFN_XInputGetCapabilities XInputGetCapabilities; PFN_XInputGetState XInputGetState; @@ -111,14 +119,14 @@ struct ImGui_ImplWin32_Data // FIXME: some shared resources (mouse cursor shape, gamepad) are mishandled when using multi-context. static ImGui_ImplWin32_Data* ImGui_ImplWin32_GetBackendData() { - return ImGui::GetCurrentContext() ? (ImGui_ImplWin32_Data*)ImGui::GetIO().BackendPlatformUserData : NULL; + return ImGui::GetCurrentContext() ? (ImGui_ImplWin32_Data*)ImGui::GetIO().BackendPlatformUserData : nullptr; } // Functions -bool ImGui_ImplWin32_Init(void* hwnd) +static bool ImGui_ImplWin32_InitEx(void* hwnd, bool platform_has_own_dc) { ImGuiIO& io = ImGui::GetIO(); - IM_ASSERT(io.BackendPlatformUserData == NULL && "Already initialized a platform backend!"); + IM_ASSERT(io.BackendPlatformUserData == nullptr && "Already initialized a platform backend!"); INT64 perf_frequency, perf_counter; if (!::QueryPerformanceFrequency((LARGE_INTEGER*)&perf_frequency)) @@ -136,7 +144,6 @@ bool ImGui_ImplWin32_Init(void* hwnd) io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport; // We can call io.AddMouseViewportEvent() with correct data (optional) bd->hWnd = (HWND)hwnd; - bd->WantUpdateHasGamepad = true; bd->WantUpdateMonitors = true; bd->TicksPerSecond = perf_frequency; bd->Time = perf_counter; @@ -146,10 +153,11 @@ bool ImGui_ImplWin32_Init(void* hwnd) ImGuiViewport* main_viewport = ImGui::GetMainViewport(); main_viewport->PlatformHandle = main_viewport->PlatformHandleRaw = (void*)bd->hWnd; if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) - ImGui_ImplWin32_InitPlatformInterface(); + ImGui_ImplWin32_InitPlatformInterface(platform_has_own_dc); // Dynamically load XInput library #ifndef IMGUI_IMPL_WIN32_DISABLE_GAMEPAD + bd->WantUpdateHasGamepad = true; const char* xinput_dll_names[] = { "xinput1_4.dll", // Windows 8+ @@ -171,10 +179,21 @@ bool ImGui_ImplWin32_Init(void* hwnd) return true; } +IMGUI_IMPL_API bool ImGui_ImplWin32_Init(void* hwnd) +{ + return ImGui_ImplWin32_InitEx(hwnd, false); +} + +IMGUI_IMPL_API bool ImGui_ImplWin32_InitForOpenGL(void* hwnd) +{ + // OpenGL needs CS_OWNDC + return ImGui_ImplWin32_InitEx(hwnd, true); +} + void ImGui_ImplWin32_Shutdown() { ImGui_ImplWin32_Data* bd = ImGui_ImplWin32_GetBackendData(); - IM_ASSERT(bd != NULL && "No platform backend to shutdown, or already shutdown?"); + IM_ASSERT(bd != nullptr && "No platform backend to shutdown, or already shutdown?"); ImGuiIO& io = ImGui::GetIO(); ImGui_ImplWin32_ShutdownPlatformInterface(); @@ -185,8 +204,9 @@ void ImGui_ImplWin32_Shutdown() ::FreeLibrary(bd->XInputDLL); #endif // IMGUI_IMPL_WIN32_DISABLE_GAMEPAD - io.BackendPlatformName = NULL; - io.BackendPlatformUserData = NULL; + io.BackendPlatformName = nullptr; + io.BackendPlatformUserData = nullptr; + io.BackendFlags &= ~(ImGuiBackendFlags_HasMouseCursors | ImGuiBackendFlags_HasSetMousePos | ImGuiBackendFlags_HasGamepad | ImGuiBackendFlags_PlatformHasViewports | ImGuiBackendFlags_HasMouseHoveredViewport); IM_DELETE(bd); } @@ -200,7 +220,7 @@ static bool ImGui_ImplWin32_UpdateMouseCursor() if (imgui_cursor == ImGuiMouseCursor_None || io.MouseDrawCursor) { // Hide OS mouse cursor if imgui is drawing it or if it wants no cursor - ::SetCursor(NULL); + ::SetCursor(nullptr); } else { @@ -218,7 +238,7 @@ static bool ImGui_ImplWin32_UpdateMouseCursor() case ImGuiMouseCursor_Hand: win32_cursor = IDC_HAND; break; case ImGuiMouseCursor_NotAllowed: win32_cursor = IDC_NO; break; } - ::SetCursor(::LoadCursor(NULL, win32_cursor)); + ::SetCursor(::LoadCursor(nullptr, win32_cursor)); } return true; } @@ -254,10 +274,10 @@ static void ImGui_ImplWin32_ProcessKeyEventsWorkarounds() static void ImGui_ImplWin32_UpdateKeyModifiers() { ImGuiIO& io = ImGui::GetIO(); - io.AddKeyEvent(ImGuiKey_ModCtrl, IsVkDown(VK_CONTROL)); - io.AddKeyEvent(ImGuiKey_ModShift, IsVkDown(VK_SHIFT)); - io.AddKeyEvent(ImGuiKey_ModAlt, IsVkDown(VK_MENU)); - io.AddKeyEvent(ImGuiKey_ModSuper, IsVkDown(VK_APPS)); + io.AddKeyEvent(ImGuiMod_Ctrl, IsVkDown(VK_CONTROL)); + io.AddKeyEvent(ImGuiMod_Shift, IsVkDown(VK_SHIFT)); + io.AddKeyEvent(ImGuiMod_Alt, IsVkDown(VK_MENU)); + io.AddKeyEvent(ImGuiMod_Super, IsVkDown(VK_APPS)); } // This code supports multi-viewports (multiple OS Windows mapped into different Dear ImGui viewports) @@ -286,7 +306,8 @@ static void ImGui_ImplWin32_UpdateMouseData() } // (Optional) Fallback to provide mouse position when focused (WM_MOUSEMOVE already provides this when hovered or captured) - if (!io.WantSetMousePos && !bd->MouseTracked && has_mouse_screen_pos) + // This also fills a short gap when clicking non-client area: WM_NCMOUSELEAVE -> modal OS move -> gap -> WM_NCMOUSEMOVE + if (!io.WantSetMousePos && bd->MouseTrackedArea == 0 && has_mouse_screen_pos) { // Single viewport mode: mouse position in client window coordinates (io.MousePos is (0,0) when the mouse is on the upper-left corner of the app window) // (This is the position you can get with ::GetCursorPos() + ::ScreenToClient() or WM_MOUSEMOVE.) @@ -320,8 +341,8 @@ static void ImGui_ImplWin32_UpdateGamepads() #ifndef IMGUI_IMPL_WIN32_DISABLE_GAMEPAD ImGuiIO& io = ImGui::GetIO(); ImGui_ImplWin32_Data* bd = ImGui_ImplWin32_GetBackendData(); - if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) - return; + //if ((io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) == 0) // FIXME: Technically feeding gamepad shouldn't depend on this now that they are regular inputs. + // return; // Calling XInputGetState() every frame on disconnected gamepads is unfortunately too slow. // Instead we refresh gamepad availability by calling XInputGetCapabilities() _only_ after receiving WM_DEVICECHANGE. @@ -335,7 +356,7 @@ static void ImGui_ImplWin32_UpdateGamepads() io.BackendFlags &= ~ImGuiBackendFlags_HasGamepad; XINPUT_STATE xinput_state; XINPUT_GAMEPAD& gamepad = xinput_state.Gamepad; - if (!bd->HasGamepad || bd->XInputGetState == NULL || bd->XInputGetState(0, &xinput_state) != ERROR_SUCCESS) + if (!bd->HasGamepad || bd->XInputGetState == nullptr || bd->XInputGetState(0, &xinput_state) != ERROR_SUCCESS) return; io.BackendFlags |= ImGuiBackendFlags_HasGamepad; @@ -344,10 +365,10 @@ static void ImGui_ImplWin32_UpdateGamepads() #define MAP_ANALOG(KEY_NO, VALUE, V0, V1) { float vn = (float)(VALUE - V0) / (float)(V1 - V0); io.AddKeyAnalogEvent(KEY_NO, vn > 0.10f, IM_SATURATE(vn)); } MAP_BUTTON(ImGuiKey_GamepadStart, XINPUT_GAMEPAD_START); MAP_BUTTON(ImGuiKey_GamepadBack, XINPUT_GAMEPAD_BACK); - MAP_BUTTON(ImGuiKey_GamepadFaceDown, XINPUT_GAMEPAD_A); - MAP_BUTTON(ImGuiKey_GamepadFaceRight, XINPUT_GAMEPAD_B); MAP_BUTTON(ImGuiKey_GamepadFaceLeft, XINPUT_GAMEPAD_X); + MAP_BUTTON(ImGuiKey_GamepadFaceRight, XINPUT_GAMEPAD_B); MAP_BUTTON(ImGuiKey_GamepadFaceUp, XINPUT_GAMEPAD_Y); + MAP_BUTTON(ImGuiKey_GamepadFaceDown, XINPUT_GAMEPAD_A); MAP_BUTTON(ImGuiKey_GamepadDpadLeft, XINPUT_GAMEPAD_DPAD_LEFT); MAP_BUTTON(ImGuiKey_GamepadDpadRight, XINPUT_GAMEPAD_DPAD_RIGHT); MAP_BUTTON(ImGuiKey_GamepadDpadUp, XINPUT_GAMEPAD_DPAD_UP); @@ -383,6 +404,7 @@ static BOOL CALLBACK ImGui_ImplWin32_UpdateMonitors_EnumFunc(HMONITOR monitor, H imgui_monitor.WorkPos = ImVec2((float)info.rcWork.left, (float)info.rcWork.top); imgui_monitor.WorkSize = ImVec2((float)(info.rcWork.right - info.rcWork.left), (float)(info.rcWork.bottom - info.rcWork.top)); imgui_monitor.DpiScale = ImGui_ImplWin32_GetDpiScaleForMonitor(monitor); + imgui_monitor.PlatformHandle = (void*)monitor; ImGuiPlatformIO& io = ImGui::GetPlatformIO(); if (info.dwFlags & MONITORINFOF_PRIMARY) io.Monitors.push_front(imgui_monitor); @@ -395,7 +417,7 @@ static void ImGui_ImplWin32_UpdateMonitors() { ImGui_ImplWin32_Data* bd = ImGui_ImplWin32_GetBackendData(); ImGui::GetPlatformIO().Monitors.resize(0); - ::EnumDisplayMonitors(NULL, NULL, ImGui_ImplWin32_UpdateMonitors_EnumFunc, 0); + ::EnumDisplayMonitors(nullptr, nullptr, ImGui_ImplWin32_UpdateMonitors_EnumFunc, 0); bd->WantUpdateMonitors = false; } @@ -403,7 +425,7 @@ void ImGui_ImplWin32_NewFrame() { ImGuiIO& io = ImGui::GetIO(); ImGui_ImplWin32_Data* bd = ImGui_ImplWin32_GetBackendData(); - IM_ASSERT(bd != NULL && "Did you call ImGui_ImplWin32_Init()?"); + IM_ASSERT(bd != nullptr && "Did you call ImGui_ImplWin32_Init()?"); // Setup display size (every frame to accommodate for window resizing) RECT rect = { 0, 0, 0, 0 }; @@ -572,9 +594,22 @@ static ImGuiKey ImGui_ImplWin32_VirtualKeyToImGuiKey(WPARAM wParam) // Copy this line into your .cpp file to forward declare the function. extern IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam); #endif + +// See https://learn.microsoft.com/en-us/windows/win32/tablet/system-events-and-mouse-messages +// Prefer to call this at the top of the message handler to avoid the possibility of other Win32 calls interfering with this. +static ImGuiMouseSource GetMouseSourceFromMessageExtraInfo() +{ + LPARAM extra_info = ::GetMessageExtraInfo(); + if ((extra_info & 0xFFFFFF80) == 0xFF515700) + return ImGuiMouseSource_Pen; + if ((extra_info & 0xFFFFFF80) == 0xFF515780) + return ImGuiMouseSource_TouchScreen; + return ImGuiMouseSource_Mouse; +} + IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { - if (ImGui::GetCurrentContext() == NULL) + if (ImGui::GetCurrentContext() == nullptr) return 0; ImGuiIO& io = ImGui::GetIO(); @@ -583,40 +618,59 @@ IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARA switch (msg) { case WM_MOUSEMOVE: + case WM_NCMOUSEMOVE: { // We need to call TrackMouseEvent in order to receive WM_MOUSELEAVE events + ImGuiMouseSource mouse_source = GetMouseSourceFromMessageExtraInfo(); + const int area = (msg == WM_MOUSEMOVE) ? 1 : 2; bd->MouseHwnd = hwnd; - if (!bd->MouseTracked) + if (bd->MouseTrackedArea != area) { - TRACKMOUSEEVENT tme = { sizeof(tme), TME_LEAVE, hwnd, 0 }; - ::TrackMouseEvent(&tme); - bd->MouseTracked = true; + TRACKMOUSEEVENT tme_cancel = { sizeof(tme_cancel), TME_CANCEL, hwnd, 0 }; + TRACKMOUSEEVENT tme_track = { sizeof(tme_track), (DWORD)((area == 2) ? (TME_LEAVE | TME_NONCLIENT) : TME_LEAVE), hwnd, 0 }; + if (bd->MouseTrackedArea != 0) + ::TrackMouseEvent(&tme_cancel); + ::TrackMouseEvent(&tme_track); + bd->MouseTrackedArea = area; } POINT mouse_pos = { (LONG)GET_X_LPARAM(lParam), (LONG)GET_Y_LPARAM(lParam) }; - if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) + bool want_absolute_pos = (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) != 0; + if (msg == WM_MOUSEMOVE && want_absolute_pos) // WM_MOUSEMOVE are client-relative coordinates. ::ClientToScreen(hwnd, &mouse_pos); + if (msg == WM_NCMOUSEMOVE && !want_absolute_pos) // WM_NCMOUSEMOVE are absolute coordinates. + ::ScreenToClient(hwnd, &mouse_pos); + io.AddMouseSourceEvent(mouse_source); io.AddMousePosEvent((float)mouse_pos.x, (float)mouse_pos.y); break; } case WM_MOUSELEAVE: - if (bd->MouseHwnd == hwnd) - bd->MouseHwnd = NULL; - bd->MouseTracked = false; - io.AddMousePosEvent(-FLT_MAX, -FLT_MAX); + case WM_NCMOUSELEAVE: + { + const int area = (msg == WM_MOUSELEAVE) ? 1 : 2; + if (bd->MouseTrackedArea == area) + { + if (bd->MouseHwnd == hwnd) + bd->MouseHwnd = nullptr; + bd->MouseTrackedArea = 0; + io.AddMousePosEvent(-FLT_MAX, -FLT_MAX); + } break; + } case WM_LBUTTONDOWN: case WM_LBUTTONDBLCLK: case WM_RBUTTONDOWN: case WM_RBUTTONDBLCLK: case WM_MBUTTONDOWN: case WM_MBUTTONDBLCLK: case WM_XBUTTONDOWN: case WM_XBUTTONDBLCLK: { + ImGuiMouseSource mouse_source = GetMouseSourceFromMessageExtraInfo(); int button = 0; if (msg == WM_LBUTTONDOWN || msg == WM_LBUTTONDBLCLK) { button = 0; } if (msg == WM_RBUTTONDOWN || msg == WM_RBUTTONDBLCLK) { button = 1; } if (msg == WM_MBUTTONDOWN || msg == WM_MBUTTONDBLCLK) { button = 2; } if (msg == WM_XBUTTONDOWN || msg == WM_XBUTTONDBLCLK) { button = (GET_XBUTTON_WPARAM(wParam) == XBUTTON1) ? 3 : 4; } - if (bd->MouseButtonsDown == 0 && ::GetCapture() == NULL) + if (bd->MouseButtonsDown == 0 && ::GetCapture() == nullptr) ::SetCapture(hwnd); bd->MouseButtonsDown |= 1 << button; + io.AddMouseSourceEvent(mouse_source); io.AddMouseButtonEvent(button, true); return 0; } @@ -625,6 +679,7 @@ IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARA case WM_MBUTTONUP: case WM_XBUTTONUP: { + ImGuiMouseSource mouse_source = GetMouseSourceFromMessageExtraInfo(); int button = 0; if (msg == WM_LBUTTONUP) { button = 0; } if (msg == WM_RBUTTONUP) { button = 1; } @@ -633,6 +688,7 @@ IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARA bd->MouseButtonsDown &= ~(1 << button); if (bd->MouseButtonsDown == 0 && ::GetCapture() == hwnd) ::ReleaseCapture(); + io.AddMouseSourceEvent(mouse_source); io.AddMouseButtonEvent(button, false); return 0; } @@ -640,7 +696,7 @@ IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARA io.AddMouseWheelEvent(0.0f, (float)GET_WHEEL_DELTA_WPARAM(wParam) / (float)WHEEL_DELTA); return 0; case WM_MOUSEHWHEEL: - io.AddMouseWheelEvent((float)GET_WHEEL_DELTA_WPARAM(wParam) / (float)WHEEL_DELTA, 0.0f); + io.AddMouseWheelEvent(-(float)GET_WHEEL_DELTA_WPARAM(wParam) / (float)WHEEL_DELTA, 0.0f); return 0; case WM_KEYDOWN: case WM_KEYUP: @@ -690,17 +746,29 @@ IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARA io.AddFocusEvent(msg == WM_SETFOCUS); return 0; case WM_CHAR: - // You can also use ToAscii()+GetKeyboardState() to retrieve characters. - if (wParam > 0 && wParam < 0x10000) - io.AddInputCharacterUTF16((unsigned short)wParam); + if (::IsWindowUnicode(hwnd)) + { + // You can also use ToAscii()+GetKeyboardState() to retrieve characters. + if (wParam > 0 && wParam < 0x10000) + io.AddInputCharacterUTF16((unsigned short)wParam); + } + else + { + wchar_t wch = 0; + ::MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, (char*)&wParam, 1, &wch, 1); + io.AddInputCharacter(wch); + } return 0; case WM_SETCURSOR: + // This is required to restore cursor when transitioning from e.g resize borders to client area. if (LOWORD(lParam) == HTCLIENT && ImGui_ImplWin32_UpdateMouseCursor()) return 1; return 0; case WM_DEVICECHANGE: +#ifndef IMGUI_IMPL_WIN32_DISABLE_GAMEPAD if ((UINT)wParam == DBT_DEVNODES_CHANGED) bd->WantUpdateHasGamepad = true; +#endif return 0; case WM_DISPLAYCHANGE: bd->WantUpdateMonitors = true; @@ -729,11 +797,11 @@ IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WPARA static BOOL _IsWindowsVersionOrGreater(WORD major, WORD minor, WORD) { typedef LONG(WINAPI* PFN_RtlVerifyVersionInfo)(OSVERSIONINFOEXW*, ULONG, ULONGLONG); - static PFN_RtlVerifyVersionInfo RtlVerifyVersionInfoFn = NULL; - if (RtlVerifyVersionInfoFn == NULL) + static PFN_RtlVerifyVersionInfo RtlVerifyVersionInfoFn = nullptr; + if (RtlVerifyVersionInfoFn == nullptr) if (HMODULE ntdllModule = ::GetModuleHandleA("ntdll.dll")) RtlVerifyVersionInfoFn = (PFN_RtlVerifyVersionInfo)GetProcAddress(ntdllModule, "RtlVerifyVersionInfo"); - if (RtlVerifyVersionInfoFn == NULL) + if (RtlVerifyVersionInfoFn == nullptr) return FALSE; RTL_OSVERSIONINFOEXW versionInfo = { }; @@ -806,10 +874,10 @@ float ImGui_ImplWin32_GetDpiScaleForMonitor(void* monitor) if (_IsWindows8Point1OrGreater()) { static HINSTANCE shcore_dll = ::LoadLibraryA("shcore.dll"); // Reference counted per-process - static PFN_GetDpiForMonitor GetDpiForMonitorFn = NULL; - if (GetDpiForMonitorFn == NULL && shcore_dll != NULL) + static PFN_GetDpiForMonitor GetDpiForMonitorFn = nullptr; + if (GetDpiForMonitorFn == nullptr && shcore_dll != nullptr) GetDpiForMonitorFn = (PFN_GetDpiForMonitor)::GetProcAddress(shcore_dll, "GetDpiForMonitor"); - if (GetDpiForMonitorFn != NULL) + if (GetDpiForMonitorFn != nullptr) { GetDpiForMonitorFn((HMONITOR)monitor, MDT_EFFECTIVE_DPI, &xdpi, &ydpi); IM_ASSERT(xdpi == ydpi); // Please contact me if you hit this assert! @@ -817,11 +885,11 @@ float ImGui_ImplWin32_GetDpiScaleForMonitor(void* monitor) } } #ifndef NOGDI - const HDC dc = ::GetDC(NULL); + const HDC dc = ::GetDC(nullptr); xdpi = ::GetDeviceCaps(dc, LOGPIXELSX); ydpi = ::GetDeviceCaps(dc, LOGPIXELSY); IM_ASSERT(xdpi == ydpi); // Please contact me if you hit this assert! - ::ReleaseDC(NULL, dc); + ::ReleaseDC(nullptr, dc); #endif return xdpi / 96.0f; } @@ -832,13 +900,53 @@ float ImGui_ImplWin32_GetDpiScaleForHwnd(void* hwnd) return ImGui_ImplWin32_GetDpiScaleForMonitor(monitor); } +//--------------------------------------------------------------------------------------------------------- +// Transparency related helpers (optional) //-------------------------------------------------------------------------------------------------------- + +#if defined(_MSC_VER) +#pragma comment(lib, "dwmapi") // Link with dwmapi.lib. MinGW will require linking with '-ldwmapi' +#endif + +// [experimental] +// Borrowed from GLFW's function updateFramebufferTransparency() in src/win32_window.c +// (the Dwm* functions are Vista era functions but we are borrowing logic from GLFW) +void ImGui_ImplWin32_EnableAlphaCompositing(void* hwnd) +{ + if (!_IsWindowsVistaOrGreater()) + return; + + BOOL composition; + if (FAILED(::DwmIsCompositionEnabled(&composition)) || !composition) + return; + + BOOL opaque; + DWORD color; + if (_IsWindows8OrGreater() || (SUCCEEDED(::DwmGetColorizationColor(&color, &opaque)) && !opaque)) + { + HRGN region = ::CreateRectRgn(0, 0, -1, -1); + DWM_BLURBEHIND bb = {}; + bb.dwFlags = DWM_BB_ENABLE | DWM_BB_BLURREGION; + bb.hRgnBlur = region; + bb.fEnable = TRUE; + ::DwmEnableBlurBehindWindow((HWND)hwnd, &bb); + ::DeleteObject(region); + } + else + { + DWM_BLURBEHIND bb = {}; + bb.dwFlags = DWM_BB_ENABLE; + ::DwmEnableBlurBehindWindow((HWND)hwnd, &bb); + } +} + +//--------------------------------------------------------------------------------------------------------- // MULTI-VIEWPORT / PLATFORM INTERFACE SUPPORT // This is an _advanced_ and _optional_ feature, allowing the backend to create and handle multiple viewports simultaneously. // If you are new to dear imgui or creating a new binding for dear imgui, it is recommended that you completely ignore this section first.. //-------------------------------------------------------------------------------------------------------- -// Helper structure we store in the void* RenderUserData field of each ImGuiViewport to easily retrieve our backend data. +// Helper structure we store in the void* RendererUserData field of each ImGuiViewport to easily retrieve our backend data. struct ImGui_ImplWin32_ViewportData { HWND Hwnd; @@ -846,8 +954,8 @@ struct ImGui_ImplWin32_ViewportData DWORD DwStyle; DWORD DwExStyle; - ImGui_ImplWin32_ViewportData() { Hwnd = NULL; HwndOwned = false; DwStyle = DwExStyle = 0; } - ~ImGui_ImplWin32_ViewportData() { IM_ASSERT(Hwnd == NULL); } + ImGui_ImplWin32_ViewportData() { Hwnd = nullptr; HwndOwned = false; DwStyle = DwExStyle = 0; } + ~ImGui_ImplWin32_ViewportData() { IM_ASSERT(Hwnd == nullptr); } }; static void ImGui_ImplWin32_GetWin32StyleFromViewportFlags(ImGuiViewportFlags flags, DWORD* out_style, DWORD* out_ex_style) @@ -873,7 +981,7 @@ static void ImGui_ImplWin32_CreateWindow(ImGuiViewport* viewport) // Select style and parent window ImGui_ImplWin32_GetWin32StyleFromViewportFlags(viewport->Flags, &vd->DwStyle, &vd->DwExStyle); - HWND parent_window = NULL; + HWND parent_window = nullptr; if (viewport->ParentViewportId != 0) if (ImGuiViewport* parent_viewport = ImGui::FindViewportByID(viewport->ParentViewportId)) parent_window = (HWND)parent_viewport->PlatformHandle; @@ -882,9 +990,9 @@ static void ImGui_ImplWin32_CreateWindow(ImGuiViewport* viewport) RECT rect = { (LONG)viewport->Pos.x, (LONG)viewport->Pos.y, (LONG)(viewport->Pos.x + viewport->Size.x), (LONG)(viewport->Pos.y + viewport->Size.y) }; ::AdjustWindowRectEx(&rect, vd->DwStyle, FALSE, vd->DwExStyle); vd->Hwnd = ::CreateWindowEx( - vd->DwExStyle, _T("ImGui Platform"), _T("Untitled"), vd->DwStyle, // Style, class name, window name + vd->DwExStyle, _T("ImGui Platform"), _T("Untitled"), vd->DwStyle, // Style, class name, window name rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, // Window area - parent_window, NULL, ::GetModuleHandle(NULL), NULL); // Parent window, Menu, Instance, Param + parent_window, nullptr, ::GetModuleHandle(nullptr), nullptr); // Parent window, Menu, Instance, Param vd->HwndOwned = true; viewport->PlatformRequestResize = false; viewport->PlatformHandle = viewport->PlatformHandleRaw = vd->Hwnd; @@ -903,10 +1011,10 @@ static void ImGui_ImplWin32_DestroyWindow(ImGuiViewport* viewport) } if (vd->Hwnd && vd->HwndOwned) ::DestroyWindow(vd->Hwnd); - vd->Hwnd = NULL; + vd->Hwnd = nullptr; IM_DELETE(vd); } - viewport->PlatformUserData = viewport->PlatformHandle = NULL; + viewport->PlatformUserData = viewport->PlatformHandle = nullptr; } static void ImGui_ImplWin32_ShowWindow(ImGuiViewport* viewport) @@ -965,7 +1073,7 @@ static void ImGui_ImplWin32_SetWindowPos(ImGuiViewport* viewport, ImVec2 pos) IM_ASSERT(vd->Hwnd != 0); RECT rect = { (LONG)pos.x, (LONG)pos.y, (LONG)pos.x, (LONG)pos.y }; ::AdjustWindowRectEx(&rect, vd->DwStyle, FALSE, vd->DwExStyle); - ::SetWindowPos(vd->Hwnd, NULL, rect.left, rect.top, 0, 0, SWP_NOZORDER | SWP_NOSIZE | SWP_NOACTIVATE); + ::SetWindowPos(vd->Hwnd, nullptr, rect.left, rect.top, 0, 0, SWP_NOZORDER | SWP_NOSIZE | SWP_NOACTIVATE); } static ImVec2 ImGui_ImplWin32_GetWindowSize(ImGuiViewport* viewport) @@ -983,7 +1091,7 @@ static void ImGui_ImplWin32_SetWindowSize(ImGuiViewport* viewport, ImVec2 size) IM_ASSERT(vd->Hwnd != 0); RECT rect = { 0, 0, (LONG)size.x, (LONG)size.y }; ::AdjustWindowRectEx(&rect, vd->DwStyle, FALSE, vd->DwExStyle); // Client to Screen - ::SetWindowPos(vd->Hwnd, NULL, 0, 0, rect.right - rect.left, rect.bottom - rect.top, SWP_NOZORDER | SWP_NOMOVE | SWP_NOACTIVATE); + ::SetWindowPos(vd->Hwnd, nullptr, 0, 0, rect.right - rect.left, rect.bottom - rect.top, SWP_NOZORDER | SWP_NOMOVE | SWP_NOACTIVATE); } static void ImGui_ImplWin32_SetWindowFocus(ImGuiViewport* viewport) @@ -1014,7 +1122,7 @@ static void ImGui_ImplWin32_SetWindowTitle(ImGuiViewport* viewport, const char* // ::SetWindowTextA() doesn't properly handle UTF-8 so we explicitely convert our string. ImGui_ImplWin32_ViewportData* vd = (ImGui_ImplWin32_ViewportData*)viewport->PlatformUserData; IM_ASSERT(vd->Hwnd != 0); - int n = ::MultiByteToWideChar(CP_UTF8, 0, title, -1, NULL, 0); + int n = ::MultiByteToWideChar(CP_UTF8, 0, title, -1, nullptr, 0); ImVector title_w; title_w.resize(n); ::MultiByteToWideChar(CP_UTF8, 0, title, -1, title_w.Data, n); @@ -1098,21 +1206,21 @@ static LRESULT CALLBACK ImGui_ImplWin32_WndProcHandler_PlatformWindow(HWND hWnd, return DefWindowProc(hWnd, msg, wParam, lParam); } -static void ImGui_ImplWin32_InitPlatformInterface() +static void ImGui_ImplWin32_InitPlatformInterface(bool platform_has_own_dc) { WNDCLASSEX wcex; wcex.cbSize = sizeof(WNDCLASSEX); - wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.style = CS_HREDRAW | CS_VREDRAW | (platform_has_own_dc ? CS_OWNDC : 0); wcex.lpfnWndProc = ImGui_ImplWin32_WndProcHandler_PlatformWindow; wcex.cbClsExtra = 0; wcex.cbWndExtra = 0; - wcex.hInstance = ::GetModuleHandle(NULL); - wcex.hIcon = NULL; - wcex.hCursor = NULL; + wcex.hInstance = ::GetModuleHandle(nullptr); + wcex.hIcon = nullptr; + wcex.hCursor = nullptr; wcex.hbrBackground = (HBRUSH)(COLOR_BACKGROUND + 1); - wcex.lpszMenuName = NULL; + wcex.lpszMenuName = nullptr; wcex.lpszClassName = _T("ImGui Platform"); - wcex.hIconSm = NULL; + wcex.hIconSm = nullptr; ::RegisterClassEx(&wcex); ImGui_ImplWin32_UpdateMonitors(); @@ -1148,48 +1256,8 @@ static void ImGui_ImplWin32_InitPlatformInterface() static void ImGui_ImplWin32_ShutdownPlatformInterface() { - ::UnregisterClass(_T("ImGui Platform"), ::GetModuleHandle(NULL)); + ::UnregisterClass(_T("ImGui Platform"), ::GetModuleHandle(nullptr)); ImGui::DestroyPlatformWindows(); } //--------------------------------------------------------------------------------------------------------- -// Transparency related helpers (optional) -//-------------------------------------------------------------------------------------------------------- - -#if defined(_MSC_VER) -#pragma comment(lib, "dwmapi") // Link with dwmapi.lib. MinGW will require linking with '-ldwmapi' -#endif - -// [experimental] -// Borrowed from GLFW's function updateFramebufferTransparency() in src/win32_window.c -// (the Dwm* functions are Vista era functions but we are borrowing logic from GLFW) -void ImGui_ImplWin32_EnableAlphaCompositing(void* hwnd) -{ - if (!_IsWindowsVistaOrGreater()) - return; - - BOOL composition; - if (FAILED(::DwmIsCompositionEnabled(&composition)) || !composition) - return; - - BOOL opaque; - DWORD color; - if (_IsWindows8OrGreater() || (SUCCEEDED(::DwmGetColorizationColor(&color, &opaque)) && !opaque)) - { - HRGN region = ::CreateRectRgn(0, 0, -1, -1); - DWM_BLURBEHIND bb = {}; - bb.dwFlags = DWM_BB_ENABLE | DWM_BB_BLURREGION; - bb.hRgnBlur = region; - bb.fEnable = TRUE; - ::DwmEnableBlurBehindWindow((HWND)hwnd, &bb); - ::DeleteObject(region); - } - else - { - DWM_BLURBEHIND bb = {}; - bb.dwFlags = DWM_BB_ENABLE; - ::DwmEnableBlurBehindWindow((HWND)hwnd, &bb); - } -} - -//--------------------------------------------------------------------------------------------------------- diff --git a/extern/imgui_patched/backends/imgui_impl_win32.h b/extern/imgui_patched/backends/imgui_impl_win32.h index 3778c322..5f720cda 100644 --- a/extern/imgui_patched/backends/imgui_impl_win32.h +++ b/extern/imgui_patched/backends/imgui_impl_win32.h @@ -1,8 +1,9 @@ -// dear imgui: Platform Backend for Windows (standard windows API for 32 and 64 bits applications) +// dear imgui: Platform Backend for Windows (standard windows API for 32-bits AND 64-bits applications) // This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan..) // Implemented features: // [X] Platform: Clipboard support (for Win32 this is actually part of core dear imgui) +// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen. // [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy VK_* values will also be supported unless IMGUI_DISABLE_OBSOLETE_KEYIO is set] // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. @@ -17,6 +18,7 @@ #include "imgui.h" // IMGUI_IMPL_API IMGUI_IMPL_API bool ImGui_ImplWin32_Init(void* hwnd); +IMGUI_IMPL_API bool ImGui_ImplWin32_InitForOpenGL(void* hwnd); IMGUI_IMPL_API void ImGui_ImplWin32_Shutdown(); IMGUI_IMPL_API void ImGui_ImplWin32_NewFrame(); diff --git a/extern/imgui_patched/docs/BACKENDS.md b/extern/imgui_patched/docs/BACKENDS.md index cac11b6c..2b4a4fbe 100644 --- a/extern/imgui_patched/docs/BACKENDS.md +++ b/extern/imgui_patched/docs/BACKENDS.md @@ -5,22 +5,22 @@ _(You may browse this at https://github.com/ocornut/imgui/blob/master/docs/BACKE **The backends/ folder contains backends for popular platforms/graphics API, which you can use in your application or engine to easily integrate Dear ImGui.** Each backend is typically self-contained in a pair of files: imgui_impl_XXXX.cpp + imgui_impl_XXXX.h. -- The 'Platform' backends are in charge of: mouse/keyboard/gamepad inputs, cursor shape, timing, windowing.
    - e.g. Windows ([imgui_impl_win32.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_win32.cpp)), GLFW ([imgui_impl_glfw.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_glfw.cpp)), SDL2 ([imgui_impl_sdl.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_sdl.cpp)), etc. +- The 'Platform' backends are in charge of: mouse/keyboard/gamepad inputs, cursor shape, timing, and windowing.
    + e.g. Windows ([imgui_impl_win32.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_win32.cpp)), GLFW ([imgui_impl_glfw.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_glfw.cpp)), SDL2 ([imgui_impl_sdl2.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_sdl2.cpp)), etc. -- The 'Renderer' backends are in charge of: creating atlas texture, rendering imgui draw data.
    +- The 'Renderer' backends are in charge of: creating atlas texture, and rendering imgui draw data.
    e.g. DirectX11 ([imgui_impl_dx11.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_dx11.cpp)), OpenGL/WebGL ([imgui_impl_opengl3.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_opengl3.cpp)), Vulkan ([imgui_impl_vulkan.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_vulkan.cpp)), etc. -- For some high-level frameworks, a single backend usually handle both 'Platform' and 'Renderer' parts.
    +- For some high-level frameworks, a single backend usually handles both 'Platform' and 'Renderer' parts.
    e.g. Allegro 5 ([imgui_impl_allegro5.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_allegro5.cpp)). If you end up creating a custom backend for your engine, you may want to do the same. -An application usually combines 1 Platform backend + 1 Renderer backend + main Dear ImGui sources. +An application usually combines one Platform backend + one Renderer backend + main Dear ImGui sources. For example, the [example_win32_directx11](https://github.com/ocornut/imgui/tree/master/examples/example_win32_directx11) application combines imgui_impl_win32.cpp + imgui_impl_dx11.cpp. There are 20+ examples in the [examples/](https://github.com/ocornut/imgui/blob/master/examples/) folder. See [EXAMPLES.MD](https://github.com/ocornut/imgui/blob/master/docs/EXAMPLES.md) for details. **Once Dear ImGui is setup and running, run and refer to `ImGui::ShowDemoWindow()` in imgui_demo.cpp for usage of the end-user API.** -### What are backends +### What are backends? Dear ImGui is highly portable and only requires a few things to run and render, typically: @@ -41,7 +41,7 @@ Dear ImGui is highly portable and only requires a few things to run and render, This is essentially what each backend is doing + obligatory portability cruft. Using default backends ensure you can get all those features including the ones that would be harder to implement on your side (e.g. multi-viewports support). It is important to understand the difference between the core Dear ImGui library (files in the root folder) -and backends which we are describing here (backends/ folder). +and the backends which we are describing here (backends/ folder). - Some issues may only be backend or platform specific. - You should be able to write backends for pretty much any platform and any 3D graphics API. @@ -62,7 +62,8 @@ List of Platforms Backends: imgui_impl_android.cpp ; Android native app API imgui_impl_glfw.cpp ; GLFW (Windows, macOS, Linux, etc.) http://www.glfw.org/ imgui_impl_osx.mm ; macOS native API (not as feature complete as glfw/sdl backends) - imgui_impl_sdl.cpp ; SDL2 (Windows, macOS, Linux, iOS, Android) https://www.libsdl.org + imgui_impl_sdl2.cpp ; SDL2 (Windows, macOS, Linux, iOS, Android) https://www.libsdl.org + imgui_impl_sdl3.cpp ; SDL2 (Windows, macOS, Linux, iOS, Android) https://www.libsdl.org (*EXPERIMENTAL*) imgui_impl_win32.cpp ; Win32 native API (Windows) imgui_impl_glut.cpp ; GLUT/FreeGLUT (this is prehistoric software and absolutely not recommended today!) @@ -75,7 +76,8 @@ List of Renderer Backends: imgui_impl_metal.mm ; Metal (with ObjC) imgui_impl_opengl2.cpp ; OpenGL 2 (legacy, fixed pipeline <- don't use with modern OpenGL context) imgui_impl_opengl3.cpp ; OpenGL 3/4, OpenGL ES 2, OpenGL ES 3 (modern programmable pipeline) - imgui_impl_sdlrenderer.cpp; SDL_Renderer (optional component of SDL2 available from SDL 2.0.18+) + imgui_impl_sdlrenderer2.cpp ; SDL_Renderer (optional component of SDL2 available from SDL 2.0.18+) + imgui_impl_sdlrenderer3.cpp ; SDL_Renderer (optional component of SDL3 available from SDL 3.0.0+) imgui_impl_vulkan.cpp ; Vulkan imgui_impl_wgpu.cpp ; WebGPU @@ -83,8 +85,8 @@ List of high-level Frameworks Backends (combining Platform + Renderer): imgui_impl_allegro5.cpp -Emscripten is also supported. -The [example_emscripten_opengl3](https://github.com/ocornut/imgui/tree/master/examples/example_emscripten_opengl3) app uses imgui_impl_sdl.cpp + imgui_impl_opengl3.cpp, but other combos are possible. +Emscripten is also supported! +The SDL+GL, GLFW+GL and SDL+WebGPU examples are all ready to build and run with Emscripten. ### Backends for third-party frameworks, graphics API or other languages @@ -97,7 +99,7 @@ If you are not sure which backend to use, the recommended platform/frameworks fo |Library |Website |Backend |Note | |--------|--------|--------|-----| | GLFW | https://github.com/glfw/glfw | imgui_impl_glfw.cpp | | -| SDL2 | https://www.libsdl.org | imgui_impl_sdl.cpp | | +| SDL2 | https://www.libsdl.org | imgui_impl_sdl2.cpp | | | Sokol | https://github.com/floooh/sokol | [util/sokol_imgui.h](https://github.com/floooh/sokol/blob/master/util/sokol_imgui.h) | Lower-level than GLFW/SDL | @@ -109,19 +111,19 @@ Think twice! If you are new to Dear ImGui, first try using the existing backends as-is. You will save lots of time integrating the library. You can LATER decide to rewrite yourself a custom backend if you really need to. -In most situations, custom backends have less features and more bugs than the standard backends we provide. +In most situations, custom backends have fewer features and more bugs than the standard backends we provide. If you want portability, you can use multiple backends and choose between them either at compile time or at runtime. **Example A**: your engine is built over Windows + DirectX11 but you have your own high-level rendering system layered over DirectX11.
    Suggestion: try using imgui_impl_win32.cpp + imgui_impl_dx11.cpp first. -Once it works, if you really need it you can replace the imgui_impl_dx11.cpp code with a +Once it works, if you really need it, you can replace the imgui_impl_dx11.cpp code with a custom renderer using your own rendering functions, and keep using the standard Win32 code etc. -**Example B**: your engine runs on Windows, Mac, Linux and uses DirectX11, Metal, Vulkan respectively.
    +**Example B**: your engine runs on Windows, Mac, Linux and uses DirectX11, Metal, and Vulkan respectively.
    Suggestion: use multiple generic backends! -Once it works, if you really need it you can replace parts of backends with your own abstractions. +Once it works, if you really need it, you can replace parts of backends with your own abstractions. **Example C**: your engine runs on platforms we can't provide public backends for (e.g. PS4/PS5, Switch), and you have high-level systems everywhere.
    diff --git a/extern/imgui_patched/docs/CHANGELOG.txt b/extern/imgui_patched/docs/CHANGELOG.txt index dac5e8cc..03d290e4 100644 --- a/extern/imgui_patched/docs/CHANGELOG.txt +++ b/extern/imgui_patched/docs/CHANGELOG.txt @@ -8,8 +8,8 @@ Changes to backends are also included within the individual .cpp files of each b RELEASE NOTES: https://github.com/ocornut/imgui/releases REPORT ISSUES: https://github.com/ocornut/imgui/issues DISCUSS, ASK QUESTIONS: https://github.com/ocornut/imgui/discussions -FAQ https://www.dearimgui.org/faq/ WIKI https://github.com/ocornut/imgui/wiki +FAQ https://www.dearimgui.com/faq/ WHEN TO UPDATE? @@ -99,17 +99,674 @@ Other changes: ----------------------------------------------------------------------- - VERSION 1.88 WIP (In Progress) + VERSION 1.89.6 (Released 2023-05-31) ----------------------------------------------------------------------- +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89.6 + Breaking changes: +- Clipper: Commented out obsolete redirection constructor which was marked obsolete in 1.79: + 'ImGuiListClipper(int items_count, float items_height)' --> Use 'ImGuiListClipper() + clipper.Begin()'. +- Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(), kept + inline redirection function (introduced in 1.86 and rarely used). (#6424, #3841) +- Commented out obsolete/redirecting functions that were marked obsolete more than two years ago: + - ListBoxHeader() -> use BeginListBox() + - ListBoxFooter() -> use EndListBox() + - Note how two variants of ListBoxHeader() existed. Check commented versions in imgui.h for refeence. +- Backends: SDL_Renderer: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp', + in order to accomodate for upcoming SDL3 and change in its SDL_Renderer API. (#6286) +- Backends: GLUT: Removed call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). + It needs to be called from the main app loop, like with every other backends. (#6337) [@GereonV] + +Other changes: + +- Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) +- Tables: Fixed a small miscalculation in TableHeader() leading to an empty tooltip + showing when a sorting column has no visible name. (#6342) [@lukaasm] +- Tables: Fixed command merging when compiling with VS2013 (one array on stack was not + initialized on VS2013. Unsure if due to a bug or UB/standard conformance). (#6377) +- InputText: Avoid setting io.WantTextInputNextFrame during the deactivation frame. + (#6341) [@lukaasm] +- Drag, Sliders: if the format string doesn't contain any %, CTRL+Click to input text will + use the default format specifier for the type. Allow display/input of raw value when using + "enums" patterns (display label instead of value) + allow using when value is hidden. (#6405) +- Nav: Record/restore preferred position on each given axis after a movement on that axis, + then score movement on the other axis using this as a bias. This allows going up and down + between e.g. a large header spanning horizontal space and three-ways-columns, landing + on the same column as before. +- Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits, + unclipped bounding boxes would interfere with other columns. (#2221) [@zzzyap, @ocornut] +- Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags + erroneously initializing default nav layer to menu layer. +- Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow + opening another via simple hovering. (#3496, #4797) +- Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) [@JaedanC] +- Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) +- Misc: Added ImVec2 unary minus operator. (#6368) [@Koostosh] +- Debug Tools: Debug Log: Fixed not parsing 0xXXXXXXXX values for geo-locating on mouse + hover hover when the identifier is at the end of the line. (#5855) +- Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option to disable 'io.AddFocusEvent(false)' + handling. May facilitate interactions with a debugger when focus loss leads to clearing + inputs data. (#4388, #4921) +- Backends: Clear bits sets io.BackendFlags on backend Shutdown(). (#6334, #6335] [@GereonV] + Potentially this would facilitate switching runtime backend mid-session. +- Backends: Win32: Added ImGui_ImplWin32_InitForOpenGL() to facilitate combining raw + Win32/Winapi with OpenGL. (#3218) +- Backends: OpenGL3: Restore front and back polygon mode separately when supported + by context (Desktop 3.0, 3.1, or 3.2+ with compat bit). (#6333) [@GereonV] +- Backends: OpenGL3: Support for glBindSampler() backup/restore on ES3. (#6375) [@jsm174] +- Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) [@jo-codegirl] +- Backends: SDLRenderer3: Added SDL_Renderer for SDL3 backend. (#6286) [@Carcons, @ocornut] +- Examples: Added native Win32+OpenGL3 example. We don't recommend using this setup but we + provide it for completeness. (#3218, #5170, #6086, #2772, #2600, #2359, #2022, #1553) [@learn-more] +- Examples: Vulkan: Use integrated GPU if nothing else is available. (#6359) [@kimidaisuki22] +- Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE, + as some drivers tends to only cleanup after existing the native resize modal loop. (#6374) +- Examples: Added SDL3+SDL_Renderer example. (#6286) +- Examples: Updated all Visual Studio projects and batches to use /utf-8 argument. + +Docking+Viewports Branch: + +- Viewports: Fixed platform-side focus (e.g. Alt+Tab) from leading to accidental + closure of Modal windows. Regression from 1.89.5. (#6357, #6299) +- Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in + main viewport, due to platform-side handling changes. Regression from 1.89.5 (#6299) +- Viewports: Avoid applying imgui-side focus when focus change is due to a viewport + destruction. Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) +- Viewports: Added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant), + for usage by user code. +- Backends: GLFW: Preserve monitor list when there are no monitor, may briefly + happen when recovering from macOS sleeping mode. (#5683) [@Guistac] +- Backends: SDL2: Update monitor list when receiving a display event. (#6348) + Note however that SDL2 currently doesn't have an event for a DPI/Scaling change, + so monitor data won't be updated in this situation. +- Backends: SDL3: Update monitor list when receiving a display event. (#6348) + + +----------------------------------------------------------------------- + VERSION 1.89.5 (Released 2023-04-13) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89.5 + +Other changes: + +- InputText: Reworked prev/next-word behavior to more closely match Visual Studio + text editor. Include '.' as a delimiter and alter varying subtle behavior with how + blanks and separators are treated when skipping words. (#6067) [@ajweeks] +- InputText: Fixed a tricky edge case, ensuring value is always written back on the + frame where IsItemDeactivated() returns true, in order to allow usage without user + retaining underlying data. While we don't really want to encourage user not retaining + underlying data, in the absence of a "late commit" behavior/flag we understand it may + be desirable to take advantage of this trick. (#4714) +- Drag, Sliders: Fixed parsing of text input when '+' or '#' format flags are used + in the format string. (#6259) [@idbrii] +- Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier so + it doesn't interfere with other code when remapping those actions. (#4828, #3255, #5641) +- Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows when + necessary to make the target location fully visible (same as e.g. arrow keys). +- ColorEdit: Fixed shading of S/V triangle in Hue Wheel mode. (#5200, #6254) [@jamesthomasgriffin] +- TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with + horizontal mouse-wheel (or Shift + WheelY). (#2702) +- Rendering: Using adaptive tessellation for RadioButton, ColorEdit preview circles, + Windows Close and Collapse Buttons. +- ButtonBehavior: Fixed an edge case where changing widget type/behavior while active + and using same id could lead to an assert. (#6304) +- Misc: Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ + compiler. (#6272) [@BayesBug] +- IO: Input queue trickling adjustment for touch screens. (#2702, #4921) + This fixes single-tapping to move simulated mouse and immediately click on a widget + that is using the ImGuiButtonFlags_AllowItemOverlap policy. + - This only works if the backend can distinguish TouchScreen vs Mouse. + See 'Demo->Tools->Metrics->Inputs->Mouse Source' to verify. + - Fixed tapping on BeginTabItem() on a touch-screen. (#2702) + - Fixed tapping on CollapsingHeader() with a close button on a touch-screen. + - Fixed tapping on TreeNode() using ImGuiTreeNodeFlags_AllowItemOverlap on a touch-screen. + - Fixed tapping on Selectable() using ImGuiSelectableFlags_AllowItemOverlap on a touch-screen. + - Fixed tapping on TableHeader() on a touch-screen. +- IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. This is to allow backend to + specify actual event source between Mouse/TouchScreen/Pen. (#2702, #2334, #2372, #3453, #5693) +- IO: Fixed support for calling io.AddXXXX functions from inactive context (wrongly + advertised as supported in 1.89.4). (#6199, #6256, #5856) [@cfillion] +- Backends: OpenGL3: Fixed GL loader crash when GL_VERSION returns NULL. (#6154, #4445, #3530) +- Backends: OpenGL3: Properly restoring "no shader program bound" if it was the case prior to + running the rendering function. (#6267, #6220, #6224) [@BrunoLevy] +- Backends: Win32: Added support for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen/Pen. (#2334, #2702) +- Backends: SDL2/SDL3: Added support for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen. + This is relying on SDL passing SDL_TOUCH_MOUSEID in the event's 'which' field. (#2334, #2702) +- Backends: SDL2/SDL3: Avoid calling SDL_StartTextInput()/SDL_StopTextInput() as they actually + block text input input and don't only pertain to IME. It's unclear exactly what their relation + is to other IME function such as SDL_SetTextInputRect(). (#6306, #6071, #1953) +- Backends: GLFW: Added support on Win32 only for io.AddMouseSourceEvent() to discriminate + Mouse/TouchScreen/Pen. (#2334, #2702) +- Backends: Android: Added support for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen/Pen. + (#6315) [@PathogenDavid] +- Backends: OSX: Added support for io.AddMouseSourceEvent() to discriminate Mouse/Pen. + (#6314) [@PathogenDavid] +- Backends: WebGPU: Align buffers. Use WGSL shaders instead of SPIR-V. Add gamma uniform. (#6188) [@eliemichel] +- Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. +- Examples: Vulkan: Fixed validation errors with newer VulkanSDK by explicitly querying and enabling + "VK_KHR_get_physical_device_properties2", "VK_KHR_portability_enumeration", and + VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR. (#6109, #6172, #6101) +- Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects, + now that VS 2022 17.6 Preview 2 support adding Debug Step Filter spec files into projects. +- Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) +- TestSuite: Added variety of new regression tests and improved/amended existing ones + in imgui_test_engine/ repo. [@PathogenDavid, @ocornut] + +Docking+Viewports Branch: + +- Viewports: Setting focus from Platform/OS (e.g. via decoration, or Alt-Tab) sets corresponding + focus at Dear ImGui level (generally last focused window in the viewport). (#6299) +- Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) +- Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) [@aiekick] +- Backends: GLFW: Fixed Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) +- Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) +- Backends: SDL3: Fixed for compilation with multi-viewports. (#6255) [@P3RK4N] + + +----------------------------------------------------------------------- + VERSION 1.89.4 (Released 2023-03-14) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89.4 + +Breaking Changes: + +- Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). + Kept inline redirection functions (will obsolete). +- Moved the optional "courtesy maths operators" implementation from imgui_internal.h in imgui.h. + Even though we encourage using your own maths types and operators by setting up IM_VEC2_CLASS_EXTRA, + it has been frequently requested by people to use our own. We had an opt-in define which was + previously fulfilled by imgui_internal.h. It is now fulfilled by imgui.h. (#6164, #6137, #5966, #2832) + OK: #define IMGUI_DEFINE_MATH_OPERATORS / #include "imgui.h" / #include "imgui_internal.h" + Error: #include "imgui.h" / #define IMGUI_DEFINE_MATH_OPERATORS / #include "imgui_internal.h" + Added a dedicated compile-time check message to help diagnose this. +- Tooltips: Added 'bool' return value to BeginTooltip() for API consistency. + Please only submit contents and call EndTooltip() if BeginTooltip() returns true. + In reality the function will _currently_ always return true, but further changes down the + line may change this, best to clarify API sooner. Updated demo code accordingly. +- Commented out redirecting enums/functions names that were marked obsolete two years ago: + - ImGuiSliderFlags_ClampOnInput -> use ImGuiSliderFlags_AlwaysClamp + - ImGuiInputTextFlags_AlwaysInsertMode -> use ImGuiInputTextFlags_AlwaysOverwrite + - ImDrawList::AddBezierCurve() -> use ImDrawList::AddBezierCubic() + - ImDrawList::PathBezierCurveTo() -> use ImDrawList::PathBezierCubicCurveTo() + +Other changes: + +- Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. + (#3092, #5759, #787) + While this was generally desired and requested by many, note that its addition means + that some types of UI may become more fastidious to use TAB key with, if the navigation + cursor cycles through too many items. You can mark items items as not tab-spottable: + - Public API: PushTabStop(false) / PopTabStop() + - Internal: PushItemFlag(ImGuiItemFlags_NoTabStop, true); + - Internal: Directly pass ImGuiItemFlags_NoTabStop to ItemAdd() for custom widgets. +- Nav: Tabbing/Shift-Tabbing can more reliably be used to step out of an item that is not + tab-stoppable. (#3092, #5759, #787) +- Nav: Made Enter key submit the same type of Activation event as Space key, + allowing to press buttons with Enter. (#5606) + (Enter emulates a "prefer text input" activation vs. + Space emulates a "prefer tweak" activation which is to closer to gamepad controls). +- Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and + frame time > repeat rate. Triggering a new move request on the same frame as a move + result lead to an incorrect calculation and loss of navigation id. (#6171) +- Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. + (#2814, #2812) [@DomGries] +- Tables: Fixed an issue where user's Y cursor movement within a hidden column would + have side-effects. +- IO: Lifted constraint to call io.AddEventXXX functions from current context. (#4921, #5856, #6199) +- InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab + for completion or text data is active (regression from 1.89). +- Drag and Drop: Fixed handling of overlapping targets when smaller one is submitted + before and can accept the same data type. (#6183). +- Drag and Drop: Clear drag and drop state as soon as delivery is accepted in order to + avoid interferences. (#5817, #6183) [@DimaKoltun] +- Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop + options to simulate Begin/BeginChild returning false to facilitate debugging user behavior. +- Demo: Updated to test return value of BeginTooltip(). +- Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. If an active + program was pending deletion, attempting to restore it would error. (#6220, #6224) [@Cyphall] +- Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over + non-client area (e.g. OS decorations) when app is not focused. (#6045, #6162) +- Backends: SDL2, SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically + increasing value. (#6189, #6114, #3644) [@adamkewley] +- Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten, which + recently updated its GLFW emulation layer to GLFW 3.3 without supporting those. (#6240) +- Examples: Android: Fixed example build for Gradle 8. (#6229, #6227) [@duddel] +- Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard + and ImGuiConfigFlags_NavEnableGamepad by default. (#787) +- Internals: Misc tweaks to facilitate applying an explicit-context patch. (#5856) [@Dragnalith] + +----------------------------------------------------------------------- + VERSION 1.89.3 (Released 2023-02-14) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89.3 + +Breaking Changes: + +- Backends+Examples: SDL2: renamed all unnumbered references to "sdl" to "sdl2". + This is in prevision for the future release of SDL3 and its associated backend. (#6146) + - imgui_impl_sdl.cpp -> imgui_impl_sdl2.cpp + - imgui_impl_sdl.h -> imgui_impl_sdl2.h + - example_sdl_xxxx/ -> example_sdl2_xxxx/ (folders and projects) + +Other changes: + +- SeparatorText(): Added SeparatorText() widget. (#1643) [@phed, @ocornut] + - Added to style: float SeparatorTextBorderSize. + - Added to style: ImVec2 SeparatorTextAlign, SeparatorTextPadding. +- Tables: Raised max Columns count from 64 to 512. (#6094, #5305, #4876, #3572) + The previous limit was due to using 64-bit integers but we moved to bits-array + and tweaked the system enough to ensure no performance loss. +- Tables: Solved an ID conflict issue with multiple-instances of a same table, + due to how unique table instance id was generated. (#6140) [@ocornut, @rodrigorc] +- Inputs, Scrolling: Made horizontal scroll wheel and horizontal scroll direction consistent + across backends/os. (#4019, #6096, #1463) [@PathogenDavid, @ocornut, @rokups] + - Clarified that 'wheel_y > 0.0f' scrolls Up, 'wheel_y > 0.0f' scrolls Down. + Clarified that 'wheel_x > 0.0f' scrolls Left, 'wheel_x > 0.0f' scrolls Right. + - Backends: Fixed horizontal scroll direction for Win32 and SDL backends. (#4019) + - Shift+WheelY support on non-OSX machines was already correct. (#2424, #1463) + (whereas on OSX machines Shift+WheelY turns into WheelX at the OS level). + - If you use a custom backend, you should verify horizontal wheel direction. + - Axises are flipped by OSX for mouse & touch-pad when 'Natural Scrolling' is on. + - Axises are flipped by Windows for touch-pad when 'Settings->Touchpad->Down motion scrolls up' is on. + - You can use 'Demo->Tools->Debug Log->IO" to visualize values submitted to Dear ImGui. + - Known issues remaining with Emscripten: + - The magnitude of wheeling values on Emscripten was improved but isn't perfect. (#6096) + - When running the Emscripten app on a Mac with a mouse, SHIFT+WheelY doesn't turn into WheelX. + This is because we don't know that we are running on Mac and apply our own Shift+swapping + on top of OSX' own swapping, so wheel axises are swapped twice. Emscripten apps may need + to find a way to detect this and set io.ConfigMacOSXBehaviors manually (if you know a way + let us know!), or offer the "OSX-style behavior" option to their user. +- Window: Avoid rendering shapes for hidden resize grips. +- Text: Fixed layouting of wrapped-text block skipping successive empty lines, + regression from the fix in 1.89.2. (#5720, #5919) +- Text: Fixed clipping of single-character "..." ellipsis (U+2026 or U+0085) when font + is scaled. Scaling wasn't taken into account, leading to ellipsis character straying + slightly out of its expected boundaries. (#2775) +- Text: Tweaked rendering of three-dots "..." ellipsis variant. (#2775, #4269) +- InputText: Added support for Ctrl+Delete to delete up to end-of-word. (#6067) [@ajweeks] + (Not adding Super+Delete to delete to up to end-of-line on OSX, as OSX doesn't have it) +- InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). +- Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) [@imkcy9] +- ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with + the displayed value (but not stored value) of others widgets instances. (#6155) +- PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. +- Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) +- Fonts: Assert that in each GlyphRanges[] pairs first is <= second. +- ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when + color alpha is zero. +- Misc: Most text functions treat "%s" as a shortcut to no-formatting. (#3466) +- Misc: Tolerate zero delta-time under Emscripten as backends are imprecise in their + values for io.DeltaTime, and browser features such as "privacy.resistFingerprinting=true" + can exacerbate that. (#6114, #3644) +- Backends: OSX: Fixed scroll/wheel scaling for devices emitting events with + hasPreciseScrollingDeltas==false (e.g. non-Apple mices). +- Backends: Win32: flipping WM_MOUSEHWHEEL horizontal value to match other backends and + offer consistent horizontal scrolling direction. (#4019) +- Backends: SDL2: flipping SDL_MOUSEWHEEL horizontal value to match other backends and + offer consistent horizontal scrolling direction. (#4019) +- Backends: SDL2: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) +- Backends: SDL2: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data + for smooth scrolling as reported by SDL. (#4019, #6096) +- Backends: SDL2: Avoid calling SDL_SetCursor() when cursor has not changed, as the function + is surprisingly costly on Mac with latest SDL (already fixed in SDL latest trunk). (#6113) +- Backends: SDL2: Implement IME handler to call SDL_SetTextInputRect()/SDL_StartTextInput(). + It will only works with SDL 2.0.18+ if your code calls 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1")' + prior to calling SDL_CreateWindow(). Updated all examples accordingly. (#6071, #1953) +- Backends: SDL3: Added experimental imgui_impl_sdl3.cpp backend. (#6146) [@dovker, @ocornut] + SDL 3.0.0 has not yet been released, so it is possible that its specs/api will change before + release. This backend is provided as a convenience for early adopters etc. We don't recommend + switching to SDL3 before it is released. +- Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate + scrolling impulses on Emscripten. (#4019, #6096) [@ocornut, @wolfpld, @tolopolarity] +- Backends: GLFW: Added ImGui_ImplGlfw_SetCallbacksChainForAllWindows() to instruct backend + to chain callbacks even for secondary viewports/windows. User callbacks may need to test + the 'window' parameter. (#6142) +- Backends: OpenGL3: Fixed GL loader compatibility with 2.x profiles. (#6154, #4445, #3530) [@grauw] +- Backends: WebGPU: Fixed building for latest WebGPU specs (remove implicit layout generation). + (#6117, #4116, #3632) [@tonygrue, @bfierz] +- Examples: refactored SDL2+GL and GLFW+GL examples to compile with Emscripten. + (#2492, #2494, #3699, #3705) [@ocornut, @nicolasnoble] + The dedicated example_emscripten_opengl3/ has been removed. +- Examples: Added SDL3+GL experimental example. (#6146) +- Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call + DefWindowProcW() instead of DefWindowProc() so that title text are correctly converted + when application is compiled without /DUNICODE. (#5725, #5961, #5975) [@markreidvfx] +- Examples: SDL2+SDL_Renderer: Added call to SDL_RenderSetScale() to fix display on a + Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). + +Docking+Viewports Branch: + +- Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) + + +----------------------------------------------------------------------- + VERSION 1.89.2 (Released 2023-01-05) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89.2 + +All changes: + +- Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and + frozen columns. Windows now have a better understanding of outer/inner decoration sizes, + which should later lead us toward more flexible uses of menu/status bars. (#5143, #3692) +- Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) +- Tables, Columns: fixed cases where empty columns may lead to empty ImDrawCmd. (#4857, #5937) +- Tables: fixed matching width of synchronized tables (multiple tables with same id) when only + some instances have a vertical scrollbar and not all. (#5920) +- Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with + zero triangles, which would makes the render loop of some backends assert (e.g. Metal with + debugging, Allegro). (#4857, #5937) +- Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of + compile-time, being consistent with our support for io.ConfigMacOSXBehaviors and making it + easier for bindings generators to process that value. (#5923, #456) +- Inputs, Scrolling: better selection of scrolling window when hovering nested windows + and when backend/OS is emitting dual-axis wheeling inputs (typically touch pads on macOS). + We now select a primary axis based on recent events, and select a target window based on it. + We expect this behavior to be further improved/tweaked. (#3795, #4559) [@ocornut, @folays] +- InputText: fixed cursor navigation when pressing Up Arrow on the last character of a + multiline buffer which doesn't end with a carriage return. (#6000) +- Text: fixed layouting of wrapped-text block when the last source line is above the + clipping region. Regression added in 1.89. (#5720, #5919) +- Misc: added GetItemID() in public API. It is not often expected that you would use this, + but it is useful for Shortcut() and upcoming owner-aware input functions which wants to + be implemented with public API. +- Fonts: imgui_freetype: fixed a packing issue which in some occurrences would prevent large + amount of glyphs from being packed correctly. (#5788, #5829) +- Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by + applications using multiple font atlases. +- Demo: simplified "Inputs" section, moved contents to Metrics->Inputs. +- Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. +- Misc: fixed parameters to IMGUI_DEBUG_LOG() not being dead-stripped when building + with IMGUI_DISABLE_DEBUG_TOOLS is used. (#5901) [@Teselka] +- Misc: fixed compile-time detection of SSE features on MSVC 32-bits builds. (#5943) [@TheMostDiligent] +- Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) +- Backends: GLFW: Fixed mods state on Linux when using Alt-GR text input (e.g. German keyboard layout), which + could lead to broken text input. Revert a 2022/01/17 change were we resumed using mods provided by GLFW, + turns out they are faulty in this specific situation. (#6034) +- Backends: Allegro5: restoring using al_draw_indexed_prim() when Allegro version is >= 5.2.5. (#5937) [@Espyo] +- Backends: Vulkan: Fixed sampler passed to ImGui_ImplVulkan_AddTexture() not being honored as we were using + an immutable sampler. (#5502, #6001, #914) [@martin-ejdestig, @rytisss] + +Docking+Viewports Branch: + +- Docking: Internals: fixed DockBuilderCopyDockSpace() crashing when windows not in the + remapping list are docked on the left or top side of a split. (#6035) +- Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window + as written to, even if it doesn't technically submit an item. This allow using KeepAliveOnly + from any window location. (#6037) +- Backends: OSX: fixed typo in ImGui_ImplOSX_GetWindowSize that would cause issues when resiing + from OS decorations, if they are enabled on secondary viewports. (#6009) [@sivu] +- Backends: Metal: fixed secondary viewport rendering. (#6015) [@dmirty-kuzmenko] + + +----------------------------------------------------------------------- + VERSION 1.89.1 (Released 2022-11-24) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89.1 + +Other changes: + +- Scrolling, Focus: fixed SetKeyboardFocusHere()/SetItemDefaultFocus() during a window-appearing + frame (and associated lower-level functions e.g. ScrollToRectEx()) from not centering item. (#5902) +- Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code + from accessing keys. (#5888, #4921, #456) +- Inputs: fixed moving a window or drag and dropping from capturing mods. (#5888, #4921, #456) +- Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position + inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) +- Combo: fixed selected item (marked with SetItemDefaultFocus()) from not being centered when + the combo window initially appears. (#5902). +- ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left to + move the color button on the left side (regression introduced in 1.88 WIP 2022/02/28). (#5912) +- Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value if a drag source is + active but a payload hasn't been submitted yet. This is convenient to detect new payload + from within a drag source handler. (#5910, #143) +- Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) +- Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) [@kdchambers] + +Docking+Viewports Branch: + +- Viewports: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without + making title bar color opaque, leading to potential texture/fb garbage being visible. + Right now as we don't fully support transparent viewports (#2766), so we turn that + 'TitleBgCollapsed' color opaque just lke we do for 'WindowBG' on uncollapsed windows. + + +----------------------------------------------------------------------- + VERSION 1.89 (Released 2022-11-15) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.89 + +Breaking changes: + +- Layout: Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) + This relates to when moving the cursor position beyond current boundaries WITHOUT submitting an item. + - Previously this would make the window content size ~200x200: + Begin(...) + SetCursorScreenPos(GetCursorScreenPos() + ImVec2(200,200)) + End(); + - Instead, please submit an item: + Begin(...) + SetCursorScreenPos(GetCursorScreenPos() + ImVec2(200,200)) + Dummy(ImVec2(0,0)) + End(); + - Alternative: + Begin(...) + Dummy(ImVec2(200,200)) + End(); + Content size is now only extended when submitting an item. + With '#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS' this will now be detected and assert. + Without '#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS' this will silently be fixed until we obsolete it. + (This incorrect pattern has been mentioned or suggested in: #4510, #3355, #1760, #1490, #4152, #150, + threads have been amended to refer to this issue). +- Inputs: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921) + This will require uses of legacy backend-dependent indices to be casted, e.g. + - with imgui_impl_glfw: IsKeyPressed(GLFW_KEY_A) -> IsKeyPressed((ImGuiKey)GLFW_KEY_A); + - with imgui_impl_win32: IsKeyPressed('A') -> IsKeyPressed((ImGuiKey)'A') + - etc. however if you are upgrading code you might as well use the backend-agnostic IsKeyPressed(ImGuiKey_A) now. +- Renamed and merged keyboard modifiers key enums and flags into a same set: (#4921, #456) + - ImGuiKey_ModCtrl and ImGuiModFlags_Ctrl -> ImGuiMod_Ctrl + - ImGuiKey_ModShift and ImGuiModFlags_Shift -> ImGuiMod_Shift + - ImGuiKey_ModAlt and ImGuiModFlags_Alt -> ImGuiMod_Alt + - ImGuiKey_ModSuper and ImGuiModFlags_Super -> ImGuiMod_Super + Kept inline redirection enums (will obsolete). + This change simplifies a few things, reduces confusion, and will facilitate upcoming + shortcut/input ownership apis. + - The ImGuiKey_ModXXX were introduced in 1.87 and mostly used by backends. + - The ImGuiModFlags_XXX have been exposed in imgui.h but not really used by any public api, + only by third-party extensions. They were however subject to a recent rename + (ImGuiKeyModFlags_XXX -> ImGuiModFlags_XXX) and we are exceptionally commenting out + the older ImGuiKeyModFlags_XXX names ahead of obsolescence schedule to reduce confusion + and because they were not meant to be used anyway. +- Removed io.NavInputs[] and ImGuiNavInput enum that were used to feed gamepad inputs. + Basically 1.87 already obsoleted them from the backend's point of view, but internally + our navigation code still used this array and enum, so they were still present. + Not anymore! (#4921, #4858, #787, #1599, #323) + Transition guide: + - Official backends from 1.87+ -> no issue. + - Official backends from 1.60 to 1.86 -> will build and convert gamepad inputs, unless IMGUI_DISABLE_OBSOLETE_KEYIO is defined. Need updating! + - Custom backends not writing to io.NavInputs[] -> no issue. + - Custom backends writing to io.NavInputs[] -> will build and convert gamepad inputs, unless IMGUI_DISABLE_OBSOLETE_KEYIO is defined. Need fixing! + - TL;DR: Backends should call io.AddKeyEvent()/io.AddKeyAnalogEvent() with ImGuiKey_GamepadXXX values instead of filling io.NavInput[]. + The ImGuiNavInput enum was essentially 1.60's attempt to combine keyboard and gamepad inputs with named + semantic, but the additional indirection and copy added complexity and got in the way of other + incoming work. User's code (other than backends) should not be affected, unless you have custom + widgets intercepting navigation events via the named enums (in which case you can upgrade your code). +- DragInt()/SliderInt(): Removed runtime patching of invalid "%f"/"%.0f" types of format strings. + This was obsoleted in 1.61 (May 2018). See 1.61 changelog for details. +- Changed signature of ImageButton() function: (#5533, #4471, #2464, #1390) + - Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. + - Old signature: bool ImageButton(ImTextureID tex_id, ImVec2 size, ImVec2 uv0 = ImVec2(0,0), ImVec2 uv1 = ImVec2(1,1), int frame_padding = -1, ImVec4 bg_col = ImVec4(0,0,0,0), ImVec4 tint_col = ImVec4(1,1,1,1)); + - used the ImTextureID value to create an ID. This was inconsistent with other functions, led to ID conflicts, and caused problems with engines using transient ImTextureID values. + - had a FramePadding override which was inconsistent with other functions and made the already-long signature even longer. + - New signature: bool ImageButton(const char* str_id, ImTextureID tex_id, ImVec2 size, ImVec2 uv0 = ImVec2(0,0), ImVec2 uv1 = ImVec2(1,1), ImVec4 bg_col = ImVec4(0,0,0,0), ImVec4 tint_col = ImVec4(1,1,1,1)); + - requires an explicit identifier. You may still use e.g. PushID() calls and then pass an empty identifier. + - always uses style.FramePadding for padding, to be consistent with other buttons. You may use PushStyleVar() to alter this. + - As always we are keeping a redirection function available (will obsolete later). +- Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)'. (#1057) + Must always pass a pointer value explicitly, NULL/nullptr is ok but require cast, e.g. TreePush((void*)nullptr); + If you used TreePush() replace with TreePush((void*)NULL); +- Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) + They only made sense before we could use IMGUI_USER_CONFIG. + +Other Changes: + +- Popups & Modals: fixed nested Begin() inside a popup being erroneously input-inhibited. + While it is unusual, you can nest a Begin() inside a popup or modal, it is occasionally + useful to achieve certain things (e.g. to implement suggestion popups #718, #4461). +- Inputs: Standard widgets now claim for key/button ownership and test for them. + - Fixes scenario where e.g. a Popup with a Selectable() reacting on mouse down + (e.g. double click) closes, and behind it is another window with an item reacting + on mouse up. Previously this would lead to both items reacting, now the item in the + window behind won't react on the mouse up since the mouse button ownership has already + been claimed earlier. + - Internals: There are MANY more aspects to this changes. Added experimental/internal APIs + to allow handling input/shorting routing and key ownership. Things will be moved into + public APIs over time. For now this release is a way to test the solidity of underlying + systems while letting early adopters adopters toy with internals. + (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) +- Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset + whenever scrolling again. Modulate for small (sub-pixel) amounts. (#2604) +- Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad + events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) +- Scrolling: Exposed SetNextWindowScroll() in public API. Useful to remove a scrolling + delay in some situations where e.g. windows need to be synched. (#1526) +- InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing + Enter keep the input active and select all text. +- InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) + by converting them to half-width (U+0021..U+007E). +- InputText: added ImGuiInputTextFlags_EscapeClearsAll flag: first press on Escape clears + text if any, second press deactivate the InputText(). (#5688, #2620) +- InputText: added support for shift+click style selection. (#5619) [@procedural] +- InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. +- InputText: fixed minor one-frame selection glitch when reverting with Escape. +- ColorEdit3: fixed id collision leading to an assertion. (#5707) +- IsItemHovered: Added ImGuiHoveredFlags_DelayNormal and ImGuiHoveredFlags_DelayShort flags, + allowing to introduce a shared delay for tooltip idioms. The delays are respectively + io.HoverDelayNormal (default to 0.30f) and io.HoverDelayFast (default to 0.10f). (#1485) +- IsItemHovered: Added ImGuiHoveredFlags_NoSharedDelay to disable sharing delays between items, + so moving from one item to a nearby one will requires delay to elapse again. (#1485) +- Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns + output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) +- Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the + next row in such state where subsequent SameLine() would move back to previous row. +- Tabs: Fixed a crash when closing multiple windows (possible with docking only) with an + appended TabItemButton(). (#5515, #3291) [@rokups] +- Tabs: Fixed shrinking policy leading to infinite loops when fed unrounded tab widths. (#5652) +- Tabs: Fixed shrinking policy sometimes erroneously making right-most tabs stray a little out + bar boundaries (bug in 1.88). (#5652). +- Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) +- Window: Fixed a potential crash when appending to a child window. (#5515, #3496, #4797) [@rokups] +- Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. +- Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) +- Window: Fixed position not being clamped while auto-resizing (fixes appearing windows without + .ini data from moving for a frame when using io.ConfigWindowsMoveFromTitleBarOnly). (#5843) +- IO: Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) +- IO: Added ImGuiKey_MouseXXX aliases for mouse buttons/wheel so all operations done on ImGuiKey + can apply to mouse data as well. (#4921) +- IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) +- IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) +- Menus: Fixed incorrect sub-menu parent association when opening a menu by closing another. + Among other things, it would accidentally break part of the closing heuristic logic when moving + towards a sub-menu. (#2517, #5614). [@rokups] +- Menus: Fixed gaps in closing logic which would make child-menu erroneously close when crossing + the gap between a menu item inside a window and a child-menu in a secondary viewport. (#5614) +- Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) +- Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from + a window which is neither a popup neither a menu used to incorrectly close and reopen the menu + (the fix may have side-effect and is labelld as experimental as we may need to revert). (#5775) +- Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item + in parent window when the parent is not a popup. (#5730) +- Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) +- Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple + BeginMenu() call with same names). (#1207) +- Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu() + returning false. +- Nav: Fixed moving/resizing window with gamepad or keyboard when running at very high framerate. +- Nav: Pressing Space/GamepadFaceDown on a repeating button uses the same repeating rate as a mouse hold. +- Nav: Fixed an issue opening a menu with Right key from a non-menu window. +- Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region, + which would result in an abnormal number of vertices created (was slower and more likely to + asserts with 16-bits ImDrawVtx). (#5720) +- Fonts: Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) [@azonenberg] +- ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) + - Note: now using a temporary buffer stored in ImDrawListSharedData. + This change made it more visible than you cannot append to multiple ImDrawList from multiple + threads if they share the same ImDrawListSharedData. Previously it was a little more likely + for this to "accidentally" work, but was already incorrect. (#6167) +- Platform IME: [Windows] Removed call to ImmAssociateContextEx() leading to freeze on some setups. + (#2589, #5535, #5264, #4972) +- Misc: better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) +- Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) +- Debug Tools: Debug Log: Visually locate items when hovering a 0xXXXXXXXX value. (#5855) +- Debug Tools: Debug Log: Added 'IO' and 'Clipper' events logging. (#5855) +- Debug Tools: Metrics: Visually locate items when hovering a 0xXXXXXXXX value (in most places). +- Debug Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift, making it easier + to use the Item Picker in e.g. menus. (#2673) +- Docs: Fixed various typos in comments and documentations. (#5649, #5675, #5679) [@tocic, @lessigsx] +- Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627) +- Demo: Added more explicit "Center window" mode to "Overlay example". (#5618) +- Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) +- Examples: Added all SDL examples to default VS solution. +- Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) +- Examples: Android: Enable .ini file loading/saving into application internal data folder. (#5836) [@rewtio] +- Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) [@scorpion-26] +- Backends: GLFW: Add glfwGetError() call on GLFW 3.3 to inhibit missing mouse cursor errors. (#5785) [@mitchellh] +- Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows + (e.g. for multi-viewport support) and don't capture mouse when drag and dropping. (#5710) +- Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was + registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) [@or75, @ocornut] +- Backends: OSX: Fixed mouse inputs on flipped views. (#5756) [@Nemirtingas] +- Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) [@maezawa-akira] +- Backends: OSX: Fixes to support full app creation in C++. (#5403) [@stack] +- Backends: OpenGL3: Reverted use of glBufferSubData(), too many corruptions issues were reported, + and old leaks issues seemingly can't be reproed with Intel drivers nowadays (revert earlier changes). + (#4468, #4504, #3381, #2981, #4825, #4832, #5127). +- Backends: Metal: Use __bridge for ARC based systems. (#5403) [@stack] +- Backends: Metal: Add dispatch synchronization. (#5447) [@luigifcruz] +- Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount'. (#5603) [@dcvz] +- Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). +- Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) [@brainlag] + +Docking+Viewports Branch: + +- Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) +- Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer when + it only contained the standard Collapse/Close buttons and no actual menu. (#5463, #4792) +- Docking: Fixed regression introduced in v1.87 when docked window content not rendered + while switching between with CTRL+Tab. [@rokups] +- Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515) +- Docking: Made spacing between dock nodes not a dropping gap. When hovering it only + outer-docking drop markers are visible. +- Docking+Viewports: Fixed undocking window node causing parent viewports to become unresponsive + in certain situation (e.g. hidden tab bar). (#5503) [@rokups] +- Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) +- Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) +- Backends: GLFW: Fixed leftover static variable preventing from changing or + reinitializing backend while application is running. (#4616, #5434) [@rtoumazet] + + +----------------------------------------------------------------------- + VERSION 1.88 (Released 2022-06-21) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.88 + +Breaking changes: + +- Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS for correctness. + Kept support for old define (will obsolete). +- Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() + and SetNextFrameWantCaptureKeyboard() to clarify purpose, old name was too misleading. + Kept inline redirection functions (will obsolete). - Renamed ImGuiKeyModFlags to ImGuiModFlags. Kept inline redirection enums (will obsolete). (This was never used in public API functions but technically present in imgui.h and ImGuiIO). - Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API in favor of backend automatically handling event capture. Examples that are using the OSX backend have removed all the now-unnecessary calls to ImGui_ImplOSX_HandleEvent(), applications can do as well. [@stuartcarnie] (#4821) +- Internals: calling ButtonBehavior() without calling ItemAdd() now requires a KeepAliveID() + call. This is because the KeepAliveID() call was moved from GetID() to ItemAdd(). (#5181) Other Changes: @@ -122,9 +779,14 @@ Other Changes: In particular, using the input system for fast game-like actions (e.g. WASD camera move) would typically have been impacted, as well as holding a key while dragging mouse. Constraints have been lifted and are now only happening when e.g. an InputText() widget is active. (#4921, #4858) - Not that even thought you shouldn't need to disable io.ConfigInputTrickleEventQueue, you can + Note that even thought you shouldn't need to disable io.ConfigInputTrickleEventQueue, you can technically dynamically change its setting based on the context (e.g. disable only when hovering or interacting with a game/3D view). +- IO: Fixed input queue trickling of mouse wheel events: multiple wheel events are merged, while + a mouse pos followed by a mouse wheel are now trickled. (#4921, #4821) +- IO: Added io.SetAppAcceptingEvents() to set a master flag for accepting key/mouse/characters + events (default to true). Useful if you have native dialog boxes that are interrupting your + application loop/refresh, and you want to disable events being queued while your app is frozen. - Windows: Fixed first-time windows appearing in negative coordinates from being initialized with a wrong size. This would most often be noticeable in multi-viewport mode (docking branch) when spawning a window in a monitor with negative coordinates. (#5215, #3414) [@DimaKoltun] @@ -133,32 +795,56 @@ Other Changes: - Layout: Fixed mixing up SameLine() and SetCursorPos() together from creating situations where line height would be emitted from the wrong location (e.g. 'ItemA+SameLine()+SetCursorPos()+ItemB' would emit ItemA worth of height from the position of ItemB, which is not necessarily aligned with ItemA). +- Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) - Sliders, Drags: Fixed dragging when using hexadecimal display format string. (#5165, #3133) - Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) - InputScalar: Fixed manual input when using %03d style width in display format string. (#5165, #3133) - InputScalar: Automatically allow hexadecimal input when format is %X (without extra flag). - InputScalar: Automatically allow scientific input when format is float/double (without extra flag). - Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) +- Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() + and simultaneous changing window focus. (#4449) +- Nav: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress. +- Nav: Fixed inability to cancel nav in modal popups. (#5400) [@rokups] - IsItemHovered(): added ImGuiHoveredFlags_NoNavOverride to disable the behavior where the - return value is overriden by focus when gamepad/keyboard navigation is active. + return value is overridden by focus when gamepad/keyboard navigation is active. - InputText: Fixed pressing Tab emitting two tabs characters because of dual Keys/Chars events being trickled with the new input queue (happened on some backends only). (#2467, #1336) +- InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion + would lead to small garbage being displayed for one frame. Curiously a rather old bug! (#3008) +- InputText: Fixed an undo-state corruption issue when editing main buffer before reactivating item. (#4947) +- InputText: Fixed an undo-state corruption issue when editing in-flight buffer in user callback. + (#4947, #4949] [@JoshuaWebb] - Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955). - Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) +- Tables: Fixed draw-call merging of last column. Depending on some unrelated settings (e.g. BorderH) + merging draw-call of the last column didn't always work (regression since 1.87). (#4843, #4844) [@rokups] - Inputs: Fixed IsMouseClicked() repeat mode rate being half of keyboard repeat rate. - ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. +- Tabs: BeginTabItem() now reacts to SetNextItemWidth(). (#5262) +- Tabs: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their + initial width more precisely (without the occasional +1 worth of width). - Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. Fixes using items that are not MenuItem() or BeginItem() at the root level of a popup with a child menu opened. +- Menus: Menus emitted from the main/scrolling layer are not part of the same menu-set as menus emitted + from the menu-bar, avoiding accidental hovering from one to the other. (#3496, #4797) [@rokups] +- Style: Adjust default value of GrabMinSize from 10.0f to 12.0f. - Stack Tool: Added option to copy item path to clipboard. (#4631) +- Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) [@quantum5] +- Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. - DrawList: Fixed PathArcTo() emitting terminating vertices too close to arc vertices. (#4993) [@thedmd] - DrawList: Fixed texture-based anti-aliasing path with RGBA textures (#5132, #3245) [@cfillion] - DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) - DrawList: Circle with a radius smaller than 0.5f won't appear, to be consistent with other primitives. [@thedmd] -- Debug: Added DebugTextEncoding() function to facilitate diagnosing issues when not sure about whether - you have a UTF-8 text encoding issue or a font loading issue. [@LaMarche05, @ocornut] +- Debug Tools: Debug Log: Added ShowDebugLogWindow() showing an opt-in synthetic log of principal events + (focus, popup, active id changes) helping to diagnose issues. +- Debug Tools: Added DebugTextEncoding() function to facilitate diagnosing issues when not sure about + whether you have a UTF-8 text encoding issue or a font loading issue. [@LaMarche05, @ocornut] +- Demo: Add better demo of how to use SetNextFrameWantCaptureMouse()/SetNextFrameWantCaptureKeyboard(). - Metrics: Added a "UTF-8 Encoding Viewer" section using the aforementioned DebugTextEncoding() function. +- Metrics: Added "InputText" section to visualize internal state (#4947, #4949). - Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). - Misc: Fixed IsAnyItemHovered() returning false when using navigation. @@ -180,6 +866,14 @@ Other Changes: - Backends: OSX: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) [@thedmd] - Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) [@noisewuwei] +- Backends: Metal: Fixed null dereference on exit inside command buffer completion handler. (#5363, #5365) [@warrenm] +- Backends: OpenGL3: Partially revert 1.86 change of using glBufferSubData(): now only done on Windows and + Intel GPU, based on querying glGetString(GL_VENDOR). Essentially we got report of accumulating leaks on Intel + with multi-viewports when using simple glBufferData() without orphaning, and report of corruptions on other + GPUs with multi-viewports when using orphaning and glBufferSubData(), so currently switching technique based + on GPU vendor, which unfortunately reinforce the cargo-cult nature of dealing with OpenGL drivers. + Navigating the space of mysterious OpenGL drivers is particularly difficult as they are known to rely on + application specific whitelisting. (#4468, #3381, #2981, #4825, #4832, #5127). - Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. [@rokups] - Examples: Emscripten+WebGPU: Fix building for latest WebGPU specs. (#3632) @@ -188,20 +882,29 @@ Other Changes: Docking+Viewports Branch: - Docking: Fixed floating docked nodes not being clamped into viewport workrect to stay reachable - when g.ConfigWindowsMoveFromTitleBarOnly is set and multi-viewports are disabled. (#5044) + when io.ConfigWindowsMoveFromTitleBarOnly is true and multi-viewports are disabled. (#5044) +- Docking: Fixed a regression where moving window would be interrupted after undocking a tab + when io.ConfigDockingAlwaysTabBar is true. (#5324) [@rokups] +- Docking: Fixed incorrect focus highlight on docking node when focusing empty central node + or a child window which was manually injected into a dockspace window. +- Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) +- Viewports: Fixed an issue where MouseViewport was lagging by a frame when using 1.87 Input Queue. + A common side-effect would be that when releasing a window drag the underlying window would highlight + for a frame. (#5837, #4921) [@cfillion] - Viewports: Fixed translating a host viewport from briefly altering the size of AlwaysAutoResize windows. (#5057) - Viewports: Fixed main viewport size not matching ImDrawData::DisplaySize for one frame during resize when multi-viewports are disabled. (#4900) - Backends: SDL: Fixed dragging out main viewport broken on some SDL setups. (#5012) [@rokups] -- Backends: OSX: Added suppot for multi-viewports. [@stuartcarnie, @metarutaiga] (#4821, #2778) -- Backends: Metal: Added suppot for multi-viewports. [@stuartcarnie, @metarutaiga] (#4821, #2778) +- Backends: OSX: Added support for multi-viewports. [@stuartcarnie, @metarutaiga] (#4821, #2778) +- Backends: Metal: Added support for multi-viewports. [@stuartcarnie, @metarutaiga] (#4821, #2778) +- Examples: OSX+Metal, SDL+Metal, GLFW+Metal: Added support for multi-viewports. [@rokups] ----------------------------------------------------------------------- VERSION 1.87 (Released 2022-02-07) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.87 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.87 Breaking Changes: @@ -366,7 +1069,7 @@ Docking+Viewports Branch: VERSION 1.86 (Released 2021-12-22) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.86 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.86 Breaking Changes: @@ -381,7 +1084,7 @@ Other Changes: - Added an assertion for the common user mistake of using "" as an identifier at the root level of a window instead of using "##something". Empty identifiers are valid and useful in a very small amount of cases, but 99.9% of the time if you need an empty label you should use "##something". (#1414, #2562, #2807, #4008, - #4158, #4375, #4548, #4657, #4796). READ THE FAQ ABOUT HOW THE ID STACK WORKS -> https://dearimgui.org/faq + #4158, #4375, #4548, #4657, #4796). READ THE FAQ ABOUT HOW THE ID STACK WORKS -> https://dearimgui.com/faq - Added GetMouseClickedCount() function, returning the number of successive clicks. (#3229) [@kudaba] (so IsMouseDoubleClicked(ImGuiMouseButton_Left) is same as GetMouseClickedCount(ImGuiMouseButton_Left) == 2, but it allows testing for triple clicks and more). @@ -420,7 +1123,7 @@ Other Changes: Fixes issue where e.g. drag and dropping an item and scrolling ensure the item source location is still submitted. (#3841, #1725) [@GamingMinds-DanielC, @ocornut] - Clipper: added ForceDisplayRangeByIndices() to force a given item (or several) to be stepped out - during a clipping operation. (#3841) [@@GamingMinds-DanielC] + during a clipping operation. (#3841) [@GamingMinds-DanielC] - Clipper: rework so gamepad/keyboard navigation doesn't create spikes in number of items requested by the clipper to display. (#3841) - Clipper: fixed content height declaration slightly mismatching the value of when not using a clipper. @@ -482,7 +1185,7 @@ Docking+Viewports Branch: VERSION 1.85 (Released 2021-10-12) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.85 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.85 This is the last release officially supporting C++03 and Visual Studio 2008/2010. (#4537) We expect that the next release will require a subset of the C++11 language (VS 2012~, GCC 4.8.1, Clang 3.3). @@ -491,7 +1194,7 @@ If you are stuck on ancient compiler you may need to stay at this version onward Breaking Changes: -- Removed GetWindowContentRegionWidth() function. Keep inline redirection helper. +- Removed GetWindowContentRegionWidth() function. Kept inline redirection helper. Can use 'GetWindowContentRegionMax().x - GetWindowContentRegionMin().x' instead but it's not very useful in practice, and the only use of it in the demo was illfit. Using 'GetContentRegionAvail().x' is generally a better choice. @@ -600,7 +1303,7 @@ Docking+Viewports Branch: VERSION 1.84.2 (Released 2021-08-23) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.84.2 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.84.2 - Disabled: Fixed nested BeginDisabled()/EndDisabled() calls. (#211, #4452, #4453, #4462) [@Legulysse] - Backends: OpenGL3: OpenGL: Fixed ES 3.0 shader ("#version 300 es") to use normal precision @@ -611,7 +1314,7 @@ Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.84.2 VERSION 1.84.1 (Released 2021-08-20) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.84.1 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.84.1 - Disabled: Fixed BeginDisabled(false) - BeginDisabled(true) was working. (#211, #4452, #4453) @@ -620,7 +1323,7 @@ Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.84.1 VERSION 1.84 (Released 2021-08-20) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.84 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.84 Breaking Changes: @@ -670,7 +1373,7 @@ Other Changes: Convenient for some small columns. Name will still appear in context menu. (#4206). - Tables: Fixed columns order on TableSetupScrollFreeze() if previous data got frozen columns out of their section. - Tables: Fixed invalid data in TableGetSortSpecs() when SpecsDirty flag is unset. (#4233) -- TabBar: Fixed using more than 32 KB-worth of tab names. (#4176) +- Tabs: Fixed using more than 32 KB-worth of tab names. (#4176) - InputInt/InputFloat: When used with Steps values and _ReadOnly flag, the step button look disabled. (#211) - InputText: Fixed named filtering flags disabling newline or tabs in multiline inputs (#4409, #4410) [@kfsone] - Drag and Drop: drop target highlight doesn't try to bypass host clipping rectangle. (#4281, #3272) @@ -744,6 +1447,8 @@ Docking+Viewports Branch: (#4292, #3834, #3633, #3521, #3492, #3335, #2999, #2648) - Docking: (Internal/Experimental) Removed DockNodeFlagsOverrideClear flags from ImGuiWindowClass as it is ambiguous how to apply them and we haven't got a use out of them yet. +- Docking: Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows when there are + no close button. (#5745) - Viewports: Fix popup/tooltip created without a parent window from being given a ParentViewportId value from the implicit/fallback window. (#4236, #2409) - Backends: Vulkan: Fix the use of the incorrect fence for secondary viewports. (#4208) [@FunMiles] @@ -753,7 +1458,7 @@ Docking+Viewports Branch: VERSION 1.83 (Released 2021-05-24) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.83 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.83 Breaking Changes: @@ -780,7 +1485,7 @@ Other Changes: - Tables: Expose TableSetColumnEnabled() in public api. (#3935) - Tables: Better preserve widths when columns count changes. (#4046) - Tables: Sharing more memory buffers between tables, reducing general memory footprints. (#3740) -- TabBar: Fixed mouse reordering with very fast movements (e.g. crossing multiple tabs in a single +- Tabs: Fixed mouse reordering with very fast movements (e.g. crossing multiple tabs in a single frame and then immediately standing still (would only affect automation/bots). [@rokups] - Menus: made MenuItem() in a menu bar reflect the 'selected' argument with a highlight. (#4128) [@mattelegende] - Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be @@ -853,7 +1558,7 @@ Docking+Viewports Branch: VERSION 1.82 (Released 2021-02-15) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.82 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.82 Breaking Changes: @@ -955,7 +1660,7 @@ Docking+Viewports Branch: VERSION 1.81 (Released 2021-02-10) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.81 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.81 Breaking Changes: @@ -1047,7 +1752,7 @@ Docking+Viewports Branch: VERSION 1.80 (Released 2021-01-21) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.80 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.80 Breaking Changes: @@ -1097,11 +1802,11 @@ Other Changes: - Added 2 enums: ImGuiSortDirection, ImGuiTableBgTarget - Added 1 style variable: ImGuiStyleVar_CellPadding - Added 5 style colors: ImGuiCol_TableHeaderBg, ImGuiCol_TableBorderStrong, ImGuiCol_TableBorderLight, ImGuiCol_TableRowBg, ImGuiCol_TableRowBgAlt. -- Tab Bar: Made it possible to append to an existing tab bar by calling BeginTabBar()/EndTabBar() again. -- Tab Bar: Fixed using more than 128 tabs in a tab bar (scrolling policy recommended). -- Tab Bar: Do not display a tooltip if the name already fits over a given tab. (#3521) -- Tab Bar: Fixed minor/unlikely bug skipping over a button when scrolling left with arrows. -- Tab Bar: Requested ideal content size (for auto-fit) doesn't affect horizontal scrolling. (#3414) +- Tabs: Made it possible to append to an existing tab bar by calling BeginTabBar()/EndTabBar() again. +- Tabs: Fixed using more than 128 tabs in a tab bar (scrolling policy recommended). +- Tabs: Do not display a tooltip if the name already fits over a given tab. (#3521) +- Tabs: Fixed minor/unlikely bug skipping over a button when scrolling left with arrows. +- Tabs: Requested ideal content size (for auto-fit) doesn't affect horizontal scrolling. (#3414) - Drag and Drop: Fix losing drop source ActiveID (and often source tooltip) when opening a TreeNode() or CollapsingHeader() while dragging. (#1738) - Drag and Drop: Fix drag and drop to tie same-size drop targets by chosen the later one. Fixes dragging @@ -1174,7 +1879,7 @@ Docking+Viewports Branch: VERSION 1.79 (Released 2020-10-08) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.79 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.79 Breaking Changes: @@ -1230,16 +1935,16 @@ Other Changes: rather than the Mouse Down+Up sequence, even if the _OpenOnArrow flag isn't set. This is standard behavior and amends the change done in 1.76 which only affected cases were _OpenOnArrow flag was set. (This is also necessary to support full multi/range-select/drag and drop operations.) -- Tab Bar: Added TabItemButton() to submit tab that behave like a button. (#3291) [@Xipiryon] -- Tab Bar: Added ImGuiTabItemFlags_Leading and ImGuiTabItemFlags_Trailing flags to position tabs or button +- Tabs: Added TabItemButton() to submit tab that behave like a button. (#3291) [@Xipiryon] +- Tabs: Added ImGuiTabItemFlags_Leading and ImGuiTabItemFlags_Trailing flags to position tabs or button at either end of the tab bar. Those tabs won't be part of the scrolling region, and when reordering cannot be moving outside of their section. Most often used with TabItemButton(). (#3291) [@Xipiryon] -- Tab Bar: Added ImGuiTabItemFlags_NoReorder flag to disable reordering a given tab. -- Tab Bar: Keep tab item close button visible while dragging a tab (independent of hovering state). -- Tab Bar: Fixed a small bug where closing a tab that is not selected would leave a tab hole for a frame. -- Tab Bar: Fixed a small bug where scrolling buttons (with ImGuiTabBarFlags_FittingPolicyScroll) would +- Tabs: Added ImGuiTabItemFlags_NoReorder flag to disable reordering a given tab. +- Tabs: Keep tab item close button visible while dragging a tab (independent of hovering state). +- Tabs: Fixed a small bug where closing a tab that is not selected would leave a tab hole for a frame. +- Tabs: Fixed a small bug where scrolling buttons (with ImGuiTabBarFlags_FittingPolicyScroll) would generate an unnecessary extra draw call. -- Tab Bar: Fixed a small bug where toggling a tab bar from Reorderable to not Reorderable would leave +- Tabs: Fixed a small bug where toggling a tab bar from Reorderable to not Reorderable would leave tabs reordered in the tab list popup. [@Xipiryon] - Columns: Fix inverted ClipRect being passed to renderer when using certain primitives inside of a fully clipped column. (#3475) [@szreder] @@ -1283,7 +1988,7 @@ Docking+Viewports Branch: VERSION 1.78 (Released 2020-08-18) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.78 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.78 Breaking Changes: @@ -1348,7 +2053,7 @@ Other Changes: limits when close-enough by (WindowPadding - ItemPadding), which was a tweak with too many side-effects. The behavior is still present in SetScrollHere functions as they are more explicitly aiming at making widgets visible. May later be moved to a flag. -- Tab Bar: Allow calling SetTabItemClosed() after a tab has been submitted (will process next frame). +- Tabs: Allow calling SetTabItemClosed() after a tab has been submitted (will process next frame). - InvisibleButton: Made public a small selection of ImGuiButtonFlags (previously in imgui_internal.h) and allowed to pass them to InvisibleButton(): ImGuiButtonFlags_MouseButtonLeft/Right/Middle. This is a small but rather important change because lots of multi-button behaviors could previously @@ -1401,7 +2106,7 @@ Docking+Viewports Branch: VERSION 1.77 (Released 2020-06-29) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.77 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.77 Breaking Changes: @@ -1503,7 +2208,7 @@ Docking+Viewports Branch: VERSION 1.76 (Released 2020-04-12) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.76 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.76 Other Changes: @@ -1589,7 +2294,7 @@ Docking+Viewports Branch: VERSION 1.75 (Released 2020-02-10) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.75 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.75 Breaking Changes: @@ -1702,7 +2407,7 @@ Docking+Viewports Branch: VERSION 1.74 (Released 2019-11-25) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.74 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.74 Breaking Changes: @@ -1760,7 +2465,7 @@ Other Changes: default implementation of ImFileXXX functions linking with fopen/fclose/fread/fwrite. (#2734) - Docs: Improved and moved FAQ to docs/FAQ.md so it can be readable on the web. [@ButternCream, @ocornut] - Docs: Moved misc/fonts/README.txt to docs/FONTS.txt. -- Docs: Added permanent redirect from https://www.dearimgui.org/faq to FAQ page. +- Docs: Added permanent redirect from https://www.dearimgui.com/faq to FAQ page. - Demo: Added simple item reordering demo in Widgets -> Drag and Drop section. (#2823, #143) [@rokups] - Metrics: Show wire-frame mesh and approximate surface area when hovering ImDrawCmd. [@ShironekoBen] - Metrics: Expose basic details of each window key/value state storage. @@ -1789,7 +2494,7 @@ Docking+Viewports Branch: VERSION 1.73 (Released 2019-09-24) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.73 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.73 Other Changes: @@ -1800,11 +2505,11 @@ Other Changes: - ColorPicker: Made rendering aware of global style alpha of the picker can be faded out. (#2711) Note that some elements won't accurately fade down with the same intensity, and the color wheel when enabled will have small overlap glitches with (style.Alpha < 1.0). -- TabBar: Fixed single-tab not shrinking their width down. -- TabBar: Fixed clicking on a tab larger than tab-bar width creating a bouncing feedback loop. -- TabBar: Feed desired width (sum of unclipped tabs width) into layout system to allow for auto-resize. (#2768) +- Tabs: Fixed single-tab not shrinking their width down. +- Tabs: Fixed clicking on a tab larger than tab-bar width creating a bouncing feedback loop. +- Tabs: Feed desired width (sum of unclipped tabs width) into layout system to allow for auto-resize. (#2768) (before 1.71 tab bars fed the sum of current width which created feedback loops in certain situations). -- TabBar: Improved shrinking for large number of tabs to avoid leaving extraneous space on the right side. +- Tabs: Improved shrinking for large number of tabs to avoid leaving extraneous space on the right side. Individuals tabs are given integer-rounded width and remainder is spread between tabs left-to-right. - Columns, Separator: Fixed a bug where non-visible separators within columns would alter the next row position differently than visible ones. @@ -1873,7 +2578,7 @@ Docking+Viewports Branch: VERSION 1.72b (Released 2019-07-31) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.72b +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.72b Other Changes: @@ -1890,7 +2595,7 @@ Other Changes: VERSION 1.72 (Released 2019-07-27) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.72 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.72 Breaking Changes: @@ -1926,7 +2631,7 @@ Other Changes: - Scrollbar: Avoid overlapping the opposite side when window (often a child window) is forcibly too small. - Combo: Hide arrow when there's not enough space even for the square button. - InputText: Testing for newly added ImGuiKey_KeyPadEnter key. (#2677, #2005) [@amc522] -- TabBar: Fixed unfocused tab bar separator color (was using ImGuiCol_Tab, should use ImGuiCol_TabUnfocusedActive). +- Tabs: Fixed unfocused tab bar separator color (was using ImGuiCol_Tab, should use ImGuiCol_TabUnfocusedActive). - Columns: Fixed a regression from 1.71 where the right-side of the contents rectangle within each column would wrongly use a WindowPadding.x instead of ItemSpacing.x like it always did. (#125, #2666) - Columns: Made the right-most edge reaches up to the clipping rectangle (removing half of WindowPadding.x @@ -1948,8 +2653,8 @@ Other Changes: returning true. This also effectively make ColorEdit4() not incorrect trigger IsItemDeactivatedAfterEdit() when clicking the color button to open the picker popup. (#1875) - Misc: Added IMGUI_DISABLE_METRICS_WINDOW imconfig.h setting to explicitly compile out ShowMetricsWindow(). -- Debug, Metrics: Added "Tools->Item Picker" tool which allow clicking on a widget to break in the debugger - within the item code. The tool calls IM_DEBUG_BREAK() which can be redefined in imconfig.h if needed. +- Debug Tools: Added "Metrics->Tools->Item Picker" tool which allow clicking on a widget to break in the + debugger within the item code. The tool calls IM_DEBUG_BREAK() which can be redefined in imconfig.h. - ImDrawList: Fixed CloneOutput() helper crashing. (#1860) [@gviot] - ImDrawList::ChannelsSplit(), ImDrawListSplitter: Fixed an issue with merging draw commands between channel 0 and 1. (#2624) @@ -1994,7 +2699,7 @@ Docking+Viewports Branch: VERSION 1.71 (Released 2019-06-12) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.71 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.71 Breaking Changes: @@ -2040,7 +2745,7 @@ Other Changes: viewport triggering the issue. (#2609) - TreeNode, CollapsingHeader: Fixed highlight frame not covering horizontal area fully when using horizontal scrolling. (#2211, #2579) -- TabBar: Fixed BeginTabBar() within a window with horizontal scrolling from creating a feedback +- Tabs: Fixed BeginTabBar() within a window with horizontal scrolling from creating a feedback loop with the horizontal contents size. - Columns: Fixed Columns() within a window with horizontal scrolling from not covering the full horizontal area (previously only worked with an explicit contents size). (#125) @@ -2078,7 +2783,7 @@ Other Changes: VERSION 1.70 (Released 2019-05-06) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.70 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.70 Breaking Changes: @@ -2169,7 +2874,7 @@ Other Changes: VERSION 1.69 (Released 2019-03-13) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.69 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.69 Breaking Changes: @@ -2209,14 +2914,14 @@ Other Changes: - ColorEdit: Fixed tooltip not honoring the ImGuiColorEditFlags_NoAlpha contract of never reading the 4th float in the array (value was read and discarded). (#2384) [@haldean] - MenuItem, Selectable: Fixed disabled widget interfering with navigation (fix c2db7f63 in 1.67). -- TabBar: Fixed a crash when using many BeginTabBar() recursively (didn't affect docking). (#2371) -- TabBar: Added extra mis-usage error recovery. Past the assert, common mis-usage don't lead to +- Tabs: Fixed a crash when using many BeginTabBar() recursively (didn't affect docking). (#2371) +- Tabs: Added extra mis-usage error recovery. Past the assert, common mis-usage don't lead to hard crashes any more, facilitating integration with scripting languages. (#1651) -- TabBar: Fixed ImGuiTabItemFlags_SetSelected being ignored if the tab is not visible (with +- Tabs: Fixed ImGuiTabItemFlags_SetSelected being ignored if the tab is not visible (with scrolling policy enabled) or if is currently appearing. -- TabBar: Fixed Tab tooltip code making drag and drop tooltip disappear during the frame where +- Tabs: Fixed Tab tooltip code making drag and drop tooltip disappear during the frame where the drag payload activate a tab. -- TabBar: Reworked scrolling policy (when ImGuiTabBarFlags_FittingPolicyScroll is set) to +- Tabs: Reworked scrolling policy (when ImGuiTabBarFlags_FittingPolicyScroll is set) to teleport the view when aiming at a tab far away the visible section, and otherwise accelerate the scrolling speed to cap the scrolling time to 0.3 seconds. - Text: Fixed large Text/TextUnformatted calls not feeding their size into layout when starting @@ -2247,7 +2952,7 @@ Other Changes: VERSION 1.68 (Released 2019-02-19) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.68 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.68 Breaking Changes: @@ -2317,7 +3022,7 @@ Other Changes: VERSION 1.67 (Released 2019-01-14) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.67 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.67 Breaking Changes: @@ -2383,7 +3088,7 @@ Other Changes: VERSION 1.66b (Released 2018-12-01) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.66b +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.66b Other Changes: @@ -2402,7 +3107,7 @@ Other Changes: VERSION 1.66 (Released 2018-11-22) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.66 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.66 Breaking Changes: @@ -2463,7 +3168,7 @@ Other Changes: VERSION 1.65 (Released 2018-09-06) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.65 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.65 Breaking Changes: @@ -2489,7 +3194,7 @@ Other Changes: VERSION 1.64 (Released 2018-08-31) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.64 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.64 Changes: @@ -2513,7 +3218,7 @@ Changes: VERSION 1.63 (Released 2018-08-29) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.63 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.63 Breaking Changes: @@ -2607,7 +3312,7 @@ Other Changes: VERSION 1.62 (Released 2018-06-22) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.62 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.62 Breaking Changes: @@ -2688,7 +3393,7 @@ Other Changes: VERSION 1.61 (Released 2018-05-14) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.61 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.61 Breaking Changes: @@ -2764,7 +3469,7 @@ Other Changes: VERSION 1.60 (Released 2018-04-07) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.60 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.60 The gamepad/keyboard navigation branch (which has been in the work since July 2016) has been merged. Gamepad/keyboard navigation is still marked as Beta and has to be enabled explicitly. @@ -2930,7 +3635,7 @@ Other Changes: VERSION 1.53 (Released 2017-12-25) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.53 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.53 Breaking Changes: @@ -3069,7 +3774,7 @@ Other Changes: VERSION 1.52 (2017-10-27) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.52 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.52 Breaking Changes: @@ -3175,7 +3880,7 @@ Beta Navigation Branch: VERSION 1.51 (2017-08-24) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.51 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.51 Breaking Changes: @@ -3239,7 +3944,7 @@ Other Changes: VERSION 1.50 (2017-06-02) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.50 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.50 Breaking Changes: @@ -3335,7 +4040,7 @@ Other Changes: VERSION 1.49 (2016-05-09) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.49 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.49 Breaking Changes: @@ -3413,7 +4118,7 @@ Other changes: VERSION 1.48 (2016-04-09) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.48 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.48 Breaking Changes: @@ -3483,7 +4188,7 @@ Other Changes: VERSION 1.47 (2015-12-25) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.47 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.47 Changes: @@ -3536,7 +4241,7 @@ Changes: VERSION 1.46 (2015-10-18) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.46 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.46 Changes: @@ -3588,7 +4293,7 @@ Changes: VERSION 1.45 (2015-09-01) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.45 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.45 Breaking Changes: @@ -3648,7 +4353,7 @@ Other Changes: VERSION 1.44 (2015-08-08) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.44 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.44 Breaking Changes: @@ -3692,7 +4397,7 @@ Other Changes: VERSION 1.43 (2015-07-17) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.43 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.43 Breaking Changes: @@ -3764,7 +4469,7 @@ Other Changes: VERSION 1.42 (2015-07-08) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.42 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.42 Breaking Changes: @@ -3809,7 +4514,7 @@ Other Changes: VERSION 1.41 (2015-06-26) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.41 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.41 Breaking Changes: @@ -3853,7 +4558,7 @@ Other Changes: VERSION 1.40 (2015-05-31) ----------------------------------------------------------------------- -Decorated log: https://github.com/ocornut/imgui/releases/tag/v1.40 +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.40 Breaking Changes: @@ -3941,7 +4646,664 @@ Other Changes: - Other fixes, comments, tweaks. +----------------------------------------------------------------------- + VERSION 1.38 (2015-04-20) ----------------------------------------------------------------------- -For older version, see https://github.com/ocornut/imgui/releases +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.38 + +Breaking Changes: + +- Renamed IsClipped() to IsRectClipped(). Kept inline redirection function (will obsolete). +- Renamed ImDrawList::AddArc() to ImDrawList::AddArcFast(). + +Other Changes: + +- Added DragFloat(), DragInt() widget, click and drag to adjust value with given step. + Hold SHIFT/ALT to speed-up/slow-down. Double-click or CTRL+click to input text. + Passing min >= max makes the widget unbounded. +- Added DragFloat2(), DragFloat3(), DragFloat4(), DragInt2(), DragInt3(), DragInt4() helper variants. +- Added ShowMetricsWindow() which is mainly useful to debug ImGui internals. Added IO.MetricsRenderVertices counter. +- Added ResetMouseDragDelta() for iterative dragging operations. +- Added ImFontAtlas::AddFontFromCompressedTTF() helper + binary_to_compressed_c.cpp tool to compress a file and create a .c array from it. +- Added PushId() GetId() variants that takes string range to avoid user making unnecessary copies. +- Added IsItemVisible(). +- Fixed IsRectClipped() incorrectly returning false when log is enabled. +- Slider: visual fix in the unlikely that style.GrabMinSize is larger than a slider. +- SliderFloat: removed support for unbound slider (using FLT_MAX), caused various inconsistency. Use InputFloat()/DragFloat(). +- ColorEdit4: hide components prefix if there's no space for them. +- Combo: adding frame padding inside the combo box. +- Columns: mouse dragging uses absolute mouse coordinates.Fixed dragging left-most column of an auto-resizable window. #125 +- Selectable: render highlight into AutoFitPadding region but do not extend it, fixing visual gap. +- Focus: Allow SetWindowFocus(NULL) to remove focus. +- Focus: Clicking on void (outside an ImGui windows) loses keyboard-focus so application can use TAB. +- Popup: Fixed hovering over a popup's child (popups disable hovering on other windows but not their childs) #197 +- Fixed active widget not releasing its active state while being clipped. +- Fixed user-facing version of IsItemHovered() ignoring overlapping windows. +- Fixed label vertical alignment for InputInt2(), InputInt3(), InputInt4(). +- Fixed new collapsed auto-resizing window with saved .ini settings not calculating their initial width #176 +- Fixed Begin() returning true on collapsed windows that had loaded settings #176 +- Fixed style.DisplaySafeAreaPadding handling from being applied on window prior to them auto-fitting. +- ShowTestWindow(): added examples for DragFloat, DragInt and only custom label embedded in format strings. +- ShowTestWindow(): fixed "manipulating titles" example not doing the right thing, broken in ff35d24 +- Examples: OpenGL/GLFW: Fixed modifier key state setting in GLFW callbacks. +- Examples: OpenGL/GLFW: Added glBindTexture(0) in OpenGL fixed pipeline examples. Save restore current program and texture in the OpenGL3 example. +- Examples: DirectX11: Removed unnecessary vertices conversion and CUSTOMVERTEX types. +- Comments, fixes, tweaks. + + +----------------------------------------------------------------------- + VERSION 1.37 (2015-03-26) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.37 + +Other Changes: + +- Added a more convenient three parameters version of Begin() which covers the common uses better. +- Added mouse cursor types handling (resize, move, text input cursors, etc.) that user can query with GetMouseCursor(). Added demo and instructions in ShowTestWindow(). +- Added embedded mouse cursor data for MouseDrawCursor software cursor rendering, for consoles/tablets/etc. (#155). +- Added first version of BeginPopup/EndPopup() helper API to create popup menus. Popups automatically lock their position to the mouse cursor when first appearing. They close automatically when clicking outside, and inhibit hovering items from other windows when active (to allow for clicking outside). (#126) +- Added thickness parameter to ImDrawList::AddLine(). +- Added ImDrawList::PushClipRectFullScreen() helper. +- Added style.DisplaySafeAreaPadding which was previously hard-coded (useful if you can't see the edges of your display, e.g. TV screens). +- Added CalcItemRectClosestPoint() helper. +- Added GetMouseDragDelta(), IsMouseDragging() helpers, given a mouse button and an optional "unlock" threshold. Added io.MouseDragThreshold setting. (#167) +- IsItemHovered() return false if another widget is active, aka we can't use what we are hovering now. +- Added IsItemHoveredRect() if old behavior of IsItemHovered() is needed (e.g. for implementing the drop side of a drag'n drop operation). +- IsItemhovered() include space taken by label and behave consistently for all widgets (#145) +- Auto-filling child window feed their content size to parent (#170) +- InputText() removed the odd ~ characters when clipping. +- InputText() update its width in case of resize initiated programmatically while the widget is active. +- InputText() last active preserve scrolling position. Reset scroll if widget size becomes bigger than contents. +- Selectable(): not specifying a width defaults to using max of label width and remaining width. +- Selectable(const char*, bool) version has bool defaulting to false. +- Selectable(): fixed misusage of GetContentRegionMax().x leaking into auto-fitting. +- Windows starting Collapsed runs initial auto-fit to retrieve a width for their title bar (#175) +- Fixed new window from having an incorrect content size on their first frame, if queried by user. Fixed SetWindowPos/SetNextWindowPos having a side-effect size computation (#175) +- InputFloat(): fixed label alignment if total widget width forcefully bigger than space available. +- Auto contents size aware of enforced vertical scrollbar if window is larger than display size. +- Fixed new windows auto-fitting bigger than their .ini saved size. This was a bug but it may be a desirable effect sometimes, may reconsider it. +- Fixed negative clipping rectangle when collapsing windows that could affect manual submission to ImDrawList and end-user rendering function if unhandled (#177) +- Fixed bounding measurement of empty groups (fix #162) +- Fixed assignment order in Begin() making auto-fit size effectively lag by one frame. Also disabling "clamp into view" while windows are auto-fitting so that auto-fitting window in corners don't get pushed away. +- Fixed MouseClickedPos not updated on double-click update (#167) +- Fixed MouseDrawCursor feature submitting an empty trailing command in the draw list. Fixed unmerged draw calls for software mouse cursor. +- Fixed double-clicking on resize grip keeping the grip active if mouse button is kept held. +- Bounding box tests exclude higher bound, so touching items (zero spacing) don't report double hover when cursor is on edge. +- Setting io.LogFilename to NULL disable default LogToFile() (part of #175) +- Tweak stb_textedit integration to be lenient if another piece of code are leaking their STB_TEXTEDIT definitions/symbols. +- Shutdown() freeing a few extra vectors so they don't have to freed by destruction (#169) +- Examples: OpenGL2/3 examples automatically hide the OS mouse cursor if software cursor rendering is used. +- ShowTestWindow: Added Widgets Alignment demo under Layout section +- ShowTestWindow: Added simple dragging widget example. +- ShowTestWindow: Graph has checkbox under the label, also demo using BeginGroup/EndGroup(). +- ShowTestWindow: Using SetNextWindowSize() in examples to encourage its use. +- Fixes, tweaks, comments. + + +----------------------------------------------------------------------- + VERSION 1.36 (2015-03-18) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.36 + +Other Changes: + +- Added ImGui::GetVersion(), IMGUI_VERSION (#127) +- Added BeginGroup()/EndGroup() layout tools (#160). +- Added Indent() / Unindent(). +- Added InputInt2(), InputInt3(), InputInt4() for completeness. +- Added GetItemRectSize(). +- Added VSliderFloat(), VSliderInt(), vertical sliders. +- Added IsRootWindowFocused(), IsRootWindowOrAnyChildFocused(). +- Added io.KeyAlt + support in examples apps, in prevision for future usage of Alt modifier (was missing). +- Added ImGuiStyleVar_GrabMinSize enum value for PushStyleVar(). +- Various fixes related to vertical alignment of text after widget of varied sizes. Allow for multiple blocks of multiple lines text on the same "line". Added demos. +- Explicit size passed to Plot*(), Button() includes the frame padding. +- Style: Changed default Border and Column border colors to be most subtle. +- Renamed style.TreeNodeSpacing to style.IndentSpacing, ImGuiStyleVar_TreeNodeSpacing to ImGuiStyleVar_IndentSpacing. +- Renamed GetWindowIsFocused() to IsWindowFocused(), kept inline redirection with old name (will obsolete). +- Renamed GetItemRectMin()/GetItemRectMax() to GetItemRectMin()/GetItemRectMax(), kept inline redirection with old name (will obsolete). +- Sliders: Fast-path when power=1.0f, also makes code easier to read. +- Sliders: Fixed parsing of decimal precision back from format string when using %%. +- Sliders: Fixed hovering bounding test excluding padding between outer frame and grab (there was a few pixels dead-zone). +- Separator() logs itself as text when passing through text log. +- Optimisation: TreeNodeV() early out if SkipItems is set without formatting. +- Moved various static buffers into state. Increase the formatted string buffer from 1K to 3K. +- Examples: Example console keeps focus on input box at all times. +- Examples: Updated to GLFW 3.1. Moved to examples/libs/ folder. +- Examples: Added 64-bit projects for MSVC. +- Examples: Increase warning level from /W3 to /W4 for MSVC. +- Examples: DirectX9: fixed duplicate creation of vertex buffer. +- Renamed internal type ImGuiAabb to ImRect. Changed mentions of 'box' or 'aabb' to say 'rect'. +- Tweaks, minor fixes and comments. + + +----------------------------------------------------------------------- + VERSION 1.35 (2015-03-09) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.35 + +Other Changes: + +- Examples: refactored all examples application to make it easier to isolate and grab the code you need for OpenGL 2/3, DirectX 9/11, and toward a more sensible format for samples. +- Scrollbar grab have a minimum size (style.GrabSizeMin), always visible even with huge scroll amount. (#150). +- Scrollbar: Clicking inside the grab box doesn't modify scroll value. Subsequent movement always relative. +- Added "###" labelling syntax to pass a label that isn't part of the hashed ID (#107), e.g. ("%d###static_id",rand()). +- Added GetColumnIndex(), GetColumnsCount() (#154) +- Added GetScrollPosY(), GetScrollMaxY(). +- Fixed the Chinese/Japanese glyph ranges; include missing punctuations (#156) +- Fixed Combo() and ListBox() labels not included in declared size, for use with SameLine(), etc. (fix #149, #151). +- Fixed ListBoxHeader() incorrect handling of SkipItems early out when window is collapsed. +- Fixed using IsItemHovered() after EndChild() (#151) +- Fixed malformed UTF-8 decoding errors leading to infinite loops (#158) +- InputText() handles buffer limit correctly for multi-byte UTF-8 characters, won't insert an incomplete UTF-8 character when reaching buffer limit (fix #158) +- Handle double-width space (0x3000) in various places the same as single-width spaces, for Chinese/Japanese users. +- Collapse triangle uses text color (not border color). +- Fixed font fallback glyph width. +- Renamed style.ScrollBarWidth to style.ScrollbarWidth to be consistent with other casing. +- Windows: setup a default handler for ImeSetInputScreenPosFn so the IME dialog (for Japanese/Chinese, etc.) is positioned correctly as you input text. +- Windows: default clipboard handlers for Windows handle UTF-8. +- Examples: Fixed DirectX 9/11 examples applications handling of Microsoft IME. +- Examples: Allow DirectX 9/11 examples applications to resize the window. +- ShowTestWindow: Fixed "undo" button of custom rendering applet. +- ShowTestWindow: Added "Manipulating Window Title" example. + + +----------------------------------------------------------------------- + VERSION 1.34 (2015-03-02) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.34 + +Other Changes: + +- Added Bullet() helper - equivalent to BulletText(""), SameLine(). +- Added SetWindowFocus(), SetWindowFocus(const char*), SetNextWindowFocus() (#146) +- Added SetWindowPos(), SetWindowSize(), SetWindowCollaposed() given a window name. +- Added SetNextTreeNodeOpened() with optional condition flag in replacement of OpenNextNode() and consistent with other API. +- Renamed ImGuiSetCondition_* to ImGuiSetCond_* and ImGuiCondition_FirstUseThisSession to ImGuiCond_Once. +- Added missing definition for ImGui::GetWindowCollapsed(). +- Fixed GetGlyphRangesJapanese() actually missing katakana ranges and a few useful extensions. +- Fixed clicking on a widget in a child window not focusing the parent window (#147). +- Fixed clicking on empty space of child window not setting keyboard focus for the child window (#147). +- Fixed IsItemHovered() behaving differently on Combo() (#145) +- Fixed ColumnOffsets storage not honoring SetStateStorage() (not very useful but consistent). +- Examples: Removed dependency on Glew for OpenGL examples. Removed Glew binaries for Windows. +- Examples: Fixed link warning for OpenGL windows examples. +- Comments, tweaks. + +----------------------------------------------------------------------- + VERSION 1.33b (2015-02-23) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.33b + +Other Changes: + +- Fixed resizing columns. + + +----------------------------------------------------------------------- + VERSION 1.33 (2015-02-22) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.33 + +Other Changes: + +- InputText: having a InputText widget active doesn't steal mouse inputs from clicking on a button before losing focus (relate to #134) +- InputText: cursor/selection/undo stack persist when using other widgets and getting back to same (#134). +- InputText: fix effective buffer size being smaller than necessary by 1 byte (so if you give 3 bytes you can input 2 ascii chars + zero terminator, which is correct). +- Added IsAnyItemActive(). +- Child window explicitly inherit collapse state from parent (so if user keeps submitting items even thought Begin has returned 'false' the child items will be clipped faster). +- BeginChild() return a bool the same way Begin() does. if true you can skip submitting content. +- Removed extraneous (1,1) padding on child window (pointed out in #125) +- Columns: doesn't bail out when SkipItems is set (fix #136) +- Columns: Separator() within column correctly vertical offset all cells (pointed out in #125) +- GetColumnOffset() / SetColumnOffset() handles padding values more correctly so matching columns can be lined up between a parent and a child window (cf. #125) +- Fix ImFont::BuildLookupTable() potential dangling pointer dereference (fix #131) +- Fix hovering of child window extending past their parent not taking account of parent clipping rectangle (fix #137) +- Sliders: value text is clipped inside the frame when resizing sliders to be small. +- ImGuITextFilter::Draw() use regular width call rather than computing its own arbitrary width. +- ImGuiTextFilter: can take a default filter string during construction. + + +----------------------------------------------------------------------- + VERSION 1.32 (2015-02-11) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.32 + +Other Changes: + +- Added Selectable() building block for various list boxes, combo boxes, etc. +- Added ListBox() (#129). +- Added ListBoxHeader(), ListBoxFooter() for customized list traversal and creating multi-selection boxes. +- Fixed title bar text clipping issue (fix #128). +- InputText: added ImGuiInputTextFlags_CallbackCharFilter system for filtering/replacement (#130). Callback now passed an "EventFlag" parameter. +- InputText: Added ImGuiInputTextFlags_CharsUppercase and ImGuiInputTextFlags_CharsNoBlank stock filters. +- PushItemWidth() can take negative value to right-align items. +- Optimisation: Columns offsets cached to avoid unnecessary binary search. +- Optimisation: Optimized CalcTextSize() function by about 25% (they are often the bottleneck when submitting thousands of clipped items). +- Added ImGuiCol_ChildWindowBg, ImGuiStyleVar_ChildWindowRounding for completeness and flexibility. +- Added BeginChild() variant that takes an ImGuiID. +- Tweak default ImGuiCol_HeaderActive color to be less bright. +- Calculate framerate for the user (IO.Framerate), as a purely luxurious feature and to reduce sample code size a little. + + +----------------------------------------------------------------------- + VERSION 1.31 (2015-02-08) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.31 + +Other Changes: + +- Added ImGuiWindowFlags_NoCollapse flag. +- Added a way to replace the internal state pointer so that we can optionally share it between modules (e.g. multiple DLLs). +- Added tint_col parameter to ImageButton(). +- Added CalcListClipping() helper to perform faster/coarse clipping on user side (when manipulating lists with thousands of items). +- Added GetCursorPosX() / GetCursorPosY() shortcuts. +- Renamed GetTextLineSpacing() to GetTextLineHeightWithSpacing(). +- Combo box always appears above other child windows of a same parent. +- Combo/Label: label is properly clipped inside the frame (#23). +- Added cpu-side text clipping functions which are used in some instances to avoid extra draw calls. +- InputText: Filtering private Unicode range 0xE000-0xF8FF. +- Fixed holding button over scrollbar creating a small feedback loop with calculation of contents size. +- Calling SetCursorPos() automatically extends the contents size. +- Track ownership of mouse clicks. Avoid requesting IO.WantCaptureMouse if initial click was outside of ImGui. +- Removed the dependency on realloc(). +- Other fixes, tweaks and comments. + + +----------------------------------------------------------------------- + VERSION 1.30 (2015-02-01) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.30 + +Breaking Changes: + +- Big update! Initialisation had to be changed. You don't need to load PNG data anymore. The new system gives you uncompressed texture data. + - This sequence: + const void* png_data; + unsigned int png_size; + ImGui::GetDefaultFontData(NULL, NULL, &png_data, &png_size); + // + - Became: + unsigned char* pixels; + int width, height; + // io.Fonts->AddFontFromFileTTF("myfontfile.ttf", 24.0f); // Optionally load another font + io.Fonts->GetTexDataAsRGBA32(&pixels, &width, &height); + // + io.Fonts->TexID = (your_texture_identifier); + - PixelCenterOffset has been removed and isn't a necessary setting anymore. Offset your projection matrix by 0.5 if you have rendering problems. + +Other Changes: + +- Loading TTF files with stb_truetype.h. +- We still embed a compressed pixel-perfect TTF version of ProggyClean for convenience. +- Runtime font rendering is a little faster than previously. +- You can load multiple fonts with multiple size inside the font atlas. Rendering with multiple fonts are still merged into a single draw call whenever possible. +- The system handles UTF-8 and provide ranges to easily load e.g. characters for Japanese display. +- Added PushFont() / PopFont(). +- Added Image() and ImageButton() to display your own texture data. +- Added callback system in command-list. This can be used if you want to do your own rendering (e.g. render a 3D scene) inside ImGui widgets. +- Added IsItemActive() to tell if last widget is being held / modified (as opposed to just being hovered). Useful for custom dragging behaviors. +- Style: Added FrameRounding setting for a more rounded look (default to 0 for now). +- Window: Fixed using multiple Begin/End pair on the same wnidow. +- Window: Fixed style.WindowMinSize not being honored properly. +- Window: Added SetCursorScreenPos() helper (WindowPos+CursorPos = ScreenPos). +- ColorEdit3: clicking on color square change the edition. The toggle button is hidden by default. +- Clipboard: Fixed logging to clipboard on architectures where va_list are passed by reference to vsnprintf. +- Clipboard: Improve memory reserve policy for Clipboard / ImGuiTextBuffer. +- Tooltip: Always auto-resize. +- Tooltip: Fixed TooltigBg color not being honored properly. +- Tooltip: Allow SetNextWindowPos() to be used on tooltips. +- Added io.DisplayVisibleMin / io.DisplayVisibleMax to ease integration of virtual / scrolling display. +- Added Set/GetVoidPtr in ImGuiStorage. +- Added ColorConvertHSVtoRGB, ColorConvertRGBtoHSV, ColorConvertFloat4ToU32 helpers. +- Added ImColor() inline helper to easily convert colors to packed 4x1 byte or 4x1 float formats. +- Added io.MouseDrawCursor option to draw a mouse cursor for now (on systems that don't have one) +- Examples: Added custom drawing app example for using ImDrawList api. +- Lots of others fixes, tweaks and comments! + + +----------------------------------------------------------------------- + VERSION 1.20 (2015-01-07) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.20 + +- Fixed InputInt() InputFloat() label not declaring their width, breaking usage of SameLine(). +- Fixed hovering of combo boxes that extend beyond the parent window limits. +- Fixed text input of Unicode character in the 128-255 range. +- Fixed clipboard pasting into an InputText box not filtering the characters according to contents semantic. +- Dragging outside area of a widget while it is active doesn't trigger hover on other widgets. +- Activating widget bring parent window to front if not already. +- Checkbox and Radio buttons activate on click-release to be consistent with other widgets and most UI. +- InputText() nows consume input characters immediately so they cannot be reused if ImGui::Update is called again with a call to ImGui::Render(). (fixes #105) +- Examples: Console: added support for History callbacks + some cleanup. +- Various small optimisations. +- Cleanup and other fixes. + + +----------------------------------------------------------------------- + VERSION 1.19 (2014-12-30) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.19 + +- Tightening default style a little. +- Added ImGuiStyleVar_WindowRounding enum for PushStyleVar() API. +- Added SliderInt2(), SliderInt3(), SliderInt4() for consistency. +- Widgets more consistently handle empty labels (starting with ## mark) for their size calculation. +- Fixed crashing with zero sized frame-buffer. +- Fixed ImGui::Combo() not registering its size properly when clipped out of screen. +- Renamed second parameter to Begin() to 'bool* p_opened' to be a little more self-explanatory. Added more comments on the use of Begin(). +- Logging: Added LogText() to pass text straight to the log output (tty/clipboard/file) without rendering it. +- Logging: Added LogFinish() to stop logging at an arbitrary point. +- Logging: Log depth padding relative to start depth. +- Logging: Tree nodes and headers looking better when logged to text. +- Logging: Log outputs \r\n under Windows to play it nicely with \n unaware tools such as Notepad. +- Style editor: added a button to output colors to clipboard/tty. +- OpenGL3 example: fix growing of VBO. +- Cleanup and other minor fixes. + + +----------------------------------------------------------------------- + VERSION 1.18 (2014-12-11) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.18 + +- Added ImGuiWindowFlags_NoScrollWithMouse, disable mouse wheel scrolling on a window. +- Added ImGuiWindowFlags_NoSavedSettings, disable loading/saving window state to .ini file. +- Added SetNextWindowPos(), SetNextWindowSize(), SetNextWindowCollapsed() API along with SetWindowPos(), SetWindowSize(), SetWindowCollapsed(). All functions include an optional second parameter to easily set current value vs session default value vs persistent default value. +- Removed rarely useful SetNewWindowDefaultPos() in favor of new API. +- Fixed hovering of lower-right resize grip when it is above a child window. +- Fixed InputInt() writing to output when it doesn't need to. +- Added IMGUI_INCLUDE_IMGUI_USER_H define to include user file at the bottom of imgui.h without modifying the vanilla distribution. +- ImGuiStorage helper can store float + added helpers to get pointer to stored data. +- Setup Travis CI integration. Builds the OpenGL examples on Linux with GCC and Clang. +- Examples: Added a "Fixed overlay" example in ShowTestWindow(). +- Examples: Re-added OpenGL 3 programmable-pipeline example (along with the existing fixed pipeline example). +- Examples: OpenGL examples can now resize the application window. +- Other minor fixes and comments. + + +----------------------------------------------------------------------- + VERSION 1.17 (2014-12-03) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.17 + +- Added ImGuiWindowFlags_AlwaysAutoResize + example app. +- Calling ImGui::SetWindowSize(0,0) force an autofit without zero-sizing first. +- ImGui::InputText() support for completion/history/custom callback + added fancy completion example in the console demo app. +- Not word-wrapping on apostrophes. +- Increased visibility of check box and radio button with smaller size. +- Smooth mouse scrolling on OSX (uses floating point scroll/wheel input). +- New version of IMGUI_ONCE_UPON_A_FRAME helper macro that works with all compilers. +- Moved IO.Font*** options to inside the IO.Font-> structure.. Added IO.FontGlobalScale setting (in addition to Font->Scale per individual font). +- Fixed more Clang -Weverything warnings. +- Examples: Added DirectX11 example application. +- Examples: Created single .sln solution for all example projects. +- Examples: Fixed DirectX9 example window initially showing an hourglass cursor. +- Examples: Removed Microsoft IME handler in examples, too niche/confusing. Moved equivalent code to imgui.cpp instruction block. + + +----------------------------------------------------------------------- + VERSION 1.16b (2014-11-21) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.16b + +- Fix broken PopStyleVar() crashing. + + +----------------------------------------------------------------------- + VERSION 1.16 (2014-11-21) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.16 + +- General fixing of Columns API to allow filling a cell with multiple widgets before switching to the next column. +- Added documentation INDEX to top of imgui.cpp. +- Fixed unaligned memory access for Emscripten compatibility. +- Various pedantic warning fixes (now testing with Clang). +- Added extra asserts to catch incorrect usage. +- PushStyleColor() / PushStyleVar() can be used outside the scope of a window (namely to change variables that are used within the Begin() call). +- PushTextWrapPos() defaults to 0.0 (right-end of current drawing region). +- Fixed compatibility with std::vector if user decide to #define ImVector. +- MouseWheel input is now normalized. +- Added IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT compile-time option to redefine the vertex layout. +- Style editor: colors listed inside a scrolling region. +- Examples: tweaks and fixes. + + +----------------------------------------------------------------------- + VERSION 1.15 (2014-11-07) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.15 + +- Renamed IsHovered() to IsItemHovered(). +- Added word-wrapping API: TextWrapped(), PushTextWrapPos(), PopTextWrapPos(). +- Added IsItemFocused() to tell if last widget is being focused for keyboard input. +- Added overloads of ImGui::PlotLines() and ImGui::PlotHistogram() taking a function pointer to get values. +- Added SetWindowSize(). +- Added GetContentRegionMax() supporting columns. Some bug fixes with using columns. +- Added PushStyleVar(),PopStyleVar() helpers to modify style from user code. +- Added dummy IMGUI_API definition in front of all entry-points for silly DLL action. +- Allowing BeginChild() allows to specify negative sizes to specify "use remaining minus xx". +- Windows with the NoResize flag can still use auto-fitting. +- Added a simple example console into the demo window. +- Comments and fixes. + + +----------------------------------------------------------------------- + VERSION 1.14 (2014-10-25) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.14 + +- Comments and fixes. +- Added SetKeyboardFocusHere() to set input focus from code. +- Added GetWindowFont(), GetWindowFontSize() for users of the low-level ImDrawList API. +- Added a UserData void *pointer so that the callback functions can access user state "Just in case a project has adverse reactions to adding globals or statics in their own code." +- Renamed IMGUI_INCLUDE_IMGUI_USER_CPP to IMGUI_INCLUDE_IMGUI_USER_INL + + +---------------------------------------------------------------------- + VERSION 1.13 (2014-09-30) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.13 + +- Added support for UTF-8 for international text display and text edition/input (if the font supports it). +- Added sample "M+ font" by Coji Morishita in extra_fonts/ to display Japanese text. +- Added IO.ImeSetInputScreenPosFn callback for positioning OS IME input. +- Added IO.FontFallbackGlyph (default to '?'). +- OpenGL example: added commented code to load custom font from file-system. +- OpenGL example: shared makefile for Linux and MacOSX. + + +---------------------------------------------------------------------- + VERSION 1.12 (2014-09-24) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.12 + +- Added IO.FontBaseScale value for easy scaling of all windows. +- Added IsMouseHoveringWindow(), IsMouseHoveringAnyWindow(), IsPosHoveringAnyWindow() helpers. +- Added va_list variations of all functions taking ellipsis (...) parameters. +- Added section in documentation to explicitly document cases of API breaking changes (e.g. renamed IM_MALLOC below). +- Moved IM_MALLOC / IM_FREE defines. to IO structure members that can be set at runtime (also allowing precompiled ImGui to cover more use cases). +- Fixed OpenGL samples for Retina display. +- Comments and minor fixes. + + +---------------------------------------------------------------------- + VERSION 1.11 (2014-09-10) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.11 + +- Added more comments in the code. +- Made radio buttons render ascii when logged into tty/file/clipboard. +- Added ImGuiInputTextFlags_EnterReturnsTrue flag to InputText() and variants. +- Added #define IMGUI_INCLUDE_IMGUI_USER_CPP to optionally include imgui_user.cpp from the end of imgui.cpp +- Fixed file-descriptor leak if ImBitmapFont::LoadFromFile() calls to fseek/ftell fails. + + +---------------------------------------------------------------------- + VERSION 1.10 (2014-08-31) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.10 + +- User can override memory allocators by #define-ing IM_MALLOC, IM_FREE, IM_REALLOC, +- Added SetCursorPosX(), SetCursorPosY() shortcuts. +- Checkbox() returns true when pressed. +- Added optional external fonts data in extra_fonts/ for reference. +- Removed the need to setup IO.FontHeight when using a custom font. +- Added comments on external fonts usage. + + +---------------------------------------------------------------------- + VERSION 1.09 (2014-08-28) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.09 + +Breaking Changes: + +- The behaviour of PixelCenterOffset changed! You may need to change your value if you had set it to non-default in your code and/or offset your projection matrix by 0.5 pixels. It is likely that the default PixelCenterOffset value of 0.0 is now suitable unless your rendering uses some form of multisampling. + +Other Changes: + +- Various minor render tweaks and fixes. Better support for renderers using multisampling. +- Moved IMGUI_FONT_TEX_UV_FOR_WHITE #define to a variable in the IO structure so font can be changed at runtime. +- Minor other fixes, tweaks, comments. + + +---------------------------------------------------------------------- + VERSION 1.08 (2014-08-25) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.09 + +- Fixed ImGuiTextFilter trimming of leading/trailing blanks. +- Fixed file descriptor leak on LoadSettings() failure. +- Fix type conversion compiler warnings. +- Added basic sizes edition in the style editor. +- Added CalcTextSize(), GetCursorScreenPos() functions. +- Disable client state in OpenGL example after rendering. +- Converted all Tabs to Spaces in sources. + + +---------------------------------------------------------------------- + VERSION 1.07 (2014-08-18) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.07 + +- Added InputFloat4(), SliderFloat4() helpers. +- Added global Alpha in ImGuiStyle structure. When Alpha=0.0, ImGui skips most of logic and all rendering processing. +- Fix clipping of title bar text. +- Fix to allow the user to call NewFrame() multiple times without calling Render(). +- Reduce inner window clipping to take account for the extend of CollapsingHeader() - share same clipping rectangle. +- Fix for child windows with inverted clip rectangles (when scrolled and out of screen, Etc.). +- Minor fixes, tweaks, comments. + + +---------------------------------------------------------------------- + VERSION 1.06 (2014-08-15) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.06 + +- Added BeginTooltip()/EndTooltip() helpers to create tooltips with custom contents. +- Added TextColored() helper. +- Added a 'stride' parameter to PlotLines() / PlotHistogram(). +- Fixed PlotLines() / PlotHistogram() from occasionally wrapping back to the most-left value. +- TreeNode() / CollapsingHeader() ignore clicks when CTRL or SHIFT are held. +- Slowed down mouse wheel scrolling inside combo boxes. +- Minor tweaks. +- Fixed trailing '\n' in text strings reporting extra line height. +- Fixed tooltip position needlessly leaking into .ini file. +- Fixed invalid .ini file data persistently being saved back into the file. + + +---------------------------------------------------------------------- + VERSION 1.05 (2014-08-14) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.05 + +- Added default clipboard functions for Windows + "private" clipboard on other systems (user can still override). +- Fixed logarithmic sliders and HSV conversions on Mac/Linux. +- Tidying up example applications so it looks easier to just grab code. +- Added GetItemBoxMin(), GetItemBoxMax(). +- Tweaks, more consistent #define names. +- Fix for doing multiple Begin()/End() during the same frame. + + +---------------------------------------------------------------------- + VERSION 1.04 (2014-08-13) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.04 + +- Fixes (v1.03 introduced a bug with combo box & scissoring bug OpenGL sample). +- Added ImGui::InputFloat2() and ImGui::SliderFloat2() functions. + + +---------------------------------------------------------------------- + VERSION 1.03 (2014-08-13) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.03 + +- OpenGL example now use the fixed function-pipeline + cleanups, down by 150 lines. +- Added quick & dirty Makefiles for MacOSX and Linux. +- Simplified the DrawList system, ImDrawCmd include the clipping rectangle + some optimisations. +- Fixed warnings for more stringent compilation settings. + + +---------------------------------------------------------------------- + VERSION 1.02 (2014-08-12) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.02 + +- Comments. +- Portability fixes. +- Fixing and tidying up sample applications. +- Checkboxes and radio buttons can be clicked on their labels as well as their icon. +- Checkboxes and radio buttons display in a different color when hovered. + + +---------------------------------------------------------------------- + VERSION 1.01 (2014-08-11) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.01 + +- Added PixelCenterOffset for OpenGL/DirectX compatibility. +- Commented and tweaked samples. +- Added Git ignore list. + + +---------------------------------------------------------------------- + VERSION 1.00 (2014-08-10) +----------------------------------------------------------------------- + +Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.00 + +- Initial release. diff --git a/extern/imgui_patched/docs/CONTRIBUTING.md b/extern/imgui_patched/docs/CONTRIBUTING.md new file mode 100644 index 00000000..81a6f0e3 --- /dev/null +++ b/extern/imgui_patched/docs/CONTRIBUTING.md @@ -0,0 +1,80 @@ +# Contributing Guidelines + +## Index + +- [Getting Started & General Advice](#getting-started--general-advice) +- [Issues vs Discussions](#issues-vs-discussions) +- [How to open an Issue](#how-to-open-an-issue) +- [How to open a Pull Request](#how-to-open-a-pull-request) +- [Copyright / Contributor License Agreement](#copyright--contributor-license-agreement) + +## Getting Started & General Advice + +- Article: [How To Ask Good Questions](https://bit.ly/3nwRnx1). +- Please browse the [Wiki](https://github.com/ocornut/imgui/wiki) to find code snippets, links and other resources (e.g. [Useful extensions](https://github.com/ocornut/imgui/wiki/Useful-Extensions)). +- Please read [docs/FAQ.md](https://github.com/ocornut/imgui/blob/master/docs/FAQ.md). +- Please read [docs/FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) if your question relates to fonts or text. +- Please read one of the [examples/](https://github.com/ocornut/imgui/tree/master/examples) application if your question relates to setting up Dear ImGui. +- Please run `ImGui::ShowDemoWindow()` to explore the demo and its sources. +- Please use the search function of your IDE to search in for comments related to your situation. +- Please use the search function of GitHub to look for similar issues. You may [browse issues by Labels](https://github.com/ocornut/imgui/labels). +- Please use a web search engine to look for similar issues. +- If you get a crash or assert, use a debugger to locate the line triggering it and read the comments around. +- Please don't be a [Help Vampire](https://slash7.com/2006/12/22/vampires/). + +## Issues vs Discussions + +If you: +- Cannot BUILD or LINK examples. +- Cannot BUILD, or LINK, or RUN Dear ImGui in your application or custom engine. +- Cannot LOAD a font. + +Then please [use the Discussions forums](https://github.com/ocornut/imgui/discussions) instead of opening an issue. + +If Dear ImGui is successfully showing in your app and you have used Dear ImGui before, you can open an issue. Any form of discussions is welcome as a new issue. + +## How to open an issue + +You may use the Issue Tracker to submit bug reports, feature requests or suggestions. You may ask for help or advice as well. But **PLEASE CAREFULLY READ THIS WALL OF TEXT. ISSUES IGNORING THOSE GUIDELINES MAY BE CLOSED. USERS IGNORING THOSE GUIDELINES MIGHT BE BLOCKED.** + +Please do your best to clarify your request. The amount of incomplete or ambiguous requests due to people not following those guidelines is often overwhelming. Issues created without the requested information may be closed prematurely. Exceptionally entitled, impolite, or lazy requests may lead to bans. + +**PLEASE UNDERSTAND THAT OPEN-SOURCE SOFTWARE LIVES OR DIES BY THE AMOUNT OF ENERGY MAINTAINERS CAN SPARE. WE HAVE LOTS OF STUFF TO DO. THIS IS AN ATTENTION ECONOMY AND MANY LAZY OR MINOR ISSUES ARE HOGGING OUR ATTENTION AND DRAINING ENERGY, TAKING US AWAY FROM MORE IMPORTANT WORK.** + +Steps: + +- Article: [How To Ask Good Questions](https://bit.ly/3nwRnx1). +- **PLEASE DO FILL THE REQUESTED NEW ISSUE TEMPLATE.** Including Dear ImGui version number, branch name, platform/renderer back-ends (imgui_impl_XXX files), operating system. +- **Try to be explicit with your GOALS, your EXPECTATIONS and what you have tried**. Be mindful of [The XY Problem](http://xyproblem.info/). What you have in mind or in your code is not obvious to other people. People frequently discuss problems and suggest incorrect solutions without first clarifying their goals. When requesting a new feature, please describe the usage context (how you intend to use it, why you need it, etc.). If you tried something and it failed, show us what you tried. +- **Attach screenshots (or GIF/video) to clarify the context**. They often convey useful information that is omitted by the description. You can drag pictures/files in the message edit box. Avoid using 3rd party image hosting services, prefer the long-term longevity of GitHub attachments (you can drag pictures into your post). On Windows, you can use [ScreenToGif](https://www.screentogif.com/) to easily capture .gif files. +- **If you are discussing an assert or a crash, please provide a debugger callstack**. Never state "it crashes" without additional information. If you don't know how to use a debugger and retrieve a callstack, learning about it will be useful. +- **Please make sure that your project has asserts enabled.** Calls to IM_ASSERT() are scattered in the code to help catch common issues. When an assert is triggered read the comments around it. By default IM_ASSERT() calls the standard assert() function. To verify that your asserts are enabled, add the line `IM_ASSERT(false);` in your main() function. Your application should display an error message and abort. If your application doesn't report an error, your asserts are disabled. +- **Please provide a Minimal, Complete, and Verifiable Example ([MCVE](https://stackoverflow.com/help/mcve)) to demonstrate your problem**. An ideal submission includes a small piece of code that anyone can paste into one of the examples applications (examples/../main.cpp) or demo (imgui_demo.cpp) to understand and reproduce it. Narrowing your problem to its shortest and purest form is the easiest way to understand it. Please test your shortened code to ensure it exhibits the problem. **Often while creating the MCVE you will end up solving the problem!** Many questions that are missing a standalone verifiable example are missing the actual cause of their issue in the description, which ends up wasting everyone's time. +- Please state if you have made substantial modifications to your copy of Dear ImGui or the back-end. +- If you are not calling Dear ImGui directly from C++, please provide information about your Language and the wrapper/binding you are using. +- Be mindful that messages are being sent to the mailbox of "Watching" users. Try to proofread your messages before sending them. Edits are not seen by those users unless they browse the site. + +**Some unfortunate words of warning** +- If you are involved in cheating schemes (e.g. DLL injection) for competitive online multiplayer games, please don't try posting here. We won't answer and you will be blocked. It doesn't matter if your question relates to said project. We've had too many of you and need to project our time and sanity. +- Due to frequent abuse of this service from the aforementioned users, if your GitHub account is anonymous and was created five minutes ago please understand that your post will receive more scrutiny and incomplete questions will be harshly dismissed. + +If you have been using Dear ImGui for a while or have been using C/C++ for several years or have demonstrated good behavior here, it is ok to not fulfill every item to the letter. Those are guidelines and experienced users or members of the community will know which information is useful in a given context. + +## How to open a Pull Request + +- **Please understand that by submitting a PR you are also submitting a request for the maintainer to review your code and then take over its maintenance.** PR should be crafted both in the interest of the end-users and also to ease the maintainer into understanding and accepting it. +- Many PRs are useful to demonstrate a need and a possible solution but aren't adequate for merging (causing other issues, not seeing other aspects of the big picture, etc.). In doubt, don't hesitate to push a PR because that is always the first step toward finding the mergeable solution! Even if a PR stays unmerged for a long time, its presence can be useful for other users and helps toward finding a general solution. +- **When adding a feature,** please describe the usage context (how you intend to use it, why you need it, etc.). Be mindful of [The XY Problem](http://xyproblem.info/). +- **When fixing a warning or compilation problem,** please post the compiler log and specify the compiler version and platform you are using. +- **Attach screenshots (or GIF/video) to clarify the context and demonstrate the feature at a glance.** You can drag pictures/files in the message edit box. Prefer the long-term longevity of GitHub attachments over 3rd party hosting (you can drag pictures into your post). +- **Make sure your code follows the coding style already used in the codebase:** 4 spaces indentations (no tabs), `local_variable`, `FunctionName()`, `MemberName`, `// Text Comment`, `//CodeComment();`, C-style casts, etc.. We don't use modern C++ idioms and tend to use only a minimum of C++11 features. The applications under examples/ are generally less consistent because they sometimes try to mimic the coding style often adopted by a certain ecosystem (e.g. DirectX-related code tend to use the style of their sample). +- **Make sure you create a branch dedicated to the pull request**. In Git, 1 PR is associated to 1 branch. If you keep pushing to the same branch after you submitted the PR, your new commits will appear in the PR (we can still cherry-pick individual commits). + +Thank you for reading! + +## Copyright / Contributor License Agreement + +Any code you submit will become part of the repository and be distributed under the [Dear ImGui license](https://github.com/ocornut/imgui/blob/master/LICENSE.txt). By submitting code to the project you agree that the code is your work and that you can give it to the project. + +You also agree by submitting your code that you grant all transferrable rights to the code to the project maintainer, including for example re-licensing the code, modifying the code, and distributing it in source or binary forms. Specifically, this includes a requirement that you assign copyright to the project maintainer. For this reason, do not modify any copyright statements in files in any PRs. + diff --git a/extern/imgui_patched/docs/EXAMPLES.md b/extern/imgui_patched/docs/EXAMPLES.md index 94f78dcd..6c1bac3c 100644 --- a/extern/imgui_patched/docs/EXAMPLES.md +++ b/extern/imgui_patched/docs/EXAMPLES.md @@ -10,67 +10,71 @@ integrating Dear ImGui in your own application/game/engine. **Once Dear ImGui is setup and running, run and refer to `ImGui::ShowDemoWindow()` in imgui_demo.cpp for usage of the end-user API.** You can find Windows binaries for some of those example applications at: - http://www.dearimgui.org/binaries + http://www.dearimgui.com/binaries ### Getting Started Integration in a typical existing application, should take <20 lines when using standard backends. - At initialization: - call ImGui::CreateContext() - call ImGui_ImplXXXX_Init() for each backend. +```cpp +At initialization: + call ImGui::CreateContext() + call ImGui_ImplXXXX_Init() for each backend. - At the beginning of your frame: - call ImGui_ImplXXXX_NewFrame() for each backend. - call ImGui::NewFrame() +At the beginning of your frame: + call ImGui_ImplXXXX_NewFrame() for each backend. + call ImGui::NewFrame() - At the end of your frame: - call ImGui::Render() - call ImGui_ImplXXXX_RenderDrawData() for your Renderer backend. +At the end of your frame: + call ImGui::Render() + call ImGui_ImplXXXX_RenderDrawData() for your Renderer backend. - At shutdown: - call ImGui_ImplXXXX_Shutdown() for each backend. - call ImGui::DestroyContext() +At shutdown: + call ImGui_ImplXXXX_Shutdown() for each backend. + call ImGui::DestroyContext() +``` Example (using [backends/imgui_impl_win32.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_win32.cpp) + [backends/imgui_impl_dx11.cpp](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_dx11.cpp)): - // Create a Dear ImGui context, setup some options - ImGui::CreateContext(); - ImGuiIO& io = ImGui::GetIO(); - io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard; // Enable some options +```cpp +// Create a Dear ImGui context, setup some options +ImGui::CreateContext(); +ImGuiIO& io = ImGui::GetIO(); +io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard; // Enable some options - // Initialize Platform + Renderer backends (here: using imgui_impl_win32.cpp + imgui_impl_dx11.cpp) - ImGui_ImplWin32_Init(my_hwnd); - ImGui_ImplDX11_Init(my_d3d_device, my_d3d_device_context); +// Initialize Platform + Renderer backends (here: using imgui_impl_win32.cpp + imgui_impl_dx11.cpp) +ImGui_ImplWin32_Init(my_hwnd); +ImGui_ImplDX11_Init(my_d3d_device, my_d3d_device_context); - // Application main loop - while (true) - { - // Beginning of frame: update Renderer + Platform backend, start Dear ImGui frame - ImGui_ImplDX11_NewFrame(); - ImGui_ImplWin32_NewFrame(); - ImGui::NewFrame(); +// Application main loop +while (true) +{ + // Beginning of frame: update Renderer + Platform backend, start Dear ImGui frame + ImGui_ImplDX11_NewFrame(); + ImGui_ImplWin32_NewFrame(); + ImGui::NewFrame(); - // Any application code here - ImGui::Text("Hello, world!"); + // Any application code here + ImGui::Text("Hello, world!"); - // End of frame: render Dear ImGui - ImGui::Render(); - ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData()); + // End of frame: render Dear ImGui + ImGui::Render(); + ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData()); - // Swap - g_pSwapChain->Present(1, 0); - } + // Swap + g_pSwapChain->Present(1, 0); +} - // Shutdown - ImGui_ImplDX11_Shutdown(); - ImGui_ImplWin32_Shutdown(); - ImGui::DestroyContext(); +// Shutdown +ImGui_ImplDX11_Shutdown(); +ImGui_ImplWin32_Shutdown(); +ImGui::DestroyContext(); +``` Please read 'PROGRAMMER GUIDE' in imgui.cpp for notes on how to setup Dear ImGui in your codebase. Please read the comments and instruction at the top of each file. -Please read FAQ at http://www.dearimgui.org/faq +Please read FAQ at http://www.dearimgui.com/faq If you are using any of the backends provided here, you can add the backends/imgui_impl_xxxx(.cpp,.h) files to your project and use as-in. Each imgui_impl_xxxx.cpp file comes with its own individual @@ -100,15 +104,10 @@ OSX + OpenGL2 example.
    (NB: imgui_impl_osx.mm is currently not as feature complete as other platforms backends. You may prefer to use the GLFW Or SDL backends, which will also support Windows and Linux.) -[example_emscripten_opengl3/](https://github.com/ocornut/imgui/blob/master/examples/example_emscripten_opengl3/)
    -Emcripten + SDL2 + OpenGL3+/ES2/ES3 example.
    -= main.cpp + imgui_impl_sdl.cpp + imgui_impl_opengl3.cpp
    -Note that other examples based on SDL or GLFW + OpenGL could easily be modified to work with Emscripten. -We provide this to make the Emscripten differences obvious, and have them not pollute all other examples. - [example_emscripten_wgpu/](https://github.com/ocornut/imgui/blob/master/examples/example_emscripten_wgpu/)
    Emcripten + GLFW + WebGPU example.
    = main.cpp + imgui_impl_glfw.cpp + imgui_impl_wgpu.cpp +Note that the 'example_glfw_opengl3' and 'example_sdl2_opengl3' examples also supports Emscripten! [example_glfw_metal/](https://github.com/ocornut/imgui/blob/master/examples/example_glfw_metal/)
    GLFW (Mac) + Metal example.
    @@ -117,18 +116,18 @@ GLFW (Mac) + Metal example.
    [example_glfw_opengl2/](https://github.com/ocornut/imgui/blob/master/examples/example_glfw_opengl2/)
    GLFW + OpenGL2 example (legacy, fixed pipeline).
    = main.cpp + imgui_impl_glfw.cpp + imgui_impl_opengl2.cpp
    -**DO NOT USE THIS IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
    +**DO NOT USE THIS IF YOUR CODE/ENGINE IS USING MODERN GL or WEBGL (SHADERS, VBO, VAO, etc.)**
    This code is mostly provided as a reference to learn about Dear ImGui integration, because it is shorter. -If your code is using GL3+ context or any semi modern OpenGL calls, using this renderer is likely to -make things more complicated, will require your code to reset many OpenGL attributes to their initial +If your code is using GL3+ context or any semi modern GL calls, using this renderer is likely to +make things more complicated, will require your code to reset many GL attributes to their initial state, and might confuse your GPU driver. One star, not recommended. [example_glfw_opengl3/](https://github.com/ocornut/imgui/blob/master/examples/example_glfw_opengl3/)
    GLFW (Win32, Mac, Linux) + OpenGL3+/ES2/ES3 example (modern, programmable pipeline).
    = main.cpp + imgui_impl_glfw.cpp + imgui_impl_opengl3.cpp
    -This uses more modern OpenGL calls and custom shaders.
    -This may actually also work with OpenGL 2.x contexts!
    -Prefer using that if you are using modern OpenGL in your application (anything with shaders). +This uses more modern GL calls and custom shaders.
    +This support building with Emscripten and targetting WebGL.
    +Prefer using that if you are using modern GL or WebGL in your application. [example_glfw_vulkan/](https://github.com/ocornut/imgui/blob/master/examples/example_glfw_vulkan/)
    GLFW (Win32, Mac, Linux) + Vulkan example.
    @@ -147,39 +146,39 @@ Null example, compile and link imgui, create context, run headless with no input This is used to quickly test compilation of core imgui files in as many setups as possible. Because this application doesn't create a window nor a graphic context, there's no graphics output. -[example_sdl_directx11/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl_directx11/)
    +[example_sdl2_directx11/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl2_directx11/)
    SDL2 + DirectX11 example, Windows only.
    -= main.cpp + imgui_impl_sdl.cpp + imgui_impl_dx11.cpp
    -This to demonstrate usage of DirectX with SDL. += main.cpp + imgui_impl_sdl2.cpp + imgui_impl_dx11.cpp
    +This to demonstrate usage of DirectX with SDL2. -[example_sdl_metal/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl_metal/)
    -SDL2 (Mac) + Metal example.
    -= main.mm + imgui_impl_sdl.cpp + imgui_impl_metal.mm +[example_sdl2_metal/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl2_metal/)
    +SDL2 + Metal example, Mac only.
    += main.mm + imgui_impl_sdl2.cpp + imgui_impl_metal.mm -[example_sdl_opengl2/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl_opengl2/)
    +[example_sdl2_opengl2/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl2_opengl2/)
    SDL2 (Win32, Mac, Linux etc.) + OpenGL example (legacy, fixed pipeline).
    -= main.cpp + imgui_impl_sdl.cpp + imgui_impl_opengl2.cpp
    -**DO NOT USE OPENGL2 CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
    += main.cpp + imgui_impl_sdl2.cpp + imgui_impl_opengl2.cpp
    +**DO NOT USE OPENGL2 CODE IF YOUR CODE/ENGINE IS USING GL OR WEBGL (SHADERS, VBO, VAO, etc.)**
    This code is mostly provided as a reference to learn about Dear ImGui integration, because it is shorter. -If your code is using GL3+ context or any semi modern OpenGL calls, using this renderer is likely to -make things more complicated, will require your code to reset many OpenGL attributes to their initial +If your code is using GL3+ context or any semi modern GL calls, using this renderer is likely to +make things more complicated, will require your code to reset many GL attributes to their initial state, and might confuse your GPU driver. One star, not recommended. -[example_sdl_opengl3/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl_opengl3/)
    +[example_sdl2_opengl3/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl2_opengl3/)
    SDL2 (Win32, Mac, Linux, etc.) + OpenGL3+/ES2/ES3 example.
    -= main.cpp + imgui_impl_sdl.cpp + imgui_impl_opengl3.cpp
    -This uses more modern OpenGL calls and custom shaders.
    -This may actually also work with OpenGL 2.x contexts!
    += main.cpp + imgui_impl_sdl2.cpp + imgui_impl_opengl3.cpp
    +This uses more modern GL calls and custom shaders.
    +This support building with Emscripten and targetting WebGL.
    +Prefer using that if you are using modern GL or WebGL in your application. -[example_sdl_sdlrenderer/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl_sdlrenderer/)
    -SDL2 (Win32, Mac, Linux, etc.) + SDL_Renderer (most graphics backends are supported underneath)
    -= main.cpp + imgui_impl_sdl.cpp + imgui_impl_sdlrenderer.cpp
    -This requires SDL 2.0.17+ (expected to release November 2021)
    -We do not really recommend using SDL_Renderer as it is a rather primitive API. +[example_sdl2_sdlrenderer2/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl2_sdlrenderer2/)
    +SDL2 (Win32, Mac, Linux, etc.) + SDL_Renderer for SDL2 (most graphics backends are supported underneath)
    += main.cpp + imgui_impl_sdl2.cpp + imgui_impl_sdlrenderer.cpp
    +This requires SDL 2.0.18+ (released November 2021)
    -[example_sdl_vulkan/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl_vulkan/)
    +[example_sdl2_vulkan/](https://github.com/ocornut/imgui/blob/master/examples/example_sdl2_vulkan/)
    SDL2 (Win32, Mac, Linux, etc.) + Vulkan example.
    -= main.cpp + imgui_impl_sdl.cpp + imgui_impl_vulkan.cpp
    += main.cpp + imgui_impl_sdl2.cpp + imgui_impl_vulkan.cpp
    This is quite long and tedious, because: Vulkan.
    For this example, the main.cpp file exceptionally use helpers function from imgui_impl_vulkan.h/cpp. @@ -200,8 +199,12 @@ DirectX12 example, Windows only.
    = main.cpp + imgui_impl_win32.cpp + imgui_impl_dx12.cpp
    This is quite long and tedious, because: DirectX12. +[example_win32_opengl3/](https://github.com/ocornut/imgui/blob/master/examples/example_win32_opengl3/)
    +Raw Windows + OpenGL3 + example (modern, programmable pipeline)
    += main.cpp + imgui_impl_win32.cpp + imgui_impl_opengl3.cpp
    -### Miscallaneous + +### Miscellaneous **Building** diff --git a/extern/imgui_patched/docs/FAQ.md b/extern/imgui_patched/docs/FAQ.md index 04774a78..2a2c9ebf 100644 --- a/extern/imgui_patched/docs/FAQ.md +++ b/extern/imgui_patched/docs/FAQ.md @@ -1,7 +1,7 @@ -# FAQ (Frequenty Asked Questions) +# FAQ (Frequently Asked Questions) You may link to this document using short form: - https://www.dearimgui.org/faq + https://www.dearimgui.com/faq or its real address: https://github.com/ocornut/imgui/blob/master/docs/FAQ.md or view this file with any Markdown viewer. @@ -25,7 +25,8 @@ or view this file with any Markdown viewer. | **Q&A: Usage** | | **[About the ID Stack system..
    Why is my widget not reacting when I click on it?
    How can I have widgets with an empty label?
    How can I have multiple widgets with the same label?
    How can I have multiple windows with the same label?](#q-about-the-id-stack-system)** | | [How can I display an image? What is ImTextureID, how does it work?](#q-how-can-i-display-an-image-what-is-imtextureid-how-does-it-work)| -| [How can I use my own math types instead of ImVec2/ImVec4?](#q-how-can-i-use-my-own-math-types-instead-of-imvec2imvec4) | +| [How can I use maths operators with ImVec2?](#q-how-can-i-use-maths-operators-with-imvec2) | +| [How can I use my own maths types instead of ImVec2/ImVec4?](#q-how-can-i-use-my-own-maths-types-instead-of-imvec2imvec4) | | [How can I interact with standard C++ types (such as std::string and std::vector)?](#q-how-can-i-interact-with-standard-c-types-such-as-stdstring-and-stdvector) | | [How can I display custom shapes? (using low-level ImDrawList API)](#q-how-can-i-display-custom-shapes-using-low-level-imdrawlist-api) | | **Q&A: Fonts, Text** | @@ -56,7 +57,7 @@ or view this file with any Markdown viewer. - The [Glossary](https://github.com/ocornut/imgui/wiki/Glossary) page may be useful. - The [Issues](https://github.com/ocornut/imgui/issues) and [Discussions](https://github.com/ocornut/imgui/discussions) sections can be searched for past questions and issues. - Your programming IDE is your friend, find the type or function declaration to find comments associated with it. -- The `ImGui::ShowMetricsWindow()` function exposes lots of internal information and tools. Although it is primary designed as a debugging tool, having access to that information tends to help understands concepts. +- The `ImGui::ShowMetricsWindow()` function exposes lots of internal information and tools. Although it is primarily designed as a debugging tool, having access to that information tends to help understands concepts. ##### [Return to Index](#index) @@ -123,7 +124,7 @@ void MyLowLevelMouseButtonHandler(int button, bool down) ``` -**Note:** The `io.WantCaptureMouse` is more correct that any manual attempt to "check if the mouse is hovering a window" (don't do that!). It handle mouse dragging correctly (both dragging that started over your application or over a Dear ImGui window) and handle e.g. popup and modal windows blocking inputs. +**Note:** The `io.WantCaptureMouse` is more correct that any manual attempt to "check if the mouse is hovering a window" (don't do that!). It handles mouse dragging correctly (both dragging that started over your application or over a Dear ImGui window) and handle e.g. popup and modal windows blocking inputs. **Note:** Those flags are updated by `ImGui::NewFrame()`. However it is generally more correct and easier that you poll flags from the previous frame, then submit your inputs, then call `NewFrame()`. If you attempt to do the opposite (which is generally harder) you are likely going to submit your inputs after `NewFrame()`, and therefore too late. @@ -139,7 +140,7 @@ void MyLowLevelMouseButtonHandler(int button, bool down) - The gamepad/keyboard navigation is fairly functional and keeps being improved. The initial focus was to support game controllers, but keyboard is becoming increasingly and decently usable. Gamepad support is particularly useful to use Dear ImGui on a game console (e.g. PS4, Switch, XB1) without a mouse connected! - Keyboard: set `io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard` to enable. - Gamepad: set `io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad` to enable (with a supporting backend). -- See [Control Sheets for Gamepads](http://www.dearimgui.org/controls_sheets) (reference PNG/PSD for PS4, XB1, Switch gamepads). +- See [Control Sheets for Gamepads](http://www.dearimgui.com/controls_sheets) (reference PNG/PSD for PS4, XB1, Switch gamepads). - See `USING GAMEPAD/KEYBOARD NAVIGATION CONTROLS` section of [imgui.cpp](https://github.com/ocornut/imgui/blob/master/imgui.cpp) for more details. ##### [Return to Index](#index) @@ -177,8 +178,21 @@ Each draw command needs the triangle rendered using the clipping rectangle provi Rectangles provided by Dear ImGui are defined as `(x1=left,y1=top,x2=right,y2=bottom)` and **NOT** as -`(x1,y1,width,height)` -Refer to rendering backends in the [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder for references of how to handle the `ClipRect` field. +`(x1,y1,width,height)`. +Refer to rendering backends in the [backends/](https://github.com/ocornut/imgui/tree/master/backends) folder for references of how to handle the `ClipRect` field. +For example, the [DirectX11 backend](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_dx11.cpp) does this: +```cpp +// Project scissor/clipping rectangles into framebuffer space +ImVec2 clip_off = draw_data->DisplayPos; +ImVec2 clip_min(pcmd->ClipRect.x - clip_off.x, pcmd->ClipRect.y - clip_off.y); +ImVec2 clip_max(pcmd->ClipRect.z - clip_off.x, pcmd->ClipRect.w - clip_off.y); +if (clip_max.x <= clip_min.x || clip_max.y <= clip_min.y) + continue; + +// Apply scissor/clipping rectangle +const D3D11_RECT r = { (LONG)clip_min.x, (LONG)clip_min.y, (LONG)clip_max.x, (LONG)clip_max.y }; +ctx->RSSetScissorRects(1, &r); +``` ##### [Return to Index](#index) @@ -198,10 +212,10 @@ Dear ImGui internally needs to uniquely identify UI elements. Elements that are typically not clickable (such as calls to the Text functions) don't need an ID. Interactive widgets (such as calls to Button buttons) need a unique ID. -**Unique ID are used internally to track active widgets and occasionally associate state to widgets.
    -Unique ID are implicitly built from the hash of multiple elements that identify the "path" to the UI element.** +**Unique IDs are used internally to track active widgets and occasionally associate state to widgets.
    +Unique IDs are implicitly built from the hash of multiple elements that identify the "path" to the UI element.** -Since Dear ImGui 1.85 you can use `Demo>Tools>Stack Tool` or call `ImGui::ShowStackToolWindow()`. The tool display intermediate values leading to the creation of a unique ID, making things easier to debug and understand. +Since Dear ImGui 1.85, you can use `Demo>Tools>Stack Tool` or call `ImGui::ShowStackToolWindow()`. The tool display intermediate values leading to the creation of a unique ID, making things easier to debug and understand. ![Stack tool](https://user-images.githubusercontent.com/8225057/136235657-a0ea5665-dcd1-423f-9be6-dc3f8ced8f12.png) @@ -240,12 +254,12 @@ Button("OK"); // ERROR: ID collision with the first button! Interacting wit Button(""); // ERROR: ID collision with Begin("MyWindow")! End(); ``` -Fear not! this is easy to solve and there are many ways to solve it! +Fear not! This is easy to solve and there are many ways to solve it! - Solving ID conflict in a simple/local context: -When passing a label you can optionally specify extra ID information within string itself. +When passing a label you can optionally specify extra ID information within the string itself. Use "##" to pass a complement to the ID that won't be visible to the end-user. -This helps solving the simple collision cases when you know e.g. at compilation time which items +This helps solve the simple collision cases when you know e.g. at compilation time which items are going to be created: ```cpp Begin("MyWindow"); @@ -259,8 +273,8 @@ End(); ```cpp Checkbox("##On", &b); // Label = "", ID = hash of (..., "##On") // No visible label, just a checkbox! ``` -- Occasionally/rarely you might want change a label while preserving a constant ID. This allows -you to animate labels. For example you may want to include varying information in a window title bar, +- Occasionally/rarely you might want to change a label while preserving a constant ID. This allows +you to animate labels. For example, you may want to include varying information in a window title bar, but windows are uniquely identified by their ID. Use "###" to pass a label that isn't part of ID: ```cpp Button("Hello###ID"); // Label = "Hello", ID = hash of (..., "###ID") @@ -273,9 +287,9 @@ Begin(buf); // Variable title, ID = hash of "MyGame" Use `PushID()` / `PopID()` to create scopes and manipulate the ID stack, as to avoid ID conflicts within the same window. This is the most convenient way of distinguishing ID when iterating and creating many UI elements programmatically. -You can push a pointer, a string or an integer value into the ID stack. -Remember that ID are formed from the concatenation of _everything_ pushed into the ID stack. -At each level of the stack we store the seed used for items at this level of the ID stack. +You can push a pointer, a string, or an integer value into the ID stack. +Remember that IDs are formed from the concatenation of _everything_ pushed into the ID stack. +At each level of the stack, we store the seed used for items at this level of the ID stack. ```cpp Begin("Window"); for (int i = 0; i < 100; i++) @@ -310,7 +324,7 @@ PushID("node"); PopID(); PopID(); ``` -- Tree nodes implicitly creates a scope for you by calling `PushID()`: +- Tree nodes implicitly create a scope for you by calling `PushID()`: ```cpp Button("Click"); // Label = "Click", ID = hash of (..., "Click") if (TreeNode("node")) // <-- this function call will do a PushID() for you (unless instructed not to, with a special flag) @@ -320,8 +334,8 @@ if (TreeNode("node")) // <-- this function call will do a PushID() for you (unl } ``` -When working with trees, ID are used to preserve the open/close state of each tree node. -Depending on your use cases you may want to use strings, indices or pointers as ID. +When working with trees, IDs are used to preserve the open/close state of each tree node. +Depending on your use cases you may want to use strings, indices, or pointers as ID. - e.g. when following a single pointer that may change over time, using a static string as ID will preserve your node open/closed state when the targeted object change. - e.g. when displaying a list of objects, using indices or pointers as ID will preserve the @@ -342,11 +356,11 @@ Short explanation: **Please read documentations or tutorials on your graphics API to understand how to display textures on the screen before moving onward.** Long explanation: -- Dear ImGui's job is to create "meshes", defined in a renderer-agnostic format made of draw commands and vertices. At the end of the frame those meshes (ImDrawList) will be displayed by your rendering function. They are made up of textured polygons and the code to render them is generally fairly short (a few dozen lines). In the examples/ folder we provide functions for popular graphics API (OpenGL, DirectX, etc.). +- Dear ImGui's job is to create "meshes", defined in a renderer-agnostic format made of draw commands and vertices. At the end of the frame, those meshes (ImDrawList) will be displayed by your rendering function. They are made up of textured polygons and the code to render them is generally fairly short (a few dozen lines). In the examples/ folder, we provide functions for popular graphics APIs (OpenGL, DirectX, etc.). - Each rendering function decides on a data type to represent "textures". The concept of what is a "texture" is entirely tied to your underlying engine/graphics API. We carry the information to identify a "texture" in the ImTextureID type. -ImTextureID is nothing more that a void*, aka 4/8 bytes worth of data: just enough to store 1 pointer or 1 integer of your choice. -Dear ImGui doesn't know or understand what you are storing in ImTextureID, it merely pass ImTextureID values until they reach your rendering function. +ImTextureID is nothing more than a void*, aka 4/8 bytes worth of data: just enough to store one pointer or integer of your choice. +Dear ImGui doesn't know or understand what you are storing in ImTextureID, it merely passes ImTextureID values until they reach your rendering function. - In the [examples/](https://github.com/ocornut/imgui/tree/master/examples) backends, for each graphics API we decided on a type that is likely to be a good representation for specifying an image from the end-user perspective. This is what the _examples_ rendering functions are using: ```cpp OpenGL: @@ -371,9 +385,9 @@ DirectX12: For example, in the OpenGL example backend we store raw OpenGL texture identifier (GLuint) inside ImTextureID. Whereas in the DirectX11 example backend we store a pointer to ID3D11ShaderResourceView inside ImTextureID, which is a higher-level structure tying together both the texture and information about its format and how to read it. -- If you have a custom engine built over e.g. OpenGL, instead of passing GLuint around you may decide to use a high-level data type to carry information about the texture as well as how to display it (shaders, etc.). The decision of what to use as ImTextureID can always be made better knowing how your codebase is designed. If your engine has high-level data types for "textures" and "material" then you may want to use them. +- If you have a custom engine built over e.g. OpenGL, instead of passing GLuint around you may decide to use a high-level data type to carry information about the texture as well as how to display it (shaders, etc.). The decision of what to use as ImTextureID can always be made better by knowing how your codebase is designed. If your engine has high-level data types for "textures" and "material" then you may want to use them. If you are starting with OpenGL or DirectX or Vulkan and haven't built much of a rendering engine over them, keeping the default ImTextureID representation suggested by the example backends is probably the best choice. -(Advanced users may also decide to keep a low-level type in ImTextureID, and use ImDrawList callback and pass information to their renderer) +(Advanced users may also decide to keep a low-level type in ImTextureID, use ImDrawList callback and pass information to their renderer) User code may do: ```cpp @@ -387,15 +401,15 @@ The renderer function called after ImGui::Render() will receive that same value MyTexture* texture = (MyTexture*)pcmd->GetTexID(); MyEngineBindTexture2D(texture); ``` -Once you understand this design you will understand that loading image files and turning them into displayable textures is not within the scope of Dear ImGui. -This is by design and is actually a good thing, because it means your code has full control over your data types and how you display them. -If you want to display an image file (e.g. PNG file) into the screen, please refer to documentation and tutorials for the graphics API you are using. +Once you understand this design, you will understand that loading image files and turning them into displayable textures is not within the scope of Dear ImGui. +This is by design and is a good thing because it means your code has full control over your data types and how you display them. +If you want to display an image file (e.g. PNG file) on the screen, please refer to documentation and tutorials for the graphics API you are using. Refer to [Image Loading and Displaying Examples](https://github.com/ocornut/imgui/wiki/Image-Loading-and-Displaying-Examples) on the [Wiki](https://github.com/ocornut/imgui/wiki) to find simplified examples for loading textures with OpenGL, DirectX9 and DirectX11. C/C++ tip: a void* is pointer-sized storage. You may safely store any pointer or integer into it by casting your value to ImTextureID / void*, and vice-versa. Because both end-points (user code and rendering function) are under your control, you know exactly what is stored inside the ImTextureID / void*. -Examples: +Here are some examples: ```cpp GLuint my_tex = XXX; void* my_void_ptr; @@ -413,17 +427,25 @@ Finally, you may call `ImGui::ShowMetricsWindow()` to explore/visualize/understa --- -### Q: How can I use my own math types instead of ImVec2/ImVec4? +### Q: How can I use maths operators with ImVec2? -You can edit [imconfig.h](https://github.com/ocornut/imgui/blob/master/imconfig.h) and setup the `IM_VEC2_CLASS_EXTRA`/`IM_VEC4_CLASS_EXTRA` macros to add implicit type conversions. -This way you'll be able to use your own types everywhere, e.g. passing `MyVector2` or `glm::vec2` to ImGui functions instead of `ImVec2`. +We do not export maths operators by default in imgui.h in order to not conflict with the use of your own maths types and maths operators. As a convenience, you may use `#defne IMGUI_DEFINE_MATH_OPERATORS` + `#include "imgui.h"` to access our basic maths operators. + +##### [Return to Index](#index) + +--- + +### Q: How can I use my own maths types instead of ImVec2/ImVec4? + +You can setup your [imconfig.h](https://github.com/ocornut/imgui/blob/master/imconfig.h) file with `IM_VEC2_CLASS_EXTRA`/`IM_VEC4_CLASS_EXTRA` macros to add implicit type conversions to our own maths types. +This way you will be able to use your own types everywhere, e.g. passing `MyVector2` or `glm::vec2` to ImGui functions instead of `ImVec2`. ##### [Return to Index](#index) --- ### Q: How can I interact with standard C++ types (such as std::string and std::vector)? -- Being highly portable (backends/bindings for several languages, frameworks, programming style, obscure or older platforms/compilers), and aiming for compatibility & performance suitable for every modern real-time game engines, dear imgui does not use any of std C++ types. We use raw types (e.g. char* instead of std::string) because they adapt to more use cases. +- Being highly portable (backends/bindings for several languages, frameworks, programming styles, obscure or older platforms/compilers), and aiming for compatibility & performance suitable for every modern real-time game engine, Dear ImGui does not use any of std C++ types. We use raw types (e.g. char* instead of std::string) because they adapt to more use cases. - To use ImGui::InputText() with a std::string or any resizable string class, see [misc/cpp/imgui_stdlib.h](https://github.com/ocornut/imgui/blob/master/misc/cpp/imgui_stdlib.h). - To use combo boxes and list boxes with `std::vector` or any other data structure: the `BeginCombo()/EndCombo()` API lets you iterate and submit items yourself, so does the `ListBoxHeader()/ListBoxFooter()` API. @@ -432,12 +454,12 @@ Prefer using them over the old and awkward `Combo()/ListBox()` api. You may write your own one-liner wrappers to facilitate user code (tip: add new functions in ImGui:: namespace from your code). - Dear ImGui applications often need to make intensive use of strings. It is expected that many of the strings you will pass to the API are raw literals (free in C/C++) or allocated in a manner that won't incur a large cost on your application. -Please bear in mind that using `std::string` on applications with large amount of UI may incur unsatisfactory performances. +Please bear in mind that using `std::string` on applications with a large amount of UI may incur unsatisfactory performances. Modern implementations of `std::string` often include small-string optimization (which is often a local buffer) but those are not configurable and not the same across implementations. -- If you are finding your UI traversal cost to be too large, make sure your string usage is not leading to excessive amount -of heap allocations. Consider using literals, statically sized buffers and your own helper functions. A common pattern -is that you will need to build lots of strings on the fly, and their maximum length can be easily be scoped ahead. +- If you are finding your UI traversal cost to be too large, make sure your string usage is not leading to an excessive amount +of heap allocations. Consider using literals, statically sized buffers, and your own helper functions. A common pattern +is that you will need to build lots of strings on the fly, and their maximum length can be easily scoped ahead. One possible implementation of a helper to facilitate printf-style building of strings: https://github.com/ocornut/Str This is a small helper where you can instance strings with configurable local buffers length. Many game engines will provide similar or better string helpers. @@ -458,7 +480,7 @@ ImDrawList* draw_list = ImGui::GetWindowDrawList(); ImVec2 p = ImGui::GetCursorScreenPos(); // Draw a red circle -draw_list->AddCircleFilled(ImVec2(p.x + 50, p.y + 50), 30.0f, IM_COL32(255, 0, 0, 255), 16); +draw_list->AddCircleFilled(ImVec2(p.x + 50, p.y + 50), 30.0f, IM_COL32(255, 0, 0, 255)); // Draw a 3 pixel thick yellow line draw_list->AddLine(ImVec2(p.x, p.y), ImVec2(p.x + 100.0f, p.y + 100.0f), IM_COL32(255, 255, 0, 255), 3.0f); @@ -472,8 +494,8 @@ ImGui::End(); - Refer to "Demo > Examples > Custom Rendering" in the demo window and read the code of `ShowExampleAppCustomRendering()` in `imgui_demo.cpp` from more examples. - To generate colors: you can use the macro `IM_COL32(255,255,255,255)` to generate them at compile time, or use `ImGui::GetColorU32(IM_COL32(255,255,255,255))` or `ImGui::GetColorU32(ImVec4(1.0f,1.0f,1.0f,1.0f))` to generate a color that is multiplied by the current value of `style.Alpha`. -- Math operators: if you have setup `IM_VEC2_CLASS_EXTRA` in `imconfig.h` to bind your own math types, you can use your own math types and their natural operators instead of ImVec2. ImVec2 by default doesn't export any math operators in the public API. You may use `#define IMGUI_DEFINE_MATH_OPERATORS` `#include "imgui_internal.h"` to use the internally defined math operators, but instead prefer using your own math library and set it up in `imconfig.h`. -- You can use `ImGui::GetBackgroundDrawList()` or `ImGui::GetForegroundDrawList()` to access draw lists which will be displayed behind and over every other dear imgui windows (one bg/fg drawlist per viewport). This is very convenient if you need to quickly display something on the screen that is not associated to a dear imgui window. +- Math operators: if you have setup `IM_VEC2_CLASS_EXTRA` in `imconfig.h` to bind your own math types, you can use your own math types and their natural operators instead of ImVec2. ImVec2 by default doesn't export any math operators in the public API. You may use `#define IMGUI_DEFINE_MATH_OPERATORS` `#include "imgui.h"` to use our math operators, but instead prefer using your own math library and set it up in `imconfig.h`. +- You can use `ImGui::GetBackgroundDrawList()` or `ImGui::GetForegroundDrawList()` to access draw lists which will be displayed behind and over every other Dear ImGui window (one bg/fg drawlist per viewport). This is very convenient if you need to quickly display something on the screen that is not associated with a Dear ImGui window. - You can also create your own empty window and draw inside it. Call Begin() with the NoBackground | NoDecoration | NoSavedSettings | NoInputs flags (The `ImGuiWindowFlags_NoDecoration` flag itself is a shortcut for NoTitleBar | NoResize | NoScrollbar | NoCollapse). Then you can retrieve the ImDrawList* via `GetWindowDrawList()` and draw to it in any way you like. - You can create your own ImDrawList instance. You'll need to initialize them with `ImGui::GetDrawListSharedData()`, or create your own instancing `ImDrawListSharedData`, and then call your renderer function with your own ImDrawList or ImDrawData data. - Looking for fun? The [ImDrawList coding party 2020](https://github.com/ocornut/imgui/issues/3606) thread is full of "don't do this at home" extreme uses of the ImDrawList API. @@ -486,7 +508,7 @@ ImGui::End(); ### Q: How should I handle DPI in my application? -The short answer is: obtain the desired DPI scale, load your fonts resized with that scale (always round down fonts size to nearest integer), and scale your Style structure accordingly using `style.ScaleAllSizes()`. +The short answer is: obtain the desired DPI scale, load your fonts resized with that scale (always round down fonts size to the nearest integer), and scale your Style structure accordingly using `style.ScaleAllSizes()`. Your application may want to detect DPI change and reload the fonts and reset style between frames. @@ -496,16 +518,24 @@ Down the line Dear ImGui will provide a variety of standardized reference values Applications in the `examples/` folder are not DPI aware partly because they are unable to load a custom font from the file-system (may change that in the future). -The reason DPI is not auto-magically solved in stock examples is that we don't yet have a satisfying solution for the "multi-dpi" problem (using the `docking` branch: when multiple viewport windows are over multiple monitors using different DPI scale). The current way to handle this on the application side is: +The reason DPI is not auto-magically solved in stock examples is that we don't yet have a satisfying solution for the "multi-dpi" problem (using the `docking` branch: when multiple viewport windows are over multiple monitors using different DPI scales). The current way to handle this on the application side is: - Create and maintain one font atlas per active DPI scale (e.g. by iterating `platform_io.Monitors[]` before `NewFrame()`). - Hook `platform_io.OnChangedViewport()` to detect when a `Begin()` call makes a Dear ImGui window change monitor (and therefore DPI). -- In the hook: swap atlas, swap style with correctly sized one, remap the current font from one atlas to the other (may need to maintain a remapping table of your fonts at variying DPI scale). +- In the hook: swap atlas, swap style with correctly sized one, and remap the current font from one atlas to the other (you may need to maintain a remapping table of your fonts at varying DPI scales). -This approach is relatively easy and functional but come with two issues: +This approach is relatively easy and functional but comes with two issues: - It's not possibly to reliably size or position a window ahead of `Begin()` without knowing on which monitor it'll land. - Style override may be lost during the `Begin()` call crossing monitor boundaries. You may need to do some custom scaling mumbo-jumbo if you want your `OnChangedViewport()` handler to preserve style overrides. -Please note that if you are not using multi-viewports with multi-monitors using different DPI scale, you can ignore all of this and use the simpler technique recommended at the top. +Please note that if you are not using multi-viewports with multi-monitors using different DPI scales, you can ignore that and use the simpler technique recommended at the top. + +On Windows, in addition to scaling the font size (make sure to round to an integer) and using `style.ScaleAllSizes()`, you will need to inform Windows that your application is DPI aware. If this is not done, Windows will scale the application window and the UI text will be blurry. Potential solutions to indicate DPI awareness on Windows are: + +- For SDL: the flag `SDL_WINDOW_ALLOW_HIGHDPI` needs to be passed to `SDL_CreateWindow()``. +- For GLFW: this is done automatically. +- For other Windows projects with other backends, or wrapper projects: + - We provide a `ImGui_ImplWin32_EnableDpiAwareness()` helper method in the Win32 backend. + - Use an [application manifest file](https://learn.microsoft.com/en-us/windows/win32/hidpi/setting-the-default-dpi-awareness-for-a-process) to set the `` property. ### Q: How can I load a different font than the default? Use the font atlas to load the TTF/OTF file you want: @@ -527,7 +557,7 @@ backslash \ within a string literal, you need to write it double backslash "\\": ```cpp io.Fonts->AddFontFromFileTTF("MyFolder\MyFont.ttf", size); // WRONG (you are escaping the M here!) -io.Fonts->AddFontFromFileTTF("MyFolder\\MyFont.ttf", size; // CORRECT (Windows only) +io.Fonts->AddFontFromFileTTF("MyFolder\\MyFont.ttf", size); // CORRECT (Windows only) io.Fonts->AddFontFromFileTTF("MyFolder/MyFont.ttf", size); // ALSO CORRECT ``` @@ -536,11 +566,11 @@ io.Fonts->AddFontFromFileTTF("MyFolder/MyFont.ttf", size); // ALSO CORRECT --- ### Q: How can I easily use icons in my application? -The most convenient and practical way is to merge an icon font such as FontAwesome inside you +The most convenient and practical way is to merge an icon font such as FontAwesome inside your main font. Then you can refer to icons within your strings. You may want to see `ImFontConfig::GlyphMinAdvanceX` to make your icon look monospace to facilitate alignment. (Read the [docs/FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) file for more details about icons font loading.) -With some extra effort, you may use colorful icon by registering custom rectangle space inside the font atlas, +With some extra effort, you may use colorful icons by registering custom rectangle space inside the font atlas, and copying your own graphics data into it. See docs/FONTS.md about using the AddCustomRectFontGlyph API. ##### [Return to Index](#index) @@ -564,7 +594,7 @@ io.Fonts->GetTexDataAsRGBA32() or GetTexDataAsAlpha8() ImFontConfig config; config.OversampleH = 2; config.OversampleV = 1; -config.GlyphOffset.y -= 1.0f; // Move everything by 1 pixels up +config.GlyphOffset.y -= 1.0f; // Move everything by 1 pixel up config.GlyphExtraSpacing.x = 1.0f; // Increase spacing between characters io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_pixels, &config); @@ -574,7 +604,7 @@ ImFontConfig config; config.MergeMode = true; io.Fonts->AddFontDefault(); io.Fonts->AddFontFromFileTTF("fontawesome-webfont.ttf", 16.0f, &config, ranges); // Merge icon font -io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_pixels, NULL, &config, io.Fonts->GetGlyphRangesJapanese()); // Merge japanese glyphs +io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_pixels, nullptr, &config, io.Fonts->GetGlyphRangesJapanese()); // Merge japanese glyphs ``` ##### [Return to Index](#index) @@ -586,7 +616,7 @@ When loading a font, pass custom Unicode ranges to specify the glyphs to load. ```cpp // Add default Japanese ranges -io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, NULL, io.Fonts->GetGlyphRangesJapanese()); +io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, nullptr, io.Fonts->GetGlyphRangesJapanese()); // Or create your own custom ranges (e.g. for a game you can feed your entire game script and only build the characters the game need) ImVector ranges; @@ -595,20 +625,21 @@ builder.AddText("Hello world"); // Add a string (here "He builder.AddChar(0x7262); // Add a specific character builder.AddRanges(io.Fonts->GetGlyphRangesJapanese()); // Add one of the default ranges builder.BuildRanges(&ranges); // Build the final result (ordered ranges with all the unique characters submitted) -io.Fonts->AddFontFromFileTTF("myfontfile.ttf", 16.0f, NULL, ranges.Data); +io.Fonts->AddFontFromFileTTF("myfontfile.ttf", 16.0f, nullptr, ranges.Data); ``` -All your strings needs to use UTF-8 encoding. In C++11 you can encode a string literal in UTF-8 -by using the u8"hello" syntax. Specifying literal in your source code using a local code page -(such as CP-923 for Japanese or CP-1251 for Cyrillic) will NOT work! -Otherwise you can convert yourself to UTF-8 or load text data from file already saved as UTF-8. +All your strings need to use UTF-8 encoding. +You need to tell your compiler to use UTF-8, or in C++11 you can encode a string literal in UTF-8 by using the u8"hello" syntax. +Specifying literal in your source code using a local code page (such as CP-923 for Japanese or CP-1251 for Cyrillic) will NOT work! +See [About UTF-8 Encoding](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md#about-utf-8-encoding) section +of [FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) for details about UTF-8 Encoding. Text input: it is up to your application to pass the right character code by calling `io.AddInputCharacter()`. The applications in examples/ are doing that. Windows: you can use the WM_CHAR or WM_UNICHAR or WM_IME_CHAR message (depending if your app is built using Unicode or MultiByte mode). -You may also use MultiByteToWideChar() or ToUnicode() to retrieve Unicode codepoints from MultiByte characters or keyboard state. +You may also use `MultiByteToWideChar()` or `ToUnicode()` to retrieve Unicode codepoints from MultiByte characters or keyboard state. Windows: if your language is relying on an Input Method Editor (IME), you can write your HWND to ImGui::GetMainViewport()->PlatformHandleRaw -in order for the default the default implementation of io.SetPlatformImeDataFn() to set your Microsoft IME position correctly. +for the default implementation of io.SetPlatformImeDataFn() to set your Microsoft IME position correctly. ##### [Return to Index](#index) @@ -623,7 +654,7 @@ You may take a look at: - [Quotes](https://github.com/ocornut/imgui/wiki/Quotes) - [Software using Dear ImGui](https://github.com/ocornut/imgui/wiki/Software-using-dear-imgui) - [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors) -- [Gallery](https://github.com/ocornut/imgui/issues/5243) +- [Gallery](https://github.com/ocornut/imgui/issues/6478) ##### [Return to Index](#index) @@ -631,11 +662,11 @@ You may take a look at: ### Q: Can you create elaborate/serious tools with Dear ImGui? -Yes. People have written game editors, data browsers, debuggers, profilers and all sort of non-trivial tools with the library. In my experience the simplicity of the API is very empowering. Your UI runs close to your live data. Make the tools always-on and everybody in the team will be inclined to create new tools (as opposed to more "offline" UI toolkits where only a fraction of your team effectively creates tools). The list of sponsors below is also an indicator that serious game teams have been using the library. +Yes. People have written game editors, data browsers, debuggers, profilers, and all sorts of non-trivial tools with the library. In my experience, the simplicity of the API is very empowering. Your UI runs close to your live data. Make the tools always-on and everybody in the team will be inclined to create new tools (as opposed to more "offline" UI toolkits where only a fraction of your team effectively creates tools). The list of sponsors below is also an indicator that serious game teams have been using the library. -Dear ImGui is very programmer centric and the immediate-mode GUI paradigm might require you to readjust some habits before you can realize its full potential. Dear ImGui is about making things that are simple, efficient and powerful. +Dear ImGui is very programmer centric and the immediate-mode GUI paradigm might require you to readjust some habits before you can realize its full potential. Dear ImGui is about making things that are simple, efficient, and powerful. -Dear ImGui is built to be efficient and scalable toward the needs for AAA-quality applications running all day. The IMGUI paradigm offers different opportunities for optimization that the more typical RMGUI paradigm. +Dear ImGui is built to be efficient and scalable toward the needs for AAA-quality applications running all day. The IMGUI paradigm offers different opportunities for optimization than the more typical RMGUI paradigm. ##### [Return to Index](#index) @@ -643,9 +674,9 @@ Dear ImGui is built to be efficient and scalable toward the needs for AAA-qualit ### Q: Can you reskin the look of Dear ImGui? -Somehow. You can alter the look of the interface to some degree: changing colors, sizes, padding, rounding, fonts. However, as Dear ImGui is designed and optimized to create debug tools, the amount of skinning you can apply is limited. There is only so much you can stray away from the default look and feel of the interface. Dear ImGui is NOT designed to create user interface for games, although with ingenious use of the low-level API you can do it. +Somewhat. You can alter the look of the interface to some degree: changing colors, sizes, padding, rounding, and fonts. However, as Dear ImGui is designed and optimized to create debug tools, the amount of skinning you can apply is limited. There is only so much you can stray away from the default look and feel of the interface. Dear ImGui is NOT designed to create a user interface for games, although with ingenious use of the low-level API you can do it. -A reasonably skinned application may look like (screenshot from [#2529](https://github.com/ocornut/imgui/issues/2529#issuecomment-524281119)) +A reasonably skinned application may look like (screenshot from [#2529](https://github.com/ocornut/imgui/issues/2529#issuecomment-524281119)): ![minipars](https://user-images.githubusercontent.com/314805/63589441-d9794f00-c5b1-11e9-8d96-cfc1b93702f7.png) ##### [Return to Index](#index) @@ -654,7 +685,7 @@ A reasonably skinned application may look like (screenshot from [#2529](https:// ### Q: Why using C++ (as opposed to C)? -Dear ImGui takes advantage of a few C++ languages features for convenience but nothing anywhere Boost insanity/quagmire. Dear ImGui doesn't use any C++ header file. Dear ImGui uses a very small subset of C++11 features. In particular, function overloading and default parameters are used to make the API easier to use and code more terse. Doing so I believe the API is sitting on a sweet spot and giving up on those features would make the API more cumbersome. Other features such as namespace, constructors and templates (in the case of the ImVector<> class) are also relied on as a convenience. +Dear ImGui takes advantage of a few C++ language features for convenience but nothing anywhere Boost insanity/quagmire. Dear ImGui doesn't use any C++ header file. Dear ImGui uses a very small subset of C++11 features. In particular, function overloading and default parameters are used to make the API easier to use and code terser. Doing so I believe the API is sitting on a sweet spot and giving up on those features would make the API more cumbersome. Other features such as namespace, constructors, and templates (in the case of the ImVector<> class) are also relied on as a convenience. There is an auto-generated [c-api for Dear ImGui (cimgui)](https://github.com/cimgui/cimgui) by Sonoro1234 and Stephan Dilly. It is designed for creating bindings to other languages. If possible, I would suggest using your target language functionalities to try replicating the function overloading and default parameters used in C++ else the API may be harder to use. Also see [Bindings](https://github.com/ocornut/imgui/wiki/Bindings) for various third-party bindings. @@ -665,11 +696,11 @@ There is an auto-generated [c-api for Dear ImGui (cimgui)](https://github.com/ci # Q&A: Community ### Q: How can I help? -- Businesses: please reach out to `contact AT dearimgui.com` if you work in a place using Dear ImGui! We can discuss ways for your company to fund development via invoiced technical support, maintenance or sponsoring contacts. This is among the most useful thing you can do for Dear ImGui. With increased funding, we can hire more people working on this project. +- Businesses: please reach out to `contact AT dearimgui.com` if you work in a place using Dear ImGui! We can discuss ways for your company to fund development via invoiced technical support, maintenance, or sponsoring contacts. This is among the most useful thing you can do for Dear ImGui. With increased funding, we can hire more people to work on this project. - Individuals: you can support continued maintenance and development via PayPal donations. See [README](https://github.com/ocornut/imgui/blob/master/docs/README.md). -- If you are experienced with Dear ImGui and C++, look at [GitHub Issues](https://github.com/ocornut/imgui/issues), [GitHub Discussions](https://github.com/ocornut/imgui/discussions), the [Wiki](https://github.com/ocornut/imgui/wiki), read [docs/TODO.txt](https://github.com/ocornut/imgui/blob/master/docs/TODO.txt) and see how you want to help and can help! -- Disclose your usage of Dear ImGui via a dev blog post, a tweet, a screenshot, a mention somewhere etc. -You may post screenshot or links in the [gallery threads](https://github.com/ocornut/imgui/issues/5243). Visuals are ideal as they inspire other programmers. Disclosing your use of Dear ImGui helps the library grow credibility, and help other teams and programmers with taking decisions. +- If you are experienced with Dear ImGui and C++, look at [GitHub Issues](https://github.com/ocornut/imgui/issues), [GitHub Discussions](https://github.com/ocornut/imgui/discussions), the [Wiki](https://github.com/ocornut/imgui/wiki), read [docs/TODO.txt](https://github.com/ocornut/imgui/blob/master/docs/TODO.txt), and see how you want to help and can help! +- Disclose your usage of Dear ImGui via a dev blog post, a tweet, a screenshot, a mention somewhere, etc. +You may post screenshots or links in the [gallery threads](https://github.com/ocornut/imgui/issues/6478). Visuals are ideal as they inspire other programmers. Disclosing your use of Dear ImGui helps the library grow credibility, and helps other teams and programmers with taking decisions. - If you have issues or if you need to hack into the library, even if you don't expect any support it is useful that you share your issues or sometimes incomplete PR. ##### [Return to Index](#index) diff --git a/extern/imgui_patched/docs/FONTS.md b/extern/imgui_patched/docs/FONTS.md index a0354674..6049fb48 100644 --- a/extern/imgui_patched/docs/FONTS.md +++ b/extern/imgui_patched/docs/FONTS.md @@ -8,45 +8,122 @@ a 13 pixels high, pixel-perfect font used by default. We embed it in the source You may also load external .TTF/.OTF files. In the [misc/fonts/](https://github.com/ocornut/imgui/tree/master/misc/fonts) folder you can find a few suggested fonts, provided as a convenience. -**Also read the FAQ:** https://www.dearimgui.org/faq (there is a Fonts section!) +**Also read the FAQ:** https://www.dearimgui.com/faq (there is a Fonts section!) ## Index - [Readme First](#readme-first) +- [About Filenames](#about-filenames) +- [About UTF-8 Encoding](#about-utf-8-encoding) +- [Debug Tools](#debug-tools) - [How should I handle DPI in my application?](#how-should-i-handle-dpi-in-my-application) -- [Fonts Loading Instructions](#font-loading-instructions) +- [Fonts Loading Instructions](#fonts-loading-instructions) - [Using Icon Fonts](#using-icon-fonts) - [Using FreeType Rasterizer (imgui_freetype)](#using-freetype-rasterizer-imgui_freetype) - [Using Colorful Glyphs/Emojis](#using-colorful-glyphsemojis) - [Using Custom Glyph Ranges](#using-custom-glyph-ranges) - [Using Custom Colorful Icons](#using-custom-colorful-icons) - [Using Font Data Embedded In Source Code](#using-font-data-embedded-in-source-code) -- [About filenames](#about-filenames) - [Credits/Licenses For Fonts Included In Repository](#creditslicenses-for-fonts-included-in-repository) - [Font Links](#font-links) --------------------------------------- - ## Readme First -- You can use the `Metrics/Debugger` window (available in `Demo>Tools`) to browse your fonts and understand what's going on if you have an issue. You can also reach it in `Demo->Tools->Style Editor->Fonts`. The same information are also available in the Style Editor under Fonts. +## Readme First + +**A vast majority of font and text related issues encountered comes from 3 things:** +- Invalid filename due to use of `\` or unexpected working directory. See [About Filenames](#about-filenames). AddFontXXX functions should assert if the filename is incorrect. +- Invalid UTF-8 encoding of your non-ASCII strings. See [About UTF-8 Encoding](#about-utf-8-encoding). Use the encoding viewer to confirm yours is correct. +- You need to load a font with explicit glyph ranges if you want to use non-ASCII characters. See [Fonts Loading Instructions](#fonts-loading-instructions). Use Metrics/Debugger->Fonts to confirm loaded fonts and loaded glyph ranges. + +The third point is a current constraint of Dear ImGui (which we will lift in the future): when loading a font you need to specify which characters glyphs to load. +All loaded fonts glyphs are rendered into a single texture atlas ahead of time. Calling either of `io.Fonts->GetTexDataAsAlpha8()`, `io.Fonts->GetTexDataAsRGBA32()` or `io.Fonts->Build()` will build the atlas. This is generally called by the Renderer backend, e.g. `ImGui_ImplDX11_NewFrame()` calls it. + +**If you use custom glyphs ranges, make sure the array is persistent** and available during the calls to `GetTexDataAsAlpha8()/GetTexDataAsRGBA32()/Build()`. + +##### [Return to Index](#index) + +## About Filenames + +**Please note that many new C/C++ users have issues loading their files _because the filename they provide is wrong_ due to incorrect assumption of what is the current directory.** + +Two things to watch for: + +(1) In C/C++ and most programming languages if you want to use a backslash `\` within a string literal, you need to write it double backslash `\\`. At it happens, Windows uses backslashes as a path separator, so be mindful. +```cpp +io.Fonts->AddFontFromFileTTF("MyFiles\MyImage01.jpg", ...); // This is INCORRECT!! +io.Fonts->AddFontFromFileTTF("MyFiles\\MyImage01.jpg", ...); // This is CORRECT +``` +In some situations, you may also use `/` path separator under Windows. + +(2) Make sure your IDE/debugger settings starts your executable from the right working (current) directory. In Visual Studio you can change your working directory in project `Properties > General > Debugging > Working Directory`. People assume that their execution will start from the root folder of the project, where by default it often starts from the folder where object or executable files are stored. +```cpp +io.Fonts->AddFontFromFileTTF("MyImage01.jpg", ...); // Relative filename depends on your Working Directory when running your program! +io.Fonts->AddFontFromFileTTF("../MyImage01.jpg", ...); // Load from the parent folder of your Working Directory +``` +##### [Return to Index](#index) + + +## About UTF-8 Encoding + +**For non-ASCII characters display, a common user issue is not passing correctly UTF-8 encoded strings.** + +(1) We provide a function `ImGui::DebugTextEncoding(const char* text)` which you can call to verify the content of your UTF-8 strings. +This is a convenient way to confirm that your encoding is correct. + +```cpp +ImGui::SeparatorText("CORRECT"); +ImGui::DebugTextEncoding(u8"こんにちは"); + +ImGui::SeparatorText("INCORRECT"); +ImGui::DebugTextEncoding("こんにちは"); +``` +![UTF-8 Encoding viewer](https://github.com/ocornut/imgui/assets/8225057/61c1696a-9a94-46c5-9627-cf91211111f0) + +You can also find this tool under `Metrics/Debuggers->Tools->UTF-8 Encoding viewer` if you want to paste from clipboard, but this won't validate the UTF-8 encoding done by your compiler. + +(2) To encode in UTF-8: + +There are also compiler-specific ways to enforce UTF-8 encoding by default: + +- Visual Studio compiler: `/utf-8` command-line flag. +- Visual Studio compiler: `#pragma execution_character_set("utf-8")` inside your code. +- Since May 2023 we have changed the Visual Studio projects of all our examples to use `/utf-8` ([see commit](https://github.com/ocornut/imgui/commit/513af1efc9080857bbd10000d98f98f2a0c96803)). + +Or, since C++11, you can use the `u8"my text"` syntax to encode literal strings as UTF-8. e.g.: +```cpp +ImGui::Text(u8"hello"); +ImGui::Text(u8"こんにちは"); // this will always be encoded as UTF-8 +ImGui::Text("こんにちは"); // the encoding of this is depending on compiler settings/flags and may be incorrect. +``` + +Since C++20, because the C++ committee hate its users, they decided to change the `u8""` syntax to not return `const char*` but a new type `const char_t*` which doesn't cast to `const char*`. +Because of type usage of `u8""` in C++20 is a little more tedious: +```cpp +ImGui::Text((const char*)u8"こんにちは"); +``` +We suggest using a macro in your codebase: +```cpp +#define U8(_S) (const char*)u8##_S +ImGui::Text(U8("こんにちは")); +``` +##### [Return to Index](#index) + + +## Debug Tools + +#### Metrics/Debugger->Fonts +You can use the `Metrics/Debugger` window (available in `Demo>Tools`) to browse your fonts and understand what's going on if you have an issue. You can also reach it in `Demo->Tools->Style Editor->Fonts`. The same information are also available in the Style Editor under Fonts. ![Fonts debugging](https://user-images.githubusercontent.com/8225057/135429892-0e41ef8d-33c5-4991-bcf6-f997a0bcfd6b.png) -- You can use the `UTF-8 Encoding viewer` in `Metrics/Debugger` to verify the content of your UTF-8 strings. From C/C++ code, you can call `ImGui::DebugTextEncoding("my string");` function to verify that your UTF-8 encoding is correct. +#### UTF-8 Encoding Viewer** +You can use the `UTF-8 Encoding viewer` in `Metrics/Debugger` to verify the content of your UTF-8 strings. From C/C++ code, you can call `ImGui::DebugTextEncoding("my string");` function to verify that your UTF-8 encoding is correct. ![UTF-8 Encoding viewer](https://user-images.githubusercontent.com/8225057/166505963-8a0d7899-8ee8-4558-abb2-1ae523dc02f9.png) -- All loaded fonts glyphs are rendered into a single texture atlas ahead of time. Calling either of `io.Fonts->GetTexDataAsAlpha8()`, `io.Fonts->GetTexDataAsRGBA32()` or `io.Fonts->Build()` will build the atlas. - -- Make sure your font ranges data are persistent (available during the calls to `GetTexDataAsAlpha8()`/`GetTexDataAsRGBA32()/`Build()`. - -- Use C++11 u8"my text" syntax to encode literal strings as UTF-8. e.g.: -```cpp -u8"hello" -u8"こんにちは" // this will be encoded as UTF-8 -``` - ##### [Return to Index](#index) + ## How should I handle DPI in my application? See [FAQ entry](https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#q-how-should-i-handle-dpi-in-my-application). @@ -54,7 +131,7 @@ See [FAQ entry](https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#q-how-s ##### [Return to Index](#index) -## Font Loading Instructions +## Fonts Loading Instructions **Load default font:** ```cpp @@ -62,7 +139,6 @@ ImGuiIO& io = ImGui::GetIO(); io.Fonts->AddFontDefault(); ``` - **Load .TTF/.OTF file with:** ```cpp ImGuiIO& io = ImGui::GetIO(); @@ -70,7 +146,6 @@ io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels); ``` If you get an assert stating "Could not load font file!", your font filename is likely incorrect. Read "[About filenames](#about-filenames)" carefully. - **Load multiple fonts:** ```cpp // Init @@ -86,7 +161,6 @@ ImGui::Text("Hello with another font"); ImGui::PopFont(); ``` - **For advanced options create a ImFontConfig structure and pass it to the AddFont() function (it will be copied internally):** ```cpp ImFontConfig config; @@ -96,7 +170,6 @@ config.GlyphExtraSpacing.x = 1.0f; ImFont* font = io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, &config); ``` - **Combine multiple fonts into one:** ```cpp // Load a first font @@ -117,13 +190,13 @@ io.Fonts->Build(); ```cpp // Basic Latin, Extended Latin -io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, NULL, io.Fonts->GetGlyphRangesDefault()); +io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, nullptr, io.Fonts->GetGlyphRangesDefault()); // Default + Selection of 2500 Ideographs used by Simplified Chinese -io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, NULL, io.Fonts->GetGlyphRangesChineseSimplifiedCommon()); +io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, nullptr, io.Fonts->GetGlyphRangesChineseSimplifiedCommon()); // Default + Hiragana, Katakana, Half-Width, Selection of 1946 Ideographs -io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, NULL, io.Fonts->GetGlyphRangesJapanese()); +io.Fonts->AddFontFromFileTTF("font.ttf", size_pixels, nullptr, io.Fonts->GetGlyphRangesJapanese()); ``` See [Using Custom Glyph Ranges](#using-custom-glyph-ranges) section to create your own ranges. @@ -132,7 +205,7 @@ See [Using Custom Glyph Ranges](#using-custom-glyph-ranges) section to create yo ```cpp ImGuiIO& io = ImGui::GetIO(); -io.Fonts->AddFontFromFileTTF("NotoSansCJKjp-Medium.otf", 20.0f, NULL, io.Fonts->GetGlyphRangesJapanese()); +io.Fonts->AddFontFromFileTTF("NotoSansCJKjp-Medium.otf", 20.0f, nullptr, io.Fonts->GetGlyphRangesJapanese()); ``` ```cpp ImGui::Text(u8"こんにちは!テスト %d", 123); @@ -149,7 +222,7 @@ ImGui::SliderFloat("float", &f, 0.0f, 1.0f); **Font Atlas too large?** -- If you have very large number of glyphs or multiple fonts, the texture may become too big for your graphics API. The typical result of failing to upload a texture is if every glyphs appears as white rectangles. +- If you have very large number of glyphs or multiple fonts, the texture may become too big for your graphics API. The typical result of failing to upload a texture is if every glyph appears as a white rectangle. - Mind the fact that some graphics drivers have texture size limitation. If you are building a PC application, mind the fact that your users may use hardware with lower limitations than yours. Some solutions: @@ -245,7 +318,7 @@ builder.AddChar(0x7262); // Add a specific charact builder.AddRanges(io.Fonts->GetGlyphRangesJapanese()); // Add one of the default ranges builder.BuildRanges(&ranges); // Build the final result (ordered ranges with all the unique characters submitted) -io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, NULL, ranges.Data); +io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, nullptr, ranges.Data); io.Fonts->Build(); // Build the atlas while 'ranges' is still in scope and not deleted. ``` @@ -271,14 +344,14 @@ rect_ids[1] = io.Fonts->AddCustomRectFontGlyph(font, 'b', 13, 13, 13+1); io.Fonts->Build(); // Retrieve texture in RGBA format -unsigned char* tex_pixels = NULL; +unsigned char* tex_pixels = nullptr; int tex_width, tex_height; io.Fonts->GetTexDataAsRGBA32(&tex_pixels, &tex_width, &tex_height); for (int rect_n = 0; rect_n < IM_ARRAYSIZE(rect_ids); rect_n++) { - int rect_id = rects_ids[rect_n]; - if (const ImFontAtlas::CustomRect* rect = io.Fonts->GetCustomRectByIndex(rect_id)) + int rect_id = rect_ids[rect_n]; + if (const ImFontAtlasCustomRect* rect = io.Fonts->GetCustomRectByIndex(rect_id)) { // Fill the custom rectangle with red pixels (in reality you would draw/copy your bitmap data here!) for (int y = 0; y < rect->Height; y++) @@ -311,28 +384,6 @@ ImFont* font = io.Fonts->AddFontFromMemoryCompressedBase85TTF(compressed_data_ba ##### [Return to Index](#index) -## About filenames - -**Please note that many new C/C++ users have issues loading their files _because the filename they provide is wrong_.** - -Two things to watch for: -- Make sure your IDE/debugger settings starts your executable from the right working directory. In Visual Studio you can change your working directory in project `Properties > General > Debugging > Working Directory`. People assume that their execution will start from the root folder of the project, where by default it oftens start from the folder where object or executable files are stored. -```cpp -// Relative filename depends on your Working Directory when running your program! -io.Fonts->AddFontFromFileTTF("MyImage01.jpg", ...); - -// Load from the parent folder of your Working Directory -io.Fonts->AddFontFromFileTTF("../MyImage01.jpg", ...); -``` -- In C/C++ and most programming languages if you want to use a backslash `\` within a string literal, you need to write it double backslash `\\`. At it happens, Windows uses backslashes as a path separator, so be mindful. -```cpp -io.Fonts->AddFontFromFileTTF("MyFiles\MyImage01.jpg", ...); // This is INCORRECT!! -io.Fonts->AddFontFromFileTTF("MyFiles\\MyImage01.jpg", ...); // This is CORRECT -``` -In some situations, you may also use `/` path separator under Windows. - -##### [Return to Index](#index) - ## Credits/Licenses For Fonts Included In Repository Some fonts files are available in the `misc/fonts/` folder: diff --git a/extern/imgui_patched/docs/README.md b/extern/imgui_patched/docs/README.md index 305466a4..c3159d36 100644 --- a/extern/imgui_patched/docs/README.md +++ b/extern/imgui_patched/docs/README.md @@ -5,49 +5,45 @@ Dear ImGui ---- -[![Build Status](https://github.com/ocornut/imgui/workflows/build/badge.svg)](https://github.com/ocornut/imgui/actions?workflow=build) [![Static Analysis Status](https://github.com/ocornut/imgui/workflows/static-analysis/badge.svg)](https://github.com/ocornut/imgui/actions?workflow=static-analysis) +[![Build Status](https://github.com/ocornut/imgui/workflows/build/badge.svg)](https://github.com/ocornut/imgui/actions?workflow=build) [![Static Analysis Status](https://github.com/ocornut/imgui/workflows/static-analysis/badge.svg)](https://github.com/ocornut/imgui/actions?workflow=static-analysis) [![Tests Status](https://github.com/ocornut/imgui_test_engine/workflows/tests/badge.svg)](https://github.com/ocornut/imgui_test_engine/actions?workflow=tests) (This library is available under a free and permissive license, but needs financial support to sustain its continued improvements. In addition to maintenance and stability there are many desirable features yet to be added. If your company is using Dear ImGui, please consider reaching out.) -Businesses: support continued development and maintenance via invoiced technical support, maintenance, sponsoring contracts: +Businesses: support continued development and maintenance via invoiced sponsoring/support contracts:
      _E-mail: contact @ dearimgui dot com_ - -Individuals: support continued development and maintenance [here](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WGHNC6MBFLZ2S). Also see [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors) page. +
    Individuals: support continued development and maintenance [here](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WGHNC6MBFLZ2S). Also see [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors) page. | [The Pitch](#the-pitch) - [Usage](#usage) - [How it works](#how-it-works) - [Releases & Changelogs](#releases--changelogs) - [Demo](#demo) - [Integration](#integration) | :----------------------------------------------------------: | -| [Upcoming changes](#upcoming-changes) - [Gallery](#gallery) - [Support, FAQ](#support-frequently-asked-questions-faq) - [How to help](#how-to-help) - [Sponsors](#sponsors) - [Credits](#credits) - [License](#license) | +| [Gallery](#gallery) - [Support, FAQ](#support-frequently-asked-questions-faq) - [How to help](#how-to-help) - [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors) - [Credits](#credits) - [License](#license) | | [Wiki](https://github.com/ocornut/imgui/wiki) - [Languages & frameworks backends/bindings](https://github.com/ocornut/imgui/wiki/Bindings) - [Software using Dear ImGui](https://github.com/ocornut/imgui/wiki/Software-using-dear-imgui) - [User quotes](https://github.com/ocornut/imgui/wiki/Quotes) | ### The Pitch -Dear ImGui is a **bloat-free graphical user interface library for C++**. It outputs optimized vertex buffers that you can render anytime in your 3D-pipeline enabled application. It is fast, portable, renderer agnostic and self-contained (no external dependencies). +Dear ImGui is a **bloat-free graphical user interface library for C++**. It outputs optimized vertex buffers that you can render anytime in your 3D-pipeline-enabled application. It is fast, portable, renderer agnostic, and self-contained (no external dependencies). -Dear ImGui is designed to **enable fast iterations** and to **empower programmers** to create **content creation tools and visualization / debug tools** (as opposed to UI for the average end-user). It favors simplicity and productivity toward this goal, and lacks certain features normally found in more high-level libraries. +Dear ImGui is designed to **enable fast iterations** and to **empower programmers** to create **content creation tools and visualization / debug tools** (as opposed to UI for the average end-user). It favors simplicity and productivity toward this goal and lacks certain features commonly found in more high-level libraries. -Dear ImGui is particularly suited to integration in games engine (for tooling), real-time 3D applications, fullscreen applications, embedded applications, or any applications on consoles platforms where operating system features are non-standard. +Dear ImGui is particularly suited to integration in game engines (for tooling), real-time 3D applications, fullscreen applications, embedded applications, or any applications on console platforms where operating system features are non-standard. + - Minimize state synchronization. + - Minimize state storage on user side. + - Minimize setup and maintenance. + - Easy to use to create dynamic UI which are the reflection of a dynamic data set. - Easy to use to create code-driven and data-driven tools. - Easy to use to create ad hoc short-lived tools and long-lived, more elaborate tools. - Easy to hack and improve. - - Minimize setup and maintenance. - - Minimize state storage on user side. - - Minimize state synchronization. - Portable, minimize dependencies, run on target (consoles, phones, etc.). - Efficient runtime and memory consumption. - - Battle-tested, used by many major actors in the game industry. + - Battle-tested, used by [many major actors in the game industry](https://github.com/ocornut/imgui/wiki/Software-using-dear-imgui). ### Usage -**The core of Dear ImGui is self-contained within a few platform-agnostic files** which you can easily compile in your application/engine. They are all the files in the root folder of the repository (imgui*.cpp, imgui*.h). +**The core of Dear ImGui is self-contained within a few platform-agnostic files** which you can easily compile in your application/engine. They are all the files in the root folder of the repository (imgui*.cpp, imgui*.h). **No specific build process is required**. You can add the .cpp files into your existing project. -**No specific build process is required**. You can add the .cpp files to your existing project. +**Backends for a variety of graphics API and rendering platforms** are provided in the [backends/](https://github.com/ocornut/imgui/tree/master/backends) folder, along with example applications in the [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder. See the [Integration](#integration) section of this document for details. You may also create your own backend. Anywhere where you can render textured triangles, you can render Dear ImGui. -You will need a backend to integrate Dear ImGui in your app. The backend passes mouse/keyboard/gamepad inputs and variety of settings to Dear ImGui, and is in charge of rendering the resulting vertices. **Backends for a variety of graphics api and rendering platforms** are provided in the [backends/](https://github.com/ocornut/imgui/tree/master/backends) folder, along with example applications in the [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder. See the [Integration](#integration) section of this document for details. You may also create your own backend. Anywhere where you can render textured triangles, you can render Dear ImGui. - -After Dear ImGui is setup in your application, you can use it from \_anywhere\_ in your program loop: - -Code: +After Dear ImGui is set up in your application, you can use it from \_anywhere\_ in your program loop: ```cpp ImGui::Text("Hello, world %d", 123); if (ImGui::Button("Save")) @@ -55,10 +51,9 @@ if (ImGui::Button("Save")) ImGui::InputText("string", buf, IM_ARRAYSIZE(buf)); ImGui::SliderFloat("float", &f, 0.0f, 1.0f); ``` -Result: -
    ![sample code output (dark)](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v175/capture_readme_styles_0001.png) ![sample code output (light)](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v175/capture_readme_styles_0002.png) +![sample code output (dark, segoeui font, freetype)](https://user-images.githubusercontent.com/8225057/191050833-b7ecf528-bfae-4a9f-ac1b-f3d83437a2f4.png) +![sample code output (light, segoeui font, freetype)](https://user-images.githubusercontent.com/8225057/191050838-8742efd4-504d-4334-a9a2-e756d15bc2ab.png) -Code: ```cpp // Create a window called "My First Tool", with a menu bar. ImGui::Begin("My First Tool", &my_tool_active, ImGuiWindowFlags_MenuBar); @@ -74,12 +69,14 @@ if (ImGui::BeginMenuBar()) ImGui::EndMenuBar(); } -// Edit a color (stored as ~4 floats) +// Edit a color stored as 4 floats ImGui::ColorEdit4("Color", my_color); -// Plot some values -const float my_values[] = { 0.2f, 0.1f, 1.0f, 0.5f, 0.9f, 2.2f }; -ImGui::PlotLines("Frame Times", my_values, IM_ARRAYSIZE(my_values)); +// Generate samples and plot them +float samples[100]; +for (int n = 0; n < 100; n++) + samples[n] = sinf(n * 0.2f + ImGui::GetTime() * 1.5f); +ImGui::PlotLines("Samples", samples, 100); // Display contents in a scrolling region ImGui::TextColored(ImVec4(1,1,0,1), "Important Stuff"); @@ -89,82 +86,63 @@ for (int n = 0; n < 50; n++) ImGui::EndChild(); ImGui::End(); ``` -Result: -
    ![sample code output](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v180/code_sample_04_color.gif) +![my_first_tool_v188](https://user-images.githubusercontent.com/8225057/191055698-690a5651-458f-4856-b5a9-e8cc95c543e2.gif) -Dear ImGui allows you to **create elaborate tools** as well as very short-lived ones. On the extreme side of short-livedness: using the Edit&Continue (hot code reload) feature of modern compilers you can add a few widgets to tweaks variables while your application is running, and remove the code a minute later! Dear ImGui is not just for tweaking values. You can use it to trace a running algorithm by just emitting text commands. You can use it along with your own reflection data to browse your dataset live. You can use it to expose the internals of a subsystem in your engine, to create a logger, an inspection tool, a profiler, a debugger, an entire game making editor/framework, etc. +Dear ImGui allows you to **create elaborate tools** as well as very short-lived ones. On the extreme side of short-livedness: using the Edit&Continue (hot code reload) feature of modern compilers you can add a few widgets to tweak variables while your application is running, and remove the code a minute later! Dear ImGui is not just for tweaking values. You can use it to trace a running algorithm by just emitting text commands. You can use it along with your own reflection data to browse your dataset live. You can use it to expose the internals of a subsystem in your engine, to create a logger, an inspection tool, a profiler, a debugger, an entire game-making editor/framework, etc. ### How it works -Check out the Wiki's [About the IMGUI paradigm](https://github.com/ocornut/imgui/wiki#about-the-imgui-paradigm) section if you want to understand the core principles behind the IMGUI paradigm. An IMGUI tries to minimize superfluous state duplication, state synchronization and state retention from the user's point of view. It is less error prone (less code and less bugs) than traditional retained-mode interfaces, and lends itself to create dynamic user interfaces. +Check out the Wiki's [About the IMGUI paradigm](https://github.com/ocornut/imgui/wiki#about-the-imgui-paradigm) section if you want to understand the core principles behind the IMGUI paradigm. An IMGUI tries to minimize superfluous state duplication, state synchronization, and state retention from the user's point of view. It is less error-prone (less code and fewer bugs) than traditional retained-mode interfaces, and lends itself to creating dynamic user interfaces. Dear ImGui outputs vertex buffers and command lists that you can easily render in your application. The number of draw calls and state changes required to render them is fairly small. Because Dear ImGui doesn't know or touch graphics state directly, you can call its functions anywhere in your code (e.g. in the middle of a running algorithm, or in the middle of your own rendering process). Refer to the sample applications in the examples/ folder for instructions on how to integrate Dear ImGui with your existing codebase. -_A common misunderstanding is to mistake immediate mode gui for immediate mode rendering, which usually implies hammering your driver/GPU with a bunch of inefficient draw calls and state changes as the gui functions are called. This is NOT what Dear ImGui does. Dear ImGui outputs vertex buffers and a small list of draw calls batches. It never touches your GPU directly. The draw call batches are decently optimal and you can render them later, in your app or even remotely._ +_A common misunderstanding is to mistake immediate mode GUI for immediate mode rendering, which usually implies hammering your driver/GPU with a bunch of inefficient draw calls and state changes as the GUI functions are called. This is NOT what Dear ImGui does. Dear ImGui outputs vertex buffers and a small list of draw calls batches. It never touches your GPU directly. The draw call batches are decently optimal and you can render them later, in your app or even remotely._ ### Releases & Changelogs -See [Releases](https://github.com/ocornut/imgui/releases) page. +See [Releases](https://github.com/ocornut/imgui/releases) page for decorated Changelogs. Reading the changelogs is a good way to keep up to date with the things Dear ImGui has to offer, and maybe will give you ideas of some features that you've been ignoring until now! ### Demo -Calling the `ImGui::ShowDemoWindow()` function will create a demo window showcasing variety of features and examples. The code is always available for reference in `imgui_demo.cpp`. +Calling the `ImGui::ShowDemoWindow()` function will create a demo window showcasing a variety of features and examples. The code is always available for reference in `imgui_demo.cpp`. [Here's how the demo looks](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v167/v167-misc.png). -![screenshot demo](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v167/v167-misc.png) +You should be able to build the examples from sources. If you don't, let us know! If you want to have a quick look at some Dear ImGui features, you can download Windows binaries of the demo app here: +- [imgui-demo-binaries-20220504.zip](https://www.dearimgui.com/binaries/imgui-demo-binaries-20220504.zip) (Windows, 1.88 WIP, built 2022/05/04, master) or [older binaries](https://www.dearimgui.com/binaries). -You should be able to build the examples from sources (tested on Windows/Mac/Linux). If you don't, let us know! If you want to have a quick look at some Dear ImGui features, you can download Windows binaries of the demo app here: -- [imgui-demo-binaries-20220504.zip](https://www.dearimgui.org/binaries/imgui-demo-binaries-20220504.zip) (Windows, 1.88 WIP, built 2022/05/04, master branch) or [older demo binaries](https://www.dearimgui.org/binaries). - -The demo applications are not DPI aware so expect some blurriness on a 4K screen. For DPI awareness in your application, you can load/reload your font at different scale, and scale your style with `style.ScaleAllSizes()` (see [FAQ](https://www.dearimgui.org/faq)). +The demo applications are not DPI aware so expect some blurriness on a 4K screen. For DPI awareness in your application, you can load/reload your font at a different scale and scale your style with `style.ScaleAllSizes()` (see [FAQ](https://www.dearimgui.com/faq)). ### Integration -On most platforms and when using C++, **you should be able to use a combination of the [imgui_impl_xxxx](https://github.com/ocornut/imgui/tree/master/backends) backends without modification** (e.g. `imgui_impl_win32.cpp` + `imgui_impl_dx11.cpp`). If your engine supports multiple platforms, consider using more of the imgui_impl_xxxx files instead of rewriting them: this will be less work for you and you can get Dear ImGui running immediately. You can _later_ decide to rewrite a custom backend using your custom engine functions if you wish so. +On most platforms and when using C++, **you should be able to use a combination of the [imgui_impl_xxxx](https://github.com/ocornut/imgui/tree/master/backends) backends without modification** (e.g. `imgui_impl_win32.cpp` + `imgui_impl_dx11.cpp`). If your engine supports multiple platforms, consider using more imgui_impl_xxxx files instead of rewriting them: this will be less work for you, and you can get Dear ImGui running immediately. You can _later_ decide to rewrite a custom backend using your custom engine functions if you wish so. -Integrating Dear ImGui within your custom engine is a matter of 1) wiring mouse/keyboard/gamepad inputs 2) uploading one texture to your GPU/render engine 3) providing a render function that can bind textures and render textured triangles. The [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder is populated with applications doing just that. If you are an experienced programmer at ease with those concepts, it should take you less than two hours to integrate Dear ImGui in your custom engine. **Make sure to spend time reading the [FAQ](https://www.dearimgui.org/faq), comments, and some of the examples/ application!** +Integrating Dear ImGui within your custom engine is a matter of 1) wiring mouse/keyboard/gamepad inputs 2) uploading a texture to your GPU/render engine 3) providing a render function that can bind textures and render textured triangles. The [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder is populated with applications doing just that. If you are an experienced programmer at ease with those concepts, it should take you less than two hours to integrate Dear ImGui into your custom engine. **Make sure to spend time reading the [FAQ](https://www.dearimgui.com/faq), comments, and the examples applications!** Officially maintained backends/bindings (in repository): - Renderers: DirectX9, DirectX10, DirectX11, DirectX12, Metal, OpenGL/ES/ES2, SDL_Renderer, Vulkan, WebGPU. -- Platforms: GLFW, SDL2, Win32, Glut, OSX, Android. +- Platforms: GLFW, SDL2/SDL3, Win32, Glut, OSX, Android. - Frameworks: Allegro5, Emscripten. [Third-party backends/bindings](https://github.com/ocornut/imgui/wiki/Bindings) wiki page: - Languages: C, C# and: Beef, ChaiScript, Crystal, D, Go, Haskell, Haxe/hxcpp, Java, JavaScript, Julia, Kotlin, Lobster, Lua, Odin, Pascal, PureBasic, Python, Ruby, Rust, Swift... - Frameworks: AGS/Adventure Game Studio, Amethyst, Blender, bsf, Cinder, Cocos2d-x, Diligent Engine, Flexium, GML/Game Maker Studio2, GLEQ, Godot, GTK3+OpenGL3, Irrlicht Engine, LÖVE+LUA, Magnum, Monogame, NanoRT, nCine, Nim Game Lib, Nintendo 3DS & Switch (homebrew), Ogre, openFrameworks, OSG/OpenSceneGraph, Orx, Photoshop, px_render, Qt/QtDirect3D, SDL_Renderer, SFML, Sokol, Unity, Unreal Engine 4, vtk, VulkanHpp, VulkanSceneGraph, Win32 GDI, WxWidgets. -- Note that C bindings ([cimgui](https://github.com/cimgui/cimgui)) are auto-generated, you can use its json/lua output to generate bindings for other languages. +- Many bindings are auto-generated (by good old [cimgui](https://github.com/cimgui/cimgui) or newer/experimental [dear_bindings](https://github.com/dearimgui/dear_bindings)), you can use their metadata output to generate bindings for other languages. [Useful Extensions/Widgets](https://github.com/ocornut/imgui/wiki/Useful-Extensions) wiki page: -- Text editors, node editors, timeline editors, plotting, software renderers, remote network access, memory editors, gizmos etc. +- Automation/testing, Text editors, node editors, timeline editors, plotting, software renderers, remote network access, memory editors, gizmos, etc. One of the most notable and well supported extension is [ImPlot](https://github.com/epezent/implot). Also see [Wiki](https://github.com/ocornut/imgui/wiki) for more links and ideas. -### Upcoming Changes - -Some of the goals for 2022 are: -- Work on Docking (see [#2109](https://github.com/ocornut/imgui/issues/2109), in public [docking](https://github.com/ocornut/imgui/tree/docking) branch) -- Work on Multi-Viewport / Multiple OS windows. (see [#1542](https://github.com/ocornut/imgui/issues/1542), in public [docking](https://github.com/ocornut/imgui/tree/docking) branch looking for feedback) -- Work on gamepad/keyboard controls. (see [#787](https://github.com/ocornut/imgui/issues/787)) -- Work on automation and testing system, both to test the library and end-user apps. (see [#435](https://github.com/ocornut/imgui/issues/435)) -- Make the examples look better, improve styles, improve font support, make the examples hi-DPI and multi-DPI aware. - ### Gallery -For more user-submitted screenshots of projects using Dear ImGui, check out the [Gallery Threads](https://github.com/ocornut/imgui/issues/5243)! +For more user-submitted screenshots of projects using Dear ImGui, check out the [Gallery Threads](https://github.com/ocornut/imgui/issues/6478)! For a list of third-party widgets and extensions, check out the [Useful Extensions/Widgets](https://github.com/ocornut/imgui/wiki/Useful-Extensions) wiki page. -Custom engine [ehre](https://github.com/tksuoran/erhe) (docking branch) -[![ehre](https://user-images.githubusercontent.com/8225057/166686854-3f76bf28-0442-4fac-8e65-9fc9650d2ed0.jpg)](https://user-images.githubusercontent.com/994606/147875067-a848991e-2ad2-4fd3-bf71-4aeb8a547bcf.png) - -Custom engine for [Wonder Boy: The Dragon's Trap](http://www.TheDragonsTrap.com) (2017) -[![screenshot game](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v149/gallery_TheDragonsTrap-01-thumb.jpg)](https://cloud.githubusercontent.com/assets/8225057/20628927/33e14cac-b329-11e6-80f6-9524e93b048a.png) - -Custom engine (untitled) -[![screenshot tool](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v160/editor_white_preview.jpg)](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v160/editor_white.png) - -[Tracy Profiler](https://github.com/wolfpld/tracy) -![tracy profiler](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v176/tracy_profiler.png) +| | | +|--|--| +| Custom engine [erhe](https://github.com/tksuoran/erhe) (docking branch)
    [![erhe](https://user-images.githubusercontent.com/8225057/190203358-6988b846-0686-480e-8663-1311fbd18abd.jpg)](https://user-images.githubusercontent.com/994606/147875067-a848991e-2ad2-4fd3-bf71-4aeb8a547bcf.png) | Custom engine for [Wonder Boy: The Dragon's Trap](http://www.TheDragonsTrap.com) (2017)
    [![the dragon's trap](https://user-images.githubusercontent.com/8225057/190203379-57fcb80e-4aec-4fec-959e-17ddd3cd71e5.jpg)](https://cloud.githubusercontent.com/assets/8225057/20628927/33e14cac-b329-11e6-80f6-9524e93b048a.png) | +| Custom engine (untitled)
    [![editor white](https://user-images.githubusercontent.com/8225057/190203393-c5ac9f22-b900-4d1e-bfeb-6027c63e3d92.jpg)](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v160/editor_white.png) | Tracy Profiler ([github](https://github.com/wolfpld/tracy))
    [![tracy profiler](https://user-images.githubusercontent.com/8225057/190203401-7b595f6e-607c-44d3-97ea-4c2673244dfb.jpg)](https://raw.githubusercontent.com/wiki/ocornut/imgui/web/v176/tracy_profiler.png) | ### Support, Frequently Asked Questions (FAQ) @@ -174,55 +152,38 @@ See: [Wiki](https://github.com/ocornut/imgui/wiki) for many links, references, a See: [Articles about the IMGUI paradigm](https://github.com/ocornut/imgui/wiki#about-the-imgui-paradigm) to read/learn about the Immediate Mode GUI paradigm. -Getting started? For first-time users having issues compiling/linking/running or issues loading fonts, please use [GitHub Discussions](https://github.com/ocornut/imgui/discussions). +See: [Upcoming Changes](https://github.com/ocornut/imgui/wiki/Upcoming-Changes). -For other questions, bug reports, requests, feedback, you may post on [GitHub Issues](https://github.com/ocornut/imgui/issues). Please read and fill the New Issue template carefully. +See: [Dear ImGui Test Engine + Test Suite](https://github.com/ocornut/imgui_test_engine) for Automation & Testing. + +Getting started? For first-time users having issues compiling/linking/running or issues loading fonts, please use [GitHub Discussions](https://github.com/ocornut/imgui/discussions). For other questions, bug reports, requests, feedback, you may post on [GitHub Issues](https://github.com/ocornut/imgui/issues). Please read and fill the New Issue template carefully. Private support is available for paying business customers (E-mail: _contact @ dearimgui dot com_). **Which version should I get?** -We occasionally tag [Releases](https://github.com/ocornut/imgui/releases) but it is generally safe and recommended to sync to master/latest. The library is fairly stable and regressions tend to be fixed fast when reported. - -Advanced users may want to use the `docking` branch with [Multi-Viewport](https://github.com/ocornut/imgui/issues/1542) and [Docking](https://github.com/ocornut/imgui/issues/2109) features. This branch is kept in sync with master regularly. +We occasionally tag [Releases](https://github.com/ocornut/imgui/releases) (with nice releases notes) but it is generally safe and recommended to sync to master/latest. The library is fairly stable and regressions tend to be fixed fast when reported. Advanced users may want to use the `docking` branch with [Multi-Viewport](https://github.com/ocornut/imgui/issues/1542) and [Docking](https://github.com/ocornut/imgui/issues/2109) features. This branch is kept in sync with master regularly. **Who uses Dear ImGui?** -See the [Quotes](https://github.com/ocornut/imgui/wiki/Quotes), [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors), [Software using dear imgui](https://github.com/ocornut/imgui/wiki/Software-using-dear-imgui) Wiki pages for an idea of who is using Dear ImGui. Please add your game/software if you can! Also see the [Gallery Threads](https://github.com/ocornut/imgui/issues/5243)! +See the [Quotes](https://github.com/ocornut/imgui/wiki/Quotes), [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors), and [Software using Dear ImGui](https://github.com/ocornut/imgui/wiki/Software-using-dear-imgui) Wiki pages for an idea of who is using Dear ImGui. Please add your game/software if you can! Also, see the [Gallery Threads](https://github.com/ocornut/imgui/issues/6478)! How to help ----------- **How can I help?** -- See [GitHub Forum/issues](https://github.com/ocornut/imgui/issues) and [Github Discussions](https://github.com/ocornut/imgui/discussions). -- You may help with development and submit pull requests! Please understand that by submitting a PR you are also submitting a request for the maintainer to review your code and then take over its maintenance forever. PR should be crafted both in the interest in the end-users and also to ease the maintainer into understanding and accepting it. +- See [GitHub Forum/Issues](https://github.com/ocornut/imgui/issues) and [GitHub Discussions](https://github.com/ocornut/imgui/discussions). +- You may help with development and submit pull requests! Please understand that by submitting a PR you are also submitting a request for the maintainer to review your code and then take over its maintenance forever. PR should be crafted both in the interest of the end-users and also to ease the maintainer into understanding and accepting it. - See [Help wanted](https://github.com/ocornut/imgui/wiki/Help-Wanted) on the [Wiki](https://github.com/ocornut/imgui/wiki/) for some more ideas. -- Have your company financially support this project (please reach by e-mail) - -**How can I help financing further development of Dear ImGui?** - -See [Sponsors](https://github.com/ocornut/imgui/wiki/Sponsors) page. +- Have your company financially support this project with invoiced sponsoring/support contracts or by buying a license for [Dear ImGui Test Engine](https://github.com/ocornut/imgui_test_engine) (please reach out: contact at dearimgui dot com). Sponsors -------- -Ongoing Dear ImGui development is currently financially supported in 2021-2022 by users and private sponsors: - -*Platinum-chocolate sponsors* -- [Blizzard](https://careers.blizzard.com/en-us/openings/engineering/all/all/all/1) - -*Double-chocolate sponsors* -- [Ubisoft](https://montreal.ubisoft.com/en/ubisoft-sponsors-user-interface-library-for-c-dear-imgui), [Supercell](https://supercell.com) - -*Chocolate sponsors* -- [Adobe](https://www.adobe.com/products/medium.html), [Aras Pranckevičius](https://aras-p.info), [Epic](https://www.unrealengine.com/en-US/megagrants), [G3Dvu](). - -*Salty-caramel sponsors* -- [Kylotonn](https://www.kylotonn.com), [O-Net Communications (USA)](http://en.o-netcom.com), [Wonderland Engine](https://wonderlandengine.com/). - -Please see [detailed list of current and past Dear ImGui supporters](https://github.com/ocornut/imgui/wiki/Sponsors) for more. -From November 2014 to December 2019, ongoing development has also been financially supported by its users on Patreon and through individual donations. +Ongoing Dear ImGui development is and has been financially supported by users and private sponsors. +
    Please see the **[detailed list of current and past Dear ImGui supporters](https://github.com/ocornut/imgui/wiki/Sponsors)** for details. +
    From November 2014 to December 2019, ongoing development has also been financially supported by its users on Patreon and through individual donations. **THANK YOU to all past and present supporters for helping to keep this project alive and thriving!** @@ -236,15 +197,14 @@ Credits Developed by [Omar Cornut](https://www.miracleworld.net) and every direct or indirect [contributors](https://github.com/ocornut/imgui/graphs/contributors) to the GitHub. The early version of this library was developed with the support of [Media Molecule](https://www.mediamolecule.com) and first used internally on the game [Tearaway](https://tearaway.mediamolecule.com) (PS Vita). -Recurring contributors (2022): Omar Cornut [@ocornut](https://github.com/ocornut), Rokas Kupstys [@rokups](https://github.com/rokups) (a large portion of work on automation systems, regression tests and other features are currently unpublished). +Recurring contributors (2022): Omar Cornut [@ocornut](https://github.com/ocornut), Rokas Kupstys [@rokups](https://github.com/rokups) (a good portion of work on automation system and regression tests now available in [Dear ImGui Test Engine](https://github.com/ocornut/imgui_test_engine)). -Sponsoring, support contracts and other B2B transactions are hosted and handled by [Lizardcube](https://www.lizardcube.com). +Sponsoring, support contracts and other B2B transactions are hosted and handled by [Disco Hello](https://www.discohello.com). Omar: "I first discovered the IMGUI paradigm at [Q-Games](https://www.q-games.com) where Atman Binstock had dropped his own simple implementation in the codebase, which I spent quite some time improving and thinking about. It turned out that Atman was exposed to the concept directly by working with Casey. When I moved to Media Molecule I rewrote a new library trying to overcome the flaws and limitations of the first one I've worked with. It became this library and since then I have spent an unreasonable amount of time iterating and improving it." Embeds [ProggyClean.ttf](http://upperbounds.net) font by Tristan Grimmer (MIT license). - -Embeds [stb_textedit.h, stb_truetype.h, stb_rect_pack.h](https://github.com/nothings/stb/) by Sean Barrett (public domain). +
    Embeds [stb_textedit.h, stb_truetype.h, stb_rect_pack.h](https://github.com/nothings/stb/) by Sean Barrett (public domain). Inspiration, feedback, and testing for early versions: Casey Muratori, Atman Binstock, Mikko Mononen, Emmanuel Briney, Stefan Kamoda, Anton Mikhailov, Matt Willis. Also thank you to everyone posting feedback, questions and patches on GitHub. diff --git a/extern/imgui_patched/docs/TODO.txt b/extern/imgui_patched/docs/TODO.txt index 002f56e5..2c67c26b 100644 --- a/extern/imgui_patched/docs/TODO.txt +++ b/extern/imgui_patched/docs/TODO.txt @@ -74,7 +74,7 @@ It's mostly a bunch of personal notes, probably incomplete. Feel free to query i - input text: reorganize event handling, allow CharFilter to modify buffers, allow multiple events? (#541) - input text: expose CursorPos in char filter event (#816) - input text: try usage idiom of using InputText with data only exposed through get/set accessors, without extraneous copy/alloc. (#3009) - - input text: access public fields via a non-callback API e.g. InputTextGetState("xxx") that may return NULL if not active (available in internals) + - input text: access public fields via a non-callback API e.g. InputTextGetState("xxx") that may return nullptr if not active (available in internals) - input text: flag to disable live update of the user buffer (also applies to float/int text input) (#701) - input text: hover tooltip could show unclamped text - input text: support for INSERT key to toggle overwrite mode. currently disabled because stb_textedit behavior is unsatisfactory on multi-line. (#2863) @@ -113,6 +113,8 @@ It's mostly a bunch of personal notes, probably incomplete. Feel free to query i - layout: (R&D) local multi-pass layout mode. - layout: (R&D) bind authored layout data (created by an off-line tool), items fetch their pos/size at submission, self-optimize data structures to stable linear access. + - tables: see https://github.com/ocornut/imgui/issues/2957#issuecomment-569726095 + - group: BeginGroup() needs a border option. (~#1496) - group: IsHovered() after EndGroup() covers whole AABB rather than the intersection of individual items. Is that desirable? - group: merge deactivation/activation within same group (fwd WasEdited flag). (#2550) @@ -321,7 +323,7 @@ It's mostly a bunch of personal notes, probably incomplete. Feel free to query i - font: fix AddRemapChar() to work before atlas has been built. - font: (api breaking) remove "TTF" from symbol names. also because it now supports OTF. - font/opt: Considering storing standalone AdvanceX table as 16-bit fixed point integer? - - font/opt: Glyph currently 40 bytes (2+9*4). Consider storing UV as 16 bits integer? (->32 bytes). X0/Y0/X1/Y1 as 16 fixed-point integers? Or X0/Y0 as float and X1/Y1 as fixed8_8? + - font/opt: Glyph currently 40 bytes (2+9*4). Consider storing UV as 16-bits integer? (->32 bytes). X0/Y0/X1/Y1 as 16 fixed-point integers? Or X0/Y0 as float and X1/Y1 as fixed8_8? - nav: some features such as PageUp/Down/Home/End should probably work without ImGuiConfigFlags_NavEnableKeyboard? (where do we draw the line? how about CTRL+Tab) ! nav: never clear NavId on some setup (e.g. gamepad centric) @@ -345,7 +347,7 @@ It's mostly a bunch of personal notes, probably incomplete. Feel free to query i - nav/menus: allow pressing Menu to leave a sub-menu. - nav/menus: a way to access the main menu bar with Alt? (currently needs CTRL+TAB) or last focused window menu bar? - nav/menus: when using the main menu bar, even though we restore focus after, the underlying window loses its title bar highlight during menu manipulation. could we prevent it? - - nav/menus: main menu bar currently cannot restore a NULL focus. Could save NavWindow at the time of being focused, similarly to what popup do? + - nav/menus: main menu bar currently cannot restore a nullptr focus. Could save NavWindow at the time of being focused, similarly to what popup do? - nav/menus: Alt,Up could open the first menu (e.g. "File") currently it tends to nav into the window/collapse menu. Do do that we would need custom transition? - nav/windowing: configure fade-in/fade-out delay on Ctrl+Tab? - nav/windowing: when CTRL+Tab/windowing is active, the HoveredWindow detection doesn't take account of the window display re-ordering. diff --git a/extern/imgui_patched/imconfig.h b/extern/imgui_patched/imconfig.h index 9a2aca4b..876cf32f 100644 --- a/extern/imgui_patched/imconfig.h +++ b/extern/imgui_patched/imconfig.h @@ -30,11 +30,11 @@ //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS //#define IMGUI_DISABLE_OBSOLETE_KEYIO // 1.87: disable legacy io.KeyMap[]+io.KeysDown[] in favor io.AddKeyEvent(). This will be folded into IMGUI_DISABLE_OBSOLETE_FUNCTIONS in a few versions. -//---- Disable all of Dear ImGui or don't implement standard windows. -// It is very strongly recommended to NOT disable the demo windows during development. Please read comments in imgui_demo.cpp. +//---- Disable all of Dear ImGui or don't implement standard windows/tools. +// It is very strongly recommended to NOT disable the demo windows and debug tool during development. They are extremely useful in day to day work. Please read comments in imgui_demo.cpp. //#define IMGUI_DISABLE // Disable everything: all headers and source files will be empty. -//#define IMGUI_DISABLE_DEMO_WINDOWS // Disable demo windows: ShowDemoWindow()/ShowStyleEditor() will be empty. Not recommended. -//#define IMGUI_DISABLE_METRICS_WINDOW // Disable metrics/debugger and other debug tools: ShowMetricsWindow() and ShowStackToolWindow() will be empty. +//#define IMGUI_DISABLE_DEMO_WINDOWS // Disable demo windows: ShowDemoWindow()/ShowStyleEditor() will be empty. +//#define IMGUI_DISABLE_DEBUG_TOOLS // Disable metrics/debugger and other debug tools: ShowMetricsWindow(), ShowDebugLogWindow() and ShowStackToolWindow() will be empty (this was called IMGUI_DISABLE_METRICS_WINDOW before 1.88). //---- Don't implement some functions to reduce linkage requirements. //#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // [Win32] Don't implement default clipboard handler. Won't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. (user32.lib/.a, kernel32.lib/.a) @@ -90,6 +90,8 @@ constexpr ImVec4(const MyVec4& f) : x(f.x), y(f.y), z(f.z), w(f.w) {} \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ +//---- ...Or use Dear ImGui's own very basic math operators. +//#define IMGUI_DEFINE_MATH_OPERATORS //---- Use 32-bit vertex indices (default is 16-bit) is one way to allow large meshes with more than 64K vertices. // Your renderer backend will need to support it (most example renderer backends support both 16/32-bit indices). @@ -108,11 +110,6 @@ //#define IM_DEBUG_BREAK IM_ASSERT(0) //#define IM_DEBUG_BREAK __debugbreak() -//---- Debug Tools: Have the Item Picker break in the ItemAdd() function instead of ItemHoverable(), -// (which comes earlier in the code, will catch a few extra items, allow picking items other than Hovered one.) -// This adds a small runtime cost which is why it is not enabled by default. -//#define IMGUI_DEBUG_TOOL_ITEM_PICKER_EX - //---- Debug Tools: Enable slower asserts //#define IMGUI_DEBUG_PARANOID diff --git a/extern/imgui_patched/imgui.cpp b/extern/imgui_patched/imgui.cpp index e2552fe2..90dc211f 100644 --- a/extern/imgui_patched/imgui.cpp +++ b/extern/imgui_patched/imgui.cpp @@ -1,17 +1,17 @@ -// dear imgui, 1.88 WIP +// dear imgui, v1.89.6 // (main code and documentation) // Help: -// - Read FAQ at http://dearimgui.org/faq +// - Read FAQ at http://dearimgui.com/faq // - Newcomers, read 'Programmer guide' below for notes on how to setup Dear ImGui in your codebase. // - Call and read ImGui::ShowDemoWindow() in imgui_demo.cpp. All applications in examples/ are doing that. // Read imgui.cpp for details, links and comments. // Resources: -// - FAQ http://dearimgui.org/faq +// - FAQ http://dearimgui.com/faq // - Homepage & latest https://github.com/ocornut/imgui // - Releases & changelog https://github.com/ocornut/imgui/releases -// - Gallery https://github.com/ocornut/imgui/issues/5243 (please post your screenshots/video there!) +// - Gallery https://github.com/ocornut/imgui/issues/6478 (please post your screenshots/video there!) // - Wiki https://github.com/ocornut/imgui/wiki (lots of good stuff there) // - Glossary https://github.com/ocornut/imgui/wiki/Glossary // - Issues & support https://github.com/ocornut/imgui/issues @@ -39,17 +39,16 @@ Index of this file: DOCUMENTATION - MISSION STATEMENT -- END-USER GUIDE +- CONTROLS GUIDE - PROGRAMMER GUIDE - READ FIRST - HOW TO UPDATE TO A NEWER VERSION OF DEAR IMGUI - GETTING STARTED WITH INTEGRATING DEAR IMGUI IN YOUR CODE/ENGINE - HOW A SIMPLE APPLICATION MAY LOOK LIKE - HOW A SIMPLE RENDERING FUNCTION MAY LOOK LIKE - - USING GAMEPAD/KEYBOARD NAVIGATION CONTROLS - API BREAKING CHANGES (read me when you update!) - FREQUENTLY ASKED QUESTIONS (FAQ) - - Read all answers online: https://www.dearimgui.org/faq, or in docs/FAQ.md (with a Markdown viewer) + - Read all answers online: https://www.dearimgui.com/faq, or in docs/FAQ.md (with a Markdown viewer) CODE (search for "[SECTION]" in the code to find them) @@ -65,10 +64,11 @@ CODE // [SECTION] MISC HELPERS/UTILITIES (Color functions) // [SECTION] ImGuiStorage // [SECTION] ImGuiTextFilter -// [SECTION] ImGuiTextBuffer +// [SECTION] ImGuiTextBuffer, ImGuiTextIndex // [SECTION] ImGuiListClipper // [SECTION] STYLING // [SECTION] RENDER HELPERS +// [SECTION] INITIALIZATION, SHUTDOWN // [SECTION] MAIN CODE (most of the code! lots of stuff, needs tidying up!) // [SECTION] INPUTS // [SECTION] ERROR CHECKING @@ -80,10 +80,12 @@ CODE // [SECTION] DRAG AND DROP // [SECTION] LOGGING/CAPTURING // [SECTION] SETTINGS +// [SECTION] LOCALIZATION // [SECTION] VIEWPORTS, PLATFORM WINDOWS // [SECTION] DOCKING // [SECTION] PLATFORM DEPENDENT HELPERS // [SECTION] METRICS/DEBUGGER WINDOW +// [SECTION] DEBUG LOG WINDOW // [SECTION] OTHER DEBUG TOOLS (ITEM PICKER, STACK TOOL) */ @@ -112,27 +114,73 @@ CODE - Limited layout features, intricate layouts are typically crafted in code. - END-USER GUIDE + CONTROLS GUIDE ============== - - Double-click on title bar to collapse window. - - Click upper right corner to close a window, available when 'bool* p_open' is passed to ImGui::Begin(). - - Click and drag on lower right corner to resize window (double-click to auto fit window to its contents). - - Click and drag on any empty space to move window. - - TAB/SHIFT+TAB to cycle through keyboard editable fields. - - CTRL+Click on a slider or drag box to input value as text. - - Use mouse wheel to scroll. - - Text editor: - - Hold SHIFT or use mouse to select text. - - CTRL+Left/Right to word jump. - - CTRL+Shift+Left/Right to select words. - - CTRL+A our Double-Click to select all. - - CTRL+X,CTRL+C,CTRL+V to use OS clipboard/ - - CTRL+Z,CTRL+Y to undo/redo. - - ESCAPE to revert text to its original value. - - Controls are automatically adjusted for OSX to match standard OSX text editing operations. - - General Keyboard controls: enable with ImGuiConfigFlags_NavEnableKeyboard. - - General Gamepad controls: enable with ImGuiConfigFlags_NavEnableGamepad. See suggested mappings in imgui.h ImGuiNavInput_ + download PNG/PSD at http://dearimgui.org/controls_sheets + - MOUSE CONTROLS + - Mouse wheel: Scroll vertically. + - SHIFT+Mouse wheel: Scroll horizontally. + - Click [X]: Close a window, available when 'bool* p_open' is passed to ImGui::Begin(). + - Click ^, Double-Click title: Collapse window. + - Drag on corner/border: Resize window (double-click to auto fit window to its contents). + - Drag on any empty space: Move window (unless io.ConfigWindowsMoveFromTitleBarOnly = true). + - Left-click outside popup: Close popup stack (right-click over underlying popup: Partially close popup stack). + + - TEXT EDITOR + - Hold SHIFT or Drag Mouse: Select text. + - CTRL+Left/Right: Word jump. + - CTRL+Shift+Left/Right: Select words. + - CTRL+A or Double-Click: Select All. + - CTRL+X, CTRL+C, CTRL+V: Use OS clipboard. + - CTRL+Z, CTRL+Y: Undo, Redo. + - ESCAPE: Revert text to its original value. + - On OSX, controls are automatically adjusted to match standard OSX text editing shortcuts and behaviors. + + - KEYBOARD CONTROLS + - Basic: + - Tab, SHIFT+Tab Cycle through text editable fields. + - CTRL+Tab, CTRL+Shift+Tab Cycle through windows. + - CTRL+Click Input text into a Slider or Drag widget. + - Extended features with `io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard`: + - Tab, SHIFT+Tab: Cycle through every items. + - Arrow keys Move through items using directional navigation. Tweak value. + - Arrow keys + Alt, Shift Tweak slower, tweak faster (when using arrow keys). + - Enter Activate item (prefer text input when possible). + - Space Activate item (prefer tweaking with arrows when possible). + - Escape Deactivate item, leave child window, close popup. + - Page Up, Page Down Previous page, next page. + - Home, End Scroll to top, scroll to bottom. + - Alt Toggle between scrolling layer and menu layer. + - CTRL+Tab then Ctrl+Arrows Move window. Hold SHIFT to resize instead of moving. + - Output when ImGuiConfigFlags_NavEnableKeyboard set, + - io.WantCaptureKeyboard flag is set when keyboard is claimed. + - io.NavActive: true when a window is focused and it doesn't have the ImGuiWindowFlags_NoNavInputs flag set. + - io.NavVisible: true when the navigation cursor is visible (usually goes to back false when mouse is used). + + - GAMEPAD CONTROLS + - Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'. + - Particularly useful to use Dear ImGui on a console system (e.g. PlayStation, Switch, Xbox) without a mouse! + - Download controller mapping PNG/PSD at http://dearimgui.com/controls_sheets + - Backend support: backend needs to: + - Set 'io.BackendFlags |= ImGuiBackendFlags_HasGamepad' + call io.AddKeyEvent/AddKeyAnalogEvent() with ImGuiKey_Gamepad_XXX keys. + - For analog values (0.0f to 1.0f), backend is responsible to handling a dead-zone and rescaling inputs accordingly. + Backend code will probably need to transform your raw inputs (such as e.g. remapping your 0.2..0.9 raw input range to 0.0..1.0 imgui range, etc.). + - BEFORE 1.87, BACKENDS USED TO WRITE TO io.NavInputs[]. This is now obsolete. Please call io functions instead! + - If you need to share inputs between your game and the Dear ImGui interface, the easiest approach is to go all-or-nothing, + with a buttons combo to toggle the target. Please reach out if you think the game vs navigation input sharing could be improved. + + - REMOTE INPUTS SHARING & MOUSE EMULATION + - PS4/PS5 users: Consider emulating a mouse cursor with DualShock touch pad or a spare analog stick as a mouse-emulation fallback. + - Consoles/Tablet/Phone users: Consider using a Synergy 1.x server (on your PC) + run examples/libs/synergy/uSynergy.c (on your console/tablet/phone app) + in order to share your PC mouse/keyboard. + - See https://github.com/ocornut/imgui/wiki/Useful-Extensions#remoting for other remoting solutions. + - On a TV/console system where readability may be lower or mouse inputs may be awkward, you may want to set the ImGuiConfigFlags_NavEnableSetMousePos flag. + Enabling ImGuiConfigFlags_NavEnableSetMousePos + ImGuiBackendFlags_HasSetMousePos instructs Dear ImGui to move your mouse cursor along with navigation movements. + When enabled, the NewFrame() function may alter 'io.MousePos' and set 'io.WantSetMousePos' to notify you that it wants the mouse cursor to be moved. + When that happens your backend NEEDS to move the OS or underlying mouse cursor on the next frame. Some of the backends in examples/ do that. + (If you set the NavEnableSetMousePos flag but don't honor 'io.WantSetMousePos' properly, Dear ImGui will misbehave as it will see your mouse moving back & forth!) + (In a setup when you may not have easy control over the mouse cursor, e.g. uSynergy.c doesn't expose moving remote mouse cursor, you may want + to set a boolean to ignore your other external mouse positions until the external source is moved again.) PROGRAMMER GUIDE @@ -239,7 +287,7 @@ CODE // Build and load the texture atlas into a texture // (In the examples/ app this is usually done within the ImGui_ImplXXX_Init() function from one of the demo Renderer) int width, height; - unsigned char* pixels = NULL; + unsigned char* pixels = nullptr; io.Fonts->GetTexDataAsRGBA32(&pixels, &width, &height); // At this point you've got the texture data and you need to upload that to your graphic system: @@ -290,7 +338,7 @@ CODE --------------------------------------------- The backends in impl_impl_XXX.cpp files contain many working implementations of a rendering function. - void void MyImGuiRenderFunction(ImDrawData* draw_data) + void MyImGuiRenderFunction(ImDrawData* draw_data) { // TODO: Setup render state: alpha-blending enabled, no face culling, no depth testing, scissor enabled // TODO: Setup texture sampling state: sample with bilinear filtering (NOT point/nearest filtering). Use 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines;' to allow point/nearest filtering. @@ -342,43 +390,6 @@ CODE } - USING GAMEPAD/KEYBOARD NAVIGATION CONTROLS - ------------------------------------------ - - The gamepad/keyboard navigation is fairly functional and keeps being improved. - - Gamepad support is particularly useful to use Dear ImGui on a console system (e.g. PS4, Switch, XB1) without a mouse! - - You can ask questions and report issues at https://github.com/ocornut/imgui/issues/787 - - The initial focus was to support game controllers, but keyboard is becoming increasingly and decently usable. - - Keyboard: - - Application: Set io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard to enable. - - Internally: NewFrame() will automatically fill io.NavInputs[] based on backend's io.AddKeyEvent() calls. - - When keyboard navigation is active (io.NavActive + ImGuiConfigFlags_NavEnableKeyboard), - the io.WantCaptureKeyboard flag will be set. For more advanced uses, you may want to read from: - - io.NavActive: true when a window is focused and it doesn't have the ImGuiWindowFlags_NoNavInputs flag set. - - io.NavVisible: true when the navigation cursor is visible (and usually goes false when mouse is used). - - or query focus information with e.g. IsWindowFocused(ImGuiFocusedFlags_AnyWindow), IsItemFocused() etc. functions. - Please reach out if you think the game vs navigation input sharing could be improved. - - Gamepad: - - Application: Set io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad to enable. - - Backend: Set io.BackendFlags |= ImGuiBackendFlags_HasGamepad + call io.AddKeyEvent/AddKeyAnalogEvent() with ImGuiKey_Gamepad_XXX keys. - For analog values (0.0f to 1.0f), backend is responsible to handling a dead-zone and rescaling inputs accordingly. - Backend code will probably need to transform your raw inputs (such as e.g. remapping your 0.2..0.9 raw input range to 0.0..1.0 imgui range, etc.). - - Internally: NewFrame() will automatically fill io.NavInputs[] based on backend's io.AddKeyEvent() + io.AddKeyAnalogEvent() calls. - - BEFORE 1.87, BACKENDS USED TO WRITE DIRECTLY TO io.NavInputs[]. This is going to be obsoleted in the future. Please call io functions instead! - - You can download PNG/PSD files depicting the gamepad controls for common controllers at: http://dearimgui.org/controls_sheets - - If you need to share inputs between your game and the Dear ImGui interface, the easiest approach is to go all-or-nothing, - with a buttons combo to toggle the target. Please reach out if you think the game vs navigation input sharing could be improved. - - Mouse: - - PS4/PS5 users: Consider emulating a mouse cursor with DualShock4 touch pad or a spare analog stick as a mouse-emulation fallback. - - Consoles/Tablet/Phone users: Consider using a Synergy 1.x server (on your PC) + uSynergy.c (on your console/tablet/phone app) to share your PC mouse/keyboard. - - On a TV/console system where readability may be lower or mouse inputs may be awkward, you may want to set the ImGuiConfigFlags_NavEnableSetMousePos flag. - Enabling ImGuiConfigFlags_NavEnableSetMousePos + ImGuiBackendFlags_HasSetMousePos instructs dear imgui to move your mouse cursor along with navigation movements. - When enabled, the NewFrame() function may alter 'io.MousePos' and set 'io.WantSetMousePos' to notify you that it wants the mouse cursor to be moved. - When that happens your backend NEEDS to move the OS or underlying mouse cursor on the next frame. Some of the backends in examples/ do that. - (If you set the NavEnableSetMousePos flag but don't honor 'io.WantSetMousePos' properly, imgui will misbehave as it will see your mouse moving back and forth!) - (In a setup when you may not have easy control over the mouse cursor, e.g. uSynergy.c doesn't expose moving remote mouse cursor, you may want - to set a boolean to ignore your other external mouse positions until the external source is moved again.) - - API BREAKING CHANGES ==================== @@ -388,12 +399,78 @@ CODE You can read releases logs https://github.com/ocornut/imgui/releases for more details. (Docking/Viewport Branch) - - 2022/XX/XX (1.XX) - when multi-viewports are enabled, all positions will be in your natural OS coordinates space. It means that: - - reference to hard-coded positions such as in SetNextWindowPos(ImVec2(0,0)) are probably not what you want anymore. - you may use GetMainViewport()->Pos to offset hard-coded positions, e.g. SetNextWindowPos(GetMainViewport()->Pos) - - likewise io.MousePos and GetMousePos() will use OS coordinates. - If you query mouse positions to interact with non-imgui coordinates you will need to offset them, e.g. subtract GetWindowViewport()->Pos. + - 2023/XX/XX (1.XXXX) - when multi-viewports are enabled, all positions will be in your natural OS coordinates space. It means that: + - reference to hard-coded positions such as in SetNextWindowPos(ImVec2(0,0)) are probably not what you want anymore. + you may use GetMainViewport()->Pos to offset hard-coded positions, e.g. SetNextWindowPos(GetMainViewport()->Pos) + - likewise io.MousePos and GetMousePos() will use OS coordinates. + If you query mouse positions to interact with non-imgui coordinates you will need to offset them, e.g. subtract GetWindowViewport()->Pos. + - 2023/05/30 (1.89.6) - backends: renamed "imgui_impl_sdlrenderer.cpp" to "imgui_impl_sdlrenderer2.cpp" and "imgui_impl_sdlrenderer.h" to "imgui_impl_sdlrenderer2.h". This is in prevision for the future release of SDL3. + - 2023/05/22 (1.89.6) - listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: + - ListBoxHeader() -> use BeginListBox() (note how two variants of ListBoxHeader() existed. Check commented versions in imgui.h for reference) + - ListBoxFooter() -> use EndListBox() + - 2023/05/15 (1.89.6) - clipper: commented out obsolete redirection constructor 'ImGuiListClipper(int items_count, float items_height = -1.0f)' that was marked obsolete in 1.79. Use default constructor + clipper.Begin(). + - 2023/05/15 (1.89.6) - clipper: renamed ImGuiListClipper::ForceDisplayRangeByIndices() to ImGuiListClipper::IncludeRangeByIndices(). + - 2023/03/14 (1.89.4) - commented out redirecting enums/functions names that were marked obsolete two years ago: + - ImGuiSliderFlags_ClampOnInput -> use ImGuiSliderFlags_AlwaysClamp + - ImGuiInputTextFlags_AlwaysInsertMode -> use ImGuiInputTextFlags_AlwaysOverwrite + - ImDrawList::AddBezierCurve() -> use ImDrawList::AddBezierCubic() + - ImDrawList::PathBezierCurveTo() -> use ImDrawList::PathBezierCubicCurveTo() + - 2023/03/09 (1.89.4) - renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). Kept inline redirection functions (will obsolete). + - 2023/03/09 (1.89.4) - tooltips: Added 'bool' return value to BeginTooltip() for API consistency. Please only submit contents and call EndTooltip() if BeginTooltip() returns true. In reality the function will _currently_ always return true, but further changes down the line may change this, best to clarify API sooner. + - 2023/02/15 (1.89.4) - moved the optional "courtesy maths operators" implementation from imgui_internal.h in imgui.h. + Even though we encourage using your own maths types and operators by setting up IM_VEC2_CLASS_EXTRA, + it has been frequently requested by people to use our own. We had an opt-in define which was + previously fulfilled in imgui_internal.h. It is now fulfilled in imgui.h. (#6164) + - OK: #define IMGUI_DEFINE_MATH_OPERATORS / #include "imgui.h" / #include "imgui_internal.h" + - Error: #include "imgui.h" / #define IMGUI_DEFINE_MATH_OPERATORS / #include "imgui_internal.h" + - 2023/02/07 (1.89.3) - backends: renamed "imgui_impl_sdl.cpp" to "imgui_impl_sdl2.cpp" and "imgui_impl_sdl.h" to "imgui_impl_sdl2.h". (#6146) This is in prevision for the future release of SDL3. + - 2022/10/26 (1.89) - commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. + - 2022/10/12 (1.89) - removed runtime patching of invalid "%f"/"%0.f" format strings for DragInt()/SliderInt(). This was obsoleted in 1.61 (May 2018). See 1.61 changelog for details. + - 2022/09/26 (1.89) - renamed and merged keyboard modifiers key enums and flags into a same set. Kept inline redirection enums (will obsolete). + - ImGuiKey_ModCtrl and ImGuiModFlags_Ctrl -> ImGuiMod_Ctrl + - ImGuiKey_ModShift and ImGuiModFlags_Shift -> ImGuiMod_Shift + - ImGuiKey_ModAlt and ImGuiModFlags_Alt -> ImGuiMod_Alt + - ImGuiKey_ModSuper and ImGuiModFlags_Super -> ImGuiMod_Super + the ImGuiKey_ModXXX were introduced in 1.87 and mostly used by backends. + the ImGuiModFlags_XXX have been exposed in imgui.h but not really used by any public api only by third-party extensions. + exceptionally commenting out the older ImGuiKeyModFlags_XXX names ahead of obsolescence schedule to reduce confusion and because they were not meant to be used anyway. + - 2022/09/20 (1.89) - ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. + this will require uses of legacy backend-dependent indices to be casted, e.g. + - with imgui_impl_glfw: IsKeyPressed(GLFW_KEY_A) -> IsKeyPressed((ImGuiKey)GLFW_KEY_A); + - with imgui_impl_win32: IsKeyPressed('A') -> IsKeyPressed((ImGuiKey)'A') + - etc. However if you are upgrading code you might well use the better, backend-agnostic IsKeyPressed(ImGuiKey_A) now! + - 2022/09/12 (1.89) - removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)', always pass a pointer value explicitly. NULL/nullptr is ok but require cast, e.g. TreePush((void*)nullptr); + - 2022/09/05 (1.89) - commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): + - DragScalar(), DragScalarN(), DragFloat(), DragFloat2(), DragFloat3(), DragFloat4(): For old signatures ending with (..., const char* format, float power = 1.0f) -> use (..., format ImGuiSliderFlags_Logarithmic) if power != 1.0f. + - SliderScalar(), SliderScalarN(), SliderFloat(), SliderFloat2(), SliderFloat3(), SliderFloat4(): For old signatures ending with (..., const char* format, float power = 1.0f) -> use (..., format ImGuiSliderFlags_Logarithmic) if power != 1.0f. + - BeginPopupContextWindow(const char*, ImGuiMouseButton, bool) -> use BeginPopupContextWindow(const char*, ImGuiPopupFlags) + - 2022/09/02 (1.89) - obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. + this relates to when moving the cursor position beyond current boundaries WITHOUT submitting an item. + - previously this would make the window content size ~200x200: + Begin(...) + SetCursorScreenPos(GetCursorScreenPos() + ImVec2(200,200)) + End(); + - instead, please submit an item: + Begin(...) + SetCursorScreenPos(GetCursorScreenPos() + ImVec2(200,200)) + Dummy(ImVec2(0,0)) + End(); + - alternative: + Begin(...) + Dummy(ImVec2(200,200)) + End(); + - content size is now only extended when submitting an item! + - with '#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS' this will now be detected and assert. + - without '#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS' this will silently be fixed until we obsolete it. + - 2022/08/03 (1.89) - changed signature of ImageButton() function. Kept redirection function (will obsolete). + - added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. + - old signature: bool ImageButton(ImTextureID tex_id, ImVec2 size, ImVec2 uv0 = ImVec2(0,0), ImVec2 uv1 = ImVec2(1,1), int frame_padding = -1, ImVec4 bg_col = ImVec4(0,0,0,0), ImVec4 tint_col = ImVec4(1,1,1,1)); + - used the ImTextureID value to create an ID. This was inconsistent with other functions, led to ID conflicts, and caused problems with engines using transient ImTextureID values. + - had a FramePadding override which was inconsistent with other functions and made the already-long signature even longer. + - new signature: bool ImageButton(const char* str_id, ImTextureID tex_id, ImVec2 size, ImVec2 uv0 = ImVec2(0,0), ImVec2 uv1 = ImVec2(1,1), ImVec4 bg_col = ImVec4(0,0,0,0), ImVec4 tint_col = ImVec4(1,1,1,1)); + - requires an explicit identifier. You may still use e.g. PushID() calls and then pass an empty identifier. + - always uses style.FramePadding for padding, to be consistent with other buttons. You may use PushStyleVar() to alter this. + - 2022/07/08 (1.89) - inputs: removed io.NavInputs[] and ImGuiNavInput enum (following 1.87 changes). + - Official backends from 1.87+ -> no issue. + - Official backends from 1.60 to 1.86 -> will build and convert gamepad inputs, unless IMGUI_DISABLE_OBSOLETE_KEYIO is defined. Need updating! + - Custom backends not writing to io.NavInputs[] -> no issue. + - Custom backends writing to io.NavInputs[] -> will build and convert gamepad inputs, unless IMGUI_DISABLE_OBSOLETE_KEYIO is defined. Need fixing! + - TL;DR: Backends should call io.AddKeyEvent()/io.AddKeyAnalogEvent() with ImGuiKey_GamepadXXX values instead of filling io.NavInput[]. + - 2022/06/15 (1.88) - renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS for correctness. kept support for old define (will obsolete). - 2022/05/03 (1.88) - backends: osx: removed ImGui_ImplOSX_HandleEvent() from backend API in favor of backend automatically handling event capture. All ImGui_ImplOSX_HandleEvent() calls should be removed as they are now unnecessary. - 2022/04/05 (1.88) - inputs: renamed ImGuiKeyModFlags to ImGuiModFlags. Kept inline redirection enums (will obsolete). This was never used in public API functions but technically present in imgui.h and ImGuiIO. - 2022/01/20 (1.87) - inputs: reworded gamepad IO. @@ -405,11 +482,12 @@ CODE - Backend writing to io.MouseWheel -> backend should call io.AddMouseWheelEvent() - Backend writing to io.MouseHoveredViewport -> backend should call io.AddMouseViewportEvent() [Docking branch w/ multi-viewports only] note: for all calls to IO new functions, the Dear ImGui context should be bound/current. + read https://github.com/ocornut/imgui/issues/4921 for details. - 2022/01/10 (1.87) - inputs: reworked keyboard IO. Removed io.KeyMap[], io.KeysDown[] in favor of calling io.AddKeyEvent(). Removed GetKeyIndex(), now unecessary. All IsKeyXXX() functions now take ImGuiKey values. All features are still functional until IMGUI_DISABLE_OBSOLETE_KEYIO is defined. Read Changelog and Release Notes for details. - IsKeyPressed(MY_NATIVE_KEY_XXX) -> use IsKeyPressed(ImGuiKey_XXX) - IsKeyPressed(GetKeyIndex(ImGuiKey_XXX)) -> use IsKeyPressed(ImGuiKey_XXX) - - Backend writing to io.KeyMap[],io.KeysDown[] -> backend should call io.AddKeyEvent() - - Backend writing to io.KeyCtrl, io.KeyShift.. -> backend should call io.AddKeyEvent() with ImGuiKey_ModXXX values. *IF YOU PULLED CODE BETWEEN 2021/01/10 and 2021/01/27: We used to have a io.AddKeyModsEvent() function which was now replaced by io.AddKeyEvent() with ImGuiKey_ModXXX values.* + - Backend writing to io.KeyMap[],io.KeysDown[] -> backend should call io.AddKeyEvent() (+ call io.SetKeyEventNativeData() if you want legacy user code to stil function with legacy key codes). + - Backend writing to io.KeyCtrl, io.KeyShift.. -> backend should call io.AddKeyEvent() with ImGuiMod_XXX values. *IF YOU PULLED CODE BETWEEN 2021/01/10 and 2021/01/27: We used to have a io.AddKeyModsEvent() function which was now replaced by io.AddKeyEvent() with ImGuiMod_XXX values.* - one case won't work with backward compatibility: if your custom backend used ImGuiKey as mock native indices (e.g. "io.KeyMap[ImGuiKey_A] = ImGuiKey_A") because those values are now larger than the legacy KeyDown[] array. Will assert. - inputs: added ImGuiKey_ModCtrl/ImGuiKey_ModShift/ImGuiKey_ModAlt/ImGuiKey_ModSuper values to submit keyboard modifiers using io.AddKeyEvent(), instead of writing directly to io.KeyCtrl, io.KeyShift, io.KeyAlt, io.KeySuper. - 2022/01/05 (1.87) - inputs: renamed ImGuiKey_KeyPadEnter to ImGuiKey_KeypadEnter to align with new symbols. Kept redirection enum. @@ -719,7 +797,7 @@ CODE ================================ Read all answers online: - https://www.dearimgui.org/faq or https://github.com/ocornut/imgui/blob/master/docs/FAQ.md (same url) + https://www.dearimgui.com/faq or https://github.com/ocornut/imgui/blob/master/docs/FAQ.md (same url) Read all answers locally (with a text editor or ideally a Markdown viewer): docs/FAQ.md Some answers are copied down here to facilitate searching in code. @@ -743,7 +821,7 @@ CODE Q: What is this library called? Q: Which version should I get? >> This library is called "Dear ImGui", please don't call it "ImGui" :) - >> See https://www.dearimgui.org/faq for details. + >> See https://www.dearimgui.com/faq for details. Q&A: Integration ================ @@ -753,14 +831,14 @@ CODE Q: How can I tell whether to dispatch mouse/keyboard to Dear ImGui or my application? A: You should read the 'io.WantCaptureMouse', 'io.WantCaptureKeyboard' and 'io.WantTextInput' flags! - >> See https://www.dearimgui.org/faq for a fully detailed answer. You really want to read this. + >> See https://www.dearimgui.com/faq for a fully detailed answer. You really want to read this. Q. How can I enable keyboard controls? Q: How can I use this without a mouse, without a keyboard or without a screen? (gamepad, input share, remote display) Q: I integrated Dear ImGui in my engine and little squares are showing instead of text... Q: I integrated Dear ImGui in my engine and some elements are clipping or disappearing when I move windows around... Q: I integrated Dear ImGui in my engine and some elements are displaying outside their expected windows boundaries... - >> See https://www.dearimgui.org/faq + >> See https://www.dearimgui.com/faq Q&A: Usage ---------- @@ -770,11 +848,11 @@ CODE - How can I have widgets with an empty label? - How can I have multiple widgets with the same label? - How can I have multiple windows with the same label? - Q: How can I display an image? What is ImTextureID, how does it works? + Q: How can I display an image? What is ImTextureID, how does it work? Q: How can I use my own math types instead of ImVec2/ImVec4? Q: How can I interact with standard C++ types (such as std::string and std::vector)? Q: How can I display custom shapes? (using low-level ImDrawList API) - >> See https://www.dearimgui.org/faq + >> See https://www.dearimgui.com/faq Q&A: Fonts, Text ================ @@ -784,7 +862,7 @@ CODE Q: How can I easily use icons in my application? Q: How can I load multiple fonts? Q: How can I display and input non-Latin characters such as Chinese, Japanese, Korean, Cyrillic? - >> See https://www.dearimgui.org/faq and https://github.com/ocornut/imgui/edit/master/docs/FONTS.md + >> See https://www.dearimgui.com/faq and https://github.com/ocornut/imgui/edit/master/docs/FONTS.md Q&A: Concerns ============= @@ -793,7 +871,7 @@ CODE Q: Can you create elaborate/serious tools with Dear ImGui? Q: Can you reskin the look of Dear ImGui? Q: Why using C++ (as opposed to C)? - >> See https://www.dearimgui.org/faq + >> See https://www.dearimgui.com/faq Q&A: Community ============== @@ -820,16 +898,15 @@ CODE #define _CRT_SECURE_NO_WARNINGS #endif -#include "imgui.h" -#ifndef IMGUI_DISABLE - #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif + +#include "imgui.h" +#ifndef IMGUI_DISABLE #include "imgui_internal.h" // System includes -#include // toupper #include // vsnprintf, sscanf, printf #if defined(_MSC_VER) && _MSC_VER <= 1500 // MSVC 2008 or earlier #include // intptr_t @@ -878,7 +955,7 @@ CODE #if defined(_MSC_VER) && _MSC_VER >= 1922 // MSVC 2019 16.2 or later #pragma warning (disable: 5054) // operator '|': deprecated between enumerations of different types #endif -#pragma warning (disable: 26451) // [Static Analyzer] Arithmetic overflow : Using operator 'xxx' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator 'xxx' to avoid overflow(io.2). +#pragma warning (disable: 26451) // [Static Analyzer] Arithmetic overflow : Using operator 'xxx' on a 4 byte value and then casting the result to an 8 byte value. Cast the value to the wider type before calling operator 'xxx' to avoid overflow(io.2). #pragma warning (disable: 26495) // [Static Analyzer] Variable 'XXX' is uninitialized. Always initialize a member variable (type.6). #pragma warning (disable: 26812) // [Static Analyzer] The enum type 'xxx' is unscoped. Prefer 'enum class' over 'enum' (Enum.3). #endif @@ -901,7 +978,7 @@ CODE #pragma clang diagnostic ignored "-Wdouble-promotion" // warning: implicit conversion from 'float' to 'double' when passing argument to function // using printf() is a misery with this as C++ va_arg ellipsis changes float to double. #pragma clang diagnostic ignored "-Wimplicit-int-float-conversion" // warning: implicit conversion from 'xxx' to 'float' may lose precision #elif defined(__GNUC__) -// We disable -Wpragmas because GCC doesn't provide an has_warning equivalent and some forks/patches may not following the warning/version association. +// We disable -Wpragmas because GCC doesn't provide a has_warning equivalent and some forks/patches may not follow the warning/version association. #pragma GCC diagnostic ignored "-Wpragmas" // warning: unknown option after '#pragma GCC diagnostic' kind #pragma GCC diagnostic ignored "-Wunused-function" // warning: 'xxxx' defined but not used #pragma GCC diagnostic ignored "-Wint-to-pointer-cast" // warning: cast to pointer from integer of different size @@ -925,7 +1002,7 @@ static const float NAV_WINDOWING_LIST_APPEAR_DELAY = 0.15f; // Time // Window resizing from edges (when io.ConfigWindowsResizeFromEdges = true and ImGuiBackendFlags_HasMouseCursors is set in io.BackendFlags by backend) static const float WINDOWS_HOVER_PADDING = 4.0f; // Extend outside window for hovering/resizing (maxxed with TouchPadding) and inside windows for borders. Affect FindHoveredWindow(). static const float WINDOWS_RESIZE_FROM_EDGES_FEEDBACK_TIMER = 0.04f; // Reduce visual noise by only highlighting the border after a certain time. -static const float WINDOWS_MOUSE_WHEEL_SCROLL_LOCK_TIMER = 2.00f; // Lock scrolled window (so it doesn't pick child windows that are scrolling through) for a certain time, unless mouse moved. +static const float WINDOWS_MOUSE_WHEEL_SCROLL_LOCK_TIMER = 0.70f; // Lock scrolled window (so it doesn't pick child windows that are scrolling through) for a certain time, unless mouse moved. // Docking static const float DOCKING_TRANSPARENT_PAYLOAD_ALPHA = 0.50f; // For use with io.ConfigDockingTransparentPayload. Apply to Viewport _or_ WindowBg in host viewport. @@ -951,8 +1028,8 @@ static void WindowSettingsHandler_ApplyAll(ImGuiContext*, ImGuiSetti static void WindowSettingsHandler_WriteAll(ImGuiContext*, ImGuiSettingsHandler*, ImGuiTextBuffer* buf); // Platform Dependents default implementation for IO functions -static const char* GetClipboardTextFn_DefaultImpl(void* user_data); -static void SetClipboardTextFn_DefaultImpl(void* user_data, const char* text); +static const char* GetClipboardTextFn_DefaultImpl(void* user_data_ctx); +static void SetClipboardTextFn_DefaultImpl(void* user_data_ctx, const char* text); static void SetPlatformImeDataFn_DefaultImpl(ImGuiViewport* viewport, ImGuiPlatformImeData* data); namespace ImGui @@ -971,7 +1048,7 @@ static void NavEndFrame(); static bool NavScoreItem(ImGuiNavItemData* result); static void NavApplyItemToResult(ImGuiNavItemData* result); static void NavProcessItem(); -static void NavProcessItemForTabbingRequest(ImGuiID id); +static void NavProcessItemForTabbingRequest(ImGuiID id, ImGuiItemFlags item_flags, ImGuiNavMoveFlags move_flags); static ImVec2 NavCalcPreferredRefPos(); static void NavSaveLastChildNavWindowIntoParent(ImGuiWindow* nav_window); static ImGuiWindow* NavRestoreLastChildNavWindow(ImGuiWindow* window); @@ -985,18 +1062,20 @@ static void ErrorCheckEndFrameSanityChecks(); static void UpdateDebugToolItemPicker(); static void UpdateDebugToolStackQueries(); -// Misc -static void UpdateSettings(); +// Inputs static void UpdateKeyboardInputs(); static void UpdateMouseInputs(); static void UpdateMouseWheel(); +static void UpdateKeyRoutingTable(ImGuiKeyRoutingTable* rt); + +// Misc +static void UpdateSettings(); static bool UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& size_auto_fit, int* border_held, int resize_grip_count, ImU32 resize_grip_col[4], const ImRect& visibility_rect); static void RenderWindowOuterBorders(ImGuiWindow* window); static void RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar_rect, bool title_bar_is_highlight, bool handle_borders_and_resize_grips, int resize_grip_count, const ImU32 resize_grip_col[4], float resize_grip_draw_size); static void RenderWindowTitleBarContents(ImGuiWindow* window, const ImRect& title_bar_rect, const char* name, bool* p_open); static void RenderDimmedBackgroundBehindWindow(ImGuiWindow* window, ImU32 col); static void RenderDimmedBackgrounds(); -static ImGuiWindow* FindBlockingModal(ImGuiWindow* window); // Viewports const ImGuiID IMGUI_VIEWPORT_DEFAULT_ID = 0x11111111; // Using an arbitrary constant instead of e.g. ImHashStr("ViewportDefault", 0); so it's easier to spot in the debugger. The exact value doesn't matter. @@ -1087,15 +1166,18 @@ ImGuiStyle::ImGuiStyle() ColumnsMinSpacing = 6.0f; // Minimum horizontal spacing between two columns. Preferably > (FramePadding.x + 1). ScrollbarSize = 14.0f; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarRounding = 9.0f; // Radius of grab corners rounding for scrollbar - GrabMinSize = 10.0f; // Minimum width/height of a grab box for slider/scrollbar + GrabMinSize = 12.0f; // Minimum width/height of a grab box for slider/scrollbar GrabRounding = 0.0f; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. LogSliderDeadzone = 4.0f; // The size in pixels of the dead-zone around zero on logarithmic sliders that cross zero. TabRounding = 4.0f; // Radius of upper corners of a tab. Set to 0.0f to have rectangular tabs. TabBorderSize = 0.0f; // Thickness of border around tabs. - TabMinWidthForCloseButton = 0.0f; // Minimum width for close button to appears on an unselected tab when hovered. Set to 0.0f to always show when hovering, set to FLT_MAX to never show close button unless selected. + TabMinWidthForCloseButton = 0.0f; // Minimum width for close button to appear on an unselected tab when hovered. Set to 0.0f to always show when hovering, set to FLT_MAX to never show close button unless selected. ColorButtonPosition = ImGuiDir_Right; // Side of the color button in the ColorEdit4 widget (left/right). Defaults to ImGuiDir_Right. ButtonTextAlign = ImVec2(0.5f,0.5f);// Alignment of button text when button is larger than text. SelectableTextAlign = ImVec2(0.0f,0.0f);// Alignment of selectable text. Defaults to (0.0f, 0.0f) (top-left aligned). It's generally important to keep this left-aligned if you want to lay multiple items on a same line. + SeparatorTextBorderSize = 3.0f; // Thickkness of border in SeparatorText() + SeparatorTextAlign = ImVec2(0.0f,0.5f);// Alignment of text within the separator. Defaults to (0.0f, 0.5f) (left aligned, center). + SeparatorTextPadding = ImVec2(20.0f,3.f);// Horizontal offset of text from each edge of the separator + spacing on other axis. Generally small values. .y is recommended to be == FramePadding.y. DisplayWindowPadding = ImVec2(19,19); // Window position are clamped to be visible within the display area or monitors by at least this amount. Only applies to regular windows. DisplaySafeAreaPadding = ImVec2(3,3); // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. MouseCursorScale = 1.0f; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. @@ -1133,6 +1215,7 @@ void ImGuiStyle::ScaleAllSizes(float scale_factor) LogSliderDeadzone = ImFloor(LogSliderDeadzone * scale_factor); TabRounding = ImFloor(TabRounding * scale_factor); TabMinWidthForCloseButton = (TabMinWidthForCloseButton != FLT_MAX) ? ImFloor(TabMinWidthForCloseButton * scale_factor) : FLT_MAX; + SeparatorTextPadding = ImFloor(SeparatorTextPadding * scale_factor); DisplayWindowPadding = ImFloor(DisplayWindowPadding * scale_factor); DisplaySafeAreaPadding = ImFloor(DisplaySafeAreaPadding * scale_factor); MouseCursorScale = ImFloor(MouseCursorScale * scale_factor); @@ -1160,6 +1243,8 @@ ImGuiIO::ImGuiIO() #endif KeyRepeatDelay = 0.275f; KeyRepeatRate = 0.050f; + HoverDelayNormal = 0.30f; + HoverDelayShort = 0.10f; UserData = NULL; Fonts = NULL; @@ -1192,25 +1277,27 @@ ImGuiIO::ImGuiIO() #endif ConfigInputTrickleEventQueue = true; ConfigInputTextCursorBlink = true; + ConfigInputTextEnterKeepActive = false; + ConfigDragClickToInputText = false; ConfigWindowsResizeFromEdges = true; ConfigWindowsMoveFromTitleBarOnly = false; ConfigMemoryCompactTimer = 60.0f; + ConfigDebugBeginReturnValueOnce = false; + ConfigDebugBeginReturnValueLoop = false; // Platform Functions + // Note: Initialize() will setup default clipboard/ime handlers. BackendPlatformName = BackendRendererName = NULL; BackendPlatformUserData = BackendRendererUserData = BackendLanguageUserData = NULL; - GetClipboardTextFn = GetClipboardTextFn_DefaultImpl; // Platform dependent default implementations - SetClipboardTextFn = SetClipboardTextFn_DefaultImpl; - ClipboardUserData = NULL; - SetPlatformImeDataFn = SetPlatformImeDataFn_DefaultImpl; // Input (NB: we already have memset zero the entire structure!) MousePos = ImVec2(-FLT_MAX, -FLT_MAX); MousePosPrev = ImVec2(-FLT_MAX, -FLT_MAX); + MouseSource = ImGuiMouseSource_Mouse; MouseDragThreshold = 6.0f; for (int i = 0; i < IM_ARRAYSIZE(MouseDownDuration); i++) MouseDownDuration[i] = MouseDownDurationPrev[i] = -1.0f; for (int i = 0; i < IM_ARRAYSIZE(KeysData); i++) { KeysData[i].DownDuration = KeysData[i].DownDurationPrev = -1.0f; } - for (int i = 0; i < IM_ARRAYSIZE(NavInputsDownDuration); i++) NavInputsDownDuration[i] = -1.0f; + AppAcceptingEvents = true; BackendUsingLegacyKeyArrays = (ImS8)-1; BackendUsingLegacyNavInputArray = true; // assume using legacy array until proven wrong } @@ -1221,14 +1308,15 @@ ImGuiIO::ImGuiIO() // FIXME: Should in theory be called "AddCharacterEvent()" to be consistent with new API void ImGuiIO::AddInputCharacter(unsigned int c) { - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); - if (c == 0) + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; + if (c == 0 || !AppAcceptingEvents) return; ImGuiInputEvent e; e.Type = ImGuiInputEventType_Text; e.Source = ImGuiInputSource_Keyboard; + e.EventId = g.InputEventsNextEventId++; e.Text.Char = c; g.InputEventsQueue.push_back(e); } @@ -1237,7 +1325,7 @@ void ImGuiIO::AddInputCharacter(unsigned int c) // we should save the high surrogate. void ImGuiIO::AddInputCharacterUTF16(ImWchar16 c) { - if (c == 0 && InputQueueSurrogate == 0) + if ((c == 0 && InputQueueSurrogate == 0) || !AppAcceptingEvents) return; if ((c & 0xFC00) == 0xD800) // High surrogate, must save @@ -1271,20 +1359,23 @@ void ImGuiIO::AddInputCharacterUTF16(ImWchar16 c) void ImGuiIO::AddInputCharactersUTF8(const char* utf8_chars) { + if (!AppAcceptingEvents) + return; while (*utf8_chars != 0) { unsigned int c = 0; utf8_chars += ImTextCharFromUtf8(&c, utf8_chars, NULL); - if (c != 0) - AddInputCharacter(c); + AddInputCharacter(c); } } +// FIXME: Perhaps we could clear queued events as well? void ImGuiIO::ClearInputCharacters() { InputQueueCharacters.resize(0); } +// FIXME: Perhaps we could clear queued events as well? void ImGuiIO::ClearInputKeys() { #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO @@ -1297,23 +1388,49 @@ void ImGuiIO::ClearInputKeys() KeysData[n].DownDurationPrev = -1.0f; } KeyCtrl = KeyShift = KeyAlt = KeySuper = false; - KeyMods = ImGuiModFlags_None; - for (int n = 0; n < IM_ARRAYSIZE(NavInputsDownDuration); n++) - NavInputsDownDuration[n] = NavInputsDownDurationPrev[n] = -1.0f; + KeyMods = ImGuiMod_None; + MousePos = ImVec2(-FLT_MAX, -FLT_MAX); + for (int n = 0; n < IM_ARRAYSIZE(MouseDown); n++) + { + MouseDown[n] = false; + MouseDownDuration[n] = MouseDownDurationPrev[n] = -1.0f; + } + MouseWheel = MouseWheelH = 0.0f; +} + +static ImGuiInputEvent* FindLatestInputEvent(ImGuiContext* ctx, ImGuiInputEventType type, int arg = -1) +{ + ImGuiContext& g = *ctx; + for (int n = g.InputEventsQueue.Size - 1; n >= 0; n--) + { + ImGuiInputEvent* e = &g.InputEventsQueue[n]; + if (e->Type != type) + continue; + if (type == ImGuiInputEventType_Key && e->Key.Key != arg) + continue; + if (type == ImGuiInputEventType_MouseButton && e->MouseButton.Button != arg) + continue; + return e; + } + return NULL; } // Queue a new key down/up event. // - ImGuiKey key: Translated key (as in, generally ImGuiKey_A matches the key end-user would use to emit an 'A' character) // - bool down: Is the key down? use false to signify a key release. // - float analog_value: 0.0f..1.0f +// IMPORTANT: THIS FUNCTION AND OTHER "ADD" GRABS THE CONTEXT FROM OUR INSTANCE. +// WE NEED TO ENSURE THAT ALL FUNCTION CALLS ARE FULLFILLING THIS, WHICH IS WHY GetKeyData() HAS AN EXPLICIT CONTEXT. void ImGuiIO::AddKeyAnalogEvent(ImGuiKey key, bool down, float analog_value) { - //if (e->Down) { IMGUI_DEBUG_LOG("AddKeyEvent() Key='%s' %d, NativeKeycode = %d, NativeScancode = %d\n", ImGui::GetKeyName(e->Key), e->Down, e->NativeKeycode, e->NativeScancode); } - if (key == ImGuiKey_None) + //if (e->Down) { IMGUI_DEBUG_LOG_IO("AddKeyEvent() Key='%s' %d, NativeKeycode = %d, NativeScancode = %d\n", ImGui::GetKeyName(e->Key), e->Down, e->NativeKeycode, e->NativeScancode); } + IM_ASSERT(Ctx != NULL); + if (key == ImGuiKey_None || !AppAcceptingEvents) return; - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); - IM_ASSERT(ImGui::IsNamedKey(key)); // Backend needs to pass a valid ImGuiKey_ constant. 0..511 values are legacy native key codes which are not accepted by this API. + ImGuiContext& g = *Ctx; + IM_ASSERT(ImGui::IsNamedKeyOrModKey(key)); // Backend needs to pass a valid ImGuiKey_ constant. 0..511 values are legacy native key codes which are not accepted by this API. + IM_ASSERT(ImGui::IsAliasKey(key) == false); // Backend cannot submit ImGuiKey_MouseXXX values they are automatically inferred from AddMouseXXX() events. + IM_ASSERT(key != ImGuiMod_Shortcut); // We could easily support the translation here but it seems saner to not accept it (TestEngine perform a translation itself) // Verify that backend isn't mixing up using new io.AddKeyEvent() api and old io.KeysDown[] + io.KeyMap[] data. #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO @@ -1326,22 +1443,19 @@ void ImGuiIO::AddKeyAnalogEvent(ImGuiKey key, bool down, float analog_value) if (ImGui::IsGamepadKey(key)) BackendUsingLegacyNavInputArray = false; - // Partial filter of duplicates (not strictly needed, but makes data neater in particular for key mods and gamepad values which are most commonly spmamed) - ImGuiKeyData* key_data = ImGui::GetKeyData(key); - if (key_data->Down == down && key_data->AnalogValue == analog_value) - { - bool found = false; - for (int n = g.InputEventsQueue.Size - 1; n >= 0 && !found; n--) - if (g.InputEventsQueue[n].Type == ImGuiInputEventType_Key && g.InputEventsQueue[n].Key.Key == key) - found = true; - if (!found) - return; - } + // Filter duplicate (in particular: key mods and gamepad analog values are commonly spammed) + const ImGuiInputEvent* latest_event = FindLatestInputEvent(&g, ImGuiInputEventType_Key, (int)key); + const ImGuiKeyData* key_data = ImGui::GetKeyData(&g, key); + const bool latest_key_down = latest_event ? latest_event->Key.Down : key_data->Down; + const float latest_key_analog = latest_event ? latest_event->Key.AnalogValue : key_data->AnalogValue; + if (latest_key_down == down && latest_key_analog == analog_value) + return; // Add event ImGuiInputEvent e; e.Type = ImGuiInputEventType_Key; e.Source = ImGui::IsGamepadKey(key) ? ImGuiInputSource_Gamepad : ImGuiInputSource_Keyboard; + e.EventId = g.InputEventsNextEventId++; e.Key.Key = key; e.Key.Down = down; e.Key.AnalogValue = analog_value; @@ -1350,6 +1464,8 @@ void ImGuiIO::AddKeyAnalogEvent(ImGuiKey key, bool down, float analog_value) void ImGuiIO::AddKeyEvent(ImGuiKey key, bool down) { + if (!AppAcceptingEvents) + return; AddKeyAnalogEvent(key, down, down ? 1.0f : 0.0f); } @@ -1361,14 +1477,14 @@ void ImGuiIO::SetKeyEventNativeData(ImGuiKey key, int native_keycode, int native if (key == ImGuiKey_None) return; IM_ASSERT(ImGui::IsNamedKey(key)); // >= 512 - IM_ASSERT(native_legacy_index == -1 || ImGui::IsLegacyKey(native_legacy_index)); // >= 0 && <= 511 + IM_ASSERT(native_legacy_index == -1 || ImGui::IsLegacyKey((ImGuiKey)native_legacy_index)); // >= 0 && <= 511 IM_UNUSED(native_keycode); // Yet unused IM_UNUSED(native_scancode); // Yet unused // Build native->imgui map so old user code can still call key functions with native 0..511 values. #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO const int legacy_key = (native_legacy_index != -1) ? native_legacy_index : native_keycode; - if (!ImGui::IsLegacyKey(legacy_key)) + if (!ImGui::IsLegacyKey((ImGuiKey)legacy_key)) return; KeyMap[legacy_key] = key; KeyMap[key] = legacy_key; @@ -1378,55 +1494,105 @@ void ImGuiIO::SetKeyEventNativeData(ImGuiKey key, int native_keycode, int native #endif } +// Set master flag for accepting key/mouse/text events (default to true). Useful if you have native dialog boxes that are interrupting your application loop/refresh, and you want to disable events being queued while your app is frozen. +void ImGuiIO::SetAppAcceptingEvents(bool accepting_events) +{ + AppAcceptingEvents = accepting_events; +} + // Queue a mouse move event void ImGuiIO::AddMousePosEvent(float x, float y) { - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; + if (!AppAcceptingEvents) + return; + + // Apply same flooring as UpdateMouseInputs() + ImVec2 pos((x > -FLT_MAX) ? ImFloorSigned(x) : x, (y > -FLT_MAX) ? ImFloorSigned(y) : y); + + // Filter duplicate + const ImGuiInputEvent* latest_event = FindLatestInputEvent(&g, ImGuiInputEventType_MousePos); + const ImVec2 latest_pos = latest_event ? ImVec2(latest_event->MousePos.PosX, latest_event->MousePos.PosY) : g.IO.MousePos; + if (latest_pos.x == pos.x && latest_pos.y == pos.y) + return; ImGuiInputEvent e; e.Type = ImGuiInputEventType_MousePos; e.Source = ImGuiInputSource_Mouse; - e.MousePos.PosX = x; - e.MousePos.PosY = y; + e.EventId = g.InputEventsNextEventId++; + e.MousePos.PosX = pos.x; + e.MousePos.PosY = pos.y; + e.MouseWheel.MouseSource = g.InputEventsNextMouseSource; g.InputEventsQueue.push_back(e); } void ImGuiIO::AddMouseButtonEvent(int mouse_button, bool down) { - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; IM_ASSERT(mouse_button >= 0 && mouse_button < ImGuiMouseButton_COUNT); + if (!AppAcceptingEvents) + return; + + // Filter duplicate + const ImGuiInputEvent* latest_event = FindLatestInputEvent(&g, ImGuiInputEventType_MouseButton, (int)mouse_button); + const bool latest_button_down = latest_event ? latest_event->MouseButton.Down : g.IO.MouseDown[mouse_button]; + if (latest_button_down == down) + return; ImGuiInputEvent e; e.Type = ImGuiInputEventType_MouseButton; e.Source = ImGuiInputSource_Mouse; + e.EventId = g.InputEventsNextEventId++; e.MouseButton.Button = mouse_button; e.MouseButton.Down = down; + e.MouseWheel.MouseSource = g.InputEventsNextMouseSource; g.InputEventsQueue.push_back(e); } -// Queue a mouse wheel event (most mouse/API will only have a Y component) +// Queue a mouse wheel event (some mouse/API may only have a Y component) void ImGuiIO::AddMouseWheelEvent(float wheel_x, float wheel_y) { - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); - if (wheel_x == 0.0f && wheel_y == 0.0f) + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; + + // Filter duplicate (unlike most events, wheel values are relative and easy to filter) + if (!AppAcceptingEvents || (wheel_x == 0.0f && wheel_y == 0.0f)) return; ImGuiInputEvent e; e.Type = ImGuiInputEventType_MouseWheel; e.Source = ImGuiInputSource_Mouse; + e.EventId = g.InputEventsNextEventId++; e.MouseWheel.WheelX = wheel_x; e.MouseWheel.WheelY = wheel_y; + e.MouseWheel.MouseSource = g.InputEventsNextMouseSource; g.InputEventsQueue.push_back(e); } +// This is not a real event, the data is latched in order to be stored in actual Mouse events. +// This is so that duplicate events (e.g. Windows sending extraneous WM_MOUSEMOVE) gets filtered and are not leading to actual source changes. +void ImGuiIO::AddMouseSourceEvent(ImGuiMouseSource source) +{ + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; + g.InputEventsNextMouseSource = source; +} + void ImGuiIO::AddMouseViewportEvent(ImGuiID viewport_id) { - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); - IM_ASSERT(g.IO.BackendFlags & ImGuiBackendFlags_HasMouseHoveredViewport); + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; + //IM_ASSERT(g.IO.BackendFlags & ImGuiBackendFlags_HasMouseHoveredViewport); + if (!AppAcceptingEvents) + return; + + // Filter duplicate + const ImGuiInputEvent* latest_event = FindLatestInputEvent(&g, ImGuiInputEventType_MouseViewport); + const ImGuiID latest_viewport_id = latest_event ? latest_event->MouseViewport.HoveredViewportID : g.IO.MouseHoveredViewport; + if (latest_viewport_id == viewport_id) + return; ImGuiInputEvent e; e.Type = ImGuiInputEventType_MouseViewport; @@ -1437,11 +1603,18 @@ void ImGuiIO::AddMouseViewportEvent(ImGuiID viewport_id) void ImGuiIO::AddFocusEvent(bool focused) { - ImGuiContext& g = *GImGui; - IM_ASSERT(&g.IO == this && "Can only add events to current context."); + IM_ASSERT(Ctx != NULL); + ImGuiContext& g = *Ctx; + + // Filter duplicate + const ImGuiInputEvent* latest_event = FindLatestInputEvent(&g, ImGuiInputEventType_Focus); + const bool latest_focused = latest_event ? latest_event->AppFocused.Focused : !g.IO.AppFocusLost; + if (latest_focused == focused || (ConfigDebugIgnoreFocusLoss && !focused)) + return; ImGuiInputEvent e; e.Type = ImGuiInputEventType_Focus; + e.EventId = g.InputEventsNextEventId++; e.AppFocused.Focused = focused; g.InputEventsQueue.push_back(e); } @@ -1574,14 +1747,14 @@ ImVec2 ImTriangleClosestPoint(const ImVec2& a, const ImVec2& b, const ImVec2& c, int ImStricmp(const char* str1, const char* str2) { int d; - while ((d = toupper(*str2) - toupper(*str1)) == 0 && *str1) { str1++; str2++; } + while ((d = ImToUpper(*str2) - ImToUpper(*str1)) == 0 && *str1) { str1++; str2++; } return d; } int ImStrnicmp(const char* str1, const char* str2, size_t count) { int d = 0; - while (count > 0 && (d = toupper(*str2) - toupper(*str1)) == 0 && *str1) { str1++; str2++; count--; } + while (count > 0 && (d = ImToUpper(*str2) - ImToUpper(*str1)) == 0 && *str1) { str1++; str2++; count--; } return d; } @@ -1648,14 +1821,14 @@ const char* ImStristr(const char* haystack, const char* haystack_end, const char if (!needle_end) needle_end = needle + strlen(needle); - const char un0 = (char)toupper(*needle); + const char un0 = (char)ImToUpper(*needle); while ((!haystack_end && *haystack) || (haystack_end && haystack < haystack_end)) { - if (toupper(*haystack) == un0) + if (ImToUpper(*haystack) == un0) { const char* b = needle + 1; for (const char* a = haystack + 1; b < needle_end; a++, b++) - if (toupper(*a) != toupper(*b)) + if (ImToUpper(*a) != ImToUpper(*b)) break; if (b == needle_end) return haystack; @@ -1744,6 +1917,43 @@ int ImFormatStringV(char* buf, size_t buf_size, const char* fmt, va_list args) } #endif // #ifdef IMGUI_DISABLE_DEFAULT_FORMAT_FUNCTIONS +void ImFormatStringToTempBuffer(const char** out_buf, const char** out_buf_end, const char* fmt, ...) +{ + ImGuiContext& g = *GImGui; + va_list args; + va_start(args, fmt); + if (fmt[0] == '%' && fmt[1] == 's' && fmt[2] == 0) + { + const char* buf = va_arg(args, const char*); // Skip formatting when using "%s" + *out_buf = buf; + if (out_buf_end) { *out_buf_end = buf + strlen(buf); } + } + else + { + int buf_len = ImFormatStringV(g.TempBuffer.Data, g.TempBuffer.Size, fmt, args); + *out_buf = g.TempBuffer.Data; + if (out_buf_end) { *out_buf_end = g.TempBuffer.Data + buf_len; } + } + va_end(args); +} + +void ImFormatStringToTempBufferV(const char** out_buf, const char** out_buf_end, const char* fmt, va_list args) +{ + ImGuiContext& g = *GImGui; + if (fmt[0] == '%' && fmt[1] == 's' && fmt[2] == 0) + { + const char* buf = va_arg(args, const char*); // Skip formatting when using "%s" + *out_buf = buf; + if (out_buf_end) { *out_buf_end = buf + strlen(buf); } + } + else + { + int buf_len = ImFormatStringV(g.TempBuffer.Data, g.TempBuffer.Size, fmt, args); + *out_buf = g.TempBuffer.Data; + if (out_buf_end) { *out_buf_end = g.TempBuffer.Data + buf_len; } + } +} + // CRC32 needs a 1KB lookup table (not cache friendly) // Although the code to generate the table is simple and shorter than the table itself, using a const table allows us to easily: // - avoid an unnecessary branch/memory tap, - keep the ImHashXXX functions usable by static constructors, - make it thread-safe. @@ -1770,7 +1980,7 @@ static const ImU32 GCrc32LookupTable[256] = // Known size hash // It is ok to call ImHashData on a string with known length but the ### operator won't be supported. // FIXME-OPT: Replace with e.g. FNV1a hash? CRC32 pretty much randomly access 1KB. Need to do proper measurements. -ImGuiID ImHashData(const void* data_p, size_t data_size, ImU32 seed) +ImGuiID ImHashData(const void* data_p, size_t data_size, ImGuiID seed) { ImU32 crc = ~seed; const unsigned char* data = (const unsigned char*)data_p; @@ -1786,7 +1996,7 @@ ImGuiID ImHashData(const void* data_p, size_t data_size, ImU32 seed) // - If we reach ### in the string we discard the hash so far and reset to the seed. // - We don't do 'current += 2; continue;' after handling ### to keep the code smaller/faster (measured ~10% diff in Debug build) // FIXME-OPT: Replace with e.g. FNV1a hash? CRC32 pretty much randomly access 1KB. Need to do proper measurements. -ImGuiID ImHashStr(const char* data_p, size_t data_size, ImU32 seed) +ImGuiID ImHashStr(const char* data_p, size_t data_size, ImGuiID seed) { seed = ~seed; ImU32 crc = seed; @@ -1828,7 +2038,7 @@ ImFileHandle ImFileOpen(const char* filename, const char* mode) // Previously we used ImTextCountCharsFromUtf8/ImTextStrFromUtf8 here but we now need to support ImWchar16 and ImWchar32! const int filename_wsize = ::MultiByteToWideChar(CP_UTF8, 0, filename, -1, NULL, 0); const int mode_wsize = ::MultiByteToWideChar(CP_UTF8, 0, mode, -1, NULL, 0); - ImVector buf; + ImVector buf; buf.resize(filename_wsize + mode_wsize); ::MultiByteToWideChar(CP_UTF8, 0, filename, -1, (wchar_t*)&buf[0], filename_wsize); ::MultiByteToWideChar(CP_UTF8, 0, mode, -1, (wchar_t*)&buf[filename_wsize], mode_wsize); @@ -1891,6 +2101,8 @@ void* ImFileLoadToMemory(const char* filename, const char* mode, size_t* out_f // [SECTION] MISC HELPERS/UTILITIES (ImText* functions) //----------------------------------------------------------------------------- +IM_MSVC_RUNTIME_CHECKS_OFF + // Convert UTF-8 to 32-bit character, process single character input. // A nearly-branchless UTF-8 decoder, based on work of Christopher Wellons (https://github.com/skeeto/branchless-utf8). // We handle UTF-8 decoding error by skipping forward. @@ -1902,7 +2114,7 @@ int ImTextCharFromUtf8(unsigned int* out_char, const char* in_text, const char* static const int shiftc[] = { 0, 18, 12, 6, 0 }; static const int shifte[] = { 0, 6, 4, 2, 0 }; int len = lengths[*(const unsigned char*)in_text >> 3]; - int wanted = len + !len; + int wanted = len + (len ? 0 : 1); if (in_text_end == NULL) in_text_end = in_text + wanted; // Max length, nulls will be taken into account. @@ -1954,8 +2166,6 @@ int ImTextStrFromUtf8(ImWchar* buf, int buf_size, const char* in_text, const cha { unsigned int c; in_text += ImTextCharFromUtf8(&c, in_text, in_text_end); - if (c == 0) - break; *buf_out++ = (ImWchar)c; } *buf_out = 0; @@ -1971,8 +2181,6 @@ int ImTextCountCharsFromUtf8(const char* in_text, const char* in_text_end) { unsigned int c; in_text += ImTextCharFromUtf8(&c, in_text, in_text_end); - if (c == 0) - break; char_count++; } return char_count; @@ -2066,6 +2274,7 @@ int ImTextCountUtf8BytesFromStr(const ImWchar* in_text, const ImWchar* in_text_e } return bytes_count; } +IM_MSVC_RUNTIME_CHECKS_RESTORE //----------------------------------------------------------------------------- // [SECTION] MISC HELPERS/UTILITIES (Color functions) @@ -2400,7 +2609,7 @@ bool ImGuiTextFilter::PassFilter(const char* text, const char* text_end) const } //----------------------------------------------------------------------------- -// [SECTION] ImGuiTextBuffer +// [SECTION] ImGuiTextBuffer, ImGuiTextIndex //----------------------------------------------------------------------------- // On some platform vsnprintf() takes va_list by reference and modifies it. @@ -2468,6 +2677,20 @@ void ImGuiTextBuffer::appendfv(const char* fmt, va_list args) va_end(args_copy); } +void ImGuiTextIndex::append(const char* base, int old_size, int new_size) +{ + IM_ASSERT(old_size >= 0 && new_size >= old_size && new_size >= EndOffset); + if (old_size == new_size) + return; + if (EndOffset == 0 || base[EndOffset - 1] == '\n') + LineOffsets.push_back(EndOffset); + const char* base_end = base + new_size; + for (const char* p = base + old_size; (p = (const char*)memchr(p, '\n', base_end - p)) != 0; ) + if (++p < base_end) // Don't push a trailing offset on last \n + LineOffsets.push_back((int)(intptr_t)(p - base)); + EndOffset = ImMax(EndOffset, new_size); +} + //----------------------------------------------------------------------------- // [SECTION] ImGuiListClipper // This is currently not as flexible/powerful as it should be and really confusing/spaghetti, mostly because we changed @@ -2484,7 +2707,7 @@ static bool GetSkipItemForListClipping() #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS // Legacy helper to calculate coarse clipping of large list of evenly sized items. -// This legacy API is not ideal because it assume we will return a single contiguous rectangle. +// This legacy API is not ideal because it assumes we will return a single contiguous rectangle. // Prefer using ImGuiListClipper which can returns non-contiguous ranges. void ImGui::CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end) { @@ -2591,6 +2814,8 @@ static void ImGuiListClipper_SeekCursorForItem(ImGuiListClipper* clipper, int it ImGuiListClipper::ImGuiListClipper() { memset(this, 0, sizeof(*this)); + Ctx = ImGui::GetCurrentContext(); + IM_ASSERT(Ctx != NULL); ItemsCount = -1; } @@ -2599,13 +2824,11 @@ ImGuiListClipper::~ImGuiListClipper() End(); } -// Use case A: Begin() called from constructor with items_height<0, then called again from Step() in StepNo 1 -// Use case B: Begin() called from constructor with items_height>0 -// FIXME-LEGACY: Ideally we should remove the Begin/End functions but they are part of the legacy API we still support. This is why some of the code in Step() calling Begin() and reassign some fields, spaghetti style. void ImGuiListClipper::Begin(int items_count, float items_height) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *Ctx; ImGuiWindow* window = g.CurrentWindow; + IMGUI_DEBUG_LOG_CLIPPER("Clipper: Begin(%d,%.2f) in '%s'\n", items_count, items_height, window->Name); if (ImGuiTable* table = g.CurrentTable) if (table->IsInsideRow) @@ -2628,10 +2851,11 @@ void ImGuiListClipper::Begin(int items_count, float items_height) void ImGuiListClipper::End() { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *Ctx; if (ImGuiListClipperData* data = (ImGuiListClipperData*)TempData) { // In theory here we should assert that we are already at the right position, but it seems saner to just seek at the end and not assert/crash the user. + IMGUI_DEBUG_LOG_CLIPPER("Clipper: End() in '%s'\n", g.CurrentWindow->Name); if (ItemsCount >= 0 && ItemsCount < INT_MAX && DisplayStart >= 0) ImGuiListClipper_SeekCursorForItem(this, ItemsCount); @@ -2648,20 +2872,20 @@ void ImGuiListClipper::End() ItemsCount = -1; } -void ImGuiListClipper::ForceDisplayRangeByIndices(int item_min, int item_max) +void ImGuiListClipper::IncludeRangeByIndices(int item_begin, int item_end) { ImGuiListClipperData* data = (ImGuiListClipperData*)TempData; IM_ASSERT(DisplayStart < 0); // Only allowed after Begin() and if there has not been a specified range yet. - IM_ASSERT(item_min <= item_max); - if (item_min < item_max) - data->Ranges.push_back(ImGuiListClipperRange::FromIndices(item_min, item_max)); + IM_ASSERT(item_begin <= item_end); + if (item_begin < item_end) + data->Ranges.push_back(ImGuiListClipperRange::FromIndices(item_begin, item_end)); } -bool ImGuiListClipper::Step() +static bool ImGuiListClipper_StepInternal(ImGuiListClipper* clipper) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *clipper->Ctx; ImGuiWindow* window = g.CurrentWindow; - ImGuiListClipperData* data = (ImGuiListClipperData*)TempData; + ImGuiListClipperData* data = (ImGuiListClipperData*)clipper->TempData; IM_ASSERT(data != NULL && "Called ImGuiListClipper::Step() too many times, or before ImGuiListClipper::Begin() ?"); ImGuiTable* table = g.CurrentTable; @@ -2669,18 +2893,17 @@ bool ImGuiListClipper::Step() ImGui::TableEndRow(table); // No items - if (ItemsCount == 0 || GetSkipItemForListClipping()) - return (void)End(), false; + if (clipper->ItemsCount == 0 || GetSkipItemForListClipping()) + return false; // While we are in frozen row state, keep displaying items one by one, unclipped // FIXME: Could be stored as a table-agnostic state. if (data->StepNo == 0 && table != NULL && !table->IsUnfrozenRows) { - DisplayStart = data->ItemsFrozen; - DisplayEnd = data->ItemsFrozen + 1; - if (DisplayStart >= ItemsCount) - return (void)End(), false; - data->ItemsFrozen++; + clipper->DisplayStart = data->ItemsFrozen; + clipper->DisplayEnd = ImMin(data->ItemsFrozen + 1, clipper->ItemsCount); + if (clipper->DisplayStart < clipper->DisplayEnd) + data->ItemsFrozen++; return true; } @@ -2688,15 +2911,13 @@ bool ImGuiListClipper::Step() bool calc_clipping = false; if (data->StepNo == 0) { - StartPosY = window->DC.CursorPos.y; - if (ItemsHeight <= 0.0f) + clipper->StartPosY = window->DC.CursorPos.y; + if (clipper->ItemsHeight <= 0.0f) { // Submit the first item (or range) so we can measure its height (generally the first range is 0..1) data->Ranges.push_front(ImGuiListClipperRange::FromIndices(data->ItemsFrozen, data->ItemsFrozen + 1)); - DisplayStart = ImMax(data->Ranges[0].Min, data->ItemsFrozen); - DisplayEnd = ImMin(data->Ranges[0].Max, ItemsCount); - if (DisplayStart == DisplayEnd) - return (void)End(), false; + clipper->DisplayStart = ImMax(data->Ranges[0].Min, data->ItemsFrozen); + clipper->DisplayEnd = ImMin(data->Ranges[0].Max, clipper->ItemsCount); data->StepNo = 1; return true; } @@ -2704,29 +2925,29 @@ bool ImGuiListClipper::Step() } // Step 1: Let the clipper infer height from first range - if (ItemsHeight <= 0.0f) + if (clipper->ItemsHeight <= 0.0f) { IM_ASSERT(data->StepNo == 1); if (table) - IM_ASSERT(table->RowPosY1 == StartPosY && table->RowPosY2 == window->DC.CursorPos.y); + IM_ASSERT(table->RowPosY1 == clipper->StartPosY && table->RowPosY2 == window->DC.CursorPos.y); - ItemsHeight = (window->DC.CursorPos.y - StartPosY) / (float)(DisplayEnd - DisplayStart); - bool affected_by_floating_point_precision = ImIsFloatAboveGuaranteedIntegerPrecision(StartPosY) || ImIsFloatAboveGuaranteedIntegerPrecision(window->DC.CursorPos.y); + clipper->ItemsHeight = (window->DC.CursorPos.y - clipper->StartPosY) / (float)(clipper->DisplayEnd - clipper->DisplayStart); + bool affected_by_floating_point_precision = ImIsFloatAboveGuaranteedIntegerPrecision(clipper->StartPosY) || ImIsFloatAboveGuaranteedIntegerPrecision(window->DC.CursorPos.y); if (affected_by_floating_point_precision) - ItemsHeight = window->DC.PrevLineSize.y + g.Style.ItemSpacing.y; // FIXME: Technically wouldn't allow multi-line entries. + clipper->ItemsHeight = window->DC.PrevLineSize.y + g.Style.ItemSpacing.y; // FIXME: Technically wouldn't allow multi-line entries. - IM_ASSERT(ItemsHeight > 0.0f && "Unable to calculate item height! First item hasn't moved the cursor vertically!"); + IM_ASSERT(clipper->ItemsHeight > 0.0f && "Unable to calculate item height! First item hasn't moved the cursor vertically!"); calc_clipping = true; // If item height had to be calculated, calculate clipping afterwards. } // Step 0 or 1: Calculate the actual ranges of visible elements. - const int already_submitted = DisplayEnd; + const int already_submitted = clipper->DisplayEnd; if (calc_clipping) { if (g.LogEnabled) { // If logging is active, do not perform any clipping - data->Ranges.push_back(ImGuiListClipperRange::FromIndices(0, ItemsCount)); + data->Ranges.push_back(ImGuiListClipperRange::FromIndices(0, clipper->ItemsCount)); } else { @@ -2735,7 +2956,7 @@ bool ImGuiListClipper::Step() if (is_nav_request) data->Ranges.push_back(ImGuiListClipperRange::FromPositions(g.NavScoringNoClipRect.Min.y, g.NavScoringNoClipRect.Max.y, 0, 0)); if (is_nav_request && (g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) && g.NavTabbingDir == -1) - data->Ranges.push_back(ImGuiListClipperRange::FromIndices(ItemsCount - 1, ItemsCount)); + data->Ranges.push_back(ImGuiListClipperRange::FromIndices(clipper->ItemsCount - 1, clipper->ItemsCount)); // Add focused/active item ImRect nav_rect_abs = ImGui::WindowRectRelToAbs(window, window->NavRectRel[0]); @@ -2755,10 +2976,10 @@ bool ImGuiListClipper::Step() for (int i = 0; i < data->Ranges.Size; i++) if (data->Ranges[i].PosToIndexConvert) { - int m1 = (int)(((double)data->Ranges[i].Min - window->DC.CursorPos.y - data->LossynessOffset) / ItemsHeight); - int m2 = (int)((((double)data->Ranges[i].Max - window->DC.CursorPos.y - data->LossynessOffset) / ItemsHeight) + 0.999999f); - data->Ranges[i].Min = ImClamp(already_submitted + m1 + data->Ranges[i].PosToIndexOffsetMin, already_submitted, ItemsCount - 1); - data->Ranges[i].Max = ImClamp(already_submitted + m2 + data->Ranges[i].PosToIndexOffsetMax, data->Ranges[i].Min + 1, ItemsCount); + int m1 = (int)(((double)data->Ranges[i].Min - window->DC.CursorPos.y - data->LossynessOffset) / clipper->ItemsHeight); + int m2 = (int)((((double)data->Ranges[i].Max - window->DC.CursorPos.y - data->LossynessOffset) / clipper->ItemsHeight) + 0.999999f); + data->Ranges[i].Min = ImClamp(already_submitted + m1 + data->Ranges[i].PosToIndexOffsetMin, already_submitted, clipper->ItemsCount - 1); + data->Ranges[i].Max = ImClamp(already_submitted + m2 + data->Ranges[i].PosToIndexOffsetMax, data->Ranges[i].Min + 1, clipper->ItemsCount); data->Ranges[i].PosToIndexConvert = false; } ImGuiListClipper_SortAndFuseRanges(data->Ranges, data->StepNo); @@ -2767,23 +2988,45 @@ bool ImGuiListClipper::Step() // Step 0+ (if item height is given in advance) or 1+: Display the next range in line. if (data->StepNo < data->Ranges.Size) { - DisplayStart = ImMax(data->Ranges[data->StepNo].Min, already_submitted); - DisplayEnd = ImMin(data->Ranges[data->StepNo].Max, ItemsCount); - if (DisplayStart > already_submitted) //-V1051 - ImGuiListClipper_SeekCursorForItem(this, DisplayStart); + clipper->DisplayStart = ImMax(data->Ranges[data->StepNo].Min, already_submitted); + clipper->DisplayEnd = ImMin(data->Ranges[data->StepNo].Max, clipper->ItemsCount); + if (clipper->DisplayStart > already_submitted) //-V1051 + ImGuiListClipper_SeekCursorForItem(clipper, clipper->DisplayStart); data->StepNo++; return true; } // After the last step: Let the clipper validate that we have reached the expected Y position (corresponding to element DisplayEnd), // Advance the cursor to the end of the list and then returns 'false' to end the loop. - if (ItemsCount < INT_MAX) - ImGuiListClipper_SeekCursorForItem(this, ItemsCount); + if (clipper->ItemsCount < INT_MAX) + ImGuiListClipper_SeekCursorForItem(clipper, clipper->ItemsCount); - End(); return false; } +bool ImGuiListClipper::Step() +{ + ImGuiContext& g = *Ctx; + bool need_items_height = (ItemsHeight <= 0.0f); + bool ret = ImGuiListClipper_StepInternal(this); + if (ret && (DisplayStart == DisplayEnd)) + ret = false; + if (g.CurrentTable && g.CurrentTable->IsUnfrozenRows == false) + IMGUI_DEBUG_LOG_CLIPPER("Clipper: Step(): inside frozen table row.\n"); + if (need_items_height && ItemsHeight > 0.0f) + IMGUI_DEBUG_LOG_CLIPPER("Clipper: Step(): computed ItemsHeight: %.2f.\n", ItemsHeight); + if (ret) + { + IMGUI_DEBUG_LOG_CLIPPER("Clipper: Step(): display %d to %d.\n", DisplayStart, DisplayEnd); + } + else + { + IMGUI_DEBUG_LOG_CLIPPER("Clipper: Step(): End.\n"); + End(); + } + return ret; +} + //----------------------------------------------------------------------------- // [SECTION] STYLING //----------------------------------------------------------------------------- @@ -2850,6 +3093,11 @@ void ImGui::PushStyleColor(ImGuiCol idx, const ImVec4& col) void ImGui::PopStyleColor(int count) { ImGuiContext& g = *GImGui; + if (g.ColorStack.Size < count) + { + IM_ASSERT_USER_ERROR(g.ColorStack.Size > count, "Calling PopStyleColor() too many times: stack underflow."); + count = g.ColorStack.Size; + } while (count > 0) { ImGuiColorMod& backup = g.ColorStack.back(); @@ -2859,20 +3107,12 @@ void ImGui::PopStyleColor(int count) } } -struct ImGuiStyleVarInfo -{ - ImGuiDataType Type; - ImU32 Count; - ImU32 Offset; - void* GetVarPtr(ImGuiStyle* style) const { return (void*)((unsigned char*)style + Offset); } -}; - static const ImGuiCol GWindowDockStyleColors[ImGuiWindowDockStyleCol_COUNT] = { ImGuiCol_Text, ImGuiCol_Tab, ImGuiCol_TabHovered, ImGuiCol_TabActive, ImGuiCol_TabUnfocused, ImGuiCol_TabUnfocusedActive }; -static const ImGuiStyleVarInfo GStyleVarInfo[] = +static const ImGuiDataVarInfo GStyleVarInfo[] = { { ImGuiDataType_Float, 1, (ImU32)IM_OFFSETOF(ImGuiStyle, Alpha) }, // ImGuiStyleVar_Alpha { ImGuiDataType_Float, 1, (ImU32)IM_OFFSETOF(ImGuiStyle, DisabledAlpha) }, // ImGuiStyleVar_DisabledAlpha @@ -2900,51 +3140,59 @@ static const ImGuiStyleVarInfo GStyleVarInfo[] = { ImGuiDataType_Float, 1, (ImU32)IM_OFFSETOF(ImGuiStyle, TabRounding) }, // ImGuiStyleVar_TabRounding { ImGuiDataType_Float, 2, (ImU32)IM_OFFSETOF(ImGuiStyle, ButtonTextAlign) }, // ImGuiStyleVar_ButtonTextAlign { ImGuiDataType_Float, 2, (ImU32)IM_OFFSETOF(ImGuiStyle, SelectableTextAlign) }, // ImGuiStyleVar_SelectableTextAlign + { ImGuiDataType_Float, 1, (ImU32)IM_OFFSETOF(ImGuiStyle, SeparatorTextBorderSize) },// ImGuiStyleVar_SeparatorTextBorderSize + { ImGuiDataType_Float, 2, (ImU32)IM_OFFSETOF(ImGuiStyle, SeparatorTextAlign) }, // ImGuiStyleVar_SeparatorTextAlign + { ImGuiDataType_Float, 2, (ImU32)IM_OFFSETOF(ImGuiStyle, SeparatorTextPadding) }, // ImGuiStyleVar_SeparatorTextPadding }; -static const ImGuiStyleVarInfo* GetStyleVarInfo(ImGuiStyleVar idx) +const ImGuiDataVarInfo* ImGui::GetStyleVarInfo(ImGuiStyleVar idx) { IM_ASSERT(idx >= 0 && idx < ImGuiStyleVar_COUNT); - IM_ASSERT(IM_ARRAYSIZE(GStyleVarInfo) == ImGuiStyleVar_COUNT); + IM_STATIC_ASSERT(IM_ARRAYSIZE(GStyleVarInfo) == ImGuiStyleVar_COUNT); return &GStyleVarInfo[idx]; } void ImGui::PushStyleVar(ImGuiStyleVar idx, float val) { - const ImGuiStyleVarInfo* var_info = GetStyleVarInfo(idx); + ImGuiContext& g = *GImGui; + const ImGuiDataVarInfo* var_info = GetStyleVarInfo(idx); if (var_info->Type == ImGuiDataType_Float && var_info->Count == 1) { - ImGuiContext& g = *GImGui; float* pvar = (float*)var_info->GetVarPtr(&g.Style); g.StyleVarStack.push_back(ImGuiStyleMod(idx, *pvar)); *pvar = val; return; } - IM_ASSERT(0 && "Called PushStyleVar() float variant but variable is not a float!"); + IM_ASSERT_USER_ERROR(0, "Called PushStyleVar() variant with wrong type!"); } void ImGui::PushStyleVar(ImGuiStyleVar idx, const ImVec2& val) { - const ImGuiStyleVarInfo* var_info = GetStyleVarInfo(idx); + ImGuiContext& g = *GImGui; + const ImGuiDataVarInfo* var_info = GetStyleVarInfo(idx); if (var_info->Type == ImGuiDataType_Float && var_info->Count == 2) { - ImGuiContext& g = *GImGui; ImVec2* pvar = (ImVec2*)var_info->GetVarPtr(&g.Style); g.StyleVarStack.push_back(ImGuiStyleMod(idx, *pvar)); *pvar = val; return; } - IM_ASSERT(0 && "Called PushStyleVar() ImVec2 variant but variable is not a ImVec2!"); + IM_ASSERT_USER_ERROR(0, "Called PushStyleVar() variant with wrong type!"); } void ImGui::PopStyleVar(int count) { ImGuiContext& g = *GImGui; + if (g.StyleVarStack.Size < count) + { + IM_ASSERT_USER_ERROR(g.StyleVarStack.Size > count, "Calling PopStyleVar() too many times: stack underflow."); + count = g.StyleVarStack.Size; + } while (count > 0) { // We avoid a generic memcpy(data, &backup.Backup.., GDataTypeSize[info->Type] * info->Count), the overhead in Debug is not worth it. ImGuiStyleMod& backup = g.StyleVarStack.back(); - const ImGuiStyleVarInfo* info = GetStyleVarInfo(backup.VarIdx); + const ImGuiDataVarInfo* info = GetStyleVarInfo(backup.VarIdx); void* data = info->GetVarPtr(&g.Style); if (info->Type == ImGuiDataType_Float && info->Count == 1) { ((float*)data)[0] = backup.BackupFloat[0]; } else if (info->Type == ImGuiDataType_Float && info->Count == 2) { ((float*)data)[0] = backup.BackupFloat[0]; ((float*)data)[1] = backup.BackupFloat[1]; } @@ -3083,6 +3331,9 @@ void ImGui::RenderTextWrapped(ImVec2 pos, const char* text, const char* text_end // Default clip_rect uses (pos_min,pos_max) // Handle clipping on CPU immediately (vs typically let the GPU clip the triangles that are overlapping the clipping rectangle edges) +// FIXME-OPT: Since we have or calculate text_size we could coarse clip whole block immediately, especally for text above draw_list->DrawList. +// Effectively as this is called from widget doing their own coarse clipping it's not very valuable presently. Next time function will take +// better advantage of the render function taking size into account for coarse clipping. void ImGui::RenderTextClippedEx(ImDrawList* draw_list, const ImVec2& pos_min, const ImVec2& pos_max, const char* text, const char* text_display_end, const ImVec2* text_size_if_known, const ImVec2& align, const ImRect* clip_rect) { // Perform CPU side clipping for single clipped element to avoid using scissor state @@ -3126,7 +3377,6 @@ void ImGui::RenderTextClipped(const ImVec2& pos_min, const ImVec2& pos_max, cons LogRenderedText(&pos_min, text, text_display_end); } - // Another overly complex function until we reorganize everything into a nice all-in-one helper. // This is made more complex because we have dissociated the layout rectangle (pos_min..pos_max) which define _where_ the ellipsis is, from actual clipping of text and limit of the ellipsis display. // This is because in the context of tabs we selectively hide part of the text when the Close Button appears, but we don't want the ellipsis to move. @@ -3150,30 +3400,12 @@ void ImGui::RenderTextEllipsis(ImDrawList* draw_list, const ImVec2& pos_min, con const ImFont* font = draw_list->_Data->Font; const float font_size = draw_list->_Data->FontSize; + const float font_scale = font_size / font->FontSize; const char* text_end_ellipsis = NULL; - - ImWchar ellipsis_char = font->EllipsisChar; - int ellipsis_char_count = 1; - if (ellipsis_char == (ImWchar)-1) - { - ellipsis_char = font->DotChar; - ellipsis_char_count = 3; - } - const ImFontGlyph* glyph = font->FindGlyph(ellipsis_char); - - float ellipsis_glyph_width = glyph->X1; // Width of the glyph with no padding on either side - float ellipsis_total_width = ellipsis_glyph_width; // Full width of entire ellipsis - - if (ellipsis_char_count > 1) - { - // Full ellipsis size without free spacing after it. - const float spacing_between_dots = 1.0f * (draw_list->_Data->FontSize / font->FontSize); - ellipsis_glyph_width = glyph->X1 - glyph->X0 + spacing_between_dots; - ellipsis_total_width = ellipsis_glyph_width * (float)ellipsis_char_count - spacing_between_dots; - } + const float ellipsis_width = font->EllipsisWidth * font_scale; // We can now claim the space between pos_max.x and ellipsis_max.x - const float text_avail_width = ImMax((ImMax(pos_max.x, ellipsis_max_x) - ellipsis_total_width) - pos_min.x, 1.0f); + const float text_avail_width = ImMax((ImMax(pos_max.x, ellipsis_max_x) - ellipsis_width) - pos_min.x, 1.0f); float text_size_clipped_x = font->CalcTextSizeA(font_size, text_avail_width, 0.0f, text, text_end_full, &text_end_ellipsis).x; if (text == text_end_ellipsis && text_end_ellipsis < text_end_full) { @@ -3190,13 +3422,10 @@ void ImGui::RenderTextEllipsis(ImDrawList* draw_list, const ImVec2& pos_min, con // Render text, render ellipsis RenderTextClippedEx(draw_list, pos_min, ImVec2(clip_max_x, pos_max.y), text, text_end_ellipsis, &text_size, ImVec2(0.0f, 0.0f)); - float ellipsis_x = pos_min.x + text_size_clipped_x; - if (ellipsis_x + ellipsis_total_width <= ellipsis_max_x) - for (int i = 0; i < ellipsis_char_count; i++) - { - font->RenderChar(draw_list, font_size, ImVec2(ellipsis_x, pos_min.y), GetColorU32(ImGuiCol_Text), ellipsis_char); - ellipsis_x += ellipsis_glyph_width; - } + ImVec2 ellipsis_pos = ImFloor(ImVec2(pos_min.x + text_size_clipped_x, pos_min.y)); + if (ellipsis_pos.x + ellipsis_width <= ellipsis_max_x) + for (int i = 0; i < font->EllipsisCharCount; i++, ellipsis_pos.x += font->EllipsisCharStep * font_scale) + font->RenderChar(draw_list, font_size, ellipsis_pos, GetColorU32(ImGuiCol_Text), font->EllipsisChar); } else { @@ -3299,15 +3528,247 @@ void ImGui::RenderMouseCursor(ImVec2 base_pos, float base_scale, ImGuiMouseCurso } } +//----------------------------------------------------------------------------- +// [SECTION] INITIALIZATION, SHUTDOWN +//----------------------------------------------------------------------------- + +// Internal state access - if you want to share Dear ImGui state between modules (e.g. DLL) or allocate it yourself +// Note that we still point to some static data and members (such as GFontAtlas), so the state instance you end up using will point to the static data within its module +ImGuiContext* ImGui::GetCurrentContext() +{ + return GImGui; +} + +void ImGui::SetCurrentContext(ImGuiContext* ctx) +{ +#ifdef IMGUI_SET_CURRENT_CONTEXT_FUNC + IMGUI_SET_CURRENT_CONTEXT_FUNC(ctx); // For custom thread-based hackery you may want to have control over this. +#else + GImGui = ctx; +#endif +} + +void ImGui::SetAllocatorFunctions(ImGuiMemAllocFunc alloc_func, ImGuiMemFreeFunc free_func, void* user_data) +{ + GImAllocatorAllocFunc = alloc_func; + GImAllocatorFreeFunc = free_func; + GImAllocatorUserData = user_data; +} + +// This is provided to facilitate copying allocators from one static/DLL boundary to another (e.g. retrieve default allocator of your executable address space) +void ImGui::GetAllocatorFunctions(ImGuiMemAllocFunc* p_alloc_func, ImGuiMemFreeFunc* p_free_func, void** p_user_data) +{ + *p_alloc_func = GImAllocatorAllocFunc; + *p_free_func = GImAllocatorFreeFunc; + *p_user_data = GImAllocatorUserData; +} + +ImGuiContext* ImGui::CreateContext(ImFontAtlas* shared_font_atlas) +{ + ImGuiContext* prev_ctx = GetCurrentContext(); + ImGuiContext* ctx = IM_NEW(ImGuiContext)(shared_font_atlas); + SetCurrentContext(ctx); + Initialize(); + if (prev_ctx != NULL) + SetCurrentContext(prev_ctx); // Restore previous context if any, else keep new one. + return ctx; +} + +void ImGui::DestroyContext(ImGuiContext* ctx) +{ + ImGuiContext* prev_ctx = GetCurrentContext(); + if (ctx == NULL) //-V1051 + ctx = prev_ctx; + SetCurrentContext(ctx); + Shutdown(); + SetCurrentContext((prev_ctx != ctx) ? prev_ctx : NULL); + IM_DELETE(ctx); +} + +// IMPORTANT: ###xxx suffixes must be same in ALL languages +static const ImGuiLocEntry GLocalizationEntriesEnUS[] = +{ + { ImGuiLocKey_TableSizeOne, "Size column to fit###SizeOne" }, + { ImGuiLocKey_TableSizeAllFit, "Size all columns to fit###SizeAll" }, + { ImGuiLocKey_TableSizeAllDefault, "Size all columns to default###SizeAll" }, + { ImGuiLocKey_TableResetOrder, "Reset order###ResetOrder" }, + { ImGuiLocKey_WindowingMainMenuBar, "(Main menu bar)" }, + { ImGuiLocKey_WindowingPopup, "(Popup)" }, + { ImGuiLocKey_WindowingUntitled, "(Untitled)" }, + { ImGuiLocKey_DockingHideTabBar, "Hide tab bar###HideTabBar" }, +}; + +void ImGui::Initialize() +{ + ImGuiContext& g = *GImGui; + IM_ASSERT(!g.Initialized && !g.SettingsLoaded); + + // Add .ini handle for ImGuiWindow and ImGuiTable types + { + ImGuiSettingsHandler ini_handler; + ini_handler.TypeName = "Window"; + ini_handler.TypeHash = ImHashStr("Window"); + ini_handler.ClearAllFn = WindowSettingsHandler_ClearAll; + ini_handler.ReadOpenFn = WindowSettingsHandler_ReadOpen; + ini_handler.ReadLineFn = WindowSettingsHandler_ReadLine; + ini_handler.ApplyAllFn = WindowSettingsHandler_ApplyAll; + ini_handler.WriteAllFn = WindowSettingsHandler_WriteAll; + AddSettingsHandler(&ini_handler); + } + TableSettingsAddSettingsHandler(); + + // Setup default localization table + LocalizeRegisterEntries(GLocalizationEntriesEnUS, IM_ARRAYSIZE(GLocalizationEntriesEnUS)); + + // Setup default platform clipboard/IME handlers. + g.IO.GetClipboardTextFn = GetClipboardTextFn_DefaultImpl; // Platform dependent default implementations + g.IO.SetClipboardTextFn = SetClipboardTextFn_DefaultImpl; + g.IO.ClipboardUserData = (void*)&g; // Default implementation use the ImGuiContext as user data (ideally those would be arguments to the function) + g.IO.SetPlatformImeDataFn = SetPlatformImeDataFn_DefaultImpl; + + // Create default viewport + ImGuiViewportP* viewport = IM_NEW(ImGuiViewportP)(); + viewport->ID = IMGUI_VIEWPORT_DEFAULT_ID; + viewport->Idx = 0; + viewport->PlatformWindowCreated = true; + viewport->Flags = ImGuiViewportFlags_OwnedByApp; + g.Viewports.push_back(viewport); + g.TempBuffer.resize(1024 * 3 + 1, 0); + g.PlatformIO.Viewports.push_back(g.Viewports[0]); + +#ifdef IMGUI_HAS_DOCK + // Initialize Docking + DockContextInitialize(&g); +#endif + + g.Initialized = true; +} + +// This function is merely here to free heap allocations. +void ImGui::Shutdown() +{ + // The fonts atlas can be used prior to calling NewFrame(), so we clear it even if g.Initialized is FALSE (which would happen if we never called NewFrame) + ImGuiContext& g = *GImGui; + if (g.IO.Fonts && g.FontAtlasOwnedByContext) + { + g.IO.Fonts->Locked = false; + IM_DELETE(g.IO.Fonts); + } + g.IO.Fonts = NULL; + g.DrawListSharedData.TempBuffer.clear(); + + // Cleanup of other data are conditional on actually having initialized Dear ImGui. + if (!g.Initialized) + return; + + // Save settings (unless we haven't attempted to load them: CreateContext/DestroyContext without a call to NewFrame shouldn't save an empty file) + if (g.SettingsLoaded && g.IO.IniFilename != NULL) + SaveIniSettingsToDisk(g.IO.IniFilename); + + // Destroy platform windows + DestroyPlatformWindows(); + + // Shutdown extensions + DockContextShutdown(&g); + + CallContextHooks(&g, ImGuiContextHookType_Shutdown); + + // Clear everything else + g.Windows.clear_delete(); + g.WindowsFocusOrder.clear(); + g.WindowsTempSortBuffer.clear(); + g.CurrentWindow = NULL; + g.CurrentWindowStack.clear(); + g.WindowsById.Clear(); + g.NavWindow = NULL; + g.HoveredWindow = g.HoveredWindowUnderMovingWindow = NULL; + g.ActiveIdWindow = g.ActiveIdPreviousFrameWindow = NULL; + g.MovingWindow = NULL; + + g.KeysRoutingTable.Clear(); + + g.ColorStack.clear(); + g.StyleVarStack.clear(); + g.FontStack.clear(); + g.OpenPopupStack.clear(); + g.BeginPopupStack.clear(); + + g.CurrentViewport = g.MouseViewport = g.MouseLastHoveredViewport = NULL; + g.Viewports.clear_delete(); + + g.TabBars.Clear(); + g.CurrentTabBarStack.clear(); + g.ShrinkWidthBuffer.clear(); + + g.ClipperTempData.clear_destruct(); + + g.Tables.Clear(); + g.TablesTempData.clear_destruct(); + g.DrawChannelsTempMergeBuffer.clear(); + + g.ClipboardHandlerData.clear(); + g.MenusIdSubmittedThisFrame.clear(); + g.InputTextState.ClearFreeMemory(); + g.InputTextDeactivatedState.ClearFreeMemory(); + + g.SettingsWindows.clear(); + g.SettingsHandlers.clear(); + + if (g.LogFile) + { +#ifndef IMGUI_DISABLE_TTY_FUNCTIONS + if (g.LogFile != stdout) +#endif + ImFileClose(g.LogFile); + g.LogFile = NULL; + } + g.LogBuffer.clear(); + g.DebugLogBuf.clear(); + g.DebugLogIndex.clear(); + + g.Initialized = false; +} + +// No specific ordering/dependency support, will see as needed +ImGuiID ImGui::AddContextHook(ImGuiContext* ctx, const ImGuiContextHook* hook) +{ + ImGuiContext& g = *ctx; + IM_ASSERT(hook->Callback != NULL && hook->HookId == 0 && hook->Type != ImGuiContextHookType_PendingRemoval_); + g.Hooks.push_back(*hook); + g.Hooks.back().HookId = ++g.HookIdNext; + return g.HookIdNext; +} + +// Deferred removal, avoiding issue with changing vector while iterating it +void ImGui::RemoveContextHook(ImGuiContext* ctx, ImGuiID hook_id) +{ + ImGuiContext& g = *ctx; + IM_ASSERT(hook_id != 0); + for (int n = 0; n < g.Hooks.Size; n++) + if (g.Hooks[n].HookId == hook_id) + g.Hooks[n].Type = ImGuiContextHookType_PendingRemoval_; +} + +// Call context hooks (used by e.g. test engine) +// We assume a small number of hooks so all stored in same array +void ImGui::CallContextHooks(ImGuiContext* ctx, ImGuiContextHookType hook_type) +{ + ImGuiContext& g = *ctx; + for (int n = 0; n < g.Hooks.Size; n++) + if (g.Hooks[n].Type == hook_type) + g.Hooks[n].Callback(&g, &g.Hooks[n]); +} + //----------------------------------------------------------------------------- // [SECTION] MAIN CODE (most of the code! lots of stuff, needs tidying up!) //----------------------------------------------------------------------------- // ImGuiWindow is mostly a dumb struct. It merely has a constructor and a few helper methods -ImGuiWindow::ImGuiWindow(ImGuiContext* context, const char* name) : DrawListInst(NULL) +ImGuiWindow::ImGuiWindow(ImGuiContext* ctx, const char* name) : DrawListInst(NULL) { memset(this, 0, sizeof(*this)); + Ctx = ctx; Name = ImStrdup(name); NameBufLen = (int)strlen(name) + 1; ID = ImHashStr(name); @@ -3321,7 +3782,7 @@ ImGuiWindow::ImGuiWindow(ImGuiContext* context, const char* name) : DrawListInst InertialScrollSpeed = ImVec2(0.0f, 0.0f); AutoFitFramesX = AutoFitFramesY = -1; AutoPosLastDirection = ImGuiDir_None; - SetWindowPosAllowFlags = SetWindowSizeAllowFlags = SetWindowCollapsedAllowFlags = SetWindowDockAllowFlags = ImGuiCond_Always | ImGuiCond_Once | ImGuiCond_FirstUseEver | ImGuiCond_Appearing; + SetWindowPosAllowFlags = SetWindowSizeAllowFlags = SetWindowCollapsedAllowFlags = SetWindowDockAllowFlags = 0; SetWindowPosVal = SetWindowPosPivot = ImVec2(FLT_MAX, FLT_MAX); LastFrameActive = -1; LastFrameJustFocused = -1; @@ -3330,8 +3791,9 @@ ImGuiWindow::ImGuiWindow(ImGuiContext* context, const char* name) : DrawListInst SettingsOffset = -1; DockOrder = -1; DrawList = &DrawListInst; - DrawList->_Data = &context->DrawListSharedData; + DrawList->_Data = &Ctx->DrawListSharedData; DrawList->_OwnerName = Name; + NavPreferredScoringPosRel[0] = NavPreferredScoringPosRel[1] = ImVec2(FLT_MAX, FLT_MAX); IM_PLACEMENT_NEW(&WindowClass) ImGuiWindowClass(); } @@ -3346,7 +3808,7 @@ ImGuiID ImGuiWindow::GetID(const char* str, const char* str_end) { ImGuiID seed = IDStack.back(); ImGuiID id = ImHashStr(str, str_end ? (str_end - str) : 0, seed); - ImGuiContext& g = *GImGui; + ImGuiContext& g = *Ctx; if (g.DebugHookIdInfo == id) ImGui::DebugHookIdInfo(id, ImGuiDataType_String, str, str_end); return id; @@ -3356,7 +3818,7 @@ ImGuiID ImGuiWindow::GetID(const void* ptr) { ImGuiID seed = IDStack.back(); ImGuiID id = ImHashData(&ptr, sizeof(void*), seed); - ImGuiContext& g = *GImGui; + ImGuiContext& g = *Ctx; if (g.DebugHookIdInfo == id) ImGui::DebugHookIdInfo(id, ImGuiDataType_Pointer, ptr, NULL); return id; @@ -3366,7 +3828,7 @@ ImGuiID ImGuiWindow::GetID(int n) { ImGuiID seed = IDStack.back(); ImGuiID id = ImHashData(&n, sizeof(n), seed); - ImGuiContext& g = *GImGui; + ImGuiContext& g = *Ctx; if (g.DebugHookIdInfo == id) ImGui::DebugHookIdInfo(id, ImGuiDataType_S32, (void*)(intptr_t)n, NULL); return id; @@ -3387,7 +3849,10 @@ static void SetCurrentWindow(ImGuiWindow* window) g.CurrentWindow = window; g.CurrentTable = window && window->DC.CurrentTableIdx != -1 ? g.Tables.GetByIndex(window->DC.CurrentTableIdx) : NULL; if (window) + { g.FontSize = g.DrawListSharedData.FontSize = window->CalcFontSize(); + ImGui::NavUpdateCurrentWindowIsScrollPushableX(); + } } void ImGui::GcCompactTransientMiscBuffers() @@ -3427,9 +3892,31 @@ void ImGui::GcAwakeTransientWindowBuffers(ImGuiWindow* window) void ImGui::SetActiveID(ImGuiID id, ImGuiWindow* window) { ImGuiContext& g = *GImGui; + + // Clear previous active id + if (g.ActiveId != 0) + { + // While most behaved code would make an effort to not steal active id during window move/drag operations, + // we at least need to be resilient to it. Canceling the move is rather aggressive and users of 'master' branch + // may prefer the weird ill-defined half working situation ('docking' did assert), so may need to rework that. + if (g.MovingWindow != NULL && g.ActiveId == g.MovingWindow->MoveId) + { + IMGUI_DEBUG_LOG_ACTIVEID("SetActiveID() cancel MovingWindow\n"); + g.MovingWindow = NULL; + } + + // This could be written in a more general way (e.g associate a hook to ActiveId), + // but since this is currently quite an exception we'll leave it as is. + // One common scenario leading to this is: pressing Key ->NavMoveRequestApplyResult() -> ClearActiveId() + if (g.InputTextState.ID == g.ActiveId) + InputTextDeactivateHook(g.ActiveId); + } + + // Set active id g.ActiveIdIsJustActivated = (g.ActiveId != id); if (g.ActiveIdIsJustActivated) { + IMGUI_DEBUG_LOG_ACTIVEID("SetActiveID() old:0x%08X (window \"%s\") -> new:0x%08X (window \"%s\")\n", g.ActiveId, g.ActiveIdWindow ? g.ActiveIdWindow->Name : "", id, window ? window->Name : ""); g.ActiveIdTimer = 0.0f; g.ActiveIdHasBeenPressedBefore = false; g.ActiveIdHasBeenEditedBefore = false; @@ -3448,19 +3935,21 @@ void ImGui::SetActiveID(ImGuiID id, ImGuiWindow* window) if (id) { g.ActiveIdIsAlive = id; - g.ActiveIdSource = (g.NavActivateId == id || g.NavActivateInputId == id || g.NavJustMovedToId == id) ? (ImGuiInputSource)ImGuiInputSource_Nav : ImGuiInputSource_Mouse; + g.ActiveIdSource = (g.NavActivateId == id || g.NavJustMovedToId == id) ? g.NavInputSource : ImGuiInputSource_Mouse; // TODO: check whether this works if (g.LastItemData.InFlags & ImGuiItemFlags_NoInertialScroll) { g.InertialScrollInhibited=true; } + IM_ASSERT(g.ActiveIdSource != ImGuiInputSource_None); } // Clear declaration of inputs claimed by the widget // (Please note that this is WIP and not all keys/inputs are thoroughly declared by all widgets yet) - g.ActiveIdUsingMouseWheel = false; g.ActiveIdUsingNavDirMask = 0x00; + g.ActiveIdUsingAllKeyboardKeys = false; +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO g.ActiveIdUsingNavInputMask = 0x00; - g.ActiveIdUsingKeyInputMask.ClearAllBits(); +#endif } void ImGui::ClearActiveID() @@ -3473,7 +3962,6 @@ void ImGui::SetHoveredID(ImGuiID id) ImGuiContext& g = *GImGui; g.HoveredId = id; g.HoveredIdAllowOverlap = false; - g.HoveredIdUsingMouseWheel = false; if (id != 0 && g.HoveredIdPreviousFrame != id) g.HoveredIdTimer = g.HoveredIdNotActiveTimer = 0.0f; } @@ -3498,17 +3986,23 @@ void ImGui::KeepAliveID(ImGuiID id) void ImGui::MarkItemEdited(ImGuiID id) { // This marking is solely to be able to provide info for IsItemDeactivatedAfterEdit(). - // ActiveId might have been released by the time we call this (as in the typical press/release button behavior) but still need need to fill the data. + // ActiveId might have been released by the time we call this (as in the typical press/release button behavior) but still need to fill the data. ImGuiContext& g = *GImGui; - IM_ASSERT(g.ActiveId == id || g.ActiveId == 0 || g.DragDropActive); - IM_UNUSED(id); // Avoid unused variable warnings when asserts are compiled out. + if (g.ActiveId == id || g.ActiveId == 0) + { + g.ActiveIdHasBeenEditedThisFrame = true; + g.ActiveIdHasBeenEditedBefore = true; + } + + // We accept a MarkItemEdited() on drag and drop targets (see https://github.com/ocornut/imgui/issues/1875#issuecomment-978243343) + // We accept 'ActiveIdPreviousFrame == id' for InputText() returning an edit after it has been taken ActiveId away (#4714) + IM_ASSERT(g.DragDropActive || g.ActiveId == id || g.ActiveId == 0 || g.ActiveIdPreviousFrame == id); + //IM_ASSERT(g.CurrentWindow->DC.LastItemId == id); - g.ActiveIdHasBeenEditedThisFrame = true; - g.ActiveIdHasBeenEditedBefore = true; g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_Edited; } -static inline bool IsWindowContentHoverable(ImGuiWindow* window, ImGuiHoveredFlags flags) +bool ImGui::IsWindowContentHoverable(ImGuiWindow* window, ImGuiHoveredFlags flags) { // An active popup disable hovering on other windows (apart from its own children) // FIXME-OPT: This could be cached/stored within the window. @@ -3518,11 +4012,17 @@ static inline bool IsWindowContentHoverable(ImGuiWindow* window, ImGuiHoveredFla if (focused_root_window->WasActive && focused_root_window != window->RootWindowDockTree) { // For the purpose of those flags we differentiate "standard popup" from "modal popup" - // NB: The order of those two tests is important because Modal windows are also Popups. + // NB: The 'else' is important because Modal windows are also Popups. + bool want_inhibit = false; if (focused_root_window->Flags & ImGuiWindowFlags_Modal) - return false; - if ((focused_root_window->Flags & ImGuiWindowFlags_Popup) && !(flags & ImGuiHoveredFlags_AllowWhenBlockedByPopup)) - return false; + want_inhibit = true; + else if ((focused_root_window->Flags & ImGuiWindowFlags_Popup) && !(flags & ImGuiHoveredFlags_AllowWhenBlockedByPopup)) + want_inhibit = true; + + // Inhibit hover unless the window is within the stack of our modal/popup + if (want_inhibit) + if (!IsWindowWithinBeginStackOf(window->RootWindow, focused_root_window)) + return false; } // Filter by viewport @@ -3557,6 +4057,7 @@ bool ImGui::IsItemHovered(ImGuiHoveredFlags flags) return false; IM_ASSERT((flags & (ImGuiHoveredFlags_AnyWindow | ImGuiHoveredFlags_RootWindow | ImGuiHoveredFlags_ChildWindows | ImGuiHoveredFlags_NoPopupHierarchy | ImGuiHoveredFlags_DockHierarchy)) == 0); // Flags not supported by this function + // Done with rectangle culling so we can perform heavier checks now // Test if we are hovering the right window (our window could be behind another window) // [2021/03/02] Reworked / reverted the revert, finally. Note we want e.g. BeginGroup/ItemAdd/EndGroup to work as well. (#3851) // [2017/10/16] Reverted commit 344d48be3 and testing RootWindow instead. I believe it is correct to NOT test for RootWindow but this leaves us unable @@ -3574,7 +4075,7 @@ bool ImGui::IsItemHovered(ImGuiHoveredFlags flags) // Test if interactions on this window are blocked by an active popup or modal. // The ImGuiHoveredFlags_AllowWhenBlockedByPopup flag will be tested here. - if (!IsWindowContentHoverable(window, flags)) + if (!IsWindowContentHoverable(window, flags) && !(g.LastItemData.InFlags & ImGuiItemFlags_NoWindowHoverableCheck)) return false; // Test if the item is disabled @@ -3592,6 +4093,24 @@ bool ImGui::IsItemHovered(ImGuiHoveredFlags flags) return false; } + // Handle hover delay + // (some ideas: https://www.nngroup.com/articles/timing-exposing-content) + float delay; + if (flags & ImGuiHoveredFlags_DelayNormal) + delay = g.IO.HoverDelayNormal; + else if (flags & ImGuiHoveredFlags_DelayShort) + delay = g.IO.HoverDelayShort; + else + delay = 0.0f; + if (delay > 0.0f) + { + ImGuiID hover_delay_id = (g.LastItemData.ID != 0) ? g.LastItemData.ID : window->GetIDFromRectangle(g.LastItemData.Rect); + if ((flags & ImGuiHoveredFlags_NoSharedDelay) && (g.HoverDelayIdPreviousFrame != hover_delay_id)) + g.HoverDelayTimer = 0.0f; + g.HoverDelayId = hover_delay_id; + return g.HoverDelayTimer >= delay; + } + return true; } @@ -3609,7 +4128,10 @@ bool ImGui::ItemHoverable(const ImRect& bb, ImGuiID id) return false; if (!IsMouseHoveringRect(bb.Min, bb.Max)) return false; - if (!IsWindowContentHoverable(window, ImGuiHoveredFlags_None)) + + // Done with rectangle culling so we can perform heavier checks now. + ImGuiItemFlags item_flags = (g.LastItemData.ID == id ? g.LastItemData.InFlags : g.CurrentItemFlags); + if (!(item_flags & ImGuiItemFlags_NoWindowHoverableCheck) && !IsWindowContentHoverable(window, ImGuiHoveredFlags_None)) { g.HoveredIdDisabled = true; return false; @@ -3622,7 +4144,6 @@ bool ImGui::ItemHoverable(const ImRect& bb, ImGuiID id) // When disabled we'll return false but still set HoveredId // Same thing if swiping - ImGuiItemFlags item_flags = (g.LastItemData.ID == id ? g.LastItemData.InFlags : g.CurrentItemFlags); if (item_flags & ImGuiItemFlags_Disabled || window->InertialScroll) { // Release active id if turning disabled @@ -3637,8 +4158,7 @@ bool ImGui::ItemHoverable(const ImRect& bb, ImGuiID id) // [DEBUG] Item Picker tool! // We perform the check here because SetHoveredID() is not frequently called (1~ time a frame), making // the cost of this tool near-zero. We can get slightly better call-stack and support picking non-hovered - // items if we perform the test in ItemAdd(), but that would incur a small runtime cost. - // #define IMGUI_DEBUG_TOOL_ITEM_PICKER_EX in imconfig.h if you want this check to also be performed in ItemAdd(). + // items if we performed the test in ItemAdd(), but that would incur a small runtime cost. if (g.DebugItemPickerActive && g.HoveredIdPreviousFrame == id) GetForegroundDrawList()->AddRect(bb.Min, bb.Max, IM_COL32(255, 255, 0, 255)); if (g.DebugItemPickerBreakId == id) @@ -3651,6 +4171,7 @@ bool ImGui::ItemHoverable(const ImRect& bb, ImGuiID id) return true; } +// FIXME: This is inlined/duplicated in ItemAdd() bool ImGui::IsClippedEx(const ImRect& bb, ImGuiID id) { ImGuiContext& g = *GImGui; @@ -3663,14 +4184,14 @@ bool ImGui::IsClippedEx(const ImRect& bb, ImGuiID id) } // This is also inlined in ItemAdd() -// Note: if ImGuiItemStatusFlags_HasDisplayRect is set, user needs to set window->DC.LastItemDisplayRect! +// Note: if ImGuiItemStatusFlags_HasDisplayRect is set, user needs to set g.LastItemData.DisplayRect. void ImGui::SetLastItemData(ImGuiID item_id, ImGuiItemFlags in_flags, ImGuiItemStatusFlags item_flags, const ImRect& item_rect) { ImGuiContext& g = *GImGui; g.LastItemData.ID = item_id; g.LastItemData.InFlags = in_flags; g.LastItemData.StatusFlags = item_flags; - g.LastItemData.Rect = item_rect; + g.LastItemData.Rect = g.LastItemData.NavRect = item_rect; } float ImGui::CalcWrapWidthForPos(const ImVec2& pos, float wrap_pos_x) @@ -3732,89 +4253,6 @@ const char* ImGui::GetVersion() return IMGUI_VERSION; } -// Internal state access - if you want to share Dear ImGui state between modules (e.g. DLL) or allocate it yourself -// Note that we still point to some static data and members (such as GFontAtlas), so the state instance you end up using will point to the static data within its module -ImGuiContext* ImGui::GetCurrentContext() -{ - return GImGui; -} - -void ImGui::SetCurrentContext(ImGuiContext* ctx) -{ -#ifdef IMGUI_SET_CURRENT_CONTEXT_FUNC - IMGUI_SET_CURRENT_CONTEXT_FUNC(ctx); // For custom thread-based hackery you may want to have control over this. -#else - GImGui = ctx; -#endif -} - -void ImGui::SetAllocatorFunctions(ImGuiMemAllocFunc alloc_func, ImGuiMemFreeFunc free_func, void* user_data) -{ - GImAllocatorAllocFunc = alloc_func; - GImAllocatorFreeFunc = free_func; - GImAllocatorUserData = user_data; -} - -// This is provided to facilitate copying allocators from one static/DLL boundary to another (e.g. retrieve default allocator of your executable address space) -void ImGui::GetAllocatorFunctions(ImGuiMemAllocFunc* p_alloc_func, ImGuiMemFreeFunc* p_free_func, void** p_user_data) -{ - *p_alloc_func = GImAllocatorAllocFunc; - *p_free_func = GImAllocatorFreeFunc; - *p_user_data = GImAllocatorUserData; -} - -ImGuiContext* ImGui::CreateContext(ImFontAtlas* shared_font_atlas) -{ - ImGuiContext* prev_ctx = GetCurrentContext(); - ImGuiContext* ctx = IM_NEW(ImGuiContext)(shared_font_atlas); - SetCurrentContext(ctx); - Initialize(); - if (prev_ctx != NULL) - SetCurrentContext(prev_ctx); // Restore previous context if any, else keep new one. - return ctx; -} - -void ImGui::DestroyContext(ImGuiContext* ctx) -{ - ImGuiContext* prev_ctx = GetCurrentContext(); - if (ctx == NULL) //-V1051 - ctx = prev_ctx; - SetCurrentContext(ctx); - Shutdown(); - SetCurrentContext((prev_ctx != ctx) ? prev_ctx : NULL); - IM_DELETE(ctx); -} - -// No specific ordering/dependency support, will see as needed -ImGuiID ImGui::AddContextHook(ImGuiContext* ctx, const ImGuiContextHook* hook) -{ - ImGuiContext& g = *ctx; - IM_ASSERT(hook->Callback != NULL && hook->HookId == 0 && hook->Type != ImGuiContextHookType_PendingRemoval_); - g.Hooks.push_back(*hook); - g.Hooks.back().HookId = ++g.HookIdNext; - return g.HookIdNext; -} - -// Deferred removal, avoiding issue with changing vector while iterating it -void ImGui::RemoveContextHook(ImGuiContext* ctx, ImGuiID hook_id) -{ - ImGuiContext& g = *ctx; - IM_ASSERT(hook_id != 0); - for (int n = 0; n < g.Hooks.Size; n++) - if (g.Hooks[n].HookId == hook_id) - g.Hooks[n].Type = ImGuiContextHookType_PendingRemoval_; -} - -// Call context hooks (used by e.g. test engine) -// We assume a small number of hooks so all stored in same array -void ImGui::CallContextHooks(ImGuiContext* ctx, ImGuiContextHookType hook_type) -{ - ImGuiContext& g = *ctx; - for (int n = 0; n < g.Hooks.Size; n++) - if (g.Hooks[n].Type == hook_type) - g.Hooks[n].Callback(&g, &g.Hooks[n]); -} - ImGuiIO& ImGui::GetIO() { IM_ASSERT(GImGui != NULL && "No current context. Did you call ImGui::CreateContext() and ImGui::SetCurrentContext() ?"); @@ -3907,7 +4345,7 @@ void ImGui::StartMouseMovingWindow(ImGuiWindow* window) g.NavDisableHighlight = true; g.ActiveIdClickOffset = g.IO.MouseClickedPos[0] - window->RootWindowDockTree->Pos; g.ActiveIdNoClearOnFocusLoss = true; - SetActiveIdUsingNavAndKeys(); + SetActiveIdUsingAllKeyboardKeys(); bool can_move_window = true; if ((window->Flags & ImGuiWindowFlags_NoMove) || (window->RootWindowDockTree->Flags & ImGuiWindowFlags_NoMove)) @@ -3964,13 +4402,12 @@ void ImGui::UpdateMouseMovingWindowNewFrame() ImGuiWindow* moving_window = g.MovingWindow->RootWindowDockTree; // When a window stop being submitted while being dragged, it may will its viewport until next Begin() - const bool window_disappared = (!moving_window->WasActive || moving_window->Viewport == NULL); + const bool window_disappared = ((!moving_window->WasActive && !moving_window->Active) || moving_window->Viewport == NULL); if (g.IO.MouseDown[0] && IsMousePosValid(&g.IO.MousePos) && !window_disappared) { ImVec2 pos = g.IO.MousePos - g.ActiveIdClickOffset; if (moving_window->Pos.x != pos.x || moving_window->Pos.y != pos.y) { - MarkIniSettingsDirty(moving_window); SetWindowPos(moving_window, pos, ImGuiCond_Always); g.InertialScrollInhibited=true; if (moving_window->ViewportOwned) // Synchronize viewport immediately because some overlays may relies on clipping rectangle before we Begin() into the window. @@ -4049,10 +4486,10 @@ void ImGui::UpdateMouseMovingWindowEndFrame() if (g.HoveredIdDisabled) g.MovingWindow = NULL; } - else if (root_window == NULL && g.NavWindow != NULL && GetTopMostPopupModal() == NULL) + else if (root_window == NULL && g.NavWindow != NULL) { // Clicking on void disable focus - FocusWindow(NULL); + FocusWindow(NULL, ImGuiFocusRequestFlags_UnlessBelowModal); } } @@ -4097,252 +4534,6 @@ static bool IsWindowActiveAndVisible(ImGuiWindow* window) return (window->Active) && (!window->Hidden); } -static void ImGui::UpdateKeyboardInputs() -{ - ImGuiContext& g = *GImGui; - ImGuiIO& io = g.IO; - - // Import legacy keys or verify they are not used -#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO - if (io.BackendUsingLegacyKeyArrays == 0) - { - // Backend used new io.AddKeyEvent() API: Good! Verify that old arrays are never written to externally. - for (int n = 0; n < ImGuiKey_LegacyNativeKey_END; n++) - IM_ASSERT((io.KeysDown[n] == false || IsKeyDown(n)) && "Backend needs to either only use io.AddKeyEvent(), either only fill legacy io.KeysDown[] + io.KeyMap[]. Not both!"); - } - else - { - if (g.FrameCount == 0) - for (int n = ImGuiKey_LegacyNativeKey_BEGIN; n < ImGuiKey_LegacyNativeKey_END; n++) - IM_ASSERT(g.IO.KeyMap[n] == -1 && "Backend is not allowed to write to io.KeyMap[0..511]!"); - - // Build reverse KeyMap (Named -> Legacy) - for (int n = ImGuiKey_NamedKey_BEGIN; n < ImGuiKey_NamedKey_END; n++) - if (io.KeyMap[n] != -1) - { - IM_ASSERT(IsLegacyKey((ImGuiKey)io.KeyMap[n])); - io.KeyMap[io.KeyMap[n]] = n; - } - - // Import legacy keys into new ones - for (int n = ImGuiKey_LegacyNativeKey_BEGIN; n < ImGuiKey_LegacyNativeKey_END; n++) - if (io.KeysDown[n] || io.BackendUsingLegacyKeyArrays == 1) - { - const ImGuiKey key = (ImGuiKey)(io.KeyMap[n] != -1 ? io.KeyMap[n] : n); - IM_ASSERT(io.KeyMap[n] == -1 || IsNamedKey(key)); - io.KeysData[key].Down = io.KeysDown[n]; - if (key != n) - io.KeysDown[key] = io.KeysDown[n]; // Allow legacy code using io.KeysDown[GetKeyIndex()] with old backends - io.BackendUsingLegacyKeyArrays = 1; - } - if (io.BackendUsingLegacyKeyArrays == 1) - { - io.KeysData[ImGuiKey_ModCtrl].Down = io.KeyCtrl; - io.KeysData[ImGuiKey_ModShift].Down = io.KeyShift; - io.KeysData[ImGuiKey_ModAlt].Down = io.KeyAlt; - io.KeysData[ImGuiKey_ModSuper].Down = io.KeySuper; - } - } -#endif - - // Synchronize io.KeyMods with individual modifiers io.KeyXXX bools - io.KeyMods = GetMergedModFlags(); - - // Clear gamepad data if disabled - if ((io.BackendFlags & ImGuiBackendFlags_HasGamepad) == 0) - for (int i = ImGuiKey_Gamepad_BEGIN; i < ImGuiKey_Gamepad_END; i++) - { - io.KeysData[i - ImGuiKey_KeysData_OFFSET].Down = false; - io.KeysData[i - ImGuiKey_KeysData_OFFSET].AnalogValue = 0.0f; - } - - // Update keys - for (int i = 0; i < IM_ARRAYSIZE(io.KeysData); i++) - { - ImGuiKeyData* key_data = &io.KeysData[i]; - key_data->DownDurationPrev = key_data->DownDuration; - key_data->DownDuration = key_data->Down ? (key_data->DownDuration < 0.0f ? 0.0f : key_data->DownDuration + io.DeltaTime) : -1.0f; - } -} - -static void ImGui::UpdateMouseInputs() -{ - ImGuiContext& g = *GImGui; - ImGuiIO& io = g.IO; - - // Round mouse position to avoid spreading non-rounded position (e.g. UpdateManualResize doesn't support them well) - if (IsMousePosValid(&io.MousePos)) - io.MousePos = g.MouseLastValidPos = ImFloorSigned(io.MousePos); - - io.MouseDeltaPrev=io.MouseDelta; - - // If mouse just appeared or disappeared (usually denoted by -FLT_MAX components) we cancel out movement in MouseDelta - if (IsMousePosValid(&io.MousePos) && IsMousePosValid(&io.MousePosPrev)) - io.MouseDelta = io.MousePos - io.MousePosPrev; - else - io.MouseDelta = ImVec2(0.0f, 0.0f); - - // If mouse moved we re-enable mouse hovering in case it was disabled by gamepad/keyboard. In theory should use a >0.0f threshold but would need to reset in everywhere we set this to true. - if (io.MouseDelta.x != 0.0f || io.MouseDelta.y != 0.0f) - g.NavDisableMouseHover = false; - - // Update mouse speed - if (ImFabs(io.MouseDelta.x)>ImFabs(io.MouseDeltaPrev.x)) { - io.MouseSpeed.x=io.MouseDelta.x; - } else { - io.MouseSpeed.x=io.MouseDeltaPrev.x; - } - if (ImFabs(io.MouseDelta.y)>ImFabs(io.MouseDeltaPrev.y)) { - io.MouseSpeed.y=io.MouseDelta.y; - } else { - io.MouseSpeed.y=io.MouseDeltaPrev.y; - } - - io.MousePosPrev = io.MousePos; - for (int i = 0; i < IM_ARRAYSIZE(io.MouseDown); i++) - { - io.MouseClicked[i] = io.MouseDown[i] && io.MouseDownDuration[i] < 0.0f; - io.MouseClickedCount[i] = 0; // Will be filled below - io.MouseReleased[i] = !io.MouseDown[i] && io.MouseDownDuration[i] >= 0.0f; - io.MouseDownDurationPrev[i] = io.MouseDownDuration[i]; - io.MouseDownDuration[i] = io.MouseDown[i] ? (io.MouseDownDuration[i] < 0.0f ? 0.0f : io.MouseDownDuration[i] + io.DeltaTime) : -1.0f; - if (io.MouseClicked[i]) - { - bool is_repeated_click = false; - if ((float)(g.Time - io.MouseClickedTime[i]) < io.MouseDoubleClickTime) - { - ImVec2 delta_from_click_pos = IsMousePosValid(&io.MousePos) ? (io.MousePos - io.MouseClickedPos[i]) : ImVec2(0.0f, 0.0f); - if (ImLengthSqr(delta_from_click_pos) < io.MouseDoubleClickMaxDist * io.MouseDoubleClickMaxDist) - is_repeated_click = true; - } - if (is_repeated_click) - io.MouseClickedLastCount[i]++; - else - io.MouseClickedLastCount[i] = 1; - io.MouseClickedTime[i] = g.Time; - io.MouseClickedPos[i] = io.MousePos; - io.MouseClickedCount[i] = io.MouseClickedLastCount[i]; - io.MouseDragMaxDistanceAbs[i] = ImVec2(0.0f, 0.0f); - io.MouseDragMaxDistanceSqr[i] = 0.0f; - } - else if (io.MouseDown[i]) - { - // Maintain the maximum distance we reaching from the initial click position, which is used with dragging threshold - ImVec2 delta_from_click_pos = IsMousePosValid(&io.MousePos) ? (io.MousePos - io.MouseClickedPos[i]) : ImVec2(0.0f, 0.0f); - io.MouseDragMaxDistanceSqr[i] = ImMax(io.MouseDragMaxDistanceSqr[i], ImLengthSqr(delta_from_click_pos)); - io.MouseDragMaxDistanceAbs[i].x = ImMax(io.MouseDragMaxDistanceAbs[i].x, delta_from_click_pos.x < 0.0f ? -delta_from_click_pos.x : delta_from_click_pos.x); - io.MouseDragMaxDistanceAbs[i].y = ImMax(io.MouseDragMaxDistanceAbs[i].y, delta_from_click_pos.y < 0.0f ? -delta_from_click_pos.y : delta_from_click_pos.y); - } - - // We provide io.MouseDoubleClicked[] as a legacy service - io.MouseDoubleClicked[i] = (io.MouseClickedCount[i] == 2); - - // Clicking any mouse button reactivate mouse hovering which may have been deactivated by gamepad/keyboard navigation - if (io.MouseClicked[i]) - g.NavDisableMouseHover = false; - } -} - -static void StartLockWheelingWindow(ImGuiWindow* window) -{ - ImGuiContext& g = *GImGui; - if (g.WheelingWindow == window) - return; - g.WheelingWindow = window; - g.WheelingWindowRefMousePos = g.IO.MousePos; - g.WheelingWindowTimer = WINDOWS_MOUSE_WHEEL_SCROLL_LOCK_TIMER; -} - -void ImGui::UpdateMouseWheel() -{ - ImGuiContext& g = *GImGui; - - // Reset the locked window if we move the mouse or after the timer elapses - if (g.WheelingWindow != NULL) - { - g.WheelingWindowTimer -= g.IO.DeltaTime; - if (IsMousePosValid() && ImLengthSqr(g.IO.MousePos - g.WheelingWindowRefMousePos) > g.IO.MouseDragThreshold * g.IO.MouseDragThreshold) - g.WheelingWindowTimer = 0.0f; - if (g.WheelingWindowTimer <= 0.0f) - { - g.WheelingWindow = NULL; - g.WheelingWindowTimer = 0.0f; - } - } - - float wheel_x = g.IO.MouseWheelH; - float wheel_y = g.IO.MouseWheel; - if (wheel_x == 0.0f && wheel_y == 0.0f) - return; - - if ((g.ActiveId != 0 && g.ActiveIdUsingMouseWheel) || (g.HoveredIdPreviousFrame != 0 && g.HoveredIdPreviousFrameUsingMouseWheel)) - return; - - ImGuiWindow* window = g.WheelingWindow ? g.WheelingWindow : g.HoveredWindow; - if (!window || window->Collapsed) - return; - - // Zoom / Scale window - // FIXME-OBSOLETE: This is an old feature, it still works but pretty much nobody is using it and may be best redesigned. - if (wheel_y != 0.0f && g.IO.KeyCtrl && g.IO.FontAllowUserScaling) - { - StartLockWheelingWindow(window); - const float new_font_scale = ImClamp(window->FontWindowScale + g.IO.MouseWheel * 0.10f, 0.50f, 2.50f); - const float scale = new_font_scale / window->FontWindowScale; - window->FontWindowScale = new_font_scale; - if (window == window->RootWindow) - { - const ImVec2 offset = window->Size * (1.0f - scale) * (g.IO.MousePos - window->Pos) / window->Size; - SetWindowPos(window, window->Pos + offset, 0); - window->Size = ImFloor(window->Size * scale); - window->SizeFull = ImFloor(window->SizeFull * scale); - } - return; - } - - // Mouse wheel scrolling - // If a child window has the ImGuiWindowFlags_NoScrollWithMouse flag, we give a chance to scroll its parent - if (g.IO.KeyCtrl) - return; - - // As a standard behavior holding SHIFT while using Vertical Mouse Wheel triggers Horizontal scroll instead - // (we avoid doing it on OSX as it the OS input layer handles this already) - const bool swap_axis = g.IO.KeyShift && !g.IO.ConfigMacOSXBehaviors; - if (swap_axis) - { - wheel_x = wheel_y; - wheel_y = 0.0f; - } - - // Vertical Mouse Wheel scrolling - if (wheel_y != 0.0f) - { - StartLockWheelingWindow(window); - while ((window->Flags & ImGuiWindowFlags_ChildWindow) && ((window->ScrollMax.y == 0.0f) || ((window->Flags & ImGuiWindowFlags_NoScrollWithMouse) && !(window->Flags & ImGuiWindowFlags_NoMouseInputs)))) - window = window->ParentWindow; - if (!(window->Flags & ImGuiWindowFlags_NoScrollWithMouse) && !(window->Flags & ImGuiWindowFlags_NoMouseInputs)) - { - float max_step = window->InnerRect.GetHeight() * 0.67f; - float scroll_step = ImFloor(ImMin(5 * window->CalcFontSize(), max_step)); - SetScrollY(window, window->Scroll.y - wheel_y * scroll_step); - } - } - - // Horizontal Mouse Wheel scrolling, or Vertical Mouse Wheel w/ Shift held - if (wheel_x != 0.0f) - { - StartLockWheelingWindow(window); - while ((window->Flags & ImGuiWindowFlags_ChildWindow) && ((window->ScrollMax.x == 0.0f) || ((window->Flags & ImGuiWindowFlags_NoScrollWithMouse) && !(window->Flags & ImGuiWindowFlags_NoMouseInputs)))) - window = window->ParentWindow; - if (!(window->Flags & ImGuiWindowFlags_NoScrollWithMouse) && !(window->Flags & ImGuiWindowFlags_NoMouseInputs)) - { - float max_step = window->InnerRect.GetWidth() * 0.67f; - float scroll_step = ImFloor(ImMin(2 * window->CalcFontSize(), max_step)); - SetScrollX(window, window->Scroll.x - wheel_x * scroll_step); - } - } -} - // The reason this is exposed in imgui_internal.h is: on touch-based system that don't have hovering, we want to dispatch inputs to the right target (imgui vs imgui+app) void ImGui::UpdateHoveredWindowAndCaptureFlags() { @@ -4421,18 +4612,6 @@ void ImGui::UpdateHoveredWindowAndCaptureFlags() io.WantTextInput = (g.WantTextInputNextFrame != -1) ? (g.WantTextInputNextFrame != 0) : false; } -// [Internal] Do not use directly (can read io.KeyMods instead) -ImGuiModFlags ImGui::GetMergedModFlags() -{ - ImGuiContext& g = *GImGui; - ImGuiModFlags key_mods = ImGuiModFlags_None; - if (g.IO.KeyCtrl) { key_mods |= ImGuiModFlags_Ctrl; } - if (g.IO.KeyShift) { key_mods |= ImGuiModFlags_Shift; } - if (g.IO.KeyAlt) { key_mods |= ImGuiModFlags_Alt; } - if (g.IO.KeySuper) { key_mods |= ImGuiModFlags_Super; } - return key_mods; -} - void ImGui::NewFrame() { IM_ASSERT(GImGui != NULL && "No current context. Did you call ImGui::CreateContext() and ImGui::SetCurrentContext() ?"); @@ -4469,6 +4648,11 @@ void ImGui::NewFrame() g.IO.Framerate = (g.FramerateSecPerFrameAccum > 0.0f) ? (1.0f / (g.FramerateSecPerFrameAccum / (float)g.FramerateSecPerFrameCount)) : FLT_MAX; g.IO.IsSomethingHappening = false; + // Process input queue (trickle as many events as possible), turn events into writes to IO structure + g.InputEventsTrail.resize(0); + UpdateInputEvents(g.IO.ConfigInputTrickleEventQueue); + + // Update viewports (after processing input queue, so io.MouseHoveredViewport is set) UpdateViewportsNewFrame(); // Setup current font and draw list shared data @@ -4514,15 +4698,20 @@ void ImGui::NewFrame() if (g.HoveredId && g.ActiveId != g.HoveredId) g.HoveredIdNotActiveTimer += g.IO.DeltaTime; g.HoveredIdPreviousFrame = g.HoveredId; - g.HoveredIdPreviousFrameUsingMouseWheel = g.HoveredIdUsingMouseWheel; g.HoveredId = 0; g.HoveredIdAllowOverlap = false; - g.HoveredIdUsingMouseWheel = false; g.HoveredIdDisabled = false; - // Update ActiveId data (clear reference to active widget if the widget isn't alive anymore) - if (g.ActiveIdIsAlive != g.ActiveId && g.ActiveIdPreviousFrame == g.ActiveId && g.ActiveId != 0) + // Clear ActiveID if the item is not alive anymore. + // In 1.87, the common most call to KeepAliveID() was moved from GetID() to ItemAdd(). + // As a result, custom widget using ButtonBehavior() _without_ ItemAdd() need to call KeepAliveID() themselves. + if (g.ActiveId != 0 && g.ActiveIdIsAlive != g.ActiveId && g.ActiveIdPreviousFrame == g.ActiveId) + { + IMGUI_DEBUG_LOG_ACTIVEID("NewFrame(): ClearActiveID() because it isn't marked alive anymore!\n"); ClearActiveID(); + } + + // Update ActiveId data (clear reference to active widget if the widget isn't alive anymore) if (g.ActiveId) g.ActiveIdTimer += g.IO.DeltaTime; g.LastActiveIdTimer += g.IO.DeltaTime; @@ -4538,8 +4727,41 @@ void ImGui::NewFrame() if (g.ActiveId == 0) { g.ActiveIdUsingNavDirMask = 0x00; + g.ActiveIdUsingAllKeyboardKeys = false; +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO g.ActiveIdUsingNavInputMask = 0x00; - g.ActiveIdUsingKeyInputMask.ClearAllBits(); +#endif + } + +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO + if (g.ActiveId == 0) + g.ActiveIdUsingNavInputMask = 0; + else if (g.ActiveIdUsingNavInputMask != 0) + { + // If your custom widget code used: { g.ActiveIdUsingNavInputMask |= (1 << ImGuiNavInput_Cancel); } + // Since IMGUI_VERSION_NUM >= 18804 it should be: { SetKeyOwner(ImGuiKey_Escape, g.ActiveId); SetKeyOwner(ImGuiKey_NavGamepadCancel, g.ActiveId); } + if (g.ActiveIdUsingNavInputMask & (1 << ImGuiNavInput_Cancel)) + SetKeyOwner(ImGuiKey_Escape, g.ActiveId); + if (g.ActiveIdUsingNavInputMask & ~(1 << ImGuiNavInput_Cancel)) + IM_ASSERT(0); // Other values unsupported + } +#endif + + // Update hover delay for IsItemHovered() with delays and tooltips + g.HoverDelayIdPreviousFrame = g.HoverDelayId; + if (g.HoverDelayId != 0) + { + //if (g.IO.MouseDelta.x == 0.0f && g.IO.MouseDelta.y == 0.0f) // Need design/flags + g.HoverDelayTimer += g.IO.DeltaTime; + g.HoverDelayClearTimer = 0.0f; + g.HoverDelayId = 0; + } + else if (g.HoverDelayTimer > 0.0f) + { + // This gives a little bit of leeway before clearing the hover timer, allowing mouse to cross gaps + g.HoverDelayClearTimer += g.IO.DeltaTime; + if (g.HoverDelayClearTimer >= ImMax(0.20f, g.IO.DeltaTime * 2.0f)) // ~6 frames at 30 Hz + allow for low framerate + g.HoverDelayTimer = g.HoverDelayClearTimer = 0.0f; // May want a decaying timer, in which case need to clamp at max first, based on max of caller last requested timer. } // Drag and drop @@ -4554,10 +4776,6 @@ void ImGui::NewFrame() //if (g.IO.AppFocusLost) // ClosePopupsExceptModals(); - // Process input queue (trickle as many events as possible) - g.InputEventsTrail.resize(0); - UpdateInputEvents(g.IO.ConfigInputTrickleEventQueue); - // Update keyboard input state UpdateKeyboardInputs(); @@ -4606,9 +4824,10 @@ void ImGui::NewFrame() { ImGuiWindow* window = g.Windows[i]; window->WasActive = window->Active; - window->BeginCount = 0; window->Active = false; window->WriteAccessed = false; + window->BeginCountPreviousFrame = window->BeginCount; + window->BeginCount = 0; // Garbage collect transient buffers of recently unused windows if (!window->WasActive && !window->MemoryCompacted && window->LastTimeActive < memory_compact_start_time) @@ -4628,7 +4847,7 @@ void ImGui::NewFrame() // Closing the focused window restore focus to the first active root window in descending z-order if (g.NavWindow && !g.NavWindow->WasActive) - FocusTopMostWindowUnderOne(NULL, NULL); + FocusTopMostWindowUnderOne(NULL, NULL, NULL, ImGuiFocusRequestFlags_RestoreFocusedChild); // No window should be open at the beginning of the frame. // But in order to allow the user to call NewFrame() multiple times without calling Render(), we are doing an explicit clear. @@ -4644,134 +4863,32 @@ void ImGui::NewFrame() // [DEBUG] Update debug features UpdateDebugToolItemPicker(); UpdateDebugToolStackQueries(); + if (g.DebugLocateFrames > 0 && --g.DebugLocateFrames == 0) + g.DebugLocateId = 0; + if (g.DebugLogClipperAutoDisableFrames > 0 && --g.DebugLogClipperAutoDisableFrames == 0) + { + DebugLog("(Auto-disabled ImGuiDebugLogFlags_EventClipper to avoid spamming)\n"); + g.DebugLogFlags &= ~ImGuiDebugLogFlags_EventClipper; + } // Create implicit/fallback window - which we will only render it if the user has added something to it. // We don't use "Debug" to avoid colliding with user trying to create a "Debug" window with custom flags. - // This fallback is particularly important as it avoid ImGui:: calls from crashing. + // This fallback is particularly important as it prevents ImGui:: calls from crashing. g.WithinFrameScopeWithImplicitWindow = true; SetNextWindowSize(ImVec2(400, 400), ImGuiCond_FirstUseEver); Begin("Debug##Default"); IM_ASSERT(g.CurrentWindow->IsFallbackWindow == true); + // [DEBUG] When io.ConfigDebugBeginReturnValue is set, we make Begin()/BeginChild() return false at different level of the window-stack, + // allowing to validate correct Begin/End behavior in user code. + if (g.IO.ConfigDebugBeginReturnValueLoop) + g.DebugBeginReturnValueCullDepth = (g.DebugBeginReturnValueCullDepth == -1) ? 0 : ((g.DebugBeginReturnValueCullDepth + ((g.FrameCount % 4) == 0 ? 1 : 0)) % 10); + else + g.DebugBeginReturnValueCullDepth = -1; + CallContextHooks(&g, ImGuiContextHookType_NewFramePost); } -void ImGui::Initialize() -{ - ImGuiContext& g = *GImGui; - IM_ASSERT(!g.Initialized && !g.SettingsLoaded); - - // Add .ini handle for ImGuiWindow type - { - ImGuiSettingsHandler ini_handler; - ini_handler.TypeName = "Window"; - ini_handler.TypeHash = ImHashStr("Window"); - ini_handler.ClearAllFn = WindowSettingsHandler_ClearAll; - ini_handler.ReadOpenFn = WindowSettingsHandler_ReadOpen; - ini_handler.ReadLineFn = WindowSettingsHandler_ReadLine; - ini_handler.ApplyAllFn = WindowSettingsHandler_ApplyAll; - ini_handler.WriteAllFn = WindowSettingsHandler_WriteAll; - AddSettingsHandler(&ini_handler); - } - - // Add .ini handle for ImGuiTable type - TableSettingsAddSettingsHandler(); - - // Create default viewport - ImGuiViewportP* viewport = IM_NEW(ImGuiViewportP)(); - viewport->ID = IMGUI_VIEWPORT_DEFAULT_ID; - viewport->Idx = 0; - viewport->PlatformWindowCreated = true; - viewport->Flags = ImGuiViewportFlags_OwnedByApp; - g.Viewports.push_back(viewport); - g.PlatformIO.Viewports.push_back(g.Viewports[0]); - -#ifdef IMGUI_HAS_DOCK - // Initialize Docking - DockContextInitialize(&g); -#endif - - g.Initialized = true; -} - -// This function is merely here to free heap allocations. -void ImGui::Shutdown() -{ - // The fonts atlas can be used prior to calling NewFrame(), so we clear it even if g.Initialized is FALSE (which would happen if we never called NewFrame) - ImGuiContext& g = *GImGui; - if (g.IO.Fonts && g.FontAtlasOwnedByContext) - { - g.IO.Fonts->Locked = false; - IM_DELETE(g.IO.Fonts); - } - g.IO.Fonts = NULL; - - // Cleanup of other data are conditional on actually having initialized Dear ImGui. - if (!g.Initialized) - return; - - // Save settings (unless we haven't attempted to load them: CreateContext/DestroyContext without a call to NewFrame shouldn't save an empty file) - if (g.SettingsLoaded && g.IO.IniFilename != NULL) - SaveIniSettingsToDisk(g.IO.IniFilename); - - // Destroy platform windows - DestroyPlatformWindows(); - - // Shutdown extensions - DockContextShutdown(&g); - - CallContextHooks(&g, ImGuiContextHookType_Shutdown); - - // Clear everything else - g.Windows.clear_delete(); - g.WindowsFocusOrder.clear(); - g.WindowsTempSortBuffer.clear(); - g.CurrentWindow = NULL; - g.CurrentWindowStack.clear(); - g.WindowsById.Clear(); - g.NavWindow = NULL; - g.HoveredWindow = g.HoveredWindowUnderMovingWindow = NULL; - g.ActiveIdWindow = g.ActiveIdPreviousFrameWindow = NULL; - g.MovingWindow = NULL; - g.ColorStack.clear(); - g.StyleVarStack.clear(); - g.FontStack.clear(); - g.OpenPopupStack.clear(); - g.BeginPopupStack.clear(); - - g.CurrentViewport = g.MouseViewport = g.MouseLastHoveredViewport = NULL; - g.Viewports.clear_delete(); - - g.TabBars.Clear(); - g.CurrentTabBarStack.clear(); - g.ShrinkWidthBuffer.clear(); - - g.ClipperTempData.clear_destruct(); - - g.Tables.Clear(); - g.TablesTempData.clear_destruct(); - g.DrawChannelsTempMergeBuffer.clear(); - - g.ClipboardHandlerData.clear(); - g.MenusIdSubmittedThisFrame.clear(); - g.InputTextState.ClearFreeMemory(); - - g.SettingsWindows.clear(); - g.SettingsHandlers.clear(); - - if (g.LogFile) - { -#ifndef IMGUI_DISABLE_TTY_FUNCTIONS - if (g.LogFile != stdout) -#endif - ImFileClose(g.LogFile); - g.LogFile = NULL; - } - g.LogBuffer.clear(); - - g.Initialized = false; -} - // FIXME: Add a more explicit sort order in the window structure. static int IMGUI_CDECL ChildWindowComparer(const void* lhs, const void* rhs) { @@ -4887,7 +5004,7 @@ static void SetupViewportDrawData(ImGuiViewportP* viewport, ImVectorFlags & ImGuiViewportFlags_Minimized) != 0; + const bool is_minimized = (viewport->Flags & ImGuiViewportFlags_IsMinimized) != 0; ImGuiIO& io = ImGui::GetIO(); ImDrawData* draw_data = &viewport->DrawDataP; @@ -5065,10 +5182,25 @@ void ImGui::EndFrame() ErrorCheckEndFrameSanityChecks(); // Notify Platform/OS when our Input Method Editor cursor has moved (e.g. CJK inputs using Microsoft IME) - if (g.IO.SetPlatformImeDataFn && memcmp(&g.PlatformImeData, &g.PlatformImeDataPrev, sizeof(ImGuiPlatformImeData)) != 0) + ImGuiPlatformImeData* ime_data = &g.PlatformImeData; + if (g.IO.SetPlatformImeDataFn && memcmp(ime_data, &g.PlatformImeDataPrev, sizeof(ImGuiPlatformImeData)) != 0) { ImGuiViewport* viewport = FindViewportByID(g.PlatformImeViewport); - g.IO.SetPlatformImeDataFn(viewport ? viewport : GetMainViewport(), &g.PlatformImeData); + IMGUI_DEBUG_LOG_IO("[io] Calling io.SetPlatformImeDataFn(): WantVisible: %d, InputPos (%.2f,%.2f)\n", ime_data->WantVisible, ime_data->InputPos.x, ime_data->InputPos.y); + if (viewport == NULL) + viewport = GetMainViewport(); +#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS + if (viewport->PlatformHandleRaw == NULL && g.IO.ImeWindowHandle != NULL) + { + viewport->PlatformHandleRaw = g.IO.ImeWindowHandle; + g.IO.SetPlatformImeDataFn(viewport, ime_data); + viewport->PlatformHandleRaw = NULL; + } + else +#endif + { + g.IO.SetPlatformImeDataFn(viewport, ime_data); + } } // Hide implicit/fallback "Debug" window if it hasn't been used @@ -5138,9 +5270,9 @@ void ImGui::EndFrame() g.IO.Fonts->Locked = false; // Clear Input data for next frame + g.IO.AppFocusLost = false; g.IO.MouseWheel = g.IO.MouseWheelH = 0.0f; g.IO.InputQueueCharacters.resize(0); - memset(g.IO.NavInputs, 0, sizeof(g.IO.NavInputs)); CallContextHooks(&g, ImGuiContextHookType_EndFramePost); } @@ -5395,7 +5527,7 @@ bool ImGui::IsAnyItemFocused() bool ImGui::IsItemVisible() { ImGuiContext& g = *GImGui; - return g.CurrentWindow->ClipRect.Overlaps(g.LastItemData.Rect); + return (g.LastItemData.StatusFlags & ImGuiItemStatusFlags_Visible) != 0; } bool ImGui::IsItemEdited() @@ -5416,26 +5548,22 @@ void ImGui::SetItemAllowOverlap() g.ActiveIdAllowOverlap = true; } -void ImGui::SetItemUsingMouseWheel() -{ - ImGuiContext& g = *GImGui; - ImGuiID id = g.LastItemData.ID; - if (g.HoveredId == id) - g.HoveredIdUsingMouseWheel = true; - if (g.ActiveId == id) - g.ActiveIdUsingMouseWheel = true; -} - -void ImGui::SetActiveIdUsingNavAndKeys() +// FIXME: It might be undesirable that this will likely disable KeyOwner-aware shortcuts systems. Consider a more fine-tuned version for the two users of this function. +void ImGui::SetActiveIdUsingAllKeyboardKeys() { ImGuiContext& g = *GImGui; IM_ASSERT(g.ActiveId != 0); - g.ActiveIdUsingNavDirMask = ~(ImU32)0; - g.ActiveIdUsingNavInputMask = ~(ImU32)0; - g.ActiveIdUsingKeyInputMask.SetAllBits(); + g.ActiveIdUsingNavDirMask = (1 << ImGuiDir_COUNT) - 1; + g.ActiveIdUsingAllKeyboardKeys = true; NavMoveRequestCancel(); } +ImGuiID ImGui::GetItemID() +{ + ImGuiContext& g = *GImGui; + return g.LastItemData.ID; +} + ImVec2 ImGui::GetItemRectMin() { ImGuiContext& g = *GImGui; @@ -5467,21 +5595,22 @@ bool ImGui::BeginChildEx(const char* name, ImGuiID id, const ImVec2& size_arg, b ImVec2 size = ImFloor(size_arg); const int auto_fit_axises = ((size.x == 0.0f) ? (1 << ImGuiAxis_X) : 0x00) | ((size.y == 0.0f) ? (1 << ImGuiAxis_Y) : 0x00); if (size.x <= 0.0f) - size.x = ImMax(content_avail.x + size.x, 4.0f); // Arbitrary minimum child size (0.0f causing too much issues) + size.x = ImMax(content_avail.x + size.x, 4.0f); // Arbitrary minimum child size (0.0f causing too many issues) if (size.y <= 0.0f) size.y = ImMax(content_avail.y + size.y, 4.0f); SetNextWindowSize(size); // Build up name. If you need to append to a same child from multiple location in the ID stack, use BeginChild(ImGuiID id) with a stable value. + const char* temp_window_name; if (name) - ImFormatString(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), "%s/%s_%08X", parent_window->Name, name, id); + ImFormatStringToTempBuffer(&temp_window_name, NULL, "%s/%s_%08X", parent_window->Name, name, id); else - ImFormatString(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), "%s/%08X", parent_window->Name, id); + ImFormatStringToTempBuffer(&temp_window_name, NULL, "%s/%08X", parent_window->Name, id); const float backup_border_size = g.Style.ChildBorderSize; if (!border) g.Style.ChildBorderSize = 0.0f; - bool ret = Begin(g.TempBuffer, NULL, flags); + bool ret = Begin(temp_window_name, NULL, flags); g.Style.ChildBorderSize = backup_border_size; ImGuiWindow* child_window = g.CurrentWindow; @@ -5494,12 +5623,16 @@ bool ImGui::BeginChildEx(const char* name, ImGuiID id, const ImVec2& size_arg, b parent_window->DC.CursorPos = child_window->Pos; // Process navigation-in immediately so NavInit can run on first frame - if (g.NavActivateId == id && !(flags & ImGuiWindowFlags_NavFlattened) && (child_window->DC.NavLayersActiveMask != 0 || child_window->DC.NavHasScroll)) + // Can enter a child if (A) it has navigatable items or (B) it can be scrolled. + const ImGuiID temp_id_for_activation = (id + 1); + if (g.ActiveId == temp_id_for_activation) + ClearActiveID(); + if (g.NavActivateId == id && !(flags & ImGuiWindowFlags_NavFlattened) && (child_window->DC.NavLayersActiveMask != 0 || child_window->DC.NavWindowHasScrollY)) { FocusWindow(child_window); NavInitWindow(child_window, false); - SetActiveID(id + 1, child_window); // Steal ActiveId with another arbitrary id so that key-press won't activate child item - g.ActiveIdSource = ImGuiInputSource_Nav; + SetActiveID(temp_id_for_activation, child_window); // Steal ActiveId with another arbitrary id so that key-press won't activate child item + g.ActiveIdSource = g.NavInputSource; } return ret; } @@ -5541,7 +5674,7 @@ void ImGui::EndChild() ImGuiWindow* parent_window = g.CurrentWindow; ImRect bb(parent_window->DC.CursorPos, parent_window->DC.CursorPos + sz); ItemSize(sz); - if ((window->DC.NavLayersActiveMask != 0 || window->DC.NavHasScroll) && !(window->Flags & ImGuiWindowFlags_NavFlattened)) + if ((window->DC.NavLayersActiveMask != 0 || window->DC.NavWindowHasScrollY) && !(window->Flags & ImGuiWindowFlags_NavFlattened)) { ItemAdd(bb, window->ChildId); RenderNavHighlight(bb, window->ChildId); @@ -5554,6 +5687,10 @@ void ImGui::EndChild() { // Not navigable into ItemAdd(bb, 0); + + // But when flattened we directly reach items, adjust active layer mask accordingly + if (window->Flags & ImGuiWindowFlags_NavFlattened) + parent_window->DC.NavLayersActiveMaskNext |= window->DC.NavLayersActiveMaskNext; } if (g.HoveredWindow == window) g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_HoveredWindow; @@ -5623,7 +5760,7 @@ static void UpdateWindowInFocusOrderList(ImGuiWindow* window, bool just_created, { ImGuiContext& g = *GImGui; - const bool new_is_explicit_child = (new_flags & ImGuiWindowFlags_ChildWindow) != 0; + const bool new_is_explicit_child = (new_flags & ImGuiWindowFlags_ChildWindow) != 0 && ((new_flags & ImGuiWindowFlags_Popup) == 0 || (new_flags & ImGuiWindowFlags_ChildMenu) != 0); const bool child_flag_changed = new_is_explicit_child != window->IsExplicitChild; if ((just_created || child_flag_changed) && !new_is_explicit_child) { @@ -5642,33 +5779,23 @@ static void UpdateWindowInFocusOrderList(ImGuiWindow* window, bool just_created, window->IsExplicitChild = new_is_explicit_child; } -static ImGuiWindow* CreateNewWindow(const char* name, ImGuiWindowFlags flags) +static void InitOrLoadWindowSettings(ImGuiWindow* window, ImGuiWindowSettings* settings) { - ImGuiContext& g = *GImGui; - //IMGUI_DEBUG_LOG("CreateNewWindow '%s', flags = 0x%08X\n", name, flags); - - // Create window the first time - ImGuiWindow* window = IM_NEW(ImGuiWindow)(&g, name); - window->Flags = flags; - g.WindowsById.SetVoidPtr(window->ID, window); - - // Default/arbitrary window position. Use SetNextWindowPos() with the appropriate condition flag to change the initial position of a window. + // Initial window state with e.g. default/arbitrary window position + // Use SetNextWindowPos() with the appropriate condition flag to change the initial position of a window. const ImGuiViewport* main_viewport = ImGui::GetMainViewport(); window->Pos = main_viewport->Pos + ImVec2(60, 60); window->ViewportPos = main_viewport->Pos; + window->SetWindowPosAllowFlags = window->SetWindowSizeAllowFlags = window->SetWindowCollapsedAllowFlags = window->SetWindowDockAllowFlags = ImGuiCond_Always | ImGuiCond_Once | ImGuiCond_FirstUseEver | ImGuiCond_Appearing; - // User can disable loading and saving of settings. Tooltip and child windows also don't store settings. - if (!(flags & ImGuiWindowFlags_NoSavedSettings)) - if (ImGuiWindowSettings* settings = ImGui::FindWindowSettings(window->ID)) - { - // Retrieve settings from .ini file - window->SettingsOffset = g.SettingsWindows.offset_from_ptr(settings); - SetWindowConditionAllowFlags(window, ImGuiCond_FirstUseEver, false); - ApplyWindowSettings(window, settings); - } + if (settings != NULL) + { + SetWindowConditionAllowFlags(window, ImGuiCond_FirstUseEver, false); + ApplyWindowSettings(window, settings); + } window->DC.CursorStartPos = window->DC.CursorMaxPos = window->DC.IdealMaxPos = window->Pos; // So first call to CalcWindowContentSizes() doesn't return crazy values - if ((flags & ImGuiWindowFlags_AlwaysAutoResize) != 0) + if ((window->Flags & ImGuiWindowFlags_AlwaysAutoResize) != 0) { window->AutoFitFramesX = window->AutoFitFramesY = 2; window->AutoFitOnlyGrows = false; @@ -5681,12 +5808,28 @@ static ImGuiWindow* CreateNewWindow(const char* name, ImGuiWindowFlags flags) window->AutoFitFramesY = 2; window->AutoFitOnlyGrows = (window->AutoFitFramesX > 0) || (window->AutoFitFramesY > 0); } +} + +static ImGuiWindow* CreateNewWindow(const char* name, ImGuiWindowFlags flags) +{ + // Create window the first time + //IMGUI_DEBUG_LOG("CreateNewWindow '%s', flags = 0x%08X\n", name, flags); + ImGuiContext& g = *GImGui; + ImGuiWindow* window = IM_NEW(ImGuiWindow)(&g, name); + window->Flags = flags; + g.WindowsById.SetVoidPtr(window->ID, window); + + ImGuiWindowSettings* settings = NULL; + if (!(flags & ImGuiWindowFlags_NoSavedSettings)) + if ((settings = ImGui::FindWindowSettingsByWindow(window)) != 0) + window->SettingsOffset = g.SettingsWindows.offset_from_ptr(settings); + + InitOrLoadWindowSettings(window, settings); if (flags & ImGuiWindowFlags_NoBringToFrontOnFocus) g.Windows.push_front(window); // Quite slow but rare and only once else g.Windows.push_back(window); - UpdateWindowInFocusOrderList(window, true, window->Flags); return window; } @@ -5729,9 +5872,9 @@ static ImVec2 CalcWindowSizeAfterConstraint(ImGuiWindow* window, const ImVec2& s if (!(window->Flags & (ImGuiWindowFlags_ChildWindow | ImGuiWindowFlags_AlwaysAutoResize))) { ImGuiWindow* window_for_height = GetWindowForTitleAndMenuHeight(window); - const float decoration_up_height = window_for_height->TitleBarHeight() + window_for_height->MenuBarHeight(); new_size = ImMax(new_size, g.Style.WindowMinSize); - new_size.y = ImMax(new_size.y, decoration_up_height + ImMax(0.0f, g.Style.WindowRounding - 1.0f)); // Reduce artifacts with very small windows + const float minimum_height = window_for_height->TitleBarHeight() + window_for_height->MenuBarHeight() + ImMax(0.0f, g.Style.WindowRounding - 1.0f); + new_size.y = ImMax(new_size.y, minimum_height); // Reduce artifacts with very small windows } return new_size; } @@ -5760,9 +5903,10 @@ static ImVec2 CalcWindowAutoFitSize(ImGuiWindow* window, const ImVec2& size_cont { ImGuiContext& g = *GImGui; ImGuiStyle& style = g.Style; - const float decoration_up_height = window->TitleBarHeight() + window->MenuBarHeight(); + const float decoration_w_without_scrollbars = window->DecoOuterSizeX1 + window->DecoOuterSizeX2 - window->ScrollbarSizes.x; + const float decoration_h_without_scrollbars = window->DecoOuterSizeY1 + window->DecoOuterSizeY2 - window->ScrollbarSizes.y; ImVec2 size_pad = window->WindowPadding * 2.0f; - ImVec2 size_desired = size_contents + size_pad + ImVec2(0.0f, decoration_up_height); + ImVec2 size_desired = size_contents + size_pad + ImVec2(decoration_w_without_scrollbars, decoration_h_without_scrollbars); if (window->Flags & ImGuiWindowFlags_Tooltip) { // Tooltip always resize @@ -5777,8 +5921,7 @@ static ImVec2 CalcWindowAutoFitSize(ImGuiWindow* window, const ImVec2& size_cont if (is_popup || is_menu) // Popups and menus bypass style.WindowMinSize by default, but we give then a non-zero minimum size to facilitate understanding problematic cases (e.g. empty popups) size_min = ImMin(size_min, ImVec2(4.0f, 4.0f)); - // FIXME-VIEWPORT-WORKAREA: May want to use GetWorkSize() instead of Size depending on the type of windows? - ImVec2 avail_size = window->Viewport->Size; + ImVec2 avail_size = window->Viewport->WorkSize; if (window->ViewportOwned) avail_size = ImVec2(FLT_MAX, FLT_MAX); const int monitor_idx = window->ViewportAllowPlatformMonitorExtend; @@ -5789,8 +5932,8 @@ static ImVec2 CalcWindowAutoFitSize(ImGuiWindow* window, const ImVec2& size_cont // When the window cannot fit all contents (either because of constraints, either because screen is too small), // we are growing the size on the other axis to compensate for expected scrollbar. FIXME: Might turn bigger than ViewportSize-WindowPadding. ImVec2 size_auto_fit_after_constraint = CalcWindowSizeAfterConstraint(window, size_auto_fit); - bool will_have_scrollbar_x = (size_auto_fit_after_constraint.x - size_pad.x - 0.0f < size_contents.x && !(window->Flags & ImGuiWindowFlags_NoScrollbar) && (window->Flags & ImGuiWindowFlags_HorizontalScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysHorizontalScrollbar); - bool will_have_scrollbar_y = (size_auto_fit_after_constraint.y - size_pad.y - decoration_up_height < size_contents.y && !(window->Flags & ImGuiWindowFlags_NoScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysVerticalScrollbar); + bool will_have_scrollbar_x = (size_auto_fit_after_constraint.x - size_pad.x - decoration_w_without_scrollbars < size_contents.x && !(window->Flags & ImGuiWindowFlags_NoScrollbar) && (window->Flags & ImGuiWindowFlags_HorizontalScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysHorizontalScrollbar); + bool will_have_scrollbar_y = (size_auto_fit_after_constraint.y - size_pad.y - decoration_h_without_scrollbars < size_contents.y && !(window->Flags & ImGuiWindowFlags_NoScrollbar)) || (window->Flags & ImGuiWindowFlags_AlwaysVerticalScrollbar); if (will_have_scrollbar_x) size_auto_fit.y += style.ScrollbarSize; if (will_have_scrollbar_y) @@ -5897,7 +6040,7 @@ ImGuiID ImGui::GetWindowResizeBorderID(ImGuiWindow* window, ImGuiDir dir) } // Handle resize for: Resize Grips, Borders, Gamepad -// Return true when using auto-fit (double click on resize grip) +// Return true when using auto-fit (double-click on resize grip) static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& size_auto_fit, int* border_held, int resize_grip_count, ImU32 resize_grip_col[4], const ImRect& visibility_rect) { ImGuiContext& g = *GImGui; @@ -5905,7 +6048,7 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s if ((flags & ImGuiWindowFlags_NoResize) || (flags & ImGuiWindowFlags_AlwaysAutoResize) || window->AutoFitFramesX > 0 || window->AutoFitFramesY > 0) return false; - if (window->WasActive == false) // Early out to avoid running this code for e.g. an hidden implicit/fallback Debug window. + if (window->WasActive == false) // Early out to avoid running this code for e.g. a hidden implicit/fallback Debug window. return false; bool ret_auto_fit = false; @@ -5914,6 +6057,11 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s const float grip_hover_inner_size = IM_FLOOR(grip_draw_size * 0.75f); const float grip_hover_outer_size = g.IO.ConfigWindowsResizeFromEdges ? WINDOWS_HOVER_PADDING : 0.0f; + ImRect clamp_rect = visibility_rect; + const bool window_move_from_title_bar = g.IO.ConfigWindowsMoveFromTitleBarOnly && !(window->Flags & ImGuiWindowFlags_NoTitleBar); + if (window_move_from_title_bar) + clamp_rect.Min.y -= window->TitleBarHeight(); + ImVec2 pos_target(FLT_MAX, FLT_MAX); ImVec2 size_target(FLT_MAX, FLT_MAX); @@ -5943,7 +6091,7 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s if (resize_rect.Min.x > resize_rect.Max.x) ImSwap(resize_rect.Min.x, resize_rect.Max.x); if (resize_rect.Min.y > resize_rect.Max.y) ImSwap(resize_rect.Min.y, resize_rect.Max.y); ImGuiID resize_grip_id = window->GetID(resize_grip_n); // == GetWindowResizeCornerID() - KeepAliveID(resize_grip_id); + ItemAdd(resize_rect, resize_grip_id, NULL, ImGuiItemFlags_NoNav); ButtonBehavior(resize_rect, resize_grip_id, &hovered, &held, ImGuiButtonFlags_FlattenChildren | ImGuiButtonFlags_NoNavFocus); //GetForegroundDrawList(window)->AddRect(resize_rect.Min, resize_rect.Max, IM_COL32(255, 255, 0, 255)); if (hovered || held) @@ -5960,8 +6108,8 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s { // Resize from any of the four corners // We don't use an incremental MouseDelta but rather compute an absolute target size based on mouse position - ImVec2 clamp_min = ImVec2(def.CornerPosN.x == 1.0f ? visibility_rect.Min.x : -FLT_MAX, def.CornerPosN.y == 1.0f ? visibility_rect.Min.y : -FLT_MAX); - ImVec2 clamp_max = ImVec2(def.CornerPosN.x == 0.0f ? visibility_rect.Max.x : +FLT_MAX, def.CornerPosN.y == 0.0f ? visibility_rect.Max.y : +FLT_MAX); + ImVec2 clamp_min = ImVec2(def.CornerPosN.x == 1.0f ? clamp_rect.Min.x : -FLT_MAX, (def.CornerPosN.y == 1.0f || (def.CornerPosN.y == 0.0f && window_move_from_title_bar)) ? clamp_rect.Min.y : -FLT_MAX); + ImVec2 clamp_max = ImVec2(def.CornerPosN.x == 0.0f ? clamp_rect.Max.x : +FLT_MAX, def.CornerPosN.y == 0.0f ? clamp_rect.Max.y : +FLT_MAX); ImVec2 corner_target = g.IO.MousePos - g.ActiveIdClickOffset + ImLerp(def.InnerDir * grip_hover_outer_size, def.InnerDir * -grip_hover_inner_size, def.CornerPosN); // Corner of the window corresponding to our corner grip corner_target = ImClamp(corner_target, clamp_min, clamp_max); CalcResizePosSizeFromAnyCorner(window, corner_target, def.CornerPosN, &pos_target, &size_target); @@ -5979,7 +6127,7 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s bool hovered, held; ImRect border_rect = GetResizeBorderRect(window, border_n, grip_hover_inner_size, WINDOWS_HOVER_PADDING); ImGuiID border_id = window->GetID(border_n + 4); // == GetWindowResizeBorderID() - KeepAliveID(border_id); + ItemAdd(border_rect, border_id, NULL, ImGuiItemFlags_NoNav); ButtonBehavior(border_rect, border_id, &hovered, &held, ImGuiButtonFlags_FlattenChildren | ImGuiButtonFlags_NoNavFocus); //GetForegroundDrawLists(window)->AddRect(border_rect.Min, border_rect.Max, IM_COL32(255, 255, 0, 255)); if ((hovered && g.HoveredIdTimer > WINDOWS_RESIZE_FROM_EDGES_FEEDBACK_TIMER) || held) @@ -5990,8 +6138,8 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s } if (held) { - ImVec2 clamp_min(border_n == ImGuiDir_Right ? visibility_rect.Min.x : -FLT_MAX, border_n == ImGuiDir_Down ? visibility_rect.Min.y : -FLT_MAX); - ImVec2 clamp_max(border_n == ImGuiDir_Left ? visibility_rect.Max.x : +FLT_MAX, border_n == ImGuiDir_Up ? visibility_rect.Max.y : +FLT_MAX); + ImVec2 clamp_min(border_n == ImGuiDir_Right ? clamp_rect.Min.x : -FLT_MAX, border_n == ImGuiDir_Down || (border_n == ImGuiDir_Up && window_move_from_title_bar) ? clamp_rect.Min.y : -FLT_MAX); + ImVec2 clamp_max(border_n == ImGuiDir_Left ? clamp_rect.Max.x : +FLT_MAX, border_n == ImGuiDir_Up ? clamp_rect.Max.y : +FLT_MAX); ImVec2 border_target = window->Pos; border_target[axis] = g.IO.MousePos[axis] - g.ActiveIdClickOffset[axis] + WINDOWS_HOVER_PADDING; border_target = ImClamp(border_target, clamp_min, clamp_max); @@ -6004,23 +6152,31 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s window->DC.NavLayerCurrent = ImGuiNavLayer_Main; // Navigation resize (keyboard/gamepad) + // FIXME: This cannot be moved to NavUpdateWindowing() because CalcWindowSizeAfterConstraint() need to callback into user. + // Not even sure the callback works here. if (g.NavWindowingTarget && g.NavWindowingTarget->RootWindowDockTree == window) { - ImVec2 nav_resize_delta; + ImVec2 nav_resize_dir; if (g.NavInputSource == ImGuiInputSource_Keyboard && g.IO.KeyShift) - nav_resize_delta = GetNavInputAmount2d(ImGuiNavDirSourceFlags_RawKeyboard, ImGuiNavReadMode_Down); + nav_resize_dir = GetKeyMagnitude2d(ImGuiKey_LeftArrow, ImGuiKey_RightArrow, ImGuiKey_UpArrow, ImGuiKey_DownArrow); if (g.NavInputSource == ImGuiInputSource_Gamepad) - nav_resize_delta = GetNavInputAmount2d(ImGuiNavDirSourceFlags_PadDPad, ImGuiNavReadMode_Down); - if (nav_resize_delta.x != 0.0f || nav_resize_delta.y != 0.0f) + nav_resize_dir = GetKeyMagnitude2d(ImGuiKey_GamepadDpadLeft, ImGuiKey_GamepadDpadRight, ImGuiKey_GamepadDpadUp, ImGuiKey_GamepadDpadDown); + if (nav_resize_dir.x != 0.0f || nav_resize_dir.y != 0.0f) { const float NAV_RESIZE_SPEED = 600.0f; - nav_resize_delta *= ImFloor(NAV_RESIZE_SPEED * g.IO.DeltaTime * ImMin(g.IO.DisplayFramebufferScale.x, g.IO.DisplayFramebufferScale.y)); - nav_resize_delta = ImMax(nav_resize_delta, visibility_rect.Min - window->Pos - window->Size); + const float resize_step = NAV_RESIZE_SPEED * g.IO.DeltaTime * ImMin(g.IO.DisplayFramebufferScale.x, g.IO.DisplayFramebufferScale.y); + g.NavWindowingAccumDeltaSize += nav_resize_dir * resize_step; + g.NavWindowingAccumDeltaSize = ImMax(g.NavWindowingAccumDeltaSize, clamp_rect.Min - window->Pos - window->Size); // We need Pos+Size >= clmap_rect.Min, so Size >= clmap_rect.Min - Pos, so size_delta >= clmap_rect.Min - window->Pos - window->Size g.NavWindowingToggleLayer = false; g.NavDisableMouseHover = true; resize_grip_col[0] = GetColorU32(ImGuiCol_ResizeGripActive); - // FIXME-NAV: Should store and accumulate into a separate size buffer to handle sizing constraints properly, right now a constraint will make us stuck. - size_target = CalcWindowSizeAfterConstraint(window, window->SizeFull + nav_resize_delta); + ImVec2 accum_floored = ImFloor(g.NavWindowingAccumDeltaSize); + if (accum_floored.x != 0.0f || accum_floored.y != 0.0f) + { + // FIXME-NAV: Should store and accumulate into a separate size buffer to handle sizing constraints properly, right now a constraint will make us stuck. + size_target = CalcWindowSizeAfterConstraint(window, window->SizeFull + accum_floored); + g.NavWindowingAccumDeltaSize -= accum_floored; + } } } @@ -6041,7 +6197,7 @@ static bool ImGui::UpdateWindowManualResize(ImGuiWindow* window, const ImVec2& s return ret_auto_fit; } -static inline void ClampWindowRect(ImGuiWindow* window, const ImRect& visibility_rect) +static inline void ClampWindowPos(ImGuiWindow* window, const ImRect& visibility_rect) { ImGuiContext& g = *GImGui; ImVec2 size_for_clamping = window->Size; @@ -6087,15 +6243,17 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar window->SkipItems = false; // Draw window + handle manual resize - // As we highlight the title bar when want_focus is set, multiple reappearing windows will have have their title bar highlighted on their reappearing frame. + // As we highlight the title bar when want_focus is set, multiple reappearing windows will have their title bar highlighted on their reappearing frame. const float window_rounding = window->WindowRounding; const float window_border_size = window->WindowBorderSize; if (window->Collapsed) { // Title bar only - float backup_border_size = style.FrameBorderSize; + const float backup_border_size = style.FrameBorderSize; g.Style.FrameBorderSize = window->WindowBorderSize; ImU32 title_bar_col = GetColorU32((title_bar_is_highlight && !g.NavDisableHighlight) ? ImGuiCol_TitleBgActive : ImGuiCol_TitleBgCollapsed); + if (window->ViewportOwned) + title_bar_col |= IM_COL32_A_MASK; // No alpha (we don't support is_docking_transparent_payload here because simpler and less meaningful, but could with a bit of code shuffle/reuse) RenderFrame(title_bar_rect.Min, title_bar_rect.Max, title_bar_col, true, window_rounding); g.Style.FrameBorderSize = backup_border_size; } @@ -6112,8 +6270,7 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar ImU32 bg_col = GetColorU32(GetWindowBgColorIdx(window)); if (window->ViewportOwned) { - // No alpha - bg_col = (bg_col | IM_COL32_A_MASK); + bg_col |= IM_COL32_A_MASK; // No alpha if (is_docking_transparent_payload) window->Viewport->Alpha *= DOCKING_TRANSPARENT_PAYLOAD_ALPHA; } @@ -6137,16 +6294,14 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar } // Render, for docked windows and host windows we ensure bg goes before decorations - ImDrawList* bg_draw_list = window->DockIsActive ? window->DockNode->HostWindow->DrawList : window->DrawList; - if (window->DockIsActive || (flags & ImGuiWindowFlags_DockNodeHost)) - bg_draw_list->ChannelsSetCurrent(0); if (window->DockIsActive) window->DockNode->LastBgColor = bg_col; - - bg_draw_list->AddRectFilled(window->Pos + ImVec2(0, window->TitleBarHeight()), window->Pos + window->Size, bg_col, window_rounding, (flags & ImGuiWindowFlags_NoTitleBar) ? 0 : ImDrawFlags_RoundCornersBottom); - + ImDrawList* bg_draw_list = window->DockIsActive ? window->DockNode->HostWindow->DrawList : window->DrawList; if (window->DockIsActive || (flags & ImGuiWindowFlags_DockNodeHost)) - bg_draw_list->ChannelsSetCurrent(1); + bg_draw_list->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_BG); + bg_draw_list->AddRectFilled(window->Pos + ImVec2(0, window->TitleBarHeight()), window->Pos + window->Size, bg_col, window_rounding, (flags & ImGuiWindowFlags_NoTitleBar) ? 0 : ImDrawFlags_RoundCornersBottom); + if (window->DockIsActive || (flags & ImGuiWindowFlags_DockNodeHost)) + bg_draw_list->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_FG); } if (window->DockIsActive) window->DockNode->IsBgDrawnThisFrame = true; @@ -6178,8 +6333,10 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar float unhide_sz_hit = ImFloor(g.FontSize * 0.55f); ImVec2 p = node->Pos; ImRect r(p, p + ImVec2(unhide_sz_hit, unhide_sz_hit)); + ImGuiID unhide_id = window->GetID("#UNHIDE"); + KeepAliveID(unhide_id); bool hovered, held; - if (ButtonBehavior(r, window->GetID("#UNHIDE"), &hovered, &held, ImGuiButtonFlags_FlattenChildren)) + if (ButtonBehavior(r, unhide_id, &hovered, &held, ImGuiButtonFlags_FlattenChildren)) node->WantHiddenTabBarToggle = true; else if (held && IsMouseDragging(0)) StartMouseMovingWindowOrNode(window, node, true); @@ -6202,12 +6359,15 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar { for (int resize_grip_n = 0; resize_grip_n < resize_grip_count; resize_grip_n++) { + const ImU32 col = resize_grip_col[resize_grip_n]; + if ((col & IM_COL32_A_MASK) == 0) + continue; const ImGuiResizeGripDef& grip = resize_grip_def[resize_grip_n]; const ImVec2 corner = ImLerp(window->Pos, window->Pos + window->Size, grip.CornerPosN); window->DrawList->PathLineTo(corner + grip.InnerDir * ((resize_grip_n & 1) ? ImVec2(window_border_size, resize_grip_draw_size) : ImVec2(resize_grip_draw_size, window_border_size))); window->DrawList->PathLineTo(corner + grip.InnerDir * ((resize_grip_n & 1) ? ImVec2(resize_grip_draw_size, window_border_size) : ImVec2(window_border_size, resize_grip_draw_size))); window->DrawList->PathArcToFast(ImVec2(corner.x + grip.InnerDir.x * (window_rounding + window_border_size), corner.y + grip.InnerDir.y * (window_rounding + window_border_size)), window_rounding, grip.AngleMin12, grip.AngleMax12); - window->DrawList->PathFillConvex(resize_grip_col[resize_grip_n]); + window->DrawList->PathFillConvex(col); } } @@ -6217,8 +6377,8 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar } } -// Render title text, collapse button, close button // When inside a dock node, this is handled in DockNodeCalcTabBarLayout() instead. +// Render title text, collapse button, close button void ImGui::RenderWindowTitleBarContents(ImGuiWindow* window, const ImRect& title_bar_rect, const char* name, bool* p_open) { ImGuiContext& g = *GImGui; @@ -6319,7 +6479,7 @@ void ImGui::UpdateWindowParentAndRootLinks(ImGuiWindow* window, ImGuiWindowFlags } if (parent_window && (flags & ImGuiWindowFlags_Popup)) window->RootWindowPopupTree = parent_window->RootWindowPopupTree; - if (parent_window && !(flags & ImGuiWindowFlags_Modal) && (flags & (ImGuiWindowFlags_ChildWindow | ImGuiWindowFlags_Popup))) + if (parent_window && !(flags & ImGuiWindowFlags_Modal) && (flags & (ImGuiWindowFlags_ChildWindow | ImGuiWindowFlags_Popup))) // FIXME: simply use _NoTitleBar ? window->RootWindowForTitleBarHighlight = parent_window->RootWindowForTitleBarHighlight; while (window->RootWindowForNav->Flags & ImGuiWindowFlags_NavFlattened) { @@ -6337,7 +6497,10 @@ void ImGui::UpdateWindowParentAndRootLinks(ImGuiWindow* window, ImGuiWindowFlags // - Window // .. returns Modal2 // - Window // .. returns Modal2 // - Modal2 // .. returns Modal2 -static ImGuiWindow* ImGui::FindBlockingModal(ImGuiWindow* window) +// Notes: +// - FindBlockingModal(NULL) == NULL is generally equivalent to GetTopMostPopupModal() == NULL. +// Only difference is here we check for ->Active/WasActive but it may be unecessary. +ImGuiWindow* ImGui::FindBlockingModal(ImGuiWindow* window) { ImGuiContext& g = *GImGui; if (g.OpenPopupStack.Size <= 0) @@ -6351,6 +6514,8 @@ static ImGuiWindow* ImGui::FindBlockingModal(ImGuiWindow* window) continue; if (!popup_window->Active && !popup_window->WasActive) // Check WasActive, because this code may run before popup renders on current frame, also check Active to handle newly created windows. continue; + if (window == NULL) // FindBlockingModal(NULL) test for if FocusWindow(NULL) is naturally possible via a mouse click. + return popup_window; if (IsWindowWithinBeginStackOf(window, popup_window)) // Window is rendered over last modal, no render order change needed. break; for (ImGuiWindow* parent = popup_window->ParentWindowInBeginStack->RootWindow; parent != NULL; parent = parent->ParentWindowInBeginStack->RootWindow) @@ -6380,8 +6545,6 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) const bool window_just_created = (window == NULL); if (window_just_created) window = CreateNewWindow(name, flags); - else - UpdateWindowInFocusOrderList(window, window_just_created, flags); // Automatically disable manual moving/resizing when NoInputs is set if ((flags & ImGuiWindowFlags_NoInputs) == ImGuiWindowFlags_NoInputs) @@ -6407,10 +6570,10 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) const bool window_was_appearing = window->Appearing; if (first_begin_of_the_frame) { + UpdateWindowInFocusOrderList(window, window_just_created, flags); window->Appearing = window_just_activated_by_user; if (window->Appearing) SetWindowConditionAllowFlags(window, ImGuiCond_Appearing, true); - window->FlagsPreviousFrame = window->Flags; window->Flags = (ImGuiWindowFlags)flags; window->LastFrameActive = current_frame; @@ -6458,7 +6621,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) } // Parent window is latched only on the first call to Begin() of the frame, so further append-calls can be done from a different window stack - ImGuiWindow* parent_window_in_stack = window->DockIsActive ? window->DockNode->HostWindow : g.CurrentWindowStack.empty() ? NULL : g.CurrentWindowStack.back().Window; + ImGuiWindow* parent_window_in_stack = (window->DockIsActive && window->DockNode->HostWindow) ? window->DockNode->HostWindow : g.CurrentWindowStack.empty() ? NULL : g.CurrentWindowStack.back().Window; ImGuiWindow* parent_window = first_begin_of_the_frame ? ((flags & (ImGuiWindowFlags_ChildWindow | ImGuiWindowFlags_Popup)) ? parent_window_in_stack : NULL) : window->ParentWindow; IM_ASSERT(parent_window != NULL || !(flags & ImGuiWindowFlags_ChildWindow)); @@ -6472,20 +6635,11 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) ImGuiWindowStackData window_stack_data; window_stack_data.Window = window; window_stack_data.ParentLastItemDataBackup = g.LastItemData; - window_stack_data.StackSizesOnBegin.SetToCurrentState(); + window_stack_data.StackSizesOnBegin.SetToContextState(&g); g.CurrentWindowStack.push_back(window_stack_data); - g.CurrentWindow = NULL; if (flags & ImGuiWindowFlags_ChildMenu) g.BeginMenuCount++; - if (flags & ImGuiWindowFlags_Popup) - { - ImGuiPopupData& popup_ref = g.OpenPopupStack[g.BeginPopupStack.Size]; - popup_ref.Window = window; - g.BeginPopupStack.push_back(popup_ref); - window->PopupId = popup_ref.PopupId; - } - // Update ->RootWindow and others pointers (before any possible call to FocusWindow) if (first_begin_of_the_frame) { @@ -6493,6 +6647,21 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) window->ParentWindowInBeginStack = parent_window_in_stack; } + // Add to focus scope stack + PushFocusScope(window->ID); + window->NavRootFocusScopeId = g.CurrentFocusScopeId; + g.CurrentWindow = NULL; + + // Add to popup stack + if (flags & ImGuiWindowFlags_Popup) + { + ImGuiPopupData& popup_ref = g.OpenPopupStack[g.BeginPopupStack.Size]; + popup_ref.Window = window; + popup_ref.ParentNavLayer = parent_window_in_stack->DC.NavLayerCurrent; + g.BeginPopupStack.push_back(popup_ref); + window->PopupId = popup_ref.PopupId; + } + // Process SetNextWindow***() calls // (FIXME: Consider splitting the HasXXX flags into X/Y components bool window_pos_set_by_api = false; @@ -6560,7 +6729,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) if (flags & ImGuiWindowFlags_DockNodeHost) { window->DrawList->ChannelsSplit(2); - window->DrawList->ChannelsSetCurrent(1); // Render decorations on channel 1 as we will render the backgrounds manually later + window->DrawList->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_FG); // Render decorations on channel 1 as we will render the backgrounds manually later } // Restore buffer capacity when woken from a compacted state, to avoid @@ -6640,6 +6809,9 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) window->DC.MenuBarOffset.x = ImMax(ImMax(window->WindowPadding.x, style.ItemSpacing.x), g.NextWindowData.MenuBarOffsetMinVal.x); window->DC.MenuBarOffset.y = g.NextWindowData.MenuBarOffsetMinVal.y; + bool use_current_size_for_scrollbar_x = window_just_created; + bool use_current_size_for_scrollbar_y = window_just_created; + // Collapse window by double-clicking on title bar // At this point we don't have a clipping rectangle setup yet, so we can use the title bar area for hit detection and drawing if (!(flags & ImGuiWindowFlags_NoTitleBar) && !(flags & ImGuiWindowFlags_NoCollapse) && !window->DockIsActive) @@ -6651,6 +6823,8 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) if (window->WantCollapseToggle) { window->Collapsed = !window->Collapsed; + if (!window->Collapsed) + use_current_size_for_scrollbar_y = true; MarkIniSettingsDirty(window); } } @@ -6662,10 +6836,17 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // SIZE + // Outer Decoration Sizes + // (we need to clear ScrollbarSize immediatly as CalcWindowAutoFitSize() needs it and can be called from other locations). + const ImVec2 scrollbar_sizes_from_last_frame = window->ScrollbarSizes; + window->DecoOuterSizeX1 = 0.0f; + window->DecoOuterSizeX2 = 0.0f; + window->DecoOuterSizeY1 = window->TitleBarHeight() + window->MenuBarHeight(); + window->DecoOuterSizeY2 = 0.0f; + window->ScrollbarSizes = ImVec2(0.0f, 0.0f); + // Calculate auto-fit size, handle automatic resize const ImVec2 size_auto_fit = CalcWindowAutoFitSize(window, window->ContentSizeIdeal); - bool use_current_size_for_scrollbar_x = window_just_created; - bool use_current_size_for_scrollbar_y = window_just_created; if ((flags & ImGuiWindowFlags_AlwaysAutoResize) && !window->Collapsed) { // Using SetNextWindowSize() overrides ImGuiWindowFlags_AlwaysAutoResize, so it can be used on tooltips/popups, etc. @@ -6702,9 +6883,6 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) window->SizeFull = CalcWindowSizeAfterConstraint(window, window->SizeFull); window->Size = window->Collapsed && !(flags & ImGuiWindowFlags_ChildWindow) ? window->TitleBarRect().GetSize() : window->SizeFull; - // Decoration size - const float decoration_up_height = window->TitleBarHeight() + window->MenuBarHeight(); - // POSITION // Popup latch its initial position, will position itself when it appears next frame @@ -6736,7 +6914,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) window->Pos = FindBestWindowPosForPopup(window); // Late create viewport if we don't fit within our current host viewport. - if (window->ViewportAllowPlatformMonitorExtend >= 0 && !window->ViewportOwned && !(window->Viewport->Flags & ImGuiViewportFlags_Minimized)) + if (window->ViewportAllowPlatformMonitorExtend >= 0 && !window->ViewportOwned && !(window->Viewport->Flags & ImGuiViewportFlags_IsMinimized)) if (!window->Viewport->GetMainRect().Contains(window->Rect())) { // This is based on the assumption that the DPI will be known ahead (same as the DPI of the selection done in UpdateSelectWindowViewport) @@ -6763,11 +6941,11 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // Clamp position/size so window stays visible within its viewport or monitor // Ignore zero-sized display explicitly to avoid losing positions if a window manager reports zero-sized window when initializing or minimizing. // FIXME: Similar to code in GetWindowAllowedExtentRect() - if (!window_pos_set_by_api && !(flags & ImGuiWindowFlags_ChildWindow) && window->AutoFitFramesX <= 0 && window->AutoFitFramesY <= 0) + if (!window_pos_set_by_api && !(flags & ImGuiWindowFlags_ChildWindow)) { if (!window->ViewportOwned && viewport_rect.GetWidth() > 0 && viewport_rect.GetHeight() > 0.0f) { - ClampWindowRect(window, visibility_rect); + ClampWindowPos(window, visibility_rect); } else if (window->ViewportOwned && g.PlatformIO.Monitors.Size > 0) { @@ -6775,7 +6953,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) const ImGuiPlatformMonitor* monitor = GetViewportPlatformMonitor(window->Viewport); visibility_rect.Min = monitor->WorkPos + visibility_padding; visibility_rect.Max = monitor->WorkPos + monitor->WorkSize - visibility_padding; - ClampWindowRect(window, visibility_rect); + ClampWindowPos(window, visibility_rect); } } window->Pos = ImFloor(window->Pos); @@ -6799,31 +6977,15 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) want_focus = true; else if ((window->DockIsActive || (flags & ImGuiWindowFlags_ChildWindow) == 0) && !(flags & ImGuiWindowFlags_Tooltip)) want_focus = true; - - ImGuiWindow* modal = GetTopMostPopupModal(); - if (modal != NULL && !IsWindowWithinBeginStackOf(window, modal)) - { - // Avoid focusing a window that is created outside of active modal. This will prevent active modal from being closed. - // Since window is not focused it would reappear at the same display position like the last time it was visible. - // In case of completely new windows it would go to the top (over current modal), but input to such window would still be blocked by modal. - // Position window behind a modal that is not a begin-parent of this window. - want_focus = false; - if (window == window->RootWindow) - { - ImGuiWindow* blocking_modal = FindBlockingModal(window); - IM_ASSERT(blocking_modal != NULL); - BringWindowToDisplayBehind(window, blocking_modal); - } - } } - // [Test Engine] Register whole window in the item system + // [Test Engine] Register whole window in the item system (before submitting further decorations) #ifdef IMGUI_ENABLE_TEST_ENGINE if (g.TestEngineHookItems) { IM_ASSERT(window->IDStack.Size == 1); - window->IDStack.Size = 0; - IMGUI_TEST_ENGINE_ITEM_ADD(window->Rect(), window->ID); + window->IDStack.Size = 0; // As window->IDStack[0] == window->ID here, make sure TestEngine doesn't erroneously see window as parent of itself. + IMGUI_TEST_ENGINE_ITEM_ADD(window->ID, window->Rect(), NULL); IMGUI_TEST_ENGINE_ITEM_INFO(window->ID, window->Name, (g.HoveredWindow == window) ? ImGuiItemStatusFlags_HoveredRect : 0); window->IDStack.Size = 1; } @@ -6862,9 +7024,10 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) if (!window->Collapsed) { // When reading the current size we need to read it after size constraints have been applied. - // When we use InnerRect here we are intentionally reading last frame size, same for ScrollbarSizes values before we set them again. - ImVec2 avail_size_from_current_frame = ImVec2(window->SizeFull.x, window->SizeFull.y - decoration_up_height); - ImVec2 avail_size_from_last_frame = window->InnerRect.GetSize() + window->ScrollbarSizes; + // Intentionally use previous frame values for InnerRect and ScrollbarSizes. + // And when we use window->DecorationUp here it doesn't have ScrollbarSizes.y applied yet. + ImVec2 avail_size_from_current_frame = ImVec2(window->SizeFull.x, window->SizeFull.y - (window->DecoOuterSizeY1 + window->DecoOuterSizeY2)); + ImVec2 avail_size_from_last_frame = window->InnerRect.GetSize() + scrollbar_sizes_from_last_frame; ImVec2 needed_size_from_last_frame = window_just_created ? ImVec2(0, 0) : window->ContentSize + window->WindowPadding * 2.0f; float size_x_for_scrollbars = use_current_size_for_scrollbar_x ? avail_size_from_current_frame.x : avail_size_from_last_frame.x; float size_y_for_scrollbars = use_current_size_for_scrollbar_y ? avail_size_from_current_frame.y : avail_size_from_last_frame.y; @@ -6874,10 +7037,14 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) if (window->ScrollbarX && !window->ScrollbarY) window->ScrollbarY = (needed_size_from_last_frame.y > size_y_for_scrollbars) && !(flags & ImGuiWindowFlags_NoScrollbar); window->ScrollbarSizes = ImVec2(window->ScrollbarY ? style.ScrollbarSize : 0.0f, window->ScrollbarX ? style.ScrollbarSize : 0.0f); + + // Amend the partially filled window->DecorationXXX values. + window->DecoOuterSizeX2 += window->ScrollbarSizes.x; + window->DecoOuterSizeY2 += window->ScrollbarSizes.y; } // UPDATE RECTANGLES (1- THOSE NOT AFFECTED BY SCROLLING) - // Update various regions. Variables they depends on should be set above in this function. + // Update various regions. Variables they depend on should be set above in this function. // We set this up after processing the resize grip so that our rectangles doesn't lag by a frame. // Outer rectangle @@ -6899,10 +7066,10 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // - ScrollToRectEx() // - NavUpdatePageUpPageDown() // - Scrollbar() - window->InnerRect.Min.x = window->Pos.x; - window->InnerRect.Min.y = window->Pos.y + decoration_up_height; - window->InnerRect.Max.x = window->Pos.x + window->Size.x - window->ScrollbarSizes.x; - window->InnerRect.Max.y = window->Pos.y + window->Size.y - window->ScrollbarSizes.y; + window->InnerRect.Min.x = window->Pos.x + window->DecoOuterSizeX1; + window->InnerRect.Min.y = window->Pos.y + window->DecoOuterSizeY1; + window->InnerRect.Max.x = window->Pos.x + window->Size.x - window->DecoOuterSizeX2; + window->InnerRect.Max.y = window->Pos.y + window->Size.y - window->DecoOuterSizeY2; // Inner clipping rectangle. // Will extend a little bit outside the normal work region. @@ -7003,6 +7170,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // Apply scrolling window->Scroll = CalcNextScrollFromScrollTargetAndClamp(window); window->ScrollTarget = ImVec2(FLT_MAX, FLT_MAX); + window->DecoInnerSizeX1 = window->DecoInnerSizeY1 = 0.0f; // DRAWING @@ -7024,8 +7192,8 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // - We disable this when the parent window has zero vertices, which is a common pattern leading to laying out multiple overlapping childs ImGuiWindow* previous_child = parent_window->DC.ChildWindows.Size >= 2 ? parent_window->DC.ChildWindows[parent_window->DC.ChildWindows.Size - 2] : NULL; bool previous_child_overlapping = previous_child ? previous_child->Rect().Overlaps(window->Rect()) : false; - bool parent_is_empty = parent_window->DrawList->VtxBuffer.Size > 0; - if (window->DrawList->CmdBuffer.back().ElemCount == 0 && parent_is_empty && !previous_child_overlapping) + bool parent_is_empty = (parent_window->DrawList->VtxBuffer.Size == 0); + if (window->DrawList->CmdBuffer.back().ElemCount == 0 && !parent_is_empty && !previous_child_overlapping) render_decorations_in_parent = true; } if (render_decorations_in_parent) @@ -7049,8 +7217,8 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // - BeginTabBar() for right-most edge const bool allow_scrollbar_x = !(flags & ImGuiWindowFlags_NoScrollbar) && (flags & ImGuiWindowFlags_HorizontalScrollbar); const bool allow_scrollbar_y = !(flags & ImGuiWindowFlags_NoScrollbar); - const float work_rect_size_x = (window->ContentSizeExplicit.x != 0.0f ? window->ContentSizeExplicit.x : ImMax(allow_scrollbar_x ? window->ContentSize.x : 0.0f, window->Size.x - window->WindowPadding.x * 2.0f - window->ScrollbarSizes.x)); - const float work_rect_size_y = (window->ContentSizeExplicit.y != 0.0f ? window->ContentSizeExplicit.y : ImMax(allow_scrollbar_y ? window->ContentSize.y : 0.0f, window->Size.y - window->WindowPadding.y * 2.0f - decoration_up_height - window->ScrollbarSizes.y)); + const float work_rect_size_x = (window->ContentSizeExplicit.x != 0.0f ? window->ContentSizeExplicit.x : ImMax(allow_scrollbar_x ? window->ContentSize.x : 0.0f, window->Size.x - window->WindowPadding.x * 2.0f - (window->DecoOuterSizeX1 + window->DecoOuterSizeX2))); + const float work_rect_size_y = (window->ContentSizeExplicit.y != 0.0f ? window->ContentSizeExplicit.y : ImMax(allow_scrollbar_y ? window->ContentSize.y : 0.0f, window->Size.y - window->WindowPadding.y * 2.0f - (window->DecoOuterSizeY1 + window->DecoOuterSizeY2))); window->WorkRect.Min.x = ImFloor(window->InnerRect.Min.x - window->Scroll.x + ImMax(window->WindowPadding.x, window->WindowBorderSize)); window->WorkRect.Min.y = ImFloor(window->InnerRect.Min.y - window->Scroll.y + ImMax(window->WindowPadding.y, window->WindowBorderSize)); window->WorkRect.Max.x = window->WorkRect.Min.x + work_rect_size_x; @@ -7061,21 +7229,21 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) // FIXME-OBSOLETE: window->ContentRegionRect.Max is currently very misleading / partly faulty, but some BeginChild() patterns relies on it. // Used by: // - Mouse wheel scrolling + many other things - window->ContentRegionRect.Min.x = window->Pos.x - window->Scroll.x + window->WindowPadding.x; - window->ContentRegionRect.Min.y = window->Pos.y - window->Scroll.y + window->WindowPadding.y + decoration_up_height; - window->ContentRegionRect.Max.x = window->ContentRegionRect.Min.x + (window->ContentSizeExplicit.x != 0.0f ? window->ContentSizeExplicit.x : (window->Size.x - window->WindowPadding.x * 2.0f - window->ScrollbarSizes.x)); - window->ContentRegionRect.Max.y = window->ContentRegionRect.Min.y + (window->ContentSizeExplicit.y != 0.0f ? window->ContentSizeExplicit.y : (window->Size.y - window->WindowPadding.y * 2.0f - decoration_up_height - window->ScrollbarSizes.y)); + window->ContentRegionRect.Min.x = window->Pos.x - window->Scroll.x + window->WindowPadding.x + window->DecoOuterSizeX1; + window->ContentRegionRect.Min.y = window->Pos.y - window->Scroll.y + window->WindowPadding.y + window->DecoOuterSizeY1; + window->ContentRegionRect.Max.x = window->ContentRegionRect.Min.x + (window->ContentSizeExplicit.x != 0.0f ? window->ContentSizeExplicit.x : (window->Size.x - window->WindowPadding.x * 2.0f - (window->DecoOuterSizeX1 + window->DecoOuterSizeX2))); + window->ContentRegionRect.Max.y = window->ContentRegionRect.Min.y + (window->ContentSizeExplicit.y != 0.0f ? window->ContentSizeExplicit.y : (window->Size.y - window->WindowPadding.y * 2.0f - (window->DecoOuterSizeY1 + window->DecoOuterSizeY2))); // Setup drawing context // (NB: That term "drawing context / DC" lost its meaning a long time ago. Initially was meant to hold transient data only. Nowadays difference between window-> and window->DC-> is dubious.) - window->DC.Indent.x = 0.0f + window->WindowPadding.x - window->Scroll.x; + window->DC.Indent.x = window->DecoOuterSizeX1 + window->WindowPadding.x - window->Scroll.x; window->DC.GroupOffset.x = 0.0f; window->DC.ColumnsOffset.x = 0.0f; // Record the loss of precision of CursorStartPos which can happen due to really large scrolling amount. // This is used by clipper to compensate and fix the most common use case of large scroll area. Easy and cheap, next best thing compared to switching everything to double or ImU64. - double start_pos_highp_x = (double)window->Pos.x + window->WindowPadding.x - (double)window->Scroll.x + window->DC.ColumnsOffset.x; - double start_pos_highp_y = (double)window->Pos.y + window->WindowPadding.y - (double)window->Scroll.y + decoration_up_height; + double start_pos_highp_x = (double)window->Pos.x + window->WindowPadding.x - (double)window->Scroll.x + window->DecoOuterSizeX1 + window->DC.ColumnsOffset.x; + double start_pos_highp_y = (double)window->Pos.y + window->WindowPadding.y - (double)window->Scroll.y + window->DecoOuterSizeY1; window->DC.CursorStartPos = ImVec2((float)start_pos_highp_x, (float)start_pos_highp_y); window->DC.CursorStartPosLossyness = ImVec2((float)(start_pos_highp_x - window->DC.CursorStartPos.x), (float)(start_pos_highp_y - window->DC.CursorStartPos.y)); window->DC.CursorPos = window->DC.CursorStartPos; @@ -7084,12 +7252,14 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) window->DC.IdealMaxPos = window->DC.CursorStartPos; window->DC.CurrLineSize = window->DC.PrevLineSize = ImVec2(0.0f, 0.0f); window->DC.CurrLineTextBaseOffset = window->DC.PrevLineTextBaseOffset = 0.0f; - window->DC.IsSameLine = false; + window->DC.IsSameLine = window->DC.IsSetPos = false; window->DC.NavLayerCurrent = ImGuiNavLayer_Main; window->DC.NavLayersActiveMask = window->DC.NavLayersActiveMaskNext; + window->DC.NavLayersActiveMaskNext = 0x00; + window->DC.NavIsScrollPushableX = true; window->DC.NavHideHighlightOneFrame = false; - window->DC.NavHasScroll = (window->ScrollMax.y > 0.0f); + window->DC.NavWindowHasScrollY = (window->ScrollMax.y > 0.0f); window->DC.MenuBarAppending = false; window->DC.MenuColumns.Update(style.ItemSpacing.x, window_just_activated_by_user); @@ -7112,11 +7282,13 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) window->AutoFitFramesY--; // Apply focus (we need to call FocusWindow() AFTER setting DC.CursorStartPos so our initial navigation reference rectangle can start around there) + // We ImGuiFocusRequestFlags_UnlessBelowModal to: + // - Avoid focusing a window that is created outside of a modal. This will prevent active modal from being closed. + // - Position window behind the modal that is not a begin-parent of this window. if (want_focus) - { - FocusWindow(window); + FocusWindow(window, ImGuiFocusRequestFlags_UnlessBelowModal); + if (want_focus && window == g.NavWindow) NavInitWindow(window, false); // <-- this is in the way for us to be able to defer and sort reappearing FocusWindow() calls - } // Close requested by platform window if (p_open != NULL && window->Viewport->PlatformRequestClose && window->Viewport != GetMainViewport()) @@ -7125,7 +7297,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) { window->Viewport->PlatformRequestClose = false; g.NavWindowingToggleLayer = false; // Assume user mapped PlatformRequestClose on ALT-F4 so we disable ALT for menu toggle. False positive not an issue. - IMGUI_DEBUG_LOG_VIEWPORT("Window '%s' PlatformRequestClose\n", window->Name); + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Window '%s' PlatformRequestClose\n", window->Name); *p_open = false; } } @@ -7143,7 +7315,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) /* //if (g.NavWindow == window && g.ActiveId == 0) if (g.ActiveId == window->MoveId) - if (g.IO.KeyCtrl && IsKeyPressedMap(ImGuiKey_C)) + if (g.IO.KeyCtrl && IsKeyPressed(ImGuiKey_C)) LogToClipboard(); */ @@ -7169,9 +7341,17 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) else SetLastItemData(window->MoveId, g.CurrentItemFlags, IsMouseHoveringRect(title_bar_rect.Min, title_bar_rect.Max, false) ? ImGuiItemStatusFlags_HoveredRect : 0, title_bar_rect); - // [Test Engine] Register title bar / tab + // [DEBUG] +#ifndef IMGUI_DISABLE_DEBUG_TOOLS + if (g.DebugLocateId != 0 && (window->ID == g.DebugLocateId || window->MoveId == g.DebugLocateId)) + DebugLocateItemResolveWithLastItem(); +#endif + + // [Test Engine] Register title bar / tab with MoveId. +#ifdef IMGUI_ENABLE_TEST_ENGINE if (!(window->Flags & ImGuiWindowFlags_NoTitleBar)) - IMGUI_TEST_ENGINE_ITEM_ADD(g.LastItemData.Rect, g.LastItemData.ID); + IMGUI_TEST_ENGINE_ITEM_ADD(g.LastItemData.ID, g.LastItemData.Rect, &g.LastItemData); +#endif } else { @@ -7180,9 +7360,6 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) SetCurrentWindow(window); } - // Pull/inherit current state - window->DC.NavFocusScopeIdCurrent = (flags & ImGuiWindowFlags_ChildWindow) ? parent_window->DC.NavFocusScopeIdCurrent : window->GetID("#FOCUSSCOPE"); // Inherit from parent only // -V595 - if (!(flags & ImGuiWindowFlags_DockNodeHost)) PushClipRect(window->InnerClipRect.Min, window->InnerClipRect.Max, true); @@ -7248,9 +7425,9 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) skip_items = true; window->SkipItems = skip_items; - // Only clear NavLayersActiveMaskNext when marked as visible, so a CTRL+Tab back can use a safe value. - if (!window->SkipItems) - window->DC.NavLayersActiveMaskNext = 0x00; + // Restore NavLayersActiveMaskNext to previous value when not visible, so a CTRL+Tab back can use a safe value. + if (window->SkipItems) + window->DC.NavLayersActiveMaskNext = window->DC.NavLayersActiveMask; // Sanity check: there are two spots which can set Appearing = true // - when 'window_just_activated_by_user' is set -> HiddenFramesCannotSkipItems is set -> SkipItems always false @@ -7259,6 +7436,15 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) IM_ASSERT(window->Appearing == false); // Please report on GitHub if this triggers: https://github.com/ocornut/imgui/issues/4177 } + // [DEBUG] io.ConfigDebugBeginReturnValue override return value to test Begin/End and BeginChild/EndChild behaviors. + // (The implicit fallback window is NOT automatically ended allowing it to always be able to receive commands without crashing) + if (!window->IsFallbackWindow && ((g.IO.ConfigDebugBeginReturnValueOnce && window_just_created) || (g.IO.ConfigDebugBeginReturnValueLoop && g.DebugBeginReturnValueCullDepth == g.CurrentWindowStack.Size))) + { + if (window->AutoFitFramesX > 0) { window->AutoFitFramesX++; } + if (window->AutoFitFramesY > 0) { window->AutoFitFramesY++; } + return false; + } + return !window->SkipItems; } @@ -7284,11 +7470,15 @@ void ImGui::End() EndColumns(); if (!(window->Flags & ImGuiWindowFlags_DockNodeHost)) // Pop inner window clip rectangle PopClipRect(); + PopFocusScope(); // Stop logging if (!(window->Flags & ImGuiWindowFlags_ChildWindow)) // FIXME: add more options for scope of logging LogFinish(); + if (window->DC.IsSetPos) + ErrorCheckUsingSetCursorPosToExtendParentBoundaries(); + // Docking: report contents sizes to parent to allow for auto-resize if (window->DockNode && window->DockTabIsVisible) if (ImGuiWindow* host_window = window->DockNode->HostWindow) // FIXME-DOCK @@ -7300,7 +7490,7 @@ void ImGui::End() g.BeginMenuCount--; if (window->Flags & ImGuiWindowFlags_Popup) g.BeginPopupStack.pop_back(); - g.CurrentWindowStack.back().StackSizesOnBegin.CompareWithCurrentState(); + g.CurrentWindowStack.back().StackSizesOnBegin.CompareWithContextState(&g); g.CurrentWindowStack.pop_back(); SetCurrentWindow(g.CurrentWindowStack.Size == 0 ? NULL : g.CurrentWindowStack.back().Window); if (g.CurrentWindow) @@ -7386,26 +7576,38 @@ int ImGui::FindWindowDisplayIndex(ImGuiWindow* window) } // Moving window to front of display and set focus (which happens to be back of our sorted list) -void ImGui::FocusWindow(ImGuiWindow* window) +void ImGui::FocusWindow(ImGuiWindow* window, ImGuiFocusRequestFlags flags) { ImGuiContext& g = *GImGui; + // Modal check? + if ((flags & ImGuiFocusRequestFlags_UnlessBelowModal) && (g.NavWindow != window)) // Early out in common case. + if (ImGuiWindow* blocking_modal = FindBlockingModal(window)) + { + IMGUI_DEBUG_LOG_FOCUS("[focus] FocusWindow(\"%s\", UnlessBelowModal): prevented by \"%s\".\n", window ? window->Name : "", blocking_modal->Name); + if (window && window == window->RootWindow && (window->Flags & ImGuiWindowFlags_NoBringToFrontOnFocus) == 0) + BringWindowToDisplayBehind(window, blocking_modal); // Still bring to right below modal. + return; + } + + // Find last focused child (if any) and focus it instead. + if ((flags & ImGuiFocusRequestFlags_RestoreFocusedChild) && window != NULL) + window = NavRestoreLastChildNavWindow(window); + + // Apply focus if (g.NavWindow != window) { - g.NavWindow = window; + SetNavWindow(window); if (window && g.NavDisableMouseHover) g.NavMousePosDirty = true; g.NavId = window ? window->NavLastIds[0] : 0; // Restore NavId - g.NavFocusScopeId = 0; - g.NavIdIsAlive = false; g.NavLayer = ImGuiNavLayer_Main; - g.NavInitRequest = g.NavMoveSubmitted = g.NavMoveScoringItems = false; - NavUpdateAnyRequestFlag(); - //IMGUI_DEBUG_LOG("FocusWindow(\"%s\")\n", window ? window->Name : NULL); - } + g.NavFocusScopeId = window ? window->NavRootFocusScopeId : 0; + g.NavIdIsAlive = false; - // Close popups if any - ClosePopupsOverWindow(window, false); + // Close popups if any + ClosePopupsOverWindow(window, false); + } // Move the root window to the top of the pile IM_ASSERT(window == NULL || window->RootWindowDockTree != NULL); @@ -7437,7 +7639,7 @@ void ImGui::FocusWindow(ImGuiWindow* window) BringWindowToDisplayFront(display_front_window); } -void ImGui::FocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWindow* ignore_window) +void ImGui::FocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWindow* ignore_window, ImGuiViewport* filter_viewport, ImGuiFocusRequestFlags flags) { ImGuiContext& g = *GImGui; int start_idx = g.WindowsFocusOrder.Size - 1; @@ -7457,19 +7659,22 @@ void ImGui::FocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWind // We may later decide to test for different NoXXXInputs based on the active navigation input (mouse vs nav) but that may feel more confusing to the user. ImGuiWindow* window = g.WindowsFocusOrder[i]; IM_ASSERT(window == window->RootWindow); - if (window != ignore_window && window->WasActive) - if ((window->Flags & (ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs)) != (ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs)) - { - // FIXME-DOCK: This is failing (lagging by one frame) for docked windows. - // If A and B are docked into window and B disappear, at the NewFrame() call site window->NavLastChildNavWindow will still point to B. - // We might leverage the tab order implicitly stored in window->DockNodeAsHost->TabBar (essentially the 'most_recently_selected_tab' code in tab bar will do that but on next update) - // to tell which is the "previous" window. Or we may leverage 'LastFrameFocused/LastFrameJustFocused' and have this function handle child window itself? - ImGuiWindow* focus_window = NavRestoreLastChildNavWindow(window); - FocusWindow(focus_window); - return; - } + if (window == ignore_window || !window->WasActive) + continue; + if (filter_viewport != NULL && window->Viewport != filter_viewport) + continue; + if ((window->Flags & (ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs)) != (ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs)) + { + // FIXME-DOCK: When ImGuiFocusRequestFlags_RestoreFocusedChild is set... + // This is failing (lagging by one frame) for docked windows. + // If A and B are docked into window and B disappear, at the NewFrame() call site window->NavLastChildNavWindow will still point to B. + // We might leverage the tab order implicitly stored in window->DockNodeAsHost->TabBar (essentially the 'most_recently_selected_tab' code in tab bar will do that but on next update) + // to tell which is the "previous" window. Or we may leverage 'LastFrameFocused/LastFrameJustFocused' and have this function handle child window itself? + FocusWindow(window, flags); + return; + } } - FocusWindow(NULL); + FocusWindow(NULL, flags); } // Important: this alone doesn't alter current ImDrawList state. This is called by PushFont/PopFont only. @@ -7591,13 +7796,12 @@ void ImGui::InhibitInertialScroll() g.InertialScrollInhibited=true; } -// FIXME: Look into renaming this once we have settled the new Focus/Activation/TabStop system. -void ImGui::PushAllowKeyboardFocus(bool allow_keyboard_focus) +void ImGui::PushTabStop(bool tab_stop) { - PushItemFlag(ImGuiItemFlags_NoTabStop, !allow_keyboard_focus); + PushItemFlag(ImGuiItemFlags_NoTabStop, !tab_stop); } -void ImGui::PopAllowKeyboardFocus() +void ImGui::PopTabStop() { PopItemFlag(); } @@ -7800,6 +8004,9 @@ void ImGui::SetWindowPos(ImGuiWindow* window, const ImVec2& pos, ImGuiCond cond) const ImVec2 old_pos = window->Pos; window->Pos = ImFloor(pos); ImVec2 offset = window->Pos - old_pos; + if (offset.x == 0.0f && offset.y == 0.0f) + return; + MarkIniSettingsDirty(window); // FIXME: share code with TranslateWindow(), need to confirm whether the 3 rect modified by TranslateWindow() are desirable here. window->DC.CursorPos += offset; // As we happen to move the window while it is being appended to (which is a bad idea - will smear) let's at least offset the cursor window->DC.CursorMaxPos += offset; // And more importantly we need to offset CursorMaxPos/CursorStartPos this so ContentSize calculation doesn't get affected. @@ -7835,26 +8042,19 @@ void ImGui::SetWindowSize(ImGuiWindow* window, const ImVec2& size, ImGuiCond con window->SetWindowSizeAllowFlags &= ~(ImGuiCond_Once | ImGuiCond_FirstUseEver | ImGuiCond_Appearing); // Set - if (size.x > 0.0f) - { - window->AutoFitFramesX = 0; + ImVec2 old_size = window->SizeFull; + window->AutoFitFramesX = (size.x <= 0.0f) ? 2 : 0; + window->AutoFitFramesY = (size.y <= 0.0f) ? 2 : 0; + if (size.x <= 0.0f) + window->AutoFitOnlyGrows = false; + else window->SizeFull.x = IM_FLOOR(size.x); - } - else - { - window->AutoFitFramesX = 2; + if (size.y <= 0.0f) window->AutoFitOnlyGrows = false; - } - if (size.y > 0.0f) - { - window->AutoFitFramesY = 0; + else window->SizeFull.y = IM_FLOOR(size.y); - } - else - { - window->AutoFitFramesY = 2; - window->AutoFitOnlyGrows = false; - } + if (old_size.x != window->SizeFull.x || old_size.y != window->SizeFull.y) + MarkIniSettingsDirty(window); } void ImGui::SetWindowSize(const ImVec2& size, ImGuiCond cond) @@ -7886,6 +8086,12 @@ void ImGui::SetWindowHitTestHole(ImGuiWindow* window, const ImVec2& pos, const I window->HitTestHoleOffset = ImVec2ih(pos - window->Pos); } +void ImGui::SetWindowHiddendAndSkipItemsForCurrentFrame(ImGuiWindow* window) +{ + window->Hidden = window->SkipItems = true; + window->HiddenFramesCanSkipItems = 1; +} + void ImGui::SetWindowCollapsed(bool collapsed, ImGuiCond cond) { SetWindowCollapsed(GImGui->CurrentWindow, collapsed, cond); @@ -8070,26 +8276,38 @@ void ImGui::ActivateItem(ImGuiID id) void ImGui::PushFocusScope(ImGuiID id) { ImGuiContext& g = *GImGui; - ImGuiWindow* window = g.CurrentWindow; - g.FocusScopeStack.push_back(window->DC.NavFocusScopeIdCurrent); - window->DC.NavFocusScopeIdCurrent = id; + g.FocusScopeStack.push_back(id); + g.CurrentFocusScopeId = id; } void ImGui::PopFocusScope() { ImGuiContext& g = *GImGui; - ImGuiWindow* window = g.CurrentWindow; IM_ASSERT(g.FocusScopeStack.Size > 0); // Too many PopFocusScope() ? - window->DC.NavFocusScopeIdCurrent = g.FocusScopeStack.back(); g.FocusScopeStack.pop_back(); + g.CurrentFocusScopeId = g.FocusScopeStack.Size ? g.FocusScopeStack.back() : 0; } +// Note: this will likely be called ActivateItem() once we rework our Focus/Activation system! void ImGui::SetKeyboardFocusHere(int offset) { ImGuiContext& g = *GImGui; ImGuiWindow* window = g.CurrentWindow; IM_ASSERT(offset >= -1); // -1 is allowed but not below - g.NavWindow = window; + IMGUI_DEBUG_LOG_ACTIVEID("SetKeyboardFocusHere(%d) in window \"%s\"\n", offset, window->Name); + + // It makes sense in the vast majority of cases to never interrupt a drag and drop. + // When we refactor this function into ActivateItem() we may want to make this an option. + // MovingWindow is protected from most user inputs using SetActiveIdUsingNavAndKeys(), but + // is also automatically dropped in the event g.ActiveId is stolen. + if (g.DragDropActive || g.MovingWindow != NULL) + { + IMGUI_DEBUG_LOG_ACTIVEID("SetKeyboardFocusHere() ignored while DragDropActive!\n"); + return; + } + + SetNavWindow(window); + ImGuiScrollFlags scroll_flags = window->Appearing ? ImGuiScrollFlags_KeepVisibleEdgeX | ImGuiScrollFlags_AlwaysCenterY : ImGuiScrollFlags_KeepVisibleEdgeX | ImGuiScrollFlags_KeepVisibleEdgeY; NavMoveRequestSubmit(ImGuiDir_None, offset < 0 ? ImGuiDir_Up : ImGuiDir_Down, ImGuiNavMoveFlags_Tabbing | ImGuiNavMoveFlags_FocusApi, scroll_flags); // FIXME-NAV: Once we refactor tabbing, add LegacyApi flag to not activate non-inputable. if (offset == -1) @@ -8109,16 +8327,15 @@ void ImGui::SetItemDefaultFocus() ImGuiWindow* window = g.CurrentWindow; if (!window->Appearing) return; - if (g.NavWindow != window->RootWindowForNav || (!g.NavInitRequest && g.NavInitResultId == 0) || g.NavLayer != window->DC.NavLayerCurrent) + if (g.NavWindow != window->RootWindowForNav || (!g.NavInitRequest && g.NavInitResult.ID == 0) || g.NavLayer != window->DC.NavLayerCurrent) return; g.NavInitRequest = false; - g.NavInitResultId = g.LastItemData.ID; - g.NavInitResultRectRel = WindowRectAbsToRel(window, g.LastItemData.Rect); + NavApplyItemToResult(&g.NavInitResult); NavUpdateAnyRequestFlag(); - // Scroll could be done in NavInitRequestApplyResult() via a opt-in flag (we however don't want regular init requests to scroll) - if (!IsItemVisible()) + // Scroll could be done in NavInitRequestApplyResult() via an opt-in flag (we however don't want regular init requests to scroll) + if (!window->ClipRect.Contains(g.LastItemData.Rect)) ScrollToRectEx(window, g.LastItemData.Rect, ImGuiScrollFlags_None); } @@ -8182,13 +8399,21 @@ void ImGui::PushOverrideID(ImGuiID id) ImGuiID ImGui::GetIDWithSeed(const char* str, const char* str_end, ImGuiID seed) { ImGuiID id = ImHashStr(str, str_end ? (str_end - str) : 0, seed); - KeepAliveID(id); ImGuiContext& g = *GImGui; if (g.DebugHookIdInfo == id) DebugHookIdInfo(id, ImGuiDataType_String, str, str_end); return id; } +ImGuiID ImGui::GetIDWithSeed(int n, ImGuiID seed) +{ + ImGuiID id = ImHashData(&n, sizeof(n), seed); + ImGuiContext& g = *GImGui; + if (g.DebugHookIdInfo == id) + DebugHookIdInfo(id, ImGuiDataType_S32, (void*)(intptr_t)n, NULL); + return id; +} + void ImGui::PopID() { ImGuiWindow* window = GImGui->CurrentWindow; @@ -8230,52 +8455,91 @@ bool ImGui::IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max) //----------------------------------------------------------------------------- // [SECTION] INPUTS //----------------------------------------------------------------------------- +// - GetKeyData() [Internal] +// - GetKeyIndex() [Internal] +// - GetKeyName() +// - GetKeyChordName() [Internal] +// - CalcTypematicRepeatAmount() [Internal] +// - GetTypematicRepeatRate() [Internal] +// - GetKeyPressedAmount() [Internal] +// - GetKeyMagnitude2d() [Internal] +//----------------------------------------------------------------------------- +// - UpdateKeyRoutingTable() [Internal] +// - GetRoutingIdFromOwnerId() [Internal] +// - GetShortcutRoutingData() [Internal] +// - CalcRoutingScore() [Internal] +// - SetShortcutRouting() [Internal] +// - TestShortcutRouting() [Internal] +//----------------------------------------------------------------------------- +// - IsKeyDown() +// - IsKeyPressed() +// - IsKeyReleased() +//----------------------------------------------------------------------------- +// - IsMouseDown() +// - IsMouseClicked() +// - IsMouseReleased() +// - IsMouseDoubleClicked() +// - GetMouseClickedCount() +// - IsMouseHoveringRect() [Internal] +// - IsMouseDragPastThreshold() [Internal] +// - IsMouseDragging() +// - GetMousePos() +// - GetMousePosOnOpeningCurrentPopup() +// - IsMousePosValid() +// - IsAnyMouseDown() +// - GetMouseDragDelta() +// - ResetMouseDragDelta() +// - GetMouseCursor() +// - SetMouseCursor() +//----------------------------------------------------------------------------- +// - UpdateAliasKey() +// - GetMergedModsFromKeys() +// - UpdateKeyboardInputs() +// - UpdateMouseInputs() +//----------------------------------------------------------------------------- +// - LockWheelingWindow [Internal] +// - FindBestWheelingWindow [Internal] +// - UpdateMouseWheel() [Internal] +//----------------------------------------------------------------------------- +// - SetNextFrameWantCaptureKeyboard() +// - SetNextFrameWantCaptureMouse() +//----------------------------------------------------------------------------- +// - GetInputSourceName() [Internal] +// - DebugPrintInputEvent() [Internal] +// - UpdateInputEvents() [Internal] +//----------------------------------------------------------------------------- +// - GetKeyOwner() [Internal] +// - TestKeyOwner() [Internal] +// - SetKeyOwner() [Internal] +// - SetItemKeyOwner() [Internal] +// - Shortcut() [Internal] +//----------------------------------------------------------------------------- -// Test if mouse cursor is hovering given rectangle -// NB- Rectangle is clipped by our current clip setting -// NB- Expand the rectangle to be generous on imprecise inputs systems (g.Style.TouchExtraPadding) -bool ImGui::IsMouseHoveringRect(const ImVec2& r_min, const ImVec2& r_max, bool clip) +ImGuiKeyData* ImGui::GetKeyData(ImGuiContext* ctx, ImGuiKey key) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *ctx; - // Clip - ImRect rect_clipped(r_min, r_max); - if (clip) - rect_clipped.ClipWith(g.CurrentWindow->ClipRect); + // Special storage location for mods + if (key & ImGuiMod_Mask_) + key = ConvertSingleModFlagToKey(ctx, key); - // Expand for touch input - const ImRect rect_for_touch(rect_clipped.Min - g.Style.TouchExtraPadding, rect_clipped.Max + g.Style.TouchExtraPadding); - if (!rect_for_touch.Contains(g.IO.MousePos)) - return false; - if (!g.MouseViewport->GetMainRect().Overlaps(rect_clipped)) - return false; - return true; -} - -ImGuiKeyData* ImGui::GetKeyData(ImGuiKey key) -{ - ImGuiContext& g = *GImGui; - int index; #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO IM_ASSERT(key >= ImGuiKey_LegacyNativeKey_BEGIN && key < ImGuiKey_NamedKey_END); - if (IsLegacyKey(key)) - index = (g.IO.KeyMap[key] != -1) ? g.IO.KeyMap[key] : key; // Remap native->imgui or imgui->native - else - index = key; + if (IsLegacyKey(key) && g.IO.KeyMap[key] != -1) + key = (ImGuiKey)g.IO.KeyMap[key]; // Remap native->imgui or imgui->native #else IM_ASSERT(IsNamedKey(key) && "Support for user key indices was dropped in favor of ImGuiKey. Please update backend & user code."); - index = key - ImGuiKey_NamedKey_BEGIN; #endif - return &g.IO.KeysData[index]; + return &g.IO.KeysData[key - ImGuiKey_KeysData_OFFSET]; } #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO -int ImGui::GetKeyIndex(ImGuiKey key) +ImGuiKey ImGui::GetKeyIndex(ImGuiKey key) { ImGuiContext& g = *GImGui; IM_ASSERT(IsNamedKey(key)); const ImGuiKeyData* key_data = GetKeyData(key); - return (int)(key_data - g.IO.KeysData); + return (ImGuiKey)(key_data - g.IO.KeysData); } #endif @@ -8293,37 +8557,55 @@ static const char* const GKeyNames[] = "Pause", "Keypad0", "Keypad1", "Keypad2", "Keypad3", "Keypad4", "Keypad5", "Keypad6", "Keypad7", "Keypad8", "Keypad9", "KeypadDecimal", "KeypadDivide", "KeypadMultiply", "KeypadSubtract", "KeypadAdd", "KeypadEnter", "KeypadEqual", - "GamepadStart", "GamepadBack", "GamepadFaceUp", "GamepadFaceDown", "GamepadFaceLeft", "GamepadFaceRight", - "GamepadDpadUp", "GamepadDpadDown", "GamepadDpadLeft", "GamepadDpadRight", + "GamepadStart", "GamepadBack", + "GamepadFaceLeft", "GamepadFaceRight", "GamepadFaceUp", "GamepadFaceDown", + "GamepadDpadLeft", "GamepadDpadRight", "GamepadDpadUp", "GamepadDpadDown", "GamepadL1", "GamepadR1", "GamepadL2", "GamepadR2", "GamepadL3", "GamepadR3", - "GamepadLStickUp", "GamepadLStickDown", "GamepadLStickLeft", "GamepadLStickRight", - "GamepadRStickUp", "GamepadRStickDown", "GamepadRStickLeft", "GamepadRStickRight", - "ModCtrl", "ModShift", "ModAlt", "ModSuper" + "GamepadLStickLeft", "GamepadLStickRight", "GamepadLStickUp", "GamepadLStickDown", + "GamepadRStickLeft", "GamepadRStickRight", "GamepadRStickUp", "GamepadRStickDown", + "MouseLeft", "MouseRight", "MouseMiddle", "MouseX1", "MouseX2", "MouseWheelX", "MouseWheelY", + "ModCtrl", "ModShift", "ModAlt", "ModSuper", // ReservedForModXXX are showing the ModXXX names. }; IM_STATIC_ASSERT(ImGuiKey_NamedKey_COUNT == IM_ARRAYSIZE(GKeyNames)); const char* ImGui::GetKeyName(ImGuiKey key) { + ImGuiContext& g = *GImGui; #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO IM_ASSERT((IsNamedKey(key) || key == ImGuiKey_None) && "Support for user key indices was dropped in favor of ImGuiKey. Please update backend and user code."); #else if (IsLegacyKey(key)) { - ImGuiIO& io = GetIO(); - if (io.KeyMap[key] == -1) + if (g.IO.KeyMap[key] == -1) return "N/A"; - IM_ASSERT(IsNamedKey((ImGuiKey)io.KeyMap[key])); - key = (ImGuiKey)io.KeyMap[key]; + IM_ASSERT(IsNamedKey((ImGuiKey)g.IO.KeyMap[key])); + key = (ImGuiKey)g.IO.KeyMap[key]; } #endif if (key == ImGuiKey_None) return "None"; + if (key & ImGuiMod_Mask_) + key = ConvertSingleModFlagToKey(&g, key); if (!IsNamedKey(key)) return "Unknown"; return GKeyNames[key - ImGuiKey_NamedKey_BEGIN]; } +// ImGuiMod_Shortcut is translated to either Ctrl or Super. +void ImGui::GetKeyChordName(ImGuiKeyChord key_chord, char* out_buf, int out_buf_size) +{ + ImGuiContext& g = *GImGui; + if (key_chord & ImGuiMod_Shortcut) + key_chord = ConvertShortcutMod(key_chord); + ImFormatString(out_buf, (size_t)out_buf_size, "%s%s%s%s%s", + (key_chord & ImGuiMod_Ctrl) ? "Ctrl+" : "", + (key_chord & ImGuiMod_Shift) ? "Shift+" : "", + (key_chord & ImGuiMod_Alt) ? "Alt+" : "", + (key_chord & ImGuiMod_Super) ? (g.IO.ConfigMacOSXBehaviors ? "Cmd+" : "Super+") : "", + GetKeyName((ImGuiKey)(key_chord & ~ImGuiMod_Mask_))); +} + // t0 = previous time (e.g.: g.Time - g.IO.DeltaTime) // t1 = current time (e.g.: g.Time) // An event is triggered at: @@ -8342,42 +8624,276 @@ int ImGui::CalcTypematicRepeatAmount(float t0, float t1, float repeat_delay, flo return count; } +void ImGui::GetTypematicRepeatRate(ImGuiInputFlags flags, float* repeat_delay, float* repeat_rate) +{ + ImGuiContext& g = *GImGui; + switch (flags & ImGuiInputFlags_RepeatRateMask_) + { + case ImGuiInputFlags_RepeatRateNavMove: *repeat_delay = g.IO.KeyRepeatDelay * 0.72f; *repeat_rate = g.IO.KeyRepeatRate * 0.80f; return; + case ImGuiInputFlags_RepeatRateNavTweak: *repeat_delay = g.IO.KeyRepeatDelay * 0.72f; *repeat_rate = g.IO.KeyRepeatRate * 0.30f; return; + case ImGuiInputFlags_RepeatRateDefault: default: *repeat_delay = g.IO.KeyRepeatDelay * 1.00f; *repeat_rate = g.IO.KeyRepeatRate * 1.00f; return; + } +} + +// Return value representing the number of presses in the last time period, for the given repeat rate +// (most often returns 0 or 1. The result is generally only >1 when RepeatRate is smaller than DeltaTime, aka large DeltaTime or fast RepeatRate) int ImGui::GetKeyPressedAmount(ImGuiKey key, float repeat_delay, float repeat_rate) { ImGuiContext& g = *GImGui; const ImGuiKeyData* key_data = GetKeyData(key); + if (!key_data->Down) // In theory this should already be encoded as (DownDuration < 0.0f), but testing this facilitates eating mechanism (until we finish work on key ownership) + return 0; const float t = key_data->DownDuration; return CalcTypematicRepeatAmount(t - g.IO.DeltaTime, t, repeat_delay, repeat_rate); } +// Return 2D vector representing the combination of four cardinal direction, with analog value support (for e.g. ImGuiKey_GamepadLStick* values). +ImVec2 ImGui::GetKeyMagnitude2d(ImGuiKey key_left, ImGuiKey key_right, ImGuiKey key_up, ImGuiKey key_down) +{ + return ImVec2( + GetKeyData(key_right)->AnalogValue - GetKeyData(key_left)->AnalogValue, + GetKeyData(key_down)->AnalogValue - GetKeyData(key_up)->AnalogValue); +} + +// Rewrite routing data buffers to strip old entries + sort by key to make queries not touch scattered data. +// Entries D,A,B,B,A,C,B --> A,A,B,B,B,C,D +// Index A:1 B:2 C:5 D:0 --> A:0 B:2 C:5 D:6 +// See 'Metrics->Key Owners & Shortcut Routing' to visualize the result of that operation. +static void ImGui::UpdateKeyRoutingTable(ImGuiKeyRoutingTable* rt) +{ + ImGuiContext& g = *GImGui; + rt->EntriesNext.resize(0); + for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) + { + const int new_routing_start_idx = rt->EntriesNext.Size; + ImGuiKeyRoutingData* routing_entry; + for (int old_routing_idx = rt->Index[key - ImGuiKey_NamedKey_BEGIN]; old_routing_idx != -1; old_routing_idx = routing_entry->NextEntryIndex) + { + routing_entry = &rt->Entries[old_routing_idx]; + routing_entry->RoutingCurr = routing_entry->RoutingNext; // Update entry + routing_entry->RoutingNext = ImGuiKeyOwner_None; + routing_entry->RoutingNextScore = 255; + if (routing_entry->RoutingCurr == ImGuiKeyOwner_None) + continue; + rt->EntriesNext.push_back(*routing_entry); // Write alive ones into new buffer + + // Apply routing to owner if there's no owner already (RoutingCurr == None at this point) + if (routing_entry->Mods == g.IO.KeyMods) + { + ImGuiKeyOwnerData* owner_data = GetKeyOwnerData(&g, key); + if (owner_data->OwnerCurr == ImGuiKeyOwner_None) + owner_data->OwnerCurr = routing_entry->RoutingCurr; + } + } + + // Rewrite linked-list + rt->Index[key - ImGuiKey_NamedKey_BEGIN] = (ImGuiKeyRoutingIndex)(new_routing_start_idx < rt->EntriesNext.Size ? new_routing_start_idx : -1); + for (int n = new_routing_start_idx; n < rt->EntriesNext.Size; n++) + rt->EntriesNext[n].NextEntryIndex = (ImGuiKeyRoutingIndex)((n + 1 < rt->EntriesNext.Size) ? n + 1 : -1); + } + rt->Entries.swap(rt->EntriesNext); // Swap new and old indexes +} + +// owner_id may be None/Any, but routing_id needs to be always be set, so we default to GetCurrentFocusScope(). +static inline ImGuiID GetRoutingIdFromOwnerId(ImGuiID owner_id) +{ + ImGuiContext& g = *GImGui; + return (owner_id != ImGuiKeyOwner_None && owner_id != ImGuiKeyOwner_Any) ? owner_id : g.CurrentFocusScopeId; +} + +ImGuiKeyRoutingData* ImGui::GetShortcutRoutingData(ImGuiKeyChord key_chord) +{ + // Majority of shortcuts will be Key + any number of Mods + // We accept _Single_ mod with ImGuiKey_None. + // - Shortcut(ImGuiKey_S | ImGuiMod_Ctrl); // Legal + // - Shortcut(ImGuiKey_S | ImGuiMod_Ctrl | ImGuiMod_Shift); // Legal + // - Shortcut(ImGuiMod_Ctrl); // Legal + // - Shortcut(ImGuiMod_Ctrl | ImGuiMod_Shift); // Not legal + ImGuiContext& g = *GImGui; + ImGuiKeyRoutingTable* rt = &g.KeysRoutingTable; + ImGuiKeyRoutingData* routing_data; + if (key_chord & ImGuiMod_Shortcut) + key_chord = ConvertShortcutMod(key_chord); + ImGuiKey key = (ImGuiKey)(key_chord & ~ImGuiMod_Mask_); + ImGuiKey mods = (ImGuiKey)(key_chord & ImGuiMod_Mask_); + if (key == ImGuiKey_None) + key = ConvertSingleModFlagToKey(&g, mods); + IM_ASSERT(IsNamedKey(key)); + + // Get (in the majority of case, the linked list will have one element so this should be 2 reads. + // Subsequent elements will be contiguous in memory as list is sorted/rebuilt in NewFrame). + for (ImGuiKeyRoutingIndex idx = rt->Index[key - ImGuiKey_NamedKey_BEGIN]; idx != -1; idx = routing_data->NextEntryIndex) + { + routing_data = &rt->Entries[idx]; + if (routing_data->Mods == mods) + return routing_data; + } + + // Add to linked-list + ImGuiKeyRoutingIndex routing_data_idx = (ImGuiKeyRoutingIndex)rt->Entries.Size; + rt->Entries.push_back(ImGuiKeyRoutingData()); + routing_data = &rt->Entries[routing_data_idx]; + routing_data->Mods = (ImU16)mods; + routing_data->NextEntryIndex = rt->Index[key - ImGuiKey_NamedKey_BEGIN]; // Setup linked list + rt->Index[key - ImGuiKey_NamedKey_BEGIN] = routing_data_idx; + return routing_data; +} + +// Current score encoding (lower is highest priority): +// - 0: ImGuiInputFlags_RouteGlobalHigh +// - 1: ImGuiInputFlags_RouteFocused (if item active) +// - 2: ImGuiInputFlags_RouteGlobal +// - 3+: ImGuiInputFlags_RouteFocused (if window in focus-stack) +// - 254: ImGuiInputFlags_RouteGlobalLow +// - 255: never route +// 'flags' should include an explicit routing policy +static int CalcRoutingScore(ImGuiWindow* location, ImGuiID owner_id, ImGuiInputFlags flags) +{ + if (flags & ImGuiInputFlags_RouteFocused) + { + ImGuiContext& g = *GImGui; + ImGuiWindow* focused = g.NavWindow; + + // ActiveID gets top priority + // (we don't check g.ActiveIdUsingAllKeys here. Routing is applied but if input ownership is tested later it may discard it) + if (owner_id != 0 && g.ActiveId == owner_id) + return 1; + + // Score based on distance to focused window (lower is better) + // Assuming both windows are submitting a routing request, + // - When Window....... is focused -> Window scores 3 (best), Window/ChildB scores 255 (no match) + // - When Window/ChildB is focused -> Window scores 4, Window/ChildB scores 3 (best) + // Assuming only WindowA is submitting a routing request, + // - When Window/ChildB is focused -> Window scores 4 (best), Window/ChildB doesn't have a score. + if (focused != NULL && focused->RootWindow == location->RootWindow) + for (int next_score = 3; focused != NULL; next_score++) + { + if (focused == location) + { + IM_ASSERT(next_score < 255); + return next_score; + } + focused = (focused->RootWindow != focused) ? focused->ParentWindow : NULL; // FIXME: This could be later abstracted as a focus path + } + return 255; + } + + // ImGuiInputFlags_RouteGlobalHigh is default, so calls without flags are not conditional + if (flags & ImGuiInputFlags_RouteGlobal) + return 2; + if (flags & ImGuiInputFlags_RouteGlobalLow) + return 254; + return 0; +} + +// Request a desired route for an input chord (key + mods). +// Return true if the route is available this frame. +// - Routes and key ownership are attributed at the beginning of next frame based on best score and mod state. +// (Conceptually this does a "Submit for next frame" + "Test for current frame". +// As such, it could be called TrySetXXX or SubmitXXX, or the Submit and Test operations should be separate.) +// - Using 'owner_id == ImGuiKeyOwner_Any/0': auto-assign an owner based on current focus scope (each window has its focus scope by default) +// - Using 'owner_id == ImGuiKeyOwner_None': allows disabling/locking a shortcut. +bool ImGui::SetShortcutRouting(ImGuiKeyChord key_chord, ImGuiID owner_id, ImGuiInputFlags flags) +{ + ImGuiContext& g = *GImGui; + if ((flags & ImGuiInputFlags_RouteMask_) == 0) + flags |= ImGuiInputFlags_RouteGlobalHigh; // IMPORTANT: This is the default for SetShortcutRouting() but NOT Shortcut() + else + IM_ASSERT(ImIsPowerOfTwo(flags & ImGuiInputFlags_RouteMask_)); // Check that only 1 routing flag is used + + if (flags & ImGuiInputFlags_RouteUnlessBgFocused) + if (g.NavWindow == NULL) + return false; + if (flags & ImGuiInputFlags_RouteAlways) + return true; + + const int score = CalcRoutingScore(g.CurrentWindow, owner_id, flags); + if (score == 255) + return false; + + // Submit routing for NEXT frame (assuming score is sufficient) + // FIXME: Could expose a way to use a "serve last" policy for same score resolution (using <= instead of <). + ImGuiKeyRoutingData* routing_data = GetShortcutRoutingData(key_chord); + const ImGuiID routing_id = GetRoutingIdFromOwnerId(owner_id); + //const bool set_route = (flags & ImGuiInputFlags_ServeLast) ? (score <= routing_data->RoutingNextScore) : (score < routing_data->RoutingNextScore); + if (score < routing_data->RoutingNextScore) + { + routing_data->RoutingNext = routing_id; + routing_data->RoutingNextScore = (ImU8)score; + } + + // Return routing state for CURRENT frame + return routing_data->RoutingCurr == routing_id; +} + +// Currently unused by core (but used by tests) +// Note: this cannot be turned into GetShortcutRouting() because we do the owner_id->routing_id translation, name would be more misleading. +bool ImGui::TestShortcutRouting(ImGuiKeyChord key_chord, ImGuiID owner_id) +{ + const ImGuiID routing_id = GetRoutingIdFromOwnerId(owner_id); + ImGuiKeyRoutingData* routing_data = GetShortcutRoutingData(key_chord); // FIXME: Could avoid creating entry. + return routing_data->RoutingCurr == routing_id; +} + // Note that Dear ImGui doesn't know the meaning/semantic of ImGuiKey from 0..511: they are legacy native keycodes. // Consider transitioning from 'IsKeyDown(MY_ENGINE_KEY_A)' (<1.87) to IsKeyDown(ImGuiKey_A) (>= 1.87) bool ImGui::IsKeyDown(ImGuiKey key) +{ + return IsKeyDown(key, ImGuiKeyOwner_Any); +} + +bool ImGui::IsKeyDown(ImGuiKey key, ImGuiID owner_id) { const ImGuiKeyData* key_data = GetKeyData(key); if (!key_data->Down) return false; + if (!TestKeyOwner(key, owner_id)) + return false; return true; } bool ImGui::IsKeyPressed(ImGuiKey key, bool repeat) { - ImGuiContext& g = *GImGui; + return IsKeyPressed(key, ImGuiKeyOwner_Any, repeat ? ImGuiInputFlags_Repeat : ImGuiInputFlags_None); +} + +// Important: unless legacy IsKeyPressed(ImGuiKey, bool repeat=true) which DEFAULT to repeat, this requires EXPLICIT repeat. +bool ImGui::IsKeyPressed(ImGuiKey key, ImGuiID owner_id, ImGuiInputFlags flags) +{ const ImGuiKeyData* key_data = GetKeyData(key); + if (!key_data->Down) // In theory this should already be encoded as (DownDuration < 0.0f), but testing this facilitates eating mechanism (until we finish work on key ownership) + return false; const float t = key_data->DownDuration; if (t < 0.0f) return false; - const bool pressed = (t == 0.0f) || (repeat && t > g.IO.KeyRepeatDelay && GetKeyPressedAmount(key, g.IO.KeyRepeatDelay, g.IO.KeyRepeatRate) > 0); + IM_ASSERT((flags & ~ImGuiInputFlags_SupportedByIsKeyPressed) == 0); // Passing flags not supported by this function! + + bool pressed = (t == 0.0f); + if (!pressed && ((flags & ImGuiInputFlags_Repeat) != 0)) + { + float repeat_delay, repeat_rate; + GetTypematicRepeatRate(flags, &repeat_delay, &repeat_rate); + pressed = (t > repeat_delay) && GetKeyPressedAmount(key, repeat_delay, repeat_rate) > 0; + } if (!pressed) return false; + if (!TestKeyOwner(key, owner_id)) + return false; return true; } bool ImGui::IsKeyReleased(ImGuiKey key) +{ + return IsKeyReleased(key, ImGuiKeyOwner_Any); +} + +bool ImGui::IsKeyReleased(ImGuiKey key, ImGuiID owner_id) { const ImGuiKeyData* key_data = GetKeyData(key); if (key_data->DownDurationPrev < 0.0f || key_data->Down) return false; + if (!TestKeyOwner(key, owner_id)) + return false; return true; } @@ -8385,33 +8901,62 @@ bool ImGui::IsMouseDown(ImGuiMouseButton button) { ImGuiContext& g = *GImGui; IM_ASSERT(button >= 0 && button < IM_ARRAYSIZE(g.IO.MouseDown)); - return g.IO.MouseDown[button]; + return g.IO.MouseDown[button] && TestKeyOwner(MouseButtonToKey(button), ImGuiKeyOwner_Any); // should be same as IsKeyDown(MouseButtonToKey(button), ImGuiKeyOwner_Any), but this allows legacy code hijacking the io.Mousedown[] array. +} + +bool ImGui::IsMouseDown(ImGuiMouseButton button, ImGuiID owner_id) +{ + ImGuiContext& g = *GImGui; + IM_ASSERT(button >= 0 && button < IM_ARRAYSIZE(g.IO.MouseDown)); + return g.IO.MouseDown[button] && TestKeyOwner(MouseButtonToKey(button), owner_id); // Should be same as IsKeyDown(MouseButtonToKey(button), owner_id), but this allows legacy code hijacking the io.Mousedown[] array. } bool ImGui::IsMouseClicked(ImGuiMouseButton button, bool repeat) +{ + return IsMouseClicked(button, ImGuiKeyOwner_Any, repeat ? ImGuiInputFlags_Repeat : ImGuiInputFlags_None); +} + +bool ImGui::IsMouseClicked(ImGuiMouseButton button, ImGuiID owner_id, ImGuiInputFlags flags) { ImGuiContext& g = *GImGui; IM_ASSERT(button >= 0 && button < IM_ARRAYSIZE(g.IO.MouseDown)); + if (!g.IO.MouseDown[button]) // In theory this should already be encoded as (DownDuration < 0.0f), but testing this facilitates eating mechanism (until we finish work on key ownership) + return false; const float t = g.IO.MouseDownDuration[button]; - if (t == 0.0f) - return true; - if (repeat && t > g.IO.KeyRepeatDelay) - return CalcTypematicRepeatAmount(t - g.IO.DeltaTime, t, g.IO.KeyRepeatDelay, g.IO.KeyRepeatRate) > 0; - return false; + if (t < 0.0f) + return false; + IM_ASSERT((flags & ~ImGuiInputFlags_SupportedByIsKeyPressed) == 0); // Passing flags not supported by this function! + + const bool repeat = (flags & ImGuiInputFlags_Repeat) != 0; + const bool pressed = (t == 0.0f) || (repeat && t > g.IO.KeyRepeatDelay && CalcTypematicRepeatAmount(t - g.IO.DeltaTime, t, g.IO.KeyRepeatDelay, g.IO.KeyRepeatRate) > 0); + if (!pressed) + return false; + + if (!TestKeyOwner(MouseButtonToKey(button), owner_id)) + return false; + + return true; } bool ImGui::IsMouseReleased(ImGuiMouseButton button) { ImGuiContext& g = *GImGui; IM_ASSERT(button >= 0 && button < IM_ARRAYSIZE(g.IO.MouseDown)); - return g.IO.MouseReleased[button]; + return g.IO.MouseReleased[button] && TestKeyOwner(MouseButtonToKey(button), ImGuiKeyOwner_Any); // Should be same as IsKeyReleased(MouseButtonToKey(button), ImGuiKeyOwner_Any) +} + +bool ImGui::IsMouseReleased(ImGuiMouseButton button, ImGuiID owner_id) +{ + ImGuiContext& g = *GImGui; + IM_ASSERT(button >= 0 && button < IM_ARRAYSIZE(g.IO.MouseDown)); + return g.IO.MouseReleased[button] && TestKeyOwner(MouseButtonToKey(button), owner_id); // Should be same as IsKeyReleased(MouseButtonToKey(button), owner_id) } bool ImGui::IsMouseDoubleClicked(ImGuiMouseButton button) { ImGuiContext& g = *GImGui; IM_ASSERT(button >= 0 && button < IM_ARRAYSIZE(g.IO.MouseDown)); - return g.IO.MouseClickedCount[button] == 2; + return g.IO.MouseClickedCount[button] == 2 && TestKeyOwner(MouseButtonToKey(button), ImGuiKeyOwner_Any); } int ImGui::GetMouseClickedCount(ImGuiMouseButton button) @@ -8421,6 +8966,27 @@ int ImGui::GetMouseClickedCount(ImGuiMouseButton button) return g.IO.MouseClickedCount[button]; } +// Test if mouse cursor is hovering given rectangle +// NB- Rectangle is clipped by our current clip setting +// NB- Expand the rectangle to be generous on imprecise inputs systems (g.Style.TouchExtraPadding) +bool ImGui::IsMouseHoveringRect(const ImVec2& r_min, const ImVec2& r_max, bool clip) +{ + ImGuiContext& g = *GImGui; + + // Clip + ImRect rect_clipped(r_min, r_max); + if (clip) + rect_clipped.ClipWith(g.CurrentWindow->ClipRect); + + // Expand for touch input + const ImRect rect_for_touch(rect_clipped.Min - g.Style.TouchExtraPadding, rect_clipped.Max + g.Style.TouchExtraPadding); + if (!rect_for_touch.Contains(g.IO.MousePos)) + return false; + if (!g.MouseViewport->GetMainRect().Overlaps(rect_clipped)) + return false; + return true; +} + // Return if a mouse click/drag went past the given threshold. Valid to call during the MouseReleased frame. // [Internal] This doesn't test if the button is pressed bool ImGui::IsMouseDragPastThreshold(ImGuiMouseButton button, float lock_threshold) @@ -8501,6 +9067,10 @@ void ImGui::ResetMouseDragDelta(ImGuiMouseButton button) g.IO.MouseClickedPos[button] = g.IO.MousePos; } +// Get desired mouse cursor shape. +// Important: this is meant to be used by a platform backend, it is reset in ImGui::NewFrame(), +// updated during the frame, and locked in EndFrame()/Render(). +// If you use software rendering by setting io.MouseDrawCursor then Dear ImGui will render those for you ImGuiMouseCursor ImGui::GetMouseCursor() { ImGuiContext& g = *GImGui; @@ -8513,34 +9083,410 @@ void ImGui::SetMouseCursor(ImGuiMouseCursor cursor_type) g.MouseCursor = cursor_type; } -void ImGui::CaptureKeyboardFromApp(bool capture) +static void UpdateAliasKey(ImGuiKey key, bool v, float analog_value) { - ImGuiContext& g = *GImGui; - g.WantCaptureKeyboardNextFrame = capture ? 1 : 0; + IM_ASSERT(ImGui::IsAliasKey(key)); + ImGuiKeyData* key_data = ImGui::GetKeyData(key); + key_data->Down = v; + key_data->AnalogValue = analog_value; } -void ImGui::CaptureMouseFromApp(bool capture) +// [Internal] Do not use directly +static ImGuiKeyChord GetMergedModsFromKeys() { - ImGuiContext& g = *GImGui; - g.WantCaptureMouseNextFrame = capture ? 1 : 0; + ImGuiKeyChord mods = 0; + if (ImGui::IsKeyDown(ImGuiMod_Ctrl)) { mods |= ImGuiMod_Ctrl; } + if (ImGui::IsKeyDown(ImGuiMod_Shift)) { mods |= ImGuiMod_Shift; } + if (ImGui::IsKeyDown(ImGuiMod_Alt)) { mods |= ImGuiMod_Alt; } + if (ImGui::IsKeyDown(ImGuiMod_Super)) { mods |= ImGuiMod_Super; } + return mods; } +static void ImGui::UpdateKeyboardInputs() +{ + ImGuiContext& g = *GImGui; + ImGuiIO& io = g.IO; + + // Import legacy keys or verify they are not used +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO + if (io.BackendUsingLegacyKeyArrays == 0) + { + // Backend used new io.AddKeyEvent() API: Good! Verify that old arrays are never written to externally. + for (int n = 0; n < ImGuiKey_LegacyNativeKey_END; n++) + IM_ASSERT((io.KeysDown[n] == false || IsKeyDown((ImGuiKey)n)) && "Backend needs to either only use io.AddKeyEvent(), either only fill legacy io.KeysDown[] + io.KeyMap[]. Not both!"); + } + else + { + if (g.FrameCount == 0) + for (int n = ImGuiKey_LegacyNativeKey_BEGIN; n < ImGuiKey_LegacyNativeKey_END; n++) + IM_ASSERT(g.IO.KeyMap[n] == -1 && "Backend is not allowed to write to io.KeyMap[0..511]!"); + + // Build reverse KeyMap (Named -> Legacy) + for (int n = ImGuiKey_NamedKey_BEGIN; n < ImGuiKey_NamedKey_END; n++) + if (io.KeyMap[n] != -1) + { + IM_ASSERT(IsLegacyKey((ImGuiKey)io.KeyMap[n])); + io.KeyMap[io.KeyMap[n]] = n; + } + + // Import legacy keys into new ones + for (int n = ImGuiKey_LegacyNativeKey_BEGIN; n < ImGuiKey_LegacyNativeKey_END; n++) + if (io.KeysDown[n] || io.BackendUsingLegacyKeyArrays == 1) + { + const ImGuiKey key = (ImGuiKey)(io.KeyMap[n] != -1 ? io.KeyMap[n] : n); + IM_ASSERT(io.KeyMap[n] == -1 || IsNamedKey(key)); + io.KeysData[key].Down = io.KeysDown[n]; + if (key != n) + io.KeysDown[key] = io.KeysDown[n]; // Allow legacy code using io.KeysDown[GetKeyIndex()] with old backends + io.BackendUsingLegacyKeyArrays = 1; + } + if (io.BackendUsingLegacyKeyArrays == 1) + { + GetKeyData(ImGuiMod_Ctrl)->Down = io.KeyCtrl; + GetKeyData(ImGuiMod_Shift)->Down = io.KeyShift; + GetKeyData(ImGuiMod_Alt)->Down = io.KeyAlt; + GetKeyData(ImGuiMod_Super)->Down = io.KeySuper; + } + } + +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO + const bool nav_gamepad_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (io.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0; + if (io.BackendUsingLegacyNavInputArray && nav_gamepad_active) + { + #define MAP_LEGACY_NAV_INPUT_TO_KEY1(_KEY, _NAV1) do { io.KeysData[_KEY].Down = (io.NavInputs[_NAV1] > 0.0f); io.KeysData[_KEY].AnalogValue = io.NavInputs[_NAV1]; } while (0) + #define MAP_LEGACY_NAV_INPUT_TO_KEY2(_KEY, _NAV1, _NAV2) do { io.KeysData[_KEY].Down = (io.NavInputs[_NAV1] > 0.0f) || (io.NavInputs[_NAV2] > 0.0f); io.KeysData[_KEY].AnalogValue = ImMax(io.NavInputs[_NAV1], io.NavInputs[_NAV2]); } while (0) + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadFaceDown, ImGuiNavInput_Activate); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadFaceRight, ImGuiNavInput_Cancel); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadFaceLeft, ImGuiNavInput_Menu); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadFaceUp, ImGuiNavInput_Input); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadDpadLeft, ImGuiNavInput_DpadLeft); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadDpadRight, ImGuiNavInput_DpadRight); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadDpadUp, ImGuiNavInput_DpadUp); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadDpadDown, ImGuiNavInput_DpadDown); + MAP_LEGACY_NAV_INPUT_TO_KEY2(ImGuiKey_GamepadL1, ImGuiNavInput_FocusPrev, ImGuiNavInput_TweakSlow); + MAP_LEGACY_NAV_INPUT_TO_KEY2(ImGuiKey_GamepadR1, ImGuiNavInput_FocusNext, ImGuiNavInput_TweakFast); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadLStickLeft, ImGuiNavInput_LStickLeft); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadLStickRight, ImGuiNavInput_LStickRight); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadLStickUp, ImGuiNavInput_LStickUp); + MAP_LEGACY_NAV_INPUT_TO_KEY1(ImGuiKey_GamepadLStickDown, ImGuiNavInput_LStickDown); + #undef NAV_MAP_KEY + } +#endif +#endif + + // Update aliases + for (int n = 0; n < ImGuiMouseButton_COUNT; n++) + UpdateAliasKey(MouseButtonToKey(n), io.MouseDown[n], io.MouseDown[n] ? 1.0f : 0.0f); + UpdateAliasKey(ImGuiKey_MouseWheelX, io.MouseWheelH != 0.0f, io.MouseWheelH); + UpdateAliasKey(ImGuiKey_MouseWheelY, io.MouseWheel != 0.0f, io.MouseWheel); + + // Synchronize io.KeyMods and io.KeyXXX values. + // - New backends (1.87+): send io.AddKeyEvent(ImGuiMod_XXX) -> -> (here) deriving io.KeyMods + io.KeyXXX from key array. + // - Legacy backends: set io.KeyXXX bools -> (above) set key array from io.KeyXXX -> (here) deriving io.KeyMods + io.KeyXXX from key array. + // So with legacy backends the 4 values will do a unnecessary back-and-forth but it makes the code simpler and future facing. + io.KeyMods = GetMergedModsFromKeys(); + io.KeyCtrl = (io.KeyMods & ImGuiMod_Ctrl) != 0; + io.KeyShift = (io.KeyMods & ImGuiMod_Shift) != 0; + io.KeyAlt = (io.KeyMods & ImGuiMod_Alt) != 0; + io.KeySuper = (io.KeyMods & ImGuiMod_Super) != 0; + + // Clear gamepad data if disabled + if ((io.BackendFlags & ImGuiBackendFlags_HasGamepad) == 0) + for (int i = ImGuiKey_Gamepad_BEGIN; i < ImGuiKey_Gamepad_END; i++) + { + io.KeysData[i - ImGuiKey_KeysData_OFFSET].Down = false; + io.KeysData[i - ImGuiKey_KeysData_OFFSET].AnalogValue = 0.0f; + } + + // Update keys + for (int i = 0; i < ImGuiKey_KeysData_SIZE; i++) + { + ImGuiKeyData* key_data = &io.KeysData[i]; + key_data->DownDurationPrev = key_data->DownDuration; + key_data->DownDuration = key_data->Down ? (key_data->DownDuration < 0.0f ? 0.0f : key_data->DownDuration + io.DeltaTime) : -1.0f; + } + + // Update keys/input owner (named keys only): one entry per key + for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) + { + ImGuiKeyData* key_data = &io.KeysData[key - ImGuiKey_KeysData_OFFSET]; + ImGuiKeyOwnerData* owner_data = &g.KeysOwnerData[key - ImGuiKey_NamedKey_BEGIN]; + owner_data->OwnerCurr = owner_data->OwnerNext; + if (!key_data->Down) // Important: ownership is released on the frame after a release. Ensure a 'MouseDown -> CloseWindow -> MouseUp' chain doesn't lead to someone else seeing the MouseUp. + owner_data->OwnerNext = ImGuiKeyOwner_None; + owner_data->LockThisFrame = owner_data->LockUntilRelease = owner_data->LockUntilRelease && key_data->Down; // Clear LockUntilRelease when key is not Down anymore + } + + UpdateKeyRoutingTable(&g.KeysRoutingTable); +} + +static void ImGui::UpdateMouseInputs() +{ + ImGuiContext& g = *GImGui; + ImGuiIO& io = g.IO; + + // Mouse Wheel swapping flag + // As a standard behavior holding SHIFT while using Vertical Mouse Wheel triggers Horizontal scroll instead + // - We avoid doing it on OSX as it the OS input layer handles this already. + // - FIXME: However this means when running on OSX over Emscripten, Shift+WheelY will incur two swapping (1 in OS, 1 here), canceling the feature. + // - FIXME: When we can distinguish e.g. touchpad scroll events from mouse ones, we'll set this accordingly based on input source. + io.MouseWheelRequestAxisSwap = io.KeyShift && !io.ConfigMacOSXBehaviors; + + // Round mouse position to avoid spreading non-rounded position (e.g. UpdateManualResize doesn't support them well) + if (IsMousePosValid(&io.MousePos)) + io.MousePos = g.MouseLastValidPos = ImFloorSigned(io.MousePos); + + io.MouseDeltaPrev=io.MouseDelta; + + // If mouse just appeared or disappeared (usually denoted by -FLT_MAX components) we cancel out movement in MouseDelta + if (IsMousePosValid(&io.MousePos) && IsMousePosValid(&io.MousePosPrev)) + io.MouseDelta = io.MousePos - io.MousePosPrev; + else + io.MouseDelta = ImVec2(0.0f, 0.0f); + + // If mouse moved we re-enable mouse hovering in case it was disabled by gamepad/keyboard. In theory should use a >0.0f threshold but would need to reset in everywhere we set this to true. + if (io.MouseDelta.x != 0.0f || io.MouseDelta.y != 0.0f) + g.NavDisableMouseHover = false; + + // Update mouse speed + if (ImFabs(io.MouseDelta.x)>ImFabs(io.MouseDeltaPrev.x)) { + io.MouseSpeed.x=io.MouseDelta.x; + } else { + io.MouseSpeed.x=io.MouseDeltaPrev.x; + } + if (ImFabs(io.MouseDelta.y)>ImFabs(io.MouseDeltaPrev.y)) { + io.MouseSpeed.y=io.MouseDelta.y; + } else { + io.MouseSpeed.y=io.MouseDeltaPrev.y; + } + + io.MousePosPrev = io.MousePos; + for (int i = 0; i < IM_ARRAYSIZE(io.MouseDown); i++) + { + io.MouseClicked[i] = io.MouseDown[i] && io.MouseDownDuration[i] < 0.0f; + io.MouseClickedCount[i] = 0; // Will be filled below + io.MouseReleased[i] = !io.MouseDown[i] && io.MouseDownDuration[i] >= 0.0f; + io.MouseDownDurationPrev[i] = io.MouseDownDuration[i]; + io.MouseDownDuration[i] = io.MouseDown[i] ? (io.MouseDownDuration[i] < 0.0f ? 0.0f : io.MouseDownDuration[i] + io.DeltaTime) : -1.0f; + if (io.MouseClicked[i]) + { + bool is_repeated_click = false; + if ((float)(g.Time - io.MouseClickedTime[i]) < io.MouseDoubleClickTime) + { + ImVec2 delta_from_click_pos = IsMousePosValid(&io.MousePos) ? (io.MousePos - io.MouseClickedPos[i]) : ImVec2(0.0f, 0.0f); + if (ImLengthSqr(delta_from_click_pos) < io.MouseDoubleClickMaxDist * io.MouseDoubleClickMaxDist) + is_repeated_click = true; + } + if (is_repeated_click) + io.MouseClickedLastCount[i]++; + else + io.MouseClickedLastCount[i] = 1; + io.MouseClickedTime[i] = g.Time; + io.MouseClickedPos[i] = io.MousePos; + io.MouseClickedCount[i] = io.MouseClickedLastCount[i]; + io.MouseDragMaxDistanceAbs[i] = ImVec2(0.0f, 0.0f); + io.MouseDragMaxDistanceSqr[i] = 0.0f; + } + else if (io.MouseDown[i]) + { + // Maintain the maximum distance we reaching from the initial click position, which is used with dragging threshold + ImVec2 delta_from_click_pos = IsMousePosValid(&io.MousePos) ? (io.MousePos - io.MouseClickedPos[i]) : ImVec2(0.0f, 0.0f); + io.MouseDragMaxDistanceSqr[i] = ImMax(io.MouseDragMaxDistanceSqr[i], ImLengthSqr(delta_from_click_pos)); + io.MouseDragMaxDistanceAbs[i].x = ImMax(io.MouseDragMaxDistanceAbs[i].x, delta_from_click_pos.x < 0.0f ? -delta_from_click_pos.x : delta_from_click_pos.x); + io.MouseDragMaxDistanceAbs[i].y = ImMax(io.MouseDragMaxDistanceAbs[i].y, delta_from_click_pos.y < 0.0f ? -delta_from_click_pos.y : delta_from_click_pos.y); + } + + // We provide io.MouseDoubleClicked[] as a legacy service + io.MouseDoubleClicked[i] = (io.MouseClickedCount[i] == 2); + + // Clicking any mouse button reactivate mouse hovering which may have been deactivated by gamepad/keyboard navigation + if (io.MouseClicked[i]) + g.NavDisableMouseHover = false; + } +} + +static void LockWheelingWindow(ImGuiWindow* window, float wheel_amount) +{ + ImGuiContext& g = *GImGui; + if (window) + g.WheelingWindowReleaseTimer = ImMin(g.WheelingWindowReleaseTimer + ImAbs(wheel_amount) * WINDOWS_MOUSE_WHEEL_SCROLL_LOCK_TIMER, WINDOWS_MOUSE_WHEEL_SCROLL_LOCK_TIMER); + else + g.WheelingWindowReleaseTimer = 0.0f; + if (g.WheelingWindow == window) + return; + IMGUI_DEBUG_LOG_IO("[io] LockWheelingWindow() \"%s\"\n", window ? window->Name : "NULL"); + g.WheelingWindow = window; + g.WheelingWindowRefMousePos = g.IO.MousePos; + if (window == NULL) + { + g.WheelingWindowStartFrame = -1; + g.WheelingAxisAvg = ImVec2(0.0f, 0.0f); + } +} + +static ImGuiWindow* FindBestWheelingWindow(const ImVec2& wheel) +{ + // For each axis, find window in the hierarchy that may want to use scrolling + ImGuiContext& g = *GImGui; + ImGuiWindow* windows[2] = { NULL, NULL }; + for (int axis = 0; axis < 2; axis++) + if (wheel[axis] != 0.0f) + for (ImGuiWindow* window = windows[axis] = g.HoveredWindow; window->Flags & ImGuiWindowFlags_ChildWindow; window = windows[axis] = window->ParentWindow) + { + // Bubble up into parent window if: + // - a child window doesn't allow any scrolling. + // - a child window has the ImGuiWindowFlags_NoScrollWithMouse flag. + //// - a child window doesn't need scrolling because it is already at the edge for the direction we are going in (FIXME-WIP) + const bool has_scrolling = (window->ScrollMax[axis] != 0.0f); + const bool inputs_disabled = (window->Flags & ImGuiWindowFlags_NoScrollWithMouse) && !(window->Flags & ImGuiWindowFlags_NoMouseInputs); + //const bool scrolling_past_limits = (wheel_v < 0.0f) ? (window->Scroll[axis] <= 0.0f) : (window->Scroll[axis] >= window->ScrollMax[axis]); + if (has_scrolling && !inputs_disabled) // && !scrolling_past_limits) + break; // select this window + } + if (windows[0] == NULL && windows[1] == NULL) + return NULL; + + // If there's only one window or only one axis then there's no ambiguity + if (windows[0] == windows[1] || windows[0] == NULL || windows[1] == NULL) + return windows[1] ? windows[1] : windows[0]; + + // If candidate are different windows we need to decide which one to prioritize + // - First frame: only find a winner if one axis is zero. + // - Subsequent frames: only find a winner when one is more than the other. + if (g.WheelingWindowStartFrame == -1) + g.WheelingWindowStartFrame = g.FrameCount; + if ((g.WheelingWindowStartFrame == g.FrameCount && wheel.x != 0.0f && wheel.y != 0.0f) || (g.WheelingAxisAvg.x == g.WheelingAxisAvg.y)) + { + g.WheelingWindowWheelRemainder = wheel; + return NULL; + } + return (g.WheelingAxisAvg.x > g.WheelingAxisAvg.y) ? windows[0] : windows[1]; +} + +// Called by NewFrame() +void ImGui::UpdateMouseWheel() +{ + // Reset the locked window if we move the mouse or after the timer elapses. + // FIXME: Ideally we could refactor to have one timer for "changing window w/ same axis" and a shorter timer for "changing window or axis w/ other axis" (#3795) + ImGuiContext& g = *GImGui; + if (g.WheelingWindow != NULL) + { + g.WheelingWindowReleaseTimer -= g.IO.DeltaTime; + if (IsMousePosValid() && ImLengthSqr(g.IO.MousePos - g.WheelingWindowRefMousePos) > g.IO.MouseDragThreshold * g.IO.MouseDragThreshold) + g.WheelingWindowReleaseTimer = 0.0f; + if (g.WheelingWindowReleaseTimer <= 0.0f) + LockWheelingWindow(NULL, 0.0f); + } + + ImVec2 wheel; + wheel.x = TestKeyOwner(ImGuiKey_MouseWheelX, ImGuiKeyOwner_None) ? g.IO.MouseWheelH : 0.0f; + wheel.y = TestKeyOwner(ImGuiKey_MouseWheelY, ImGuiKeyOwner_None) ? g.IO.MouseWheel : 0.0f; + + //IMGUI_DEBUG_LOG("MouseWheel X:%.3f Y:%.3f\n", wheel_x, wheel_y); + ImGuiWindow* mouse_window = g.WheelingWindow ? g.WheelingWindow : g.HoveredWindow; + if (!mouse_window || mouse_window->Collapsed) + return; + + // Zoom / Scale window + // FIXME-OBSOLETE: This is an old feature, it still works but pretty much nobody is using it and may be best redesigned. + if (wheel.y != 0.0f && g.IO.KeyCtrl && g.IO.FontAllowUserScaling) + { + LockWheelingWindow(mouse_window, wheel.y); + ImGuiWindow* window = mouse_window; + const float new_font_scale = ImClamp(window->FontWindowScale + g.IO.MouseWheel * 0.10f, 0.50f, 2.50f); + const float scale = new_font_scale / window->FontWindowScale; + window->FontWindowScale = new_font_scale; + if (window == window->RootWindow) + { + const ImVec2 offset = window->Size * (1.0f - scale) * (g.IO.MousePos - window->Pos) / window->Size; + SetWindowPos(window, window->Pos + offset, 0); + window->Size = ImFloor(window->Size * scale); + window->SizeFull = ImFloor(window->SizeFull * scale); + } + return; + } + if (g.IO.KeyCtrl) + return; + + // Mouse wheel scrolling + // Read about io.MouseWheelRequestAxisSwap and its issue on Mac+Emscripten in UpdateMouseInputs() + if (g.IO.MouseWheelRequestAxisSwap) + wheel = ImVec2(wheel.y, 0.0f); + + // Maintain a rough average of moving magnitude on both axises + // FIXME: should by based on wall clock time rather than frame-counter + g.WheelingAxisAvg.x = ImExponentialMovingAverage(g.WheelingAxisAvg.x, ImAbs(wheel.x), 30); + g.WheelingAxisAvg.y = ImExponentialMovingAverage(g.WheelingAxisAvg.y, ImAbs(wheel.y), 30); + + // In the rare situation where FindBestWheelingWindow() had to defer first frame of wheeling due to ambiguous main axis, reinject it now. + wheel += g.WheelingWindowWheelRemainder; + g.WheelingWindowWheelRemainder = ImVec2(0.0f, 0.0f); + if (wheel.x == 0.0f && wheel.y == 0.0f) + return; + + // Mouse wheel scrolling: find target and apply + // - don't renew lock if axis doesn't apply on the window. + // - select a main axis when both axises are being moved. + if (ImGuiWindow* window = (g.WheelingWindow ? g.WheelingWindow : FindBestWheelingWindow(wheel))) + if (!(window->Flags & ImGuiWindowFlags_NoScrollWithMouse) && !(window->Flags & ImGuiWindowFlags_NoMouseInputs)) + { + bool do_scroll[2] = { wheel.x != 0.0f && window->ScrollMax.x != 0.0f, wheel.y != 0.0f && window->ScrollMax.y != 0.0f }; + if (do_scroll[ImGuiAxis_X] && do_scroll[ImGuiAxis_Y]) + do_scroll[(g.WheelingAxisAvg.x > g.WheelingAxisAvg.y) ? ImGuiAxis_Y : ImGuiAxis_X] = false; + if (do_scroll[ImGuiAxis_X]) + { + LockWheelingWindow(window, wheel.x); + float max_step = window->InnerRect.GetWidth() * 0.67f; + float scroll_step = ImFloor(ImMin(2 * window->CalcFontSize(), max_step)); + SetScrollX(window, window->Scroll.x - wheel.x * scroll_step); + } + if (do_scroll[ImGuiAxis_Y]) + { + LockWheelingWindow(window, wheel.y); + float max_step = window->InnerRect.GetHeight() * 0.67f; + float scroll_step = ImFloor(ImMin(5 * window->CalcFontSize(), max_step)); + SetScrollY(window, window->Scroll.y - wheel.y * scroll_step); + } + } +} + +void ImGui::SetNextFrameWantCaptureKeyboard(bool want_capture_keyboard) +{ + ImGuiContext& g = *GImGui; + g.WantCaptureKeyboardNextFrame = want_capture_keyboard ? 1 : 0; +} + +void ImGui::SetNextFrameWantCaptureMouse(bool want_capture_mouse) +{ + ImGuiContext& g = *GImGui; + g.WantCaptureMouseNextFrame = want_capture_mouse ? 1 : 0; +} + +#ifndef IMGUI_DISABLE_DEBUG_TOOLS static const char* GetInputSourceName(ImGuiInputSource source) { - const char* input_source_names[] = { "None", "Mouse", "Keyboard", "Gamepad", "Nav", "Clipboard" }; + const char* input_source_names[] = { "None", "Mouse", "Keyboard", "Gamepad", "Clipboard" }; IM_ASSERT(IM_ARRAYSIZE(input_source_names) == ImGuiInputSource_COUNT && source >= 0 && source < ImGuiInputSource_COUNT); return input_source_names[source]; } - -/*static void DebugLogInputEvent(const char* prefix, const ImGuiInputEvent* e) +static const char* GetMouseSourceName(ImGuiMouseSource source) { - if (e->Type == ImGuiInputEventType_MousePos) { IMGUI_DEBUG_LOG("%s: MousePos (%.1f %.1f)\n", prefix, e->MousePos.PosX, e->MousePos.PosY); return; } - if (e->Type == ImGuiInputEventType_MouseButton) { IMGUI_DEBUG_LOG("%s: MouseButton %d %s\n", prefix, e->MouseButton.Button, e->MouseButton.Down ? "Down" : "Up"); return; } - if (e->Type == ImGuiInputEventType_MouseWheel) { IMGUI_DEBUG_LOG("%s: MouseWheel (%.1f %.1f)\n", prefix, e->MouseWheel.WheelX, e->MouseWheel.WheelY); return; } - if (e->Type == ImGuiInputEventType_Key) { IMGUI_DEBUG_LOG("%s: Key \"%s\" %s\n", prefix, ImGui::GetKeyName(e->Key.Key), e->Key.Down ? "Down" : "Up"); return; } - if (e->Type == ImGuiInputEventType_Text) { IMGUI_DEBUG_LOG("%s: Text: %c (U+%08X)\n", prefix, e->Text.Char, e->Text.Char); return; } - if (e->Type == ImGuiInputEventType_Focus) { IMGUI_DEBUG_LOG("%s: AppFocused %d\n", prefix, e->AppFocused.Focused); return; } -}*/ + const char* mouse_source_names[] = { "Mouse", "TouchScreen", "Pen" }; + IM_ASSERT(IM_ARRAYSIZE(mouse_source_names) == ImGuiMouseSource_COUNT && source >= 0 && source < ImGuiMouseSource_COUNT); + return mouse_source_names[source]; +} +static void DebugPrintInputEvent(const char* prefix, const ImGuiInputEvent* e) +{ + ImGuiContext& g = *GImGui; + if (e->Type == ImGuiInputEventType_MousePos) { if (e->MousePos.PosX == -FLT_MAX && e->MousePos.PosY == -FLT_MAX) IMGUI_DEBUG_LOG_IO("[io] %s: MousePos (-FLT_MAX, -FLT_MAX)\n", prefix); else IMGUI_DEBUG_LOG_IO("[io] %s: MousePos (%.1f, %.1f) (%s)\n", prefix, e->MousePos.PosX, e->MousePos.PosY, GetMouseSourceName(e->MouseWheel.MouseSource)); return; } + if (e->Type == ImGuiInputEventType_MouseButton) { IMGUI_DEBUG_LOG_IO("[io] %s: MouseButton %d %s (%s)\n", prefix, e->MouseButton.Button, e->MouseButton.Down ? "Down" : "Up", GetMouseSourceName(e->MouseWheel.MouseSource)); return; } + if (e->Type == ImGuiInputEventType_MouseWheel) { IMGUI_DEBUG_LOG_IO("[io] %s: MouseWheel (%.3f, %.3f) (%s)\n", prefix, e->MouseWheel.WheelX, e->MouseWheel.WheelY, GetMouseSourceName(e->MouseWheel.MouseSource)); return; } + if (e->Type == ImGuiInputEventType_MouseViewport){IMGUI_DEBUG_LOG_IO("[io] %s: MouseViewport (0x%08X)\n", prefix, e->MouseViewport.HoveredViewportID); return; } + if (e->Type == ImGuiInputEventType_Key) { IMGUI_DEBUG_LOG_IO("[io] %s: Key \"%s\" %s\n", prefix, ImGui::GetKeyName(e->Key.Key), e->Key.Down ? "Down" : "Up"); return; } + if (e->Type == ImGuiInputEventType_Text) { IMGUI_DEBUG_LOG_IO("[io] %s: Text: %c (U+%08X)\n", prefix, e->Text.Char, e->Text.Char); return; } + if (e->Type == ImGuiInputEventType_Focus) { IMGUI_DEBUG_LOG_IO("[io] %s: AppFocused %d\n", prefix, e->AppFocused.Focused); return; } +} +#endif // Process input queue // We always call this with the value of 'bool g.IO.ConfigInputTrickleEventQueue'. @@ -8563,45 +9509,39 @@ void ImGui::UpdateInputEvents(bool trickle_fast_inputs) int event_n = 0; for (; event_n < g.InputEventsQueue.Size; event_n++) { - const ImGuiInputEvent* e = &g.InputEventsQueue[event_n]; + ImGuiInputEvent* e = &g.InputEventsQueue[event_n]; if (e->Type == ImGuiInputEventType_MousePos) { + // Trickling Rule: Stop processing queued events if we already handled a mouse button change ImVec2 event_pos(e->MousePos.PosX, e->MousePos.PosY); - if (IsMousePosValid(&event_pos)) - event_pos = ImVec2(ImFloorSigned(event_pos.x), ImFloorSigned(event_pos.y)); // Apply same flooring as UpdateMouseInputs() - if (io.MousePos.x != event_pos.x || io.MousePos.y != event_pos.y) - { - // Trickling Rule: Stop processing queued events if we already handled a mouse button change - if (trickle_fast_inputs && (mouse_button_changed != 0 || mouse_wheeled || key_changed || text_inputted)) - break; - io.MousePos = event_pos; - mouse_moved = true; - } + if (trickle_fast_inputs && (mouse_button_changed != 0 || mouse_wheeled || key_changed || text_inputted)) + break; + io.MousePos = event_pos; + io.MouseSource = e->MousePos.MouseSource; + mouse_moved = true; } else if (e->Type == ImGuiInputEventType_MouseButton) { + // Trickling Rule: Stop processing queued events if we got multiple action on the same button const ImGuiMouseButton button = e->MouseButton.Button; IM_ASSERT(button >= 0 && button < ImGuiMouseButton_COUNT); - if (io.MouseDown[button] != e->MouseButton.Down) - { - // Trickling Rule: Stop processing queued events if we got multiple action on the same button - if (trickle_fast_inputs && ((mouse_button_changed & (1 << button)) || mouse_wheeled)) - break; - io.MouseDown[button] = e->MouseButton.Down; - mouse_button_changed |= (1 << button); - } + if (trickle_fast_inputs && ((mouse_button_changed & (1 << button)) || mouse_wheeled)) + break; + if (trickle_fast_inputs && e->MouseButton.MouseSource == ImGuiMouseSource_TouchScreen && mouse_moved) // #2702: TouchScreen have no initial hover. + break; + io.MouseDown[button] = e->MouseButton.Down; + io.MouseSource = e->MouseButton.MouseSource; + mouse_button_changed |= (1 << button); } else if (e->Type == ImGuiInputEventType_MouseWheel) { - if (e->MouseWheel.WheelX != 0.0f || e->MouseWheel.WheelY != 0.0f) - { - // Trickling Rule: Stop processing queued events if we got multiple action on the event - if (trickle_fast_inputs && (mouse_wheeled || mouse_button_changed != 0)) - break; - io.MouseWheelH += e->MouseWheel.WheelX; - io.MouseWheel += e->MouseWheel.WheelY; - mouse_wheeled = true; - } + // Trickling Rule: Stop processing queued events if we got multiple action on the event + if (trickle_fast_inputs && (mouse_moved || mouse_button_changed != 0)) + break; + io.MouseWheelH += e->MouseWheel.WheelX; + io.MouseWheel += e->MouseWheel.WheelY; + io.MouseSource = e->MouseWheel.MouseSource; + mouse_wheeled = true; } else if (e->Type == ImGuiInputEventType_MouseViewport) { @@ -8609,36 +9549,24 @@ void ImGui::UpdateInputEvents(bool trickle_fast_inputs) } else if (e->Type == ImGuiInputEventType_Key) { + // Trickling Rule: Stop processing queued events if we got multiple action on the same button ImGuiKey key = e->Key.Key; IM_ASSERT(key != ImGuiKey_None); - const int keydata_index = (key - ImGuiKey_KeysData_OFFSET); - ImGuiKeyData* keydata = &io.KeysData[keydata_index]; - if (keydata->Down != e->Key.Down || keydata->AnalogValue != e->Key.AnalogValue) - { - // Trickling Rule: Stop processing queued events if we got multiple action on the same button - if (trickle_fast_inputs && keydata->Down != e->Key.Down && (key_changed_mask.TestBit(keydata_index) || text_inputted || mouse_button_changed != 0)) - break; - keydata->Down = e->Key.Down; - keydata->AnalogValue = e->Key.AnalogValue; - key_changed = true; - key_changed_mask.SetBit(keydata_index); + ImGuiKeyData* key_data = GetKeyData(key); + const int key_data_index = (int)(key_data - g.IO.KeysData); + if (trickle_fast_inputs && key_data->Down != e->Key.Down && (key_changed_mask.TestBit(key_data_index) || text_inputted || mouse_button_changed != 0)) + break; + key_data->Down = e->Key.Down; + key_data->AnalogValue = e->Key.AnalogValue; + key_changed = true; + key_changed_mask.SetBit(key_data_index); - if (key == ImGuiKey_ModCtrl || key == ImGuiKey_ModShift || key == ImGuiKey_ModAlt || key == ImGuiKey_ModSuper) - { - if (key == ImGuiKey_ModCtrl) { io.KeyCtrl = keydata->Down; } - if (key == ImGuiKey_ModShift) { io.KeyShift = keydata->Down; } - if (key == ImGuiKey_ModAlt) { io.KeyAlt = keydata->Down; } - if (key == ImGuiKey_ModSuper) { io.KeySuper = keydata->Down; } - io.KeyMods = GetMergedModFlags(); - } - - // Allow legacy code using io.KeysDown[GetKeyIndex()] with new backends + // Allow legacy code using io.KeysDown[GetKeyIndex()] with new backends #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO - io.KeysDown[key] = keydata->Down; - if (io.KeyMap[key] != -1) - io.KeysDown[io.KeyMap[key]] = keydata->Down; + io.KeysDown[key_data_index] = key_data->Down; + if (io.KeyMap[key_data_index] != -1) + io.KeysDown[io.KeyMap[key_data_index]] = key_data->Down; #endif - } } else if (e->Type == ImGuiInputEventType_Text) { @@ -8652,9 +9580,10 @@ void ImGui::UpdateInputEvents(bool trickle_fast_inputs) } else if (e->Type == ImGuiInputEventType_Focus) { - // We intentionally overwrite this and process lower, in order to give a chance + // We intentionally overwrite this and process in NewFrame(), in order to give a chance // to multi-viewports backends to queue AddFocusEvent(false) + AddFocusEvent(true) in same frame. - io.AppFocusLost = !e->AppFocused.Focused; + const bool focus_lost = !e->AppFocused.Focused; + io.AppFocusLost = focus_lost; } else { @@ -8663,14 +9592,16 @@ void ImGui::UpdateInputEvents(bool trickle_fast_inputs) } // Record trail (for domain-specific applications wanting to access a precise trail) - //if (event_n != 0) IMGUI_DEBUG_LOG("Processed: %d / Remaining: %d\n", event_n, g.InputEventsQueue.Size - event_n); + //if (event_n != 0) IMGUI_DEBUG_LOG_IO("Processed: %d / Remaining: %d\n", event_n, g.InputEventsQueue.Size - event_n); for (int n = 0; n < event_n; n++) g.InputEventsTrail.push_back(g.InputEventsQueue[n]); // [DEBUG] - /*if (event_n != 0) +#ifndef IMGUI_DISABLE_DEBUG_TOOLS + if (event_n != 0 && (g.DebugLogFlags & ImGuiDebugLogFlags_EventIO)) for (int n = 0; n < g.InputEventsQueue.Size; n++) - DebugLogInputEvent(n < event_n ? "Processed" : "Remaining", &g.InputEventsQueue[n]);*/ + DebugPrintInputEvent(n < event_n ? "Processed" : "Remaining", &g.InputEventsQueue[n]); +#endif // Remaining events will be processed on the next frame if (event_n == g.InputEventsQueue.Size) @@ -8679,12 +9610,139 @@ void ImGui::UpdateInputEvents(bool trickle_fast_inputs) g.InputEventsQueue.erase(g.InputEventsQueue.Data, g.InputEventsQueue.Data + event_n); // Clear buttons state when focus is lost - // (this is useful so e.g. releasing Alt after focus loss on Alt-Tab doesn't trigger the Alt menu toggle) + // - this is useful so e.g. releasing Alt after focus loss on Alt-Tab doesn't trigger the Alt menu toggle. + // - we clear in EndFrame() and not now in order allow application/user code polling this flag + // (e.g. custom backend may want to clear additional data, custom widgets may want to react with a "canceling" event). if (g.IO.AppFocusLost) - { g.IO.ClearInputKeys(); - g.IO.AppFocusLost = false; +} + +ImGuiID ImGui::GetKeyOwner(ImGuiKey key) +{ + if (!IsNamedKeyOrModKey(key)) + return ImGuiKeyOwner_None; + + ImGuiContext& g = *GImGui; + ImGuiKeyOwnerData* owner_data = GetKeyOwnerData(&g, key); + ImGuiID owner_id = owner_data->OwnerCurr; + + if (g.ActiveIdUsingAllKeyboardKeys && owner_id != g.ActiveId && owner_id != ImGuiKeyOwner_Any) + if (key >= ImGuiKey_Keyboard_BEGIN && key < ImGuiKey_Keyboard_END) + return ImGuiKeyOwner_None; + + return owner_id; +} + +// TestKeyOwner(..., ID) : (owner == None || owner == ID) +// TestKeyOwner(..., None) : (owner == None) +// TestKeyOwner(..., Any) : no owner test +// All paths are also testing for key not being locked, for the rare cases that key have been locked with using ImGuiInputFlags_LockXXX flags. +bool ImGui::TestKeyOwner(ImGuiKey key, ImGuiID owner_id) +{ + if (!IsNamedKeyOrModKey(key)) + return true; + + ImGuiContext& g = *GImGui; + if (g.ActiveIdUsingAllKeyboardKeys && owner_id != g.ActiveId && owner_id != ImGuiKeyOwner_Any) + if (key >= ImGuiKey_Keyboard_BEGIN && key < ImGuiKey_Keyboard_END) + return false; + + ImGuiKeyOwnerData* owner_data = GetKeyOwnerData(&g, key); + if (owner_id == ImGuiKeyOwner_Any) + return (owner_data->LockThisFrame == false); + + // Note: SetKeyOwner() sets OwnerCurr. It is not strictly required for most mouse routing overlap (because of ActiveId/HoveredId + // are acting as filter before this has a chance to filter), but sane as soon as user tries to look into things. + // Setting OwnerCurr in SetKeyOwner() is more consistent than testing OwnerNext here: would be inconsistent with getter and other functions. + if (owner_data->OwnerCurr != owner_id) + { + if (owner_data->LockThisFrame) + return false; + if (owner_data->OwnerCurr != ImGuiKeyOwner_None) + return false; } + + return true; +} + +// _LockXXX flags are useful to lock keys away from code which is not input-owner aware. +// When using _LockXXX flags, you can use ImGuiKeyOwner_Any to lock keys from everyone. +// - SetKeyOwner(..., None) : clears owner +// - SetKeyOwner(..., Any, !Lock) : illegal (assert) +// - SetKeyOwner(..., Any or None, Lock) : set lock +void ImGui::SetKeyOwner(ImGuiKey key, ImGuiID owner_id, ImGuiInputFlags flags) +{ + IM_ASSERT(IsNamedKeyOrModKey(key) && (owner_id != ImGuiKeyOwner_Any || (flags & (ImGuiInputFlags_LockThisFrame | ImGuiInputFlags_LockUntilRelease)))); // Can only use _Any with _LockXXX flags (to eat a key away without an ID to retrieve it) + IM_ASSERT((flags & ~ImGuiInputFlags_SupportedBySetKeyOwner) == 0); // Passing flags not supported by this function! + + ImGuiContext& g = *GImGui; + ImGuiKeyOwnerData* owner_data = GetKeyOwnerData(&g, key); + owner_data->OwnerCurr = owner_data->OwnerNext = owner_id; + + // We cannot lock by default as it would likely break lots of legacy code. + // In the case of using LockUntilRelease while key is not down we still lock during the frame (no key_data->Down test) + owner_data->LockUntilRelease = (flags & ImGuiInputFlags_LockUntilRelease) != 0; + owner_data->LockThisFrame = (flags & ImGuiInputFlags_LockThisFrame) != 0 || (owner_data->LockUntilRelease); +} + +// Rarely used helper +void ImGui::SetKeyOwnersForKeyChord(ImGuiKeyChord key_chord, ImGuiID owner_id, ImGuiInputFlags flags) +{ + if (key_chord & ImGuiMod_Ctrl) { SetKeyOwner(ImGuiMod_Ctrl, owner_id, flags); } + if (key_chord & ImGuiMod_Shift) { SetKeyOwner(ImGuiMod_Shift, owner_id, flags); } + if (key_chord & ImGuiMod_Alt) { SetKeyOwner(ImGuiMod_Alt, owner_id, flags); } + if (key_chord & ImGuiMod_Super) { SetKeyOwner(ImGuiMod_Super, owner_id, flags); } + if (key_chord & ImGuiMod_Shortcut) { SetKeyOwner(ImGuiMod_Shortcut, owner_id, flags); } + if (key_chord & ~ImGuiMod_Mask_) { SetKeyOwner((ImGuiKey)(key_chord & ~ImGuiMod_Mask_), owner_id, flags); } +} + +// This is more or less equivalent to: +// if (IsItemHovered() || IsItemActive()) +// SetKeyOwner(key, GetItemID()); +// Extensive uses of that (e.g. many calls for a single item) may want to manually perform the tests once and then call SetKeyOwner() multiple times. +// More advanced usage scenarios may want to call SetKeyOwner() manually based on different condition. +// Worth noting is that only one item can be hovered and only one item can be active, therefore this usage pattern doesn't need to bother with routing and priority. +void ImGui::SetItemKeyOwner(ImGuiKey key, ImGuiInputFlags flags) +{ + ImGuiContext& g = *GImGui; + ImGuiID id = g.LastItemData.ID; + if (id == 0 || (g.HoveredId != id && g.ActiveId != id)) + return; + if ((flags & ImGuiInputFlags_CondMask_) == 0) + flags |= ImGuiInputFlags_CondDefault_; + if ((g.HoveredId == id && (flags & ImGuiInputFlags_CondHovered)) || (g.ActiveId == id && (flags & ImGuiInputFlags_CondActive))) + { + IM_ASSERT((flags & ~ImGuiInputFlags_SupportedBySetItemKeyOwner) == 0); // Passing flags not supported by this function! + SetKeyOwner(key, id, flags & ~ImGuiInputFlags_CondMask_); + } +} + +bool ImGui::Shortcut(ImGuiKeyChord key_chord, ImGuiID owner_id, ImGuiInputFlags flags) +{ + ImGuiContext& g = *GImGui; + + // When using (owner_id == 0/Any): SetShortcutRouting() will use CurrentFocusScopeId and filter with this, so IsKeyPressed() is fine with he 0/Any. + if ((flags & ImGuiInputFlags_RouteMask_) == 0) + flags |= ImGuiInputFlags_RouteFocused; + if (!SetShortcutRouting(key_chord, owner_id, flags)) + return false; + + if (key_chord & ImGuiMod_Shortcut) + key_chord = ConvertShortcutMod(key_chord); + ImGuiKey mods = (ImGuiKey)(key_chord & ImGuiMod_Mask_); + if (g.IO.KeyMods != mods) + return false; + + // Special storage location for mods + ImGuiKey key = (ImGuiKey)(key_chord & ~ImGuiMod_Mask_); + if (key == ImGuiKey_None) + key = ConvertSingleModFlagToKey(&g, mods); + + if (!IsKeyPressed(key, owner_id, (flags & (ImGuiInputFlags_Repeat | (ImGuiInputFlags)ImGuiInputFlags_RepeatRateMask_)))) + return false; + IM_ASSERT((flags & ~ImGuiInputFlags_SupportedByShortcut) == 0); // Passing flags not supported by this function! + + return true; } @@ -8713,6 +9771,38 @@ bool ImGui::DebugCheckVersionAndDataLayout(const char* version, size_t sz_io, si return !error; } +// Until 1.89 (IMGUI_VERSION_NUM < 18814) it was legal to use SetCursorPos() to extend the boundary of a parent (e.g. window or table cell) +// This is causing issues and ambiguity and we need to retire that. +// See https://github.com/ocornut/imgui/issues/5548 for more details. +// [Scenario 1] +// Previously this would make the window content size ~200x200: +// Begin(...) + SetCursorScreenPos(GetCursorScreenPos() + ImVec2(200,200)) + End(); // NOT OK +// Instead, please submit an item: +// Begin(...) + SetCursorScreenPos(GetCursorScreenPos() + ImVec2(200,200)) + Dummy(ImVec2(0,0)) + End(); // OK +// Alternative: +// Begin(...) + Dummy(ImVec2(200,200)) + End(); // OK +// [Scenario 2] +// For reference this is one of the issue what we aim to fix with this change: +// BeginGroup() + SomeItem("foobar") + SetCursorScreenPos(GetCursorScreenPos()) + EndGroup() +// The previous logic made SetCursorScreenPos(GetCursorScreenPos()) have a side-effect! It would erroneously incorporate ItemSpacing.y after the item into content size, making the group taller! +// While this code is a little twisted, no-one would expect SetXXX(GetXXX()) to have a side-effect. Using vertical alignment patterns could trigger this issue. +void ImGui::ErrorCheckUsingSetCursorPosToExtendParentBoundaries() +{ + ImGuiContext& g = *GImGui; + ImGuiWindow* window = g.CurrentWindow; + IM_ASSERT(window->DC.IsSetPos); + window->DC.IsSetPos = false; +#ifdef IMGUI_DISABLE_OBSOLETE_FUNCTIONS + if (window->DC.CursorPos.x <= window->DC.CursorMaxPos.x && window->DC.CursorPos.y <= window->DC.CursorMaxPos.y) + return; + if (window->SkipItems) + return; + IM_ASSERT(0 && "Code uses SetCursorPos()/SetCursorScreenPos() to extend window/parent boundaries. Please submit an item e.g. Dummy() to validate extent."); +#else + window->DC.CursorMaxPos = ImMax(window->DC.CursorMaxPos, window->DC.CursorPos); +#endif +} + static void ImGui::ErrorCheckNewFrameSanityChecks() { ImGuiContext& g = *GImGui; @@ -8725,6 +9815,13 @@ static void ImGui::ErrorCheckNewFrameSanityChecks() // #define IM_ASSERT(EXPR) do { if (SomeCode(EXPR)) SomeMoreCode(); } while (0) // Correct! if (true) IM_ASSERT(1); else IM_ASSERT(0); + // Emscripten backends are often imprecise in their submission of DeltaTime. (#6114, #3644) + // Ideally the Emscripten app/backend should aim to fix or smooth this value and avoid feeding zero, but we tolerate it. +#ifdef __EMSCRIPTEN__ + if (g.IO.DeltaTime <= 0.0f && g.FrameCount > 0) + g.IO.DeltaTime = 0.00001f; +#endif + // Check user data // (We pass an error message in the assert expression to make it visible to programmers who are not using a debugger, as most assert handlers display their argument) IM_ASSERT(g.Initialized); @@ -8800,9 +9897,9 @@ static void ImGui::ErrorCheckEndFrameSanityChecks() // One possible reason leading to this assert is that your backends update inputs _AFTER_ NewFrame(). // It is known that when some modal native windows called mid-frame takes focus away, some backends such as GLFW will // send key release events mid-frame. This would normally trigger this assertion and lead to sheared inputs. - // We silently accommodate for this case by ignoring/ the case where all io.KeyXXX modifiers were released (aka key_mod_flags == 0), + // We silently accommodate for this case by ignoring the case where all io.KeyXXX modifiers were released (aka key_mod_flags == 0), // while still correctly asserting on mid-frame key press events. - const ImGuiModFlags key_mods = GetMergedModFlags(); + const ImGuiKeyChord key_mods = GetMergedModsFromKeys(); IM_ASSERT((key_mods == 0 || g.IO.KeyMods == key_mods) && "Mismatching io.KeyCtrl/io.KeyShift/io.KeyAlt/io.KeySuper vs io.KeyMods"); IM_UNUSED(key_mods); @@ -8815,7 +9912,9 @@ static void ImGui::ErrorCheckEndFrameSanityChecks() { if (g.CurrentWindowStack.Size > 1) { + ImGuiWindow* window = g.CurrentWindowStack.back().Window; // <-- This window was not Ended! IM_ASSERT_USER_ERROR(g.CurrentWindowStack.Size == 1, "Mismatched Begin/BeginChild vs End/EndChild calls: did you forget to call End/EndChild?"); + IM_UNUSED(window); while (g.CurrentWindowStack.Size > 1) End(); } @@ -8912,7 +10011,12 @@ void ImGui::ErrorCheckEndWindowRecover(ImGuiErrorLogCallback log_callback, vo if (log_callback) log_callback(user_data, "Recovered from missing PopStyleVar() in '%s'", window->Name); PopStyleVar(); } - while (g.FocusScopeStack.Size > stack_sizes->SizeOfFocusScopeStack) //-V1044 + while (g.FontStack.Size > stack_sizes->SizeOfFontStack) //-V1044 + { + if (log_callback) log_callback(user_data, "Recovered from missing PopFont() in '%s'", window->Name); + PopFont(); + } + while (g.FocusScopeStack.Size > stack_sizes->SizeOfFocusScopeStack + 1) //-V1044 { if (log_callback) log_callback(user_data, "Recovered from missing PopFocusScope() in '%s'", window->Name); PopFocusScope(); @@ -8920,9 +10024,9 @@ void ImGui::ErrorCheckEndWindowRecover(ImGuiErrorLogCallback log_callback, vo } // Save current stack sizes for later compare -void ImGuiStackSizes::SetToCurrentState() +void ImGuiStackSizes::SetToContextState(ImGuiContext* ctx) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *ctx; ImGuiWindow* window = g.CurrentWindow; SizeOfIDStack = (short)window->IDStack.Size; SizeOfColorStack = (short)g.ColorStack.Size; @@ -8936,9 +10040,9 @@ void ImGuiStackSizes::SetToCurrentState() } // Compare to detect usage errors -void ImGuiStackSizes::CompareWithCurrentState() +void ImGuiStackSizes::CompareWithContextState(ImGuiContext* ctx) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *ctx; ImGuiWindow* window = g.CurrentWindow; IM_UNUSED(window); @@ -9014,7 +10118,7 @@ void ImGui::ItemSize(const ImVec2& size, float text_baseline_y) window->DC.CursorPosPrevLine.x = window->DC.CursorPos.x + size.x; window->DC.CursorPosPrevLine.y = line_y1; window->DC.CursorPos.x = IM_FLOOR(window->Pos.x + window->DC.Indent.x + window->DC.ColumnsOffset.x); // Next line - window->DC.CursorPos.y = IM_FLOOR(line_y1 + line_height + g.Style.ItemSpacing.y); // Next line + window->DC.CursorPos.y = IM_FLOOR(line_y1 + line_height + g.Style.ItemSpacing.y); // Next line window->DC.CursorMaxPos.x = ImMax(window->DC.CursorMaxPos.x, window->DC.CursorPosPrevLine.x); window->DC.CursorMaxPos.y = ImMax(window->DC.CursorMaxPos.y, window->DC.CursorPos.y - g.Style.ItemSpacing.y); //if (g.IO.KeyAlt) window->DrawList->AddCircle(window->DC.CursorMaxPos, 3.0f, IM_COL32(255,0,0,255), 4); // [DEBUG] @@ -9023,7 +10127,7 @@ void ImGui::ItemSize(const ImVec2& size, float text_baseline_y) window->DC.CurrLineSize.y = 0.0f; window->DC.PrevLineTextBaseOffset = ImMax(window->DC.CurrLineTextBaseOffset, text_baseline_y); window->DC.CurrLineTextBaseOffset = 0.0f; - window->DC.IsSameLine = false; + window->DC.IsSameLine = window->DC.IsSetPos = false; // Horizontal layout mode if (window->DC.LayoutType == ImGuiLayoutType_Horizontal) @@ -9060,40 +10164,50 @@ bool ImGui::ItemAdd(const ImRect& bb, ImGuiID id, const ImRect* nav_bb_arg, ImGu // to reach unclipped widgets. This would work if user had explicit scrolling control (e.g. mapped on a stick). // We intentionally don't check if g.NavWindow != NULL because g.NavAnyRequest should only be set when it is non null. // If we crash on a NULL g.NavWindow we need to fix the bug elsewhere. - window->DC.NavLayersActiveMaskNext |= (1 << window->DC.NavLayerCurrent); - if (g.NavId == id || g.NavAnyRequest) - if (g.NavWindow->RootWindowForNav == window->RootWindowForNav) - if (window == g.NavWindow || ((window->Flags | g.NavWindow->Flags) & ImGuiWindowFlags_NavFlattened)) - NavProcessItem(); + if (!(g.LastItemData.InFlags & ImGuiItemFlags_NoNav)) + { + window->DC.NavLayersActiveMaskNext |= (1 << window->DC.NavLayerCurrent); + if (g.NavId == id || g.NavAnyRequest) + if (g.NavWindow->RootWindowForNav == window->RootWindowForNav) + if (window == g.NavWindow || ((window->Flags | g.NavWindow->Flags) & ImGuiWindowFlags_NavFlattened)) + NavProcessItem(); + } // [DEBUG] People keep stumbling on this problem and using "" as identifier in the root of a window instead of "##something". // Empty identifier are valid and useful in a small amount of cases, but 99.9% of the time you want to use "##something". - // READ THE FAQ: https://dearimgui.org/faq + // READ THE FAQ: https://dearimgui.com/faq IM_ASSERT(id != window->ID && "Cannot have an empty ID at the root of a window. If you need an empty label, use ## and read the FAQ about how the ID Stack works!"); - - // [DEBUG] Item Picker tool, when enabling the "extended" version we perform the check in ItemAdd() -#ifdef IMGUI_DEBUG_TOOL_ITEM_PICKER_EX - if (id == g.DebugItemPickerBreakId) - { - IM_DEBUG_BREAK(); - g.DebugItemPickerBreakId = 0; - } -#endif } g.NextItemData.Flags = ImGuiNextItemDataFlags_None; #ifdef IMGUI_ENABLE_TEST_ENGINE if (id != 0) - IMGUI_TEST_ENGINE_ITEM_ADD(nav_bb_arg ? *nav_bb_arg : bb, id); + IMGUI_TEST_ENGINE_ITEM_ADD(id, g.LastItemData.NavRect, &g.LastItemData); #endif // Clipping test - const bool is_clipped = IsClippedEx(bb, id); - if (is_clipped) - return false; + // (FIXME: This is a modified copy of IsClippedEx() so we can reuse the is_rect_visible value) + //const bool is_clipped = IsClippedEx(bb, id); + //if (is_clipped) + // return false; + const bool is_rect_visible = bb.Overlaps(window->ClipRect); + if (!is_rect_visible) + if (id == 0 || (id != g.ActiveId && id != g.ActiveIdPreviousFrame && id != g.NavId)) + if (!g.LogEnabled) + return false; + + // [DEBUG] +#ifndef IMGUI_DISABLE_DEBUG_TOOLS + if (id != 0 && id == g.DebugLocateId) + DebugLocateItemResolveWithLastItem(); +#endif //if (g.IO.KeyAlt) window->DrawList->AddRect(bb.Min, bb.Max, IM_COL32(255,255,0,120)); // [DEBUG] + //if ((g.LastItemData.InFlags & ImGuiItemFlags_NoNav) == 0) + // window->DrawList->AddRect(g.LastItemData.NavRect.Min, g.LastItemData.NavRect.Max, IM_COL32(255,255,0,255)); // [DEBUG] // We need to calculate this now to take account of the current clipping rectangle (as items like Selectable may change them) + if (is_rect_visible) + g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_Visible; if (IsMouseHoveringRect(bb.Min, bb.Max)) g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_HoveredRect; return true; @@ -9136,11 +10250,15 @@ ImVec2 ImGui::GetCursorScreenPos() return window->DC.CursorPos; } +// 2022/08/05: Setting cursor position also extend boundaries (via modifying CursorMaxPos) used to compute window size, group size etc. +// I believe this was is a judicious choice but it's probably being relied upon (it has been the case since 1.31 and 1.50) +// It would be sane if we requested user to use SetCursorPos() + Dummy(ImVec2(0,0)) to extend CursorMaxPos... void ImGui::SetCursorScreenPos(const ImVec2& pos) { ImGuiWindow* window = GetCurrentWindow(); window->DC.CursorPos = pos; - window->DC.CursorMaxPos = ImMax(window->DC.CursorMaxPos, window->DC.CursorPos); + //window->DC.CursorMaxPos = ImMax(window->DC.CursorMaxPos, window->DC.CursorPos); + window->DC.IsSetPos = true; } // User generally sees positions in window coordinates. Internally we store CursorPos in absolute screen coordinates because it is more convenient. @@ -9167,21 +10285,24 @@ void ImGui::SetCursorPos(const ImVec2& local_pos) { ImGuiWindow* window = GetCurrentWindow(); window->DC.CursorPos = window->Pos - window->Scroll + local_pos; - window->DC.CursorMaxPos = ImMax(window->DC.CursorMaxPos, window->DC.CursorPos); + //window->DC.CursorMaxPos = ImMax(window->DC.CursorMaxPos, window->DC.CursorPos); + window->DC.IsSetPos = true; } void ImGui::SetCursorPosX(float x) { ImGuiWindow* window = GetCurrentWindow(); window->DC.CursorPos.x = window->Pos.x - window->Scroll.x + x; - window->DC.CursorMaxPos.x = ImMax(window->DC.CursorMaxPos.x, window->DC.CursorPos.x); + //window->DC.CursorMaxPos.x = ImMax(window->DC.CursorMaxPos.x, window->DC.CursorPos.x); + window->DC.IsSetPos = true; } void ImGui::SetCursorPosY(float y) { ImGuiWindow* window = GetCurrentWindow(); window->DC.CursorPos.y = window->Pos.y - window->Scroll.y + y; - window->DC.CursorMaxPos.y = ImMax(window->DC.CursorMaxPos.y, window->DC.CursorPos.y); + //window->DC.CursorMaxPos.y = ImMax(window->DC.CursorMaxPos.y, window->DC.CursorPos.y); + window->DC.IsSetPos = true; } ImVec2 ImGui::GetCursorStartPos() @@ -9398,6 +10519,9 @@ void ImGui::EndGroup() ImGuiGroupData& group_data = g.GroupStack.back(); IM_ASSERT(group_data.WindowID == window->ID); // EndGroup() in wrong window? + if (window->DC.IsSetPos) + ErrorCheckUsingSetCursorPosToExtendParentBoundaries(); + ImRect group_bb(group_data.BackupCursorPos, ImMax(window->DC.CursorMaxPos, group_data.BackupCursorPos)); window->DC.CursorPos = group_data.BackupCursorPos; @@ -9420,7 +10544,7 @@ void ImGui::EndGroup() ItemAdd(group_bb, 0, NULL, ImGuiItemFlags_NoTabStop); // If the current ActiveId was declared within the boundary of our group, we copy it to LastItemId so IsItemActive(), IsItemDeactivated() etc. will be functional on the entire group. - // It would be be neater if we replaced window.DC.LastItemId by e.g. 'bool LastItemIsActive', but would put a little more burden on individual widgets. + // It would be neater if we replaced window.DC.LastItemId by e.g. 'bool LastItemIsActive', but would put a little more burden on individual widgets. // Also if you grep for LastItemId you'll notice it is only used in that context. // (The two tests not the same because ActiveIdIsAlive is an ID itself, in order to be able to handle ActiveId being overwritten during the frame.) const bool group_contains_curr_active_id = (group_data.BackupActiveIdIsAlive != g.ActiveId) && (g.ActiveIdIsAlive == g.ActiveId) && g.ActiveId; @@ -9470,38 +10594,24 @@ static float CalcScrollEdgeSnap(float target, float snap_min, float snap_max, fl static ImVec2 CalcNextScrollFromScrollTargetAndClamp(ImGuiWindow* window) { ImVec2 scroll = window->Scroll; - if (window->ScrollTarget.x < FLT_MAX) + ImVec2 decoration_size(window->DecoOuterSizeX1 + window->DecoInnerSizeX1 + window->DecoOuterSizeX2, window->DecoOuterSizeY1 + window->DecoInnerSizeY1 + window->DecoOuterSizeY2); + for (int axis = 0; axis < 2; axis++) { - float decoration_total_width = window->ScrollbarSizes.x; - float center_x_ratio = window->ScrollTargetCenterRatio.x; - float scroll_target_x = window->ScrollTarget.x; - if (window->ScrollTargetEdgeSnapDist.x > 0.0f) + if (window->ScrollTarget[axis] < FLT_MAX) { - float snap_x_min = 0.0f; - float snap_x_max = window->ScrollMax.x + window->SizeFull.x - decoration_total_width; - scroll_target_x = CalcScrollEdgeSnap(scroll_target_x, snap_x_min, snap_x_max, window->ScrollTargetEdgeSnapDist.x, center_x_ratio); + float center_ratio = window->ScrollTargetCenterRatio[axis]; + float scroll_target = window->ScrollTarget[axis]; + if (window->ScrollTargetEdgeSnapDist[axis] > 0.0f) + { + float snap_min = 0.0f; + float snap_max = window->ScrollMax[axis] + window->SizeFull[axis] - decoration_size[axis]; + scroll_target = CalcScrollEdgeSnap(scroll_target, snap_min, snap_max, window->ScrollTargetEdgeSnapDist[axis], center_ratio); + } + scroll[axis] = scroll_target - center_ratio * (window->SizeFull[axis] - decoration_size[axis]); } - scroll.x = scroll_target_x - center_x_ratio * (window->SizeFull.x - decoration_total_width); - } - if (window->ScrollTarget.y < FLT_MAX) - { - float decoration_total_height = window->TitleBarHeight() + window->MenuBarHeight() + window->ScrollbarSizes.y; - float center_y_ratio = window->ScrollTargetCenterRatio.y; - float scroll_target_y = window->ScrollTarget.y; - if (window->ScrollTargetEdgeSnapDist.y > 0.0f) - { - float snap_y_min = 0.0f; - float snap_y_max = window->ScrollMax.y + window->SizeFull.y - decoration_total_height; - scroll_target_y = CalcScrollEdgeSnap(scroll_target_y, snap_y_min, snap_y_max, window->ScrollTargetEdgeSnapDist.y, center_y_ratio); - } - scroll.y = scroll_target_y - center_y_ratio * (window->SizeFull.y - decoration_total_height); - } - scroll.x = IM_FLOOR(ImMax(scroll.x, 0.0f)); - scroll.y = IM_FLOOR(ImMax(scroll.y, 0.0f)); - if (!window->Collapsed && !window->SkipItems) - { - scroll.x = ImMin(scroll.x, window->ScrollMax.x); - scroll.y = ImMin(scroll.y, window->ScrollMax.y); + scroll[axis] = IM_FLOOR(ImMax(scroll[axis], 0.0f)); + if (!window->Collapsed && !window->SkipItems) + scroll[axis] = ImMin(scroll[axis], window->ScrollMax[axis]); } return scroll; } @@ -9522,8 +10632,11 @@ void ImGui::ScrollToRect(ImGuiWindow* window, const ImRect& item_rect, ImGuiScro ImVec2 ImGui::ScrollToRectEx(ImGuiWindow* window, const ImRect& item_rect, ImGuiScrollFlags flags) { ImGuiContext& g = *GImGui; - ImRect window_rect(window->InnerRect.Min - ImVec2(1, 1), window->InnerRect.Max + ImVec2(1, 1)); - //GetForegroundDrawList(window)->AddRect(window_rect.Min, window_rect.Max, IM_COL32_WHITE); // [DEBUG] + ImRect scroll_rect(window->InnerRect.Min - ImVec2(1, 1), window->InnerRect.Max + ImVec2(1, 1)); + scroll_rect.Min.x = ImMin(scroll_rect.Min.x + window->DecoInnerSizeX1, scroll_rect.Max.x); + scroll_rect.Min.y = ImMin(scroll_rect.Min.y + window->DecoInnerSizeY1, scroll_rect.Max.y); + //GetForegroundDrawList(window)->AddRect(item_rect.Min, item_rect.Max, IM_COL32(255,0,0,255), 0.0f, 0, 5.0f); // [DEBUG] + //GetForegroundDrawList(window)->AddRect(scroll_rect.Min, scroll_rect.Max, IM_COL32_WHITE); // [DEBUG] // Check that only one behavior is selected per axis IM_ASSERT((flags & ImGuiScrollFlags_MaskX_) == 0 || ImIsPowerOfTwo(flags & ImGuiScrollFlags_MaskX_)); @@ -9536,35 +10649,39 @@ ImVec2 ImGui::ScrollToRectEx(ImGuiWindow* window, const ImRect& item_rect, ImGui if ((flags & ImGuiScrollFlags_MaskY_) == 0) flags |= window->Appearing ? ImGuiScrollFlags_AlwaysCenterY : ImGuiScrollFlags_KeepVisibleEdgeY; - const bool fully_visible_x = item_rect.Min.x >= window_rect.Min.x && item_rect.Max.x <= window_rect.Max.x; - const bool fully_visible_y = item_rect.Min.y >= window_rect.Min.y && item_rect.Max.y <= window_rect.Max.y; - const bool can_be_fully_visible_x = (item_rect.GetWidth() + g.Style.ItemSpacing.x * 2.0f) <= window_rect.GetWidth(); - const bool can_be_fully_visible_y = (item_rect.GetHeight() + g.Style.ItemSpacing.y * 2.0f) <= window_rect.GetHeight(); + const bool fully_visible_x = item_rect.Min.x >= scroll_rect.Min.x && item_rect.Max.x <= scroll_rect.Max.x; + const bool fully_visible_y = item_rect.Min.y >= scroll_rect.Min.y && item_rect.Max.y <= scroll_rect.Max.y; + const bool can_be_fully_visible_x = (item_rect.GetWidth() + g.Style.ItemSpacing.x * 2.0f) <= scroll_rect.GetWidth() || (window->AutoFitFramesX > 0) || (window->Flags & ImGuiWindowFlags_AlwaysAutoResize) != 0; + const bool can_be_fully_visible_y = (item_rect.GetHeight() + g.Style.ItemSpacing.y * 2.0f) <= scroll_rect.GetHeight() || (window->AutoFitFramesY > 0) || (window->Flags & ImGuiWindowFlags_AlwaysAutoResize) != 0; if ((flags & ImGuiScrollFlags_KeepVisibleEdgeX) && !fully_visible_x) { - if (item_rect.Min.x < window_rect.Min.x || !can_be_fully_visible_x) + if (item_rect.Min.x < scroll_rect.Min.x || !can_be_fully_visible_x) SetScrollFromPosX(window, item_rect.Min.x - g.Style.ItemSpacing.x - window->Pos.x, 0.0f); - else if (item_rect.Max.x >= window_rect.Max.x) + else if (item_rect.Max.x >= scroll_rect.Max.x) SetScrollFromPosX(window, item_rect.Max.x + g.Style.ItemSpacing.x - window->Pos.x, 1.0f); } else if (((flags & ImGuiScrollFlags_KeepVisibleCenterX) && !fully_visible_x) || (flags & ImGuiScrollFlags_AlwaysCenterX)) { - float target_x = can_be_fully_visible_x ? ImFloor((item_rect.Min.x + item_rect.Max.x - window->InnerRect.GetWidth()) * 0.5f) : item_rect.Min.x; - SetScrollFromPosX(window, target_x - window->Pos.x, 0.0f); + if (can_be_fully_visible_x) + SetScrollFromPosX(window, ImFloor((item_rect.Min.x + item_rect.Max.x) * 0.5f) - window->Pos.x, 0.5f); + else + SetScrollFromPosX(window, item_rect.Min.x - window->Pos.x, 0.0f); } if ((flags & ImGuiScrollFlags_KeepVisibleEdgeY) && !fully_visible_y) { - if (item_rect.Min.y < window_rect.Min.y || !can_be_fully_visible_y) + if (item_rect.Min.y < scroll_rect.Min.y || !can_be_fully_visible_y) SetScrollFromPosY(window, item_rect.Min.y - g.Style.ItemSpacing.y - window->Pos.y, 0.0f); - else if (item_rect.Max.y >= window_rect.Max.y) + else if (item_rect.Max.y >= scroll_rect.Max.y) SetScrollFromPosY(window, item_rect.Max.y + g.Style.ItemSpacing.y - window->Pos.y, 1.0f); } else if (((flags & ImGuiScrollFlags_KeepVisibleCenterY) && !fully_visible_y) || (flags & ImGuiScrollFlags_AlwaysCenterY)) { - float target_y = can_be_fully_visible_y ? ImFloor((item_rect.Min.y + item_rect.Max.y - window->InnerRect.GetHeight()) * 0.5f) : item_rect.Min.y; - SetScrollFromPosY(window, target_y - window->Pos.y, 0.0f); + if (can_be_fully_visible_y) + SetScrollFromPosY(window, ImFloor((item_rect.Min.y + item_rect.Max.y) * 0.5f) - window->Pos.y, 0.5f); + else + SetScrollFromPosY(window, item_rect.Min.y - window->Pos.y, 0.0f); } ImVec2 next_scroll = CalcNextScrollFromScrollTargetAndClamp(window); @@ -9639,7 +10756,7 @@ void ImGui::SetScrollY(float scroll_y) // - local_pos = (absolution_pos - window->Pos) // - So local_x/local_y are 0.0f for a position at the upper-left corner of a window, // and generally local_x/local_y are >(padding+decoration) && <(size-padding-decoration) when in the visible area. -// - They mostly exists because of legacy API. +// - They mostly exist because of legacy API. // Following the rules above, when trying to work with scrolling code, consider that: // - SetScrollFromPosY(0.0f) == SetScrollY(0.0f + scroll.y) == has no effect! // - SetScrollFromPosY(-scroll.y) == SetScrollY(-scroll.y + scroll.y) == SetScrollY(0.0f) == reset scroll. Of course writing SetScrollY(0.0f) directly then makes more sense @@ -9647,7 +10764,7 @@ void ImGui::SetScrollY(float scroll_y) void ImGui::SetScrollFromPosX(ImGuiWindow* window, float local_x, float center_x_ratio) { IM_ASSERT(center_x_ratio >= 0.0f && center_x_ratio <= 1.0f); - window->ScrollTarget.x = IM_FLOOR(local_x + window->Scroll.x); // Convert local position to scroll offset + window->ScrollTarget.x = IM_FLOOR(local_x - window->DecoOuterSizeX1 - window->DecoInnerSizeX1 + window->Scroll.x); // Convert local position to scroll offset window->ScrollTargetCenterRatio.x = center_x_ratio; window->ScrollTargetEdgeSnapDist.x = 0.0f; } @@ -9655,9 +10772,7 @@ void ImGui::SetScrollFromPosX(ImGuiWindow* window, float local_x, float center_x void ImGui::SetScrollFromPosY(ImGuiWindow* window, float local_y, float center_y_ratio) { IM_ASSERT(center_y_ratio >= 0.0f && center_y_ratio <= 1.0f); - const float decoration_up_height = window->TitleBarHeight() + window->MenuBarHeight(); // FIXME: Would be nice to have a more standardized access to our scrollable/client rect; - local_y -= decoration_up_height; - window->ScrollTarget.y = IM_FLOOR(local_y + window->Scroll.y); // Convert local position to scroll offset + window->ScrollTarget.y = IM_FLOOR(local_y - window->DecoOuterSizeY1 - window->DecoInnerSizeY1 + window->Scroll.y); // Convert local position to scroll offset window->ScrollTargetCenterRatio.y = center_y_ratio; window->ScrollTargetEdgeSnapDist.y = 0.0f; } @@ -9704,12 +10819,12 @@ void ImGui::SetScrollHereY(float center_y_ratio) // [SECTION] TOOLTIPS //----------------------------------------------------------------------------- -void ImGui::BeginTooltip() +bool ImGui::BeginTooltip() { - BeginTooltipEx(ImGuiTooltipFlags_None, ImGuiWindowFlags_None); + return BeginTooltipEx(ImGuiTooltipFlags_None, ImGuiWindowFlags_None); } -void ImGui::BeginTooltipEx(ImGuiTooltipFlags tooltip_flags, ImGuiWindowFlags extra_window_flags) +bool ImGui::BeginTooltipEx(ImGuiTooltipFlags tooltip_flags, ImGuiWindowFlags extra_window_flags) { ImGuiContext& g = *GImGui; @@ -9733,12 +10848,17 @@ void ImGui::BeginTooltipEx(ImGuiTooltipFlags tooltip_flags, ImGuiWindowFlags ext if (window->Active) { // Hide previous tooltip from being displayed. We can't easily "reset" the content of a window so we create a new one. - window->Hidden = true; - window->HiddenFramesCanSkipItems = 1; // FIXME: This may not be necessary? + SetWindowHiddendAndSkipItemsForCurrentFrame(window); ImFormatString(window_name, IM_ARRAYSIZE(window_name), "##Tooltip_%02d", ++g.TooltipOverrideCount); } ImGuiWindowFlags flags = ImGuiWindowFlags_Tooltip | ImGuiWindowFlags_NoInputs | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoDocking; Begin(window_name, NULL, flags | extra_window_flags); + // 2023-03-09: Added bool return value to the API, but currently always returning true. + // If this ever returns false we need to update BeginDragDropSource() accordingly. + //if (!ret) + // End(); + //return ret; + return true; } void ImGui::EndTooltip() @@ -9749,7 +10869,8 @@ void ImGui::EndTooltip() void ImGui::SetTooltipV(const char* fmt, va_list args) { - BeginTooltipEx(ImGuiTooltipFlags_OverridePreviousTooltip, ImGuiWindowFlags_None); + if (!BeginTooltipEx(ImGuiTooltipFlags_OverridePreviousTooltip, ImGuiWindowFlags_None)) + return; TextV(fmt, args); EndTooltip(); } @@ -9807,6 +10928,7 @@ bool ImGui::IsPopupOpen(const char* str_id, ImGuiPopupFlags popup_flags) return IsPopupOpen(id, popup_flags); } +// Also see FindBlockingModal(NULL) ImGuiWindow* ImGui::GetTopMostPopupModal() { ImGuiContext& g = *GImGui; @@ -9817,6 +10939,7 @@ ImGuiWindow* ImGui::GetTopMostPopupModal() return NULL; } +// See Demo->Stacked Modal to confirm what this is for. ImGuiWindow* ImGui::GetTopMostAndVisiblePopupModal() { ImGuiContext& g = *GImGui; @@ -9830,7 +10953,9 @@ ImGuiWindow* ImGui::GetTopMostAndVisiblePopupModal() void ImGui::OpenPopup(const char* str_id, ImGuiPopupFlags popup_flags) { ImGuiContext& g = *GImGui; - OpenPopupEx(g.CurrentWindow->GetID(str_id), popup_flags); + ImGuiID id = g.CurrentWindow->GetID(str_id); + IMGUI_DEBUG_LOG_POPUP("[popup] OpenPopup(\"%s\" -> 0x%08X)\n", str_id, id); + OpenPopupEx(id, popup_flags); } void ImGui::OpenPopup(ImGuiID id, ImGuiPopupFlags popup_flags) @@ -9849,19 +10974,19 @@ void ImGui::OpenPopupEx(ImGuiID id, ImGuiPopupFlags popup_flags) const int current_stack_size = g.BeginPopupStack.Size; if (popup_flags & ImGuiPopupFlags_NoOpenOverExistingPopup) - if (IsPopupOpen(0u, ImGuiPopupFlags_AnyPopupId)) + if (IsPopupOpen((ImGuiID)0, ImGuiPopupFlags_AnyPopupId)) return; ImGuiPopupData popup_ref; // Tagged as new ref as Window will be set back to NULL if we write this into OpenPopupStack. popup_ref.PopupId = id; popup_ref.Window = NULL; - popup_ref.SourceWindow = g.NavWindow; + popup_ref.BackupNavWindow = g.NavWindow; // When popup closes focus may be restored to NavWindow (depend on window type). popup_ref.OpenFrameCount = g.FrameCount; popup_ref.OpenParentId = parent_window->IDStack.back(); popup_ref.OpenPopupPos = NavCalcPreferredRefPos(); popup_ref.OpenMousePos = IsMousePosValid(&g.IO.MousePos) ? g.IO.MousePos : popup_ref.OpenPopupPos; - IMGUI_DEBUG_LOG_POPUP("OpenPopupEx(0x%08X)\n", id); + IMGUI_DEBUG_LOG_POPUP("[popup] OpenPopupEx(0x%08X)\n", id); if (g.OpenPopupStack.Size < current_stack_size + 1) { g.OpenPopupStack.push_back(popup_ref); @@ -9931,7 +11056,7 @@ void ImGui::ClosePopupsOverWindow(ImGuiWindow* ref_window, bool restore_focus_to } if (popup_count_to_keep < g.OpenPopupStack.Size) // This test is not required but it allows to set a convenient breakpoint on the statement below { - IMGUI_DEBUG_LOG_POPUP("ClosePopupsOverWindow(\"%s\") -> ClosePopupToLevel(%d)\n", ref_window->Name, popup_count_to_keep); + IMGUI_DEBUG_LOG_POPUP("[popup] ClosePopupsOverWindow(\"%s\")\n", ref_window ? ref_window->Name : ""); ClosePopupToLevel(popup_count_to_keep, restore_focus_to_window_under_popup); } } @@ -9944,7 +11069,7 @@ void ImGui::ClosePopupsExceptModals() for (popup_count_to_keep = g.OpenPopupStack.Size; popup_count_to_keep > 0; popup_count_to_keep--) { ImGuiWindow* window = g.OpenPopupStack[popup_count_to_keep - 1].Window; - if (!window || window->Flags & ImGuiWindowFlags_Modal) + if (!window || (window->Flags & ImGuiWindowFlags_Modal)) break; } if (popup_count_to_keep < g.OpenPopupStack.Size) // This test is not required but it allows to set a convenient breakpoint on the statement below @@ -9954,27 +11079,21 @@ void ImGui::ClosePopupsExceptModals() void ImGui::ClosePopupToLevel(int remaining, bool restore_focus_to_window_under_popup) { ImGuiContext& g = *GImGui; - IMGUI_DEBUG_LOG_POPUP("ClosePopupToLevel(%d), restore_focus_to_window_under_popup=%d\n", remaining, restore_focus_to_window_under_popup); + IMGUI_DEBUG_LOG_POPUP("[popup] ClosePopupToLevel(%d), restore_focus_to_window_under_popup=%d\n", remaining, restore_focus_to_window_under_popup); IM_ASSERT(remaining >= 0 && remaining < g.OpenPopupStack.Size); // Trim open popup stack - ImGuiWindow* focus_window = g.OpenPopupStack[remaining].SourceWindow; ImGuiWindow* popup_window = g.OpenPopupStack[remaining].Window; + ImGuiWindow* popup_backup_nav_window = g.OpenPopupStack[remaining].BackupNavWindow; g.OpenPopupStack.resize(remaining); if (restore_focus_to_window_under_popup) { + ImGuiWindow* focus_window = (popup_window && popup_window->Flags & ImGuiWindowFlags_ChildMenu) ? popup_window->ParentWindow : popup_backup_nav_window; if (focus_window && !focus_window->WasActive && popup_window) - { - // Fallback - FocusTopMostWindowUnderOne(popup_window, NULL); - } + FocusTopMostWindowUnderOne(popup_window, NULL, NULL, ImGuiFocusRequestFlags_RestoreFocusedChild); // Fallback else - { - if (g.NavLayer == ImGuiNavLayer_Main && focus_window) - focus_window = NavRestoreLastChildNavWindow(focus_window); - FocusWindow(focus_window); - } + FocusWindow(focus_window, (g.NavLayer == ImGuiNavLayer_Main) ? ImGuiFocusRequestFlags_RestoreFocusedChild : ImGuiFocusRequestFlags_None); } } @@ -9999,7 +11118,7 @@ void ImGui::CloseCurrentPopup() break; popup_idx--; } - IMGUI_DEBUG_LOG_POPUP("CloseCurrentPopup %d -> %d\n", g.BeginPopupStack.Size - 1, popup_idx); + IMGUI_DEBUG_LOG_POPUP("[popup] CloseCurrentPopup %d -> %d\n", g.BeginPopupStack.Size - 1, popup_idx); ClosePopupToLevel(popup_idx, true); // A common pattern is to close a popup when selecting a menu item/selectable that will open another window. @@ -10218,7 +11337,7 @@ ImVec2 ImGui::FindBestWindowPosForPopupEx(const ImVec2& ref_pos, const ImVec2& s const float avail_w = (dir == ImGuiDir_Left ? r_avoid.Min.x : r_outer.Max.x) - (dir == ImGuiDir_Right ? r_avoid.Max.x : r_outer.Min.x); const float avail_h = (dir == ImGuiDir_Up ? r_avoid.Min.y : r_outer.Max.y) - (dir == ImGuiDir_Down ? r_avoid.Max.y : r_outer.Min.y); - // If there not enough room on one axis, there's no point in positioning on a side on this axis (e.g. when not enough width, use a top/bottom position to maximize available width) + // If there's not enough room on one axis, there's no point in positioning on a side on this axis (e.g. when not enough width, use a top/bottom position to maximize available width) if (avail_w < size.x && (dir == ImGuiDir_Left || dir == ImGuiDir_Right)) continue; if (avail_h < size.y && (dir == ImGuiDir_Up || dir == ImGuiDir_Down)) @@ -10315,8 +11434,28 @@ ImVec2 ImGui::FindBestWindowPosForPopup(ImGuiWindow* window) // [SECTION] KEYBOARD/GAMEPAD NAVIGATION //----------------------------------------------------------------------------- -// FIXME-NAV: The existence of SetNavID vs SetFocusID properly needs to be clarified/reworked. -// In our terminology those should be interchangeable. Those two functions are merely a legacy artifact, so at minimum naming should be clarified. +// FIXME-NAV: The existence of SetNavID vs SetFocusID vs FocusWindow() needs to be clarified/reworked. +// In our terminology those should be interchangeable, yet right now this is super confusing. +// Those two functions are merely a legacy artifact, so at minimum naming should be clarified. + +void ImGui::SetNavWindow(ImGuiWindow* window) +{ + ImGuiContext& g = *GImGui; + if (g.NavWindow != window) + { + IMGUI_DEBUG_LOG_FOCUS("[focus] SetNavWindow(\"%s\")\n", window ? window->Name : ""); + g.NavWindow = window; + } + g.NavInitRequest = g.NavMoveSubmitted = g.NavMoveScoringItems = false; + NavUpdateAnyRequestFlag(); +} + +void ImGui::NavClearPreferredPosForAxis(ImGuiAxis axis) +{ + ImGuiContext& g = *GImGui; + g.NavWindow->RootWindowForNav->NavPreferredScoringPosRel[g.NavLayer][axis] = FLT_MAX; +} + void ImGui::SetNavID(ImGuiID id, ImGuiNavLayer nav_layer, ImGuiID focus_scope_id, const ImRect& rect_rel) { ImGuiContext& g = *GImGui; @@ -10327,6 +11466,10 @@ void ImGui::SetNavID(ImGuiID id, ImGuiNavLayer nav_layer, ImGuiID focus_scope_id g.NavFocusScopeId = focus_scope_id; g.NavWindow->NavLastIds[nav_layer] = id; g.NavWindow->NavRectRel[nav_layer] = rect_rel; + + // Clear preferred scoring position (NavMoveRequestApplyResult() will tend to restore it) + NavClearPreferredPosForAxis(ImGuiAxis_X); + NavClearPreferredPosForAxis(ImGuiAxis_Y); } void ImGui::SetFocusID(ImGuiID id, ImGuiWindow* window) @@ -10334,55 +11477,45 @@ void ImGui::SetFocusID(ImGuiID id, ImGuiWindow* window) ImGuiContext& g = *GImGui; IM_ASSERT(id != 0); - // Assume that SetFocusID() is called in the context where its window->DC.NavLayerCurrent and window->DC.NavFocusScopeIdCurrent are valid. + if (g.NavWindow != window) + SetNavWindow(window); + + // Assume that SetFocusID() is called in the context where its window->DC.NavLayerCurrent and g.CurrentFocusScopeId are valid. // Note that window may be != g.CurrentWindow (e.g. SetFocusID call in InputTextEx for multi-line text) const ImGuiNavLayer nav_layer = window->DC.NavLayerCurrent; - if (g.NavWindow != window) - g.NavInitRequest = false; - g.NavWindow = window; g.NavId = id; g.NavLayer = nav_layer; - g.NavFocusScopeId = window->DC.NavFocusScopeIdCurrent; + g.NavFocusScopeId = g.CurrentFocusScopeId; window->NavLastIds[nav_layer] = id; if (g.LastItemData.ID == id) window->NavRectRel[nav_layer] = WindowRectAbsToRel(window, g.LastItemData.NavRect); - if (g.ActiveIdSource == ImGuiInputSource_Nav) + if (g.ActiveIdSource == ImGuiInputSource_Keyboard || g.ActiveIdSource == ImGuiInputSource_Gamepad) g.NavDisableMouseHover = true; else g.NavDisableHighlight = true; + + // Clear preferred scoring position (NavMoveRequestApplyResult() will tend to restore it) + NavClearPreferredPosForAxis(ImGuiAxis_X); + NavClearPreferredPosForAxis(ImGuiAxis_Y); } -ImGuiDir ImGetDirQuadrantFromDelta(float dx, float dy) +static ImGuiDir ImGetDirQuadrantFromDelta(float dx, float dy) { if (ImFabs(dx) > ImFabs(dy)) return (dx > 0.0f) ? ImGuiDir_Right : ImGuiDir_Left; return (dy > 0.0f) ? ImGuiDir_Down : ImGuiDir_Up; } -static float inline NavScoreItemDistInterval(float a0, float a1, float b0, float b1) +static float inline NavScoreItemDistInterval(float cand_min, float cand_max, float curr_min, float curr_max) { - if (a1 < b0) - return a1 - b0; - if (b1 < a0) - return a0 - b1; + if (cand_max < curr_min) + return cand_max - curr_min; + if (curr_max < cand_min) + return cand_min - curr_max; return 0.0f; } -static void inline NavClampRectToVisibleAreaForMoveDir(ImGuiDir move_dir, ImRect& r, const ImRect& clip_rect) -{ - if (move_dir == ImGuiDir_Left || move_dir == ImGuiDir_Right) - { - r.Min.y = ImClamp(r.Min.y, clip_rect.Min.y, clip_rect.Max.y); - r.Max.y = ImClamp(r.Max.y, clip_rect.Min.y, clip_rect.Max.y); - } - else // FIXME: PageUp/PageDown are leaving move_dir == None - { - r.Min.x = ImClamp(r.Min.x, clip_rect.Min.x, clip_rect.Max.x); - r.Max.x = ImClamp(r.Max.x, clip_rect.Min.x, clip_rect.Max.x); - } -} - // Scoring function for gamepad/keyboard directional navigation. Based on https://gist.github.com/rygorous/6981057 static bool ImGui::NavScoreItem(ImGuiNavItemData* result) { @@ -10405,10 +11538,6 @@ static bool ImGui::NavScoreItem(ImGuiNavItemData* result) cand.ClipWithFull(window->ClipRect); // This allows the scored item to not overlap other candidates in the parent window } - // We perform scoring on items bounding box clipped by the current clipping rectangle on the other axis (clipping on our movement axis would give us equal scores for all clipped items) - // For example, this ensure that items in one column are not reached when moving vertically from items in another column. - NavClampRectToVisibleAreaForMoveDir(g.NavMoveClipDir, cand, window->ClipRect); - // Compute distance between boxes // FIXME-NAV: Introducing biases for vertical navigation, needs to be removed. float dbx = NavScoreItemDistInterval(cand.Min.x, cand.Max.x, curr.Min.x, curr.Max.x); @@ -10447,32 +11576,41 @@ static bool ImGui::NavScoreItem(ImGuiNavItemData* result) quadrant = (g.LastItemData.ID < g.NavId) ? ImGuiDir_Left : ImGuiDir_Right; } + const ImGuiDir move_dir = g.NavMoveDir; #if IMGUI_DEBUG_NAV_SCORING - char buf[128]; - if (IsMouseHoveringRect(cand.Min, cand.Max)) + char buf[200]; + if (g.IO.KeyCtrl) // Hold CTRL to preview score in matching quadrant. CTRL+Arrow to rotate. { - ImFormatString(buf, IM_ARRAYSIZE(buf), "dbox (%.2f,%.2f->%.4f)\ndcen (%.2f,%.2f->%.4f)\nd (%.2f,%.2f->%.4f)\nnav %c, quadrant %c", dbx, dby, dist_box, dcx, dcy, dist_center, dax, day, dist_axial, "WENS"[g.NavMoveDir], "WENS"[quadrant]); - ImDrawList* draw_list = GetForegroundDrawList(window); - draw_list->AddRect(curr.Min, curr.Max, IM_COL32(255,200,0,100)); - draw_list->AddRect(cand.Min, cand.Max, IM_COL32(255,255,0,200)); - draw_list->AddRectFilled(cand.Max - ImVec2(4, 4), cand.Max + CalcTextSize(buf) + ImVec2(4, 4), IM_COL32(40,0,0,150)); - draw_list->AddText(cand.Max, ~0U, buf); - } - else if (g.IO.KeyCtrl) // Hold to preview score in matching quadrant. Press C to rotate. - { - if (quadrant == g.NavMoveDir) + if (quadrant == move_dir) { ImFormatString(buf, IM_ARRAYSIZE(buf), "%.0f/%.0f", dist_box, dist_center); ImDrawList* draw_list = GetForegroundDrawList(window); - draw_list->AddRectFilled(cand.Min, cand.Max, IM_COL32(255, 0, 0, 200)); + draw_list->AddRectFilled(cand.Min, cand.Max, IM_COL32(255, 0, 0, 80)); + draw_list->AddRectFilled(cand.Min, cand.Min + CalcTextSize(buf), IM_COL32(255, 0, 0, 200)); draw_list->AddText(cand.Min, IM_COL32(255, 255, 255, 255), buf); } } + const bool debug_hovering = IsMouseHoveringRect(cand.Min, cand.Max); + const bool debug_tty = (g.IO.KeyCtrl && IsKeyPressed(ImGuiKey_Space)); + if (debug_hovering || debug_tty) + { + ImFormatString(buf, IM_ARRAYSIZE(buf), + "d-box (%7.3f,%7.3f) -> %7.3f\nd-center (%7.3f,%7.3f) -> %7.3f\nd-axial (%7.3f,%7.3f) -> %7.3f\nnav %c, quadrant %c", + dbx, dby, dist_box, dcx, dcy, dist_center, dax, day, dist_axial, "-WENS"[move_dir+1], "-WENS"[quadrant+1]); + if (debug_hovering) + { + ImDrawList* draw_list = GetForegroundDrawList(window); + draw_list->AddRect(curr.Min, curr.Max, IM_COL32(255, 200, 0, 100)); + draw_list->AddRect(cand.Min, cand.Max, IM_COL32(255, 255, 0, 200)); + draw_list->AddRectFilled(cand.Max - ImVec2(4, 4), cand.Max + CalcTextSize(buf) + ImVec2(4, 4), IM_COL32(40, 0, 0, 200)); + draw_list->AddText(cand.Max, ~0U, buf); + } + if (debug_tty) { IMGUI_DEBUG_LOG_NAV("id 0x%08X\n%s\n", g.LastItemData.ID, buf); } + } #endif - // Is it in the quadrant we're interesting in moving to? + // Is it in the quadrant we're interested in moving to? bool new_best = false; - const ImGuiDir move_dir = g.NavMoveDir; if (quadrant == move_dir) { // Does it beat the current best candidate? @@ -10523,11 +11661,20 @@ static void ImGui::NavApplyItemToResult(ImGuiNavItemData* result) ImGuiWindow* window = g.CurrentWindow; result->Window = window; result->ID = g.LastItemData.ID; - result->FocusScopeId = window->DC.NavFocusScopeIdCurrent; + result->FocusScopeId = g.CurrentFocusScopeId; result->InFlags = g.LastItemData.InFlags; result->RectRel = WindowRectAbsToRel(window, g.LastItemData.NavRect); } +// True when current work location may be scrolled horizontally when moving left / right. +// This is generally always true UNLESS within a column. We don't have a vertical equivalent. +void ImGui::NavUpdateCurrentWindowIsScrollPushableX() +{ + ImGuiContext& g = *GImGui; + ImGuiWindow* window = g.CurrentWindow; + window->DC.NavIsScrollPushableX = (g.CurrentTable == NULL && window->DC.CurrentColumns == NULL); +} + // We get there when either NavId == id, or when g.NavAnyRequest is set (which is updated by NavUpdateAnyRequestFlag above) // This is called after LastItemData is set. static void ImGui::NavProcessItem() @@ -10535,18 +11682,24 @@ static void ImGui::NavProcessItem() ImGuiContext& g = *GImGui; ImGuiWindow* window = g.CurrentWindow; const ImGuiID id = g.LastItemData.ID; - const ImRect nav_bb = g.LastItemData.NavRect; const ImGuiItemFlags item_flags = g.LastItemData.InFlags; + // When inside a container that isn't scrollable with Left<>Right, clip NavRect accordingly (#2221) + if (window->DC.NavIsScrollPushableX == false) + { + g.LastItemData.NavRect.Min.x = ImClamp(g.LastItemData.NavRect.Min.x, window->ClipRect.Min.x, window->ClipRect.Max.x); + g.LastItemData.NavRect.Max.x = ImClamp(g.LastItemData.NavRect.Max.x, window->ClipRect.Min.x, window->ClipRect.Max.x); + } + const ImRect nav_bb = g.LastItemData.NavRect; + // Process Init Request if (g.NavInitRequest && g.NavLayer == window->DC.NavLayerCurrent && (item_flags & ImGuiItemFlags_Disabled) == 0) { // Even if 'ImGuiItemFlags_NoNavDefaultFocus' is on (typically collapse/close button) we record the first ResultId so they can be used as a fallback const bool candidate_for_nav_default_focus = (item_flags & ImGuiItemFlags_NoNavDefaultFocus) == 0; - if (candidate_for_nav_default_focus || g.NavInitResultId == 0) + if (candidate_for_nav_default_focus || g.NavInitResult.ID == 0) { - g.NavInitResultId = id; - g.NavInitResultRectRel = WindowRectAbsToRel(window, nav_bb); + NavApplyItemToResult(&g.NavInitResult); } if (candidate_for_nav_default_focus) { @@ -10557,41 +11710,37 @@ static void ImGui::NavProcessItem() // Process Move Request (scoring for navigation) // FIXME-NAV: Consider policy for double scoring (scoring from NavScoringRect + scoring from a rect wrapped according to current wrapping policy) - if (g.NavMoveScoringItems) + if (g.NavMoveScoringItems && (item_flags & ImGuiItemFlags_Disabled) == 0) { - const bool is_tab_stop = (item_flags & ImGuiItemFlags_Inputable) && (item_flags & (ImGuiItemFlags_NoTabStop | ImGuiItemFlags_Disabled)) == 0; const bool is_tabbing = (g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) != 0; if (is_tabbing) { - if (is_tab_stop || (g.NavMoveFlags & ImGuiNavMoveFlags_FocusApi)) - NavProcessItemForTabbingRequest(id); + NavProcessItemForTabbingRequest(id, item_flags, g.NavMoveFlags); } - else if ((g.NavId != id || (g.NavMoveFlags & ImGuiNavMoveFlags_AllowCurrentNavId)) && !(item_flags & (ImGuiItemFlags_Disabled | ImGuiItemFlags_NoNav))) + else if (g.NavId != id || (g.NavMoveFlags & ImGuiNavMoveFlags_AllowCurrentNavId)) { ImGuiNavItemData* result = (window == g.NavWindow) ? &g.NavMoveResultLocal : &g.NavMoveResultOther; - if (!is_tabbing) - { - if (NavScoreItem(result)) - NavApplyItemToResult(result); + if (NavScoreItem(result)) + NavApplyItemToResult(result); - // Features like PageUp/PageDown need to maintain a separate score for the visible set of items. - const float VISIBLE_RATIO = 0.70f; - if ((g.NavMoveFlags & ImGuiNavMoveFlags_AlsoScoreVisibleSet) && window->ClipRect.Overlaps(nav_bb)) - if (ImClamp(nav_bb.Max.y, window->ClipRect.Min.y, window->ClipRect.Max.y) - ImClamp(nav_bb.Min.y, window->ClipRect.Min.y, window->ClipRect.Max.y) >= (nav_bb.Max.y - nav_bb.Min.y) * VISIBLE_RATIO) - if (NavScoreItem(&g.NavMoveResultLocalVisible)) - NavApplyItemToResult(&g.NavMoveResultLocalVisible); - } + // Features like PageUp/PageDown need to maintain a separate score for the visible set of items. + const float VISIBLE_RATIO = 0.70f; + if ((g.NavMoveFlags & ImGuiNavMoveFlags_AlsoScoreVisibleSet) && window->ClipRect.Overlaps(nav_bb)) + if (ImClamp(nav_bb.Max.y, window->ClipRect.Min.y, window->ClipRect.Max.y) - ImClamp(nav_bb.Min.y, window->ClipRect.Min.y, window->ClipRect.Max.y) >= (nav_bb.Max.y - nav_bb.Min.y) * VISIBLE_RATIO) + if (NavScoreItem(&g.NavMoveResultLocalVisible)) + NavApplyItemToResult(&g.NavMoveResultLocalVisible); } } - // Update window-relative bounding box of navigated item + // Update information for currently focused/navigated item if (g.NavId == id) { - g.NavWindow = window; // Always refresh g.NavWindow, because some operations such as FocusItem() don't have a window. + if (g.NavWindow != window) + SetNavWindow(window); // Always refresh g.NavWindow, because some operations such as FocusItem() may not have a window. g.NavLayer = window->DC.NavLayerCurrent; - g.NavFocusScopeId = window->DC.NavFocusScopeIdCurrent; + g.NavFocusScopeId = g.CurrentFocusScopeId; g.NavIdIsAlive = true; - window->NavRectRel[window->DC.NavLayerCurrent] = WindowRectAbsToRel(window, nav_bb); // Store item bounding box (relative to window position) + window->NavRectRel[window->DC.NavLayerCurrent] = WindowRectAbsToRel(window, nav_bb); // Store item bounding box (relative to window position) } } @@ -10602,18 +11751,31 @@ static void ImGui::NavProcessItem() // - Case 3: tab forward wrap: set result to first eligible item (preemptively), on ref id set counter, on next frame if counter hasn't elapsed store result. // FIXME-TABBING: Could be done as a next-frame forwarded request // - Case 4: tab backward: store all results, on ref id pick prev, stop storing // - Case 5: tab backward wrap: store all results, on ref id if no result keep storing until last // FIXME-TABBING: Could be done as next-frame forwarded requested -void ImGui::NavProcessItemForTabbingRequest(ImGuiID id) +void ImGui::NavProcessItemForTabbingRequest(ImGuiID id, ImGuiItemFlags item_flags, ImGuiNavMoveFlags move_flags) { ImGuiContext& g = *GImGui; + if ((move_flags & ImGuiNavMoveFlags_FocusApi) == 0) + if (g.NavLayer != g.CurrentWindow->DC.NavLayerCurrent) + return; + + // - Can always land on an item when using API call. + // - Tabbing with _NavEnableKeyboard (space/enter/arrows): goes through every item. + // - Tabbing without _NavEnableKeyboard: goes through inputable items only. + bool can_stop; + if (move_flags & ImGuiNavMoveFlags_FocusApi) + can_stop = true; + else + can_stop = (item_flags & ImGuiItemFlags_NoTabStop) == 0 && ((g.IO.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) || (item_flags & ImGuiItemFlags_Inputable)); + // Always store in NavMoveResultLocal (unlike directional request which uses NavMoveResultOther on sibling/flattened windows) ImGuiNavItemData* result = &g.NavMoveResultLocal; if (g.NavTabbingDir == +1) { // Tab Forward or SetKeyboardFocusHere() with >= 0 - if (g.NavTabbingResultFirst.ID == 0) + if (can_stop && g.NavTabbingResultFirst.ID == 0) NavApplyItemToResult(&g.NavTabbingResultFirst); - if (--g.NavTabbingCounter == 0) + if (can_stop && g.NavTabbingCounter > 0 && --g.NavTabbingCounter == 0) NavMoveRequestResolveWithLastItem(result); else if (g.NavId == id) g.NavTabbingCounter = 1; @@ -10629,16 +11791,18 @@ void ImGui::NavProcessItemForTabbingRequest(ImGuiID id) NavUpdateAnyRequestFlag(); } } - else + else if (can_stop) { + // Keep applying until reaching NavId NavApplyItemToResult(result); } } else if (g.NavTabbingDir == 0) { - // Tab Init - if (g.NavTabbingResultFirst.ID == 0) - NavMoveRequestResolveWithLastItem(&g.NavTabbingResultFirst); + if (can_stop && g.NavId == id) + NavMoveRequestResolveWithLastItem(result); + if (can_stop && g.NavTabbingResultFirst.ID == 0) // Tab init + NavApplyItemToResult(&g.NavTabbingResultFirst); } } @@ -10665,10 +11829,11 @@ void ImGui::NavMoveRequestSubmit(ImGuiDir move_dir, ImGuiDir clip_dir, ImGuiNavM g.NavMoveScrollFlags = scroll_flags; g.NavMoveForwardToNextFrame = false; g.NavMoveKeyMods = g.IO.KeyMods; - g.NavTabbingCounter = 0; g.NavMoveResultLocal.Clear(); g.NavMoveResultLocalVisible.Clear(); g.NavMoveResultOther.Clear(); + g.NavTabbingCounter = 0; + g.NavTabbingResultFirst.Clear(); NavUpdateAnyRequestFlag(); } @@ -10705,10 +11870,12 @@ void ImGui::NavMoveRequestForward(ImGuiDir move_dir, ImGuiDir clip_dir, ImGuiNav void ImGui::NavMoveRequestTryWrapping(ImGuiWindow* window, ImGuiNavMoveFlags wrap_flags) { ImGuiContext& g = *GImGui; - IM_ASSERT(wrap_flags != 0); // Call with _WrapX, _WrapY, _LoopX, _LoopY - // In theory we should test for NavMoveRequestButNoResultYet() but there's no point doing it, NavEndFrame() will do the same test + IM_ASSERT((wrap_flags & ImGuiNavMoveFlags_WrapMask_ ) != 0 && (wrap_flags & ~ImGuiNavMoveFlags_WrapMask_) == 0); // Call with _WrapX, _WrapY, _LoopX, _LoopY + + // In theory we should test for NavMoveRequestButNoResultYet() but there's no point doing it: + // as NavEndFrame() will do the same test. It will end up calling NavUpdateCreateWrappingRequest(). if (g.NavWindow == window && g.NavMoveScoringItems && g.NavLayer == ImGuiNavLayer_Main) - g.NavMoveFlags |= wrap_flags; + g.NavMoveFlags = (g.NavMoveFlags & ~ImGuiNavMoveFlags_WrapMask_) | wrap_flags; } // FIXME: This could be replaced by updating a frame number in each window when (window == NavWindow) and (NavLayer == 0). @@ -10738,7 +11905,12 @@ void ImGui::NavRestoreLayer(ImGuiNavLayer layer) { ImGuiContext& g = *GImGui; if (layer == ImGuiNavLayer_Main) - g.NavWindow = NavRestoreLastChildNavWindow(g.NavWindow); + { + ImGuiWindow* prev_nav_window = g.NavWindow; + g.NavWindow = NavRestoreLastChildNavWindow(g.NavWindow); // FIXME-NAV: Should clear ongoing nav requests? + if (prev_nav_window) + IMGUI_DEBUG_LOG_FOCUS("[focus] NavRestoreLayer: from \"%s\" to SetNavWindow(\"%s\")\n", prev_nav_window->Name, g.NavWindow->Name); + } ImGuiWindow* window = g.NavWindow; if (window->NavLastIds[layer] != 0) { @@ -10775,7 +11947,8 @@ void ImGui::NavInitWindow(ImGuiWindow* window, bool force_reinit) if (window->Flags & ImGuiWindowFlags_NoNavInputs) { - g.NavId = g.NavFocusScopeId = 0; + g.NavId = 0; + g.NavFocusScopeId = window->NavRootFocusScopeId; return; } @@ -10785,17 +11958,16 @@ void ImGui::NavInitWindow(ImGuiWindow* window, bool force_reinit) IMGUI_DEBUG_LOG_NAV("[nav] NavInitRequest: from NavInitWindow(), init_for_nav=%d, window=\"%s\", layer=%d\n", init_for_nav, window->Name, g.NavLayer); if (init_for_nav) { - SetNavID(0, g.NavLayer, 0, ImRect()); + SetNavID(0, g.NavLayer, window->NavRootFocusScopeId, ImRect()); g.NavInitRequest = true; g.NavInitRequestFromMove = false; - g.NavInitResultId = 0; - g.NavInitResultRectRel = ImRect(); + g.NavInitResult.ID = 0; NavUpdateAnyRequestFlag(); } else { g.NavId = window->NavLastIds[0]; - g.NavFocusScopeId = 0; + g.NavFocusScopeId = window->NavRootFocusScopeId; } } @@ -10827,56 +11999,27 @@ static ImVec2 ImGui::NavCalcPreferredRefPos() } } -const char* ImGui::GetNavInputName(ImGuiNavInput n) -{ - static const char* names[] = - { - "Activate", "Cancel", "Input", "Menu", "DpadLeft", "DpadRight", "DpadUp", "DpadDown", "LStickLeft", "LStickRight", "LStickUp", "LStickDown", - "FocusPrev", "FocusNext", "TweakSlow", "TweakFast", "KeyLeft", "KeyRight", "KeyUp", "KeyDown" - }; - IM_ASSERT(IM_ARRAYSIZE(names) == ImGuiNavInput_COUNT); - IM_ASSERT(n >= 0 && n < ImGuiNavInput_COUNT); - return names[n]; -} - -float ImGui::GetNavInputAmount(ImGuiNavInput n, ImGuiNavReadMode mode) +float ImGui::GetNavTweakPressedAmount(ImGuiAxis axis) { ImGuiContext& g = *GImGui; - if (mode == ImGuiNavReadMode_Down) - return g.IO.NavInputs[n]; // Instant, read analog input (0.0f..1.0f, as provided by user) + float repeat_delay, repeat_rate; + GetTypematicRepeatRate(ImGuiInputFlags_RepeatRateNavTweak, &repeat_delay, &repeat_rate); - const float t = g.IO.NavInputsDownDuration[n]; - if (t < 0.0f && mode == ImGuiNavReadMode_Released) // Return 1.0f when just released, no repeat, ignore analog input. - return (g.IO.NavInputsDownDurationPrev[n] >= 0.0f ? 1.0f : 0.0f); - if (t < 0.0f) - return 0.0f; - if (mode == ImGuiNavReadMode_Pressed) // Return 1.0f when just pressed, no repeat, ignore analog input. - return (t == 0.0f) ? 1.0f : 0.0f; - if (mode == ImGuiNavReadMode_Repeat) - return (float)CalcTypematicRepeatAmount(t - g.IO.DeltaTime, t, g.IO.KeyRepeatDelay * 0.72f, g.IO.KeyRepeatRate * 0.80f); - if (mode == ImGuiNavReadMode_RepeatSlow) - return (float)CalcTypematicRepeatAmount(t - g.IO.DeltaTime, t, g.IO.KeyRepeatDelay * 1.25f, g.IO.KeyRepeatRate * 2.00f); - if (mode == ImGuiNavReadMode_RepeatFast) - return (float)CalcTypematicRepeatAmount(t - g.IO.DeltaTime, t, g.IO.KeyRepeatDelay * 0.72f, g.IO.KeyRepeatRate * 0.30f); - return 0.0f; -} - -ImVec2 ImGui::GetNavInputAmount2d(ImGuiNavDirSourceFlags dir_sources, ImGuiNavReadMode mode, float slow_factor, float fast_factor) -{ - ImVec2 delta(0.0f, 0.0f); - if (dir_sources & ImGuiNavDirSourceFlags_RawKeyboard) - delta += ImVec2((float)IsKeyDown(ImGuiKey_RightArrow) - (float)IsKeyDown(ImGuiKey_LeftArrow), (float)IsKeyDown(ImGuiKey_DownArrow) - (float)IsKeyDown(ImGuiKey_UpArrow)); - if (dir_sources & ImGuiNavDirSourceFlags_Keyboard) - delta += ImVec2(GetNavInputAmount(ImGuiNavInput_KeyRight_, mode) - GetNavInputAmount(ImGuiNavInput_KeyLeft_, mode), GetNavInputAmount(ImGuiNavInput_KeyDown_, mode) - GetNavInputAmount(ImGuiNavInput_KeyUp_, mode)); - if (dir_sources & ImGuiNavDirSourceFlags_PadDPad) - delta += ImVec2(GetNavInputAmount(ImGuiNavInput_DpadRight, mode) - GetNavInputAmount(ImGuiNavInput_DpadLeft, mode), GetNavInputAmount(ImGuiNavInput_DpadDown, mode) - GetNavInputAmount(ImGuiNavInput_DpadUp, mode)); - if (dir_sources & ImGuiNavDirSourceFlags_PadLStick) - delta += ImVec2(GetNavInputAmount(ImGuiNavInput_LStickRight, mode) - GetNavInputAmount(ImGuiNavInput_LStickLeft, mode), GetNavInputAmount(ImGuiNavInput_LStickDown, mode) - GetNavInputAmount(ImGuiNavInput_LStickUp, mode)); - if (slow_factor != 0.0f && IsNavInputDown(ImGuiNavInput_TweakSlow)) - delta *= slow_factor; - if (fast_factor != 0.0f && IsNavInputDown(ImGuiNavInput_TweakFast)) - delta *= fast_factor; - return delta; + ImGuiKey key_less, key_more; + if (g.NavInputSource == ImGuiInputSource_Gamepad) + { + key_less = (axis == ImGuiAxis_X) ? ImGuiKey_GamepadDpadLeft : ImGuiKey_GamepadDpadUp; + key_more = (axis == ImGuiAxis_X) ? ImGuiKey_GamepadDpadRight : ImGuiKey_GamepadDpadDown; + } + else + { + key_less = (axis == ImGuiAxis_X) ? ImGuiKey_LeftArrow : ImGuiKey_UpArrow; + key_more = (axis == ImGuiAxis_X) ? ImGuiKey_RightArrow : ImGuiKey_DownArrow; + } + float amount = (float)GetKeyPressedAmount(key_more, repeat_delay, repeat_rate) - (float)GetKeyPressedAmount(key_less, repeat_delay, repeat_rate); + if (amount != 0.0f && IsKeyDown(key_less) && IsKeyDown(key_more)) // Cancel when opposite directions are held, regardless of repeat phase + amount = 0.0f; + return amount; } static void ImGui::NavUpdate() @@ -10885,64 +12028,30 @@ static void ImGui::NavUpdate() ImGuiIO& io = g.IO; io.WantSetMousePos = false; - //if (g.NavScoringDebugCount > 0) IMGUI_DEBUG_LOG("NavScoringDebugCount %d for '%s' layer %d (Init:%d, Move:%d)\n", g.NavScoringDebugCount, g.NavWindow ? g.NavWindow->Name : "NULL", g.NavLayer, g.NavInitRequest || g.NavInitResultId != 0, g.NavMoveRequest); + //if (g.NavScoringDebugCount > 0) IMGUI_DEBUG_LOG_NAV("[nav] NavScoringDebugCount %d for '%s' layer %d (Init:%d, Move:%d)\n", g.NavScoringDebugCount, g.NavWindow ? g.NavWindow->Name : "NULL", g.NavLayer, g.NavInitRequest || g.NavInitResultId != 0, g.NavMoveRequest); - // Update Gamepad->Nav inputs mapping - // Set input source as Gamepad when buttons are pressed (as some features differs when used with Gamepad vs Keyboard) + // Set input source based on which keys are last pressed (as some features differs when used with Gamepad vs Keyboard) + // FIXME-NAV: Now that keys are separated maybe we can get rid of NavInputSource? const bool nav_gamepad_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (io.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0; - if (nav_gamepad_active && g.IO.BackendUsingLegacyNavInputArray == false) - { - for (int n = 0; n < ImGuiNavInput_COUNT; n++) - IM_ASSERT(io.NavInputs[n] == 0.0f && "Backend needs to either only use io.AddKeyEvent()/io.AddKeyAnalogEvent(), either only fill legacy io.NavInputs[]. Not both!"); - #define NAV_MAP_KEY(_KEY, _NAV_INPUT, _ACTIVATE_NAV) do { io.NavInputs[_NAV_INPUT] = io.KeysData[_KEY - ImGuiKey_KeysData_OFFSET].AnalogValue; if (_ACTIVATE_NAV && io.NavInputs[_NAV_INPUT] > 0.0f) { g.NavInputSource = ImGuiInputSource_Gamepad; } } while (0) - NAV_MAP_KEY(ImGuiKey_GamepadFaceDown, ImGuiNavInput_Activate, true); - NAV_MAP_KEY(ImGuiKey_GamepadFaceRight, ImGuiNavInput_Cancel, true); - NAV_MAP_KEY(ImGuiKey_GamepadFaceLeft, ImGuiNavInput_Menu, true); - NAV_MAP_KEY(ImGuiKey_GamepadFaceUp, ImGuiNavInput_Input, true); - NAV_MAP_KEY(ImGuiKey_GamepadDpadLeft, ImGuiNavInput_DpadLeft, true); - NAV_MAP_KEY(ImGuiKey_GamepadDpadRight, ImGuiNavInput_DpadRight, true); - NAV_MAP_KEY(ImGuiKey_GamepadDpadUp, ImGuiNavInput_DpadUp, true); - NAV_MAP_KEY(ImGuiKey_GamepadDpadDown, ImGuiNavInput_DpadDown, true); - NAV_MAP_KEY(ImGuiKey_GamepadL1, ImGuiNavInput_FocusPrev, false); - NAV_MAP_KEY(ImGuiKey_GamepadR1, ImGuiNavInput_FocusNext, false); - NAV_MAP_KEY(ImGuiKey_GamepadL1, ImGuiNavInput_TweakSlow, false); - NAV_MAP_KEY(ImGuiKey_GamepadR1, ImGuiNavInput_TweakFast, false); - NAV_MAP_KEY(ImGuiKey_GamepadLStickLeft, ImGuiNavInput_LStickLeft, false); - NAV_MAP_KEY(ImGuiKey_GamepadLStickRight, ImGuiNavInput_LStickRight, false); - NAV_MAP_KEY(ImGuiKey_GamepadLStickUp, ImGuiNavInput_LStickUp, false); - NAV_MAP_KEY(ImGuiKey_GamepadLStickDown, ImGuiNavInput_LStickDown, false); - #undef NAV_MAP_KEY - } - - // Update Keyboard->Nav inputs mapping + const ImGuiKey nav_gamepad_keys_to_change_source[] = { ImGuiKey_GamepadFaceRight, ImGuiKey_GamepadFaceLeft, ImGuiKey_GamepadFaceUp, ImGuiKey_GamepadFaceDown, ImGuiKey_GamepadDpadRight, ImGuiKey_GamepadDpadLeft, ImGuiKey_GamepadDpadUp, ImGuiKey_GamepadDpadDown }; + if (nav_gamepad_active) + for (ImGuiKey key : nav_gamepad_keys_to_change_source) + if (IsKeyDown(key)) + g.NavInputSource = ImGuiInputSource_Gamepad; const bool nav_keyboard_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; + const ImGuiKey nav_keyboard_keys_to_change_source[] = { ImGuiKey_Space, ImGuiKey_Enter, ImGuiKey_Escape, ImGuiKey_RightArrow, ImGuiKey_LeftArrow, ImGuiKey_UpArrow, ImGuiKey_DownArrow }; if (nav_keyboard_active) - { - #define NAV_MAP_KEY(_KEY, _NAV_INPUT) do { if (IsKeyDown(_KEY)) { io.NavInputs[_NAV_INPUT] = 1.0f; g.NavInputSource = ImGuiInputSource_Keyboard; } } while (0) - NAV_MAP_KEY(ImGuiKey_Space, ImGuiNavInput_Activate ); - NAV_MAP_KEY(ImGuiKey_Enter, ImGuiNavInput_Input ); - NAV_MAP_KEY(ImGuiKey_Escape, ImGuiNavInput_Cancel ); - NAV_MAP_KEY(ImGuiKey_LeftArrow, ImGuiNavInput_KeyLeft_ ); - NAV_MAP_KEY(ImGuiKey_RightArrow,ImGuiNavInput_KeyRight_); - NAV_MAP_KEY(ImGuiKey_UpArrow, ImGuiNavInput_KeyUp_ ); - NAV_MAP_KEY(ImGuiKey_DownArrow, ImGuiNavInput_KeyDown_ ); - if (io.KeyCtrl) - io.NavInputs[ImGuiNavInput_TweakSlow] = 1.0f; - if (io.KeyShift) - io.NavInputs[ImGuiNavInput_TweakFast] = 1.0f; - #undef NAV_MAP_KEY - } - memcpy(io.NavInputsDownDurationPrev, io.NavInputsDownDuration, sizeof(io.NavInputsDownDuration)); - for (int i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) - io.NavInputsDownDuration[i] = (io.NavInputs[i] > 0.0f) ? (io.NavInputsDownDuration[i] < 0.0f ? 0.0f : io.NavInputsDownDuration[i] + io.DeltaTime) : -1.0f; + for (ImGuiKey key : nav_keyboard_keys_to_change_source) + if (IsKeyDown(key)) + g.NavInputSource = ImGuiInputSource_Keyboard; // Process navigation init request (select first/default focus) - if (g.NavInitResultId != 0) + g.NavJustMovedToId = 0; + if (g.NavInitResult.ID != 0) NavInitRequestApplyResult(); g.NavInitRequest = false; g.NavInitRequestFromMove = false; - g.NavInitResultId = 0; - g.NavJustMovedToId = 0; + g.NavInitResult.ID = 0; // Process navigation move request if (g.NavMoveSubmitted) @@ -10975,14 +12084,14 @@ static void ImGui::NavUpdate() NavUpdateCancelRequest(); // Process manual activation request - g.NavActivateId = g.NavActivateDownId = g.NavActivatePressedId = g.NavActivateInputId = 0; + g.NavActivateId = g.NavActivateDownId = g.NavActivatePressedId = 0; g.NavActivateFlags = ImGuiActivateFlags_None; if (g.NavId != 0 && !g.NavDisableHighlight && !g.NavWindowingTarget && g.NavWindow && !(g.NavWindow->Flags & ImGuiWindowFlags_NoNavInputs)) { - bool activate_down = IsNavInputDown(ImGuiNavInput_Activate); - bool input_down = IsNavInputDown(ImGuiNavInput_Input); - bool activate_pressed = activate_down && IsNavInputTest(ImGuiNavInput_Activate, ImGuiNavReadMode_Pressed); - bool input_pressed = input_down && IsNavInputTest(ImGuiNavInput_Input, ImGuiNavReadMode_Pressed); + const bool activate_down = (nav_keyboard_active && IsKeyDown(ImGuiKey_Space)) || (nav_gamepad_active && IsKeyDown(ImGuiKey_NavGamepadActivate)); + const bool activate_pressed = activate_down && ((nav_keyboard_active && IsKeyPressed(ImGuiKey_Space, false)) || (nav_gamepad_active && IsKeyPressed(ImGuiKey_NavGamepadActivate, false))); + const bool input_down = (nav_keyboard_active && IsKeyDown(ImGuiKey_Enter)) || (nav_gamepad_active && IsKeyDown(ImGuiKey_NavGamepadInput)); + const bool input_pressed = input_down && ((nav_keyboard_active && IsKeyPressed(ImGuiKey_Enter, false)) || (nav_gamepad_active && IsKeyPressed(ImGuiKey_NavGamepadInput, false))); if (g.ActiveId == 0 && activate_pressed) { g.NavActivateId = g.NavId; @@ -10990,12 +12099,12 @@ static void ImGui::NavUpdate() } if ((g.ActiveId == 0 || g.ActiveId == g.NavId) && input_pressed) { - g.NavActivateInputId = g.NavId; + g.NavActivateId = g.NavId; g.NavActivateFlags = ImGuiActivateFlags_PreferInput; } - if ((g.ActiveId == 0 || g.ActiveId == g.NavId) && activate_down) + if ((g.ActiveId == 0 || g.ActiveId == g.NavId) && (activate_down || input_down)) g.NavActivateDownId = g.NavId; - if ((g.ActiveId == 0 || g.ActiveId == g.NavId) && activate_pressed) + if ((g.ActiveId == 0 || g.ActiveId == g.NavId) && (activate_pressed || input_pressed)) g.NavActivatePressedId = g.NavId; } if (g.NavWindow && (g.NavWindow->Flags & ImGuiWindowFlags_NoNavInputs)) @@ -11007,10 +12116,7 @@ static void ImGui::NavUpdate() // FIXME-NAV: Those should eventually be queued (unlike focus they don't cancel each others) if (g.NavNextActivateId != 0) { - if (g.NavNextActivateFlags & ImGuiActivateFlags_PreferInput) - g.NavActivateInputId = g.NavNextActivateId; - else - g.NavActivateId = g.NavActivateDownId = g.NavActivatePressedId = g.NavNextActivateId; + g.NavActivateId = g.NavActivateDownId = g.NavActivatePressedId = g.NavNextActivateId; g.NavActivateFlags = g.NavNextActivateFlags; } g.NavNextActivateId = 0; @@ -11029,7 +12135,7 @@ static void ImGui::NavUpdate() ImGuiWindow* window = g.NavWindow; const float scroll_speed = IM_ROUND(window->CalcFontSize() * 100 * io.DeltaTime); // We need round the scrolling speed because sub-pixel scroll isn't reliably supported. const ImGuiDir move_dir = g.NavMoveDir; - if (window->DC.NavLayersActiveMask == 0x00 && window->DC.NavHasScroll && move_dir != ImGuiDir_None) + if (window->DC.NavLayersActiveMask == 0x00 && window->DC.NavWindowHasScrollY && move_dir != ImGuiDir_None) { if (move_dir == ImGuiDir_Left || move_dir == ImGuiDir_Right) SetScrollX(window, ImFloor(window->Scroll.x + ((move_dir == ImGuiDir_Left) ? -1.0f : +1.0f) * scroll_speed)); @@ -11037,13 +12143,17 @@ static void ImGui::NavUpdate() SetScrollY(window, ImFloor(window->Scroll.y + ((move_dir == ImGuiDir_Up) ? -1.0f : +1.0f) * scroll_speed)); } - // *Normal* Manual scroll with NavScrollXXX keys + // *Normal* Manual scroll with LStick // Next movement request will clamp the NavId reference rectangle to the visible area, so navigation will resume within those bounds. - ImVec2 scroll_dir = GetNavInputAmount2d(ImGuiNavDirSourceFlags_PadLStick, ImGuiNavReadMode_Down, 1.0f / 10.0f, 10.0f); - if (scroll_dir.x != 0.0f && window->ScrollbarX) - SetScrollX(window, ImFloor(window->Scroll.x + scroll_dir.x * scroll_speed)); - if (scroll_dir.y != 0.0f) - SetScrollY(window, ImFloor(window->Scroll.y + scroll_dir.y * scroll_speed)); + if (nav_gamepad_active) + { + const ImVec2 scroll_dir = GetKeyMagnitude2d(ImGuiKey_GamepadLStickLeft, ImGuiKey_GamepadLStickRight, ImGuiKey_GamepadLStickUp, ImGuiKey_GamepadLStickDown); + const float tweak_factor = IsKeyDown(ImGuiKey_NavGamepadTweakSlow) ? 1.0f / 10.0f : IsKeyDown(ImGuiKey_NavGamepadTweakFast) ? 10.0f : 1.0f; + if (scroll_dir.x != 0.0f && window->ScrollbarX) + SetScrollX(window, ImFloor(window->Scroll.x + scroll_dir.x * scroll_speed * tweak_factor)); + if (scroll_dir.y != 0.0f) + SetScrollY(window, ImFloor(window->Scroll.y + scroll_dir.y * scroll_speed * tweak_factor)); + } } // Always prioritize mouse highlight if navigation is disabled @@ -11059,17 +12169,17 @@ static void ImGui::NavUpdate() { io.MousePos = io.MousePosPrev = NavCalcPreferredRefPos(); io.WantSetMousePos = true; - //IMGUI_DEBUG_LOG("SetMousePos: (%.1f,%.1f)\n", io.MousePos.x, io.MousePos.y); + //IMGUI_DEBUG_LOG_IO("SetMousePos: (%.1f,%.1f)\n", io.MousePos.x, io.MousePos.y); } // [DEBUG] g.NavScoringDebugCount = 0; #if IMGUI_DEBUG_NAV_RECTS - if (g.NavWindow) + if (ImGuiWindow* debug_window = g.NavWindow) { - ImDrawList* draw_list = GetForegroundDrawList(g.NavWindow); - if (1) { for (int layer = 0; layer < 2; layer++) { ImRect r = WindowRectRelToAbs(g.NavWindow, g.NavWindow->NavRectRel[layer]); draw_list->AddRect(r.Min, r.Max, IM_COL32(255,200,0,255)); } } // [DEBUG] - if (1) { ImU32 col = (!g.NavWindow->Hidden) ? IM_COL32(255,0,255,255) : IM_COL32(255,0,0,255); ImVec2 p = NavCalcPreferredRefPos(); char buf[32]; ImFormatString(buf, 32, "%d", g.NavLayer); draw_list->AddCircleFilled(p, 3.0f, col); draw_list->AddText(NULL, 13.0f, p + ImVec2(8,-4), col, buf); } + ImDrawList* draw_list = GetForegroundDrawList(debug_window); + int layer = g.NavLayer; /* for (int layer = 0; layer < 2; layer++)*/ { ImRect r = WindowRectRelToAbs(debug_window, debug_window->NavRectRel[layer]); draw_list->AddRect(r.Min, r.Max, IM_COL32(255, 200, 0, 255)); } + //if (1) { ImU32 col = (!debug_window->Hidden) ? IM_COL32(255,0,255,255) : IM_COL32(255,0,0,255); ImVec2 p = NavCalcPreferredRefPos(); char buf[32]; ImFormatString(buf, 32, "%d", g.NavLayer); draw_list->AddCircleFilled(p, 3.0f, col); draw_list->AddText(NULL, 13.0f, p + ImVec2(8,-4), col, buf); } } #endif } @@ -11081,20 +12191,55 @@ void ImGui::NavInitRequestApplyResult() if (!g.NavWindow) return; + ImGuiNavItemData* result = &g.NavInitResult; + if (g.NavId != result->ID) + { + g.NavJustMovedToId = result->ID; + g.NavJustMovedToFocusScopeId = result->FocusScopeId; + g.NavJustMovedToKeyMods = 0; + } + // Apply result from previous navigation init request (will typically select the first item, unless SetItemDefaultFocus() has been called) // FIXME-NAV: On _NavFlattened windows, g.NavWindow will only be updated during subsequent frame. Not a problem currently. - IMGUI_DEBUG_LOG_NAV("[nav] NavInitRequest: result NavID 0x%08X in Layer %d Window \"%s\"\n", g.NavInitResultId, g.NavLayer, g.NavWindow->Name); - SetNavID(g.NavInitResultId, g.NavLayer, 0, g.NavInitResultRectRel); + IMGUI_DEBUG_LOG_NAV("[nav] NavInitRequest: ApplyResult: NavID 0x%08X in Layer %d Window \"%s\"\n", result->ID, g.NavLayer, g.NavWindow->Name); + SetNavID(result->ID, g.NavLayer, result->FocusScopeId, result->RectRel); g.NavIdIsAlive = true; // Mark as alive from previous frame as we got a result if (g.NavInitRequestFromMove) NavRestoreHighlightAfterMove(); } +// Bias scoring rect ahead of scoring + update preferred pos (if missing) using source position +static void NavBiasScoringRect(ImRect& r, ImVec2& preferred_pos_rel, ImGuiDir move_dir, ImGuiNavMoveFlags move_flags) +{ + // Bias initial rect + ImGuiContext& g = *GImGui; + const ImVec2 rel_to_abs_offset = g.NavWindow->DC.CursorStartPos; + + // Initialize bias on departure if we don't have any. So mouse-click + arrow will record bias. + // - We default to L/U bias, so moving down from a large source item into several columns will land on left-most column. + // - But each successful move sets new bias on one axis, only cleared when using mouse. + if ((move_flags & ImGuiNavMoveFlags_Forwarded) == 0) + { + if (preferred_pos_rel.x == FLT_MAX) + preferred_pos_rel.x = ImMin(r.Min.x + 1.0f, r.Max.x) - rel_to_abs_offset.x; + if (preferred_pos_rel.y == FLT_MAX) + preferred_pos_rel.y = r.GetCenter().y - rel_to_abs_offset.y; + } + + // Apply general bias on the other axis + if ((move_dir == ImGuiDir_Up || move_dir == ImGuiDir_Down) && preferred_pos_rel.x != FLT_MAX) + r.Min.x = r.Max.x = preferred_pos_rel.x + rel_to_abs_offset.x; + else if ((move_dir == ImGuiDir_Left || move_dir == ImGuiDir_Right) && preferred_pos_rel.y != FLT_MAX) + r.Min.y = r.Max.y = preferred_pos_rel.y + rel_to_abs_offset.y; +} + void ImGui::NavUpdateCreateMoveRequest() { ImGuiContext& g = *GImGui; ImGuiIO& io = g.IO; ImGuiWindow* window = g.NavWindow; + const bool nav_gamepad_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (io.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0; + const bool nav_keyboard_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; if (g.NavMoveForwardToNextFrame && window != NULL) { @@ -11112,11 +12257,11 @@ void ImGui::NavUpdateCreateMoveRequest() g.NavMoveScrollFlags = ImGuiScrollFlags_None; if (window && !g.NavWindowingTarget && !(window->Flags & ImGuiWindowFlags_NoNavInputs)) { - const ImGuiNavReadMode read_mode = ImGuiNavReadMode_Repeat; - if (!IsActiveIdUsingNavDir(ImGuiDir_Left) && (IsNavInputTest(ImGuiNavInput_DpadLeft, read_mode) || IsNavInputTest(ImGuiNavInput_KeyLeft_, read_mode))) { g.NavMoveDir = ImGuiDir_Left; } - if (!IsActiveIdUsingNavDir(ImGuiDir_Right) && (IsNavInputTest(ImGuiNavInput_DpadRight, read_mode) || IsNavInputTest(ImGuiNavInput_KeyRight_, read_mode))) { g.NavMoveDir = ImGuiDir_Right; } - if (!IsActiveIdUsingNavDir(ImGuiDir_Up) && (IsNavInputTest(ImGuiNavInput_DpadUp, read_mode) || IsNavInputTest(ImGuiNavInput_KeyUp_, read_mode))) { g.NavMoveDir = ImGuiDir_Up; } - if (!IsActiveIdUsingNavDir(ImGuiDir_Down) && (IsNavInputTest(ImGuiNavInput_DpadDown, read_mode) || IsNavInputTest(ImGuiNavInput_KeyDown_, read_mode))) { g.NavMoveDir = ImGuiDir_Down; } + const ImGuiInputFlags repeat_mode = ImGuiInputFlags_Repeat | (ImGuiInputFlags)ImGuiInputFlags_RepeatRateNavMove; + if (!IsActiveIdUsingNavDir(ImGuiDir_Left) && ((nav_gamepad_active && IsKeyPressed(ImGuiKey_GamepadDpadLeft, ImGuiKeyOwner_None, repeat_mode)) || (nav_keyboard_active && IsKeyPressed(ImGuiKey_LeftArrow, ImGuiKeyOwner_None, repeat_mode)))) { g.NavMoveDir = ImGuiDir_Left; } + if (!IsActiveIdUsingNavDir(ImGuiDir_Right) && ((nav_gamepad_active && IsKeyPressed(ImGuiKey_GamepadDpadRight, ImGuiKeyOwner_None, repeat_mode)) || (nav_keyboard_active && IsKeyPressed(ImGuiKey_RightArrow, ImGuiKeyOwner_None, repeat_mode)))) { g.NavMoveDir = ImGuiDir_Right; } + if (!IsActiveIdUsingNavDir(ImGuiDir_Up) && ((nav_gamepad_active && IsKeyPressed(ImGuiKey_GamepadDpadUp, ImGuiKeyOwner_None, repeat_mode)) || (nav_keyboard_active && IsKeyPressed(ImGuiKey_UpArrow, ImGuiKeyOwner_None, repeat_mode)))) { g.NavMoveDir = ImGuiDir_Up; } + if (!IsActiveIdUsingNavDir(ImGuiDir_Down) && ((nav_gamepad_active && IsKeyPressed(ImGuiKey_GamepadDpadDown, ImGuiKeyOwner_None, repeat_mode)) || (nav_keyboard_active && IsKeyPressed(ImGuiKey_DownArrow, ImGuiKeyOwner_None, repeat_mode)))) { g.NavMoveDir = ImGuiDir_Down; } } g.NavMoveClipDir = g.NavMoveDir; g.NavScoringNoClipRect = ImRect(+FLT_MAX, +FLT_MAX, -FLT_MAX, -FLT_MAX); @@ -11124,7 +12269,6 @@ void ImGui::NavUpdateCreateMoveRequest() // Update PageUp/PageDown/Home/End scroll // FIXME-NAV: Consider enabling those keys even without the master ImGuiConfigFlags_NavEnableKeyboard flag? - const bool nav_keyboard_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; float scoring_rect_offset_y = 0.0f; if (window && g.NavMoveDir == ImGuiDir_None && nav_keyboard_active) scoring_rect_offset_y = NavUpdatePageUpPageDown(); @@ -11134,13 +12278,15 @@ void ImGui::NavUpdateCreateMoveRequest() g.NavScoringNoClipRect.TranslateY(scoring_rect_offset_y); } - // [DEBUG] Always send a request + // [DEBUG] Always send a request when holding CTRL. Hold CTRL + Arrow change the direction. #if IMGUI_DEBUG_NAV_SCORING - if (io.KeyCtrl && IsKeyPressed(ImGuiKey_C)) - g.NavMoveDirForDebug = (ImGuiDir)((g.NavMoveDirForDebug + 1) & 3); - if (io.KeyCtrl && g.NavMoveDir == ImGuiDir_None) + //if (io.KeyCtrl && IsKeyPressed(ImGuiKey_C)) + // g.NavMoveDirForDebug = (ImGuiDir)((g.NavMoveDirForDebug + 1) & 3); + if (io.KeyCtrl) { - g.NavMoveDir = g.NavMoveDirForDebug; + if (g.NavMoveDir == ImGuiDir_None) + g.NavMoveDir = g.NavMoveDirForDebug; + g.NavMoveClipDir = g.NavMoveDir; g.NavMoveFlags |= ImGuiNavMoveFlags_DebugNoResult; } #endif @@ -11150,23 +12296,28 @@ void ImGui::NavUpdateCreateMoveRequest() if (g.NavMoveDir != ImGuiDir_None) NavMoveRequestSubmit(g.NavMoveDir, g.NavMoveClipDir, g.NavMoveFlags, g.NavMoveScrollFlags); - // Moving with no reference triggers a init request (will be used as a fallback if the direction fails to find a match) + // Moving with no reference triggers an init request (will be used as a fallback if the direction fails to find a match) if (g.NavMoveSubmitted && g.NavId == 0) { - IMGUI_DEBUG_LOG_NAV("[nav] NavInitRequest: from move, window \"%s\", layer=%d\n", g.NavWindow->Name, g.NavLayer); + IMGUI_DEBUG_LOG_NAV("[nav] NavInitRequest: from move, window \"%s\", layer=%d\n", window ? window->Name : "", g.NavLayer); g.NavInitRequest = g.NavInitRequestFromMove = true; - g.NavInitResultId = 0; + g.NavInitResult.ID = 0; g.NavDisableHighlight = false; } // When using gamepad, we project the reference nav bounding box into window visible area. - // This is to allow resuming navigation inside the visible area after doing a large amount of scrolling, since with gamepad every movements are relative - // (can't focus a visible object like we can with the mouse). + // This is to allow resuming navigation inside the visible area after doing a large amount of scrolling, + // since with gamepad all movements are relative (can't focus a visible object like we can with the mouse). if (g.NavMoveSubmitted && g.NavInputSource == ImGuiInputSource_Gamepad && g.NavLayer == ImGuiNavLayer_Main && window != NULL)// && (g.NavMoveFlags & ImGuiNavMoveFlags_Forwarded)) { bool clamp_x = (g.NavMoveFlags & (ImGuiNavMoveFlags_LoopX | ImGuiNavMoveFlags_WrapX)) == 0; bool clamp_y = (g.NavMoveFlags & (ImGuiNavMoveFlags_LoopY | ImGuiNavMoveFlags_WrapY)) == 0; ImRect inner_rect_rel = WindowRectAbsToRel(window, ImRect(window->InnerRect.Min - ImVec2(1, 1), window->InnerRect.Max + ImVec2(1, 1))); + + // Take account of changing scroll to handle triggering a new move request on a scrolling frame. (#6171) + // Otherwise 'inner_rect_rel' would be off on the move result frame. + inner_rect_rel.Translate(CalcNextScrollFromScrollTargetAndClamp(window) - window->Scroll); + if ((clamp_x || clamp_y) && !inner_rect_rel.Contains(window->NavRectRel[g.NavLayer])) { IMGUI_DEBUG_LOG_NAV("[nav] NavMoveRequest: clamp NavRectRel for gamepad move\n"); @@ -11177,7 +12328,7 @@ void ImGui::NavUpdateCreateMoveRequest() inner_rect_rel.Min.y = clamp_y ? (inner_rect_rel.Min.y + pad_y) : -FLT_MAX; inner_rect_rel.Max.y = clamp_y ? (inner_rect_rel.Max.y - pad_y) : +FLT_MAX; window->NavRectRel[g.NavLayer].ClipWithFull(inner_rect_rel); - g.NavId = g.NavFocusScopeId = 0; + g.NavId = 0; } } @@ -11188,9 +12339,9 @@ void ImGui::NavUpdateCreateMoveRequest() ImRect nav_rect_rel = !window->NavRectRel[g.NavLayer].IsInverted() ? window->NavRectRel[g.NavLayer] : ImRect(0, 0, 0, 0); scoring_rect = WindowRectRelToAbs(window, nav_rect_rel); scoring_rect.TranslateY(scoring_rect_offset_y); - scoring_rect.Min.x = ImMin(scoring_rect.Min.x + 1.0f, scoring_rect.Max.x); - scoring_rect.Max.x = scoring_rect.Min.x; - IM_ASSERT(!scoring_rect.IsInverted()); // Ensure if we have a finite, non-inverted bounding box here will allows us to remove extraneous ImFabs() calls in NavScoreItem(). + if (g.NavMoveSubmitted) + NavBiasScoringRect(scoring_rect, window->RootWindowForNav->NavPreferredScoringPosRel[g.NavLayer], g.NavMoveDir, g.NavMoveFlags); + IM_ASSERT(!scoring_rect.IsInverted()); // Ensure if we have a finite, non-inverted bounding box here will allow us to remove extraneous ImFabs() calls in NavScoreItem(). //GetForegroundDrawList()->AddRect(scoring_rect.Min, scoring_rect.Max, IM_COL32(255,200,0,255)); // [DEBUG] //if (!g.NavScoringNoClipRect.IsInverted()) { GetForegroundDrawList()->AddRect(g.NavScoringNoClipRect.Min, g.NavScoringNoClipRect.Max, IM_COL32(255, 200, 0, 255)); } // [DEBUG] } @@ -11206,7 +12357,7 @@ void ImGui::NavUpdateCreateTabbingRequest() if (window == NULL || g.NavWindowingTarget != NULL || (window->Flags & ImGuiWindowFlags_NoNavInputs)) return; - const bool tab_pressed = IsKeyPressed(ImGuiKey_Tab, true) && !IsActiveIdUsingKey(ImGuiKey_Tab) && !g.IO.KeyCtrl && !g.IO.KeyAlt; + const bool tab_pressed = IsKeyPressed(ImGuiKey_Tab, ImGuiKeyOwner_None, ImGuiInputFlags_Repeat) && !g.IO.KeyCtrl && !g.IO.KeyAlt; if (!tab_pressed) return; @@ -11214,12 +12365,14 @@ void ImGui::NavUpdateCreateTabbingRequest() // (this is ALWAYS ENABLED, regardless of ImGuiConfigFlags_NavEnableKeyboard flag!) // Initially this was designed to use counters and modulo arithmetic, but that could not work with unsubmitted items (list clipper). Instead we use a strategy close to other move requests. // See NavProcessItemForTabbingRequest() for a description of the various forward/backward tabbing cases with and without wrapping. - //// FIXME: We use (g.ActiveId == 0) but (g.NavDisableHighlight == false) might be righter once we can tab through anything - g.NavTabbingDir = g.IO.KeyShift ? -1 : (g.ActiveId == 0) ? 0 : +1; + const bool nav_keyboard_active = (g.IO.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; + if (nav_keyboard_active) + g.NavTabbingDir = g.IO.KeyShift ? -1 : (g.NavDisableHighlight == true && g.ActiveId == 0) ? 0 : +1; + else + g.NavTabbingDir = g.IO.KeyShift ? -1 : (g.ActiveId == 0) ? 0 : +1; ImGuiScrollFlags scroll_flags = window->Appearing ? ImGuiScrollFlags_KeepVisibleEdgeX | ImGuiScrollFlags_AlwaysCenterY : ImGuiScrollFlags_KeepVisibleEdgeX | ImGuiScrollFlags_KeepVisibleEdgeY; ImGuiDir clip_dir = (g.NavTabbingDir < 0) ? ImGuiDir_Up : ImGuiDir_Down; NavMoveRequestSubmit(ImGuiDir_None, clip_dir, ImGuiNavMoveFlags_Tabbing, scroll_flags); // FIXME-NAV: Once we refactor tabbing, add LegacyApi flag to not activate non-inputable. - g.NavTabbingResultFirst.Clear(); g.NavTabbingCounter = -1; } @@ -11236,17 +12389,20 @@ void ImGui::NavMoveRequestApplyResult() ImGuiNavItemData* result = (g.NavMoveResultLocal.ID != 0) ? &g.NavMoveResultLocal : (g.NavMoveResultOther.ID != 0) ? &g.NavMoveResultOther : NULL; // Tabbing forward wrap - if (g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) + if ((g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) && result == NULL) if ((g.NavTabbingCounter == 1 || g.NavTabbingDir == 0) && g.NavTabbingResultFirst.ID) result = &g.NavTabbingResultFirst; - // In a situation when there is no results but NavId != 0, re-enable the Navigation highlight (because g.NavId is not considered as a possible result) + // In a situation when there are no results but NavId != 0, re-enable the Navigation highlight (because g.NavId is not considered as a possible result) + const ImGuiAxis axis = (g.NavMoveDir == ImGuiDir_Up || g.NavMoveDir == ImGuiDir_Down) ? ImGuiAxis_Y : ImGuiAxis_X; if (result == NULL) { if (g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) g.NavMoveFlags |= ImGuiNavMoveFlags_DontSetNavHighlight; if (g.NavId != 0 && (g.NavMoveFlags & ImGuiNavMoveFlags_DontSetNavHighlight) == 0) NavRestoreHighlightAfterMove(); + NavClearPreferredPosForAxis(axis); // On a failed move, clear preferred pos for this axis. + IMGUI_DEBUG_LOG_NAV("[nav] NavMoveSubmitted but not led to a result!\n"); return; } @@ -11264,20 +12420,22 @@ void ImGui::NavMoveRequestApplyResult() // Scroll to keep newly navigated item fully into view. if (g.NavLayer == ImGuiNavLayer_Main) { + ImRect rect_abs = WindowRectRelToAbs(result->Window, result->RectRel); + ScrollToRectEx(result->Window, rect_abs, g.NavMoveScrollFlags); + if (g.NavMoveFlags & ImGuiNavMoveFlags_ScrollToEdgeY) { - // FIXME: Should remove this + // FIXME: Should remove this? Or make more precise: use ScrollToRectEx() with edge? float scroll_target = (g.NavMoveDir == ImGuiDir_Up) ? result->Window->ScrollMax.y : 0.0f; SetScrollY(result->Window, scroll_target); } - else - { - ImRect rect_abs = WindowRectRelToAbs(result->Window, result->RectRel); - ScrollToRectEx(result->Window, rect_abs, g.NavMoveScrollFlags); - } } - g.NavWindow = result->Window; + if (g.NavWindow != result->Window) + { + IMGUI_DEBUG_LOG_FOCUS("[focus] NavMoveRequest: SetNavWindow(\"%s\")\n", result->Window->Name); + g.NavWindow = result->Window; + } if (g.ActiveId != result->ID) ClearActiveID(); if (g.NavId != result->ID) @@ -11288,10 +12446,19 @@ void ImGui::NavMoveRequestApplyResult() g.NavJustMovedToKeyMods = g.NavMoveKeyMods; } - // Focus + // Apply new NavID/Focus IMGUI_DEBUG_LOG_NAV("[nav] NavMoveRequest: result NavID 0x%08X in Layer %d Window \"%s\"\n", result->ID, g.NavLayer, g.NavWindow->Name); + ImVec2 preferred_scoring_pos_rel = g.NavWindow->RootWindowForNav->NavPreferredScoringPosRel[g.NavLayer]; SetNavID(result->ID, g.NavLayer, result->FocusScopeId, result->RectRel); + // Restore last preferred position for current axis + // (storing in RootWindowForNav-> as the info is desirable at the beginning of a Move Request. In theory all storage should use RootWindowForNav..) + if ((g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) == 0) + { + preferred_scoring_pos_rel[axis] = result->RectRel.GetCenter()[axis]; + g.NavWindow->RootWindowForNav->NavPreferredScoringPosRel[g.NavLayer] = preferred_scoring_pos_rel; + } + // Tabbing: Activates Inputable or Focus non-Inputable if ((g.NavMoveFlags & ImGuiNavMoveFlags_Tabbing) && (result->InFlags & ImGuiItemFlags_Inputable)) { @@ -11319,14 +12486,15 @@ void ImGui::NavMoveRequestApplyResult() static void ImGui::NavUpdateCancelRequest() { ImGuiContext& g = *GImGui; - if (!IsNavInputTest(ImGuiNavInput_Cancel, ImGuiNavReadMode_Pressed)) + const bool nav_gamepad_active = (g.IO.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (g.IO.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0; + const bool nav_keyboard_active = (g.IO.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; + if (!(nav_keyboard_active && IsKeyPressed(ImGuiKey_Escape, ImGuiKeyOwner_None)) && !(nav_gamepad_active && IsKeyPressed(ImGuiKey_NavGamepadCancel, ImGuiKeyOwner_None))) return; - IMGUI_DEBUG_LOG_NAV("[nav] ImGuiNavInput_Cancel\n"); + IMGUI_DEBUG_LOG_NAV("[nav] NavUpdateCancelRequest()\n"); if (g.ActiveId != 0) { - if (!IsActiveIdUsingNavInput(ImGuiNavInput_Cancel)) - ClearActiveID(); + ClearActiveID(); } else if (g.NavLayer != ImGuiNavLayer_Main) { @@ -11345,18 +12513,17 @@ static void ImGui::NavUpdateCancelRequest() SetNavID(child_window->ChildId, ImGuiNavLayer_Main, 0, WindowRectAbsToRel(parent_window, child_rect)); NavRestoreHighlightAfterMove(); } - else if (g.OpenPopupStack.Size > 0) + else if (g.OpenPopupStack.Size > 0 && g.OpenPopupStack.back().Window != NULL && !(g.OpenPopupStack.back().Window->Flags & ImGuiWindowFlags_Modal)) { // Close open popup/menu - if (!(g.OpenPopupStack.back().Window->Flags & ImGuiWindowFlags_Modal)) - ClosePopupToLevel(g.OpenPopupStack.Size - 1, true); + ClosePopupToLevel(g.OpenPopupStack.Size - 1, true); } else { // Clear NavLastId for popups but keep it for regular child window so we can leave one and come back where we were if (g.NavWindow && ((g.NavWindow->Flags & ImGuiWindowFlags_Popup) || !(g.NavWindow->Flags & ImGuiWindowFlags_ChildWindow))) g.NavWindow->NavLastIds[0] = 0; - g.NavId = g.NavFocusScopeId = 0; + g.NavId = 0; } } @@ -11371,22 +12538,22 @@ static float ImGui::NavUpdatePageUpPageDown() if ((window->Flags & ImGuiWindowFlags_NoNavInputs) || g.NavWindowingTarget != NULL) return 0.0f; - const bool page_up_held = IsKeyDown(ImGuiKey_PageUp) && !IsActiveIdUsingKey(ImGuiKey_PageUp); - const bool page_down_held = IsKeyDown(ImGuiKey_PageDown) && !IsActiveIdUsingKey(ImGuiKey_PageDown); - const bool home_pressed = IsKeyPressed(ImGuiKey_Home) && !IsActiveIdUsingKey(ImGuiKey_Home); - const bool end_pressed = IsKeyPressed(ImGuiKey_End) && !IsActiveIdUsingKey(ImGuiKey_End); + const bool page_up_held = IsKeyDown(ImGuiKey_PageUp, ImGuiKeyOwner_None); + const bool page_down_held = IsKeyDown(ImGuiKey_PageDown, ImGuiKeyOwner_None); + const bool home_pressed = IsKeyPressed(ImGuiKey_Home, ImGuiKeyOwner_None, ImGuiInputFlags_Repeat); + const bool end_pressed = IsKeyPressed(ImGuiKey_End, ImGuiKeyOwner_None, ImGuiInputFlags_Repeat); if (page_up_held == page_down_held && home_pressed == end_pressed) // Proceed if either (not both) are pressed, otherwise early out return 0.0f; if (g.NavLayer != ImGuiNavLayer_Main) NavRestoreLayer(ImGuiNavLayer_Main); - if (window->DC.NavLayersActiveMask == 0x00 && window->DC.NavHasScroll) + if (window->DC.NavLayersActiveMask == 0x00 && window->DC.NavWindowHasScrollY) { // Fallback manual-scroll when window has no navigable item - if (IsKeyPressed(ImGuiKey_PageUp, true)) + if (IsKeyPressed(ImGuiKey_PageUp, ImGuiKeyOwner_None, ImGuiInputFlags_Repeat)) SetScrollY(window, window->Scroll.y - window->InnerRect.GetHeight()); - else if (IsKeyPressed(ImGuiKey_PageDown, true)) + else if (IsKeyPressed(ImGuiKey_PageDown, ImGuiKeyOwner_None, ImGuiInputFlags_Repeat)) SetScrollY(window, window->Scroll.y + window->InnerRect.GetHeight()); else if (home_pressed) SetScrollY(window, 0.0f); @@ -11449,8 +12616,7 @@ static void ImGui::NavEndFrame() // Perform wrap-around in menus // FIXME-NAV: Wrap may need to apply a weight bias on the other axis. e.g. 4x4 grid with 2 last items missing on last item won't handle LoopY/WrapY correctly. // FIXME-NAV: Wrap (not Loop) support could be handled by the scoring function and then WrapX would function without an extra frame. - const ImGuiNavMoveFlags wanted_flags = ImGuiNavMoveFlags_WrapX | ImGuiNavMoveFlags_LoopX | ImGuiNavMoveFlags_WrapY | ImGuiNavMoveFlags_LoopY; - if (g.NavWindow && NavMoveRequestButNoResultYet() && (g.NavMoveFlags & wanted_flags) && (g.NavMoveFlags & ImGuiNavMoveFlags_Forwarded) == 0) + if (g.NavWindow && NavMoveRequestButNoResultYet() && (g.NavMoveFlags & ImGuiNavMoveFlags_WrapMask_) && (g.NavMoveFlags & ImGuiNavMoveFlags_Forwarded) == 0) NavUpdateCreateWrappingRequest(); } @@ -11462,7 +12628,9 @@ static void ImGui::NavUpdateCreateWrappingRequest() bool do_forward = false; ImRect bb_rel = window->NavRectRel[g.NavLayer]; ImGuiDir clip_dir = g.NavMoveDir; + const ImGuiNavMoveFlags move_flags = g.NavMoveFlags; + //const ImGuiAxis move_axis = (g.NavMoveDir == ImGuiDir_Up || g.NavMoveDir == ImGuiDir_Down) ? ImGuiAxis_Y : ImGuiAxis_X; if (g.NavMoveDir == ImGuiDir_Left && (move_flags & (ImGuiNavMoveFlags_WrapX | ImGuiNavMoveFlags_LoopX))) { bb_rel.Min.x = bb_rel.Max.x = window->ContentSize.x + window->WindowPadding.x; @@ -11506,6 +12674,8 @@ static void ImGui::NavUpdateCreateWrappingRequest() if (!do_forward) return; window->NavRectRel[g.NavLayer] = bb_rel; + NavClearPreferredPosForAxis(ImGuiAxis_X); + NavClearPreferredPosForAxis(ImGuiAxis_Y); NavMoveRequestForward(g.NavMoveDir, clip_dir, move_flags, g.NavMoveScrollFlags); } @@ -11540,7 +12710,10 @@ static void NavUpdateWindowingHighlightWindow(int focus_change_dir) if (!window_target) window_target = FindWindowNavFocusable((focus_change_dir < 0) ? (g.WindowsFocusOrder.Size - 1) : 0, i_current, focus_change_dir); if (window_target) // Don't reset windowing target if there's a single window in the list + { g.NavWindowingTarget = g.NavWindowingTargetAnim = window_target; + g.NavWindowingAccumDeltaPos = g.NavWindowingAccumDeltaSize = ImVec2(0.0f, 0.0f); + } g.NavWindowingToggleLayer = false; } @@ -11556,7 +12729,7 @@ static void ImGui::NavUpdateWindowing() bool apply_toggle_layer = false; ImGuiWindow* modal_window = GetTopMostPopupModal(); - bool allow_windowing = (modal_window == NULL); + bool allow_windowing = (modal_window == NULL); // FIXME: This prevent CTRL+TAB from being usable with windows that are inside the Begin-stack of that modal. if (!allow_windowing) g.NavWindowingTarget = NULL; @@ -11569,15 +12742,25 @@ static void ImGui::NavUpdateWindowing() } // Start CTRL+Tab or Square+L/R window selection - const bool start_windowing_with_gamepad = allow_windowing && !g.NavWindowingTarget && IsNavInputTest(ImGuiNavInput_Menu, ImGuiNavReadMode_Pressed); - const bool start_windowing_with_keyboard = allow_windowing && !g.NavWindowingTarget && io.KeyCtrl && IsKeyPressed(ImGuiKey_Tab); + const ImGuiID owner_id = ImHashStr("###NavUpdateWindowing"); + const bool nav_gamepad_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (io.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0; + const bool nav_keyboard_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; + const bool keyboard_next_window = allow_windowing && g.ConfigNavWindowingKeyNext && Shortcut(g.ConfigNavWindowingKeyNext, owner_id, ImGuiInputFlags_Repeat | ImGuiInputFlags_RouteAlways); + const bool keyboard_prev_window = allow_windowing && g.ConfigNavWindowingKeyPrev && Shortcut(g.ConfigNavWindowingKeyPrev, owner_id, ImGuiInputFlags_Repeat | ImGuiInputFlags_RouteAlways); + const bool start_windowing_with_gamepad = allow_windowing && nav_gamepad_active && !g.NavWindowingTarget && IsKeyPressed(ImGuiKey_NavGamepadMenu, 0, ImGuiInputFlags_None); + const bool start_windowing_with_keyboard = allow_windowing && !g.NavWindowingTarget && (keyboard_next_window || keyboard_prev_window); // Note: enabled even without NavEnableKeyboard! if (start_windowing_with_gamepad || start_windowing_with_keyboard) if (ImGuiWindow* window = g.NavWindow ? g.NavWindow : FindWindowNavFocusable(g.WindowsFocusOrder.Size - 1, -INT_MAX, -1)) { g.NavWindowingTarget = g.NavWindowingTargetAnim = window->RootWindow; g.NavWindowingTimer = g.NavWindowingHighlightAlpha = 0.0f; + g.NavWindowingAccumDeltaPos = g.NavWindowingAccumDeltaSize = ImVec2(0.0f, 0.0f); g.NavWindowingToggleLayer = start_windowing_with_gamepad ? true : false; // Gamepad starts toggling layer g.NavInputSource = start_windowing_with_keyboard ? ImGuiInputSource_Keyboard : ImGuiInputSource_Gamepad; + + // Register ownership of our mods. Using ImGuiInputFlags_RouteGlobalHigh in the Shortcut() calls instead would probably be correct but may have more side-effects. + if (keyboard_next_window || keyboard_prev_window) + SetKeyOwnersForKeyChord((g.ConfigNavWindowingKeyNext | g.ConfigNavWindowingKeyPrev) & ImGuiMod_Mask_, owner_id); } // Gamepad update @@ -11588,7 +12771,7 @@ static void ImGui::NavUpdateWindowing() g.NavWindowingHighlightAlpha = ImMax(g.NavWindowingHighlightAlpha, ImSaturate((g.NavWindowingTimer - NAV_WINDOWING_HIGHLIGHT_DELAY) / 0.05f)); // Select window to focus - const int focus_change_dir = (int)IsNavInputTest(ImGuiNavInput_FocusPrev, ImGuiNavReadMode_RepeatSlow) - (int)IsNavInputTest(ImGuiNavInput_FocusNext, ImGuiNavReadMode_RepeatSlow); + const int focus_change_dir = (int)IsKeyPressed(ImGuiKey_GamepadL1) - (int)IsKeyPressed(ImGuiKey_GamepadR1); if (focus_change_dir != 0) { NavUpdateWindowingHighlightWindow(focus_change_dir); @@ -11596,7 +12779,7 @@ static void ImGui::NavUpdateWindowing() } // Single press toggles NavLayer, long press with L/R apply actual focus on release (until then the window was merely rendered top-most) - if (!IsNavInputDown(ImGuiNavInput_Menu)) + if (!IsKeyDown(ImGuiKey_NavGamepadMenu)) { g.NavWindowingToggleLayer &= (g.NavWindowingHighlightAlpha < 1.0f); // Once button was held long enough we don't consider it a tap-to-toggle-layer press anymore. if (g.NavWindowingToggleLayer && g.NavWindow) @@ -11611,18 +12794,19 @@ static void ImGui::NavUpdateWindowing() if (g.NavWindowingTarget && g.NavInputSource == ImGuiInputSource_Keyboard) { // Visuals only appears after a brief time after pressing TAB the first time, so that a fast CTRL+TAB doesn't add visual noise + ImGuiKeyChord shared_mods = ((g.ConfigNavWindowingKeyNext ? g.ConfigNavWindowingKeyNext : ImGuiMod_Mask_) & (g.ConfigNavWindowingKeyPrev ? g.ConfigNavWindowingKeyPrev : ImGuiMod_Mask_)) & ImGuiMod_Mask_; + IM_ASSERT(shared_mods != 0); // Next/Prev shortcut currently needs a shared modifier to "hold", otherwise Prev actions would keep cycling between two windows. g.NavWindowingHighlightAlpha = ImMax(g.NavWindowingHighlightAlpha, ImSaturate((g.NavWindowingTimer - NAV_WINDOWING_HIGHLIGHT_DELAY) / 0.05f)); // 1.0f - if (IsKeyPressed(ImGuiKey_Tab, true)) - NavUpdateWindowingHighlightWindow(io.KeyShift ? +1 : -1); - if (!io.KeyCtrl) + if (keyboard_next_window || keyboard_prev_window) + NavUpdateWindowingHighlightWindow(keyboard_next_window ? -1 : +1); + else if ((io.KeyMods & shared_mods) != shared_mods) apply_focus_window = g.NavWindowingTarget; } // Keyboard: Press and Release ALT to toggle menu layer // - Testing that only Alt is tested prevents Alt+Shift or AltGR from toggling menu layer. // - AltGR is normally Alt+Ctrl but we can't reliably detect it (not all backends/systems/layout emit it as Alt+Ctrl). But even on keyboards without AltGR we don't want Alt+Ctrl to open menu anyway. - const bool nav_keyboard_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) != 0; - if (nav_keyboard_active && IsKeyPressed(ImGuiKey_ModAlt)) + if (nav_keyboard_active && IsKeyPressed(ImGuiMod_Alt, ImGuiKeyOwner_None)) { g.NavWindowingToggleLayer = true; g.NavInputSource = ImGuiInputSource_Keyboard; @@ -11631,47 +12815,55 @@ static void ImGui::NavUpdateWindowing() { // We cancel toggling nav layer when any text has been typed (generally while holding Alt). (See #370) // We cancel toggling nav layer when other modifiers are pressed. (See #4439) - if (io.InputQueueCharacters.Size > 0 || io.KeyCtrl || io.KeyShift || io.KeySuper) + // We cancel toggling nav layer if an owner has claimed the key. + if (io.InputQueueCharacters.Size > 0 || io.KeyCtrl || io.KeyShift || io.KeySuper || TestKeyOwner(ImGuiMod_Alt, ImGuiKeyOwner_None) == false) g.NavWindowingToggleLayer = false; // Apply layer toggle on release // Important: as before version <18314 we lacked an explicit IO event for focus gain/loss, we also compare mouse validity to detect old backends clearing mouse pos on focus loss. - if (IsKeyReleased(ImGuiKey_ModAlt) && g.NavWindowingToggleLayer) + if (IsKeyReleased(ImGuiMod_Alt) && g.NavWindowingToggleLayer) if (g.ActiveId == 0 || g.ActiveIdAllowOverlap) if (IsMousePosValid(&io.MousePos) == IsMousePosValid(&io.MousePosPrev)) apply_toggle_layer = true; - if (!IsKeyDown(ImGuiKey_ModAlt)) + if (!IsKeyDown(ImGuiMod_Alt)) g.NavWindowingToggleLayer = false; } // Move window if (g.NavWindowingTarget && !(g.NavWindowingTarget->Flags & ImGuiWindowFlags_NoMove)) { - ImVec2 move_delta; + ImVec2 nav_move_dir; if (g.NavInputSource == ImGuiInputSource_Keyboard && !io.KeyShift) - move_delta = GetNavInputAmount2d(ImGuiNavDirSourceFlags_RawKeyboard, ImGuiNavReadMode_Down); + nav_move_dir = GetKeyMagnitude2d(ImGuiKey_LeftArrow, ImGuiKey_RightArrow, ImGuiKey_UpArrow, ImGuiKey_DownArrow); if (g.NavInputSource == ImGuiInputSource_Gamepad) - move_delta = GetNavInputAmount2d(ImGuiNavDirSourceFlags_PadLStick, ImGuiNavReadMode_Down); - if (move_delta.x != 0.0f || move_delta.y != 0.0f) + nav_move_dir = GetKeyMagnitude2d(ImGuiKey_GamepadLStickLeft, ImGuiKey_GamepadLStickRight, ImGuiKey_GamepadLStickUp, ImGuiKey_GamepadLStickDown); + if (nav_move_dir.x != 0.0f || nav_move_dir.y != 0.0f) { const float NAV_MOVE_SPEED = 800.0f; - const float move_speed = ImFloor(NAV_MOVE_SPEED * io.DeltaTime * ImMin(io.DisplayFramebufferScale.x, io.DisplayFramebufferScale.y)); // FIXME: Doesn't handle variable framerate very well - ImGuiWindow* moving_window = g.NavWindowingTarget->RootWindowDockTree; - SetWindowPos(moving_window, moving_window->Pos + move_delta * move_speed, ImGuiCond_Always); - MarkIniSettingsDirty(moving_window); + const float move_step = NAV_MOVE_SPEED * io.DeltaTime * ImMin(io.DisplayFramebufferScale.x, io.DisplayFramebufferScale.y); + g.NavWindowingAccumDeltaPos += nav_move_dir * move_step; g.NavDisableMouseHover = true; + ImVec2 accum_floored = ImFloor(g.NavWindowingAccumDeltaPos); + if (accum_floored.x != 0.0f || accum_floored.y != 0.0f) + { + ImGuiWindow* moving_window = g.NavWindowingTarget->RootWindowDockTree; + SetWindowPos(moving_window, moving_window->Pos + accum_floored, ImGuiCond_Always); + g.NavWindowingAccumDeltaPos -= accum_floored; + } } } // Apply final focus if (apply_focus_window && (g.NavWindow == NULL || apply_focus_window != g.NavWindow->RootWindow)) { + // FIXME: Many actions here could be part of a higher-level/reused function. Why aren't they in FocusWindow() + // Investigate for each of them: ClearActiveID(), NavRestoreHighlightAfterMove(), NavRestoreLastChildNavWindow(), ClosePopupsOverWindow(), NavInitWindow() ImGuiViewport* previous_viewport = g.NavWindow ? g.NavWindow->Viewport : NULL; ClearActiveID(); NavRestoreHighlightAfterMove(); - apply_focus_window = NavRestoreLastChildNavWindow(apply_focus_window); ClosePopupsOverWindow(apply_focus_window, false); - FocusWindow(apply_focus_window); + FocusWindow(apply_focus_window, ImGuiFocusRequestFlags_RestoreFocusedChild); + apply_focus_window = g.NavWindow; if (apply_focus_window->NavLastIds[0] == 0) NavInitWindow(apply_focus_window, false); @@ -11729,12 +12921,12 @@ static void ImGui::NavUpdateWindowing() static const char* GetFallbackWindowNameForWindowingList(ImGuiWindow* window) { if (window->Flags & ImGuiWindowFlags_Popup) - return "(Popup)"; + return ImGui::LocalizeGetMsg(ImGuiLocKey_WindowingPopup); if ((window->Flags & ImGuiWindowFlags_MenuBar) && strcmp(window->Name, "##MainMenuBar") == 0) - return "(Main menu bar)"; + return ImGui::LocalizeGetMsg(ImGuiLocKey_WindowingMainMenuBar); if (window->DockNodeAsHost) - return "(Dock node)"; - return "(Untitled)"; + return "(Dock node)"; // Not normally shown to user. + return ImGui::LocalizeGetMsg(ImGuiLocKey_WindowingUntitled); } // Overlay displayed when using CTRL+TAB. Called by EndFrame(). @@ -11773,6 +12965,12 @@ void ImGui::NavUpdateWindowingOverlay() // [SECTION] DRAG AND DROP //----------------------------------------------------------------------------- +bool ImGui::IsDragDropActive() +{ + ImGuiContext& g = *GImGui; + return g.DragDropActive; +} + void ImGui::ClearDragDrop() { ImGuiContext& g = *GImGui; @@ -11858,7 +13056,7 @@ bool ImGui::BeginDragDropSource(ImGuiDragDropFlags flags) source_drag_active = IsMouseDragging(mouse_button); // Disable navigation and key inputs while dragging + cancel existing request if any - SetActiveIdUsingNavAndKeys(); + SetActiveIdUsingAllKeyboardKeys(); } else { @@ -11889,13 +13087,12 @@ bool ImGui::BeginDragDropSource(ImGuiDragDropFlags flags) { // Target can request the Source to not display its tooltip (we use a dedicated flag to make this request explicit) // We unfortunately can't just modify the source flags and skip the call to BeginTooltip, as caller may be emitting contents. - BeginTooltip(); + bool ret = BeginTooltip(); + IM_ASSERT(ret); // FIXME-NEWBEGIN: If this ever becomes false, we need to Begin("##Hidden", NULL, ImGuiWindowFlags_NoSavedSettings) + SetWindowHiddendAndSkipItemsForCurrentFrame(). + IM_UNUSED(ret); + if (g.DragDropAcceptIdPrev && (g.DragDropAcceptFlags & ImGuiDragDropFlags_AcceptNoPreviewTooltip)) - { - ImGuiWindow* tooltip_window = g.CurrentWindow; - tooltip_window->Hidden = tooltip_window->SkipItems = true; - tooltip_window->HiddenFramesCanSkipItems = 1; - } + SetWindowHiddendAndSkipItemsForCurrentFrame(g.CurrentWindow); } if (!(flags & ImGuiDragDropFlags_SourceNoDisableHover) && !(flags & ImGuiDragDropFlags_SourceExtern)) @@ -11990,7 +13187,7 @@ bool ImGui::BeginDragDropTargetCustom(const ImRect& bb, ImGuiID id) } // We don't use BeginDragDropTargetCustom() and duplicate its code because: -// 1) we use LastItemRectHoveredRect which handles items that pushes a temporarily clip rectangle in their code. Calling BeginDragDropTargetCustom(LastItemRect) would not handle them. +// 1) we use LastItemRectHoveredRect which handles items that push a temporarily clip rectangle in their code. Calling BeginDragDropTargetCustom(LastItemRect) would not handle them. // 2) and it's faster. as this code may be very frequently called, we want to early out as fast as we can. // Also note how the HoveredWindow test is positioned differently in both functions (in both functions we optimize for the cheapest early out case) bool ImGui::BeginDragDropTarget() @@ -12044,41 +13241,51 @@ const ImGuiPayload* ImGui::AcceptDragDropPayload(const char* type, ImGuiDragDrop const bool was_accepted_previously = (g.DragDropAcceptIdPrev == g.DragDropTargetId); ImRect r = g.DragDropTargetRect; float r_surface = r.GetWidth() * r.GetHeight(); - if (r_surface <= g.DragDropAcceptIdCurrRectSurface) - { - g.DragDropAcceptFlags = flags; - g.DragDropAcceptIdCurr = g.DragDropTargetId; - g.DragDropAcceptIdCurrRectSurface = r_surface; - } + if (r_surface > g.DragDropAcceptIdCurrRectSurface) + return NULL; + + g.DragDropAcceptFlags = flags; + g.DragDropAcceptIdCurr = g.DragDropTargetId; + g.DragDropAcceptIdCurrRectSurface = r_surface; + //IMGUI_DEBUG_LOG("AcceptDragDropPayload(): %08X: accept\n", g.DragDropTargetId); // Render default drop visuals - // FIXME-DRAGDROP: Settle on a proper default visuals for drop target. payload.Preview = was_accepted_previously; - flags |= (g.DragDropSourceFlags & ImGuiDragDropFlags_AcceptNoDrawDefaultRect); // Source can also inhibit the preview (useful for external sources that lives for 1 frame) + flags |= (g.DragDropSourceFlags & ImGuiDragDropFlags_AcceptNoDrawDefaultRect); // Source can also inhibit the preview (useful for external sources that live for 1 frame) if (!(flags & ImGuiDragDropFlags_AcceptNoDrawDefaultRect) && payload.Preview) window->DrawList->AddRect(r.Min - ImVec2(3.5f,3.5f), r.Max + ImVec2(3.5f, 3.5f), GetColorU32(ImGuiCol_DragDropTarget), 0.0f, 0, 2.0f); g.DragDropAcceptFrameCount = g.FrameCount; - payload.Delivery = was_accepted_previously && !IsMouseDown(g.DragDropMouseButton); // For extern drag sources affecting os window focus, it's easier to just test !IsMouseDown() instead of IsMouseReleased() + payload.Delivery = was_accepted_previously && !IsMouseDown(g.DragDropMouseButton); // For extern drag sources affecting OS window focus, it's easier to just test !IsMouseDown() instead of IsMouseReleased() if (!payload.Delivery && !(flags & ImGuiDragDropFlags_AcceptBeforeDelivery)) return NULL; + //IMGUI_DEBUG_LOG("AcceptDragDropPayload(): %08X: return payload\n", g.DragDropTargetId); return &payload; } +// FIXME-DRAGDROP: Settle on a proper default visuals for drop target. +void ImGui::RenderDragDropTargetRect(const ImRect& bb) +{ + GetWindowDrawList()->AddRect(bb.Min - ImVec2(3.5f, 3.5f), bb.Max + ImVec2(3.5f, 3.5f), GetColorU32(ImGuiCol_DragDropTarget), 0.0f, 0, 2.0f); +} + const ImGuiPayload* ImGui::GetDragDropPayload() { ImGuiContext& g = *GImGui; - return g.DragDropActive ? &g.DragDropPayload : NULL; + return (g.DragDropActive && g.DragDropPayload.DataFrameCount != -1) ? &g.DragDropPayload : NULL; } -// We don't really use/need this now, but added it for the sake of consistency and because we might need it later. void ImGui::EndDragDropTarget() { ImGuiContext& g = *GImGui; IM_ASSERT(g.DragDropActive); IM_ASSERT(g.DragDropWithinTarget); g.DragDropWithinTarget = false; + + // Clear drag and drop state payload right after delivery + if (g.DragDropPayload.Delivery) + ClearDragDrop(); } //----------------------------------------------------------------------------- @@ -12312,10 +13519,10 @@ void ImGui::LogButtons() #endif const bool log_to_file = Button("Log To File"); SameLine(); const bool log_to_clipboard = Button("Log To Clipboard"); SameLine(); - PushAllowKeyboardFocus(false); + PushTabStop(false); SetNextItemWidth(80.0f); SliderInt("Default Depth", &g.LogDepthToExpandDefault, 0, 9, NULL); - PopAllowKeyboardFocus(); + PopTabStop(); PopID(); // Start logging at the end of the function so that the buttons don't appear in the log @@ -12333,15 +13540,17 @@ void ImGui::LogButtons() //----------------------------------------------------------------------------- // - UpdateSettings() [Internal] // - MarkIniSettingsDirty() [Internal] -// - CreateNewWindowSettings() [Internal] -// - FindWindowSettings() [Internal] -// - FindOrCreateWindowSettings() [Internal] // - FindSettingsHandler() [Internal] // - ClearIniSettings() [Internal] // - LoadIniSettingsFromDisk() // - LoadIniSettingsFromMemory() // - SaveIniSettingsToDisk() // - SaveIniSettingsToMemory() +//----------------------------------------------------------------------------- +// - CreateNewWindowSettings() [Internal] +// - FindWindowSettingsByID() [Internal] +// - FindWindowSettingsByWindow() [Internal] +// - ClearWindowSettings() [Internal] // - WindowSettingsHandler_***() [Internal] //----------------------------------------------------------------------------- @@ -12388,44 +13597,6 @@ void ImGui::MarkIniSettingsDirty(ImGuiWindow* window) g.SettingsDirtyTimer = g.IO.IniSavingRate; } -ImGuiWindowSettings* ImGui::CreateNewWindowSettings(const char* name) -{ - ImGuiContext& g = *GImGui; - -#if !IMGUI_DEBUG_INI_SETTINGS - // Skip to the "###" marker if any. We don't skip past to match the behavior of GetID() - // Preserve the full string when IMGUI_DEBUG_INI_SETTINGS is set to make .ini inspection easier. - if (const char* p = strstr(name, "###")) - name = p; -#endif - const size_t name_len = strlen(name); - - // Allocate chunk - const size_t chunk_size = sizeof(ImGuiWindowSettings) + name_len + 1; - ImGuiWindowSettings* settings = g.SettingsWindows.alloc_chunk(chunk_size); - IM_PLACEMENT_NEW(settings) ImGuiWindowSettings(); - settings->ID = ImHashStr(name, name_len); - memcpy(settings->GetName(), name, name_len + 1); // Store with zero terminator - - return settings; -} - -ImGuiWindowSettings* ImGui::FindWindowSettings(ImGuiID id) -{ - ImGuiContext& g = *GImGui; - for (ImGuiWindowSettings* settings = g.SettingsWindows.begin(); settings != NULL; settings = g.SettingsWindows.next_chunk(settings)) - if (settings->ID == id) - return settings; - return NULL; -} - -ImGuiWindowSettings* ImGui::FindOrCreateWindowSettings(const char* name) -{ - if (ImGuiWindowSettings* settings = FindWindowSettings(ImHashStr(name))) - return settings; - return CreateNewWindowSettings(name); -} - void ImGui::AddSettingsHandler(const ImGuiSettingsHandler* handler) { ImGuiContext& g = *GImGui; @@ -12450,6 +13621,7 @@ ImGuiSettingsHandler* ImGui::FindSettingsHandler(const char* type_name) return NULL; } +// Clear all settings (windows, tables, docking etc.) void ImGui::ClearIniSettings() { ImGuiContext& g = *GImGui; @@ -12500,12 +13672,14 @@ bool ImGui::LoadIniSettingsFromDisk(const char* ini_filename, bool redundancy) } if (!file_data) return false; - LoadIniSettingsFromMemory(file_data, (size_t)file_data_size); + if (file_data_size > 0) + LoadIniSettingsFromMemory(file_data, (size_t)file_data_size); IM_FREE(file_data); return true; } // Zero-tolerance, no error reporting, cheap .ini parsing +// Set ini_size==0 to let us use strlen(ini_data). Do not call this function with a 0 if your buffer is actually empty! void ImGui::LoadIniSettingsFromMemory(const char* ini_data, size_t ini_size) { ImGuiContext& g = *GImGui; @@ -12634,6 +13808,65 @@ const char* ImGui::SaveIniSettingsToMemory(size_t* out_size) return g.SettingsIniData.c_str(); } +ImGuiWindowSettings* ImGui::CreateNewWindowSettings(const char* name) +{ + ImGuiContext& g = *GImGui; + +#if !IMGUI_DEBUG_INI_SETTINGS + // Skip to the "###" marker if any. We don't skip past to match the behavior of GetID() + // Preserve the full string when IMGUI_DEBUG_INI_SETTINGS is set to make .ini inspection easier. + if (const char* p = strstr(name, "###")) + name = p; +#endif + const size_t name_len = strlen(name); + + // Allocate chunk + const size_t chunk_size = sizeof(ImGuiWindowSettings) + name_len + 1; + ImGuiWindowSettings* settings = g.SettingsWindows.alloc_chunk(chunk_size); + IM_PLACEMENT_NEW(settings) ImGuiWindowSettings(); + settings->ID = ImHashStr(name, name_len); + memcpy(settings->GetName(), name, name_len + 1); // Store with zero terminator + + return settings; +} + +// We don't provide a FindWindowSettingsByName() because Docking system doesn't always hold on names. +// This is called once per window .ini entry + once per newly instantiated window. +ImGuiWindowSettings* ImGui::FindWindowSettingsByID(ImGuiID id) +{ + ImGuiContext& g = *GImGui; + for (ImGuiWindowSettings* settings = g.SettingsWindows.begin(); settings != NULL; settings = g.SettingsWindows.next_chunk(settings)) + if (settings->ID == id && !settings->WantDelete) + return settings; + return NULL; +} + +// This is faster if you are holding on a Window already as we don't need to perform a search. +ImGuiWindowSettings* ImGui::FindWindowSettingsByWindow(ImGuiWindow* window) +{ + ImGuiContext& g = *GImGui; + if (window->SettingsOffset != -1) + return g.SettingsWindows.ptr_from_offset(window->SettingsOffset); + return FindWindowSettingsByID(window->ID); +} + +// This will revert window to its initial state, including enabling the ImGuiCond_FirstUseEver/ImGuiCond_Once conditions once more. +void ImGui::ClearWindowSettings(const char* name) +{ + //IMGUI_DEBUG_LOG("ClearWindowSettings('%s')\n", name); + ImGuiContext& g = *GImGui; + ImGuiWindow* window = FindWindowByName(name); + if (window != NULL) + { + window->Flags |= ImGuiWindowFlags_NoSavedSettings; + InitOrLoadWindowSettings(window, NULL); + if (window->DockId != 0) + DockContextProcessUndockWindow(&g, window, true); + } + if (ImGuiWindowSettings* settings = window ? FindWindowSettingsByWindow(window) : FindWindowSettingsByID(ImHashStr(name))) + settings->WantDelete = true; +} + static void WindowSettingsHandler_ClearAll(ImGuiContext* ctx, ImGuiSettingsHandler*) { ImGuiContext& g = *ctx; @@ -12644,9 +13877,12 @@ static void WindowSettingsHandler_ClearAll(ImGuiContext* ctx, ImGuiSettingsHandl static void* WindowSettingsHandler_ReadOpen(ImGuiContext*, ImGuiSettingsHandler*, const char* name) { - ImGuiWindowSettings* settings = ImGui::FindOrCreateWindowSettings(name); - ImGuiID id = settings->ID; - *settings = ImGuiWindowSettings(); // Clear existing if recycling previous entry + ImGuiID id = ImHashStr(name); + ImGuiWindowSettings* settings = ImGui::FindWindowSettingsByID(id); + if (settings) + *settings = ImGuiWindowSettings(); // Clear existing if recycling previous entry + else + settings = ImGui::CreateNewWindowSettings(name); settings->ID = id; settings->WantApply = true; return (void*)settings; @@ -12692,7 +13928,7 @@ static void WindowSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettingsHandl if (window->Flags & ImGuiWindowFlags_NoSavedSettings) continue; - ImGuiWindowSettings* settings = (window->SettingsOffset != -1) ? g.SettingsWindows.ptr_from_offset(window->SettingsOffset) : ImGui::FindWindowSettings(window->ID); + ImGuiWindowSettings* settings = ImGui::FindWindowSettingsByWindow(window); if (!settings) { settings = ImGui::CreateNewWindowSettings(window->Name); @@ -12708,12 +13944,15 @@ static void WindowSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettingsHandl settings->ClassId = window->WindowClass.ClassId; settings->DockOrder = window->DockOrder; settings->Collapsed = window->Collapsed; + settings->WantDelete = false; } // Write to text buffer buf->reserve(buf->size() + g.SettingsWindows.size() * 6); // ballpark reserve for (ImGuiWindowSettings* settings = g.SettingsWindows.begin(); settings != NULL; settings = g.SettingsWindows.next_chunk(settings)) { + if (settings->WantDelete) + continue; const char* settings_name = settings->GetName(); buf->appendf("[%s][%s]\n", handler->TypeName, settings_name); if (settings->ViewportId != 0 && settings->ViewportId != ImGui::IMGUI_VIEWPORT_DEFAULT_ID) @@ -12741,6 +13980,18 @@ static void WindowSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettingsHandl } +//----------------------------------------------------------------------------- +// [SECTION] LOCALIZATION +//----------------------------------------------------------------------------- + +void ImGui::LocalizeRegisterEntries(const ImGuiLocEntry* entries, int count) +{ + ImGuiContext& g = *GImGui; + for (int n = 0; n < count; n++) + g.LocalizationTable[entries[n].Key] = entries[n].Text; +} + + //----------------------------------------------------------------------------- // [SECTION] VIEWPORTS, PLATFORM WINDOWS //----------------------------------------------------------------------------- @@ -12805,7 +14056,7 @@ void ImGui::SetCurrentViewport(ImGuiWindow* current_window, ImGuiViewportP* view return; g.CurrentDpiScale = viewport ? viewport->DpiScale : 1.0f; g.CurrentViewport = viewport; - //IMGUI_DEBUG_LOG_VIEWPORT("SetCurrentViewport changed '%s' 0x%08X\n", current_window ? current_window->Name : NULL, viewport ? viewport->ID : 0); + //IMGUI_DEBUG_LOG_VIEWPORT("[viewport] SetCurrentViewport changed '%s' 0x%08X\n", current_window ? current_window->Name : NULL, viewport ? viewport->ID : 0); // Notify platform layer of viewport changes // FIXME-DPI: This is only currently used for experimenting with handling of multiple DPI @@ -12844,7 +14095,7 @@ static bool ImGui::UpdateTryMergeWindowIntoHostViewport(ImGuiWindow* window, ImG return false; if ((viewport->Flags & ImGuiViewportFlags_CanHostOtherWindows) == 0) return false; - if ((viewport->Flags & ImGuiViewportFlags_Minimized) != 0) + if ((viewport->Flags & ImGuiViewportFlags_IsMinimized) != 0) return false; if (!viewport->GetMainRect().Contains(window->Rect())) return false; @@ -12927,8 +14178,8 @@ ImGuiViewportP* ImGui::FindHoveredViewportFromPlatformWindowStack(const ImVec2& for (int n = 0; n < g.Viewports.Size; n++) { ImGuiViewportP* viewport = g.Viewports[n]; - if (!(viewport->Flags & (ImGuiViewportFlags_NoInputs | ImGuiViewportFlags_Minimized)) && viewport->GetMainRect().Contains(mouse_platform_pos)) - if (best_candidate == NULL || best_candidate->LastFrontMostStampCount < viewport->LastFrontMostStampCount) + if (!(viewport->Flags & (ImGuiViewportFlags_NoInputs | ImGuiViewportFlags_IsMinimized)) && viewport->GetMainRect().Contains(mouse_platform_pos)) + if (best_candidate == NULL || best_candidate->LastFocusedStampCount < viewport->LastFocusedStampCount) best_candidate = viewport; } return best_candidate; @@ -12942,22 +14193,71 @@ static void ImGui::UpdateViewportsNewFrame() IM_ASSERT(g.PlatformIO.Viewports.Size <= g.Viewports.Size); // Update Minimized status (we need it first in order to decide if we'll apply Pos/Size of the main viewport) + // Update Focused status const bool viewports_enabled = (g.ConfigFlagsCurrFrame & ImGuiConfigFlags_ViewportsEnable) != 0; if (viewports_enabled) { + ImGuiViewportP* focused_viewport = NULL; for (int n = 0; n < g.Viewports.Size; n++) { ImGuiViewportP* viewport = g.Viewports[n]; const bool platform_funcs_available = viewport->PlatformWindowCreated; if (g.PlatformIO.Platform_GetWindowMinimized && platform_funcs_available) { - bool minimized = g.PlatformIO.Platform_GetWindowMinimized(viewport); - if (minimized) - viewport->Flags |= ImGuiViewportFlags_Minimized; + bool is_minimized = g.PlatformIO.Platform_GetWindowMinimized(viewport); + if (is_minimized) + viewport->Flags |= ImGuiViewportFlags_IsMinimized; else - viewport->Flags &= ~ImGuiViewportFlags_Minimized; + viewport->Flags &= ~ImGuiViewportFlags_IsMinimized; + } + + // Update our implicit z-order knowledge of platform windows, which is used when the backend cannot provide io.MouseHoveredViewport. + // When setting Platform_GetWindowFocus, it is expected that the platform backend can handle calls without crashing if it doesn't have data stored. + if (g.PlatformIO.Platform_GetWindowFocus && platform_funcs_available) + { + bool is_focused = g.PlatformIO.Platform_GetWindowFocus(viewport); + if (is_focused) + viewport->Flags |= ImGuiViewportFlags_IsFocused; + else + viewport->Flags &= ~ImGuiViewportFlags_IsFocused; + if (is_focused) + focused_viewport = viewport; } } + + // Focused viewport has changed? + if (focused_viewport && g.PlatformLastFocusedViewportId != focused_viewport->ID) + { + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Focused viewport changed %08X -> %08X, attempting to apply our focus.\n", g.PlatformLastFocusedViewportId, focused_viewport->ID); + const ImGuiViewport* prev_focused_viewport = FindViewportByID(g.PlatformLastFocusedViewportId); + const bool prev_focused_has_been_destroyed = (prev_focused_viewport == NULL) || (prev_focused_viewport->PlatformWindowCreated == false); + + // Store a tag so we can infer z-order easily from all our windows + // We compare PlatformLastFocusedViewportId so newly created viewports with _NoFocusOnAppearing flag + // will keep the front most stamp instead of losing it back to their parent viewport. + if (focused_viewport->LastFocusedStampCount != g.ViewportFocusedStampCount) + focused_viewport->LastFocusedStampCount = ++g.ViewportFocusedStampCount; + g.PlatformLastFocusedViewportId = focused_viewport->ID; + + // Focus associated dear imgui window + // - if focus didn't happen with a click within imgui boundaries, e.g. Clicking platform title bar. (#6299) + // - if focus didn't happen because we destroyed another window (#6462) + // FIXME: perhaps 'FocusTopMostWindowUnderOne()' can handle the 'focused_window->Window != NULL' case as well. + const bool apply_imgui_focus_on_focused_viewport = !IsAnyMouseDown() && !prev_focused_has_been_destroyed; + if (apply_imgui_focus_on_focused_viewport) + { + focused_viewport->LastFocusedHadNavWindow |= (g.NavWindow != NULL) && (g.NavWindow->Viewport == focused_viewport); // Update so a window changing viewport won't lose focus. + ImGuiFocusRequestFlags focus_request_flags = ImGuiFocusRequestFlags_UnlessBelowModal | ImGuiFocusRequestFlags_RestoreFocusedChild; + if (focused_viewport->Window != NULL) + FocusWindow(focused_viewport->Window, focus_request_flags); + else if (focused_viewport->LastFocusedHadNavWindow) + FocusTopMostWindowUnderOne(NULL, NULL, focused_viewport, focus_request_flags); // Focus top most in viewport + else + FocusWindow(NULL, focus_request_flags); // No window had focus last time viewport was focused + } + } + if (focused_viewport) + focused_viewport->LastFocusedHadNavWindow = (g.NavWindow != NULL) && (g.NavWindow->Viewport == focused_viewport); } // Create/update main viewport with current platform position. @@ -12967,7 +14267,7 @@ static void ImGui::UpdateViewportsNewFrame() IM_ASSERT(main_viewport->Window == NULL); ImVec2 main_viewport_pos = viewports_enabled ? g.PlatformIO.Platform_GetWindowPos(main_viewport) : ImVec2(0.0f, 0.0f); ImVec2 main_viewport_size = g.IO.DisplaySize; - if (viewports_enabled && (main_viewport->Flags & ImGuiViewportFlags_Minimized)) + if (viewports_enabled && (main_viewport->Flags & ImGuiViewportFlags_IsMinimized)) { main_viewport_pos = main_viewport->Pos; // Preserve last pos/size when minimized (FIXME: We don't do the same for Size outside of the viewport path) main_viewport_size = main_viewport->Size; @@ -12995,7 +14295,7 @@ static void ImGui::UpdateViewportsNewFrame() { // Update Position and Size (from Platform Window to ImGui) if requested. // We do it early in the frame instead of waiting for UpdatePlatformWindows() to avoid a frame of lag when moving/resizing using OS facilities. - if (!(viewport->Flags & ImGuiViewportFlags_Minimized) && platform_funcs_available) + if (!(viewport->Flags & ImGuiViewportFlags_IsMinimized) && platform_funcs_available) { // Viewport->WorkPos and WorkSize will be updated below if (viewport->PlatformRequestMove) @@ -13156,7 +14456,7 @@ ImGuiViewportP* ImGui::AddUpdateViewport(ImGuiWindow* window, ImGuiID id, const viewport->Pos = pos; if (!viewport->PlatformRequestResize || viewport->ID == IMGUI_VIEWPORT_DEFAULT_ID) viewport->Size = size; - viewport->Flags = flags | (viewport->Flags & ImGuiViewportFlags_Minimized); // Preserve existing flags + viewport->Flags = flags | (viewport->Flags & (ImGuiViewportFlags_IsMinimized | ImGuiViewportFlags_IsFocused)); // Preserve existing flags } else { @@ -13169,7 +14469,7 @@ ImGuiViewportP* ImGui::AddUpdateViewport(ImGuiWindow* window, ImGuiID id, const viewport->Flags = flags; UpdateViewportPlatformMonitor(viewport); g.Viewports.push_back(viewport); - IMGUI_DEBUG_LOG_VIEWPORT("Add Viewport %08X (%s)\n", id, window->Name); + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Add Viewport %08X '%s'\n", id, window ? window->Name : ""); // We normally setup for all viewports in NewFrame() but here need to handle the mid-frame creation of a new viewport. // We need to extend the fullscreen clip rect so the OverlayDrawList clip is correct for that the first frame @@ -13211,7 +14511,7 @@ static void ImGui::DestroyViewport(ImGuiViewportP* viewport) g.MouseLastHoveredViewport = NULL; // Destroy - IMGUI_DEBUG_LOG_VIEWPORT("Delete Viewport %08X (%s)\n", viewport->ID, viewport->Window ? viewport->Window->Name : "n/a"); + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Delete Viewport %08X '%s'\n", viewport->ID, viewport->Window ? viewport->Window->Name : "n/a"); DestroyPlatformWindow(viewport); // In most circumstances the platform window will already be destroyed here. IM_ASSERT(g.PlatformIO.Viewports.contains(viewport) == false); IM_ASSERT(g.Viewports[viewport->Idx] == viewport); @@ -13327,7 +14627,7 @@ static void ImGui::WindowSelectViewport(ImGuiWindow* window) if ((window->Flags & ImGuiWindowFlags_DockNodeHost) && window->Viewport->LastFrameActive < g.FrameCount && will_be_visible) { // Steal/transfer ownership - IMGUI_DEBUG_LOG_VIEWPORT("Window '%s' steal Viewport %08X from Window '%s'\n", window->Name, window->Viewport->ID, window->Viewport->Window->Name); + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Window '%s' steal Viewport %08X from Window '%s'\n", window->Name, window->Viewport->ID, window->Viewport->Window->Name); window->Viewport->Window = window; window->Viewport->ID = window->ID; window->Viewport->LastNameHash = 0; @@ -13474,10 +14774,10 @@ void ImGui::UpdatePlatformWindows() continue; // Create window - bool is_new_platform_window = (viewport->PlatformWindowCreated == false); + const bool is_new_platform_window = (viewport->PlatformWindowCreated == false); if (is_new_platform_window) { - IMGUI_DEBUG_LOG_VIEWPORT("Create Platform Window %08X (%s)\n", viewport->ID, viewport->Window ? viewport->Window->Name : "n/a"); + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Create Platform Window %08X '%s'\n", viewport->ID, viewport->Window ? viewport->Window->Name : "n/a"); g.PlatformIO.Platform_CreateWindow(viewport); if (g.PlatformIO.Renderer_CreateWindow != NULL) g.PlatformIO.Renderer_CreateWindow(viewport); @@ -13533,38 +14833,13 @@ void ImGui::UpdatePlatformWindows() // Even without focus, we assume the window becomes front-most. // This is useful for our platform z-order heuristic when io.MouseHoveredViewport is not available. - if (viewport->LastFrontMostStampCount != g.ViewportFrontMostStampCount) - viewport->LastFrontMostStampCount = ++g.ViewportFrontMostStampCount; - } + if (viewport->LastFocusedStampCount != g.ViewportFocusedStampCount) + viewport->LastFocusedStampCount = ++g.ViewportFocusedStampCount; + } // Clear request flags viewport->ClearRequestFlags(); } - - // Update our implicit z-order knowledge of platform windows, which is used when the backend cannot provide io.MouseHoveredViewport. - // When setting Platform_GetWindowFocus, it is expected that the platform backend can handle calls without crashing if it doesn't have data stored. - // FIXME-VIEWPORT: We should use this information to also set dear imgui-side focus, allowing us to handle os-level alt+tab. - if (g.PlatformIO.Platform_GetWindowFocus != NULL) - { - ImGuiViewportP* focused_viewport = NULL; - for (int n = 0; n < g.Viewports.Size && focused_viewport == NULL; n++) - { - ImGuiViewportP* viewport = g.Viewports[n]; - if (viewport->PlatformWindowCreated) - if (g.PlatformIO.Platform_GetWindowFocus(viewport)) - focused_viewport = viewport; - } - - // Store a tag so we can infer z-order easily from all our windows - // We compare PlatformLastFocusedViewportId so newly created viewports with _NoFocusOnAppearing flag - // will keep the front most stamp instead of losing it back to their parent viewport. - if (focused_viewport && g.PlatformLastFocusedViewportId != focused_viewport->ID) - { - if (focused_viewport->LastFrontMostStampCount != g.ViewportFrontMostStampCount) - focused_viewport->LastFrontMostStampCount = ++g.ViewportFrontMostStampCount; - g.PlatformLastFocusedViewportId = focused_viewport->ID; - } - } } // This is a default/basic function for performing the rendering/swap of multiple Platform Windows. @@ -13586,7 +14861,7 @@ void ImGui::RenderPlatformWindowsDefault(void* platform_render_arg, void* render for (int i = 1; i < platform_io.Viewports.Size; i++) { ImGuiViewport* viewport = platform_io.Viewports[i]; - if (viewport->Flags & ImGuiViewportFlags_Minimized) + if (viewport->Flags & ImGuiViewportFlags_IsMinimized) continue; if (platform_io.Platform_RenderWindow) platform_io.Platform_RenderWindow(viewport, platform_render_arg); if (platform_io.Renderer_RenderWindow) platform_io.Renderer_RenderWindow(viewport, renderer_render_arg); @@ -13594,7 +14869,7 @@ void ImGui::RenderPlatformWindowsDefault(void* platform_render_arg, void* render for (int i = 1; i < platform_io.Viewports.Size; i++) { ImGuiViewport* viewport = platform_io.Viewports[i]; - if (viewport->Flags & ImGuiViewportFlags_Minimized) + if (viewport->Flags & ImGuiViewportFlags_IsMinimized) continue; if (platform_io.Platform_SwapBuffers) platform_io.Platform_SwapBuffers(viewport, platform_render_arg); if (platform_io.Renderer_SwapBuffers) platform_io.Renderer_SwapBuffers(viewport, renderer_render_arg); @@ -13669,6 +14944,7 @@ void ImGui::DestroyPlatformWindow(ImGuiViewportP* viewport) ImGuiContext& g = *GImGui; if (viewport->PlatformWindowCreated) { + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Destroy Platform Window %08X '%s'\n", viewport->ID, viewport->Window ? viewport->Window->Name : "n/a"); if (g.PlatformIO.Renderer_DestroyWindow) g.PlatformIO.Renderer_DestroyWindow(viewport); if (g.PlatformIO.Platform_DestroyWindow) @@ -13847,10 +15123,7 @@ namespace ImGui static void DockContextRemoveNode(ImGuiContext* ctx, ImGuiDockNode* node, bool merge_sibling_into_parent_node); static void DockContextQueueNotifyRemovedNode(ImGuiContext* ctx, ImGuiDockNode* node); static void DockContextProcessDock(ImGuiContext* ctx, ImGuiDockRequest* req); - static void DockContextProcessUndockWindow(ImGuiContext* ctx, ImGuiWindow* window, bool clear_persistent_docking_ref = true); - static void DockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node); static void DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx); - static ImGuiDockNode* DockContextFindNodeByID(ImGuiContext* ctx, ImGuiID id); static ImGuiDockNode* DockContextBindNodeToWindow(ImGuiContext* ctx, ImGuiWindow* window); static void DockContextBuildNodesFromSettings(ImGuiContext* ctx, ImGuiDockNodeSettings* node_settings_array, int node_settings_count); static void DockContextBuildAddWindowsToNodes(ImGuiContext* ctx, ImGuiID root_id); // Use root_id==0 to add all @@ -13870,11 +15143,11 @@ namespace ImGui static void DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_window); static void DockNodeAddTabBar(ImGuiDockNode* node); static void DockNodeRemoveTabBar(ImGuiDockNode* node); - static ImGuiID DockNodeUpdateWindowMenu(ImGuiDockNode* node, ImGuiTabBar* tab_bar); + static void DockNodeWindowMenuUpdate(ImGuiDockNode* node, ImGuiTabBar* tab_bar); static void DockNodeUpdateVisibleFlag(ImGuiDockNode* node); static void DockNodeStartMouseMovingWindow(ImGuiDockNode* node, ImGuiWindow* window); static bool DockNodeIsDropAllowed(ImGuiWindow* host_window, ImGuiWindow* payload_window); - static void DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockNode* host_node, ImGuiWindow* payload_window, ImGuiDockPreviewData* preview_data, bool is_explicit_target, bool is_outer_docking); + static void DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockNode* host_node, ImGuiWindow* payload_window, ImGuiDockNode* payload_node, ImGuiDockPreviewData* preview_data, bool is_explicit_target, bool is_outer_docking); static void DockNodePreviewDockRender(ImGuiWindow* host_window, ImGuiDockNode* host_node, ImGuiWindow* payload_window, const ImGuiDockPreviewData* preview_data); static void DockNodeCalcTabBarLayout(const ImGuiDockNode* node, ImRect* out_title_rect, ImRect* out_tab_bar_rect, ImVec2* out_window_menu_button_pos, ImVec2* out_close_button_pos); static void DockNodeCalcSplitRects(ImVec2& pos_old, ImVec2& size_old, ImVec2& pos_new, ImVec2& size_new, ImGuiDir dir, ImVec2 size_new_desired); @@ -13944,6 +15217,8 @@ void ImGui::DockContextInitialize(ImGuiContext* ctx) ini_handler.ApplyAllFn = DockSettingsHandler_ApplyAll; ini_handler.WriteAllFn = DockSettingsHandler_WriteAll; g.SettingsHandlers.push_back(ini_handler); + + g.DockNodeWindowMenuHandler = &DockNodeWindowMenuHandler_Default; } void ImGui::DockContextShutdown(ImGuiContext* ctx) @@ -13966,8 +15241,9 @@ void ImGui::DockContextClearNodes(ImGuiContext* ctx, ImGuiID root_id, bool clear // (Different from DockSettingsHandler_ClearAll() + DockSettingsHandler_ApplyAll() because this reuses current settings!) void ImGui::DockContextRebuildNodes(ImGuiContext* ctx) { - IMGUI_DEBUG_LOG_DOCKING("DockContextRebuild()\n"); - ImGuiDockContext* dc = &ctx->DockContext; + ImGuiContext& g = *ctx; + ImGuiDockContext* dc = &ctx->DockContext; + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextRebuildNodes\n"); SaveIniSettingsToMemory(); ImGuiID root_id = 0; // Rebuild all DockContextClearNodes(ctx, root_id, false); @@ -13979,7 +15255,7 @@ void ImGui::DockContextRebuildNodes(ImGuiContext* ctx) void ImGui::DockContextNewFrameUpdateUndocking(ImGuiContext* ctx) { ImGuiContext& g = *ctx; - ImGuiDockContext* dc = &ctx->DockContext; + ImGuiDockContext* dc = &ctx->DockContext; if (!(g.IO.ConfigFlags & ImGuiConfigFlags_DockingEnable)) { if (dc->Nodes.Data.Size > 0 || dc->Requests.Size > 0) @@ -14030,13 +15306,13 @@ void ImGui::DockContextNewFrameUpdateDocking(ImGuiContext* ctx) // [DEBUG] Store hovered dock node. // We could in theory use DockNodeTreeFindVisibleNodeByPos() on the root host dock node, but using ->DockNode is a good shortcut. // Note this is mostly a debug thing and isn't actually used for docking target, because docking involve more detailed filtering. - g.HoveredDockNode = NULL; + g.DebugHoveredDockNode = NULL; if (ImGuiWindow* hovered_window = g.HoveredWindowUnderMovingWindow) { if (hovered_window->DockNodeAsHost) - g.HoveredDockNode = DockNodeTreeFindVisibleNodeByPos(hovered_window->DockNodeAsHost, g.IO.MousePos); + g.DebugHoveredDockNode = DockNodeTreeFindVisibleNodeByPos(hovered_window->DockNodeAsHost, g.IO.MousePos); else if (hovered_window->RootWindow->DockNode) - g.HoveredDockNode = hovered_window->RootWindow->DockNode; + g.DebugHoveredDockNode = hovered_window->RootWindow->DockNode; } // Process Docking requests @@ -14064,12 +15340,12 @@ void ImGui::DockContextEndFrame(ImGuiContext* ctx) { ImRect bg_rect(node->Pos + ImVec2(0.0f, GetFrameHeight()), node->Pos + node->Size); ImDrawFlags bg_rounding_flags = CalcRoundingFlagsForRectInRect(bg_rect, node->HostWindow->Rect(), DOCKING_SPLITTER_SIZE); - node->HostWindow->DrawList->ChannelsSetCurrent(0); + node->HostWindow->DrawList->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_BG); node->HostWindow->DrawList->AddRectFilled(bg_rect.Min, bg_rect.Max, node->LastBgColor, node->HostWindow->WindowRounding, bg_rounding_flags); } } -static ImGuiDockNode* ImGui::DockContextFindNodeByID(ImGuiContext* ctx, ImGuiID id) +ImGuiDockNode* ImGui::DockContextFindNodeByID(ImGuiContext* ctx, ImGuiID id) { return (ImGuiDockNode*)ctx->DockContext.Nodes.GetVoidPtr(id); } @@ -14088,13 +15364,14 @@ ImGuiID ImGui::DockContextGenNodeID(ImGuiContext* ctx) static ImGuiDockNode* ImGui::DockContextAddNode(ImGuiContext* ctx, ImGuiID id) { // Generate an ID for the new node (the exact ID value doesn't matter as long as it is not already used) and add the first window. + ImGuiContext& g = *ctx; if (id == 0) id = DockContextGenNodeID(ctx); else IM_ASSERT(DockContextFindNodeByID(ctx, id) == NULL); // We don't set node->LastFrameAlive on construction. Nodes are always created at all time to reflect .ini settings! - IMGUI_DEBUG_LOG_DOCKING("DockContextAddNode 0x%08X\n", id); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextAddNode 0x%08X\n", id); ImGuiDockNode* node = IM_NEW(ImGuiDockNode)(id); ctx->DockContext.Nodes.SetVoidPtr(node->ID, node); return node; @@ -14105,7 +15382,7 @@ static void ImGui::DockContextRemoveNode(ImGuiContext* ctx, ImGuiDockNode* node, ImGuiContext& g = *ctx; ImGuiDockContext* dc = &ctx->DockContext; - IMGUI_DEBUG_LOG_DOCKING("DockContextRemoveNode 0x%08X\n", node->ID); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextRemoveNode 0x%08X\n", node->ID); IM_ASSERT(DockContextFindNodeByID(ctx, node->ID) == node); IM_ASSERT(node->ChildNodes[0] == NULL && node->ChildNodes[1] == NULL); IM_ASSERT(node->Windows.Size == 0); @@ -14172,7 +15449,7 @@ static void ImGui::DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx) { ImGuiDockNodeSettings* settings = &dc->NodesSettings[settings_n]; if (settings->ParentWindowId != 0) - if (ImGuiWindowSettings* window_settings = FindWindowSettings(settings->ParentWindowId)) + if (ImGuiWindowSettings* window_settings = FindWindowSettingsByID(settings->ParentWindowId)) if (window_settings->DockId) if (ImGuiDockContextPruneNodeData* data = pool.GetByKey(window_settings->DockId)) data->CountChildNodes++; @@ -14204,7 +15481,7 @@ static void ImGui::DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx) remove |= (data_root->CountChildWindows == 0); if (remove) { - IMGUI_DEBUG_LOG_DOCKING("DockContextPruneUnusedSettingsNodes: Prune 0x%08X\n", settings->ID); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextPruneUnusedSettingsNodes: Prune 0x%08X\n", settings->ID); DockSettingsRemoveNodeReferences(&settings->ID, 1); settings->ID = 0; } @@ -14323,9 +15600,9 @@ void ImGui::DockContextProcessDock(ImGuiContext* ctx, ImGuiDockRequest* req) ImGuiWindow* target_window = req->DockTargetWindow; ImGuiDockNode* node = req->DockTargetNode; if (payload_window) - IMGUI_DEBUG_LOG_DOCKING("DockContextProcessDock node 0x%08X target '%s' dock window '%s', split_dir %d\n", node ? node->ID : 0, target_window ? target_window->Name : "NULL", payload_window ? payload_window->Name : "NULL", req->DockSplitDir); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextProcessDock node 0x%08X target '%s' dock window '%s', split_dir %d\n", node ? node->ID : 0, target_window ? target_window->Name : "NULL", payload_window->Name, req->DockSplitDir); else - IMGUI_DEBUG_LOG_DOCKING("DockContextProcessDock node 0x%08X, split_dir %d\n", node ? node->ID : 0, req->DockSplitDir); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextProcessDock node 0x%08X, split_dir %d\n", node ? node->ID : 0, req->DockSplitDir); // Decide which Tab will be selected at the end of the operation ImGuiID next_selected_id = 0; @@ -14474,8 +15751,8 @@ static ImVec2 FixLargeWindowsWhenUndocking(const ImVec2& size, ImGuiViewport* re void ImGui::DockContextProcessUndockWindow(ImGuiContext* ctx, ImGuiWindow* window, bool clear_persistent_docking_ref) { - IMGUI_DEBUG_LOG_DOCKING("DockContextProcessUndockWindow window '%s', clear_persistent_docking_ref = %d\n", window->Name, clear_persistent_docking_ref); - IM_UNUSED(ctx); + ImGuiContext& g = *ctx; + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextProcessUndockWindow window '%s', clear_persistent_docking_ref = %d\n", window->Name, clear_persistent_docking_ref); if (window->DockNode) DockNodeRemoveWindow(window->DockNode, window, clear_persistent_docking_ref ? 0 : window->DockId); else @@ -14490,7 +15767,8 @@ void ImGui::DockContextProcessUndockWindow(ImGuiContext* ctx, ImGuiWindow* windo void ImGui::DockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node) { - IMGUI_DEBUG_LOG_DOCKING("DockContextProcessUndockNode node %08X\n", node->ID); + ImGuiContext& g = *ctx; + IMGUI_DEBUG_LOG_DOCKING("[docking] DockContextProcessUndockNode node %08X\n", node->ID); IM_ASSERT(node->IsLeafNode()); IM_ASSERT(node->Windows.Size >= 1); @@ -14503,14 +15781,6 @@ void ImGui::DockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node) new_node->SizeRef = node->SizeRef; DockNodeMoveWindows(new_node, node); DockSettingsRenameNodeReferences(node->ID, new_node->ID); - for (int n = 0; n < new_node->Windows.Size; n++) - { - ImGuiWindow* window = new_node->Windows[n]; - window->Flags &= ~ImGuiWindowFlags_ChildWindow; - if (window->ParentWindow) - window->ParentWindow->DC.ChildWindows.find_erase(window); - UpdateWindowParentAndRootLinks(window, window->Flags, NULL); - } node = new_node; } else @@ -14523,6 +15793,14 @@ void ImGui::DockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node) node->ParentNode->AuthorityForViewport = ImGuiDataAuthority_Window; // The node that stays in place keeps the viewport, so our newly dragged out node will create a new viewport node->ParentNode = NULL; } + for (int n = 0; n < node->Windows.Size; n++) + { + ImGuiWindow* window = node->Windows[n]; + window->Flags &= ~ImGuiWindowFlags_ChildWindow; + if (window->ParentWindow) + window->ParentWindow->DC.ChildWindows.find_erase(window); + UpdateWindowParentAndRootLinks(window, window->Flags, NULL); + } node->AuthorityForPos = node->AuthorityForSize = ImGuiDataAuthority_DockNode; node->Size = FixLargeWindowsWhenUndocking(node->Size, node->Windows[0]->Viewport); node->WantMouseMove = true; @@ -14530,14 +15808,14 @@ void ImGui::DockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node) } // This is mostly used for automation. -bool ImGui::DockContextCalcDropPosForDocking(ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload, ImGuiDir split_dir, bool split_outer, ImVec2* out_pos) +bool ImGui::DockContextCalcDropPosForDocking(ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload_window, ImGuiDockNode* payload_node, ImGuiDir split_dir, bool split_outer, ImVec2* out_pos) { // In DockNodePreviewDockSetup() for a root central node instead of showing both "inner" and "outer" drop rects // (which would be functionally identical) we only show the outer one. Reflect this here. if (target_node && target_node->ParentNode == NULL && target_node->IsCentralNode() && split_dir != ImGuiDir_None) split_outer = true; ImGuiDockPreviewData split_data; - DockNodePreviewDockSetup(target, target_node, payload, &split_data, false, split_outer); + DockNodePreviewDockSetup(target, target_node, payload_window, payload_node, &split_data, false, split_outer); if (split_data.DropRectsDraw[split_dir+1].IsInverted()) return false; *out_pos = split_data.DropRectsDraw[split_dir+1].GetCenter(); @@ -14615,7 +15893,7 @@ int ImGui::DockNodeGetTabOrder(ImGuiWindow* window) if (tab_bar == NULL) return -1; ImGuiTabItem* tab = TabBarFindTabByID(tab_bar, window->TabId); - return tab ? tab_bar->GetTabOrder(tab) : -1; + return tab ? TabBarGetTabOrder(tab_bar, tab) : -1; } static void DockNodeHideWindowDuringHostWindowCreation(ImGuiWindow* window) @@ -14634,7 +15912,7 @@ static void ImGui::DockNodeAddWindow(ImGuiDockNode* node, ImGuiWindow* window, b DockNodeRemoveWindow(window->DockNode, window, 0); } IM_ASSERT(window->DockNode == NULL || window->DockNodeAsHost == NULL); - IMGUI_DEBUG_LOG_DOCKING("DockNodeAddWindow node 0x%08X window '%s'\n", node->ID, window->Name); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockNodeAddWindow node 0x%08X window '%s'\n", node->ID, window->Name); // If more than 2 windows appeared on the same frame leading to the creation of a new hosting window, // we'll hide windows until the host window is ready. Hide the 1st window after its been output (so it is not visible for one frame). @@ -14690,7 +15968,7 @@ static void ImGui::DockNodeRemoveWindow(ImGuiDockNode* node, ImGuiWindow* window //IM_ASSERT(window->RootWindowDockTree == node->HostWindow); //IM_ASSERT(window->LastFrameActive < g.FrameCount); // We may call this from Begin() IM_ASSERT(save_dock_id == 0 || save_dock_id == node->ID); - IMGUI_DEBUG_LOG_DOCKING("DockNodeRemoveWindow node 0x%08X window '%s'\n", node->ID, window->Name); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockNodeRemoveWindow node 0x%08X window '%s'\n", node->ID, window->Name); window->DockNode = NULL; window->DockIsActive = window->DockTabWantClose = false; @@ -14737,7 +16015,7 @@ static void ImGui::DockNodeRemoveWindow(ImGuiDockNode* node, ImGuiWindow* window if (node->HostWindow->ViewportOwned && node->IsRootNode()) { // Transfer viewport back to the remaining loose window - IMGUI_DEBUG_LOG_VIEWPORT("Node %08X transfer Viewport %08X=>%08X for Window '%s'\n", node->ID, node->HostWindow->Viewport->ID, remaining_window->ID, remaining_window->Name); + IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Node %08X transfer Viewport %08X=>%08X for Window '%s'\n", node->ID, node->HostWindow->Viewport->ID, remaining_window->ID, remaining_window->Name); IM_ASSERT(node->HostWindow->Viewport->Window == node->HostWindow); node->HostWindow->Viewport->Window = remaining_window; node->HostWindow->Viewport->ID = remaining_window->ID; @@ -14779,15 +16057,12 @@ static void ImGui::DockNodeMoveWindows(ImGuiDockNode* dst_node, ImGuiDockNode* s src_node->TabBar = NULL; } - for (int n = 0; n < src_node->Windows.Size; n++) + // Tab order is not important here, it is preserved by sorting in DockNodeUpdateTabBar(). + for (ImGuiWindow* window : src_node->Windows) { - // DockNode's TabBar may have non-window Tabs manually appended by user - if (ImGuiWindow* window = src_tab_bar ? src_tab_bar->Tabs[n].Window : src_node->Windows[n]) - { - window->DockNode = NULL; - window->DockIsActive = false; - DockNodeAddWindow(dst_node, window, move_tab_bar ? false : true); - } + window->DockNode = NULL; + window->DockIsActive = false; + DockNodeAddWindow(dst_node, window, !move_tab_bar); } src_node->Windows.clear(); @@ -15219,8 +16494,17 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) if (node->IsSplitNode()) IM_ASSERT(node->TabBar == NULL); if (node->IsRootNode()) - if (g.NavWindow && g.NavWindow->RootWindow->DockNode && g.NavWindow->RootWindow->ParentWindow == host_window) - node->LastFocusedNodeId = g.NavWindow->RootWindow->DockNode->ID; + if (ImGuiWindow* p_window = g.NavWindow ? g.NavWindow->RootWindow : NULL) + while (p_window != NULL && p_window->DockNode != NULL) + { + ImGuiDockNode* p_node = DockNodeGetRootNode(p_window->DockNode); + if (p_node == node) + { + node->LastFocusedNodeId = p_window->DockNode->ID; // Note: not using root node ID! + break; + } + p_window = p_node->HostWindow ? p_node->HostWindow->RootWindow : NULL; + } // Register a hit-test hole in the window unless we are currently dragging a window that is compatible with our dockspace ImGuiDockNode* central_node = node->CentralNode; @@ -15255,7 +16539,6 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) // Update position/size, process and draw resizing splitters if (node->IsRootNode() && host_window) { - host_window->DrawList->ChannelsSetCurrent(1); DockNodeTreeUpdatePosSize(node, host_window->Pos, host_window->Size); DockNodeTreeUpdateSplitter(node); } @@ -15263,7 +16546,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) // Draw empty node background (currently can only be the Central Node) if (host_window && node->IsEmpty() && node->IsVisible) { - host_window->DrawList->ChannelsSetCurrent(0); + host_window->DrawList->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_BG); node->LastBgColor = (node_flags & ImGuiDockNodeFlags_PassthruCentralNode) ? 0 : GetColorU32(ImGuiCol_DockingEmptyBg); if (node->LastBgColor != 0) host_window->DrawList->AddRectFilled(node->Pos, node->Pos + node->Size, node->LastBgColor); @@ -15276,7 +16559,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) const bool render_dockspace_bg = node->IsRootNode() && host_window && (node_flags & ImGuiDockNodeFlags_PassthruCentralNode) != 0; if (render_dockspace_bg && node->IsVisible) { - host_window->DrawList->ChannelsSetCurrent(0); + host_window->DrawList->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_BG); if (central_node_hole) RenderRectFilledWithHole(host_window->DrawList, node->Rect(), central_node->Rect(), GetColorU32(ImGuiCol_WindowBg), 0.0f); else @@ -15285,7 +16568,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) // Draw and populate Tab Bar if (host_window) - host_window->DrawList->ChannelsSetCurrent(1); + host_window->DrawList->ChannelsSetCurrent(DOCKING_HOST_DRAW_CHANNEL_FG); if (host_window && node->Windows.Size > 0) { DockNodeUpdateTabBar(node, host_window); @@ -15299,7 +16582,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) if (node->TabBar && node->TabBar->SelectedTabId) node->SelectedTabId = node->TabBar->SelectedTabId; else if (node->Windows.Size > 0) - node->SelectedTabId = node->Windows[0]->ID; + node->SelectedTabId = node->Windows[0]->TabId; // Draw payload drop target if (host_window && node->IsVisible) @@ -15320,13 +16603,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node) // Render outer borders last (after the tab bar) if (node->IsRootNode()) - { - host_window->DrawList->ChannelsSetCurrent(1); RenderWindowOuterBorders(host_window); - } - - // Further rendering (= hosted windows background) will be drawn on layer 0 - host_window->DrawList->ChannelsSetCurrent(0); } // End host window @@ -15344,11 +16621,39 @@ static int IMGUI_CDECL TabItemComparerByDockOrder(const void* lhs, const void* r return (a->BeginOrderWithinContext - b->BeginOrderWithinContext); } -static ImGuiID ImGui::DockNodeUpdateWindowMenu(ImGuiDockNode* node, ImGuiTabBar* tab_bar) +// Default handler for g.DockNodeWindowMenuHandler(): display the list of windows for a given dock-node. +// This is exceptionally stored in a function pointer to also user applications to tweak this menu (undocumented) +// Custom overrides may want to decorate, group, sort entries. +// Please note those are internal structures: if you copy this expect occasional breakage. +void ImGui::DockNodeWindowMenuHandler_Default(ImGuiContext* ctx, ImGuiDockNode* node, ImGuiTabBar* tab_bar) +{ + IM_UNUSED(ctx); + if (tab_bar->Tabs.Size == 1) + { + // "Hide tab bar" option. Being one of our rare user-facing string we pull it from a table. + if (MenuItem(LocalizeGetMsg(ImGuiLocKey_DockingHideTabBar), NULL, node->IsHiddenTabBar())) + node->WantHiddenTabBarToggle = true; + } + else + { + // Display a selectable list of windows in this docking node + for (int tab_n = 0; tab_n < tab_bar->Tabs.Size; tab_n++) + { + ImGuiTabItem* tab = &tab_bar->Tabs[tab_n]; + if (tab->Flags & ImGuiTabItemFlags_Button) + continue; + if (Selectable(TabBarGetTabName(tab_bar, tab), tab->ID == tab_bar->SelectedTabId)) + TabBarQueueFocus(tab_bar, tab); + SameLine(); + Text(" "); + } + } +} + +static void ImGui::DockNodeWindowMenuUpdate(ImGuiDockNode* node, ImGuiTabBar* tab_bar) { // Try to position the menu so it is more likely to stays within the same viewport ImGuiContext& g = *GImGui; - ImGuiID ret_tab_id = 0; if (g.Style.WindowMenuButtonPosition == ImGuiDir_Left) SetNextWindowPos(ImVec2(node->Pos.x, node->Pos.y + GetFrameHeight()), ImGuiCond_Always, ImVec2(0.0f, 0.0f)); else @@ -15356,27 +16661,9 @@ static ImGuiID ImGui::DockNodeUpdateWindowMenu(ImGuiDockNode* node, ImGuiTabBar* if (BeginPopup("#WindowMenu")) { node->IsFocused = true; - if (tab_bar->Tabs.Size == 1) - { - if (MenuItem("Hide tab bar", NULL, node->IsHiddenTabBar())) - node->WantHiddenTabBarToggle = true; - } - else - { - for (int tab_n = 0; tab_n < tab_bar->Tabs.Size; tab_n++) - { - ImGuiTabItem* tab = &tab_bar->Tabs[tab_n]; - if (tab->Flags & ImGuiTabItemFlags_Button) - continue; - if (Selectable(tab_bar->GetTabName(tab), tab->ID == tab_bar->SelectedTabId)) - ret_tab_id = tab->ID; - SameLine(); - Text(" "); - } - } + g.DockNodeWindowMenuHandler(&g, node, tab_bar); EndPopup(); } - return ret_tab_id; } // User helper to append/amend into a dock node tab bar. Most commonly used to add e.g. a "+" button. @@ -15401,6 +16688,28 @@ void ImGui::DockNodeEndAmendTabBar() End(); } +static bool IsDockNodeTitleBarHighlighted(ImGuiDockNode* node, ImGuiDockNode* root_node) +{ + // CTRL+Tab highlight (only highlighting leaf node, not whole hierarchy) + ImGuiContext& g = *GImGui; + if (g.NavWindowingTarget) + return (g.NavWindowingTarget->DockNode == node); + + // FIXME-DOCKING: May want alternative to treat central node void differently? e.g. if (g.NavWindow == host_window) + if (g.NavWindow && root_node->LastFocusedNodeId == node->ID) + { + // FIXME: This could all be backed in RootWindowForTitleBarHighlight? Probably need to reorganize for both dock nodes + other RootWindowForTitleBarHighlight users (not-node) + ImGuiWindow* parent_window = g.NavWindow->RootWindow; + while (parent_window->Flags & ImGuiWindowFlags_ChildMenu) + parent_window = parent_window->ParentWindow->RootWindow; + ImGuiDockNode* start_parent_node = parent_window->DockNodeAsHost ? parent_window->DockNodeAsHost : parent_window->DockNode; + for (ImGuiDockNode* parent_node = start_parent_node; parent_node != NULL; parent_node = parent_node->HostWindow ? parent_node->HostWindow->RootWindow->DockNode : NULL) + if ((parent_node = ImGui::DockNodeGetRootNode(parent_node)) == root_node) + return true; + } + return false; +} + // Submit the tab bar corresponding to a dock node and various housekeeping details. static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_window) { @@ -15416,9 +16725,7 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w // Decide if we should use a focused title bar color bool is_focused = false; ImGuiDockNode* root_node = DockNodeGetRootNode(node); - if (g.NavWindowingTarget) - is_focused = (g.NavWindowingTarget->DockNode == node); - else if (g.NavWindow && g.NavWindow->RootWindowForTitleBarHighlight == host_window->RootWindowDockTree && root_node->LastFocusedNodeId == node->ID) + if (IsDockNodeTitleBarHighlighted(node, root_node)) is_focused = true; // Hidden tab bar will show a triangle on the upper-left (in Begin) @@ -15469,8 +16776,10 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w // FIXME-DOCK FIXME-OPT: Could we recycle popups id across multiple dock nodes? if (has_window_menu_button && IsPopupOpen("#WindowMenu")) { - if (ImGuiID tab_id = DockNodeUpdateWindowMenu(node, tab_bar)) - focus_tab_id = tab_bar->NextSelectedTabId = tab_id; + ImGuiID next_selected_tab_id = tab_bar->NextSelectedTabId; + DockNodeWindowMenuUpdate(node, tab_bar); + if (tab_bar->NextSelectedTabId != 0 && tab_bar->NextSelectedTabId != next_selected_tab_id) + focus_tab_id = tab_bar->NextSelectedTabId; is_focused |= node->IsFocused; } @@ -15515,16 +16824,16 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w } if (tab_bar->Tabs.Size > tabs_unsorted_start) { - IMGUI_DEBUG_LOG_DOCKING("In node 0x%08X: %d new appearing tabs:%s\n", node->ID, tab_bar->Tabs.Size - tabs_unsorted_start, (tab_bar->Tabs.Size > tabs_unsorted_start + 1) ? " (will sort)" : ""); + IMGUI_DEBUG_LOG_DOCKING("[docking] In node 0x%08X: %d new appearing tabs:%s\n", node->ID, tab_bar->Tabs.Size - tabs_unsorted_start, (tab_bar->Tabs.Size > tabs_unsorted_start + 1) ? " (will sort)" : ""); for (int tab_n = tabs_unsorted_start; tab_n < tab_bar->Tabs.Size; tab_n++) - IMGUI_DEBUG_LOG_DOCKING(" - Tab '%s' Order %d\n", tab_bar->Tabs[tab_n].Window->Name, tab_bar->Tabs[tab_n].Window->DockOrder); + IMGUI_DEBUG_LOG_DOCKING("[docking] - Tab '%s' Order %d\n", tab_bar->Tabs[tab_n].Window->Name, tab_bar->Tabs[tab_n].Window->DockOrder); if (tab_bar->Tabs.Size > tabs_unsorted_start + 1) ImQsort(tab_bar->Tabs.Data + tabs_unsorted_start, tab_bar->Tabs.Size - tabs_unsorted_start, sizeof(ImGuiTabItem), TabItemComparerByDockOrder); } // Apply NavWindow focus back to the tab bar if (g.NavWindow && g.NavWindow->RootWindow->DockNode == node) - tab_bar->SelectedTabId = g.NavWindow->RootWindow->ID; + tab_bar->SelectedTabId = g.NavWindow->RootWindow->TabId; // Selected newly added tabs, or persistent tab ID if the tab bar was just recreated if (tab_bar_is_recreated && TabBarFindTabByID(tab_bar, node->SelectedTabId) != NULL) @@ -15856,20 +17165,21 @@ bool ImGui::DockNodeCalcDropRectsAndTestMousePos(const ImRect& parent, ImGuiDir // host_node may be NULL if the window doesn't have a DockNode already. // FIXME-DOCK: This is misnamed since it's also doing the filtering. -static void ImGui::DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockNode* host_node, ImGuiWindow* root_payload, ImGuiDockPreviewData* data, bool is_explicit_target, bool is_outer_docking) +static void ImGui::DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockNode* host_node, ImGuiWindow* payload_window, ImGuiDockNode* payload_node, ImGuiDockPreviewData* data, bool is_explicit_target, bool is_outer_docking) { ImGuiContext& g = *GImGui; // There is an edge case when docking into a dockspace which only has inactive nodes. // In this case DockNodeTreeFindNodeByPos() will have selected a leaf node which is inactive. // Because the inactive leaf node doesn't have proper pos/size yet, we'll use the root node as reference. - ImGuiDockNode* root_payload_as_host = root_payload->DockNodeAsHost; + if (payload_node == NULL) + payload_node = payload_window->DockNodeAsHost; ImGuiDockNode* ref_node_for_rect = (host_node && !host_node->IsVisible) ? DockNodeGetRootNode(host_node) : host_node; if (ref_node_for_rect) - IM_ASSERT(ref_node_for_rect->IsVisible); + IM_ASSERT(ref_node_for_rect->IsVisible == true); // Filter, figure out where we are allowed to dock - ImGuiDockNodeFlags src_node_flags = root_payload_as_host ? root_payload_as_host->MergedFlags : root_payload->WindowClass.DockNodeFlagsOverrideSet; + ImGuiDockNodeFlags src_node_flags = payload_node ? payload_node->MergedFlags : payload_window->WindowClass.DockNodeFlagsOverrideSet; ImGuiDockNodeFlags dst_node_flags = host_node ? host_node->MergedFlags : host_window->WindowClass.DockNodeFlagsOverrideSet; data->IsCenterAvailable = true; if (is_outer_docking) @@ -15878,7 +17188,7 @@ static void ImGui::DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockN data->IsCenterAvailable = false; else if (host_node && (dst_node_flags & ImGuiDockNodeFlags_NoDockingInCentralNode) && host_node->IsCentralNode()) data->IsCenterAvailable = false; - else if ((!host_node || !host_node->IsEmpty()) && root_payload_as_host && root_payload_as_host->IsSplitNode() && (root_payload_as_host->OnlyNodeWithWindows == NULL)) // Is _visibly_ split? + else if ((!host_node || !host_node->IsEmpty()) && payload_node && payload_node->IsSplitNode() && (payload_node->OnlyNodeWithWindows == NULL)) // Is _visibly_ split? data->IsCenterAvailable = false; else if (dst_node_flags & ImGuiDockNodeFlags_NoDockingOverMe) data->IsCenterAvailable = false; @@ -15896,7 +17206,7 @@ static void ImGui::DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockN data->IsSidesAvailable = false; // Build a tentative future node (reuse same structure because it is practical. Shape will be readjusted when previewing a split) - data->FutureNode.HasCloseButton = (host_node ? host_node->HasCloseButton : host_window->HasCloseButton) || (root_payload->HasCloseButton); + data->FutureNode.HasCloseButton = (host_node ? host_node->HasCloseButton : host_window->HasCloseButton) || (payload_window->HasCloseButton); data->FutureNode.HasWindowMenuButton = host_node ? true : ((host_window->Flags & ImGuiWindowFlags_NoCollapse) == 0); data->FutureNode.Pos = ref_node_for_rect ? ref_node_for_rect->Pos : host_window->Pos; data->FutureNode.Size = ref_node_for_rect ? ref_node_for_rect->Size : host_window->Size; @@ -15933,7 +17243,7 @@ static void ImGui::DockNodePreviewDockSetup(ImGuiWindow* host_window, ImGuiDockN ImGuiAxis split_axis = (split_dir == ImGuiDir_Left || split_dir == ImGuiDir_Right) ? ImGuiAxis_X : ImGuiAxis_Y; ImVec2 pos_new, pos_old = data->FutureNode.Pos; ImVec2 size_new, size_old = data->FutureNode.Size; - DockNodeCalcSplitRects(pos_old, size_old, pos_new, size_new, split_dir, root_payload->Size); + DockNodeCalcSplitRects(pos_old, size_old, pos_new, size_new, split_dir, payload_window->Size); // Calculate split ratio so we can pass it down the docking request float split_ratio = ImSaturate(size_new[split_axis] / data->FutureNode.Size[split_axis]); @@ -15989,11 +17299,11 @@ static void ImGui::DockNodePreviewDockRender(ImGuiWindow* host_window, ImGuiDock if (!host_node->IsHiddenTabBar() && !host_node->IsNoTabBar()) tab_pos.x += host_node->TabBar->WidthAllTabs + g.Style.ItemInnerSpacing.x; // We don't use OffsetNewTab because when using non-persistent-order tab bar it is incremented with each Tab submission. else - tab_pos.x += g.Style.ItemInnerSpacing.x + TabItemCalcSize(host_node->Windows[0]->Name, host_node->Windows[0]->HasCloseButton).x; + tab_pos.x += g.Style.ItemInnerSpacing.x + TabItemCalcSize(host_node->Windows[0]).x; } else if (!(host_window->Flags & ImGuiWindowFlags_DockNodeHost)) { - tab_pos.x += g.Style.ItemInnerSpacing.x + TabItemCalcSize(host_window->Name, host_window->HasCloseButton).x; // Account for slight offset which will be added when changing from title bar to tab bar + tab_pos.x += g.Style.ItemInnerSpacing.x + TabItemCalcSize(host_window).x; // Account for slight offset which will be added when changing from title bar to tab bar } // Draw tab shape/label preview (payload may be a loose window or a host window carrying multiple tabbed windows) @@ -16011,7 +17321,7 @@ static void ImGui::DockNodePreviewDockRender(ImGuiWindow* host_window, ImGuiDock continue; // Calculate the tab bounding box for each payload window - ImVec2 tab_size = TabItemCalcSize(payload_window->Name, payload_window->HasCloseButton); + ImVec2 tab_size = TabItemCalcSize(payload_window); ImRect tab_bb(tab_pos.x, tab_pos.y, tab_pos.x + tab_size.x, tab_pos.y + tab_size.y); tab_pos.x += tab_size.x + g.Style.ItemInnerSpacing.x; const ImU32 overlay_col_text = GetColorU32(payload_window->DockStyle.Colors[ImGuiWindowDockStyleCol_Text]); @@ -16118,6 +17428,7 @@ void ImGui::DockNodeTreeSplit(ImGuiContext* ctx, ImGuiDockNode* parent_node, ImG void ImGui::DockNodeTreeMerge(ImGuiContext* ctx, ImGuiDockNode* parent_node, ImGuiDockNode* merge_lead_child) { // When called from DockContextProcessUndockNode() it is possible that one of the child is NULL. + ImGuiContext& g = *GImGui; ImGuiDockNode* child_0 = parent_node->ChildNodes[0]; ImGuiDockNode* child_1 = parent_node->ChildNodes[1]; IM_ASSERT(child_0 || child_1); @@ -16127,7 +17438,7 @@ void ImGui::DockNodeTreeMerge(ImGuiContext* ctx, ImGuiDockNode* parent_node, ImG IM_ASSERT(parent_node->TabBar == NULL); IM_ASSERT(parent_node->Windows.Size == 0); } - IMGUI_DEBUG_LOG_DOCKING("DockNodeTreeMerge 0x%08X & 0x%08X back into parent 0x%08X\n", child_0 ? child_0->ID : 0, child_1 ? child_1->ID : 0, parent_node->ID); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockNodeTreeMerge: 0x%08X + 0x%08X back into parent 0x%08X\n", child_0 ? child_0->ID : 0, child_1 ? child_1->ID : 0, parent_node->ID); ImVec2 backup_last_explicit_size = parent_node->SizeRef; DockNodeMoveChildNodes(parent_node, merge_lead_child); @@ -16425,7 +17736,8 @@ ImGuiDockNode* ImGui::DockNodeTreeFindVisibleNodeByPos(ImGuiDockNode* node, ImVe if (ImGuiDockNode* hovered_node = DockNodeTreeFindVisibleNodeByPos(node->ChildNodes[1], pos)) return hovered_node; - return NULL; + // This means we are hovering over the splitter/spacing of a parent node + return node; } //----------------------------------------------------------------------------- @@ -16476,11 +17788,12 @@ void ImGui::SetWindowDock(ImGuiWindow* window, ImGuiID dock_id, ImGuiCond cond) // Create an explicit dockspace node within an existing window. Also expose dock node flags and creates a CentralNode by default. // The Central Node is always displayed even when empty and shrink/extend according to the requested size of its neighbors. // DockSpace() needs to be submitted _before_ any window they can host. If you use a dockspace, submit it early in your app. +// When ImGuiDockNodeFlags_KeepAliveOnly is set, nothing is submitted in the current window (function may be called from any location). ImGuiID ImGui::DockSpace(ImGuiID id, const ImVec2& size_arg, ImGuiDockNodeFlags flags, const ImGuiWindowClass* window_class) { ImGuiContext* ctx = GImGui; ImGuiContext& g = *ctx; - ImGuiWindow* window = GetCurrentWindow(); + ImGuiWindow* window = GetCurrentWindowRead(); if (!(g.IO.ConfigFlags & ImGuiConfigFlags_DockingEnable)) return 0; @@ -16489,18 +17802,20 @@ ImGuiID ImGui::DockSpace(ImGuiID id, const ImVec2& size_arg, ImGuiDockNodeFlags // If for whichever reason this is causing problem we would need to ensure that DockNodeUpdateTabBar() ends up clearing NextSelectedTabId even if SkipItems=true. if (window->SkipItems) flags |= ImGuiDockNodeFlags_KeepAliveOnly; + if ((flags & ImGuiDockNodeFlags_KeepAliveOnly) == 0) + window = GetCurrentWindow(); // call to set window->WriteAccessed = true; IM_ASSERT((flags & ImGuiDockNodeFlags_DockSpace) == 0); IM_ASSERT(id != 0); ImGuiDockNode* node = DockContextFindNodeByID(ctx, id); if (!node) { - IMGUI_DEBUG_LOG_DOCKING("DockSpace: dockspace node 0x%08X created\n", id); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockSpace: dockspace node 0x%08X created\n", id); node = DockContextAddNode(ctx, id); node->SetLocalFlags(ImGuiDockNodeFlags_CentralNode); } if (window_class && window_class->ClassId != node->WindowClass.ClassId) - IMGUI_DEBUG_LOG_DOCKING("DockSpace: dockspace node 0x%08X: setup WindowClass 0x%08X -> 0x%08X\n", id, node->WindowClass.ClassId, window_class->ClassId); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockSpace: dockspace node 0x%08X: setup WindowClass 0x%08X -> 0x%08X\n", id, node->WindowClass.ClassId, window_class->ClassId); node->SharedFlags = flags; node->WindowClass = window_class ? *window_class : ImGuiWindowClass(); @@ -16569,7 +17884,13 @@ ImGuiID ImGui::DockSpace(ImGuiID id, const ImVec2& size_arg, ImGuiDockNodeFlags DockNodeUpdate(node); End(); + + ImRect bb(node->Pos, node->Pos + size); ItemSize(size); + ItemAdd(bb, id, NULL, ImGuiItemFlags_NoNav); // Not a nav point (could be, would need to draw the nav rect and replicate/refactor activation from BeginChild(), but seems like CTRL+Tab works better here?) + if ((g.LastItemData.StatusFlags & ImGuiItemStatusFlags_HoveredRect) && IsWindowChildOf(g.HoveredWindow, host_window, false, true)) // To fullfill IsItemHovered(), similar to EndChild() + g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_HoveredWindow; + return id; } @@ -16644,7 +17965,7 @@ void ImGui::DockBuilderDockWindow(const char* window_name, ImGuiID node_id) else { // Apply to settings - ImGuiWindowSettings* settings = FindWindowSettings(window_id); + ImGuiWindowSettings* settings = FindWindowSettingsByID(window_id); if (settings == NULL) settings = CreateNewWindowSettings(window_name); settings->DockId = node_id; @@ -16836,11 +18157,11 @@ void ImGui::DockBuilderRemoveNodeDockedWindows(ImGuiID root_id, bool clear_setti // FIXME-DOCK: We are not exposing nor using split_outer. ImGuiID ImGui::DockBuilderSplitNode(ImGuiID id, ImGuiDir split_dir, float size_ratio_for_node_at_dir, ImGuiID* out_id_at_dir, ImGuiID* out_id_at_opposite_dir) { - ImGuiContext* ctx = GImGui; + ImGuiContext& g = *GImGui; IM_ASSERT(split_dir != ImGuiDir_None); - IMGUI_DEBUG_LOG_DOCKING("DockBuilderSplitNode node 0x%08X, split_dir %d\n", id, split_dir); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockBuilderSplitNode: node 0x%08X, split_dir %d\n", id, split_dir); - ImGuiDockNode* node = DockContextFindNodeByID(ctx, id); + ImGuiDockNode* node = DockContextFindNodeByID(&g, id); if (node == NULL) { IM_ASSERT(node != NULL); @@ -16857,7 +18178,7 @@ ImGuiID ImGui::DockBuilderSplitNode(ImGuiID id, ImGuiDir split_dir, float size_r req.DockSplitDir = split_dir; req.DockSplitRatio = ImSaturate((split_dir == ImGuiDir_Left || split_dir == ImGuiDir_Up) ? size_ratio_for_node_at_dir : 1.0f - size_ratio_for_node_at_dir); req.DockSplitOuter = false; - DockContextProcessDock(ctx, &req); + DockContextProcessDock(&g, &req); ImGuiID id_at_dir = node->ChildNodes[(split_dir == ImGuiDir_Left || split_dir == ImGuiDir_Up) ? 0 : 1]->ID; ImGuiID id_at_opposite_dir = node->ChildNodes[(split_dir == ImGuiDir_Left || split_dir == ImGuiDir_Up) ? 1 : 0]->ID; @@ -16870,8 +18191,8 @@ ImGuiID ImGui::DockBuilderSplitNode(ImGuiID id, ImGuiDir split_dir, float size_r static ImGuiDockNode* DockBuilderCopyNodeRec(ImGuiDockNode* src_node, ImGuiID dst_node_id_if_known, ImVector* out_node_remap_pairs) { - ImGuiContext* ctx = GImGui; - ImGuiDockNode* dst_node = ImGui::DockContextAddNode(ctx, dst_node_id_if_known); + ImGuiContext& g = *GImGui; + ImGuiDockNode* dst_node = ImGui::DockContextAddNode(&g, dst_node_id_if_known); dst_node->SharedFlags = src_node->SharedFlags; dst_node->LocalFlags = src_node->LocalFlags; dst_node->LocalFlagsInWindows = ImGuiDockNodeFlags_None; @@ -16891,7 +18212,7 @@ static ImGuiDockNode* DockBuilderCopyNodeRec(ImGuiDockNode* src_node, ImGuiID ds dst_node->ChildNodes[child_n]->ParentNode = dst_node; } - IMGUI_DEBUG_LOG_DOCKING("Fork node %08X -> %08X (%d childs)\n", src_node->ID, dst_node->ID, dst_node->IsSplitNode() ? 2 : 0); + IMGUI_DEBUG_LOG_DOCKING("[docking] Fork node %08X -> %08X (%d childs)\n", src_node->ID, dst_node->ID, dst_node->IsSplitNode() ? 2 : 0); return dst_node; } @@ -16925,8 +18246,11 @@ void ImGui::DockBuilderCopyWindowSettings(const char* src_name, const char* dst_ dst_window->SizeFull = src_window->SizeFull; dst_window->Collapsed = src_window->Collapsed; } - else if (ImGuiWindowSettings* dst_settings = FindOrCreateWindowSettings(dst_name)) + else { + ImGuiWindowSettings* dst_settings = FindWindowSettingsByID(ImHashStr(dst_name)); + if (!dst_settings) + dst_settings = CreateNewWindowSettings(dst_name); ImVec2ih window_pos_2ih = ImVec2ih(src_window->Pos); if (src_window->ViewportId != 0 && src_window->ViewportId != IMGUI_VIEWPORT_DEFAULT_ID) { @@ -16946,6 +18270,7 @@ void ImGui::DockBuilderCopyWindowSettings(const char* src_name, const char* dst_ // FIXME: Will probably want to change this signature, in particular how the window remapping pairs are passed. void ImGui::DockBuilderCopyDockSpace(ImGuiID src_dockspace_id, ImGuiID dst_dockspace_id, ImVector* in_window_remap_pairs) { + ImGuiContext& g = *GImGui; IM_ASSERT(src_dockspace_id != 0); IM_ASSERT(dst_dockspace_id != 0); IM_ASSERT(in_window_remap_pairs != NULL); @@ -16971,7 +18296,7 @@ void ImGui::DockBuilderCopyDockSpace(ImGuiID src_dockspace_id, ImGuiID dst_docks ImGuiID src_dock_id = 0; if (ImGuiWindow* src_window = FindWindowByID(src_window_id)) src_dock_id = src_window->DockId; - else if (ImGuiWindowSettings* src_window_settings = FindWindowSettings(src_window_id)) + else if (ImGuiWindowSettings* src_window_settings = FindWindowSettingsByID(src_window_id)) src_dock_id = src_window_settings->DockId; ImGuiID dst_dock_id = 0; for (int dock_remap_n = 0; dock_remap_n < node_remap_pairs.Size; dock_remap_n += 2) @@ -16985,20 +18310,23 @@ void ImGui::DockBuilderCopyDockSpace(ImGuiID src_dockspace_id, ImGuiID dst_docks if (dst_dock_id != 0) { // Docked windows gets redocked into the new node hierarchy. - IMGUI_DEBUG_LOG_DOCKING("Remap live window '%s' 0x%08X -> '%s' 0x%08X\n", src_window_name, src_dock_id, dst_window_name, dst_dock_id); + IMGUI_DEBUG_LOG_DOCKING("[docking] Remap live window '%s' 0x%08X -> '%s' 0x%08X\n", src_window_name, src_dock_id, dst_window_name, dst_dock_id); DockBuilderDockWindow(dst_window_name, dst_dock_id); } else { // Floating windows gets their settings transferred (regardless of whether the new window already exist or not) // When this is leading to a Copy and not a Move, we would get two overlapping floating windows. Could we possibly dock them together? - IMGUI_DEBUG_LOG_DOCKING("Remap window settings '%s' -> '%s'\n", src_window_name, dst_window_name); + IMGUI_DEBUG_LOG_DOCKING("[docking] Remap window settings '%s' -> '%s'\n", src_window_name, dst_window_name); DockBuilderCopyWindowSettings(src_window_name, dst_window_name); } } - // Anything else in the source nodes of 'node_remap_pairs' are windows that were docked in src_dockspace_id but are not owned by it (unaffiliated windows, e.g. "ImGui Demo") + // Anything else in the source nodes of 'node_remap_pairs' are windows that are not included in the remapping list. // Find those windows and move to them to the cloned dock node. This may be optional? + // Dock those are a second step as undocking would invalidate source dock nodes. + struct DockRemainingWindowTask { ImGuiWindow* Window; ImGuiID DockId; DockRemainingWindowTask(ImGuiWindow* window, ImGuiID dock_id) { Window = window; DockId = dock_id; } }; + ImVector dock_remaining_windows; for (int dock_remap_n = 0; dock_remap_n < node_remap_pairs.Size; dock_remap_n += 2) if (ImGuiID src_dock_id = node_remap_pairs[dock_remap_n]) { @@ -17011,10 +18339,12 @@ void ImGui::DockBuilderCopyDockSpace(ImGuiID src_dockspace_id, ImGuiID dst_docks continue; // Docked windows gets redocked into the new node hierarchy. - IMGUI_DEBUG_LOG_DOCKING("Remap window '%s' %08X -> %08X\n", window->Name, src_dock_id, dst_dock_id); - DockBuilderDockWindow(window->Name, dst_dock_id); + IMGUI_DEBUG_LOG_DOCKING("[docking] Remap window '%s' %08X -> %08X\n", window->Name, src_dock_id, dst_dock_id); + dock_remaining_windows.push_back(DockRemainingWindowTask(window, dst_dock_id)); } } + for (const DockRemainingWindowTask& task : dock_remaining_windows) + DockBuilderDockWindow(task.Window->Name, task.DockId); } // FIXME-DOCK: This is awkward because in series of split user is likely to loose access to its root node. @@ -17293,17 +18623,19 @@ void ImGui::BeginDockableDragDropTarget(ImGuiWindow* window) const bool do_preview = payload->IsPreview() || payload->IsDelivery(); if (do_preview && (node != NULL || dock_into_floating_window)) { + // If we have a non-leaf node it means we are hovering the border of a parent node, in which case only outer markers will appear. ImGuiDockPreviewData split_inner; ImGuiDockPreviewData split_outer; ImGuiDockPreviewData* split_data = &split_inner; - if (node && (node->ParentNode || node->IsCentralNode())) + if (node && (node->ParentNode || node->IsCentralNode() || !node->IsLeafNode())) if (ImGuiDockNode* root_node = DockNodeGetRootNode(node)) { - DockNodePreviewDockSetup(window, root_node, payload_window, &split_outer, is_explicit_target, true); + DockNodePreviewDockSetup(window, root_node, payload_window, NULL, &split_outer, is_explicit_target, true); if (split_outer.IsSplitDirExplicit) split_data = &split_outer; } - DockNodePreviewDockSetup(window, node, payload_window, &split_inner, is_explicit_target, false); + if (!node || node->IsLeafNode()) + DockNodePreviewDockSetup(window, node, payload_window, NULL, &split_inner, is_explicit_target, false); if (split_data == &split_outer) split_inner.IsDropAllowed = false; @@ -17335,7 +18667,7 @@ void ImGui::BeginDockableDragDropTarget(ImGuiWindow* window) static void ImGui::DockSettingsRenameNodeReferences(ImGuiID old_node_id, ImGuiID new_node_id) { ImGuiContext& g = *GImGui; - IMGUI_DEBUG_LOG_DOCKING("DockSettingsRenameNodeReferences: from 0x%08X -> to 0x%08X\n", old_node_id, new_node_id); + IMGUI_DEBUG_LOG_DOCKING("[docking] DockSettingsRenameNodeReferences: from 0x%08X -> to 0x%08X\n", old_node_id, new_node_id); for (int window_n = 0; window_n < g.Windows.Size; window_n++) { ImGuiWindow* window = g.Windows[window_n]; @@ -17556,9 +18888,9 @@ static void ImGui::DockSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettings // Win32 clipboard implementation // We use g.ClipboardHandlerData for temporary storage to ensure it is freed on Shutdown() -static const char* GetClipboardTextFn_DefaultImpl(void*) +static const char* GetClipboardTextFn_DefaultImpl(void* user_data_ctx) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *(ImGuiContext*)user_data_ctx; g.ClipboardHandlerData.clear(); if (!::OpenClipboard(NULL)) return NULL; @@ -17619,8 +18951,9 @@ static void SetClipboardTextFn_DefaultImpl(void*, const char* text) } } -static const char* GetClipboardTextFn_DefaultImpl(void*) +static const char* GetClipboardTextFn_DefaultImpl(void* user_data_ctx) { + ImGuiContext& g = *(ImGuiContext*)user_data_ctx; if (!main_clipboard) PasteboardCreate(kPasteboardClipboard, &main_clipboard); PasteboardSynchronize(main_clipboard); @@ -17638,7 +18971,6 @@ static const char* GetClipboardTextFn_DefaultImpl(void*) CFDataRef cf_data; if (PasteboardCopyItemFlavorData(main_clipboard, item_id, CFSTR("public.utf8-plain-text"), &cf_data) == noErr) { - ImGuiContext& g = *GImGui; g.ClipboardHandlerData.clear(); int length = (int)CFDataGetLength(cf_data); g.ClipboardHandlerData.resize(length + 1); @@ -17655,15 +18987,15 @@ static const char* GetClipboardTextFn_DefaultImpl(void*) #else // Local Dear ImGui-only clipboard implementation, if user hasn't defined better clipboard handlers. -static const char* GetClipboardTextFn_DefaultImpl(void*) +static const char* GetClipboardTextFn_DefaultImpl(void* user_data_ctx) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *(ImGuiContext*)user_data_ctx; return g.ClipboardHandlerData.empty() ? NULL : g.ClipboardHandlerData.begin(); } -static void SetClipboardTextFn_DefaultImpl(void*, const char* text) +static void SetClipboardTextFn_DefaultImpl(void* user_data_ctx, const char* text) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *(ImGuiContext*)user_data_ctx; g.ClipboardHandlerData.clear(); const char* text_end = text + strlen(text); g.ClipboardHandlerData.resize((int)(text_end - text) + 1); @@ -17685,15 +19017,10 @@ static void SetPlatformImeDataFn_DefaultImpl(ImGuiViewport* viewport, ImGuiPlatf { // Notify OS Input Method Editor of text input position HWND hwnd = (HWND)viewport->PlatformHandleRaw; -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - if (hwnd == 0) - hwnd = (HWND)ImGui::GetIO().ImeWindowHandle; -#endif if (hwnd == 0) return; - ::ImmAssociateContextEx(hwnd, NULL, data->WantVisible ? IACE_DEFAULT : 0); - + //::ImmAssociateContextEx(hwnd, NULL, data->WantVisible ? IACE_DEFAULT : 0); if (HIMC himc = ::ImmGetContext(hwnd)) { COMPOSITIONFORM composition_form = {}; @@ -17740,7 +19067,7 @@ static void SetPlatformImeDataFn_DefaultImpl(ImGuiViewport*, ImGuiPlatformImeDat // - DebugNodeWindowsListByBeginStackParent() [Internal] //----------------------------------------------------------------------------- -#ifndef IMGUI_DISABLE_METRICS_WINDOW +#ifndef IMGUI_DISABLE_DEBUG_TOOLS void ImGui::DebugRenderViewportThumbnail(ImDrawList* draw_list, ImGuiViewportP* viewport, const ImRect& bb) { @@ -17749,7 +19076,7 @@ void ImGui::DebugRenderViewportThumbnail(ImDrawList* draw_list, ImGuiViewportP* ImVec2 scale = bb.GetSize() / viewport->Size; ImVec2 off = bb.Min - viewport->Pos * scale; - float alpha_mul = (viewport->Flags & ImGuiViewportFlags_Minimized) ? 0.30f : 1.00f; + float alpha_mul = (viewport->Flags & ImGuiViewportFlags_IsMinimized) ? 0.30f : 1.00f; window->DrawList->AddRectFilled(bb.Min, bb.Max, ImGui::GetColorU32(ImGuiCol_Border, alpha_mul * 0.40f)); for (int i = 0; i != g.Windows.Size; i++) { @@ -17795,18 +19122,67 @@ static void RenderViewportsThumbnails() ImGui::Dummy(bb_full.GetSize() * SCALE); } -static int IMGUI_CDECL ViewportComparerByFrontMostStampCount(const void* lhs, const void* rhs) +static int IMGUI_CDECL ViewportComparerByLastFocusedStampCount(const void* lhs, const void* rhs) { const ImGuiViewportP* a = *(const ImGuiViewportP* const*)lhs; const ImGuiViewportP* b = *(const ImGuiViewportP* const*)rhs; - return b->LastFrontMostStampCount - a->LastFrontMostStampCount; + return b->LastFocusedStampCount - a->LastFocusedStampCount; +} + +// Draw an arbitrary US keyboard layout to visualize translated keys +void ImGui::DebugRenderKeyboardPreview(ImDrawList* draw_list) +{ + const ImVec2 key_size = ImVec2(35.0f, 35.0f); + const float key_rounding = 3.0f; + const ImVec2 key_face_size = ImVec2(25.0f, 25.0f); + const ImVec2 key_face_pos = ImVec2(5.0f, 3.0f); + const float key_face_rounding = 2.0f; + const ImVec2 key_label_pos = ImVec2(7.0f, 4.0f); + const ImVec2 key_step = ImVec2(key_size.x - 1.0f, key_size.y - 1.0f); + const float key_row_offset = 9.0f; + + ImVec2 board_min = GetCursorScreenPos(); + ImVec2 board_max = ImVec2(board_min.x + 3 * key_step.x + 2 * key_row_offset + 10.0f, board_min.y + 3 * key_step.y + 10.0f); + ImVec2 start_pos = ImVec2(board_min.x + 5.0f - key_step.x, board_min.y); + + struct KeyLayoutData { int Row, Col; const char* Label; ImGuiKey Key; }; + const KeyLayoutData keys_to_display[] = + { + { 0, 0, "", ImGuiKey_Tab }, { 0, 1, "Q", ImGuiKey_Q }, { 0, 2, "W", ImGuiKey_W }, { 0, 3, "E", ImGuiKey_E }, { 0, 4, "R", ImGuiKey_R }, + { 1, 0, "", ImGuiKey_CapsLock }, { 1, 1, "A", ImGuiKey_A }, { 1, 2, "S", ImGuiKey_S }, { 1, 3, "D", ImGuiKey_D }, { 1, 4, "F", ImGuiKey_F }, + { 2, 0, "", ImGuiKey_LeftShift },{ 2, 1, "Z", ImGuiKey_Z }, { 2, 2, "X", ImGuiKey_X }, { 2, 3, "C", ImGuiKey_C }, { 2, 4, "V", ImGuiKey_V } + }; + + // Elements rendered manually via ImDrawList API are not clipped automatically. + // While not strictly necessary, here IsItemVisible() is used to avoid rendering these shapes when they are out of view. + Dummy(board_max - board_min); + if (!IsItemVisible()) + return; + draw_list->PushClipRect(board_min, board_max, true); + for (int n = 0; n < IM_ARRAYSIZE(keys_to_display); n++) + { + const KeyLayoutData* key_data = &keys_to_display[n]; + ImVec2 key_min = ImVec2(start_pos.x + key_data->Col * key_step.x + key_data->Row * key_row_offset, start_pos.y + key_data->Row * key_step.y); + ImVec2 key_max = key_min + key_size; + draw_list->AddRectFilled(key_min, key_max, IM_COL32(204, 204, 204, 255), key_rounding); + draw_list->AddRect(key_min, key_max, IM_COL32(24, 24, 24, 255), key_rounding); + ImVec2 face_min = ImVec2(key_min.x + key_face_pos.x, key_min.y + key_face_pos.y); + ImVec2 face_max = ImVec2(face_min.x + key_face_size.x, face_min.y + key_face_size.y); + draw_list->AddRect(face_min, face_max, IM_COL32(193, 193, 193, 255), key_face_rounding, ImDrawFlags_None, 2.0f); + draw_list->AddRectFilled(face_min, face_max, IM_COL32(252, 252, 252, 255), key_face_rounding); + ImVec2 label_min = ImVec2(key_min.x + key_label_pos.x, key_min.y + key_label_pos.y); + draw_list->AddText(label_min, IM_COL32(64, 64, 64, 255), key_data->Label); + if (IsKeyDown(key_data->Key)) + draw_list->AddRectFilled(key_min, key_max, IM_COL32(255, 0, 0, 128), key_rounding); + } + draw_list->PopClipRect(); } // Helper tool to diagnose between text encoding issues and font loading issues. Pass your UTF-8 string and verify that there are correct. void ImGui::DebugTextEncoding(const char* str) { Text("Text: \"%s\"", str); - if (!BeginTable("list", 4, ImGuiTableFlags_Borders | ImGuiTableFlags_RowBg | ImGuiTableFlags_SizingFixedFit)) + if (!BeginTable("##DebugTextEncoding", 4, ImGuiTableFlags_Borders | ImGuiTableFlags_RowBg | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_Resizable)) return; TableSetupColumn("Offset"); TableSetupColumn("UTF-8"); @@ -17842,9 +19218,8 @@ void ImGui::DebugTextEncoding(const char* str) static void MetricsHelpMarker(const char* desc) { ImGui::TextDisabled("(?)"); - if (ImGui::IsItemHovered()) + if (ImGui::IsItemHovered(ImGuiHoveredFlags_DelayShort) && ImGui::BeginTooltip()) { - ImGui::BeginTooltip(); ImGui::PushTextWrapPos(ImGui::GetFontSize() * 35.0f); ImGui::TextUnformatted(desc); ImGui::PopTextWrapPos(); @@ -17862,10 +19237,13 @@ void ImGui::ShowFontAtlas(ImFontAtlas* atlas) DebugNodeFont(font); PopID(); } - if (TreeNode("Atlas texture", "Atlas texture (%dx%d pixels)", atlas->TexWidth, atlas->TexHeight)) + if (TreeNode("Font Atlas", "Font Atlas (%dx%d pixels)", atlas->TexWidth, atlas->TexHeight)) { - ImVec4 tint_col = ImVec4(1.0f, 1.0f, 1.0f, 1.0f); - ImVec4 border_col = ImVec4(1.0f, 1.0f, 1.0f, 0.5f); + ImGuiContext& g = *GImGui; + ImGuiMetricsConfig* cfg = &g.DebugMetricsConfig; + Checkbox("Tint with Text Color", &cfg->ShowAtlasTintedWithTextColor); // Using text color ensure visibility of core atlas data, but will alter custom colored icons + ImVec4 tint_col = cfg->ShowAtlasTintedWithTextColor ? GetStyleColorVec4(ImGuiCol_Text) : ImVec4(1.0f, 1.0f, 1.0f, 1.0f); + ImVec4 border_col = GetStyleColorVec4(ImGuiCol_Border); Image(atlas->TexID, ImVec2((float)atlas->TexWidth, (float)atlas->TexHeight), ImVec2(0.0f, 0.0f), ImVec2(1.0f, 1.0f), tint_col, border_col); TreePop(); } @@ -17876,6 +19254,8 @@ void ImGui::ShowMetricsWindow(bool* p_open) ImGuiContext& g = *GImGui; ImGuiIO& io = g.IO; ImGuiMetricsConfig* cfg = &g.DebugMetricsConfig; + if (cfg->ShowDebugLog) + ShowDebugLogWindow(&cfg->ShowDebugLog); if (cfg->ShowStackTool) ShowStackToolWindow(&cfg->ShowStackTool); @@ -17920,8 +19300,8 @@ void ImGui::ShowMetricsWindow(bool* p_open) else if (rect_type == TRT_ColumnsClipRect) { ImGuiTableColumn* c = &table->Columns[n]; return c->ClipRect; } else if (rect_type == TRT_ColumnsContentHeadersUsed){ ImGuiTableColumn* c = &table->Columns[n]; return ImRect(c->WorkMinX, table->InnerClipRect.Min.y, c->ContentMaxXHeadersUsed, table->InnerClipRect.Min.y + table_instance->LastFirstRowHeight); } // Note: y1/y2 not always accurate else if (rect_type == TRT_ColumnsContentHeadersIdeal){ImGuiTableColumn* c = &table->Columns[n]; return ImRect(c->WorkMinX, table->InnerClipRect.Min.y, c->ContentMaxXHeadersIdeal, table->InnerClipRect.Min.y + table_instance->LastFirstRowHeight); } - else if (rect_type == TRT_ColumnsContentFrozen) { ImGuiTableColumn* c = &table->Columns[n]; return ImRect(c->WorkMinX, table->InnerClipRect.Min.y, c->ContentMaxXFrozen, table->InnerClipRect.Min.y + table_instance->LastFirstRowHeight); } - else if (rect_type == TRT_ColumnsContentUnfrozen) { ImGuiTableColumn* c = &table->Columns[n]; return ImRect(c->WorkMinX, table->InnerClipRect.Min.y + table_instance->LastFirstRowHeight, c->ContentMaxXUnfrozen, table->InnerClipRect.Max.y); } + else if (rect_type == TRT_ColumnsContentFrozen) { ImGuiTableColumn* c = &table->Columns[n]; return ImRect(c->WorkMinX, table->InnerClipRect.Min.y, c->ContentMaxXFrozen, table->InnerClipRect.Min.y + table_instance->LastFrozenHeight); } + else if (rect_type == TRT_ColumnsContentUnfrozen) { ImGuiTableColumn* c = &table->Columns[n]; return ImRect(c->WorkMinX, table->InnerClipRect.Min.y + table_instance->LastFrozenHeight, c->ContentMaxXUnfrozen, table->InnerClipRect.Max.y); } IM_ASSERT(0); return ImRect(); } @@ -17957,8 +19337,19 @@ void ImGui::ShowMetricsWindow(bool* p_open) TreePop(); } + // The Item Picker tool is super useful to visually select an item and break into the call-stack of where it was submitted. + if (Checkbox("Show Item Picker", &g.DebugItemPickerActive) && g.DebugItemPickerActive) + DebugStartItemPicker(); + SameLine(); + MetricsHelpMarker("Will call the IM_DEBUG_BREAK() macro to break in debugger.\nWarning: If you don't have a debugger attached, this will probably crash."); + // Stack Tool is your best friend! - Checkbox("Show stack tool", &cfg->ShowStackTool); + Checkbox("Show Debug Log", &cfg->ShowDebugLog); + SameLine(); + MetricsHelpMarker("You can also call ImGui::ShowDebugLogWindow() from your code."); + + // Stack Tool is your best friend! + Checkbox("Show Stack Tool", &cfg->ShowStackTool); SameLine(); MetricsHelpMarker("You can also call ImGui::ShowStackToolWindow() from your code."); @@ -18024,11 +19415,9 @@ void ImGui::ShowMetricsWindow(bool* p_open) } } - // The Item Picker tool is super useful to visually select an item and break into the call-stack of where it was submitted. - if (Button("Item Picker..")) - DebugStartItemPicker(); + Checkbox("Debug Begin/BeginChild return value", &io.ConfigDebugBeginReturnValueLoop); SameLine(); - MetricsHelpMarker("Will call the IM_DEBUG_BREAK() macro to break in debugger.\nWarning: If you don't have a debugger attached, this will probably crash."); + MetricsHelpMarker("Some calls to Begin()/BeginChild() will return false.\n\nWill cycle through window depths then repeat. Windows should be flickering while running."); TreePop(); } @@ -18110,12 +19499,14 @@ void ImGui::ShowMetricsWindow(bool* p_open) viewports.resize(g.Viewports.Size); memcpy(viewports.Data, g.Viewports.Data, g.Viewports.size_in_bytes()); if (viewports.Size > 1) - ImQsort(viewports.Data, viewports.Size, sizeof(ImGuiViewport*), ViewportComparerByFrontMostStampCount); - for (int i = 0; i < viewports.Size; i++) - BulletText("Viewport #%d, ID: 0x%08X, FrontMostStampCount = %08d, Window: \"%s\"", viewports[i]->Idx, viewports[i]->ID, viewports[i]->LastFrontMostStampCount, viewports[i]->Window ? viewports[i]->Window->Name : "N/A"); + ImQsort(viewports.Data, viewports.Size, sizeof(ImGuiViewport*), ViewportComparerByLastFocusedStampCount); + for (ImGuiViewportP* viewport : viewports) + BulletText("Viewport #%d, ID: 0x%08X, LastFocused = %08d, PlatformFocused = %s, Window: \"%s\"", + viewport->Idx, viewport->ID, viewport->LastFocusedStampCount, + (g.PlatformIO.Platform_GetWindowFocus && viewport->PlatformWindowCreated) ? (g.PlatformIO.Platform_GetWindowFocus(viewport) ? "1" : "0") : "N/A", + viewport->Window ? viewport->Window->Name : "N/A"); TreePop(); } - for (int i = 0; i < g.Viewports.Size; i++) DebugNodeViewport(g.Viewports[i]); TreePop(); @@ -18126,8 +19517,12 @@ void ImGui::ShowMetricsWindow(bool* p_open) { for (int i = 0; i < g.OpenPopupStack.Size; i++) { - ImGuiWindow* window = g.OpenPopupStack[i].Window; - BulletText("PopupID: %08x, Window: '%s'%s%s", g.OpenPopupStack[i].PopupId, window ? window->Name : "NULL", window && (window->Flags & ImGuiWindowFlags_ChildWindow) ? " ChildWindow" : "", window && (window->Flags & ImGuiWindowFlags_ChildMenu) ? " ChildMenu" : ""); + // As it's difficult to interact with tree nodes while popups are open, we display everything inline. + const ImGuiPopupData* popup_data = &g.OpenPopupStack[i]; + ImGuiWindow* window = popup_data->Window; + BulletText("PopupID: %08x, Window: '%s' (%s%s), BackupNavWindow '%s', ParentWindow '%s'", + popup_data->PopupId, window ? window->Name : "NULL", window && (window->Flags & ImGuiWindowFlags_ChildWindow) ? "Child;" : "", window && (window->Flags & ImGuiWindowFlags_ChildMenu) ? "Menu;" : "", + popup_data->BackupNavWindow ? popup_data->BackupNavWindow->Name : "NULL", window && window->ParentWindow ? window->ParentWindow->Name : "NULL"); } TreePop(); } @@ -18162,6 +19557,13 @@ void ImGui::ShowMetricsWindow(bool* p_open) TreePop(); } + // Details for InputText + if (TreeNode("InputText")) + { + DebugNodeInputTextState(&g.InputTextState); + TreePop(); + } + // Details for Docking #ifdef IMGUI_HAS_DOCK if (TreeNode("Docking")) @@ -18235,7 +19637,7 @@ void ImGui::ShowMetricsWindow(bool* p_open) { if (ImGuiWindow* window = FindWindowByID(settings->SelectedTabId)) selected_tab_name = window->Name; - else if (ImGuiWindowSettings* window_settings = FindWindowSettings(settings->SelectedTabId)) + else if (ImGuiWindowSettings* window_settings = FindWindowSettingsByID(settings->SelectedTabId)) selected_tab_name = window_settings->GetName(); } BulletText("Node %08X, Parent %08X, SelectedTab %08X ('%s')", settings->ID, settings->ParentNodeId, settings->SelectedTabId, selected_tab_name ? selected_tab_name : settings->SelectedTabId ? "N/A" : ""); @@ -18252,7 +19654,99 @@ void ImGui::ShowMetricsWindow(bool* p_open) TreePop(); } - // Misc Details + if (TreeNode("Inputs")) + { + Text("KEYBOARD/GAMEPAD/MOUSE KEYS"); + { + // We iterate both legacy native range and named ImGuiKey ranges, which is a little odd but this allows displaying the data for old/new backends. + // User code should never have to go through such hoops! You can generally iterate between ImGuiKey_NamedKey_BEGIN and ImGuiKey_NamedKey_END. + Indent(); +#ifdef IMGUI_DISABLE_OBSOLETE_KEYIO + struct funcs { static bool IsLegacyNativeDupe(ImGuiKey) { return false; } }; +#else + struct funcs { static bool IsLegacyNativeDupe(ImGuiKey key) { return key < 512 && GetIO().KeyMap[key] != -1; } }; // Hide Native<>ImGuiKey duplicates when both exists in the array + //Text("Legacy raw:"); for (ImGuiKey key = ImGuiKey_KeysData_OFFSET; key < ImGuiKey_COUNT; key++) { if (io.KeysDown[key]) { SameLine(); Text("\"%s\" %d", GetKeyName(key), key); } } +#endif + Text("Keys down:"); for (ImGuiKey key = ImGuiKey_KeysData_OFFSET; key < ImGuiKey_COUNT; key = (ImGuiKey)(key + 1)) { if (funcs::IsLegacyNativeDupe(key) || !IsKeyDown(key)) continue; SameLine(); Text(IsNamedKey(key) ? "\"%s\"" : "\"%s\" %d", GetKeyName(key), key); SameLine(); Text("(%.02f)", GetKeyData(key)->DownDuration); } + Text("Keys pressed:"); for (ImGuiKey key = ImGuiKey_KeysData_OFFSET; key < ImGuiKey_COUNT; key = (ImGuiKey)(key + 1)) { if (funcs::IsLegacyNativeDupe(key) || !IsKeyPressed(key)) continue; SameLine(); Text(IsNamedKey(key) ? "\"%s\"" : "\"%s\" %d", GetKeyName(key), key); } + Text("Keys released:"); for (ImGuiKey key = ImGuiKey_KeysData_OFFSET; key < ImGuiKey_COUNT; key = (ImGuiKey)(key + 1)) { if (funcs::IsLegacyNativeDupe(key) || !IsKeyReleased(key)) continue; SameLine(); Text(IsNamedKey(key) ? "\"%s\"" : "\"%s\" %d", GetKeyName(key), key); } + Text("Keys mods: %s%s%s%s", io.KeyCtrl ? "CTRL " : "", io.KeyShift ? "SHIFT " : "", io.KeyAlt ? "ALT " : "", io.KeySuper ? "SUPER " : ""); + Text("Chars queue:"); for (int i = 0; i < io.InputQueueCharacters.Size; i++) { ImWchar c = io.InputQueueCharacters[i]; SameLine(); Text("\'%c\' (0x%04X)", (c > ' ' && c <= 255) ? (char)c : '?', c); } // FIXME: We should convert 'c' to UTF-8 here but the functions are not public. + DebugRenderKeyboardPreview(GetWindowDrawList()); + Unindent(); + } + + Text("MOUSE STATE"); + { + Indent(); + if (IsMousePosValid()) + Text("Mouse pos: (%g, %g)", io.MousePos.x, io.MousePos.y); + else + Text("Mouse pos: "); + Text("Mouse delta: (%g, %g)", io.MouseDelta.x, io.MouseDelta.y); + int count = IM_ARRAYSIZE(io.MouseDown); + Text("Mouse down:"); for (int i = 0; i < count; i++) if (IsMouseDown(i)) { SameLine(); Text("b%d (%.02f secs)", i, io.MouseDownDuration[i]); } + Text("Mouse clicked:"); for (int i = 0; i < count; i++) if (IsMouseClicked(i)) { SameLine(); Text("b%d (%d)", i, io.MouseClickedCount[i]); } + Text("Mouse released:"); for (int i = 0; i < count; i++) if (IsMouseReleased(i)) { SameLine(); Text("b%d", i); } + Text("Mouse wheel: %.1f", io.MouseWheel); + Text("Mouse source: %s", GetMouseSourceName(io.MouseSource)); + Text("Pen Pressure: %.1f", io.PenPressure); // Note: currently unused + Unindent(); + } + + Text("MOUSE WHEELING"); + { + Indent(); + Text("WheelingWindow: '%s'", g.WheelingWindow ? g.WheelingWindow->Name : "NULL"); + Text("WheelingWindowReleaseTimer: %.2f", g.WheelingWindowReleaseTimer); + Text("WheelingAxisAvg[] = { %.3f, %.3f }, Main Axis: %s", g.WheelingAxisAvg.x, g.WheelingAxisAvg.y, (g.WheelingAxisAvg.x > g.WheelingAxisAvg.y) ? "X" : (g.WheelingAxisAvg.x < g.WheelingAxisAvg.y) ? "Y" : ""); + Unindent(); + } + + Text("KEY OWNERS"); + { + Indent(); + if (BeginListBox("##owners", ImVec2(-FLT_MIN, GetTextLineHeightWithSpacing() * 6))) + { + for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) + { + ImGuiKeyOwnerData* owner_data = GetKeyOwnerData(&g, key); + if (owner_data->OwnerCurr == ImGuiKeyOwner_None) + continue; + Text("%s: 0x%08X%s", GetKeyName(key), owner_data->OwnerCurr, + owner_data->LockUntilRelease ? " LockUntilRelease" : owner_data->LockThisFrame ? " LockThisFrame" : ""); + DebugLocateItemOnHover(owner_data->OwnerCurr); + } + EndListBox(); + } + Unindent(); + } + Text("SHORTCUT ROUTING"); + { + Indent(); + if (BeginListBox("##routes", ImVec2(-FLT_MIN, GetTextLineHeightWithSpacing() * 6))) + { + for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) + { + ImGuiKeyRoutingTable* rt = &g.KeysRoutingTable; + for (ImGuiKeyRoutingIndex idx = rt->Index[key - ImGuiKey_NamedKey_BEGIN]; idx != -1; ) + { + char key_chord_name[64]; + ImGuiKeyRoutingData* routing_data = &rt->Entries[idx]; + GetKeyChordName(key | routing_data->Mods, key_chord_name, IM_ARRAYSIZE(key_chord_name)); + Text("%s: 0x%08X", key_chord_name, routing_data->RoutingCurr); + DebugLocateItemOnHover(routing_data->RoutingCurr); + idx = routing_data->NextEntryIndex; + } + } + EndListBox(); + } + Text("(ActiveIdUsing: AllKeyboardKeys: %d, NavDirMask: 0x%X)", g.ActiveIdUsingAllKeyboardKeys, g.ActiveIdUsingNavDirMask); + Unindent(); + } + TreePop(); + } + if (TreeNode("Internal state")) { Text("WINDOWING"); @@ -18260,7 +19754,7 @@ void ImGui::ShowMetricsWindow(bool* p_open) Text("HoveredWindow: '%s'", g.HoveredWindow ? g.HoveredWindow->Name : "NULL"); Text("HoveredWindow->Root: '%s'", g.HoveredWindow ? g.HoveredWindow->RootWindowDockTree->Name : "NULL"); Text("HoveredWindowUnderMovingWindow: '%s'", g.HoveredWindowUnderMovingWindow ? g.HoveredWindowUnderMovingWindow->Name : "NULL"); - Text("HoveredDockNode: 0x%08X", g.HoveredDockNode ? g.HoveredDockNode->ID : 0); + Text("HoveredDockNode: 0x%08X", g.DebugHoveredDockNode ? g.DebugHoveredDockNode->ID : 0); Text("MovingWindow: '%s'", g.MovingWindow ? g.MovingWindow->Name : "NULL"); Text("MouseViewport: 0x%08X (UserHovered 0x%08X, LastHovered 0x%08X)", g.MouseViewport->ID, g.IO.MouseHoveredViewport, g.MouseLastHoveredViewport ? g.MouseLastHoveredViewport->ID : 0); Unindent(); @@ -18268,23 +19762,23 @@ void ImGui::ShowMetricsWindow(bool* p_open) Text("ITEMS"); Indent(); Text("ActiveId: 0x%08X/0x%08X (%.2f sec), AllowOverlap: %d, Source: %s", g.ActiveId, g.ActiveIdPreviousFrame, g.ActiveIdTimer, g.ActiveIdAllowOverlap, GetInputSourceName(g.ActiveIdSource)); + DebugLocateItemOnHover(g.ActiveId); Text("ActiveIdWindow: '%s'", g.ActiveIdWindow ? g.ActiveIdWindow->Name : "NULL"); - - int active_id_using_key_input_count = 0; - for (int n = ImGuiKey_NamedKey_BEGIN; n < ImGuiKey_NamedKey_END; n++) - active_id_using_key_input_count += g.ActiveIdUsingKeyInputMask[n] ? 1 : 0; - Text("ActiveIdUsing: Wheel: %d, NavDirMask: %X, NavInputMask: %X, KeyInputMask: %d key(s)", g.ActiveIdUsingMouseWheel, g.ActiveIdUsingNavDirMask, g.ActiveIdUsingNavInputMask, active_id_using_key_input_count); + Text("ActiveIdUsing: AllKeyboardKeys: %d, NavDirMask: %X", g.ActiveIdUsingAllKeyboardKeys, g.ActiveIdUsingNavDirMask); Text("HoveredId: 0x%08X (%.2f sec), AllowOverlap: %d", g.HoveredIdPreviousFrame, g.HoveredIdTimer, g.HoveredIdAllowOverlap); // Not displaying g.HoveredId as it is update mid-frame + Text("HoverDelayId: 0x%08X, Timer: %.2f, ClearTimer: %.2f", g.HoverDelayId, g.HoverDelayTimer, g.HoverDelayClearTimer); Text("DragDrop: %d, SourceId = 0x%08X, Payload \"%s\" (%d bytes)", g.DragDropActive, g.DragDropPayload.SourceId, g.DragDropPayload.DataType, g.DragDropPayload.DataSize); + DebugLocateItemOnHover(g.DragDropPayload.SourceId); Unindent(); Text("NAV,FOCUS"); Indent(); Text("NavWindow: '%s'", g.NavWindow ? g.NavWindow->Name : "NULL"); Text("NavId: 0x%08X, NavLayer: %d", g.NavId, g.NavLayer); + DebugLocateItemOnHover(g.NavId); Text("NavInputSource: %s", GetInputSourceName(g.NavInputSource)); Text("NavActive: %d, NavVisible: %d", g.IO.NavActive, g.IO.NavVisible); - Text("NavActivateId/DownId/PressedId/InputId: %08X/%08X/%08X/%08X", g.NavActivateId, g.NavActivateDownId, g.NavActivatePressedId, g.NavActivateInputId); + Text("NavActivateId/DownId/PressedId: %08X/%08X/%08X", g.NavActivateId, g.NavActivateDownId, g.NavActivatePressedId); Text("NavActivateFlags: %04X", g.NavActivateFlags); Text("NavDisableHighlight: %d, NavDisableMouseHover: %d", g.NavDisableHighlight, g.NavDisableMouseHover); Text("NavFocusScopeId = 0x%08X", g.NavFocusScopeId); @@ -18348,11 +19842,11 @@ void ImGui::ShowMetricsWindow(bool* p_open) #ifdef IMGUI_HAS_DOCK // Overlay: Display Docking info - if (cfg->ShowDockingNodes && g.IO.KeyCtrl && g.HoveredDockNode) + if (cfg->ShowDockingNodes && g.IO.KeyCtrl && g.DebugHoveredDockNode) { char buf[64] = ""; char* p = buf; - ImGuiDockNode* node = g.HoveredDockNode; + ImGuiDockNode* node = g.DebugHoveredDockNode; ImDrawList* overlay_draw_list = node->HostWindow ? GetForegroundDrawList(node->HostWindow) : GetForegroundDrawList(GetMainViewport()); p += ImFormatString(p, buf + IM_ARRAYSIZE(buf) - p, "DockId: %X%s\n", node->ID, node->IsCentralNode() ? " *CentralNode*" : ""); p += ImFormatString(p, buf + IM_ARRAYSIZE(buf) - p, "WindowClass: %08X\n", node->WindowClass.ClassId); @@ -18416,10 +19910,11 @@ void ImGui::DebugNodeDockNode(ImGuiDockNode* node, const char* label) const bool is_active = (g.FrameCount - node->LastFrameActive < 2); // Submitted if (!is_alive) { PushStyleColor(ImGuiCol_Text, GetStyleColorVec4(ImGuiCol_TextDisabled)); } bool open; + ImGuiTreeNodeFlags tree_node_flags = node->IsFocused ? ImGuiTreeNodeFlags_Selected : ImGuiTreeNodeFlags_None; if (node->Windows.Size > 0) - open = TreeNode((void*)(intptr_t)node->ID, "%s 0x%04X%s: %d windows (vis: '%s')", label, node->ID, node->IsVisible ? "" : " (hidden)", node->Windows.Size, node->VisibleWindow ? node->VisibleWindow->Name : "NULL"); + open = TreeNodeEx((void*)(intptr_t)node->ID, tree_node_flags, "%s 0x%04X%s: %d windows (vis: '%s')", label, node->ID, node->IsVisible ? "" : " (hidden)", node->Windows.Size, node->VisibleWindow ? node->VisibleWindow->Name : "NULL"); else - open = TreeNode((void*)(intptr_t)node->ID, "%s 0x%04X%s: %s split (vis: '%s')", label, node->ID, node->IsVisible ? "" : " (hidden)", (node->SplitAxis == ImGuiAxis_X) ? "horizontal" : (node->SplitAxis == ImGuiAxis_Y) ? "vertical" : "n/a", node->VisibleWindow ? node->VisibleWindow->Name : "NULL"); + open = TreeNodeEx((void*)(intptr_t)node->ID, tree_node_flags, "%s 0x%04X%s: %s (vis: '%s')", label, node->ID, node->IsVisible ? "" : " (hidden)", (node->SplitAxis == ImGuiAxis_X) ? "horizontal split" : (node->SplitAxis == ImGuiAxis_Y) ? "vertical split" : "empty", node->VisibleWindow ? node->VisibleWindow->Name : "NULL"); if (!is_alive) { PopStyleColor(); } if (is_active && IsItemHovered()) if (ImGuiWindow* window = node->HostWindow ? node->HostWindow : node->VisibleWindow) @@ -18433,10 +19928,10 @@ void ImGui::DebugNodeDockNode(ImGuiDockNode* node, const char* label) DebugNodeWindow(node->HostWindow, "HostWindow"); DebugNodeWindow(node->VisibleWindow, "VisibleWindow"); BulletText("SelectedTabID: 0x%08X, LastFocusedNodeID: 0x%08X", node->SelectedTabId, node->LastFocusedNodeId); - BulletText("Misc:%s%s%s%s%s%s", + BulletText("Misc:%s%s%s%s%s%s%s", node->IsDockSpace() ? " IsDockSpace" : "", node->IsCentralNode() ? " IsCentralNode" : "", - is_alive ? " IsAlive" : "", is_active ? " IsActive" : "", + is_alive ? " IsAlive" : "", is_active ? " IsActive" : "", node->IsFocused ? " IsFocused" : "", node->WantLockSizeOnce ? " WantLockSizeOnce" : "", node->HasCentralNodeChild ? " HasCentralNodeChild" : ""); if (TreeNode("flags", "Flags Merged: 0x%04X, Local: 0x%04X, InWindows: 0x%04X, Shared: 0x%04X", node->MergedFlags, node->LocalFlags, node->LocalFlagsInWindows, node->SharedFlags)) @@ -18459,6 +19954,8 @@ void ImGui::DebugNodeDockNode(ImGuiDockNode* node, const char* label) DebugNodeDockNode(node->ChildNodes[1], "Child[1]"); if (node->TabBar) DebugNodeTabBar(node->TabBar, "TabBar"); + DebugNodeWindowsList(&node->Windows, "Windows"); + TreePop(); } } @@ -18665,9 +20162,8 @@ void ImGui::DebugNodeFont(ImFont* font) if (!glyph) continue; font->RenderChar(draw_list, cell_size, cell_p1, glyph_col, (ImWchar)(base + n)); - if (IsMouseHoveringRect(cell_p1, cell_p2)) + if (IsMouseHoveringRect(cell_p1, cell_p2) && BeginTooltip()) { - BeginTooltip(); DebugNodeFontGlyph(font, glyph); EndTooltip(); } @@ -18711,13 +20207,11 @@ void ImGui::DebugNodeTabBar(ImGuiTabBar* tab_bar, const char* label) char* p = buf; const char* buf_end = buf + IM_ARRAYSIZE(buf); const bool is_active = (tab_bar->PrevFrameVisible >= GetFrameCount() - 2); - p += ImFormatString(p, buf_end - p, "%s 0x%08X (%d tabs)%s", label, tab_bar->ID, tab_bar->Tabs.Size, is_active ? "" : " *Inactive*"); - p += ImFormatString(p, buf_end - p, " { "); + p += ImFormatString(p, buf_end - p, "%s 0x%08X (%d tabs)%s {", label, tab_bar->ID, tab_bar->Tabs.Size, is_active ? "" : " *Inactive*"); for (int tab_n = 0; tab_n < ImMin(tab_bar->Tabs.Size, 3); tab_n++) { ImGuiTabItem* tab = &tab_bar->Tabs[tab_n]; - p += ImFormatString(p, buf_end - p, "%s'%s'", - tab_n > 0 ? ", " : "", (tab->Window || tab->NameOffset != -1) ? tab_bar->GetTabName(tab) : "???"); + p += ImFormatString(p, buf_end - p, "%s'%s'", tab_n > 0 ? ", " : "", TabBarGetTabName(tab_bar, tab)); } p += ImFormatString(p, buf_end - p, (tab_bar->Tabs.Size > 3) ? " ... }" : " } "); if (!is_active) { PushStyleColor(ImGuiCol_Text, GetStyleColorVec4(ImGuiCol_TextDisabled)); } @@ -18734,12 +20228,12 @@ void ImGui::DebugNodeTabBar(ImGuiTabBar* tab_bar, const char* label) { for (int tab_n = 0; tab_n < tab_bar->Tabs.Size; tab_n++) { - const ImGuiTabItem* tab = &tab_bar->Tabs[tab_n]; + ImGuiTabItem* tab = &tab_bar->Tabs[tab_n]; PushID(tab); if (SmallButton("<")) { TabBarQueueReorder(tab_bar, tab, -1); } SameLine(0, 2); if (SmallButton(">")) { TabBarQueueReorder(tab_bar, tab, +1); } SameLine(); - Text("%02d%c Tab 0x%08X '%s' Offset: %.1f, Width: %.1f/%.1f", - tab_n, (tab->ID == tab_bar->SelectedTabId) ? '*' : ' ', tab->ID, (tab->Window || tab->NameOffset != -1) ? tab_bar->GetTabName(tab) : "???", tab->Offset, tab->Width, tab->ContentWidth); + Text("%02d%c Tab 0x%08X '%s' Offset: %.2f, Width: %.2f/%.2f", + tab_n, (tab->ID == tab_bar->SelectedTabId) ? '*' : ' ', tab->ID, TabBarGetTabName(tab_bar, tab), tab->Offset, tab->Width, tab->ContentWidth); PopID(); } TreePop(); @@ -18757,9 +20251,11 @@ void ImGui::DebugNodeViewport(ImGuiViewportP* viewport) viewport->WorkOffsetMin.x, viewport->WorkOffsetMin.y, viewport->WorkOffsetMax.x, viewport->WorkOffsetMax.y, viewport->PlatformMonitor, viewport->DpiScale * 100.0f); if (viewport->Idx > 0) { SameLine(); if (SmallButton("Reset Pos")) { viewport->Pos = ImVec2(200, 200); viewport->UpdateWorkRect(); if (viewport->Window) viewport->Window->Pos = viewport->Pos; } } - BulletText("Flags: 0x%04X =%s%s%s%s%s%s%s%s%s%s%s%s", viewport->Flags, + BulletText("Flags: 0x%04X =%s%s%s%s%s%s%s%s%s%s%s%s%s", viewport->Flags, //(flags & ImGuiViewportFlags_IsPlatformWindow) ? " IsPlatformWindow" : "", // Omitting because it is the standard (flags & ImGuiViewportFlags_IsPlatformMonitor) ? " IsPlatformMonitor" : "", + (flags & ImGuiViewportFlags_IsMinimized) ? " IsMinimized" : "", + (flags & ImGuiViewportFlags_IsFocused) ? " IsFocused" : "", (flags & ImGuiViewportFlags_OwnedByApp) ? " OwnedByApp" : "", (flags & ImGuiViewportFlags_NoDecoration) ? " NoDecoration" : "", (flags & ImGuiViewportFlags_NoTaskBarIcon) ? " NoTaskBarIcon" : "", @@ -18767,9 +20263,8 @@ void ImGui::DebugNodeViewport(ImGuiViewportP* viewport) (flags & ImGuiViewportFlags_NoFocusOnClick) ? " NoFocusOnClick" : "", (flags & ImGuiViewportFlags_NoInputs) ? " NoInputs" : "", (flags & ImGuiViewportFlags_NoRendererClear) ? " NoRendererClear" : "", - (flags & ImGuiViewportFlags_TopMost) ? " TopMost" : "", - (flags & ImGuiViewportFlags_Minimized) ? " Minimized" : "", (flags & ImGuiViewportFlags_NoAutoMerge) ? " NoAutoMerge" : "", + (flags & ImGuiViewportFlags_TopMost) ? " TopMost" : "", (flags & ImGuiViewportFlags_CanHostOtherWindows) ? " CanHostOtherWindows" : ""); for (int layer_i = 0; layer_i < IM_ARRAYSIZE(viewport->DrawDataBuilder.Layers); layer_i++) for (int draw_list_i = 0; draw_list_i < viewport->DrawDataBuilder.Layers[layer_i].Size; draw_list_i++) @@ -18816,14 +20311,14 @@ void ImGui::DebugNodeWindow(ImGuiWindow* window, const char* label) { ImRect r = window->NavRectRel[layer]; if (r.Min.x >= r.Max.y && r.Min.y >= r.Max.y) - { BulletText("NavLastIds[%d]: 0x%08X", layer, window->NavLastIds[layer]); - continue; - } - BulletText("NavLastIds[%d]: 0x%08X at +(%.1f,%.1f)(%.1f,%.1f)", layer, window->NavLastIds[layer], r.Min.x, r.Min.y, r.Max.x, r.Max.y); - if (IsItemHovered()) - GetForegroundDrawList(window)->AddRect(r.Min + window->Pos, r.Max + window->Pos, IM_COL32(255, 255, 0, 255)); + else + BulletText("NavLastIds[%d]: 0x%08X at +(%.1f,%.1f)(%.1f,%.1f)", layer, window->NavLastIds[layer], r.Min.x, r.Min.y, r.Max.x, r.Max.y); + DebugLocateItemOnHover(window->NavLastIds[layer]); } + const ImVec2* pr = window->NavPreferredScoringPosRel; + for (int layer = 0; layer < ImGuiNavLayer_COUNT; layer++) + BulletText("NavPreferredScoringPosRel[%d] = {%.1f,%.1f)", layer, (pr[layer].x == FLT_MAX ? -99999.0f : pr[layer].x), (pr[layer].y == FLT_MAX ? -99999.0f : pr[layer].y)); // Display as 99999.0f so it looks neater. BulletText("NavLayersActiveMask: %X, NavLastChildNavWindow: %s", window->DC.NavLayersActiveMask, window->NavLastChildNavWindow ? window->NavLastChildNavWindow->Name : "NULL"); BulletText("Viewport: %d%s, ViewportId: 0x%08X, ViewportPos: (%.1f,%.1f)", window->Viewport ? window->Viewport->Idx : -1, window->ViewportOwned ? " (Owned)" : "", window->ViewportId, window->ViewportPos.x, window->ViewportPos.y); @@ -18848,8 +20343,12 @@ void ImGui::DebugNodeWindow(ImGuiWindow* window, const char* label) void ImGui::DebugNodeWindowSettings(ImGuiWindowSettings* settings) { + if (settings->WantDelete) + BeginDisabled(); Text("0x%08X \"%s\" Pos (%d,%d) Size (%d,%d) Collapsed=%d", settings->ID, settings->GetName(), settings->Pos.x, settings->Pos.y, settings->Size.x, settings->Size.y, settings->Collapsed); + if (settings->WantDelete) + EndDisabled(); } void ImGui::DebugNodeWindowsList(ImVector* windows, const char* label) @@ -18883,10 +20382,127 @@ void ImGui::DebugNodeWindowsListByBeginStackParent(ImGuiWindow** windows, int wi } } +//----------------------------------------------------------------------------- +// [SECTION] DEBUG LOG WINDOW +//----------------------------------------------------------------------------- + +void ImGui::DebugLog(const char* fmt, ...) +{ + va_list args; + va_start(args, fmt); + DebugLogV(fmt, args); + va_end(args); +} + +void ImGui::DebugLogV(const char* fmt, va_list args) +{ + ImGuiContext& g = *GImGui; + const int old_size = g.DebugLogBuf.size(); + g.DebugLogBuf.appendf("[%05d] ", g.FrameCount); + g.DebugLogBuf.appendfv(fmt, args); + if (g.DebugLogFlags & ImGuiDebugLogFlags_OutputToTTY) + IMGUI_DEBUG_PRINTF("%s", g.DebugLogBuf.begin() + old_size); + g.DebugLogIndex.append(g.DebugLogBuf.c_str(), old_size, g.DebugLogBuf.size()); +} + +void ImGui::ShowDebugLogWindow(bool* p_open) +{ + ImGuiContext& g = *GImGui; + if (!(g.NextWindowData.Flags & ImGuiNextWindowDataFlags_HasSize)) + SetNextWindowSize(ImVec2(0.0f, GetFontSize() * 12.0f), ImGuiCond_FirstUseEver); + if (!Begin("Dear ImGui Debug Log", p_open) || GetCurrentWindow()->BeginCount > 1) + { + End(); + return; + } + + CheckboxFlags("All", &g.DebugLogFlags, ImGuiDebugLogFlags_EventMask_); + SameLine(); CheckboxFlags("ActiveId", &g.DebugLogFlags, ImGuiDebugLogFlags_EventActiveId); + SameLine(); CheckboxFlags("Focus", &g.DebugLogFlags, ImGuiDebugLogFlags_EventFocus); + SameLine(); CheckboxFlags("Popup", &g.DebugLogFlags, ImGuiDebugLogFlags_EventPopup); + SameLine(); CheckboxFlags("Nav", &g.DebugLogFlags, ImGuiDebugLogFlags_EventNav); + SameLine(); if (CheckboxFlags("Clipper", &g.DebugLogFlags, ImGuiDebugLogFlags_EventClipper)) { g.DebugLogClipperAutoDisableFrames = 2; } if (IsItemHovered()) SetTooltip("Clipper log auto-disabled after 2 frames"); + //SameLine(); CheckboxFlags("Selection", &g.DebugLogFlags, ImGuiDebugLogFlags_EventSelection); + SameLine(); CheckboxFlags("IO", &g.DebugLogFlags, ImGuiDebugLogFlags_EventIO); + SameLine(); CheckboxFlags("Docking", &g.DebugLogFlags, ImGuiDebugLogFlags_EventDocking); + SameLine(); CheckboxFlags("Viewport", &g.DebugLogFlags, ImGuiDebugLogFlags_EventViewport); + + if (SmallButton("Clear")) + { + g.DebugLogBuf.clear(); + g.DebugLogIndex.clear(); + } + SameLine(); + if (SmallButton("Copy")) + SetClipboardText(g.DebugLogBuf.c_str()); + BeginChild("##log", ImVec2(0.0f, 0.0f), true, ImGuiWindowFlags_AlwaysVerticalScrollbar | ImGuiWindowFlags_AlwaysHorizontalScrollbar); + + ImGuiListClipper clipper; + clipper.Begin(g.DebugLogIndex.size()); + while (clipper.Step()) + for (int line_no = clipper.DisplayStart; line_no < clipper.DisplayEnd; line_no++) + { + const char* line_begin = g.DebugLogIndex.get_line_begin(g.DebugLogBuf.c_str(), line_no); + const char* line_end = g.DebugLogIndex.get_line_end(g.DebugLogBuf.c_str(), line_no); + TextUnformatted(line_begin, line_end); + ImRect text_rect = g.LastItemData.Rect; + if (IsItemHovered()) + for (const char* p = line_begin; p <= line_end - 10; p++) + { + ImGuiID id = 0; + if (p[0] != '0' || (p[1] != 'x' && p[1] != 'X') || sscanf(p + 2, "%X", &id) != 1) + continue; + ImVec2 p0 = CalcTextSize(line_begin, p); + ImVec2 p1 = CalcTextSize(p, p + 10); + g.LastItemData.Rect = ImRect(text_rect.Min + ImVec2(p0.x, 0.0f), text_rect.Min + ImVec2(p0.x + p1.x, p1.y)); + if (IsMouseHoveringRect(g.LastItemData.Rect.Min, g.LastItemData.Rect.Max, true)) + DebugLocateItemOnHover(id); + p += 10; + } + } + if (GetScrollY() >= GetScrollMaxY()) + SetScrollHereY(1.0f); + EndChild(); + + End(); +} + //----------------------------------------------------------------------------- // [SECTION] OTHER DEBUG TOOLS (ITEM PICKER, STACK TOOL) //----------------------------------------------------------------------------- +static const ImU32 DEBUG_LOCATE_ITEM_COLOR = IM_COL32(0, 255, 0, 255); // Green + +void ImGui::DebugLocateItem(ImGuiID target_id) +{ + ImGuiContext& g = *GImGui; + g.DebugLocateId = target_id; + g.DebugLocateFrames = 2; +} + +void ImGui::DebugLocateItemOnHover(ImGuiID target_id) +{ + if (target_id == 0 || !IsItemHovered(ImGuiHoveredFlags_AllowWhenBlockedByActiveItem | ImGuiHoveredFlags_AllowWhenBlockedByPopup)) + return; + ImGuiContext& g = *GImGui; + DebugLocateItem(target_id); + GetForegroundDrawList(g.CurrentWindow)->AddRect(g.LastItemData.Rect.Min - ImVec2(3.0f, 3.0f), g.LastItemData.Rect.Max + ImVec2(3.0f, 3.0f), DEBUG_LOCATE_ITEM_COLOR); +} + +void ImGui::DebugLocateItemResolveWithLastItem() +{ + ImGuiContext& g = *GImGui; + ImGuiLastItemData item_data = g.LastItemData; + g.DebugLocateId = 0; + ImDrawList* draw_list = GetForegroundDrawList(g.CurrentWindow); + ImRect r = item_data.Rect; + r.Expand(3.0f); + ImVec2 p1 = g.IO.MousePos; + ImVec2 p2 = ImVec2((p1.x < r.Min.x) ? r.Min.x : (p1.x > r.Max.x) ? r.Max.x : p1.x, (p1.y < r.Min.y) ? r.Min.y : (p1.y > r.Max.y) ? r.Max.y : p1.y); + draw_list->AddRect(r.Min, r.Max, DEBUG_LOCATE_ITEM_COLOR); + draw_list->AddLine(p1, p2, DEBUG_LOCATE_ITEM_COLOR); +} + // [DEBUG] Item picker tool - start with DebugStartItemPicker() - useful to visually select an item and break into its call-stack. void ImGui::UpdateDebugToolItemPicker() { @@ -18899,16 +20515,25 @@ void ImGui::UpdateDebugToolItemPicker() SetMouseCursor(ImGuiMouseCursor_Hand); if (IsKeyPressed(ImGuiKey_Escape)) g.DebugItemPickerActive = false; - if (IsMouseClicked(0) && hovered_id) + const bool change_mapping = g.IO.KeyMods == (ImGuiMod_Ctrl | ImGuiMod_Shift); + if (!change_mapping && IsMouseClicked(g.DebugItemPickerMouseButton) && hovered_id) { g.DebugItemPickerBreakId = hovered_id; g.DebugItemPickerActive = false; } - SetNextWindowBgAlpha(0.60f); - BeginTooltip(); + for (int mouse_button = 0; mouse_button < 3; mouse_button++) + if (change_mapping && IsMouseClicked(mouse_button)) + g.DebugItemPickerMouseButton = (ImU8)mouse_button; + SetNextWindowBgAlpha(0.70f); + if (!BeginTooltip()) + return; Text("HoveredId: 0x%08X", hovered_id); Text("Press ESC to abort picking."); - TextColored(GetStyleColorVec4(hovered_id ? ImGuiCol_Text : ImGuiCol_TextDisabled), "Click to break in debugger!"); + const char* mouse_button_names[] = { "Left", "Right", "Middle" }; + if (change_mapping) + Text("Remap w/ Ctrl+Shift: click anywhere to select new mouse button."); + else + TextColored(GetStyleColorVec4(hovered_id ? ImGuiCol_Text : ImGuiCol_TextDisabled), "Click %s Button to break in debugger! (remap w/ Ctrl+Shift)", mouse_button_names[g.DebugItemPickerMouseButton]); EndTooltip(); } @@ -18960,7 +20585,7 @@ void ImGui::DebugHookIdInfo(ImGuiID id, ImGuiDataType data_type, const void* dat ImGuiStackTool* tool = &g.DebugStackTool; // Step 0: stack query - // This assume that the ID was computed with the current ID stack, which tends to be the case for our widget. + // This assumes that the ID was computed with the current ID stack, which tends to be the case for our widget. if (tool->StackLevel == -1) { tool->StackLevel++; @@ -19046,11 +20671,11 @@ void ImGui::ShowStackToolWindow(bool* p_open) Checkbox("Ctrl+C: copy path to clipboard", &tool->CopyToClipboardOnCtrlC); SameLine(); TextColored((time_since_copy >= 0.0f && time_since_copy < 0.75f && ImFmod(time_since_copy, 0.25f) < 0.25f * 0.5f) ? ImVec4(1.f, 1.f, 0.3f, 1.f) : ImVec4(), "*COPIED*"); - if (tool->CopyToClipboardOnCtrlC && IsKeyDown(ImGuiKey_ModCtrl) && IsKeyPressed(ImGuiKey_C)) + if (tool->CopyToClipboardOnCtrlC && IsKeyDown(ImGuiMod_Ctrl) && IsKeyPressed(ImGuiKey_C)) { tool->CopyToClipboardLastTime = (float)g.Time; - char* p = g.TempBuffer; - char* p_end = p + IM_ARRAYSIZE(g.TempBuffer); + char* p = g.TempBuffer.Data; + char* p_end = p + g.TempBuffer.Size; for (int stack_n = 0; stack_n < tool->Results.Size && p + 3 < p_end; stack_n++) { *p++ = '/'; @@ -19064,7 +20689,7 @@ void ImGui::ShowStackToolWindow(bool* p_open) } } *p = '\0'; - SetClipboardText(g.TempBuffer); + SetClipboardText(g.TempBuffer.Data); } // Display decorated stack @@ -19082,8 +20707,8 @@ void ImGui::ShowStackToolWindow(bool* p_open) TableNextColumn(); Text("0x%08X", (n > 0) ? tool->Results[n - 1].ID : 0); TableNextColumn(); - StackToolFormatLevelInfo(tool, n, true, g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer)); - TextUnformatted(g.TempBuffer); + StackToolFormatLevelInfo(tool, n, true, g.TempBuffer.Data, g.TempBuffer.Size); + TextUnformatted(g.TempBuffer.Data); TableNextColumn(); Text("0x%08X", info->ID); if (n == tool->Results.Size - 1) @@ -19109,12 +20734,15 @@ void ImGui::DebugNodeWindowSettings(ImGuiWindowSettings*) {} void ImGui::DebugNodeWindowsList(ImVector*, const char*) {} void ImGui::DebugNodeViewport(ImGuiViewportP*) {} +void ImGui::DebugLog(const char*, ...) {} +void ImGui::DebugLogV(const char*, va_list) {} +void ImGui::ShowDebugLogWindow(bool*) {} void ImGui::ShowStackToolWindow(bool*) {} void ImGui::DebugHookIdInfo(ImGuiID, ImGuiDataType, const void*, const void*) {} void ImGui::UpdateDebugToolItemPicker() {} void ImGui::UpdateDebugToolStackQueries() {} -#endif // #ifndef IMGUI_DISABLE_METRICS_WINDOW +#endif // #ifndef IMGUI_DISABLE_DEBUG_TOOLS //----------------------------------------------------------------------------- diff --git a/extern/imgui_patched/imgui.h b/extern/imgui_patched/imgui.h index 7aa62aa6..f7801136 100644 --- a/extern/imgui_patched/imgui.h +++ b/extern/imgui_patched/imgui.h @@ -1,17 +1,17 @@ -// dear imgui, v1.88 WIP +// dear imgui, v1.89.6 // (headers) // Help: -// - Read FAQ at http://dearimgui.org/faq +// - Read FAQ at http://dearimgui.com/faq // - Newcomers, read 'Programmer guide' in imgui.cpp for notes on how to setup Dear ImGui in your codebase. // - Call and read ImGui::ShowDemoWindow() in imgui_demo.cpp. All applications in examples/ are doing that. // Read imgui.cpp for details, links and comments. // Resources: -// - FAQ http://dearimgui.org/faq +// - FAQ http://dearimgui.com/faq // - Homepage & latest https://github.com/ocornut/imgui // - Releases & changelog https://github.com/ocornut/imgui/releases -// - Gallery https://github.com/ocornut/imgui/issues/5243 (please post your screenshots/video there!) +// - Gallery https://github.com/ocornut/imgui/issues/6478 (please post your screenshots/video there!) // - Wiki https://github.com/ocornut/imgui/wiki (lots of good stuff there) // - Glossary https://github.com/ocornut/imgui/wiki/Glossary // - Issues & support https://github.com/ocornut/imgui/issues @@ -20,6 +20,14 @@ // - For first-time users having issues compiling/linking/running or issues loading fonts: // please post in https://github.com/ocornut/imgui/discussions if you cannot find a solution in resources above. +// Library Version +// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345') +#define IMGUI_VERSION "1.89.6" +#define IMGUI_VERSION_NUM 18960 +#define IMGUI_HAS_TABLE +#define IMGUI_HAS_VIEWPORT // Viewport WIP branch +#define IMGUI_HAS_DOCK // Docking WIP branch + /* Index of this file: @@ -31,7 +39,7 @@ Index of this file: // [SECTION] ImGuiStyle // [SECTION] ImGuiIO // [SECTION] Misc data structures (ImGuiInputTextCallbackData, ImGuiSizeCallbackData, ImGuiWindowClass, ImGuiPayload, ImGuiTableSortSpecs, ImGuiTableColumnSortSpecs) -// [SECTION] Helpers (ImGuiOnceUponAFrame, ImGuiTextFilter, ImGuiTextBuffer, ImGuiStorage, ImGuiListClipper, ImColor) +// [SECTION] Helpers (ImGuiOnceUponAFrame, ImGuiTextFilter, ImGuiTextBuffer, ImGuiStorage, ImGuiListClipper, Math Operators, ImColor) // [SECTION] Drawing API (ImDrawCallback, ImDrawCmd, ImDrawIdx, ImDrawVert, ImDrawChannel, ImDrawListSplitter, ImDrawFlags, ImDrawListFlags, ImDrawList, ImDrawData) // [SECTION] Font API (ImFontConfig, ImFontGlyph, ImFontGlyphRangesBuilder, ImFontAtlasFlags, ImFontAtlas, ImFont) // [SECTION] Viewports (ImGuiViewportFlags, ImGuiViewport) @@ -42,13 +50,12 @@ Index of this file: #pragma once -// Configuration file with compile-time options (edit imconfig.h or '#define IMGUI_USER_CONFIG "myfilename.h" from your build system') +// Configuration file with compile-time options +// (edit imconfig.h or '#define IMGUI_USER_CONFIG "myfilename.h" from your build system') #ifdef IMGUI_USER_CONFIG #include IMGUI_USER_CONFIG #endif -#if !defined(IMGUI_DISABLE_INCLUDE_IMCONFIG_H) || defined(IMGUI_INCLUDE_IMCONFIG_H) #include "imconfig.h" -#endif #ifndef IMGUI_DISABLE @@ -62,15 +69,6 @@ Index of this file: #include // ptrdiff_t, NULL #include // memset, memmove, memcpy, strlen, strchr, strcpy, strcmp -// Version -// (Integer encoded as XYYZZ for use in #if preprocessor conditionals. Work in progress versions typically starts at XYY99 then bounce up to XYY00, XYY01 etc. when release tagging happens) -#define IMGUI_VERSION "1.88 WIP" -#define IMGUI_VERSION_NUM 18721 -#define IMGUI_CHECKVERSION() ImGui::DebugCheckVersionAndDataLayout(IMGUI_VERSION, sizeof(ImGuiIO), sizeof(ImGuiStyle), sizeof(ImVec2), sizeof(ImVec4), sizeof(ImDrawVert), sizeof(ImDrawIdx)) -#define IMGUI_HAS_TABLE -#define IMGUI_HAS_VIEWPORT // Viewport WIP branch -#define IMGUI_HAS_DOCK // Docking WIP branch - // Define attributes of all API symbols declarations (e.g. for DLL under Windows) // IMGUI_API is used for core imgui functions, IMGUI_IMPL_API is used for the default backends files (imgui_impl_xxx.h) // Using dear imgui via a shared library is not recommended, because we don't guarantee backward nor forward ABI compatibility (also function call overhead, as dear imgui is a call-heavy API) @@ -89,6 +87,7 @@ Index of this file: #define IM_ARRAYSIZE(_ARR) ((int)(sizeof(_ARR) / sizeof(*(_ARR)))) // Size of a static C-style array. Don't use on pointers! #define IM_UNUSED(_VAR) ((void)(_VAR)) // Used to silence "unused variable warnings". Often useful as asserts may be stripped out from final builds. #define IM_OFFSETOF(_TYPE,_MEMBER) offsetof(_TYPE, _MEMBER) // Offset of _MEMBER within _TYPE. Standardized as offsetof() in C++11 +#define IMGUI_CHECKVERSION() ImGui::DebugCheckVersionAndDataLayout(IMGUI_VERSION, sizeof(ImGuiIO), sizeof(ImGuiStyle), sizeof(ImVec2), sizeof(ImVec4), sizeof(ImDrawVert), sizeof(ImDrawIdx)) // Helper Macros - IM_FMTARGS, IM_FMTLIST: Apply printf-style warnings to our formatting functions. #if !defined(IMGUI_USE_STB_SPRINTF) && defined(__MINGW32__) && !defined(__clang__) @@ -167,21 +166,27 @@ struct ImGuiTextFilter; // Helper to parse and apply text filters (e struct ImGuiViewport; // A Platform Window (always 1 unless multi-viewport are enabled. One per platform window to output to). In the future may represent Platform Monitor struct ImGuiWindowClass; // Window class (rare/advanced uses: provide hints to the platform backend via altered viewport flags and parent/child info) -// Enums/Flags (declared as int for compatibility with old C++, to allow using as flags without overhead, and to not pollute the top of this file) +// Enumerations +// - We don't use strongly typed enums much because they add constraints (can't extend in private code, can't store typed in bit fields, extra casting on iteration) // - Tip: Use your programming IDE navigation facilities on the names in the _central column_ below to find the actual flags/enum lists! // In Visual Studio IDE: CTRL+comma ("Edit.GoToAll") can follow symbols in comments, whereas CTRL+F12 ("Edit.GoToImplementation") cannot. // With Visual Assist installed: ALT+G ("VAssistX.GoToImplementation") can also follow symbols in comments. +enum ImGuiKey : int; // -> enum ImGuiKey // Enum: A key identifier (ImGuiKey_XXX or ImGuiMod_XXX value) +enum ImGuiMouseSource : int; // -> enum ImGuiMouseSource // Enum; A mouse input source identifier (Mouse, TouchScreen, Pen) typedef int ImGuiCol; // -> enum ImGuiCol_ // Enum: A color identifier for styling typedef int ImGuiCond; // -> enum ImGuiCond_ // Enum: A condition for many Set*() functions typedef int ImGuiDataType; // -> enum ImGuiDataType_ // Enum: A primary data type typedef int ImGuiDir; // -> enum ImGuiDir_ // Enum: A cardinal direction -typedef int ImGuiKey; // -> enum ImGuiKey_ // Enum: A key identifier -typedef int ImGuiNavInput; // -> enum ImGuiNavInput_ // Enum: An input identifier for navigation typedef int ImGuiMouseButton; // -> enum ImGuiMouseButton_ // Enum: A mouse button identifier (0=left, 1=right, 2=middle) -typedef int ImGuiMouseCursor; // -> enum ImGuiMouseCursor_ // Enum: A mouse cursor identifier +typedef int ImGuiMouseCursor; // -> enum ImGuiMouseCursor_ // Enum: A mouse cursor shape typedef int ImGuiSortDirection; // -> enum ImGuiSortDirection_ // Enum: A sorting direction (ascending or descending) typedef int ImGuiStyleVar; // -> enum ImGuiStyleVar_ // Enum: A variable identifier for styling typedef int ImGuiTableBgTarget; // -> enum ImGuiTableBgTarget_ // Enum: A color target for TableSetBgColor() + +// Flags (declared as int for compatibility with old C++, to allow using as flags without overhead, and to not pollute the top of this file) +// - Tip: Use your programming IDE navigation facilities on the names in the _central column_ below to find the actual flags/enum lists! +// In Visual Studio IDE: CTRL+comma ("Edit.GoToAll") can follow symbols in comments, whereas CTRL+F12 ("Edit.GoToImplementation") cannot. +// With Visual Assist installed: ALT+G ("VAssistX.GoToImplementation") can also follow symbols in comments. typedef int ImDrawFlags; // -> enum ImDrawFlags_ // Flags: for ImDrawList functions typedef int ImDrawListFlags; // -> enum ImDrawListFlags_ // Flags: for ImDrawList instance typedef int ImFontAtlasFlags; // -> enum ImFontAtlasFlags_ // Flags: for ImFontAtlas build @@ -195,7 +200,7 @@ typedef int ImGuiDragDropFlags; // -> enum ImGuiDragDropFlags_ // Flags: f typedef int ImGuiFocusedFlags; // -> enum ImGuiFocusedFlags_ // Flags: for IsWindowFocused() typedef int ImGuiHoveredFlags; // -> enum ImGuiHoveredFlags_ // Flags: for IsItemHovered(), IsWindowHovered() etc. typedef int ImGuiInputTextFlags; // -> enum ImGuiInputTextFlags_ // Flags: for InputText(), InputTextMultiline() -typedef int ImGuiModFlags; // -> enum ImGuiModFlags_ // Flags: for io.KeyMods (Ctrl/Shift/Alt/Super) +typedef int ImGuiKeyChord; // -> ImGuiKey | ImGuiMod_XXX // Flags: for storage only for now: an ImGuiKey optionally OR-ed with one or more ImGuiMod_XXX values. typedef int ImGuiPopupFlags; // -> enum ImGuiPopupFlags_ // Flags: for OpenPopup*(), BeginPopupContext*(), IsPopupOpen() typedef int ImGuiSelectableFlags; // -> enum ImGuiSelectableFlags_ // Flags: for Selectable() typedef int ImGuiSliderFlags; // -> enum ImGuiSliderFlags_ // Flags: for DragFloat(), DragInt(), SliderFloat(), SliderInt() etc. @@ -257,8 +262,8 @@ struct ImVec2 float x, y; constexpr ImVec2() : x(0.0f), y(0.0f) { } constexpr ImVec2(float _x, float _y) : x(_x), y(_y) { } - float operator[] (size_t idx) const { IM_ASSERT(idx <= 1); return (&x)[idx]; } // We very rarely use this [] operator, the assert overhead is fine. - float& operator[] (size_t idx) { IM_ASSERT(idx <= 1); return (&x)[idx]; } // We very rarely use this [] operator, the assert overhead is fine. + float& operator[] (size_t idx) { IM_ASSERT(idx == 0 || idx == 1); return ((float*)(void*)(char*)this)[idx]; } // We very rarely use this [] operator, so the assert overhead is fine. + float operator[] (size_t idx) const { IM_ASSERT(idx == 0 || idx == 1); return ((const float*)(const void*)(const char*)this)[idx]; } #ifdef IM_VEC2_CLASS_EXTRA IM_VEC2_CLASS_EXTRA // Define additional constructors and implicit cast operators in imconfig.h to convert back and forth between your math types and ImVec2. #endif @@ -303,12 +308,13 @@ namespace ImGui // Demo, Debug, Information IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create Demo window. demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! IMGUI_API void ShowMetricsWindow(bool* p_open = NULL); // create Metrics/Debugger window. display Dear ImGui internals: windows, draw commands, various internal state, etc. + IMGUI_API void ShowDebugLogWindow(bool* p_open = NULL); // create Debug Log window. display a simplified log of important dear imgui events. IMGUI_API void ShowStackToolWindow(bool* p_open = NULL); // create Stack Tool window. hover items with mouse to query information about the source of their unique ID. IMGUI_API void ShowAboutWindow(bool* p_open = NULL); // create About window. display Dear ImGui version, credits and build/system information. IMGUI_API void ShowStyleEditor(ImGuiStyle* ref = NULL); // add style editor block (not a window). you can pass in a reference ImGuiStyle structure to compare to, revert to and save to (else it uses the default style) IMGUI_API bool ShowStyleSelector(const char* label); // add style selector block (not a window), essentially a combo listing the default styles. IMGUI_API void ShowFontSelector(const char* label); // add font selector block (not a window), essentially a combo listing the loaded fonts. - IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). + IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as an end-user (mouse/keyboard controls). IMGUI_API const char* GetVersion(); // get the compiled version string e.g. "1.80 WIP" (essentially the value for IMGUI_VERSION from the compiled version of imgui.cpp) // Styles @@ -365,6 +371,7 @@ namespace ImGui IMGUI_API void SetNextWindowContentSize(const ImVec2& size); // set next window content size (~ scrollable client area, which enforce the range of scrollbars). Not including window decorations (title bar, menu bar, etc.) nor WindowPadding. set an axis to 0.0f to leave it automatic. call before Begin() IMGUI_API void SetNextWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // set next window collapsed state. call before Begin() IMGUI_API void SetNextWindowFocus(); // set next window to be focused / top-most. call before Begin() + IMGUI_API void SetNextWindowScroll(const ImVec2& scroll); // set next window scrolling value (use < 0.0f to not affect a given axis). IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily override the Alpha component of ImGuiCol_WindowBg/ChildBg/PopupBg. you may also use ImGuiWindowFlags_NoBackground. IMGUI_API void SetNextWindowViewport(ImGuiID viewport_id); // set next window viewport IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. @@ -383,9 +390,11 @@ namespace ImGui IMGUI_API ImVec2 GetContentRegionAvail(); // == GetContentRegionMax() - GetCursorPos() IMGUI_API ImVec2 GetContentRegionMax(); // current content boundaries (typically window boundaries including scrolling, or current column boundaries), in windows coordinates IMGUI_API ImVec2 GetWindowContentRegionMin(); // content boundaries min for the full window (roughly (0,0)-Scroll), in window coordinates - IMGUI_API ImVec2 GetWindowContentRegionMax(); // content boundaries max for the full window (roughly (0,0)+Size-Scroll) where Size can be override with SetNextWindowContentSize(), in window coordinates + IMGUI_API ImVec2 GetWindowContentRegionMax(); // content boundaries max for the full window (roughly (0,0)+Size-Scroll) where Size can be overridden with SetNextWindowContentSize(), in window coordinates // Windows Scrolling + // - Any change of Scroll will be applied at the beginning of next frame in the first call to Begin(). + // - You may instead use SetNextWindowScroll() prior to calling Begin() to avoid this delay, as an alternative to using SetScrollX()/SetScrollY(). IMGUI_API float GetScrollX(); // get scrolling amount [0 .. GetScrollMaxX()] IMGUI_API float GetScrollY(); // get scrolling amount [0 .. GetScrollMaxY()] IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0 .. GetScrollMaxX()] @@ -406,8 +415,8 @@ namespace ImGui IMGUI_API void PushStyleVar(ImGuiStyleVar idx, float val); // modify a style float variable. always use this if you modify the style after NewFrame(). IMGUI_API void PushStyleVar(ImGuiStyleVar idx, const ImVec2& val); // modify a style ImVec2 variable. always use this if you modify the style after NewFrame(). IMGUI_API void PopStyleVar(int count = 1); - IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus); // == tab stop enable. Allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets - IMGUI_API void PopAllowKeyboardFocus(); + IMGUI_API void PushTabStop(bool tab_stop); // == tab stop enable. Allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets + IMGUI_API void PopTabStop(); IMGUI_API void PushButtonRepeat(bool repeat); // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame. IMGUI_API void PopButtonRepeat(); @@ -420,7 +429,7 @@ namespace ImGui IMGUI_API void PopTextWrapPos(); // Style read access - // - Use the style editor (ShowStyleEditor() function) to interactively see what the colors are) + // - Use the ShowStyleEditor() function to interactively see/edit the colors. IMGUI_API ImFont* GetFont(); // get current font IMGUI_API float GetFontSize(); // get current font size (= height in pixels) of current font with current scale applied IMGUI_API ImVec2 GetFontTexUvWhitePixel(); // get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API @@ -438,7 +447,7 @@ namespace ImGui // Absolute coordinate: GetCursorScreenPos(), SetCursorScreenPos(), all ImDrawList:: functions. IMGUI_API void Separator(); // separator, generally horizontal. inside a menu bar or in horizontal layout mode, this becomes a vertical separator. IMGUI_API void SameLine(float offset_from_start_x=0.0f, float spacing=-1.0f); // call between widgets or groups to layout them horizontally. X position given in window coordinates. - IMGUI_API void NewLine(); // undo a SameLine() or force a new line when in an horizontal-layout context. + IMGUI_API void NewLine(); // undo a SameLine() or force a new line when in a horizontal-layout context. IMGUI_API void Spacing(); // add vertical spacing. IMGUI_API void Dummy(const ImVec2& size); // add a dummy item of given size. unlike InvisibleButton(), Dummy() won't take the mouse click or be navigable into. IMGUI_API void Indent(float indent_w = 0.0f); // move content position toward the right, by indent_w, or style.IndentSpacing if indent_w <= 0 @@ -461,7 +470,7 @@ namespace ImGui IMGUI_API float GetFrameHeightWithSpacing(); // ~ FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets) // ID stack/scopes - // Read the FAQ (docs/FAQ.md or http://dearimgui.org/faq) for more details about how ID are handled in dear imgui. + // Read the FAQ (docs/FAQ.md or http://dearimgui.com/faq) for more details about how ID are handled in dear imgui. // - Those questions are answered and impacted by understanding of the ID stack system: // - "Q: Why is my widget not reacting when I click on it?" // - "Q: How can I have widgets with an empty label?" @@ -494,6 +503,7 @@ namespace ImGui IMGUI_API void LabelTextV(const char* label, const char* fmt, va_list args) IM_FMTLIST(2); IMGUI_API void BulletText(const char* fmt, ...) IM_FMTARGS(1); // shortcut for Bullet()+Text() IMGUI_API void BulletTextV(const char* fmt, va_list args) IM_FMTLIST(1); + IMGUI_API void SeparatorText(const char* label); // currently: formatted text with an horizontal line // Widgets: Main // - Most widgets return true when the value has been changed or when pressed/selected @@ -502,8 +512,6 @@ namespace ImGui IMGUI_API bool SmallButton(const char* label); // button with FramePadding=(0,0) to easily embed within text IMGUI_API bool InvisibleButton(const char* str_id, const ImVec2& size, ImGuiButtonFlags flags = 0); // flexible button behavior without the visuals, frequently useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.) IMGUI_API bool ArrowButton(const char* str_id, ImGuiDir dir); // square button with an arrow shape - IMGUI_API void Image(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1,1), const ImVec4& tint_col = ImVec4(1,1,1,1), const ImVec4& border_col = ImVec4(0,0,0,0)); - IMGUI_API bool ImageButton(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1,1), int frame_padding = -1, const ImVec4& bg_col = ImVec4(0,0,0,0), const ImVec4& tint_col = ImVec4(1,1,1,1)); // <0 frame_padding uses default frame padding settings. 0 for no padding IMGUI_API bool Checkbox(const char* label, bool* v); IMGUI_API bool CheckboxFlags(const char* label, int* flags, int flags_value); IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); @@ -512,7 +520,12 @@ namespace ImGui IMGUI_API void ProgressBar(float fraction, const ImVec2& size_arg = ImVec2(-FLT_MIN, 0), const char* overlay = NULL); IMGUI_API void Bullet(); // draw a small circle + keep the cursor on the same line. advance cursor x position by GetTreeNodeToLabelSpacing(), same distance that TreeNode() uses - // Widgets: Combo Box + // Widgets: Images + // - Read about ImTextureID here: https://github.com/ocornut/imgui/wiki/Image-Loading-and-Displaying-Examples + IMGUI_API void Image(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1, 1), const ImVec4& tint_col = ImVec4(1, 1, 1, 1), const ImVec4& border_col = ImVec4(0, 0, 0, 0)); + IMGUI_API bool ImageButton(const char* str_id, ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1, 1), const ImVec4& bg_col = ImVec4(0, 0, 0, 0), const ImVec4& tint_col = ImVec4(1, 1, 1, 1)); + + // Widgets: Combo Box (Dropdown) // - The BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it, by creating e.g. Selectable() items. // - The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. This is analogous to how ListBox are created. IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); @@ -523,7 +536,7 @@ namespace ImGui // Widgets: Drag Sliders // - CTRL+Click on any drag box to turn them into an input box. Manually input values aren't clamped by default and can go off-bounds. Use ImGuiSliderFlags_AlwaysClamp to always clamp. - // - For all the Float2/Float3/Float4/Int2/Int3/Int4 versions of every functions, note that a 'float v[X]' function argument is the same as 'float* v', + // - For all the Float2/Float3/Float4/Int2/Int3/Int4 versions of every function, note that a 'float v[X]' function argument is the same as 'float* v', // the array syntax is just a way to document the number of elements that are expected to be accessible. You can pass address of your first element out of a contiguous set, e.g. &myvector.x // - Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc. // - Format string may also be set to NULL or use the default format ("%f" or "%d"). @@ -531,7 +544,7 @@ namespace ImGui // - Use v_min < v_max to clamp edits to given limits. Note that CTRL+Click manual input can override those limits if ImGuiSliderFlags_AlwaysClamp is not used. // - Use v_max = FLT_MAX / INT_MAX etc to avoid clamping to a maximum, same with v_min = -FLT_MAX / INT_MIN to avoid clamping to a minimum. // - We use the same sets of flags for DragXXX() and SliderXXX() functions as the features are the same and it makes it easier to swap them. - // - Legacy: Pre-1.78 there are DragXXX() function signatures that takes a final `float power=1.0f' argument instead of the `ImGuiSliderFlags flags=0' argument. + // - Legacy: Pre-1.78 there are DragXXX() function signatures that take a final `float power=1.0f' argument instead of the `ImGuiSliderFlags flags=0' argument. // If you get a warning converting a float to ImGuiSliderFlags, read https://github.com/ocornut/imgui/issues/3361 IMGUI_API bool DragFloat(const char* label, float* v, float v_speed = 1.0f, float v_min = 0.0f, float v_max = 0.0f, const char* format = "%.3f", ImGuiSliderFlags flags = 0); // If v_min >= v_max we have no bound IMGUI_API bool DragFloat2(const char* label, float v[2], float v_speed = 1.0f, float v_min = 0.0f, float v_max = 0.0f, const char* format = "%.3f", ImGuiSliderFlags flags = 0); @@ -550,7 +563,7 @@ namespace ImGui // - CTRL+Click on any slider to turn them into an input box. Manually input values aren't clamped by default and can go off-bounds. Use ImGuiSliderFlags_AlwaysClamp to always clamp. // - Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc. // - Format string may also be set to NULL or use the default format ("%f" or "%d"). - // - Legacy: Pre-1.78 there are SliderXXX() function signatures that takes a final `float power=1.0f' argument instead of the `ImGuiSliderFlags flags=0' argument. + // - Legacy: Pre-1.78 there are SliderXXX() function signatures that take a final `float power=1.0f' argument instead of the `ImGuiSliderFlags flags=0' argument. // If you get a warning converting a float to ImGuiSliderFlags, read https://github.com/ocornut/imgui/issues/3361 IMGUI_API bool SliderFloat(const char* label, float* v, float v_min, float v_max, const char* format = "%.3f", ImGuiSliderFlags flags = 0); // adjust format to decorate the value with a prefix or a suffix for in-slider labels or unit display. IMGUI_API bool SliderFloat2(const char* label, float v[2], float v_min, float v_max, const char* format = "%.3f", ImGuiSliderFlags flags = 0); @@ -608,7 +621,7 @@ namespace ImGui IMGUI_API bool TreeNodeExV(const char* str_id, ImGuiTreeNodeFlags flags, const char* fmt, va_list args) IM_FMTLIST(3); IMGUI_API bool TreeNodeExV(const void* ptr_id, ImGuiTreeNodeFlags flags, const char* fmt, va_list args) IM_FMTLIST(3); IMGUI_API void TreePush(const char* str_id); // ~ Indent()+PushId(). Already called by TreeNode() when returning true, but you can call TreePush/TreePop yourself if desired. - IMGUI_API void TreePush(const void* ptr_id = NULL); // " + IMGUI_API void TreePush(const void* ptr_id); // " IMGUI_API void TreePop(); // ~ Unindent()+PopId() IMGUI_API float GetTreeNodeToLabelSpacing(); // horizontal distance preceding label when using TreeNode*() or Bullet() == (g.FontSize + style.FramePadding.x*2) for a regular unframed TreeNode IMGUI_API bool CollapsingHeader(const char* label, ImGuiTreeNodeFlags flags = 0); // if returning 'true' the header is open. doesn't indent nor push on ID stack. user doesn't have to call TreePop(). @@ -662,8 +675,8 @@ namespace ImGui // Tooltips // - Tooltip are windows following the mouse. They do not take focus away. - IMGUI_API void BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of items). - IMGUI_API void EndTooltip(); + IMGUI_API bool BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of items). + IMGUI_API void EndTooltip(); // only call EndTooltip() if BeginTooltip() returns true! IMGUI_API void SetTooltip(const char* fmt, ...) IM_FMTARGS(1); // set a text-only tooltip, typically use with ImGui::IsItemHovered(). override any previous call to SetTooltip(). IMGUI_API void SetTooltipV(const char* fmt, va_list args) IM_FMTLIST(1); @@ -678,7 +691,7 @@ namespace ImGui // Popups: begin/end functions // - BeginPopup(): query popup state, if open start appending into the window. Call EndPopup() afterwards. ImGuiWindowFlags are forwarded to the window. - // - BeginPopupModal(): block every interactions behind the window, cannot be closed by user, add a dimming background, has a title bar. + // - BeginPopupModal(): block every interaction behind the window, cannot be closed by user, add a dimming background, has a title bar. IMGUI_API bool BeginPopup(const char* str_id, ImGuiWindowFlags flags = 0); // return true if the popup is open, and you can start outputting to it. IMGUI_API bool BeginPopupModal(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // return true if the modal is open, and you can start outputting to it. IMGUI_API void EndPopup(); // only call EndPopup() if BeginPopupXXX() returns true! @@ -722,7 +735,7 @@ namespace ImGui // - 4. Optionally call TableHeadersRow() to submit a header row. Names are pulled from TableSetupColumn() data. // - 5. Populate contents: // - In most situations you can use TableNextRow() + TableSetColumnIndex(N) to start appending into a column. - // - If you are using tables as a sort of grid, where every columns is holding the same type of contents, + // - If you are using tables as a sort of grid, where every column is holding the same type of contents, // you may prefer using TableNextColumn() instead of TableNextRow() + TableSetColumnIndex(). // TableNextColumn() will automatically wrap-around into the next row if needed. // - IMPORTANT: Comparatively to the old Columns() API, we need to call TableNextColumn() for the first column! @@ -780,7 +793,7 @@ namespace ImGui IMGUI_API int GetColumnsCount(); // Tab Bars, Tabs - // Note: Tabs are automatically created by the docking system. Use this to create tab bars/tabs yourself without docking being involved. + // - Note: Tabs are automatically created by the docking system (when in 'docking' branch). Use this to create tab bars/tabs yourself. IMGUI_API bool BeginTabBar(const char* str_id, ImGuiTabBarFlags flags = 0); // create and append into a TabBar IMGUI_API void EndTabBar(); // only call EndTabBar() if BeginTabBar() returns true! IMGUI_API bool BeginTabItem(const char* label, bool* p_open = NULL, ImGuiTabItemFlags flags = 0); // create a Tab. Returns true if the Tab is selected. @@ -859,16 +872,17 @@ namespace ImGui IMGUI_API bool IsItemHovered(ImGuiHoveredFlags flags = 0); // is the last item hovered? (and usable, aka not blocked by a popup, etc.). See ImGuiHoveredFlags for more options. IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited. This will continuously return true while holding mouse button on an item. Items that don't interact will always return false) IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? - IMGUI_API bool IsItemClicked(ImGuiMouseButton mouse_button = 0); // is the last item hovered and mouse clicked on? (**) == IsMouseClicked(mouse_button) && IsItemHovered()Important. (**) this it NOT equivalent to the behavior of e.g. Button(). Read comments in function definition. + IMGUI_API bool IsItemClicked(ImGuiMouseButton mouse_button = 0); // is the last item hovered and mouse clicked on? (**) == IsMouseClicked(mouse_button) && IsItemHovered()Important. (**) this is NOT equivalent to the behavior of e.g. Button(). Read comments in function definition. IMGUI_API bool IsItemVisible(); // is the last item visible? (items may be out of sight because of clipping/scrolling) IMGUI_API bool IsItemEdited(); // did the last item modify its underlying value this frame? or was pressed? This is generally the same as the "bool" return value of many widgets. IMGUI_API bool IsItemActivated(); // was the last item just made active (item was previously inactive). - IMGUI_API bool IsItemDeactivated(); // was the last item just made inactive (item was previously active). Useful for Undo/Redo patterns with widgets that requires continuous editing. - IMGUI_API bool IsItemDeactivatedAfterEdit(); // was the last item just made inactive and made a value change when it was active? (e.g. Slider/Drag moved). Useful for Undo/Redo patterns with widgets that requires continuous editing. Note that you may get false positives (some widgets such as Combo()/ListBox()/Selectable() will return true even when clicking an already selected item). + IMGUI_API bool IsItemDeactivated(); // was the last item just made inactive (item was previously active). Useful for Undo/Redo patterns with widgets that require continuous editing. + IMGUI_API bool IsItemDeactivatedAfterEdit(); // was the last item just made inactive and made a value change when it was active? (e.g. Slider/Drag moved). Useful for Undo/Redo patterns with widgets that require continuous editing. Note that you may get false positives (some widgets such as Combo()/ListBox()/Selectable() will return true even when clicking an already selected item). IMGUI_API bool IsItemToggledOpen(); // was the last item open state toggled? set by TreeNode(). IMGUI_API bool IsAnyItemHovered(); // is any item hovered? IMGUI_API bool IsAnyItemActive(); // is any item active? IMGUI_API bool IsAnyItemFocused(); // is any item focused? + IMGUI_API ImGuiID GetItemID(); // get ID of last item (~~ often same ImGui::GetID(label) beforehand) IMGUI_API ImVec2 GetItemRectMin(); // get upper-left bounding rectangle of the last item (screen space) IMGUI_API ImVec2 GetItemRectMax(); // get lower-right bounding rectangle of the last item (screen space) IMGUI_API ImVec2 GetItemRectSize(); // get size of last item @@ -907,20 +921,19 @@ namespace ImGui IMGUI_API void ColorConvertRGBtoHSV(float r, float g, float b, float& out_h, float& out_s, float& out_v); IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float& out_r, float& out_g, float& out_b); - // Inputs Utilities: Keyboard - // Without IMGUI_DISABLE_OBSOLETE_KEYIO: (legacy support) - // - For 'ImGuiKey key' you can still use your legacy native/user indices according to how your backend/engine stored them in io.KeysDown[]. - // With IMGUI_DISABLE_OBSOLETE_KEYIO: (this is the way forward) - // - Any use of 'ImGuiKey' will assert when key < 512 will be passed, previously reserved as native/user keys indices - // - GetKeyIndex() is pass-through and therefore deprecated (gone if IMGUI_DISABLE_OBSOLETE_KEYIO is defined) + // Inputs Utilities: Keyboard/Mouse/Gamepad + // - the ImGuiKey enum contains all possible keyboard, mouse and gamepad inputs (e.g. ImGuiKey_A, ImGuiKey_MouseLeft, ImGuiKey_GamepadDpadUp...). + // - before v1.87, we used ImGuiKey to carry native/user indices as defined by each backends. About use of those legacy ImGuiKey values: + // - without IMGUI_DISABLE_OBSOLETE_KEYIO (legacy support): you can still use your legacy native/user indices (< 512) according to how your backend/engine stored them in io.KeysDown[], but need to cast them to ImGuiKey. + // - with IMGUI_DISABLE_OBSOLETE_KEYIO (this is the way forward): any use of ImGuiKey will assert with key < 512. GetKeyIndex() is pass-through and therefore deprecated (gone if IMGUI_DISABLE_OBSOLETE_KEYIO is defined). IMGUI_API bool IsKeyDown(ImGuiKey key); // is key being held. IMGUI_API bool IsKeyPressed(ImGuiKey key, bool repeat = true); // was key pressed (went from !Down to Down)? if repeat=true, uses io.KeyRepeatDelay / KeyRepeatRate IMGUI_API bool IsKeyReleased(ImGuiKey key); // was key released (went from Down to !Down)? IMGUI_API int GetKeyPressedAmount(ImGuiKey key, float repeat_delay, float rate); // uses provided repeat rate/delay. return a count, most often 0 or 1 but might be >1 if RepeatRate is small enough that DeltaTime > RepeatRate IMGUI_API const char* GetKeyName(ImGuiKey key); // [DEBUG] returns English name of the key. Those names a provided for debugging purpose and are not meant to be saved persistently not compared. - IMGUI_API void CaptureKeyboardFromApp(bool want_capture_keyboard_value = true); // attention: misleading name! manually override io.WantCaptureKeyboard flag next frame (said flag is entirely left for your application to handle). e.g. force capture keyboard when your widget is being hovered. This is equivalent to setting "io.WantCaptureKeyboard = want_capture_keyboard_value"; after the next NewFrame() call. + IMGUI_API void SetNextFrameWantCaptureKeyboard(bool want_capture_keyboard); // Override io.WantCaptureKeyboard flag next frame (said flag is left for your application to handle, typically when true it instructs your app to ignore inputs). e.g. force capture keyboard when your widget is being hovered. This is equivalent to setting "io.WantCaptureKeyboard = want_capture_keyboard"; after the next NewFrame() call. - // Inputs Utilities: Mouse + // Inputs Utilities: Mouse specific // - To refer to a mouse button, you may use named enums in your code e.g. ImGuiMouseButton_Left, ImGuiMouseButton_Right. // - You can also use regular integer: it is forever guaranteed that 0=Left, 1=Right, 2=Middle. // - Dragging operations are only reported after mouse has moved a certain distance away from the initial clicking position (see 'lock_threshold' and 'io.MouseDraggingThreshold') @@ -937,9 +950,9 @@ namespace ImGui IMGUI_API bool IsMouseDragging(ImGuiMouseButton button, float lock_threshold = -1.0f); // is mouse dragging? (if lock_threshold < -1.0f, uses io.MouseDraggingThreshold) IMGUI_API ImVec2 GetMouseDragDelta(ImGuiMouseButton button = 0, float lock_threshold = -1.0f); // return the delta from the initial clicking position while the mouse button is pressed or was just released. This is locked and return 0.0f until the mouse moves past a distance threshold at least once (if lock_threshold < -1.0f, uses io.MouseDraggingThreshold) IMGUI_API void ResetMouseDragDelta(ImGuiMouseButton button = 0); // - IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired cursor type, reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you - IMGUI_API void SetMouseCursor(ImGuiMouseCursor cursor_type); // set desired cursor type - IMGUI_API void CaptureMouseFromApp(bool want_capture_mouse_value = true); // attention: misleading name! manually override io.WantCaptureMouse flag next frame (said flag is entirely left for your application to handle). This is equivalent to setting "io.WantCaptureMouse = want_capture_mouse_value;" after the next NewFrame() call. + IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired mouse cursor shape. Important: reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you + IMGUI_API void SetMouseCursor(ImGuiMouseCursor cursor_type); // set desired mouse cursor shape + IMGUI_API void SetNextFrameWantCaptureMouse(bool want_capture_mouse); // Override io.WantCaptureMouse flag next frame (said flag is left for your application to handle, typical when true it instucts your app to ignore inputs). This is equivalent to setting "io.WantCaptureMouse = want_capture_mouse;" after the next NewFrame() call. // Clipboard Utilities // - Also see the LogToClipboard() function to capture GUI into clipboard, or easily output text data to the clipboard. @@ -985,6 +998,7 @@ namespace ImGui //----------------------------------------------------------------------------- // Flags for ImGui::Begin() +// (Those are per-window flags. There are shared flags in ImGuiIO: io.ConfigWindowsResizeFromEdges and io.ConfigWindowsMoveFromTitleBarOnly) enum ImGuiWindowFlags_ { ImGuiWindowFlags_None = 0, @@ -1021,13 +1035,11 @@ enum ImGuiWindowFlags_ ImGuiWindowFlags_Popup = 1 << 26, // Don't use! For internal use by BeginPopup() ImGuiWindowFlags_Modal = 1 << 27, // Don't use! For internal use by BeginPopupModal() ImGuiWindowFlags_ChildMenu = 1 << 28, // Don't use! For internal use by BeginMenu() - ImGuiWindowFlags_DockNodeHost = 1 << 29 // Don't use! For internal use by Begin()/NewFrame() - - // [Obsolete] - //ImGuiWindowFlags_ResizeFromAnySide = 1 << 17, // [Obsolete] --> Set io.ConfigWindowsResizeFromEdges=true and make sure mouse cursors are supported by backend (io.BackendFlags & ImGuiBackendFlags_HasMouseCursors) + ImGuiWindowFlags_DockNodeHost = 1 << 29, // Don't use! For internal use by Begin()/NewFrame() }; // Flags for ImGui::InputText() +// (Those are per-item flags. There are shared flags in ImGuiIO: io.ConfigInputTextCursorBlink and io.ConfigInputTextEnterKeepActive) enum ImGuiInputTextFlags_ { ImGuiInputTextFlags_None = 0, @@ -1050,12 +1062,11 @@ enum ImGuiInputTextFlags_ ImGuiInputTextFlags_UndoRedo = 1 << 16, // Enable undo/redo. Note that input text owns the text data while active, if you want to provide your own undo/redo stack you need e.g. to call ClearActiveID(). ImGuiInputTextFlags_CharsScientific = 1 << 17, // Allow 0123456789.+-*/eE (Scientific notation input) ImGuiInputTextFlags_CallbackResize = 1 << 18, // Callback on buffer capacity changes request (beyond 'buf_size' parameter value), allowing the string to grow. Notify when the string wants to be resized (for string types which hold a cache of their Size). You will be provided a new BufSize in the callback and NEED to honor it. (see misc/cpp/imgui_stdlib.h for an example of using this) - ImGuiInputTextFlags_CallbackEdit = 1 << 19 // Callback on any edit (note that InputText() already returns true on edit, the callback is useful mainly to manipulate the underlying buffer while focus is active) + ImGuiInputTextFlags_CallbackEdit = 1 << 19, // Callback on any edit (note that InputText() already returns true on edit, the callback is useful mainly to manipulate the underlying buffer while focus is active) + ImGuiInputTextFlags_EscapeClearsAll = 1 << 20, // Escape key clears content if not empty, and deactivate otherwise (contrast to default behavior of Escape to revert) - // Obsolete names (will be removed soon) -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - , ImGuiInputTextFlags_AlwaysInsertMode = ImGuiInputTextFlags_AlwaysOverwrite // [renamed in 1.82] name was not matching behavior -#endif + // Obsolete names + //ImGuiInputTextFlags_AlwaysInsertMode = ImGuiInputTextFlags_AlwaysOverwrite // [renamed in 1.82] name was not matching behavior }; // Flags for ImGui::TreeNodeEx(), ImGui::CollapsingHeader*() @@ -1077,7 +1088,7 @@ enum ImGuiTreeNodeFlags_ ImGuiTreeNodeFlags_SpanFullWidth = 1 << 12, // Extend hit box to the left-most and right-most edges (bypass the indented area). ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 1 << 13, // (WIP) Nav: left direction may move to this TreeNode() from any of its child (items submitted between TreeNode and TreePop) //ImGuiTreeNodeFlags_NoScrollOnOpen = 1 << 14, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible - ImGuiTreeNodeFlags_CollapsingHeader = ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoTreePushOnOpen | ImGuiTreeNodeFlags_NoAutoOpenOnLog + ImGuiTreeNodeFlags_CollapsingHeader = ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoTreePushOnOpen | ImGuiTreeNodeFlags_NoAutoOpenOnLog, }; // Flags for OpenPopup*(), BeginPopupContext*(), IsPopupOpen() functions. @@ -1086,7 +1097,7 @@ enum ImGuiTreeNodeFlags_ // It is therefore guaranteed to be legal to pass a mouse button index in ImGuiPopupFlags. // - For the same reason, we exceptionally default the ImGuiPopupFlags argument of BeginPopupContextXXX functions to 1 instead of 0. // IMPORTANT: because the default parameter is 1 (==ImGuiPopupFlags_MouseButtonRight), if you rely on the default parameter -// and want to another another flag, you need to pass in the ImGuiPopupFlags_MouseButtonRight flag. +// and want to use another flag, you need to pass in the ImGuiPopupFlags_MouseButtonRight flag explicitly. // - Multiple buttons currently cannot be combined/or-ed in those functions (we could allow it later). enum ImGuiPopupFlags_ { @@ -1100,18 +1111,18 @@ enum ImGuiPopupFlags_ ImGuiPopupFlags_NoOpenOverItems = 1 << 6, // For BeginPopupContextWindow(): don't return true when hovering items, only when hovering empty space ImGuiPopupFlags_AnyPopupId = 1 << 7, // For IsPopupOpen(): ignore the ImGuiID parameter and test for any popup. ImGuiPopupFlags_AnyPopupLevel = 1 << 8, // For IsPopupOpen(): search/test at any level of the popup stack (default test in the current level) - ImGuiPopupFlags_AnyPopup = ImGuiPopupFlags_AnyPopupId | ImGuiPopupFlags_AnyPopupLevel + ImGuiPopupFlags_AnyPopup = ImGuiPopupFlags_AnyPopupId | ImGuiPopupFlags_AnyPopupLevel, }; // Flags for ImGui::Selectable() enum ImGuiSelectableFlags_ { ImGuiSelectableFlags_None = 0, - ImGuiSelectableFlags_DontClosePopups = 1 << 0, // Clicking this don't close parent popup window + ImGuiSelectableFlags_DontClosePopups = 1 << 0, // Clicking this doesn't close parent popup window ImGuiSelectableFlags_SpanAllColumns = 1 << 1, // Selectable frame can span all columns (text will still fit in current column) ImGuiSelectableFlags_AllowDoubleClick = 1 << 2, // Generate press events on double clicks too ImGuiSelectableFlags_Disabled = 1 << 3, // Cannot be selected, display grayed out text - ImGuiSelectableFlags_AllowItemOverlap = 1 << 4 // (WIP) Hit testing to allow subsequent widgets to overlap this one + ImGuiSelectableFlags_AllowItemOverlap = 1 << 4, // (WIP) Hit testing to allow subsequent widgets to overlap this one }; // Flags for ImGui::BeginCombo() @@ -1125,7 +1136,7 @@ enum ImGuiComboFlags_ ImGuiComboFlags_HeightLargest = 1 << 4, // As many fitting items as possible ImGuiComboFlags_NoArrowButton = 1 << 5, // Display on the preview box without the square arrow button ImGuiComboFlags_NoPreview = 1 << 6, // Display only a square arrow button - ImGuiComboFlags_HeightMask_ = ImGuiComboFlags_HeightSmall | ImGuiComboFlags_HeightRegular | ImGuiComboFlags_HeightLarge | ImGuiComboFlags_HeightLargest + ImGuiComboFlags_HeightMask_ = ImGuiComboFlags_HeightSmall | ImGuiComboFlags_HeightRegular | ImGuiComboFlags_HeightLarge | ImGuiComboFlags_HeightLargest, }; // Flags for ImGui::BeginTabBar() @@ -1141,7 +1152,7 @@ enum ImGuiTabBarFlags_ ImGuiTabBarFlags_FittingPolicyResizeDown = 1 << 6, // Resize tabs when they don't fit ImGuiTabBarFlags_FittingPolicyScroll = 1 << 7, // Add scroll buttons when tabs don't fit ImGuiTabBarFlags_FittingPolicyMask_ = ImGuiTabBarFlags_FittingPolicyResizeDown | ImGuiTabBarFlags_FittingPolicyScroll, - ImGuiTabBarFlags_FittingPolicyDefault_ = ImGuiTabBarFlags_FittingPolicyResizeDown + ImGuiTabBarFlags_FittingPolicyDefault_ = ImGuiTabBarFlags_FittingPolicyResizeDown, }; // Flags for ImGui::BeginTabItem() @@ -1155,7 +1166,7 @@ enum ImGuiTabItemFlags_ ImGuiTabItemFlags_NoTooltip = 1 << 4, // Disable tooltip for the given tab ImGuiTabItemFlags_NoReorder = 1 << 5, // Disable reordering this tab or having another tab cross over this tab ImGuiTabItemFlags_Leading = 1 << 6, // Enforce the tab position to the left of the tab bar (after the tab list popup button) - ImGuiTabItemFlags_Trailing = 1 << 7 // Enforce the tab position to the right of the tab bar (before the scrolling buttons) + ImGuiTabItemFlags_Trailing = 1 << 7, // Enforce the tab position to the right of the tab bar (before the scrolling buttons) }; // Flags for ImGui::BeginTable() @@ -1175,7 +1186,7 @@ enum ImGuiTabItemFlags_ // - When ScrollX is on: // - Table defaults to ImGuiTableFlags_SizingFixedFit -> all Columns defaults to ImGuiTableColumnFlags_WidthFixed // - Columns sizing policy allowed: Fixed/Auto mostly. -// - Fixed Columns can be enlarged as needed. Table will show an horizontal scrollbar if needed. +// - Fixed Columns can be enlarged as needed. Table will show a horizontal scrollbar if needed. // - When using auto-resizing (non-resizable) fixed columns, querying the content width to use item right-alignment e.g. SetNextItemWidth(-FLT_MIN) doesn't make sense, would create a feedback loop. // - Using Stretch columns OFTEN DOES NOT MAKE SENSE if ScrollX is on, UNLESS you have specified a value for 'inner_width' in BeginTable(). // If you specify a value for 'inner_width' then effectively the scrolling space is known and Stretch or mixed Fixed/Stretch columns become meaningful again. @@ -1201,8 +1212,8 @@ enum ImGuiTableFlags_ ImGuiTableFlags_BordersInner = ImGuiTableFlags_BordersInnerV | ImGuiTableFlags_BordersInnerH, // Draw inner borders. ImGuiTableFlags_BordersOuter = ImGuiTableFlags_BordersOuterV | ImGuiTableFlags_BordersOuterH, // Draw outer borders. ImGuiTableFlags_Borders = ImGuiTableFlags_BordersInner | ImGuiTableFlags_BordersOuter, // Draw all borders. - ImGuiTableFlags_NoBordersInBody = 1 << 11, // [ALPHA] Disable vertical borders in columns Body (borders will always appears in Headers). -> May move to style - ImGuiTableFlags_NoBordersInBodyUntilResize = 1 << 12, // [ALPHA] Disable vertical borders in columns Body until hovered for resize (borders will always appears in Headers). -> May move to style + ImGuiTableFlags_NoBordersInBody = 1 << 11, // [ALPHA] Disable vertical borders in columns Body (borders will always appear in Headers). -> May move to style + ImGuiTableFlags_NoBordersInBodyUntilResize = 1 << 12, // [ALPHA] Disable vertical borders in columns Body until hovered for resize (borders will always appear in Headers). -> May move to style // Sizing Policy (read above for defaults) ImGuiTableFlags_SizingFixedFit = 1 << 13, // Columns default to _WidthFixed or _WidthAuto (if resizable or not resizable), matching contents width. ImGuiTableFlags_SizingFixedSame = 2 << 13, // Columns default to _WidthFixed or _WidthAuto (if resizable or not resizable), matching the maximum contents width of all columns. Implicitly enable ImGuiTableFlags_NoKeepColumnsVisible. @@ -1216,11 +1227,11 @@ enum ImGuiTableFlags_ // Clipping ImGuiTableFlags_NoClip = 1 << 20, // Disable clipping rectangle for every individual columns (reduce draw command count, items will be able to overflow into other columns). Generally incompatible with TableSetupScrollFreeze(). // Padding - ImGuiTableFlags_PadOuterX = 1 << 21, // Default if BordersOuterV is on. Enable outer-most padding. Generally desirable if you have headers. - ImGuiTableFlags_NoPadOuterX = 1 << 22, // Default if BordersOuterV is off. Disable outer-most padding. + ImGuiTableFlags_PadOuterX = 1 << 21, // Default if BordersOuterV is on. Enable outermost padding. Generally desirable if you have headers. + ImGuiTableFlags_NoPadOuterX = 1 << 22, // Default if BordersOuterV is off. Disable outermost padding. ImGuiTableFlags_NoPadInnerX = 1 << 23, // Disable inner padding between columns (double inner padding if BordersOuterV is on, single inner padding if BordersOuterV is off). // Scrolling - ImGuiTableFlags_ScrollX = 1 << 24, // Enable horizontal scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size. Changes default sizing policy. Because this create a child window, ScrollY is currently generally recommended when using ScrollX. + ImGuiTableFlags_ScrollX = 1 << 24, // Enable horizontal scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size. Changes default sizing policy. Because this creates a child window, ScrollY is currently generally recommended when using ScrollX. ImGuiTableFlags_ScrollY = 1 << 25, // Enable vertical scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size. // Sorting ImGuiTableFlags_SortMulti = 1 << 26, // Hold shift when clicking headers to sort on multiple column. TableGetSortSpecs() may return specs where (SpecsCount > 1). @@ -1229,13 +1240,7 @@ enum ImGuiTableFlags_ ImGuiTableFlags_NoBordersInFrozenArea = 1 << 28, // Disable vertical borders in frozen area. // [Internal] Combinations and masks - ImGuiTableFlags_SizingMask_ = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_SizingFixedSame | ImGuiTableFlags_SizingStretchProp | ImGuiTableFlags_SizingStretchSame - - // Obsolete names (will be removed soon) -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - //, ImGuiTableFlags_ColumnsWidthFixed = ImGuiTableFlags_SizingFixedFit, ImGuiTableFlags_ColumnsWidthStretch = ImGuiTableFlags_SizingStretchSame // WIP Tables 2020/12 - //, ImGuiTableFlags_SizingPolicyFixed = ImGuiTableFlags_SizingFixedFit, ImGuiTableFlags_SizingPolicyStretch = ImGuiTableFlags_SizingStretchSame // WIP Tables 2021/01 -#endif + ImGuiTableFlags_SizingMask_ = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_SizingFixedSame | ImGuiTableFlags_SizingStretchProp | ImGuiTableFlags_SizingStretchSame, }; // Flags for ImGui::TableSetupColumn() @@ -1272,19 +1277,14 @@ enum ImGuiTableColumnFlags_ ImGuiTableColumnFlags_WidthMask_ = ImGuiTableColumnFlags_WidthStretch | ImGuiTableColumnFlags_WidthFixed, ImGuiTableColumnFlags_IndentMask_ = ImGuiTableColumnFlags_IndentEnable | ImGuiTableColumnFlags_IndentDisable, ImGuiTableColumnFlags_StatusMask_ = ImGuiTableColumnFlags_IsEnabled | ImGuiTableColumnFlags_IsVisible | ImGuiTableColumnFlags_IsSorted | ImGuiTableColumnFlags_IsHovered, - ImGuiTableColumnFlags_NoDirectResize_ = 1 << 30 // [Internal] Disable user resizing this column directly (it may however we resized indirectly from its left edge) - - // Obsolete names (will be removed soon) -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - //ImGuiTableColumnFlags_WidthAuto = ImGuiTableColumnFlags_WidthFixed | ImGuiTableColumnFlags_NoResize, // Column will not stretch and keep resizing based on submitted contents. -#endif + ImGuiTableColumnFlags_NoDirectResize_ = 1 << 30, // [Internal] Disable user resizing this column directly (it may however we resized indirectly from its left edge) }; // Flags for ImGui::TableNextRow() enum ImGuiTableRowFlags_ { - ImGuiTableRowFlags_None = 0, - ImGuiTableRowFlags_Headers = 1 << 0 // Identify header row (set default background color + width of its contents accounted differently for auto column width) + ImGuiTableRowFlags_None = 0, + ImGuiTableRowFlags_Headers = 1 << 0, // Identify header row (set default background color + width of its contents accounted differently for auto column width) }; // Enum for ImGui::TableSetBgColor() @@ -1292,16 +1292,16 @@ enum ImGuiTableRowFlags_ // - Layer 0: draw with RowBg0 color if set, otherwise draw with ColumnBg0 if set. // - Layer 1: draw with RowBg1 color if set, otherwise draw with ColumnBg1 if set. // - Layer 2: draw with CellBg color if set. -// The purpose of the two row/columns layers is to let you decide if a background color changes should override or blend with the existing color. +// The purpose of the two row/columns layers is to let you decide if a background color change should override or blend with the existing color. // When using ImGuiTableFlags_RowBg on the table, each row has the RowBg0 color automatically set for odd/even rows. // If you set the color of RowBg0 target, your color will override the existing RowBg0 color. // If you set the color of RowBg1 or ColumnBg1 target, your color will blend over the RowBg0 color. enum ImGuiTableBgTarget_ { - ImGuiTableBgTarget_None = 0, - ImGuiTableBgTarget_RowBg0 = 1, // Set row background color 0 (generally used for background, automatically set when ImGuiTableFlags_RowBg is used) - ImGuiTableBgTarget_RowBg1 = 2, // Set row background color 1 (generally used for selection marking) - ImGuiTableBgTarget_CellBg = 3 // Set cell background color (top-most color) + ImGuiTableBgTarget_None = 0, + ImGuiTableBgTarget_RowBg0 = 1, // Set row background color 0 (generally used for background, automatically set when ImGuiTableFlags_RowBg is used) + ImGuiTableBgTarget_RowBg1 = 2, // Set row background color 1 (generally used for selection marking) + ImGuiTableBgTarget_CellBg = 3, // Set cell background color (top-most color) }; // Flags for ImGui::IsWindowFocused() @@ -1313,7 +1313,7 @@ enum ImGuiFocusedFlags_ ImGuiFocusedFlags_AnyWindow = 1 << 2, // Return true if any window is focused. Important: If you are trying to tell how to dispatch your low-level inputs, do NOT use this. Use 'io.WantCaptureMouse' instead! Please read the FAQ! ImGuiFocusedFlags_NoPopupHierarchy = 1 << 3, // Do not consider popup hierarchy (do not treat popup emitter as parent of popup) (when used with _ChildWindows or _RootWindow) ImGuiFocusedFlags_DockHierarchy = 1 << 4, // Consider docking hierarchy (treat dockspace host as parent of docked window) (when used with _ChildWindows or _RootWindow) - ImGuiFocusedFlags_RootAndChildWindows = ImGuiFocusedFlags_RootWindow | ImGuiFocusedFlags_ChildWindows + ImGuiFocusedFlags_RootAndChildWindows = ImGuiFocusedFlags_RootWindow | ImGuiFocusedFlags_ChildWindows, }; // Flags for ImGui::IsItemHovered(), ImGui::IsWindowHovered() @@ -1334,7 +1334,12 @@ enum ImGuiHoveredFlags_ ImGuiHoveredFlags_AllowWhenDisabled = 1 << 9, // IsItemHovered() only: Return true even if the item is disabled ImGuiHoveredFlags_NoNavOverride = 1 << 10, // Disable using gamepad/keyboard navigation state when active, always query mouse. ImGuiHoveredFlags_RectOnly = ImGuiHoveredFlags_AllowWhenBlockedByPopup | ImGuiHoveredFlags_AllowWhenBlockedByActiveItem | ImGuiHoveredFlags_AllowWhenOverlapped, - ImGuiHoveredFlags_RootAndChildWindows = ImGuiHoveredFlags_RootWindow | ImGuiHoveredFlags_ChildWindows + ImGuiHoveredFlags_RootAndChildWindows = ImGuiHoveredFlags_RootWindow | ImGuiHoveredFlags_ChildWindows, + + // Hovering delays (for tooltips) + ImGuiHoveredFlags_DelayNormal = 1 << 11, // Return true after io.HoverDelayNormal elapsed (~0.30 sec) + ImGuiHoveredFlags_DelayShort = 1 << 12, // Return true after io.HoverDelayShort elapsed (~0.10 sec) + ImGuiHoveredFlags_NoSharedDelay = 1 << 13, // Disable shared delay system where moving from one item to the next keeps the previous timer for a short time (standard for tooltips with long delays) }; // Flags for ImGui::DockSpace(), shared/inherited by child nodes. @@ -1350,7 +1355,7 @@ enum ImGuiDockNodeFlags_ ImGuiDockNodeFlags_NoSplit = 1 << 4, // Shared/Local // Disable splitting the node into smaller nodes. Useful e.g. when embedding dockspaces into a main root one (the root one may have splitting disabled to reduce confusion). Note: when turned off, existing splits will be preserved. ImGuiDockNodeFlags_NoResize = 1 << 5, // Shared/Local // Disable resizing node using the splitter/separators. Useful with programmatically setup dockspaces. ImGuiDockNodeFlags_AutoHideTabBar = 1 << 6, // Shared/Local // Tab bar will automatically hide when there is a single window in the dock node. - ImGuiDockNodeFlags_NoMove = 1 << 7 // Shared/Local // Disable moving node + ImGuiDockNodeFlags_NoMove = 1 << 7, // Shared/Local // Disable moving node }; // Flags for ImGui::BeginDragDropSource(), ImGui::AcceptDragDropPayload() @@ -1358,8 +1363,8 @@ enum ImGuiDragDropFlags_ { ImGuiDragDropFlags_None = 0, // BeginDragDropSource() flags - ImGuiDragDropFlags_SourceNoPreviewTooltip = 1 << 0, // By default, a successful call to BeginDragDropSource opens a tooltip so you can display a preview or description of the source contents. This flag disable this behavior. - ImGuiDragDropFlags_SourceNoDisableHover = 1 << 1, // By default, when dragging we clear data so that IsItemHovered() will return false, to avoid subsequent user code submitting tooltips. This flag disable this behavior so you can still call IsItemHovered() on the source item. + ImGuiDragDropFlags_SourceNoPreviewTooltip = 1 << 0, // Disable preview tooltip. By default, a successful call to BeginDragDropSource opens a tooltip so you can display a preview or description of the source contents. This flag disables this behavior. + ImGuiDragDropFlags_SourceNoDisableHover = 1 << 1, // By default, when dragging we clear data so that IsItemHovered() will return false, to avoid subsequent user code submitting tooltips. This flag disables this behavior so you can still call IsItemHovered() on the source item. ImGuiDragDropFlags_SourceNoHoldToOpenOthers = 1 << 2, // Disable the behavior that allows to open tree nodes and collapsing header by holding over them while dragging a source item. ImGuiDragDropFlags_SourceAllowNullID = 1 << 3, // Allow items such as Text(), Image() that have no unique identifier to be used as drag source, by manufacturing a temporary identifier based on their window-relative position. This is extremely unusual within the dear imgui ecosystem and so we made it explicit. ImGuiDragDropFlags_SourceExtern = 1 << 4, // External source (from outside of dear imgui), won't attempt to read current item/window info. Will always return true. Only one Extern source can be active simultaneously. @@ -1368,7 +1373,7 @@ enum ImGuiDragDropFlags_ ImGuiDragDropFlags_AcceptBeforeDelivery = 1 << 10, // AcceptDragDropPayload() will returns true even before the mouse button is released. You can then call IsDelivery() to test if the payload needs to be delivered. ImGuiDragDropFlags_AcceptNoDrawDefaultRect = 1 << 11, // Do not draw the default highlight rectangle when hovering over target. ImGuiDragDropFlags_AcceptNoPreviewTooltip = 1 << 12, // Request hiding the BeginDragDropSource tooltip from the BeginDragDropTarget site. - ImGuiDragDropFlags_AcceptPeekOnly = ImGuiDragDropFlags_AcceptBeforeDelivery | ImGuiDragDropFlags_AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. + ImGuiDragDropFlags_AcceptPeekOnly = ImGuiDragDropFlags_AcceptBeforeDelivery | ImGuiDragDropFlags_AcceptNoDrawDefaultRect, // For peeking ahead and inspecting the payload before delivery. }; // Standard Drag and Drop payload types. You can define you own payload types using short strings. Types starting with '_' are defined by Dear ImGui. @@ -1410,7 +1415,12 @@ enum ImGuiSortDirection_ ImGuiSortDirection_Descending = 2 // Descending = 9->0, Z->A etc. }; -enum ImGuiKey_ +// A key identifier (ImGuiKey_XXX or ImGuiMod_XXX value): can represent Keyboard, Mouse and Gamepad values. +// All our named keys are >= 512. Keys value 0 to 511 are left unused as legacy native/opaque key values (< 1.87). +// Since >= 1.89 we increased typing (went from int to enum), some legacy code may need a cast to ImGuiKey. +// Read details about the 1.87 and 1.89 transition : https://github.com/ocornut/imgui/issues/4921 +// Note that "Keys" related to physical keys and are not the same concept as input "Characters", the later are submitted via io.AddInputCharacter(). +enum ImGuiKey : int { // Keyboard ImGuiKey_None = 0, @@ -1464,112 +1474,95 @@ enum ImGuiKey_ ImGuiKey_KeypadEnter, ImGuiKey_KeypadEqual, - // Gamepad (some of those are analog values, 0.0f to 1.0f) // NAVIGATION action - ImGuiKey_GamepadStart, // Menu (Xbox) + (Switch) Start/Options (PS) // -- - ImGuiKey_GamepadBack, // View (Xbox) - (Switch) Share (PS) // -- - ImGuiKey_GamepadFaceUp, // Y (Xbox) X (Switch) Triangle (PS) // -> ImGuiNavInput_Input - ImGuiKey_GamepadFaceDown, // A (Xbox) B (Switch) Cross (PS) // -> ImGuiNavInput_Activate - ImGuiKey_GamepadFaceLeft, // X (Xbox) Y (Switch) Square (PS) // -> ImGuiNavInput_Menu - ImGuiKey_GamepadFaceRight, // B (Xbox) A (Switch) Circle (PS) // -> ImGuiNavInput_Cancel - ImGuiKey_GamepadDpadUp, // D-pad Up // -> ImGuiNavInput_DpadUp - ImGuiKey_GamepadDpadDown, // D-pad Down // -> ImGuiNavInput_DpadDown - ImGuiKey_GamepadDpadLeft, // D-pad Left // -> ImGuiNavInput_DpadLeft - ImGuiKey_GamepadDpadRight, // D-pad Right // -> ImGuiNavInput_DpadRight - ImGuiKey_GamepadL1, // L Bumper (Xbox) L (Switch) L1 (PS) // -> ImGuiNavInput_FocusPrev + ImGuiNavInput_TweakSlow - ImGuiKey_GamepadR1, // R Bumper (Xbox) R (Switch) R1 (PS) // -> ImGuiNavInput_FocusNext + ImGuiNavInput_TweakFast - ImGuiKey_GamepadL2, // L Trigger (Xbox) ZL (Switch) L2 (PS) [Analog] - ImGuiKey_GamepadR2, // R Trigger (Xbox) ZR (Switch) R2 (PS) [Analog] - ImGuiKey_GamepadL3, // L Thumbstick (Xbox) L3 (Switch) L3 (PS) - ImGuiKey_GamepadR3, // R Thumbstick (Xbox) R3 (Switch) R3 (PS) - ImGuiKey_GamepadLStickUp, // [Analog] // -> ImGuiNavInput_LStickUp - ImGuiKey_GamepadLStickDown, // [Analog] // -> ImGuiNavInput_LStickDown - ImGuiKey_GamepadLStickLeft, // [Analog] // -> ImGuiNavInput_LStickLeft - ImGuiKey_GamepadLStickRight, // [Analog] // -> ImGuiNavInput_LStickRight - ImGuiKey_GamepadRStickUp, // [Analog] - ImGuiKey_GamepadRStickDown, // [Analog] + // Gamepad (some of those are analog values, 0.0f to 1.0f) // NAVIGATION ACTION + // (download controller mapping PNG/PSD at http://dearimgui.com/controls_sheets) + ImGuiKey_GamepadStart, // Menu (Xbox) + (Switch) Start/Options (PS) + ImGuiKey_GamepadBack, // View (Xbox) - (Switch) Share (PS) + ImGuiKey_GamepadFaceLeft, // X (Xbox) Y (Switch) Square (PS) // Tap: Toggle Menu. Hold: Windowing mode (Focus/Move/Resize windows) + ImGuiKey_GamepadFaceRight, // B (Xbox) A (Switch) Circle (PS) // Cancel / Close / Exit + ImGuiKey_GamepadFaceUp, // Y (Xbox) X (Switch) Triangle (PS) // Text Input / On-screen Keyboard + ImGuiKey_GamepadFaceDown, // A (Xbox) B (Switch) Cross (PS) // Activate / Open / Toggle / Tweak + ImGuiKey_GamepadDpadLeft, // D-pad Left // Move / Tweak / Resize Window (in Windowing mode) + ImGuiKey_GamepadDpadRight, // D-pad Right // Move / Tweak / Resize Window (in Windowing mode) + ImGuiKey_GamepadDpadUp, // D-pad Up // Move / Tweak / Resize Window (in Windowing mode) + ImGuiKey_GamepadDpadDown, // D-pad Down // Move / Tweak / Resize Window (in Windowing mode) + ImGuiKey_GamepadL1, // L Bumper (Xbox) L (Switch) L1 (PS) // Tweak Slower / Focus Previous (in Windowing mode) + ImGuiKey_GamepadR1, // R Bumper (Xbox) R (Switch) R1 (PS) // Tweak Faster / Focus Next (in Windowing mode) + ImGuiKey_GamepadL2, // L Trig. (Xbox) ZL (Switch) L2 (PS) [Analog] + ImGuiKey_GamepadR2, // R Trig. (Xbox) ZR (Switch) R2 (PS) [Analog] + ImGuiKey_GamepadL3, // L Stick (Xbox) L3 (Switch) L3 (PS) + ImGuiKey_GamepadR3, // R Stick (Xbox) R3 (Switch) R3 (PS) + ImGuiKey_GamepadLStickLeft, // [Analog] // Move Window (in Windowing mode) + ImGuiKey_GamepadLStickRight, // [Analog] // Move Window (in Windowing mode) + ImGuiKey_GamepadLStickUp, // [Analog] // Move Window (in Windowing mode) + ImGuiKey_GamepadLStickDown, // [Analog] // Move Window (in Windowing mode) ImGuiKey_GamepadRStickLeft, // [Analog] ImGuiKey_GamepadRStickRight, // [Analog] + ImGuiKey_GamepadRStickUp, // [Analog] + ImGuiKey_GamepadRStickDown, // [Analog] + + // Aliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) + // - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API. + ImGuiKey_MouseLeft, ImGuiKey_MouseRight, ImGuiKey_MouseMiddle, ImGuiKey_MouseX1, ImGuiKey_MouseX2, ImGuiKey_MouseWheelX, ImGuiKey_MouseWheelY, + + // [Internal] Reserved for mod storage + ImGuiKey_ReservedForModCtrl, ImGuiKey_ReservedForModShift, ImGuiKey_ReservedForModAlt, ImGuiKey_ReservedForModSuper, + ImGuiKey_COUNT, // Keyboard Modifiers (explicitly submitted by backend via AddKeyEvent() calls) // - This is mirroring the data also written to io.KeyCtrl, io.KeyShift, io.KeyAlt, io.KeySuper, in a format allowing // them to be accessed via standard key API, allowing calls such as IsKeyPressed(), IsKeyReleased(), querying duration etc. - // - Code polling every keys (e.g. an interface to detect a key press for input mapping) might want to ignore those - // and prefer using the real keys (e.g. ImGuiKey_LeftCtrl, ImGuiKey_RightCtrl instead of ImGuiKey_ModCtrl). + // - Code polling every key (e.g. an interface to detect a key press for input mapping) might want to ignore those + // and prefer using the real keys (e.g. ImGuiKey_LeftCtrl, ImGuiKey_RightCtrl instead of ImGuiMod_Ctrl). // - In theory the value of keyboard modifiers should be roughly equivalent to a logical or of the equivalent left/right keys. // In practice: it's complicated; mods are often provided from different sources. Keyboard layout, IME, sticky keys and // backends tend to interfere and break that equivalence. The safer decision is to relay that ambiguity down to the end-user... - ImGuiKey_ModCtrl, ImGuiKey_ModShift, ImGuiKey_ModAlt, ImGuiKey_ModSuper, + ImGuiMod_None = 0, + ImGuiMod_Ctrl = 1 << 12, // Ctrl + ImGuiMod_Shift = 1 << 13, // Shift + ImGuiMod_Alt = 1 << 14, // Option/Menu + ImGuiMod_Super = 1 << 15, // Cmd/Super/Windows + ImGuiMod_Shortcut = 1 << 11, // Alias for Ctrl (non-macOS) _or_ Super (macOS). + ImGuiMod_Mask_ = 0xF800, // 5-bits - // End of list - ImGuiKey_COUNT, // No valid ImGuiKey is ever greater than this value - - // [Internal] Prior to 1.87 we required user to fill io.KeysDown[512] using their own native index + a io.KeyMap[] array. + // [Internal] Prior to 1.87 we required user to fill io.KeysDown[512] using their own native index + the io.KeyMap[] array. // We are ditching this method but keeping a legacy path for user code doing e.g. IsKeyPressed(MY_NATIVE_KEY_CODE) + // If you need to iterate all keys (for e.g. an input mapper) you may use ImGuiKey_NamedKey_BEGIN..ImGuiKey_NamedKey_END. ImGuiKey_NamedKey_BEGIN = 512, ImGuiKey_NamedKey_END = ImGuiKey_COUNT, ImGuiKey_NamedKey_COUNT = ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN, #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO - ImGuiKey_KeysData_SIZE = ImGuiKey_NamedKey_COUNT, // Size of KeysData[]: only hold named keys - ImGuiKey_KeysData_OFFSET = ImGuiKey_NamedKey_BEGIN // First key stored in KeysData[0] + ImGuiKey_KeysData_SIZE = ImGuiKey_NamedKey_COUNT, // Size of KeysData[]: only hold named keys + ImGuiKey_KeysData_OFFSET = ImGuiKey_NamedKey_BEGIN, // Accesses to io.KeysData[] must use (key - ImGuiKey_KeysData_OFFSET) index. #else - ImGuiKey_KeysData_SIZE = ImGuiKey_COUNT, // Size of KeysData[]: hold legacy 0..512 keycodes + named keys - ImGuiKey_KeysData_OFFSET = 0 // First key stored in KeysData[0] + ImGuiKey_KeysData_SIZE = ImGuiKey_COUNT, // Size of KeysData[]: hold legacy 0..512 keycodes + named keys + ImGuiKey_KeysData_OFFSET = 0, // Accesses to io.KeysData[] must use (key - ImGuiKey_KeysData_OFFSET) index. #endif #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - , ImGuiKey_KeyPadEnter = ImGuiKey_KeypadEnter // Renamed in 1.87 + ImGuiKey_ModCtrl = ImGuiMod_Ctrl, ImGuiKey_ModShift = ImGuiMod_Shift, ImGuiKey_ModAlt = ImGuiMod_Alt, ImGuiKey_ModSuper = ImGuiMod_Super, // Renamed in 1.89 + ImGuiKey_KeyPadEnter = ImGuiKey_KeypadEnter, // Renamed in 1.87 #endif }; -// Helper "flags" version of key-mods to store and compare multiple key-mods easily. Sometimes used for storage (e.g. io.KeyMods) but otherwise not much used in public API. -enum ImGuiModFlags_ +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO +// OBSOLETED in 1.88 (from July 2022): ImGuiNavInput and io.NavInputs[]. +// Official backends between 1.60 and 1.86: will keep working and feed gamepad inputs as long as IMGUI_DISABLE_OBSOLETE_KEYIO is not set. +// Custom backends: feed gamepad inputs via io.AddKeyEvent() and ImGuiKey_GamepadXXX enums. +enum ImGuiNavInput { - ImGuiModFlags_None = 0, - ImGuiModFlags_Ctrl = 1 << 0, - ImGuiModFlags_Shift = 1 << 1, - ImGuiModFlags_Alt = 1 << 2, // Menu - ImGuiModFlags_Super = 1 << 3 // Cmd/Super/Windows key -}; - -// Gamepad/Keyboard navigation -// Keyboard: Set io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.AddKeyEvent() calls. -// Gamepad: Set io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad to enable. Backend: set ImGuiBackendFlags_HasGamepad and fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). -// Read instructions in imgui.cpp for more details. Download PNG/PSD at http://dearimgui.org/controls_sheets. -enum ImGuiNavInput_ -{ - // Gamepad Mapping - ImGuiNavInput_Activate, // Activate / Open / Toggle / Tweak value // e.g. Cross (PS4), A (Xbox), A (Switch), Space (Keyboard) - ImGuiNavInput_Cancel, // Cancel / Close / Exit // e.g. Circle (PS4), B (Xbox), B (Switch), Escape (Keyboard) - ImGuiNavInput_Input, // Text input / On-Screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) - ImGuiNavInput_Menu, // Tap: Toggle menu / Hold: Focus, Move, Resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) - ImGuiNavInput_DpadLeft, // Move / Tweak / Resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) - ImGuiNavInput_DpadRight, // - ImGuiNavInput_DpadUp, // - ImGuiNavInput_DpadDown, // - ImGuiNavInput_LStickLeft, // Scroll / Move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down - ImGuiNavInput_LStickRight, // - ImGuiNavInput_LStickUp, // - ImGuiNavInput_LStickDown, // - ImGuiNavInput_FocusPrev, // Focus Next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) - ImGuiNavInput_FocusNext, // Focus Prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) - ImGuiNavInput_TweakSlow, // Slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) - ImGuiNavInput_TweakFast, // Faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) - - // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. - // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) will be directly reading from keyboard keys instead of io.NavInputs[]. - ImGuiNavInput_KeyLeft_, // Move left // = Arrow keys - ImGuiNavInput_KeyRight_, // Move right - ImGuiNavInput_KeyUp_, // Move up - ImGuiNavInput_KeyDown_, // Move down - ImGuiNavInput_COUNT + ImGuiNavInput_Activate, ImGuiNavInput_Cancel, ImGuiNavInput_Input, ImGuiNavInput_Menu, ImGuiNavInput_DpadLeft, ImGuiNavInput_DpadRight, ImGuiNavInput_DpadUp, ImGuiNavInput_DpadDown, + ImGuiNavInput_LStickLeft, ImGuiNavInput_LStickRight, ImGuiNavInput_LStickUp, ImGuiNavInput_LStickDown, ImGuiNavInput_FocusPrev, ImGuiNavInput_FocusNext, ImGuiNavInput_TweakSlow, ImGuiNavInput_TweakFast, + ImGuiNavInput_COUNT, }; +#endif // Configuration flags stored in io.ConfigFlags. Set by user/application. enum ImGuiConfigFlags_ { ImGuiConfigFlags_None = 0, - ImGuiConfigFlags_NavEnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.AddKeyEvent() calls - ImGuiConfigFlags_NavEnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui backend to fill io.NavInputs[]. Backend also needs to set ImGuiBackendFlags_HasGamepad. + ImGuiConfigFlags_NavEnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. Enable full Tabbing + directional arrows + space/enter to activate. + ImGuiConfigFlags_NavEnableGamepad = 1 << 1, // Master gamepad navigation enable flag. Backend also needs to set ImGuiBackendFlags_HasGamepad. ImGuiConfigFlags_NavEnableSetMousePos = 1 << 2, // Instruct navigation to move the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantSetMousePos=true. If enabled you MUST honor io.WantSetMousePos requests in your backend, otherwise ImGui will react as if the mouse is jumping around back and forth. ImGuiConfigFlags_NavNoCaptureKeyboard = 1 << 3, // Instruct navigation to not set the io.WantCaptureKeyboard flag when io.NavActive is set. ImGuiConfigFlags_NoMouse = 1 << 4, // Instruct imgui to clear mouse position/buttons in NewFrame(). This allows ignoring the mouse information set by the backend. @@ -1588,9 +1581,9 @@ enum ImGuiConfigFlags_ ImGuiConfigFlags_DpiEnableScaleViewports= 1 << 14, // [BETA: Don't use] FIXME-DPI: Reposition and resize imgui windows when the DpiScale of a viewport changed (mostly useful for the main viewport hosting other window). Note that resizing the main window itself is up to your application. ImGuiConfigFlags_DpiEnableScaleFonts = 1 << 15, // [BETA: Don't use] FIXME-DPI: Request bitmap-scaled fonts to match DpiScale. This is a very low-quality workaround. The correct way to handle DPI is _currently_ to replace the atlas and/or fonts in the Platform_OnChangedViewport callback, but this is all early work in progress. - // User storage (to allow your backend/engine to communicate to code that may be shared between multiple projects. Those flags are not used by core Dear ImGui) + // User storage (to allow your backend/engine to communicate to code that may be shared between multiple projects. Those flags are NOT used by core Dear ImGui) ImGuiConfigFlags_IsSRGB = 1 << 20, // Application is SRGB-aware. - ImGuiConfigFlags_IsTouchScreen = 1 << 21 // Application is using a touch screen instead of a mouse. + ImGuiConfigFlags_IsTouchScreen = 1 << 21, // Application is using a touch screen instead of a mouse. }; // Backend capabilities flags stored in io.BackendFlags. Set by imgui_impl_xxx or custom backend. @@ -1605,7 +1598,7 @@ enum ImGuiBackendFlags_ // [BETA] Viewports ImGuiBackendFlags_PlatformHasViewports = 1 << 10, // Backend Platform supports multiple viewports. ImGuiBackendFlags_HasMouseHoveredViewport=1 << 11, // Backend Platform supports calling io.AddMouseViewportEvent() with the viewport under the mouse. IF POSSIBLE, ignore viewports with the ImGuiViewportFlags_NoInputs flag (Win32 backend, GLFW 3.30+ backend can do this, SDL backend cannot). If this cannot be done, Dear ImGui needs to use a flawed heuristic to find the viewport under. - ImGuiBackendFlags_RendererHasViewports = 1 << 12 // Backend Renderer supports multiple viewports. + ImGuiBackendFlags_RendererHasViewports = 1 << 12, // Backend Renderer supports multiple viewports. }; // Enumeration for PushStyleColor() / PopStyleColor() @@ -1641,10 +1634,10 @@ enum ImGuiCol_ ImGuiCol_Separator, ImGuiCol_SeparatorHovered, ImGuiCol_SeparatorActive, - ImGuiCol_ResizeGrip, + ImGuiCol_ResizeGrip, // Resize grip in lower-right and lower-left corners of windows. ImGuiCol_ResizeGripHovered, ImGuiCol_ResizeGripActive, - ImGuiCol_Tab, + ImGuiCol_Tab, // TabItem in a TabBar ImGuiCol_TabHovered, ImGuiCol_TabActive, ImGuiCol_TabUnfocused, @@ -1661,7 +1654,7 @@ enum ImGuiCol_ ImGuiCol_TableRowBg, // Table row background (even rows) ImGuiCol_TableRowBgAlt, // Table row background (odd rows) ImGuiCol_TextSelectedBg, - ImGuiCol_DragDropTarget, + ImGuiCol_DragDropTarget, // Rectangle highlighting a drop target ImGuiCol_NavHighlight, // Gamepad/keyboard: current highlighted item ImGuiCol_NavWindowingHighlight, // Highlight window when using CTRL+TAB ImGuiCol_NavWindowingDimBg, // Darken/colorize entire screen behind the CTRL+TAB window list, when active @@ -1705,6 +1698,9 @@ enum ImGuiStyleVar_ ImGuiStyleVar_TabRounding, // float TabRounding ImGuiStyleVar_ButtonTextAlign, // ImVec2 ButtonTextAlign ImGuiStyleVar_SelectableTextAlign, // ImVec2 SelectableTextAlign + ImGuiStyleVar_SeparatorTextBorderSize,// float SeparatorTextBorderSize + ImGuiStyleVar_SeparatorTextAlign, // ImVec2 SeparatorTextAlign + ImGuiStyleVar_SeparatorTextPadding,// ImVec2 SeparatorTextPadding ImGuiStyleVar_COUNT }; @@ -1718,7 +1714,7 @@ enum ImGuiButtonFlags_ // [Internal] ImGuiButtonFlags_MouseButtonMask_ = ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle, - ImGuiButtonFlags_MouseButtonDefault_ = ImGuiButtonFlags_MouseButtonLeft + ImGuiButtonFlags_MouseButtonDefault_ = ImGuiButtonFlags_MouseButtonLeft, }; // Flags for ColorEdit3() / ColorEdit4() / ColorPicker3() / ColorPicker4() / ColorButton() @@ -1759,14 +1755,15 @@ enum ImGuiColorEditFlags_ ImGuiColorEditFlags_DisplayMask_ = ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex, ImGuiColorEditFlags_DataTypeMask_ = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_Float, ImGuiColorEditFlags_PickerMask_ = ImGuiColorEditFlags_PickerHueWheel | ImGuiColorEditFlags_PickerHueBar, - ImGuiColorEditFlags_InputMask_ = ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_InputHSV + ImGuiColorEditFlags_InputMask_ = ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_InputHSV, - // Obsolete names (will be removed) - // ImGuiColorEditFlags_RGB = ImGuiColorEditFlags_DisplayRGB, ImGuiColorEditFlags_HSV = ImGuiColorEditFlags_DisplayHSV, ImGuiColorEditFlags_HEX = ImGuiColorEditFlags_DisplayHex // [renamed in 1.69] + // Obsolete names + //ImGuiColorEditFlags_RGB = ImGuiColorEditFlags_DisplayRGB, ImGuiColorEditFlags_HSV = ImGuiColorEditFlags_DisplayHSV, ImGuiColorEditFlags_HEX = ImGuiColorEditFlags_DisplayHex // [renamed in 1.69] }; // Flags for DragFloat(), DragInt(), SliderFloat(), SliderInt() etc. // We use the same sets of flags for DragXXX() and SliderXXX() functions as the features are the same and it makes it easier to swap them. +// (Those are per-item flags. There are shared flags in ImGuiIO: io.ConfigDragClickToInputText) enum ImGuiSliderFlags_ { ImGuiSliderFlags_None = 0, @@ -1774,12 +1771,10 @@ enum ImGuiSliderFlags_ ImGuiSliderFlags_Logarithmic = 1 << 5, // Make the widget logarithmic (linear otherwise). Consider using ImGuiSliderFlags_NoRoundToFormat with this if using a format-string with small amount of digits. ImGuiSliderFlags_NoRoundToFormat = 1 << 6, // Disable rounding underlying value to match precision of the display format string (e.g. %.3f values are rounded to those 3 digits) ImGuiSliderFlags_NoInput = 1 << 7, // Disable CTRL+Click or Enter key allowing to input text directly into the widget - ImGuiSliderFlags_InvalidMask_ = 0x7000000F // [Internal] We treat using those bits as being potentially a 'float power' argument from the previous API that has got miscast to this enum, and will trigger an assert if needed. + ImGuiSliderFlags_InvalidMask_ = 0x7000000F, // [Internal] We treat using those bits as being potentially a 'float power' argument from the previous API that has got miscast to this enum, and will trigger an assert if needed. - // Obsolete names (will be removed) -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - , ImGuiSliderFlags_ClampOnInput = ImGuiSliderFlags_AlwaysClamp // [renamed in 1.79] -#endif + // Obsolete names + //ImGuiSliderFlags_ClampOnInput = ImGuiSliderFlags_AlwaysClamp, // [renamed in 1.79] }; // Identify a mouse button. @@ -1800,7 +1795,7 @@ enum ImGuiMouseCursor_ ImGuiMouseCursor_Arrow = 0, ImGuiMouseCursor_TextInput, // When hovering over InputText, etc. ImGuiMouseCursor_ResizeAll, // (Unused by Dear ImGui functions) - ImGuiMouseCursor_ResizeNS, // When hovering over an horizontal border + ImGuiMouseCursor_ResizeNS, // When hovering over a horizontal border ImGuiMouseCursor_ResizeEW, // When hovering over a vertical border or a column ImGuiMouseCursor_ResizeNESW, // When hovering over the bottom-left corner of a window ImGuiMouseCursor_ResizeNWSE, // When hovering over the bottom-right corner of a window @@ -1809,16 +1804,28 @@ enum ImGuiMouseCursor_ ImGuiMouseCursor_COUNT }; +// Enumeration for AddMouseSourceEvent() actual source of Mouse Input data. +// Historically we use "Mouse" terminology everywhere to indicate pointer data, e.g. MousePos, IsMousePressed(), io.AddMousePosEvent() +// But that "Mouse" data can come from different source which occasionally may be useful for application to know about. +// You can submit a change of pointer type using io.AddMouseSourceEvent(). +enum ImGuiMouseSource : int +{ + ImGuiMouseSource_Mouse = 0, // Input is coming from an actual mouse. + ImGuiMouseSource_TouchScreen, // Input is coming from a touch screen (no hovering prior to initial press, less precise initial press aiming, dual-axis wheeling possible). + ImGuiMouseSource_Pen, // Input is coming from a pressure/magnetic pen (often used in conjunction with high-sampling rates). + ImGuiMouseSource_COUNT +}; + // Enumeration for ImGui::SetWindow***(), SetNextWindow***(), SetNextItem***() functions // Represent a condition. // Important: Treat as a regular enum! Do NOT combine multiple values using binary operators! All the functions above treat 0 as a shortcut to ImGuiCond_Always. enum ImGuiCond_ { ImGuiCond_None = 0, // No condition (always set the variable), same as _Always - ImGuiCond_Always = 1 << 0, // No condition (always set the variable) + ImGuiCond_Always = 1 << 0, // No condition (always set the variable), same as _None ImGuiCond_Once = 1 << 1, // Set the variable once per runtime session (only the first call will succeed) ImGuiCond_FirstUseEver = 1 << 2, // Set the variable if the object/window has no persistently saved data (no entry in .ini file) - ImGuiCond_Appearing = 1 << 3 // Set the variable if the object/window is appearing after being hidden/inactive (or the first time) + ImGuiCond_Appearing = 1 << 3, // Set the variable if the object/window is appearing after being hidden/inactive (or the first time) }; //----------------------------------------------------------------------------- @@ -1867,7 +1874,7 @@ struct ImVector // Constructors, destructor inline ImVector() { Size = Capacity = 0; Data = NULL; } inline ImVector(const ImVector& src) { Size = Capacity = 0; Data = NULL; operator=(src); } - inline ImVector& operator=(const ImVector& src) { clear(); resize(src.Size); memcpy(Data, src.Data, (size_t)Size * sizeof(T)); return *this; } + inline ImVector& operator=(const ImVector& src) { clear(); resize(src.Size); if (src.Data) memcpy(Data, src.Data, (size_t)Size * sizeof(T)); return *this; } inline ~ImVector() { if (Data) IM_FREE(Data); } // Important: does not destruct anything inline void clear() { if (Data) { Size = Capacity = 0; IM_FREE(Data); Data = NULL; } } // Important: does not destruct anything @@ -1898,6 +1905,7 @@ struct ImVector inline void resize(int new_size, const T& v) { if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) memcpy(&Data[n], &v, sizeof(v)); Size = new_size; } inline void shrink(int new_size) { IM_ASSERT(new_size <= Size); Size = new_size; } // Resize a vector to a smaller size, guaranteed not to cause a reallocation inline void reserve(int new_capacity) { if (new_capacity <= Capacity) return; T* new_data = (T*)IM_ALLOC((size_t)new_capacity * sizeof(T)); if (Data) { memcpy(new_data, Data, (size_t)Size * sizeof(T)); IM_FREE(Data); } Data = new_data; Capacity = new_capacity; } + inline void reserve_discard(int new_capacity) { if (new_capacity <= Capacity) return; if (Data) IM_FREE(Data); Data = (T*)IM_ALLOC((size_t)new_capacity * sizeof(T)); Capacity = new_capacity; } // NB: It is illegal to call push_back/push_front/insert with a reference pointing inside the ImVector data itself! e.g. v.push_back(v[10]) is forbidden. inline void push_back(const T& v) { if (Size == Capacity) reserve(_grow_capacity(Size + 1)); memcpy(&Data[Size], &v, sizeof(v)); Size++; } @@ -1931,7 +1939,7 @@ struct ImGuiStyle ImVec2 WindowPadding; // Padding within a window. float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. Large values tend to lead to variety of artifacts and are not recommended. float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). - ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). + ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constrain individual windows, use SetNextWindowSizeConstraints(). ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. ImGuiDir WindowMenuButtonPosition; // Side of the collapsing/docking button in the title bar (None/Left/Right). Defaults to ImGuiDir_Left. float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. @@ -1955,10 +1963,13 @@ struct ImGuiStyle float LogSliderDeadzone; // The size in pixels of the dead-zone around zero on logarithmic sliders that cross zero. float TabRounding; // Radius of upper corners of a tab. Set to 0.0f to have rectangular tabs. float TabBorderSize; // Thickness of border around tabs. - float TabMinWidthForCloseButton; // Minimum width for close button to appears on an unselected tab when hovered. Set to 0.0f to always show when hovering, set to FLT_MAX to never show close button unless selected. + float TabMinWidthForCloseButton; // Minimum width for close button to appear on an unselected tab when hovered. Set to 0.0f to always show when hovering, set to FLT_MAX to never show close button unless selected. ImGuiDir ColorButtonPosition; // Side of the color button in the ColorEdit4 widget (left/right). Defaults to ImGuiDir_Right. ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered). ImVec2 SelectableTextAlign; // Alignment of selectable text. Defaults to (0.0f, 0.0f) (top-left aligned). It's generally important to keep this left-aligned if you want to lay multiple items on a same line. + float SeparatorTextBorderSize; // Thickkness of border in SeparatorText() + ImVec2 SeparatorTextAlign; // Alignment of text within the separator. Defaults to (0.0f, 0.5f) (left aligned, center). + ImVec2 SeparatorTextPadding; // Horizontal offset of text from each edge of the separator + spacing on other axis. Generally small values. .y is recommended to be == FramePadding.y. ImVec2 DisplayWindowPadding; // Window position are clamped to be visible within the display area or monitors by at least this amount. Only applies to regular windows. ImVec2 DisplaySafeAreaPadding; // If you cannot see the edges of your screen (e.g. on a TV) increase the safe area padding. Apply to popups/tooltips as well regular windows. NB: Prefer configuring your TV sets correctly! float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). We apply per-monitor DPI scaling over this scale. May be removed later. @@ -1981,7 +1992,7 @@ struct ImGuiStyle //----------------------------------------------------------------------------- // [Internal] Storage used by IsKeyDown(), IsKeyPressed() etc functions. -// If prior to 1.87 you used io.KeysDownDuration[] (which was marked as internal), you should use GetKeyData(key)->DownDuration and not io.KeysData[key]->DownDuration. +// If prior to 1.87 you used io.KeysDownDuration[] (which was marked as internal), you should use GetKeyData(key)->DownDuration and *NOT* io.KeysData[key]->DownDuration. struct ImGuiKeyData { bool Down; // True for if key is down @@ -2006,9 +2017,11 @@ struct ImGuiIO float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. - float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). + float KeyRepeatDelay; // = 0.275f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). float KeyRepeatRate; // = 0.050f // When holding a key/button, rate at which it repeats, in seconds. - void* UserData; // = NULL // Store your own data for retrieval by callbacks. + float HoverDelayNormal; // = 0.30 sec // Delay on hovering before IsItemHovered(ImGuiHoveredFlags_DelayNormal) returns true. + float HoverDelayShort; // = 0.10 sec // Delay on hovering before IsItemHovered(ImGuiHoveredFlags_DelayShort) returns true. + void* UserData; // = NULL // Store your own data. ImFontAtlas*Fonts; // // Font atlas: load, rasterize and pack one or more fonts into a single texture. float FontGlobalScale; // = 1.0f // Global scale all fonts @@ -2036,11 +2049,24 @@ struct ImGuiIO bool ConfigMacOSXBehaviors; // = defined(__APPLE__) // OS X style: Text editing cursor movement using Alt instead of Ctrl, Shortcuts using Cmd/Super instead of Ctrl, Line/Text Start and End using Cmd+Arrows instead of Home/End, Double click selects by word instead of selecting whole text, Multi-selection in lists uses Cmd/Super instead of Ctrl. bool ConfigInputTrickleEventQueue; // = true // Enable input queue trickling: some types of events submitted during the same frame (e.g. button down + up) will be spread over multiple frames, improving interactions with low framerates. bool ConfigInputTextCursorBlink; // = true // Enable blinking cursor (optional as some users consider it to be distracting). + bool ConfigInputTextEnterKeepActive; // = false // [BETA] Pressing Enter will keep item active and select contents (single-line only). bool ConfigDragClickToInputText; // = false // [BETA] Enable turning DragXXX widgets into text input with a simple mouse click-release (without moving). Not desirable on devices without a keyboard. bool ConfigWindowsResizeFromEdges; // = true // Enable resizing of windows from their edges and from the lower-left corner. This requires (io.BackendFlags & ImGuiBackendFlags_HasMouseCursors) because it needs mouse cursor feedback. (This used to be a per-window ImGuiWindowFlags_ResizeFromAnySide flag) bool ConfigWindowsMoveFromTitleBarOnly; // = false // Enable allowing to move windows only when clicking on their title bar. Does not apply to windows without a title bar. float ConfigMemoryCompactTimer; // = 60.0f // Timer (in seconds) to free transient windows/tables memory buffers when unused. Set to -1.0f to disable. + // Debug options + // - tools to test correct Begin/End and BeginChild/EndChild behaviors. + // - presently Begin()/End() and BeginChild()/EndChild() needs to ALWAYS be called in tandem, regardless of return value of BeginXXX() + // this is inconsistent with other BeginXXX functions and create confusion for many users. + // - we expect to update the API eventually. In the meanwhile we provide tools to facilitate checking user-code behavior. + bool ConfigDebugBeginReturnValueOnce;// = false // First-time calls to Begin()/BeginChild() will return false. NEEDS TO BE SET AT APPLICATION BOOT TIME if you don't want to miss windows. + bool ConfigDebugBeginReturnValueLoop;// = false // Some calls to Begin()/BeginChild() will return false. Will cycle through window depths then repeat. Suggested use: add "io.ConfigDebugBeginReturnValue = io.KeyShift" in your main loop then occasionally press SHIFT. Windows should be flickering while running. + // - option to deactivate io.AddFocusEvent(false) handling. May facilitate interactions with a debugger when focus loss leads to clearing inputs data. + // - backends may have other side-effects on focus loss, so this will reduce side-effects but not necessary remove all of them. + // - consider using e.g. Win32's IsDebuggerPresent() as an additional filter (or see ImOsIsDebuggerPresent() in imgui_test_engine/imgui_te_utils.cpp for a Unix compatible version). + bool ConfigDebugIgnoreFocusLoss; // = false // Ignore io.AddFocusEvent(false), consequently not calling io.ClearInputKeys() in input processing. + //------------------------------------------------------------------ // Platform Functions // (the imgui_impl_xxxx backend files are setting those up for you) @@ -2077,16 +2103,18 @@ struct ImGuiIO IMGUI_API void AddKeyAnalogEvent(ImGuiKey key, bool down, float v); // Queue a new key down/up event for analog values (e.g. ImGuiKey_Gamepad_ values). Dead-zones should be handled by the backend. IMGUI_API void AddMousePosEvent(float x, float y); // Queue a mouse position update. Use -FLT_MAX,-FLT_MAX to signify no mouse (e.g. app not focused and not hovered) IMGUI_API void AddMouseButtonEvent(int button, bool down); // Queue a mouse button change - IMGUI_API void AddMouseWheelEvent(float wh_x, float wh_y); // Queue a mouse wheel update + IMGUI_API void AddMouseWheelEvent(float wheel_x, float wheel_y); // Queue a mouse wheel update. wheel_y<0: scroll down, wheel_y>0: scroll up, wheel_x<0: scroll right, wheel_x>0: scroll left. + IMGUI_API void AddMouseSourceEvent(ImGuiMouseSource source); // Queue a mouse source change (Mouse/TouchScreen/Pen) IMGUI_API void AddMouseViewportEvent(ImGuiID id); // Queue a mouse hovered viewport. Requires backend to set ImGuiBackendFlags_HasMouseHoveredViewport to call this (for multi-viewport support). IMGUI_API void AddFocusEvent(bool focused); // Queue a gain/loss of focus for the application (generally based on OS/platform focus of your window) IMGUI_API void AddInputCharacter(unsigned int c); // Queue a new character input - IMGUI_API void AddInputCharacterUTF16(ImWchar16 c); // Queue a new character input from an UTF-16 character, it can be a surrogate - IMGUI_API void AddInputCharactersUTF8(const char* str); // Queue a new characters input from an UTF-8 string + IMGUI_API void AddInputCharacterUTF16(ImWchar16 c); // Queue a new character input from a UTF-16 character, it can be a surrogate + IMGUI_API void AddInputCharactersUTF8(const char* str); // Queue a new characters input from a UTF-8 string + IMGUI_API void SetKeyEventNativeData(ImGuiKey key, int native_keycode, int native_scancode, int native_legacy_index = -1); // [Optional] Specify index for legacy <1.87 IsKeyXXX() functions with native indices + specify native keycode, scancode. + IMGUI_API void SetAppAcceptingEvents(bool accepting_events); // Set master flag for accepting key/mouse/text events (default to true). Useful if you have native dialog boxes that are interrupting your application loop/refresh, and you want to disable events being queued while your app is frozen. IMGUI_API void ClearInputCharacters(); // [Internal] Clear the text input buffer manually IMGUI_API void ClearInputKeys(); // [Internal] Release all keys - IMGUI_API void SetKeyEventNativeData(ImGuiKey key, int native_keycode, int native_scancode, int native_legacy_index = -1); // [Optional] Specify index for legacy <1.87 IsKeyXXX() functions with native indices + specify native keycode, scancode. //------------------------------------------------------------------ // Output - Updated by NewFrame() or EndFrame()/Render() @@ -2102,7 +2130,7 @@ struct ImGuiIO bool IsSomethingHappening; // This is set to true when inertial scrolling is happening. bool NavActive; // Keyboard/Gamepad navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. bool NavVisible; // Keyboard/Gamepad navigation is visible and allowed (will handle ImGuiKey_NavXXX events). - float Framerate; // Rough estimate of application framerate, in frame per second. Solely for convenience. Rolling average estimation based on io.DeltaTime over 120 frames. + float Framerate; // Estimate of application framerate (rolling average over 60 frames, based on io.DeltaTime), in frame per second. Solely for convenience. Slow applications may not want to use a moving average or may want to reset underlying buffers occasionally. int MetricsRenderVertices; // Vertices output during last call to Render() int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 int MetricsRenderWindows; // Number of visible windows @@ -2114,32 +2142,36 @@ struct ImGuiIO // Legacy: before 1.87, we required backend to fill io.KeyMap[] (imgui->native map) during initialization and io.KeysDown[] (native indices) every frame. // This is still temporarily supported as a legacy feature. However the new preferred scheme is for backend to call io.AddKeyEvent(). + // Old (<1.87): ImGui::IsKeyPressed(ImGui::GetIO().KeyMap[ImGuiKey_Space]) --> New (1.87+) ImGui::IsKeyPressed(ImGuiKey_Space) #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO int KeyMap[ImGuiKey_COUNT]; // [LEGACY] Input: map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. The first 512 are now unused and should be kept zero. Legacy backend will write into KeyMap[] using ImGuiKey_ indices which are always >512. bool KeysDown[ImGuiKey_COUNT]; // [LEGACY] Input: Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). This used to be [512] sized. It is now ImGuiKey_COUNT to allow legacy io.KeysDown[GetKeyIndex(...)] to work without an overflow. + float NavInputs[ImGuiNavInput_COUNT]; // [LEGACY] Since 1.88, NavInputs[] was removed. Backends from 1.60 to 1.86 won't build. Feed gamepad inputs via io.AddKeyEvent() and ImGuiKey_GamepadXXX enums. #endif //------------------------------------------------------------------ // [Internal] Dear ImGui will maintain those fields. Forward compatibility not guaranteed! //------------------------------------------------------------------ + ImGuiContext* Ctx; // Parent UI context (needs to be set explicitly by parent). + // Main Input State // (this block used to be written by backend, since 1.87 it is best to NOT write to those directly, call the AddXXX functions above instead) // (reading from those variables is fair game, as they are extremely unlikely to be moving anywhere) ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) - bool MouseDown[5]; // Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5). Dear ImGui mostly uses left and right buttons. Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. - float MouseWheel; // Mouse wheel Vertical: 1 unit scrolls about 5 lines text. - float MouseWheelH; // Mouse wheel Horizontal. Most users don't have a mouse with an horizontal wheel, may not be filled by all backends. + bool MouseDown[5]; // Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5). Dear ImGui mostly uses left and right buttons. Other buttons allow us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + float MouseWheel; // Mouse wheel Vertical: 1 unit scrolls about 5 lines text. >0 scrolls Up, <0 scrolls Down. Hold SHIFT to turn vertical scroll into horizontal scroll. + float MouseWheelH; // Mouse wheel Horizontal. >0 scrolls Left, <0 scrolls Right. Most users don't have a mouse with a horizontal wheel, may not be filled by all backends. + ImGuiMouseSource MouseSource; // Mouse actual input peripheral (Mouse/TouchScreen/Pen). ImGuiID MouseHoveredViewport; // (Optional) Modify using io.AddMouseViewportEvent(). With multi-viewports: viewport the OS mouse is hovering. If possible _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag is much better (few backends can handle that). Set io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport if you can provide this info. If you don't imgui will infer the value using the rectangles and last focused time of the viewports it knows about (ignoring other OS windows). bool KeyCtrl; // Keyboard modifier down: Control bool KeyShift; // Keyboard modifier down: Shift bool KeyAlt; // Keyboard modifier down: Alt bool KeySuper; // Keyboard modifier down: Cmd/Super/Windows - float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs. Cleared back to zero by EndFrame(). Keyboard keys will be auto-mapped and be written here by NewFrame(). // Other state maintained from data above + IO function calls - ImGuiModFlags KeyMods; // Key mods flags (same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags), updated by NewFrame() - ImGuiKeyData KeysData[ImGuiKey_KeysData_SIZE]; // Key state for all known keys. Use IsKeyXXX() functions to access this. + ImGuiKeyChord KeyMods; // Key mods flags (any of ImGuiMod_Ctrl/ImGuiMod_Shift/ImGuiMod_Alt/ImGuiMod_Super flags, same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags. DOES NOT CONTAINS ImGuiMod_Shortcut which is pretranslated). Read-only, updated by NewFrame() + ImGuiKeyData KeysData[ImGuiKey_KeysData_SIZE]; // Key state for all known keys. Use IsKeyXXX() functions to access this. bool WantCaptureMouseUnlessPopupClose; // Alternative to WantCaptureMouse: (WantCaptureMouse == true && WantCaptureMouseUnlessPopupClose == false) when a click over void is expected to close a popup. ImVec2 MousePosPrev; // Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) ImVec2 MouseClickedPos[5]; // Position at time of clicking @@ -2151,14 +2183,14 @@ struct ImGuiIO bool MouseReleased[5]; // Mouse button went from Down to !Down bool MouseDownOwned[5]; // Track if button was clicked inside a dear imgui window or over void blocked by a popup. We don't request mouse capture from the application if click started outside ImGui bounds. bool MouseDownOwnedUnlessPopupClose[5]; // Track if button was clicked inside a dear imgui window. + bool MouseWheelRequestAxisSwap; // On a non-Mac system, holding SHIFT requests WheelY to perform the equivalent of a WheelX event. On a Mac system this is already enforced by the system. float MouseDownDuration[5]; // Duration the mouse button has been down (0.0f == just clicked) float MouseDownDurationPrev[5]; // Previous time the mouse button has been down ImVec2 MouseDragMaxDistanceAbs[5]; // Maximum distance, absolute, on each axis, of how much mouse has traveled from the clicking point float MouseDragMaxDistanceSqr[5]; // Squared maximum distance of how much mouse has traveled from the clicking point (used for moving thresholds) - float NavInputsDownDuration[ImGuiNavInput_COUNT]; - float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; float PenPressure; // Touch/Pen pressure (0.0f to 1.0f, should be >0.0f only when MouseDown[0] == true). Helper storage currently unused by Dear ImGui. - bool AppFocusLost; + bool AppFocusLost; // Only modify via AddFocusEvent() + bool AppAcceptingEvents; // Only modify via SetAppAcceptingEvents() ImS8 BackendUsingLegacyKeyArrays; // -1: unknown, 0: using AddKeyEvent(), 1: using legacy io.KeysDown[] bool BackendUsingLegacyNavInputArray; // 0: using AddKeyAnalogEvent(), 1: writing to legacy io.NavInputs[] directly ImWchar16 InputQueueSurrogate; // For AddInputCharacterUTF16() @@ -2182,6 +2214,7 @@ struct ImGuiIO // - ImGuiInputTextFlags_CallbackResize: Callback on buffer capacity changes request (beyond 'buf_size' parameter value), allowing the string to grow. struct ImGuiInputTextCallbackData { + ImGuiContext* Ctx; // Parent UI context ImGuiInputTextFlags EventFlag; // One ImGuiInputTextFlags_Callback* // Read-only ImGuiInputTextFlags Flags; // What user passed to InputText() // Read-only void* UserData; // What user passed to InputText() // Read-only @@ -2213,7 +2246,7 @@ struct ImGuiInputTextCallbackData // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. struct ImGuiSizeCallbackData { - void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() + void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints(). Generally store an integer or float in here (need reinterpret_cast<>). ImVec2 Pos; // Read-only. Window position, for reference. ImVec2 CurrentSize; // Read-only. Current window size. ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. @@ -2287,7 +2320,7 @@ struct ImGuiTableSortSpecs }; //----------------------------------------------------------------------------- -// [SECTION] Helpers (ImGuiOnceUponAFrame, ImGuiTextFilter, ImGuiTextBuffer, ImGuiStorage, ImGuiListClipper, ImColor) +// [SECTION] Helpers (ImGuiOnceUponAFrame, ImGuiTextFilter, ImGuiTextBuffer, ImGuiStorage, ImGuiListClipper, Math Operators, ImColor) //----------------------------------------------------------------------------- // Helper: Unicode defines @@ -2298,7 +2331,7 @@ struct ImGuiTableSortSpecs #define IM_UNICODE_CODEPOINT_MAX 0xFFFF // Maximum Unicode code point supported by this build. #endif -// Helper: Execute a block of code at maximum once a frame. Convenient if you want to quickly create an UI within deep-nested code that runs multiple times every frame. +// Helper: Execute a block of code at maximum once a frame. Convenient if you want to quickly create a UI within deep-nested code that runs multiple times every frame. // Usage: static ImGuiOnceUponAFrame oaf; if (oaf) ImGui::Text("This will be called only once per frame"); struct ImGuiOnceUponAFrame { @@ -2406,7 +2439,7 @@ struct ImGuiStorage }; // Helper: Manually clip large list of items. -// If you have lots evenly spaced items and you have a random access to the list, you can perform coarse +// If you have lots evenly spaced items and you have random access to the list, you can perform coarse // clipping based on visibility to only submit items that are in view. // The clipper calculates the range of visible items and advance the cursor to compensate for the non-visible items we have skipped. // (Dear ImGui already clip items based on their bounds but: it needs to first layout the item to do so, and generally @@ -2427,6 +2460,7 @@ struct ImGuiStorage // - The clipper also handles various subtleties related to keyboard/gamepad navigation, wrapping etc. struct ImGuiListClipper { + ImGuiContext* Ctx; // Parent UI context int DisplayStart; // First item to display, updated by each call to Step() int DisplayEnd; // End of items to display (exclusive) int ItemsCount; // [Internal] Number of items @@ -2442,14 +2476,42 @@ struct ImGuiListClipper IMGUI_API void End(); // Automatically called on the last call of Step() that returns false. IMGUI_API bool Step(); // Call until it returns false. The DisplayStart/DisplayEnd fields will be set and you can process/draw those items. - // Call ForceDisplayRangeByIndices() before first call to Step() if you need a range of items to be displayed regardless of visibility. - IMGUI_API void ForceDisplayRangeByIndices(int item_min, int item_max); // item_max is exclusive e.g. use (42, 42+1) to make item 42 always visible BUT due to alignment/padding of certain items it is likely that an extra item may be included on either end of the display range. + // Call IncludeRangeByIndices() *BEFORE* first call to Step() if you need a range of items to not be clipped, regardless of their visibility. + // (Due to alignment / padding of certain items it is possible that an extra item may be included on either end of the display range). + IMGUI_API void IncludeRangeByIndices(int item_begin, int item_end); // item_end is exclusive e.g. use (42, 42+1) to make item 42 never clipped. #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - inline ImGuiListClipper(int items_count, float items_height = -1.0f) { memset(this, 0, sizeof(*this)); ItemsCount = -1; Begin(items_count, items_height); } // [removed in 1.79] + inline void ForceDisplayRangeByIndices(int item_begin, int item_end) { IncludeRangeByIndices(item_begin, item_end); } // [renamed in 1.89.6] + //inline ImGuiListClipper(int items_count, float items_height = -1.0f) { memset(this, 0, sizeof(*this)); ItemsCount = -1; Begin(items_count, items_height); } // [removed in 1.79] #endif }; +// Helpers: ImVec2/ImVec4 operators +// - It is important that we are keeping those disabled by default so they don't leak in user space. +// - This is in order to allow user enabling implicit cast operators between ImVec2/ImVec4 and their own types (using IM_VEC2_CLASS_EXTRA in imconfig.h) +// - You can use '#define IMGUI_DEFINE_MATH_OPERATORS' to import our operators, provided as a courtesy. +#ifdef IMGUI_DEFINE_MATH_OPERATORS +#define IMGUI_DEFINE_MATH_OPERATORS_IMPLEMENTED +IM_MSVC_RUNTIME_CHECKS_OFF +static inline ImVec2 operator*(const ImVec2& lhs, const float rhs) { return ImVec2(lhs.x * rhs, lhs.y * rhs); } +static inline ImVec2 operator/(const ImVec2& lhs, const float rhs) { return ImVec2(lhs.x / rhs, lhs.y / rhs); } +static inline ImVec2 operator+(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x + rhs.x, lhs.y + rhs.y); } +static inline ImVec2 operator-(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x - rhs.x, lhs.y - rhs.y); } +static inline ImVec2 operator*(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x * rhs.x, lhs.y * rhs.y); } +static inline ImVec2 operator/(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x / rhs.x, lhs.y / rhs.y); } +static inline ImVec2 operator-(const ImVec2& lhs) { return ImVec2(-lhs.x, -lhs.y); } +static inline ImVec2& operator*=(ImVec2& lhs, const float rhs) { lhs.x *= rhs; lhs.y *= rhs; return lhs; } +static inline ImVec2& operator/=(ImVec2& lhs, const float rhs) { lhs.x /= rhs; lhs.y /= rhs; return lhs; } +static inline ImVec2& operator+=(ImVec2& lhs, const ImVec2& rhs) { lhs.x += rhs.x; lhs.y += rhs.y; return lhs; } +static inline ImVec2& operator-=(ImVec2& lhs, const ImVec2& rhs) { lhs.x -= rhs.x; lhs.y -= rhs.y; return lhs; } +static inline ImVec2& operator*=(ImVec2& lhs, const ImVec2& rhs) { lhs.x *= rhs.x; lhs.y *= rhs.y; return lhs; } +static inline ImVec2& operator/=(ImVec2& lhs, const ImVec2& rhs) { lhs.x /= rhs.x; lhs.y /= rhs.y; return lhs; } +static inline ImVec4 operator+(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z, lhs.w + rhs.w); } +static inline ImVec4 operator-(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z, lhs.w - rhs.w); } +static inline ImVec4 operator*(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x * rhs.x, lhs.y * rhs.y, lhs.z * rhs.z, lhs.w * rhs.w); } +IM_MSVC_RUNTIME_CHECKS_RESTORE +#endif + // Helpers macros to generate 32-bit encoded colors // User can declare their own format by #defining the 5 _SHIFT/_MASK macros in their imconfig file. #ifndef IM_COL32_R_SHIFT @@ -2552,7 +2614,7 @@ struct ImDrawVert #else // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. -// The type has to be described within the macro (you can either declare the struct or use a typedef). This is because ImVec2/ImU32 are likely not declared a the time you'd want to set your type up. +// The type has to be described within the macro (you can either declare the struct or use a typedef). This is because ImVec2/ImU32 are likely not declared at the time you'd want to set your type up. // NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; #endif @@ -2607,7 +2669,7 @@ enum ImDrawFlags_ ImDrawFlags_RoundCornersRight = ImDrawFlags_RoundCornersBottomRight | ImDrawFlags_RoundCornersTopRight, ImDrawFlags_RoundCornersAll = ImDrawFlags_RoundCornersTopLeft | ImDrawFlags_RoundCornersTopRight | ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersBottomRight, ImDrawFlags_RoundCornersDefault_ = ImDrawFlags_RoundCornersAll, // Default to ALL corners if none of the _RoundCornersXX flags are specified. - ImDrawFlags_RoundCornersMask_ = ImDrawFlags_RoundCornersAll | ImDrawFlags_RoundCornersNone + ImDrawFlags_RoundCornersMask_ = ImDrawFlags_RoundCornersAll | ImDrawFlags_RoundCornersNone, }; // Flags for ImDrawList instance. Those are set automatically by ImGui:: functions from ImGuiIO settings, and generally not manipulated directly. @@ -2618,7 +2680,7 @@ enum ImDrawListFlags_ ImDrawListFlags_AntiAliasedLines = 1 << 0, // Enable anti-aliased lines/borders (*2 the number of triangles for 1.0f wide line or lines thin enough to be drawn using textures, otherwise *3 the number of triangles) ImDrawListFlags_AntiAliasedLinesUseTex = 1 << 1, // Enable anti-aliased lines/borders using textures when possible. Require backend to render with bilinear filtering (NOT point/nearest filtering). ImDrawListFlags_AntiAliasedFill = 1 << 2, // Enable anti-aliased edge around filled shapes (rounded rectangles, circles). - ImDrawListFlags_AllowVtxOffset = 1 << 3 // Can emit 'VtxOffset > 0' to allow large meshes. Set when 'ImGuiBackendFlags_RendererHasVtxOffset' is enabled. + ImDrawListFlags_AllowVtxOffset = 1 << 3, // Can emit 'VtxOffset > 0' to allow large meshes. Set when 'ImGuiBackendFlags_RendererHasVtxOffset' is enabled. }; // Draw command list @@ -2640,7 +2702,7 @@ struct ImDrawList // [Internal, used while building lists] unsigned int _VtxCurrentIdx; // [Internal] generally == VtxBuffer.Size unless we are past 64K vertices, in which case this gets reset to 0. - const ImDrawListSharedData* _Data; // Pointer to shared draw data (you can use ImGui::GetDrawListSharedData() to get the one from current ImGui context) + ImDrawListSharedData* _Data; // Pointer to shared draw data (you can use ImGui::GetDrawListSharedData() to get the one from current ImGui context) const char* _OwnerName; // Pointer to owner window's name for debugging ImDrawVert* _VtxWritePtr; // [Internal] point within VtxBuffer.Data after each add command (to avoid using the ImVector<> operators too much) ImDrawIdx* _IdxWritePtr; // [Internal] point within IdxBuffer.Data after each add command (to avoid using the ImVector<> operators too much) @@ -2652,7 +2714,7 @@ struct ImDrawList float _FringeScale; // [Internal] anti-alias fringe is scaled by this value, this helps to keep things sharp while zooming at vertex buffer content // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) - ImDrawList(const ImDrawListSharedData* shared_data) { memset(this, 0, sizeof(*this)); _Data = shared_data; } + ImDrawList(ImDrawListSharedData* shared_data) { memset(this, 0, sizeof(*this)); _Data = shared_data; } ~ImDrawList() { _ClearFreeMemory(); } IMGUI_API void PushClipRect(const ImVec2& clip_rect_min, const ImVec2& clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -2669,7 +2731,7 @@ struct ImDrawList // - For circle primitives, use "num_segments == 0" to automatically calculate tessellation (preferred). // In older versions (until Dear ImGui 1.77) the AddCircle functions defaulted to num_segments == 12. // In future versions we will use textures to provide cheaper and higher-quality circles. - // Use AddNgon() and AddNgonFilled() functions if you need to guaranteed a specific number of sides. + // Use AddNgon() and AddNgonFilled() functions if you need to guarantee a specific number of sides. IMGUI_API void AddLine(const ImVec2& p1, const ImVec2& p2, ImU32 col, float thickness = 1.0f); IMGUI_API void AddRect(const ImVec2& p_min, const ImVec2& p_max, ImU32 col, float rounding = 0.0f, ImDrawFlags flags = 0, float thickness = 1.0f); // a: upper-left, b: lower-right (== upper-left + size) IMGUI_API void AddRectFilled(const ImVec2& p_min, const ImVec2& p_max, ImU32 col, float rounding = 0.0f, ImDrawFlags flags = 0); // a: upper-left, b: lower-right (== upper-left + size) @@ -2737,10 +2799,9 @@ struct ImDrawList inline void PrimWriteIdx(ImDrawIdx idx) { *_IdxWritePtr = idx; _IdxWritePtr++; } inline void PrimVtx(const ImVec2& pos, const ImVec2& uv, ImU32 col) { PrimWriteIdx((ImDrawIdx)_VtxCurrentIdx); PrimWriteVtx(pos, uv, col); } // Write vertex with unique index -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - inline void AddBezierCurve(const ImVec2& p1, const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, ImU32 col, float thickness, int num_segments = 0) { AddBezierCubic(p1, p2, p3, p4, col, thickness, num_segments); } // OBSOLETED in 1.80 (Jan 2021) - inline void PathBezierCurveTo(const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, int num_segments = 0) { PathBezierCubicCurveTo(p2, p3, p4, num_segments); } // OBSOLETED in 1.80 (Jan 2021) -#endif + // Obsolete names + //inline void AddBezierCurve(const ImVec2& p1, const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, ImU32 col, float thickness, int num_segments = 0) { AddBezierCubic(p1, p2, p3, p4, col, thickness, num_segments); } // OBSOLETED in 1.80 (Jan 2021) + //inline void PathBezierCurveTo(const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, int num_segments = 0) { PathBezierCubicCurveTo(p2, p3, p4, num_segments); } // OBSOLETED in 1.80 (Jan 2021) // [Internal helpers] IMGUI_API void _ResetForNewFrame(); @@ -2793,7 +2854,7 @@ struct ImFontConfig bool PixelSnapH; // false // Align every glyph to pixel boundary. Useful e.g. if you are merging a non-pixel aligned font with the default font. If enabled, you can set OversampleH/V to 1. ImVec2 GlyphExtraSpacing; // 0, 0 // Extra spacing (in pixels) between glyphs. Only X axis is supported for now. ImVec2 GlyphOffset; // 0, 0 // Offset all glyphs from this font input. - const ImWchar* GlyphRanges; // NULL // Pointer to a user-provided list of Unicode range (2 value per range, values are inclusive, zero-terminated list). THE ARRAY DATA NEEDS TO PERSIST AS LONG AS THE FONT IS ALIVE. + const ImWchar* GlyphRanges; // NULL // THE ARRAY DATA NEEDS TO PERSIST AS LONG AS THE FONT IS ALIVE. Pointer to a user-provided list of Unicode range (2 value per range, values are inclusive, zero-terminated list). float GlyphMinAdvanceX; // 0 // Minimum AdvanceX for glyphs, set Min to align font icons, set both Min/Max to enforce mono-space font float GlyphMaxAdvanceX; // FLT_MAX // Maximum AdvanceX for glyphs bool MergeMode; // false // Merge into previous ImFont, so you can combine multiple inputs font into one ImFont (e.g. ASCII font + icons + Japanese glyphs). You may want to use GlyphOffset.y when merge font of different heights. @@ -2855,7 +2916,7 @@ enum ImFontAtlasFlags_ ImFontAtlasFlags_None = 0, ImFontAtlasFlags_NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two ImFontAtlasFlags_NoMouseCursors = 1 << 1, // Don't build software mouse cursors into the atlas (save a little texture memory) - ImFontAtlasFlags_NoBakedLines = 1 << 2 // Don't build thick line textures into the atlas (save a little texture memory, allow support for point/nearest filtering). The AntiAliasedLinesUseTex features uses them, otherwise they will be rendered using polygons (more expensive for CPU/GPU). + ImFontAtlasFlags_NoBakedLines = 1 << 2, // Don't build thick line textures into the atlas (save a little texture memory, allow support for point/nearest filtering). The AntiAliasedLinesUseTex features uses them, otherwise they will be rendered using polygons (more expensive for CPU/GPU). }; // Load and rasterize multiple TTF/OTF fonts into a same texture. The font atlas will build a single texture holding: @@ -2874,7 +2935,7 @@ enum ImFontAtlasFlags_ // - Important: By default, AddFontFromMemoryTTF() takes ownership of the data. Even though we are not writing to it, we will free the pointer on destruction. // You can set font_cfg->FontDataOwnedByAtlas=false to keep ownership of your data and it won't be freed, // - Even though many functions are suffixed with "TTF", OTF data is supported just as well. -// - This is an old API and it is currently awkward for those and and various other reasons! We will address them in the future! +// - This is an old API and it is currently awkward for those and various other reasons! We will address them in the future! struct ImFontAtlas { IMGUI_API ImFontAtlas(); @@ -2898,7 +2959,7 @@ struct ImFontAtlas IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel IMGUI_API void GetTexDataAsRGBA32(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 4 bytes-per-pixel - bool IsBuilt() const { return Fonts.Size > 0 && TexReady; } // Bit ambiguous: used to detect when user didn't built texture but effectively we should check TexID != 0 except that would be backend dependent... + bool IsBuilt() const { return Fonts.Size > 0 && TexReady; } // Bit ambiguous: used to detect when user didn't build texture but effectively we should check TexID != 0 except that would be backend dependent... void SetTexID(ImTextureID id) { TexID = id; } //------------------------------------------- @@ -2906,9 +2967,11 @@ struct ImFontAtlas //------------------------------------------- // Helpers to retrieve list of common Unicode ranges (2 value per range, values are inclusive, zero-terminated list) - // NB: Make sure that your string are UTF-8 and NOT in your local code page. In C++11, you can create UTF-8 string literal using the u8"Hello world" syntax. See FAQ for details. + // NB: Make sure that your string are UTF-8 and NOT in your local code page. + // Read https://github.com/ocornut/imgui/blob/master/docs/FONTS.md/#about-utf-8-encoding for details. // NB: Consider using ImFontGlyphRangesBuilder to build glyph ranges from textual data. IMGUI_API const ImWchar* GetGlyphRangesDefault(); // Basic Latin, Extended Latin + IMGUI_API const ImWchar* GetGlyphRangesGreek(); // Default + Greek and Coptic IMGUI_API const ImWchar* GetGlyphRangesKorean(); // Default + Korean characters IMGUI_API const ImWchar* GetGlyphRangesJapanese(); // Default + Hiragana, Katakana, Half-Width, Selection of 2999 Ideographs IMGUI_API const ImWchar* GetGlyphRangesChineseFull(); // Default + Half-Width + Japanese Hiragana/Katakana + full set of about 21000 CJK Unified Ideographs @@ -2945,6 +3008,7 @@ struct ImFontAtlas int TexDesiredWidth; // Texture width desired by user before Build(). Must be a power-of-two. If have many glyphs your graphics API have texture size restrictions you may want to increase texture width to decrease height. int TexGlyphPadding; // Padding between glyphs within texture in pixels. Defaults to 1. If your rendering method doesn't rely on bilinear filtering you may set this to 0 (will also need to set AntiAliasedLinesUseTex = false). bool Locked; // Marked as Locked by ImGui::NewFrame() so attempt to modify the atlas will assert. + void* UserData; // Store your own atlas related user-data (if e.g. you have multiple font atlas). // [Internal] // NB: Access texture data via GetTexData*() calls! Which will setup a default font for you. @@ -2993,8 +3057,10 @@ struct ImFont const ImFontConfig* ConfigData; // 4-8 // in // // Pointer within ContainerAtlas->ConfigData short ConfigDataCount; // 2 // in // ~ 1 // Number of ImFontConfig involved in creating this font. Bigger than 1 when merging multiple font sources into one ImFont. ImWchar FallbackChar; // 2 // out // = FFFD/'?' // Character used if a glyph isn't found. - ImWchar EllipsisChar; // 2 // out // = '...' // Character used for ellipsis rendering. - ImWchar DotChar; // 2 // out // = '.' // Character used for ellipsis rendering (if a single '...' character isn't found) + ImWchar EllipsisChar; // 2 // out // = '...'/'.'// Character used for ellipsis rendering. + short EllipsisCharCount; // 1 // out // 1 or 3 + float EllipsisWidth; // 4 // out // Width + float EllipsisCharStep; // 4 // out // Step between characters when EllipsisCount > 0 bool DirtyLookupTables; // 1 // out // float Scale; // 4 // in // = 1.f // Base font scale, multiplied by the per-window font scale which you can adjust with SetWindowFontScale() float Ascent, Descent; // 4+4 // out // // Ascent: distance from top to bottom of e.g. 'A' [0..FontSize] @@ -3037,17 +3103,20 @@ enum ImGuiViewportFlags_ ImGuiViewportFlags_None = 0, ImGuiViewportFlags_IsPlatformWindow = 1 << 0, // Represent a Platform Window ImGuiViewportFlags_IsPlatformMonitor = 1 << 1, // Represent a Platform Monitor (unused yet) - ImGuiViewportFlags_OwnedByApp = 1 << 2, // Platform Window: is created/managed by the application (rather than a dear imgui backend) + ImGuiViewportFlags_OwnedByApp = 1 << 2, // Platform Window: Was created/managed by the user application? (rather than our backend) ImGuiViewportFlags_NoDecoration = 1 << 3, // Platform Window: Disable platform decorations: title bar, borders, etc. (generally set all windows, but if ImGuiConfigFlags_ViewportsDecoration is set we only set this on popups/tooltips) ImGuiViewportFlags_NoTaskBarIcon = 1 << 4, // Platform Window: Disable platform task bar icon (generally set on popups/tooltips, or all windows if ImGuiConfigFlags_ViewportsNoTaskBarIcon is set) ImGuiViewportFlags_NoFocusOnAppearing = 1 << 5, // Platform Window: Don't take focus when created. ImGuiViewportFlags_NoFocusOnClick = 1 << 6, // Platform Window: Don't take focus when clicked on. ImGuiViewportFlags_NoInputs = 1 << 7, // Platform Window: Make mouse pass through so we can drag this window while peaking behind it. ImGuiViewportFlags_NoRendererClear = 1 << 8, // Platform Window: Renderer doesn't need to clear the framebuffer ahead (because we will fill it entirely). - ImGuiViewportFlags_TopMost = 1 << 9, // Platform Window: Display on top (for tooltips only). - ImGuiViewportFlags_Minimized = 1 << 10, // Platform Window: Window is minimized, can skip render. When minimized we tend to avoid using the viewport pos/size for clipping window or testing if they are contained in the viewport. - ImGuiViewportFlags_NoAutoMerge = 1 << 11, // Platform Window: Avoid merging this window into another host window. This can only be set via ImGuiWindowClass viewport flags override (because we need to now ahead if we are going to create a viewport in the first place!). - ImGuiViewportFlags_CanHostOtherWindows = 1 << 12 // Main viewport: can host multiple imgui windows (secondary viewports are associated to a single window). + ImGuiViewportFlags_NoAutoMerge = 1 << 9, // Platform Window: Avoid merging this window into another host window. This can only be set via ImGuiWindowClass viewport flags override (because we need to now ahead if we are going to create a viewport in the first place!). + ImGuiViewportFlags_TopMost = 1 << 10, // Platform Window: Display on top (for tooltips only). + ImGuiViewportFlags_CanHostOtherWindows = 1 << 11, // Viewport can host multiple imgui windows (secondary viewports are associated to a single window). // FIXME: In practice there's still probably code making the assumption that this is always and only on the MainViewport. Will fix once we add support for "no main viewport". + + // Output status flags (from Platform) + ImGuiViewportFlags_IsMinimized = 1 << 12, // Platform Window: Window is minimized, can skip render. When minimized we tend to avoid using the viewport pos/size for clipping window or testing if they are contained in the viewport. + ImGuiViewportFlags_IsFocused = 1 << 13, // Platform Window: Window is focused (last call to Platform_GetWindowFocus() returned true) }; // - Currently represents the Platform Window created by the application which is hosting our Dear ImGui windows. @@ -3078,6 +3147,7 @@ struct ImGuiViewport void* PlatformUserData; // void* to hold custom data structure for the OS / platform (e.g. windowing info, render context). generally set by your Platform_CreateWindow function. void* PlatformHandle; // void* for FindViewportByPlatformHandle(). (e.g. suggested to use natural platform handle such as HWND, GLFWWindow*, SDL_Window*) void* PlatformHandleRaw; // void* to hold lower-level, platform-native window handle (under Win32 this is expected to be a HWND, unused for other platforms), when using an abstraction layer like GLFW or SDL (where PlatformHandle would be a SDL_Window*) + bool PlatformWindowCreated; // Platform window has been created (Platform_CreateWindow() has been called). This is false during the first frame where a viewport is being created. bool PlatformRequestMove; // Platform window requested move (e.g. window was moved by the OS / host window manager, authoritative position will be OS window position) bool PlatformRequestResize; // Platform window requested resize (e.g. window was resized by the OS / host window manager, authoritative size will be OS window size) bool PlatformRequestClose; // Platform window requested closure (e.g. window was moved by the OS / host window manager, e.g. pressing ALT-F4) @@ -3208,7 +3278,8 @@ struct ImGuiPlatformMonitor ImVec2 MainPos, MainSize; // Coordinates of the area displayed on this monitor (Min = upper left, Max = bottom right) ImVec2 WorkPos, WorkSize; // Coordinates without task bars / side bars / menu bars. Used to avoid positioning popups/tooltips inside this region. If you don't have this info, please copy the value for MainPos/MainSize. float DpiScale; // 1.0f = 96 DPI - ImGuiPlatformMonitor() { MainPos = MainSize = WorkPos = WorkSize = ImVec2(0, 0); DpiScale = 1.0f; } + void* PlatformHandle; // Backend dependant data (e.g. HMONITOR, GLFWmonitor*, SDL Display Index, NSScreen*) + ImGuiPlatformMonitor() { MainPos = MainSize = WorkPos = WorkSize = ImVec2(0, 0); DpiScale = 1.0f; PlatformHandle = NULL; } }; // (Optional) Support for IME (Input Method Editor) via the io.SetPlatformImeDataFn() function. @@ -3230,50 +3301,57 @@ struct ImGuiPlatformImeData namespace ImGui { #ifndef IMGUI_DISABLE_OBSOLETE_KEYIO - IMGUI_API int GetKeyIndex(ImGuiKey key); // map ImGuiKey_* values into legacy native key index. == io.KeyMap[key] + IMGUI_API ImGuiKey GetKeyIndex(ImGuiKey key); // map ImGuiKey_* values into legacy native key index. == io.KeyMap[key] #else - static inline int GetKeyIndex(ImGuiKey key) { IM_ASSERT(key >= ImGuiKey_NamedKey_BEGIN && key < ImGuiKey_NamedKey_END && "ImGuiKey and native_index was merged together and native_index is disabled by IMGUI_DISABLE_OBSOLETE_KEYIO. Please switch to ImGuiKey."); return key; } + static inline ImGuiKey GetKeyIndex(ImGuiKey key) { IM_ASSERT(key >= ImGuiKey_NamedKey_BEGIN && key < ImGuiKey_NamedKey_END && "ImGuiKey and native_index was merged together and native_index is disabled by IMGUI_DISABLE_OBSOLETE_KEYIO. Please switch to ImGuiKey."); return key; } #endif } #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS namespace ImGui { + // OBSOLETED in 1.89.4 (from March 2023) + static inline void PushAllowKeyboardFocus(bool tab_stop) { PushTabStop(tab_stop); } + static inline void PopAllowKeyboardFocus() { PopTabStop(); } + // OBSOLETED in 1.89 (from August 2022) + IMGUI_API bool ImageButton(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1, 1), int frame_padding = -1, const ImVec4& bg_col = ImVec4(0, 0, 0, 0), const ImVec4& tint_col = ImVec4(1, 1, 1, 1)); // Use new ImageButton() signature (explicit item id, regular FramePadding) + // OBSOLETED in 1.88 (from May 2022) + static inline void CaptureKeyboardFromApp(bool want_capture_keyboard = true) { SetNextFrameWantCaptureKeyboard(want_capture_keyboard); } // Renamed as name was misleading + removed default value. + static inline void CaptureMouseFromApp(bool want_capture_mouse = true) { SetNextFrameWantCaptureMouse(want_capture_mouse); } // Renamed as name was misleading + removed default value. // OBSOLETED in 1.86 (from November 2021) IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // Calculate coarse clipping for large list of evenly sized items. Prefer using ImGuiListClipper. // OBSOLETED in 1.85 (from August 2021) - static inline float GetWindowContentRegionWidth() { return GetWindowContentRegionMax().x - GetWindowContentRegionMin().x; } - // OBSOLETED in 1.81 (from February 2021) - IMGUI_API bool ListBoxHeader(const char* label, int items_count, int height_in_items = -1); // Helper to calculate size from items_count and height_in_items - static inline bool ListBoxHeader(const char* label, const ImVec2& size = ImVec2(0, 0)) { return BeginListBox(label, size); } - static inline void ListBoxFooter() { EndListBox(); } - // OBSOLETED in 1.79 (from August 2020) - static inline void OpenPopupContextItem(const char* str_id = NULL, ImGuiMouseButton mb = 1) { OpenPopupOnItemClick(str_id, mb); } // Bool return value removed. Use IsWindowAppearing() in BeginPopup() instead. Renamed in 1.77, renamed back in 1.79. Sorry! - // OBSOLETED in 1.78 (from June 2020) - // Old drag/sliders functions that took a 'float power = 1.0' argument instead of flags. - // For shared code, you can version check at compile-time with `#if IMGUI_VERSION_NUM >= 17704`. - IMGUI_API bool DragScalar(const char* label, ImGuiDataType data_type, void* p_data, float v_speed, const void* p_min, const void* p_max, const char* format, float power); - IMGUI_API bool DragScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, float v_speed, const void* p_min, const void* p_max, const char* format, float power); - static inline bool DragFloat(const char* label, float* v, float v_speed, float v_min, float v_max, const char* format, float power) { return DragScalar(label, ImGuiDataType_Float, v, v_speed, &v_min, &v_max, format, power); } - static inline bool DragFloat2(const char* label, float v[2], float v_speed, float v_min, float v_max, const char* format, float power) { return DragScalarN(label, ImGuiDataType_Float, v, 2, v_speed, &v_min, &v_max, format, power); } - static inline bool DragFloat3(const char* label, float v[3], float v_speed, float v_min, float v_max, const char* format, float power) { return DragScalarN(label, ImGuiDataType_Float, v, 3, v_speed, &v_min, &v_max, format, power); } - static inline bool DragFloat4(const char* label, float v[4], float v_speed, float v_min, float v_max, const char* format, float power) { return DragScalarN(label, ImGuiDataType_Float, v, 4, v_speed, &v_min, &v_max, format, power); } - IMGUI_API bool SliderScalar(const char* label, ImGuiDataType data_type, void* p_data, const void* p_min, const void* p_max, const char* format, float power); - IMGUI_API bool SliderScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, const void* p_min, const void* p_max, const char* format, float power); - static inline bool SliderFloat(const char* label, float* v, float v_min, float v_max, const char* format, float power) { return SliderScalar(label, ImGuiDataType_Float, v, &v_min, &v_max, format, power); } - static inline bool SliderFloat2(const char* label, float v[2], float v_min, float v_max, const char* format, float power) { return SliderScalarN(label, ImGuiDataType_Float, v, 2, &v_min, &v_max, format, power); } - static inline bool SliderFloat3(const char* label, float v[3], float v_min, float v_max, const char* format, float power) { return SliderScalarN(label, ImGuiDataType_Float, v, 3, &v_min, &v_max, format, power); } - static inline bool SliderFloat4(const char* label, float v[4], float v_min, float v_max, const char* format, float power) { return SliderScalarN(label, ImGuiDataType_Float, v, 4, &v_min, &v_max, format, power); } - // OBSOLETED in 1.77 (from June 2020) - static inline bool BeginPopupContextWindow(const char* str_id, ImGuiMouseButton mb, bool over_items) { return BeginPopupContextWindow(str_id, mb | (over_items ? 0 : ImGuiPopupFlags_NoOpenOverItems)); } + static inline float GetWindowContentRegionWidth() { return GetWindowContentRegionMax().x - GetWindowContentRegionMin().x; } // Some of the older obsolete names along with their replacement (commented out so they are not reported in IDE) + //-- OBSOLETED in 1.81 (from February 2021) + //static inline bool ListBoxHeader(const char* label, const ImVec2& size = ImVec2(0, 0)) { return BeginListBox(label, size); } + //static inline bool ListBoxHeader(const char* label, int items_count, int height_in_items = -1) { float height = GetTextLineHeightWithSpacing() * ((height_in_items < 0 ? ImMin(items_count, 7) : height_in_items) + 0.25f) + GetStyle().FramePadding.y * 2.0f; return BeginListBox(label, ImVec2(0.0f, height)); } // Helper to calculate size from items_count and height_in_items + //static inline void ListBoxFooter() { EndListBox(); } + //-- OBSOLETED in 1.79 (from August 2020) + //static inline void OpenPopupContextItem(const char* str_id = NULL, ImGuiMouseButton mb = 1) { OpenPopupOnItemClick(str_id, mb); } // Bool return value removed. Use IsWindowAppearing() in BeginPopup() instead. Renamed in 1.77, renamed back in 1.79. Sorry! + //-- OBSOLETED in 1.78 (from June 2020): Old drag/sliders functions that took a 'float power > 1.0f' argument instead of ImGuiSliderFlags_Logarithmic. See github.com/ocornut/imgui/issues/3361 for details. + //IMGUI_API bool DragScalar(const char* label, ImGuiDataType data_type, void* p_data, float v_speed, const void* p_min, const void* p_max, const char* format, float power = 1.0f) // OBSOLETED in 1.78 (from June 2020) + //IMGUI_API bool DragScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, float v_speed, const void* p_min, const void* p_max, const char* format, float power = 1.0f); // OBSOLETED in 1.78 (from June 2020) + //IMGUI_API bool SliderScalar(const char* label, ImGuiDataType data_type, void* p_data, const void* p_min, const void* p_max, const char* format, float power = 1.0f); // OBSOLETED in 1.78 (from June 2020) + //IMGUI_API bool SliderScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, const void* p_min, const void* p_max, const char* format, float power = 1.0f); // OBSOLETED in 1.78 (from June 2020) + //static inline bool DragFloat(const char* label, float* v, float v_speed, float v_min, float v_max, const char* format, float power = 1.0f) { return DragScalar(label, ImGuiDataType_Float, v, v_speed, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool DragFloat2(const char* label, float v[2], float v_speed, float v_min, float v_max, const char* format, float power = 1.0f) { return DragScalarN(label, ImGuiDataType_Float, v, 2, v_speed, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool DragFloat3(const char* label, float v[3], float v_speed, float v_min, float v_max, const char* format, float power = 1.0f) { return DragScalarN(label, ImGuiDataType_Float, v, 3, v_speed, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool DragFloat4(const char* label, float v[4], float v_speed, float v_min, float v_max, const char* format, float power = 1.0f) { return DragScalarN(label, ImGuiDataType_Float, v, 4, v_speed, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool SliderFloat(const char* label, float* v, float v_min, float v_max, const char* format, float power = 1.0f) { return SliderScalar(label, ImGuiDataType_Float, v, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool SliderFloat2(const char* label, float v[2], float v_min, float v_max, const char* format, float power = 1.0f) { return SliderScalarN(label, ImGuiDataType_Float, v, 2, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool SliderFloat3(const char* label, float v[3], float v_min, float v_max, const char* format, float power = 1.0f) { return SliderScalarN(label, ImGuiDataType_Float, v, 3, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //static inline bool SliderFloat4(const char* label, float v[4], float v_min, float v_max, const char* format, float power = 1.0f) { return SliderScalarN(label, ImGuiDataType_Float, v, 4, &v_min, &v_max, format, power); } // OBSOLETED in 1.78 (from June 2020) + //-- OBSOLETED in 1.77 and before + //static inline bool BeginPopupContextWindow(const char* str_id, ImGuiMouseButton mb, bool over_items) { return BeginPopupContextWindow(str_id, mb | (over_items ? 0 : ImGuiPopupFlags_NoOpenOverItems)); } // OBSOLETED in 1.77 (from June 2020) //static inline void TreeAdvanceToLabelPos() { SetCursorPosX(GetCursorPosX() + GetTreeNodeToLabelSpacing()); } // OBSOLETED in 1.72 (from July 2019) //static inline void SetNextTreeNodeOpen(bool open, ImGuiCond cond = 0) { SetNextItemOpen(open, cond); } // OBSOLETED in 1.71 (from June 2019) //static inline float GetContentRegionAvailWidth() { return GetContentRegionAvail().x; } // OBSOLETED in 1.70 (from May 2019) //static inline ImDrawList* GetOverlayDrawList() { return GetForegroundDrawList(); } // OBSOLETED in 1.69 (from Mar 2019) //static inline void SetScrollHere(float ratio = 0.5f) { SetScrollHereY(ratio); } // OBSOLETED in 1.66 (from Nov 2018) //static inline bool IsItemDeactivatedAfterChange() { return IsItemDeactivatedAfterEdit(); } // OBSOLETED in 1.63 (from Aug 2018) + //-- OBSOLETED in 1.60 and before //static inline bool IsAnyWindowFocused() { return IsWindowFocused(ImGuiFocusedFlags_AnyWindow); } // OBSOLETED in 1.60 (from Apr 2018) //static inline bool IsAnyWindowHovered() { return IsWindowHovered(ImGuiHoveredFlags_AnyWindow); } // OBSOLETED in 1.60 (between Dec 2017 and Apr 2018) //static inline void ShowTestWindow() { return ShowDemoWindow(); } // OBSOLETED in 1.53 (between Oct 2017 and Dec 2017) @@ -3281,6 +3359,19 @@ namespace ImGui //static inline bool IsRootWindowOrAnyChildFocused() { return IsWindowFocused(ImGuiFocusedFlags_RootAndChildWindows); } // OBSOLETED in 1.53 (between Oct 2017 and Dec 2017) //static inline void SetNextWindowContentWidth(float w) { SetNextWindowContentSize(ImVec2(w, 0.0f)); } // OBSOLETED in 1.53 (between Oct 2017 and Dec 2017) //static inline float GetItemsLineHeightWithSpacing() { return GetFrameHeightWithSpacing(); } // OBSOLETED in 1.53 (between Oct 2017 and Dec 2017) + //IMGUI_API bool Begin(char* name, bool* p_open, ImVec2 size_first_use, float bg_alpha = -1.0f, ImGuiWindowFlags flags=0); // OBSOLETED in 1.52 (between Aug 2017 and Oct 2017): Equivalent of using SetNextWindowSize(size, ImGuiCond_FirstUseEver) and SetNextWindowBgAlpha(). + //static inline bool IsRootWindowOrAnyChildHovered() { return IsWindowHovered(ImGuiHoveredFlags_RootAndChildWindows); } // OBSOLETED in 1.52 (between Aug 2017 and Oct 2017) + //static inline void AlignFirstTextHeightToWidgets() { AlignTextToFramePadding(); } // OBSOLETED in 1.52 (between Aug 2017 and Oct 2017) + //static inline void SetNextWindowPosCenter(ImGuiCond c=0) { SetNextWindowPos(GetMainViewport()->GetCenter(), c, ImVec2(0.5f,0.5f)); } // OBSOLETED in 1.52 (between Aug 2017 and Oct 2017) + //static inline bool IsItemHoveredRect() { return IsItemHovered(ImGuiHoveredFlags_RectOnly); } // OBSOLETED in 1.51 (between Jun 2017 and Aug 2017) + //static inline bool IsPosHoveringAnyWindow(const ImVec2&) { IM_ASSERT(0); return false; } // OBSOLETED in 1.51 (between Jun 2017 and Aug 2017): This was misleading and partly broken. You probably want to use the io.WantCaptureMouse flag instead. + //static inline bool IsMouseHoveringAnyWindow() { return IsWindowHovered(ImGuiHoveredFlags_AnyWindow); } // OBSOLETED in 1.51 (between Jun 2017 and Aug 2017) + //static inline bool IsMouseHoveringWindow() { return IsWindowHovered(ImGuiHoveredFlags_AllowWhenBlockedByPopup | ImGuiHoveredFlags_AllowWhenBlockedByActiveItem); } // OBSOLETED in 1.51 (between Jun 2017 and Aug 2017) + //-- OBSOLETED in 1.50 and before + //static inline bool CollapsingHeader(char* label, const char* str_id, bool framed = true, bool default_open = false) { return CollapsingHeader(label, (default_open ? (1 << 5) : 0)); } // OBSOLETED in 1.49 + //static inline ImFont*GetWindowFont() { return GetFont(); } // OBSOLETED in 1.48 + //static inline float GetWindowFontSize() { return GetFontSize(); } // OBSOLETED in 1.48 + //static inline void SetScrollPosHere() { SetScrollHere(); } // OBSOLETED in 1.42 } // OBSOLETED in 1.82 (from Mars 2021): flags for AddRect(), AddRectFilled(), AddImageRounded(), PathRect() @@ -3296,15 +3387,26 @@ enum ImDrawCornerFlags_ ImDrawCornerFlags_Top = ImDrawCornerFlags_TopLeft | ImDrawCornerFlags_TopRight, ImDrawCornerFlags_Bot = ImDrawCornerFlags_BotLeft | ImDrawCornerFlags_BotRight, ImDrawCornerFlags_Left = ImDrawCornerFlags_TopLeft | ImDrawCornerFlags_BotLeft, - ImDrawCornerFlags_Right = ImDrawCornerFlags_TopRight | ImDrawCornerFlags_BotRight + ImDrawCornerFlags_Right = ImDrawCornerFlags_TopRight | ImDrawCornerFlags_BotRight, }; -// RENAMED ImGuiKeyModFlags -> ImGuiModFlags in 1.88 (from April 2022) -typedef int ImGuiKeyModFlags; -enum ImGuiKeyModFlags_ { ImGuiKeyModFlags_None = ImGuiModFlags_None, ImGuiKeyModFlags_Ctrl = ImGuiModFlags_Ctrl, ImGuiKeyModFlags_Shift = ImGuiModFlags_Shift, ImGuiKeyModFlags_Alt = ImGuiModFlags_Alt, ImGuiKeyModFlags_Super = ImGuiModFlags_Super }; +// RENAMED and MERGED both ImGuiKey_ModXXX and ImGuiModFlags_XXX into ImGuiMod_XXX (from September 2022) +// RENAMED ImGuiKeyModFlags -> ImGuiModFlags in 1.88 (from April 2022). Exceptionally commented out ahead of obscolescence schedule to reduce confusion and because they were not meant to be used in the first place. +typedef ImGuiKeyChord ImGuiModFlags; // == int. We generally use ImGuiKeyChord to mean "a ImGuiKey or-ed with any number of ImGuiMod_XXX value", but you may store only mods in there. +enum ImGuiModFlags_ { ImGuiModFlags_None = 0, ImGuiModFlags_Ctrl = ImGuiMod_Ctrl, ImGuiModFlags_Shift = ImGuiMod_Shift, ImGuiModFlags_Alt = ImGuiMod_Alt, ImGuiModFlags_Super = ImGuiMod_Super }; +//typedef ImGuiKeyChord ImGuiKeyModFlags; // == int +//enum ImGuiKeyModFlags_ { ImGuiKeyModFlags_None = 0, ImGuiKeyModFlags_Ctrl = ImGuiMod_Ctrl, ImGuiKeyModFlags_Shift = ImGuiMod_Shift, ImGuiKeyModFlags_Alt = ImGuiMod_Alt, ImGuiKeyModFlags_Super = ImGuiMod_Super }; #endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS +// RENAMED IMGUI_DISABLE_METRICS_WINDOW > IMGUI_DISABLE_DEBUG_TOOLS in 1.88 (from June 2022) +#if defined(IMGUI_DISABLE_METRICS_WINDOW) && !defined(IMGUI_DISABLE_OBSOLETE_FUNCTIONS) && !defined(IMGUI_DISABLE_DEBUG_TOOLS) +#define IMGUI_DISABLE_DEBUG_TOOLS +#endif +#if defined(IMGUI_DISABLE_METRICS_WINDOW) && defined(IMGUI_DISABLE_OBSOLETE_FUNCTIONS) +#error IMGUI_DISABLE_METRICS_WINDOW was renamed to IMGUI_DISABLE_DEBUG_TOOLS, please use new name. +#endif + //----------------------------------------------------------------------------- #if defined(__clang__) diff --git a/extern/imgui_patched/imgui_demo.cpp b/extern/imgui_patched/imgui_demo.cpp index 3e304c63..52abc798 100644 --- a/extern/imgui_patched/imgui_demo.cpp +++ b/extern/imgui_patched/imgui_demo.cpp @@ -1,18 +1,22 @@ -// dear imgui, v1.88 WIP +// dear imgui, v1.89.6 // (demo code) // Help: -// - Read FAQ at http://dearimgui.org/faq +// - Read FAQ at http://dearimgui.com/faq // - Newcomers, read 'Programmer guide' in imgui.cpp for notes on how to setup Dear ImGui in your codebase. // - Call and read ImGui::ShowDemoWindow() in imgui_demo.cpp. All applications in examples/ are doing that. // Read imgui.cpp for more details, documentation and comments. // Get the latest version at https://github.com/ocornut/imgui +// ------------------------------------------------- +// PLEASE DO NOT REMOVE THIS FILE FROM YOUR PROJECT! +// ------------------------------------------------- // Message to the person tempted to delete this file when integrating Dear ImGui into their codebase: -// Do NOT remove this file from your project! Think again! It is the most useful reference code that you and other -// coders will want to refer to and call. Have the ImGui::ShowDemoWindow() function wired in an always-available -// debug menu of your game/app! Removing this file from your project is hindering access to documentation for everyone -// in your team, likely leading you to poorer usage of the library. +// Think again! It is the most useful reference code that you and other coders will want to refer to and call. +// Have the ImGui::ShowDemoWindow() function wired in an always-available debug menu of your game/app! +// Also include Metrics! ItemPicker! DebugLog! and other debug features. +// Removing this file from your project is hindering access to documentation for everyone in your team, +// likely leading you to poorer usage of the library. // Everything in this file will be stripped out by the linker if you don't call ImGui::ShowDemoWindow(). // If you want to link core Dear ImGui in your shipped builds but want a thorough guarantee that the demo will not be // linked, you can setup your imconfig.h with #define IMGUI_DISABLE_DEMO_WINDOWS and those functions will be empty. @@ -34,7 +38,7 @@ // - We try to declare static variables in the local scope, as close as possible to the code using them. // - We never use any of the helpers/facilities used internally by Dear ImGui, unless available in the public API. // - We never use maths operators on ImVec2/ImVec4. For our other sources files we use them, and they are provided -// by imgui_internal.h using the IMGUI_DEFINE_MATH_OPERATORS define. For your own sources file they are optional +// by imgui.h using the IMGUI_DEFINE_MATH_OPERATORS define. For your own sources file they are optional // and require you either enable those, either provide your own via IM_VEC2_CLASS_EXTRA in imconfig.h. // Because we can't assume anything about your support of maths operators, we cannot use them in imgui_demo.cpp. @@ -46,15 +50,18 @@ Index of this file: -// [SECTION] Forward Declarations, Helpers +// [SECTION] Forward Declarations +// [SECTION] Helpers // [SECTION] Demo Window / ShowDemoWindow() +// - ShowDemoWindow() // - sub section: ShowDemoWindowWidgets() // - sub section: ShowDemoWindowLayout() // - sub section: ShowDemoWindowPopups() // - sub section: ShowDemoWindowTables() -// - sub section: ShowDemoWindowMisc() +// - sub section: ShowDemoWindowInputs() // [SECTION] About Window / ShowAboutWindow() // [SECTION] Style Editor / ShowStyleEditor() +// [SECTION] User Guide / ShowUserGuide() // [SECTION] Example App: Main Menu Bar / ShowExampleAppMainMenuBar() // [SECTION] Example App: Debug Console / ShowExampleAppConsole() // [SECTION] Example App: Debug Log / ShowExampleAppLog() @@ -95,7 +102,7 @@ Index of this file: #ifdef _MSC_VER #pragma warning (disable: 4127) // condition expression is constant #pragma warning (disable: 4996) // 'This function or variable may be unsafe': strcpy, strdup, sprintf, vsnprintf, sscanf, fopen -#pragma warning (disable: 26451) // [Static Analyzer] Arithmetic overflow : Using operator 'xxx' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator 'xxx' to avoid overflow(io.2). +#pragma warning (disable: 26451) // [Static Analyzer] Arithmetic overflow : Using operator 'xxx' on a 4 byte value and then casting the result to an 8 byte value. Cast the value to the wider type before calling operator 'xxx' to avoid overflow(io.2). #endif // Clang/GCC warnings with -Weverything @@ -188,14 +195,26 @@ static void ShowExampleAppWindowTitles(bool* p_open); static void ShowExampleAppCustomRendering(bool* p_open); static void ShowExampleMenuFile(); +// We split the contents of the big ShowDemoWindow() function into smaller functions +// (because the link time of very large functions grow non-linearly) +static void ShowDemoWindowWidgets(); +static void ShowDemoWindowLayout(); +static void ShowDemoWindowPopups(); +static void ShowDemoWindowTables(); +static void ShowDemoWindowColumns(); +static void ShowDemoWindowInputs(); + +//----------------------------------------------------------------------------- +// [SECTION] Helpers +//----------------------------------------------------------------------------- + // Helper to display a little (?) mark which shows a tooltip when hovered. // In your own code you may want to display an actual icon if you are using a merged icon fonts (see docs/FONTS.md) static void HelpMarker(const char* desc) { ImGui::TextDisabled("(?)"); - if (ImGui::IsItemHovered()) + if (ImGui::IsItemHovered(ImGuiHoveredFlags_DelayShort) && ImGui::BeginTooltip()) { - ImGui::BeginTooltip(); ImGui::PushTextWrapPos(ImGui::GetFontSize() * 35.0f); ImGui::TextUnformatted(desc); ImGui::PopTextWrapPos(); @@ -213,79 +232,39 @@ static void ShowDockingDisabledMessage() io.ConfigFlags |= ImGuiConfigFlags_DockingEnable; } -// Helper to wire demo markers located in code to a interactive browser +// Helper to wire demo markers located in code to an interactive browser typedef void (*ImGuiDemoMarkerCallback)(const char* file, int line, const char* section, void* user_data); -extern ImGuiDemoMarkerCallback GImGuiDemoMarkerCallback; -extern void* GImGuiDemoMarkerCallbackUserData; -ImGuiDemoMarkerCallback GImGuiDemoMarkerCallback = NULL; -void* GImGuiDemoMarkerCallbackUserData = NULL; +extern ImGuiDemoMarkerCallback GImGuiDemoMarkerCallback; +extern void* GImGuiDemoMarkerCallbackUserData; +ImGuiDemoMarkerCallback GImGuiDemoMarkerCallback = NULL; +void* GImGuiDemoMarkerCallbackUserData = NULL; #define IMGUI_DEMO_MARKER(section) do { if (GImGuiDemoMarkerCallback != NULL) GImGuiDemoMarkerCallback(__FILE__, __LINE__, section, GImGuiDemoMarkerCallbackUserData); } while (0) -// Helper to display basic user controls. -void ImGui::ShowUserGuide() -{ - ImGuiIO& io = ImGui::GetIO(); - ImGui::BulletText("Double-click on title bar to collapse window."); - ImGui::BulletText( - "Click and drag on lower corner to resize window\n" - "(double-click to auto fit window to its contents)."); - ImGui::BulletText("CTRL+Click on a slider or drag box to input value as text."); - ImGui::BulletText("TAB/SHIFT+TAB to cycle through keyboard editable fields."); - ImGui::BulletText("CTRL+Tab to select a window."); - if (io.FontAllowUserScaling) - ImGui::BulletText("CTRL+Mouse Wheel to zoom window contents."); - ImGui::BulletText("While inputing text:\n"); - ImGui::Indent(); - ImGui::BulletText("CTRL+Left/Right to word jump."); - ImGui::BulletText("CTRL+A or double-click to select all."); - ImGui::BulletText("CTRL+X/C/V to use clipboard cut/copy/paste."); - ImGui::BulletText("CTRL+Z,CTRL+Y to undo/redo."); - ImGui::BulletText("ESCAPE to revert."); - ImGui::Unindent(); - ImGui::BulletText("With keyboard navigation enabled:"); - ImGui::Indent(); - ImGui::BulletText("Arrow keys to navigate."); - ImGui::BulletText("Space to activate a widget."); - ImGui::BulletText("Return to input text into a widget."); - ImGui::BulletText("Escape to deactivate a widget, close popup, exit child window."); - ImGui::BulletText("Alt to jump to the menu layer of a window."); - ImGui::Unindent(); -} - //----------------------------------------------------------------------------- // [SECTION] Demo Window / ShowDemoWindow() //----------------------------------------------------------------------------- +// - ShowDemoWindow() // - ShowDemoWindowWidgets() // - ShowDemoWindowLayout() // - ShowDemoWindowPopups() // - ShowDemoWindowTables() // - ShowDemoWindowColumns() -// - ShowDemoWindowMisc() +// - ShowDemoWindowInputs() //----------------------------------------------------------------------------- -// We split the contents of the big ShowDemoWindow() function into smaller functions -// (because the link time of very large functions grow non-linearly) -static void ShowDemoWindowWidgets(); -static void ShowDemoWindowLayout(); -static void ShowDemoWindowPopups(); -static void ShowDemoWindowTables(); -static void ShowDemoWindowColumns(); -static void ShowDemoWindowMisc(); - // Demonstrate most Dear ImGui features (this is big function!) // You may execute this function to experiment with the UI and understand what it does. // You may then search for keywords in the code when you are interested by a specific feature. void ImGui::ShowDemoWindow(bool* p_open) { // Exceptionally add an extra assert here for people confused about initial Dear ImGui setup - // Most ImGui functions would normally just crash if the context is missing. + // Most functions would normally just crash if the context is missing. IM_ASSERT(ImGui::GetCurrentContext() != NULL && "Missing dear imgui context. Refer to examples app!"); // Examples Apps (accessible from the "Examples" menu) static bool show_app_main_menu_bar = false; static bool show_app_dockspace = false; static bool show_app_documents = false; - static bool show_app_console = false; static bool show_app_log = false; static bool show_app_layout = false; @@ -301,7 +280,6 @@ void ImGui::ShowDemoWindow(bool* p_open) if (show_app_main_menu_bar) ShowExampleAppMainMenuBar(); if (show_app_dockspace) ShowExampleAppDockSpace(&show_app_dockspace); // Process the Docking app first, as explicit DockSpace() nodes needs to be submitted early (read comments near the DockSpace function) if (show_app_documents) ShowExampleAppDocuments(&show_app_documents); // Process the Document app next, as it may also use a DockSpace() - if (show_app_console) ShowExampleAppConsole(&show_app_console); if (show_app_log) ShowExampleAppLog(&show_app_log); if (show_app_layout) ShowExampleAppLayout(&show_app_layout); @@ -314,15 +292,21 @@ void ImGui::ShowDemoWindow(bool* p_open) if (show_app_window_titles) ShowExampleAppWindowTitles(&show_app_window_titles); if (show_app_custom_rendering) ShowExampleAppCustomRendering(&show_app_custom_rendering); - // Dear ImGui Apps (accessible from the "Tools" menu) + // Dear ImGui Tools/Apps (accessible from the "Tools" menu) static bool show_app_metrics = false; + static bool show_app_debug_log = false; static bool show_app_stack_tool = false; - static bool show_app_style_editor = false; static bool show_app_about = false; + static bool show_app_style_editor = false; - if (show_app_metrics) { ImGui::ShowMetricsWindow(&show_app_metrics); } - if (show_app_stack_tool) { ImGui::ShowStackToolWindow(&show_app_stack_tool); } - if (show_app_about) { ImGui::ShowAboutWindow(&show_app_about); } + if (show_app_metrics) + ImGui::ShowMetricsWindow(&show_app_metrics); + if (show_app_debug_log) + ImGui::ShowDebugLogWindow(&show_app_debug_log); + if (show_app_stack_tool) + ImGui::ShowStackToolWindow(&show_app_stack_tool); + if (show_app_about) + ImGui::ShowAboutWindow(&show_app_about); if (show_app_style_editor) { ImGui::Begin("Dear ImGui Style Editor", &show_app_style_editor); @@ -373,10 +357,8 @@ void ImGui::ShowDemoWindow(bool* p_open) } // Most "big" widgets share a common width settings by default. See 'Demo->Layout->Widgets Width' for details. - // e.g. Use 2/3 of the space for widgets and 1/3 for labels (right align) //ImGui::PushItemWidth(-ImGui::GetWindowWidth() * 0.35f); - // e.g. Leave a fixed amount of width for labels (by passing a negative value), the rest goes to widgets. ImGui::PushItemWidth(ImGui::GetFontSize() * -12); @@ -412,10 +394,14 @@ void ImGui::ShowDemoWindow(bool* p_open) if (ImGui::BeginMenu("Tools")) { IMGUI_DEMO_MARKER("Menu/Tools"); -#ifndef IMGUI_DISABLE_METRICS_WINDOW - ImGui::MenuItem("Metrics/Debugger", NULL, &show_app_metrics); - ImGui::MenuItem("Stack Tool", NULL, &show_app_stack_tool); +#ifndef IMGUI_DISABLE_DEBUG_TOOLS + const bool has_debug_tools = true; +#else + const bool has_debug_tools = false; #endif + ImGui::MenuItem("Metrics/Debugger", NULL, &show_app_metrics, has_debug_tools); + ImGui::MenuItem("Debug Log", NULL, &show_app_debug_log, has_debug_tools); + ImGui::MenuItem("Stack Tool", NULL, &show_app_stack_tool, has_debug_tools); ImGui::MenuItem("Style Editor", NULL, &show_app_style_editor); ImGui::MenuItem("About Dear ImGui", NULL, &show_app_about); ImGui::EndMenu(); @@ -423,29 +409,27 @@ void ImGui::ShowDemoWindow(bool* p_open) ImGui::EndMenuBar(); } - ImGui::Text("dear imgui says hello. (%s)", IMGUI_VERSION); + ImGui::Text("dear imgui says hello! (%s) (%d)", IMGUI_VERSION, IMGUI_VERSION_NUM); ImGui::Spacing(); IMGUI_DEMO_MARKER("Help"); if (ImGui::CollapsingHeader("Help")) { - ImGui::Text("ABOUT THIS DEMO:"); + ImGui::SeparatorText("ABOUT THIS DEMO:"); ImGui::BulletText("Sections below are demonstrating many aspects of the library."); ImGui::BulletText("The \"Examples\" menu above leads to more demo contents."); ImGui::BulletText("The \"Tools\" menu above gives access to: About Box, Style Editor,\n" "and Metrics/Debugger (general purpose Dear ImGui debugging tool)."); - ImGui::Separator(); - ImGui::Text("PROGRAMMER GUIDE:"); + ImGui::SeparatorText("PROGRAMMER GUIDE:"); ImGui::BulletText("See the ShowDemoWindow() code in imgui_demo.cpp. <- you are here!"); ImGui::BulletText("See comments in imgui.cpp."); ImGui::BulletText("See example applications in the examples/ folder."); - ImGui::BulletText("Read the FAQ at http://www.dearimgui.org/faq/"); + ImGui::BulletText("Read the FAQ at http://www.dearimgui.com/faq/"); ImGui::BulletText("Set 'io.ConfigFlags |= NavEnableKeyboard' for keyboard controls."); ImGui::BulletText("Set 'io.ConfigFlags |= NavEnableGamepad' for gamepad controls."); - ImGui::Separator(); - ImGui::Text("USER GUIDE:"); + ImGui::SeparatorText("USER GUIDE:"); ImGui::ShowUserGuide(); } @@ -456,6 +440,7 @@ void ImGui::ShowDemoWindow(bool* p_open) if (ImGui::TreeNode("Configuration##2")) { + ImGui::SeparatorText("General"); ImGui::CheckboxFlags("io.ConfigFlags: NavEnableKeyboard", &io.ConfigFlags, ImGuiConfigFlags_NavEnableKeyboard); ImGui::SameLine(); HelpMarker("Enable keyboard controls."); ImGui::CheckboxFlags("io.ConfigFlags: NavEnableGamepad", &io.ConfigFlags, ImGuiConfigFlags_NavEnableGamepad); @@ -515,18 +500,34 @@ void ImGui::ShowDemoWindow(bool* p_open) ImGui::Checkbox("io.ConfigInputTrickleEventQueue", &io.ConfigInputTrickleEventQueue); ImGui::SameLine(); HelpMarker("Enable input queue trickling: some types of events submitted during the same frame (e.g. button down + up) will be spread over multiple frames, improving interactions with low framerates."); + ImGui::Checkbox("io.MouseDrawCursor", &io.MouseDrawCursor); + ImGui::SameLine(); HelpMarker("Instruct Dear ImGui to render a mouse cursor itself. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + + ImGui::SeparatorText("Widgets"); ImGui::Checkbox("io.ConfigInputTextCursorBlink", &io.ConfigInputTextCursorBlink); ImGui::SameLine(); HelpMarker("Enable blinking cursor (optional as some users consider it to be distracting)."); + ImGui::Checkbox("io.ConfigInputTextEnterKeepActive", &io.ConfigInputTextEnterKeepActive); + ImGui::SameLine(); HelpMarker("Pressing Enter will keep item active and select contents (single-line only)."); ImGui::Checkbox("io.ConfigDragClickToInputText", &io.ConfigDragClickToInputText); ImGui::SameLine(); HelpMarker("Enable turning DragXXX widgets into text input with a simple mouse click-release (without moving)."); ImGui::Checkbox("io.ConfigWindowsResizeFromEdges", &io.ConfigWindowsResizeFromEdges); ImGui::SameLine(); HelpMarker("Enable resizing of windows from their edges and from the lower-left corner.\nThis requires (io.BackendFlags & ImGuiBackendFlags_HasMouseCursors) because it needs mouse cursor feedback."); ImGui::Checkbox("io.ConfigWindowsMoveFromTitleBarOnly", &io.ConfigWindowsMoveFromTitleBarOnly); - ImGui::Checkbox("io.MouseDrawCursor", &io.MouseDrawCursor); - ImGui::SameLine(); HelpMarker("Instruct Dear ImGui to render a mouse cursor itself. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + ImGui::Checkbox("io.ConfigMacOSXBehaviors", &io.ConfigMacOSXBehaviors); ImGui::Text("Also see Style->Rendering for rendering options."); + + ImGui::SeparatorText("Debug"); + ImGui::BeginDisabled(); + ImGui::Checkbox("io.ConfigDebugBeginReturnValueOnce", &io.ConfigDebugBeginReturnValueOnce); // . + ImGui::EndDisabled(); + ImGui::SameLine(); HelpMarker("First calls to Begin()/BeginChild() will return false.\n\nTHIS OPTION IS DISABLED because it needs to be set at application boot-time to make sense. Showing the disabled option is a way to make this feature easier to discover"); + ImGui::Checkbox("io.ConfigDebugBeginReturnValueLoop", &io.ConfigDebugBeginReturnValueLoop); + ImGui::SameLine(); HelpMarker("Some calls to Begin()/BeginChild() will return false.\n\nWill cycle through window depths then repeat. Windows should be flickering while running."); + ImGui::Checkbox("io.ConfigDebugIgnoreFocusLoss", &io.ConfigDebugIgnoreFocusLoss); + ImGui::SameLine(); HelpMarker("Option to deactivate io.AddFocusEvent(false) handling. May facilitate interactions with a debugger when focus loss leads to clearing inputs data."); + ImGui::TreePop(); - ImGui::Separator(); + ImGui::Spacing(); } IMGUI_DEMO_MARKER("Configuration/Backend Flags"); @@ -537,17 +538,18 @@ void ImGui::ShowDemoWindow(bool* p_open) "Here we expose them as read-only fields to avoid breaking interactions with your backend."); // Make a local copy to avoid modifying actual backend flags. - // FIXME: We don't use BeginDisabled() to keep label bright, maybe we need a BeginReadonly() equivalent.. - ImGuiBackendFlags backend_flags = io.BackendFlags; - ImGui::CheckboxFlags("io.BackendFlags: HasGamepad", &backend_flags, ImGuiBackendFlags_HasGamepad); - ImGui::CheckboxFlags("io.BackendFlags: HasMouseCursors", &backend_flags, ImGuiBackendFlags_HasMouseCursors); - ImGui::CheckboxFlags("io.BackendFlags: HasSetMousePos", &backend_flags, ImGuiBackendFlags_HasSetMousePos); - ImGui::CheckboxFlags("io.BackendFlags: PlatformHasViewports", &backend_flags, ImGuiBackendFlags_PlatformHasViewports); - ImGui::CheckboxFlags("io.BackendFlags: HasMouseHoveredViewport",&backend_flags, ImGuiBackendFlags_HasMouseHoveredViewport); - ImGui::CheckboxFlags("io.BackendFlags: RendererHasVtxOffset", &backend_flags, ImGuiBackendFlags_RendererHasVtxOffset); - ImGui::CheckboxFlags("io.BackendFlags: RendererHasViewports", &backend_flags, ImGuiBackendFlags_RendererHasViewports); + // FIXME: Maybe we need a BeginReadonly() equivalent to keep label bright? + ImGui::BeginDisabled(); + ImGui::CheckboxFlags("io.BackendFlags: HasGamepad", &io.BackendFlags, ImGuiBackendFlags_HasGamepad); + ImGui::CheckboxFlags("io.BackendFlags: HasMouseCursors", &io.BackendFlags, ImGuiBackendFlags_HasMouseCursors); + ImGui::CheckboxFlags("io.BackendFlags: HasSetMousePos", &io.BackendFlags, ImGuiBackendFlags_HasSetMousePos); + ImGui::CheckboxFlags("io.BackendFlags: PlatformHasViewports", &io.BackendFlags, ImGuiBackendFlags_PlatformHasViewports); + ImGui::CheckboxFlags("io.BackendFlags: HasMouseHoveredViewport",&io.BackendFlags, ImGuiBackendFlags_HasMouseHoveredViewport); + ImGui::CheckboxFlags("io.BackendFlags: RendererHasVtxOffset", &io.BackendFlags, ImGuiBackendFlags_RendererHasVtxOffset); + ImGui::CheckboxFlags("io.BackendFlags: RendererHasViewports", &io.BackendFlags, ImGuiBackendFlags_RendererHasViewports); + ImGui::EndDisabled(); ImGui::TreePop(); - ImGui::Separator(); + ImGui::Spacing(); } IMGUI_DEMO_MARKER("Configuration/Style"); @@ -556,7 +558,7 @@ void ImGui::ShowDemoWindow(bool* p_open) HelpMarker("The same contents can be accessed in 'Tools->Style Editor' or by calling the ShowStyleEditor() function."); ImGui::ShowStyleEditor(); ImGui::TreePop(); - ImGui::Separator(); + ImGui::Spacing(); } IMGUI_DEMO_MARKER("Configuration/Capture, Logging"); @@ -605,7 +607,7 @@ void ImGui::ShowDemoWindow(bool* p_open) ShowDemoWindowLayout(); ShowDemoWindowPopups(); ShowDemoWindowTables(); - ShowDemoWindowMisc(); + ShowDemoWindowInputs(); // End of ShowDemoWindow() ImGui::PopItemWidth(); @@ -625,6 +627,8 @@ static void ShowDemoWindowWidgets() IMGUI_DEMO_MARKER("Widgets/Basic"); if (ImGui::TreeNode("Basic")) { + ImGui::SeparatorText("General"); + IMGUI_DEMO_MARKER("Widgets/Basic/Button"); static int clicked = 0; if (ImGui::Button("Button")) @@ -679,35 +683,41 @@ static void ShowDemoWindowWidgets() ImGui::SameLine(); ImGui::Text("%d", counter); - IMGUI_DEMO_MARKER("Widgets/Basic/Tooltips"); - ImGui::Text("Hover over me"); - if (ImGui::IsItemHovered()) - ImGui::SetTooltip("I am a tooltip"); - - ImGui::SameLine(); - ImGui::Text("- or me"); - if (ImGui::IsItemHovered()) { - ImGui::BeginTooltip(); - ImGui::Text("I am a fancy tooltip"); - static float arr[] = { 0.6f, 0.1f, 1.0f, 0.5f, 0.92f, 0.1f, 0.2f }; - ImGui::PlotLines("Curve", arr, IM_ARRAYSIZE(arr)); - ImGui::EndTooltip(); + // Tooltips + IMGUI_DEMO_MARKER("Widgets/Basic/Tooltips"); + //ImGui::AlignTextToFramePadding(); + ImGui::Text("Tooltips:"); + + ImGui::SameLine(); + ImGui::SmallButton("Basic"); + if (ImGui::IsItemHovered()) + ImGui::SetTooltip("I am a tooltip"); + + ImGui::SameLine(); + ImGui::SmallButton("Fancy"); + if (ImGui::IsItemHovered() && ImGui::BeginTooltip()) + { + ImGui::Text("I am a fancy tooltip"); + static float arr[] = { 0.6f, 0.1f, 1.0f, 0.5f, 0.92f, 0.1f, 0.2f }; + ImGui::PlotLines("Curve", arr, IM_ARRAYSIZE(arr)); + ImGui::Text("Sin(time) = %f", sinf((float)ImGui::GetTime())); + ImGui::EndTooltip(); + } + + ImGui::SameLine(); + ImGui::SmallButton("Delayed"); + if (ImGui::IsItemHovered(ImGuiHoveredFlags_DelayNormal)) // With a delay + ImGui::SetTooltip("I am a tooltip with a delay."); + + ImGui::SameLine(); + HelpMarker( + "Tooltip are created by using the IsItemHovered() function over any kind of item."); } - ImGui::Separator(); ImGui::LabelText("label", "Value"); - { - // Using the _simplified_ one-liner Combo() api here - // See "Combo" section for examples of how to use the more flexible BeginCombo()/EndCombo() api. - IMGUI_DEMO_MARKER("Widgets/Basic/Combo"); - const char* items[] = { "AAAA", "BBBB", "CCCC", "DDDD", "EEEE", "FFFF", "GGGG", "HHHH", "IIIIIII", "JJJJ", "KKKKKKK" }; - static int item_current = 0; - ImGui::Combo("combo", &item_current, items, IM_ARRAYSIZE(items)); - ImGui::SameLine(); HelpMarker( - "Using the simplified one-liner Combo API here.\nRefer to the \"Combo\" section below for an explanation of how to use the more flexible and general BeginCombo/EndCombo API."); - } + ImGui::SeparatorText("Inputs"); { // To wire InputText() with std::string or any other custom string type, @@ -719,7 +729,7 @@ static void ShowDemoWindowWidgets() "USER:\n" "Hold SHIFT or use mouse to select text.\n" "CTRL+Left/Right to word jump.\n" - "CTRL+A or double-click to select all.\n" + "CTRL+A or Double-Click to select all.\n" "CTRL+X,CTRL+C,CTRL+V clipboard.\n" "CTRL+Z,CTRL+Y undo/redo.\n" "ESCAPE to revert.\n\n" @@ -751,6 +761,8 @@ static void ShowDemoWindowWidgets() ImGui::InputFloat3("input float3", vec4a); } + ImGui::SeparatorText("Drags"); + { IMGUI_DEMO_MARKER("Widgets/Basic/DragInt, DragFloat"); static int i1 = 50, i2 = 42; @@ -767,6 +779,8 @@ static void ShowDemoWindowWidgets() ImGui::DragFloat("drag small float", &f2, 0.0001f, 0.0f, 0.0f, "%.06f ns"); } + ImGui::SeparatorText("Sliders"); + { IMGUI_DEMO_MARKER("Widgets/Basic/SliderInt, SliderFloat"); static int i1 = 0; @@ -789,10 +803,12 @@ static void ShowDemoWindowWidgets() static int elem = Element_Fire; const char* elems_names[Element_COUNT] = { "Fire", "Earth", "Air", "Water" }; const char* elem_name = (elem >= 0 && elem < Element_COUNT) ? elems_names[elem] : "Unknown"; - ImGui::SliderInt("slider enum", &elem, 0, Element_COUNT - 1, elem_name); + ImGui::SliderInt("slider enum", &elem, 0, Element_COUNT - 1, elem_name); // Use ImGuiSliderFlags_NoInput flag to disable CTRL+Click here. ImGui::SameLine(); HelpMarker("Using the format string parameter to display a name instead of the underlying integer."); } + ImGui::SeparatorText("Selectors/Pickers"); + { IMGUI_DEMO_MARKER("Widgets/Basic/ColorEdit3, ColorEdit4"); static float col1[3] = { 1.0f, 0.0f, 0.2f }; @@ -807,6 +823,17 @@ static void ShowDemoWindowWidgets() ImGui::ColorEdit4("color 2", col2); } + { + // Using the _simplified_ one-liner Combo() api here + // See "Combo" section for examples of how to use the more flexible BeginCombo()/EndCombo() api. + IMGUI_DEMO_MARKER("Widgets/Basic/Combo"); + const char* items[] = { "AAAA", "BBBB", "CCCC", "DDDD", "EEEE", "FFFF", "GGGG", "HHHH", "IIIIIII", "JJJJ", "KKKKKKK" }; + static int item_current = 0; + ImGui::Combo("combo", &item_current, items, IM_ARRAYSIZE(items)); + ImGui::SameLine(); HelpMarker( + "Using the simplified one-liner Combo API here.\nRefer to the \"Combo\" section below for an explanation of how to use the more flexible and general BeginCombo/EndCombo API."); + } + { // Using the _simplified_ one-liner ListBox() api here // See "List boxes" section for examples of how to use the more flexible BeginListBox()/EndListBox() api. @@ -1036,7 +1063,7 @@ static void ShowDemoWindowWidgets() // Note that characters values are preserved even by InputText() if the font cannot be displayed, // so you can safely copy & paste garbled characters into another application. ImGui::TextWrapped( - "CJK text will only appears if the font was loaded with the appropriate CJK character ranges. " + "CJK text will only appear if the font was loaded with the appropriate CJK character ranges. " "Call io.Fonts->AddFontFromFileTTF() manually to load extra character ranges. " "Read docs/FONTS.md for details."); ImGui::Text("Hiragana: \xe3\x81\x8b\xe3\x81\x8d\xe3\x81\x8f\xe3\x81\x91\xe3\x81\x93 (kakikukeko)"); // Normally we would use u8"blah blah" with the proper characters directly in the string. @@ -1077,16 +1104,17 @@ static void ShowDemoWindowWidgets() float my_tex_w = (float)io.Fonts->TexWidth; float my_tex_h = (float)io.Fonts->TexHeight; { + static bool use_text_color_for_tint = false; + ImGui::Checkbox("Use Text Color for Tint", &use_text_color_for_tint); ImGui::Text("%.0fx%.0f", my_tex_w, my_tex_h); ImVec2 pos = ImGui::GetCursorScreenPos(); ImVec2 uv_min = ImVec2(0.0f, 0.0f); // Top-left ImVec2 uv_max = ImVec2(1.0f, 1.0f); // Lower-right - ImVec4 tint_col = ImVec4(1.0f, 1.0f, 1.0f, 1.0f); // No tint - ImVec4 border_col = ImVec4(1.0f, 1.0f, 1.0f, 0.5f); // 50% opaque white + ImVec4 tint_col = use_text_color_for_tint ? ImGui::GetStyleColorVec4(ImGuiCol_Text) : ImVec4(1.0f, 1.0f, 1.0f, 1.0f); // No tint + ImVec4 border_col = ImGui::GetStyleColorVec4(ImGuiCol_Border); ImGui::Image(my_tex_id, ImVec2(my_tex_w, my_tex_h), uv_min, uv_max, tint_col, border_col); - if (ImGui::IsItemHovered()) + if (ImGui::IsItemHovered() && ImGui::BeginTooltip()) { - ImGui::BeginTooltip(); float region_sz = 32.0f; float region_x = io.MousePos.x - pos.x - region_sz * 0.5f; float region_y = io.MousePos.y - pos.y - region_sz * 0.5f; @@ -1109,15 +1137,21 @@ static void ShowDemoWindowWidgets() static int pressed_count = 0; for (int i = 0; i < 8; i++) { + // UV coordinates are often (0.0f, 0.0f) and (1.0f, 1.0f) to display an entire textures. + // Here are trying to display only a 32x32 pixels area of the texture, hence the UV computation. + // Read about UV coordinates here: https://github.com/ocornut/imgui/wiki/Image-Loading-and-Displaying-Examples ImGui::PushID(i); - int frame_padding = -1 + i; // -1 == uses default padding (style.FramePadding) - ImVec2 size = ImVec2(32.0f, 32.0f); // Size of the image we want to make visible - ImVec2 uv0 = ImVec2(0.0f, 0.0f); // UV coordinates for lower-left - ImVec2 uv1 = ImVec2(32.0f / my_tex_w, 32.0f / my_tex_h);// UV coordinates for (32,32) in our texture - ImVec4 bg_col = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); // Black background - ImVec4 tint_col = ImVec4(1.0f, 1.0f, 1.0f, 1.0f); // No tint - if (ImGui::ImageButton(my_tex_id, size, uv0, uv1, frame_padding, bg_col, tint_col)) + if (i > 0) + ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(i - 1.0f, i - 1.0f)); + ImVec2 size = ImVec2(32.0f, 32.0f); // Size of the image we want to make visible + ImVec2 uv0 = ImVec2(0.0f, 0.0f); // UV coordinates for lower-left + ImVec2 uv1 = ImVec2(32.0f / my_tex_w, 32.0f / my_tex_h); // UV coordinates for (32,32) in our texture + ImVec4 bg_col = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); // Black background + ImVec4 tint_col = ImVec4(1.0f, 1.0f, 1.0f, 1.0f); // No tint + if (ImGui::ImageButton("", my_tex_id, size, uv0, uv1, bg_col, tint_col)) pressed_count += 1; + if (i > 0) + ImGui::PopStyleVar(); ImGui::PopID(); ImGui::SameLine(); } @@ -1129,6 +1163,7 @@ static void ShowDemoWindowWidgets() IMGUI_DEMO_MARKER("Widgets/Combo"); if (ImGui::TreeNode("Combo")) { + // Combo Boxes are also called "Dropdown" in other systems // Expose flags as checkbox for the demo static ImGuiComboFlags flags = 0; ImGui::CheckboxFlags("ImGuiComboFlags_PopupAlignLeft", &flags, ImGuiComboFlags_PopupAlignLeft); @@ -1414,7 +1449,15 @@ static void ShowDemoWindowWidgets() { struct TextFilters { - // Return 0 (pass) if the character is 'i' or 'm' or 'g' or 'u' or 'i' + // Modify character input by altering 'data->Eventchar' (ImGuiInputTextFlags_CallbackCharFilter callback) + static int FilterCasingSwap(ImGuiInputTextCallbackData* data) + { + if (data->EventChar >= 'a' && data->EventChar <= 'z') { data->EventChar = data->EventChar - 'A' - 'a'; } // Lowercase becomes uppercase + else if (data->EventChar >= 'A' && data->EventChar <= 'Z') { data->EventChar = data->EventChar + 'a' - 'A'; } // Uppercase becomes lowercase + return 0; + } + + // Return 0 (pass) if the character is 'i' or 'm' or 'g' or 'u' or 'i', otherwise return 1 (filter out) static int FilterImGuiLetters(ImGuiInputTextCallbackData* data) { if (data->EventChar < 256 && strchr("imgui", (char)data->EventChar)) @@ -1423,12 +1466,13 @@ static void ShowDemoWindowWidgets() } }; - static char buf1[64] = ""; ImGui::InputText("default", buf1, 64); - static char buf2[64] = ""; ImGui::InputText("decimal", buf2, 64, ImGuiInputTextFlags_CharsDecimal); - static char buf3[64] = ""; ImGui::InputText("hexadecimal", buf3, 64, ImGuiInputTextFlags_CharsHexadecimal | ImGuiInputTextFlags_CharsUppercase); - static char buf4[64] = ""; ImGui::InputText("uppercase", buf4, 64, ImGuiInputTextFlags_CharsUppercase); - static char buf5[64] = ""; ImGui::InputText("no blank", buf5, 64, ImGuiInputTextFlags_CharsNoBlank); - static char buf6[64] = ""; ImGui::InputText("\"imgui\" letters", buf6, 64, ImGuiInputTextFlags_CallbackCharFilter, TextFilters::FilterImGuiLetters); + static char buf1[32] = ""; ImGui::InputText("default", buf1, 32); + static char buf2[32] = ""; ImGui::InputText("decimal", buf2, 32, ImGuiInputTextFlags_CharsDecimal); + static char buf3[32] = ""; ImGui::InputText("hexadecimal", buf3, 32, ImGuiInputTextFlags_CharsHexadecimal | ImGuiInputTextFlags_CharsUppercase); + static char buf4[32] = ""; ImGui::InputText("uppercase", buf4, 32, ImGuiInputTextFlags_CharsUppercase); + static char buf5[32] = ""; ImGui::InputText("no blank", buf5, 32, ImGuiInputTextFlags_CharsNoBlank); + static char buf6[32] = ""; ImGui::InputText("casing swap", buf6, 32, ImGuiInputTextFlags_CallbackCharFilter, TextFilters::FilterCasingSwap); // Use CharFilter callback to replace characters. + static char buf7[32] = ""; ImGui::InputText("\"imgui\"", buf7, 32, ImGuiInputTextFlags_CallbackCharFilter, TextFilters::FilterImGuiLetters); // Use CharFilter callback to disable some characters. ImGui::TreePop(); } @@ -1493,7 +1537,7 @@ static void ShowDemoWindowWidgets() static char buf3[64]; static int edit_count = 0; ImGui::InputText("Edit", buf3, 64, ImGuiInputTextFlags_CallbackEdit, Funcs::MyCallback, (void*)&edit_count); - ImGui::SameLine(); HelpMarker("Here we toggle the casing of the first character on every edits + count edits."); + ImGui::SameLine(); HelpMarker("Here we toggle the casing of the first character on every edit + count edits."); ImGui::SameLine(); ImGui::Text("(%d)", edit_count); ImGui::TreePop(); @@ -1733,7 +1777,7 @@ static void ShowDemoWindowWidgets() } // Use functions to generate output - // FIXME: This is rather awkward because current plot API only pass in indices. + // FIXME: This is actually VERY awkward because current plot API only pass in indices. // We probably want an API passing floats and user provide sample rate/count. struct Funcs { @@ -1741,7 +1785,7 @@ static void ShowDemoWindowWidgets() static float Saw(void*, int i) { return (i & 1) ? 1.0f : -1.0f; } }; static int func_type = 0, display_count = 70; - ImGui::Separator(); + ImGui::SeparatorText("Functions"); ImGui::SetNextItemWidth(ImGui::GetFontSize() * 8); ImGui::Combo("func", &func_type, "Sin\0Saw\0"); ImGui::SameLine(); @@ -1784,6 +1828,7 @@ static void ShowDemoWindowWidgets() static bool drag_and_drop = true; static bool options_menu = true; static bool hdr = false; + ImGui::SeparatorText("Options"); ImGui::Checkbox("With Alpha Preview", &alpha_preview); ImGui::Checkbox("With Half Alpha Preview", &alpha_half_preview); ImGui::Checkbox("With Drag and Drop", &drag_and_drop); @@ -1792,6 +1837,7 @@ static void ShowDemoWindowWidgets() ImGuiColorEditFlags misc_flags = (hdr ? ImGuiColorEditFlags_HDR : 0) | (drag_and_drop ? 0 : ImGuiColorEditFlags_NoDragDrop) | (alpha_half_preview ? ImGuiColorEditFlags_AlphaPreviewHalf : (alpha_preview ? ImGuiColorEditFlags_AlphaPreview : 0)) | (options_menu ? 0 : ImGuiColorEditFlags_NoOptions); IMGUI_DEMO_MARKER("Widgets/Color/ColorEdit"); + ImGui::SeparatorText("Inline color editor"); ImGui::Text("Color widget:"); ImGui::SameLine(); HelpMarker( "Click on the color square to open a color picker.\n" @@ -1889,7 +1935,7 @@ static void ShowDemoWindowWidgets() ImGui::ColorButton("MyColor##3c", *(ImVec4*)&color, misc_flags | (no_border ? ImGuiColorEditFlags_NoBorder : 0), ImVec2(80, 80)); IMGUI_DEMO_MARKER("Widgets/Color/ColorPicker"); - ImGui::Text("Color picker:"); + ImGui::SeparatorText("Color picker"); static bool alpha = true; static bool alpha_bar = true; static bool side_preview = true; @@ -2018,7 +2064,7 @@ static void ShowDemoWindowWidgets() // - integer/float/double // To avoid polluting the public API with all possible combinations, we use the ImGuiDataType enum // to pass the type, and passing all arguments by pointer. - // This is the reason the test code below creates local variables to hold "zero" "one" etc. for each types. + // This is the reason the test code below creates local variables to hold "zero" "one" etc. for each type. // In practice, if you frequently use a given type that is not covered by the normal API entry points, // you can wrap it yourself inside a 1 line function which can take typed argument as value instead of void*, // and then pass their address to the generic function. For example: @@ -2060,10 +2106,10 @@ static void ShowDemoWindowWidgets() const float drag_speed = 0.2f; static bool drag_clamp = false; IMGUI_DEMO_MARKER("Widgets/Data Types/Drags"); - ImGui::Text("Drags:"); + ImGui::SeparatorText("Drags"); ImGui::Checkbox("Clamp integers to 0..50", &drag_clamp); ImGui::SameLine(); HelpMarker( - "As with every widgets in dear imgui, we never modify values unless there is a user interaction.\n" + "As with every widget in dear imgui, we never modify values unless there is a user interaction.\n" "You can override the clamping limits by using CTRL+Click to input a value."); ImGui::DragScalar("drag s8", ImGuiDataType_S8, &s8_v, drag_speed, drag_clamp ? &s8_zero : NULL, drag_clamp ? &s8_fifty : NULL); ImGui::DragScalar("drag u8", ImGuiDataType_U8, &u8_v, drag_speed, drag_clamp ? &u8_zero : NULL, drag_clamp ? &u8_fifty : NULL, "%u ms"); @@ -2080,7 +2126,7 @@ static void ShowDemoWindowWidgets() ImGui::DragScalar("drag double log",ImGuiDataType_Double, &f64_v, 0.0005f, &f64_zero, &f64_one, "0 < %.10f < 1", ImGuiSliderFlags_Logarithmic); IMGUI_DEMO_MARKER("Widgets/Data Types/Sliders"); - ImGui::Text("Sliders"); + ImGui::SeparatorText("Sliders"); ImGui::SliderScalar("slider s8 full", ImGuiDataType_S8, &s8_v, &s8_min, &s8_max, "%d"); ImGui::SliderScalar("slider u8 full", ImGuiDataType_U8, &u8_v, &u8_min, &u8_max, "%u"); ImGui::SliderScalar("slider s16 full", ImGuiDataType_S16, &s16_v, &s16_min, &s16_max, "%d"); @@ -2105,7 +2151,7 @@ static void ShowDemoWindowWidgets() ImGui::SliderScalar("slider double low log",ImGuiDataType_Double, &f64_v, &f64_zero, &f64_one, "%.10f", ImGuiSliderFlags_Logarithmic); ImGui::SliderScalar("slider double high", ImGuiDataType_Double, &f64_v, &f64_lo_a, &f64_hi_a, "%e grams"); - ImGui::Text("Sliders (reverse)"); + ImGui::SeparatorText("Sliders (reverse)"); ImGui::SliderScalar("slider s8 reverse", ImGuiDataType_S8, &s8_v, &s8_max, &s8_min, "%d"); ImGui::SliderScalar("slider u8 reverse", ImGuiDataType_U8, &u8_v, &u8_max, &u8_min, "%u"); ImGui::SliderScalar("slider s32 reverse", ImGuiDataType_S32, &s32_v, &s32_fifty, &s32_zero, "%d"); @@ -2115,7 +2161,7 @@ static void ShowDemoWindowWidgets() IMGUI_DEMO_MARKER("Widgets/Data Types/Inputs"); static bool inputs_step = true; - ImGui::Text("Inputs"); + ImGui::SeparatorText("Inputs"); ImGui::Checkbox("Show step buttons", &inputs_step); ImGui::InputScalar("input s8", ImGuiDataType_S8, &s8_v, inputs_step ? &s8_one : NULL, NULL, "%d"); ImGui::InputScalar("input u8", ImGuiDataType_U8, &u8_v, inputs_step ? &u8_one : NULL, NULL, "%u"); @@ -2139,22 +2185,23 @@ static void ShowDemoWindowWidgets() static float vec4f[4] = { 0.10f, 0.20f, 0.30f, 0.44f }; static int vec4i[4] = { 1, 5, 100, 255 }; + ImGui::SeparatorText("2-wide"); ImGui::InputFloat2("input float2", vec4f); ImGui::DragFloat2("drag float2", vec4f, 0.01f, 0.0f, 1.0f); ImGui::SliderFloat2("slider float2", vec4f, 0.0f, 1.0f); ImGui::InputInt2("input int2", vec4i); ImGui::DragInt2("drag int2", vec4i, 1, 0, 255); ImGui::SliderInt2("slider int2", vec4i, 0, 255); - ImGui::Spacing(); + ImGui::SeparatorText("3-wide"); ImGui::InputFloat3("input float3", vec4f); ImGui::DragFloat3("drag float3", vec4f, 0.01f, 0.0f, 1.0f); ImGui::SliderFloat3("slider float3", vec4f, 0.0f, 1.0f); ImGui::InputInt3("input int3", vec4i); ImGui::DragInt3("drag int3", vec4i, 1, 0, 255); ImGui::SliderInt3("slider int3", vec4i, 0, 255); - ImGui::Spacing(); + ImGui::SeparatorText("4-wide"); ImGui::InputFloat4("input float4", vec4f); ImGui::DragFloat4("drag float4", vec4f, 0.01f, 0.0f, 1.0f); ImGui::SliderFloat4("slider float4", vec4f, 0.0f, 1.0f); @@ -2362,7 +2409,7 @@ static void ShowDemoWindowWidgets() HelpMarker("Testing how various types of items are interacting with the IsItemXXX functions. Note that the bool return value of most ImGui function is generally equivalent to calling ImGui::IsItemHovered()."); ImGui::Checkbox("Item Disabled", &item_disabled); - // Submit selected item item so we can query their status in the code following it. + // Submit selected items so we can query their status in the code following it. bool ret = false; static bool b = false; static float col4f[4] = { 1.0f, 0.5, 0.0f, 1.0f }; @@ -2386,6 +2433,10 @@ static void ShowDemoWindowWidgets() if (item_type == 14){ const char* items[] = { "Apple", "Banana", "Cherry", "Kiwi" }; static int current = 1; ret = ImGui::Combo("ITEM: Combo", ¤t, items, IM_ARRAYSIZE(items)); } if (item_type == 15){ const char* items[] = { "Apple", "Banana", "Cherry", "Kiwi" }; static int current = 1; ret = ImGui::ListBox("ITEM: ListBox", ¤t, items, IM_ARRAYSIZE(items), IM_ARRAYSIZE(items)); } + bool hovered_delay_none = ImGui::IsItemHovered(); + bool hovered_delay_short = ImGui::IsItemHovered(ImGuiHoveredFlags_DelayShort); + bool hovered_delay_normal = ImGui::IsItemHovered(ImGuiHoveredFlags_DelayNormal); + // Display the values of IsItemHovered() and other common item state functions. // Note that the ImGuiHoveredFlags_XXX flags can be combined. // Because BulletText is an item itself and that would affect the output of IsItemXXX functions, @@ -2430,6 +2481,8 @@ static void ShowDemoWindowWidgets() ImGui::GetItemRectMax().x, ImGui::GetItemRectMax().y, ImGui::GetItemRectSize().x, ImGui::GetItemRectSize().y ); + ImGui::BulletText( + "w/ Hovering Delay: None = %d, Fast %d, Normal = %d", hovered_delay_none, hovered_delay_short, hovered_delay_normal); if (item_disabled) ImGui::EndDisabled(); @@ -2549,6 +2602,26 @@ static void ShowDemoWindowWidgets() ImGui::SameLine(); HelpMarker("Demonstrate using BeginDisabled()/EndDisabled() across this section."); ImGui::TreePop(); } + + IMGUI_DEMO_MARKER("Widgets/Text Filter"); + if (ImGui::TreeNode("Text Filter")) + { + // Helper class to easy setup a text filter. + // You may want to implement a more feature-full filtering scheme in your own application. + HelpMarker("Not a widget per-se, but ImGuiTextFilter is a helper to perform simple filtering on text strings."); + static ImGuiTextFilter filter; + ImGui::Text("Filter usage:\n" + " \"\" display all lines\n" + " \"xxx\" display lines containing \"xxx\"\n" + " \"xxx,yyy\" display lines containing \"xxx\" or \"yyy\"\n" + " \"-xxx\" hide lines containing \"xxx\""); + filter.Draw(); + const char* lines[] = { "aaa1.c", "bbb1.c", "ccc1.c", "aaa2.cpp", "bbb2.cpp", "ccc2.cpp", "abc.h", "hello, world" }; + for (int i = 0; i < IM_ARRAYSIZE(lines); i++) + if (filter.PassFilter(lines[i])) + ImGui::BulletText("%s", lines[i]); + ImGui::TreePop(); + } } static void ShowDemoWindowLayout() @@ -2560,6 +2633,8 @@ static void ShowDemoWindowLayout() IMGUI_DEMO_MARKER("Layout/Child windows"); if (ImGui::TreeNode("Child windows")) { + ImGui::SeparatorText("Child windows"); + HelpMarker("Use child windows to begin into a self-contained independent scrolling/clipping regions within a host window."); static bool disable_mouse_wheel = false; static bool disable_menu = false; @@ -2612,7 +2687,7 @@ static void ShowDemoWindowLayout() ImGui::PopStyleVar(); } - ImGui::Separator(); + ImGui::SeparatorText("Misc/Advanced"); // Demonstrate a few extra things // - Changing ImGuiCol_ChildBg (which is transparent black in default styles) @@ -3275,59 +3350,58 @@ static void ShowDemoWindowLayout() ImGui::DragFloat2("size", (float*)&size, 0.5f, 1.0f, 200.0f, "%.0f"); ImGui::TextWrapped("(Click and drag to scroll)"); + HelpMarker( + "(Left) Using ImGui::PushClipRect():\n" + "Will alter ImGui hit-testing logic + ImDrawList rendering.\n" + "(use this if you want your clipping rectangle to affect interactions)\n\n" + "(Center) Using ImDrawList::PushClipRect():\n" + "Will alter ImDrawList rendering only.\n" + "(use this as a shortcut if you are only using ImDrawList calls)\n\n" + "(Right) Using ImDrawList::AddText() with a fine ClipRect:\n" + "Will alter only this specific ImDrawList::AddText() rendering.\n" + "This is often used internally to avoid altering the clipping rectangle and minimize draw calls."); + for (int n = 0; n < 3; n++) { if (n > 0) ImGui::SameLine(); - ImGui::PushID(n); - ImGui::BeginGroup(); // Lock X position - ImGui::InvisibleButton("##empty", size); + ImGui::PushID(n); + ImGui::InvisibleButton("##canvas", size); if (ImGui::IsItemActive() && ImGui::IsMouseDragging(ImGuiMouseButton_Left)) { offset.x += ImGui::GetIO().MouseDelta.x; offset.y += ImGui::GetIO().MouseDelta.y; } + ImGui::PopID(); + if (!ImGui::IsItemVisible()) // Skip rendering as ImDrawList elements are not clipped. + continue; + const ImVec2 p0 = ImGui::GetItemRectMin(); const ImVec2 p1 = ImGui::GetItemRectMax(); const char* text_str = "Line 1 hello\nLine 2 clip me!"; const ImVec2 text_pos = ImVec2(p0.x + offset.x, p0.y + offset.y); ImDrawList* draw_list = ImGui::GetWindowDrawList(); - switch (n) { case 0: - HelpMarker( - "Using ImGui::PushClipRect():\n" - "Will alter ImGui hit-testing logic + ImDrawList rendering.\n" - "(use this if you want your clipping rectangle to affect interactions)"); ImGui::PushClipRect(p0, p1, true); draw_list->AddRectFilled(p0, p1, IM_COL32(90, 90, 120, 255)); draw_list->AddText(text_pos, IM_COL32_WHITE, text_str); ImGui::PopClipRect(); break; case 1: - HelpMarker( - "Using ImDrawList::PushClipRect():\n" - "Will alter ImDrawList rendering only.\n" - "(use this as a shortcut if you are only using ImDrawList calls)"); draw_list->PushClipRect(p0, p1, true); draw_list->AddRectFilled(p0, p1, IM_COL32(90, 90, 120, 255)); draw_list->AddText(text_pos, IM_COL32_WHITE, text_str); draw_list->PopClipRect(); break; case 2: - HelpMarker( - "Using ImDrawList::AddText() with a fine ClipRect:\n" - "Will alter only this specific ImDrawList::AddText() rendering.\n" - "(this is often used internally to avoid altering the clipping rectangle and minimize draw calls)"); ImVec4 clip_rect(p0.x, p0.y, p1.x, p1.y); // AddText() takes a ImVec4* here so let's convert. draw_list->AddRectFilled(p0, p1, IM_COL32(90, 90, 120, 255)); draw_list->AddText(ImGui::GetFont(), ImGui::GetFontSize(), text_pos, IM_COL32_WHITE, text_str, NULL, 0.0f, &clip_rect); break; } - ImGui::EndGroup(); - ImGui::PopID(); } ImGui::TreePop(); @@ -3377,8 +3451,7 @@ static void ShowDemoWindowPopups() ImGui::TextUnformatted(selected_fish == -1 ? "" : names[selected_fish]); if (ImGui::BeginPopup("my_select_popup")) { - ImGui::Text("Aquarium"); - ImGui::Separator(); + ImGui::SeparatorText("Aquarium"); for (int i = 0; i < IM_ARRAYSIZE(names); i++) if (ImGui::Selectable(names[i])) selected_fish = i; @@ -3464,7 +3537,7 @@ static void ShowDemoWindowPopups() // if (IsItemHovered() && IsMouseReleased(ImGuiMouseButton_Right)) // OpenPopup(id); // return BeginPopup(id); - // For advanced advanced uses you may want to replicate and customize this code. + // For advanced uses you may want to replicate and customize this code. // See more details in BeginPopupContextItem(). // Example 1 @@ -3472,11 +3545,14 @@ static void ShowDemoWindowPopups() // and BeginPopupContextItem() will use the last item ID as the popup ID. { const char* names[5] = { "Label1", "Label2", "Label3", "Label4", "Label5" }; + static int selected = -1; for (int n = 0; n < 5; n++) { - ImGui::Selectable(names[n]); + if (ImGui::Selectable(names[n], selected == n)) + selected = n; if (ImGui::BeginPopupContextItem()) // <-- use last item id as popup id { + selected = n; ImGui::Text("This a popup for \"%s\"!", names[n]); if (ImGui::Button("Close")) ImGui::CloseCurrentPopup(); @@ -3552,7 +3628,7 @@ static void ShowDemoWindowPopups() if (ImGui::BeginPopupModal("Delete?", NULL, ImGuiWindowFlags_AlwaysAutoResize)) { - ImGui::Text("All those beautiful files will be deleted.\nThis operation cannot be undone!\n\n"); + ImGui::Text("All those beautiful files will be deleted.\nThis operation cannot be undone!"); ImGui::Separator(); //static int unused_i = 0; @@ -3620,26 +3696,19 @@ static void ShowDemoWindowPopups() ImGui::TextWrapped("Below we are testing adding menu items to a regular window. It's rather unusual but should work!"); ImGui::Separator(); - // Note: As a quirk in this very specific example, we want to differentiate the parent of this menu from the - // parent of the various popup menus above. To do so we are encloding the items in a PushID()/PopID() block - // to make them two different menusets. If we don't, opening any popup above and hovering our menu here would - // open it. This is because once a menu is active, we allow to switch to a sibling menu by just hovering on it, - // which is the desired behavior for regular menus. - ImGui::PushID("foo"); ImGui::MenuItem("Menu item", "CTRL+M"); if (ImGui::BeginMenu("Menu inside a regular window")) { ShowExampleMenuFile(); ImGui::EndMenu(); } - ImGui::PopID(); ImGui::Separator(); ImGui::TreePop(); } } // Dummy data structure that we use for the Table demo. -// (pre-C++11 doesn't allow us to instantiate ImVector template if this structure if defined inside the demo function) +// (pre-C++11 doesn't allow us to instantiate ImVector template if this structure is defined inside the demo function) namespace { // We are passing our own identifier to TableSetupColumn() to facilitate identifying columns in the sorting code. @@ -3742,9 +3811,8 @@ static void EditTableSizingFlags(ImGuiTableFlags* p_flags) } ImGui::SameLine(); ImGui::TextDisabled("(?)"); - if (ImGui::IsItemHovered()) + if (ImGui::IsItemHovered() && ImGui::BeginTooltip()) { - ImGui::BeginTooltip(); ImGui::PushTextWrapPos(ImGui::GetFontSize() * 50.0f); for (int m = 0; m < IM_ARRAYSIZE(policies); m++) { @@ -3858,7 +3926,7 @@ static void ShowDemoWindowTables() } // [Method 2] Using TableNextColumn() called multiple times, instead of using a for loop + TableSetColumnIndex(). - // This is generally more convenient when you have code manually submitting the contents of each columns. + // This is generally more convenient when you have code manually submitting the contents of each column. HelpMarker("Using TableNextRow() + calling TableNextColumn() _before_ each cell, manually."); if (ImGui::BeginTable("table2", 3)) { @@ -3876,10 +3944,10 @@ static void ShowDemoWindowTables() } // [Method 3] We call TableNextColumn() _before_ each cell. We never call TableNextRow(), - // as TableNextColumn() will automatically wrap around and create new roes as needed. + // as TableNextColumn() will automatically wrap around and create new rows as needed. // This is generally more convenient when your cells all contains the same type of data. HelpMarker( - "Only using TableNextColumn(), which tends to be convenient for tables where every cells contains the same type of contents.\n" + "Only using TableNextColumn(), which tends to be convenient for tables where every cell contains the same type of contents.\n" "This is also more similar to the old NextColumn() function of the Columns API, and provided to facilitate the Columns->Tables API transition."); if (ImGui::BeginTable("table3", 3)) { @@ -3931,7 +3999,7 @@ static void ShowDemoWindowTables() ImGui::SameLine(); ImGui::RadioButton("Text", &contents_type, CT_Text); ImGui::SameLine(); ImGui::RadioButton("FillButton", &contents_type, CT_FillButton); ImGui::Checkbox("Display headers", &display_headers); - ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBody", &flags, ImGuiTableFlags_NoBordersInBody); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body (borders will always appears in Headers"); + ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBody", &flags, ImGuiTableFlags_NoBordersInBody); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body (borders will always appear in Headers"); PopStyleCompact(); if (ImGui::BeginTable("table1", 3, flags)) @@ -3970,8 +4038,8 @@ static void ShowDemoWindowTables() IMGUI_DEMO_MARKER("Tables/Resizable, stretch"); if (ImGui::TreeNode("Resizable, stretch")) { - // By default, if we don't enable ScrollX the sizing policy for each columns is "Stretch" - // Each columns maintain a sizing weight, and they will occupy all available width. + // By default, if we don't enable ScrollX the sizing policy for each column is "Stretch" + // All columns maintain a sizing weight, and they will occupy all available width. static ImGuiTableFlags flags = ImGuiTableFlags_SizingStretchSame | ImGuiTableFlags_Resizable | ImGuiTableFlags_BordersOuter | ImGuiTableFlags_BordersV | ImGuiTableFlags_ContextMenuInBody; PushStyleCompact(); ImGui::CheckboxFlags("ImGuiTableFlags_Resizable", &flags, ImGuiTableFlags_Resizable); @@ -4093,7 +4161,7 @@ static void ShowDemoWindowTables() ImGui::CheckboxFlags("ImGuiTableFlags_Reorderable", &flags, ImGuiTableFlags_Reorderable); ImGui::CheckboxFlags("ImGuiTableFlags_Hideable", &flags, ImGuiTableFlags_Hideable); ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBody", &flags, ImGuiTableFlags_NoBordersInBody); - ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBodyUntilResize", &flags, ImGuiTableFlags_NoBordersInBodyUntilResize); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body until hovered for resize (borders will always appears in Headers)"); + ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBodyUntilResize", &flags, ImGuiTableFlags_NoBordersInBodyUntilResize); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body until hovered for resize (borders will always appear in Headers)"); PopStyleCompact(); if (ImGui::BeginTable("table1", 3, flags)) @@ -4151,7 +4219,7 @@ static void ShowDemoWindowTables() "- any form of row selection\n" "Because of this, activating BorderOuterV sets the default to PadOuterX. Using PadOuterX or NoPadOuterX you can override the default.\n\n" "Actual padding values are using style.CellPadding.\n\n" - "In this demo we don't show horizontal borders to emphasis how they don't affect default horizontal padding."); + "In this demo we don't show horizontal borders to emphasize how they don't affect default horizontal padding."); static ImGuiTableFlags flags1 = ImGuiTableFlags_BordersV; PushStyleCompact(); @@ -4620,7 +4688,7 @@ static void ShowDemoWindowTables() IMGUI_DEMO_MARKER("Tables/Nested tables"); if (ImGui::TreeNode("Nested tables")) { - HelpMarker("This demonstrate embedding a table into another table cell."); + HelpMarker("This demonstrates embedding a table into another table cell."); if (ImGui::BeginTable("table_nested1", 2, ImGuiTableFlags_Borders | ImGuiTableFlags_Resizable | ImGuiTableFlags_Reorderable | ImGuiTableFlags_Hideable)) { @@ -4665,7 +4733,7 @@ static void ShowDemoWindowTables() IMGUI_DEMO_MARKER("Tables/Row height"); if (ImGui::TreeNode("Row height")) { - HelpMarker("You can pass a 'min_row_height' to TableNextRow().\n\nRows are padded with 'style.CellPadding.y' on top and bottom, so effectively the minimum row height will always be >= 'style.CellPadding.y * 2.0f'.\n\nWe cannot honor a _maximum_ row height as that would requires a unique clipping rectangle per row."); + HelpMarker("You can pass a 'min_row_height' to TableNextRow().\n\nRows are padded with 'style.CellPadding.y' on top and bottom, so effectively the minimum row height will always be >= 'style.CellPadding.y * 2.0f'.\n\nWe cannot honor a _maximum_ row height as that would require a unique clipping rectangle per row."); if (ImGui::BeginTable("table_row_height", 1, ImGuiTableFlags_BordersOuter | ImGuiTableFlags_BordersInnerV)) { for (int row = 0; row < 10; row++) @@ -4914,7 +4982,7 @@ static void ShowDemoWindowTables() ImGui::TableSetColumnIndex(1); ImGui::SliderFloat("float1", &dummy_f, 0.0f, 1.0f); ImGui::TableSetColumnIndex(2); - ImGui::SliderFloat("float2", &dummy_f, 0.0f, 1.0f); + ImGui::SliderFloat("##float2", &dummy_f, 0.0f, 1.0f); // No visible label since right-aligned ImGui::PopID(); } ImGui::EndTable(); @@ -5084,18 +5152,23 @@ static void ShowDemoWindowTables() if (ImGui::TreeNode("Synced instances")) { HelpMarker("Multiple tables with the same identifier will share their settings, width, visibility, order etc."); + + static ImGuiTableFlags flags = ImGuiTableFlags_Resizable | ImGuiTableFlags_Reorderable | ImGuiTableFlags_Hideable | ImGuiTableFlags_Borders | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_NoSavedSettings; + ImGui::CheckboxFlags("ImGuiTableFlags_ScrollY", &flags, ImGuiTableFlags_ScrollY); + ImGui::CheckboxFlags("ImGuiTableFlags_SizingFixedFit", &flags, ImGuiTableFlags_SizingFixedFit); for (int n = 0; n < 3; n++) { char buf[32]; sprintf(buf, "Synced Table %d", n); bool open = ImGui::CollapsingHeader(buf, ImGuiTreeNodeFlags_DefaultOpen); - if (open && ImGui::BeginTable("Table", 3, ImGuiTableFlags_Resizable | ImGuiTableFlags_Reorderable | ImGuiTableFlags_Hideable | ImGuiTableFlags_Borders | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_NoSavedSettings)) + if (open && ImGui::BeginTable("Table", 3, flags, ImVec2(0.0f, ImGui::GetTextLineHeightWithSpacing() * 5))) { ImGui::TableSetupColumn("One"); ImGui::TableSetupColumn("Two"); ImGui::TableSetupColumn("Three"); ImGui::TableHeadersRow(); - for (int cell = 0; cell < 9; cell++) + const int cell_count = (n == 1) ? 27 : 9; // Make second table have a scrollbar to verify that additional decoration is not affecting column positions. + for (int cell = 0; cell < cell_count; cell++) { ImGui::TableNextColumn(); ImGui::Text("this cell %d", cell); @@ -5227,7 +5300,7 @@ static void ShowDemoWindowTables() static bool show_headers = true; static bool show_wrapped_text = false; //static ImGuiTextFilter filter; - //ImGui::SetNextItemOpen(true, ImGuiCond_Once); // FIXME-TABLE: Enabling this results in initial clipped first pass on table which tend to affects column sizing + //ImGui::SetNextItemOpen(true, ImGuiCond_Once); // FIXME-TABLE: Enabling this results in initial clipped first pass on table which tend to affect column sizing if (ImGui::TreeNode("Options")) { // Make the UI compact because there are so many fields @@ -5254,8 +5327,8 @@ static void ShowDemoWindowTables() ImGui::CheckboxFlags("ImGuiTableFlags_BordersH", &flags, ImGuiTableFlags_BordersH); ImGui::CheckboxFlags("ImGuiTableFlags_BordersOuterH", &flags, ImGuiTableFlags_BordersOuterH); ImGui::CheckboxFlags("ImGuiTableFlags_BordersInnerH", &flags, ImGuiTableFlags_BordersInnerH); - ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBody", &flags, ImGuiTableFlags_NoBordersInBody); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body (borders will always appears in Headers"); - ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBodyUntilResize", &flags, ImGuiTableFlags_NoBordersInBodyUntilResize); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body until hovered for resize (borders will always appears in Headers)"); + ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBody", &flags, ImGuiTableFlags_NoBordersInBody); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body (borders will always appear in Headers"); + ImGui::CheckboxFlags("ImGuiTableFlags_NoBordersInBodyUntilResize", &flags, ImGuiTableFlags_NoBordersInBodyUntilResize); ImGui::SameLine(); HelpMarker("Disable vertical borders in columns Body until hovered for resize (borders will always appear in Headers)"); ImGui::TreePop(); } @@ -5318,7 +5391,7 @@ static void ShowDemoWindowTables() HelpMarker("If scrolling is disabled (ScrollX and ScrollY not set):\n" "- The table is output directly in the parent window.\n" "- OuterSize.x < 0.0f will right-align the table.\n" - "- OuterSize.x = 0.0f will narrow fit the table unless there are any Stretch column.\n" + "- OuterSize.x = 0.0f will narrow fit the table unless there are any Stretch columns.\n" "- OuterSize.y then becomes the minimum size for the table, which will extend vertically if there are more rows (unless NoHostExtendY is set)."); // From a user point of view we will tend to use 'inner_width' differently depending on whether our table is embedding scrolling. @@ -5723,148 +5796,121 @@ static void ShowDemoWindowColumns() ImGui::TreePop(); } -namespace ImGui { extern ImGuiKeyData* GetKeyData(ImGuiKey key); } - -static void ShowDemoWindowMisc() +static void ShowDemoWindowInputs() { - IMGUI_DEMO_MARKER("Filtering"); - if (ImGui::CollapsingHeader("Filtering")) - { - // Helper class to easy setup a text filter. - // You may want to implement a more feature-full filtering scheme in your own application. - static ImGuiTextFilter filter; - ImGui::Text("Filter usage:\n" - " \"\" display all lines\n" - " \"xxx\" display lines containing \"xxx\"\n" - " \"xxx,yyy\" display lines containing \"xxx\" or \"yyy\"\n" - " \"-xxx\" hide lines containing \"xxx\""); - filter.Draw(); - const char* lines[] = { "aaa1.c", "bbb1.c", "ccc1.c", "aaa2.cpp", "bbb2.cpp", "ccc2.cpp", "abc.h", "hello, world" }; - for (int i = 0; i < IM_ARRAYSIZE(lines); i++) - if (filter.PassFilter(lines[i])) - ImGui::BulletText("%s", lines[i]); - } - - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus"); - if (ImGui::CollapsingHeader("Inputs, Navigation & Focus")) + IMGUI_DEMO_MARKER("Inputs & Focus"); + if (ImGui::CollapsingHeader("Inputs & Focus")) { ImGuiIO& io = ImGui::GetIO(); - // Display ImGuiIO output flags - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Output"); + // Display inputs submitted to ImGuiIO + IMGUI_DEMO_MARKER("Inputs & Focus/Inputs"); ImGui::SetNextItemOpen(true, ImGuiCond_Once); - if (ImGui::TreeNode("Output")) + if (ImGui::TreeNode("Inputs")) { + HelpMarker( + "This is a simplified view. See more detailed input state:\n" + "- in 'Tools->Metrics/Debugger->Inputs'.\n" + "- in 'Tools->Debug Log->IO'."); + if (ImGui::IsMousePosValid()) + ImGui::Text("Mouse pos: (%g, %g)", io.MousePos.x, io.MousePos.y); + else + ImGui::Text("Mouse pos: "); + ImGui::Text("Mouse delta: (%g, %g)", io.MouseDelta.x, io.MouseDelta.y); + ImGui::Text("Mouse down:"); + for (int i = 0; i < IM_ARRAYSIZE(io.MouseDown); i++) if (ImGui::IsMouseDown(i)) { ImGui::SameLine(); ImGui::Text("b%d (%.02f secs)", i, io.MouseDownDuration[i]); } + ImGui::Text("Mouse wheel: %.1f", io.MouseWheel); + + // We iterate both legacy native range and named ImGuiKey ranges, which is a little odd but this allows displaying the data for old/new backends. + // User code should never have to go through such hoops! You can generally iterate between ImGuiKey_NamedKey_BEGIN and ImGuiKey_NamedKey_END. +#ifdef IMGUI_DISABLE_OBSOLETE_KEYIO + struct funcs { static bool IsLegacyNativeDupe(ImGuiKey) { return false; } }; + ImGuiKey start_key = ImGuiKey_NamedKey_BEGIN; +#else + struct funcs { static bool IsLegacyNativeDupe(ImGuiKey key) { return key < 512 && ImGui::GetIO().KeyMap[key] != -1; } }; // Hide Native<>ImGuiKey duplicates when both exists in the array + ImGuiKey start_key = (ImGuiKey)0; +#endif + ImGui::Text("Keys down:"); for (ImGuiKey key = start_key; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) { if (funcs::IsLegacyNativeDupe(key) || !ImGui::IsKeyDown(key)) continue; ImGui::SameLine(); ImGui::Text((key < ImGuiKey_NamedKey_BEGIN) ? "\"%s\"" : "\"%s\" %d", ImGui::GetKeyName(key), key); } + ImGui::Text("Keys mods: %s%s%s%s", io.KeyCtrl ? "CTRL " : "", io.KeyShift ? "SHIFT " : "", io.KeyAlt ? "ALT " : "", io.KeySuper ? "SUPER " : ""); + ImGui::Text("Chars queue:"); for (int i = 0; i < io.InputQueueCharacters.Size; i++) { ImWchar c = io.InputQueueCharacters[i]; ImGui::SameLine(); ImGui::Text("\'%c\' (0x%04X)", (c > ' ' && c <= 255) ? (char)c : '?', c); } // FIXME: We should convert 'c' to UTF-8 here but the functions are not public. + + ImGui::TreePop(); + } + + // Display ImGuiIO output flags + IMGUI_DEMO_MARKER("Inputs & Focus/Outputs"); + ImGui::SetNextItemOpen(true, ImGuiCond_Once); + if (ImGui::TreeNode("Outputs")) + { + HelpMarker( + "The value of io.WantCaptureMouse and io.WantCaptureKeyboard are normally set by Dear ImGui " + "to instruct your application of how to route inputs. Typically, when a value is true, it means " + "Dear ImGui wants the corresponding inputs and we expect the underlying application to ignore them.\n\n" + "The most typical case is: when hovering a window, Dear ImGui set io.WantCaptureMouse to true, " + "and underlying application should ignore mouse inputs (in practice there are many and more subtle " + "rules leading to how those flags are set)."); ImGui::Text("io.WantCaptureMouse: %d", io.WantCaptureMouse); ImGui::Text("io.WantCaptureMouseUnlessPopupClose: %d", io.WantCaptureMouseUnlessPopupClose); ImGui::Text("io.WantCaptureKeyboard: %d", io.WantCaptureKeyboard); ImGui::Text("io.WantTextInput: %d", io.WantTextInput); ImGui::Text("io.WantSetMousePos: %d", io.WantSetMousePos); ImGui::Text("io.NavActive: %d, io.NavVisible: %d", io.NavActive, io.NavVisible); - ImGui::TreePop(); - } - // Display Mouse state - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Mouse State"); - if (ImGui::TreeNode("Mouse State")) - { - if (ImGui::IsMousePosValid()) - ImGui::Text("Mouse pos: (%g, %g)", io.MousePos.x, io.MousePos.y); - else - ImGui::Text("Mouse pos: "); - ImGui::Text("Mouse delta: (%g, %g)", io.MouseDelta.x, io.MouseDelta.y); - - int count = IM_ARRAYSIZE(io.MouseDown); - ImGui::Text("Mouse down:"); for (int i = 0; i < count; i++) if (ImGui::IsMouseDown(i)) { ImGui::SameLine(); ImGui::Text("b%d (%.02f secs)", i, io.MouseDownDuration[i]); } - ImGui::Text("Mouse clicked:"); for (int i = 0; i < count; i++) if (ImGui::IsMouseClicked(i)) { ImGui::SameLine(); ImGui::Text("b%d (%d)", i, ImGui::GetMouseClickedCount(i)); } - ImGui::Text("Mouse released:"); for (int i = 0; i < count; i++) if (ImGui::IsMouseReleased(i)) { ImGui::SameLine(); ImGui::Text("b%d", i); } - ImGui::Text("Mouse wheel: %.1f", io.MouseWheel); - ImGui::Text("Pen Pressure: %.1f", io.PenPressure); // Note: currently unused - ImGui::TreePop(); - } - - // Display Keyboard/Mouse state - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Keyboard, Gamepad & Navigation State"); - if (ImGui::TreeNode("Keyboard, Gamepad & Navigation State")) - { - // We iterate both legacy native range and named ImGuiKey ranges, which is a little odd but this allow displaying the data for old/new backends. - // User code should never have to go through such hoops: old code may use native keycodes, new code may use ImGuiKey codes. -#ifdef IMGUI_DISABLE_OBSOLETE_KEYIO - struct funcs { static bool IsLegacyNativeDupe(ImGuiKey) { return false; } }; - const ImGuiKey key_first = ImGuiKey_NamedKey_BEGIN; -#else - struct funcs { static bool IsLegacyNativeDupe(ImGuiKey key) { return key < 512 && ImGui::GetIO().KeyMap[key] != -1; } }; // Hide Native<>ImGuiKey duplicates when both exists in the array - const ImGuiKey key_first = 0; - //ImGui::Text("Legacy raw:"); for (ImGuiKey key = key_first; key < ImGuiKey_COUNT; key++) { if (io.KeysDown[key]) { ImGui::SameLine(); ImGui::Text("\"%s\" %d", ImGui::GetKeyName(key), key); } } -#endif - ImGui::Text("Keys down:"); for (ImGuiKey key = key_first; key < ImGuiKey_COUNT; key++) { if (funcs::IsLegacyNativeDupe(key)) continue; if (ImGui::IsKeyDown(key)) { ImGui::SameLine(); ImGui::Text("\"%s\" %d (%.02f secs)", ImGui::GetKeyName(key), key, ImGui::GetKeyData(key)->DownDuration); } } - ImGui::Text("Keys pressed:"); for (ImGuiKey key = key_first; key < ImGuiKey_COUNT; key++) { if (funcs::IsLegacyNativeDupe(key)) continue; if (ImGui::IsKeyPressed(key)) { ImGui::SameLine(); ImGui::Text("\"%s\" %d", ImGui::GetKeyName(key), key); } } - ImGui::Text("Keys released:"); for (ImGuiKey key = key_first; key < ImGuiKey_COUNT; key++) { if (funcs::IsLegacyNativeDupe(key)) continue; if (ImGui::IsKeyReleased(key)) { ImGui::SameLine(); ImGui::Text("\"%s\" %d", ImGui::GetKeyName(key), key); } } - ImGui::Text("Keys mods: %s%s%s%s", io.KeyCtrl ? "CTRL " : "", io.KeyShift ? "SHIFT " : "", io.KeyAlt ? "ALT " : "", io.KeySuper ? "SUPER " : ""); - ImGui::Text("Chars queue:"); for (int i = 0; i < io.InputQueueCharacters.Size; i++) { ImWchar c = io.InputQueueCharacters[i]; ImGui::SameLine(); ImGui::Text("\'%c\' (0x%04X)", (c > ' ' && c <= 255) ? (char)c : '?', c); } // FIXME: We should convert 'c' to UTF-8 here but the functions are not public. - ImGui::Text("NavInputs down:"); for (int i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputs[i] > 0.0f) { ImGui::SameLine(); ImGui::Text("[%d] %.2f (%.02f secs)", i, io.NavInputs[i], io.NavInputsDownDuration[i]); } - ImGui::Text("NavInputs pressed:"); for (int i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputsDownDuration[i] == 0.0f) { ImGui::SameLine(); ImGui::Text("[%d]", i); } - - // Draw an arbitrary US keyboard layout to visualize translated keys + IMGUI_DEMO_MARKER("Inputs & Focus/Outputs/WantCapture override"); + if (ImGui::TreeNode("WantCapture override")) { - const ImVec2 key_size = ImVec2(35.0f, 35.0f); - const float key_rounding = 3.0f; - const ImVec2 key_face_size = ImVec2(25.0f, 25.0f); - const ImVec2 key_face_pos = ImVec2(5.0f, 3.0f); - const float key_face_rounding = 2.0f; - const ImVec2 key_label_pos = ImVec2(7.0f, 4.0f); - const ImVec2 key_step = ImVec2(key_size.x - 1.0f, key_size.y - 1.0f); - const float key_row_offset = 9.0f; + HelpMarker( + "Hovering the colored canvas will override io.WantCaptureXXX fields.\n" + "Notice how normally (when set to none), the value of io.WantCaptureKeyboard would be false when hovering and true when clicking."); + static int capture_override_mouse = -1; + static int capture_override_keyboard = -1; + const char* capture_override_desc[] = { "None", "Set to false", "Set to true" }; + ImGui::SetNextItemWidth(ImGui::GetFontSize() * 15); + ImGui::SliderInt("SetNextFrameWantCaptureMouse() on hover", &capture_override_mouse, -1, +1, capture_override_desc[capture_override_mouse + 1], ImGuiSliderFlags_AlwaysClamp); + ImGui::SetNextItemWidth(ImGui::GetFontSize() * 15); + ImGui::SliderInt("SetNextFrameWantCaptureKeyboard() on hover", &capture_override_keyboard, -1, +1, capture_override_desc[capture_override_keyboard + 1], ImGuiSliderFlags_AlwaysClamp); - ImVec2 board_min = ImGui::GetCursorScreenPos(); - ImVec2 board_max = ImVec2(board_min.x + 3 * key_step.x + 2 * key_row_offset + 10.0f, board_min.y + 3 * key_step.y + 10.0f); - ImVec2 start_pos = ImVec2(board_min.x + 5.0f - key_step.x, board_min.y); + ImGui::ColorButton("##panel", ImVec4(0.7f, 0.1f, 0.7f, 1.0f), ImGuiColorEditFlags_NoTooltip | ImGuiColorEditFlags_NoDragDrop, ImVec2(128.0f, 96.0f)); // Dummy item + if (ImGui::IsItemHovered() && capture_override_mouse != -1) + ImGui::SetNextFrameWantCaptureMouse(capture_override_mouse == 1); + if (ImGui::IsItemHovered() && capture_override_keyboard != -1) + ImGui::SetNextFrameWantCaptureKeyboard(capture_override_keyboard == 1); - struct KeyLayoutData { int Row, Col; const char* Label; ImGuiKey Key; }; - const KeyLayoutData keys_to_display[] = - { - { 0, 0, "", ImGuiKey_Tab }, { 0, 1, "Q", ImGuiKey_Q }, { 0, 2, "W", ImGuiKey_W }, { 0, 3, "E", ImGuiKey_E }, { 0, 4, "R", ImGuiKey_R }, - { 1, 0, "", ImGuiKey_CapsLock }, { 1, 1, "A", ImGuiKey_A }, { 1, 2, "S", ImGuiKey_S }, { 1, 3, "D", ImGuiKey_D }, { 1, 4, "F", ImGuiKey_F }, - { 2, 0, "", ImGuiKey_LeftShift },{ 2, 1, "Z", ImGuiKey_Z }, { 2, 2, "X", ImGuiKey_X }, { 2, 3, "C", ImGuiKey_C }, { 2, 4, "V", ImGuiKey_V } - }; - - ImDrawList* draw_list = ImGui::GetWindowDrawList(); - draw_list->PushClipRect(board_min, board_max, true); - for (int n = 0; n < IM_ARRAYSIZE(keys_to_display); n++) - { - const KeyLayoutData* key_data = &keys_to_display[n]; - ImVec2 key_min = ImVec2(start_pos.x + key_data->Col * key_step.x + key_data->Row * key_row_offset, start_pos.y + key_data->Row * key_step.y); - ImVec2 key_max = ImVec2(key_min.x + key_size.x, key_min.y + key_size.y); - draw_list->AddRectFilled(key_min, key_max, IM_COL32(204, 204, 204, 255), key_rounding); - draw_list->AddRect(key_min, key_max, IM_COL32(24, 24, 24, 255), key_rounding); - ImVec2 face_min = ImVec2(key_min.x + key_face_pos.x, key_min.y + key_face_pos.y); - ImVec2 face_max = ImVec2(face_min.x + key_face_size.x, face_min.y + key_face_size.y); - draw_list->AddRect(face_min, face_max, IM_COL32(193, 193, 193, 255), key_face_rounding, ImDrawFlags_None, 2.0f); - draw_list->AddRectFilled(face_min, face_max, IM_COL32(252, 252, 252, 255), key_face_rounding); - ImVec2 label_min = ImVec2(key_min.x + key_label_pos.x, key_min.y + key_label_pos.y); - draw_list->AddText(label_min, IM_COL32(64, 64, 64, 255), key_data->Label); - if (ImGui::IsKeyDown(key_data->Key)) - draw_list->AddRectFilled(key_min, key_max, IM_COL32(255, 0, 0, 128), key_rounding); - } - draw_list->PopClipRect(); - ImGui::Dummy(ImVec2(board_max.x - board_min.x, board_max.y - board_min.y)); + ImGui::TreePop(); } ImGui::TreePop(); } - if (ImGui::TreeNode("Capture override")) + // Display mouse cursors + IMGUI_DEMO_MARKER("Inputs & Focus/Mouse Cursors"); + if (ImGui::TreeNode("Mouse Cursors")) { - ImGui::Button("Hovering me sets the\nkeyboard capture flag"); - if (ImGui::IsItemHovered()) - ImGui::CaptureKeyboardFromApp(true); - ImGui::SameLine(); - ImGui::Button("Holding me clears the\nthe keyboard capture flag"); - if (ImGui::IsItemActive()) - ImGui::CaptureKeyboardFromApp(false); + const char* mouse_cursors_names[] = { "Arrow", "TextInput", "ResizeAll", "ResizeNS", "ResizeEW", "ResizeNESW", "ResizeNWSE", "Hand", "NotAllowed" }; + IM_ASSERT(IM_ARRAYSIZE(mouse_cursors_names) == ImGuiMouseCursor_COUNT); + + ImGuiMouseCursor current = ImGui::GetMouseCursor(); + ImGui::Text("Current mouse cursor = %d: %s", current, mouse_cursors_names[current]); + ImGui::BeginDisabled(true); + ImGui::CheckboxFlags("io.BackendFlags: HasMouseCursors", &io.BackendFlags, ImGuiBackendFlags_HasMouseCursors); + ImGui::EndDisabled(); + + ImGui::Text("Hover to see mouse cursors:"); + ImGui::SameLine(); HelpMarker( + "Your application can render a different mouse cursor based on what ImGui::GetMouseCursor() returns. " + "If software cursor rendering (io.MouseDrawCursor) is set ImGui will draw the right cursor for you, " + "otherwise your backend needs to handle it."); + for (int i = 0; i < ImGuiMouseCursor_COUNT; i++) + { + char label[32]; + sprintf(label, "Mouse cursor %d: %s", i, mouse_cursors_names[i]); + ImGui::Bullet(); ImGui::Selectable(label, false); + if (ImGui::IsItemHovered()) + ImGui::SetMouseCursor(i); + } ImGui::TreePop(); } - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Tabbing"); + IMGUI_DEMO_MARKER("Inputs & Focus/Tabbing"); if (ImGui::TreeNode("Tabbing")) { ImGui::Text("Use TAB/SHIFT+TAB to cycle through keyboard editable fields."); @@ -5872,15 +5918,15 @@ static void ShowDemoWindowMisc() ImGui::InputText("1", buf, IM_ARRAYSIZE(buf)); ImGui::InputText("2", buf, IM_ARRAYSIZE(buf)); ImGui::InputText("3", buf, IM_ARRAYSIZE(buf)); - ImGui::PushAllowKeyboardFocus(false); + ImGui::PushTabStop(false); ImGui::InputText("4 (tab skip)", buf, IM_ARRAYSIZE(buf)); ImGui::SameLine(); HelpMarker("Item won't be cycled through when using TAB or Shift+Tab."); - ImGui::PopAllowKeyboardFocus(); + ImGui::PopTabStop(); ImGui::InputText("5", buf, IM_ARRAYSIZE(buf)); ImGui::TreePop(); } - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Focus from code"); + IMGUI_DEMO_MARKER("Inputs & Focus/Focus from code"); if (ImGui::TreeNode("Focus from code")) { bool focus_1 = ImGui::Button("Focus on 1"); ImGui::SameLine(); @@ -5897,12 +5943,12 @@ static void ShowDemoWindowMisc() ImGui::InputText("2", buf, IM_ARRAYSIZE(buf)); if (ImGui::IsItemActive()) has_focus = 2; - ImGui::PushAllowKeyboardFocus(false); + ImGui::PushTabStop(false); if (focus_3) ImGui::SetKeyboardFocusHere(); ImGui::InputText("3 (tab skip)", buf, IM_ARRAYSIZE(buf)); if (ImGui::IsItemActive()) has_focus = 3; ImGui::SameLine(); HelpMarker("Item won't be cycled through when using TAB or Shift+Tab."); - ImGui::PopAllowKeyboardFocus(); + ImGui::PopTabStop(); if (has_focus) ImGui::Text("Item with focus: %d", has_focus); @@ -5922,7 +5968,7 @@ static void ShowDemoWindowMisc() ImGui::TreePop(); } - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Dragging"); + IMGUI_DEMO_MARKER("Inputs & Focus/Dragging"); if (ImGui::TreeNode("Dragging")) { ImGui::TextWrapped("You can use ImGui::GetMouseDragDelta(0) to query for the dragged amount on any widget."); @@ -5950,30 +5996,6 @@ static void ShowDemoWindowMisc() ImGui::Text("io.MouseDelta: (%.1f, %.1f)", mouse_delta.x, mouse_delta.y); ImGui::TreePop(); } - - IMGUI_DEMO_MARKER("Inputs, Navigation & Focus/Mouse cursors"); - if (ImGui::TreeNode("Mouse cursors")) - { - const char* mouse_cursors_names[] = { "Arrow", "TextInput", "ResizeAll", "ResizeNS", "ResizeEW", "ResizeNESW", "ResizeNWSE", "Hand", "NotAllowed" }; - IM_ASSERT(IM_ARRAYSIZE(mouse_cursors_names) == ImGuiMouseCursor_COUNT); - - ImGuiMouseCursor current = ImGui::GetMouseCursor(); - ImGui::Text("Current mouse cursor = %d: %s", current, mouse_cursors_names[current]); - ImGui::Text("Hover to see mouse cursors:"); - ImGui::SameLine(); HelpMarker( - "Your application can render a different mouse cursor based on what ImGui::GetMouseCursor() returns. " - "If software cursor rendering (io.MouseDrawCursor) is set ImGui will draw the right cursor for you, " - "otherwise your backend needs to handle it."); - for (int i = 0; i < ImGuiMouseCursor_COUNT; i++) - { - char label[32]; - sprintf(label, "Mouse cursor %d: %s", i, mouse_cursors_names[i]); - ImGui::Bullet(); ImGui::Selectable(label, false); - if (ImGui::IsItemHovered()) - ImGui::SetMouseCursor(i); - } - ImGui::TreePop(); - } } } @@ -6078,6 +6100,9 @@ void ImGui::ShowAboutWindow(bool* p_open) #ifdef __clang_version__ ImGui::Text("define: __clang_version__=%s", __clang_version__); #endif +#ifdef __EMSCRIPTEN__ + ImGui::Text("define: __EMSCRIPTEN__"); +#endif #ifdef IMGUI_HAS_VIEWPORT ImGui::Text("define: IMGUI_HAS_VIEWPORT"); #endif @@ -6247,7 +6272,7 @@ void ImGui::ShowStyleEditor(ImGuiStyle* ref) { if (ImGui::BeginTabItem("Sizes")) { - ImGui::Text("Main"); + ImGui::SeparatorText("Main"); ImGui::SliderFloat2("WindowPadding", (float*)&style.WindowPadding, 0.0f, 20.0f, "%.0f"); ImGui::SliderFloat2("FramePadding", (float*)&style.FramePadding, 0.0f, 20.0f, "%.0f"); ImGui::SliderFloat2("CellPadding", (float*)&style.CellPadding, 0.0f, 20.0f, "%.0f"); @@ -6257,22 +6282,24 @@ void ImGui::ShowStyleEditor(ImGuiStyle* ref) ImGui::SliderFloat("IndentSpacing", &style.IndentSpacing, 0.0f, 30.0f, "%.0f"); ImGui::SliderFloat("ScrollbarSize", &style.ScrollbarSize, 1.0f, 20.0f, "%.0f"); ImGui::SliderFloat("GrabMinSize", &style.GrabMinSize, 1.0f, 20.0f, "%.0f"); - ImGui::Text("Borders"); + + ImGui::SeparatorText("Borders"); ImGui::SliderFloat("WindowBorderSize", &style.WindowBorderSize, 0.0f, 1.0f, "%.0f"); ImGui::SliderFloat("ChildBorderSize", &style.ChildBorderSize, 0.0f, 1.0f, "%.0f"); ImGui::SliderFloat("PopupBorderSize", &style.PopupBorderSize, 0.0f, 1.0f, "%.0f"); ImGui::SliderFloat("FrameBorderSize", &style.FrameBorderSize, 0.0f, 1.0f, "%.0f"); ImGui::SliderFloat("TabBorderSize", &style.TabBorderSize, 0.0f, 1.0f, "%.0f"); - ImGui::Text("Rounding"); + + ImGui::SeparatorText("Rounding"); ImGui::SliderFloat("WindowRounding", &style.WindowRounding, 0.0f, 12.0f, "%.0f"); ImGui::SliderFloat("ChildRounding", &style.ChildRounding, 0.0f, 12.0f, "%.0f"); ImGui::SliderFloat("FrameRounding", &style.FrameRounding, 0.0f, 12.0f, "%.0f"); ImGui::SliderFloat("PopupRounding", &style.PopupRounding, 0.0f, 12.0f, "%.0f"); ImGui::SliderFloat("ScrollbarRounding", &style.ScrollbarRounding, 0.0f, 12.0f, "%.0f"); ImGui::SliderFloat("GrabRounding", &style.GrabRounding, 0.0f, 12.0f, "%.0f"); - ImGui::SliderFloat("LogSliderDeadzone", &style.LogSliderDeadzone, 0.0f, 12.0f, "%.0f"); ImGui::SliderFloat("TabRounding", &style.TabRounding, 0.0f, 12.0f, "%.0f"); - ImGui::Text("Alignment"); + + ImGui::SeparatorText("Widgets"); ImGui::SliderFloat2("WindowTitleAlign", (float*)&style.WindowTitleAlign, 0.0f, 1.0f, "%.2f"); int window_menu_button_position = style.WindowMenuButtonPosition + 1; if (ImGui::Combo("WindowMenuButtonPosition", (int*)&window_menu_button_position, "None\0Left\0Right\0")) @@ -6282,9 +6309,13 @@ void ImGui::ShowStyleEditor(ImGuiStyle* ref) ImGui::SameLine(); HelpMarker("Alignment applies when a button is larger than its text content."); ImGui::SliderFloat2("SelectableTextAlign", (float*)&style.SelectableTextAlign, 0.0f, 1.0f, "%.2f"); ImGui::SameLine(); HelpMarker("Alignment applies when a selectable is larger than its text content."); - ImGui::Text("Safe Area Padding"); - ImGui::SameLine(); HelpMarker("Adjust if you cannot see the edges of your screen (e.g. on a TV where scaling has not been configured)."); - ImGui::SliderFloat2("DisplaySafeAreaPadding", (float*)&style.DisplaySafeAreaPadding, 0.0f, 30.0f, "%.0f"); + ImGui::SliderFloat("SeparatorTextBorderSize", &style.SeparatorTextBorderSize, 0.0f, 10.0f, "%.0f"); + ImGui::SliderFloat2("SeparatorTextAlign", (float*)&style.SeparatorTextAlign, 0.0f, 1.0f, "%.2f"); + ImGui::SliderFloat2("SeparatorTextPadding", (float*)&style.SeparatorTextPadding, 0.0f, 40.0f, "%0.f"); + ImGui::SliderFloat("LogSliderDeadzone", &style.LogSliderDeadzone, 0.0f, 12.0f, "%.0f"); + + ImGui::SeparatorText("Misc"); + ImGui::SliderFloat2("DisplaySafeAreaPadding", (float*)&style.DisplaySafeAreaPadding, 0.0f, 30.0f, "%.0f"); ImGui::SameLine(); HelpMarker("Adjust if you cannot see the edges of your screen (e.g. on a TV where scaling has not been configured)."); ImGui::EndTabItem(); } @@ -6394,10 +6425,11 @@ void ImGui::ShowStyleEditor(ImGuiStyle* ref) // When editing the "Circle Segment Max Error" value, draw a preview of its effect on auto-tessellated circles. ImGui::DragFloat("Circle Tessellation Max Error", &style.CircleTessellationMaxError , 0.005f, 0.10f, 5.0f, "%.2f", ImGuiSliderFlags_AlwaysClamp); - if (ImGui::IsItemActive()) - { + const bool show_samples = ImGui::IsItemActive(); + if (show_samples) ImGui::SetNextWindowPos(ImGui::GetCursorScreenPos()); - ImGui::BeginTooltip(); + if (show_samples && ImGui::BeginTooltip()) + { ImGui::TextUnformatted("(R = radius, N = number of segments)"); ImGui::Spacing(); ImDrawList* draw_list = ImGui::GetWindowDrawList(); @@ -6447,6 +6479,40 @@ void ImGui::ShowStyleEditor(ImGuiStyle* ref) ImGui::PopItemWidth(); } +//----------------------------------------------------------------------------- +// [SECTION] User Guide / ShowUserGuide() +//----------------------------------------------------------------------------- + +void ImGui::ShowUserGuide() +{ + ImGuiIO& io = ImGui::GetIO(); + ImGui::BulletText("Double-click on title bar to collapse window."); + ImGui::BulletText( + "Click and drag on lower corner to resize window\n" + "(double-click to auto fit window to its contents)."); + ImGui::BulletText("CTRL+Click on a slider or drag box to input value as text."); + ImGui::BulletText("TAB/SHIFT+TAB to cycle through keyboard editable fields."); + ImGui::BulletText("CTRL+Tab to select a window."); + if (io.FontAllowUserScaling) + ImGui::BulletText("CTRL+Mouse Wheel to zoom window contents."); + ImGui::BulletText("While inputing text:\n"); + ImGui::Indent(); + ImGui::BulletText("CTRL+Left/Right to word jump."); + ImGui::BulletText("CTRL+A or double-click to select all."); + ImGui::BulletText("CTRL+X/C/V to use clipboard cut/copy/paste."); + ImGui::BulletText("CTRL+Z,CTRL+Y to undo/redo."); + ImGui::BulletText("ESCAPE to revert."); + ImGui::Unindent(); + ImGui::BulletText("With keyboard navigation enabled:"); + ImGui::Indent(); + ImGui::BulletText("Arrow keys to navigate."); + ImGui::BulletText("Space to activate a widget."); + ImGui::BulletText("Return to input text into a widget."); + ImGui::BulletText("Escape to deactivate a widget, close popup, exit child window."); + ImGui::BulletText("Alt to jump to the menu layer of a window."); + ImGui::Unindent(); +} + //----------------------------------------------------------------------------- // [SECTION] Example App: Main Menu Bar / ShowExampleAppMainMenuBar() //----------------------------------------------------------------------------- @@ -6560,6 +6626,7 @@ static void ShowExampleMenuFile() IM_ASSERT(0); } if (ImGui::MenuItem("Checked", NULL, true)) {} + ImGui::Separator(); if (ImGui::MenuItem("Quit", "Alt+F4")) {} } @@ -6681,72 +6748,76 @@ struct ExampleAppConsole // Reserve enough left-over height for 1 separator + 1 input text const float footer_height_to_reserve = ImGui::GetStyle().ItemSpacing.y + ImGui::GetFrameHeightWithSpacing(); - ImGui::BeginChild("ScrollingRegion", ImVec2(0, -footer_height_to_reserve), false, ImGuiWindowFlags_HorizontalScrollbar); - if (ImGui::BeginPopupContextWindow()) + if (ImGui::BeginChild("ScrollingRegion", ImVec2(0, -footer_height_to_reserve), false, ImGuiWindowFlags_HorizontalScrollbar)) { - if (ImGui::Selectable("Clear")) ClearLog(); - ImGui::EndPopup(); + if (ImGui::BeginPopupContextWindow()) + { + if (ImGui::Selectable("Clear")) ClearLog(); + ImGui::EndPopup(); + } + + // Display every line as a separate entry so we can change their color or add custom widgets. + // If you only want raw text you can use ImGui::TextUnformatted(log.begin(), log.end()); + // NB- if you have thousands of entries this approach may be too inefficient and may require user-side clipping + // to only process visible items. The clipper will automatically measure the height of your first item and then + // "seek" to display only items in the visible area. + // To use the clipper we can replace your standard loop: + // for (int i = 0; i < Items.Size; i++) + // With: + // ImGuiListClipper clipper; + // clipper.Begin(Items.Size); + // while (clipper.Step()) + // for (int i = clipper.DisplayStart; i < clipper.DisplayEnd; i++) + // - That your items are evenly spaced (same height) + // - That you have cheap random access to your elements (you can access them given their index, + // without processing all the ones before) + // You cannot this code as-is if a filter is active because it breaks the 'cheap random-access' property. + // We would need random-access on the post-filtered list. + // A typical application wanting coarse clipping and filtering may want to pre-compute an array of indices + // or offsets of items that passed the filtering test, recomputing this array when user changes the filter, + // and appending newly elements as they are inserted. This is left as a task to the user until we can manage + // to improve this example code! + // If your items are of variable height: + // - Split them into same height items would be simpler and facilitate random-seeking into your list. + // - Consider using manual call to IsRectVisible() and skipping extraneous decoration from your items. + ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(4, 1)); // Tighten spacing + if (copy_to_clipboard) + ImGui::LogToClipboard(); + for (int i = 0; i < Items.Size; i++) + { + const char* item = Items[i]; + if (!Filter.PassFilter(item)) + continue; + + // Normally you would store more information in your item than just a string. + // (e.g. make Items[] an array of structure, store color/type etc.) + ImVec4 color; + bool has_color = false; + if (strstr(item, "[error]")) { color = ImVec4(1.0f, 0.4f, 0.4f, 1.0f); has_color = true; } + else if (strncmp(item, "# ", 2) == 0) { color = ImVec4(1.0f, 0.8f, 0.6f, 1.0f); has_color = true; } + if (has_color) + ImGui::PushStyleColor(ImGuiCol_Text, color); + ImGui::TextUnformatted(item); + if (has_color) + ImGui::PopStyleColor(); + } + if (copy_to_clipboard) + ImGui::LogFinish(); + + // Keep up at the bottom of the scroll region if we were already at the bottom at the beginning of the frame. + // Using a scrollbar or mouse-wheel will take away from the bottom edge. + if (ScrollToBottom || (AutoScroll && ImGui::GetScrollY() >= ImGui::GetScrollMaxY())) + ImGui::SetScrollHereY(1.0f); + ScrollToBottom = false; + + ImGui::PopStyleVar(); } - - // Display every line as a separate entry so we can change their color or add custom widgets. - // If you only want raw text you can use ImGui::TextUnformatted(log.begin(), log.end()); - // NB- if you have thousands of entries this approach may be too inefficient and may require user-side clipping - // to only process visible items. The clipper will automatically measure the height of your first item and then - // "seek" to display only items in the visible area. - // To use the clipper we can replace your standard loop: - // for (int i = 0; i < Items.Size; i++) - // With: - // ImGuiListClipper clipper; - // clipper.Begin(Items.Size); - // while (clipper.Step()) - // for (int i = clipper.DisplayStart; i < clipper.DisplayEnd; i++) - // - That your items are evenly spaced (same height) - // - That you have cheap random access to your elements (you can access them given their index, - // without processing all the ones before) - // You cannot this code as-is if a filter is active because it breaks the 'cheap random-access' property. - // We would need random-access on the post-filtered list. - // A typical application wanting coarse clipping and filtering may want to pre-compute an array of indices - // or offsets of items that passed the filtering test, recomputing this array when user changes the filter, - // and appending newly elements as they are inserted. This is left as a task to the user until we can manage - // to improve this example code! - // If your items are of variable height: - // - Split them into same height items would be simpler and facilitate random-seeking into your list. - // - Consider using manual call to IsRectVisible() and skipping extraneous decoration from your items. - ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(4, 1)); // Tighten spacing - if (copy_to_clipboard) - ImGui::LogToClipboard(); - for (int i = 0; i < Items.Size; i++) - { - const char* item = Items[i]; - if (!Filter.PassFilter(item)) - continue; - - // Normally you would store more information in your item than just a string. - // (e.g. make Items[] an array of structure, store color/type etc.) - ImVec4 color; - bool has_color = false; - if (strstr(item, "[error]")) { color = ImVec4(1.0f, 0.4f, 0.4f, 1.0f); has_color = true; } - else if (strncmp(item, "# ", 2) == 0) { color = ImVec4(1.0f, 0.8f, 0.6f, 1.0f); has_color = true; } - if (has_color) - ImGui::PushStyleColor(ImGuiCol_Text, color); - ImGui::TextUnformatted(item); - if (has_color) - ImGui::PopStyleColor(); - } - if (copy_to_clipboard) - ImGui::LogFinish(); - - if (ScrollToBottom || (AutoScroll && ImGui::GetScrollY() >= ImGui::GetScrollMaxY())) - ImGui::SetScrollHereY(1.0f); - ScrollToBottom = false; - - ImGui::PopStyleVar(); ImGui::EndChild(); ImGui::Separator(); // Command-line bool reclaim_focus = false; - ImGuiInputTextFlags input_text_flags = ImGuiInputTextFlags_EnterReturnsTrue | ImGuiInputTextFlags_CallbackCompletion | ImGuiInputTextFlags_CallbackHistory; + ImGuiInputTextFlags input_text_flags = ImGuiInputTextFlags_EnterReturnsTrue | ImGuiInputTextFlags_EscapeClearsAll | ImGuiInputTextFlags_CallbackCompletion | ImGuiInputTextFlags_CallbackHistory; if (ImGui::InputText("Input", InputBuf, IM_ARRAYSIZE(InputBuf), input_text_flags, &TextEditCallbackStub, (void*)this)) { char* s = InputBuf; @@ -6988,63 +7059,66 @@ struct ExampleAppLog Filter.Draw("Filter", -100.0f); ImGui::Separator(); - ImGui::BeginChild("scrolling", ImVec2(0, 0), false, ImGuiWindowFlags_HorizontalScrollbar); - if (clear) - Clear(); - if (copy) - ImGui::LogToClipboard(); + if (ImGui::BeginChild("scrolling", ImVec2(0, 0), false, ImGuiWindowFlags_HorizontalScrollbar)) + { + if (clear) + Clear(); + if (copy) + ImGui::LogToClipboard(); - ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(0, 0)); - const char* buf = Buf.begin(); - const char* buf_end = Buf.end(); - if (Filter.IsActive()) - { - // In this example we don't use the clipper when Filter is enabled. - // This is because we don't have a random access on the result on our filter. - // A real application processing logs with ten of thousands of entries may want to store the result of - // search/filter.. especially if the filtering function is not trivial (e.g. reg-exp). - for (int line_no = 0; line_no < LineOffsets.Size; line_no++) + ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(0, 0)); + const char* buf = Buf.begin(); + const char* buf_end = Buf.end(); + if (Filter.IsActive()) { - const char* line_start = buf + LineOffsets[line_no]; - const char* line_end = (line_no + 1 < LineOffsets.Size) ? (buf + LineOffsets[line_no + 1] - 1) : buf_end; - if (Filter.PassFilter(line_start, line_end)) - ImGui::TextUnformatted(line_start, line_end); - } - } - else - { - // The simplest and easy way to display the entire buffer: - // ImGui::TextUnformatted(buf_begin, buf_end); - // And it'll just work. TextUnformatted() has specialization for large blob of text and will fast-forward - // to skip non-visible lines. Here we instead demonstrate using the clipper to only process lines that are - // within the visible area. - // If you have tens of thousands of items and their processing cost is non-negligible, coarse clipping them - // on your side is recommended. Using ImGuiListClipper requires - // - A) random access into your data - // - B) items all being the same height, - // both of which we can handle since we an array pointing to the beginning of each line of text. - // When using the filter (in the block of code above) we don't have random access into the data to display - // anymore, which is why we don't use the clipper. Storing or skimming through the search result would make - // it possible (and would be recommended if you want to search through tens of thousands of entries). - ImGuiListClipper clipper; - clipper.Begin(LineOffsets.Size); - while (clipper.Step()) - { - for (int line_no = clipper.DisplayStart; line_no < clipper.DisplayEnd; line_no++) + // In this example we don't use the clipper when Filter is enabled. + // This is because we don't have random access to the result of our filter. + // A real application processing logs with ten of thousands of entries may want to store the result of + // search/filter.. especially if the filtering function is not trivial (e.g. reg-exp). + for (int line_no = 0; line_no < LineOffsets.Size; line_no++) { const char* line_start = buf + LineOffsets[line_no]; const char* line_end = (line_no + 1 < LineOffsets.Size) ? (buf + LineOffsets[line_no + 1] - 1) : buf_end; - ImGui::TextUnformatted(line_start, line_end); + if (Filter.PassFilter(line_start, line_end)) + ImGui::TextUnformatted(line_start, line_end); } } - clipper.End(); + else + { + // The simplest and easy way to display the entire buffer: + // ImGui::TextUnformatted(buf_begin, buf_end); + // And it'll just work. TextUnformatted() has specialization for large blob of text and will fast-forward + // to skip non-visible lines. Here we instead demonstrate using the clipper to only process lines that are + // within the visible area. + // If you have tens of thousands of items and their processing cost is non-negligible, coarse clipping them + // on your side is recommended. Using ImGuiListClipper requires + // - A) random access into your data + // - B) items all being the same height, + // both of which we can handle since we have an array pointing to the beginning of each line of text. + // When using the filter (in the block of code above) we don't have random access into the data to display + // anymore, which is why we don't use the clipper. Storing or skimming through the search result would make + // it possible (and would be recommended if you want to search through tens of thousands of entries). + ImGuiListClipper clipper; + clipper.Begin(LineOffsets.Size); + while (clipper.Step()) + { + for (int line_no = clipper.DisplayStart; line_no < clipper.DisplayEnd; line_no++) + { + const char* line_start = buf + LineOffsets[line_no]; + const char* line_end = (line_no + 1 < LineOffsets.Size) ? (buf + LineOffsets[line_no + 1] - 1) : buf_end; + ImGui::TextUnformatted(line_start, line_end); + } + } + clipper.End(); + } + ImGui::PopStyleVar(); + + // Keep up at the bottom of the scroll region if we were already at the bottom at the beginning of the frame. + // Using a scrollbar or mouse-wheel will take away from the bottom edge. + if (AutoScroll && ImGui::GetScrollY() >= ImGui::GetScrollMaxY()) + ImGui::SetScrollHereY(1.0f); } - ImGui::PopStyleVar(); - - if (AutoScroll && ImGui::GetScrollY() >= ImGui::GetScrollMaxY()) - ImGui::SetScrollHereY(1.0f); - ImGui::EndChild(); ImGui::End(); } @@ -7096,7 +7170,7 @@ static void ShowExampleAppLayout(bool* p_open) { if (ImGui::BeginMenu("File")) { - if (ImGui::MenuItem("Close")) *p_open = false; + if (ImGui::MenuItem("Close", "Ctrl+W")) { *p_open = false; } ImGui::EndMenu(); } ImGui::EndMenuBar(); @@ -7324,53 +7398,84 @@ static void ShowExampleAppAutoResize(bool* p_open) //----------------------------------------------------------------------------- // Demonstrate creating a window with custom resize constraints. +// Note that size constraints currently don't work on a docked window (when in 'docking' branch) static void ShowExampleAppConstrainedResize(bool* p_open) { struct CustomConstraints { // Helper functions to demonstrate programmatic constraints - static void Square(ImGuiSizeCallbackData* data) { data->DesiredSize.x = data->DesiredSize.y = IM_MAX(data->DesiredSize.x, data->DesiredSize.y); } - static void Step(ImGuiSizeCallbackData* data) { float step = (float)(int)(intptr_t)data->UserData; data->DesiredSize = ImVec2((int)(data->DesiredSize.x / step + 0.5f) * step, (int)(data->DesiredSize.y / step + 0.5f) * step); } + // FIXME: This doesn't take account of decoration size (e.g. title bar), library should make this easier. + static void AspectRatio(ImGuiSizeCallbackData* data) { float aspect_ratio = *(float*)data->UserData; data->DesiredSize.x = IM_MAX(data->CurrentSize.x, data->CurrentSize.y); data->DesiredSize.y = (float)(int)(data->DesiredSize.x / aspect_ratio); } + static void Square(ImGuiSizeCallbackData* data) { data->DesiredSize.x = data->DesiredSize.y = IM_MAX(data->CurrentSize.x, data->CurrentSize.y); } + static void Step(ImGuiSizeCallbackData* data) { float step = *(float*)data->UserData; data->DesiredSize = ImVec2((int)(data->CurrentSize.x / step + 0.5f) * step, (int)(data->CurrentSize.y / step + 0.5f) * step); } }; const char* test_desc[] = { + "Between 100x100 and 500x500", + "At least 100x100", "Resize vertical only", "Resize horizontal only", - "Width > 100, Height > 100", - "Width 400-500", - "Height 400-500", + "Width Between 400 and 500", + "Custom: Aspect Ratio 16:9", "Custom: Always Square", "Custom: Fixed Steps (100)", }; + // Options static bool auto_resize = false; - static int type = 0; + static bool window_padding = true; + static int type = 5; // Aspect Ratio static int display_lines = 10; - if (type == 0) ImGui::SetNextWindowSizeConstraints(ImVec2(-1, 0), ImVec2(-1, FLT_MAX)); // Vertical only - if (type == 1) ImGui::SetNextWindowSizeConstraints(ImVec2(0, -1), ImVec2(FLT_MAX, -1)); // Horizontal only - if (type == 2) ImGui::SetNextWindowSizeConstraints(ImVec2(100, 100), ImVec2(FLT_MAX, FLT_MAX)); // Width > 100, Height > 100 - if (type == 3) ImGui::SetNextWindowSizeConstraints(ImVec2(400, -1), ImVec2(500, -1)); // Width 400-500 - if (type == 4) ImGui::SetNextWindowSizeConstraints(ImVec2(-1, 400), ImVec2(-1, 500)); // Height 400-500 - if (type == 5) ImGui::SetNextWindowSizeConstraints(ImVec2(0, 0), ImVec2(FLT_MAX, FLT_MAX), CustomConstraints::Square); // Always Square - if (type == 6) ImGui::SetNextWindowSizeConstraints(ImVec2(0, 0), ImVec2(FLT_MAX, FLT_MAX), CustomConstraints::Step, (void*)(intptr_t)100); // Fixed Step - ImGuiWindowFlags flags = auto_resize ? ImGuiWindowFlags_AlwaysAutoResize : 0; - if (ImGui::Begin("Example: Constrained Resize", p_open, flags)) + // Submit constraint + float aspect_ratio = 16.0f / 9.0f; + float fixed_step = 100.0f; + if (type == 0) ImGui::SetNextWindowSizeConstraints(ImVec2(100, 100), ImVec2(500, 500)); // Between 100x100 and 500x500 + if (type == 1) ImGui::SetNextWindowSizeConstraints(ImVec2(100, 100), ImVec2(FLT_MAX, FLT_MAX)); // Width > 100, Height > 100 + if (type == 2) ImGui::SetNextWindowSizeConstraints(ImVec2(-1, 0), ImVec2(-1, FLT_MAX)); // Vertical only + if (type == 3) ImGui::SetNextWindowSizeConstraints(ImVec2(0, -1), ImVec2(FLT_MAX, -1)); // Horizontal only + if (type == 4) ImGui::SetNextWindowSizeConstraints(ImVec2(400, -1), ImVec2(500, -1)); // Width Between and 400 and 500 + if (type == 5) ImGui::SetNextWindowSizeConstraints(ImVec2(0, 0), ImVec2(FLT_MAX, FLT_MAX), CustomConstraints::AspectRatio, (void*)&aspect_ratio); // Aspect ratio + if (type == 6) ImGui::SetNextWindowSizeConstraints(ImVec2(0, 0), ImVec2(FLT_MAX, FLT_MAX), CustomConstraints::Square); // Always Square + if (type == 7) ImGui::SetNextWindowSizeConstraints(ImVec2(0, 0), ImVec2(FLT_MAX, FLT_MAX), CustomConstraints::Step, (void*)&fixed_step); // Fixed Step + + // Submit window + if (!window_padding) + ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0.0f, 0.0f)); + const ImGuiWindowFlags window_flags = auto_resize ? ImGuiWindowFlags_AlwaysAutoResize : 0; + const bool window_open = ImGui::Begin("Example: Constrained Resize", p_open, window_flags); + if (!window_padding) + ImGui::PopStyleVar(); + if (window_open) { IMGUI_DEMO_MARKER("Examples/Constrained Resizing window"); - if (ImGui::IsWindowDocked()) - ImGui::Text("Warning: Sizing Constraints won't work if the window is docked!"); - if (ImGui::Button("200x200")) { ImGui::SetWindowSize(ImVec2(200, 200)); } ImGui::SameLine(); - if (ImGui::Button("500x500")) { ImGui::SetWindowSize(ImVec2(500, 500)); } ImGui::SameLine(); - if (ImGui::Button("800x200")) { ImGui::SetWindowSize(ImVec2(800, 200)); } - ImGui::SetNextItemWidth(200); - ImGui::Combo("Constraint", &type, test_desc, IM_ARRAYSIZE(test_desc)); - ImGui::SetNextItemWidth(200); - ImGui::DragInt("Lines", &display_lines, 0.2f, 1, 100); - ImGui::Checkbox("Auto-resize", &auto_resize); - for (int i = 0; i < display_lines; i++) - ImGui::Text("%*sHello, sailor! Making this line long enough for the example.", i * 4, ""); + if (ImGui::GetIO().KeyShift) + { + // Display a dummy viewport (in your real app you would likely use ImageButton() to display a texture. + ImVec2 avail_size = ImGui::GetContentRegionAvail(); + ImVec2 pos = ImGui::GetCursorScreenPos(); + ImGui::ColorButton("viewport", ImVec4(0.5f, 0.2f, 0.5f, 1.0f), ImGuiColorEditFlags_NoTooltip | ImGuiColorEditFlags_NoDragDrop, avail_size); + ImGui::SetCursorScreenPos(ImVec2(pos.x + 10, pos.y + 10)); + ImGui::Text("%.2f x %.2f", avail_size.x, avail_size.y); + } + else + { + ImGui::Text("(Hold SHIFT to display a dummy viewport)"); + if (ImGui::IsWindowDocked()) + ImGui::Text("Warning: Sizing Constraints won't work if the window is docked!"); + if (ImGui::Button("Set 200x200")) { ImGui::SetWindowSize(ImVec2(200, 200)); } ImGui::SameLine(); + if (ImGui::Button("Set 500x500")) { ImGui::SetWindowSize(ImVec2(500, 500)); } ImGui::SameLine(); + if (ImGui::Button("Set 800x200")) { ImGui::SetWindowSize(ImVec2(800, 200)); } + ImGui::SetNextItemWidth(ImGui::GetFontSize() * 20); + ImGui::Combo("Constraint", &type, test_desc, IM_ARRAYSIZE(test_desc)); + ImGui::SetNextItemWidth(ImGui::GetFontSize() * 20); + ImGui::DragInt("Lines", &display_lines, 0.2f, 1, 100); + ImGui::Checkbox("Auto-resize", &auto_resize); + ImGui::Checkbox("Window padding", &window_padding); + for (int i = 0; i < display_lines; i++) + ImGui::Text("%*sHello, sailor! Making this line long enough for the example.", i * 4, ""); + } } ImGui::End(); } @@ -7383,29 +7488,35 @@ static void ShowExampleAppConstrainedResize(bool* p_open) // + a context-menu to choose which corner of the screen to use. static void ShowExampleAppSimpleOverlay(bool* p_open) { - static int corner = 0; + static int location = 0; ImGuiIO& io = ImGui::GetIO(); ImGuiWindowFlags window_flags = ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_NoDocking | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoSavedSettings | ImGuiWindowFlags_NoFocusOnAppearing | ImGuiWindowFlags_NoNav; - if (corner != -1) + if (location >= 0) { const float PAD = 10.0f; const ImGuiViewport* viewport = ImGui::GetMainViewport(); ImVec2 work_pos = viewport->WorkPos; // Use work area to avoid menu-bar/task-bar, if any! ImVec2 work_size = viewport->WorkSize; ImVec2 window_pos, window_pos_pivot; - window_pos.x = (corner & 1) ? (work_pos.x + work_size.x - PAD) : (work_pos.x + PAD); - window_pos.y = (corner & 2) ? (work_pos.y + work_size.y - PAD) : (work_pos.y + PAD); - window_pos_pivot.x = (corner & 1) ? 1.0f : 0.0f; - window_pos_pivot.y = (corner & 2) ? 1.0f : 0.0f; + window_pos.x = (location & 1) ? (work_pos.x + work_size.x - PAD) : (work_pos.x + PAD); + window_pos.y = (location & 2) ? (work_pos.y + work_size.y - PAD) : (work_pos.y + PAD); + window_pos_pivot.x = (location & 1) ? 1.0f : 0.0f; + window_pos_pivot.y = (location & 2) ? 1.0f : 0.0f; ImGui::SetNextWindowPos(window_pos, ImGuiCond_Always, window_pos_pivot); ImGui::SetNextWindowViewport(viewport->ID); window_flags |= ImGuiWindowFlags_NoMove; } + else if (location == -2) + { + // Center window + ImGui::SetNextWindowPos(ImGui::GetMainViewport()->GetCenter(), ImGuiCond_Always, ImVec2(0.5f, 0.5f)); + window_flags |= ImGuiWindowFlags_NoMove; + } ImGui::SetNextWindowBgAlpha(0.35f); // Transparent background if (ImGui::Begin("Example: Simple overlay", p_open, window_flags)) { IMGUI_DEMO_MARKER("Examples/Simple Overlay"); - ImGui::Text("Simple overlay\n" "in the corner of the screen.\n" "(right-click to change position)"); + ImGui::Text("Simple overlay\n" "(right-click to change position)"); ImGui::Separator(); if (ImGui::IsMousePosValid()) ImGui::Text("Mouse Position: (%.1f,%.1f)", io.MousePos.x, io.MousePos.y); @@ -7413,11 +7524,12 @@ static void ShowExampleAppSimpleOverlay(bool* p_open) ImGui::Text("Mouse Position: "); if (ImGui::BeginPopupContextWindow()) { - if (ImGui::MenuItem("Custom", NULL, corner == -1)) corner = -1; - if (ImGui::MenuItem("Top-left", NULL, corner == 0)) corner = 0; - if (ImGui::MenuItem("Top-right", NULL, corner == 1)) corner = 1; - if (ImGui::MenuItem("Bottom-left", NULL, corner == 2)) corner = 2; - if (ImGui::MenuItem("Bottom-right", NULL, corner == 3)) corner = 3; + if (ImGui::MenuItem("Custom", NULL, location == -1)) location = -1; + if (ImGui::MenuItem("Center", NULL, location == -2)) location = -2; + if (ImGui::MenuItem("Top-left", NULL, location == 0)) location = 0; + if (ImGui::MenuItem("Top-right", NULL, location == 1)) location = 1; + if (ImGui::MenuItem("Bottom-left", NULL, location == 2)) location = 2; + if (ImGui::MenuItem("Bottom-right", NULL, location == 3)) location = 3; if (p_open && ImGui::MenuItem("Close")) *p_open = false; ImGui::EndPopup(); } @@ -7433,10 +7545,10 @@ static void ShowExampleAppSimpleOverlay(bool* p_open) static void ShowExampleAppFullscreen(bool* p_open) { static bool use_work_area = true; - static ImGuiWindowFlags flags = ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings; + static ImGuiWindowFlags flags = ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoSavedSettings; // We demonstrate using the full viewport area or the work area (without menu-bars, task-bars etc.) - // Based on your use case you may want one of the other. + // Based on your use case you may want one or the other. const ImGuiViewport* viewport = ImGui::GetMainViewport(); ImGui::SetNextWindowPos(use_work_area ? viewport->WorkPos : viewport->Pos); ImGui::SetNextWindowSize(use_work_area ? viewport->WorkSize : viewport->Size); @@ -7465,8 +7577,8 @@ static void ShowExampleAppFullscreen(bool* p_open) // [SECTION] Example App: Manipulating Window Titles / ShowExampleAppWindowTitles() //----------------------------------------------------------------------------- -// Demonstrate using "##" and "###" in identifiers to manipulate ID generation. -// This apply to all regular items as well. +// Demonstrate the use of "##" and "###" in identifiers to manipulate ID generation. +// This applies to all regular items as well. // Read FAQ section "How can I have multiple widgets with the same label?" for details. static void ShowExampleAppWindowTitles(bool*) { @@ -8010,7 +8122,8 @@ void ShowExampleAppDocuments(bool* p_open) if (ImGui::MenuItem("Close All Documents", NULL, false, open_count > 0)) for (int doc_n = 0; doc_n < app.Documents.Size; doc_n++) app.Documents[doc_n].DoQueueClose(); - if (ImGui::MenuItem("Exit", "Alt+F4")) {} + if (ImGui::MenuItem("Exit", "Ctrl+F4") && p_open) + *p_open = false; ImGui::EndMenu(); } ImGui::EndMenuBar(); diff --git a/extern/imgui_patched/imgui_draw.cpp b/extern/imgui_patched/imgui_draw.cpp index e73bce28..db56f7e3 100644 --- a/extern/imgui_patched/imgui_draw.cpp +++ b/extern/imgui_patched/imgui_draw.cpp @@ -1,4 +1,4 @@ -// dear imgui, v1.88 WIP +// dear imgui, v1.89.6 // (drawing and font code) /* @@ -26,38 +26,24 @@ Index of this file: #define _CRT_SECURE_NO_WARNINGS #endif -#include "imgui.h" -#ifndef IMGUI_DISABLE - #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif +#include "imgui.h" +#ifndef IMGUI_DISABLE #include "imgui_internal.h" #ifdef IMGUI_ENABLE_FREETYPE #include "misc/freetype/imgui_freetype.h" #endif #include // vsnprintf, sscanf, printf -#if !defined(alloca) -#if defined(__GLIBC__) || defined(__sun) || defined(__APPLE__) || defined(__NEWLIB__) -#include // alloca (glibc uses . Note that Cygwin may have _WIN32 defined, so the order matters here) -#elif defined(_WIN32) -#include // alloca -#if !defined(alloca) -#define alloca _alloca // for clang with MS Codegen -#endif -#else -#include // alloca -#endif -#endif // Visual Studio warnings #ifdef _MSC_VER #pragma warning (disable: 4127) // condition expression is constant #pragma warning (disable: 4505) // unreferenced local function has been removed (stb stuff) #pragma warning (disable: 4996) // 'This function or variable may be unsafe': strcpy, strdup, sprintf, vsnprintf, sscanf, fopen -#pragma warning (disable: 6255) // [Static Analyzer] _alloca indicates failure by raising a stack overflow exception. Consider using _malloca instead. #pragma warning (disable: 26451) // [Static Analyzer] Arithmetic overflow : Using operator 'xxx' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator 'xxx' to avoid overflow(io.2). #pragma warning (disable: 26812) // [Static Analyzer] The enum type 'xxx' is unscoped. Prefer 'enum class' over 'enum' (Enum.3). [MSVC Static Analyzer) #endif @@ -67,9 +53,6 @@ Index of this file: #if __has_warning("-Wunknown-warning-option") #pragma clang diagnostic ignored "-Wunknown-warning-option" // warning: unknown warning group 'xxx' // not all warnings are known by all Clang versions and they tend to be rename-happy.. so ignoring warnings triggers new warnings on some configuration. Great! #endif -#if __has_warning("-Walloca") -#pragma clang diagnostic ignored "-Walloca" // warning: use of function '__builtin_alloca' is discouraged -#endif #pragma clang diagnostic ignored "-Wunknown-pragmas" // warning: unknown warning group 'xxx' #pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast // yes, they are more terse. #pragma clang diagnostic ignored "-Wfloat-equal" // warning: comparing floating point with == or != is unsafe // storing and comparing against same constants ok. @@ -471,11 +454,13 @@ void ImDrawList::AddDrawCmd() // Note that this leaves the ImDrawList in a state unfit for further commands, as most code assume that CmdBuffer.Size > 0 && CmdBuffer.back().UserCallback == NULL void ImDrawList::_PopUnusedDrawCmd() { - if (CmdBuffer.Size == 0) - return; - ImDrawCmd* curr_cmd = &CmdBuffer.Data[CmdBuffer.Size - 1]; - if (curr_cmd->ElemCount == 0 && curr_cmd->UserCallback == NULL) + while (CmdBuffer.Size > 0) + { + ImDrawCmd* curr_cmd = &CmdBuffer.Data[CmdBuffer.Size - 1]; + if (curr_cmd->ElemCount != 0 || curr_cmd->UserCallback != NULL) + return;// break; CmdBuffer.pop_back(); + } } void ImDrawList::AddCallback(ImDrawCallback callback, void* callback_data) @@ -728,7 +713,7 @@ void ImDrawList::PrimQuadUV(const ImVec2& a, const ImVec2& b, const ImVec2& c, c // We avoid using the ImVec2 math operators here to reduce cost to a minimum for debug/non-inlined builds. void ImDrawList::AddPolyline(const ImVec2* points, const int points_count, ImU32 col, ImDrawFlags flags, float thickness) { - if (points_count < 2) + if (points_count < 2 || (col & IM_COL32_A_MASK) == 0) return; const bool closed = (flags & ImDrawFlags_Closed) != 0; @@ -761,7 +746,8 @@ void ImDrawList::AddPolyline(const ImVec2* points, const int points_count, ImU32 // Temporary buffer // The first items are normals at each line point, then after that there are either 2 or 4 temp points for each line point - ImVec2* temp_normals = (ImVec2*)alloca(points_count * ((use_texture || !thick_line) ? 3 : 5) * sizeof(ImVec2)); //-V630 + _Data->TempBuffer.reserve_discard(points_count * ((use_texture || !thick_line) ? 3 : 5)); + ImVec2* temp_normals = _Data->TempBuffer.Data; ImVec2* temp_points = temp_normals + points_count; // Calculate normals (tangents) for each line segment @@ -985,7 +971,7 @@ void ImDrawList::AddPolyline(const ImVec2* points, const int points_count, ImU32 // - Filled shapes must always use clockwise winding order. The anti-aliasing fringe depends on it. Counter-clockwise shapes will have "inward" anti-aliasing. void ImDrawList::AddConvexPolyFilled(const ImVec2* points, const int points_count, ImU32 col) { - if (points_count < 3) + if (points_count < 3 || (col & IM_COL32_A_MASK) == 0) return; const ImVec2 uv = _Data->TexUvWhitePixel; @@ -1009,7 +995,8 @@ void ImDrawList::AddConvexPolyFilled(const ImVec2* points, const int points_coun } // Compute normals - ImVec2* temp_normals = (ImVec2*)alloca(points_count * sizeof(ImVec2)); //-V630 + _Data->TempBuffer.reserve_discard(points_count); + ImVec2* temp_normals = _Data->TempBuffer.Data; for (int i0 = points_count - 1, i1 = 0; i1 < points_count; i0 = i1++) { const ImVec2& p0 = points[i0]; @@ -1303,6 +1290,7 @@ void ImDrawList::PathBezierCubicCurveTo(const ImVec2& p2, const ImVec2& p3, cons ImVec2 p1 = _Path.back(); if (num_segments == 0) { + IM_ASSERT(_Data->CurveTessellationTol > 0.0f); PathBezierCubicCurveToCasteljau(&_Path, p1.x, p1.y, p2.x, p2.y, p3.x, p3.y, p4.x, p4.y, _Data->CurveTessellationTol, 0); // Auto-tessellated } else @@ -1318,6 +1306,7 @@ void ImDrawList::PathBezierQuadraticCurveTo(const ImVec2& p2, const ImVec2& p3, ImVec2 p1 = _Path.back(); if (num_segments == 0) { + IM_ASSERT(_Data->CurveTessellationTol > 0.0f); PathBezierQuadraticCurveToCasteljau(&_Path, p1.x, p1.y, p2.x, p2.y, p3.x, p3.y, _Data->CurveTessellationTol, 0);// Auto-tessellated } else @@ -1332,6 +1321,7 @@ IM_STATIC_ASSERT(ImDrawFlags_RoundCornersTopLeft == (1 << 4)); static inline ImDrawFlags FixRectCornerFlags(ImDrawFlags flags) { #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS + // Obsoleted in 1.82 (from February 2021) // Legacy Support for hard coded ~0 (used to be a suggested equivalent to ImDrawCornerFlags_All) // ~0 --> ImDrawFlags_RoundCornersAll or 0 if (flags == ~0) @@ -2353,10 +2343,11 @@ void ImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[256], fl void ImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256], unsigned char* pixels, int x, int y, int w, int h, int stride) { + IM_ASSERT_PARANOID(w <= stride); unsigned char* data = pixels + x + y * stride; - for (int j = h; j > 0; j--, data += stride) - for (int i = 0; i < w; i++) - data[i] = table[data[i]]; + for (int j = h; j > 0; j--, data += stride - w) + for (int i = w; i > 0; i--, data++) + *data = table[*data]; } #ifdef IMGUI_ENABLE_STB_TRUETYPE @@ -2373,7 +2364,7 @@ struct ImFontBuildSrcData int GlyphsHighest; // Highest requested codepoint int GlyphsCount; // Glyph count (excluding missing glyphs and glyphs already set by an earlier source font) ImBitVector GlyphsSet; // Glyph bit map (random access, 1-bit per codepoint. This will be a maximum of 8KB) - ImVector GlyphsList; // Glyph codepoints list (flattened version of GlyphsMap) + ImVector GlyphsList; // Glyph codepoints list (flattened version of GlyphsSet) }; // Temporary data for one destination ImFont* (multiple source fonts can be merged into one destination ImFont) @@ -2445,7 +2436,12 @@ static bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas) ImFontBuildDstData& dst_tmp = dst_tmp_array[src_tmp.DstIndex]; src_tmp.SrcRanges = cfg.GlyphRanges ? cfg.GlyphRanges : atlas->GetGlyphRangesDefault(); for (const ImWchar* src_range = src_tmp.SrcRanges; src_range[0] && src_range[1]; src_range += 2) + { + // Check for valid range. This may also help detect *some* dangling pointers, because a common + // user error is to setup ImFontConfig::GlyphRanges with a pointer to data that isn't persistent. + IM_ASSERT(src_range[0] <= src_range[1]); src_tmp.GlyphsHighest = ImMax(src_tmp.GlyphsHighest, (int)src_range[1]); + } dst_tmp.SrcCount++; dst_tmp.GlyphsHighest = ImMax(dst_tmp.GlyphsHighest, src_tmp.GlyphsHighest); } @@ -2610,13 +2606,10 @@ static bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas) // 9. Setup ImFont and glyphs for runtime for (int src_i = 0; src_i < src_tmp_array.Size; src_i++) { - ImFontBuildSrcData& src_tmp = src_tmp_array[src_i]; - if (src_tmp.GlyphsCount == 0) - continue; - // When merging fonts with MergeMode=true: // - We can have multiple input fonts writing into a same destination font. // - dst_font->ConfigData is != from cfg which is our source configuration. + ImFontBuildSrcData& src_tmp = src_tmp_array[src_i]; ImFontConfig& cfg = atlas->ConfigData[src_i]; ImFont* dst_font = cfg.DstFont; @@ -2680,6 +2673,9 @@ void ImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas, void* stbrp_context_opa ImVector& user_rects = atlas->CustomRects; IM_ASSERT(user_rects.Size >= 1); // We expect at least the default custom rects to be registered, else something went wrong. +#ifdef __GNUC__ + if (user_rects.Size < 1) { __builtin_unreachable(); } // Workaround for GCC bug if IM_ASSERT() is defined to conditionally throw (see #5343) +#endif ImVector pack_rects; pack_rects.resize(user_rects.Size); @@ -2873,6 +2869,17 @@ const ImWchar* ImFontAtlas::GetGlyphRangesDefault() return &ranges[0]; } +const ImWchar* ImFontAtlas::GetGlyphRangesGreek() +{ + static const ImWchar ranges[] = + { + 0x0020, 0x00FF, // Basic Latin + Latin Supplement + 0x0370, 0x03FF, // Greek and Coptic + 0, + }; + return &ranges[0]; +} + const ImWchar* ImFontAtlas::GetGlyphRangesKorean() { static const ImWchar ranges[] = @@ -2989,19 +2996,19 @@ const ImWchar* ImFontAtlas::GetGlyphRangesJapanese() // 2999 ideograms code points for Japanese // - 2136 Joyo (meaning "for regular use" or "for common use") Kanji code points // - 863 Jinmeiyo (meaning "for personal name") Kanji code points - // - Sourced from the character information database of the Information-technology Promotion Agency, Japan - // - https://mojikiban.ipa.go.jp/mji/ - // - Available under the terms of the Creative Commons Attribution-ShareAlike 2.1 Japan (CC BY-SA 2.1 JP). - // - https://creativecommons.org/licenses/by-sa/2.1/jp/deed.en - // - https://creativecommons.org/licenses/by-sa/2.1/jp/legalcode - // - You can generate this code by the script at: - // - https://github.com/vaiorabbit/everyday_use_kanji + // - Sourced from official information provided by the government agencies of Japan: + // - List of Joyo Kanji by the Agency for Cultural Affairs + // - https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kijun/naikaku/kanji/ + // - List of Jinmeiyo Kanji by the Ministry of Justice + // - http://www.moj.go.jp/MINJI/minji86.html + // - Available under the terms of the Creative Commons Attribution 4.0 International (CC BY 4.0). + // - https://creativecommons.org/licenses/by/4.0/legalcode + // - You can generate this code by the script at: + // - https://github.com/vaiorabbit/everyday_use_kanji // - References: // - List of Joyo Kanji - // - (Official list by the Agency for Cultural Affairs) https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kakuki/14/tosin02/index.html // - (Wikipedia) https://en.wikipedia.org/wiki/List_of_j%C5%8Dy%C5%8D_kanji // - List of Jinmeiyo Kanji - // - (Official list by the Ministry of Justice) http://www.moj.go.jp/MINJI/minji86.html // - (Wikipedia) https://en.wikipedia.org/wiki/Jinmeiy%C5%8D_kanji // - Missing 1 Joyo Kanji: U+20B9F (Kun'yomi: Shikaru, On'yomi: Shitsu,shichi), see https://github.com/ocornut/imgui/pull/3627 for details. // You can use ImFontGlyphRangesBuilder to create your own ranges derived from this, by merging existing ranges or adding new characters. @@ -3164,7 +3171,8 @@ ImFont::ImFont() FallbackAdvanceX = 0.0f; FallbackChar = (ImWchar)-1; EllipsisChar = (ImWchar)-1; - DotChar = (ImWchar)-1; + EllipsisWidth = EllipsisCharStep = 0.0f; + EllipsisCharCount = 0; FallbackGlyph = NULL; ContainerAtlas = NULL; ConfigData = NULL; @@ -3245,17 +3253,7 @@ void ImFont::BuildLookupTable() SetGlyphVisible((ImWchar)' ', false); SetGlyphVisible((ImWchar)'\t', false); - // Ellipsis character is required for rendering elided text. We prefer using U+2026 (horizontal ellipsis). - // However some old fonts may contain ellipsis at U+0085. Here we auto-detect most suitable ellipsis character. - // FIXME: Note that 0x2026 is rarely included in our font ranges. Because of this we are more likely to use three individual dots. - const ImWchar ellipsis_chars[] = { (ImWchar)0x2026, (ImWchar)0x0085 }; - const ImWchar dots_chars[] = { (ImWchar)'.', (ImWchar)0xFF0E }; - if (EllipsisChar == (ImWchar)-1) - EllipsisChar = FindFirstExistingGlyph(this, ellipsis_chars, IM_ARRAYSIZE(ellipsis_chars)); - if (DotChar == (ImWchar)-1) - DotChar = FindFirstExistingGlyph(this, dots_chars, IM_ARRAYSIZE(dots_chars)); - - // Setup fallback character + // Setup Fallback character const ImWchar fallback_chars[] = { (ImWchar)IM_UNICODE_CODEPOINT_INVALID, (ImWchar)'?', (ImWchar)' ' }; FallbackGlyph = FindGlyphNoFallback(FallbackChar); if (FallbackGlyph == NULL) @@ -3268,11 +3266,32 @@ void ImFont::BuildLookupTable() FallbackChar = (ImWchar)FallbackGlyph->Codepoint; } } - FallbackAdvanceX = FallbackGlyph->AdvanceX; for (int i = 0; i < max_codepoint + 1; i++) if (IndexAdvanceX[i] < 0.0f) IndexAdvanceX[i] = FallbackAdvanceX; + + // Setup Ellipsis character. It is required for rendering elided text. We prefer using U+2026 (horizontal ellipsis). + // However some old fonts may contain ellipsis at U+0085. Here we auto-detect most suitable ellipsis character. + // FIXME: Note that 0x2026 is rarely included in our font ranges. Because of this we are more likely to use three individual dots. + const ImWchar ellipsis_chars[] = { (ImWchar)0x2026, (ImWchar)0x0085 }; + const ImWchar dots_chars[] = { (ImWchar)'.', (ImWchar)0xFF0E }; + if (EllipsisChar == (ImWchar)-1) + EllipsisChar = FindFirstExistingGlyph(this, ellipsis_chars, IM_ARRAYSIZE(ellipsis_chars)); + const ImWchar dot_char = FindFirstExistingGlyph(this, dots_chars, IM_ARRAYSIZE(dots_chars)); + if (EllipsisChar != (ImWchar)-1) + { + EllipsisCharCount = 1; + EllipsisWidth = EllipsisCharStep = FindGlyph(EllipsisChar)->X1; + } + else if (dot_char != (ImWchar)-1) + { + const ImFontGlyph* glyph = FindGlyph(dot_char); + EllipsisChar = dot_char; + EllipsisCharCount = 3; + EllipsisCharStep = (glyph->X1 - glyph->X0) + 1.0f; + EllipsisWidth = EllipsisCharStep * 3.0f - 1.0f; + } } // API is designed this way to avoid exposing the 4K page size @@ -3385,11 +3404,21 @@ const ImFontGlyph* ImFont::FindGlyphNoFallback(ImWchar c) const return &Glyphs.Data[i]; } +// Wrapping skips upcoming blanks +static inline const char* CalcWordWrapNextLineStartA(const char* text, const char* text_end) +{ + while (text < text_end && ImCharIsBlankA(*text)) + text++; + if (*text == '\n') + text++; + return text; +} + +// Simple word-wrapping for English, not full-featured. Please submit failing cases! +// This will return the next location to wrap from. If no wrapping if necessary, this will fast-forward to e.g. text_end. +// FIXME: Much possible improvements (don't cut things like "word !", "word!!!" but cut within "word,,,,", more sensible support for punctuations, support for Unicode punctuations, etc.) const char* ImFont::CalcWordWrapPositionA(float scale, const char* text, const char* text_end, float wrap_width) const { - // Simple word-wrapping for English, not full-featured. Please submit failing cases! - // FIXME: Much possible improvements (don't cut things like "word !", "word!!!" but cut within "word,,,,", more sensible support for punctuations, support for Unicode punctuations, etc.) - // For references, possible wrap point marked with ^ // "aaa bbb, ccc,ddd. eee fff. ggg!" // ^ ^ ^ ^ ^__ ^ ^ @@ -3401,7 +3430,6 @@ const char* ImFont::CalcWordWrapPositionA(float scale, const char* text, const c // Cut words that cannot possibly fit within one line. // e.g.: "The tropical fish" with ~5 characters worth of width --> "The tr" "opical" "fish" - float line_width = 0.0f; float word_width = 0.0f; float blank_width = 0.0f; @@ -3412,6 +3440,7 @@ const char* ImFont::CalcWordWrapPositionA(float scale, const char* text, const c bool inside_word = true; const char* s = text; + IM_ASSERT(text_end != NULL); while (s < text_end) { unsigned int c = (unsigned int)*s; @@ -3420,8 +3449,6 @@ const char* ImFont::CalcWordWrapPositionA(float scale, const char* text, const c next_s = s + 1; else next_s = s + ImTextCharFromUtf8(&c, s, text_end); - if (c == 0) - break; if (c < 32) { @@ -3481,6 +3508,10 @@ const char* ImFont::CalcWordWrapPositionA(float scale, const char* text, const c s = next_s; } + // Wrap_width is too small to fit anything. Force displaying 1 character to minimize the height discontinuity. + // +1 may not be a character start point in UTF-8 but it's ok because caller loops use (text >= word_wrap_eol). + if (s == text && text < text_end) + return s + 1; return s; } @@ -3505,11 +3536,7 @@ ImVec2 ImFont::CalcTextSizeA(float size, float max_width, float wrap_width, cons { // Calculate how far we can render. Requires two passes on the string data but keeps the code simple and not intrusive for what's essentially an uncommon feature. if (!word_wrap_eol) - { word_wrap_eol = CalcWordWrapPositionA(scale, s, text_end, wrap_width - line_width); - if (word_wrap_eol == s) // Wrap_width is too small to fit anything. Force displaying 1 character to minimize the height discontinuity. - word_wrap_eol++; // +1 may not be a character start point in UTF-8 but it's ok because we use s >= word_wrap_eol below - } if (s >= word_wrap_eol) { @@ -3518,13 +3545,7 @@ ImVec2 ImFont::CalcTextSizeA(float size, float max_width, float wrap_width, cons text_size.y += line_height; line_width = 0.0f; word_wrap_eol = NULL; - - // Wrapping skips upcoming blanks - while (s < text_end) - { - const char c = *s; - if (ImCharIsBlankA(c)) { s++; } else if (c == '\n') { s++; break; } else { break; } - } + s = CalcWordWrapNextLineStartA(s, text_end); // Wrapping skips upcoming blanks continue; } } @@ -3533,15 +3554,9 @@ ImVec2 ImFont::CalcTextSizeA(float size, float max_width, float wrap_width, cons const char* prev_s = s; unsigned int c = (unsigned int)*s; if (c < 0x80) - { s += 1; - } else - { s += ImTextCharFromUtf8(&c, s, text_end); - if (c == 0) // Malformed UTF-8? - break; - } if (c < 32) { @@ -3609,15 +3624,25 @@ void ImFont::RenderText(ImDrawList* draw_list, float size, const ImVec2& pos, Im const float scale = size / FontSize; const float line_height = FontSize * scale; const bool word_wrap_enabled = (wrap_width > 0.0f); - const char* word_wrap_eol = NULL; // Fast-forward to first visible line const char* s = text_begin; - if (y + line_height < clip_rect.y && !word_wrap_enabled) + if (y + line_height < clip_rect.y) while (y + line_height < clip_rect.y && s < text_end) { - s = (const char*)memchr(s, '\n', text_end - s); - s = s ? s + 1 : text_end; + const char* line_end = (const char*)memchr(s, '\n', text_end - s); + if (word_wrap_enabled) + { + // FIXME-OPT: This is not optimal as do first do a search for \n before calling CalcWordWrapPositionA(). + // If the specs for CalcWordWrapPositionA() were reworked to optionally return on \n we could combine both. + // However it is still better than nothing performing the fast-forward! + s = CalcWordWrapPositionA(scale, s, line_end ? line_end : text_end, wrap_width); + s = CalcWordWrapNextLineStartA(s, text_end); + } + else + { + s = line_end ? line_end + 1 : text_end; + } y += line_height; } @@ -3643,12 +3668,12 @@ void ImFont::RenderText(ImDrawList* draw_list, float size, const ImVec2& pos, Im const int idx_count_max = (int)(text_end - s) * 6; const int idx_expected_size = draw_list->IdxBuffer.Size + idx_count_max; draw_list->PrimReserve(idx_count_max, vtx_count_max); - - ImDrawVert* vtx_write = draw_list->_VtxWritePtr; - ImDrawIdx* idx_write = draw_list->_IdxWritePtr; - unsigned int vtx_current_idx = draw_list->_VtxCurrentIdx; + ImDrawVert* vtx_write = draw_list->_VtxWritePtr; + ImDrawIdx* idx_write = draw_list->_IdxWritePtr; + unsigned int vtx_index = draw_list->_VtxCurrentIdx; const ImU32 col_untinted = col | ~IM_COL32_A_MASK; + const char* word_wrap_eol = NULL; while (s < text_end) { @@ -3656,24 +3681,14 @@ void ImFont::RenderText(ImDrawList* draw_list, float size, const ImVec2& pos, Im { // Calculate how far we can render. Requires two passes on the string data but keeps the code simple and not intrusive for what's essentially an uncommon feature. if (!word_wrap_eol) - { word_wrap_eol = CalcWordWrapPositionA(scale, s, text_end, wrap_width - (x - start_x)); - if (word_wrap_eol == s) // Wrap_width is too small to fit anything. Force displaying 1 character to minimize the height discontinuity. - word_wrap_eol++; // +1 may not be a character start point in UTF-8 but it's ok because we use s >= word_wrap_eol below - } if (s >= word_wrap_eol) { x = start_x; y += line_height; word_wrap_eol = NULL; - - // Wrapping skips upcoming blanks - while (s < text_end) - { - const char c = *s; - if (ImCharIsBlankA(c)) { s++; } else if (c == '\n') { s++; break; } else { break; } - } + s = CalcWordWrapNextLineStartA(s, text_end); // Wrapping skips upcoming blanks continue; } } @@ -3681,15 +3696,9 @@ void ImFont::RenderText(ImDrawList* draw_list, float size, const ImVec2& pos, Im // Decode and advance source unsigned int c = (unsigned int)*s; if (c < 0x80) - { s += 1; - } else - { s += ImTextCharFromUtf8(&c, s, text_end); - if (c == 0) // Malformed UTF-8? - break; - } if (c < 32) { @@ -3760,14 +3769,14 @@ void ImFont::RenderText(ImDrawList* draw_list, float size, const ImVec2& pos, Im // We are NOT calling PrimRectUV() here because non-inlined causes too much overhead in a debug builds. Inlined here: { - idx_write[0] = (ImDrawIdx)(vtx_current_idx); idx_write[1] = (ImDrawIdx)(vtx_current_idx+1); idx_write[2] = (ImDrawIdx)(vtx_current_idx+2); - idx_write[3] = (ImDrawIdx)(vtx_current_idx); idx_write[4] = (ImDrawIdx)(vtx_current_idx+2); idx_write[5] = (ImDrawIdx)(vtx_current_idx+3); vtx_write[0].pos.x = x1; vtx_write[0].pos.y = y1; vtx_write[0].col = glyph_col; vtx_write[0].uv.x = u1; vtx_write[0].uv.y = v1; vtx_write[1].pos.x = x2; vtx_write[1].pos.y = y1; vtx_write[1].col = glyph_col; vtx_write[1].uv.x = u2; vtx_write[1].uv.y = v1; vtx_write[2].pos.x = x2; vtx_write[2].pos.y = y2; vtx_write[2].col = glyph_col; vtx_write[2].uv.x = u2; vtx_write[2].uv.y = v2; vtx_write[3].pos.x = x1; vtx_write[3].pos.y = y2; vtx_write[3].col = glyph_col; vtx_write[3].uv.x = u1; vtx_write[3].uv.y = v2; + idx_write[0] = (ImDrawIdx)(vtx_index); idx_write[1] = (ImDrawIdx)(vtx_index + 1); idx_write[2] = (ImDrawIdx)(vtx_index + 2); + idx_write[3] = (ImDrawIdx)(vtx_index); idx_write[4] = (ImDrawIdx)(vtx_index + 2); idx_write[5] = (ImDrawIdx)(vtx_index + 3); vtx_write += 4; - vtx_current_idx += 4; + vtx_index += 4; idx_write += 6; } } @@ -3781,7 +3790,7 @@ void ImFont::RenderText(ImDrawList* draw_list, float size, const ImVec2& pos, Im draw_list->CmdBuffer[draw_list->CmdBuffer.Size - 1].ElemCount -= (idx_expected_size - draw_list->IdxBuffer.Size); draw_list->_VtxWritePtr = vtx_write; draw_list->_IdxWritePtr = idx_write; - draw_list->_VtxCurrentIdx = vtx_current_idx; + draw_list->_VtxCurrentIdx = vtx_index; } //----------------------------------------------------------------------------- @@ -3834,6 +3843,7 @@ void ImGui::RenderArrow(ImDrawList* draw_list, ImVec2 pos, ImU32 col, ImGuiDir d void ImGui::RenderBullet(ImDrawList* draw_list, ImVec2 pos, ImU32 col) { + // FIXME-OPT: This should be baked in font. draw_list->AddCircleFilled(pos, draw_list->_Data->FontSize * 0.20f, col, 8); } diff --git a/extern/imgui_patched/imgui_internal.h b/extern/imgui_patched/imgui_internal.h index c2e15764..6fa0dc58 100644 --- a/extern/imgui_patched/imgui_internal.h +++ b/extern/imgui_patched/imgui_internal.h @@ -1,10 +1,12 @@ -// dear imgui, v1.88 WIP +// dear imgui, v1.89.6 // (internal structures/api) -// You may use this file to debug, understand or extend ImGui features but we don't provide any guarantee of forward compatibility! -// Set: -// #define IMGUI_DEFINE_MATH_OPERATORS -// To implement maths operators for ImVec2 (disabled by default to not collide with using IM_VEC2_CLASS_EXTRA along with your own math types+operators) +// You may use this file to debug, understand or extend Dear ImGui features but we don't provide any guarantee of forward compatibility. +// To implement maths operators for ImVec2 (disabled by default to not conflict with using IM_VEC2_CLASS_EXTRA with your own math types+operators), use: +/* +#define IMGUI_DEFINE_MATH_OPERATORS +#include "imgui_internal.h" +*/ /* @@ -26,6 +28,7 @@ Index of this file: // [SECTION] Docking support // [SECTION] Viewport support // [SECTION] Settings support +// [SECTION] Localization support // [SECTION] Metrics, Debug tools // [SECTION] Generic context hooks // [SECTION] ImGuiContext (main imgui context) @@ -55,7 +58,7 @@ Index of this file: #include // INT_MIN, INT_MAX // Enable SSE intrinsics if available -#if (defined __SSE__ || defined __x86_64__ || defined _M_X64) && !defined(IMGUI_DISABLE_SSE) +#if (defined __SSE__ || defined __x86_64__ || defined _M_X64 || (defined(_M_IX86_FP) && (_M_IX86_FP >= 1))) && !defined(IMGUI_DISABLE_SSE) #define IMGUI_ENABLE_SSE #include #endif @@ -92,6 +95,12 @@ Index of this file: #pragma GCC diagnostic ignored "-Wclass-memaccess" // [__GNUC__ >= 8] warning: 'memset/memcpy' clearing/writing an object of type 'xxxx' with no trivial copy-assignment; use assignment or value-initialization instead #endif +// In 1.89.4, we moved the implementation of "courtesy maths operators" from imgui_internal.h in imgui.h +// As they are frequently requested, we do not want to encourage to many people using imgui_internal.h +#if defined(IMGUI_DEFINE_MATH_OPERATORS) && !defined(IMGUI_DEFINE_MATH_OPERATORS_IMPLEMENTED) +#error Please '#define IMGUI_DEFINE_MATH_OPERATORS' _BEFORE_ including imgui.h! +#endif + // Legacy defines #ifdef IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS // Renamed in 1.74 #error Use IMGUI_DISABLE_DEFAULT_FORMAT_FUNCTIONS @@ -117,6 +126,7 @@ struct ImDrawListSharedData; // Data shared between all ImDrawList instan struct ImGuiColorMod; // Stacked color modifier, backup of modified data so we can restore it struct ImGuiContext; // Main Dear ImGui context struct ImGuiContextHook; // Hook for extensions like ImGuiTestEngine +struct ImGuiDataVarInfo; // Variable information (e.g. to avoid style variables from an enum) struct ImGuiDataTypeInfo; // Type information associated to a ImGuiDataType enum struct ImGuiDockContext; // Docking system context struct ImGuiDockRequest; // Docking system dock/undock queued request @@ -124,7 +134,9 @@ struct ImGuiDockNode; // Docking system node (hold a list of Windo struct ImGuiDockNodeSettings; // Storage for a dock node in .ini file (we preserve those even if the associated dock node isn't active during the session) struct ImGuiGroupData; // Stacked storage data for BeginGroup()/EndGroup() struct ImGuiInputTextState; // Internal state of the currently focused/edited text input box +struct ImGuiInputTextDeactivateData;// Short term storage to backup text of a deactivating InputText() while another is stealing active id struct ImGuiLastItemData; // Status storage for last submitted items +struct ImGuiLocEntry; // A localization entry. struct ImGuiMenuColumns; // Simple column measurement, currently used for MenuItem() only struct ImGuiNavItemData; // Result of a gamepad/keyboard directional navigation move query result struct ImGuiMetricsConfig; // Storage for ShowMetricsWindow() and DebugNodeXXX() functions @@ -148,15 +160,21 @@ struct ImGuiWindow; // Storage for one window struct ImGuiWindowTempData; // Temporary storage for one window (that's the data which in theory we could ditch at the end of the frame, in practice we currently keep it for each window) struct ImGuiWindowSettings; // Storage for a window .ini settings (we keep one of those even if the actual window wasn't instanced during this session) +// Enumerations // Use your programming IDE "Go to definition" facility on the names of the center columns to find the actual flags/enum lists. +enum ImGuiLocKey : int; // -> enum ImGuiLocKey // Enum: a localization entry for translation. typedef int ImGuiDataAuthority; // -> enum ImGuiDataAuthority_ // Enum: for storing the source authority (dock node vs window) of a field typedef int ImGuiLayoutType; // -> enum ImGuiLayoutType_ // Enum: Horizontal or vertical + +// Flags typedef int ImGuiActivateFlags; // -> enum ImGuiActivateFlags_ // Flags: for navigation/focus function (will be for ActivateItem() later) -typedef int ImGuiItemFlags; // -> enum ImGuiItemFlags_ // Flags: for PushItemFlag() -typedef int ImGuiItemStatusFlags; // -> enum ImGuiItemStatusFlags_ // Flags: for DC.LastItemStatusFlags +typedef int ImGuiDebugLogFlags; // -> enum ImGuiDebugLogFlags_ // Flags: for ShowDebugLogWindow(), g.DebugLogFlags +typedef int ImGuiFocusRequestFlags; // -> enum ImGuiFocusRequestFlags_ // Flags: for FocusWindow(); +typedef int ImGuiInputFlags; // -> enum ImGuiInputFlags_ // Flags: for IsKeyPressed(), IsMouseClicked(), SetKeyOwner(), SetItemKeyOwner() etc. +typedef int ImGuiItemFlags; // -> enum ImGuiItemFlags_ // Flags: for PushItemFlag(), g.LastItemData.InFlags +typedef int ImGuiItemStatusFlags; // -> enum ImGuiItemStatusFlags_ // Flags: for g.LastItemData.StatusFlags typedef int ImGuiOldColumnFlags; // -> enum ImGuiOldColumnFlags_ // Flags: for BeginColumns() typedef int ImGuiNavHighlightFlags; // -> enum ImGuiNavHighlightFlags_ // Flags: for RenderNavHighlight() -typedef int ImGuiNavDirSourceFlags; // -> enum ImGuiNavDirSourceFlags_ // Flags: for GetNavInputAmount2d() typedef int ImGuiNavMoveFlags; // -> enum ImGuiNavMoveFlags_ // Flags: for navigation requests typedef int ImGuiNextItemDataFlags; // -> enum ImGuiNextItemDataFlags_ // Flags: for SetNextItemXXX() functions typedef int ImGuiNextWindowDataFlags; // -> enum ImGuiNextWindowDataFlags_// Flags: for SetNextWindowXXX() functions @@ -201,22 +219,31 @@ namespace ImStb // Internal Drag and Drop payload types. String starting with '_' are reserved for Dear ImGui. #define IMGUI_PAYLOAD_TYPE_WINDOW "_IMWINDOW" // Payload == ImGuiWindow* -// Debug Logging -#ifndef IMGUI_DEBUG_LOG -#define IMGUI_DEBUG_LOG(_FMT,...) printf("[%05d] " _FMT, GImGui->FrameCount, __VA_ARGS__) +// Debug Printing Into TTY +// (since IMGUI_VERSION_NUM >= 18729: IMGUI_DEBUG_LOG was reworked into IMGUI_DEBUG_PRINTF (and removed framecount from it). If you were using a #define IMGUI_DEBUG_LOG please rename) +#ifndef IMGUI_DEBUG_PRINTF +#ifndef IMGUI_DISABLE_DEFAULT_FORMAT_FUNCTIONS +#define IMGUI_DEBUG_PRINTF(_FMT,...) printf(_FMT, __VA_ARGS__) +#else +#define IMGUI_DEBUG_PRINTF(_FMT,...) ((void)0) +#endif #endif -// Debug Logging for selected systems. Remove the '((void)0) //' to enable. -//#define IMGUI_DEBUG_LOG_POPUP IMGUI_DEBUG_LOG // Enable log -//#define IMGUI_DEBUG_LOG_NAV IMGUI_DEBUG_LOG // Enable log -//#define IMGUI_DEBUG_LOG_IO IMGUI_DEBUG_LOG // Enable log -//#define IMGUI_DEBUG_LOG_VIEWPORT IMGUI_DEBUG_LOG // Enable log -//#define IMGUI_DEBUG_LOG_DOCKING IMGUI_DEBUG_LOG // Enable log -#define IMGUI_DEBUG_LOG_POPUP(...) ((void)0) // Disable log -#define IMGUI_DEBUG_LOG_NAV(...) ((void)0) // Disable log -#define IMGUI_DEBUG_LOG_IO(...) ((void)0) // Disable log -#define IMGUI_DEBUG_LOG_VIEWPORT(...) ((void)0) // Disable log -#define IMGUI_DEBUG_LOG_DOCKING(...) ((void)0) // Disable log +// Debug Logging for ShowDebugLogWindow(). This is designed for relatively rare events so please don't spam. +#ifndef IMGUI_DISABLE_DEBUG_TOOLS +#define IMGUI_DEBUG_LOG(...) ImGui::DebugLog(__VA_ARGS__) +#else +#define IMGUI_DEBUG_LOG(...) ((void)0) +#endif +#define IMGUI_DEBUG_LOG_ACTIVEID(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventActiveId) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_FOCUS(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventFocus) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_POPUP(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventPopup) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_NAV(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventNav) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_SELECTION(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventSelection)IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_CLIPPER(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventClipper) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_IO(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventIO) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_DOCKING(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventDocking) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) +#define IMGUI_DEBUG_LOG_VIEWPORT(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventViewport) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0) // Static Asserts #define IM_STATIC_ASSERT(_COND) static_assert(_COND, "") @@ -243,7 +270,9 @@ namespace ImStb #else #define IM_NEWLINE "\n" #endif +#ifndef IM_TABSIZE // Until we move this to runtime and/or add proper tab support, at least allow users to compile-time override #define IM_TABSIZE (4) +#endif #define IM_MEMALIGN(_OFF,_ALIGN) (((_OFF) + ((_ALIGN) - 1)) & ~((_ALIGN) - 1)) // Memory align e.g. IM_ALIGN(0,4)=0, IM_ALIGN(1,4)=4, IM_ALIGN(4,4)=4, IM_ALIGN(5,4)=8 #define IM_F32_TO_INT8_UNBOUND(_VAL) ((int)((_VAL) * 255.0f + ((_VAL)>=0 ? 0.5f : -0.5f))) // Unsaturated, for display purpose #define IM_F32_TO_INT8_SAT(_VAL) ((int)(ImSaturate(_VAL) * 255.0f + 0.5f)) // Saturated, always output 0..255 @@ -305,11 +334,12 @@ namespace ImStb // - Helper: ImSpan<>, ImSpanAllocator<> // - Helper: ImPool<> // - Helper: ImChunkStream<> +// - Helper: ImGuiTextIndex //----------------------------------------------------------------------------- // Helpers: Hashing -IMGUI_API ImGuiID ImHashData(const void* data, size_t data_size, ImU32 seed = 0); -IMGUI_API ImGuiID ImHashStr(const char* data, size_t data_size = 0, ImU32 seed = 0); +IMGUI_API ImGuiID ImHashData(const void* data, size_t data_size, ImGuiID seed = 0); +IMGUI_API ImGuiID ImHashStr(const char* data, size_t data_size = 0, ImGuiID seed = 0); // Helpers: Sorting #ifndef ImQsort @@ -337,12 +367,17 @@ IMGUI_API const ImWchar*ImStrbolW(const ImWchar* buf_mid_line, const ImWchar* bu IMGUI_API const char* ImStristr(const char* haystack, const char* haystack_end, const char* needle, const char* needle_end); IMGUI_API void ImStrTrimBlanks(char* str); IMGUI_API const char* ImStrSkipBlank(const char* str); +IM_MSVC_RUNTIME_CHECKS_OFF +static inline char ImToUpper(char c) { return (c >= 'a' && c <= 'z') ? c &= ~32 : c; } static inline bool ImCharIsBlankA(char c) { return c == ' ' || c == '\t'; } static inline bool ImCharIsBlankW(unsigned int c) { return c == ' ' || c == '\t' || c == 0x3000; } +IM_MSVC_RUNTIME_CHECKS_RESTORE // Helpers: Formatting IMGUI_API int ImFormatString(char* buf, size_t buf_size, const char* fmt, ...) IM_FMTARGS(3); IMGUI_API int ImFormatStringV(char* buf, size_t buf_size, const char* fmt, va_list args) IM_FMTLIST(3); +IMGUI_API void ImFormatStringToTempBuffer(const char** out_buf, const char** out_buf_end, const char* fmt, ...) IM_FMTARGS(3); +IMGUI_API void ImFormatStringToTempBufferV(const char** out_buf, const char** out_buf_end, const char* fmt, va_list args) IM_FMTLIST(3); IMGUI_API const char* ImParseFormatFindStart(const char* format); IMGUI_API const char* ImParseFormatFindEnd(const char* format); IMGUI_API const char* ImParseFormatTrimDecorations(const char* format, char* buf, size_t buf_size); @@ -359,29 +394,6 @@ IMGUI_API int ImTextCountCharsFromUtf8(const char* in_text, const char IMGUI_API int ImTextCountUtf8BytesFromChar(const char* in_text, const char* in_text_end); // return number of bytes to express one char in UTF-8 IMGUI_API int ImTextCountUtf8BytesFromStr(const ImWchar* in_text, const ImWchar* in_text_end); // return number of bytes to express string in UTF-8 -// Helpers: ImVec2/ImVec4 operators -// We are keeping those disabled by default so they don't leak in user space, to allow user enabling implicit cast operators between ImVec2 and their own types (using IM_VEC2_CLASS_EXTRA etc.) -// We unfortunately don't have a unary- operator for ImVec2 because this would needs to be defined inside the class itself. -#ifdef IMGUI_DEFINE_MATH_OPERATORS -IM_MSVC_RUNTIME_CHECKS_OFF -static inline ImVec2 operator*(const ImVec2& lhs, const float rhs) { return ImVec2(lhs.x * rhs, lhs.y * rhs); } -static inline ImVec2 operator/(const ImVec2& lhs, const float rhs) { return ImVec2(lhs.x / rhs, lhs.y / rhs); } -static inline ImVec2 operator+(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x + rhs.x, lhs.y + rhs.y); } -static inline ImVec2 operator-(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x - rhs.x, lhs.y - rhs.y); } -static inline ImVec2 operator*(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x * rhs.x, lhs.y * rhs.y); } -static inline ImVec2 operator/(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x / rhs.x, lhs.y / rhs.y); } -static inline ImVec2& operator*=(ImVec2& lhs, const float rhs) { lhs.x *= rhs; lhs.y *= rhs; return lhs; } -static inline ImVec2& operator/=(ImVec2& lhs, const float rhs) { lhs.x /= rhs; lhs.y /= rhs; return lhs; } -static inline ImVec2& operator+=(ImVec2& lhs, const ImVec2& rhs) { lhs.x += rhs.x; lhs.y += rhs.y; return lhs; } -static inline ImVec2& operator-=(ImVec2& lhs, const ImVec2& rhs) { lhs.x -= rhs.x; lhs.y -= rhs.y; return lhs; } -static inline ImVec2& operator*=(ImVec2& lhs, const ImVec2& rhs) { lhs.x *= rhs.x; lhs.y *= rhs.y; return lhs; } -static inline ImVec2& operator/=(ImVec2& lhs, const ImVec2& rhs) { lhs.x /= rhs.x; lhs.y /= rhs.y; return lhs; } -static inline ImVec4 operator+(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z, lhs.w + rhs.w); } -static inline ImVec4 operator-(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z, lhs.w - rhs.w); } -static inline ImVec4 operator*(const ImVec4& lhs, const ImVec4& rhs) { return ImVec4(lhs.x * rhs.x, lhs.y * rhs.y, lhs.z * rhs.z, lhs.w * rhs.w); } -IM_MSVC_RUNTIME_CHECKS_RESTORE -#endif - // Helpers: File System #ifdef IMGUI_DISABLE_FILE_FUNCTIONS #define IMGUI_DISABLE_DEFAULT_FILE_FUNCTIONS @@ -464,6 +476,7 @@ static inline ImVec2 ImRotate(const ImVec2& v, float cos_a, float sin_a) static inline float ImLinearSweep(float current, float target, float speed) { if (current < target) return ImMin(current + speed, target); if (current > target) return ImMax(current - speed, target); return current; } static inline ImVec2 ImMul(const ImVec2& lhs, const ImVec2& rhs) { return ImVec2(lhs.x * rhs.x, lhs.y * rhs.y); } static inline bool ImIsFloatAboveGuaranteedIntegerPrecision(float f) { return f <= -16777216 || f >= 16777216; } +static inline float ImExponentialMovingAverage(float avg, float sample, int n) { avg -= avg / n; avg += sample / n; return avg; } IM_MSVC_RUNTIME_CHECKS_RESTORE // Helpers: Geometry @@ -476,7 +489,6 @@ IMGUI_API bool ImTriangleContainsPoint(const ImVec2& a, const ImVec2& b, c IMGUI_API ImVec2 ImTriangleClosestPoint(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p); IMGUI_API void ImTriangleBarycentricCoords(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p, float& out_u, float& out_v, float& out_w); inline float ImTriangleArea(const ImVec2& a, const ImVec2& b, const ImVec2& c) { return ImFabs((a.x * (b.y - c.y)) + (b.x * (c.y - a.y)) + (c.x * (a.y - b.y))) * 0.5f; } -IMGUI_API ImGuiDir ImGetDirQuadrantFromDelta(float dx, float dy); // Helper: ImVec1 (1D vector) // (this odd construct is used to facilitate the transition between 1D and 2D, and the maintenance of some branches/patches) @@ -534,9 +546,12 @@ struct IMGUI_API ImRect bool IsInverted() const { return Min.x > Max.x || Min.y > Max.y; } ImVec4 ToVec4() const { return ImVec4(Min.x, Min.y, Max.x, Max.y); } }; -IM_MSVC_RUNTIME_CHECKS_RESTORE // Helper: ImBitArray +#define IM_BITARRAY_TESTBIT(_ARRAY, _N) ((_ARRAY[(_N) >> 5] & ((ImU32)1 << ((_N) & 31))) != 0) // Macro version of ImBitArrayTestBit(): ensure args have side-effect or are costly! +#define IM_BITARRAY_CLEARBIT(_ARRAY, _N) ((_ARRAY[(_N) >> 5] &= ~((ImU32)1 << ((_N) & 31)))) // Macro version of ImBitArrayClearBit(): ensure args have side-effect or are costly! +inline size_t ImBitArrayGetStorageSizeInBytes(int bitcount) { return (size_t)((bitcount + 31) >> 5) << 2; } +inline void ImBitArrayClearAllBits(ImU32* arr, int bitcount){ memset(arr, 0, ImBitArrayGetStorageSizeInBytes(bitcount)); } inline bool ImBitArrayTestBit(const ImU32* arr, int n) { ImU32 mask = (ImU32)1 << (n & 31); return (arr[n >> 5] & mask) != 0; } inline void ImBitArrayClearBit(ImU32* arr, int n) { ImU32 mask = (ImU32)1 << (n & 31); arr[n >> 5] &= ~mask; } inline void ImBitArraySetBit(ImU32* arr, int n) { ImU32 mask = (ImU32)1 << (n & 31); arr[n >> 5] |= mask; } @@ -553,49 +568,22 @@ inline void ImBitArraySetBitRange(ImU32* arr, int n, int n2) // Works on ran } } +typedef ImU32* ImBitArrayPtr; // Name for use in structs + // Helper: ImBitArray class (wrapper over ImBitArray functions) // Store 1-bit per value. template struct ImBitArray { ImU32 Storage[(BITCOUNT + 31) >> 5]; - ImBitArray() { ClearAllBits(); } - void ClearAllBits() { memset(Storage, 0, sizeof(Storage)); } - void SetAllBits() { memset(Storage, 255, sizeof(Storage)); } - bool TestBit(int n) const { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); return ImBitArrayTestBit(Storage, n); } - void SetBit(int n) { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); ImBitArraySetBit(Storage, n); } - void ClearBit(int n) { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); ImBitArrayClearBit(Storage, n); } - void SetBitRange(int n, int n2) { n += OFFSET; n2 += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT && n2 > n && n2 <= BITCOUNT); ImBitArraySetBitRange(Storage, n, n2); } // Works on range [n..n2) - bool operator[](int n) const { return TestBit(n); } - bool operator&(int n) const { return TestBit(n); } - bool operator==(ImBitArray const &a) const - { - for (int i = 0; i < ((BITCOUNT + 31) >> 5); ++i) - if (Storage[i] != a.Storage[i]) - return false; - return true; - } - bool operator!=(ImBitArray const &a) const - { - for (int i = 0; i < ((BITCOUNT + 31) >> 5); ++i) - if (Storage[i] == a.Storage[i]) - return false; - return true; - } - template bool operator==(ImBitArray const &a) const - { - for (int i = 0; i < ImMin((DSTBITCOUNT + 31) >> 5, (BITCOUNT + 31) >> 5); ++i) - if (Storage[i] != a.Storage[i]) - return false; - return true; - } - template bool operator!=(ImBitArray const &a) const - { - for (int i = 0; i < ImMin((DSTBITCOUNT + 31) >> 5, (BITCOUNT + 31) >> 5); ++i) - if (Storage[i] == a.Storage[i]) - return false; - return true; - } + ImBitArray() { ClearAllBits(); } + void ClearAllBits() { memset(Storage, 0, sizeof(Storage)); } + void SetAllBits() { memset(Storage, 255, sizeof(Storage)); } + bool TestBit(int n) const { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); return IM_BITARRAY_TESTBIT(Storage, n); } + void SetBit(int n) { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); ImBitArraySetBit(Storage, n); } + void ClearBit(int n) { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); ImBitArrayClearBit(Storage, n); } + void SetBitRange(int n, int n2) { n += OFFSET; n2 += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT && n2 > n && n2 <= BITCOUNT); ImBitArraySetBitRange(Storage, n, n2); } // Works on range [n..n2) + bool operator[](int n) const { n += OFFSET; IM_ASSERT(n >= 0 && n < BITCOUNT); return IM_BITARRAY_TESTBIT(Storage, n); } }; // Helper: ImBitVector @@ -603,28 +591,13 @@ struct ImBitArray struct IMGUI_API ImBitVector { ImVector Storage; - int BitCount = 0; - ImBitVector(int sz = 0) { if (sz > 0) { Create(sz); } } - void Create(int sz) { BitCount = sz; Storage.resize((sz + 31) >> 5); Storage.fill(0); } - void Clear() { Storage.clear(); } - void ClearAllBits() { Storage.fill(0); } - void SetAllBits() { Storage.fill(~0); } - bool TestBit(int n) const { IM_ASSERT(n >= 0 && n < BitCount); return ImBitArrayTestBit(Storage.Data, n); } - void SetBit(int n) { IM_ASSERT(n >= 0 && n < BitCount); ImBitArraySetBit(Storage.Data, n); } - void SetBitRange(int n, int n2) { IM_ASSERT(n >= 0 && n < BitCount && n2 > n && n2 <= BitCount); ImBitArraySetBitRange(Storage.Data, n, n2); } // Works on range [n..n2) - void ClearBit(int n) { IM_ASSERT(n >= 0 && n < BitCount); ImBitArrayClearBit(Storage.Data, n); } - bool CheckEqual(ImBitVector const &a) const - { - for (int i = 0; i < ImMin((a.BitCount + 31) >> 5, (BitCount + 31) >> 5); ++i) - if (Storage[i] != a.Storage[i]) - return false; - return true; - } - bool operator[](int n) const { return TestBit(n); } - bool operator&(int n) const { return TestBit(n); } - bool operator==(ImBitVector const &a) const { return CheckEqual(a); } - bool operator!=(ImBitVector const &a) const { return !CheckEqual(a); } + void Create(int sz) { Storage.resize((sz + 31) >> 5); memset(Storage.Data, 0, (size_t)Storage.Size * sizeof(Storage.Data[0])); } + void Clear() { Storage.clear(); } + bool TestBit(int n) const { IM_ASSERT(n < (Storage.Size << 5)); return IM_BITARRAY_TESTBIT(Storage.Data, n); } + void SetBit(int n) { IM_ASSERT(n < (Storage.Size << 5)); ImBitArraySetBit(Storage.Data, n); } + void ClearBit(int n) { IM_ASSERT(n < (Storage.Size << 5)); ImBitArrayClearBit(Storage.Data, n); } }; +IM_MSVC_RUNTIME_CHECKS_RESTORE // Helper: ImSpan<> // Pointing to a span of data we don't own. @@ -737,6 +710,20 @@ struct ImChunkStream }; +// Helper: ImGuiTextIndex<> +// Maintain a line index for a text buffer. This is a strong candidate to be moved into the public API. +struct ImGuiTextIndex +{ + ImVector LineOffsets; + int EndOffset = 0; // Because we don't own text buffer we need to maintain EndOffset (may bake in LineOffsets?) + + void clear() { LineOffsets.clear(); EndOffset = 0; } + int size() { return LineOffsets.Size; } + const char* get_line_begin(const char* base, int n) { return base + LineOffsets[n]; } + const char* get_line_end(const char* base, int n) { return base + (n + 1 < LineOffsets.Size ? (LineOffsets[n + 1] - 1) : EndOffset); } + void append(const char* base, int old_size, int new_size); +}; + //----------------------------------------------------------------------------- // [SECTION] ImDrawList support //----------------------------------------------------------------------------- @@ -778,6 +765,9 @@ struct IMGUI_API ImDrawListSharedData ImVec4 ClipRectFullscreen; // Value for PushClipRectFullscreen() ImDrawListFlags InitialFlags; // Initial flags at the beginning of the frame (it is possible to alter flags on a per-drawlist basis afterwards) + // [Internal] Temp write buffer + ImVector TempBuffer; + // [Internal] Lookup tables ImVec2 ArcFastVtx[IM_DRAWLIST_ARCFAST_TABLE_SIZE]; // Sample points on the quarter of the circle. float ArcFastRadiusCutoff; // Cutoff radius after which arc drawing will fallback to slower PathArcTo() @@ -802,24 +792,32 @@ struct ImDrawDataBuilder // [SECTION] Widgets support: flags, enums, data structures //----------------------------------------------------------------------------- -// Transient per-window flags, reset at the beginning of the frame. For child window, inherited from parent on first Begin(). +// Flags used by upcoming items +// - input: PushItemFlag() manipulates g.CurrentItemFlags, ItemAdd() calls may add extra flags. +// - output: stored in g.LastItemData.InFlags +// Current window shared by all windows. // This is going to be exposed in imgui.h when stabilized enough. enum ImGuiItemFlags_ { + // Controlled by user ImGuiItemFlags_None = 0, - ImGuiItemFlags_NoTabStop = 1 << 0, // false // Disable keyboard tabbing (FIXME: should merge with _NoNav) + ImGuiItemFlags_NoTabStop = 1 << 0, // false // Disable keyboard tabbing. This is a "lighter" version of ImGuiItemFlags_NoNav. ImGuiItemFlags_ButtonRepeat = 1 << 1, // false // Button() will return true multiple times based on io.KeyRepeatDelay and io.KeyRepeatRate settings. ImGuiItemFlags_Disabled = 1 << 2, // false // Disable interactions but doesn't affect visuals. See BeginDisabled()/EndDisabled(). See github.com/ocornut/imgui/issues/211 - ImGuiItemFlags_NoNav = 1 << 3, // false // Disable keyboard/gamepad directional navigation (FIXME: should merge with _NoTabStop) + ImGuiItemFlags_NoNav = 1 << 3, // false // Disable any form of focusing (keyboard/gamepad directional navigation and SetKeyboardFocusHere() calls) ImGuiItemFlags_NoNavDefaultFocus = 1 << 4, // false // Disable item being a candidate for default focus (e.g. used by title bar items) ImGuiItemFlags_SelectableDontClosePopup = 1 << 5, // false // Disable MenuItem/Selectable() automatically closing their popup window ImGuiItemFlags_MixedValue = 1 << 6, // false // [BETA] Represent a mixed/indeterminate value, generally multi-selection where values differ. Currently only supported by Checkbox() (later should support all sorts of widgets) ImGuiItemFlags_ReadOnly = 1 << 7, // false // [ALPHA] Allow hovering interactions but underlying value is not changed. - ImGuiItemFlags_Inputable = 1 << 8, // false // [WIP] Auto-activate input mode when tab focused. Currently only used and supported by a few items before it becomes a generic feature. - ImGuiItemFlags_NoInertialScroll = 1 << 9 // false // Disable inertial scroll when activated + ImGuiItemFlags_NoWindowHoverableCheck = 1 << 8, // false // Disable hoverable check in ItemHoverable() + + // Controlled by widget code + ImGuiItemFlags_Inputable = 1 << 10, // false // [WIP] Auto-activate input mode when tab focused. Currently only used and supported by a few items before it becomes a generic feature. + ImGuiItemFlags_NoInertialScroll = 1 << 11, // false // Disable inertial scroll when activated }; -// Storage for LastItem data +// Status flags for an already submitted item +// - output: stored in g.LastItemData.StatusFlags enum ImGuiItemStatusFlags_ { ImGuiItemStatusFlags_None = 0, @@ -831,14 +829,16 @@ enum ImGuiItemStatusFlags_ ImGuiItemStatusFlags_HasDeactivated = 1 << 5, // Set if the widget/group is able to provide data for the ImGuiItemStatusFlags_Deactivated flag. ImGuiItemStatusFlags_Deactivated = 1 << 6, // Only valid if ImGuiItemStatusFlags_HasDeactivated is set. ImGuiItemStatusFlags_HoveredWindow = 1 << 7, // Override the HoveredWindow test to allow cross-window hover testing. - ImGuiItemStatusFlags_FocusedByTabbing = 1 << 8 // Set when the Focusable item just got focused by Tabbing (FIXME: to be removed soon) + ImGuiItemStatusFlags_FocusedByTabbing = 1 << 8, // Set when the Focusable item just got focused by Tabbing (FIXME: to be removed soon) + ImGuiItemStatusFlags_Visible = 1 << 9, // [WIP] Set when item is overlapping the current clipping rectangle (Used internally. Please don't use yet: API/system will change as we refactor Itemadd()). + // Additional status + semantic for ImGuiTestEngine #ifdef IMGUI_ENABLE_TEST_ENGINE - , // [imgui_tests only] ImGuiItemStatusFlags_Openable = 1 << 20, // Item is an openable (e.g. TreeNode) - ImGuiItemStatusFlags_Opened = 1 << 21, // + ImGuiItemStatusFlags_Opened = 1 << 21, // Opened status ImGuiItemStatusFlags_Checkable = 1 << 22, // Item is a checkable (e.g. CheckBox, MenuItem) - ImGuiItemStatusFlags_Checked = 1 << 23 // + ImGuiItemStatusFlags_Checked = 1 << 23, // Checked status + ImGuiItemStatusFlags_Inputable = 1 << 24, // Item is a text-inputable (e.g. InputText, SliderXXX, DragXXX) #endif }; @@ -848,7 +848,7 @@ enum ImGuiInputTextFlagsPrivate_ // [Internal] ImGuiInputTextFlags_Multiline = 1 << 26, // For internal use by InputTextMultiline() ImGuiInputTextFlags_NoMarkEdited = 1 << 27, // For internal use by functions using InputText() before reformatting data - ImGuiInputTextFlags_MergedItem = 1 << 28 // For internal use by TempInputText(), will skip calling ItemAdd(). Require bounding-box to strictly match. + ImGuiInputTextFlags_MergedItem = 1 << 28, // For internal use by TempInputText(), will skip calling ItemAdd(). Require bounding-box to strictly match. }; // Extend ImGuiButtonFlags_ @@ -868,23 +868,25 @@ enum ImGuiButtonFlagsPrivate_ ImGuiButtonFlags_AlignTextBaseLine = 1 << 15, // vertically align button to match text baseline - ButtonEx() only // FIXME: Should be removed and handled by SmallButton(), not possible currently because of DC.CursorPosPrevLine ImGuiButtonFlags_NoKeyModifiers = 1 << 16, // disable mouse interaction if a key modifier is held ImGuiButtonFlags_NoHoldingActiveId = 1 << 17, // don't set ActiveId while holding the mouse (ImGuiButtonFlags_PressedOnClick only) - ImGuiButtonFlags_NoNavFocus = 1 << 18, // don't override navigation focus when activated + ImGuiButtonFlags_NoNavFocus = 1 << 18, // don't override navigation focus when activated (FIXME: this is essentially used everytime an item uses ImGuiItemFlags_NoNav, but because legacy specs don't requires LastItemData to be set ButtonBehavior(), we can't poll g.LastItemData.InFlags) ImGuiButtonFlags_NoHoveredOnFocus = 1 << 19, // don't report as hovered when nav focus is on this item + ImGuiButtonFlags_NoSetKeyOwner = 1 << 20, // don't set key/input owner on the initial click (note: mouse buttons are keys! often, the key in question will be ImGuiKey_MouseLeft!) + ImGuiButtonFlags_NoTestKeyOwner = 1 << 21, // don't test key/input owner when polling the key (note: mouse buttons are keys! often, the key in question will be ImGuiKey_MouseLeft!) ImGuiButtonFlags_PressedOnMask_ = ImGuiButtonFlags_PressedOnClick | ImGuiButtonFlags_PressedOnClickRelease | ImGuiButtonFlags_PressedOnClickReleaseAnywhere | ImGuiButtonFlags_PressedOnRelease | ImGuiButtonFlags_PressedOnDoubleClick | ImGuiButtonFlags_PressedOnDragDropHold, - ImGuiButtonFlags_PressedOnDefault_ = ImGuiButtonFlags_PressedOnClickRelease + ImGuiButtonFlags_PressedOnDefault_ = ImGuiButtonFlags_PressedOnClickRelease, }; // Extend ImGuiComboFlags_ enum ImGuiComboFlagsPrivate_ { - ImGuiComboFlags_CustomPreview = 1 << 20 // enable BeginComboPreview() + ImGuiComboFlags_CustomPreview = 1 << 20, // enable BeginComboPreview() }; // Extend ImGuiSliderFlags_ enum ImGuiSliderFlagsPrivate_ { ImGuiSliderFlags_Vertical = 1 << 20, // Should this slider be orientated vertically? - ImGuiSliderFlags_ReadOnly = 1 << 21 + ImGuiSliderFlags_ReadOnly = 1 << 21, }; // Extend ImGuiSelectableFlags_ @@ -896,35 +898,45 @@ enum ImGuiSelectableFlagsPrivate_ ImGuiSelectableFlags_SelectOnClick = 1 << 22, // Override button behavior to react on Click (default is Click+Release) ImGuiSelectableFlags_SelectOnRelease = 1 << 23, // Override button behavior to react on Release (default is Click+Release) ImGuiSelectableFlags_SpanAvailWidth = 1 << 24, // Span all avail width even if we declared less for layout purpose. FIXME: We may be able to remove this (added in 6251d379, 2bcafc86 for menus) - ImGuiSelectableFlags_DrawHoveredWhenHeld = 1 << 25, // Always show active when held, even is not hovered. This concept could probably be renamed/formalized somehow. - ImGuiSelectableFlags_SetNavIdOnHover = 1 << 26, // Set Nav/Focus ID on mouse hover (used by MenuItem) - ImGuiSelectableFlags_NoPadWithHalfSpacing = 1 << 27 // Disable padding each side with ItemSpacing * 0.5f + ImGuiSelectableFlags_SetNavIdOnHover = 1 << 25, // Set Nav/Focus ID on mouse hover (used by MenuItem) + ImGuiSelectableFlags_NoPadWithHalfSpacing = 1 << 26, // Disable padding each side with ItemSpacing * 0.5f + ImGuiSelectableFlags_NoSetKeyOwner = 1 << 27, // Don't set key/input owner on the initial click (note: mouse buttons are keys! often, the key in question will be ImGuiKey_MouseLeft!) }; // Extend ImGuiTreeNodeFlags_ enum ImGuiTreeNodeFlagsPrivate_ { - ImGuiTreeNodeFlags_ClipLabelForTrailingButton = 1 << 20 + ImGuiTreeNodeFlags_ClipLabelForTrailingButton = 1 << 20, }; enum ImGuiSeparatorFlags_ { - ImGuiSeparatorFlags_None = 0, - ImGuiSeparatorFlags_Horizontal = 1 << 0, // Axis default to current layout type, so generally Horizontal unless e.g. in a menu bar - ImGuiSeparatorFlags_Vertical = 1 << 1, - ImGuiSeparatorFlags_SpanAllColumns = 1 << 2 + ImGuiSeparatorFlags_None = 0, + ImGuiSeparatorFlags_Horizontal = 1 << 0, // Axis default to current layout type, so generally Horizontal unless e.g. in a menu bar + ImGuiSeparatorFlags_Vertical = 1 << 1, + ImGuiSeparatorFlags_SpanAllColumns = 1 << 2, // Make separator cover all columns of a legacy Columns() set. +}; + +// Flags for FocusWindow(). This is not called ImGuiFocusFlags to avoid confusion with public-facing ImGuiFocusedFlags. +// FIXME: Once we finishing replacing more uses of GetTopMostPopupModal()+IsWindowWithinBeginStackOf() +// and FindBlockingModal() with this, we may want to change the flag to be opt-out instead of opt-in. +enum ImGuiFocusRequestFlags_ +{ + ImGuiFocusRequestFlags_None = 0, + ImGuiFocusRequestFlags_RestoreFocusedChild = 1 << 0, // Find last focused child (if any) and focus it instead. + ImGuiFocusRequestFlags_UnlessBelowModal = 1 << 1, // Do not set focus if the window is below a modal. }; enum ImGuiTextFlags_ { - ImGuiTextFlags_None = 0, - ImGuiTextFlags_NoWidthForLargeClippedText = 1 << 0 + ImGuiTextFlags_None = 0, + ImGuiTextFlags_NoWidthForLargeClippedText = 1 << 0, }; enum ImGuiTooltipFlags_ { - ImGuiTooltipFlags_None = 0, - ImGuiTooltipFlags_OverridePreviousTooltip = 1 << 0 // Override will clear/ignore previously submitted tooltip (defaults to append) + ImGuiTooltipFlags_None = 0, + ImGuiTooltipFlags_OverridePreviousTooltip = 1 << 0, // Override will clear/ignore previously submitted tooltip (defaults to append) }; // FIXME: this is in development, not exposed/functional as a generic feature yet. @@ -941,7 +953,7 @@ enum ImGuiLogType ImGuiLogType_TTY, ImGuiLogType_File, ImGuiLogType_Buffer, - ImGuiLogType_Clipboard + ImGuiLogType_Clipboard, }; // X/Y enums are fixed to 0/1 so they may be used to index ImVec2 @@ -955,14 +967,22 @@ enum ImGuiAxis enum ImGuiPlotType { ImGuiPlotType_Lines, - ImGuiPlotType_Histogram + ImGuiPlotType_Histogram, }; enum ImGuiPopupPositionPolicy { ImGuiPopupPositionPolicy_Default, ImGuiPopupPositionPolicy_ComboBox, - ImGuiPopupPositionPolicy_Tooltip + ImGuiPopupPositionPolicy_Tooltip, +}; + +struct ImGuiDataVarInfo +{ + ImGuiDataType Type; + ImU32 Count; // 1+ + ImU32 Offset; // Offset in parent structure + void* GetVarPtr(void* parent) const { return (void*)((unsigned char*)parent + Offset); } }; struct ImGuiDataTypeTempStorage @@ -984,7 +1004,7 @@ enum ImGuiDataTypePrivate_ { ImGuiDataType_String = ImGuiDataType_COUNT + 1, ImGuiDataType_Pointer, - ImGuiDataType_ID + ImGuiDataType_ID, }; // Stacked color modifier, backup of modified data so we can restore it @@ -1051,10 +1071,20 @@ struct IMGUI_API ImGuiMenuColumns void CalcNextTotalWidth(bool update_offsets); }; +// Internal temporary state for deactivating InputText() instances. +struct IMGUI_API ImGuiInputTextDeactivatedState +{ + ImGuiID ID; // widget id owning the text state (which just got deactivated) + ImVector TextA; // text buffer + + ImGuiInputTextDeactivatedState() { memset(this, 0, sizeof(*this)); } + void ClearFreeMemory() { ID = 0; TextA.clear(); } +}; // Internal state of the currently focused/edited text input box // For a given item ID, access with ImGui::GetInputTextState() struct IMGUI_API ImGuiInputTextState { + ImGuiContext* Ctx; // parent UI context (needs to be set explicitly by parent). ImGuiID ID; // widget id owning the text state int CurLenW, CurLenA; // we need to maintain our buffer length in both UTF-8 and wchar format. UTF-8 length is valid even if TextA is not. ImVector TextW; // edit buffer, we need to persist but can't guarantee the persistence of the user-provided buffer. so we copy into own buffer. @@ -1068,7 +1098,7 @@ struct IMGUI_API ImGuiInputTextState bool CursorFollow; // set when we want scrolling to follow the current cursor position (not always!) bool SelectedAllMouseLock; // after a double-click to select all, we ignore further mouse drags to update selection bool Edited; // edited this frame - ImGuiInputTextFlags Flags; // copy of InputText() flags + ImGuiInputTextFlags Flags; // copy of InputText() flags. may be used to check if e.g. ImGuiInputTextFlags_Password is set. ImGuiInputTextState() { memset(this, 0, sizeof(*this)); } void ClearText() { CurLenW = CurLenA = 0; TextW[0] = 0; TextA[0] = 0; CursorClamp(); } @@ -1093,13 +1123,14 @@ struct ImGuiPopupData { ImGuiID PopupId; // Set on OpenPopup() ImGuiWindow* Window; // Resolved on BeginPopup() - may stay unresolved if user never calls OpenPopup() - ImGuiWindow* SourceWindow; // Set on OpenPopup() copy of NavWindow at the time of opening the popup + ImGuiWindow* BackupNavWindow;// Set on OpenPopup(), a NavWindow that will be restored on popup close + int ParentNavLayer; // Resolved on BeginPopup(). Actually a ImGuiNavLayer type (declared down below), initialized to -1 which is not part of an enum, but serves well-enough as "not any of layers" value int OpenFrameCount; // Set on OpenPopup() ImGuiID OpenParentId; // Set on OpenPopup(), we need this to differentiate multiple menu sets from each others (e.g. inside menu bar vs loose menu items) ImVec2 OpenPopupPos; // Set on OpenPopup(), preferred popup position (typically == OpenMousePos when using mouse) ImVec2 OpenMousePos; // Set on OpenPopup(), copy of mouse position at the time of opening popup - ImGuiPopupData() { memset(this, 0, sizeof(*this)); OpenFrameCount = -1; } + ImGuiPopupData() { memset(this, 0, sizeof(*this)); ParentNavLayer = OpenFrameCount = -1; } }; enum ImGuiNextWindowDataFlags_ @@ -1115,7 +1146,7 @@ enum ImGuiNextWindowDataFlags_ ImGuiNextWindowDataFlags_HasScroll = 1 << 7, ImGuiNextWindowDataFlags_HasViewport = 1 << 8, ImGuiNextWindowDataFlags_HasDock = 1 << 9, - ImGuiNextWindowDataFlags_HasWindowClass = 1 << 10 + ImGuiNextWindowDataFlags_HasWindowClass = 1 << 10, }; // Storage for SetNexWindow** functions @@ -1150,7 +1181,7 @@ enum ImGuiNextItemDataFlags_ { ImGuiNextItemDataFlags_None = 0, ImGuiNextItemDataFlags_HasWidth = 1 << 0, - ImGuiNextItemDataFlags_HasOpen = 1 << 1 + ImGuiNextItemDataFlags_HasOpen = 1 << 1, }; struct ImGuiNextItemData @@ -1191,8 +1222,8 @@ struct IMGUI_API ImGuiStackSizes short SizeOfDisabledStack; ImGuiStackSizes() { memset(this, 0, sizeof(*this)); } - void SetToCurrentState(); - void CompareWithCurrentState(); + void SetToContextState(ImGuiContext* ctx); + void CompareWithContextState(ImGuiContext* ctx); }; // Data saved for each window pushed into the stack @@ -1207,6 +1238,7 @@ struct ImGuiShrinkWidthItem { int Index; float Width; + float InitialWidth; }; struct ImGuiPtrOrIndex @@ -1222,15 +1254,30 @@ struct ImGuiPtrOrIndex // [SECTION] Inputs support //----------------------------------------------------------------------------- +// Bit array for named keys typedef ImBitArray ImBitArrayForNamedKeys; -enum ImGuiKeyPrivate_ -{ - ImGuiKey_LegacyNativeKey_BEGIN = 0, - ImGuiKey_LegacyNativeKey_END = 512, - ImGuiKey_Gamepad_BEGIN = ImGuiKey_GamepadStart, - ImGuiKey_Gamepad_END = ImGuiKey_GamepadRStickRight + 1 -}; +// [Internal] Key ranges +#define ImGuiKey_LegacyNativeKey_BEGIN 0 +#define ImGuiKey_LegacyNativeKey_END 512 +#define ImGuiKey_Keyboard_BEGIN (ImGuiKey_NamedKey_BEGIN) +#define ImGuiKey_Keyboard_END (ImGuiKey_GamepadStart) +#define ImGuiKey_Gamepad_BEGIN (ImGuiKey_GamepadStart) +#define ImGuiKey_Gamepad_END (ImGuiKey_GamepadRStickDown + 1) +#define ImGuiKey_Mouse_BEGIN (ImGuiKey_MouseLeft) +#define ImGuiKey_Mouse_END (ImGuiKey_MouseWheelY + 1) +#define ImGuiKey_Aliases_BEGIN (ImGuiKey_Mouse_BEGIN) +#define ImGuiKey_Aliases_END (ImGuiKey_Mouse_END) + +// [Internal] Named shortcuts for Navigation +#define ImGuiKey_NavKeyboardTweakSlow ImGuiMod_Ctrl +#define ImGuiKey_NavKeyboardTweakFast ImGuiMod_Shift +#define ImGuiKey_NavGamepadTweakSlow ImGuiKey_GamepadL1 +#define ImGuiKey_NavGamepadTweakFast ImGuiKey_GamepadR1 +#define ImGuiKey_NavGamepadActivate ImGuiKey_GamepadFaceDown +#define ImGuiKey_NavGamepadCancel ImGuiKey_GamepadFaceRight +#define ImGuiKey_NavGamepadMenu ImGuiKey_GamepadFaceLeft +#define ImGuiKey_NavGamepadInput ImGuiKey_GamepadFaceUp enum ImGuiInputEventType { @@ -1248,19 +1295,18 @@ enum ImGuiInputEventType enum ImGuiInputSource { ImGuiInputSource_None = 0, - ImGuiInputSource_Mouse, + ImGuiInputSource_Mouse, // Note: may be Mouse or TouchScreen or Pen. See io.MouseSource to distinguish them. ImGuiInputSource_Keyboard, ImGuiInputSource_Gamepad, ImGuiInputSource_Clipboard, // Currently only used by InputText() - ImGuiInputSource_Nav, // Stored in g.ActiveIdSource only ImGuiInputSource_COUNT }; // FIXME: Structures in the union below need to be declared as anonymous unions appears to be an extension? // Using ImVec2() would fail on Clang 'union member 'MousePos' has a non-trivial default constructor' -struct ImGuiInputEventMousePos { float PosX, PosY; }; -struct ImGuiInputEventMouseWheel { float WheelX, WheelY; }; -struct ImGuiInputEventMouseButton { int Button; bool Down; }; +struct ImGuiInputEventMousePos { float PosX, PosY; ImGuiMouseSource MouseSource; }; +struct ImGuiInputEventMouseWheel { float WheelX, WheelY; ImGuiMouseSource MouseSource; }; +struct ImGuiInputEventMouseButton { int Button; bool Down; ImGuiMouseSource MouseSource; }; struct ImGuiInputEventMouseViewport { ImGuiID HoveredViewportID; }; struct ImGuiInputEventKey { ImGuiKey Key; bool Down; float AnalogValue; }; struct ImGuiInputEventText { unsigned int Char; }; @@ -1270,6 +1316,7 @@ struct ImGuiInputEvent { ImGuiInputEventType Type; ImGuiInputSource Source; + ImU32 EventId; // Unique, sequential increasing integer to identify an event (if you need to correlate them to other data). union { ImGuiInputEventMousePos MousePos; // if Type == ImGuiInputEventType_MousePos @@ -1285,21 +1332,101 @@ struct ImGuiInputEvent ImGuiInputEvent() { memset(this, 0, sizeof(*this)); } }; -// FIXME-NAV: Clarify/expose various repeat delay/rate -enum ImGuiNavReadMode +// Input function taking an 'ImGuiID owner_id' argument defaults to (ImGuiKeyOwner_Any == 0) aka don't test ownership, which matches legacy behavior. +#define ImGuiKeyOwner_Any ((ImGuiID)0) // Accept key that have an owner, UNLESS a call to SetKeyOwner() explicitly used ImGuiInputFlags_LockThisFrame or ImGuiInputFlags_LockUntilRelease. +#define ImGuiKeyOwner_None ((ImGuiID)-1) // Require key to have no owner. + +typedef ImS16 ImGuiKeyRoutingIndex; + +// Routing table entry (sizeof() == 16 bytes) +struct ImGuiKeyRoutingData { - ImGuiNavReadMode_Down, - ImGuiNavReadMode_Pressed, - ImGuiNavReadMode_Released, - ImGuiNavReadMode_Repeat, - ImGuiNavReadMode_RepeatSlow, - ImGuiNavReadMode_RepeatFast + ImGuiKeyRoutingIndex NextEntryIndex; + ImU16 Mods; // Technically we'd only need 4-bits but for simplify we store ImGuiMod_ values which need 16-bits. ImGuiMod_Shortcut is already translated to Ctrl/Super. + ImU8 RoutingNextScore; // Lower is better (0: perfect score) + ImGuiID RoutingCurr; + ImGuiID RoutingNext; + + ImGuiKeyRoutingData() { NextEntryIndex = -1; Mods = 0; RoutingNextScore = 255; RoutingCurr = RoutingNext = ImGuiKeyOwner_None; } +}; + +// Routing table: maintain a desired owner for each possible key-chord (key + mods), and setup owner in NewFrame() when mods are matching. +// Stored in main context (1 instance) +struct ImGuiKeyRoutingTable +{ + ImGuiKeyRoutingIndex Index[ImGuiKey_NamedKey_COUNT]; // Index of first entry in Entries[] + ImVector Entries; + ImVector EntriesNext; // Double-buffer to avoid reallocation (could use a shared buffer) + + ImGuiKeyRoutingTable() { Clear(); } + void Clear() { for (int n = 0; n < IM_ARRAYSIZE(Index); n++) Index[n] = -1; Entries.clear(); EntriesNext.clear(); } +}; + +// This extends ImGuiKeyData but only for named keys (legacy keys don't support the new features) +// Stored in main context (1 per named key). In the future it might be merged into ImGuiKeyData. +struct ImGuiKeyOwnerData +{ + ImGuiID OwnerCurr; + ImGuiID OwnerNext; + bool LockThisFrame; // Reading this key requires explicit owner id (until end of frame). Set by ImGuiInputFlags_LockThisFrame. + bool LockUntilRelease; // Reading this key requires explicit owner id (until key is released). Set by ImGuiInputFlags_LockUntilRelease. When this is true LockThisFrame is always true as well. + + ImGuiKeyOwnerData() { OwnerCurr = OwnerNext = ImGuiKeyOwner_None; LockThisFrame = LockUntilRelease = false; } +}; + +// Flags for extended versions of IsKeyPressed(), IsMouseClicked(), Shortcut(), SetKeyOwner(), SetItemKeyOwner() +// Don't mistake with ImGuiInputTextFlags! (for ImGui::InputText() function) +enum ImGuiInputFlags_ +{ + // Flags for IsKeyPressed(), IsMouseClicked(), Shortcut() + ImGuiInputFlags_None = 0, + ImGuiInputFlags_Repeat = 1 << 0, // Return true on successive repeats. Default for legacy IsKeyPressed(). NOT Default for legacy IsMouseClicked(). MUST BE == 1. + ImGuiInputFlags_RepeatRateDefault = 1 << 1, // Repeat rate: Regular (default) + ImGuiInputFlags_RepeatRateNavMove = 1 << 2, // Repeat rate: Fast + ImGuiInputFlags_RepeatRateNavTweak = 1 << 3, // Repeat rate: Faster + ImGuiInputFlags_RepeatRateMask_ = ImGuiInputFlags_RepeatRateDefault | ImGuiInputFlags_RepeatRateNavMove | ImGuiInputFlags_RepeatRateNavTweak, + + // Flags for SetItemKeyOwner() + ImGuiInputFlags_CondHovered = 1 << 4, // Only set if item is hovered (default to both) + ImGuiInputFlags_CondActive = 1 << 5, // Only set if item is active (default to both) + ImGuiInputFlags_CondDefault_ = ImGuiInputFlags_CondHovered | ImGuiInputFlags_CondActive, + ImGuiInputFlags_CondMask_ = ImGuiInputFlags_CondHovered | ImGuiInputFlags_CondActive, + + // Flags for SetKeyOwner(), SetItemKeyOwner() + ImGuiInputFlags_LockThisFrame = 1 << 6, // Access to key data will require EXPLICIT owner ID (ImGuiKeyOwner_Any/0 will NOT accepted for polling). Cleared at end of frame. This is useful to make input-owner-aware code steal keys from non-input-owner-aware code. + ImGuiInputFlags_LockUntilRelease = 1 << 7, // Access to key data will require EXPLICIT owner ID (ImGuiKeyOwner_Any/0 will NOT accepted for polling). Cleared when the key is released or at end of each frame if key is released. This is useful to make input-owner-aware code steal keys from non-input-owner-aware code. + + // Routing policies for Shortcut() + low-level SetShortcutRouting() + // - The general idea is that several callers register interest in a shortcut, and only one owner gets it. + // - When a policy (other than _RouteAlways) is set, Shortcut() will register itself with SetShortcutRouting(), + // allowing the system to decide where to route the input among other route-aware calls. + // - Shortcut() uses ImGuiInputFlags_RouteFocused by default: meaning that a simple Shortcut() poll + // will register a route and only succeed when parent window is in the focus stack and if no-one + // with a higher priority is claiming the shortcut. + // - Using ImGuiInputFlags_RouteAlways is roughly equivalent to doing e.g. IsKeyPressed(key) + testing mods. + // - Priorities: GlobalHigh > Focused (when owner is active item) > Global > Focused (when focused window) > GlobalLow. + // - Can select only 1 policy among all available. + ImGuiInputFlags_RouteFocused = 1 << 8, // (Default) Register focused route: Accept inputs if window is in focus stack. Deep-most focused window takes inputs. ActiveId takes inputs over deep-most focused window. + ImGuiInputFlags_RouteGlobalLow = 1 << 9, // Register route globally (lowest priority: unless a focused window or active item registered the route) -> recommended Global priority. + ImGuiInputFlags_RouteGlobal = 1 << 10, // Register route globally (medium priority: unless an active item registered the route, e.g. CTRL+A registered by InputText). + ImGuiInputFlags_RouteGlobalHigh = 1 << 11, // Register route globally (highest priority: unlikely you need to use that: will interfere with every active items) + ImGuiInputFlags_RouteMask_ = ImGuiInputFlags_RouteFocused | ImGuiInputFlags_RouteGlobal | ImGuiInputFlags_RouteGlobalLow | ImGuiInputFlags_RouteGlobalHigh, // _Always not part of this! + ImGuiInputFlags_RouteAlways = 1 << 12, // Do not register route, poll keys directly. + ImGuiInputFlags_RouteUnlessBgFocused= 1 << 13, // Global routes will not be applied if underlying background/void is focused (== no Dear ImGui windows are focused). Useful for overlay applications. + ImGuiInputFlags_RouteExtraMask_ = ImGuiInputFlags_RouteAlways | ImGuiInputFlags_RouteUnlessBgFocused, + + // [Internal] Mask of which function support which flags + ImGuiInputFlags_SupportedByIsKeyPressed = ImGuiInputFlags_Repeat | ImGuiInputFlags_RepeatRateMask_, + ImGuiInputFlags_SupportedByShortcut = ImGuiInputFlags_Repeat | ImGuiInputFlags_RepeatRateMask_ | ImGuiInputFlags_RouteMask_ | ImGuiInputFlags_RouteExtraMask_, + ImGuiInputFlags_SupportedBySetKeyOwner = ImGuiInputFlags_LockThisFrame | ImGuiInputFlags_LockUntilRelease, + ImGuiInputFlags_SupportedBySetItemKeyOwner = ImGuiInputFlags_SupportedBySetKeyOwner | ImGuiInputFlags_CondMask_, }; //----------------------------------------------------------------------------- // [SECTION] Clipper support //----------------------------------------------------------------------------- +// Note that Max is exclusive, so perhaps should be using a Begin/End convention. struct ImGuiListClipperRange { int Min; @@ -1332,9 +1459,9 @@ struct ImGuiListClipperData enum ImGuiActivateFlags_ { ImGuiActivateFlags_None = 0, - ImGuiActivateFlags_PreferInput = 1 << 0, // Favor activation that requires keyboard text input (e.g. for Slider/Drag). Default if keyboard is available. - ImGuiActivateFlags_PreferTweak = 1 << 1, // Favor activation for tweaking with arrows or gamepad (e.g. for Slider/Drag). Default if keyboard is not available. - ImGuiActivateFlags_TryToPreserveState = 1 << 2 // Request widget to preserve state if it can (e.g. InputText will try to preserve cursor/selection) + ImGuiActivateFlags_PreferInput = 1 << 0, // Favor activation that requires keyboard text input (e.g. for Slider/Drag). Default for Enter key. + ImGuiActivateFlags_PreferTweak = 1 << 1, // Favor activation for tweaking with arrows or gamepad (e.g. for Slider/Drag). Default for Space key and if keyboard is not used. + ImGuiActivateFlags_TryToPreserveState = 1 << 2, // Request widget to preserve state if it can (e.g. InputText will try to preserve cursor/selection) }; // Early work-in-progress API for ScrollToItem() @@ -1349,7 +1476,7 @@ enum ImGuiScrollFlags_ ImGuiScrollFlags_AlwaysCenterY = 1 << 5, // Always center the result item on Y axis [default for Y axis for appearing window) ImGuiScrollFlags_NoScrollParent = 1 << 6, // Disable forwarding scrolling to parent window if required to keep item/rect visible (only scroll window the function was applied to). ImGuiScrollFlags_MaskX_ = ImGuiScrollFlags_KeepVisibleEdgeX | ImGuiScrollFlags_KeepVisibleCenterX | ImGuiScrollFlags_AlwaysCenterX, - ImGuiScrollFlags_MaskY_ = ImGuiScrollFlags_KeepVisibleEdgeY | ImGuiScrollFlags_KeepVisibleCenterY | ImGuiScrollFlags_AlwaysCenterY + ImGuiScrollFlags_MaskY_ = ImGuiScrollFlags_KeepVisibleEdgeY | ImGuiScrollFlags_KeepVisibleCenterY | ImGuiScrollFlags_AlwaysCenterY, }; enum ImGuiNavHighlightFlags_ @@ -1358,16 +1485,7 @@ enum ImGuiNavHighlightFlags_ ImGuiNavHighlightFlags_TypeDefault = 1 << 0, ImGuiNavHighlightFlags_TypeThin = 1 << 1, ImGuiNavHighlightFlags_AlwaysDraw = 1 << 2, // Draw rectangular highlight if (g.NavId == id) _even_ when using the mouse. - ImGuiNavHighlightFlags_NoRounding = 1 << 3 -}; - -enum ImGuiNavDirSourceFlags_ -{ - ImGuiNavDirSourceFlags_None = 0, - ImGuiNavDirSourceFlags_RawKeyboard = 1 << 0, // Raw keyboard (not pulled from nav), facilitate use of some functions before we can unify nav and keys - ImGuiNavDirSourceFlags_Keyboard = 1 << 1, - ImGuiNavDirSourceFlags_PadDPad = 1 << 2, - ImGuiNavDirSourceFlags_PadLStick = 1 << 3 + ImGuiNavHighlightFlags_NoRounding = 1 << 3, }; enum ImGuiNavMoveFlags_ @@ -1377,6 +1495,7 @@ enum ImGuiNavMoveFlags_ ImGuiNavMoveFlags_LoopY = 1 << 1, ImGuiNavMoveFlags_WrapX = 1 << 2, // On failed request, request from opposite side one line down (when NavDir==right) or one line up (when NavDir==left) ImGuiNavMoveFlags_WrapY = 1 << 3, // This is not super useful but provided for completeness + ImGuiNavMoveFlags_WrapMask_ = ImGuiNavMoveFlags_LoopX | ImGuiNavMoveFlags_LoopY | ImGuiNavMoveFlags_WrapX | ImGuiNavMoveFlags_WrapY, ImGuiNavMoveFlags_AllowCurrentNavId = 1 << 4, // Allow scoring and considering the current NavId as a move target candidate. This is used when the move source is offset (e.g. pressing PageDown actually needs to send a Up move request, if we are pressing PageDown from the bottom-most item we need to stay in place) ImGuiNavMoveFlags_AlsoScoreVisibleSet = 1 << 5, // Store alternate result in NavMoveResultLocalVisible that only comprise elements that are already fully visible (used by PageUp/PageDown) ImGuiNavMoveFlags_ScrollToEdgeY = 1 << 6, // Force scrolling to min/max (used by Home/End) // FIXME-NAV: Aim to remove or reword, probably unnecessary @@ -1385,13 +1504,13 @@ enum ImGuiNavMoveFlags_ ImGuiNavMoveFlags_FocusApi = 1 << 9, ImGuiNavMoveFlags_Tabbing = 1 << 10, // == Focus + Activate if item is Inputable + DontChangeNavHighlight ImGuiNavMoveFlags_Activate = 1 << 11, - ImGuiNavMoveFlags_DontSetNavHighlight = 1 << 12 // Do not alter the visible state of keyboard vs mouse nav highlight + ImGuiNavMoveFlags_DontSetNavHighlight = 1 << 12, // Do not alter the visible state of keyboard vs mouse nav highlight }; enum ImGuiNavLayer { ImGuiNavLayer_Main = 0, // Main scrolling layer - ImGuiNavLayer_Menu = 1, // Menu layer (access with Alt/ImGuiNavInput_Menu) + ImGuiNavLayer_Menu = 1, // Menu layer (access with Alt) ImGuiNavLayer_COUNT }; @@ -1422,24 +1541,24 @@ enum ImGuiOldColumnFlags_ ImGuiOldColumnFlags_NoResize = 1 << 1, // Disable resizing columns when clicking on the dividers ImGuiOldColumnFlags_NoPreserveWidths = 1 << 2, // Disable column width preservation when adjusting columns ImGuiOldColumnFlags_NoForceWithinWindow = 1 << 3, // Disable forcing columns to fit within window - ImGuiOldColumnFlags_GrowParentContentsSize = 1 << 4 // (WIP) Restore pre-1.51 behavior of extending the parent window contents size but _without affecting the columns width at all_. Will eventually remove. + ImGuiOldColumnFlags_GrowParentContentsSize = 1 << 4, // (WIP) Restore pre-1.51 behavior of extending the parent window contents size but _without affecting the columns width at all_. Will eventually remove. // Obsolete names (will be removed) #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - , ImGuiColumnsFlags_None = ImGuiOldColumnFlags_None, + ImGuiColumnsFlags_None = ImGuiOldColumnFlags_None, ImGuiColumnsFlags_NoBorder = ImGuiOldColumnFlags_NoBorder, ImGuiColumnsFlags_NoResize = ImGuiOldColumnFlags_NoResize, ImGuiColumnsFlags_NoPreserveWidths = ImGuiOldColumnFlags_NoPreserveWidths, ImGuiColumnsFlags_NoForceWithinWindow = ImGuiOldColumnFlags_NoForceWithinWindow, - ImGuiColumnsFlags_GrowParentContentsSize = ImGuiOldColumnFlags_GrowParentContentsSize + ImGuiColumnsFlags_GrowParentContentsSize = ImGuiOldColumnFlags_GrowParentContentsSize, #endif }; struct ImGuiOldColumnData { - float OffsetNorm; // Column start offset, normalized 0.0 (far left) -> 1.0 (far right) + float OffsetNorm; // Column start offset, normalized 0.0 (far left) -> 1.0 (far right) float OffsetNormBeforeResize; - ImGuiOldColumnFlags Flags; // Not exposed + ImGuiOldColumnFlags Flags; // Not exposed ImRect ClipRect; ImGuiOldColumnData() { memset(this, 0, sizeof(*this)); } @@ -1478,6 +1597,9 @@ struct ImGuiOldColumns // [SECTION] Docking support //----------------------------------------------------------------------------- +#define DOCKING_HOST_DRAW_CHANNEL_BG 0 // Dock host: background fill +#define DOCKING_HOST_DRAW_CHANNEL_FG 1 // Dock host: decorations and contents + #ifdef IMGUI_HAS_DOCK // Extend ImGuiDockNodeFlags_ @@ -1510,7 +1632,7 @@ enum ImGuiDataAuthority_ { ImGuiDataAuthority_Auto, ImGuiDataAuthority_DockNode, - ImGuiDataAuthority_Window + ImGuiDataAuthority_Window, }; enum ImGuiDockNodeState @@ -1518,7 +1640,7 @@ enum ImGuiDockNodeState ImGuiDockNodeState_Unknown, ImGuiDockNodeState_HostWindowHiddenBecauseSingleWindow, ImGuiDockNodeState_HostWindowHiddenBecauseWindowsAreResizing, - ImGuiDockNodeState_HostWindowVisible + ImGuiDockNodeState_HostWindowVisible, }; // sizeof() 156~192 @@ -1623,16 +1745,16 @@ struct ImGuiDockContext // Every instance of ImGuiViewport is in fact a ImGuiViewportP. struct ImGuiViewportP : public ImGuiViewport { + ImGuiWindow* Window; // Set when the viewport is owned by a window (and ImGuiViewportFlags_CanHostOtherWindows is NOT set) int Idx; int LastFrameActive; // Last frame number this viewport was activated by a window - int LastFrontMostStampCount;// Last stamp number from when a window hosted by this viewport was made front-most (by comparing this value between two viewport we have an implicit viewport z-order + int LastFocusedStampCount; // Last stamp number from when a window hosted by this viewport was focused (by comparing this value between two viewport we have an implicit viewport z-order we use as fallback) ImGuiID LastNameHash; ImVec2 LastPos; float Alpha; // Window opacity (when dragging dockable windows/viewports we make them transparent) float LastAlpha; + bool LastFocusedHadNavWindow;// Instead of maintaining a LastFocusedWindow (which may harder to correctly maintain), we merely store weither NavWindow != NULL last time the viewport was focused. short PlatformMonitor; - bool PlatformWindowCreated; - ImGuiWindow* Window; // Set when the viewport is owned by a window (and ImGuiViewportFlags_CanHostOtherWindows is NOT set) int DrawListsLastFrame[2]; // Last frame number the background (0) and foreground (1) draw lists were used ImDrawList* DrawLists[2]; // Convenience background (0) and foreground (1) draw lists. We use them to draw software mouser cursor when io.MouseDrawCursor is set and to draw most debug overlays. ImDrawData DrawDataP; @@ -1645,7 +1767,7 @@ struct ImGuiViewportP : public ImGuiViewport ImVec2 BuildWorkOffsetMin; // Work Area: Offset being built during current frame. Generally >= 0.0f. ImVec2 BuildWorkOffsetMax; // Work Area: Offset being built during current frame. Generally <= 0.0f. - ImGuiViewportP() { Idx = -1; LastFrameActive = DrawListsLastFrame[0] = DrawListsLastFrame[1] = LastFrontMostStampCount = -1; LastNameHash = 0; Alpha = LastAlpha = 1.0f; PlatformMonitor = -1; PlatformWindowCreated = false; Window = NULL; DrawLists[0] = DrawLists[1] = NULL; LastPlatformPos = LastPlatformSize = LastRendererSize = ImVec2(FLT_MAX, FLT_MAX); } + ImGuiViewportP() { Window = NULL; Idx = -1; LastFrameActive = DrawListsLastFrame[0] = DrawListsLastFrame[1] = LastFocusedStampCount = -1; LastNameHash = 0; Alpha = LastAlpha = 1.0f; LastFocusedHadNavWindow = false; PlatformMonitor = -1; DrawLists[0] = DrawLists[1] = NULL; LastPlatformPos = LastPlatformSize = LastRendererSize = ImVec2(FLT_MAX, FLT_MAX); } ~ImGuiViewportP() { if (DrawLists[0]) IM_DELETE(DrawLists[0]); if (DrawLists[1]) IM_DELETE(DrawLists[1]); } void ClearRequestFlags() { PlatformRequestClose = PlatformRequestMove = PlatformRequestResize = false; } @@ -1679,6 +1801,7 @@ struct ImGuiWindowSettings short DockOrder; // Order of the last time the window was visible within its DockNode. This is used to reorder windows that are reappearing on the same frame. Same value between windows that were active and windows that were none are possible. bool Collapsed; bool WantApply; // Set when loaded from .ini data (to enable merging/loading .ini data into an already running context) + bool WantDelete; // Set to invalidate/delete the settings entry ImGuiWindowSettings() { memset(this, 0, sizeof(*this)); DockOrder = -1; } char* GetName() { return (char*)(this + 1); } @@ -1699,34 +1822,65 @@ struct ImGuiSettingsHandler ImGuiSettingsHandler() { memset(this, 0, sizeof(*this)); } }; +//----------------------------------------------------------------------------- +// [SECTION] Localization support +//----------------------------------------------------------------------------- + +// This is experimental and not officially supported, it'll probably fall short of features, if/when it does we may backtrack. +enum ImGuiLocKey : int +{ + ImGuiLocKey_TableSizeOne, + ImGuiLocKey_TableSizeAllFit, + ImGuiLocKey_TableSizeAllDefault, + ImGuiLocKey_TableResetOrder, + ImGuiLocKey_WindowingMainMenuBar, + ImGuiLocKey_WindowingPopup, + ImGuiLocKey_WindowingUntitled, + ImGuiLocKey_DockingHideTabBar, + ImGuiLocKey_COUNT +}; + +struct ImGuiLocEntry +{ + ImGuiLocKey Key; + const char* Text; +}; + + //----------------------------------------------------------------------------- // [SECTION] Metrics, Debug Tools //----------------------------------------------------------------------------- +enum ImGuiDebugLogFlags_ +{ + // Event types + ImGuiDebugLogFlags_None = 0, + ImGuiDebugLogFlags_EventActiveId = 1 << 0, + ImGuiDebugLogFlags_EventFocus = 1 << 1, + ImGuiDebugLogFlags_EventPopup = 1 << 2, + ImGuiDebugLogFlags_EventNav = 1 << 3, + ImGuiDebugLogFlags_EventClipper = 1 << 4, + ImGuiDebugLogFlags_EventSelection = 1 << 5, + ImGuiDebugLogFlags_EventIO = 1 << 6, + ImGuiDebugLogFlags_EventDocking = 1 << 7, + ImGuiDebugLogFlags_EventViewport = 1 << 8, + ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventIO | ImGuiDebugLogFlags_EventDocking | ImGuiDebugLogFlags_EventViewport, + ImGuiDebugLogFlags_OutputToTTY = 1 << 10, // Also send output to TTY +}; + struct ImGuiMetricsConfig { - bool ShowStackTool; - bool ShowWindowsRects; - bool ShowWindowsBeginOrder; - bool ShowTablesRects; - bool ShowDrawCmdMesh; - bool ShowDrawCmdBoundingBoxes; - bool ShowDockingNodes; - int ShowWindowsRectsType; - int ShowTablesRectsType; - - ImGuiMetricsConfig() - { - ShowStackTool = false; - ShowWindowsRects = false; - ShowWindowsBeginOrder = false; - ShowTablesRects = false; - ShowDrawCmdMesh = true; - ShowDrawCmdBoundingBoxes = true; - ShowDockingNodes = false; - ShowWindowsRectsType = -1; - ShowTablesRectsType = -1; - } + bool ShowDebugLog = false; + bool ShowStackTool = false; + bool ShowWindowsRects = false; + bool ShowWindowsBeginOrder = false; + bool ShowTablesRects = false; + bool ShowDrawCmdMesh = true; + bool ShowDrawCmdBoundingBoxes = true; + bool ShowAtlasTintedWithTextColor = false; + bool ShowDockingNodes = false; + int ShowWindowsRectsType = -1; + int ShowTablesRectsType = -1; }; struct ImGuiStackLevelInfo @@ -1781,8 +1935,6 @@ struct ImGuiContext bool FontAtlasOwnedByContext; // IO.Fonts-> is owned by the ImGuiContext and will be destructed along with it. ImGuiIO IO; ImGuiPlatformIO PlatformIO; - ImVector InputEventsQueue; // Input events which will be tricked/written into IO structure. - ImVector InputEventsTrail; // Past input events processed in NewFrame(). This is to allow domain-specific application to access e.g mouse/pen trail. ImGuiStyle Style; ImGuiConfigFlags ConfigFlagsCurrFrame; // = g.IO.ConfigFlags at the time of NewFrame() ImGuiConfigFlags ConfigFlagsLastFrame; @@ -1802,6 +1954,12 @@ struct ImGuiContext bool TestEngineHookItems; // Will call test engine hooks: ImGuiTestEngineHook_ItemAdd(), ImGuiTestEngineHook_ItemInfo(), ImGuiTestEngineHook_Log() void* TestEngine; // Test engine user data + // Inputs + ImVector InputEventsQueue; // Input events which will be trickled/written into IO structure. + ImVector InputEventsTrail; // Past input events processed in NewFrame(). This is to allow domain-specific application to access e.g mouse/pen trail. + ImGuiMouseSource InputEventsNextMouseSource; + ImU32 InputEventsNextEventId; + // Windows state ImVector Windows; // Windows, sorted in display order, back to front ImVector WindowsFocusOrder; // Root windows, sorted in focus order, back to front. @@ -1813,19 +1971,19 @@ struct ImGuiContext ImGuiWindow* CurrentWindow; // Window being drawn into ImGuiWindow* HoveredWindow; // Window the mouse is hovering. Will typically catch mouse inputs. ImGuiWindow* HoveredWindowUnderMovingWindow; // Hovered window ignoring MovingWindow. Only set if MovingWindow is set. - ImGuiDockNode* HoveredDockNode; // [Debug] Hovered dock node. ImGuiWindow* MovingWindow; // Track the window we clicked on (in order to preserve focus). The actual window that is moved is generally MovingWindow->RootWindowDockTree. ImGuiWindow* WheelingWindow; // Track the window we started mouse-wheeling on. Until a timer elapse or mouse has moved, generally keep scrolling the same window even if during the course of scrolling the mouse ends up hovering a child window. ImVec2 WheelingWindowRefMousePos; - float WheelingWindowTimer; + int WheelingWindowStartFrame; // This may be set one frame before WheelingWindow is != NULL + float WheelingWindowReleaseTimer; + ImVec2 WheelingWindowWheelRemainder; + ImVec2 WheelingAxisAvg; // Item/widgets state and tracking information ImGuiID DebugHookIdInfo; // Will call core hooks: DebugHookIdInfo() from GetID functions, used by Stack Tool [next HoveredId/ActiveId to not pull in an extra cache-line] ImGuiID HoveredId; // Hovered widget, filled during the frame ImGuiID HoveredIdPreviousFrame; bool HoveredIdAllowOverlap; - bool HoveredIdUsingMouseWheel; // Hovered widget will use mouse wheel. Blocks scrolling the underlying window. - bool HoveredIdPreviousFrameUsingMouseWheel; bool HoveredIdDisabled; // At least one widget passed the rect test, but has been discarded by disabled flag or popup inhibit. May be true even if HoveredId == 0. float HoveredIdTimer; // Measure contiguous hovering time float HoveredIdNotActiveTimer; // Measure contiguous hovering time where the item has not been active @@ -1840,7 +1998,7 @@ struct ImGuiContext bool ActiveIdHasBeenEditedThisFrame; ImVec2 ActiveIdClickOffset; // Clicked offset from upper-left corner, if applicable (currently only set by ButtonBehavior) ImGuiWindow* ActiveIdWindow; - ImGuiInputSource ActiveIdSource; // Activating with mouse or nav (gamepad/keyboard) + ImGuiInputSource ActiveIdSource; // Activating source: ImGuiInputSource_Mouse OR ImGuiInputSource_Keyboard OR ImGuiInputSource_Gamepad int ActiveIdMouseButton; ImGuiID ActiveIdPreviousFrame; bool ActiveIdPreviousFrameIsAlive; @@ -1849,14 +2007,22 @@ struct ImGuiContext ImGuiID LastActiveId; // Store the last non-zero ActiveId, useful for animation. float LastActiveIdTimer; // Store the last non-zero ActiveId timer since the beginning of activation, useful for animation. - // Input Ownership - bool ActiveIdUsingMouseWheel; // Active widget will want to read mouse wheel. Blocks scrolling the underlying window. + // [EXPERIMENTAL] Key/Input Ownership + Shortcut Routing system + // - The idea is that instead of "eating" a given key, we can link to an owner. + // - Input query can then read input by specifying ImGuiKeyOwner_Any (== 0), ImGuiKeyOwner_None (== -1) or a custom ID. + // - Routing is requested ahead of time for a given chord (Key + Mods) and granted in NewFrame(). + ImGuiKeyOwnerData KeysOwnerData[ImGuiKey_NamedKey_COUNT]; + ImGuiKeyRoutingTable KeysRoutingTable; ImU32 ActiveIdUsingNavDirMask; // Active widget will want to read those nav move requests (e.g. can activate a button and move away from it) - ImU32 ActiveIdUsingNavInputMask; // Active widget will want to read those nav inputs. - ImBitArrayForNamedKeys ActiveIdUsingKeyInputMask; // Active widget will want to read those key inputs. When we grow the ImGuiKey enum we'll need to either to order the enum to make useful keys come first, either redesign this into e.g. a small array. + bool ActiveIdUsingAllKeyboardKeys; // Active widget will want to read all keyboard keys inputs. (FIXME: This is a shortcut for not taking ownership of 100+ keys but perhaps best to not have the inconsistency) +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO + ImU32 ActiveIdUsingNavInputMask; // If you used this. Since (IMGUI_VERSION_NUM >= 18804) : 'g.ActiveIdUsingNavInputMask |= (1 << ImGuiNavInput_Cancel);' becomes 'SetKeyOwner(ImGuiKey_Escape, g.ActiveId) and/or SetKeyOwner(ImGuiKey_NavGamepadCancel, g.ActiveId);' +#endif // Next window/item data - ImGuiItemFlags CurrentItemFlags; // == g.ItemFlagsStack.back() + ImGuiID CurrentFocusScopeId; // == g.FocusScopeStack.back() + ImGuiItemFlags CurrentItemFlags; // == g.ItemFlagsStack.back() + ImGuiID DebugLocateId; // Storage for DebugLocateItemOnHover() feature: this is read by ItemAdd() so we keep it in a hot/cached location ImGuiNextItemData NextItemData; // Storage for SetNextItem** functions ImGuiLastItemData LastItemData; // Storage for last submitted item (setup by ItemAdd) ImGuiNextWindowData NextWindowData; // Storage for SetNextWindow** functions @@ -1865,7 +2031,7 @@ struct ImGuiContext ImVector ColorStack; // Stack for PushStyleColor()/PopStyleColor() - inherited by Begin() ImVector StyleVarStack; // Stack for PushStyleVar()/PopStyleVar() - inherited by Begin() ImVector FontStack; // Stack for PushFont()/PopFont() - inherited by Begin() - ImVector FocusScopeStack; // Stack for PushFocusScope()/PopFocusScope() - not inherited by Begin(), unless child window + ImVector FocusScopeStack; // Stack for PushFocusScope()/PopFocusScope() - inherited by BeginChild(), pushed into by Begin() ImVectorItemFlagsStack; // Stack for PushItemFlag()/PopItemFlag() - inherited by Begin() ImVectorGroupStack; // Stack for BeginGroup()/EndGroup() - not inherited by Begin() ImVectorOpenPopupStack; // Which popups are open (persistent) @@ -1880,23 +2046,22 @@ struct ImGuiContext ImGuiViewportP* MouseLastHoveredViewport; // Last known viewport that was hovered by mouse (even if we are not hovering any viewport any more) + honoring the _NoInputs flag. ImGuiID PlatformLastFocusedViewportId; ImGuiPlatformMonitor FallbackMonitor; // Virtual monitor used as fallback if backend doesn't provide monitor information. - int ViewportFrontMostStampCount; // Every time the front-most window changes, we stamp its viewport with an incrementing counter + int ViewportFocusedStampCount; // Every time the front-most window changes, we stamp its viewport with an incrementing counter // Gamepad/keyboard Navigation ImGuiWindow* NavWindow; // Focused window for navigation. Could be called 'FocusedWindow' ImGuiID NavId; // Focused item for navigation ImGuiID NavFocusScopeId; // Identify a selection scope (selection code often wants to "clear other items" when landing on an item of the selection set) - ImGuiID NavActivateId; // ~~ (g.ActiveId == 0) && IsNavInputPressed(ImGuiNavInput_Activate) ? NavId : 0, also set when calling ActivateItem() - ImGuiID NavActivateDownId; // ~~ IsNavInputDown(ImGuiNavInput_Activate) ? NavId : 0 - ImGuiID NavActivatePressedId; // ~~ IsNavInputPressed(ImGuiNavInput_Activate) ? NavId : 0 - ImGuiID NavActivateInputId; // ~~ IsNavInputPressed(ImGuiNavInput_Input) ? NavId : 0; ImGuiActivateFlags_PreferInput will be set and NavActivateId will be 0. + ImGuiID NavActivateId; // ~~ (g.ActiveId == 0) && (IsKeyPressed(ImGuiKey_Space) || IsKeyDown(ImGuiKey_Enter) || IsKeyPressed(ImGuiKey_NavGamepadActivate)) ? NavId : 0, also set when calling ActivateItem() + ImGuiID NavActivateDownId; // ~~ IsKeyDown(ImGuiKey_Space) || IsKeyDown(ImGuiKey_Enter) || IsKeyDown(ImGuiKey_NavGamepadActivate) ? NavId : 0 + ImGuiID NavActivatePressedId; // ~~ IsKeyPressed(ImGuiKey_Space) || IsKeyPressed(ImGuiKey_Enter) || IsKeyPressed(ImGuiKey_NavGamepadActivate) ? NavId : 0 (no repeat) ImGuiActivateFlags NavActivateFlags; ImGuiID NavJustMovedToId; // Just navigated to this id (result of a successfully MoveRequest). ImGuiID NavJustMovedToFocusScopeId; // Just navigated to this focus scope id (result of a successfully MoveRequest). - ImGuiModFlags NavJustMovedToKeyMods; + ImGuiKeyChord NavJustMovedToKeyMods; ImGuiID NavNextActivateId; // Set by ActivateItem(), queued until next frame. ImGuiActivateFlags NavNextActivateFlags; - ImGuiInputSource NavInputSource; // Keyboard or Gamepad mode? THIS WILL ONLY BE None or NavGamepad or NavKeyboard. + ImGuiInputSource NavInputSource; // Keyboard or Gamepad mode? THIS CAN ONLY BE ImGuiInputSource_Keyboard or ImGuiInputSource_Mouse ImGuiNavLayer NavLayer; // Layer we are navigating on. For now the system is hard-coded for 0=main contents and 1=menu/title bar, may expose layers later. bool NavIdIsAlive; // Nav widget has been seen this frame ~~ NavRectRel is valid bool NavMousePosDirty; // When set we will update mouse position if (io.ConfigFlags & ImGuiConfigFlags_NavEnableSetMousePos) if set (NB: this not enabled by default) @@ -1907,14 +2072,13 @@ struct ImGuiContext bool NavAnyRequest; // ~~ NavMoveRequest || NavInitRequest this is to perform early out in ItemAdd() bool NavInitRequest; // Init request for appearing window to select first item bool NavInitRequestFromMove; - ImGuiID NavInitResultId; // Init request result (first item of the window, or one for which SetItemDefaultFocus() was called) - ImRect NavInitResultRectRel; // Init request result rectangle (relative to parent window) + ImGuiNavItemData NavInitResult; // Init request result (first item of the window, or one for which SetItemDefaultFocus() was called) bool NavMoveSubmitted; // Move request submitted, will process result on next NewFrame() bool NavMoveScoringItems; // Move request submitted, still scoring incoming items bool NavMoveForwardToNextFrame; ImGuiNavMoveFlags NavMoveFlags; ImGuiScrollFlags NavMoveScrollFlags; - ImGuiModFlags NavMoveKeyMods; + ImGuiKeyChord NavMoveKeyMods; ImGuiDir NavMoveDir; // Direction of the move request (left/right/up/down) ImGuiDir NavMoveDirForDebug; ImGuiDir NavMoveClipDir; // FIXME-NAV: Describe the purpose of this better. Might want to rename? @@ -1929,12 +2093,16 @@ struct ImGuiContext ImGuiNavItemData NavTabbingResultFirst; // First tabbing request candidate within NavWindow and flattened hierarchy // Navigation: Windowing (CTRL+TAB for list, or Menu button + keys or directional pads to move/resize) + ImGuiKeyChord ConfigNavWindowingKeyNext; // = ImGuiMod_Ctrl | ImGuiKey_Tab, for reconfiguration (see #4828) + ImGuiKeyChord ConfigNavWindowingKeyPrev; // = ImGuiMod_Ctrl | ImGuiMod_Shift | ImGuiKey_Tab ImGuiWindow* NavWindowingTarget; // Target window when doing CTRL+Tab (or Pad Menu + FocusPrev/Next), this window is temporarily displayed top-most! ImGuiWindow* NavWindowingTargetAnim; // Record of last valid NavWindowingTarget until DimBgRatio and NavWindowingHighlightAlpha becomes 0.0f, so the fade-out can stay on it. ImGuiWindow* NavWindowingListWindow; // Internal window actually listing the CTRL+Tab contents float NavWindowingTimer; float NavWindowingHighlightAlpha; bool NavWindowingToggleLayer; + ImVec2 NavWindowingAccumDeltaPos; + ImVec2 NavWindowingAccumDeltaSize; // Inertial scroll bool InertialScrollInhibited; // Is inertial scroll inhibited? (e.g. by ImGuiItemFlags_NoInertialScroll) @@ -1982,17 +2150,27 @@ struct ImGuiContext ImVector CurrentTabBarStack; ImVector ShrinkWidthBuffer; + // Hover Delay system + ImGuiID HoverDelayId; + ImGuiID HoverDelayIdPreviousFrame; + float HoverDelayTimer; // Currently used IsItemHovered(), generally inferred from g.HoveredIdTimer but kept uncleared until clear timer elapse. + float HoverDelayClearTimer; // Currently used IsItemHovered(): grace time before g.TooltipHoverTimer gets cleared. + // Widget state ImVec2 MouseLastValidPos; ImGuiInputTextState InputTextState; + ImGuiInputTextDeactivatedState InputTextDeactivatedState; ImFont InputTextPasswordFont; ImGuiID TempInputId; // Temporary text input when CTRL+clicking on a slider, etc. ImGuiColorEditFlags ColorEditOptions; // Store user options for color edit widgets - float ColorEditLastHue; // Backup of last Hue associated to LastColor, so we can restore Hue in lossy RGB<>HSV round trips - float ColorEditLastSat; // Backup of last Saturation associated to LastColor, so we can restore Saturation in lossy RGB<>HSV round trips - ImU32 ColorEditLastColor; // RGB value with alpha set to 0. + ImGuiID ColorEditCurrentID; // Set temporarily while inside of the parent-most ColorEdit4/ColorPicker4 (because they call each others). + ImGuiID ColorEditSavedID; // ID we are saving/restoring HS for + float ColorEditSavedHue; // Backup of last Hue associated to LastColor, so we can restore Hue in lossy RGB<>HSV round trips + float ColorEditSavedSat; // Backup of last Saturation associated to LastColor, so we can restore Saturation in lossy RGB<>HSV round trips + ImU32 ColorEditSavedColor; // RGB value with alpha set to 0. ImVec4 ColorPickerRef; // Initial/reference color at the time of opening the color picker. ImGuiComboPreviewData ComboPreviewData; + float SliderGrabClickOffset; float SliderCurrentAccum; // Accumulated slider delta when using navigation controls. bool SliderCurrentAccumDirty; // Has the accumulated slider delta changed since last time we tried to apply it? bool DragCurrentAccumDirty; @@ -2002,7 +2180,6 @@ struct ImGuiContext float DisabledAlphaBackup; // Backup for style.Alpha for BeginDisabled() short DisabledStackSize; short TooltipOverrideCount; - float TooltipSlowDelay; // Time before slow tooltips appears (FIXME: This is temporary until we merge in tooltip timer+priority work) ImVector ClipboardHandlerData; // If no custom clipboard handler is defined ImVector MenusIdSubmittedThisFrame; // A list of menu IDs that were rendered at least once @@ -2015,6 +2192,7 @@ struct ImGuiContext // Extensions // FIXME: We could provide an API to register one slot in an array held in ImGuiContext? ImGuiDockContext DockContext; + void (*DockNodeWindowMenuHandler)(ImGuiContext* ctx, ImGuiDockNode* node, ImGuiTabBar* tab_bar); // Settings bool SettingsLoaded; @@ -2026,6 +2204,9 @@ struct ImGuiContext ImVector Hooks; // Hooks for extensions (e.g. test engine) ImGuiID HookIdNext; // Next available HookId + // Localization + const char* LocalizationTable[ImGuiLocKey_COUNT]; + // Capture/Logging bool LogEnabled; // Currently capturing ImGuiLogType LogType; // Capture target @@ -2040,23 +2221,34 @@ struct ImGuiContext int LogDepthToExpandDefault; // Default/stored value for LogDepthMaxExpand if not specified in the LogXXX function call. // Debug Tools + ImGuiDebugLogFlags DebugLogFlags; + ImGuiTextBuffer DebugLogBuf; + ImGuiTextIndex DebugLogIndex; + ImU8 DebugLogClipperAutoDisableFrames; + ImU8 DebugLocateFrames; // For DebugLocateItemOnHover(). This is used together with DebugLocateId which is in a hot/cached spot above. + ImS8 DebugBeginReturnValueCullDepth; // Cycle between 0..9 then wrap around. bool DebugItemPickerActive; // Item picker is active (started with DebugStartItemPicker()) + ImU8 DebugItemPickerMouseButton; ImGuiID DebugItemPickerBreakId; // Will call IM_DEBUG_BREAK() when encountering this ID ImGuiMetricsConfig DebugMetricsConfig; ImGuiStackTool DebugStackTool; + ImGuiDockNode* DebugHoveredDockNode; // Hovered dock node. // Misc - float FramerateSecPerFrame[120]; // Calculate estimate of framerate for user over the last 2 seconds. + float FramerateSecPerFrame[60]; // Calculate estimate of framerate for user over the last 60 frames.. int FramerateSecPerFrameIdx; int FramerateSecPerFrameCount; float FramerateSecPerFrameAccum; - int WantCaptureMouseNextFrame; // Explicit capture via CaptureKeyboardFromApp()/CaptureMouseFromApp() sets those flags - int WantCaptureKeyboardNextFrame; + int WantCaptureMouseNextFrame; // Explicit capture override via SetNextFrameWantCaptureMouse()/SetNextFrameWantCaptureKeyboard(). Default to -1. + int WantCaptureKeyboardNextFrame; // " int WantTextInputNextFrame; - char TempBuffer[1024 * 3 + 1]; // Temporary text buffer + ImVector TempBuffer; // Temporary text buffer ImGuiContext(ImFontAtlas* shared_font_atlas) { + IO.Ctx = this; + InputTextState.Ctx = this; + Initialized = false; ConfigFlagsCurrFrame = ConfigFlagsLastFrame = ImGuiConfigFlags_None; FontAtlasOwnedByContext = shared_font_atlas ? false : true; @@ -2071,19 +2263,21 @@ struct ImGuiContext TestEngineHookItems = false; TestEngine = NULL; + InputEventsNextMouseSource = ImGuiMouseSource_Mouse; + InputEventsNextEventId = 1; + WindowsActiveCount = 0; CurrentWindow = NULL; HoveredWindow = NULL; HoveredWindowUnderMovingWindow = NULL; - HoveredDockNode = NULL; MovingWindow = NULL; WheelingWindow = NULL; - WheelingWindowTimer = 0.0f; + WheelingWindowStartFrame = -1; + WheelingWindowReleaseTimer = 0.0f; DebugHookIdInfo = 0; HoveredId = HoveredIdPreviousFrame = 0; HoveredIdAllowOverlap = false; - HoveredIdUsingMouseWheel = HoveredIdPreviousFrameUsingMouseWheel = false; HoveredIdDisabled = false; HoveredIdTimer = HoveredIdNotActiveTimer = 0.0f; ActiveId = 0; @@ -2106,11 +2300,13 @@ struct ImGuiContext LastActiveId = 0; LastActiveIdTimer = 0.0f; - ActiveIdUsingMouseWheel = false; ActiveIdUsingNavDirMask = 0x00; + ActiveIdUsingAllKeyboardKeys = false; +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO ActiveIdUsingNavInputMask = 0x00; - ActiveIdUsingKeyInputMask.ClearAllBits(); +#endif + CurrentFocusScopeId = 0; CurrentItemFlags = ImGuiItemFlags_None; BeginMenuCount = 0; @@ -2118,14 +2314,14 @@ struct ImGuiContext CurrentViewport = NULL; MouseViewport = MouseLastHoveredViewport = NULL; PlatformLastFocusedViewportId = 0; - ViewportFrontMostStampCount = 0; + ViewportFocusedStampCount = 0; NavWindow = NULL; - NavId = NavFocusScopeId = NavActivateId = NavActivateDownId = NavActivatePressedId = NavActivateInputId = 0; + NavId = NavFocusScopeId = NavActivateId = NavActivateDownId = NavActivatePressedId = 0; NavJustMovedToId = NavJustMovedToFocusScopeId = NavNextActivateId = 0; NavActivateFlags = NavNextActivateFlags = ImGuiActivateFlags_None; - NavJustMovedToKeyMods = ImGuiModFlags_None; - NavInputSource = ImGuiInputSource_None; + NavJustMovedToKeyMods = ImGuiMod_None; + NavInputSource = ImGuiInputSource_Keyboard; NavLayer = ImGuiNavLayer_Main; NavIdIsAlive = false; NavMousePosDirty = false; @@ -2134,18 +2330,19 @@ struct ImGuiContext NavAnyRequest = false; NavInitRequest = false; NavInitRequestFromMove = false; - NavInitResultId = 0; NavMoveSubmitted = false; NavMoveScoringItems = false; NavMoveForwardToNextFrame = false; NavMoveFlags = ImGuiNavMoveFlags_None; NavMoveScrollFlags = ImGuiScrollFlags_None; - NavMoveKeyMods = ImGuiModFlags_None; + NavMoveKeyMods = ImGuiMod_None; NavMoveDir = NavMoveDirForDebug = NavMoveClipDir = ImGuiDir_None; NavScoringDebugCount = 0; NavTabbingDir = 0; NavTabbingCounter = 0; + ConfigNavWindowingKeyNext = ImGuiMod_Ctrl | ImGuiKey_Tab; + ConfigNavWindowingKeyPrev = ImGuiMod_Ctrl | ImGuiMod_Shift | ImGuiKey_Tab; NavWindowingTarget = NavWindowingTargetAnim = NavWindowingListWindow = NULL; NavWindowingTimer = NavWindowingHighlightAlpha = 0.0f; NavWindowingToggleLayer = false; @@ -2173,30 +2370,38 @@ struct ImGuiContext TablesTempDataStacked = 0; CurrentTabBar = NULL; + HoverDelayId = HoverDelayIdPreviousFrame = 0; + HoverDelayTimer = HoverDelayClearTimer = 0.0f; + TempInputId = 0; ColorEditOptions = ImGuiColorEditFlags_DefaultOptions_; - ColorEditLastHue = ColorEditLastSat = 0.0f; - ColorEditLastColor = 0; + ColorEditCurrentID = ColorEditSavedID = 0; + ColorEditSavedHue = ColorEditSavedSat = 0.0f; + ColorEditSavedColor = 0; + SliderGrabClickOffset = 0.0f; SliderCurrentAccum = 0.0f; SliderCurrentAccumDirty = false; DragCurrentAccumDirty = false; DragCurrentAccum = 0.0f; DragSpeedDefaultRatio = 1.0f / 100.0f; + ScrollbarClickDeltaToGrabCenter = 0.0f; DisabledAlphaBackup = 0.0f; DisabledStackSize = 0; - ScrollbarClickDeltaToGrabCenter = 0.0f; TooltipOverrideCount = 0; - TooltipSlowDelay = 0.50f; PlatformImeData.InputPos = ImVec2(0.0f, 0.0f); PlatformImeDataPrev.InputPos = ImVec2(-1.0f, -1.0f); // Different to ensure initial submission PlatformImeViewport = 0; PlatformLocaleDecimalPoint = '.'; + DockNodeWindowMenuHandler = NULL; + SettingsLoaded = false; SettingsDirtyTimer = 0.0f; HookIdNext = 0; + memset(LocalizationTable, 0, sizeof(LocalizationTable)); + LogEnabled = false; LogType = ImGuiLogType_None; LogNextPrefix = LogNextSuffix = NULL; @@ -2206,14 +2411,20 @@ struct ImGuiContext LogDepthRef = 0; LogDepthToExpand = LogDepthToExpandDefault = 2; + DebugLogFlags = ImGuiDebugLogFlags_OutputToTTY; + DebugLocateId = 0; + DebugLogClipperAutoDisableFrames = 0; + DebugLocateFrames = 0; + DebugBeginReturnValueCullDepth = -1; DebugItemPickerActive = false; + DebugItemPickerMouseButton = ImGuiMouseButton_Left; DebugItemPickerBreakId = 0; + DebugHoveredDockNode = NULL; memset(FramerateSecPerFrame, 0, sizeof(FramerateSecPerFrame)); FramerateSecPerFrameIdx = FramerateSecPerFrameCount = 0; FramerateSecPerFrameAccum = 0.0f; WantCaptureMouseNextFrame = WantCaptureKeyboardNextFrame = WantTextInputNextFrame = -1; - memset(TempBuffer, 0, sizeof(TempBuffer)); } }; @@ -2237,18 +2448,19 @@ struct IMGUI_API ImGuiWindowTempData float CurrLineTextBaseOffset; // Baseline offset (0.0f by default on a new line, generally == style.FramePadding.y when a framed item has been added). float PrevLineTextBaseOffset; bool IsSameLine; + bool IsSetPos; ImVec1 Indent; // Indentation / start position from left of window (increased by TreePush/TreePop, etc.) ImVec1 ColumnsOffset; // Offset to the current column (if ColumnsCurrent > 0). FIXME: This and the above should be a stack to allow use cases like Tree->Column->Tree. Need revamp columns API. ImVec1 GroupOffset; - ImVec2 CursorStartPosLossyness;// Record the loss of precision of CursorStartPos due to really large scrolling amount. This is used by clipper to compensentate and fix the most common use case of large scroll area. + ImVec2 CursorStartPosLossyness;// Record the loss of precision of CursorStartPos due to really large scrolling amount. This is used by clipper to compensate and fix the most common use case of large scroll area. // Keyboard/Gamepad navigation ImGuiNavLayer NavLayerCurrent; // Current layer, 0..31 (we currently only use 0..1) short NavLayersActiveMask; // Which layers have been written to (result from previous frame) short NavLayersActiveMaskNext;// Which layers have been written to (accumulator for current frame) - ImGuiID NavFocusScopeIdCurrent; // Current focus scope ID while appending + bool NavIsScrollPushableX; // Set when current work location may be scrolled horizontally when moving left / right. This is generally always true UNLESS within a column. bool NavHideHighlightOneFrame; - bool NavHasScroll; // Set when scrolling can be used (ScrollMax > 0.0f) + bool NavWindowHasScrollY; // Set per window when scrolling can be used (== ScrollMax.y > 0.0f) // Miscellaneous bool MenuBarAppending; // FIXME: Remove this @@ -2274,6 +2486,7 @@ struct IMGUI_API ImGuiWindowTempData // Storage for one window struct IMGUI_API ImGuiWindow { + ImGuiContext* Ctx; // Parent UI context (needs to be set explicitly by parent). char* Name; // Window name, owned by the window. ImGuiID ID; // == ImHashStr(Name) ImGuiWindowFlags Flags, FlagsPreviousFrame; // See enum ImGuiWindowFlags_ @@ -2291,6 +2504,9 @@ struct IMGUI_API ImGuiWindow ImVec2 WindowPadding; // Window padding at the time of Begin(). float WindowRounding; // Window rounding at the time of Begin(). May be clamped lower to avoid rendering artifacts with title bar, menu bar etc. float WindowBorderSize; // Window border size at the time of Begin(). + float DecoOuterSizeX1, DecoOuterSizeY1; // Left/Up offsets. Sum of non-scrolling outer decorations (X1 generally == 0.0f. Y1 generally = TitleBarHeight + MenuBarHeight). Locked during Begin(). + float DecoOuterSizeX2, DecoOuterSizeY2; // Right/Down offsets (X2 generally == ScrollbarSize.x, Y2 == ScrollbarSizes.y). + float DecoInnerSizeX1, DecoInnerSizeY1; // Applied AFTER/OVER InnerRect. Specialized for Tables as they use specialized form of clipping and frozen rows/columns are inside InnerRect (and not part of regular decoration sizes). int NameBufLen; // Size of buffer storing Name. May be larger than strlen(Name)! ImGuiID MoveId; // == window->GetID("#MOVE") ImGuiID TabId; // == window->GetID("#TAB") @@ -2318,6 +2534,7 @@ struct IMGUI_API ImGuiWindow bool InertialScroll; // Set when inertial scrolling is active signed char ResizeBorderHeld; // Current border being held for resize (-1: none, otherwise 0-3) short BeginCount; // Number of Begin() during the current frame (generally 0 or 1, 1+ if appending via multiple Begin/End pairs) + short BeginCountPreviousFrame; // Number of Begin() during the previous frame short BeginOrderWithinParent; // Begin() order within immediate parent window, if we are a child window. Otherwise 0. short BeginOrderWithinContext; // Begin() order within entire imgui context. This is mostly used for debugging submission order related issues. short FocusOrder; // Order within WindowsFocusOrder[], altered when windows are focused. @@ -2375,6 +2592,8 @@ struct IMGUI_API ImGuiWindow ImGuiWindow* NavLastChildNavWindow; // When going to the menu bar, we remember the child window we came from. (This could probably be made implicit if we kept g.Windows sorted by last focused including child window.) ImGuiID NavLastIds[ImGuiNavLayer_COUNT]; // Last known NavId for this window, per layer (0/1) ImRect NavRectRel[ImGuiNavLayer_COUNT]; // Reference rectangle, in window relative space + ImVec2 NavPreferredScoringPosRel[ImGuiNavLayer_COUNT]; // Preferred X/Y position updated when moving on a given axis, reset to FLT_MAX. + ImGuiID NavRootFocusScopeId; // Focus Scope ID at the time of Begin() int MemoryDrawListIdxCapacity; // Backup of last idx/vtx count, so when waking up the window we can preallocate and avoid iterative alloc/copy int MemoryDrawListVtxCapacity; @@ -2402,12 +2621,12 @@ public: ImGuiID GetID(int n); ImGuiID GetIDFromRectangle(const ImRect& r_abs); - // We don't use g.FontSize because the window may be != g.CurrentWidow. + // We don't use g.FontSize because the window may be != g.CurrentWindow. ImRect Rect() const { return ImRect(Pos.x, Pos.y, Pos.x + Size.x, Pos.y + Size.y); } - float CalcFontSize() const { ImGuiContext& g = *GImGui; float scale = g.FontBaseSize * FontWindowScale * FontDpiScale; if (ParentWindow) scale *= ParentWindow->FontWindowScale; return scale; } - float TitleBarHeight() const { ImGuiContext& g = *GImGui; return (Flags & ImGuiWindowFlags_NoTitleBar) ? 0.0f : CalcFontSize() + g.Style.FramePadding.y * 2.0f; } + float CalcFontSize() const { ImGuiContext& g = *Ctx; float scale = g.FontBaseSize * FontWindowScale * FontDpiScale; if (ParentWindow) scale *= ParentWindow->FontWindowScale; return scale; } + float TitleBarHeight() const { ImGuiContext& g = *Ctx; return (Flags & ImGuiWindowFlags_NoTitleBar) ? 0.0f : CalcFontSize() + g.Style.FramePadding.y * 2.0f; } ImRect TitleBarRect() const { return ImRect(Pos, ImVec2(Pos.x + SizeFull.x, Pos.y + TitleBarHeight())); } - float MenuBarHeight() const { ImGuiContext& g = *GImGui; return (Flags & ImGuiWindowFlags_MenuBar) ? DC.MenuBarOffset.y + CalcFontSize() + g.Style.FramePadding.y * 2.0f : 0.0f; } + float MenuBarHeight() const { ImGuiContext& g = *Ctx; return (Flags & ImGuiWindowFlags_MenuBar) ? DC.MenuBarOffset.y + CalcFontSize() + g.Style.FramePadding.y * 2.0f : 0.0f; } ImRect MenuBarRect() const { float y1 = Pos.y + TitleBarHeight(); return ImRect(Pos.x, y1, Pos.x + SizeFull.x, y1 + MenuBarHeight()); } }; @@ -2420,7 +2639,7 @@ enum ImGuiTabBarFlagsPrivate_ { ImGuiTabBarFlags_DockNode = 1 << 20, // Part of a dock node [we don't use this in the master branch but it facilitate branch syncing to keep this around] ImGuiTabBarFlags_IsFocused = 1 << 21, - ImGuiTabBarFlags_SaveSettings = 1 << 22 // FIXME: Settings are handled by the docking system, this only request the tab bar to mark settings dirty when reordering tabs + ImGuiTabBarFlags_SaveSettings = 1 << 22, // FIXME: Settings are handled by the docking system, this only request the tab bar to mark settings dirty when reordering tabs }; // Extend ImGuiTabItemFlags_ @@ -2430,7 +2649,7 @@ enum ImGuiTabItemFlagsPrivate_ ImGuiTabItemFlags_NoCloseButton = 1 << 20, // Track whether p_open was set or not (we'll need this info on the next frame to recompute ContentWidth during layout) ImGuiTabItemFlags_Button = 1 << 21, // Used by TabItemButton, change the tab item behavior to mimic a button ImGuiTabItemFlags_Unsorted = 1 << 22, // [Docking] Trailing tabs with the _Unsorted flag will be sorted based on the DockOrder of their Window. - ImGuiTabItemFlags_Preview = 1 << 23 // [Docking] Display tab shape for docking preview (height is adjusted slightly to compensate for the yet missing tab bar) + ImGuiTabItemFlags_Preview = 1 << 23, // [Docking] Display tab shape for docking preview (height is adjusted slightly to compensate for the yet missing tab bar) }; // Storage for one active tab item (sizeof() 48 bytes) @@ -2444,12 +2663,13 @@ struct ImGuiTabItem float Offset; // Position relative to beginning of tab float Width; // Width currently displayed float ContentWidth; // Width of label, stored during BeginTabItem() call + float RequestedWidth; // Width optionally requested by caller, -1.0f is unused ImS32 NameOffset; // When Window==NULL, offset to name within parent ImGuiTabBar::TabsNames ImS16 BeginOrder; // BeginTabItem() order, used to re-order tabs after toggling ImGuiTabBarFlags_Reorderable - ImS16 IndexDuringLayout; // Index only used during TabBarLayout() + ImS16 IndexDuringLayout; // Index only used during TabBarLayout(). Tabs gets reordered so 'Tabs[n].IndexDuringLayout == n' but may mismatch during additions. bool WantClose; // Marked as closed by SetTabItemClosed() - ImGuiTabItem() { memset(this, 0, sizeof(*this)); LastFrameVisible = LastFrameSelected = -1; NameOffset = -1; BeginOrder = IndexDuringLayout = -1; } + ImGuiTabItem() { memset(this, 0, sizeof(*this)); LastFrameVisible = LastFrameSelected = -1; RequestedWidth = -1.0f; NameOffset = -1; BeginOrder = IndexDuringLayout = -1; } }; // Storage for a tab bar (sizeof() 152 bytes) @@ -2488,28 +2708,20 @@ struct IMGUI_API ImGuiTabBar ImGuiTextBuffer TabsNames; // For non-docking tab bar we re-append names in a contiguous buffer. ImGuiTabBar(); - int GetTabOrder(const ImGuiTabItem* tab) const { return Tabs.index_from_ptr(tab); } - const char* GetTabName(const ImGuiTabItem* tab) const - { - if (tab->Window) - return tab->Window->Name; - IM_ASSERT(tab->NameOffset != -1 && tab->NameOffset < TabsNames.Buf.Size); - return TabsNames.Buf.Data + tab->NameOffset; - } }; //----------------------------------------------------------------------------- // [SECTION] Table support //----------------------------------------------------------------------------- -#define IM_COL32_DISABLE IM_COL32(0,0,0,1) // Special sentinel code which cannot be used as a regular color. -#define IMGUI_TABLE_DRAW_CHANNELS(c) (4 + (c) * 2) // See TableSetupDrawChannels() +#define IM_COL32_DISABLE IM_COL32(0,0,0,1) // Special sentinel code which cannot be used as a regular color. +#define IMGUI_TABLE_MAX_COLUMNS 512 // May be further lifted -// Our current column maximum is IMGUI_TABLE_MAX_COLUMNS but we may raise that in the future. +// Our current column maximum is 64 but we may raise that in the future. typedef ImS16 ImGuiTableColumnIdx; typedef ImU16 ImGuiTableDrawChannelIdx; -// [Internal] sizeof() ~ 104 +// [Internal] sizeof() ~ 112 // We use the terminology "Enabled" to refer to a column that is not Hidden by user/api. // We use the terminology "Clipped" to refer to a column that is out of sight because of scrolling/clipping. // This is in contrast with some user-facing api such as IsItemVisible() / IsRectVisible() which use "Visible" to mean "not clipped". @@ -2555,7 +2767,7 @@ struct ImGuiTableColumn ImU8 SortDirection : 2; // ImGuiSortDirection_Ascending or ImGuiSortDirection_Descending ImU8 SortDirectionsAvailCount : 2; // Number of available sort directions (0 to 3) ImU8 SortDirectionsAvailMask : 4; // Mask of available sort directions (1-bit each) - ImU8 SortDirectionsAvailList; // Ordered of available sort directions (2-bits each) + ImU8 SortDirectionsAvailList; // Ordered list of available sort directions (2-bits each, total 8-bits) ImGuiTableColumn() { @@ -2566,7 +2778,7 @@ struct ImGuiTableColumn PrevEnabledColumn = NextEnabledColumn = -1; SortOrder = -1; SortDirection = ImGuiSortDirection_None; - DrawChannelCurrent = DrawChannelFrozen = DrawChannelUnfrozen = (ImU16)-1; + DrawChannelCurrent = DrawChannelFrozen = DrawChannelUnfrozen = (ImU8)-1; } }; @@ -2578,16 +2790,19 @@ struct ImGuiTableCellData ImGuiTableColumnIdx Column; // Column number }; -// Per-instance data that needs preserving across frames (seemingly most others do not need to be preserved aside from debug needs, does that needs they could be moved to ImGuiTableTempData ?) +// Per-instance data that needs preserving across frames (seemingly most others do not need to be preserved aside from debug needs. Does that means they could be moved to ImGuiTableTempData?) struct ImGuiTableInstanceData { - float LastOuterHeight; // Outer height from last frame // FIXME: multi-instance issue (#3955) - float LastFirstRowHeight; // Height of first row from last frame // FIXME: possible multi-instance issue? + ImGuiID TableInstanceID; + float LastOuterHeight; // Outer height from last frame + float LastFirstRowHeight; // Height of first row from last frame (FIXME: this is used as "header height" and may be reworked) + float LastFrozenHeight; // Height of frozen section from last frame - ImGuiTableInstanceData() { LastOuterHeight = LastFirstRowHeight = 0.0f; } + ImGuiTableInstanceData() { TableInstanceID = 0; LastOuterHeight = LastFirstRowHeight = LastFrozenHeight = 0.0f; } }; -// FIXME-TABLE: more transient data could be stored in a per-stacked table structure: DrawSplitter, SortSpecs, incoming RowData +// FIXME-TABLE: more transient data could be stored in a stacked ImGuiTableTempData: e.g. SortSpecs, incoming RowData +// sizeof() ~ 580 bytes + heap allocs described in TableBeginInitMemory() struct IMGUI_API ImGuiTable { ImGuiID ID; @@ -2597,10 +2812,9 @@ struct IMGUI_API ImGuiTable ImSpan Columns; // Point within RawData[] ImSpan DisplayOrderToIndex; // Point within RawData[]. Store display order of columns (when not reordered, the values are 0...Count-1) ImSpan RowCellData; // Point within RawData[]. Store cells background requests for current row. - ImBitVector EnabledMaskByDisplayOrder; // Column DisplayOrder -> IsEnabled map - ImBitVector EnabledMaskByIndex; // Column Index -> IsEnabled map (== not hidden by user/api) in a format adequate for iterating column without touching cold data - ImBitVector VisibleMaskByIndex; // Column Index -> IsVisibleX|IsVisibleY map (== not hidden by user/api && not hidden by scrolling/cliprect) - ImBitVector RequestOutputMaskByIndex; // Column Index -> IsVisible || AutoFit (== expect user to submit items) + ImBitArrayPtr EnabledMaskByDisplayOrder; // Column DisplayOrder -> IsEnabled map + ImBitArrayPtr EnabledMaskByIndex; // Column Index -> IsEnabled map (== not hidden by user/api) in a format adequate for iterating column without touching cold data + ImBitArrayPtr VisibleMaskByIndex; // Column Index -> IsVisibleX|IsVisibleY map (== not hidden by user/api && not hidden by scrolling/cliprect) ImGuiTableFlags SettingsLoadedFlags; // Which data were loaded from the .ini file (e.g. when order is not altered we won't save order) int SettingsOffset; // Offset in g.SettingsTables int LastFrameActive; @@ -2692,6 +2906,8 @@ struct IMGUI_API ImGuiTable bool IsResetDisplayOrderRequest; bool IsUnfrozenRows; // Set when we got past the frozen row. bool IsDefaultSizingPolicy; // Set if user didn't explicitly set a sizing policy in BeginTable() + bool HasScrollbarYCurr; // Whether ANY instance of this table had a vertical scrollbar during the current frame. + bool HasScrollbarYPrev; // Whether ANY instance of this table had a vertical scrollbar during the previous. bool MemoryCompacted; bool HostSkipItems; // Backup of InnerWindow->SkipItem at the end of BeginTable(), because we will overwrite InnerWindow->SkipItem on a per-column basis @@ -2702,6 +2918,7 @@ struct IMGUI_API ImGuiTable // Transient data that are only needed between BeginTable() and EndTable(), those buffers are shared (1 per level of stacked table). // - Accessing those requires chasing an extra pointer so for very frequently used data we leave them in the main table structure. // - We also leave out of this structure data that tend to be particularly useful for debugging/metrics. +// sizeof() ~ 112 bytes. struct IMGUI_API ImGuiTableTempData { int TableIndex; // Index in g.Tables.Buf[] pool @@ -2786,12 +3003,14 @@ namespace ImGui IMGUI_API void SetWindowSize(ImGuiWindow* window, const ImVec2& size, ImGuiCond cond = 0); IMGUI_API void SetWindowCollapsed(ImGuiWindow* window, bool collapsed, ImGuiCond cond = 0); IMGUI_API void SetWindowHitTestHole(ImGuiWindow* window, const ImVec2& pos, const ImVec2& size); + IMGUI_API void SetWindowHiddendAndSkipItemsForCurrentFrame(ImGuiWindow* window); inline ImRect WindowRectAbsToRel(ImGuiWindow* window, const ImRect& r) { ImVec2 off = window->DC.CursorStartPos; return ImRect(r.Min.x - off.x, r.Min.y - off.y, r.Max.x - off.x, r.Max.y - off.y); } inline ImRect WindowRectRelToAbs(ImGuiWindow* window, const ImRect& r) { ImVec2 off = window->DC.CursorStartPos; return ImRect(r.Min.x + off.x, r.Min.y + off.y, r.Max.x + off.x, r.Max.y + off.y); } + inline ImVec2 WindowPosRelToAbs(ImGuiWindow* window, const ImVec2& p) { ImVec2 off = window->DC.CursorStartPos; return ImVec2(p.x + off.x, p.y + off.y); } // Windows: Display Order and Focus Order - IMGUI_API void FocusWindow(ImGuiWindow* window); - IMGUI_API void FocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWindow* ignore_window); + IMGUI_API void FocusWindow(ImGuiWindow* window, ImGuiFocusRequestFlags flags = 0); + IMGUI_API void FocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWindow* ignore_window, ImGuiViewport* filter_viewport, ImGuiFocusRequestFlags flags); IMGUI_API void BringWindowToFocusFront(ImGuiWindow* window); IMGUI_API void BringWindowToDisplayFront(ImGuiWindow* window); IMGUI_API void BringWindowToDisplayBack(ImGuiWindow* window); @@ -2834,15 +3053,21 @@ namespace ImGui IMGUI_API void MarkIniSettingsDirty(); IMGUI_API void MarkIniSettingsDirty(ImGuiWindow* window); IMGUI_API void ClearIniSettings(); - IMGUI_API ImGuiWindowSettings* CreateNewWindowSettings(const char* name); - IMGUI_API ImGuiWindowSettings* FindWindowSettings(ImGuiID id); - IMGUI_API ImGuiWindowSettings* FindOrCreateWindowSettings(const char* name); IMGUI_API void AddSettingsHandler(const ImGuiSettingsHandler* handler); IMGUI_API void RemoveSettingsHandler(const char* type_name); IMGUI_API ImGuiSettingsHandler* FindSettingsHandler(const char* type_name); + // Settings - Windows + IMGUI_API ImGuiWindowSettings* CreateNewWindowSettings(const char* name); + IMGUI_API ImGuiWindowSettings* FindWindowSettingsByID(ImGuiID id); + IMGUI_API ImGuiWindowSettings* FindWindowSettingsByWindow(ImGuiWindow* window); + IMGUI_API void ClearWindowSettings(const char* name); + + // Localization + IMGUI_API void LocalizeRegisterEntries(const ImGuiLocEntry* entries, int count); + inline const char* LocalizeGetMsg(ImGuiLocKey key) { ImGuiContext& g = *GImGui; const char* msg = g.LocalizationTable[key]; return msg ? msg : "*Missing Text*"; } + // Scrolling - IMGUI_API void SetNextWindowScroll(const ImVec2& scroll); // Use -1.0f on one axis to leave as-is IMGUI_API void SetScrollX(ImGuiWindow* window, float scroll_x); IMGUI_API void SetScrollY(ImGuiWindow* window, float scroll_y); IMGUI_API void SetScrollFromPosX(ImGuiWindow* window, float local_x, float center_x_ratio); @@ -2857,7 +3082,6 @@ namespace ImGui //#endif // Basic Accessors - inline ImGuiID GetItemID() { ImGuiContext& g = *GImGui; return g.LastItemData.ID; } // Get ID of last item (~~ often same ImGui::GetID(label) beforehand) inline ImGuiItemStatusFlags GetItemStatusFlags(){ ImGuiContext& g = *GImGui; return g.LastItemData.StatusFlags; } inline ImGuiItemFlags GetItemFlags() { ImGuiContext& g = *GImGui; return g.LastItemData.InFlags; } inline ImGuiID GetActiveID() { ImGuiContext& g = *GImGui; return g.ActiveId; } @@ -2871,12 +3095,14 @@ namespace ImGui IMGUI_API void MarkItemEdited(ImGuiID id); // Mark data associated to given item as "edited", used by IsItemDeactivatedAfterEdit() function. IMGUI_API void PushOverrideID(ImGuiID id); // Push given value as-is at the top of the ID stack (whereas PushID combines old and new hashes) IMGUI_API ImGuiID GetIDWithSeed(const char* str_id_begin, const char* str_id_end, ImGuiID seed); + IMGUI_API ImGuiID GetIDWithSeed(int n, ImGuiID seed); // Basic Helpers for widget code IMGUI_API void ItemSize(const ImVec2& size, float text_baseline_y = -1.0f); inline void ItemSize(const ImRect& bb, float text_baseline_y = -1.0f) { ItemSize(bb.GetSize(), text_baseline_y); } // FIXME: This is a misleading API since we expect CursorPos to be bb.Min. IMGUI_API bool ItemAdd(const ImRect& bb, ImGuiID id, const ImRect* nav_bb = NULL, ImGuiItemFlags extra_flags = 0); IMGUI_API bool ItemHoverable(const ImRect& bb, ImGuiID id); + IMGUI_API bool IsWindowContentHoverable(ImGuiWindow* window, ImGuiHoveredFlags flags = 0); IMGUI_API bool IsClippedEx(const ImRect& bb, ImGuiID id); IMGUI_API void SetLastItemData(ImGuiID item_id, ImGuiItemFlags in_flags, ImGuiItemStatusFlags status_flags, const ImRect& item_rect); IMGUI_API ImVec2 CalcItemSize(ImVec2 size, float default_w, float default_h); @@ -2886,20 +3112,10 @@ namespace ImGui IMGUI_API ImVec2 GetContentRegionMaxAbs(); IMGUI_API void ShrinkWidths(ImGuiShrinkWidthItem* items, int count, float width_excess); - // Parameter stacks + // Parameter stacks (shared) IMGUI_API void PushItemFlag(ImGuiItemFlags option, bool enabled); IMGUI_API void PopItemFlag(); - -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - // Currently refactoring focus/nav/tabbing system - // If you have old/custom copy-and-pasted widgets that used FocusableItemRegister(): - // (Old) IMGUI_VERSION_NUM < 18209: using 'ItemAdd(....)' and 'bool tab_focused = FocusableItemRegister(...)' - // (Old) IMGUI_VERSION_NUM >= 18209: using 'ItemAdd(..., ImGuiItemAddFlags_Focusable)' and 'bool tab_focused = (GetItemStatusFlags() & ImGuiItemStatusFlags_Focused) != 0' - // (New) IMGUI_VERSION_NUM >= 18413: using 'ItemAdd(..., ImGuiItemFlags_Inputable)' and 'bool tab_focused = (GetItemStatusFlags() & ImGuiItemStatusFlags_FocusedTabbing) != 0 || g.NavActivateInputId == id' (WIP) - // Widget code are simplified as there's no need to call FocusableItemUnregister() while managing the transition from regular widget to TempInputText() - inline bool FocusableItemRegister(ImGuiWindow* window, ImGuiID id) { IM_ASSERT(0); IM_UNUSED(window); IM_UNUSED(id); return false; } // -> pass ImGuiItemAddFlags_Inputable flag to ItemAdd() - inline void FocusableItemUnregister(ImGuiWindow* window) { IM_ASSERT(0); IM_UNUSED(window); } // -> unnecessary: TempInputText() uses ImGuiInputTextFlags_MergedItem -#endif + IMGUI_API const ImGuiDataVarInfo* GetStyleVarInfo(ImGuiStyleVar idx); // Logging/Capture IMGUI_API void LogBegin(ImGuiLogType type, int auto_open_depth); // -> BeginCapture() when we design v2 api, for now stay under the radar by using the old name. @@ -2915,10 +3131,11 @@ namespace ImGui IMGUI_API void ClosePopupsExceptModals(); IMGUI_API bool IsPopupOpen(ImGuiID id, ImGuiPopupFlags popup_flags); IMGUI_API bool BeginPopupEx(ImGuiID id, ImGuiWindowFlags extra_flags); - IMGUI_API void BeginTooltipEx(ImGuiTooltipFlags tooltip_flags, ImGuiWindowFlags extra_window_flags); + IMGUI_API bool BeginTooltipEx(ImGuiTooltipFlags tooltip_flags, ImGuiWindowFlags extra_window_flags); IMGUI_API ImRect GetPopupAllowedExtentRect(ImGuiWindow* window); IMGUI_API ImGuiWindow* GetTopMostPopupModal(); IMGUI_API ImGuiWindow* GetTopMostAndVisiblePopupModal(); + IMGUI_API ImGuiWindow* FindBlockingModal(ImGuiWindow* window); IMGUI_API ImVec2 FindBestWindowPosForPopup(ImGuiWindow* window); IMGUI_API ImVec2 FindBestWindowPosForPopupEx(const ImVec2& ref_pos, const ImVec2& size, ImGuiDir* last_dir, const ImRect& r_outer, const ImRect& r_avoid, ImGuiPopupPositionPolicy policy); @@ -2942,40 +3159,90 @@ namespace ImGui IMGUI_API void NavMoveRequestCancel(); IMGUI_API void NavMoveRequestApplyResult(); IMGUI_API void NavMoveRequestTryWrapping(ImGuiWindow* window, ImGuiNavMoveFlags move_flags); - IMGUI_API const char* GetNavInputName(ImGuiNavInput n); - IMGUI_API float GetNavInputAmount(ImGuiNavInput n, ImGuiNavReadMode mode); - IMGUI_API ImVec2 GetNavInputAmount2d(ImGuiNavDirSourceFlags dir_sources, ImGuiNavReadMode mode, float slow_factor = 0.0f, float fast_factor = 0.0f); - IMGUI_API int CalcTypematicRepeatAmount(float t0, float t1, float repeat_delay, float repeat_rate); + IMGUI_API void NavClearPreferredPosForAxis(ImGuiAxis axis); + IMGUI_API void NavUpdateCurrentWindowIsScrollPushableX(); IMGUI_API void ActivateItem(ImGuiID id); // Remotely activate a button, checkbox, tree node etc. given its unique ID. activation is queued and processed on the next frame when the item is encountered again. + IMGUI_API void SetNavWindow(ImGuiWindow* window); IMGUI_API void SetNavID(ImGuiID id, ImGuiNavLayer nav_layer, ImGuiID focus_scope_id, const ImRect& rect_rel); - // Focus Scope (WIP) - // This is generally used to identify a selection set (multiple of which may be in the same window), as selection - // patterns generally need to react (e.g. clear selection) when landing on an item of the set. - IMGUI_API void PushFocusScope(ImGuiID id); - IMGUI_API void PopFocusScope(); - inline ImGuiID GetFocusedFocusScope() { ImGuiContext& g = *GImGui; return g.NavFocusScopeId; } // Focus scope which is actually active - inline ImGuiID GetFocusScope() { ImGuiContext& g = *GImGui; return g.CurrentWindow->DC.NavFocusScopeIdCurrent; } // Focus scope we are outputting into, set by PushFocusScope() - // Inputs // FIXME: Eventually we should aim to move e.g. IsActiveIdUsingKey() into IsKeyXXX functions. inline bool IsNamedKey(ImGuiKey key) { return key >= ImGuiKey_NamedKey_BEGIN && key < ImGuiKey_NamedKey_END; } + inline bool IsNamedKeyOrModKey(ImGuiKey key) { return (key >= ImGuiKey_NamedKey_BEGIN && key < ImGuiKey_NamedKey_END) || key == ImGuiMod_Ctrl || key == ImGuiMod_Shift || key == ImGuiMod_Alt || key == ImGuiMod_Super || key == ImGuiMod_Shortcut; } inline bool IsLegacyKey(ImGuiKey key) { return key >= ImGuiKey_LegacyNativeKey_BEGIN && key < ImGuiKey_LegacyNativeKey_END; } + inline bool IsKeyboardKey(ImGuiKey key) { return key >= ImGuiKey_Keyboard_BEGIN && key < ImGuiKey_Keyboard_END; } inline bool IsGamepadKey(ImGuiKey key) { return key >= ImGuiKey_Gamepad_BEGIN && key < ImGuiKey_Gamepad_END; } - IMGUI_API ImGuiKeyData* GetKeyData(ImGuiKey key); - IMGUI_API void SetItemUsingMouseWheel(); - IMGUI_API void SetActiveIdUsingNavAndKeys(); - inline bool IsActiveIdUsingNavDir(ImGuiDir dir) { ImGuiContext& g = *GImGui; return (g.ActiveIdUsingNavDirMask & (1 << dir)) != 0; } - inline bool IsActiveIdUsingNavInput(ImGuiNavInput input) { ImGuiContext& g = *GImGui; return (g.ActiveIdUsingNavInputMask & (1 << input)) != 0; } - inline bool IsActiveIdUsingKey(ImGuiKey key) { ImGuiContext& g = *GImGui; return g.ActiveIdUsingKeyInputMask[key]; } - inline void SetActiveIdUsingKey(ImGuiKey key) { ImGuiContext& g = *GImGui; g.ActiveIdUsingKeyInputMask.SetBit(key); } + inline bool IsMouseKey(ImGuiKey key) { return key >= ImGuiKey_Mouse_BEGIN && key < ImGuiKey_Mouse_END; } + inline bool IsAliasKey(ImGuiKey key) { return key >= ImGuiKey_Aliases_BEGIN && key < ImGuiKey_Aliases_END; } + inline ImGuiKeyChord ConvertShortcutMod(ImGuiKeyChord key_chord) { ImGuiContext& g = *GImGui; IM_ASSERT_PARANOID(key_chord & ImGuiMod_Shortcut); return (key_chord & ~ImGuiMod_Shortcut) | (g.IO.ConfigMacOSXBehaviors ? ImGuiMod_Super : ImGuiMod_Ctrl); } + inline ImGuiKey ConvertSingleModFlagToKey(ImGuiContext* ctx, ImGuiKey key) + { + ImGuiContext& g = *ctx; + if (key == ImGuiMod_Ctrl) return ImGuiKey_ReservedForModCtrl; + if (key == ImGuiMod_Shift) return ImGuiKey_ReservedForModShift; + if (key == ImGuiMod_Alt) return ImGuiKey_ReservedForModAlt; + if (key == ImGuiMod_Super) return ImGuiKey_ReservedForModSuper; + if (key == ImGuiMod_Shortcut) return (g.IO.ConfigMacOSXBehaviors ? ImGuiKey_ReservedForModSuper : ImGuiKey_ReservedForModCtrl); + return key; + } + + IMGUI_API ImGuiKeyData* GetKeyData(ImGuiContext* ctx, ImGuiKey key); + inline ImGuiKeyData* GetKeyData(ImGuiKey key) { ImGuiContext& g = *GImGui; return GetKeyData(&g, key); } + IMGUI_API void GetKeyChordName(ImGuiKeyChord key_chord, char* out_buf, int out_buf_size); + inline ImGuiKey MouseButtonToKey(ImGuiMouseButton button) { IM_ASSERT(button >= 0 && button < ImGuiMouseButton_COUNT); return (ImGuiKey)(ImGuiKey_MouseLeft + button); } IMGUI_API bool IsMouseDragPastThreshold(ImGuiMouseButton button, float lock_threshold = -1.0f); - inline bool IsNavInputDown(ImGuiNavInput n) { ImGuiContext& g = *GImGui; return g.IO.NavInputs[n] > 0.0f; } - inline bool IsNavInputTest(ImGuiNavInput n, ImGuiNavReadMode rm) { return (GetNavInputAmount(n, rm) > 0.0f); } - IMGUI_API ImGuiModFlags GetMergedModFlags(); -#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO - inline bool IsKeyPressedMap(ImGuiKey key, bool repeat = true) { IM_ASSERT(IsNamedKey(key)); return IsKeyPressed(key, repeat); } // [removed in 1.87] -#endif + IMGUI_API ImVec2 GetKeyMagnitude2d(ImGuiKey key_left, ImGuiKey key_right, ImGuiKey key_up, ImGuiKey key_down); + IMGUI_API float GetNavTweakPressedAmount(ImGuiAxis axis); + IMGUI_API int CalcTypematicRepeatAmount(float t0, float t1, float repeat_delay, float repeat_rate); + IMGUI_API void GetTypematicRepeatRate(ImGuiInputFlags flags, float* repeat_delay, float* repeat_rate); + IMGUI_API void SetActiveIdUsingAllKeyboardKeys(); + inline bool IsActiveIdUsingNavDir(ImGuiDir dir) { ImGuiContext& g = *GImGui; return (g.ActiveIdUsingNavDirMask & (1 << dir)) != 0; } + + // [EXPERIMENTAL] Low-Level: Key/Input Ownership + // - The idea is that instead of "eating" a given input, we can link to an owner id. + // - Ownership is most often claimed as a result of reacting to a press/down event (but occasionally may be claimed ahead). + // - Input queries can then read input by specifying ImGuiKeyOwner_Any (== 0), ImGuiKeyOwner_None (== -1) or a custom ID. + // - Legacy input queries (without specifying an owner or _Any or _None) are equivalent to using ImGuiKeyOwner_Any (== 0). + // - Input ownership is automatically released on the frame after a key is released. Therefore: + // - for ownership registration happening as a result of a down/press event, the SetKeyOwner() call may be done once (common case). + // - for ownership registration happening ahead of a down/press event, the SetKeyOwner() call needs to be made every frame (happens if e.g. claiming ownership on hover). + // - SetItemKeyOwner() is a shortcut for common simple case. A custom widget will probably want to call SetKeyOwner() multiple times directly based on its interaction state. + // - This is marked experimental because not all widgets are fully honoring the Set/Test idioms. We will need to move forward step by step. + // Please open a GitHub Issue to submit your usage scenario or if there's a use case you need solved. + IMGUI_API ImGuiID GetKeyOwner(ImGuiKey key); + IMGUI_API void SetKeyOwner(ImGuiKey key, ImGuiID owner_id, ImGuiInputFlags flags = 0); + IMGUI_API void SetKeyOwnersForKeyChord(ImGuiKeyChord key, ImGuiID owner_id, ImGuiInputFlags flags = 0); + IMGUI_API void SetItemKeyOwner(ImGuiKey key, ImGuiInputFlags flags = 0); // Set key owner to last item if it is hovered or active. Equivalent to 'if (IsItemHovered() || IsItemActive()) { SetKeyOwner(key, GetItemID());'. + IMGUI_API bool TestKeyOwner(ImGuiKey key, ImGuiID owner_id); // Test that key is either not owned, either owned by 'owner_id' + inline ImGuiKeyOwnerData* GetKeyOwnerData(ImGuiContext* ctx, ImGuiKey key) { if (key & ImGuiMod_Mask_) key = ConvertSingleModFlagToKey(ctx, key); IM_ASSERT(IsNamedKey(key)); return &ctx->KeysOwnerData[key - ImGuiKey_NamedKey_BEGIN]; } + + // [EXPERIMENTAL] High-Level: Input Access functions w/ support for Key/Input Ownership + // - Important: legacy IsKeyPressed(ImGuiKey, bool repeat=true) _DEFAULTS_ to repeat, new IsKeyPressed() requires _EXPLICIT_ ImGuiInputFlags_Repeat flag. + // - Expected to be later promoted to public API, the prototypes are designed to replace existing ones (since owner_id can default to Any == 0) + // - Specifying a value for 'ImGuiID owner' will test that EITHER the key is NOT owned (UNLESS locked), EITHER the key is owned by 'owner'. + // Legacy functions use ImGuiKeyOwner_Any meaning that they typically ignore ownership, unless a call to SetKeyOwner() explicitly used ImGuiInputFlags_LockThisFrame or ImGuiInputFlags_LockUntilRelease. + // - Binding generators may want to ignore those for now, or suffix them with Ex() until we decide if this gets moved into public API. + IMGUI_API bool IsKeyDown(ImGuiKey key, ImGuiID owner_id); + IMGUI_API bool IsKeyPressed(ImGuiKey key, ImGuiID owner_id, ImGuiInputFlags flags = 0); // Important: when transitioning from old to new IsKeyPressed(): old API has "bool repeat = true", so would default to repeat. New API requiress explicit ImGuiInputFlags_Repeat. + IMGUI_API bool IsKeyReleased(ImGuiKey key, ImGuiID owner_id); + IMGUI_API bool IsMouseDown(ImGuiMouseButton button, ImGuiID owner_id); + IMGUI_API bool IsMouseClicked(ImGuiMouseButton button, ImGuiID owner_id, ImGuiInputFlags flags = 0); + IMGUI_API bool IsMouseReleased(ImGuiMouseButton button, ImGuiID owner_id); + + // [EXPERIMENTAL] Shortcut Routing + // - ImGuiKeyChord = a ImGuiKey optionally OR-red with ImGuiMod_Alt/ImGuiMod_Ctrl/ImGuiMod_Shift/ImGuiMod_Super. + // ImGuiKey_C (accepted by functions taking ImGuiKey or ImGuiKeyChord) + // ImGuiKey_C | ImGuiMod_Ctrl (accepted by functions taking ImGuiKeyChord) + // ONLY ImGuiMod_XXX values are legal to 'OR' with an ImGuiKey. You CANNOT 'OR' two ImGuiKey values. + // - When using one of the routing flags (e.g. ImGuiInputFlags_RouteFocused): routes requested ahead of time given a chord (key + modifiers) and a routing policy. + // - Routes are resolved during NewFrame(): if keyboard modifiers are matching current ones: SetKeyOwner() is called + route is granted for the frame. + // - Route is granted to a single owner. When multiple requests are made we have policies to select the winning route. + // - Multiple read sites may use the same owner id and will all get the granted route. + // - For routing: when owner_id is 0 we use the current Focus Scope ID as a default owner in order to identify our location. + IMGUI_API bool Shortcut(ImGuiKeyChord key_chord, ImGuiID owner_id = 0, ImGuiInputFlags flags = 0); + IMGUI_API bool SetShortcutRouting(ImGuiKeyChord key_chord, ImGuiID owner_id = 0, ImGuiInputFlags flags = 0); + IMGUI_API bool TestShortcutRouting(ImGuiKeyChord key_chord, ImGuiID owner_id); + IMGUI_API ImGuiKeyRoutingData* GetShortcutRoutingData(ImGuiKeyChord key_chord); // Docking // (some functions are only declared in imgui.cpp, see Docking section) @@ -2990,7 +3257,11 @@ namespace ImGui IMGUI_API void DockContextQueueDock(ImGuiContext* ctx, ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload, ImGuiDir split_dir, float split_ratio, bool split_outer); IMGUI_API void DockContextQueueUndockWindow(ImGuiContext* ctx, ImGuiWindow* window); IMGUI_API void DockContextQueueUndockNode(ImGuiContext* ctx, ImGuiDockNode* node); - IMGUI_API bool DockContextCalcDropPosForDocking(ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload, ImGuiDir split_dir, bool split_outer, ImVec2* out_pos); + IMGUI_API void DockContextProcessUndockWindow(ImGuiContext* ctx, ImGuiWindow* window, bool clear_persistent_docking_ref = true); + IMGUI_API void DockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node); + IMGUI_API bool DockContextCalcDropPosForDocking(ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload_window, ImGuiDockNode* payload_node, ImGuiDir split_dir, bool split_outer, ImVec2* out_pos); + IMGUI_API ImGuiDockNode*DockContextFindNodeByID(ImGuiContext* ctx, ImGuiID id); + IMGUI_API void DockNodeWindowMenuHandler_Default(ImGuiContext* ctx, ImGuiDockNode* node, ImGuiTabBar* tab_bar); IMGUI_API bool DockNodeBeginAmendTabBar(ImGuiDockNode* node); IMGUI_API void DockNodeEndAmendTabBar(); inline ImGuiDockNode* DockNodeGetRootNode(ImGuiDockNode* node) { while (node->ParentNode) node = node->ParentNode; return node; } @@ -3028,10 +3299,24 @@ namespace ImGui IMGUI_API void DockBuilderCopyWindowSettings(const char* src_name, const char* dst_name); IMGUI_API void DockBuilderFinish(ImGuiID node_id); + // [EXPERIMENTAL] Focus Scope + // This is generally used to identify a unique input location (for e.g. a selection set) + // There is one per window (automatically set in Begin), but: + // - Selection patterns generally need to react (e.g. clear a selection) when landing on one item of the set. + // So in order to identify a set multiple lists in same window may each need a focus scope. + // If you imagine an hypothetical BeginSelectionGroup()/EndSelectionGroup() api, it would likely call PushFocusScope()/EndFocusScope() + // - Shortcut routing also use focus scope as a default location identifier if an owner is not provided. + // We don't use the ID Stack for this as it is common to want them separate. + IMGUI_API void PushFocusScope(ImGuiID id); + IMGUI_API void PopFocusScope(); + inline ImGuiID GetCurrentFocusScope() { ImGuiContext& g = *GImGui; return g.CurrentFocusScopeId; } // Focus scope we are outputting into, set by PushFocusScope() + // Drag and Drop + IMGUI_API bool IsDragDropActive(); IMGUI_API bool BeginDragDropTargetCustom(const ImRect& bb, ImGuiID id); IMGUI_API void ClearDragDrop(); IMGUI_API bool IsDragDropPayloadBeingAccepted(); + IMGUI_API void RenderDragDropTargetRect(const ImRect& bb); // Internal Columns API (this is not exposed because we will encourage transitioning to the Tables API) IMGUI_API void SetWindowClipRectBeforeSetChannel(ImGuiWindow* window, const ImRect& clip_rect); @@ -3066,8 +3351,10 @@ namespace ImGui IMGUI_API void TableUpdateColumnsWeightFromWidth(ImGuiTable* table); IMGUI_API void TableDrawBorders(ImGuiTable* table); IMGUI_API void TableDrawContextMenu(ImGuiTable* table); + IMGUI_API bool TableBeginContextMenuPopup(ImGuiTable* table); IMGUI_API void TableMergeDrawChannels(ImGuiTable* table); - inline ImGuiTableInstanceData* TableGetInstanceData(ImGuiTable* table, int instance_no) { if (instance_no == 0) return &table->InstanceDataFirst; return &table->InstanceDataExtra[instance_no - 1]; } + inline ImGuiTableInstanceData* TableGetInstanceData(ImGuiTable* table, int instance_no) { if (instance_no == 0) return &table->InstanceDataFirst; return &table->InstanceDataExtra[instance_no - 1]; } + inline ImGuiID TableGetInstanceID(ImGuiTable* table, int instance_no) { return TableGetInstanceData(table, instance_no)->TableInstanceID; } IMGUI_API void TableSortSpecsSanitize(ImGuiTable* table); IMGUI_API void TableSortSpecsBuild(ImGuiTable* table); IMGUI_API ImGuiSortDirection TableGetColumnNextSortDirection(ImGuiTableColumn* column); @@ -3079,7 +3366,7 @@ namespace ImGui IMGUI_API void TableEndCell(ImGuiTable* table); IMGUI_API ImRect TableGetCellBgRect(const ImGuiTable* table, int column_n); IMGUI_API const char* TableGetColumnName(const ImGuiTable* table, int column_n); - IMGUI_API ImGuiID TableGetColumnResizeID(const ImGuiTable* table, int column_n, int instance_no = 0); + IMGUI_API ImGuiID TableGetColumnResizeID(ImGuiTable* table, int column_n, int instance_no = 0); IMGUI_API float TableGetMaxColumnWidth(const ImGuiTable* table, int column_n); IMGUI_API void TableSetColumnWidthAutoSingle(ImGuiTable* table, int column_n); IMGUI_API void TableSetColumnWidthAutoAll(ImGuiTable* table); @@ -3098,17 +3385,24 @@ namespace ImGui IMGUI_API ImGuiTableSettings* TableSettingsFindByID(ImGuiID id); // Tab Bars + inline ImGuiTabBar* GetCurrentTabBar() { ImGuiContext& g = *GImGui; return g.CurrentTabBar; } IMGUI_API bool BeginTabBarEx(ImGuiTabBar* tab_bar, const ImRect& bb, ImGuiTabBarFlags flags, ImGuiDockNode* dock_node); IMGUI_API ImGuiTabItem* TabBarFindTabByID(ImGuiTabBar* tab_bar, ImGuiID tab_id); + IMGUI_API ImGuiTabItem* TabBarFindTabByOrder(ImGuiTabBar* tab_bar, int order); IMGUI_API ImGuiTabItem* TabBarFindMostRecentlySelectedTabForActiveWindow(ImGuiTabBar* tab_bar); + IMGUI_API ImGuiTabItem* TabBarGetCurrentTab(ImGuiTabBar* tab_bar); + inline int TabBarGetTabOrder(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { return tab_bar->Tabs.index_from_ptr(tab); } + IMGUI_API const char* TabBarGetTabName(ImGuiTabBar* tab_bar, ImGuiTabItem* tab); IMGUI_API void TabBarAddTab(ImGuiTabBar* tab_bar, ImGuiTabItemFlags tab_flags, ImGuiWindow* window); IMGUI_API void TabBarRemoveTab(ImGuiTabBar* tab_bar, ImGuiID tab_id); IMGUI_API void TabBarCloseTab(ImGuiTabBar* tab_bar, ImGuiTabItem* tab); - IMGUI_API void TabBarQueueReorder(ImGuiTabBar* tab_bar, const ImGuiTabItem* tab, int offset); - IMGUI_API void TabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar, const ImGuiTabItem* tab, ImVec2 mouse_pos); + IMGUI_API void TabBarQueueFocus(ImGuiTabBar* tab_bar, ImGuiTabItem* tab); + IMGUI_API void TabBarQueueReorder(ImGuiTabBar* tab_bar, ImGuiTabItem* tab, int offset); + IMGUI_API void TabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar, ImGuiTabItem* tab, ImVec2 mouse_pos); IMGUI_API bool TabBarProcessReorder(ImGuiTabBar* tab_bar); IMGUI_API bool TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, ImGuiTabItemFlags flags, ImGuiWindow* docked_window); - IMGUI_API ImVec2 TabItemCalcSize(const char* label, bool has_close_button); + IMGUI_API ImVec2 TabItemCalcSize(const char* label, bool has_close_button_or_unsaved_marker); + IMGUI_API ImVec2 TabItemCalcSize(ImGuiWindow* window); IMGUI_API void TabItemBackground(ImDrawList* draw_list, const ImRect& bb, ImGuiTabItemFlags flags, ImU32 col); IMGUI_API void TabItemLabelAndCloseButton(ImDrawList* draw_list, const ImRect& bb, ImGuiTabItemFlags flags, ImVec2 frame_padding, const char* label, ImGuiID tab_id, ImGuiID close_button_id, bool is_contents_visible, bool* out_just_closed, bool* out_text_clipped); @@ -3140,19 +3434,22 @@ namespace ImGui // Widgets IMGUI_API void TextEx(const char* text, const char* text_end = NULL, ImGuiTextFlags flags = 0); IMGUI_API bool ButtonEx(const char* label, const ImVec2& size_arg = ImVec2(0, 0), ImGuiButtonFlags flags = 0); + IMGUI_API bool ArrowButtonEx(const char* str_id, ImGuiDir dir, ImVec2 size_arg, ImGuiButtonFlags flags = 0); + IMGUI_API bool ImageButtonEx(ImGuiID id, ImTextureID texture_id, const ImVec2& size, const ImVec2& uv0, const ImVec2& uv1, const ImVec4& bg_col, const ImVec4& tint_col, ImGuiButtonFlags flags = 0); + IMGUI_API void SeparatorEx(ImGuiSeparatorFlags flags, float thickness = 1.0f); + IMGUI_API void SeparatorTextEx(ImGuiID id, const char* label, const char* label_end, float extra_width); + IMGUI_API bool CheckboxFlags(const char* label, ImS64* flags, ImS64 flags_value); + IMGUI_API bool CheckboxFlags(const char* label, ImU64* flags, ImU64 flags_value); + + // Widgets: Window Decorations IMGUI_API bool CloseButton(ImGuiID id, const ImVec2& pos); IMGUI_API bool CollapseButton(ImGuiID id, const ImVec2& pos, ImGuiDockNode* dock_node); - IMGUI_API bool ArrowButtonEx(const char* str_id, ImGuiDir dir, ImVec2 size_arg, ImGuiButtonFlags flags = 0); IMGUI_API void Scrollbar(ImGuiAxis axis); IMGUI_API bool ScrollbarEx(const ImRect& bb, ImGuiID id, ImGuiAxis axis, ImS64* p_scroll_v, ImS64 avail_v, ImS64 contents_v, ImDrawFlags flags); - IMGUI_API bool ImageButtonEx(ImGuiID id, ImTextureID texture_id, const ImVec2& size, const ImVec2& uv0, const ImVec2& uv1, const ImVec2& padding, const ImVec4& bg_col, const ImVec4& tint_col); IMGUI_API ImRect GetWindowScrollbarRect(ImGuiWindow* window, ImGuiAxis axis); IMGUI_API ImGuiID GetWindowScrollbarID(ImGuiWindow* window, ImGuiAxis axis); IMGUI_API ImGuiID GetWindowResizeCornerID(ImGuiWindow* window, int n); // 0..3: corners IMGUI_API ImGuiID GetWindowResizeBorderID(ImGuiWindow* window, ImGuiDir dir); - IMGUI_API void SeparatorEx(ImGuiSeparatorFlags flags); - IMGUI_API bool CheckboxFlags(const char* label, ImS64* flags, ImS64 flags_value); - IMGUI_API bool CheckboxFlags(const char* label, ImU64* flags, ImU64 flags_value); // Widgets low-level behaviors IMGUI_API bool ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool* out_held, ImGuiButtonFlags flags = 0); @@ -3160,8 +3457,9 @@ namespace ImGui IMGUI_API bool SliderBehavior(const ImRect& bb, ImGuiID id, ImGuiDataType data_type, void* p_v, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags, ImRect* out_grab_bb); IMGUI_API bool SplitterBehavior(const ImRect& bb, ImGuiID id, ImGuiAxis axis, float* size1, float* size2, float min_size1, float min_size2, float hover_extend = 0.0f, float hover_visibility_delay = 0.0f, ImU32 bg_col = 0); IMGUI_API bool TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* label, const char* label_end = NULL); - IMGUI_API bool TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags = 0); // Consume previous SetNextItemOpen() data, if any. May return true when logging IMGUI_API void TreePushOverrideID(ImGuiID id); + IMGUI_API void TreeNodeSetOpen(ImGuiID id, bool open); + IMGUI_API bool TreeNodeUpdateNextOpen(ImGuiID id, ImGuiTreeNodeFlags flags); // Return open state. Consume previous SetNextItemOpen() data, if any. May return true when logging. // Template functions are instantiated in imgui_widgets.cpp for a finite number of types. // To use them externally (for custom widget) you may need an "extern template" statement in your code in order to link to existing instances and silence Clang warnings (see #2036). @@ -3183,10 +3481,11 @@ namespace ImGui // InputText IMGUI_API bool InputTextEx(const char* label, const char* hint, char* buf, int buf_size, const ImVec2& size_arg, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); + IMGUI_API void InputTextDeactivateHook(ImGuiID id); IMGUI_API bool TempInputText(const ImRect& bb, ImGuiID id, const char* label, char* buf, int buf_size, ImGuiInputTextFlags flags); IMGUI_API bool TempInputScalar(const ImRect& bb, ImGuiID id, const char* label, ImGuiDataType data_type, void* p_data, const char* format, const void* p_clamp_min = NULL, const void* p_clamp_max = NULL); inline bool TempInputIsActive(ImGuiID id) { ImGuiContext& g = *GImGui; return (g.ActiveId == id && g.TempInputId == id); } - inline ImGuiInputTextState* GetInputTextState(ImGuiID id) { ImGuiContext& g = *GImGui; return (g.InputTextState.ID == id) ? &g.InputTextState : NULL; } // Get input text state if active + inline ImGuiInputTextState* GetInputTextState(ImGuiID id) { ImGuiContext& g = *GImGui; return (id != 0 && g.InputTextState.ID == id) ? &g.InputTextState : NULL; } // Get input text state if active // Color IMGUI_API void ColorTooltip(const char* text, const float* col, ImGuiColorEditFlags flags); @@ -3194,7 +3493,7 @@ namespace ImGui IMGUI_API void ColorPickerOptionsPopup(const float* ref_col, ImGuiColorEditFlags flags); // Plot - IMGUI_API int PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 frame_size); + IMGUI_API int PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, const ImVec2& size_arg); // Shade functions (write over already created vertices) IMGUI_API void ShadeVertsLinearColorGradientKeepAlpha(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, ImVec2 gradient_p0, ImVec2 gradient_p1, ImU32 col0, ImU32 col1); @@ -3205,12 +3504,19 @@ namespace ImGui IMGUI_API void GcCompactTransientWindowBuffers(ImGuiWindow* window); IMGUI_API void GcAwakeTransientWindowBuffers(ImGuiWindow* window); + // Debug Log + IMGUI_API void DebugLog(const char* fmt, ...) IM_FMTARGS(1); + IMGUI_API void DebugLogV(const char* fmt, va_list args) IM_FMTLIST(1); + // Debug Tools IMGUI_API void ErrorCheckEndFrameRecover(ImGuiErrorLogCallback log_callback, void* user_data = NULL); IMGUI_API void ErrorCheckEndWindowRecover(ImGuiErrorLogCallback log_callback, void* user_data = NULL); + IMGUI_API void ErrorCheckUsingSetCursorPosToExtendParentBoundaries(); + IMGUI_API void DebugLocateItem(ImGuiID target_id); // Call sparingly: only 1 at the same time! + IMGUI_API void DebugLocateItemOnHover(ImGuiID target_id); // Only call on reaction to a mouse Hover: because only 1 at the same time! + IMGUI_API void DebugLocateItemResolveWithLastItem(); inline void DebugDrawItemRect(ImU32 col = IM_COL32(255,0,0,255)) { ImGuiContext& g = *GImGui; ImGuiWindow* window = g.CurrentWindow; GetForegroundDrawList(window)->AddRect(g.LastItemData.Rect.Min, g.LastItemData.Rect.Max, col); } inline void DebugStartItemPicker() { ImGuiContext& g = *GImGui; g.DebugItemPickerActive = true; } - IMGUI_API void ShowFontAtlas(ImFontAtlas* atlas); IMGUI_API void DebugHookIdInfo(ImGuiID id, ImGuiDataType data_type, const void* data_id, const void* data_id_end); IMGUI_API void DebugNodeColumns(ImGuiOldColumns* columns); @@ -3223,13 +3529,32 @@ namespace ImGui IMGUI_API void DebugNodeTabBar(ImGuiTabBar* tab_bar, const char* label); IMGUI_API void DebugNodeTable(ImGuiTable* table); IMGUI_API void DebugNodeTableSettings(ImGuiTableSettings* settings); + IMGUI_API void DebugNodeInputTextState(ImGuiInputTextState* state); IMGUI_API void DebugNodeWindow(ImGuiWindow* window, const char* label); IMGUI_API void DebugNodeWindowSettings(ImGuiWindowSettings* settings); IMGUI_API void DebugNodeWindowsList(ImVector* windows, const char* label); IMGUI_API void DebugNodeWindowsListByBeginStackParent(ImGuiWindow** windows, int windows_size, ImGuiWindow* parent_in_begin_stack); IMGUI_API void DebugNodeViewport(ImGuiViewportP* viewport); + IMGUI_API void DebugRenderKeyboardPreview(ImDrawList* draw_list); IMGUI_API void DebugRenderViewportThumbnail(ImDrawList* draw_list, ImGuiViewportP* viewport, const ImRect& bb); + // Obsolete functions +#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS + inline void SetItemUsingMouseWheel() { SetItemKeyOwner(ImGuiKey_MouseWheelY); } // Changed in 1.89 + inline bool TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags = 0) { return TreeNodeUpdateNextOpen(id, flags); } // Renamed in 1.89 + + // Refactored focus/nav/tabbing system in 1.82 and 1.84. If you have old/custom copy-and-pasted widgets that used FocusableItemRegister(): + // (Old) IMGUI_VERSION_NUM < 18209: using 'ItemAdd(....)' and 'bool tab_focused = FocusableItemRegister(...)' + // (Old) IMGUI_VERSION_NUM >= 18209: using 'ItemAdd(..., ImGuiItemAddFlags_Focusable)' and 'bool tab_focused = (GetItemStatusFlags() & ImGuiItemStatusFlags_Focused) != 0' + // (New) IMGUI_VERSION_NUM >= 18413: using 'ItemAdd(..., ImGuiItemFlags_Inputable)' and 'bool tab_focused = (GetItemStatusFlags() & ImGuiItemStatusFlags_FocusedTabbing) != 0 || (g.NavActivateId == id && (g.NavActivateFlags & ImGuiActivateFlags_PreferInput))' (WIP) + // Widget code are simplified as there's no need to call FocusableItemUnregister() while managing the transition from regular widget to TempInputText() + inline bool FocusableItemRegister(ImGuiWindow* window, ImGuiID id) { IM_ASSERT(0); IM_UNUSED(window); IM_UNUSED(id); return false; } // -> pass ImGuiItemAddFlags_Inputable flag to ItemAdd() + inline void FocusableItemUnregister(ImGuiWindow* window) { IM_ASSERT(0); IM_UNUSED(window); } // -> unnecessary: TempInputText() uses ImGuiInputTextFlags_MergedItem +#endif +#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO + inline bool IsKeyPressedMap(ImGuiKey key, bool repeat = true) { IM_ASSERT(IsNamedKey(key)); return IsKeyPressed(key, repeat); } // Removed in 1.87: Mapping from named key is always identity! +#endif + } // namespace ImGui @@ -3261,14 +3586,15 @@ IMGUI_API void ImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table //----------------------------------------------------------------------------- #ifdef IMGUI_ENABLE_TEST_ENGINE -extern void ImGuiTestEngineHook_ItemAdd(ImGuiContext* ctx, const ImRect& bb, ImGuiID id); +extern void ImGuiTestEngineHook_ItemAdd(ImGuiContext* ctx, ImGuiID id, const ImRect& bb, const ImGuiLastItemData* item_data); // item_data may be NULL extern void ImGuiTestEngineHook_ItemInfo(ImGuiContext* ctx, ImGuiID id, const char* label, ImGuiItemStatusFlags flags); extern void ImGuiTestEngineHook_Log(ImGuiContext* ctx, const char* fmt, ...); extern const char* ImGuiTestEngine_FindItemDebugLabel(ImGuiContext* ctx, ImGuiID id); -#define IMGUI_TEST_ENGINE_ITEM_ADD(_BB,_ID) if (g.TestEngineHookItems) ImGuiTestEngineHook_ItemAdd(&g, _BB, _ID) // Register item bounding box -#define IMGUI_TEST_ENGINE_ITEM_INFO(_ID,_LABEL,_FLAGS) if (g.TestEngineHookItems) ImGuiTestEngineHook_ItemInfo(&g, _ID, _LABEL, _FLAGS) // Register item label and status flags (optional) -#define IMGUI_TEST_ENGINE_LOG(_FMT,...) if (g.TestEngineHookItems) ImGuiTestEngineHook_Log(&g, _FMT, __VA_ARGS__) // Custom log entry from user land into test log +// In IMGUI_VERSION_NUM >= 18934: changed IMGUI_TEST_ENGINE_ITEM_ADD(bb,id) to IMGUI_TEST_ENGINE_ITEM_ADD(id,bb,item_data); +#define IMGUI_TEST_ENGINE_ITEM_ADD(_ID,_BB,_ITEM_DATA) if (g.TestEngineHookItems) ImGuiTestEngineHook_ItemAdd(&g, _ID, _BB, _ITEM_DATA) // Register item bounding box +#define IMGUI_TEST_ENGINE_ITEM_INFO(_ID,_LABEL,_FLAGS) if (g.TestEngineHookItems) ImGuiTestEngineHook_ItemInfo(&g, _ID, _LABEL, _FLAGS) // Register item label and status flags (optional) +#define IMGUI_TEST_ENGINE_LOG(_FMT,...) if (g.TestEngineHookItems) ImGuiTestEngineHook_Log(&g, _FMT, __VA_ARGS__) // Custom log entry from user land into test log #else #define IMGUI_TEST_ENGINE_ITEM_ADD(_BB,_ID) ((void)0) #define IMGUI_TEST_ENGINE_ITEM_INFO(_ID,_LABEL,_FLAGS) ((void)g) diff --git a/extern/imgui_patched/imgui_tables.cpp b/extern/imgui_patched/imgui_tables.cpp index 46bf0b13..8850094d 100644 --- a/extern/imgui_patched/imgui_tables.cpp +++ b/extern/imgui_patched/imgui_tables.cpp @@ -1,4 +1,4 @@ -// dear imgui, v1.88 WIP +// dear imgui, v1.89.6 // (tables and columns code) /* @@ -80,20 +80,20 @@ Index of this file: // - outer_size.x <= 0.0f -> Right-align from window/work-rect right-most edge. With -FLT_MIN or 0.0f will align exactly on right-most edge. // - outer_size.x > 0.0f -> Set Fixed width. // Y with ScrollX/ScrollY disabled: we output table directly in current window -// - outer_size.y < 0.0f -> Bottom-align (but will auto extend, unless _NoHostExtendY is set). Not meaningful is parent window can vertically scroll. +// - outer_size.y < 0.0f -> Bottom-align (but will auto extend, unless _NoHostExtendY is set). Not meaningful if parent window can vertically scroll. // - outer_size.y = 0.0f -> No minimum height (but will auto extend, unless _NoHostExtendY is set) // - outer_size.y > 0.0f -> Set Minimum height (but will auto extend, unless _NoHostExtenY is set) // Y with ScrollX/ScrollY enabled: using a child window for scrolling -// - outer_size.y < 0.0f -> Bottom-align. Not meaningful is parent window can vertically scroll. +// - outer_size.y < 0.0f -> Bottom-align. Not meaningful if parent window can vertically scroll. // - outer_size.y = 0.0f -> Bottom-align, consistent with BeginChild(). Not recommended unless table is last item in parent window. // - outer_size.y > 0.0f -> Set Exact height. Recommended when using Scrolling on any axis. //----------------------------------------------------------------------------- // Outer size is also affected by the NoHostExtendX/NoHostExtendY flags. -// Important to that note how the two flags have slightly different behaviors! +// Important to note how the two flags have slightly different behaviors! // - ImGuiTableFlags_NoHostExtendX -> Make outer width auto-fit to columns (overriding outer_size.x value). Only available when ScrollX/ScrollY are disabled and Stretch columns are not used. // - ImGuiTableFlags_NoHostExtendY -> Make outer height stop exactly at outer_size.y (prevent auto-extending table past the limit). Only available when ScrollX/ScrollY is disabled. Data below the limit will be clipped and not visible. // In theory ImGuiTableFlags_NoHostExtendY could be the default and any non-scrolling tables with outer_size.y != 0.0f would use exact height. -// This would be consistent but perhaps less useful and more confusing (as vertically clipped items are not easily noticeable) +// This would be consistent but perhaps less useful and more confusing (as vertically clipped items are not useful and not easily noticeable). //----------------------------------------------------------------------------- // About 'inner_width': // With ScrollX disabled: @@ -112,15 +112,16 @@ Index of this file: //----------------------------------------------------------------------------- // COLUMNS SIZING POLICIES +// (Reference: ImGuiTableFlags_SizingXXX flags and ImGuiTableColumnFlags_WidthXXX flags) //----------------------------------------------------------------------------- // About overriding column sizing policy and width/weight with TableSetupColumn(): -// We use a default parameter of 'init_width_or_weight == -1'. +// We use a default parameter of -1 for 'init_width'/'init_weight'. // - with ImGuiTableColumnFlags_WidthFixed, init_width <= 0 (default) --> width is automatic // - with ImGuiTableColumnFlags_WidthFixed, init_width > 0 (explicit) --> width is custom // - with ImGuiTableColumnFlags_WidthStretch, init_weight <= 0 (default) --> weight is 1.0f // - with ImGuiTableColumnFlags_WidthStretch, init_weight > 0 (explicit) --> weight is custom // Widths are specified _without_ CellPadding. If you specify a width of 100.0f, the column will be cover (100.0f + Padding * 2.0f) -// and you can fit a 100.0f wide item in it without clipping and with full padding. +// and you can fit a 100.0f wide item in it without clipping and with padding honored. //----------------------------------------------------------------------------- // About default sizing policy (if you don't specify a ImGuiTableColumnFlags_WidthXXXX flag) // - with Table policy ImGuiTableFlags_SizingFixedFit --> default Column policy is ImGuiTableColumnFlags_WidthFixed, default Width is equal to contents width @@ -134,10 +135,10 @@ Index of this file: // - using mixed policies with ScrollX does not make much sense, as using Stretch columns with ScrollX does not make much sense in the first place! // that is, unless 'inner_width' is passed to BeginTable() to explicitly provide a total width to layout columns in. // - when using ImGuiTableFlags_SizingFixedSame with mixed columns, only the Fixed/Auto columns will match their widths to the width of the maximum contents. -// - when using ImGuiTableFlags_SizingStretchSame with mixed columns, only the Stretch columns will match their weight/widths. +// - when using ImGuiTableFlags_SizingStretchSame with mixed columns, only the Stretch columns will match their weights/widths. //----------------------------------------------------------------------------- // About using column width: -// If a column is manual resizable or has a width specified with TableSetupColumn(): +// If a column is manually resizable or has a width specified with TableSetupColumn(): // - you may use GetContentRegionAvail().x to query the width available in a given column. // - right-side alignment features such as SetNextItemWidth(-x) or PushItemWidth(-x) will rely on this width. // If the column is not resizable and has no width specified with TableSetupColumn(): @@ -151,7 +152,7 @@ Index of this file: // TABLES CLIPPING/CULLING //----------------------------------------------------------------------------- // About clipping/culling of Rows in Tables: -// - For large numbers of rows, it is recommended you use ImGuiListClipper to only submit visible rows. +// - For large numbers of rows, it is recommended you use ImGuiListClipper to submit only visible rows. // ImGuiListClipper is reliant on the fact that rows are of equal height. // See 'Demo->Tables->Vertical Scrolling' or 'Demo->Tables->Advanced' for a demo of using the clipper. // - Note that auto-resizing columns don't play well with using the clipper. @@ -168,7 +169,7 @@ Index of this file: // - Case C: column is hidden explicitly by the user (e.g. via the context menu, or _DefaultHide column flag, etc.). // // [A] [B] [C] -// TableNextColumn(): true false false -> [userland] when TableNextColumn() / TableSetColumnIndex() return false, user can skip submitting items but only if the column doesn't contribute to row height. +// TableNextColumn(): true false false -> [userland] when TableNextColumn() / TableSetColumnIndex() returns false, user can skip submitting items but only if the column doesn't contribute to row height. // SkipItems: false false true -> [internal] when SkipItems is true, most widgets will early out if submitted, resulting is no layout output. // ClipRect: normal zero-width zero-width -> [internal] when ClipRect is zero, ItemAdd() will return false and most widgets will early out mid-way. // ImDrawList output: normal dummy dummy -> [internal] when using the dummy channel, ImDrawList submissions (if any) will be wasted (because cliprect is zero-width anyway). @@ -188,12 +189,12 @@ Index of this file: #define _CRT_SECURE_NO_WARNINGS #endif -#include "imgui.h" -#ifndef IMGUI_DISABLE - #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif + +#include "imgui.h" +#ifndef IMGUI_DISABLE #include "imgui_internal.h" // System includes @@ -315,11 +316,11 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG return false; // Sanity checks - IM_ASSERT(columns_count > 0 && "Only 1..64 columns allowed!"); + IM_ASSERT(columns_count > 0 && columns_count < IMGUI_TABLE_MAX_COLUMNS); if (flags & ImGuiTableFlags_ScrollX) IM_ASSERT(inner_width >= 0.0f); - // If an outer size is specified ahead we will be able to early out when not visible. Exact clipping rules may evolve. + // If an outer size is specified ahead we will be able to early out when not visible. Exact clipping criteria may evolve. const bool use_child_window = (flags & (ImGuiTableFlags_ScrollX | ImGuiTableFlags_ScrollY)) != 0; const ImVec2 avail_size = GetContentRegionAvail(); ImVec2 actual_outer_size = CalcItemSize(outer_size, ImMax(avail_size.x, 1.0f), use_child_window ? ImMax(avail_size.y, 1.0f) : 0.0f); @@ -332,11 +333,7 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG // Acquire storage for the table ImGuiTable* table = g.Tables.GetOrAddByKey(id); - const int instance_no = (table->LastFrameActive != g.FrameCount) ? 0 : table->InstanceCurrent + 1; - const ImGuiID instance_id = id + instance_no; const ImGuiTableFlags table_last_flags = table->Flags; - if (instance_no > 0) - IM_ASSERT(table->ColumnsCount == columns_count && "BeginTable(): Cannot change columns count mid-frame while preserving same ID"); // Acquire temporary buffers const int table_idx = g.Tables.GetIndex(table); @@ -352,27 +349,32 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG flags = TableFixFlags(flags, outer_window); // Initialize + const int instance_no = (table->LastFrameActive != g.FrameCount) ? 0 : table->InstanceCurrent + 1; table->ID = id; table->Flags = flags; - table->InstanceCurrent = (ImS16)instance_no; table->LastFrameActive = g.FrameCount; table->OuterWindow = table->InnerWindow = outer_window; table->ColumnsCount = columns_count; - if (table->EnabledMaskByDisplayOrder.BitCount < columns_count || - table->EnabledMaskByIndex.BitCount < columns_count || - table->VisibleMaskByIndex.BitCount < columns_count || - table->RequestOutputMaskByIndex.BitCount < columns_count) - { - table->EnabledMaskByDisplayOrder.Create(columns_count); - table->EnabledMaskByIndex.Create(columns_count); - table->VisibleMaskByIndex.Create(columns_count); - table->RequestOutputMaskByIndex.Create(columns_count); - } table->IsLayoutLocked = false; table->InnerWidth = inner_width; temp_data->UserOuterSize = outer_size; - if (instance_no > 0 && table->InstanceDataExtra.Size < instance_no) - table->InstanceDataExtra.push_back(ImGuiTableInstanceData()); + + // Instance data (for instance 0, TableID == TableInstanceID) + ImGuiID instance_id; + table->InstanceCurrent = (ImS16)instance_no; + if (instance_no > 0) + { + IM_ASSERT(table->ColumnsCount == columns_count && "BeginTable(): Cannot change columns count mid-frame while preserving same ID"); + if (table->InstanceDataExtra.Size < instance_no) + table->InstanceDataExtra.push_back(ImGuiTableInstanceData()); + instance_id = GetIDWithSeed(instance_no, GetIDWithSeed("##Instances", NULL, id)); // Push "##Instances" followed by (int)instance_no in ID stack. + } + else + { + instance_id = id; + } + ImGuiTableInstanceData* table_instance = TableGetInstanceData(table, table->InstanceCurrent); + table_instance->TableInstanceID = instance_id; // When not using a child window, WorkRect.Max will grow as we append contents. if (use_child_window) @@ -405,6 +407,14 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG table->OuterRect = table->InnerWindow->Rect(); table->InnerRect = table->InnerWindow->InnerRect; IM_ASSERT(table->InnerWindow->WindowPadding.x == 0.0f && table->InnerWindow->WindowPadding.y == 0.0f && table->InnerWindow->WindowBorderSize == 0.0f); + + // When using multiple instances, ensure they have the same amount of horizontal decorations (aka vertical scrollbar) so stretched columns can be aligned) + if (instance_no == 0) + { + table->HasScrollbarYPrev = table->HasScrollbarYCurr; + table->HasScrollbarYCurr = false; + } + table->HasScrollbarYCurr |= (table->InnerWindow->ScrollMax.y > 0.0f); } else { @@ -414,7 +424,9 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG } // Push a standardized ID for both child-using and not-child-using tables - PushOverrideID(instance_id); + PushOverrideID(id); + if (instance_no > 0) + PushOverrideID(instance_id); // FIXME: Somehow this is not resolved by stack-tool, even tho GetIDWithSeed() submitted the symbol. // Backup a copy of host window members we will modify ImGuiWindow* inner_window = table->InnerWindow; @@ -466,12 +478,13 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG table->IsUnfrozenRows = true; table->DeclColumnsCount = 0; - // Using opaque colors facilitate overlapping elements of the grid + // Using opaque colors facilitate overlapping lines of the grid, otherwise we'd need to improve TableDrawBorders() table->BorderColorStrong = GetColorU32(ImGuiCol_TableBorderStrong); table->BorderColorLight = GetColorU32(ImGuiCol_TableBorderLight); // Make table current g.CurrentTable = table; + outer_window->DC.NavIsScrollPushableX = false; // Shortcut for NavUpdateCurrentWindowIsScrollPushableX(); outer_window->DC.CurrentTableIdx = table_idx; if (inner_window != outer_window) // So EndChild() within the inner window can restore the table properly. inner_window->DC.CurrentTableIdx = table_idx; @@ -479,7 +492,7 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG if ((table_last_flags & ImGuiTableFlags_Reorderable) && (flags & ImGuiTableFlags_Reorderable) == 0) table->IsResetDisplayOrderRequest = true; - // Mark as used + // Mark as used to avoid GC if (table_idx >= g.TablesLastTimeActive.Size) g.TablesLastTimeActive.resize(table_idx + 1, -1.0f); g.TablesLastTimeActive[table_idx] = (float)g.Time; @@ -549,7 +562,7 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG if (table->RefScale != 0.0f && table->RefScale != new_ref_scale_unit) { const float scale_factor = new_ref_scale_unit / table->RefScale; - //IMGUI_DEBUG_LOG("[table] %08X RefScaleUnit %.3f -> %.3f, scaling width by %.3f\n", table->ID, table->RefScaleUnit, new_ref_scale_unit, scale_factor); + //IMGUI_DEBUG_PRINT("[table] %08X RefScaleUnit %.3f -> %.3f, scaling width by %.3f\n", table->ID, table->RefScaleUnit, new_ref_scale_unit, scale_factor); for (int n = 0; n < columns_count; n++) table->Columns[n].WidthRequest = table->Columns[n].WidthRequest * scale_factor; } @@ -572,34 +585,40 @@ bool ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG } // For reference, the average total _allocation count_ for a table is: -// + 0 (for ImGuiTable instance, we are pooling allocations in g.Tables) +// + 0 (for ImGuiTable instance, we are pooling allocations in g.Tables[]) // + 1 (for table->RawData allocated below) // + 1 (for table->ColumnsNames, if names are used) -// Shared allocations per number of nested tables +// Shared allocations for the maximum number of simultaneously nested tables (generally a very small number) // + 1 (for table->Splitter._Channels) // + 2 * active_channels_count (for ImDrawCmd and ImDrawIdx buffers inside channels) -// Where active_channels_count is variable but often == columns_count or columns_count + 1, see TableSetupDrawChannels() for details. +// Where active_channels_count is variable but often == columns_count or == columns_count + 1, see TableSetupDrawChannels() for details. // Unused channels don't perform their +2 allocations. void ImGui::TableBeginInitMemory(ImGuiTable* table, int columns_count) { // Allocate single buffer for our arrays - ImSpanAllocator<3> span_allocator; + const int columns_bit_array_size = (int)ImBitArrayGetStorageSizeInBytes(columns_count); + ImSpanAllocator<6> span_allocator; span_allocator.Reserve(0, columns_count * sizeof(ImGuiTableColumn)); span_allocator.Reserve(1, columns_count * sizeof(ImGuiTableColumnIdx)); span_allocator.Reserve(2, columns_count * sizeof(ImGuiTableCellData), 4); + for (int n = 3; n < 6; n++) + span_allocator.Reserve(n, columns_bit_array_size); table->RawData = IM_ALLOC(span_allocator.GetArenaSizeInBytes()); memset(table->RawData, 0, span_allocator.GetArenaSizeInBytes()); span_allocator.SetArenaBasePtr(table->RawData); span_allocator.GetSpan(0, &table->Columns); span_allocator.GetSpan(1, &table->DisplayOrderToIndex); span_allocator.GetSpan(2, &table->RowCellData); + table->EnabledMaskByDisplayOrder = (ImU32*)span_allocator.GetSpanPtrBegin(3); + table->EnabledMaskByIndex = (ImU32*)span_allocator.GetSpanPtrBegin(4); + table->VisibleMaskByIndex = (ImU32*)span_allocator.GetSpanPtrBegin(5); } // Apply queued resizing/reordering/hiding requests void ImGui::TableBeginApplyRequests(ImGuiTable* table) { // Handle resizing request - // (We process this at the first TableBegin of the frame) + // (We process this in the TableBegin() of the first instance of each table) // FIXME-TABLE: Contains columns if our work area doesn't allow for scrolling? if (table->InstanceCurrent == 0) { @@ -644,8 +663,7 @@ void ImGui::TableBeginApplyRequests(ImGuiTable* table) table->Columns[table->DisplayOrderToIndex[order_n]].DisplayOrder -= (ImGuiTableColumnIdx)reorder_dir; IM_ASSERT(dst_column->DisplayOrder == dst_order - reorder_dir); - // Display order is stored in both columns->IndexDisplayOrder and table->DisplayOrder[], - // rebuild the later from the former. + // Display order is stored in both columns->IndexDisplayOrder and table->DisplayOrder[]. Rebuild later from the former. for (int column_n = 0; column_n < table->ColumnsCount; column_n++) table->DisplayOrderToIndex[table->Columns[column_n].DisplayOrder] = (ImGuiTableColumnIdx)column_n; table->ReorderColumnDir = 0; @@ -719,8 +737,8 @@ static void TableSetupColumnFlags(ImGuiTable* table, ImGuiTableColumn* column, I } } -// Layout columns for the frame. This is in essence the followup to BeginTable(). -// Runs on the first call to TableNextRow(), to give a chance for TableSetupColumn() to be called first. +// Layout columns for the frame. This is in essence the followup to BeginTable() and this is our largest function. +// Runs on the first call to TableNextRow(), to give a chance for TableSetupColumn() and other TableSetupXXXXX() functions to be called first. // FIXME-TABLE: Our width (and therefore our WorkRect) will be minimal in the first frame for _WidthAuto columns. // Increase feedback side-effect with widgets relying on WorkRect.Max.x... Maybe provide a default distribution for _WidthAuto columns? void ImGui::TableUpdateLayout(ImGuiTable* table) @@ -731,8 +749,8 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) const ImGuiTableFlags table_sizing_policy = (table->Flags & ImGuiTableFlags_SizingMask_); table->IsDefaultDisplayOrder = true; table->ColumnsEnabledCount = 0; - table->EnabledMaskByIndex.ClearAllBits(); - table->EnabledMaskByDisplayOrder.ClearAllBits(); + ImBitArrayClearAllBits(table->EnabledMaskByIndex, table->ColumnsCount); + ImBitArrayClearAllBits(table->EnabledMaskByDisplayOrder, table->ColumnsCount); table->LeftMostEnabledColumn = -1; table->MinColumnWidth = ImMax(1.0f, g.Style.FramePadding.x * 1.0f); // g.Style.ColumnsMinSpacing; // FIXME-TABLE @@ -797,8 +815,8 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) else table->LeftMostEnabledColumn = (ImGuiTableColumnIdx)column_n; column->IndexWithinEnabledSet = table->ColumnsEnabledCount++; - table->EnabledMaskByIndex.SetBit(column_n); - table->EnabledMaskByDisplayOrder.SetBit(column->DisplayOrder); + ImBitArraySetBit(table->EnabledMaskByIndex, column_n); + ImBitArraySetBit(table->EnabledMaskByDisplayOrder, column->DisplayOrder); prev_visible_column_idx = column_n; IM_ASSERT(column->IndexWithinEnabledSet <= column->DisplayOrder); @@ -841,12 +859,12 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) table->IsSettingsDirty = true; // [Part 3] Fix column flags and record a few extra information. - float sum_width_requests = 0.0f; // Sum of all width for fixed and auto-resize columns, excluding width contributed by Stretch columns but including spacing/padding. - float stretch_sum_weights = 0.0f; // Sum of all weights for stretch columns. + float sum_width_requests = 0.0f; // Sum of all width for fixed and auto-resize columns, excluding width contributed by Stretch columns but including spacing/padding. + float stretch_sum_weights = 0.0f; // Sum of all weights for stretch columns. table->LeftMostStretchedColumn = table->RightMostStretchedColumn = -1; for (int column_n = 0; column_n < table->ColumnsCount; column_n++) { - if (!table->EnabledMaskByIndex.TestBit(column_n)) + if (!IM_BITARRAY_TESTBIT(table->EnabledMaskByIndex, column_n)) continue; ImGuiTableColumn* column = &table->Columns[column_n]; @@ -862,7 +880,7 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) // Latch initial size for fixed columns and update it constantly for auto-resizing column (unless clipped!) if (column->AutoFitQueue != 0x00) column->WidthRequest = width_auto; - else if ((column->Flags & ImGuiTableColumnFlags_WidthFixed) && !column_is_resizable && (table->RequestOutputMaskByIndex.TestBit(column_n))) + else if ((column->Flags & ImGuiTableColumnFlags_WidthFixed) && !column_is_resizable && column->IsRequestOutput) column->WidthRequest = width_auto; // FIXME-TABLE: Increase minimum size during init frame to avoid biasing auto-fitting widgets @@ -903,13 +921,14 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) // [Part 4] Apply final widths based on requested widths const ImRect work_rect = table->WorkRect; const float width_spacings = (table->OuterPaddingX * 2.0f) + (table->CellSpacingX1 + table->CellSpacingX2) * (table->ColumnsEnabledCount - 1); - const float width_avail = ((table->Flags & ImGuiTableFlags_ScrollX) && table->InnerWidth == 0.0f) ? table->InnerClipRect.GetWidth() : work_rect.GetWidth(); + const float width_removed = (table->HasScrollbarYPrev && !table->InnerWindow->ScrollbarY) ? g.Style.ScrollbarSize : 0.0f; // To synchronize decoration width of synched tables with mismatching scrollbar state (#5920) + const float width_avail = ImMax(1.0f, (((table->Flags & ImGuiTableFlags_ScrollX) && table->InnerWidth == 0.0f) ? table->InnerClipRect.GetWidth() : work_rect.GetWidth()) - width_removed); const float width_avail_for_stretched_columns = width_avail - width_spacings - sum_width_requests; float width_remaining_for_stretched_columns = width_avail_for_stretched_columns; table->ColumnsGivenWidth = width_spacings + (table->CellPaddingX * 2.0f) * table->ColumnsEnabledCount; for (int column_n = 0; column_n < table->ColumnsCount; column_n++) { - if (!table->EnabledMaskByIndex.TestBit(column_n)) + if (!IM_BITARRAY_TESTBIT(table->EnabledMaskByIndex, column_n)) continue; ImGuiTableColumn* column = &table->Columns[column_n]; @@ -936,7 +955,7 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) if (width_remaining_for_stretched_columns >= 1.0f && !(table->Flags & ImGuiTableFlags_PreciseWidths)) for (int order_n = table->ColumnsCount - 1; stretch_sum_weights > 0.0f && width_remaining_for_stretched_columns >= 1.0f && order_n >= 0; order_n--) { - if (!table->EnabledMaskByDisplayOrder.TestBit(order_n)) + if (!IM_BITARRAY_TESTBIT(table->EnabledMaskByDisplayOrder, order_n)) continue; ImGuiTableColumn* column = &table->Columns[table->DisplayOrderToIndex[order_n]]; if (!(column->Flags & ImGuiTableColumnFlags_WidthStretch)) @@ -946,11 +965,19 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) width_remaining_for_stretched_columns -= 1.0f; } + // Determine if table is hovered which will be used to flag columns as hovered. + // - In principle we'd like to use the equivalent of IsItemHovered(ImGuiHoveredFlags_AllowWhenBlockedByActiveItem), + // but because our item is partially submitted at this point we use ItemHoverable() and a workaround (temporarily + // clear ActiveId, which is equivalent to the change provided by _AllowWhenBLockedByActiveItem). + // - This allows columns to be marked as hovered when e.g. clicking a button inside the column, or using drag and drop. ImGuiTableInstanceData* table_instance = TableGetInstanceData(table, table->InstanceCurrent); table->HoveredColumnBody = -1; table->HoveredColumnBorder = -1; const ImRect mouse_hit_rect(table->OuterRect.Min.x, table->OuterRect.Min.y, table->OuterRect.Max.x, ImMax(table->OuterRect.Max.y, table->OuterRect.Min.y + table_instance->LastOuterHeight)); + const ImGuiID backup_active_id = g.ActiveId; + g.ActiveId = 0; const bool is_hovering_table = ItemHoverable(mouse_hit_rect, 0); + g.ActiveId = backup_active_id; // [Part 6] Setup final position, offset, skip/clip states and clipping rectangles, detect hovered column // Process columns in their visible orders as we are comparing the visible order and adjusting host_clip_rect while looping. @@ -959,14 +986,13 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) float offset_x = ((table->FreezeColumnsCount > 0) ? table->OuterRect.Min.x : work_rect.Min.x) + table->OuterPaddingX - table->CellSpacingX1; ImRect host_clip_rect = table->InnerClipRect; //host_clip_rect.Max.x += table->CellPaddingX + table->CellSpacingX2; - table->VisibleMaskByIndex.ClearAllBits(); - table->RequestOutputMaskByIndex.ClearAllBits(); + ImBitArrayClearAllBits(table->VisibleMaskByIndex, table->ColumnsCount); for (int order_n = 0; order_n < table->ColumnsCount; order_n++) { const int column_n = table->DisplayOrderToIndex[order_n]; ImGuiTableColumn* column = &table->Columns[column_n]; - column->NavLayerCurrent = (ImS8)((table->FreezeRowsCount > 0 || column_n < table->FreezeColumnsCount) ? ImGuiNavLayer_Menu : ImGuiNavLayer_Main); + column->NavLayerCurrent = (ImS8)(table->FreezeRowsCount > 0 ? ImGuiNavLayer_Menu : ImGuiNavLayer_Main); // Use Count NOT request so Header line changes layer when frozen if (offset_x_frozen && table->FreezeColumnsCount == visible_n) { @@ -977,7 +1003,7 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) // Clear status flags column->Flags &= ~ImGuiTableColumnFlags_StatusMask_; - if (!table->EnabledMaskByDisplayOrder.TestBit(order_n)) + if (!IM_BITARRAY_TESTBIT(table->EnabledMaskByDisplayOrder, order_n)) { // Hidden column: clear a few fields and we are done with it for the remainder of the function. // We set a zero-width clip rect but set Min.y/Max.y properly to not interfere with the clipper. @@ -1030,12 +1056,10 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) column->IsVisibleY = true; // (column->ClipRect.Max.y > column->ClipRect.Min.y); const bool is_visible = column->IsVisibleX; //&& column->IsVisibleY; if (is_visible) - table->VisibleMaskByIndex.SetBit(column_n); + ImBitArraySetBit(table->VisibleMaskByIndex, column_n); // Mark column as requesting output from user. Note that fixed + non-resizable sets are auto-fitting at all times and therefore always request output. column->IsRequestOutput = is_visible || column->AutoFitQueue != 0 || column->CannotSkipItemsQueue != 0; - if (column->IsRequestOutput) - table->RequestOutputMaskByIndex.SetBit(column_n); // Mark column as SkipItems (ignoring all items/layout) column->IsSkipItems = !column->IsEnabled || table->HostSkipItems; @@ -1115,25 +1139,24 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) table->IsUsingHeaders = false; // [Part 11] Context menu - if (table->IsContextPopupOpen && table->InstanceCurrent == table->InstanceInteracted) + if (TableBeginContextMenuPopup(table)) { - const ImGuiID context_menu_id = ImHashStr("##ContextMenu", 0, table->ID); - if (BeginPopupEx(context_menu_id, ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoSavedSettings)) - { - TableDrawContextMenu(table); - EndPopup(); - } - else - { - table->IsContextPopupOpen = false; - } + TableDrawContextMenu(table); + EndPopup(); } - // [Part 13] Sanitize and build sort specs before we have a change to use them for display. + // [Part 12] Sanitize and build sort specs before we have a chance to use them for display. // This path will only be exercised when sort specs are modified before header rows (e.g. init or visibility change) if (table->IsSortSpecsDirty && (table->Flags & ImGuiTableFlags_Sortable)) TableSortSpecsBuild(table); + // [Part 13] Setup inner window decoration size (for scrolling / nav tracking to properly take account of frozen rows/columns) + if (table->FreezeColumnsRequest > 0) + table->InnerWindow->DecoInnerSizeX1 = table->Columns[table->DisplayOrderToIndex[table->FreezeColumnsRequest - 1]].MaxX - table->OuterRect.Min.x; + if (table->FreezeRowsRequest > 0) + table->InnerWindow->DecoInnerSizeY1 = table_instance->LastFrozenHeight; + table_instance->LastFrozenHeight = 0.0f; + // Initial state ImGuiWindow* inner_window = table->InnerWindow; if (table->Flags & ImGuiTableFlags_NoClip) @@ -1143,9 +1166,9 @@ void ImGui::TableUpdateLayout(ImGuiTable* table) } // Process hit-testing on resizing borders. Actual size change will be applied in EndTable() -// - Set table->HoveredColumnBorder with a short delay/timer to reduce feedback noise -// - Submit ahead of table contents and header, use ImGuiButtonFlags_AllowItemOverlap to prioritize widgets -// overlapping the same area. +// - Set table->HoveredColumnBorder with a short delay/timer to reduce visual feedback noise. +// - Submit ahead of table contents and header, use ImGuiButtonFlags_AllowItemOverlap to prioritize +// widgets overlapping the same area. void ImGui::TableUpdateBorders(ImGuiTable* table) { ImGuiContext& g = *GImGui; @@ -1163,7 +1186,7 @@ void ImGui::TableUpdateBorders(ImGuiTable* table) for (int order_n = 0; order_n < table->ColumnsCount; order_n++) { - if (!table->EnabledMaskByDisplayOrder.TestBit(order_n)) + if (!IM_BITARRAY_TESTBIT(table->EnabledMaskByDisplayOrder, order_n)) continue; const int column_n = table->DisplayOrderToIndex[order_n]; @@ -1181,8 +1204,8 @@ void ImGui::TableUpdateBorders(ImGuiTable* table) ImGuiID column_id = TableGetColumnResizeID(table, column_n, table->InstanceCurrent); ImRect hit_rect(column->MaxX - hit_half_width, hit_y1, column->MaxX + hit_half_width, border_y2_hit); + ItemAdd(hit_rect, column_id, NULL, ImGuiItemFlags_NoNav); //GetForegroundDrawList()->AddRect(hit_rect.Min, hit_rect.Max, IM_COL32(255, 0, 0, 100)); - KeepAliveID(column_id); bool hovered = false, held = false; bool pressed = ButtonBehavior(hit_rect, column_id, &hovered, &held, ImGuiButtonFlags_FlattenChildren | ImGuiButtonFlags_AllowItemOverlap | ImGuiButtonFlags_PressedOnClick | ImGuiButtonFlags_PressedOnDoubleClick | ImGuiButtonFlags_NoNavFocus); @@ -1299,7 +1322,7 @@ void ImGui::EndTable() float auto_fit_width_for_stretched = 0.0f; float auto_fit_width_for_stretched_min = 0.0f; for (int column_n = 0; column_n < table->ColumnsCount; column_n++) - if (table->EnabledMaskByIndex.TestBit(column_n)) + if (IM_BITARRAY_TESTBIT(table->EnabledMaskByIndex, column_n)) { ImGuiTableColumn* column = &table->Columns[column_n]; float column_width_request = ((column->Flags & ImGuiTableColumnFlags_WidthFixed) && !(column->Flags & ImGuiTableColumnFlags_NoResize)) ? column->WidthRequest : TableGetColumnWidthAuto(table, column); @@ -1339,8 +1362,10 @@ void ImGui::EndTable() } // Pop from id stack - IM_ASSERT_USER_ERROR(inner_window->IDStack.back() == table->ID + table->InstanceCurrent, "Mismatching PushID/PopID!"); + IM_ASSERT_USER_ERROR(inner_window->IDStack.back() == table_instance->TableInstanceID, "Mismatching PushID/PopID!"); IM_ASSERT_USER_ERROR(outer_window->DC.ItemWidthStack.Size >= temp_data->HostBackupItemWidthStackSize, "Too many PopItemWidth!"); + if (table->InstanceCurrent > 0) + PopID(); PopID(); // Restore window data that we modified @@ -1412,6 +1437,7 @@ void ImGui::EndTable() g.CurrentTable->DrawSplitter = &temp_data->DrawSplitter; } outer_window->DC.CurrentTableIdx = g.CurrentTable ? g.Tables.GetIndex(g.CurrentTable) : -1; + NavUpdateCurrentWindowIsScrollPushableX(); } // See "COLUMN SIZING POLICIES" comments at the top of this file @@ -1490,7 +1516,7 @@ void ImGui::TableSetupScrollFreeze(int columns, int rows) ImGuiTable* table = g.CurrentTable; IM_ASSERT(table != NULL && "Need to call TableSetupColumn() after BeginTable()!"); IM_ASSERT(table->IsLayoutLocked == false && "Need to call TableSetupColumn() before first row!"); - IM_ASSERT(columns >= 0); + IM_ASSERT(columns >= 0 && columns < IMGUI_TABLE_MAX_COLUMNS); IM_ASSERT(rows >= 0 && rows < 128); // Arbitrary limit table->FreezeColumnsRequest = (table->Flags & ImGuiTableFlags_ScrollX) ? (ImGuiTableColumnIdx)ImMin(columns, table->ColumnsCount) : 0; @@ -1610,14 +1636,14 @@ ImRect ImGui::TableGetCellBgRect(const ImGuiTable* table, int column_n) } // Return the resizing ID for the right-side of the given column. -ImGuiID ImGui::TableGetColumnResizeID(const ImGuiTable* table, int column_n, int instance_no) +ImGuiID ImGui::TableGetColumnResizeID(ImGuiTable* table, int column_n, int instance_no) { IM_ASSERT(column_n >= 0 && column_n < table->ColumnsCount); - ImGuiID id = table->ID + 1 + (instance_no * table->ColumnsCount) + column_n; - return id; + ImGuiID instance_id = TableGetInstanceID(table, instance_no); + return instance_id + 1 + column_n; // FIXME: #6140: still not ideal } -// Return -1 when table is not hovered. return columns_count if the unused space at the right of visible columns is hovered. +// Return -1 when table is not hovered. return columns_count if hovering the unused space at the right of the right-most visible column. int ImGui::TableGetHoveredColumn() { ImGuiContext& g = *GImGui; @@ -1645,7 +1671,7 @@ void ImGui::TableSetBgColor(ImGuiTableBgTarget target, ImU32 color, int column_n return; if (column_n == -1) column_n = table->CurrentColumn; - if (!table->VisibleMaskByIndex.TestBit(column_n)) + if (!IM_BITARRAY_TESTBIT(table->VisibleMaskByIndex, column_n)) return; if (table->RowCellDataCurrent < 0 || table->RowCellData[table->RowCellDataCurrent].Column != column_n) table->RowCellDataCurrent++; @@ -1735,6 +1761,8 @@ void ImGui::TableBeginRow(ImGuiTable* table) table->RowTextBaseline = 0.0f; table->RowIndentOffsetX = window->DC.Indent.x - table->HostIndentX; // Lock indent window->DC.PrevLineTextBaseOffset = 0.0f; + window->DC.CurrLineSize = ImVec2(0.0f, 0.0f); + window->DC.IsSameLine = window->DC.IsSetPos = false; window->DC.CursorMaxPos.y = next_y1; // Making the header BG color non-transparent will allow us to overlay it multiple times when handling smooth dragging. @@ -1847,17 +1875,15 @@ void ImGui::TableEndRow(ImGuiTable* table) // get the new cursor position. if (unfreeze_rows_request) for (int column_n = 0; column_n < table->ColumnsCount; column_n++) - { - ImGuiTableColumn* column = &table->Columns[column_n]; - column->NavLayerCurrent = (ImS8)((column_n < table->FreezeColumnsCount) ? ImGuiNavLayer_Menu : ImGuiNavLayer_Main); - } + table->Columns[column_n].NavLayerCurrent = ImGuiNavLayer_Main; if (unfreeze_rows_actual) { IM_ASSERT(table->IsUnfrozenRows == false); + const float y0 = ImMax(table->RowPosY2 + 1, window->InnerClipRect.Min.y); table->IsUnfrozenRows = true; + TableGetInstanceData(table, table->InstanceCurrent)->LastFrozenHeight = y0 - table->OuterRect.Min.y; // BgClipRect starts as table->InnerClipRect, reduce it now and make BgClipRectForDrawCmd == BgClipRect - float y0 = ImMax(table->RowPosY2 + 1, window->InnerClipRect.Min.y); table->BgClipRect.Min.y = table->Bg2ClipRectForDrawCmd.Min.y = ImMin(y0, window->InnerClipRect.Max.y); table->BgClipRect.Max.y = table->Bg2ClipRectForDrawCmd.Max.y = window->InnerClipRect.Max.y; table->Bg2DrawChannelCurrent = table->Bg2DrawChannelUnfrozen; @@ -1920,7 +1946,7 @@ bool ImGui::TableSetColumnIndex(int column_n) // Return whether the column is visible. User may choose to skip submitting items based on this return value, // however they shouldn't skip submitting for columns that may have the tallest contribution to row height. - return table->RequestOutputMaskByIndex.TestBit(column_n); + return table->Columns[column_n].IsRequestOutput; } // [Public] Append into the next column, wrap and create a new row when already on last column @@ -1945,8 +1971,7 @@ bool ImGui::TableNextColumn() // Return whether the column is visible. User may choose to skip submitting items based on this return value, // however they shouldn't skip submitting for columns that may have the tallest contribution to row height. - int column_n = table->CurrentColumn; - return table->RequestOutputMaskByIndex.TestBit(column_n); + return table->Columns[table->CurrentColumn].IsRequestOutput; } @@ -1955,6 +1980,7 @@ bool ImGui::TableNextColumn() // FIXME-TABLE FIXME-OPT: Could probably shortcut some things for non-active or clipped columns. void ImGui::TableBeginCell(ImGuiTable* table, int column_n) { + ImGuiContext& g = *GImGui; ImGuiTableColumn* column = &table->Columns[column_n]; ImGuiWindow* window = table->InnerWindow; table->CurrentColumn = column_n; @@ -1976,14 +2002,9 @@ void ImGui::TableBeginCell(ImGuiTable* table, int column_n) window->WorkRect.Max.x = column->WorkMaxX; window->DC.ItemWidth = column->ItemWidth; - // To allow ImGuiListClipper to function we propagate our row height - if (!column->IsEnabled) - window->DC.CursorPos.y = ImMax(window->DC.CursorPos.y, table->RowPosY2); - window->SkipItems = column->IsSkipItems; if (column->IsSkipItems) { - ImGuiContext& g = *GImGui; g.LastItemData.ID = 0; g.LastItemData.StatusFlags = 0; } @@ -2002,7 +2023,6 @@ void ImGui::TableBeginCell(ImGuiTable* table, int column_n) } // Logging - ImGuiContext& g = *GImGui; if (g.LogEnabled && !column->IsSkipItems) { LogRenderedText(&window->DC.CursorPos, "|"); @@ -2016,6 +2036,9 @@ void ImGui::TableEndCell(ImGuiTable* table) ImGuiTableColumn* column = &table->Columns[table->CurrentColumn]; ImGuiWindow* window = table->InnerWindow; + if (window->DC.IsSetPos) + ErrorCheckUsingSetCursorPosToExtendParentBoundaries(); + // Report maximum position so we can infer content size per column. float* p_max_pos_x; if (table->RowFlags & ImGuiTableRowFlags_Headers) @@ -2023,7 +2046,8 @@ void ImGui::TableEndCell(ImGuiTable* table) else p_max_pos_x = table->IsUnfrozenRows ? &column->ContentMaxXUnfrozen : &column->ContentMaxXFrozen; *p_max_pos_x = ImMax(*p_max_pos_x, window->DC.CursorMaxPos.x); - table->RowPosY2 = ImMax(table->RowPosY2, window->DC.CursorMaxPos.y + table->CellPaddingY); + if (column->IsEnabled) + table->RowPosY2 = ImMax(table->RowPosY2, window->DC.CursorMaxPos.y + table->CellPaddingY); column->ItemWidth = window->DC.ItemWidth; // Propagate text baseline for the entire row @@ -2110,7 +2134,7 @@ void ImGui::TableSetColumnWidth(int column_n, float width) if (column_0->WidthGiven == column_0_width || column_0->WidthRequest == column_0_width) return; - //IMGUI_DEBUG_LOG("TableSetColumnWidth(%d, %.1f->%.1f)\n", column_0_idx, column_0->WidthGiven, column_0_width); + //IMGUI_DEBUG_PRINT("TableSetColumnWidth(%d, %.1f->%.1f)\n", column_0_idx, column_0->WidthGiven, column_0_width); ImGuiTableColumn* column_1 = (column_0->NextEnabledColumn != -1) ? &table->Columns[column_0->NextEnabledColumn] : NULL; // In this surprisingly not simple because of how we support mixing Fixed and multiple Stretch columns. @@ -2118,7 +2142,7 @@ void ImGui::TableSetColumnWidth(int column_n, float width) // - All stretch: easy. // - One or more fixed + one stretch: easy. // - One or more fixed + more than one stretch: tricky. - // Qt when manual resize is enabled only support a single _trailing_ stretch column. + // Qt when manual resize is enabled only supports a single _trailing_ stretch column, we support more cases here. // When forwarding resize from Wn| to Fn+1| we need to be considerate of the _NoResize flag on Fn+1. // FIXME-TABLE: Find a way to rewrite all of this so interactions feel more consistent for the user. @@ -2201,7 +2225,7 @@ void ImGui::TableUpdateColumnsWeightFromWidth(ImGuiTable* table) { IM_ASSERT(table->LeftMostStretchedColumn != -1 && table->RightMostStretchedColumn != -1); - // Measure existing quantity + // Measure existing quantities float visible_weight = 0.0f; float visible_width = 0.0f; for (int column_n = 0; column_n < table->ColumnsCount; column_n++) @@ -2283,7 +2307,7 @@ void ImGui::TableSetupDrawChannels(ImGuiTable* table) const int freeze_row_multiplier = (table->FreezeRowsCount > 0) ? 2 : 1; const int channels_for_row = (table->Flags & ImGuiTableFlags_NoClip) ? 1 : table->ColumnsEnabledCount; const int channels_for_bg = 1 + 1 * freeze_row_multiplier; - const int channels_for_dummy = (table->ColumnsEnabledCount < table->ColumnsCount || table->VisibleMaskByIndex != table->EnabledMaskByIndex) ? +1 : 0; + const int channels_for_dummy = (table->ColumnsEnabledCount < table->ColumnsCount || (memcmp(table->VisibleMaskByIndex, table->EnabledMaskByIndex, ImBitArrayGetStorageSizeInBytes(table->ColumnsCount)) != 0)) ? +1 : 0; const int channels_total = channels_for_bg + (channels_for_row * freeze_row_multiplier) + channels_for_dummy; table->DrawSplitter->Split(table->InnerWindow->DrawList, channels_total); table->DummyDrawChannel = (ImGuiTableDrawChannelIdx)((channels_for_dummy > 0) ? channels_total - 1 : -1); @@ -2357,25 +2381,26 @@ void ImGui::TableMergeDrawChannels(ImGuiTable* table) // Track which groups we are going to attempt to merge, and which channels goes into each group. struct MergeGroup { - ImRect ClipRect; - int ChannelsCount; - ImBitVector ChannelsMask; - - MergeGroup(int sz) : ChannelsMask(sz) { ChannelsCount = 0; } + ImRect ClipRect; + int ChannelsCount = 0; + ImBitArrayPtr ChannelsMask = NULL; }; int merge_group_mask = 0x00; - int merge_group_bitlen = IMGUI_TABLE_DRAW_CHANNELS(table->ColumnsCount); - MergeGroup merge_groups[4]{ - merge_group_bitlen, - merge_group_bitlen, - merge_group_bitlen, - merge_group_bitlen - }; + MergeGroup merge_groups[4]; + + // Use a reusable temp buffer for the merge masks as they are dynamically sized. + const int max_draw_channels = (4 + table->ColumnsCount * 2); + const int size_for_masks_bitarrays_one = (int)ImBitArrayGetStorageSizeInBytes(max_draw_channels); + g.TempBuffer.reserve(size_for_masks_bitarrays_one * 5); + memset(g.TempBuffer.Data, 0, size_for_masks_bitarrays_one * 5); + for (int n = 0; n < IM_ARRAYSIZE(merge_groups); n++) + merge_groups[n].ChannelsMask = (ImBitArrayPtr)(void*)(g.TempBuffer.Data + (size_for_masks_bitarrays_one * n)); + ImBitArrayPtr remaining_mask = (ImBitArrayPtr)(void*)(g.TempBuffer.Data + (size_for_masks_bitarrays_one * 4)); // 1. Scan channels and take note of those which can be merged for (int column_n = 0; column_n < table->ColumnsCount; column_n++) { - if (!table->VisibleMaskByIndex.TestBit(column_n)) + if (!IM_BITARRAY_TESTBIT(table->VisibleMaskByIndex, column_n)) continue; ImGuiTableColumn* column = &table->Columns[column_n]; @@ -2386,7 +2411,7 @@ void ImGui::TableMergeDrawChannels(ImGuiTable* table) // Don't attempt to merge if there are multiple draw calls within the column ImDrawChannel* src_channel = &splitter->_Channels[channel_no]; - if (src_channel->_CmdBuffer.Size > 0 && src_channel->_CmdBuffer.back().ElemCount == 0 && src_channel->_CmdBuffer.back().UserCallback != NULL) // Equivalent of PopUnusedDrawCmd() + if (src_channel->_CmdBuffer.Size > 0 && src_channel->_CmdBuffer.back().ElemCount == 0 && src_channel->_CmdBuffer.back().UserCallback == NULL) // Equivalent of PopUnusedDrawCmd() src_channel->_CmdBuffer.pop_back(); if (src_channel->_CmdBuffer.Size != 1) continue; @@ -2407,11 +2432,11 @@ void ImGui::TableMergeDrawChannels(ImGuiTable* table) } const int merge_group_n = (has_freeze_h && column_n < table->FreezeColumnsCount ? 0 : 1) + (has_freeze_v && merge_group_sub_n == 0 ? 0 : 2); - IM_ASSERT(channel_no < merge_group_bitlen); + IM_ASSERT(channel_no < max_draw_channels); MergeGroup* merge_group = &merge_groups[merge_group_n]; if (merge_group->ChannelsCount == 0) merge_group->ClipRect = ImRect(+FLT_MAX, +FLT_MAX, -FLT_MAX, -FLT_MAX); - merge_group->ChannelsMask.SetBit(channel_no); + ImBitArraySetBit(merge_group->ChannelsMask, channel_no); merge_group->ChannelsCount++; merge_group->ClipRect.Add(src_channel->_CmdBuffer[0].ClipRect); merge_group_mask |= (1 << merge_group_n); @@ -2447,9 +2472,8 @@ void ImGui::TableMergeDrawChannels(ImGuiTable* table) const int LEADING_DRAW_CHANNELS = 2; g.DrawChannelsTempMergeBuffer.resize(splitter->_Count - LEADING_DRAW_CHANNELS); // Use shared temporary storage so the allocation gets amortized ImDrawChannel* dst_tmp = g.DrawChannelsTempMergeBuffer.Data; - ImBitVector remaining_mask(merge_group_bitlen); // We need 132-bit of storage - remaining_mask.SetBitRange(LEADING_DRAW_CHANNELS, splitter->_Count); - remaining_mask.ClearBit(table->Bg2DrawChannelUnfrozen); + ImBitArraySetBitRange(remaining_mask, LEADING_DRAW_CHANNELS, splitter->_Count); + ImBitArrayClearBit(remaining_mask, table->Bg2DrawChannelUnfrozen); IM_ASSERT(has_freeze_v == false || table->Bg2DrawChannelUnfrozen != TABLE_DRAW_CHANNEL_BG2_FROZEN); int remaining_count = splitter->_Count - (has_freeze_v ? LEADING_DRAW_CHANNELS + 1 : LEADING_DRAW_CHANNELS); //ImRect host_rect = (table->InnerWindow == table->OuterWindow) ? table->InnerClipRect : table->HostClipRect; @@ -2476,20 +2500,18 @@ void ImGui::TableMergeDrawChannels(ImGuiTable* table) merge_clip_rect.Max.x = ImMax(merge_clip_rect.Max.x, host_rect.Max.x); if ((merge_group_n & 2) != 0 && (table->Flags & ImGuiTableFlags_NoHostExtendY) == 0) merge_clip_rect.Max.y = ImMax(merge_clip_rect.Max.y, host_rect.Max.y); -#if 0 - GetOverlayDrawList()->AddRect(merge_group->ClipRect.Min, merge_group->ClipRect.Max, IM_COL32(255, 0, 0, 200), 0.0f, 0, 1.0f); - GetOverlayDrawList()->AddLine(merge_group->ClipRect.Min, merge_clip_rect.Min, IM_COL32(255, 100, 0, 200)); - GetOverlayDrawList()->AddLine(merge_group->ClipRect.Max, merge_clip_rect.Max, IM_COL32(255, 100, 0, 200)); -#endif + //GetForegroundDrawList()->AddRect(merge_group->ClipRect.Min, merge_group->ClipRect.Max, IM_COL32(255, 0, 0, 200), 0.0f, 0, 1.0f); // [DEBUG] + //GetForegroundDrawList()->AddLine(merge_group->ClipRect.Min, merge_clip_rect.Min, IM_COL32(255, 100, 0, 200)); + //GetForegroundDrawList()->AddLine(merge_group->ClipRect.Max, merge_clip_rect.Max, IM_COL32(255, 100, 0, 200)); remaining_count -= merge_group->ChannelsCount; - for (int n = 0; n < remaining_mask.Storage.size(); n++) - remaining_mask.Storage[n] &= ~merge_group->ChannelsMask.Storage[n]; + for (int n = 0; n < (size_for_masks_bitarrays_one >> 2); n++) + remaining_mask[n] &= ~merge_group->ChannelsMask[n]; for (int n = 0; n < splitter->_Count && merge_channels_count != 0; n++) { // Copy + overwrite new clip rect - if (!merge_group->ChannelsMask.TestBit(n)) + if (!IM_BITARRAY_TESTBIT(merge_group->ChannelsMask, n)) continue; - merge_group->ChannelsMask.ClearBit(n); + IM_BITARRAY_CLEARBIT(merge_group->ChannelsMask, n); merge_channels_count--; ImDrawChannel* channel = &splitter->_Channels[n]; @@ -2507,7 +2529,7 @@ void ImGui::TableMergeDrawChannels(ImGuiTable* table) // Append unmergeable channels that we didn't reorder at the end of the list for (int n = 0; n < splitter->_Count && remaining_count != 0; n++) { - if (!remaining_mask.TestBit(n)) + if (!IM_BITARRAY_TESTBIT(remaining_mask, n)) continue; ImDrawChannel* channel = &splitter->_Channels[n]; memcpy(dst_tmp++, channel, sizeof(ImDrawChannel)); @@ -2532,14 +2554,14 @@ void ImGui::TableDrawBorders(ImGuiTable* table) // Draw inner border and resizing feedback ImGuiTableInstanceData* table_instance = TableGetInstanceData(table, table->InstanceCurrent); const float border_size = TABLE_BORDER_SIZE; - const float draw_y1 = table->InnerRect.Min.y + ((table->Flags & ImGuiTableFlags_NoBordersInFrozenArea)?table_instance->LastFirstRowHeight:0.0f); + const float draw_y1 = table->InnerRect.Min.y; const float draw_y2_body = table->InnerRect.Max.y; const float draw_y2_head = table->IsUsingHeaders ? ImMin(table->InnerRect.Max.y, (table->FreezeRowsCount >= 1 ? table->InnerRect.Min.y : table->WorkRect.Min.y) + table_instance->LastFirstRowHeight) : draw_y1; if (table->Flags & ImGuiTableFlags_BordersInnerV) { for (int order_n = 0; order_n < table->ColumnsCount; order_n++) { - if (!table->EnabledMaskByDisplayOrder.TestBit(order_n)) + if (!IM_BITARRAY_TESTBIT(table->EnabledMaskByDisplayOrder, order_n)) continue; const int column_n = table->DisplayOrderToIndex[order_n]; @@ -2644,7 +2666,6 @@ ImGuiTableSortSpecs* ImGui::TableGetSortSpecs() TableUpdateLayout(table); TableSortSpecsBuild(table); - return &table->SortSpecs; } @@ -2763,7 +2784,7 @@ void ImGui::TableSortSpecsSanitize(ImGuiTable* table) } } - // Fallback default sort order (if no column had the ImGuiTableColumnFlags_DefaultSort flag) + // Fallback default sort order (if no column with the ImGuiTableColumnFlags_DefaultSort flag) if (sort_order_count == 0 && !(table->Flags & ImGuiTableFlags_SortTristate)) for (int column_n = 0; column_n < table->ColumnsCount; column_n++) { @@ -2867,10 +2888,9 @@ void ImGui::TableHeadersRow() continue; // Push an id to allow unnamed labels (generally accidental, but let's behave nicely with them) - // - in your own code you may omit the PushID/PopID all-together, provided you know they won't collide - // - table->InstanceCurrent is only >0 when we use multiple BeginTable/EndTable calls with same identifier. + // In your own code you may omit the PushID/PopID all-together, provided you know they won't collide. const char* name = (TableGetColumnFlags(column_n) & ImGuiTableColumnFlags_NoHeaderLabel) ? "" : TableGetColumnName(column_n); - PushID(table->InstanceCurrent * table->ColumnsCount + column_n); + PushID(column_n); TableHeader(name); PopID(); } @@ -2985,7 +3005,7 @@ void ImGui::TableHeader(const char* label) } // Sort order arrow - const float ellipsis_max = cell_r.Max.x - w_arrow - w_sort_text; + const float ellipsis_max = ImMax(cell_r.Max.x - w_arrow - w_sort_text, label_pos.x); if ((table->Flags & ImGuiTableFlags_Sortable) && !(column->Flags & ImGuiTableColumnFlags_NoSort)) { if (column->SortOrder != -1) @@ -3016,7 +3036,7 @@ void ImGui::TableHeader(const char* label) RenderTextEllipsis(window->DrawList, label_pos, ImVec2(ellipsis_max, label_pos.y + label_height + g.Style.FramePadding.y), ellipsis_max, ellipsis_max, label, label_end, &label_size); const bool text_clipped = label_size.x > (ellipsis_max - label_pos.x); - if (text_clipped && hovered && g.HoveredIdNotActiveTimer > g.TooltipSlowDelay) + if (text_clipped && hovered && g.ActiveId == 0 && IsItemHovered(ImGuiHoveredFlags_DelayNormal)) SetTooltip("%.*s", (int)(label_end - label), label); // We don't use BeginPopupContextItem() because we want the popup to stay up even after the column is hidden @@ -3051,6 +3071,17 @@ void ImGui::TableOpenContextMenu(int column_n) } } +bool ImGui::TableBeginContextMenuPopup(ImGuiTable* table) +{ + if (!table->IsContextPopupOpen || table->InstanceCurrent != table->InstanceInteracted) + return false; + const ImGuiID context_menu_id = ImHashStr("##ContextMenu", 0, table->ID); + if (BeginPopupEx(context_menu_id, ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoSavedSettings)) + return true; + table->IsContextPopupOpen = false; + return false; +} + // Output context menu into current window (generally a popup) // FIXME-TABLE: Ideally this should be writable by the user. Full programmatic access to that data? void ImGui::TableDrawContextMenu(ImGuiTable* table) @@ -3070,15 +3101,15 @@ void ImGui::TableDrawContextMenu(ImGuiTable* table) if (column != NULL) { const bool can_resize = !(column->Flags & ImGuiTableColumnFlags_NoResize) && column->IsEnabled; - if (MenuItem("Size column to fit###SizeOne", NULL, false, can_resize)) + if (MenuItem(LocalizeGetMsg(ImGuiLocKey_TableSizeOne), NULL, false, can_resize)) // "###SizeOne" TableSetColumnWidthAutoSingle(table, column_n); } const char* size_all_desc; if (table->ColumnsEnabledFixedCount == table->ColumnsEnabledCount && (table->Flags & ImGuiTableFlags_SizingMask_) != ImGuiTableFlags_SizingFixedSame) - size_all_desc = "Size all columns to fit###SizeAll"; // All fixed + size_all_desc = LocalizeGetMsg(ImGuiLocKey_TableSizeAllFit); // "###SizeAll" All fixed else - size_all_desc = "Size all columns to default###SizeAll"; // All stretch or mixed + size_all_desc = LocalizeGetMsg(ImGuiLocKey_TableSizeAllDefault); // "###SizeAll" All stretch or mixed if (MenuItem(size_all_desc, NULL)) TableSetColumnWidthAutoAll(table); want_separator = true; @@ -3087,7 +3118,7 @@ void ImGui::TableDrawContextMenu(ImGuiTable* table) // Ordering if (table->Flags & ImGuiTableFlags_Reorderable) { - if (MenuItem("Reset order", NULL, false, !table->IsDefaultDisplayOrder)) + if (MenuItem(LocalizeGetMsg(ImGuiLocKey_TableResetOrder), NULL, false, !table->IsDefaultDisplayOrder)) table->IsResetDisplayOrderRequest = true; want_separator = true; } @@ -3444,12 +3475,12 @@ static void TableSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettingsHandle if (!save_column) continue; buf->appendf("Column %-2d", column_n); - if (column->UserID != 0) buf->appendf(" UserID=%08X", column->UserID); - if (save_size && column->IsStretch) buf->appendf(" Weight=%.4f", column->WidthOrWeight); - if (save_size && !column->IsStretch) buf->appendf(" Width=%d", (int)column->WidthOrWeight); - if (save_visible) buf->appendf(" Visible=%d", column->IsEnabled); - if (save_order) buf->appendf(" Order=%d", column->DisplayOrder); - if (save_sort && column->SortOrder != -1) buf->appendf(" Sort=%d%c", column->SortOrder, (column->SortDirection == ImGuiSortDirection_Ascending) ? 'v' : '^'); + if (column->UserID != 0) { buf->appendf(" UserID=%08X", column->UserID); } + if (save_size && column->IsStretch) { buf->appendf(" Weight=%.4f", column->WidthOrWeight); } + if (save_size && !column->IsStretch) { buf->appendf(" Width=%d", (int)column->WidthOrWeight); } + if (save_visible) { buf->appendf(" Visible=%d", column->IsEnabled); } + if (save_order) { buf->appendf(" Order=%d", column->DisplayOrder); } + if (save_sort && column->SortOrder != -1) { buf->appendf(" Sort=%d%c", column->SortOrder, (column->SortDirection == ImGuiSortDirection_Ascending) ? 'v' : '^'); } buf->append("\n"); } buf->append("\n"); @@ -3480,7 +3511,7 @@ void ImGui::TableSettingsAddSettingsHandler() // Remove Table (currently only used by TestEngine) void ImGui::TableRemove(ImGuiTable* table) { - //IMGUI_DEBUG_LOG("TableRemove() id=0x%08X\n", table->ID); + //IMGUI_DEBUG_PRINT("TableRemove() id=0x%08X\n", table->ID); ImGuiContext& g = *GImGui; int table_idx = g.Tables.GetIndex(table); //memset(table->RawData.Data, 0, table->RawData.size_in_bytes()); @@ -3492,12 +3523,12 @@ void ImGui::TableRemove(ImGuiTable* table) // Free up/compact internal Table buffers for when it gets unused void ImGui::TableGcCompactTransientBuffers(ImGuiTable* table) { - //IMGUI_DEBUG_LOG("TableGcCompactTransientBuffers() id=0x%08X\n", table->ID); + //IMGUI_DEBUG_PRINT("TableGcCompactTransientBuffers() id=0x%08X\n", table->ID); ImGuiContext& g = *GImGui; IM_ASSERT(table->MemoryCompacted == false); table->SortSpecs.Specs = NULL; table->SortSpecsMulti.clear(); - table->IsSortSpecsDirty = true; // FIXME: shouldn't have to leak into user performing a sort + table->IsSortSpecsDirty = true; // FIXME: In theory shouldn't have to leak into user performing a sort on resume. table->ColumnsNames.clear(); table->MemoryCompacted = true; for (int n = 0; n < table->ColumnsCount; n++) @@ -3536,7 +3567,7 @@ void ImGui::TableGcCompactSettings() // - DebugNodeTable() [Internal] //------------------------------------------------------------------------- -#ifndef IMGUI_DISABLE_METRICS_WINDOW +#ifndef IMGUI_DISABLE_DEBUG_TOOLS static const char* DebugNodeTableGetSizingPolicyDesc(ImGuiTableFlags sizing_policy) { @@ -3550,13 +3581,9 @@ static const char* DebugNodeTableGetSizingPolicyDesc(ImGuiTableFlags sizing_poli void ImGui::DebugNodeTable(ImGuiTable* table) { - char buf[512]; - char* p = buf; - const char* buf_end = buf + IM_ARRAYSIZE(buf); - const bool is_active = (table->LastFrameActive >= ImGui::GetFrameCount() - 2); // Note that fully clipped early out scrolling tables will appear as inactive here. - ImFormatString(p, buf_end - p, "Table 0x%08X (%d columns, in '%s')%s", table->ID, table->ColumnsCount, table->OuterWindow->Name, is_active ? "" : " *Inactive*"); + const bool is_active = (table->LastFrameActive >= GetFrameCount() - 2); // Note that fully clipped early out scrolling tables will appear as inactive here. if (!is_active) { PushStyleColor(ImGuiCol_Text, GetStyleColorVec4(ImGuiCol_TextDisabled)); } - bool open = TreeNode(table, "%s", buf); + bool open = TreeNode(table, "Table 0x%08X (%d columns, in '%s')%s", table->ID, table->ColumnsCount, table->OuterWindow->Name, is_active ? "" : " *Inactive*"); if (!is_active) { PopStyleColor(); } if (IsItemHovered()) GetForegroundDrawList()->AddRect(table->OuterRect.Min, table->OuterRect.Max, IM_COL32(255, 255, 0, 255)); @@ -3565,7 +3592,7 @@ void ImGui::DebugNodeTable(ImGuiTable* table) if (!open) return; if (table->InstanceCurrent > 0) - ImGui::Text("** %d instances of same table! Some data below will refer to last instance.", table->InstanceCurrent + 1); + Text("** %d instances of same table! Some data below will refer to last instance.", table->InstanceCurrent + 1); bool clear_settings = SmallButton("Clear settings"); BulletText("OuterRect: Pos: (%.1f,%.1f) Size: (%.1f,%.1f) Sizing: '%s'", table->OuterRect.Min.x, table->OuterRect.Min.y, table->OuterRect.GetWidth(), table->OuterRect.GetHeight(), DebugNodeTableGetSizingPolicyDesc(table->Flags)); BulletText("ColumnsGivenWidth: %.1f, ColumnsAutoFitWidth: %.1f, InnerWidth: %.1f%s", table->ColumnsGivenWidth, table->ColumnsAutoFitWidth, table->InnerWidth, table->InnerWidth == 0.0f ? " (auto)" : ""); @@ -3581,6 +3608,7 @@ void ImGui::DebugNodeTable(ImGuiTable* table) { ImGuiTableColumn* column = &table->Columns[n]; const char* name = TableGetColumnName(table, n); + char buf[512]; ImFormatString(buf, IM_ARRAYSIZE(buf), "Column %d order %d '%s': offset %+.2f to %+.2f%s\n" "Enabled: %d, VisibleX/Y: %d/%d, RequestOutput: %d, SkipItems: %d, DrawChannels: %d,%d\n" @@ -3630,7 +3658,7 @@ void ImGui::DebugNodeTableSettings(ImGuiTableSettings* settings) TreePop(); } -#else // #ifndef IMGUI_DISABLE_METRICS_WINDOW +#else // #ifndef IMGUI_DISABLE_DEBUG_TOOLS void ImGui::DebugNodeTable(ImGuiTable*) {} void ImGui::DebugNodeTableSettings(ImGuiTableSettings*) {} @@ -3869,6 +3897,7 @@ void ImGui::BeginColumns(const char* str_id, int columns_count, ImGuiOldColumnFl columns->Count = columns_count; columns->Flags = flags; window->DC.CurrentColumns = columns; + window->DC.NavIsScrollPushableX = false; // Shortcut for NavUpdateCurrentWindowIsScrollPushableX(); columns->HostCursorPosY = window->DC.CursorPos.y; columns->HostCursorMaxPosX = window->DC.CursorMaxPos.x; @@ -3970,6 +3999,7 @@ void ImGui::NextColumn() { // New row/line: column 0 honor IndentX. window->DC.ColumnsOffset.x = ImMax(column_padding - window->WindowPadding.x, 0.0f); + window->DC.IsSameLine = false; columns->LineMinY = columns->LineMaxY; } window->DC.CursorPos.x = IM_FLOOR(window->Pos.x + window->DC.Indent.x + window->DC.ColumnsOffset.x); @@ -4021,8 +4051,7 @@ void ImGui::EndColumns() const ImGuiID column_id = columns->ID + ImGuiID(n); const float column_hit_hw = COLUMNS_HIT_RECT_HALF_WIDTH; const ImRect column_hit_rect(ImVec2(x - column_hit_hw, y1), ImVec2(x + column_hit_hw, y2)); - KeepAliveID(column_id); - if (IsClippedEx(column_hit_rect, column_id)) // FIXME: Can be removed or replaced with a lower-level test + if (!ItemAdd(column_hit_rect, column_id, NULL, ImGuiItemFlags_NoNav)) continue; bool hovered = false, held = false; @@ -4059,6 +4088,7 @@ void ImGui::EndColumns() window->DC.CurrentColumns = NULL; window->DC.ColumnsOffset.x = 0.0f; window->DC.CursorPos.x = IM_FLOOR(window->Pos.x + window->DC.Indent.x + window->DC.ColumnsOffset.x); + NavUpdateCurrentWindowIsScrollPushableX(); } void ImGui::Columns(int columns_count, const char* id, bool border) diff --git a/extern/imgui_patched/imgui_widgets.cpp b/extern/imgui_patched/imgui_widgets.cpp index 45bfd82c..b99e546e 100644 --- a/extern/imgui_patched/imgui_widgets.cpp +++ b/extern/imgui_patched/imgui_widgets.cpp @@ -1,4 +1,4 @@ -// dear imgui, v1.88 WIP +// dear imgui, v1.89.6 // (widgets code) /* @@ -32,16 +32,15 @@ Index of this file: #define _CRT_SECURE_NO_WARNINGS #endif -#include "imgui.h" -#ifndef IMGUI_DISABLE - #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif + +#include "imgui.h" +#ifndef IMGUI_DISABLE #include "imgui_internal.h" // System includes -#include // toupper #if defined(_MSC_VER) && _MSC_VER <= 1500 // MSVC 2008 or earlier #include // intptr_t #else @@ -127,7 +126,7 @@ static const ImU64 IM_U64_MAX = (2ULL * 9223372036854775807LL + 1); // For InputTextEx() static bool InputTextFilterCharacter(unsigned int* p_char, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data, ImGuiInputSource input_source); static int InputTextCalcTextLenAndLineCount(const char* text_begin, const char** out_text_end); -static ImVec2 InputTextCalcTextSizeW(const ImWchar* text_begin, const ImWchar* text_end, const ImWchar** remaining = NULL, ImVec2* out_offset = NULL, bool stop_on_new_line = false); +static ImVec2 InputTextCalcTextSizeW(ImGuiContext* ctx, const ImWchar* text_begin, const ImWchar* text_end, const ImWchar** remaining = NULL, ImVec2* out_offset = NULL, bool stop_on_new_line = false); //------------------------------------------------------------------------- // [SECTION] Widgets: Text, etc. @@ -275,10 +274,9 @@ void ImGui::TextV(const char* fmt, va_list args) if (window->SkipItems) return; - // FIXME-OPT: Handle the %s shortcut? - ImGuiContext& g = *GImGui; - const char* text_end = g.TempBuffer + ImFormatStringV(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), fmt, args); - TextEx(g.TempBuffer, text_end, ImGuiTextFlags_NoWidthForLargeClippedText); + const char* text, *text_end; + ImFormatStringToTempBufferV(&text, &text_end, fmt, args); + TextEx(text, text_end, ImGuiTextFlags_NoWidthForLargeClippedText); } void ImGui::TextColored(const ImVec4& col, const char* fmt, ...) @@ -292,10 +290,7 @@ void ImGui::TextColored(const ImVec4& col, const char* fmt, ...) void ImGui::TextColoredV(const ImVec4& col, const char* fmt, va_list args) { PushStyleColor(ImGuiCol_Text, col); - if (fmt[0] == '%' && fmt[1] == 's' && fmt[2] == 0) - TextEx(va_arg(args, const char*), NULL, ImGuiTextFlags_NoWidthForLargeClippedText); // Skip formatting - else - TextV(fmt, args); + TextV(fmt, args); PopStyleColor(); } @@ -311,10 +306,7 @@ void ImGui::TextDisabledV(const char* fmt, va_list args) { ImGuiContext& g = *GImGui; PushStyleColor(ImGuiCol_Text, g.Style.Colors[ImGuiCol_TextDisabled]); - if (fmt[0] == '%' && fmt[1] == 's' && fmt[2] == 0) - TextEx(va_arg(args, const char*), NULL, ImGuiTextFlags_NoWidthForLargeClippedText); // Skip formatting - else - TextV(fmt, args); + TextV(fmt, args); PopStyleColor(); } @@ -329,13 +321,10 @@ void ImGui::TextWrapped(const char* fmt, ...) void ImGui::TextWrappedV(const char* fmt, va_list args) { ImGuiContext& g = *GImGui; - bool need_backup = (g.CurrentWindow->DC.TextWrapPos < 0.0f); // Keep existing wrap position if one is already set + const bool need_backup = (g.CurrentWindow->DC.TextWrapPos < 0.0f); // Keep existing wrap position if one is already set if (need_backup) PushTextWrapPos(0.0f); - if (fmt[0] == '%' && fmt[1] == 's' && fmt[2] == 0) - TextEx(va_arg(args, const char*), NULL, ImGuiTextFlags_NoWidthForLargeClippedText); // Skip formatting - else - TextV(fmt, args); + TextV(fmt, args); if (need_backup) PopTextWrapPos(); } @@ -359,8 +348,8 @@ void ImGui::LabelTextV(const char* label, const char* fmt, va_list args) const ImGuiStyle& style = g.Style; const float w = CalcItemWidth(); - const char* value_text_begin = &g.TempBuffer[0]; - const char* value_text_end = value_text_begin + ImFormatStringV(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), fmt, args); + const char* value_text_begin, *value_text_end; + ImFormatStringToTempBufferV(&value_text_begin, &value_text_end, fmt, args); const ImVec2 value_size = CalcTextSize(value_text_begin, value_text_end, false); const ImVec2 label_size = CalcTextSize(label, NULL, true); @@ -395,8 +384,8 @@ void ImGui::BulletTextV(const char* fmt, va_list args) ImGuiContext& g = *GImGui; const ImGuiStyle& style = g.Style; - const char* text_begin = g.TempBuffer; - const char* text_end = text_begin + ImFormatStringV(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), fmt, args); + const char* text_begin, *text_end; + ImFormatStringToTempBufferV(&text_begin, &text_end, fmt, args); const ImVec2 label_size = CalcTextSize(text_begin, text_end, false); const ImVec2 total_size = ImVec2(g.FontSize + (label_size.x > 0.0f ? (label_size.x + style.FramePadding.x * 2) : 0.0f), label_size.y); // Empty text doesn't add padding ImVec2 pos = window->DC.CursorPos; @@ -509,8 +498,9 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool g.HoveredWindow = window; #ifdef IMGUI_ENABLE_TEST_ENGINE + // Alternate registration spot, for when caller didn't use ItemAdd() if (id != 0 && g.LastItemData.ID != id) - IMGUI_TEST_ENGINE_ITEM_ADD(bb, id); + IMGUI_TEST_ENGINE_ITEM_ADD(id, bb, NULL); #endif bool pressed = false; @@ -542,18 +532,28 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool hovered = false; // Mouse handling + const ImGuiID test_owner_id = (flags & ImGuiButtonFlags_NoTestKeyOwner) ? ImGuiKeyOwner_Any : id; if (hovered) { + // Poll mouse buttons + // - 'mouse_button_clicked' is generally carried into ActiveIdMouseButton when setting ActiveId. + // - Technically we only need some values in one code path, but since this is gated by hovered test this is fine. + int mouse_button_clicked = -1; + int mouse_button_released = -1; + for (int button = 0; button < 3; button++) + if (flags & (ImGuiButtonFlags_MouseButtonLeft << button)) // Handle ImGuiButtonFlags_MouseButtonRight and ImGuiButtonFlags_MouseButtonMiddle here. + { + if (IsMouseClicked(button, test_owner_id) && mouse_button_clicked == -1) { mouse_button_clicked = button; } + if (IsMouseReleased(button, test_owner_id) && mouse_button_released == -1) { mouse_button_released = button; } + } + + // Process initial action if (!(flags & ImGuiButtonFlags_NoKeyModifiers) || (!g.IO.KeyCtrl && !g.IO.KeyShift && !g.IO.KeyAlt)) { - // Poll buttons - int mouse_button_clicked = -1; - if ((flags & ImGuiButtonFlags_MouseButtonLeft) && g.IO.MouseClicked[0]) { mouse_button_clicked = 0; } - else if ((flags & ImGuiButtonFlags_MouseButtonRight) && g.IO.MouseClicked[1]) { mouse_button_clicked = 1; } - else if ((flags & ImGuiButtonFlags_MouseButtonMiddle) && g.IO.MouseClicked[2]) { mouse_button_clicked = 2; } - if (mouse_button_clicked != -1 && g.ActiveId != id) { + if (!(flags & ImGuiButtonFlags_NoSetKeyOwner)) + SetKeyOwner(MouseButtonToKey(mouse_button_clicked), id); if (flags & (ImGuiButtonFlags_PressedOnClickRelease | ImGuiButtonFlags_PressedOnClickReleaseAnywhere)) { SetActiveID(id, window); @@ -577,10 +577,6 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool } if (flags & ImGuiButtonFlags_PressedOnRelease) { - int mouse_button_released = -1; - if ((flags & ImGuiButtonFlags_MouseButtonLeft) && g.IO.MouseReleased[0]) { mouse_button_released = 0; } - else if ((flags & ImGuiButtonFlags_MouseButtonRight) && g.IO.MouseReleased[1]) { mouse_button_released = 1; } - else if ((flags & ImGuiButtonFlags_MouseButtonMiddle) && g.IO.MouseReleased[2]) { mouse_button_released = 2; } if (mouse_button_released != -1) { const bool has_repeated_at_least_once = (flags & ImGuiButtonFlags_Repeat) && g.IO.MouseDownDurationPrev[mouse_button_released] >= g.IO.KeyRepeatDelay; // Repeat mode trumps on release behavior @@ -595,7 +591,7 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool // 'Repeat' mode acts when held regardless of _PressedOn flags (see table above). // Relies on repeat logic of IsMouseClicked() but we may as well do it ourselves if we end up exposing finer RepeatDelay/RepeatRate settings. if (g.ActiveId == id && (flags & ImGuiButtonFlags_Repeat)) - if (g.IO.MouseDownDuration[g.ActiveIdMouseButton] > 0.0f && IsMouseClicked(g.ActiveIdMouseButton, true)) + if (g.IO.MouseDownDuration[g.ActiveIdMouseButton] > 0.0f && IsMouseClicked(g.ActiveIdMouseButton, test_owner_id, ImGuiInputFlags_Repeat)) pressed = true; } @@ -611,13 +607,22 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool if (g.NavActivateDownId == id) { bool nav_activated_by_code = (g.NavActivateId == id); - bool nav_activated_by_inputs = IsNavInputTest(ImGuiNavInput_Activate, (flags & ImGuiButtonFlags_Repeat) ? ImGuiNavReadMode_Repeat : ImGuiNavReadMode_Pressed); + bool nav_activated_by_inputs = (g.NavActivatePressedId == id); + if (!nav_activated_by_inputs && (flags & ImGuiButtonFlags_Repeat)) + { + // Avoid pressing multiple keys from triggering excessive amount of repeat events + const ImGuiKeyData* key1 = GetKeyData(ImGuiKey_Space); + const ImGuiKeyData* key2 = GetKeyData(ImGuiKey_Enter); + const ImGuiKeyData* key3 = GetKeyData(ImGuiKey_NavGamepadActivate); + const float t1 = ImMax(ImMax(key1->DownDuration, key2->DownDuration), key3->DownDuration); + nav_activated_by_inputs = CalcTypematicRepeatAmount(t1 - g.IO.DeltaTime, t1, g.IO.KeyRepeatDelay, g.IO.KeyRepeatRate) > 0; + } if (nav_activated_by_code || nav_activated_by_inputs) { // Set active id so it can be queried by user via IsItemActive(), equivalent of holding the mouse button. pressed = true; SetActiveID(id, window); - g.ActiveIdSource = ImGuiInputSource_Nav; + g.ActiveIdSource = g.NavInputSource; if (!(flags & ImGuiButtonFlags_NoNavFocus)) SetFocusID(id, window); } @@ -633,8 +638,12 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool g.ActiveIdClickOffset = g.IO.MousePos - bb.Min; const int mouse_button = g.ActiveIdMouseButton; - IM_ASSERT(mouse_button >= 0 && mouse_button < ImGuiMouseButton_COUNT); - if (g.IO.MouseDown[mouse_button]) + if (mouse_button == -1) + { + // Fallback for the rare situation were g.ActiveId was set programmatically or from another widget (e.g. #6304). + ClearActiveID(); + } + else if (IsMouseDown(mouse_button, test_owner_id)) { held = true; } @@ -647,7 +656,8 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool // Report as pressed when releasing the mouse (this is the most common path) bool is_double_click_release = (flags & ImGuiButtonFlags_PressedOnDoubleClick) && g.IO.MouseReleased[mouse_button] && g.IO.MouseClickedLastCount[mouse_button] == 2; bool is_repeating_already = (flags & ImGuiButtonFlags_Repeat) && g.IO.MouseDownDurationPrev[mouse_button] >= g.IO.KeyRepeatDelay; // Repeat mode trumps - if (!is_double_click_release && !is_repeating_already) + bool is_button_avail_or_owned = TestKeyOwner(MouseButtonToKey(mouse_button), test_owner_id); + if (!is_double_click_release && !is_repeating_already && is_button_avail_or_owned) pressed = true; } ClearActiveID(); @@ -655,7 +665,7 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool if (!(flags & ImGuiButtonFlags_NoNavFocus)) g.NavDisableHighlight = true; } - else if (g.ActiveIdSource == ImGuiInputSource_Nav) + else if (g.ActiveIdSource == ImGuiInputSource_Keyboard || g.ActiveIdSource == ImGuiInputSource_Gamepad) { // When activated using Nav, we hold on the ActiveID until activation button is released if (g.NavActivateDownId != id) @@ -822,7 +832,7 @@ bool ImGui::CloseButton(ImGuiID id, const ImVec2& pos) ImU32 col = GetColorU32(held ? ImGuiCol_ButtonActive : ImGuiCol_ButtonHovered); ImVec2 center = bb.GetCenter(); if (hovered) - window->DrawList->AddCircleFilled(center, ImMax(2.0f, g.FontSize * 0.5f + 1.0f), col, 12); + window->DrawList->AddCircleFilled(center, ImMax(2.0f, g.FontSize * 0.5f + 1.0f), col); float cross_extent = g.FontSize * 0.5f * 0.7071f - 1.0f; ImU32 cross_col = GetColorU32(ImGuiCol_Text); @@ -849,7 +859,7 @@ bool ImGui::CollapseButton(ImGuiID id, const ImVec2& pos, ImGuiDockNode* dock_no ImU32 bg_col = GetColorU32((held && hovered) ? ImGuiCol_ButtonActive : hovered ? ImGuiCol_ButtonHovered : ImGuiCol_Button); ImU32 text_col = GetColorU32(ImGuiCol_Text); if (hovered || held) - window->DrawList->AddCircleFilled(bb.GetCenter() + ImVec2(0,-0.5f), g.FontSize * 0.5f + 1.0f, bg_col, 12); + window->DrawList->AddCircleFilled(bb.GetCenter() + ImVec2(0,-0.5f), g.FontSize * 0.5f + 1.0f, bg_col); if (dock_node) RenderArrowDockMenu(window->DrawList, bb.Min + g.Style.FramePadding, g.FontSize, text_col); @@ -886,9 +896,7 @@ void ImGui::Scrollbar(ImGuiAxis axis) { ImGuiContext& g = *GImGui; ImGuiWindow* window = g.CurrentWindow; - const ImGuiID id = GetWindowScrollbarID(window, axis); - KeepAliveID(id); // Calculate scrollbar bounding box ImRect bb = GetWindowScrollbarRect(window, axis); @@ -957,6 +965,7 @@ bool ImGui::ScrollbarEx(const ImRect& bb_frame, ImGuiID id, ImGuiAxis axis, ImS6 // Handle input right away. None of the code of Begin() is relying on scrolling position before calling Scrollbar(). bool held = false; bool hovered = false; + ItemAdd(bb_frame, id, NULL, ImGuiItemFlags_NoNav); ButtonBehavior(bb, id, &hovered, &held, ImGuiButtonFlags_NoNavFocus); const ImS64 scroll_max = ImMax((ImS64)1, size_contents_v - size_avail_v); @@ -1036,20 +1045,21 @@ void ImGui::Image(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& // ImageButton() is flawed as 'id' is always derived from 'texture_id' (see #2464 #1390) // We provide this internal helper to write your own variant while we figure out how to redesign the public ImageButton() API. -bool ImGui::ImageButtonEx(ImGuiID id, ImTextureID texture_id, const ImVec2& size, const ImVec2& uv0, const ImVec2& uv1, const ImVec2& padding, const ImVec4& bg_col, const ImVec4& tint_col) +bool ImGui::ImageButtonEx(ImGuiID id, ImTextureID texture_id, const ImVec2& size, const ImVec2& uv0, const ImVec2& uv1, const ImVec4& bg_col, const ImVec4& tint_col, ImGuiButtonFlags flags) { ImGuiContext& g = *GImGui; ImGuiWindow* window = GetCurrentWindow(); if (window->SkipItems) return false; - const ImRect bb(window->DC.CursorPos, window->DC.CursorPos + size + padding * 2); + const ImVec2 padding = g.Style.FramePadding; + const ImRect bb(window->DC.CursorPos, window->DC.CursorPos + size + padding * 2.0f); ItemSize(bb); if (!ItemAdd(bb, id)) return false; bool hovered, held; - bool pressed = ButtonBehavior(bb, id, &hovered, &held); + bool pressed = ButtonBehavior(bb, id, &hovered, &held, flags); // Render const ImU32 col = GetColorU32((held && hovered) ? ImGuiCol_ButtonActive : hovered ? ImGuiCol_ButtonHovered : ImGuiCol_Button); @@ -1062,9 +1072,21 @@ bool ImGui::ImageButtonEx(ImGuiID id, ImTextureID texture_id, const ImVec2& size return pressed; } -// frame_padding < 0: uses FramePadding from style (default) -// frame_padding = 0: no framing -// frame_padding > 0: set framing size +bool ImGui::ImageButton(const char* str_id, ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0, const ImVec2& uv1, const ImVec4& bg_col, const ImVec4& tint_col) +{ + ImGuiContext& g = *GImGui; + ImGuiWindow* window = g.CurrentWindow; + if (window->SkipItems) + return false; + + return ImageButtonEx(window->GetID(str_id), user_texture_id, size, uv0, uv1, bg_col, tint_col); +} + +#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS +// Legacy API obsoleted in 1.89. Two differences with new ImageButton() +// - new ImageButton() requires an explicit 'const char* str_id' Old ImageButton() used opaque imTextureId (created issue with: multiple buttons with same image, transient texture id values, opaque computation of ID) +// - new ImageButton() always use style.FramePadding Old ImageButton() had an override argument. +// If you need to change padding with new ImageButton() you can use PushStyleVar(ImGuiStyleVar_FramePadding, value), consistent with other Button functions. bool ImGui::ImageButton(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0, const ImVec2& uv1, int frame_padding, const ImVec4& bg_col, const ImVec4& tint_col) { ImGuiContext& g = *GImGui; @@ -1077,9 +1099,14 @@ bool ImGui::ImageButton(ImTextureID user_texture_id, const ImVec2& size, const I const ImGuiID id = window->GetID("#image"); PopID(); - const ImVec2 padding = (frame_padding >= 0) ? ImVec2((float)frame_padding, (float)frame_padding) : g.Style.FramePadding; - return ImageButtonEx(id, user_texture_id, size, uv0, uv1, padding, bg_col, tint_col); + if (frame_padding >= 0) + PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2((float)frame_padding, (float)frame_padding)); + bool ret = ImageButtonEx(id, user_texture_id, size, uv0, uv1, bg_col, tint_col); + if (frame_padding >= 0) + PopStyleVar(); + return ret; } +#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS bool ImGui::Checkbox(const char* label, bool* v) { @@ -1217,17 +1244,18 @@ bool ImGui::RadioButton(const char* label, bool active) MarkItemEdited(id); RenderNavHighlight(total_bb, id); - window->DrawList->AddCircleFilled(center, radius, GetColorU32((held && hovered) ? ImGuiCol_FrameBgActive : hovered ? ImGuiCol_FrameBgHovered : ImGuiCol_FrameBg), 16); + const int num_segment = window->DrawList->_CalcCircleAutoSegmentCount(radius); + window->DrawList->AddCircleFilled(center, radius, GetColorU32((held && hovered) ? ImGuiCol_FrameBgActive : hovered ? ImGuiCol_FrameBgHovered : ImGuiCol_FrameBg), num_segment); if (active) { const float pad = ImMax(1.0f, IM_FLOOR(square_sz / 6.0f)); - window->DrawList->AddCircleFilled(center, radius - pad, GetColorU32(ImGuiCol_CheckMark), 16); + window->DrawList->AddCircleFilled(center, radius - pad, GetColorU32(ImGuiCol_CheckMark)); } if (style.FrameBorderSize > 0.0f) { - window->DrawList->AddCircle(center + ImVec2(1, 1), radius, GetColorU32(ImGuiCol_BorderShadow), 16, style.FrameBorderSize); - window->DrawList->AddCircle(center, radius, GetColorU32(ImGuiCol_Border), 16, style.FrameBorderSize); + window->DrawList->AddCircle(center + ImVec2(1, 1), radius, GetColorU32(ImGuiCol_BorderShadow), num_segment, style.FrameBorderSize); + window->DrawList->AddCircle(center, radius, GetColorU32(ImGuiCol_Border), num_segment, style.FrameBorderSize); } ImVec2 label_pos = ImVec2(check_bb.Max.x + style.ItemInnerSpacing.x, check_bb.Min.y + style.FramePadding.y); @@ -1370,7 +1398,9 @@ void ImGui::AlignTextToFramePadding() } // Horizontal/vertical separating line -void ImGui::SeparatorEx(ImGuiSeparatorFlags flags) +// FIXME: Surprisingly, this seemingly trivial widget is a victim of many different legacy/tricky layout issues. +// Note how thickness == 1.0f is handled specifically as not moving CursorPos by 'thickness', but other values are. +void ImGui::SeparatorEx(ImGuiSeparatorFlags flags, float thickness) { ImGuiWindow* window = GetCurrentWindow(); if (window->SkipItems) @@ -1378,21 +1408,20 @@ void ImGui::SeparatorEx(ImGuiSeparatorFlags flags) ImGuiContext& g = *GImGui; IM_ASSERT(ImIsPowerOfTwo(flags & (ImGuiSeparatorFlags_Horizontal | ImGuiSeparatorFlags_Vertical))); // Check that only 1 option is selected + IM_ASSERT(thickness > 0.0f); - float thickness_draw = 1.0f; - float thickness_layout = 0.0f; if (flags & ImGuiSeparatorFlags_Vertical) { - // Vertical separator, for menu bars (use current line height). Not exposed because it is misleading and it doesn't have an effect on regular layout. + // Vertical separator, for menu bars (use current line height). float y1 = window->DC.CursorPos.y; float y2 = window->DC.CursorPos.y + window->DC.CurrLineSize.y; - const ImRect bb(ImVec2(window->DC.CursorPos.x, y1), ImVec2(window->DC.CursorPos.x + thickness_draw, y2)); - ItemSize(ImVec2(thickness_layout, 0.0f)); + const ImRect bb(ImVec2(window->DC.CursorPos.x, y1), ImVec2(window->DC.CursorPos.x + thickness, y2)); + ItemSize(ImVec2(thickness, 0.0f)); if (!ItemAdd(bb, 0)) return; // Draw - window->DrawList->AddLine(ImVec2(bb.Min.x, bb.Min.y), ImVec2(bb.Min.x, bb.Max.y), GetColorU32(ImGuiCol_Separator)); + window->DrawList->AddRectFilled(bb.Min, bb.Max, GetColorU32(ImGuiCol_Separator)); if (g.LogEnabled) LogText(" |"); } @@ -1414,19 +1443,22 @@ void ImGui::SeparatorEx(ImGuiSeparatorFlags flags) x2 = table->Columns[table->CurrentColumn].MaxX; } + // Before Tables API happened, we relied on Separator() to span all columns of a Columns() set. + // We currently don't need to provide the same feature for tables because tables naturally have border features. ImGuiOldColumns* columns = (flags & ImGuiSeparatorFlags_SpanAllColumns) ? window->DC.CurrentColumns : NULL; if (columns) PushColumnsBackground(); // We don't provide our width to the layout so that it doesn't get feed back into AutoFit // FIXME: This prevents ->CursorMaxPos based bounding box evaluation from working (e.g. TableEndCell) - const ImRect bb(ImVec2(x1, window->DC.CursorPos.y), ImVec2(x2, window->DC.CursorPos.y + thickness_draw)); - ItemSize(ImVec2(0.0f, thickness_layout)); - const bool item_visible = ItemAdd(bb, 0); - if (item_visible) + const float thickness_for_layout = (thickness == 1.0f) ? 0.0f : thickness; // FIXME: See 1.70/1.71 Separator() change: makes legacy 1-px separator not affect layout yet. Should change. + const ImRect bb(ImVec2(x1, window->DC.CursorPos.y), ImVec2(x2, window->DC.CursorPos.y + thickness)); + ItemSize(ImVec2(0.0f, thickness_for_layout)); + + if (ItemAdd(bb, 0)) { // Draw - window->DrawList->AddLine(bb.Min, ImVec2(bb.Max.x, bb.Min.y), GetColorU32(ImGuiCol_Separator)); + window->DrawList->AddRectFilled(bb.Min, bb.Max, GetColorU32(ImGuiCol_Separator)); if (g.LogEnabled) LogRenderedText(&bb.Min, "--------------------------------\n"); @@ -1446,10 +1478,76 @@ void ImGui::Separator() if (window->SkipItems) return; - // Those flags should eventually be overridable by the user + // Those flags should eventually be configurable by the user + // FIXME: We cannot g.Style.SeparatorTextBorderSize for thickness as it relates to SeparatorText() which is a decorated separator, not defaulting to 1.0f. ImGuiSeparatorFlags flags = (window->DC.LayoutType == ImGuiLayoutType_Horizontal) ? ImGuiSeparatorFlags_Vertical : ImGuiSeparatorFlags_Horizontal; flags |= ImGuiSeparatorFlags_SpanAllColumns; // NB: this only applies to legacy Columns() api as they relied on Separator() a lot. - SeparatorEx(flags); + SeparatorEx(flags, 1.0f); +} + +void ImGui::SeparatorTextEx(ImGuiID id, const char* label, const char* label_end, float extra_w) +{ + ImGuiContext& g = *GImGui; + ImGuiWindow* window = g.CurrentWindow; + ImGuiStyle& style = g.Style; + + const ImVec2 label_size = CalcTextSize(label, label_end, false); + const ImVec2 pos = window->DC.CursorPos; + const ImVec2 padding = style.SeparatorTextPadding; + + const float separator_thickness = style.SeparatorTextBorderSize; + const ImVec2 min_size(label_size.x + extra_w + padding.x * 2.0f, ImMax(label_size.y + padding.y * 2.0f, separator_thickness)); + const ImRect bb(pos, ImVec2(window->WorkRect.Max.x, pos.y + min_size.y)); + const float text_baseline_y = ImFloor((bb.GetHeight() - label_size.y) * style.SeparatorTextAlign.y + 0.99999f); //ImMax(padding.y, ImFloor((style.SeparatorTextSize - label_size.y) * 0.5f)); + ItemSize(min_size, text_baseline_y); + if (!ItemAdd(bb, id)) + return; + + const float sep1_x1 = pos.x; + const float sep2_x2 = bb.Max.x; + const float seps_y = ImFloor((bb.Min.y + bb.Max.y) * 0.5f + 0.99999f); + + const float label_avail_w = ImMax(0.0f, sep2_x2 - sep1_x1 - padding.x * 2.0f); + const ImVec2 label_pos(pos.x + padding.x + ImMax(0.0f, (label_avail_w - label_size.x - extra_w) * style.SeparatorTextAlign.x), pos.y + text_baseline_y); // FIXME-ALIGN + + // This allows using SameLine() to position something in the 'extra_w' + window->DC.CursorPosPrevLine.x = label_pos.x + label_size.x; + + const ImU32 separator_col = GetColorU32(ImGuiCol_Separator); + if (label_size.x > 0.0f) + { + const float sep1_x2 = label_pos.x - style.ItemSpacing.x; + const float sep2_x1 = label_pos.x + label_size.x + extra_w + style.ItemSpacing.x; + if (sep1_x2 > sep1_x1 && separator_thickness > 0.0f) + window->DrawList->AddLine(ImVec2(sep1_x1, seps_y), ImVec2(sep1_x2, seps_y), separator_col, separator_thickness); + if (sep2_x2 > sep2_x1 && separator_thickness > 0.0f) + window->DrawList->AddLine(ImVec2(sep2_x1, seps_y), ImVec2(sep2_x2, seps_y), separator_col, separator_thickness); + if (g.LogEnabled) + LogSetNextTextDecoration("---", NULL); + RenderTextEllipsis(window->DrawList, label_pos, ImVec2(bb.Max.x, bb.Max.y + style.ItemSpacing.y), bb.Max.x, bb.Max.x, label, label_end, &label_size); + } + else + { + if (g.LogEnabled) + LogText("---"); + if (separator_thickness > 0.0f) + window->DrawList->AddLine(ImVec2(sep1_x1, seps_y), ImVec2(sep2_x2, seps_y), separator_col, separator_thickness); + } +} + +void ImGui::SeparatorText(const char* label) +{ + ImGuiWindow* window = GetCurrentWindow(); + if (window->SkipItems) + return; + + // The SeparatorText() vs SeparatorTextEx() distinction is designed to be considerate that we may want: + // - allow separator-text to be draggable items (would require a stable ID + a noticeable highlight) + // - this high-level entry point to allow formatting? (which in turns may require ID separate from formatted string) + // - because of this we probably can't turn 'const char* label' into 'const char* fmt, ...' + // Otherwise, we can decide that users wanting to drag this would layout a dedicated drag-item, + // and then we can turn this into a format function. + SeparatorTextEx(0, label, FindRenderedTextEnd(label), 0.0f); } // Using 'hover_visibility_delay' allows us to hide the highlight and mouse cursor for a short time, which can be convenient to reduce visual noise. @@ -1458,11 +1556,7 @@ bool ImGui::SplitterBehavior(const ImRect& bb, ImGuiID id, ImGuiAxis axis, float ImGuiContext& g = *GImGui; ImGuiWindow* window = g.CurrentWindow; - const ImGuiItemFlags item_flags_backup = g.CurrentItemFlags; - g.CurrentItemFlags |= ImGuiItemFlags_NoNav | ImGuiItemFlags_NoNavDefaultFocus; - bool item_add = ItemAdd(bb, id); - g.CurrentItemFlags = item_flags_backup; - if (!item_add) + if (!ItemAdd(bb, id, NULL, ImGuiItemFlags_NoNav)) return false; bool hovered, held; @@ -1548,7 +1642,7 @@ void ImGui::ShrinkWidths(ImGuiShrinkWidthItem* items, int count, float width_exc width_excess -= width_to_remove_per_item * count_same_width; } - // Round width and redistribute remainder left-to-right (could make it an option of the function?) + // Round width and redistribute remainder // Ensure that e.g. the right-most tab of a shrunk tab-bar always reaches exactly at the same distance from the right-most edge of the tab bar separator. width_excess = 0.0f; for (int n = 0; n < count; n++) @@ -1557,10 +1651,13 @@ void ImGui::ShrinkWidths(ImGuiShrinkWidthItem* items, int count, float width_exc width_excess += items[n].Width - width_rounded; items[n].Width = width_rounded; } - if (width_excess > 0.0f) - for (int n = 0; n < count; n++) - if (items[n].Index < (int)(width_excess + 0.01f)) - items[n].Width += 1.0f; + while (width_excess > 0.0f) + for (int n = 0; n < count && width_excess > 0.0f; n++) + { + float width_to_add = ImMin(items[n].InitialWidth - items[n].Width, 1.0f); + items[n].Width += width_to_add; + width_excess -= width_to_add; + } } //------------------------------------------------------------------------- @@ -1682,7 +1779,12 @@ bool ImGui::BeginComboPopup(ImGuiID popup_id, const ImRect& bb, ImGuiComboFlags if (flags & ImGuiComboFlags_HeightRegular) popup_max_height_in_items = 8; else if (flags & ImGuiComboFlags_HeightSmall) popup_max_height_in_items = 4; else if (flags & ImGuiComboFlags_HeightLarge) popup_max_height_in_items = 20; - SetNextWindowSizeConstraints(ImVec2(w, 0.0f), ImVec2(FLT_MAX, CalcMaxPopupHeightFromItemCount(popup_max_height_in_items))); + ImVec2 constraint_min(0.0f, 0.0f), constraint_max(FLT_MAX, FLT_MAX); + if ((g.NextWindowData.Flags & ImGuiNextWindowDataFlags_HasSize) == 0 || g.NextWindowData.SizeVal.x <= 0.0f) // Don't apply constraints if user specified a size + constraint_min.x = w; + if ((g.NextWindowData.Flags & ImGuiNextWindowDataFlags_HasSize) == 0 || g.NextWindowData.SizeVal.y <= 0.0f) + constraint_max.y = CalcMaxPopupHeightFromItemCount(popup_max_height_in_items); + SetNextWindowSizeConstraints(constraint_min, constraint_max); } // This is essentially a specialized version of BeginPopupEx() @@ -1730,7 +1832,7 @@ bool ImGui::BeginComboPreview() ImGuiWindow* window = g.CurrentWindow; ImGuiComboPreviewData* preview_data = &g.ComboPreviewData; - if (window->SkipItems || !window->ClipRect.Overlaps(g.LastItemData.Rect)) // FIXME: Because we don't have a ImGuiItemStatusFlags_Visible flag to test last ItemAdd() result + if (window->SkipItems || !(g.LastItemData.StatusFlags & ImGuiItemStatusFlags_Visible)) return false; IM_ASSERT(g.LastItemData.Rect.Min.x == preview_data->PreviewRect.Min.x && g.LastItemData.Rect.Min.y == preview_data->PreviewRect.Min.y); // Didn't call after BeginCombo/EndCombo block or forgot to pass ImGuiComboFlags_CustomPreview flag? if (!window->ClipRect.Contains(preview_data->PreviewRect)) // Narrower test (optional) @@ -1874,11 +1976,11 @@ bool ImGui::Combo(const char* label, int* current_item, const char* items_separa //------------------------------------------------------------------------- // [SECTION] Data Type and Data Formatting Helpers [Internal] //------------------------------------------------------------------------- -// - PatchFormatStringFloatToInt() // - DataTypeGetInfo() // - DataTypeFormatString() // - DataTypeApplyOp() // - DataTypeApplyOpFromText() +// - DataTypeCompare() // - DataTypeClamp() // - GetMinimumStepAtDecimalPrecision // - RoundScalarWithFormat<>() @@ -1904,30 +2006,6 @@ static const ImGuiDataTypeInfo GDataTypeInfo[] = }; IM_STATIC_ASSERT(IM_ARRAYSIZE(GDataTypeInfo) == ImGuiDataType_COUNT); -// FIXME-LEGACY: Prior to 1.61 our DragInt() function internally used floats and because of this the compile-time default value for format was "%.0f". -// Even though we changed the compile-time default, we expect users to have carried %f around, which would break the display of DragInt() calls. -// To honor backward compatibility we are rewriting the format string, unless IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. What could possibly go wrong?! -static const char* PatchFormatStringFloatToInt(const char* fmt) -{ - if (fmt[0] == '%' && fmt[1] == '.' && fmt[2] == '0' && fmt[3] == 'f' && fmt[4] == 0) // Fast legacy path for "%.0f" which is expected to be the most common case. - return "%d"; - const char* fmt_start = ImParseFormatFindStart(fmt); // Find % (if any, and ignore %%) - const char* fmt_end = ImParseFormatFindEnd(fmt_start); // Find end of format specifier, which itself is an exercise of confidence/recklessness (because snprintf is dependent on libc or user). - if (fmt_end > fmt_start && fmt_end[-1] == 'f') - { -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - if (fmt_start == fmt && fmt_end[0] == 0) - return "%d"; - ImGuiContext& g = *GImGui; - ImFormatString(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), "%.*s%%d%s", (int)(fmt_start - fmt), fmt, fmt_end); // Honor leading and trailing decorations, but lose alignment/precision. - return g.TempBuffer; -#else - IM_ASSERT(0 && "DragInt(): Invalid format string!"); // Old versions used a default parameter of "%.0f", please replace with e.g. "%d" -#endif - } - return fmt; -} - const ImGuiDataTypeInfo* ImGui::DataTypeGetInfo(ImGuiDataType data_type) { IM_ASSERT(data_type >= 0 && data_type < ImGuiDataType_COUNT); @@ -2022,7 +2100,8 @@ bool ImGui::DataTypeApplyFromText(const char* buf, ImGuiDataType data_type, void memcpy(&data_backup, p_data, type_info->Size); // Sanitize format - // For float/double we have to ignore format with precision (e.g. "%.2f") because sscanf doesn't take them in, so force them into %f and %lf + // - For float/double we have to ignore format with precision (e.g. "%.2f") because sscanf doesn't take them in, so force them into %f and %lf + // - In theory could treat empty format as using default, but this would only cover rare/bizarre case of using InputScalar() + integer + format string without %. char format_sanitized[32]; if (data_type == ImGuiDataType_Float || data_type == ImGuiDataType_Double) format = type_info->ScanFmt; @@ -2183,10 +2262,13 @@ bool ImGui::DragBehaviorT(ImGuiDataType data_type, TYPE* v, float v_speed, const if (g.IO.KeyShift) adjust_delta *= 10.0f; } - else if (g.ActiveIdSource == ImGuiInputSource_Nav) + else if (g.ActiveIdSource == ImGuiInputSource_Keyboard || g.ActiveIdSource == ImGuiInputSource_Gamepad) { const int decimal_precision = is_floating_point ? ImParseFormatPrecision(format, 3) : 0; - adjust_delta = GetNavInputAmount2d(ImGuiNavDirSourceFlags_Keyboard | ImGuiNavDirSourceFlags_PadDPad, ImGuiNavReadMode_RepeatFast, 1.0f / 10.0f, 10.0f)[axis]; + const bool tweak_slow = IsKeyDown((g.NavInputSource == ImGuiInputSource_Gamepad) ? ImGuiKey_NavGamepadTweakSlow : ImGuiKey_NavKeyboardTweakSlow); + const bool tweak_fast = IsKeyDown((g.NavInputSource == ImGuiInputSource_Gamepad) ? ImGuiKey_NavGamepadTweakFast : ImGuiKey_NavKeyboardTweakFast); + const float tweak_factor = tweak_slow ? 1.0f / 1.0f : tweak_fast ? 10.0f : 1.0f; + adjust_delta = GetNavTweakPressedAmount(axis) * tweak_factor; v_speed = ImMax(v_speed, GetMinimumStepAtDecimalPrecision(decimal_precision)); } adjust_delta *= v_speed; @@ -2284,9 +2366,10 @@ bool ImGui::DragBehavior(ImGuiID id, ImGuiDataType data_type, void* p_v, float v ImGuiContext& g = *GImGui; if (g.ActiveId == id) { + // Those are the things we can do easily outside the DragBehaviorT<> template, saves code generation. if (g.ActiveIdSource == ImGuiInputSource_Mouse && !g.IO.MouseDown[0]) ClearActiveID(); - else if (g.ActiveIdSource == ImGuiInputSource_Nav && g.NavActivatePressedId == id && !g.ActiveIdIsJustActivated) + else if ((g.ActiveIdSource == ImGuiInputSource_Keyboard || g.ActiveIdSource == ImGuiInputSource_Gamepad) && g.NavActivatePressedId == id && !g.ActiveIdIsJustActivated) ClearActiveID(); } if (g.ActiveId != id) @@ -2337,36 +2420,38 @@ bool ImGui::DragScalar(const char* label, ImGuiDataType data_type, void* p_data, // Default format string when passing NULL if (format == NULL) format = DataTypeGetInfo(data_type)->PrintFmt; - else if (data_type == ImGuiDataType_S32 && strcmp(format, "%d") != 0) // (FIXME-LEGACY: Patch old "%.0f" format string to use "%d", read function more details.) - format = PatchFormatStringFloatToInt(format); - // Tabbing or CTRL-clicking on Drag turns it into an InputText const bool hovered = ItemHoverable(frame_bb, id); bool temp_input_is_active = temp_input_allowed && TempInputIsActive(id); if (!temp_input_is_active) { + // Tabbing or CTRL-clicking on Drag turns it into an InputText const bool input_requested_by_tabbing = temp_input_allowed && (g.LastItemData.StatusFlags & ImGuiItemStatusFlags_FocusedByTabbing) != 0; - const bool clicked = (hovered && g.IO.MouseClicked[0]); - const bool double_clicked = (hovered && g.IO.MouseClickedCount[0] == 2); - if (input_requested_by_tabbing || clicked || double_clicked || g.NavActivateId == id || g.NavActivateInputId == id) + const bool clicked = hovered && IsMouseClicked(0, id); + const bool double_clicked = (hovered && g.IO.MouseClickedCount[0] == 2 && TestKeyOwner(ImGuiKey_MouseLeft, id)); + const bool make_active = (input_requested_by_tabbing || clicked || double_clicked || g.NavActivateId == id); + if (make_active && (clicked || double_clicked)) + SetKeyOwner(ImGuiKey_MouseLeft, id); + if (make_active && temp_input_allowed) + if (input_requested_by_tabbing || (clicked && g.IO.KeyCtrl) || double_clicked || (g.NavActivateId == id && (g.NavActivateFlags & ImGuiActivateFlags_PreferInput))) + temp_input_is_active = true; + + // (Optional) simple click (without moving) turns Drag into an InputText + if (g.IO.ConfigDragClickToInputText && temp_input_allowed && !temp_input_is_active) + if (g.ActiveId == id && hovered && g.IO.MouseReleased[0] && !IsMouseDragPastThreshold(0, g.IO.MouseDragThreshold * DRAG_MOUSE_THRESHOLD_FACTOR)) + { + g.NavActivateId = id; + g.NavActivateFlags = ImGuiActivateFlags_PreferInput; + temp_input_is_active = true; + } + + if (make_active && !temp_input_is_active) { SetActiveID(id, window); SetFocusID(id, window); FocusWindow(window); g.ActiveIdUsingNavDirMask = (1 << ImGuiDir_Left) | (1 << ImGuiDir_Right); - if (temp_input_allowed) - if (input_requested_by_tabbing || (clicked && g.IO.KeyCtrl) || double_clicked || g.NavActivateInputId == id) - temp_input_is_active = true; } - - // Experimental: simple click (without moving) turns Drag into an InputText - if (g.IO.ConfigDragClickToInputText && temp_input_allowed && !temp_input_is_active) - if (g.ActiveId == id && hovered && g.IO.MouseReleased[0] && !IsMouseDragPastThreshold(0, g.IO.MouseDragThreshold * DRAG_MOUSE_THRESHOLD_FACTOR)) - { - g.NavActivateId = g.NavActivateInputId = id; - g.NavActivateFlags = ImGuiActivateFlags_PreferInput; - temp_input_is_active = true; - } } if (temp_input_is_active) @@ -2396,7 +2481,7 @@ bool ImGui::DragScalar(const char* label, ImGuiDataType data_type, void* p_data, if (label_size.x > 0.0f) RenderText(ImVec2(frame_bb.Max.x + style.ItemInnerSpacing.x, frame_bb.Min.y + style.FramePadding.y), label); - IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags); + IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags | (temp_input_allowed ? ImGuiItemStatusFlags_Inputable : 0)); return value_changed; } @@ -2542,35 +2627,6 @@ bool ImGui::DragIntRange2(const char* label, int* v_current_min, int* v_current_ return value_changed; } -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - -// Obsolete versions with power parameter. See https://github.com/ocornut/imgui/issues/3361 for details. -bool ImGui::DragScalar(const char* label, ImGuiDataType data_type, void* p_data, float v_speed, const void* p_min, const void* p_max, const char* format, float power) -{ - ImGuiSliderFlags drag_flags = ImGuiSliderFlags_None; - if (power != 1.0f) - { - IM_ASSERT(power == 1.0f && "Call function with ImGuiSliderFlags_Logarithmic flags instead of using the old 'float power' function!"); - IM_ASSERT(p_min != NULL && p_max != NULL); // When using a power curve the drag needs to have known bounds - drag_flags |= ImGuiSliderFlags_Logarithmic; // Fallback for non-asserting paths - } - return DragScalar(label, data_type, p_data, v_speed, p_min, p_max, format, drag_flags); -} - -bool ImGui::DragScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, float v_speed, const void* p_min, const void* p_max, const char* format, float power) -{ - ImGuiSliderFlags drag_flags = ImGuiSliderFlags_None; - if (power != 1.0f) - { - IM_ASSERT(power == 1.0f && "Call function with ImGuiSliderFlags_Logarithmic flags instead of using the old 'float power' function!"); - IM_ASSERT(p_min != NULL && p_max != NULL); // When using a power curve the drag needs to have known bounds - drag_flags |= ImGuiSliderFlags_Logarithmic; // Fallback for non-asserting paths - } - return DragScalarN(label, data_type, p_data, components, v_speed, p_min, p_max, format, drag_flags); -} - -#endif // IMGUI_DISABLE_OBSOLETE_FUNCTIONS - //------------------------------------------------------------------------- // [SECTION] Widgets: SliderScalar, SliderFloat, SliderInt, etc. //------------------------------------------------------------------------- @@ -2621,7 +2677,6 @@ float ImGui::ScaleRatioFromValueT(ImGuiDataType data_type, TYPE v, TYPE v_min, T v_max_fudged = -logarithmic_zero_epsilon; float result; - if (v_clamped <= v_min_fudged) result = 0.0f; // Workaround for values that are in-range but below our fudge else if (v_clamped >= v_max_fudged) @@ -2645,91 +2700,81 @@ float ImGui::ScaleRatioFromValueT(ImGuiDataType data_type, TYPE v, TYPE v_min, T return flipped ? (1.0f - result) : result; } - - // Linear slider - return (float)((FLOATTYPE)(SIGNEDTYPE)(v_clamped - v_min) / (FLOATTYPE)(SIGNEDTYPE)(v_max - v_min)); + else + { + // Linear slider + return (float)((FLOATTYPE)(SIGNEDTYPE)(v_clamped - v_min) / (FLOATTYPE)(SIGNEDTYPE)(v_max - v_min)); + } } // Convert a parametric position on a slider into a value v in the output space (the logical opposite of ScaleRatioFromValueT) template TYPE ImGui::ScaleValueFromRatioT(ImGuiDataType data_type, float t, TYPE v_min, TYPE v_max, bool is_logarithmic, float logarithmic_zero_epsilon, float zero_deadzone_halfsize) { - if (v_min == v_max) + // We special-case the extents because otherwise our logarithmic fudging can lead to "mathematically correct" + // but non-intuitive behaviors like a fully-left slider not actually reaching the minimum value. Also generally simpler. + if (t <= 0.0f || v_min == v_max) return v_min; - const bool is_floating_point = (data_type == ImGuiDataType_Float) || (data_type == ImGuiDataType_Double); + if (t >= 1.0f) + return v_max; - TYPE result; + TYPE result = (TYPE)0; if (is_logarithmic) { - // We special-case the extents because otherwise our fudging can lead to "mathematically correct" but non-intuitive behaviors like a fully-left slider not actually reaching the minimum value - if (t <= 0.0f) - result = v_min; - else if (t >= 1.0f) - result = v_max; - else + // Fudge min/max to avoid getting silly results close to zero + FLOATTYPE v_min_fudged = (ImAbs((FLOATTYPE)v_min) < logarithmic_zero_epsilon) ? ((v_min < 0.0f) ? -logarithmic_zero_epsilon : logarithmic_zero_epsilon) : (FLOATTYPE)v_min; + FLOATTYPE v_max_fudged = (ImAbs((FLOATTYPE)v_max) < logarithmic_zero_epsilon) ? ((v_max < 0.0f) ? -logarithmic_zero_epsilon : logarithmic_zero_epsilon) : (FLOATTYPE)v_max; + + const bool flipped = v_max < v_min; // Check if range is "backwards" + if (flipped) + ImSwap(v_min_fudged, v_max_fudged); + + // Awkward special case - we need ranges of the form (-100 .. 0) to convert to (-100 .. -epsilon), not (-100 .. epsilon) + if ((v_max == 0.0f) && (v_min < 0.0f)) + v_max_fudged = -logarithmic_zero_epsilon; + + float t_with_flip = flipped ? (1.0f - t) : t; // t, but flipped if necessary to account for us flipping the range + + if ((v_min * v_max) < 0.0f) // Range crosses zero, so we have to do this in two parts { - bool flipped = v_max < v_min; // Check if range is "backwards" - - // Fudge min/max to avoid getting silly results close to zero - FLOATTYPE v_min_fudged = (ImAbs((FLOATTYPE)v_min) < logarithmic_zero_epsilon) ? ((v_min < 0.0f) ? -logarithmic_zero_epsilon : logarithmic_zero_epsilon) : (FLOATTYPE)v_min; - FLOATTYPE v_max_fudged = (ImAbs((FLOATTYPE)v_max) < logarithmic_zero_epsilon) ? ((v_max < 0.0f) ? -logarithmic_zero_epsilon : logarithmic_zero_epsilon) : (FLOATTYPE)v_max; - - if (flipped) - ImSwap(v_min_fudged, v_max_fudged); - - // Awkward special case - we need ranges of the form (-100 .. 0) to convert to (-100 .. -epsilon), not (-100 .. epsilon) - if ((v_max == 0.0f) && (v_min < 0.0f)) - v_max_fudged = -logarithmic_zero_epsilon; - - float t_with_flip = flipped ? (1.0f - t) : t; // t, but flipped if necessary to account for us flipping the range - - if ((v_min * v_max) < 0.0f) // Range crosses zero, so we have to do this in two parts - { - float zero_point_center = (-(float)ImMin(v_min, v_max)) / ImAbs((float)v_max - (float)v_min); // The zero point in parametric space - float zero_point_snap_L = zero_point_center - zero_deadzone_halfsize; - float zero_point_snap_R = zero_point_center + zero_deadzone_halfsize; - if (t_with_flip >= zero_point_snap_L && t_with_flip <= zero_point_snap_R) - result = (TYPE)0.0f; // Special case to make getting exactly zero possible (the epsilon prevents it otherwise) - else if (t_with_flip < zero_point_center) - result = (TYPE)-(logarithmic_zero_epsilon * ImPow(-v_min_fudged / logarithmic_zero_epsilon, (FLOATTYPE)(1.0f - (t_with_flip / zero_point_snap_L)))); - else - result = (TYPE)(logarithmic_zero_epsilon * ImPow(v_max_fudged / logarithmic_zero_epsilon, (FLOATTYPE)((t_with_flip - zero_point_snap_R) / (1.0f - zero_point_snap_R)))); - } - else if ((v_min < 0.0f) || (v_max < 0.0f)) // Entirely negative slider - result = (TYPE)-(-v_max_fudged * ImPow(-v_min_fudged / -v_max_fudged, (FLOATTYPE)(1.0f - t_with_flip))); + float zero_point_center = (-(float)ImMin(v_min, v_max)) / ImAbs((float)v_max - (float)v_min); // The zero point in parametric space + float zero_point_snap_L = zero_point_center - zero_deadzone_halfsize; + float zero_point_snap_R = zero_point_center + zero_deadzone_halfsize; + if (t_with_flip >= zero_point_snap_L && t_with_flip <= zero_point_snap_R) + result = (TYPE)0.0f; // Special case to make getting exactly zero possible (the epsilon prevents it otherwise) + else if (t_with_flip < zero_point_center) + result = (TYPE)-(logarithmic_zero_epsilon * ImPow(-v_min_fudged / logarithmic_zero_epsilon, (FLOATTYPE)(1.0f - (t_with_flip / zero_point_snap_L)))); else - result = (TYPE)(v_min_fudged * ImPow(v_max_fudged / v_min_fudged, (FLOATTYPE)t_with_flip)); + result = (TYPE)(logarithmic_zero_epsilon * ImPow(v_max_fudged / logarithmic_zero_epsilon, (FLOATTYPE)((t_with_flip - zero_point_snap_R) / (1.0f - zero_point_snap_R)))); } + else if ((v_min < 0.0f) || (v_max < 0.0f)) // Entirely negative slider + result = (TYPE)-(-v_max_fudged * ImPow(-v_min_fudged / -v_max_fudged, (FLOATTYPE)(1.0f - t_with_flip))); + else + result = (TYPE)(v_min_fudged * ImPow(v_max_fudged / v_min_fudged, (FLOATTYPE)t_with_flip)); } else { // Linear slider + const bool is_floating_point = (data_type == ImGuiDataType_Float) || (data_type == ImGuiDataType_Double); if (is_floating_point) { result = ImLerp(v_min, v_max, t); } - else + else if (t < 1.0) { // - For integer values we want the clicking position to match the grab box so we round above // This code is carefully tuned to work with large values (e.g. high ranges of U64) while preserving this property.. // - Not doing a *1.0 multiply at the end of a range as it tends to be lossy. While absolute aiming at a large s64/u64 // range is going to be imprecise anyway, with this check we at least make the edge values matches expected limits. - if (t < 1.0) - { - FLOATTYPE v_new_off_f = (SIGNEDTYPE)(v_max - v_min) * t; - result = (TYPE)((SIGNEDTYPE)v_min + (SIGNEDTYPE)(v_new_off_f + (FLOATTYPE)(v_min > v_max ? -0.5 : 0.5))); - } - else - { - result = v_max; - } + FLOATTYPE v_new_off_f = (SIGNEDTYPE)(v_max - v_min) * t; + result = (TYPE)((SIGNEDTYPE)v_min + (SIGNEDTYPE)(v_new_off_f + (FLOATTYPE)(v_min > v_max ? -0.5 : 0.5))); } } return result; } -// FIXME: Move more of the code into SliderBehavior() +// FIXME: Try to move more of the code into shared SliderBehavior() template bool ImGui::SliderBehaviorT(const ImRect& bb, ImGuiID id, ImGuiDataType data_type, TYPE* v, const TYPE v_min, const TYPE v_max, const char* format, ImGuiSliderFlags flags, ImRect* out_grab_bb) { @@ -2739,13 +2784,14 @@ bool ImGui::SliderBehaviorT(const ImRect& bb, ImGuiID id, ImGuiDataType data_typ const ImGuiAxis axis = (flags & ImGuiSliderFlags_Vertical) ? ImGuiAxis_Y : ImGuiAxis_X; const bool is_logarithmic = (flags & ImGuiSliderFlags_Logarithmic) != 0; const bool is_floating_point = (data_type == ImGuiDataType_Float) || (data_type == ImGuiDataType_Double); + const SIGNEDTYPE v_range = (v_min < v_max ? v_max - v_min : v_min - v_max); - const float grab_padding = 2.0f; + // Calculate bounds + const float grab_padding = 2.0f; // FIXME: Should be part of style. const float slider_sz = (bb.Max[axis] - bb.Min[axis]) - grab_padding * 2.0f; float grab_sz = style.GrabMinSize; - SIGNEDTYPE v_range = (v_min < v_max ? v_max - v_min : v_min - v_max); - if (!is_floating_point && v_range >= 0) // v_range < 0 may happen on integer overflows - grab_sz = ImMax((float)(slider_sz / (v_range + 1)), style.GrabMinSize); // For integer sliders: if possible have the grab size represent 1 unit + if (!is_floating_point && v_range >= 0) // v_range < 0 may happen on integer overflows + grab_sz = ImMax((float)(slider_sz / (v_range + 1)), style.GrabMinSize); // For integer sliders: if possible have the grab size represent 1 unit grab_sz = ImMin(grab_sz, slider_sz); const float slider_usable_sz = slider_sz - grab_sz; const float slider_usable_pos_min = bb.Min[axis] + grab_padding + grab_sz * 0.5f; @@ -2776,13 +2822,23 @@ bool ImGui::SliderBehaviorT(const ImRect& bb, ImGuiID id, ImGuiDataType data_typ else { const float mouse_abs_pos = g.IO.MousePos[axis]; - clicked_t = (slider_usable_sz > 0.0f) ? ImClamp((mouse_abs_pos - slider_usable_pos_min) / slider_usable_sz, 0.0f, 1.0f) : 0.0f; + if (g.ActiveIdIsJustActivated) + { + float grab_t = ScaleRatioFromValueT(data_type, *v, v_min, v_max, is_logarithmic, logarithmic_zero_epsilon, zero_deadzone_halfsize); + if (axis == ImGuiAxis_Y) + grab_t = 1.0f - grab_t; + const float grab_pos = ImLerp(slider_usable_pos_min, slider_usable_pos_max, grab_t); + const bool clicked_around_grab = (mouse_abs_pos >= grab_pos - grab_sz * 0.5f - 1.0f) && (mouse_abs_pos <= grab_pos + grab_sz * 0.5f + 1.0f); // No harm being extra generous here. + g.SliderGrabClickOffset = (clicked_around_grab && is_floating_point) ? mouse_abs_pos - grab_pos : 0.0f; + } + if (slider_usable_sz > 0.0f) + clicked_t = ImSaturate((mouse_abs_pos - g.SliderGrabClickOffset - slider_usable_pos_min) / slider_usable_sz); if (axis == ImGuiAxis_Y) clicked_t = 1.0f - clicked_t; set_new_value = true; } } - else if (g.ActiveIdSource == ImGuiInputSource_Nav) + else if (g.ActiveIdSource == ImGuiInputSource_Keyboard || g.ActiveIdSource == ImGuiInputSource_Gamepad) { if (g.ActiveIdIsJustActivated) { @@ -2790,25 +2846,26 @@ bool ImGui::SliderBehaviorT(const ImRect& bb, ImGuiID id, ImGuiDataType data_typ g.SliderCurrentAccumDirty = false; } - const ImVec2 input_delta2 = GetNavInputAmount2d(ImGuiNavDirSourceFlags_Keyboard | ImGuiNavDirSourceFlags_PadDPad, ImGuiNavReadMode_RepeatFast, 0.0f, 0.0f); - float input_delta = (axis == ImGuiAxis_X) ? input_delta2.x : -input_delta2.y; + float input_delta = (axis == ImGuiAxis_X) ? GetNavTweakPressedAmount(axis) : -GetNavTweakPressedAmount(axis); if (input_delta != 0.0f) { + const bool tweak_slow = IsKeyDown((g.NavInputSource == ImGuiInputSource_Gamepad) ? ImGuiKey_NavGamepadTweakSlow : ImGuiKey_NavKeyboardTweakSlow); + const bool tweak_fast = IsKeyDown((g.NavInputSource == ImGuiInputSource_Gamepad) ? ImGuiKey_NavGamepadTweakFast : ImGuiKey_NavKeyboardTweakFast); const int decimal_precision = is_floating_point ? ImParseFormatPrecision(format, 3) : 0; if (decimal_precision > 0) { input_delta /= 100.0f; // Gamepad/keyboard tweak speeds in % of slider bounds - if (IsNavInputDown(ImGuiNavInput_TweakSlow)) + if (tweak_slow) input_delta /= 10.0f; } else { - if ((v_range >= -100.0f && v_range <= 100.0f) || IsNavInputDown(ImGuiNavInput_TweakSlow)) + if ((v_range >= -100.0f && v_range <= 100.0f) || tweak_slow) input_delta = ((input_delta < 0.0f) ? -1.0f : +1.0f) / (float)v_range; // Gamepad/keyboard tweak speeds in integer steps else input_delta /= 100.0f; } - if (IsNavInputDown(ImGuiNavInput_TweakFast)) + if (tweak_fast) input_delta *= 10.0f; g.SliderCurrentAccum += input_delta; @@ -2896,6 +2953,7 @@ bool ImGui::SliderBehavior(const ImRect& bb, ImGuiID id, ImGuiDataType data_type // Read imgui.cpp "API BREAKING CHANGES" section for 1.78 if you hit this assert. IM_ASSERT((flags == 1 || (flags & ImGuiSliderFlags_InvalidMask_) == 0) && "Invalid ImGuiSliderFlags flag! Has the 'float power' argument been mistakenly cast to flags? Call function with ImGuiSliderFlags_Logarithmic flags instead."); + // Those are the things we can do easily outside the SliderBehaviorT<> template, saves code generation. ImGuiContext& g = *GImGui; if ((g.LastItemData.InFlags & ImGuiItemFlags_ReadOnly) || (flags & ImGuiSliderFlags_ReadOnly)) return false; @@ -2955,24 +3013,27 @@ bool ImGui::SliderScalar(const char* label, ImGuiDataType data_type, void* p_dat // Default format string when passing NULL if (format == NULL) format = DataTypeGetInfo(data_type)->PrintFmt; - else if (data_type == ImGuiDataType_S32 && strcmp(format, "%d") != 0) // (FIXME-LEGACY: Patch old "%.0f" format string to use "%d", read function more details.) - format = PatchFormatStringFloatToInt(format); - // Tabbing or CTRL-clicking on Slider turns it into an input box const bool hovered = ItemHoverable(frame_bb, id); bool temp_input_is_active = temp_input_allowed && TempInputIsActive(id); if (!temp_input_is_active) { + // Tabbing or CTRL-clicking on Slider turns it into an input box const bool input_requested_by_tabbing = temp_input_allowed && (g.LastItemData.StatusFlags & ImGuiItemStatusFlags_FocusedByTabbing) != 0; - const bool clicked = (hovered && g.IO.MouseClicked[0]); - if (input_requested_by_tabbing || clicked || g.NavActivateId == id || g.NavActivateInputId == id) + const bool clicked = hovered && IsMouseClicked(0, id); + const bool make_active = (input_requested_by_tabbing || clicked || g.NavActivateId == id); + if (make_active && clicked) + SetKeyOwner(ImGuiKey_MouseLeft, id); + if (make_active && temp_input_allowed) + if (input_requested_by_tabbing || (clicked && g.IO.KeyCtrl) || (g.NavActivateId == id && (g.NavActivateFlags & ImGuiActivateFlags_PreferInput))) + temp_input_is_active = true; + + if (make_active && !temp_input_is_active) { SetActiveID(id, window); SetFocusID(id, window); FocusWindow(window); g.ActiveIdUsingNavDirMask |= (1 << ImGuiDir_Left) | (1 << ImGuiDir_Right); - if (temp_input_allowed && (input_requested_by_tabbing || (clicked && g.IO.KeyCtrl) || g.NavActivateInputId == id)) - temp_input_is_active = true; } } @@ -3008,7 +3069,7 @@ bool ImGui::SliderScalar(const char* label, ImGuiDataType data_type, void* p_dat if (label_size.x > 0.0f) RenderText(ImVec2(frame_bb.Max.x + style.ItemInnerSpacing.x, frame_bb.Min.y + style.FramePadding.y), label); - IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags); + IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags | (temp_input_allowed ? ImGuiItemStatusFlags_Inputable : 0)); return value_changed; } @@ -3120,24 +3181,27 @@ bool ImGui::VSliderScalar(const char* label, const ImVec2& size, ImGuiDataType d // Default format string when passing NULL if (format == NULL) format = DataTypeGetInfo(data_type)->PrintFmt; - else if (data_type == ImGuiDataType_S32 && strcmp(format, "%d") != 0) // (FIXME-LEGACY: Patch old "%.0f" format string to use "%d", read function more details.) - format = PatchFormatStringFloatToInt(format); - // Tabbing or CTRL-clicking on Slider turns it into an input box const bool hovered = ItemHoverable(frame_bb, id); bool temp_input_is_active = temp_input_allowed && TempInputIsActive(id); if (!temp_input_is_active) { + // Tabbing or CTRL-clicking on Slider turns it into an input box const bool input_requested_by_tabbing = temp_input_allowed && (g.LastItemData.StatusFlags & ImGuiItemStatusFlags_FocusedByTabbing) != 0; - const bool clicked = (hovered && g.IO.MouseClicked[0]); - if (input_requested_by_tabbing || clicked || g.NavActivateId == id || g.NavActivateInputId == id) + const bool clicked = hovered && IsMouseClicked(0, id); + const bool make_active = (input_requested_by_tabbing || clicked || g.NavActivateId == id); + if (make_active && clicked) + SetKeyOwner(ImGuiKey_MouseLeft, id); + if (make_active && temp_input_allowed) + if (input_requested_by_tabbing || (clicked && g.IO.KeyCtrl) || (g.NavActivateId == id && (g.NavActivateFlags & ImGuiActivateFlags_PreferInput))) + temp_input_is_active = true; + + if (make_active && !temp_input_is_active) { SetActiveID(id, window); SetFocusID(id, window); FocusWindow(window); g.ActiveIdUsingNavDirMask |= (1 << ImGuiDir_Up) | (1 << ImGuiDir_Down); - if (temp_input_allowed && (input_requested_by_tabbing || (clicked && g.IO.KeyCtrl) || g.NavActivateInputId == id)) - temp_input_is_active = true; } } @@ -3185,33 +3249,6 @@ bool ImGui::VSliderInt(const char* label, const ImVec2& size, int* v, int v_min, return VSliderScalar(label, size, ImGuiDataType_S32, v, &v_min, &v_max, format, flags); } -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS - -// Obsolete versions with power parameter. See https://github.com/ocornut/imgui/issues/3361 for details. -bool ImGui::SliderScalar(const char* label, ImGuiDataType data_type, void* p_data, const void* p_min, const void* p_max, const char* format, float power) -{ - ImGuiSliderFlags slider_flags = ImGuiSliderFlags_None; - if (power != 1.0f) - { - IM_ASSERT(power == 1.0f && "Call function with ImGuiSliderFlags_Logarithmic flags instead of using the old 'float power' function!"); - slider_flags |= ImGuiSliderFlags_Logarithmic; // Fallback for non-asserting paths - } - return SliderScalar(label, data_type, p_data, p_min, p_max, format, slider_flags); -} - -bool ImGui::SliderScalarN(const char* label, ImGuiDataType data_type, void* v, int components, const void* v_min, const void* v_max, const char* format, float power) -{ - ImGuiSliderFlags slider_flags = ImGuiSliderFlags_None; - if (power != 1.0f) - { - IM_ASSERT(power == 1.0f && "Call function with ImGuiSliderFlags_Logarithmic flags instead of using the old 'float power' function!"); - slider_flags |= ImGuiSliderFlags_Logarithmic; // Fallback for non-asserting paths - } - return SliderScalarN(label, data_type, v, components, v_min, v_max, format, slider_flags); -} - -#endif // IMGUI_DISABLE_OBSOLETE_FUNCTIONS - //------------------------------------------------------------------------- // [SECTION] Widgets: InputScalar, InputFloat, InputInt, etc. //------------------------------------------------------------------------- @@ -3267,7 +3304,7 @@ const char* ImParseFormatFindEnd(const char* fmt) } // Extract the format out of a format string with leading or trailing decorations -// fmt = "blah blah" -> return fmt +// fmt = "blah blah" -> return "" // fmt = "%.3f" -> return fmt // fmt = "hello %.3f" -> return fmt + 6 // fmt = "%.3f hello" -> return buf written with "%.3f" @@ -3275,7 +3312,7 @@ const char* ImParseFormatTrimDecorations(const char* fmt, char* buf, size_t buf_ { const char* fmt_start = ImParseFormatFindStart(fmt); if (fmt_start[0] != '%') - return fmt; + return ""; const char* fmt_end = ImParseFormatFindEnd(fmt_start); if (fmt_end[0] == 0) // If we only have leading decoration, we don't need to copy the data. return fmt_start; @@ -3300,7 +3337,7 @@ void ImParseFormatSanitizeForPrinting(const char* fmt_in, char* fmt_out, size_t *fmt_out = 0; // Zero-terminate } -// - For scanning we need to remove all width and precision fields "%3.7f" -> "%f". BUT don't strip types like "%I64d" which includes digits. ! "%07I64d" -> "%I64d" +// - For scanning we need to remove all width and precision fields and flags "%+3.7f" -> "%f". BUT don't strip types like "%I64d" which includes digits. ! "%07I64d" -> "%I64d" const char* ImParseFormatSanitizeForScanning(const char* fmt_in, char* fmt_out, size_t fmt_out_size) { const char* fmt_end = ImParseFormatFindEnd(fmt_in); @@ -3311,7 +3348,7 @@ const char* ImParseFormatSanitizeForScanning(const char* fmt_in, char* fmt_out, while (fmt_in < fmt_end) { char c = *fmt_in++; - if (!has_type && ((c >= '0' && c <= '9') || c == '.')) + if (!has_type && ((c >= '0' && c <= '9') || c == '.' || c == '+' || c == '#')) continue; has_type |= ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')); // Stop skipping digits if (c != '\'' && c != '$' && c != '_') // Custom flags provided by stb_sprintf.h. POSIX 2008 also supports '. @@ -3393,9 +3430,14 @@ static inline ImGuiInputTextFlags InputScalar_DefaultCharsFilter(ImGuiDataType d // However this may not be ideal for all uses, as some user code may break on out of bound values. bool ImGui::TempInputScalar(const ImRect& bb, ImGuiID id, const char* label, ImGuiDataType data_type, void* p_data, const char* format, const void* p_clamp_min, const void* p_clamp_max) { + // FIXME: May need to clarify display behavior if format doesn't contain %. + // "%d" -> "%d" / "There are %d items" -> "%d" / "items" -> "%d" (fallback). Also see #6405 + const ImGuiDataTypeInfo* type_info = DataTypeGetInfo(data_type); char fmt_buf[32]; char data_buf[32]; format = ImParseFormatTrimDecorations(format, fmt_buf, IM_ARRAYSIZE(fmt_buf)); + if (format[0] == 0) + format = type_info->PrintFmt; DataTypeFormatString(data_buf, IM_ARRAYSIZE(data_buf), data_type, p_data, format); ImStrTrimBlanks(data_buf); @@ -3406,7 +3448,7 @@ bool ImGui::TempInputScalar(const ImRect& bb, ImGuiID id, const char* label, ImG if (TempInputText(bb, id, label, data_buf, IM_ARRAYSIZE(data_buf), flags)) { // Backup old value - size_t data_type_size = DataTypeGetInfo(data_type)->Size; + size_t data_type_size = type_info->Size; ImGuiDataTypeTempStorage data_backup; memcpy(&data_backup, p_data, data_type_size); @@ -3450,7 +3492,12 @@ bool ImGui::InputScalar(const char* label, ImGuiDataType data_type, void* p_data flags |= ImGuiInputTextFlags_AutoSelectAll | ImGuiInputTextFlags_NoMarkEdited; // We call MarkItemEdited() ourselves by comparing the actual data rather than the string. bool value_changed = false; - if (p_step != NULL) + if (p_step == NULL) + { + if (InputText(label, buf, IM_ARRAYSIZE(buf), flags)) + value_changed = DataTypeApplyFromText(buf, data_type, p_data, format); + } + else { const float button_size = GetFrameHeight(); @@ -3459,6 +3506,7 @@ bool ImGui::InputScalar(const char* label, ImGuiDataType data_type, void* p_data SetNextItemWidth(ImMax(1.0f, CalcItemWidth() - (button_size + style.ItemInnerSpacing.x) * 2)); if (InputText("", buf, IM_ARRAYSIZE(buf), flags)) // PushId(label) + "" gives us the expected ID from outside point of view value_changed = DataTypeApplyFromText(buf, data_type, p_data, format); + IMGUI_TEST_ENGINE_ITEM_INFO(g.LastItemData.ID, label, g.LastItemData.StatusFlags | ImGuiItemStatusFlags_Inputable); // Step buttons const ImVec2 backup_frame_padding = style.FramePadding; @@ -3492,11 +3540,6 @@ bool ImGui::InputScalar(const char* label, ImGuiDataType data_type, void* p_data PopID(); EndGroup(); } - else - { - if (InputText(label, buf, IM_ARRAYSIZE(buf), flags)) - value_changed = DataTypeApplyFromText(buf, data_type, p_data, format); - } if (value_changed) MarkItemEdited(g.LastItemData.ID); @@ -3597,6 +3640,7 @@ bool ImGui::InputDouble(const char* label, double* v, double step, double step_f // - InputTextReindexLines() [Internal] // - InputTextReindexLinesRange() [Internal] // - InputTextEx() [Internal] +// - DebugNodeInputTextState() [Internal] //------------------------------------------------------------------------- bool ImGui::InputText(const char* label, char* buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data) @@ -3612,7 +3656,7 @@ bool ImGui::InputTextMultiline(const char* label, char* buf, size_t buf_size, co bool ImGui::InputTextWithHint(const char* label, const char* hint, char* buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data) { - IM_ASSERT(!(flags & ImGuiInputTextFlags_Multiline)); // call InputTextMultiline() + IM_ASSERT(!(flags & ImGuiInputTextFlags_Multiline)); // call InputTextMultiline() or InputTextEx() manually if you need multi-line + hint. return InputTextEx(label, hint, buf, (int)buf_size, ImVec2(0, 0), flags, callback, user_data); } @@ -3630,9 +3674,9 @@ static int InputTextCalcTextLenAndLineCount(const char* text_begin, const char** return line_count; } -static ImVec2 InputTextCalcTextSizeW(const ImWchar* text_begin, const ImWchar* text_end, const ImWchar** remaining, ImVec2* out_offset, bool stop_on_new_line) +static ImVec2 InputTextCalcTextSizeW(ImGuiContext* ctx, const ImWchar* text_begin, const ImWchar* text_end, const ImWchar** remaining, ImVec2* out_offset, bool stop_on_new_line) { - ImGuiContext& g = *GImGui; + ImGuiContext& g = *ctx; ImFont* font = g.Font; const float line_height = g.FontSize; const float scale = line_height / font->FontSize; @@ -3681,14 +3725,14 @@ namespace ImStb static int STB_TEXTEDIT_STRINGLEN(const ImGuiInputTextState* obj) { return obj->CurLenW; } static ImWchar STB_TEXTEDIT_GETCHAR(const ImGuiInputTextState* obj, int idx) { return obj->TextW[idx]; } -static float STB_TEXTEDIT_GETWIDTH(ImGuiInputTextState* obj, int line_start_idx, int char_idx) { ImWchar c = obj->TextW[line_start_idx + char_idx]; if (c == '\n') return STB_TEXTEDIT_GETWIDTH_NEWLINE; ImGuiContext& g = *GImGui; return g.Font->GetCharAdvance(c) * (g.FontSize / g.Font->FontSize); } +static float STB_TEXTEDIT_GETWIDTH(ImGuiInputTextState* obj, int line_start_idx, int char_idx) { ImWchar c = obj->TextW[line_start_idx + char_idx]; if (c == '\n') return STB_TEXTEDIT_GETWIDTH_NEWLINE; ImGuiContext& g = *obj->Ctx; return g.Font->GetCharAdvance(c) * (g.FontSize / g.Font->FontSize); } static int STB_TEXTEDIT_KEYTOTEXT(int key) { return key >= 0x200000 ? 0 : key; } static ImWchar STB_TEXTEDIT_NEWLINE = '\n'; static void STB_TEXTEDIT_LAYOUTROW(StbTexteditRow* r, ImGuiInputTextState* obj, int line_start_idx) { const ImWchar* text = obj->TextW.Data; const ImWchar* text_remaining = NULL; - const ImVec2 size = InputTextCalcTextSizeW(text + line_start_idx, text + obj->CurLenW, &text_remaining, NULL, true); + const ImVec2 size = InputTextCalcTextSizeW(obj->Ctx, text + line_start_idx, text + obj->CurLenW, &text_remaining, NULL, true); r->x0 = 0.0f; r->x1 = size.x; r->baseline_y_delta = size.y; @@ -3697,19 +3741,40 @@ static void STB_TEXTEDIT_LAYOUTROW(StbTexteditRow* r, ImGuiInputTextState* ob r->num_chars = (int)(text_remaining - (text + line_start_idx)); } -// When ImGuiInputTextFlags_Password is set, we don't want actions such as CTRL+Arrow to leak the fact that underlying data are blanks or separators. -static bool is_separator(unsigned int c) { return ImCharIsBlankW(c) || c==',' || c==';' || c=='(' || c==')' || c=='{' || c=='}' || c=='[' || c==']' || c=='|' || c=='\n' || c=='\r'; } -static int is_word_boundary_from_right(ImGuiInputTextState* obj, int idx) { if (obj->Flags & ImGuiInputTextFlags_Password) return 0; return idx > 0 ? (is_separator(obj->TextW[idx - 1]) && !is_separator(obj->TextW[idx]) ) : 1; } -static int is_word_boundary_from_left(ImGuiInputTextState* obj, int idx) { if (obj->Flags & ImGuiInputTextFlags_Password) return 0; return idx > 0 ? (!is_separator(obj->TextW[idx - 1]) && is_separator(obj->TextW[idx])) : 1; } +static bool is_separator(unsigned int c) +{ + return c==',' || c==';' || c=='(' || c==')' || c=='{' || c=='}' || c=='[' || c==']' || c=='|' || c=='\n' || c=='\r' || c=='.' || c=='!'; +} + +static int is_word_boundary_from_right(ImGuiInputTextState* obj, int idx) +{ + // When ImGuiInputTextFlags_Password is set, we don't want actions such as CTRL+Arrow to leak the fact that underlying data are blanks or separators. + if ((obj->Flags & ImGuiInputTextFlags_Password) || idx <= 0) + return 0; + + bool prev_white = ImCharIsBlankW(obj->TextW[idx - 1]); + bool prev_separ = is_separator(obj->TextW[idx - 1]); + bool curr_white = ImCharIsBlankW(obj->TextW[idx]); + bool curr_separ = is_separator(obj->TextW[idx]); + return ((prev_white || prev_separ) && !(curr_separ || curr_white)) || (curr_separ && !prev_separ); +} +static int is_word_boundary_from_left(ImGuiInputTextState* obj, int idx) +{ + if ((obj->Flags & ImGuiInputTextFlags_Password) || idx <= 0) + return 0; + + bool prev_white = ImCharIsBlankW(obj->TextW[idx]); + bool prev_separ = is_separator(obj->TextW[idx]); + bool curr_white = ImCharIsBlankW(obj->TextW[idx - 1]); + bool curr_separ = is_separator(obj->TextW[idx - 1]); + return ((prev_white) && !(curr_separ || curr_white)) || (curr_separ && !prev_separ); +} static int STB_TEXTEDIT_MOVEWORDLEFT_IMPL(ImGuiInputTextState* obj, int idx) { idx--; while (idx >= 0 && !is_word_boundary_from_right(obj, idx)) idx--; return idx < 0 ? 0 : idx; } static int STB_TEXTEDIT_MOVEWORDRIGHT_MAC(ImGuiInputTextState* obj, int idx) { idx++; int len = obj->CurLenW; while (idx < len && !is_word_boundary_from_left(obj, idx)) idx++; return idx > len ? len : idx; } -#define STB_TEXTEDIT_MOVEWORDLEFT STB_TEXTEDIT_MOVEWORDLEFT_IMPL // They need to be #define for stb_textedit.h -#ifdef __APPLE__ // FIXME: Move setting to IO structure -#define STB_TEXTEDIT_MOVEWORDRIGHT STB_TEXTEDIT_MOVEWORDRIGHT_MAC -#else static int STB_TEXTEDIT_MOVEWORDRIGHT_WIN(ImGuiInputTextState* obj, int idx) { idx++; int len = obj->CurLenW; while (idx < len && !is_word_boundary_from_right(obj, idx)) idx++; return idx > len ? len : idx; } -#define STB_TEXTEDIT_MOVEWORDRIGHT STB_TEXTEDIT_MOVEWORDRIGHT_WIN -#endif +static int STB_TEXTEDIT_MOVEWORDRIGHT_IMPL(ImGuiInputTextState* obj, int idx) { ImGuiContext& g = *obj->Ctx; if (g.IO.ConfigMacOSXBehaviors) return STB_TEXTEDIT_MOVEWORDRIGHT_MAC(obj, idx); else return STB_TEXTEDIT_MOVEWORDRIGHT_WIN(obj, idx); } +#define STB_TEXTEDIT_MOVEWORDLEFT STB_TEXTEDIT_MOVEWORDLEFT_IMPL // They need to be #define for stb_textedit.h +#define STB_TEXTEDIT_MOVEWORDRIGHT STB_TEXTEDIT_MOVEWORDRIGHT_IMPL static void STB_TEXTEDIT_DELETECHARS(ImGuiInputTextState* obj, int pos, int n) { @@ -3792,11 +3857,12 @@ static void stb_textedit_replace(ImGuiInputTextState* str, STB_TexteditState* st { stb_text_makeundo_replace(str, state, 0, str->CurLenW, text_len); ImStb::STB_TEXTEDIT_DELETECHARS(str, 0, str->CurLenW); + state->cursor = state->select_start = state->select_end = 0; if (text_len <= 0) return; if (ImStb::STB_TEXTEDIT_INSERTCHARS(str, 0, text, text_len)) { - state->cursor = text_len; + state->cursor = state->select_start = state->select_end = text_len; state->has_preferred_x = 0; return; } else { @@ -3851,7 +3917,7 @@ void ImGuiInputTextCallbackData::InsertChars(int pos, const char* new_text, cons return; // Contrary to STB_TEXTEDIT_INSERTCHARS() this is working in the UTF8 buffer, hence the mildly similar code (until we remove the U16 buffer altogether!) - ImGuiContext& g = *GImGui; + ImGuiContext& g = *Ctx; ImGuiInputTextState* edit_state = &g.InputTextState; IM_ASSERT(edit_state->ID != 0 && g.ActiveId == edit_state->ID); IM_ASSERT(Buf == edit_state->TextA.Data); @@ -3918,6 +3984,13 @@ static bool InputTextFilterCharacter(unsigned int* p_char, ImGuiInputTextFlags f ImGuiContext& g = *GImGui; const unsigned c_decimal_point = (unsigned int)g.PlatformLocaleDecimalPoint; + // Full-width -> half-width conversion for numeric fields (https://en.wikipedia.org/wiki/Halfwidth_and_Fullwidth_Forms_(Unicode_block) + // While this is mostly convenient, this has the side-effect for uninformed users accidentally inputting full-width characters that they may + // scratch their head as to why it works in numerical fields vs in generic text fields it would require support in the font. + if (flags & (ImGuiInputTextFlags_CharsDecimal | ImGuiInputTextFlags_CharsScientific | ImGuiInputTextFlags_CharsHexadecimal)) + if (c >= 0xFF01 && c <= 0xFF5E) + c = c - 0xFF01 + 0x21; + // Allow 0-9 . - + * / if (flags & ImGuiInputTextFlags_CharsDecimal) if (!(c >= '0' && c <= '9') && (c != c_decimal_point) && (c != '-') && (c != '+') && (c != '*') && (c != '/')) @@ -3936,18 +4009,21 @@ static bool InputTextFilterCharacter(unsigned int* p_char, ImGuiInputTextFlags f // Turn a-z into A-Z if (flags & ImGuiInputTextFlags_CharsUppercase) if (c >= 'a' && c <= 'z') - *p_char = (c += (unsigned int)('A' - 'a')); + c += (unsigned int)('A' - 'a'); if (flags & ImGuiInputTextFlags_CharsNoBlank) if (ImCharIsBlankW(c)) return false; + + *p_char = c; } // Custom callback filter if (flags & ImGuiInputTextFlags_CallbackCharFilter) { + ImGuiContext& g = *GImGui; ImGuiInputTextCallbackData callback_data; - memset(&callback_data, 0, sizeof(ImGuiInputTextCallbackData)); + callback_data.Ctx = &g; callback_data.EventFlag = ImGuiInputTextFlags_CallbackCharFilter; callback_data.EventChar = (ImWchar)c; callback_data.Flags = flags; @@ -3962,6 +4038,56 @@ static bool InputTextFilterCharacter(unsigned int* p_char, ImGuiInputTextFlags f return true; } +// Find the shortest single replacement we can make to get the new text from the old text. +// Important: needs to be run before TextW is rewritten with the new characters because calling STB_TEXTEDIT_GETCHAR() at the end. +// FIXME: Ideally we should transition toward (1) making InsertChars()/DeleteChars() update undo-stack (2) discourage (and keep reconcile) or obsolete (and remove reconcile) accessing buffer directly. +static void InputTextReconcileUndoStateAfterUserCallback(ImGuiInputTextState* state, const char* new_buf_a, int new_length_a) +{ + ImGuiContext& g = *GImGui; + const ImWchar* old_buf = state->TextW.Data; + const int old_length = state->CurLenW; + const int new_length = ImTextCountCharsFromUtf8(new_buf_a, new_buf_a + new_length_a); + g.TempBuffer.reserve_discard((new_length + 1) * sizeof(ImWchar)); + ImWchar* new_buf = (ImWchar*)(void*)g.TempBuffer.Data; + ImTextStrFromUtf8(new_buf, new_length + 1, new_buf_a, new_buf_a + new_length_a); + + const int shorter_length = ImMin(old_length, new_length); + int first_diff; + for (first_diff = 0; first_diff < shorter_length; first_diff++) + if (old_buf[first_diff] != new_buf[first_diff]) + break; + if (first_diff == old_length && first_diff == new_length) + return; + + int old_last_diff = old_length - 1; + int new_last_diff = new_length - 1; + for (; old_last_diff >= first_diff && new_last_diff >= first_diff; old_last_diff--, new_last_diff--) + if (old_buf[old_last_diff] != new_buf[new_last_diff]) + break; + + const int insert_len = new_last_diff - first_diff + 1; + const int delete_len = old_last_diff - first_diff + 1; + if (insert_len > 0 || delete_len > 0) + if (STB_TEXTEDIT_CHARTYPE* p = stb_text_createundo(&state->Stb.undostate, first_diff, delete_len, insert_len)) + for (int i = 0; i < delete_len; i++) + p[i] = ImStb::STB_TEXTEDIT_GETCHAR(state, first_diff + i); +} + +// As InputText() retain textual data and we currently provide a path for user to not retain it (via local variables) +// we need some form of hook to reapply data back to user buffer on deactivation frame. (#4714) +// It would be more desirable that we discourage users from taking advantage of the "user not retaining data" trick, +// but that more likely be attractive when we do have _NoLiveEdit flag available. +void ImGui::InputTextDeactivateHook(ImGuiID id) +{ + ImGuiContext& g = *GImGui; + ImGuiInputTextState* state = &g.InputTextState; + if (id == 0 || state->ID != id) + return; + g.InputTextDeactivatedState.ID = state->ID; + g.InputTextDeactivatedState.TextA.resize(state->CurLenA + 1); + memcpy(g.InputTextDeactivatedState.TextA.Data, state->TextA.Data ? state->TextA.Data : "", state->CurLenA + 1); +} + // Edit a string of text // - buf_size account for the zero-terminator, so a buf_size of 6 can hold "Hello" but not "Hello!". // This is so we can easily call InputText() on static arrays using ARRAYSIZE() and to match @@ -4057,7 +4183,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ ImGuiInputTextState* state = GetInputTextState(id); const bool input_requested_by_tabbing = (item_status_flags & ImGuiItemStatusFlags_FocusedByTabbing) != 0; - const bool input_requested_by_nav = (g.ActiveId != id) && ((g.NavActivateInputId == id) || (g.NavActivateId == id && g.NavInputSource == ImGuiInputSource_Keyboard)); + const bool input_requested_by_nav = (g.ActiveId != id) && ((g.NavActivateId == id) && ((g.NavActivateFlags & ImGuiActivateFlags_PreferInput) || (g.NavInputSource == ImGuiInputSource_Keyboard))); const bool user_clicked = hovered && io.MouseClicked[0]; const bool user_scroll_finish = is_multiline && state != NULL && g.ActiveId == 0 && g.ActiveIdPreviousFrame == GetWindowScrollbarID(draw_window, ImGuiAxis_Y); @@ -4067,7 +4193,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ float scroll_y = is_multiline ? draw_window->Scroll.y : FLT_MAX; - const bool init_changed_specs = (state != NULL && state->Stb.single_line != !is_multiline); + const bool init_changed_specs = (state != NULL && state->Stb.single_line != !is_multiline); // state != NULL means its our state. const bool init_make_active = (user_clicked || user_scroll_finish || input_requested_by_nav || input_requested_by_tabbing); const bool init_state = (init_make_active || user_scroll_active); if ((init_state && g.ActiveId != id) || init_changed_specs) @@ -4076,23 +4202,30 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ state = &g.InputTextState; state->CursorAnimReset(); + // Backup state of deactivating item so they'll have a chance to do a write to output buffer on the same frame they report IsItemDeactivatedAfterEdit (#4714) + InputTextDeactivateHook(state->ID); + // Take a copy of the initial buffer value (both in original UTF-8 format and converted to wchar) // From the moment we focused we are ignoring the content of 'buf' (unless we are in read-only mode) const int buf_len = (int)strlen(buf); state->InitialTextA.resize(buf_len + 1); // UTF-8. we use +1 to make sure that .Data is always pointing to at least an empty string. memcpy(state->InitialTextA.Data, buf, buf_len + 1); + // Preserve cursor position and undo/redo stack if we come back to same widget + // FIXME: Since we reworked this on 2022/06, may want to differenciate recycle_cursor vs recycle_undostate? + bool recycle_state = (state->ID == id && !init_changed_specs); + if (recycle_state && (state->CurLenA != buf_len || (state->TextAIsValid && strncmp(state->TextA.Data, buf, buf_len) != 0))) + recycle_state = false; + // Start edition const char* buf_end = NULL; + state->ID = id; state->TextW.resize(buf_size + 1); // wchar count <= UTF-8 count. we use +1 to make sure that .Data is always pointing to at least an empty string. state->TextA.resize(0); state->TextAIsValid = false; // TextA is not valid yet (we will display buf until then) state->CurLenW = ImTextStrFromUtf8(state->TextW.Data, buf_size, buf, NULL, &buf_end); state->CurLenA = (int)(buf_end - buf); // We can't get the result from ImStrncpy() above because it is not UTF-8 aware. Here we'll cut off malformed UTF-8. - // Preserve cursor position and undo/redo stack if we come back to same widget - // FIXME: For non-readonly widgets we might be able to require that TextAIsValid && TextA == buf ? (untested) and discard undo stack if user buffer has changed. - const bool recycle_state = (state->ID == id && !init_changed_specs); if (recycle_state) { // Recycle existing cursor/selection/undo stack but clamp position @@ -4101,7 +4234,6 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ } else { - state->ID = id; state->ScrollX = 0.0f; stb_textedit_initialize_state(&state->Stb, !is_multiline); } @@ -4120,30 +4252,33 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ state->Stb.insert_mode = 1; // stb field name is indeed incorrect (see #2863) } + const bool is_osx = io.ConfigMacOSXBehaviors; if (g.ActiveId != id && init_make_active) { IM_ASSERT(state && state->ID == id); SetActiveID(id, window); SetFocusID(id, window); FocusWindow(window); - - // Declare our inputs - IM_ASSERT(ImGuiNavInput_COUNT < 32); + } + if (g.ActiveId == id) + { + // Declare some inputs, the other are registered and polled via Shortcut() routing system. + if (user_clicked) + SetKeyOwner(ImGuiKey_MouseLeft, id); g.ActiveIdUsingNavDirMask |= (1 << ImGuiDir_Left) | (1 << ImGuiDir_Right); if (is_multiline || (flags & ImGuiInputTextFlags_CallbackHistory)) g.ActiveIdUsingNavDirMask |= (1 << ImGuiDir_Up) | (1 << ImGuiDir_Down); - g.ActiveIdUsingNavInputMask |= (1 << ImGuiNavInput_Cancel); - SetActiveIdUsingKey(ImGuiKey_Home); - SetActiveIdUsingKey(ImGuiKey_End); + SetKeyOwner(ImGuiKey_Home, id); + SetKeyOwner(ImGuiKey_End, id); if (is_multiline) { - SetActiveIdUsingKey(ImGuiKey_PageUp); - SetActiveIdUsingKey(ImGuiKey_PageDown); + SetKeyOwner(ImGuiKey_PageUp, id); + SetKeyOwner(ImGuiKey_PageDown, id); } + if (is_osx) + SetKeyOwner(ImGuiMod_Alt, id); if (flags & (ImGuiInputTextFlags_CallbackCompletion | ImGuiInputTextFlags_AllowTabInput)) // Disable keyboard tabbing out as we will use the \t character. - { - SetActiveIdUsingKey(ImGuiKey_Tab); - } + SetShortcutRouting(ImGuiKey_Tab, id); } // We have an edge case if ActiveId was set through another widget (e.g. widget being swapped), clear id immediately (don't wait until the end of the function) @@ -4155,10 +4290,10 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ clear_active_id = true; // Lock the decision of whether we are going to take the path displaying the cursor or selection - const bool render_cursor = (g.ActiveId == id) || (state && user_scroll_active); + bool render_cursor = (g.ActiveId == id) || (state && user_scroll_active); bool render_selection = state && (state->HasSelection() || select_all) && (RENDER_SELECTION_WHEN_INACTIVE || render_cursor); bool value_changed = false; - bool enter_pressed = false; + bool validated = false; // When read-only we always use the live data passed to the function // FIXME-OPT: Because our selection/cursor code currently needs the wide text we need to convert it when active, which is not ideal :( @@ -4205,13 +4340,11 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ // Although we are active we don't prevent mouse from hovering other elements unless we are interacting right now with the widget. // Down the line we should have a cleaner library-wide concept of Selected vs Active. g.ActiveIdAllowOverlap = !io.MouseDown[0]; - g.WantTextInputNextFrame = 1; // Edit in progress const float mouse_x = (io.MousePos.x - frame_bb.Min.x - style.FramePadding.x) + state->ScrollX; const float mouse_y = (is_multiline ? (io.MousePos.y - draw_window->DC.CursorPos.y) : (g.FontSize * 0.5f)); - const bool is_osx = io.ConfigMacOSXBehaviors; if (select_all) { state->SelectAll(); @@ -4254,10 +4387,12 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ } else if (io.MouseClicked[0] && !state->SelectedAllMouseLock) { - // FIXME: unselect on late click could be done release? if (hovered) { - stb_textedit_click(state, &state->Stb, mouse_x, mouse_y); + if (io.KeyShift) + stb_textedit_drag(state, &state->Stb, mouse_x, mouse_y); + else + stb_textedit_click(state, &state->Stb, mouse_x, mouse_y); state->CursorAnimReset(); } } @@ -4270,10 +4405,9 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ if (state->SelectedAllMouseLock && !io.MouseDown[0]) state->SelectedAllMouseLock = false; - // We except backends to emit a Tab key but some also emit a Tab character which we ignore (#2467, #1336) + // We expect backends to emit a Tab key but some also emit a Tab character which we ignore (#2467, #1336) // (For Tab and Enter: Win32/SFML/Allegro are sending both keys and chars, GLFW and SDL are only sending keys. For Space they all send all threes) - const bool ignore_char_inputs = (io.KeyCtrl && !io.KeyAlt) || (is_osx && io.KeySuper); - if ((flags & ImGuiInputTextFlags_AllowTabInput) && IsKeyPressed(ImGuiKey_Tab) && !ignore_char_inputs && !io.KeyShift && !is_readonly) + if ((flags & ImGuiInputTextFlags_AllowTabInput) && Shortcut(ImGuiKey_Tab, id) && !is_readonly) { unsigned int c = '\t'; // Insert TAB if (InputTextFilterCharacter(&c, flags, callback, callback_user_data, ImGuiInputSource_Keyboard)) @@ -4282,6 +4416,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ // Process regular text input (before we check for Return because using some IME will effectively send a Return?) // We ignore CTRL inputs, but need to allow ALT+CTRL as some keyboards (e.g. German) use AltGR (which _is_ Alt+Ctrl) to input certain characters. + const bool ignore_char_inputs = (io.KeyCtrl && !io.KeyAlt) || (is_osx && io.KeySuper); if (io.InputQueueCharacters.Size > 0) { if (!ignore_char_inputs && !is_readonly && !input_requested_by_nav) @@ -4301,7 +4436,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ } // Process other shortcuts/key-presses - bool cancel_edit = false; + bool revert_edit = false; if (g.ActiveId == id && !g.ActiveIdIsJustActivated && !clear_active_id) { IM_ASSERT(state != NULL); @@ -4310,25 +4445,26 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ state->Stb.row_count_per_page = row_count_per_page; const int k_mask = (io.KeyShift ? STB_TEXTEDIT_K_SHIFT : 0); - const bool is_osx = io.ConfigMacOSXBehaviors; - const bool is_osx_shift_shortcut = is_osx && (io.KeyMods == (ImGuiModFlags_Super | ImGuiModFlags_Shift)); const bool is_wordmove_key_down = is_osx ? io.KeyAlt : io.KeyCtrl; // OS X style: Text editing cursor movement using Alt instead of Ctrl const bool is_startend_key_down = is_osx && io.KeySuper && !io.KeyCtrl && !io.KeyAlt; // OS X style: Line/Text Start and End using Cmd+Arrows instead of Home/End - const bool is_ctrl_key_only = (io.KeyMods == ImGuiModFlags_Ctrl); - const bool is_shift_key_only = (io.KeyMods == ImGuiModFlags_Shift); - const bool is_shortcut_key = g.IO.ConfigMacOSXBehaviors ? (io.KeyMods == ImGuiModFlags_Super) : (io.KeyMods == ImGuiModFlags_Ctrl); - const bool is_cut = ((is_shortcut_key && IsKeyPressed(ImGuiKey_X)) || (is_shift_key_only && IsKeyPressed(ImGuiKey_Delete))) && !is_readonly && !is_password && (!is_multiline || state->HasSelection()); - const bool is_copy = ((is_shortcut_key && IsKeyPressed(ImGuiKey_C)) || (is_ctrl_key_only && IsKeyPressed(ImGuiKey_Insert))) && !is_password && (!is_multiline || state->HasSelection()); - const bool is_paste = ((is_shortcut_key && IsKeyPressed(ImGuiKey_V)) || (is_shift_key_only && IsKeyPressed(ImGuiKey_Insert))) && !is_readonly; - const bool is_undo = ((is_shortcut_key && IsKeyPressed(ImGuiKey_Z)) && !is_readonly && is_undoable); - const bool is_redo = ((is_shortcut_key && IsKeyPressed(ImGuiKey_Y)) || (is_osx_shift_shortcut && IsKeyPressed(ImGuiKey_Z))) && !is_readonly && is_undoable; + // Using Shortcut() with ImGuiInputFlags_RouteFocused (default policy) to allow routing operations for other code (e.g. calling window trying to use CTRL+A and CTRL+B: formet would be handled by InputText) + // Otherwise we could simply assume that we own the keys as we are active. + const ImGuiInputFlags f_repeat = ImGuiInputFlags_Repeat; + const bool is_cut = (Shortcut(ImGuiMod_Shortcut | ImGuiKey_X, id, f_repeat) || Shortcut(ImGuiMod_Shift | ImGuiKey_Delete, id, f_repeat)) && !is_readonly && !is_password && (!is_multiline || state->HasSelection()); + const bool is_copy = (Shortcut(ImGuiMod_Shortcut | ImGuiKey_C, id) || Shortcut(ImGuiMod_Ctrl | ImGuiKey_Insert, id)) && !is_password && (!is_multiline || state->HasSelection()); + const bool is_paste = (Shortcut(ImGuiMod_Shortcut | ImGuiKey_V, id, f_repeat) || Shortcut(ImGuiMod_Shift | ImGuiKey_Insert, id, f_repeat)) && !is_readonly; + const bool is_undo = (Shortcut(ImGuiMod_Shortcut | ImGuiKey_Z, id, f_repeat)) && !is_readonly && is_undoable; + const bool is_redo = (Shortcut(ImGuiMod_Shortcut | ImGuiKey_Y, id, f_repeat) || (is_osx && Shortcut(ImGuiMod_Shortcut | ImGuiMod_Shift | ImGuiKey_Z, id, f_repeat))) && !is_readonly && is_undoable; + const bool is_select_all = Shortcut(ImGuiMod_Shortcut | ImGuiKey_A, id); // We allow validate/cancel with Nav source (gamepad) to makes it easier to undo an accidental NavInput press with no keyboard wired, but otherwise it isn't very useful. - const bool is_validate_enter = IsKeyPressed(ImGuiKey_Enter) || IsKeyPressed(ImGuiKey_KeypadEnter); - const bool is_validate_nav = (IsNavInputTest(ImGuiNavInput_Activate, ImGuiNavReadMode_Pressed) && !IsKeyPressed(ImGuiKey_Space)) || IsNavInputTest(ImGuiNavInput_Input, ImGuiNavReadMode_Pressed); - const bool is_cancel = IsKeyPressed(ImGuiKey_Escape) || IsNavInputTest(ImGuiNavInput_Cancel, ImGuiNavReadMode_Pressed); + const bool nav_gamepad_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (io.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0; + const bool is_enter_pressed = IsKeyPressed(ImGuiKey_Enter, true) || IsKeyPressed(ImGuiKey_KeypadEnter, true); + const bool is_gamepad_validate = nav_gamepad_active && (IsKeyPressed(ImGuiKey_NavGamepadActivate, false) || IsKeyPressed(ImGuiKey_NavGamepadInput, false)); + const bool is_cancel = Shortcut(ImGuiKey_Escape, id, f_repeat) || (nav_gamepad_active && Shortcut(ImGuiKey_NavGamepadCancel, id, f_repeat)); + // FIXME: Should use more Shortcut() and reduce IsKeyPressed()+SetKeyOwner(), but requires modifiers combination to be taken account of. if (IsKeyPressed(ImGuiKey_LeftArrow)) { state->OnKeyPressed((is_startend_key_down ? STB_TEXTEDIT_K_LINESTART : is_wordmove_key_down ? STB_TEXTEDIT_K_WORDLEFT : STB_TEXTEDIT_K_LEFT) | k_mask); } else if (IsKeyPressed(ImGuiKey_RightArrow)) { state->OnKeyPressed((is_startend_key_down ? STB_TEXTEDIT_K_LINEEND : is_wordmove_key_down ? STB_TEXTEDIT_K_WORDRIGHT : STB_TEXTEDIT_K_RIGHT) | k_mask); } else if (IsKeyPressed(ImGuiKey_UpArrow) && is_multiline) { if (io.KeyCtrl) SetScrollY(draw_window, ImMax(draw_window->Scroll.y - g.FontSize, 0.0f)); else state->OnKeyPressed((is_startend_key_down ? STB_TEXTEDIT_K_TEXTSTART : STB_TEXTEDIT_K_UP) | k_mask); } @@ -4337,7 +4473,16 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ else if (IsKeyPressed(ImGuiKey_PageDown) && is_multiline) { state->OnKeyPressed(STB_TEXTEDIT_K_PGDOWN | k_mask); scroll_y += row_count_per_page * g.FontSize; } else if (IsKeyPressed(ImGuiKey_Home)) { state->OnKeyPressed(io.KeyCtrl ? STB_TEXTEDIT_K_TEXTSTART | k_mask : STB_TEXTEDIT_K_LINESTART | k_mask); } else if (IsKeyPressed(ImGuiKey_End)) { state->OnKeyPressed(io.KeyCtrl ? STB_TEXTEDIT_K_TEXTEND | k_mask : STB_TEXTEDIT_K_LINEEND | k_mask); } - else if (IsKeyPressed(ImGuiKey_Delete) && !is_readonly && !is_cut) { state->OnKeyPressed(STB_TEXTEDIT_K_DELETE | k_mask); } + else if (IsKeyPressed(ImGuiKey_Delete) && !is_readonly && !is_cut) + { + if (!state->HasSelection()) + { + // OSX doesn't seem to have Super+Delete to delete until end-of-line, so we don't emulate that (as opposed to Super+Backspace) + if (is_wordmove_key_down) + state->OnKeyPressed(STB_TEXTEDIT_K_WORDRIGHT | STB_TEXTEDIT_K_SHIFT); + } + state->OnKeyPressed(STB_TEXTEDIT_K_DELETE | k_mask); + } else if (IsKeyPressed(ImGuiKey_Backspace) && !is_readonly) { if (!state->HasSelection()) @@ -4349,12 +4494,17 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ } state->OnKeyPressed(STB_TEXTEDIT_K_BACKSPACE | k_mask); } - else if (is_validate_enter) + else if (is_enter_pressed || is_gamepad_validate) { + // Determine if we turn Enter into a \n character bool ctrl_enter_for_new_line = (flags & ImGuiInputTextFlags_CtrlEnterForNewLine) != 0; - if (!is_multiline || (ctrl_enter_for_new_line && !io.KeyCtrl) || (!ctrl_enter_for_new_line && io.KeyCtrl)) + if (!is_multiline || is_gamepad_validate || (ctrl_enter_for_new_line && !io.KeyCtrl) || (!ctrl_enter_for_new_line && io.KeyCtrl)) { - enter_pressed = clear_active_id = true; + validated = true; + if (io.ConfigInputTextEnterKeepActive && !is_multiline) + state->SelectAll(); // No need to scroll + else + clear_active_id = true; } else if (!is_readonly) { @@ -4363,21 +4513,32 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ state->OnKeyPressed((int)c); } } - else if (is_validate_nav) - { - IM_ASSERT(!is_validate_enter); - enter_pressed = clear_active_id = true; - } else if (is_cancel) { - clear_active_id = cancel_edit = true; + if (flags & ImGuiInputTextFlags_EscapeClearsAll) + { + if (state->CurLenA > 0) + { + revert_edit = true; + } + else + { + render_cursor = render_selection = false; + clear_active_id = true; + } + } + else + { + clear_active_id = revert_edit = true; + render_cursor = render_selection = false; + } } else if (is_undo || is_redo) { state->OnKeyPressed(is_undo ? STB_TEXTEDIT_K_UNDO : STB_TEXTEDIT_K_REDO); state->ClearSelection(); } - else if (is_shortcut_key && IsKeyPressed(ImGuiKey_A)) + else if (is_select_all) { state->SelectAll(); state->CursorFollow = true; @@ -4411,12 +4572,10 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ const int clipboard_len = (int)strlen(clipboard); ImWchar* clipboard_filtered = (ImWchar*)IM_ALLOC((clipboard_len + 1) * sizeof(ImWchar)); int clipboard_filtered_len = 0; - for (const char* s = clipboard; *s; ) + for (const char* s = clipboard; *s != 0; ) { unsigned int c; s += ImTextCharFromUtf8(&c, s, NULL); - if (c == 0) - break; if (!InputTextFilterCharacter(&c, flags, callback, callback_user_data, ImGuiInputSource_Clipboard)) continue; clipboard_filtered[clipboard_filtered_len++] = (ImWchar)c; @@ -4441,14 +4600,23 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ if (g.ActiveId == id) { IM_ASSERT(state != NULL); - if (cancel_edit) + if (revert_edit && !is_readonly) { - // Restore initial value. Only return true if restoring to the initial value changes the current buffer contents. - if (!is_readonly && strcmp(buf, state->InitialTextA.Data) != 0) + if (flags & ImGuiInputTextFlags_EscapeClearsAll) { + // Clear input + apply_new_text = ""; + apply_new_text_length = 0; + STB_TEXTEDIT_CHARTYPE empty_string; + stb_textedit_replace(state, &state->Stb, &empty_string, 0); + } + else if (strcmp(buf, state->InitialTextA.Data) != 0) + { + // Restore initial value. Only return true if restoring to the initial value changes the current buffer contents. // Push records into the undo stack so we can CTRL+Z the revert operation itself apply_new_text = state->InitialTextA.Data; apply_new_text_length = state->InitialTextA.Size - 1; + value_changed = true; ImVector w_text; if (apply_new_text_length > 0) { @@ -4459,22 +4627,24 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ } } + // Apply ASCII value + if (!is_readonly) + { + state->TextAIsValid = true; + state->TextA.resize(state->TextW.Size * 4 + 1); + ImTextStrToUtf8(state->TextA.Data, state->TextA.Size, state->TextW.Data, NULL); + } + // When using 'ImGuiInputTextFlags_EnterReturnsTrue' as a special case we reapply the live buffer back to the input buffer before clearing ActiveId, even though strictly speaking it wasn't modified on this frame. // If we didn't do that, code like InputInt() with ImGuiInputTextFlags_EnterReturnsTrue would fail. // This also allows the user to use InputText() with ImGuiInputTextFlags_EnterReturnsTrue without maintaining any user-side storage (please note that if you use this property along ImGuiInputTextFlags_CallbackResize you can end up with your temporary string object unnecessarily allocating once a frame, either store your string data, either if you don't then don't use ImGuiInputTextFlags_CallbackResize). - bool apply_edit_back_to_user_buffer = !cancel_edit || (enter_pressed && (flags & ImGuiInputTextFlags_EnterReturnsTrue) != 0); + const bool apply_edit_back_to_user_buffer = !revert_edit || (validated && (flags & ImGuiInputTextFlags_EnterReturnsTrue) != 0); if (apply_edit_back_to_user_buffer) { // Apply new value immediately - copy modified buffer back // Note that as soon as the input box is active, the in-widget value gets priority over any underlying modification of the input buffer // FIXME: We actually always render 'buf' when calling DrawList->AddText, making the comment above incorrect. // FIXME-OPT: CPU waste to do this every time the widget is active, should mark dirty state from the stb_textedit callbacks. - if (!is_readonly) - { - state->TextAIsValid = true; - state->TextA.resize(state->TextW.Size * 4 + 1); - ImTextStrToUtf8(state->TextA.Data, state->TextA.Size, state->TextW.Data, NULL); - } // User callback if ((flags & (ImGuiInputTextFlags_CallbackCompletion | ImGuiInputTextFlags_CallbackHistory | ImGuiInputTextFlags_CallbackEdit | ImGuiInputTextFlags_CallbackAlways)) != 0) @@ -4484,7 +4654,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ // The reason we specify the usage semantic (Completion/History) is that Completion needs to disable keyboard TABBING at the moment. ImGuiInputTextFlags event_flag = 0; ImGuiKey event_key = ImGuiKey_None; - if ((flags & ImGuiInputTextFlags_CallbackCompletion) != 0 && IsKeyPressed(ImGuiKey_Tab)) + if ((flags & ImGuiInputTextFlags_CallbackCompletion) != 0 && Shortcut(ImGuiKey_Tab, id)) { event_flag = ImGuiInputTextFlags_CallbackCompletion; event_key = ImGuiKey_Tab; @@ -4511,7 +4681,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ if (event_flag) { ImGuiInputTextCallbackData callback_data; - memset(&callback_data, 0, sizeof(ImGuiInputTextCallbackData)); + callback_data.Ctx = &g; callback_data.EventFlag = event_flag; callback_data.Flags = flags; callback_data.UserData = callback_user_data; @@ -4543,9 +4713,11 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ if (callback_data.SelectionEnd != utf8_selection_end || buf_dirty) { state->Stb.select_end = (callback_data.SelectionEnd == callback_data.SelectionStart) ? state->Stb.select_start : ImTextCountCharsFromUtf8(callback_data.Buf, callback_data.Buf + callback_data.SelectionEnd); } if (buf_dirty) { + IM_ASSERT((flags & ImGuiInputTextFlags_ReadOnly) == 0); IM_ASSERT(callback_data.BufTextLen == (int)strlen(callback_data.Buf)); // You need to maintain BufTextLen if you change the text! + InputTextReconcileUndoStateAfterUserCallback(state, callback_data.Buf, callback_data.BufTextLen); // FIXME: Move the rest of this block inside function and rename to InputTextReconcileStateAfterUserCallback() ? if (callback_data.BufTextLen > backup_current_text_length && is_resizable) - state->TextW.resize(state->TextW.Size + (callback_data.BufTextLen - backup_current_text_length)); + state->TextW.resize(state->TextW.Size + (callback_data.BufTextLen - backup_current_text_length)); // Worse case scenario resize state->CurLenW = ImTextStrFromUtf8(state->TextW.Data, state->TextW.Size, callback_data.Buf, NULL); state->CurLenA = callback_data.BufTextLen; // Assume correct length and valid UTF-8 from user, saves us an extra strlen() state->CursorAnimReset(); @@ -4558,11 +4730,22 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ { apply_new_text = state->TextA.Data; apply_new_text_length = state->CurLenA; + value_changed = true; } } + } - // Clear temporary user storage - state->Flags = ImGuiInputTextFlags_None; + // Handle reapplying final data on deactivation (see InputTextDeactivateHook() for details) + if (g.InputTextDeactivatedState.ID == id) + { + if (g.ActiveId != id && IsItemDeactivatedAfterEdit() && !is_readonly) + { + apply_new_text = g.InputTextDeactivatedState.TextA.Data; + apply_new_text_length = g.InputTextDeactivatedState.TextA.Size - 1; + value_changed |= (strcmp(g.InputTextDeactivatedState.TextA.Data, buf) != 0); + //IMGUI_DEBUG_LOG("InputText(): apply Deactivated data for 0x%08X: \"%.*s\".\n", id, apply_new_text_length, apply_new_text); + } + g.InputTextDeactivatedState.ID = 0; } // Copy result to user buffer. This can currently only happen when (g.ActiveId == id) @@ -4577,6 +4760,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ if (is_resizable) { ImGuiInputTextCallbackData callback_data; + callback_data.Ctx = &g; callback_data.EventFlag = ImGuiInputTextFlags_CallbackResize; callback_data.Flags = flags; callback_data.Buf = buf; @@ -4589,16 +4773,16 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ apply_new_text_length = ImMin(callback_data.BufTextLen, buf_size - 1); IM_ASSERT(apply_new_text_length <= buf_size); } - //IMGUI_DEBUG_LOG("InputText(\"%s\"): apply_new_text length %d\n", label, apply_new_text_length); + //IMGUI_DEBUG_PRINT("InputText(\"%s\"): apply_new_text length %d\n", label, apply_new_text_length); // If the underlying buffer resize was denied or not carried to the next frame, apply_new_text_length+1 may be >= buf_size. ImStrncpy(buf, apply_new_text, ImMin(apply_new_text_length + 1, buf_size)); - value_changed = true; } else { printf("invalid buffer!\n"); if (is_resizable) { ImGuiInputTextCallbackData callback_data; + callback_data.Ctx = &g; callback_data.EventFlag = ImGuiInputTextFlags_CallbackResize; callback_data.Flags = flags; callback_data.Buf = buf; @@ -4611,17 +4795,19 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ apply_new_text_length = 0; IM_ASSERT(apply_new_text_length <= buf_size); } - //IMGUI_DEBUG_LOG("InputText(\"%s\"): apply_new_text length %d\n", label, apply_new_text_length); + //IMGUI_DEBUG_PRINT("InputText(\"%s\"): apply_new_text length %d\n", label, apply_new_text_length); // clear the buffer ImStrncpy(buf, "", 1); - value_changed = true; } } // Release active ID at the end of the function (so e.g. pressing Return still does a final application of the value) - if (clear_active_id && g.ActiveId == id) + // Otherwise request text input ahead for next frame. + if (g.ActiveId == id && clear_active_id) ClearActiveID(); + else if (g.ActiveId == id) + g.WantTextInputNextFrame = 1; // Render frame if (!is_multiline) @@ -4701,11 +4887,11 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ searches_result_line_no[1] = line_count; // Calculate 2d position by finding the beginning of the line and measuring distance - cursor_offset.x = InputTextCalcTextSizeW(ImStrbolW(searches_input_ptr[0], text_begin), searches_input_ptr[0]).x; + cursor_offset.x = InputTextCalcTextSizeW(&g, ImStrbolW(searches_input_ptr[0], text_begin), searches_input_ptr[0]).x; cursor_offset.y = searches_result_line_no[0] * g.FontSize; if (searches_result_line_no[1] >= 0) { - select_start_offset.x = InputTextCalcTextSizeW(ImStrbolW(searches_input_ptr[1], text_begin), searches_input_ptr[1]).x; + select_start_offset.x = InputTextCalcTextSizeW(&g, ImStrbolW(searches_input_ptr[1], text_begin), searches_input_ptr[1]).x; select_start_offset.y = searches_result_line_no[1] * g.FontSize; } @@ -4774,7 +4960,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ } else { - ImVec2 rect_size = InputTextCalcTextSizeW(p, text_selected_end, &p, NULL, true); + ImVec2 rect_size = InputTextCalcTextSizeW(&g, p, text_selected_end, &p, NULL, true); if (rect_size.x <= 0.0f) rect_size.x = IM_FLOOR(g.Font->GetCharAdvance((ImWchar)' ') * 0.50f); // So we can see selected empty lines ImRect rect(rect_pos + ImVec2(0.0f, bg_offy_up - g.FontSize), rect_pos + ImVec2(rect_size.x, bg_offy_dn)); rect.ClipWith(clip_rect); @@ -4867,13 +5053,49 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_ if (value_changed && !(flags & ImGuiInputTextFlags_NoMarkEdited)) MarkItemEdited(id); - IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags); + IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags | ImGuiItemStatusFlags_Inputable); if ((flags & ImGuiInputTextFlags_EnterReturnsTrue) != 0) - return enter_pressed; + return validated; else return value_changed; } +void ImGui::DebugNodeInputTextState(ImGuiInputTextState* state) +{ +#ifndef IMGUI_DISABLE_DEBUG_TOOLS + ImGuiContext& g = *GImGui; + ImStb::STB_TexteditState* stb_state = &state->Stb; + ImStb::StbUndoState* undo_state = &stb_state->undostate; + Text("ID: 0x%08X, ActiveID: 0x%08X", state->ID, g.ActiveId); + DebugLocateItemOnHover(state->ID); + Text("CurLenW: %d, CurLenA: %d, Cursor: %d, Selection: %d..%d", state->CurLenW, state->CurLenA, stb_state->cursor, stb_state->select_start, stb_state->select_end); + Text("has_preferred_x: %d (%.2f)", stb_state->has_preferred_x, stb_state->preferred_x); + Text("undo_point: %d, redo_point: %d, undo_char_point: %d, redo_char_point: %d", undo_state->undo_point, undo_state->redo_point, undo_state->undo_char_point, undo_state->redo_char_point); + if (BeginChild("undopoints", ImVec2(0.0f, GetTextLineHeight() * 15), true)) // Visualize undo state + { + PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(0, 0)); + for (int n = 0; n < STB_TEXTEDIT_UNDOSTATECOUNT; n++) + { + ImStb::StbUndoRecord* undo_rec = &undo_state->undo_rec[n]; + const char undo_rec_type = (n < undo_state->undo_point) ? 'u' : (n >= undo_state->redo_point) ? 'r' : ' '; + if (undo_rec_type == ' ') + BeginDisabled(); + char buf[64] = ""; + if (undo_rec_type != ' ' && undo_rec->char_storage != -1) + ImTextStrToUtf8(buf, IM_ARRAYSIZE(buf), undo_state->undo_char + undo_rec->char_storage, undo_state->undo_char + undo_rec->char_storage + undo_rec->insert_length); + Text("%c [%02d] where %03d, insert %03d, delete %03d, char_storage %03d \"%s\"", + undo_rec_type, n, undo_rec->where, undo_rec->insert_length, undo_rec->delete_length, undo_rec->char_storage, buf); + if (undo_rec_type == ' ') + EndDisabled(); + } + PopStyleVar(); + } + EndChild(); +#else + IM_UNUSED(state); +#endif +} + //------------------------------------------------------------------------- // [SECTION] Widgets: ColorEdit, ColorPicker, ColorButton, etc. //------------------------------------------------------------------------- @@ -4894,28 +5116,32 @@ bool ImGui::ColorEdit3(const char* label, float col[3], ImGuiColorEditFlags flag return ColorEdit4(label, col, flags | ImGuiColorEditFlags_NoAlpha); } +static void ColorEditRestoreH(const float* col, float* H) +{ + ImGuiContext& g = *GImGui; + IM_ASSERT(g.ColorEditCurrentID != 0); + if (g.ColorEditSavedID != g.ColorEditCurrentID || g.ColorEditSavedColor != ImGui::ColorConvertFloat4ToU32(ImVec4(col[0], col[1], col[2], 0))) + return; + *H = g.ColorEditSavedHue; +} + // ColorEdit supports RGB and HSV inputs. In case of RGB input resulting color may have undefined hue and/or saturation. // Since widget displays both RGB and HSV values we must preserve hue and saturation to prevent these values resetting. static void ColorEditRestoreHS(const float* col, float* H, float* S, float* V) { - // This check is optional. Suppose we have two color widgets side by side, both widgets display different colors, but both colors have hue and/or saturation undefined. - // With color check: hue/saturation is preserved in one widget. Editing color in one widget would reset hue/saturation in another one. - // Without color check: common hue/saturation would be displayed in all widgets that have hue/saturation undefined. - // g.ColorEditLastColor is stored as ImU32 RGB value: this essentially gives us color equality check with reduced precision. - // Tiny external color changes would not be detected and this check would still pass. This is OK, since we only restore hue/saturation _only_ if they are undefined, - // therefore this change flipping hue/saturation from undefined to a very tiny value would still be represented in color picker. ImGuiContext& g = *GImGui; - if (g.ColorEditLastColor != ImGui::ColorConvertFloat4ToU32(ImVec4(col[0], col[1], col[2], 0))) + IM_ASSERT(g.ColorEditCurrentID != 0); + if (g.ColorEditSavedID != g.ColorEditCurrentID || g.ColorEditSavedColor != ImGui::ColorConvertFloat4ToU32(ImVec4(col[0], col[1], col[2], 0))) return; // When S == 0, H is undefined. // When H == 1 it wraps around to 0. - if (*S == 0.0f || (*H == 0.0f && g.ColorEditLastHue == 1)) - *H = g.ColorEditLastHue; + if (*S == 0.0f || (*H == 0.0f && g.ColorEditSavedHue == 1)) + *H = g.ColorEditSavedHue; // When V == 0, S is undefined. if (*V == 0.0f) - *S = g.ColorEditLastSat; + *S = g.ColorEditSavedSat; } // Edit colors components (each component in 0.0f..1.0f range). @@ -4938,6 +5164,9 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag BeginGroup(); PushID(label); + const bool set_current_color_edit_id = (g.ColorEditCurrentID == 0); + if (set_current_color_edit_id) + g.ColorEditCurrentID = window->IDStack.back(); // If we're not showing any slider there's no point in doing any HSV conversions const ImGuiColorEditFlags flags_untouched = flags; @@ -4971,7 +5200,7 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag ColorConvertHSVtoRGB(f[0], f[1], f[2], f[0], f[1], f[2]); else if ((flags & ImGuiColorEditFlags_InputRGB) && (flags & ImGuiColorEditFlags_DisplayHSV)) { - // Hue is lost when converting from greyscale rgb (saturation=0). Restore it. + // Hue is lost when converting from grayscale rgb (saturation=0). Restore it. ColorConvertRGBtoHSV(f[0], f[1], f[2], f[0], f[1], f[2]); ColorEditRestoreHS(col, &f[0], &f[1], &f[2]); } @@ -5076,23 +5305,29 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag if (BeginPopup("picker")) { - picker_active_window = g.CurrentWindow; - if (label != label_display_end) + if (g.CurrentWindow->BeginCount == 1) { - TextEx(label, label_display_end); - Spacing(); + picker_active_window = g.CurrentWindow; + if (label != label_display_end) + { + TextEx(label, label_display_end); + Spacing(); + } + ImGuiColorEditFlags picker_flags_to_forward = ImGuiColorEditFlags_DataTypeMask_ | ImGuiColorEditFlags_PickerMask_ | ImGuiColorEditFlags_InputMask_ | ImGuiColorEditFlags_HDR | ImGuiColorEditFlags_NoAlpha | ImGuiColorEditFlags_AlphaBar; + ImGuiColorEditFlags picker_flags = (flags_untouched & picker_flags_to_forward) | ImGuiColorEditFlags_DisplayMask_ | ImGuiColorEditFlags_NoLabel | ImGuiColorEditFlags_AlphaPreviewHalf; + SetNextItemWidth(square_sz * 12.0f); // Use 256 + bar sizes? + value_changed |= ColorPicker4("##picker", col, picker_flags, &g.ColorPickerRef.x); } - ImGuiColorEditFlags picker_flags_to_forward = ImGuiColorEditFlags_DataTypeMask_ | ImGuiColorEditFlags_PickerMask_ | ImGuiColorEditFlags_InputMask_ | ImGuiColorEditFlags_HDR | ImGuiColorEditFlags_NoAlpha | ImGuiColorEditFlags_AlphaBar; - ImGuiColorEditFlags picker_flags = (flags_untouched & picker_flags_to_forward) | ImGuiColorEditFlags_DisplayMask_ | ImGuiColorEditFlags_NoLabel | ImGuiColorEditFlags_AlphaPreviewHalf; - SetNextItemWidth(square_sz * 12.0f); // Use 256 + bar sizes? - value_changed |= ColorPicker4("##picker", col, picker_flags, &g.ColorPickerRef.x); EndPopup(); } } if (label != label_display_end && !(flags & ImGuiColorEditFlags_NoLabel)) { + // Position not necessarily next to last submitted button (e.g. if style.ColorButtonPosition == ImGuiDir_Left), + // but we need to use SameLine() to setup baseline correctly. Might want to refactor SameLine() to simplify this. SameLine(0.0f, style.ItemInnerSpacing.x); + window->DC.CursorPos.x = pos.x + ((flags & ImGuiColorEditFlags_NoInputs) ? w_button : w_full + style.ItemInnerSpacing.x); TextEx(label, label_display_end); } @@ -5104,10 +5339,11 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag f[n] = i[n] / 255.0f; if ((flags & ImGuiColorEditFlags_DisplayHSV) && (flags & ImGuiColorEditFlags_InputRGB)) { - g.ColorEditLastHue = f[0]; - g.ColorEditLastSat = f[1]; + g.ColorEditSavedHue = f[0]; + g.ColorEditSavedSat = f[1]; ColorConvertHSVtoRGB(f[0], f[1], f[2], f[0], f[1], f[2]); - g.ColorEditLastColor = ColorConvertFloat4ToU32(ImVec4(f[0], f[1], f[2], 0)); + g.ColorEditSavedID = g.ColorEditCurrentID; + g.ColorEditSavedColor = ColorConvertFloat4ToU32(ImVec4(f[0], f[1], f[2], 0)); } if ((flags & ImGuiColorEditFlags_DisplayRGB) && (flags & ImGuiColorEditFlags_InputHSV)) ColorConvertRGBtoHSV(f[0], f[1], f[2], f[0], f[1], f[2]); @@ -5119,6 +5355,8 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag col[3] = f[3]; } + if (set_current_color_edit_id) + g.ColorEditCurrentID = 0; PopID(); EndGroup(); @@ -5129,7 +5367,7 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag bool accepted_drag_drop = false; if (const ImGuiPayload* payload = AcceptDragDropPayload(IMGUI_PAYLOAD_TYPE_COLOR_3F)) { - memcpy((float*)col, payload->Data, sizeof(float) * 3); // Preserve alpha if any //-V512 + memcpy((float*)col, payload->Data, sizeof(float) * 3); // Preserve alpha if any //-V512 //-V1086 value_changed = accepted_drag_drop = true; } if (const ImGuiPayload* payload = AcceptDragDropPayload(IMGUI_PAYLOAD_TYPE_COLOR_4F)) @@ -5148,7 +5386,7 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag if (picker_active_window && g.ActiveId != 0 && g.ActiveIdWindow == picker_active_window) g.LastItemData.ID = g.ActiveId; - if (value_changed) + if (value_changed && g.LastItemData.ID != 0) // In case of ID collision, the second EndGroup() won't catch g.ActiveId MarkItemEdited(g.LastItemData.ID); return value_changed; @@ -5192,6 +5430,9 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl g.NextItemData.ClearFlags(); PushID(label); + const bool set_current_color_edit_id = (g.ColorEditCurrentID == 0); + if (set_current_color_edit_id) + g.ColorEditCurrentID = window->IDStack.back(); BeginGroup(); if (!(flags & ImGuiColorEditFlags_NoSidePreview)) @@ -5240,7 +5481,7 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl float R = col[0], G = col[1], B = col[2]; if (flags & ImGuiColorEditFlags_InputRGB) { - // Hue is lost when converting from greyscale rgb (saturation=0). Restore it. + // Hue is lost when converting from grayscale rgb (saturation=0). Restore it. ColorConvertRGBtoHSV(R, G, B, H, S, V); ColorEditRestoreHS(col, &H, &S, &V); } @@ -5295,10 +5536,7 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl { S = ImSaturate((io.MousePos.x - picker_pos.x) / (sv_picker_size - 1)); V = 1.0f - ImSaturate((io.MousePos.y - picker_pos.y) / (sv_picker_size - 1)); - - // Greatly reduces hue jitter and reset to 0 when hue == 255 and color is rapidly modified using SV square. - if (g.ColorEditLastColor == ColorConvertFloat4ToU32(ImVec4(col[0], col[1], col[2], 0))) - H = g.ColorEditLastHue; + ColorEditRestoreH(col, &H); // Greatly reduces hue jitter and reset to 0 when hue == 255 and color is rapidly modified using SV square. value_changed = value_changed_sv = true; } if (!(flags & ImGuiColorEditFlags_NoOptions)) @@ -5373,9 +5611,10 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl if (flags & ImGuiColorEditFlags_InputRGB) { ColorConvertHSVtoRGB(H, S, V, col[0], col[1], col[2]); - g.ColorEditLastHue = H; - g.ColorEditLastSat = S; - g.ColorEditLastColor = ColorConvertFloat4ToU32(ImVec4(col[0], col[1], col[2], 0)); + g.ColorEditSavedHue = H; + g.ColorEditSavedSat = S; + g.ColorEditSavedID = g.ColorEditCurrentID; + g.ColorEditSavedColor = ColorConvertFloat4ToU32(ImVec4(col[0], col[1], col[2], 0)); } else if (flags & ImGuiColorEditFlags_InputHSV) { @@ -5477,7 +5716,7 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl float sin_hue_angle = ImSin(H * 2.0f * IM_PI); ImVec2 hue_cursor_pos(wheel_center.x + cos_hue_angle * (wheel_r_inner + wheel_r_outer) * 0.5f, wheel_center.y + sin_hue_angle * (wheel_r_inner + wheel_r_outer) * 0.5f); float hue_cursor_rad = value_changed_h ? wheel_thickness * 0.65f : wheel_thickness * 0.55f; - int hue_cursor_segments = ImClamp((int)(hue_cursor_rad / 1.4f), 9, 32); + int hue_cursor_segments = draw_list->_CalcCircleAutoSegmentCount(hue_cursor_rad); // Lock segment count so the +1 one matches others. draw_list->AddCircleFilled(hue_cursor_pos, hue_cursor_rad, hue_color32, hue_cursor_segments); draw_list->AddCircle(hue_cursor_pos, hue_cursor_rad + 1, col_midgrey, hue_cursor_segments); draw_list->AddCircle(hue_cursor_pos, hue_cursor_rad, col_white, hue_cursor_segments); @@ -5487,13 +5726,10 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl ImVec2 trb = wheel_center + ImRotate(triangle_pb, cos_hue_angle, sin_hue_angle); ImVec2 trc = wheel_center + ImRotate(triangle_pc, cos_hue_angle, sin_hue_angle); ImVec2 uv_white = GetFontTexUvWhitePixel(); - draw_list->PrimReserve(6, 6); + draw_list->PrimReserve(3, 3); draw_list->PrimVtx(tra, uv_white, hue_color32); - draw_list->PrimVtx(trb, uv_white, hue_color32); - draw_list->PrimVtx(trc, uv_white, col_white); - draw_list->PrimVtx(tra, uv_white, 0); draw_list->PrimVtx(trb, uv_white, col_black); - draw_list->PrimVtx(trc, uv_white, 0); + draw_list->PrimVtx(trc, uv_white, col_white); draw_list->AddTriangle(tra, trb, trc, col_midgrey, 1.5f); sv_cursor_pos = ImLerp(ImLerp(trc, tra, ImSaturate(S)), trb, ImSaturate(1 - V)); } @@ -5516,9 +5752,10 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl // Render cursor/preview circle (clamp S/V within 0..1 range because floating points colors may lead HSV values to be out of range) float sv_cursor_rad = value_changed_sv ? 10.0f : 6.0f; - draw_list->AddCircleFilled(sv_cursor_pos, sv_cursor_rad, user_col32_striped_of_alpha, 12); - draw_list->AddCircle(sv_cursor_pos, sv_cursor_rad + 1, col_midgrey, 12); - draw_list->AddCircle(sv_cursor_pos, sv_cursor_rad, col_white, 12); + int sv_cursor_segments = draw_list->_CalcCircleAutoSegmentCount(sv_cursor_rad); // Lock segment count so the +1 one matches others. + draw_list->AddCircleFilled(sv_cursor_pos, sv_cursor_rad, user_col32_striped_of_alpha, sv_cursor_segments); + draw_list->AddCircle(sv_cursor_pos, sv_cursor_rad + 1, col_midgrey, sv_cursor_segments); + draw_list->AddCircle(sv_cursor_pos, sv_cursor_rad, col_white, sv_cursor_segments); // Render alpha bar if (alpha_bar) @@ -5536,9 +5773,11 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl if (value_changed && memcmp(backup_initial_col, col, components * sizeof(float)) == 0) value_changed = false; - if (value_changed) + if (value_changed && g.LastItemData.ID != 0) // In case of ID collision, the second EndGroup() won't catch g.ActiveId MarkItemEdited(g.LastItemData.ID); + if (set_current_color_edit_id) + g.ColorEditCurrentID = 0; PopID(); return value_changed; @@ -5652,7 +5891,8 @@ void ImGui::ColorTooltip(const char* text, const float* col, ImGuiColorEditFlags { ImGuiContext& g = *GImGui; - BeginTooltipEx(ImGuiTooltipFlags_OverridePreviousTooltip, ImGuiWindowFlags_None); + if (!BeginTooltipEx(ImGuiTooltipFlags_OverridePreviousTooltip, ImGuiWindowFlags_None)) + return; const char* text_end = text ? FindRenderedTextEnd(text, NULL) : text; if (text_end > text) { @@ -5855,9 +6095,9 @@ bool ImGui::TreeNodeExV(const char* str_id, ImGuiTreeNodeFlags flags, const char if (window->SkipItems) return false; - ImGuiContext& g = *GImGui; - const char* label_end = g.TempBuffer + ImFormatStringV(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), fmt, args); - return TreeNodeBehavior(window->GetID(str_id), flags, g.TempBuffer, label_end); + const char* label, *label_end; + ImFormatStringToTempBufferV(&label, &label_end, fmt, args); + return TreeNodeBehavior(window->GetID(str_id), flags, label, label_end); } bool ImGui::TreeNodeExV(const void* ptr_id, ImGuiTreeNodeFlags flags, const char* fmt, va_list args) @@ -5866,12 +6106,19 @@ bool ImGui::TreeNodeExV(const void* ptr_id, ImGuiTreeNodeFlags flags, const char if (window->SkipItems) return false; - ImGuiContext& g = *GImGui; - const char* label_end = g.TempBuffer + ImFormatStringV(g.TempBuffer, IM_ARRAYSIZE(g.TempBuffer), fmt, args); - return TreeNodeBehavior(window->GetID(ptr_id), flags, g.TempBuffer, label_end); + const char* label, *label_end; + ImFormatStringToTempBufferV(&label, &label_end, fmt, args); + return TreeNodeBehavior(window->GetID(ptr_id), flags, label, label_end); } -bool ImGui::TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags) +void ImGui::TreeNodeSetOpen(ImGuiID id, bool open) +{ + ImGuiContext& g = *GImGui; + ImGuiStorage* storage = g.CurrentWindow->DC.StateStorage; + storage->SetInt(id, open ? 1 : 0); +} + +bool ImGui::TreeNodeUpdateNextOpen(ImGuiID id, ImGuiTreeNodeFlags flags) { if (flags & ImGuiTreeNodeFlags_Leaf) return true; @@ -5887,7 +6134,7 @@ bool ImGui::TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags) if (g.NextItemData.OpenCond & ImGuiCond_Always) { is_open = g.NextItemData.OpenVal; - storage->SetInt(id, is_open); + TreeNodeSetOpen(id, is_open); } else { @@ -5896,7 +6143,7 @@ bool ImGui::TreeNodeBehaviorIsOpen(ImGuiID id, ImGuiTreeNodeFlags flags) if (stored_value == -1) { is_open = g.NextItemData.OpenVal; - storage->SetInt(id, is_open); + TreeNodeSetOpen(id, is_open); } else { @@ -5962,7 +6209,7 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l // For this purpose we essentially compare if g.NavIdIsAlive went from 0 to 1 between TreeNode() and TreePop(). // This is currently only support 32 level deep and we are fine with (1 << Depth) overflowing into a zero. const bool is_leaf = (flags & ImGuiTreeNodeFlags_Leaf) != 0; - bool is_open = TreeNodeBehaviorIsOpen(id, flags); + bool is_open = TreeNodeUpdateNextOpen(id, flags); if (is_open && !g.NavIdIsAlive && (flags & ImGuiTreeNodeFlags_NavLeftJumpsBackHere) && !(flags & ImGuiTreeNodeFlags_NoTreePushOnOpen)) window->DC.TreeJumpToParentOnPopMask |= (1 << window->DC.TreeDepth); @@ -6036,11 +6283,13 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l if (g.NavId == id && g.NavMoveDir == ImGuiDir_Left && is_open) { toggled = true; + NavClearPreferredPosForAxis(ImGuiAxis_X); NavMoveRequestCancel(); } if (g.NavId == id && g.NavMoveDir == ImGuiDir_Right && !is_open) // If there's something upcoming on the line we may want to give it the priority? { toggled = true; + NavClearPreferredPosForAxis(ImGuiAxis_X); NavMoveRequestCancel(); } @@ -6305,6 +6554,7 @@ bool ImGui::Selectable(const char* label, bool selected, ImGuiSelectableFlags fl // We use NoHoldingActiveID on menus so user can click and _hold_ on a menu then drag to browse child entries ImGuiButtonFlags button_flags = 0; if (flags & ImGuiSelectableFlags_NoHoldingActiveID) { button_flags |= ImGuiButtonFlags_NoHoldingActiveId; } + if (flags & ImGuiSelectableFlags_NoSetKeyOwner) { button_flags |= ImGuiButtonFlags_NoSetKeyOwner; } if (flags & ImGuiSelectableFlags_SelectOnClick) { button_flags |= ImGuiButtonFlags_PressedOnClick; } if (flags & ImGuiSelectableFlags_SelectOnRelease) { button_flags |= ImGuiButtonFlags_PressedOnRelease; } if (flags & ImGuiSelectableFlags_AllowDoubleClick) { button_flags |= ImGuiButtonFlags_PressedOnClickRelease | ImGuiButtonFlags_PressedOnDoubleClick; } @@ -6321,7 +6571,7 @@ bool ImGui::Selectable(const char* label, bool selected, ImGuiSelectableFlags fl // - (1) it would require focus scope to be set, need exposing PushFocusScope() or equivalent (e.g. BeginSelection() calling PushFocusScope()) // - (2) usage will fail with clipped items // The multi-select API aim to fix those issues, e.g. may be replaced with a BeginSelection() API. - if ((flags & ImGuiSelectableFlags_SelectOnNav) && g.NavJustMovedToId != 0 && g.NavJustMovedToFocusScopeId == window->DC.NavFocusScopeIdCurrent) + if ((flags & ImGuiSelectableFlags_SelectOnNav) && g.NavJustMovedToId != 0 && g.NavJustMovedToFocusScopeId == g.CurrentFocusScopeId) if (g.NavJustMovedToId == id) selected = pressed = true; @@ -6330,7 +6580,7 @@ bool ImGui::Selectable(const char* label, bool selected, ImGuiSelectableFlags fl { if (!g.NavDisableMouseHover && g.NavWindow == window && g.NavLayer == window->DC.NavLayerCurrent) { - SetNavID(id, window->DC.NavLayerCurrent, window->DC.NavFocusScopeIdCurrent, WindowRectAbsToRel(window, bb)); // (bb == NavRect) + SetNavID(id, window->DC.NavLayerCurrent, g.CurrentFocusScopeId, WindowRectAbsToRel(window, bb)); // (bb == NavRect) g.NavDisableHighlight = true; } } @@ -6345,8 +6595,6 @@ bool ImGui::Selectable(const char* label, bool selected, ImGuiSelectableFlags fl g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_ToggledSelection; // Render - if (held && (flags & ImGuiSelectableFlags_DrawHoveredWhenHeld)) - hovered = true; if ((hovered && !(g.IO.ConfigFlags&ImGuiConfigFlags_NoHoverColors)) || selected) { const ImU32 col = GetColorU32((held && hovered) ? ImGuiCol_HeaderActive : (hovered && !(g.IO.ConfigFlags&ImGuiConfigFlags_NoHoverColors)) ? ImGuiCol_HeaderHovered : ImGuiCol_Header); @@ -6431,20 +6679,6 @@ bool ImGui::BeginListBox(const char* label, const ImVec2& size_arg) return true; } -#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS -// OBSOLETED in 1.81 (from February 2021) -bool ImGui::ListBoxHeader(const char* label, int items_count, int height_in_items) -{ - // If height_in_items == -1, default height is maximum 7. - ImGuiContext& g = *GImGui; - float height_in_items_f = (height_in_items < 0 ? ImMin(items_count, 7) : height_in_items) + 0.25f; - ImVec2 size; - size.x = 0.0f; - size.y = GetTextLineHeightWithSpacing() * height_in_items_f + g.Style.FramePadding.y * 2.0f; - return BeginListBox(label, size); -} -#endif - void ImGui::EndListBox() { ImGuiContext& g = *GImGui; @@ -6521,7 +6755,7 @@ bool ImGui::ListBox(const char* label, int* current_item, bool (*items_getter)(v // - others https://github.com/ocornut/imgui/wiki/Useful-Extensions //------------------------------------------------------------------------- -int ImGui::PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 frame_size) +int ImGui::PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, const ImVec2& size_arg) { ImGuiContext& g = *GImGui; ImGuiWindow* window = GetCurrentWindow(); @@ -6532,10 +6766,7 @@ int ImGui::PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_get const ImGuiID id = window->GetID(label); const ImVec2 label_size = CalcTextSize(label, NULL, true); - if (frame_size.x == 0.0f) - frame_size.x = CalcItemWidth(); - if (frame_size.y == 0.0f) - frame_size.y = label_size.y + (style.FramePadding.y * 2); + const ImVec2 frame_size = CalcItemSize(size_arg, CalcItemWidth(), label_size.y + style.FramePadding.y * 2.0f); const ImRect frame_bb(window->DC.CursorPos, window->DC.CursorPos + frame_size); const ImRect inner_bb(frame_bb.Min + style.FramePadding, frame_bb.Max - style.FramePadding); @@ -6821,7 +7052,7 @@ void ImGui::EndMenuBar() // To do so we claim focus back, restore NavId and then process the movement request for yet another frame. // This involve a one-frame delay which isn't very problematic in this situation. We could remove it by scoring in advance for multiple window (probably not worth bothering) const ImGuiNavLayer layer = ImGuiNavLayer_Menu; - IM_ASSERT(window->DC.NavLayersActiveMaskNext & (1 << layer)); // Sanity check + IM_ASSERT(window->DC.NavLayersActiveMaskNext & (1 << layer)); // Sanity check (FIXME: Seems unnecessary) FocusWindow(window); SetNavID(window->NavLastIds[layer], layer, 0, window->NavRectRel[layer]); g.NavDisableHighlight = true; // Hide highlight for the current frame so we don't see the intermediary selection. @@ -6915,7 +7146,7 @@ void ImGui::EndMainMenuBar() // FIXME: With this strategy we won't be able to restore a NULL focus. ImGuiContext& g = *GImGui; if (g.CurrentWindow == g.NavWindow && g.NavLayer == ImGuiNavLayer_Main && !g.NavAnyRequest) - FocusTopMostWindowUnderOne(g.NavWindow, NULL); + FocusTopMostWindowUnderOne(g.NavWindow, NULL, NULL, ImGuiFocusRequestFlags_UnlessBelowModal | ImGuiFocusRequestFlags_RestoreFocusedChild); End(); } @@ -6927,14 +7158,21 @@ static bool IsRootOfOpenMenuSet() if ((g.OpenPopupStack.Size <= g.BeginPopupStack.Size) || (window->Flags & ImGuiWindowFlags_ChildMenu)) return false; - // Initially we used 'OpenParentId' to differentiate multiple menu sets from each others (e.g. inside menu bar vs loose menu items) based on parent ID. - // This would however prevent the use of e.g. PuhsID() user code submitting menus. + // Initially we used 'upper_popup->OpenParentId == window->IDStack.back()' to differentiate multiple menu sets from each others + // (e.g. inside menu bar vs loose menu items) based on parent ID. + // This would however prevent the use of e.g. PushID() user code submitting menus. // Previously this worked between popup and a first child menu because the first child menu always had the _ChildWindow flag, - // making hovering on parent popup possible while first child menu was focused - but this was generally a bug with other side effects. + // making hovering on parent popup possible while first child menu was focused - but this was generally a bug with other side effects. // Instead we don't treat Popup specifically (in order to consistently support menu features in them), maybe the first child menu of a Popup - // doesn't have the _ChildWindow flag, and we rely on this IsRootOfOpenMenuSet() check to allow hovering between root window/popup and first chilld menu. + // doesn't have the _ChildWindow flag, and we rely on this IsRootOfOpenMenuSet() check to allow hovering between root window/popup and first child menu. + // In the end, lack of ID check made it so we could no longer differentiate between separate menu sets. To compensate for that, we at least check parent window nav layer. + // This fixes the most common case of menu opening on hover when moving between window content and menu bar. Multiple different menu sets in same nav layer would still + // open on hover, but that should be a lesser problem, because if such menus are close in proximity in window content then it won't feel weird and if they are far apart + // it likely won't be a problem anyone runs into. const ImGuiPopupData* upper_popup = &g.OpenPopupStack[g.BeginPopupStack.Size]; - return (/*upper_popup->OpenParentId == window->IDStack.back() &&*/ upper_popup->Window && (upper_popup->Window->Flags & ImGuiWindowFlags_ChildMenu)); + if (window->DC.NavLayerCurrent != upper_popup->ParentNavLayer) + return false; + return upper_popup->Window && (upper_popup->Window->Flags & ImGuiWindowFlags_ChildMenu) && ImGui::IsWindowChildOf(upper_popup->Window, window, true, false); } bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) @@ -6949,10 +7187,10 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) bool menu_is_open = IsPopupOpen(id, ImGuiPopupFlags_None); // Sub-menus are ChildWindow so that mouse can be hovering across them (otherwise top-most popup menu would steal focus and not allow hovering on parent menu) - // The first menu in a hierarchy isn't so hovering doesn't get accross (otherwise e.g. resizing borders with ImGuiButtonFlags_FlattenChildren would react), but top-most BeginMenu() will bypass that limitation. - ImGuiWindowFlags flags = ImGuiWindowFlags_ChildMenu | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoSavedSettings | ImGuiWindowFlags_NoNavFocus; + // The first menu in a hierarchy isn't so hovering doesn't get across (otherwise e.g. resizing borders with ImGuiButtonFlags_FlattenChildren would react), but top-most BeginMenu() will bypass that limitation. + ImGuiWindowFlags window_flags = ImGuiWindowFlags_ChildMenu | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoSavedSettings | ImGuiWindowFlags_NoNavFocus; if (window->Flags & ImGuiWindowFlags_ChildMenu) - flags |= ImGuiWindowFlags_ChildWindow; + window_flags |= ImGuiWindowFlags_ChildWindow; // If a menu with same the ID was already submitted, we will append to it, matching the behavior of Begin(). // We are relying on a O(N) search - so O(N log N) over the frame - which seems like the most efficient for the expected small amount of BeginMenu() calls per frame. @@ -6960,7 +7198,7 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) if (g.MenusIdSubmittedThisFrame.contains(id)) { if (menu_is_open) - menu_is_open = BeginPopupEx(id, flags); // menu_is_open can be 'false' when the popup is completely clipped (e.g. zero size display) + menu_is_open = BeginPopupEx(id, window_flags); // menu_is_open can be 'false' when the popup is completely clipped (e.g. zero size display) else g.NextWindowData.ClearFlags(); // we behave like Begin() and need to consume those values return menu_is_open; @@ -6972,10 +7210,10 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) ImVec2 label_size = CalcTextSize(label, NULL, true); // Odd hack to allow hovering across menus of a same menu-set (otherwise we wouldn't be able to hover parent without always being a Child window) + // This is only done for items for the menu set and not the full parent window. const bool menuset_is_open = IsRootOfOpenMenuSet(); - ImGuiWindow* backed_nav_window = g.NavWindow; if (menuset_is_open) - g.NavWindow = window; + PushItemFlag(ImGuiItemFlags_NoWindowHoverableCheck, true); // The reference position stored in popup_pos will be used by Begin() to find a suitable position for the child menu, // However the final position is going to be different! It is chosen by FindBestWindowPosForPopup(). @@ -6986,7 +7224,9 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) BeginDisabled(); const ImGuiMenuColumns* offsets = &window->DC.MenuColumns; bool pressed; - const ImGuiSelectableFlags selectable_flags = ImGuiSelectableFlags_NoHoldingActiveID | ImGuiSelectableFlags_SelectOnClick | ImGuiSelectableFlags_DontClosePopups; + + // We use ImGuiSelectableFlags_NoSetKeyOwner to allow down on one menu item, move, up on another. + const ImGuiSelectableFlags selectable_flags = ImGuiSelectableFlags_NoHoldingActiveID | ImGuiSelectableFlags_NoSetKeyOwner | ImGuiSelectableFlags_SelectOnClick | ImGuiSelectableFlags_DontClosePopups; if (window->DC.LayoutType == ImGuiLayoutType_Horizontal) { // Menu inside an horizontal menu bar @@ -6997,7 +7237,7 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(style.ItemSpacing.x * 2.0f, style.ItemSpacing.y)); float w = label_size.x; ImVec2 text_pos(window->DC.CursorPos.x + offsets->OffsetLabel, window->DC.CursorPos.y + window->DC.CurrLineTextBaseOffset); - pressed = Selectable("", menu_is_open, selectable_flags, ImVec2(w, 0.0f)); + pressed = Selectable("", menu_is_open, selectable_flags, ImVec2(w, label_size.y)); RenderText(text_pos, label); PopStyleVar(); window->DC.CursorPos.x += IM_FLOOR(style.ItemSpacing.x * (-1.0f + 0.5f)); // -1 spacing to compensate the spacing added when Selectable() did a SameLine(). It would also work to call SameLine() ourselves after the PopStyleVar(). @@ -7013,7 +7253,7 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) float min_w = window->DC.MenuColumns.DeclColumns(icon_w, label_size.x, 0.0f, checkmark_w); // Feedback to next frame float extra_w = ImMax(0.0f, GetContentRegionAvail().x - min_w); ImVec2 text_pos(window->DC.CursorPos.x + offsets->OffsetLabel, window->DC.CursorPos.y + window->DC.CurrLineTextBaseOffset); - pressed = Selectable("", menu_is_open, selectable_flags | ImGuiSelectableFlags_SpanAvailWidth, ImVec2(min_w, 0.0f)); + pressed = Selectable("", menu_is_open, selectable_flags | ImGuiSelectableFlags_SpanAvailWidth, ImVec2(min_w, label_size.y)); RenderText(text_pos, label); if (icon_w > 0.0f) RenderText(pos + ImVec2(offsets->OffsetIcon, 0.0f), icon); @@ -7024,7 +7264,7 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) const bool hovered = (g.HoveredId == id) && enabled && !g.NavDisableMouseHover; if (menuset_is_open) - g.NavWindow = backed_nav_window; + PopItemFlag(); bool want_open = false; bool want_close = false; @@ -7033,26 +7273,30 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) // Close menu when not hovering it anymore unless we are moving roughly in the direction of the menu // Implement http://bjk5.com/post/44698559168/breaking-down-amazons-mega-dropdown to avoid using timers, so menus feels more reactive. bool moving_toward_child_menu = false; - ImGuiWindow* child_menu_window = (g.BeginPopupStack.Size < g.OpenPopupStack.Size && g.OpenPopupStack[g.BeginPopupStack.Size].SourceWindow == window) ? g.OpenPopupStack[g.BeginPopupStack.Size].Window : NULL; - if (g.HoveredWindow == window && child_menu_window != NULL && !(window->Flags & ImGuiWindowFlags_MenuBar)) + ImGuiPopupData* child_popup = (g.BeginPopupStack.Size < g.OpenPopupStack.Size) ? &g.OpenPopupStack[g.BeginPopupStack.Size] : NULL; // Popup candidate (testing below) + ImGuiWindow* child_menu_window = (child_popup && child_popup->Window && child_popup->Window->ParentWindow == window) ? child_popup->Window : NULL; + if (g.HoveredWindow == window && child_menu_window != NULL) { float ref_unit = g.FontSize; // FIXME-DPI + float child_dir = (window->Pos.x < child_menu_window->Pos.x) ? 1.0f : -1.0f; ImRect next_window_rect = child_menu_window->Rect(); ImVec2 ta = (g.IO.MousePos - g.IO.MouseDelta); - ImVec2 tb = (window->Pos.x < child_menu_window->Pos.x) ? next_window_rect.GetTL() : next_window_rect.GetTR(); - ImVec2 tc = (window->Pos.x < child_menu_window->Pos.x) ? next_window_rect.GetBL() : next_window_rect.GetBR(); + ImVec2 tb = (child_dir > 0.0f) ? next_window_rect.GetTL() : next_window_rect.GetTR(); + ImVec2 tc = (child_dir > 0.0f) ? next_window_rect.GetBL() : next_window_rect.GetBR(); float extra = ImClamp(ImFabs(ta.x - tb.x) * 0.30f, ref_unit * 0.5f, ref_unit * 2.5f); // add a bit of extra slack. - ta.x += (window->Pos.x < child_menu_window->Pos.x) ? -0.5f : +0.5f; // to avoid numerical issues (FIXME: ??) + ta.x += child_dir * -0.5f; + tb.x += child_dir * ref_unit; + tc.x += child_dir * ref_unit; tb.y = ta.y + ImMax((tb.y - extra) - ta.y, -ref_unit * 8.0f); // triangle has maximum height to limit the slope and the bias toward large sub-menus tc.y = ta.y + ImMin((tc.y + extra) - ta.y, +ref_unit * 8.0f); moving_toward_child_menu = ImTriangleContainsPoint(ta, tb, tc, g.IO.MousePos); - //GetForegroundDrawList()->AddTriangleFilled(ta, tb, tc, moving_toward_other_child_menu ? IM_COL32(0,128,0,128) : IM_COL32(128,0,0,128)); // [DEBUG] + //GetForegroundDrawList()->AddTriangleFilled(ta, tb, tc, moving_toward_child_menu ? IM_COL32(0,128,0,128) : IM_COL32(128,0,0,128)); // [DEBUG] } // The 'HovereWindow == window' check creates an inconsistency (e.g. moving away from menu slowly tends to hit same window, whereas moving away fast does not) // But we also need to not close the top-menu menu when moving over void. Perhaps we should extend the triangle check to a larger polygon. // (Remember to test this on BeginPopup("A")->BeginMenu("B") sequence which behaves slightly differently as B isn't a Child of A and hovering isn't shared.) - if (menu_is_open && !hovered && g.HoveredWindow == window && !moving_toward_child_menu) + if (menu_is_open && !hovered && g.HoveredWindow == window && !moving_toward_child_menu && !g.NavDisableMouseHover) want_close = true; // Open @@ -7093,23 +7337,32 @@ bool ImGui::BeginMenuEx(const char* label, const char* icon, bool enabled) IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags | ImGuiItemStatusFlags_Openable | (menu_is_open ? ImGuiItemStatusFlags_Opened : 0)); PopID(); - if (!menu_is_open && want_open && g.OpenPopupStack.Size > g.BeginPopupStack.Size) + if (want_open && !menu_is_open && g.OpenPopupStack.Size > g.BeginPopupStack.Size) { - // Don't recycle same menu level in the same frame, first close the other menu and yield for a frame. + // Don't reopen/recycle same menu level in the same frame, first close the other menu and yield for a frame. OpenPopup(label); - return false; } - - menu_is_open |= want_open; - if (want_open) + else if (want_open) + { + menu_is_open = true; OpenPopup(label); + } if (menu_is_open) { - SetNextWindowPos(popup_pos, ImGuiCond_Always); // Note: this is super misleading! The value will serve as reference for FindBestWindowPosForPopup(), not actual pos. + ImGuiLastItemData last_item_in_parent = g.LastItemData; + SetNextWindowPos(popup_pos, ImGuiCond_Always); // Note: misleading: the value will serve as reference for FindBestWindowPosForPopup(), not actual pos. PushStyleVar(ImGuiStyleVar_ChildRounding, style.PopupRounding); // First level will use _PopupRounding, subsequent will use _ChildRounding - menu_is_open = BeginPopupEx(id, flags); // menu_is_open can be 'false' when the popup is completely clipped (e.g. zero size display) + menu_is_open = BeginPopupEx(id, window_flags); // menu_is_open can be 'false' when the popup is completely clipped (e.g. zero size display) PopStyleVar(); + if (menu_is_open) + { + // Restore LastItemData so IsItemXXXX functions can work after BeginMenu()/EndMenu() + // (This fixes using IsItemClicked() and IsItemHovered(), but IsItemHovered() also relies on its support for ImGuiItemFlags_NoWindowHoverableCheck) + g.LastItemData = last_item_in_parent; + if (g.HoveredWindow == window) + g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_HoveredWindow; + } } else { @@ -7126,17 +7379,18 @@ bool ImGui::BeginMenu(const char* label, bool enabled) void ImGui::EndMenu() { - // Nav: When a left move request _within our child menu_ failed, close ourselves (the _parent_ menu). - // A menu doesn't close itself because EndMenuBar() wants the catch the last Left<>Right inputs. - // However, it means that with the current code, a BeginMenu() from outside another menu or a menu-bar won't be closable with the Left direction. + // Nav: When a left move request our menu failed, close ourselves. ImGuiContext& g = *GImGui; ImGuiWindow* window = g.CurrentWindow; - if (g.NavMoveDir == ImGuiDir_Left && NavMoveRequestButNoResultYet() && window->DC.LayoutType == ImGuiLayoutType_Vertical) - if (g.NavWindow && (g.NavWindow->RootWindowForNav->Flags & ImGuiWindowFlags_Popup) && g.NavWindow->RootWindowForNav->ParentWindow == window) - { - ClosePopupToLevel(g.BeginPopupStack.Size, true); - NavMoveRequestCancel(); - } + IM_ASSERT(window->Flags & ImGuiWindowFlags_Popup); // Mismatched BeginMenu()/EndMenu() calls + ImGuiWindow* parent_window = window->ParentWindow; // Should always be != NULL is we passed assert. + if (window->BeginCount == window->BeginCountPreviousFrame) + if (g.NavMoveDir == ImGuiDir_Left && NavMoveRequestButNoResultYet()) + if (g.NavWindow && (g.NavWindow->RootWindowForNav == window) && parent_window->DC.LayoutType == ImGuiLayoutType_Vertical) + { + ClosePopupToLevel(g.BeginPopupStack.Size - 1, true); + NavMoveRequestCancel(); + } EndPopup(); } @@ -7152,10 +7406,10 @@ bool ImGui::MenuItemEx(const char* label, const char* icon, const char* shortcut ImVec2 pos = window->DC.CursorPos; ImVec2 label_size = CalcTextSize(label, NULL, true); + // See BeginMenuEx() for comments about this. const bool menuset_is_open = IsRootOfOpenMenuSet(); - ImGuiWindow* backed_nav_window = g.NavWindow; if (menuset_is_open) - g.NavWindow = window; + PushItemFlag(ImGuiItemFlags_NoWindowHoverableCheck, true); // We've been using the equivalent of ImGuiSelectableFlags_SetNavIdOnHover on all Selectable() since early Nav system days (commit 43ee5d73), // but I am unsure whether this should be kept at all. For now moved it to be an opt-in feature used by menus only. @@ -7164,7 +7418,8 @@ bool ImGui::MenuItemEx(const char* label, const char* icon, const char* shortcut if (!enabled) BeginDisabled(); - const ImGuiSelectableFlags selectable_flags = ImGuiSelectableFlags_SelectOnRelease | ImGuiSelectableFlags_SetNavIdOnHover; + // We use ImGuiSelectableFlags_NoSetKeyOwner to allow down on one menu item, move, up on another. + const ImGuiSelectableFlags selectable_flags = ImGuiSelectableFlags_SelectOnRelease | ImGuiSelectableFlags_NoSetKeyOwner | ImGuiSelectableFlags_SetNavIdOnHover; const ImGuiMenuColumns* offsets = &window->DC.MenuColumns; if (window->DC.LayoutType == ImGuiLayoutType_Horizontal) { @@ -7176,7 +7431,8 @@ bool ImGui::MenuItemEx(const char* label, const char* icon, const char* shortcut PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(style.ItemSpacing.x * 2.0f, style.ItemSpacing.y)); pressed = Selectable("", selected, selectable_flags, ImVec2(w, 0.0f)); PopStyleVar(); - RenderText(text_pos, label); + if (g.LastItemData.StatusFlags & ImGuiItemStatusFlags_Visible) + RenderText(text_pos, label); window->DC.CursorPos.x += IM_FLOOR(style.ItemSpacing.x * (-1.0f + 0.5f)); // -1 spacing to compensate the spacing added when Selectable() did a SameLine(). It would also work to call SameLine() ourselves after the PopStyleVar(). } else @@ -7189,25 +7445,28 @@ bool ImGui::MenuItemEx(const char* label, const char* icon, const char* shortcut float checkmark_w = IM_FLOOR(g.FontSize * 1.20f); float min_w = window->DC.MenuColumns.DeclColumns(icon_w, label_size.x, shortcut_w, checkmark_w); // Feedback for next frame float stretch_w = ImMax(0.0f, GetContentRegionAvail().x - min_w); - pressed = Selectable("", false, selectable_flags | ImGuiSelectableFlags_SpanAvailWidth, ImVec2(min_w, 0.0f)); - RenderText(pos + ImVec2(offsets->OffsetLabel, 0.0f), label); - if (icon_w > 0.0f) - RenderText(pos + ImVec2(offsets->OffsetIcon, 0.0f), icon); - if (shortcut_w > 0.0f) + pressed = Selectable("", false, selectable_flags | ImGuiSelectableFlags_SpanAvailWidth, ImVec2(min_w, label_size.y)); + if (g.LastItemData.StatusFlags & ImGuiItemStatusFlags_Visible) { - PushStyleColor(ImGuiCol_Text, style.Colors[ImGuiCol_TextDisabled]); - RenderText(pos + ImVec2(offsets->OffsetShortcut + stretch_w, 0.0f), shortcut, NULL, false); - PopStyleColor(); + RenderText(pos + ImVec2(offsets->OffsetLabel, 0.0f), label); + if (icon_w > 0.0f) + RenderText(pos + ImVec2(offsets->OffsetIcon, 0.0f), icon); + if (shortcut_w > 0.0f) + { + PushStyleColor(ImGuiCol_Text, style.Colors[ImGuiCol_TextDisabled]); + RenderText(pos + ImVec2(offsets->OffsetShortcut + stretch_w, 0.0f), shortcut, NULL, false); + PopStyleColor(); + } + if (selected) + RenderCheckMark(window->DrawList, pos + ImVec2(offsets->OffsetMark + stretch_w + g.FontSize * 0.40f, g.FontSize * 0.134f * 0.5f), GetColorU32(ImGuiCol_Text), g.FontSize * 0.866f); } - if (selected) - RenderCheckMark(window->DrawList, pos + ImVec2(offsets->OffsetMark + stretch_w + g.FontSize * 0.40f, g.FontSize * 0.134f * 0.5f), GetColorU32(ImGuiCol_Text), g.FontSize * 0.866f); } IMGUI_TEST_ENGINE_ITEM_INFO(g.LastItemData.ID, label, g.LastItemData.StatusFlags | ImGuiItemStatusFlags_Checkable | (selected ? ImGuiItemStatusFlags_Checked : 0)); if (!enabled) EndDisabled(); PopID(); if (menuset_is_open) - g.NavWindow = backed_nav_window; + PopItemFlag(); return pressed; } @@ -7238,12 +7497,19 @@ bool ImGui::MenuItem(const char* label, const char* shortcut, bool* p_selected, // - TabBarCalcTabID() [Internal] // - TabBarCalcMaxTabWidth() [Internal] // - TabBarFindTabById() [Internal] +// - TabBarFindTabByOrder() [Internal] +// - TabBarFindMostRecentlySelectedTabForActiveWindow() [Internal] +// - TabBarGetCurrentTab() [Internal] +// - TabBarGetTabName() [Internal] // - TabBarAddTab() [Internal] // - TabBarRemoveTab() [Internal] // - TabBarCloseTab() [Internal] // - TabBarScrollClamp() [Internal] // - TabBarScrollToTab() [Internal] -// - TabBarQueueChangeTabOrder() [Internal] +// - TabBarQueueFocus() [Internal] +// - TabBarQueueReorder() [Internal] +// - TabBarProcessReorderFromMousePos() [Internal] +// - TabBarProcessReorder() [Internal] // - TabBarScrollingButtons() [Internal] // - TabBarTabListPopupButton() [Internal] //------------------------------------------------------------------------- @@ -7369,6 +7635,7 @@ bool ImGui::BeginTabBarEx(ImGuiTabBar* tab_bar, const ImRect& tab_bar_bb, ImG tab_bar->ItemSpacingY = g.Style.ItemSpacing.y; tab_bar->FramePadding = g.Style.FramePadding; tab_bar->TabsActiveCount = 0; + tab_bar->LastTabItemIdx = -1; tab_bar->BeginCount = 1; // Set cursor pos in a way which only be used in the off-chance the user erroneously submits item before BeginTabItem(): items will overlap @@ -7424,6 +7691,7 @@ void ImGui::EndTabBar() if (tab_bar->BeginCount > 1) window->DC.CursorPos = tab_bar->BackupCursorPos; + tab_bar->LastTabItemIdx = -1; if ((tab_bar->Flags & ImGuiTabBarFlags_DockNode) == 0) PopID(); @@ -7431,6 +7699,12 @@ void ImGui::EndTabBar() g.CurrentTabBar = g.CurrentTabBarStack.empty() ? NULL : GetTabBarFromTabBarRef(g.CurrentTabBarStack.back()); } +// Scrolling happens only in the central section (leading/trailing sections are not scrolling) +static float TabBarCalcScrollableWidth(ImGuiTabBar* tab_bar, ImGuiTabBarSection* sections) +{ + return tab_bar->BarRect.GetWidth() - sections[0].Width - sections[2].Width - sections[1].Spacing; +} + // This is called only once a frame before by the first call to ItemTab() // The reason we're not calling it in BeginTabBar() is to leave a chance to the user to call the SetTabItemClosed() functions. static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) @@ -7533,9 +7807,9 @@ static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) // Refresh tab width immediately, otherwise changes of style e.g. style.FramePadding.x would noticeably lag in the tab bar. // Additionally, when using TabBarAddTab() to manipulate tab bar order we occasionally insert new tabs that don't have a width yet, // and we cannot wait for the next BeginTabItem() call. We cannot compute this width within TabBarAddTab() because font size depends on the active window. - const char* tab_name = tab_bar->GetTabName(tab); - const bool has_close_button = (tab->Flags & ImGuiTabItemFlags_NoCloseButton) == 0; - tab->ContentWidth = TabItemCalcSize(tab_name, has_close_button).x; + const char* tab_name = TabBarGetTabName(tab_bar, tab); + const bool has_close_button_or_unsaved_marker = (tab->Flags & ImGuiTabItemFlags_NoCloseButton) == 0 || (tab->Flags & ImGuiTabItemFlags_UnsavedDocument); + tab->ContentWidth = (tab->RequestedWidth >= 0.0f) ? tab->RequestedWidth : TabItemCalcSize(tab_name, has_close_button_or_unsaved_marker).x; int section_n = TabItemGetSectionIdx(tab); ImGuiTabBarSection* section = §ions[section_n]; @@ -7544,12 +7818,10 @@ static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) // Store data so we can build an array sorted by width if we need to shrink tabs down IM_MSVC_WARNING_SUPPRESS(6385); - int shrink_buffer_index = shrink_buffer_indexes[section_n]++; - g.ShrinkWidthBuffer[shrink_buffer_index].Index = tab_n; - g.ShrinkWidthBuffer[shrink_buffer_index].Width = tab->ContentWidth; - - IM_ASSERT(tab->ContentWidth > 0.0f); - tab->Width = tab->ContentWidth; + ImGuiShrinkWidthItem* shrink_width_item = &g.ShrinkWidthBuffer[shrink_buffer_indexes[section_n]++]; + shrink_width_item->Index = tab_n; + shrink_width_item->Width = shrink_width_item->InitialWidth = tab->ContentWidth; + tab->Width = ImMax(tab->ContentWidth, 1.0f); } // Compute total ideal width (used for e.g. auto-resizing a window) @@ -7579,7 +7851,7 @@ static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) width_excess = (section_0_w + section_2_w) - tab_bar->BarRect.GetWidth(); // Excess used to shrink leading/trailing section // With ImGuiTabBarFlags_FittingPolicyScroll policy, we will only shrink leading/trailing if the central section is not visible anymore - if (width_excess > 0.0f && ((tab_bar->Flags & ImGuiTabBarFlags_FittingPolicyResizeDown) || !central_section_is_visible)) + if (width_excess >= 1.0f && ((tab_bar->Flags & ImGuiTabBarFlags_FittingPolicyResizeDown) || !central_section_is_visible)) { int shrink_data_count = (central_section_is_visible ? sections[1].TabCount : sections[0].TabCount + sections[2].TabCount); int shrink_data_offset = (central_section_is_visible ? sections[0].TabCount + sections[2].TabCount : 0); @@ -7593,6 +7865,7 @@ static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) if (shrinked_width < 0.0f) continue; + shrinked_width = ImMax(1.0f, shrinked_width); int section_n = TabItemGetSectionIdx(tab); sections[section_n].Width -= (tab->Width - shrinked_width); tab->Width = shrinked_width; @@ -7636,11 +7909,25 @@ static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) // CTRL+TAB can override visible tab temporarily if (g.NavWindowingTarget != NULL && g.NavWindowingTarget->DockNode && g.NavWindowingTarget->DockNode->TabBar == tab_bar) - tab_bar->VisibleTabId = scroll_to_tab_id = g.NavWindowingTarget->ID; + tab_bar->VisibleTabId = scroll_to_tab_id = g.NavWindowingTarget->TabId; - // Update scrolling + // Apply request requests if (scroll_to_tab_id != 0) TabBarScrollToTab(tab_bar, scroll_to_tab_id, sections); + else if ((tab_bar->Flags & ImGuiTabBarFlags_FittingPolicyScroll) && IsMouseHoveringRect(tab_bar->BarRect.Min, tab_bar->BarRect.Max, true) && IsWindowContentHoverable(g.CurrentWindow)) + { + const float wheel = g.IO.MouseWheelRequestAxisSwap ? g.IO.MouseWheel : g.IO.MouseWheelH; + const ImGuiKey wheel_key = g.IO.MouseWheelRequestAxisSwap ? ImGuiKey_MouseWheelY : ImGuiKey_MouseWheelX; + if (TestKeyOwner(wheel_key, tab_bar->ID) && wheel != 0.0f) + { + const float scroll_step = wheel * TabBarCalcScrollableWidth(tab_bar, sections) / 3.0f; + tab_bar->ScrollingTargetDistToVisibility = 0.0f; + tab_bar->ScrollingTarget = TabBarScrollClamp(tab_bar, tab_bar->ScrollingTarget - scroll_step); + } + SetKeyOwner(wheel_key, tab_bar->ID); + } + + // Update scrolling tab_bar->ScrollingAnim = TabBarScrollClamp(tab_bar, tab_bar->ScrollingAnim); tab_bar->ScrollingTarget = TabBarScrollClamp(tab_bar, tab_bar->ScrollingTarget); if (tab_bar->ScrollingAnim != tab_bar->ScrollingTarget) @@ -7666,7 +7953,7 @@ static void ImGui::TabBarLayout(ImGuiTabBar* tab_bar) window->DC.IdealMaxPos.x = ImMax(window->DC.IdealMaxPos.x, tab_bar->BarRect.Min.x + tab_bar->WidthAllTabsIdeal); } -// Dockable uses Name/ID in the global namespace. Non-dockable items use the ID stack. +// Dockable windows uses Name/ID in the global namespace. Non-dockable items use the ID stack. static ImU32 ImGui::TabBarCalcTabID(ImGuiTabBar* tab_bar, const char* label, ImGuiWindow* docked_window) { if (docked_window != NULL) @@ -7699,6 +7986,14 @@ ImGuiTabItem* ImGui::TabBarFindTabByID(ImGuiTabBar* tab_bar, ImGuiID tab_id) return NULL; } +// Order = visible order, not submission order! (which is tab->BeginOrder) +ImGuiTabItem* ImGui::TabBarFindTabByOrder(ImGuiTabBar* tab_bar, int order) +{ + if (order < 0 || order >= tab_bar->Tabs.Size) + return NULL; + return &tab_bar->Tabs[order]; +} + // FIXME: See references to #2304 in TODO.txt ImGuiTabItem* ImGui::TabBarFindMostRecentlySelectedTabForActiveWindow(ImGuiTabBar* tab_bar) { @@ -7713,6 +8008,23 @@ ImGuiTabItem* ImGui::TabBarFindMostRecentlySelectedTabForActiveWindow(ImGuiTabBa return most_recently_selected_tab; } +ImGuiTabItem* ImGui::TabBarGetCurrentTab(ImGuiTabBar* tab_bar) +{ + if (tab_bar->LastTabItemIdx <= 0 || tab_bar->LastTabItemIdx >= tab_bar->Tabs.Size) + return NULL; + return &tab_bar->Tabs[tab_bar->LastTabItemIdx]; +} + +const char* ImGui::TabBarGetTabName(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) +{ + if (tab->Window) + return tab->Window->Name; + if (tab->NameOffset == -1) + return "N/A"; + IM_ASSERT(tab->NameOffset < tab_bar->TabsNames.Buf.Size); + return tab_bar->TabsNames.Buf.Data + tab->NameOffset; +} + // The purpose of this call is to register tab in advance so we can control their order at the time they appear. // Otherwise calling this is unnecessary as tabs are appending as needed by the BeginTabItem() function. void ImGui::TabBarAddTab(ImGuiTabBar* tab_bar, ImGuiTabItemFlags tab_flags, ImGuiWindow* window) @@ -7734,7 +8046,7 @@ void ImGui::TabBarAddTab(ImGuiTabBar* tab_bar, ImGuiTabItemFlags tab_flags, ImGu tab_bar->Tabs.push_back(new_tab); } -// The *TabId fields be already set by the docking system _before_ the actual TabItem was created, so we clear them regardless. +// The *TabId fields are already set by the docking system _before_ the actual TabItem was created, so we clear them regardless. void ImGui::TabBarRemoveTab(ImGuiTabBar* tab_bar, ImGuiID tab_id) { if (ImGuiTabItem* tab = TabBarFindTabByID(tab_bar, tab_id)) @@ -7747,7 +8059,9 @@ void ImGui::TabBarRemoveTab(ImGuiTabBar* tab_bar, ImGuiID tab_id) // Called on manual closure attempt void ImGui::TabBarCloseTab(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { - IM_ASSERT(!(tab->Flags & ImGuiTabItemFlags_Button)); + if (tab->Flags & ImGuiTabItemFlags_Button) + return; // A button appended with TabItemButton(). + if (!(tab->Flags & ImGuiTabItemFlags_UnsavedDocument)) { // This will remove a frame of lag for selecting another tab on closure. @@ -7763,7 +8077,7 @@ void ImGui::TabBarCloseTab(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { // Actually select before expecting closure attempt (on an UnsavedDocument tab user is expect to e.g. show a popup) if (tab_bar->VisibleTabId != tab->ID) - tab_bar->NextSelectedTabId = tab->ID; + TabBarQueueFocus(tab_bar, tab); } } @@ -7784,11 +8098,10 @@ static void ImGui::TabBarScrollToTab(ImGuiTabBar* tab_bar, ImGuiID tab_id, ImGui ImGuiContext& g = *GImGui; float margin = g.FontSize * 1.0f; // When to scroll to make Tab N+1 visible always make a bit of N visible to suggest more scrolling area (since we don't have a scrollbar) - int order = tab_bar->GetTabOrder(tab); + int order = TabBarGetTabOrder(tab_bar, tab); // Scrolling happens only in the central section (leading/trailing sections are not scrolling) - // FIXME: This is all confusing. - float scrollable_width = tab_bar->BarRect.GetWidth() - sections[0].Width - sections[2].Width - sections[1].Spacing; + float scrollable_width = TabBarCalcScrollableWidth(tab_bar, sections); // We make all tabs positions all relative Sections[0].Width to make code simpler float tab_x1 = tab->Offset - sections[0].Width + (order > sections[0].TabCount - 1 ? -margin : 0.0f); @@ -7808,7 +8121,12 @@ static void ImGui::TabBarScrollToTab(ImGuiTabBar* tab_bar, ImGuiID tab_id, ImGui } } -void ImGui::TabBarQueueReorder(ImGuiTabBar* tab_bar, const ImGuiTabItem* tab, int offset) +void ImGui::TabBarQueueFocus(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) +{ + tab_bar->NextSelectedTabId = tab->ID; +} + +void ImGui::TabBarQueueReorder(ImGuiTabBar* tab_bar, ImGuiTabItem* tab, int offset) { IM_ASSERT(offset != 0); IM_ASSERT(tab_bar->ReorderRequestTabId == 0); @@ -7816,7 +8134,7 @@ void ImGui::TabBarQueueReorder(ImGuiTabBar* tab_bar, const ImGuiTabItem* tab, in tab_bar->ReorderRequestOffset = (ImS16)offset; } -void ImGui::TabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar, const ImGuiTabItem* src_tab, ImVec2 mouse_pos) +void ImGui::TabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar, ImGuiTabItem* src_tab, ImVec2 mouse_pos) { ImGuiContext& g = *GImGui; IM_ASSERT(tab_bar->ReorderRequestTabId == 0); @@ -7859,7 +8177,7 @@ bool ImGui::TabBarProcessReorder(ImGuiTabBar* tab_bar) return false; //IM_ASSERT(tab_bar->Flags & ImGuiTabBarFlags_Reorderable); // <- this may happen when using debug tools - int tab2_order = tab_bar->GetTabOrder(tab1) + tab_bar->ReorderRequestOffset; + int tab2_order = TabBarGetTabOrder(tab_bar, tab1) + tab_bar->ReorderRequestOffset; if (tab2_order < 0 || tab2_order >= tab_bar->Tabs.Size) return false; @@ -7919,7 +8237,7 @@ static ImGuiTabItem* ImGui::TabBarScrollingButtons(ImGuiTabBar* tab_bar) if (select_dir != 0) if (ImGuiTabItem* tab_item = TabBarFindTabByID(tab_bar, tab_bar->SelectedTabId)) { - int selected_order = tab_bar->GetTabOrder(tab_item); + int selected_order = TabBarGetTabOrder(tab_bar, tab_item); int target_order = selected_order + select_dir; // Skip tab item buttons until another tab item is found or end is reached @@ -7971,7 +8289,7 @@ static ImGuiTabItem* ImGui::TabBarTabListPopupButton(ImGuiTabBar* tab_bar) if (tab->Flags & ImGuiTabItemFlags_Button) continue; - const char* tab_name = tab_bar->GetTabName(tab); + const char* tab_name = TabBarGetTabName(tab_bar, tab); if (Selectable(tab_name, tab_bar->SelectedTabId == tab->ID)) tab_to_select = tab; } @@ -8057,10 +8375,13 @@ bool ImGui::TabItemButton(const char* label, ImGuiTabItemFlags flags) bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, ImGuiTabItemFlags flags, ImGuiWindow* docked_window) { // Layout whole tab bar if not already done - if (tab_bar->WantLayout) - TabBarLayout(tab_bar); - ImGuiContext& g = *GImGui; + if (tab_bar->WantLayout) + { + ImGuiNextItemData backup_next_item_data = g.NextItemData; + TabBarLayout(tab_bar); + g.NextItemData = backup_next_item_data; + } ImGuiWindow* window = g.CurrentWindow; if (window->SkipItems) return false; @@ -8073,7 +8394,7 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags); if (p_open && !*p_open) { - ItemAdd(ImRect(), id, NULL, ImGuiItemFlags_NoNav | ImGuiItemFlags_NoNavDefaultFocus); + ItemAdd(ImRect(), id, NULL, ImGuiItemFlags_NoNav); return false; } @@ -8086,9 +8407,6 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, else if (p_open == NULL) flags |= ImGuiTabItemFlags_NoCloseButton; - // Calculate tab contents size - ImVec2 size = TabItemCalcSize(label, p_open != NULL); - // Acquire tab data ImGuiTabItem* tab = TabBarFindTabByID(tab_bar, id); bool tab_is_new = false; @@ -8097,44 +8415,51 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, tab_bar->Tabs.push_back(ImGuiTabItem()); tab = &tab_bar->Tabs.back(); tab->ID = id; - tab->Width = size.x; - tab_bar->TabsAddedNew = true; - tab_is_new = true; + tab_bar->TabsAddedNew = tab_is_new = true; } tab_bar->LastTabItemIdx = (ImS16)tab_bar->Tabs.index_from_ptr(tab); + + // Calculate tab contents size + ImVec2 size = TabItemCalcSize(label, (p_open != NULL) || (flags & ImGuiTabItemFlags_UnsavedDocument)); + tab->RequestedWidth = -1.0f; + if (g.NextItemData.Flags & ImGuiNextItemDataFlags_HasWidth) + size.x = tab->RequestedWidth = g.NextItemData.Width; + if (tab_is_new) + tab->Width = ImMax(1.0f, size.x); tab->ContentWidth = size.x; tab->BeginOrder = tab_bar->TabsActiveCount++; const bool tab_bar_appearing = (tab_bar->PrevFrameVisible + 1 < g.FrameCount); const bool tab_bar_focused = (tab_bar->Flags & ImGuiTabBarFlags_IsFocused) != 0; const bool tab_appearing = (tab->LastFrameVisible + 1 < g.FrameCount); + const bool tab_just_unsaved = (flags & ImGuiTabItemFlags_UnsavedDocument) && !(tab->Flags & ImGuiTabItemFlags_UnsavedDocument); const bool is_tab_button = (flags & ImGuiTabItemFlags_Button) != 0; tab->LastFrameVisible = g.FrameCount; tab->Flags = flags; tab->Window = docked_window; - // Append name with zero-terminator + // Append name _WITH_ the zero-terminator // (regular tabs are permitted in a DockNode tab bar, but window tabs not permitted in a non-DockNode tab bar) - if (tab->Window != NULL) + if (docked_window != NULL) { IM_ASSERT(tab_bar->Flags & ImGuiTabBarFlags_DockNode); tab->NameOffset = -1; } else { - IM_ASSERT(tab->Window == NULL); tab->NameOffset = (ImS32)tab_bar->TabsNames.size(); - tab_bar->TabsNames.append(label, label + strlen(label) + 1); // Append name _with_ the zero-terminator. + tab_bar->TabsNames.append(label, label + strlen(label) + 1); } // Update selected tab - if (tab_appearing && (tab_bar->Flags & ImGuiTabBarFlags_AutoSelectNewTabs) && tab_bar->NextSelectedTabId == 0) - if (!tab_bar_appearing || tab_bar->SelectedTabId == 0) - if (!is_tab_button) - tab_bar->NextSelectedTabId = id; // New tabs gets activated - if ((flags & ImGuiTabItemFlags_SetSelected) && (tab_bar->SelectedTabId != id)) // SetSelected can only be passed on explicit tab bar - if (!is_tab_button) - tab_bar->NextSelectedTabId = id; + if (!is_tab_button) + { + if (tab_appearing && (tab_bar->Flags & ImGuiTabBarFlags_AutoSelectNewTabs) && tab_bar->NextSelectedTabId == 0) + if (!tab_bar_appearing || tab_bar->SelectedTabId == 0) + TabBarQueueFocus(tab_bar, tab); // New tabs gets activated + if ((flags & ImGuiTabItemFlags_SetSelected) && (tab_bar->SelectedTabId != id)) // _SetSelected can only be passed on explicit tab bar + TabBarQueueFocus(tab_bar, tab); + } // Lock visibility // (Note: tab_contents_visible != tab_selected... because CTRL+TAB operations may preview some tabs without selecting them!) @@ -8151,7 +8476,7 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, // and then gets submitted again, the tabs will have 'tab_appearing=true' but 'tab_is_new=false'. if (tab_appearing && (!tab_bar_appearing || tab_is_new)) { - ItemAdd(ImRect(), id, NULL, ImGuiItemFlags_NoNav | ImGuiItemFlags_NoNavDefaultFocus); + ItemAdd(ImRect(), id, NULL, ImGuiItemFlags_NoNav); if (is_tab_button) return false; return tab_contents_visible; @@ -8197,7 +8522,7 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, bool hovered, held; bool pressed = ButtonBehavior(bb, id, &hovered, &held, button_flags); if (pressed && !is_tab_button) - tab_bar->NextSelectedTabId = id; + TabBarQueueFocus(tab_bar, tab); // Transfer active id window so the active id is not owned by the dock host (as StartMouseMovingWindow() // will only do it on the drag). This allows FocusWindow() to be more conservative in how it clears active id. @@ -8258,7 +8583,7 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, if (distance_from_edge_y >= threshold_y) undocking_tab = true; if (drag_distance_from_edge_x > threshold_x) - if ((drag_dir < 0 && tab_bar->GetTabOrder(tab) == 0) || (drag_dir > 0 && tab_bar->GetTabOrder(tab) == tab_bar->Tabs.Size - 1)) + if ((drag_dir < 0 && TabBarGetTabOrder(tab_bar, tab) == 0) || (drag_dir > 0 && TabBarGetTabOrder(tab_bar, tab) == tab_bar->Tabs.Size - 1)) undocking_tab = true; } @@ -8271,7 +8596,7 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, SetActiveID(g.MovingWindow->MoveId, g.MovingWindow); g.ActiveIdClickOffset -= g.MovingWindow->Pos - bb.Min; g.ActiveIdNoClearOnFocusLoss = true; - SetActiveIdUsingNavAndKeys(); + SetActiveIdUsingAllKeyboardKeys(); } } } @@ -8294,9 +8619,8 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, // Select with right mouse button. This is so the common idiom for context menu automatically highlight the current widget. const bool hovered_unblocked = IsItemHovered(ImGuiHoveredFlags_AllowWhenBlockedByPopup); - if (hovered_unblocked && (IsMouseClicked(1) || IsMouseReleased(1))) - if (!is_tab_button) - tab_bar->NextSelectedTabId = id; + if (hovered_unblocked && (IsMouseClicked(1) || IsMouseReleased(1)) && !is_tab_button) + TabBarQueueFocus(tab_bar, tab); if (tab_bar->Flags & ImGuiTabBarFlags_NoCloseWithMiddleMouseButton) flags |= ImGuiTabItemFlags_NoCloseWithMiddleMouseButton; @@ -8305,7 +8629,7 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, const ImGuiID close_button_id = (p_open && can_undock) ? GetIDWithSeed("#CLOSE", NULL, docked_window ? docked_window->ID : id) : 0; bool just_closed; bool text_clipped; - TabItemLabelAndCloseButton(display_draw_list, bb, flags, tab_bar->FramePadding, label, id, close_button_id, tab_contents_visible, &just_closed, &text_clipped); + TabItemLabelAndCloseButton(display_draw_list, bb, tab_just_unsaved ? (flags & ~ImGuiTabItemFlags_UnsavedDocument) : flags, tab_bar->FramePadding, label, id, close_button_id, tab_contents_visible, &just_closed, &text_clipped); if (just_closed && p_open != NULL) { *p_open = false; @@ -8327,9 +8651,10 @@ bool ImGui::TabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, // (We test IsItemHovered() to discard e.g. when another item is active or drag and drop over the tab bar, which g.HoveredId ignores) // FIXME: This is a mess. // FIXME: We may want disabled tab to still display the tooltip? - if (text_clipped && g.HoveredId == id && !held && g.HoveredIdNotActiveTimer > g.TooltipSlowDelay && IsItemHovered()) + if (text_clipped && g.HoveredId == id && !held) if (!(tab_bar->Flags & ImGuiTabBarFlags_NoTooltip) && !(tab->Flags & ImGuiTabItemFlags_NoTooltip)) - SetTooltip("%.*s", (int)(FindRenderedTextEnd(label) - label), label); + if (IsItemHovered(ImGuiHoveredFlags_DelayNormal)) + SetTooltip("%.*s", (int)(FindRenderedTextEnd(label) - label), label); IM_ASSERT(!is_tab_button || !(tab_bar->SelectedTabId == tab->ID && is_tab_button)); // TabItemButton should not be selected if (is_tab_button) @@ -8363,18 +8688,23 @@ void ImGui::SetTabItemClosed(const char* label) } } -ImVec2 ImGui::TabItemCalcSize(const char* label, bool has_close_button) +ImVec2 ImGui::TabItemCalcSize(const char* label, bool has_close_button_or_unsaved_marker) { ImGuiContext& g = *GImGui; ImVec2 label_size = CalcTextSize(label, NULL, true); ImVec2 size = ImVec2(label_size.x + g.Style.FramePadding.x, label_size.y + g.Style.FramePadding.y * 2.0f); - if (has_close_button) + if (has_close_button_or_unsaved_marker) size.x += g.Style.FramePadding.x + (g.Style.ItemInnerSpacing.x + g.FontSize); // We use Y intentionally to fit the close button circle. else size.x += g.Style.FramePadding.x + 1.0f; return ImVec2(ImMin(size.x, TabBarCalcMaxTabWidth()), size.y); } +ImVec2 ImGui::TabItemCalcSize(ImGuiWindow* window) +{ + return TabItemCalcSize(window->Name, window->HasCloseButton || (window->Flags & ImGuiWindowFlags_UnsavedDocument)); +} + void ImGui::TabItemBackground(ImDrawList* draw_list, const ImRect& bb, ImGuiTabItemFlags flags, ImU32 col) { // While rendering tabs, we trim 1 pixel off the top of our bounding box so they can fit within a regular frame height while looking "detached" from it. diff --git a/extern/imgui_patched/imstb_textedit.h b/extern/imgui_patched/imstb_textedit.h index d9364230..360395ce 100644 --- a/extern/imgui_patched/imstb_textedit.h +++ b/extern/imgui_patched/imstb_textedit.h @@ -2,6 +2,7 @@ // This is a slightly modified version of stb_textedit.h 1.14. // Those changes would need to be pushed into nothings/stb: // - Fix in stb_textedit_discard_redo (see https://github.com/nothings/stb/issues/321) +// - Fix in stb_textedit_find_charpos to handle last line (see https://github.com/ocornut/imgui/issues/6000) // Grep for [DEAR IMGUI] to find the changes. // stb_textedit.h - v1.14 - public domain - Sean Barrett @@ -524,29 +525,14 @@ static void stb_textedit_find_charpos(StbFindState *find, STB_TEXTEDIT_STRING *s int z = STB_TEXTEDIT_STRINGLEN(str); int i=0, first; - if (n == z) { - // if it's at the end, then find the last line -- simpler than trying to - // explicitly handle this case in the regular code - if (single_line) { - STB_TEXTEDIT_LAYOUTROW(&r, str, 0); - find->y = 0; - find->first_char = 0; - find->length = z; - find->height = r.ymax - r.ymin; - find->x = r.x1; - } else { - find->y = 0; - find->x = 0; - find->height = 1; - while (i < z) { - STB_TEXTEDIT_LAYOUTROW(&r, str, i); - prev_start = i; - i += r.num_chars; - } - find->first_char = i; - find->length = 0; - find->prev_first = prev_start; - } + if (n == z && single_line) { + // special case if it's at the end (may not be needed?) + STB_TEXTEDIT_LAYOUTROW(&r, str, 0); + find->y = 0; + find->first_char = 0; + find->length = z; + find->height = r.ymax - r.ymin; + find->x = r.x1; return; } @@ -557,9 +543,13 @@ static void stb_textedit_find_charpos(StbFindState *find, STB_TEXTEDIT_STRING *s STB_TEXTEDIT_LAYOUTROW(&r, str, i); if (n < i + r.num_chars) break; + if (i + r.num_chars == z && z > 0 && STB_TEXTEDIT_GETCHAR(str, z - 1) != STB_TEXTEDIT_NEWLINE) // [DEAR IMGUI] special handling for last line + break; // [DEAR IMGUI] prev_start = i; i += r.num_chars; find->y += r.baseline_y_delta; + if (i == z) // [DEAR IMGUI] + break; // [DEAR IMGUI] } find->first_char = first = i; diff --git a/extern/imgui_patched/imstb_truetype.h b/extern/imgui_patched/imstb_truetype.h index 643d3789..35c827e6 100644 --- a/extern/imgui_patched/imstb_truetype.h +++ b/extern/imgui_patched/imstb_truetype.h @@ -2008,7 +2008,7 @@ static stbtt__buf stbtt__cid_get_glyph_subrs(const stbtt_fontinfo *info, int gly start = end; } } - if (fdselector == -1) stbtt__new_buf(NULL, 0); + if (fdselector == -1) return stbtt__new_buf(NULL, 0); // [DEAR IMGUI] fixed, see #6007 and nothings/stb#1422 return stbtt__get_subrs(info->cff, stbtt__cff_index_get(info->fontdicts, fdselector)); } diff --git a/extern/imgui_patched/misc/cpp/README.txt b/extern/imgui_patched/misc/cpp/README.txt index 42915902..17f0a3cd 100644 --- a/extern/imgui_patched/misc/cpp/README.txt +++ b/extern/imgui_patched/misc/cpp/README.txt @@ -9,5 +9,5 @@ imgui_scoped.h Try by merging: https://github.com/ocornut/imgui/pull/2197 Discuss at: https://github.com/ocornut/imgui/issues/2096 -See more C++ related extension on Wiki +See more C++ related extension (fmt, RAII, syntaxis sugar) on Wiki: https://github.com/ocornut/imgui/wiki/Useful-Extensions#cness diff --git a/extern/imgui_patched/misc/cpp/imgui_stdlib.cpp b/extern/imgui_patched/misc/cpp/imgui_stdlib.cpp index dd6bd8a5..c9060e88 100644 --- a/extern/imgui_patched/misc/cpp/imgui_stdlib.cpp +++ b/extern/imgui_patched/misc/cpp/imgui_stdlib.cpp @@ -4,6 +4,9 @@ // Changelog: // - v0.10: Initial version. Added InputText() / InputTextMultiline() calls with std::string +// See more C++ related extension (fmt, RAII, syntaxis sugar) on Wiki: +// https://github.com/ocornut/imgui/wiki/Useful-Extensions#cness + #include "imgui.h" #include "imgui_stdlib.h" diff --git a/extern/imgui_patched/misc/cpp/imgui_stdlib.h b/extern/imgui_patched/misc/cpp/imgui_stdlib.h index 61afc098..835a808f 100644 --- a/extern/imgui_patched/misc/cpp/imgui_stdlib.h +++ b/extern/imgui_patched/misc/cpp/imgui_stdlib.h @@ -4,6 +4,9 @@ // Changelog: // - v0.10: Initial version. Added InputText() / InputTextMultiline() calls with std::string +// See more C++ related extension (fmt, RAII, syntaxis sugar) on Wiki: +// https://github.com/ocornut/imgui/wiki/Useful-Extensions#cness + #pragma once #include @@ -12,7 +15,7 @@ namespace ImGui { // ImGui::InputText() with std::string // Because text input needs dynamic resizing, we need to setup a callback to grow the capacity - IMGUI_API bool InputText(const char* label, std::string* str, ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); - IMGUI_API bool InputTextMultiline(const char* label, std::string* str, const ImVec2& size = ImVec2(0, 0), ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); - IMGUI_API bool InputTextWithHint(const char* label, const char* hint, std::string* str, ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = NULL, void* user_data = NULL); + IMGUI_API bool InputText(const char* label, std::string* str, ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = nullptr, void* user_data = nullptr); + IMGUI_API bool InputTextMultiline(const char* label, std::string* str, const ImVec2& size = ImVec2(0, 0), ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = nullptr, void* user_data = nullptr); + IMGUI_API bool InputTextWithHint(const char* label, const char* hint, std::string* str, ImGuiInputTextFlags flags = 0, ImGuiInputTextCallback callback = nullptr, void* user_data = nullptr); } diff --git a/extern/imgui_patched/misc/debuggers/imgui.natstepfilter b/extern/imgui_patched/misc/debuggers/imgui.natstepfilter index efd1957b..6825c934 100644 --- a/extern/imgui_patched/misc/debuggers/imgui.natstepfilter +++ b/extern/imgui_patched/misc/debuggers/imgui.natstepfilter @@ -3,14 +3,15 @@ .natstepfilter file for Visual Studio debugger. Purpose: instruct debugger to skip some functions when using StepInto (F11) -To enable: +Since Visual Studio 2022 version 17.6 Preview 2 (currently available as a "Preview" build on March 14, 2023) +It is possible to add the .natstepfilter file to your project file and it will automatically be used. +(https://developercommunity.visualstudio.com/t/allow-natstepfilter-and-natjmc-to-be-included-as-p/561718) + +For older Visual Studio version prior to 2022 17.6 Preview 2: * copy in %USERPROFILE%\Documents\Visual Studio XXXX\Visualizers (current user) * or copy in %VsInstallDirectory%\Common7\Packages\Debugger\Visualizers (all users) -If you have multiple VS version installed, the version that matters is the one you are using the IDE/debugger of (not the compiling toolset). -This is supported since Visual Studio 2012. - -Unfortunately, unlike .natvis files, it isn't yet possible to include this file in your project :( -You may upvote this: https://developercommunity.visualstudio.com/t/allow-natstepfilter-and-natjmc-to-be-included-as-p/561718 +If you have multiple VS version installed, the version that matters is the one you are using the IDE/debugger +of (not the compiling toolset). This is supported since Visual Studio 2012. More information at: https://docs.microsoft.com/en-us/visualstudio/debugger/just-my-code?view=vs-2019#BKMK_C___Just_My_Code --> diff --git a/extern/imgui_patched/misc/fonts/binary_to_compressed_c.cpp b/extern/imgui_patched/misc/fonts/binary_to_compressed_c.cpp index 284f039a..f41d20f7 100644 --- a/extern/imgui_patched/misc/fonts/binary_to_compressed_c.cpp +++ b/extern/imgui_patched/misc/fonts/binary_to_compressed_c.cpp @@ -66,7 +66,7 @@ int main(int argc, char** argv) char Encode85Byte(unsigned int x) { x = (x % 85) + 35; - return (x >= '\\') ? x + 1 : x; + return (char)((x >= '\\') ? x + 1 : x); } bool binary_to_compressed_c(const char* filename, const char* symbol, bool use_base85_encoding, bool use_compression, bool use_static) @@ -263,17 +263,17 @@ static int stb_compress_chunk(stb_uchar *history, int best = 2, dist=0; if (q+65536 > end) - match_max = end-q; + match_max = (stb_uint)(end-q); else match_max = 65536; -#define stb__nc(b,d) ((d) <= window && ((b) > 9 || stb_not_crap(b,d))) +#define stb__nc(b,d) ((d) <= window && ((b) > 9 || stb_not_crap((int)(b),(int)(d)))) #define STB__TRY(t,p) /* avoid retrying a match we already tried */ \ - if (p ? dist != q-t : 1) \ + if (p ? dist != (int)(q-t) : 1) \ if ((m = stb_matchlen(t, q, match_max)) > best) \ if (stb__nc(m,q-(t))) \ - best = m, dist = q - (t) + best = m, dist = (int)(q - (t)) // rather than search for all matches, only try 4 candidate locations, // chosen based on 4 different hash functions of different lengths. @@ -299,24 +299,24 @@ static int stb_compress_chunk(stb_uchar *history, if (best < 3) { // fast path literals ++q; } else if (best > 2 && best <= 0x80 && dist <= 0x100) { - outliterals(lit_start, q-lit_start); lit_start = (q += best); + outliterals(lit_start, (int)(q-lit_start)); lit_start = (q += best); stb_out(0x80 + best-1); stb_out(dist-1); } else if (best > 5 && best <= 0x100 && dist <= 0x4000) { - outliterals(lit_start, q-lit_start); lit_start = (q += best); + outliterals(lit_start, (int)(q-lit_start)); lit_start = (q += best); stb_out2(0x4000 + dist-1); stb_out(best-1); } else if (best > 7 && best <= 0x100 && dist <= 0x80000) { - outliterals(lit_start, q-lit_start); lit_start = (q += best); + outliterals(lit_start, (int)(q-lit_start)); lit_start = (q += best); stb_out3(0x180000 + dist-1); stb_out(best-1); } else if (best > 8 && best <= 0x10000 && dist <= 0x80000) { - outliterals(lit_start, q-lit_start); lit_start = (q += best); + outliterals(lit_start, (int)(q-lit_start)); lit_start = (q += best); stb_out3(0x100000 + dist-1); stb_out2(best-1); } else if (best > 9 && dist <= 0x1000000) { if (best > 65536) best = 65536; - outliterals(lit_start, q-lit_start); lit_start = (q += best); + outliterals(lit_start, (int)(q-lit_start)); lit_start = (q += best); if (best <= 0x100) { stb_out(0x06); stb_out3(dist-1); @@ -336,10 +336,10 @@ static int stb_compress_chunk(stb_uchar *history, q = start+length; // the literals are everything from lit_start to q - *pending_literals = (q - lit_start); + *pending_literals = (int)(q - lit_start); - stb__running_adler = stb_adler32(stb__running_adler, start, q - start); - return q - start; + stb__running_adler = stb_adler32(stb__running_adler, start, (stb_uint)(q - start)); + return (int)(q - start); } static int stb_compress_inner(stb_uchar *input, stb_uint length) @@ -349,9 +349,9 @@ static int stb_compress_inner(stb_uchar *input, stb_uint length) stb_uchar **chash; chash = (stb_uchar**) malloc(stb__hashsize * sizeof(stb_uchar*)); - if (chash == NULL) return 0; // failure + if (chash == nullptr) return 0; // failure for (i=0; i < stb__hashsize; ++i) - chash[i] = NULL; + chash[i] = nullptr; // stream signature stb_out(0x57); stb_out(0xbc); @@ -380,9 +380,9 @@ static int stb_compress_inner(stb_uchar *input, stb_uint length) stb_uint stb_compress(stb_uchar *out, stb_uchar *input, stb_uint length) { stb__out = out; - stb__outfile = NULL; + stb__outfile = nullptr; stb_compress_inner(input, length); - return stb__out - out; + return (stb_uint)(stb__out - out); } diff --git a/extern/imgui_patched/misc/freetype/README.md b/extern/imgui_patched/misc/freetype/README.md index 5fcfc2d7..140ae225 100644 --- a/extern/imgui_patched/misc/freetype/README.md +++ b/extern/imgui_patched/misc/freetype/README.md @@ -24,7 +24,7 @@ See https://gist.github.com/ocornut/b3a9ecf13502fd818799a452969649ad - Oversampling settins are ignored but also not so much necessary with the higher quality rendering. -### Comparaison +### Comparison Small, thin anti-aliased fonts typically benefit a lot from FreeType's hinting: ![comparing_font_rasterizers](https://user-images.githubusercontent.com/8225057/107550178-fef87f00-6bd0-11eb-8d09-e2edb2f0ccfc.gif) diff --git a/extern/imgui_patched/misc/freetype/imgui_freetype.cpp b/extern/imgui_patched/misc/freetype/imgui_freetype.cpp index 4066a9a6..503430a6 100644 --- a/extern/imgui_patched/misc/freetype/imgui_freetype.cpp +++ b/extern/imgui_patched/misc/freetype/imgui_freetype.cpp @@ -6,6 +6,7 @@ // CHANGELOG // (minor and older changes stripped away, please see git history for details) +// 2023/01/04: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. // 2021/08/23: fixed crash when FT_Render_Glyph() fails to render a glyph and returns NULL. // 2021/03/05: added ImGuiFreeTypeBuilderFlags_Bitmap to load bitmap glyphs. // 2021/03/02: set 'atlas->TexPixelsUseColors = true' to help some backends with deciding of a prefered texture format. @@ -42,13 +43,16 @@ #include FT_SYNTHESIS_H // #ifdef _MSC_VER +#pragma warning (push) #pragma warning (disable: 4505) // unreferenced local function has been removed (stb stuff) #pragma warning (disable: 26812) // [Static Analyzer] The enum type 'xxx' is unscoped. Prefer 'enum class' over 'enum' (Enum.3). #endif -#if defined(__GNUC__) +#ifdef __GNUC__ +#pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wpragmas" // warning: unknown option after '#pragma GCC diagnostic' kind #pragma GCC diagnostic ignored "-Wunused-function" // warning: 'xxxx' defined but not used +#pragma GCC diagnostic ignored "-Wsubobject-linkage" // warning: 'xxxx' has a field 'xxxx' whose type uses the anonymous namespace #endif //------------------------------------------------------------------------- @@ -62,7 +66,7 @@ static void ImGuiFreeTypeDefaultFreeFunc(void* ptr, void* user_data) { IM_UNUSE // Current memory allocators static void* (*GImGuiFreeTypeAllocFunc)(size_t size, void* user_data) = ImGuiFreeTypeDefaultAllocFunc; static void (*GImGuiFreeTypeFreeFunc)(void* ptr, void* user_data) = ImGuiFreeTypeDefaultFreeFunc; -static void* GImGuiFreeTypeAllocatorUserData = NULL; +static void* GImGuiFreeTypeAllocatorUserData = nullptr; //------------------------------------------------------------------------- // Code @@ -132,7 +136,7 @@ namespace void SetPixelHeight(int pixel_height); // Change font pixel size. All following calls to RasterizeGlyph() will use this size const FT_Glyph_Metrics* LoadGlyph(uint32_t in_codepoint); const FT_Bitmap* RenderGlyphAndGetInfo(GlyphInfo* out_glyph_info); - void BlitGlyph(const FT_Bitmap* ft_bitmap, uint32_t* dst, uint32_t dst_pitch, unsigned char* multiply_table = NULL); + void BlitGlyph(const FT_Bitmap* ft_bitmap, uint32_t* dst, uint32_t dst_pitch, unsigned char* multiply_table = nullptr); ~FreeTypeFont() { CloseFont(); } // [Internals] @@ -194,7 +198,7 @@ namespace if (Face) { FT_Done_Face(Face); - Face = NULL; + Face = nullptr; } } @@ -225,7 +229,7 @@ namespace { uint32_t glyph_index = FT_Get_Char_Index(Face, codepoint); if (glyph_index == 0) - return NULL; + return nullptr; // If this crash for you: FreeType 2.11.0 has a crash bug on some bitmap/colored fonts. // - https://gitlab.freedesktop.org/freetype/freetype/-/issues/1076 @@ -234,7 +238,7 @@ namespace // You can use FreeType 2.10, or the patched version of 2.11.0 in VcPkg, or probably any upcoming FreeType version. FT_Error error = FT_Load_Glyph(Face, glyph_index, LoadFlags); if (error) - return NULL; + return nullptr; // Need an outline for this to work FT_GlyphSlot slot = Face->glyph; @@ -260,7 +264,7 @@ namespace FT_GlyphSlot slot = Face->glyph; FT_Error error = FT_Render_Glyph(slot, RenderMode); if (error != 0) - return NULL; + return nullptr; FT_Bitmap* ft_bitmap = &Face->glyph->bitmap; out_glyph_info->Width = (int)ft_bitmap->width; @@ -275,7 +279,7 @@ namespace void FreeTypeFont::BlitGlyph(const FT_Bitmap* ft_bitmap, uint32_t* dst, uint32_t dst_pitch, unsigned char* multiply_table) { - IM_ASSERT(ft_bitmap != NULL); + IM_ASSERT(ft_bitmap != nullptr); const uint32_t w = ft_bitmap->width; const uint32_t h = ft_bitmap->rows; const uint8_t* src = ft_bitmap->buffer; @@ -285,7 +289,7 @@ namespace { case FT_PIXEL_MODE_GRAY: // Grayscale image, 1 byte per pixel. { - if (multiply_table == NULL) + if (multiply_table == nullptr) { for (uint32_t y = 0; y < h; y++, src += src_pitch, dst += dst_pitch) for (uint32_t x = 0; x < w; x++) @@ -320,7 +324,7 @@ namespace { // FIXME: Converting pre-multiplied alpha to straight. Doesn't smell good. #define DE_MULTIPLY(color, alpha) (ImU32)(255.0f * (float)color / (float)alpha + 0.5f) - if (multiply_table == NULL) + if (multiply_table == nullptr) { for (uint32_t y = 0; y < h; y++, src += src_pitch, dst += dst_pitch) for (uint32_t x = 0; x < w; x++) @@ -347,7 +351,7 @@ namespace IM_ASSERT(0 && "FreeTypeFont::BlitGlyph(): Unknown bitmap pixel mode!"); } } -} +} // namespace #ifndef STB_RECT_PACK_IMPLEMENTATION // in case the user already have an implementation in the _same_ compilation unit (e.g. unity builds) #ifndef IMGUI_DISABLE_STB_RECT_PACK_IMPLEMENTATION @@ -399,7 +403,7 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u ImFontAtlasBuildInit(atlas); // Clear atlas - atlas->TexID = (ImTextureID)NULL; + atlas->TexID = (ImTextureID)nullptr; atlas->TexWidth = atlas->TexHeight = 0; atlas->TexUvScale = ImVec2(0.0f, 0.0f); atlas->TexUvWhitePixel = ImVec2(0.0f, 0.0f); @@ -440,7 +444,12 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u ImFontBuildDstDataFT& dst_tmp = dst_tmp_array[src_tmp.DstIndex]; src_tmp.SrcRanges = cfg.GlyphRanges ? cfg.GlyphRanges : atlas->GetGlyphRangesDefault(); for (const ImWchar* src_range = src_tmp.SrcRanges; src_range[0] && src_range[1]; src_range += 2) + { + // Check for valid range. This may also help detect *some* dangling pointers, because a common + // user error is to setup ImFontConfig::GlyphRanges with a pointer to data that isn't persistent. + IM_ASSERT(src_range[0] <= src_range[1]); src_tmp.GlyphsHighest = ImMax(src_tmp.GlyphsHighest, (int)src_range[1]); + } dst_tmp.SrcCount++; dst_tmp.GlyphsHighest = ImMax(dst_tmp.GlyphsHighest, src_tmp.GlyphsHighest); } @@ -508,7 +517,7 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u // Allocate temporary rasterization data buffers. // We could not find a way to retrieve accurate glyph size without rendering them. // (e.g. slot->metrics->width not always matching bitmap->width, especially considering the Oblique transform) - // We allocate in chunks of 256 KB to not waste too much extra memory ahead. Hopefully users of FreeType won't find the temporary allocations. + // We allocate in chunks of 256 KB to not waste too much extra memory ahead. Hopefully users of FreeType won't mind the temporary allocations. const int BITMAP_BUFFERS_CHUNK_SIZE = 256 * 1024; int buf_bitmap_current_used_bytes = 0; ImVector buf_bitmap_buffers; @@ -541,12 +550,12 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u ImFontBuildSrcGlyphFT& src_glyph = src_tmp.GlyphsList[glyph_i]; const FT_Glyph_Metrics* metrics = src_tmp.Font.LoadGlyph(src_glyph.Codepoint); - if (metrics == NULL) + if (metrics == nullptr) continue; // Render glyph into a bitmap (currently held by FreeType) const FT_Bitmap* ft_bitmap = src_tmp.Font.RenderGlyphAndGetInfo(&src_glyph.Info); - if (ft_bitmap == NULL) + if (ft_bitmap == nullptr) continue; // Allocate new temporary chunk if needed @@ -556,11 +565,12 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u buf_bitmap_current_used_bytes = 0; buf_bitmap_buffers.push_back((unsigned char*)IM_ALLOC(BITMAP_BUFFERS_CHUNK_SIZE)); } + IM_ASSERT(buf_bitmap_current_used_bytes + bitmap_size_in_bytes <= BITMAP_BUFFERS_CHUNK_SIZE); // We could probably allocate custom-sized buffer instead. // Blit rasterized pixels to our temporary buffer and keep a pointer to it. src_glyph.BitmapData = (unsigned int*)(buf_bitmap_buffers.back() + buf_bitmap_current_used_bytes); buf_bitmap_current_used_bytes += bitmap_size_in_bytes; - src_tmp.Font.BlitGlyph(ft_bitmap, src_glyph.BitmapData, src_glyph.Info.Width, multiply_enabled ? multiply_table : NULL); + src_tmp.Font.BlitGlyph(ft_bitmap, src_glyph.BitmapData, src_glyph.Info.Width, multiply_enabled ? multiply_table : nullptr); src_tmp.Rects[glyph_i].w = (stbrp_coord)(src_glyph.Info.Width + padding); src_tmp.Rects[glyph_i].h = (stbrp_coord)(src_glyph.Info.Height + padding); @@ -585,7 +595,7 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u ImVector pack_nodes; pack_nodes.resize(num_nodes_for_packing_algorithm); stbrp_context pack_context; - stbrp_init_target(&pack_context, atlas->TexWidth, TEX_HEIGHT_MAX, pack_nodes.Data, pack_nodes.Size); + stbrp_init_target(&pack_context, atlas->TexWidth - atlas->TexGlyphPadding, TEX_HEIGHT_MAX - atlas->TexGlyphPadding, pack_nodes.Data, pack_nodes.Size); ImFontAtlasBuildPackCustomRects(atlas, &pack_context); // 6. Pack each source font. No rendering yet, we are working with rectangles in an infinitely tall texture at this point. @@ -676,7 +686,7 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u size_t blit_src_stride = (size_t)src_glyph.Info.Width; size_t blit_dst_stride = (size_t)atlas->TexWidth; unsigned int* blit_src = src_glyph.BitmapData; - if (atlas->TexPixelsAlpha8 != NULL) + if (atlas->TexPixelsAlpha8 != nullptr) { unsigned char* blit_dst = atlas->TexPixelsAlpha8 + (ty * blit_dst_stride) + tx; for (int y = 0; y < info.Height; y++, blit_dst += blit_dst_stride, blit_src += blit_src_stride) @@ -692,7 +702,7 @@ bool ImFontAtlasBuildWithFreeTypeEx(FT_Library ft_library, ImFontAtlas* atlas, u } } - src_tmp.Rects = NULL; + src_tmp.Rects = nullptr; } atlas->TexPixelsUseColors = tex_use_colors; @@ -720,13 +730,13 @@ static void FreeType_Free(FT_Memory /*memory*/, void* block) static void* FreeType_Realloc(FT_Memory /*memory*/, long cur_size, long new_size, void* block) { // Implement realloc() as we don't ask user to provide it. - if (block == NULL) + if (block == nullptr) return GImGuiFreeTypeAllocFunc((size_t)new_size, GImGuiFreeTypeAllocatorUserData); if (new_size == 0) { GImGuiFreeTypeFreeFunc(block, GImGuiFreeTypeAllocatorUserData); - return NULL; + return nullptr; } if (new_size > cur_size) @@ -744,7 +754,7 @@ static bool ImFontAtlasBuildWithFreeType(ImFontAtlas* atlas) { // FreeType memory management: https://www.freetype.org/freetype2/docs/design/design-4.html FT_MemoryRec_ memory_rec = {}; - memory_rec.user = NULL; + memory_rec.user = nullptr; memory_rec.alloc = &FreeType_Alloc; memory_rec.free = &FreeType_Free; memory_rec.realloc = &FreeType_Realloc; @@ -777,3 +787,11 @@ void ImGuiFreeType::SetAllocatorFunctions(void* (*alloc_func)(size_t sz, void* u GImGuiFreeTypeFreeFunc = free_func; GImGuiFreeTypeAllocatorUserData = user_data; } + +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif + +#ifdef _MSC_VER +#pragma warning (pop) +#endif diff --git a/extern/imgui_patched/misc/freetype/imgui_freetype.h b/extern/imgui_patched/misc/freetype/imgui_freetype.h index 713e4639..80a1f95e 100644 --- a/extern/imgui_patched/misc/freetype/imgui_freetype.h +++ b/extern/imgui_patched/misc/freetype/imgui_freetype.h @@ -40,7 +40,7 @@ namespace ImGuiFreeType // Override allocators. By default ImGuiFreeType will use IM_ALLOC()/IM_FREE() // However, as FreeType does lots of allocations we provide a way for the user to redirect it to a separate memory heap if desired. - IMGUI_API void SetAllocatorFunctions(void* (*alloc_func)(size_t sz, void* user_data), void (*free_func)(void* ptr, void* user_data), void* user_data = NULL); + IMGUI_API void SetAllocatorFunctions(void* (*alloc_func)(size_t sz, void* user_data), void (*free_func)(void* ptr, void* user_data), void* user_data = nullptr); // Obsolete names (will be removed soon) // Prefer using '#define IMGUI_ENABLE_FREETYPE' diff --git a/extern/imgui_patched/misc/single_file/imgui_single_file.h b/extern/imgui_patched/misc/single_file/imgui_single_file.h index 6c1fb369..7ca31e0f 100644 --- a/extern/imgui_patched/misc/single_file/imgui_single_file.h +++ b/extern/imgui_patched/misc/single_file/imgui_single_file.h @@ -7,7 +7,15 @@ // #define IMGUI_IMPLEMENTATION // Before you include this file in *one* C++ file to create the implementation. // Using this in your project will leak the contents of imgui_internal.h and ImVec2 operators in this compilation unit. + +#ifdef IMGUI_IMPLEMENTATION +#define IMGUI_DEFINE_MATH_OPERATORS +#endif + #include "../../imgui.h" +#ifdef IMGUI_ENABLE_FREETYPE +#include "../../misc/freetype/imgui_freetype.h" +#endif #ifdef IMGUI_IMPLEMENTATION #include "../../imgui.cpp" @@ -15,4 +23,7 @@ #include "../../imgui_draw.cpp" #include "../../imgui_tables.cpp" #include "../../imgui_widgets.cpp" +#ifdef IMGUI_ENABLE_FREETYPE +#include "../../misc/freetype/imgui_freetype.cpp" +#endif #endif From 6ae9f8e083a1c63786683f5b03492b610c584903 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 8 Jun 2023 01:00:47 -0500 Subject: [PATCH 042/183] fix build --- CMakeLists.txt | 4 ++-- extern/igfd/ImGuiFileDialog.cpp | 7 ++++--- src/gui/gui.cpp | 1 - src/gui/gui.h | 2 +- src/gui/plot_nolerp.cpp | 4 ++-- src/gui/render/renderSDL.cpp | 16 ++++++++-------- src/gui/settings.cpp | 2 +- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5e99a8dd..253946a8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -602,7 +602,7 @@ extern/imgui_patched/imgui.cpp extern/imgui_patched/imgui_draw.cpp extern/imgui_patched/imgui_tables.cpp extern/imgui_patched/imgui_widgets.cpp -extern/imgui_patched/backends/imgui_impl_sdl.cpp +extern/imgui_patched/backends/imgui_impl_sdl2.cpp extern/imgui_patched/misc/cpp/imgui_stdlib.cpp extern/igfd/ImGuiFileDialog.cpp @@ -701,7 +701,7 @@ endif() if (WITH_RENDER_SDL) list(APPEND GUI_SOURCES src/gui/render/renderSDL.cpp) - list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_sdlrenderer.cpp) + list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_sdlrenderer2.cpp) list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_SDL) message(STATUS "UI render backend: SDL_Renderer") endif() diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index 372287d0..c590cfdd 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -25,6 +25,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +#ifndef IMGUI_DEFINE_MATH_OPERATORS + #define IMGUI_DEFINE_MATH_OPERATORS +#endif // IMGUI_DEFINE_MATH_OPERATORS + #include "ImGuiFileDialog.h" #include "../../src/ta-log.h" @@ -71,9 +75,6 @@ SOFTWARE. #endif // defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) #include "imgui.h" -#ifndef IMGUI_DEFINE_MATH_OPERATORS - #define IMGUI_DEFINE_MATH_OPERATORS -#endif // IMGUI_DEFINE_MATH_OPERATORS #include "imgui_internal.h" #include diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 4ea2eccf..4e2758b9 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -29,7 +29,6 @@ #include "../fileutils.h" #include "imgui.h" #include "imgui_internal.h" -#include "imgui_impl_sdl.h" #include "ImGuiFileDialog.h" #include "IconsFontAwesome4.h" #include "misc/cpp/imgui_stdlib.h" diff --git a/src/gui/gui.h b/src/gui/gui.h index 6fed038a..e714d645 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -23,7 +23,7 @@ #include "../engine/engine.h" #include "../engine/waveSynth.h" #include "imgui.h" -#include "imgui_impl_sdl.h" +#include "imgui_impl_sdl2.h" #include #include #include diff --git a/src/gui/plot_nolerp.cpp b/src/gui/plot_nolerp.cpp index 2fd7994b..e6c3989e 100644 --- a/src/gui/plot_nolerp.cpp +++ b/src/gui/plot_nolerp.cpp @@ -19,11 +19,11 @@ // portions based on imgui_widgets.cpp -#include "plot_nolerp.h" -#include "imgui.h" #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif +#include "plot_nolerp.h" +#include "imgui.h" #include "imgui_internal.h" struct FurnacePlotArrayGetterData diff --git a/src/gui/render/renderSDL.cpp b/src/gui/render/renderSDL.cpp index 0eb6271a..a58f1673 100644 --- a/src/gui/render/renderSDL.cpp +++ b/src/gui/render/renderSDL.cpp @@ -18,7 +18,7 @@ */ #include "renderSDL.h" -#include "backends/imgui_impl_sdlrenderer.h" +#include "backends/imgui_impl_sdlrenderer2.h" ImTextureID FurnaceGUIRenderSDL::getTextureID(void* which) { return which; @@ -86,19 +86,19 @@ void FurnaceGUIRenderSDL::clear(ImVec4 color) { } bool FurnaceGUIRenderSDL::newFrame() { - return ImGui_ImplSDLRenderer_NewFrame(); + return ImGui_ImplSDLRenderer2_NewFrame(); } void FurnaceGUIRenderSDL::createFontsTexture() { - ImGui_ImplSDLRenderer_CreateFontsTexture(); + ImGui_ImplSDLRenderer2_CreateFontsTexture(); } void FurnaceGUIRenderSDL::destroyFontsTexture() { - ImGui_ImplSDLRenderer_DestroyFontsTexture(); + ImGui_ImplSDLRenderer2_DestroyFontsTexture(); } void FurnaceGUIRenderSDL::renderGUI() { - ImGui_ImplSDLRenderer_RenderDrawData(ImGui::GetDrawData()); + ImGui_ImplSDLRenderer2_RenderDrawData(ImGui::GetDrawData()); } void FurnaceGUIRenderSDL::wipe(float alpha) { @@ -132,11 +132,11 @@ void FurnaceGUIRenderSDL::initGUI(SDL_Window* win) { ImGui::CreateContext(); ImGui_ImplSDL2_InitForSDLRenderer(win,sdlRend); - ImGui_ImplSDLRenderer_Init(sdlRend); + ImGui_ImplSDLRenderer2_Init(sdlRend); } void FurnaceGUIRenderSDL::quitGUI() { - ImGui_ImplSDLRenderer_Shutdown(); + ImGui_ImplSDLRenderer2_Shutdown(); } bool FurnaceGUIRenderSDL::quit() { @@ -144,4 +144,4 @@ bool FurnaceGUIRenderSDL::quit() { SDL_DestroyRenderer(sdlRend); sdlRend=NULL; return true; -} \ No newline at end of file +} diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index e66926b1..9f6459d1 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -3827,7 +3827,7 @@ void FurnaceGUI::applyUISettings(bool updateFonts) { } mainFont->FallbackChar='?'; - mainFont->DotChar='.'; + mainFont->EllipsisChar='.'; } // TODO: allow changing these colors. From 32c300ff41990ef280e1bfae32af54ed6f0da6c2 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 8 Jun 2023 01:04:28 -0500 Subject: [PATCH 043/183] GUI: ellipsis char count --- src/gui/settings.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 9f6459d1..52a77c12 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -3828,6 +3828,7 @@ void FurnaceGUI::applyUISettings(bool updateFonts) { mainFont->FallbackChar='?'; mainFont->EllipsisChar='.'; + mainFont->EllipsisCharCount=3; } // TODO: allow changing these colors. From 402c520276facdce140b94f79116439362ce2c28 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 8 Jun 2023 04:15:57 -0500 Subject: [PATCH 044/183] GUI: add option for late clear --- src/gui/gui.cpp | 7 ++++++- src/gui/gui.h | 2 ++ src/gui/settings.cpp | 11 +++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 4e2758b9..3d8453c4 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -5803,7 +5803,9 @@ bool FurnaceGUI::loop() { } } - rend->clear(uiColors[GUI_COLOR_BACKGROUND]); + if (!settings.renderClearPos) { + rend->clear(uiColors[GUI_COLOR_BACKGROUND]); + } renderTimeBegin=SDL_GetPerformanceCounter(); ImGui::Render(); renderTimeEnd=SDL_GetPerformanceCounter(); @@ -5821,6 +5823,9 @@ bool FurnaceGUI::loop() { } } rend->present(); + if (settings.renderClearPos) { + rend->clear(uiColors[GUI_COLOR_BACKGROUND]); + } layoutTimeDelta=layoutTimeEnd-layoutTimeBegin; renderTimeDelta=renderTimeEnd-renderTimeBegin; diff --git a/src/gui/gui.h b/src/gui/gui.h index e714d645..5b9e6335 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1495,6 +1495,7 @@ class FurnaceGUI { int orderButtonPos; int compress; int newPatternFormat; + int renderClearPos; unsigned int maxUndoSteps; String mainFontPath; String patFontPath; @@ -1643,6 +1644,7 @@ class FurnaceGUI { orderButtonPos(2), compress(1), newPatternFormat(1), + renderClearPos(0), maxUndoSteps(100), mainFontPath(""), patFontPath(""), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 52a77c12..56944fa6 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -626,6 +626,14 @@ void FurnaceGUI::drawSettings() { ImGui::SetTooltip("saves power by lowering the frame rate to 2fps when idle.\nmay cause issues under Mesa drivers!"); } + bool renderClearPosB=settings.renderClearPos; + if (ImGui::Checkbox("Late render clear",&renderClearPosB)) { + settings.renderClearPos=renderClearPosB; + } + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("calls rend->clear() after rend->present(). might reduce UI latency by one frame in some drivers."); + } + #ifndef IS_MOBILE bool noThreadedInputB=settings.noThreadedInput; if (ImGui::Checkbox("Disable threaded input (restart after changing!)",&noThreadedInputB)) { @@ -2728,6 +2736,7 @@ void FurnaceGUI::syncSettings() { settings.compress=e->getConfInt("compress",1); settings.newPatternFormat=e->getConfInt("newPatternFormat",1); settings.renderBackend=e->getConfString("renderBackend","SDL"); + settings.renderClearPos=e->getConfInt("renderClearPos",0); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -2850,6 +2859,7 @@ void FurnaceGUI::syncSettings() { clampSetting(settings.orderButtonPos,0,2); clampSetting(settings.compress,0,1); clampSetting(settings.newPatternFormat,0,1); + clampSetting(settings.renderClearPos,0,1); if (settings.exportLoops<0.0) settings.exportLoops=0.0; if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0; @@ -3068,6 +3078,7 @@ void FurnaceGUI::commitSettings() { e->setConf("compress",settings.compress); e->setConf("newPatternFormat",settings.newPatternFormat); e->setConf("renderBackend",settings.renderBackend); + e->setConf("renderClearPos",settings.renderClearPos); // colors for (int i=0; i Date: Fri, 9 Jun 2023 14:57:14 -0500 Subject: [PATCH 045/183] fix force mono audio --- src/engine/playback.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 0ed7264c..c2397d1e 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -2120,7 +2120,7 @@ void DivEngine::nextBuf(float** in, float** out, int inChans, int outChans, unsi for (size_t i=0; i Date: Fri, 9 Jun 2023 17:38:08 -0500 Subject: [PATCH 046/183] get rid of some warnings on Android --- extern/imgui_patched/backends/imgui_impl_opengl3.cpp | 2 +- extern/imgui_patched/backends/imgui_impl_sdl2.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/extern/imgui_patched/backends/imgui_impl_opengl3.cpp b/extern/imgui_patched/backends/imgui_impl_opengl3.cpp index ea270936..2ff3e262 100644 --- a/extern/imgui_patched/backends/imgui_impl_opengl3.cpp +++ b/extern/imgui_patched/backends/imgui_impl_opengl3.cpp @@ -123,7 +123,7 @@ #pragma clang diagnostic ignored "-Wsign-conversion" // warning: implicit conversion changes signedness #pragma clang diagnostic ignored "-Wunused-macros" // warning: macro is not used #pragma clang diagnostic ignored "-Wnonportable-system-include-path" -#pragma clang diagnostic ignored "-Wcast-function-type" // warning: cast between incompatible function types (for loader) +//#pragma clang diagnostic ignored "-Wcast-function-type" // warning: cast between incompatible function types (for loader) #endif #if defined(__GNUC__) #pragma GCC diagnostic push diff --git a/extern/imgui_patched/backends/imgui_impl_sdl2.cpp b/extern/imgui_patched/backends/imgui_impl_sdl2.cpp index ccf8ec86..5dc65568 100644 --- a/extern/imgui_patched/backends/imgui_impl_sdl2.cpp +++ b/extern/imgui_patched/backends/imgui_impl_sdl2.cpp @@ -84,7 +84,7 @@ // Clang warnings with -Weverything #if defined(__clang__) #pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wimplicit-int-float-conversion" // warning: implicit conversion from 'xxx' to 'float' may lose precision +//#pragma clang diagnostic ignored "-Wimplicit-int-float-conversion" // warning: implicit conversion from 'xxx' to 'float' may lose precision #endif // SDL From 181f5bd65e9add48801f34fac9b61a8f52eb540e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 01:42:19 -0500 Subject: [PATCH 047/183] possibly fix Windows XP support for real --- CMakeLists.txt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 253946a8..b55f514f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -114,6 +114,13 @@ else() set(SYSTEM_SDL_MIN_VER 2.0.0) endif() +if (WIN32) + # support Windows XP + if (SUPPORT_XP) + add_compile_definitions("_WIN32_WINNT=0x0501") + endif() +endif() + list(APPEND DEPENDENCIES_INCLUDE_DIRS "extern/SAASound/include") list(APPEND DEPENDENCIES_INCLUDE_DIRS "extern/vgsound_emu-modified") @@ -795,10 +802,6 @@ if (WIN32) if (NOT MSVC) list(APPEND DEPENDENCIES_LIBRARIES -static) endif() - # support Windows XP - if (SUPPORT_XP) - list(APPEND DEPENDENCIES_DEFINES "_WIN32_WINNT=0x0501") - endif() elseif (APPLE) find_library(COCOA Cocoa REQUIRED) list(APPEND DEPENDENCIES_LIBRARIES ${COCOA}) From 599244e1bc4765f3805bca505f0ce15a640af7a2 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 01:42:31 -0500 Subject: [PATCH 048/183] VERA: fix PCM vol macro issue #1142 --- src/engine/platform/vera.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/platform/vera.cpp b/src/engine/platform/vera.cpp index 6b2dd56c..57e6f29f 100644 --- a/src/engine/platform/vera.cpp +++ b/src/engine/platform/vera.cpp @@ -35,7 +35,7 @@ extern "C" { #define rWritePCMCtrl(d) {regPool[64]=(d); pcm_write_ctrl(pcm,d);} #define rWritePCMRate(d) {regPool[65]=(d); pcm_write_rate(pcm,d);} #define rWritePCMData(d) {regPool[66]=(d); pcm_write_fifo(pcm,d);} -#define rWritePCMVol(d) rWritePCMCtrl((regPool[64]&(~0x3f))|((d)&0x3f)) +#define rWritePCMVol(d) rWritePCMCtrl((regPool[64]&(~0x8f))|((d)&15)) const char* regCheatSheetVERA[]={ "CHxFreq", "00+x*4", From 2fe315e5d7bdd2035f087b6fffe0261135f67b0c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 14:37:08 -0500 Subject: [PATCH 049/183] IGFD: finally fix sorting --- extern/igfd/ImGuiFileDialog.cpp | 9 ++++----- extern/igfd/ImGuiFileDialog.h | 2 +- extern/igfd/ImGuiFileDialogConfig.h | 6 +++--- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index c590cfdd..90dc2c4d 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -1189,10 +1189,9 @@ namespace IGFD IGFD::FileManager::FileManager() { puFsRoot = std::string(1u, PATH_SEP); - puSortingDirection[0]=false; - puSortingDirection[1]=false; - puSortingDirection[2]=false; - puSortingDirection[3]=false; + for (int i=0; i<5; i++) { + puSortingDirection[i]=true; + } } void IGFD::FileManager::OpenCurrentPath(const FileDialogInternal& vFileDialogInternal) @@ -1233,7 +1232,7 @@ namespace IGFD logV("IGFD: sorting by name"); if (vCanChangeOrder && puSortingField == vSortingField) { //printf("Change the sorting\n"); - puSortingDirection[0] = true;//!puSortingDirection[0]; + puSortingDirection[0] = !puSortingDirection[0]; } if (puSortingDirection[0]) diff --git a/extern/igfd/ImGuiFileDialog.h b/extern/igfd/ImGuiFileDialog.h index 7b252395..827a987e 100644 --- a/extern/igfd/ImGuiFileDialog.h +++ b/extern/igfd/ImGuiFileDialog.h @@ -869,7 +869,7 @@ namespace IGFD std::string puHeaderFileDate; // detail view name of column date + time #ifdef USE_THUMBNAILS std::string puHeaderFileThumbnails; // detail view name of column thumbnails - bool puSortingDirection[5] = { true, true, true, true, true }; // detail view // true => Descending, false => Ascending + bool puSortingDirection[5]; // detail view // true => Descending, false => Ascending #else bool puSortingDirection[4]; // detail view // true => Descending, false => Ascending #endif diff --git a/extern/igfd/ImGuiFileDialogConfig.h b/extern/igfd/ImGuiFileDialogConfig.h index 3416b029..1db638dd 100644 --- a/extern/igfd/ImGuiFileDialogConfig.h +++ b/extern/igfd/ImGuiFileDialogConfig.h @@ -80,9 +80,9 @@ //#define DateTimeFormat "%Y/%m/%d %i:%M%p" // theses icons will appear in table headers -//#define USE_CUSTOM_SORTING_ICON -//#define tableHeaderAscendingIcon "A|" -//#define tableHeaderDescendingIcon "D|" +#define USE_CUSTOM_SORTING_ICON +#define tableHeaderAscendingIcon ICON_FA_CHEVRON_UP " " +#define tableHeaderDescendingIcon ICON_FA_CHEVRON_DOWN " " //#define tableHeaderFileNameString " File name" //#define tableHeaderFileTypeString " Type" //#define tableHeaderFileSizeString " Size" From 02f6a0f217b13ac793bb9ff4bafda87819501d03 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 15:26:36 -0500 Subject: [PATCH 050/183] GUI: add very useful setting push entire channel when inserting --- src/gui/editing.cpp | 20 ++++++++++++++------ src/gui/gui.h | 2 ++ src/gui/settings.cpp | 8 ++++++++ 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/gui/editing.cpp b/src/gui/editing.cpp index 1a2b1b11..3f6d4b1d 100644 --- a/src/gui/editing.cpp +++ b/src/gui/editing.cpp @@ -277,15 +277,23 @@ void FurnaceGUI::doInsert() { prepareUndo(GUI_UNDO_PATTERN_PUSH); curNibble=false; - int iCoarse=selStart.xCoarse; - int iFine=selStart.xFine; - for (; iCoarse<=selEnd.xCoarse; iCoarse++) { + SelectionPoint sStart=selStart; + SelectionPoint sEnd=selEnd; + + if (selStart.xCoarse==selEnd.xCoarse && selStart.xFine==selEnd.xFine && selStart.y==selEnd.y) { + sStart.xFine=0; + sEnd.xFine=2+e->curPat[sEnd.xCoarse].effectCols*2; + } + + int iCoarse=sStart.xCoarse; + int iFine=sStart.xFine; + for (; iCoarse<=sEnd.xCoarse; iCoarse++) { if (!e->curSubSong->chanShow[iCoarse]) continue; DivPattern* pat=e->curPat[iCoarse].getPattern(e->curOrders->ord[iCoarse][curOrder],true); - for (; iFine<3+e->curPat[iCoarse].effectCols*2 && (iCoarsecurPat[iCoarse].effectCols*2 && (iCoarsecurSubSong->patLen-1; j>=selStart.y; j--) { - if (j==selStart.y) { + for (int j=e->curSubSong->patLen-1; j>=sStart.y; j--) { + if (j==sStart.y) { if (iFine==0) { pat->data[j][iFine]=0; } diff --git a/src/gui/gui.h b/src/gui/gui.h index 5b9e6335..48169b83 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1496,6 +1496,7 @@ class FurnaceGUI { int compress; int newPatternFormat; int renderClearPos; + int insertBehavior; unsigned int maxUndoSteps; String mainFontPath; String patFontPath; @@ -1645,6 +1646,7 @@ class FurnaceGUI { compress(1), newPatternFormat(1), renderClearPos(0), + insertBehavior(1), maxUndoSteps(100), mainFontPath(""), patFontPath(""), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 56944fa6..a442b430 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -543,6 +543,11 @@ void FurnaceGUI::drawSettings() { settings.stepOnDelete=stepOnDeleteB; } + bool insertBehaviorB=settings.insertBehavior; + if (ImGui::Checkbox("Insert pushes entire channel row",&insertBehaviorB)) { + settings.insertBehavior=insertBehaviorB; + } + bool absorbInsInputB=settings.absorbInsInput; if (ImGui::Checkbox("Change current instrument when changing instrument column (absorb)",&absorbInsInputB)) { settings.absorbInsInput=absorbInsInputB; @@ -2737,6 +2742,7 @@ void FurnaceGUI::syncSettings() { settings.newPatternFormat=e->getConfInt("newPatternFormat",1); settings.renderBackend=e->getConfString("renderBackend","SDL"); settings.renderClearPos=e->getConfInt("renderClearPos",0); + settings.insertBehavior=e->getConfInt("insertBehavior",1); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -2860,6 +2866,7 @@ void FurnaceGUI::syncSettings() { clampSetting(settings.compress,0,1); clampSetting(settings.newPatternFormat,0,1); clampSetting(settings.renderClearPos,0,1); + clampSetting(settings.insertBehavior,0,1); if (settings.exportLoops<0.0) settings.exportLoops=0.0; if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0; @@ -3079,6 +3086,7 @@ void FurnaceGUI::commitSettings() { e->setConf("newPatternFormat",settings.newPatternFormat); e->setConf("renderBackend",settings.renderBackend); e->setConf("renderClearPos",settings.renderClearPos); + e->setConf("insertBehavior",settings.insertBehavior); // colors for (int i=0; i Date: Sat, 10 Jun 2023 15:50:08 -0500 Subject: [PATCH 051/183] GUI: and now for backspace too --- src/gui/editing.cpp | 20 ++++++++++++++------ src/gui/gui.h | 2 ++ src/gui/settings.cpp | 8 ++++++++ 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/gui/editing.cpp b/src/gui/editing.cpp index 3f6d4b1d..b9e03511 100644 --- a/src/gui/editing.cpp +++ b/src/gui/editing.cpp @@ -245,14 +245,22 @@ void FurnaceGUI::doPullDelete() { updateScroll(cursor.y); } - int iCoarse=selStart.xCoarse; - int iFine=selStart.xFine; - for (; iCoarse<=selEnd.xCoarse; iCoarse++) { + SelectionPoint sStart=selStart; + SelectionPoint sEnd=selEnd; + + if (selStart.xCoarse==selEnd.xCoarse && selStart.xFine==selEnd.xFine && selStart.y==selEnd.y && settings.pullDeleteRow) { + sStart.xFine=0; + sEnd.xFine=2+e->curPat[sEnd.xCoarse].effectCols*2; + } + + int iCoarse=sStart.xCoarse; + int iFine=sStart.xFine; + for (; iCoarse<=sEnd.xCoarse; iCoarse++) { if (!e->curSubSong->chanShow[iCoarse]) continue; DivPattern* pat=e->curPat[iCoarse].getPattern(e->curOrders->ord[iCoarse][curOrder],true); - for (; iFine<3+e->curPat[iCoarse].effectCols*2 && (iCoarsecurPat[iCoarse].effectCols*2 && (iCoarsecurSubSong->patLen; j++) { + for (int j=sStart.y; jcurSubSong->patLen; j++) { if (jcurSubSong->patLen-1) { if (iFine==0) { pat->data[j][iFine]=pat->data[j+1][iFine]; @@ -280,7 +288,7 @@ void FurnaceGUI::doInsert() { SelectionPoint sStart=selStart; SelectionPoint sEnd=selEnd; - if (selStart.xCoarse==selEnd.xCoarse && selStart.xFine==selEnd.xFine && selStart.y==selEnd.y) { + if (selStart.xCoarse==selEnd.xCoarse && selStart.xFine==selEnd.xFine && selStart.y==selEnd.y && settings.insertBehavior) { sStart.xFine=0; sEnd.xFine=2+e->curPat[sEnd.xCoarse].effectCols*2; } diff --git a/src/gui/gui.h b/src/gui/gui.h index 48169b83..f5b58109 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1497,6 +1497,7 @@ class FurnaceGUI { int newPatternFormat; int renderClearPos; int insertBehavior; + int pullDeleteRow; unsigned int maxUndoSteps; String mainFontPath; String patFontPath; @@ -1647,6 +1648,7 @@ class FurnaceGUI { newPatternFormat(1), renderClearPos(0), insertBehavior(1), + pullDeleteRow(1), maxUndoSteps(100), mainFontPath(""), patFontPath(""), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index a442b430..9648de12 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -548,6 +548,11 @@ void FurnaceGUI::drawSettings() { settings.insertBehavior=insertBehaviorB; } + bool pullDeleteRowB=settings.pullDeleteRow; + if (ImGui::Checkbox("Pull delete affects entire channel row",&pullDeleteRowB)) { + settings.pullDeleteRow=pullDeleteRowB; + } + bool absorbInsInputB=settings.absorbInsInput; if (ImGui::Checkbox("Change current instrument when changing instrument column (absorb)",&absorbInsInputB)) { settings.absorbInsInput=absorbInsInputB; @@ -2743,6 +2748,7 @@ void FurnaceGUI::syncSettings() { settings.renderBackend=e->getConfString("renderBackend","SDL"); settings.renderClearPos=e->getConfInt("renderClearPos",0); settings.insertBehavior=e->getConfInt("insertBehavior",1); + settings.pullDeleteRow=e->getConfInt("pullDeleteRow",1); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -2867,6 +2873,7 @@ void FurnaceGUI::syncSettings() { clampSetting(settings.newPatternFormat,0,1); clampSetting(settings.renderClearPos,0,1); clampSetting(settings.insertBehavior,0,1); + clampSetting(settings.pullDeleteRow,0,1); if (settings.exportLoops<0.0) settings.exportLoops=0.0; if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0; @@ -3087,6 +3094,7 @@ void FurnaceGUI::commitSettings() { e->setConf("renderBackend",settings.renderBackend); e->setConf("renderClearPos",settings.renderClearPos); e->setConf("insertBehavior",settings.insertBehavior); + e->setConf("pullDeleteRow",settings.pullDeleteRow); // colors for (int i=0; i Date: Sat, 10 Jun 2023 16:13:24 -0500 Subject: [PATCH 052/183] IGFD: wow memory corruption right there --- extern/igfd/ImGuiFileDialog.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index 90dc2c4d..4af6ca44 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -1189,7 +1189,7 @@ namespace IGFD IGFD::FileManager::FileManager() { puFsRoot = std::string(1u, PATH_SEP); - for (int i=0; i<5; i++) { + for (int i=0; i<4; i++) { puSortingDirection[i]=true; } } From 6bc4877417f3e0050109e613ff9da51268e8370c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 17:34:30 -0500 Subject: [PATCH 053/183] PC speaker: fix volume macro issue #1147 --- src/engine/platform/pcspkr.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/pcspkr.cpp b/src/engine/platform/pcspkr.cpp index 9694b66c..a275c635 100644 --- a/src/engine/platform/pcspkr.cpp +++ b/src/engine/platform/pcspkr.cpp @@ -366,8 +366,10 @@ void DivPlatformPCSpeaker::tick(bool sysTick) { chan[i].freq=parent->calcFreq(chan[i].baseFreq,chan[i].pitch,chan[i].fixedArp?chan[i].baseNoteOverride:chan[i].arpOff,chan[i].fixedArp,true,0,chan[i].pitch2,chipClock,CHIP_DIVIDER)-1; if (chan[i].freq<0) chan[i].freq=0; if (chan[i].freq>65535) chan[i].freq=65535; - if (chan[i].keyOn) { - on=true; + if (!chan[i].std.vol.had) { + if (chan[i].keyOn) { + on=true; + } } if (chan[i].keyOff) { on=false; From 52d184cbf2982d2ca862ffc32b03bbfaf73b76b4 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Sat, 10 Jun 2023 16:05:07 -0700 Subject: [PATCH 054/183] documenting grooves --- doc/8-advanced/groove.png | Bin 0 -> 14642 bytes doc/8-advanced/grooves.md | 23 +++++++++++++++++++++++ doc/8-advanced/grooves.png | Bin 0 -> 28381 bytes 3 files changed, 23 insertions(+) create mode 100644 doc/8-advanced/groove.png create mode 100644 doc/8-advanced/grooves.png diff --git a/doc/8-advanced/groove.png b/doc/8-advanced/groove.png new file mode 100644 index 0000000000000000000000000000000000000000..bc4031b0856f77d04403bee36fed4dfaf1614878 GIT binary patch literal 14642 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 OnT+IBi5xNgyZ;3+UoqeS literal 0 HcmV?d00001 From 7c2803fae95753f74a3db5b2341feddf69db3bc0 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 19:22:26 -0500 Subject: [PATCH 055/183] update doc authors --- doc/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/README.md b/doc/README.md index d8a14be2..a59ce838 100644 --- a/doc/README.md +++ b/doc/README.md @@ -22,6 +22,7 @@ writers: - host12prog - WindowxDeveloper - polluks +- Electric Keet other: From 8264449c7ac8d20cd38f57c2633c8c405a585526 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 10 Jun 2023 19:22:44 -0500 Subject: [PATCH 056/183] GUI: remove double semicolon --- src/gui/gui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 3d8453c4..dd315ddf 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3489,7 +3489,7 @@ bool FurnaceGUI::loop() { int sampleCountBefore=e->song.sampleLen; std::vector instruments=e->instrumentFromFile(ev.drop.file); DivWavetable* droppedWave=NULL; - DivSample* droppedSample=NULL;; + DivSample* droppedSample=NULL; if (!instruments.empty()) { if (e->song.sampleLen!=sampleCountBefore) { e->renderSamplesP(); From 7012cd36abfbaa91042e32d306b421d9d8f50e28 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Sat, 10 Jun 2023 23:00:11 -0700 Subject: [PATCH 057/183] Instrument macro docs & images. --- doc/4-instrument/8930.md | 16 +++--- doc/4-instrument/README.md | 67 ++++++++++++++++++++++--- doc/4-instrument/amiga.md | 6 ++- doc/4-instrument/ay8910.md | 10 ++-- doc/4-instrument/c64.md | 19 ++++--- doc/4-instrument/fm.md | 2 +- doc/4-instrument/game-boy.md | 24 ++++++--- doc/4-instrument/lynx.md | 13 +++-- doc/4-instrument/macro-ADSR.png | Bin 0 -> 11379 bytes doc/4-instrument/macro-ADSRchart.png | Bin 0 -> 9285 bytes doc/4-instrument/macro-LFO.png | Bin 0 -> 7939 bytes doc/4-instrument/macro-button-ADSR.png | Bin 0 -> 395 bytes doc/4-instrument/macro-button-LFO.png | Bin 0 -> 350 bytes doc/4-instrument/macro-button-seq.png | Bin 0 -> 232 bytes doc/4-instrument/macro-seq.png | Bin 0 -> 11526 bytes doc/4-instrument/macroview.png | Bin 0 -> 3678 bytes doc/4-instrument/n163.md | 15 ++++-- doc/4-instrument/pce.md | 11 ++-- doc/4-instrument/saa.md | 9 ++-- doc/4-instrument/scc.md | 3 +- doc/4-instrument/standard.md | 11 ++-- doc/4-instrument/tia.md | 3 +- doc/4-instrument/vera.md | 6 ++- doc/4-instrument/vrc6.md | 5 +- 24 files changed, 160 insertions(+), 60 deletions(-) create mode 100644 doc/4-instrument/macro-ADSR.png create mode 100644 doc/4-instrument/macro-ADSRchart.png create mode 100644 doc/4-instrument/macro-LFO.png create mode 100644 doc/4-instrument/macro-button-ADSR.png create mode 100644 doc/4-instrument/macro-button-LFO.png create mode 100644 doc/4-instrument/macro-button-seq.png create mode 100644 doc/4-instrument/macro-seq.png create mode 100644 doc/4-instrument/macroview.png diff --git a/doc/4-instrument/8930.md b/doc/4-instrument/8930.md index d155a511..4a97999c 100644 --- a/doc/4-instrument/8930.md +++ b/doc/4-instrument/8930.md @@ -1,14 +1,16 @@ # AY8930 instrument editor -AY8930 instrument editor consists of 10 macros. +AY8930 instrument editor consists of these macros. - [Volume] - volume levels sequence - [Arpeggio]- pitch sequence -- [Noise frequency] - AY8930 noise generator frequency sequence +- [Noise Freq] - AY8930 noise generator frequency sequence - [Waveform] - selector of sound type - pulse wave tone, noise or envelope generator -- [Duty cycle] - duty cycle of a pulse wave sequence +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform +- [Duty] - duty cycle of a pulse wave sequence - [Envelope] - allows shaping an envelope -- [Auto envelope numerator] - sets the envelope to the channel's frequency multiplied by numerator -- [Auto envelope denominator] - sets the envelope to the channel's frequency multiplied by denominator -- [Noise AND mask] - alters the shape/frequency of the noise generator, allowing to produce various interesting sound effects and even PWM phasing -- [Noise OR mask] - see above +- [AutoEnv Num] - sets the envelope to the channel's frequency multiplied by numerator +- [AutoEnv Den] - sets the envelope to the channel's frequency multiplied by denominator +- [Noise AND Mask] - alters the shape/frequency of the noise generator, allowing to produce various interesting sound effects and even PWM phasing +- [Noise OR Mask] - see above diff --git a/doc/4-instrument/README.md b/doc/4-instrument/README.md index 58d7bac9..b119d123 100644 --- a/doc/4-instrument/README.md +++ b/doc/4-instrument/README.md @@ -30,16 +30,69 @@ depending on the instrument type, there are currently 13 different types of an i - [Namco 163](n163.md) - for use with Namco 163. - [Konami VRC6](vrc6.md) - for use with VRC6's PSG sound source. + + # macros -one common feature to instruments is macros (also known as sequences). +Macros are incredibly versatile tools for automating instrument effects. -these run on every tick and are useful for controlling parameters automatically. +After creating an instrument, open the Instrument Editor and select the "Macros" tab. There may be multiple macro tabs to control individual FM operators and such. -![macro view](macro.png) +![macro view](macroview.png) -to change the loop portion/point, click on the bar under the macro. -right click on it to disable macro loop. +The very first numeric entry sets the visible width of the bars in sequence-type macros. The scrollbar affects the view of all macros at once. There's a matching scrollbar at the bottom underneath all the macros. -to change the release point, shift-click the bar under the macro. -shift-right click on it to remove the release point. +Each macro has two buttons on the left. +- Macro type (explained below). +- Timing editor, which pops up a small dialog: + - Step Length (ticks): Determines how many ticks pass before each change of value. + - Delay: Delays the start of the macro until this many ticks have passed. + +## macro types + +Every macro can be defined though one of three methods, selectable by the leftmost button under the macro type label: + +- ![](macro-button-seq.png) **Sequence:** Displayed as a bar graph, this is a sequence of numeric values. +- ![](macro-button-ADSR.png) **ADSR:** This is a traditional ADSR envelope, defined by the rate of increase and decrease of value over time. +- ![](macro-button-LFO.png) **LFO:** The Low Frequency Oscillator generates a repeating wave of values. + +Some macros are "bitmap" style. They represent a number of "bits" that can be toggled individually, and the values listed represent the sum of which bits are turned on. + +### sequence + +![sequence macro editor](macro-seq.png) + +The number between the macro type label and the macro type button is the macro length in steps. The `-` and `+` buttons change the length of the macro. Start out by adding at least a few steps. + +The values of the macro can be drawn in the "bar graph box". Just beneath the box is shorter bar graph. +- Click to set the start point of a loop; the end point is the last value unless a release point is set. +- Shift-click to set the release point. When played, the macro will hold here until the note is released. + +Finally, the sequence of values can be directly edited in the text box at the bottom. +- The loop start is entered as a `|`. +- The release point is entered as a `/`. +- In arpeggio macros, a value starting with a `@` is an absolute note (instead of a relative shift). No matter the note played, `@` values will be played at that exact note. This is especially useful for noise instruments with preset periods. + +### ADSR + +![ADSR macro editor](macro-ADSR.png) + +![macro ADSR chart](macro-ADSRchart.png) + +- **Bottom** and **Top** determine the range of values generated by the macro. (Bottom can be larger than Top to invert the envelope!) All generated values will fall between these two points. +- **Attack** is how quickly the value goes from Bottom to Top. A 0 means nothing will change; a 255 instantly jumps to the Top value. +- **Hold** sets how many ticks the note will wait at Top before decay. +- **Decay** is how quickly the value moves to the Sustain level. +- **Sustain** is the where the value will stay while the note is held until SusTime has passed. +- **SusTime** is how many ticks until SusDecay. +- **SusDecay** is the rate at which the value moves toward Bottom while the note is held. +- **Release** is the rate at which the note changes once the note is released. + +### LFO + +![LFO macro editor](macro-LFO.png) + +- **Bottom** and **Top** determine the range of values generated by the macro. (Bottom can be larger than Top to invert the waveform!) +- **Speed** is how quickly the values change – the frequency of the oscillator. +- **Phase** is which part of the waveform the macro will start at, measured in 1/1024 increments. +- **Shape** is the waveform used. Triangle is the default, and Saw and Square are exactly as they say. diff --git a/doc/4-instrument/amiga.md b/doc/4-instrument/amiga.md index 9c9a86ac..3c748bb2 100644 --- a/doc/4-instrument/amiga.md +++ b/doc/4-instrument/amiga.md @@ -1,6 +1,6 @@ # Amiga/PCM sound sourceinstrument editor -PCM instrument editor consists of four macros and sample selector: +PCM instrument editor consists of a sample selector and several macros: # Amiga/sample @@ -11,3 +11,7 @@ PCM instrument editor consists of four macros and sample selector: - [Volume] - volume sequence WARNING: it works only on Amiga system, as of version 0.5.5!! - [Arpeggio] - pitch sequence - [Waveform] - sample sequence +- [Panning (left)] - output level for left channel +- [Panning (right)] - output level for right channel +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform \ No newline at end of file diff --git a/doc/4-instrument/ay8910.md b/doc/4-instrument/ay8910.md index 732d4e5e..a5acc2f1 100644 --- a/doc/4-instrument/ay8910.md +++ b/doc/4-instrument/ay8910.md @@ -1,11 +1,13 @@ # AY-3-8910 instrument editor -AY-3-8910 instrument editor consists of 7 macros. +AY-3-8910 instrument editor consists of these macros. - [Volume] - volume levels sequence - [Arpeggio]- pitch sequence -- [Noise frequency] - AY-3-8910 noise generator frequency sequence +- [Noise Freq] - AY-3-8910 noise generator frequency sequence - [Waveform] - selector of sound type - square wave tone, noise or envelope generator +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform - [Envelope] - allows shaping an envelope -- [Auto envelope numerator] - sets the envelope to the channel's frequency multiplied by numerator -- [Auto envelope denominator] - ets the envelope to the channel's frequency multiplied by denominator +- [AutoEnv Num] - sets the envelope to the channel's frequency multiplied by numerator +- [AutoEnv Den] - sets the envelope to the channel's frequency multiplied by denominator diff --git a/doc/4-instrument/c64.md b/doc/4-instrument/c64.md index 9d612f47..8c4ca86a 100644 --- a/doc/4-instrument/c64.md +++ b/doc/4-instrument/c64.md @@ -1,8 +1,9 @@ # C64 SID instrument editor -C64 instrument editor consists of two tabs: one controlling various parameters of sound channels and macro tab containing seven macros: +The C64 instrument editor consists of two tabs: "C64" to control various parameters of sound channels, and "Macros" containing several macros. ## C64 + - [Waveform] - allows selecting a waveform. NOTE: more than one waveform can be selected at once, logical AND mix of waves will be produced, with an exception of a noise waveform, it can't be mixed. - [Attack] - determines the rising time for the sound. The bigger the value, the slower the attack. (0-15 range) - [Decay]- Determines the diminishing time for the sound. The higher the value, the longer the decay. It's the initial amplitude decay rate. (0-15 range) @@ -15,16 +16,20 @@ C64 instrument editor consists of two tabs: one controlling various parameters o - [Initialize filter] - initializes the filter with the specified parameters: - [Cutoff] - defines the "intensity" of a filter, to put in in layman terms (0-2047 range) - [Resonance] - defines an additional controlled amplification of that cutoff frequency, creating a secondary peak forms and colors the original pitch. (0-15 range) -- [Filter mode] - determined the filter mode NOTE: SID's filter is muliti-mode, you can mix different modes together (like low and high-pass filters at once) CH3-OFF disables the channel 3, for no reason whatsoever lmao -- [Volume Macrio is a Cutoff macro] - turns a volume macro in a macros tab into a filter cutoff macro. -- [Absolute Cutoff macro] - changes the behaviour of a cutoff macro from the old-style, compatible to much more define-able. -- [Absolute Duty macro] - changes the behaviour of a duty cycle macro from the old-style, compatible to much more define-able. +- [Filter mode] - determined the filter mode NOTE: SID's filter is multi-mode, you can mix different modes together (like low and high-pass filters at once) CH3-OFF disables the channel 3, for no reason whatsoever lmao +- [Volume Macro is Cutoff Macro] - turns a volume macro in a macros tab into a filter cutoff macro. +- [Absolute Cutoff Macro] - changes the behaviour of a cutoff macro from the old-style, compatible to much more define-able. +- [Absolute Duty Macro] - changes the behaviour of a duty cycle macro from the old-style, compatible to much more define-able. +- [Don't test/gate before new note] - (document this) ## Macros -- [Volume/Cutoff] - volume sequence (WARNING: Volume sequence is global for ALL three channels!!) + +- [Volume] - volume sequence (WARNING: Volume sequence is global for ALL three channels!!) - [Arpeggio] - pitch sequence -- [Duty cycle] - pulse duty cycle sequence +- [Duty] - pulse duty cycle sequence - [Waveform] - select the waveform used by instrument +- [Pitch] - fine pitch - [Filter mode] - select the filter mode/sequence - [Resonance] - filter resonance sequence - [Special] - ring and oscillator sync selector +- [Test/Gate] - (document this) \ No newline at end of file diff --git a/doc/4-instrument/fm.md b/doc/4-instrument/fm.md index 68c8f32d..31de4de8 100644 --- a/doc/4-instrument/fm.md +++ b/doc/4-instrument/fm.md @@ -12,7 +12,7 @@ FM editor is divided into 7 tabs: ## FM -FM synthesizers Furnace supports are for-operator, meaning it takes four oscillators to produce a single sound. Each operator is controlled by a dozen of sliders: +FM synthesizers Furnace supports are four-operator, meaning it takes four oscillators to produce a single sound. Each operator is controlled by a dozen sliders: - [Attack Rate (AR)] - determines the rising time for the sound. The bigger the value, the faster the attack. (0-31 range) - [Decay Rate (DR)]- Determines the diminishing time for the sound. The higher the value, the shorter the decay. It's the initial amplitude decay rate. (0-31 range) diff --git a/doc/4-instrument/game-boy.md b/doc/4-instrument/game-boy.md index 69401cb0..0b5ace25 100644 --- a/doc/4-instrument/game-boy.md +++ b/doc/4-instrument/game-boy.md @@ -1,17 +1,25 @@ # Game Boy instrument editor -GB instrument editor consists of two tabs: one controlling envelope of sound channels and macro tab containing only four macros: +GB instrument editor consists of two tabs: one controlling envelope of sound channels and macro tab containing several macros. ## Game Boy -- [Volume] - this slider affect the channel volume (range 0-15) -- [Envelope length] - this slider specifies the envelope decay/attack (range 0-7) -- [Sound length] - this slider cuts off the sound after specified length, overriding the previous slider's value +- [Use software envelope] - switch to volume macro instead of envelope +- [Initialize envelope on every note] - forces a volume reset on each new note +- [Volume] - initial channel volume (range 0-15) +- [Length] - envelope decay/attack duration (range 0-7) +- [Sound Length] - cuts off sound after specified length, overriding the Length value -- [UP an DOWN radio buttons] - these buttons alter the behaviour of a second slider. Up makes it specify the envelope attack, down the decay. WARNING: for envelope attack to have any effect, volume should be at the lower rates! +- [Up and Down radio buttons] - Up makes the envelope an attack, down makes it decay. _Note:_ For envelope attack to have any effect, volume should start at a lower value! + +- [Hardware Sequence] - (document this) ## Macros -- [Volume] - volume sequence -- [Arpeggio] - pitch sequence -- [Duty cycle] - pulse wave channels duty cycle sequence + +- [Volume] - volume sequence. _Note:_ This only appears if "Use software envelope" is checked. +- [Arpeggio] - pitch in half-steps +- [Duty/Noise] - pulse wave duty cycle or noise mode sequence - [Waveform] - ch3 wavetable sequence +- [Panning] - output for left and right channels +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform diff --git a/doc/4-instrument/lynx.md b/doc/4-instrument/lynx.md index 5badd47f..b181e8e2 100644 --- a/doc/4-instrument/lynx.md +++ b/doc/4-instrument/lynx.md @@ -1,15 +1,18 @@ # Atari Lynx instrument editor -Atari Lynx instrument editor consists of only three macros: +Atari Lynx instrument editor consists of these macros: - [Volume] - volume sequence -- [Arpeggio] - pitch sequencer -- [Duty/Int] - bit pattern for LFSR taps and integration. +- [Arpeggio] - pitch in half-steps +- [Duty/Int] - bit pattern for LFSR taps and integration +- [Panning (left)] - output level for left channel +- [Panning (right)] - output level for right channel +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform ## Audio generation description -Atari Lynx to generate sound uses 12-bit linear feedback shift register with configurable tap. Nine separate bits can be enable to be the source of feedback. -Namely bits 0, 1, 2, 3, 4, 5, 7, 10 and 11. To generate ANY sound at least one bit MUST be enable. +Atari Lynx generates sound using a 12-bit linear feedback shift register with configurable tap. Nine separate bits can be enabled to be the source of feedback: 0, 1, 2, 3, 4, 5, 7, 10 and 11. To generate _any_ sound at least one bit _must_ be enabled. ### Square wave diff --git a/doc/4-instrument/macro-ADSR.png b/doc/4-instrument/macro-ADSR.png new file mode 100644 index 0000000000000000000000000000000000000000..e514a85bb95ddbd1accdae7dcc3495b871c39763 GIT binary patch literal 11379 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 tkPY~jfF*z>U;o literal 0 HcmV?d00001 diff --git a/doc/4-instrument/macro-button-LFO.png b/doc/4-instrument/macro-button-LFO.png new file mode 100644 index 0000000000000000000000000000000000000000..e02e94f93e91aefb49263358054c4f0415f90344 GIT binary patch literal 350 zcmV-k0iphhP)gwvGq@>~D;jyu?WMpJ~e0()E zHBL@WP*6~(r>EuREpLKP0-QC^m>+7zru0KCN^YimQK0f;T`nQH3 zBme*aut`KgRCr$P)Yl3EF%X5}N#ADgy}bWJ%5oNmy>T)k3hIBI4-O=RzP-Ahl0IYX z=hbA0_H&JzH3nIYqHs_uw0K4(^+F)M0&?pN<+r;&ilGse9~l>Wh$t*qkCiWRl9Bi} zfWSlq)y+e0BO)lwYMeHq)$ literal 0 HcmV?d00001 diff --git a/doc/4-instrument/macro-button-seq.png b/doc/4-instrument/macro-button-seq.png new file mode 100644 index 0000000000000000000000000000000000000000..916153d5c4a0aebbb5f1e6e6357aca6518800362 GIT binary patch literal 232 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 C3!KdW literal 0 HcmV?d00001 diff --git a/doc/4-instrument/macroview.png b/doc/4-instrument/macroview.png new file mode 100644 index 0000000000000000000000000000000000000000..d2bd5971819b5ee375e3a5936e31d6bd05b1cad7 GIT binary patch literal 3678 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 literal 0 HcmV?d00001 diff --git a/doc/4-instrument/n163.md b/doc/4-instrument/n163.md index ca4dd2e7..317d336e 100644 --- a/doc/4-instrument/n163.md +++ b/doc/4-instrument/n163.md @@ -3,21 +3,28 @@ Namco 163 instrument editor consists of two tabs: one controlling various parameters for waveform initialize and macro tab containing 10 macros. ## Namco 163 -- [Initial Waveform] - Determines the initial waveform for playing. -- [Initial Waveform position in RAM] - Determines the initial waveform position will be load to RAM. -- [Initial Waveform length in RAM] - Determines the initial waveform length will be load to RAM. + +- [Waveform] - Determines the initial waveform for playing. +- [Offset] - Determines the initial waveform position will be load to RAM. +- [Length] - Determines the initial waveform length will be load to RAM. - [Load waveform before playback] - Determines the load initial waveform into RAM before playback. - [Update waveforms into RAM when every waveform changes] - Determines the update every different waveform changes in playback. ## Macros + - [Volume] - volume levels sequence - [Arpeggio]- pitch sequence -- [Waveform pos.] - sets the waveform source address in RAM for playback (single nibble unit) - [Waveform] - sets waveform source for playback immediately or update later +- [Panning] - output for left and right channels +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform + \ No newline at end of file diff --git a/doc/4-instrument/pce.md b/doc/4-instrument/pce.md index ac0a6824..12b425c2 100644 --- a/doc/4-instrument/pce.md +++ b/doc/4-instrument/pce.md @@ -1,9 +1,14 @@ # NEC PC Engine instrument editor -PCE instrument editor consists of only three macros, almost like TIA: +PCE instrument editor consists of these macros: - [Volume] - volume sequence -- [Arpeggio] - pitch sequence -- [Waveform] - spicifies wavetables sequence +- [Arpeggio] - pitch in half-steps +- [Noise] - enable noise mode (ch5 and ch6 only) +- [Waveform] - wavetable sequence +- [Panning (left)] - output level for left channel +- [Panning (right)] - output level for right channel +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform It also has wavetable synthesizer support, but unfortunately, it clicks a lot when in use on the HuC6280. diff --git a/doc/4-instrument/saa.md b/doc/4-instrument/saa.md index cdfc3557..92583fb0 100644 --- a/doc/4-instrument/saa.md +++ b/doc/4-instrument/saa.md @@ -1,9 +1,12 @@ # Philips SAA1099 instrument editor -SAA1099 instrument editor consists of five macros: +SAA1099 instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequence -- [Duty cycle/ Noise] - noise generator frequency +- [Duty/Noise] - noise generator frequency - [Waveform] - selector between tone and noise -- [Envelope] - specifies the envelope generator shape +- [Panning (left)] - output level for left channel +- [Panning (right)] - output level for right channel +- [Pitch] - fine pitch +- [Envelope] - envelope generator shape diff --git a/doc/4-instrument/scc.md b/doc/4-instrument/scc.md index 2650e0a3..06eccd6a 100644 --- a/doc/4-instrument/scc.md +++ b/doc/4-instrument/scc.md @@ -1,7 +1,8 @@ # Konami SCC/Bubble System WSG instrument editor -SCC/Bubble System WSG instrument editor consists of only three macros: +SCC/Bubble System WSG instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequence - [Waveform] - spicifies wavetables sequence +- [Pitch] - fine pitch diff --git a/doc/4-instrument/standard.md b/doc/4-instrument/standard.md index 5f116c74..0cf7a729 100644 --- a/doc/4-instrument/standard.md +++ b/doc/4-instrument/standard.md @@ -1,7 +1,10 @@ # Standard instrument editor -SMS and NES instrument editor consists of only three macros: +The instrument editor for NES and PSG (SMS, MSX, and such) consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequencr -- [Duty cycle] - spicifies duty cycle and noise mode for NES channels NOTE: it obviously has no effect on Sega Master System +- [Volume] - volume +- [Arpeggio] - pitch in half-steps +- [Duty] - duty cycle and noise mode for NES channels. _Note:_ This has no effect on Sega Master System. +- [Panning] - output for left and right channels +- [Pitch] - fine pitch +- [Phase Reset] - trigger restart of waveform \ No newline at end of file diff --git a/doc/4-instrument/tia.md b/doc/4-instrument/tia.md index 41fffd38..1efd14bf 100644 --- a/doc/4-instrument/tia.md +++ b/doc/4-instrument/tia.md @@ -1,7 +1,8 @@ # Atari TIA instrument editor -TIA instrument editor consists of only three macros: +TIA instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequencr - [Waveform] - 1-bit polynomial pattern type sequence +- [Pitch] - "fine" pitch diff --git a/doc/4-instrument/vera.md b/doc/4-instrument/vera.md index b577ccd2..ed6cbbec 100644 --- a/doc/4-instrument/vera.md +++ b/doc/4-instrument/vera.md @@ -1,8 +1,10 @@ # VERA instrument editor -VERA instrument editor consists of only four macros: +VERA instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequence -- [Duty cycle] - pulse duty cycle sequence +- [Duty] - pulse duty cycle sequence - [Waveform] - select the waveform used by instrument +- [Panning] - output for left and right channels +- [Pitch] - fine pitch diff --git a/doc/4-instrument/vrc6.md b/doc/4-instrument/vrc6.md index bd87e050..4a8e86ae 100644 --- a/doc/4-instrument/vrc6.md +++ b/doc/4-instrument/vrc6.md @@ -1,10 +1,11 @@ # VRC6 instrument editor -The VRC6 (regular) instrument editor consists of only three macros: +The VRC6 (regular) instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequence -- [Duty cycle] - specifies duty cycle for pulse wave channels +- [Duty] - specifies duty cycle for pulse wave channels +- [Pitch] - fine pitch ## VRC6 (saw) instrument editor From b6f37efe55d03048cbf0ba8f0910a9bda74b7e69 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Sat, 10 Jun 2023 23:14:45 -0700 Subject: [PATCH 058/183] A little more instrument docs cleanup. --- doc/4-instrument/8930.md | 6 +++--- doc/4-instrument/README.md | 14 +++++++------- doc/4-instrument/amiga.md | 2 +- doc/4-instrument/ay8910.md | 2 +- doc/4-instrument/game-boy.md | 2 +- doc/4-instrument/n163.md | 2 +- doc/4-instrument/pce.md | 2 +- doc/4-instrument/saa.md | 2 +- doc/4-instrument/scc.md | 2 +- doc/4-instrument/tia.md | 2 +- 10 files changed, 18 insertions(+), 18 deletions(-) diff --git a/doc/4-instrument/8930.md b/doc/4-instrument/8930.md index 4a97999c..ca57def9 100644 --- a/doc/4-instrument/8930.md +++ b/doc/4-instrument/8930.md @@ -2,10 +2,10 @@ AY8930 instrument editor consists of these macros. -- [Volume] - volume levels sequence -- [Arpeggio]- pitch sequence +- [Volume] - volume sequence +- [Arpeggio]- pitch in half-steps - [Noise Freq] - AY8930 noise generator frequency sequence -- [Waveform] - selector of sound type - pulse wave tone, noise or envelope generator +- [Waveform] - selector of sound type: pulse wave tone, noise or envelope generator - [Pitch] - fine pitch - [Phase Reset] - trigger restart of waveform - [Duty] - duty cycle of a pulse wave sequence diff --git a/doc/4-instrument/README.md b/doc/4-instrument/README.md index b119d123..d359441e 100644 --- a/doc/4-instrument/README.md +++ b/doc/4-instrument/README.md @@ -34,7 +34,7 @@ depending on the instrument type, there are currently 13 different types of an i # macros -Macros are incredibly versatile tools for automating instrument effects. +Macros are incredibly versatile tools for automating instrument parameters. After creating an instrument, open the Instrument Editor and select the "Macros" tab. There may be multiple macro tabs to control individual FM operators and such. @@ -50,7 +50,7 @@ Each macro has two buttons on the left. ## macro types -Every macro can be defined though one of three methods, selectable by the leftmost button under the macro type label: +Every macro can be defined though one of three methods, selectable with the leftmost button under the macro type label: - ![](macro-button-seq.png) **Sequence:** Displayed as a bar graph, this is a sequence of numeric values. - ![](macro-button-ADSR.png) **ADSR:** This is a traditional ADSR envelope, defined by the rate of increase and decrease of value over time. @@ -65,8 +65,8 @@ Some macros are "bitmap" style. They represent a number of "bits" that can be to The number between the macro type label and the macro type button is the macro length in steps. The `-` and `+` buttons change the length of the macro. Start out by adding at least a few steps. The values of the macro can be drawn in the "bar graph box". Just beneath the box is shorter bar graph. -- Click to set the start point of a loop; the end point is the last value unless a release point is set. -- Shift-click to set the release point. When played, the macro will hold here until the note is released. +- Click to set the start point of a loop; the end point is the last value or release point. Right-click to remove the loop. +- Shift-click to set the release point. When played, the macro will hold here until the note is released. Right-click to remove the release point. Finally, the sequence of values can be directly edited in the text box at the bottom. - The loop start is entered as a `|`. @@ -77,8 +77,6 @@ Finally, the sequence of values can be directly edited in the text box at the bo ![ADSR macro editor](macro-ADSR.png) -![macro ADSR chart](macro-ADSRchart.png) - - **Bottom** and **Top** determine the range of values generated by the macro. (Bottom can be larger than Top to invert the envelope!) All generated values will fall between these two points. - **Attack** is how quickly the value goes from Bottom to Top. A 0 means nothing will change; a 255 instantly jumps to the Top value. - **Hold** sets how many ticks the note will wait at Top before decay. @@ -86,7 +84,9 @@ Finally, the sequence of values can be directly edited in the text box at the bo - **Sustain** is the where the value will stay while the note is held until SusTime has passed. - **SusTime** is how many ticks until SusDecay. - **SusDecay** is the rate at which the value moves toward Bottom while the note is held. -- **Release** is the rate at which the note changes once the note is released. +- **Release** is the rate at which the value moves toward Bottom after the note is released. + +![macro ADSR chart](macro-ADSRchart.png) ### LFO diff --git a/doc/4-instrument/amiga.md b/doc/4-instrument/amiga.md index 3c748bb2..6b8d81cd 100644 --- a/doc/4-instrument/amiga.md +++ b/doc/4-instrument/amiga.md @@ -1,6 +1,6 @@ # Amiga/PCM sound sourceinstrument editor -PCM instrument editor consists of a sample selector and several macros: +The PCM instrument editor consists of a sample selector and several macros: # Amiga/sample diff --git a/doc/4-instrument/ay8910.md b/doc/4-instrument/ay8910.md index a5acc2f1..c5ec5e98 100644 --- a/doc/4-instrument/ay8910.md +++ b/doc/4-instrument/ay8910.md @@ -1,6 +1,6 @@ # AY-3-8910 instrument editor -AY-3-8910 instrument editor consists of these macros. +The AY-3-8910 instrument editor consists of these macros. - [Volume] - volume levels sequence - [Arpeggio]- pitch sequence diff --git a/doc/4-instrument/game-boy.md b/doc/4-instrument/game-boy.md index 0b5ace25..d3da0776 100644 --- a/doc/4-instrument/game-boy.md +++ b/doc/4-instrument/game-boy.md @@ -10,7 +10,7 @@ GB instrument editor consists of two tabs: one controlling envelope of sound cha - [Length] - envelope decay/attack duration (range 0-7) - [Sound Length] - cuts off sound after specified length, overriding the Length value -- [Up and Down radio buttons] - Up makes the envelope an attack, down makes it decay. _Note:_ For envelope attack to have any effect, volume should start at a lower value! +- [Up and Down radio buttons] - Up makes the envelope an attack, down makes it decay. _Note:_ For envelope attack to have any effect, start at a lower volume! - [Hardware Sequence] - (document this) diff --git a/doc/4-instrument/n163.md b/doc/4-instrument/n163.md index 317d336e..88a7b4ca 100644 --- a/doc/4-instrument/n163.md +++ b/doc/4-instrument/n163.md @@ -1,6 +1,6 @@ # Namco 163 instrument editor -Namco 163 instrument editor consists of two tabs: one controlling various parameters for waveform initialize and macro tab containing 10 macros. +The Namco 163 instrument editor consists of two tabs: "Namco 163" for control of various waveform parameters, and "Macro" containing seveeral macros. ## Namco 163 diff --git a/doc/4-instrument/pce.md b/doc/4-instrument/pce.md index 12b425c2..96a910af 100644 --- a/doc/4-instrument/pce.md +++ b/doc/4-instrument/pce.md @@ -1,6 +1,6 @@ # NEC PC Engine instrument editor -PCE instrument editor consists of these macros: +The PCE instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch in half-steps diff --git a/doc/4-instrument/saa.md b/doc/4-instrument/saa.md index 92583fb0..4e6f76a7 100644 --- a/doc/4-instrument/saa.md +++ b/doc/4-instrument/saa.md @@ -1,6 +1,6 @@ # Philips SAA1099 instrument editor -SAA1099 instrument editor consists of these macros: +The SAA1099 instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequence diff --git a/doc/4-instrument/scc.md b/doc/4-instrument/scc.md index 06eccd6a..33d5f341 100644 --- a/doc/4-instrument/scc.md +++ b/doc/4-instrument/scc.md @@ -1,6 +1,6 @@ # Konami SCC/Bubble System WSG instrument editor -SCC/Bubble System WSG instrument editor consists of these macros: +The SCC/Bubble System WSG instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequence diff --git a/doc/4-instrument/tia.md b/doc/4-instrument/tia.md index 1efd14bf..c80dc42a 100644 --- a/doc/4-instrument/tia.md +++ b/doc/4-instrument/tia.md @@ -1,6 +1,6 @@ # Atari TIA instrument editor -TIA instrument editor consists of these macros: +The TIA instrument editor consists of these macros: - [Volume] - volume sequence - [Arpeggio] - pitch sequencr From 6ac0aea231ae0fab46964e9c7fd8629aa678c8ab Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Sun, 11 Jun 2023 11:15:09 -0700 Subject: [PATCH 059/183] Two more tweaks. --- doc/4-instrument/c64.md | 8 ++++---- doc/4-instrument/n163.md | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/4-instrument/c64.md b/doc/4-instrument/c64.md index 8c4ca86a..2f3a9737 100644 --- a/doc/4-instrument/c64.md +++ b/doc/4-instrument/c64.md @@ -7,7 +7,7 @@ The C64 instrument editor consists of two tabs: "C64" to control various paramet - [Waveform] - allows selecting a waveform. NOTE: more than one waveform can be selected at once, logical AND mix of waves will be produced, with an exception of a noise waveform, it can't be mixed. - [Attack] - determines the rising time for the sound. The bigger the value, the slower the attack. (0-15 range) - [Decay]- Determines the diminishing time for the sound. The higher the value, the longer the decay. It's the initial amplitude decay rate. (0-15 range) -- [Sustain] - Determines the diminishing time for the sound. The higher the value, the longer the decay. This is the long "tail" of the sound that continues as long as the key is depressed. (0-15 range) +- [Sustain] - Sets the volume level at which the sound stops decaying and holds steady. (0-15 range) - [Release] - Determines the rate at which the sound disappears after KEY-OFF. The higher the value, the longer the release. (0-15 range) - [Ring Modulation] - enables the ring modulation affecting the instrument. - [Duty] - specifies the width of a pulse wave. (0-4095 range) @@ -19,8 +19,8 @@ The C64 instrument editor consists of two tabs: "C64" to control various paramet - [Filter mode] - determined the filter mode NOTE: SID's filter is multi-mode, you can mix different modes together (like low and high-pass filters at once) CH3-OFF disables the channel 3, for no reason whatsoever lmao - [Volume Macro is Cutoff Macro] - turns a volume macro in a macros tab into a filter cutoff macro. - [Absolute Cutoff Macro] - changes the behaviour of a cutoff macro from the old-style, compatible to much more define-able. -- [Absolute Duty Macro] - changes the behaviour of a duty cycle macro from the old-style, compatible to much more define-able. -- [Don't test/gate before new note] - (document this) +- [Absolute Duty Macro] - changes the behaviour of a duty cycle macro from the old-style, compatible to much more definable. +- [Don't test/gate before new note] - Don't reset the envelope to zero when a new note starts. (Read "Test/Gate" below for more info.) ## Macros @@ -32,4 +32,4 @@ The C64 instrument editor consists of two tabs: "C64" to control various paramet - [Filter mode] - select the filter mode/sequence - [Resonance] - filter resonance sequence - [Special] - ring and oscillator sync selector -- [Test/Gate] - (document this) \ No newline at end of file +- [Test/Gate] - When on, the TEST bit resets and locks Oscillator 1 at zero until cleared. The GATE bit controls Oscillator 1's envelope: Gate on runs through the envelope's attack, delay, and sustain; Gate off is envelope release. \ No newline at end of file diff --git a/doc/4-instrument/n163.md b/doc/4-instrument/n163.md index 88a7b4ca..4cd12261 100644 --- a/doc/4-instrument/n163.md +++ b/doc/4-instrument/n163.md @@ -1,6 +1,6 @@ # Namco 163 instrument editor -The Namco 163 instrument editor consists of two tabs: "Namco 163" for control of various waveform parameters, and "Macro" containing seveeral macros. +The Namco 163 instrument editor consists of two tabs: "Namco 163" for control of various waveform parameters, and "Macro" containing several macros. ## Namco 163 From d6f986abb13b076d41d02efe5b6a41c71bea97a2 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 11 Jun 2023 14:33:58 -0500 Subject: [PATCH 060/183] fix the chan osc --- src/gui/chanOsc.cpp | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index d2ccfb90..9e67ef8f 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -346,14 +346,18 @@ void FurnaceGUI::drawChanOsc() { ImRect rect=ImRect(minArea,maxArea); ImRect inRect=rect; inRect.Min.x+=dpiScale; - inRect.Min.y+=dpiScale; + inRect.Min.y+=3.0*dpiScale; inRect.Max.x-=dpiScale; - inRect.Max.y-=dpiScale; + inRect.Max.y-=3.0*dpiScale; + + int precision=inRect.Max.x-inRect.Min.x; + if (precision>512) precision=512; + ImGui::ItemSize(size,style.FramePadding.y); if (ImGui::ItemAdd(rect,ImGui::GetID("chOscDisplay"))) { if (!e->isRunning()) { - for (unsigned short i=0; i<512; i++) { - float x=(float)i/512.0f; + for (unsigned short i=0; idata[(unsigned short)(needlePos+(i*displaySize/512))]/65536.0f; + for (unsigned short i=0; idata[(unsigned short)(needlePos+(i*displaySize/precision))]/65536.0f; if (minLevel>y) minLevel=y; if (maxLeveldata[(unsigned short)(needlePos+(i*displaySize/512))]/65536.0f; + for (unsigned short i=0; idata[(unsigned short)(needlePos+(i*displaySize/precision))]/65536.0f; y-=dcOff; if (y<-0.5f) y=-0.5f; if (y>0.5f) y=0.5f; @@ -419,7 +423,7 @@ void FurnaceGUI::drawChanOsc() { color=chanOscGrad.get(xVal,1.0f-yVal); } - dl->AddPolyline(waveform,512,color,ImDrawFlags_None,dpiScale); + dl->AddPolyline(waveform,precision,color,ImDrawFlags_None,dpiScale); } } } From c89b733188c69f878025187f4f2c379647aae214 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 11 Jun 2023 15:28:01 -0500 Subject: [PATCH 061/183] fix possible division by zero --- src/gui/chanOsc.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index 9e67ef8f..0813ec48 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -351,6 +351,7 @@ void FurnaceGUI::drawChanOsc() { inRect.Max.y-=3.0*dpiScale; int precision=inRect.Max.x-inRect.Min.x; + if (precision<1) precision=1; if (precision>512) precision=512; ImGui::ItemSize(size,style.FramePadding.y); From c51413fe37c3c5799986faa209295e5cc4d9925c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 11 Jun 2023 17:23:20 -0500 Subject: [PATCH 062/183] GUI: I can just use ClipRect... --- src/gui/chanOsc.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index 0813ec48..3e580524 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -346,9 +346,9 @@ void FurnaceGUI::drawChanOsc() { ImRect rect=ImRect(minArea,maxArea); ImRect inRect=rect; inRect.Min.x+=dpiScale; - inRect.Min.y+=3.0*dpiScale; + inRect.Min.y+=2.0*dpiScale; inRect.Max.x-=dpiScale; - inRect.Max.y-=3.0*dpiScale; + inRect.Max.y-=2.0*dpiScale; int precision=inRect.Max.x-inRect.Min.x; if (precision<1) precision=1; @@ -424,7 +424,9 @@ void FurnaceGUI::drawChanOsc() { color=chanOscGrad.get(xVal,1.0f-yVal); } + ImGui::PushClipRect(inRect.Min,inRect.Max,false); dl->AddPolyline(waveform,precision,color,ImDrawFlags_None,dpiScale); + ImGui::PopClipRect(); } } } From 7f0dc576d871e2e2e36240c2ba9dcc06e3fbe186 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 11 Jun 2023 18:20:07 -0500 Subject: [PATCH 063/183] GUI: possibly fix asset name carry-over issue issue #1155 --- src/gui/insEdit.cpp | 2 ++ src/gui/intro.cpp | 1 + src/gui/sampleEdit.cpp | 2 ++ 3 files changed, 5 insertions(+) diff --git a/src/gui/insEdit.cpp b/src/gui/insEdit.cpp index e02f3969..ca254d2c 100644 --- a/src/gui/insEdit.cpp +++ b/src/gui/insEdit.cpp @@ -2262,9 +2262,11 @@ void FurnaceGUI::drawInsEdit() { ImGui::TableNextColumn(); ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x); + ImGui::PushID(2+curIns); if (ImGui::InputText("##Name",&ins->name)) { MARK_MODIFIED; } + ImGui::PopID(); ImGui::TableNextRow(); ImGui::TableNextColumn(); diff --git a/src/gui/intro.cpp b/src/gui/intro.cpp index db886316..42d36957 100644 --- a/src/gui/intro.cpp +++ b/src/gui/intro.cpp @@ -95,6 +95,7 @@ void FurnaceGUI::endIntroTune() { selEnd=SelectionPoint(); cursor=SelectionPoint(); updateWindowTitle(); + updateScroll(0); } void FurnaceGUI::drawIntro(double introTime, bool monitor) { diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 238f37e8..8f5a9843 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -158,9 +158,11 @@ void FurnaceGUI::drawSampleEdit() { ImGui::Text("Name"); ImGui::SameLine(); ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x); + ImGui::PushID(2+curSample); if (ImGui::InputText("##SampleName",&sample->name)) { MARK_MODIFIED; } + ImGui::PopID(); ImGui::Separator(); From c83232f8da3ae323e75299b2a2ca7efcba76edc8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 11 Jun 2023 18:57:32 -0500 Subject: [PATCH 064/183] get rid of some custom tempo legacy --- src/engine/engine.cpp | 39 ++++----------------------------------- src/engine/engine.h | 2 +- src/engine/fileOps.cpp | 26 ++++++++++---------------- src/engine/song.h | 4 ---- src/gui/speed.cpp | 2 +- 5 files changed, 16 insertions(+), 57 deletions(-) diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 9f70aef0..5afc5407 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -1444,9 +1444,6 @@ void DivEngine::initSongWithDesc(const char* description, bool inBase64, bool ol // extra attributes song.subsong[0]->hz=c.getDouble("tickRate",60.0); - if (song.subsong[0]->hz!=60.0) { - song.subsong[0]->customTempo=true; - } } void DivEngine::createNew(const char* description, String sysName, bool inBase64) { @@ -2696,16 +2693,7 @@ void DivEngine::reset() { elapsedBars=0; elapsedBeats=0; nextSpeed=speeds.val[0]; - divider=60; - if (curSubSong->customTempo) { - divider=curSubSong->hz; - } else { - if (curSubSong->pal) { - divider=60; - } else { - divider=50; - } - } + divider=curSubSong->hz; globalPitch=0; for (int i=0; ireset(); @@ -2920,14 +2908,7 @@ const DivGroovePattern& DivEngine::getSpeeds() { } float DivEngine::getHz() { - if (curSubSong->customTempo) { - return curSubSong->hz; - } else if (curSubSong->pal) { - return 60.0; - } else { - return 50.0; - } - return 60.0; + return curSubSong->hz; } float DivEngine::getCurHz() { @@ -4354,23 +4335,11 @@ void DivEngine::updateSysFlags(int system, bool restart) { BUSY_END; } -void DivEngine::setSongRate(float hz, bool pal) { +void DivEngine::setSongRate(float hz) { BUSY_BEGIN; saveLock.lock(); - curSubSong->pal=!pal; curSubSong->hz=hz; - // what? - curSubSong->customTempo=true; - divider=60; - if (curSubSong->customTempo) { - divider=curSubSong->hz; - } else { - if (curSubSong->pal) { - divider=60; - } else { - divider=50; - } - } + divider=curSubSong->hz; saveLock.unlock(); BUSY_END; } diff --git a/src/engine/engine.h b/src/engine/engine.h index 2b9f5992..bae7daa9 100644 --- a/src/engine/engine.h +++ b/src/engine/engine.h @@ -954,7 +954,7 @@ class DivEngine { void updateSysFlags(int system, bool restart); // set Hz - void setSongRate(float hz, bool pal); + void setSongRate(float hz); // set remaining loops. -1 means loop forever. void setLoops(int loops); diff --git a/src/engine/fileOps.cpp b/src/engine/fileOps.cpp index d3ae5421..5a752236 100644 --- a/src/engine/fileOps.cpp +++ b/src/engine/fileOps.cpp @@ -220,20 +220,22 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) { ds.subsong[0]->hilightB=reader.readC(); } + bool customTempo=false; + ds.subsong[0]->timeBase=reader.readC(); ds.subsong[0]->speeds.len=2; ds.subsong[0]->speeds.val[0]=reader.readC(); if (ds.version>0x07) { ds.subsong[0]->speeds.val[1]=reader.readC(); - ds.subsong[0]->pal=reader.readC(); - ds.subsong[0]->hz=(ds.subsong[0]->pal)?60:50; - ds.subsong[0]->customTempo=reader.readC(); + bool pal=reader.readC(); + ds.subsong[0]->hz=pal?60:50; + customTempo=reader.readC(); } else { ds.subsong[0]->speeds.len=1; } if (ds.version>0x0a) { String hz=reader.readString(3); - if (ds.subsong[0]->customTempo) { + if (customTempo) { try { ds.subsong[0]->hz=std::stoi(hz); } catch (std::exception& e) { @@ -304,7 +306,6 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) { ds.subsong[0]->hz=248; break; } - ds.subsong[0]->customTempo=true; ds.subsong[0]->timeBase=0; addWarning("Yamaha YMU759 emulation is incomplete! please migrate your song to the OPL3 system."); } @@ -1864,8 +1865,6 @@ bool DivEngine::loadFur(unsigned char* file, size_t len) { subSong->speeds.val[1]=reader.readC(); subSong->arpLen=reader.readC(); subSong->hz=reader.readF(); - subSong->pal=(subSong->hz>=53); - subSong->customTempo=true; subSong->patLen=reader.readS(); subSong->ordersLen=reader.readS(); @@ -2489,8 +2488,6 @@ bool DivEngine::loadFur(unsigned char* file, size_t len) { subSong->speeds.val[1]=reader.readC(); subSong->arpLen=reader.readC(); subSong->hz=reader.readF(); - subSong->pal=(subSong->hz>=53); - subSong->customTempo=true; subSong->patLen=reader.readS(); subSong->ordersLen=reader.readS(); @@ -3322,9 +3319,7 @@ bool DivEngine::loadMod(unsigned char* file, size_t len) { ds.subsong[0]->pat[ch].effectCols=fxCols; } - ds.subsong[0]->pal=false; ds.subsong[0]->hz=50; - ds.subsong[0]->customTempo=false; ds.systemLen=(chCount+3)/4; for(int i=0; ispeeds.val[0]=(unsigned char)reader.readC(); ds.subsong[0]->hz=((double)reader.readC())/2.5; - ds.subsong[0]->customTempo=true; unsigned char masterVol=reader.readC(); @@ -3993,8 +3987,6 @@ bool DivEngine::loadFC(unsigned char* file, size_t len) { ds.subsong[0]->ordersLen=seqLen; ds.subsong[0]->patLen=32; ds.subsong[0]->hz=50; - ds.subsong[0]->pal=true; - ds.subsong[0]->customTempo=true; ds.subsong[0]->pat[3].effectCols=3; ds.subsong[0]->speeds.val[0]=3; ds.subsong[0]->speeds.len=1; @@ -5819,12 +5811,14 @@ SafeWriter* DivEngine::saveDMF(unsigned char version) { w->writeString(song.author,true); w->writeC(curSubSong->hilightA); w->writeC(curSubSong->hilightB); + + int intHz=curSubSong->hz; w->writeC(curSubSong->timeBase); w->writeC(curSubSong->speeds.val[0]); w->writeC((curSubSong->speeds.len>=2)?curSubSong->speeds.val[1]:curSubSong->speeds.val[0]); - w->writeC(curSubSong->pal); - w->writeC(curSubSong->customTempo); + w->writeC((intHz<=53)?1:0); + w->writeC((intHz!=60 && intHz!=50)); char customHz[4]; memset(customHz,0,4); snprintf(customHz,4,"%d",(int)curSubSong->hz); diff --git a/src/engine/song.h b/src/engine/song.h index fd2d1e07..0a6149f8 100644 --- a/src/engine/song.h +++ b/src/engine/song.h @@ -153,8 +153,6 @@ struct DivSubSong { unsigned char timeBase, arpLen; DivGroovePattern speeds; short virtualTempoN, virtualTempoD; - bool pal; - bool customTempo; float hz; int patLen, ordersLen; @@ -177,8 +175,6 @@ struct DivSubSong { arpLen(1), virtualTempoN(150), virtualTempoD(150), - pal(true), - customTempo(false), hz(60.0), patLen(64), ordersLen(1) { diff --git a/src/gui/speed.cpp b/src/gui/speed.cpp index 9cb5c72d..5557c663 100644 --- a/src/gui/speed.cpp +++ b/src/gui/speed.cpp @@ -56,7 +56,7 @@ void FurnaceGUI::drawSpeed(bool asChild) { if (tempoView) setHz/=2.5; if (setHz<1) setHz=1; if (setHz>999) setHz=999; - e->setSongRate(setHz,setHz<52); + e->setSongRate(setHz); } if (tempoView) { ImGui::SameLine(); From 6f6128cae70561757dd87ce6ed5f9f8efda71848 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 00:12:02 -0500 Subject: [PATCH 065/183] GUI: fix Wayland scaling factor detection when full-screen is on --- src/gui/gui.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index dd315ddf..673db6f1 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3535,7 +3535,8 @@ bool FurnaceGUI::loop() { // update config x/y/w/h values based on scrMax state if (updateWindow) { logV("updateWindow is true"); - if (!scrMax) { + if (!scrMax && !fullScreen) { + logV("updating scrConf"); scrConfX=scrX; scrConfY=scrY; scrConfW=scrW; @@ -6257,11 +6258,17 @@ bool FurnaceGUI::init() { // special consideration for Wayland if (settings.dpiScale<0.5f) { if (strcmp(videoBackend,"wayland")==0) { - if (scrW<1) { + int realW=scrW; + int realH=scrH; + + SDL_GetWindowSize(sdlWin,&realW,&realH); + + if (realW<1) { logW("screen width is zero!\n"); dpiScale=1.0; } else { - dpiScale=(double)canvasW/(double)scrW; + dpiScale=(double)canvasW/(double)realW; + logV("we're on Wayland... scaling factor: %f",dpiScale); } } } From 3410eb8b9ebadbe112ce349eb507324394b7de16 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 00:17:51 -0500 Subject: [PATCH 066/183] GUI: make Window Debug tab on by default --- src/gui/debugWindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/debugWindow.cpp b/src/gui/debugWindow.cpp index 7eb3906a..bc562a2e 100644 --- a/src/gui/debugWindow.cpp +++ b/src/gui/debugWindow.cpp @@ -380,7 +380,7 @@ void FurnaceGUI::drawDebug() { } ImGui::TreePop(); } - if (ImGui::TreeNode("Window Debug")) { + if (ImGui::TreeNodeEx("Window Debug",ImGuiTreeNodeFlags_DefaultOpen)) { ImGui::Text("Screen: %dx%d+%d+%d",scrW,scrH,scrX,scrY); ImGui::Text("Screen (Conf): %dx%d+%d+%d",scrConfW,scrConfH,scrConfX,scrConfY); ImGui::Text("Canvas: %dx%d",canvasW,canvasH); From 54e7bd295d5299bb0c55a2e1620d211d02aec4ad Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 00:18:20 -0500 Subject: [PATCH 067/183] GUI: give debug menu a default key bind --- src/gui/guiConst.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/guiConst.cpp b/src/gui/guiConst.cpp index 2989ae72..9fcf78a3 100644 --- a/src/gui/guiConst.cpp +++ b/src/gui/guiConst.cpp @@ -506,7 +506,7 @@ const FurnaceGUIActionDef guiActions[GUI_ACTION_MAX]={ D("WINDOW_ABOUT", "About", 0), D("WINDOW_SETTINGS", "Settings", 0), D("WINDOW_MIXER", "Mixer", 0), - D("WINDOW_DEBUG", "Debug Menu", 0), + D("WINDOW_DEBUG", "Debug Menu", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_d), D("WINDOW_OSCILLOSCOPE", "Oscilloscope (master)", 0), D("WINDOW_VOL_METER", "Volume Meter", 0), D("WINDOW_STATS", "Statistics", 0), From 16adc1fb1b96352fc7c913fa5a06793ec17b9fde Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 02:18:50 -0500 Subject: [PATCH 068/183] GUI: fix intro carry-over in specific situations issue #1149 --- src/gui/gui.cpp | 1 + src/gui/gui.h | 2 +- src/gui/intro.cpp | 10 ++++++++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 673db6f1..16a05582 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6953,6 +6953,7 @@ FurnaceGUI::FurnaceGUI(): mustClear(2), initialScreenWipe(1.0f), introSkipDo(false), + introStopped(false), curTutorial(-1), curTutorialStep(0) { // value keys diff --git a/src/gui/gui.h b/src/gui/gui.h index f5b58109..50e90e5e 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -2029,7 +2029,7 @@ class FurnaceGUI { double monitorPos; int mustClear; float initialScreenWipe; - bool introSkipDo; + bool introSkipDo, introStopped; ImVec2 introMin, introMax; // tutorial diff --git a/src/gui/intro.cpp b/src/gui/intro.cpp index 42d36957..8ebbe020 100644 --- a/src/gui/intro.cpp +++ b/src/gui/intro.cpp @@ -19,6 +19,7 @@ #define _USE_MATH_DEFINES #include "gui.h" +#include "../ta-log.h" #include "imgui_internal.h" #include @@ -73,6 +74,8 @@ void FurnaceGUI::drawImage(ImDrawList* dl, FurnaceGUIImages image, const ImVec2& } void FurnaceGUI::endIntroTune() { + if (introStopped) return; + logV("ending intro"); stop(); if (curFileName.empty()) { e->createNewFromDefaults(); @@ -96,6 +99,7 @@ void FurnaceGUI::endIntroTune() { cursor=SelectionPoint(); updateWindowTitle(); updateScroll(0); + introStopped=true; } void FurnaceGUI::drawIntro(double introTime, bool monitor) { @@ -291,7 +295,7 @@ void FurnaceGUI::drawIntro(double introTime, bool monitor) { if (introSkipDo) { introSkip+=ImGui::GetIO().DeltaTime; if (introSkip>=0.5) { - if (e->isPlaying()) endIntroTune(); + if (!shortIntro) endIntroTune(); introPos=0.1; if (introSkip>=0.75) introPos=12.0; } @@ -318,7 +322,7 @@ void FurnaceGUI::drawIntro(double introTime, bool monitor) { e->setRepeatPattern(false); play(); } - if (e->isPlaying() && introPos>=10.0 && !shortIntro) endIntroTune(); + if (introPos>=10.0 && !shortIntro) endIntroTune(); introPos+=ImGui::GetIO().DeltaTime; if (introPos>=(shortIntro?1.0:11.0)) { introPos=12.0; @@ -326,5 +330,7 @@ void FurnaceGUI::drawIntro(double introTime, bool monitor) { commitTutorial(); } } + } else if (!shortIntro) { + endIntroTune(); } } From 686012382d8d6652c33451f7571bb7949cc622ac Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Mon, 12 Jun 2023 13:25:17 -0700 Subject: [PATCH 069/183] A whole mess of "advanced" docs. --- doc/8-advanced/channels.md | 11 +++++++ doc/8-advanced/channels.png | Bin 0 -> 28947 bytes doc/8-advanced/chanosc.md | 16 +++++++++++ doc/8-advanced/chanosc.png | Bin 0 -> 74086 bytes doc/8-advanced/chip-manager-change.png | Bin 0 -> 267 bytes doc/8-advanced/chip-manager-move.png | Bin 0 -> 399 bytes doc/8-advanced/chip-manager-remove.png | Bin 0 -> 380 bytes doc/8-advanced/chip-manager.md | 15 ++++++++++ doc/8-advanced/chip-manager.png | Bin 0 -> 71772 bytes doc/8-advanced/clock.md | 10 +++++++ doc/8-advanced/clock.png | Bin 0 -> 25086 bytes doc/8-advanced/comments.md | 8 ++++++ doc/8-advanced/comments.png | Bin 0 -> 16055 bytes doc/8-advanced/compat-flags.md | 5 ++++ doc/8-advanced/log-viewer.md | 17 +++++++++++ doc/8-advanced/log-viewer.png | Bin 0 -> 30020 bytes doc/8-advanced/mixer-mixer.png | Bin 0 -> 39651 bytes doc/8-advanced/mixer-patchbay.png | Bin 0 -> 37129 bytes doc/8-advanced/mixer.md | 25 ++++++++++++++++ doc/8-advanced/osc.md | 9 ++++++ doc/8-advanced/osc.png | Bin 0 -> 23018 bytes doc/8-advanced/pat-manager.md | 22 ++++++++++++++ doc/8-advanced/pattern-manager.png | Bin 0 -> 36608 bytes doc/8-advanced/piano.md | 38 +++++++++++++++++++++++++ doc/8-advanced/piano.png | Bin 0 -> 29471 bytes doc/8-advanced/register.png | Bin 0 -> 21075 bytes doc/8-advanced/regview.md | 5 ++++ doc/8-advanced/stats.md | 5 ++++ doc/8-advanced/stats.png | Bin 0 -> 9898 bytes 29 files changed, 186 insertions(+) create mode 100644 doc/8-advanced/channels.png create mode 100644 doc/8-advanced/chanosc.png create mode 100644 doc/8-advanced/chip-manager-change.png create mode 100644 doc/8-advanced/chip-manager-move.png create mode 100644 doc/8-advanced/chip-manager-remove.png create mode 100644 doc/8-advanced/chip-manager.png create mode 100644 doc/8-advanced/clock.png create mode 100644 doc/8-advanced/comments.png create mode 100644 doc/8-advanced/log-viewer.png create mode 100644 doc/8-advanced/mixer-mixer.png create mode 100644 doc/8-advanced/mixer-patchbay.png create mode 100644 doc/8-advanced/osc.png create mode 100644 doc/8-advanced/pattern-manager.png create mode 100644 doc/8-advanced/piano.png create mode 100644 doc/8-advanced/register.png create mode 100644 doc/8-advanced/stats.png diff --git a/doc/8-advanced/channels.md b/doc/8-advanced/channels.md index e69de29b..b2686960 100644 --- a/doc/8-advanced/channels.md +++ b/doc/8-advanced/channels.md @@ -0,0 +1,11 @@ +# channels + +The "Channels" dialog allows manipulation of the song's channels. + +![channels dialog](channels.png) + +Each channel has the following options: +- "Visible": uncheck the box to hide the channel from view. Pattern data will be kept. +- Crossed-arrows button: Click and drag to rearrange pattern data throughout the song. _Note:_ This does **not** move channels around within a chip! It only affects pattern data. +- "Name" is the name displayed at the top of each channel in the tracker view. +- To the right of that is the abbreviation used above each channel in the order view. \ No newline at end of file diff --git a/doc/8-advanced/channels.png b/doc/8-advanced/channels.png new file mode 100644 index 0000000000000000000000000000000000000000..69fa2e99556be004caeec6711f2eee15f3bb7766 GIT binary patch literal 28947 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 ND9WnI6iFHR{vRYt##sOW literal 0 HcmV?d00001 diff --git a/doc/8-advanced/chanosc.md b/doc/8-advanced/chanosc.md index e69de29b..acc8a4fc 100644 --- a/doc/8-advanced/chanosc.md +++ b/doc/8-advanced/chanosc.md @@ -0,0 +1,16 @@ +# oscilloscope (per channel) + +The "Oscilloscope (per channel)" dialog shows an individual oscilloscope for each channel during playback. + +![oscilloscope per-channel configuration view](chanosc.png) + +Right-clicking within the view will change it to the configuration view shown above: +- "Columns" sets the number of columns the view will be split into. +- "Size (ms)" sets what length of audio is visible in each oscilloscope. +- "Center waveform" does its best to latch to the channel's note frequency and centers the display. +- "Gradient" is presently unimplemented. +- The color selector allows setting the waveform color. Right-clicking on it pops up an option dialog: + - Select between the square selector and the color wheel selector. + - "Alpha bar" adds a transparency selector. +- The boxes below that are for selecting colors numerically by red-green-blue-alpha, hue-saturation-value-alpha, and HTML-style RGBA in hex. +- The OK button returns from options view to regular. diff --git a/doc/8-advanced/chanosc.png b/doc/8-advanced/chanosc.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a75ae9186cab1b67425f17e110f10f8c9af3bb GIT binary patch literal 74086 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 literal 0 HcmV?d00001 diff --git a/doc/8-advanced/chip-manager-change.png b/doc/8-advanced/chip-manager-change.png new file mode 100644 index 0000000000000000000000000000000000000000..dc1561155f5bedb46ff2b292feda3c0a80741fa8 GIT binary patch literal 267 zcmV+m0rdWfP)Ccwn3!B#Tv}RM(b3UGMMYp>V0CqMot>RsU0w3> z@?KtECw1A~0001rNkl-PuK{bOxy z%Q~3{Hm%E(pI<;Q=K~PuvcDqW3mcIa-zC3g&w}^A#a0M*fCc@%osLT^_|LtRfi5i2 zKWt#}>xT?GHN1bnL`v5Ii0@NBI R)SCbR002ovPDHLkV1iBaa{B-P literal 0 HcmV?d00001 diff --git a/doc/8-advanced/chip-manager-move.png b/doc/8-advanced/chip-manager-move.png new file mode 100644 index 0000000000000000000000000000000000000000..6d59cbf4399ba9d799d70df6dfd00ec99e0c5988 GIT binary patch literal 399 zcmV;A0dW3_P)gwu)gM;Yk=)b?esHmu|t*xxAte~Kv z!^6X&p`qvJ=fJ?gERU$j0002eNkl>UtyY@SfRa+t_MC&D>_JfW6cNIH6rmM3^C{m7oUlhWdeWz{cVuV zfovJ5=z_sDQigju9s)ak54@iTTHyN@_n`_vHNFczFFMH$$qs=hH+J+sL2U*#L%9H2 zXJ`*#KfYT4E-bK^|4Mp~!~)QJEM6F#^d8r27y_GSt>0VM$07lch`6@`H$L^S0tXEa tivZso-Pb5+dl0le2-uU_ZrKm}_XaQF2-LohWHSH&002ovPDHLkV1i{2xflQd literal 0 HcmV?d00001 diff --git a/doc/8-advanced/chip-manager-remove.png b/doc/8-advanced/chip-manager-remove.png new file mode 100644 index 0000000000000000000000000000000000000000..6ea5c5f041f8389fa8f8cf1802571616712eb393 GIT binary patch literal 380 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 Mw2D-|W0s$j#T6+U1Vn#8LRdiA zRp)%U7NL&;M0f_=81xS!!8dD+>n|03fi@!~p@ZPDpk@q$4mUbJ4=I<9-IdRvAa;{j zApA0*|2jcfApYx|M+5oSDX#?buTyU%cIYg<74+;NEzK{TK*KT(y~bLT7mT|TB)9mV z(>ERLUnhtK?7yG)o0gT&vy2?UXR3$*fiE1T5 z6i`AzkTAhO;~*ryfcSwSVdnCO3iIpr`}@Yysdwa(FXdNG-L z^*XW|slVDP)oy>>Xm_ENGGA-5uF`52ld&I+ZP(#fi`1K;l4Y42MhGP88^=)L{4V_KbmQ6{#-y>u7SL!F=xVVokMFk<@fD z6Qifi>Fh(+a4ebj`SzfmrbwYc6z^=3kjW@CNB~+GjZy?(v(W;*HL>pCdZ#}b0a-9^ zQ@!4V$K!E4Kakd{fg&s-0+&Ir=W?Sxhu6#fcsj3AvstIp{b3*i6Sx_zVqs{#`FhLE za;@RTQjP6a7Y3~c9*_Gxv5>gD%f)I?t_elaTlpj2%6TY~;vBth*LWt!-O*Iej0FQO ztt6RDdV}MM;)ks}Fu2=;u@oA0hr7dx4!1i*Lf*HRhclYYcF(sb`&X6@pHJW+@8a6$ z1^p%WF$6^D-#cgNwA+kyDbWSpl!l6BGTiTv{glk&><`DWo755=FIJuU0%4BT+nq1y zv|6^|$>g%N>WoGrFzGSqb=HGCeb@rOERctUC%QLFL+7RIcutf=7Cac2|Ez3tI2gs_ zaEQeIF(^?w#AhyyPFJN?n;!xHDxb^mce+r%cO~kuO$hoF+9r>0|+n z90N2}-%3HSDL$SUB{}g^4f?5gWMqWT`;9?YGKs1YSW{d!8@;!u8$+&`u zj~7y;(4_5nQi{pcPJQCVL4H^p-JnRYh^91&LLvg_+vtK8>3&0L`dqM(jO@kRFN%{{ zT&5=in+?D^5b}99T%%Dbo4r0>yubdPN+6#KM!=1o)o8T1VL~OBZ2)25w=do3biTlG zQ@_V;b_MJ#Tb<&5)-Pt0oyN<*!=c~<)G^g`ru^4eV(B#OA130GK}f({8Q*MT*%)IHI&&zb>_z(Fuvo~;2`5;_F7K5&RI1k( zqmFSpo!ap@pR4H&r^8b>{wY_jmQ|Jfd$kplxclq-IGM1~cN|}lVTlThKX^-)&{3)9zt|Vm4;b{JuLL9F{Lz1S)7F{7 z)igt%&J_rlEs`oI_!6>Ir5#a`j)WX-23>iJE+{S|^s3^&oA0?F0-2^X2i!jp_k5dA z=6W=VT8nbGsBQ_YM7NuF_4#lDH*?vp;yP*TA0Y8>{soNu(V6?n1PtS?vVcISrc5?38cSy)hohl(N+aHsZE zu<4dMoh=@hq)ZoaV$J{_hi=NCEDjEN&Rp^c{$wHd$5xlu83yp#!z3)XCsiB)6G6pO zwtN91-G646A)A*20V5fG8aF*PRlGRC?XSz_dLE(UOuk5A76G@be1n<7l-2$5jPf!k z(f*9Ad)&Bwe=wtopNSF~<4lRrby{Bu3aKQGR?D;{?ZIM;{hsR=C3wJhb-3ObY<2@a z_>HAULDtuvKkTy2)->aXDdIylgX5Vj}=0j+3YE&c$d2ERsAJ@(m6S z9+VNa`X-f36Ke)U7JRk4v+C|_j$em~luF*u2bejBySuv#OF*>ue7+^MIJ@fp+yqP& zh+4&RIUm4#+t_LhhoaY8f8qM&d%wQ`8NiP!Sc}Dq5zVfPrnPg(7A`nUI`~Dc{$K=h znRLgy3AVKfz++niqZYs}1M-A_oDU{_HmxRWc0Ns$_viax?RIDDl{(|`R7NhBOXeyO zGvHwLx}OmPB7^6WwhISt%O`A`7(ILsc1vRX)5#v4nZvRux#a?&m|?_1197EI*2& zH6X6Mji>#jts%@P`>sfgtzCT9H_4ZZ@|Q&sL%=p!wWEp8pE0Ql>?DBsibu* zg&y#ESWwj)>y^!$FN3(Y+>gtKgAZ^m7aJ~H2U%t4Z);C{LQH>8%d4Xacr?nU>P@H0 zJn+$gBxfi9N9SFb=XuNL)63J7Tl4}?t6GPr4>nLWYB>b3gU5RmEL?WG+@Q6tm(%hj zYSk*hj(|~H9iPnou2!qv75d7f+-R`?#0;sG-b=Yy2Ot@so7nji@M9lVIqH&m0-3ba zZU>B#Dv3&^PYZZwXsv|Yw=T0PBfyUaTV4;b%SKW3Y7S;p-Wu3(=(IUfDuarlV3_MF zb^@tpA&_wbsh&tWlufi4>SnIidb`Wj_ZaRvw>y)A{OcGfLeCn&Ct^svTr_V*Knlv)b{q){I5acTqgNWb=6BDmrRzAGU1B zqfyQ!?=xkW0}qCtOT>;6Qkl34|uMj-tYP4yjkHrgKrcEHTB{xWew^36T)JIH93R(~^brdnu0 zug4Wr+Abw=WG3;tKS<&6j6b-?W1H(apc{?Hl8=?s<|X@nBa@A$(93PsB_0|<2I*5c zoz4?_KM|=n%9rl5QW<%_-3;|iYs8`o+DQh+@%PELOvHrCvLrv(RvcD z20Hm4U z4S1s{JdRmAP-X-N^>b!WaDoOKL?rzPgJ<+;~(bF zHR_rNa-B!PIFzV3=`t&gMUHx=E?47kfVVA)t<9X^U=~M{uiCaXLUqZJ2)t7&v$!>m zwBrXaUTw4-t1#hY4w`{K1{_Rt2OOGRfoK#o9i&ZkD2tnp@n~XP1e#-fJig+j9gt5P zfZ>zpy9y1V|xN=-Ja-2rvTwpg-;rXq3Bn9f6Y6$|c`0&9_2N7??sv&;leQ z(5cBVN5+XGqjtYiR*%lgM%-_hA*eAm8%DI6Mhd85~?=`e6+D3Qnqvv zi#8Z-L`$MQQ^1t;vlG-nZkbt-DEMaU zHBo)iB=W=?yY)_wzv4e#zaMMMmJ80zZ!1>k|MZ6t5$k}%e!g6+#Lct$&fK%*cDo;k zv4P1l5}uW6tP}-t^~mHCiG~Omr}D4SAfQYXqgDb67BMK*kY5@o_Fm~+?)MbvXo}FY zJs|182oG1}M|ge`U< zLuS!uj?}L}?SjT2n|du03-)*pV*kx>6>-%jl9RXlIXRnjqG_$AI%w*IG!eu~p?m~7 zW3%AXsq*PqjN3sxnErXkVCx8Ch0IRH40qR`+bW6`zok;5OW}uN2-yt2;NakBWUQ7B zYgQ5!9tUqiqY~4Au|WwzUA`CdDsqbdY#yT=K;C1JN>wYHxvY`Ul7eAh zAo_ypq5?(RhN?e zK_a9P4@5D$$pWl^an2>G-lv86yl30g2FDep@|$;~VD`n#)4OI0$?ne+ZVR2J%+~$U zbIQG^v3vDfp3SBZ&XE>S?U+k-+DbGU)o$TdD$+4!X3WVPE-6`hN^u2k)85^p8oH?( zhmXX1a>S=Lal&iEr8Vtgh2y+v@XeYG-j8<|!#0*!YP73lj}|hh8>mOw<2CLXUC`GB z993+MjNP>TZ+5Jtm*PyO@rQa!l3(95`u!qLS-`;XQ%DYg8jP!qu{DqCNd2UO0OW0hf-Epn{pZdQ7KXdgrvj|{qT zB4&S+bNKj8NVDcrj`>PO1=0LlDkjNqZmGBKvKqCjE;DZ_HHMnyeD{brt2e3q5XBkX z`~0OFZgN<+FwiZQOIP4{JyhL{m6T{vhvur+H;Z=om&7a{YygSe=b_y@veXZMkQ)xE zGYzJImf;fOpmC`@e7+6Tk*lKB_~0v1Sjd>~c*EgjqnZWoEwzq@gGGK~+6g5n5f>f^ zW2qccB;eZw*<`IXHX0TvBwEK`Z+>iw zxP_-R>n3T;a*+722Sf`zK&lawq<_8}d?1r_N#qPvp8@)J0$9DW^ZgM5**!Ki994!@lWa zBLW31Lv!h!`jZaGfNQJ@QDJq_GXQ&vHwxfSXYjch!2F|So)burH2Le|M8zGsw~%7A z4pRRX3M0b^E)+zq z3lrg!y(2QN^&K|)#mEGaSKq(lEyV|b9R~%^lH!e%1@q8BNwjjyooP8~ z(^oLQRCt=SDoKSe2?a3F3a17DuRh%Juur`0kQdH+q zAbQWj#)m&{=PyAYZ5UppdRQx2CoWOGCEfUu=-0CTEd0izp0|>CL;sjvvS}i(X@R9T zM>4Uq`@M6nn`1UeS$Y!J%$o!%q_?1^6d8=!ZUKd`Nc~%L_Khb#r(;h+G_G&kCMY*JbO`@E6vcixw894^E5uk~125X`uj4?1(LP)lINu@w-Kp9BRnMGu5J>2?(om z9smLiyJN0^Mw78imNY6PiMmfIIL((Ksk)OV6tb-Ujy721HHJ>+dd4|ZeogXs0i8Vt zE|J!)v|Qh$J#U94)b*y>=y=5G@#qILACp&}(5i~c*$dq;C-y2=$uuSN2)W5D$*77k zZ^opKx3sBknh#re z;TBe7;yIW&xIU-BALxh9{QbmFDsY?>IxYEySVXs)R=5=9q2JNut_=5MX>*65_}uT; zQRk#2c~@XgD_br}=Nl(f?c!?Z7sidhhU&wXJL)$Ere!M#jO@MN`FA5K({07WoKv)8k!4x7|- zD|8cE;LsmSH{Pts%{22XY{M!2*@hy+DRLh4M<-@Tv2k&a^Sc6Kw`8r$&UTgUI5UzW=W|@D_`?Vi}e4pDdWrYOLn7 zf$pAv%Ywj!BRHlI`4jCoJKT)p(Ju6(jDkdg`ei5z_cu4j`Z|F1#Z6?CfJU_{4Kg82 zB=W*9?GM?2nC2G6&^e}lckxbBOXRS0rU(J&Xwh60KBQDbGd926gFoLFQ|qCHp}V2} zl~2xhA8J~_W*C@x-GB2vEo!v3-^t$sK|>n1ZgoxMB?PM7`x01pQJzHpscXyK=mXX) zw4}kG){%?Fz8IzPvBv^?T_ND+!s9+onG>yW-yohG{$Z;wJ=mxHqX+L58|5c<-EQHd z+=>{Aw0kDAM$+(q_r4#T5$)~5VbEX!07(ESK2K1|wp0i~Jt~w-tsQ?5PE2|x6le)# z>tXmQE(lG%JTXGJpCsmZrsK<>ugR1v_Rp|mXNC5jg=flp9JN3O_uk*B{pkX_d^A!5 zYVAyYtIDW>Td;!mx7aFIvLhTOkq)6|E)R2|4`A4^FHWp%1|zX4l+&PqlAfHcsYLE# zshW_60=ywRpxALOZbyfC`srqm=ruR^E>;YjnxbjZZjK6@Dk>r(Az=_;Vx(Z>>p^8o z;GqpG$WS$C_L)6KTVT90ph)-F(aDv6&PSdtwKofkE5PhsaKel_#OGyYFl7HA-GT_L z9w<1&({}>4Y0J)m=wAZsAG9QPh>m7$8fG?A<@Mqidtd~lmb11Uk8;o3$ zoW*OZp^)OH48h`ZuBeYmvC{0zyj5wmTr&AmyaSUNm8Ee=q~vwj1vW{NkXMdq z2{OsT%uH42>i(_MKxJc zawjtdV(m_6toFOYi}sF2`4UoRsPnH z!giUroM>12Dv=Mp2+*gfbu1lVGLhes5v@;k*=#rQly5HkfXR*!4y6?lz~QEiTa}^k z1F5%i4ZM26v5Bw9%gb9)-YtmX6~wHY0}#nSt-bVa-EX8x58h81Gt(q<@j=223;Gmf zj2!+EZ$%cG#|RWwV6_fGaL_f7;4@a(+KAmu;j&f7`HD8gUlngZnB7=5@a!i%q^Ml4mx49|gq zG=nh(lGq-C@)%e5pS7k#%pf2P@cm^sP}+D()+ikD^w%;1GN3FFbpLm0!T+R4P8k08 zq{e?L9RAlVNW*y+lo^^E+F%Y2mvdC;vj4_13d^8(lb%?B0*x8k1JZ$VBG&nX0sS%( zSJQHVUKpuE@?B58$4n+;a;{Dd@_^1I6x6NhxQQu!nibt&Z<<)YjjR=z>x;jee>Yjp zru6_x0D!@&1CoF$?e?DlA7wsUczt~hAZb#?iVbEnqER?OK|wN^?Dl{k(QL9x1DNt| z?{^$F8?6pkdwXAiy#QE;asWY&i;K%(wcZ5>@bR{Pu$|GQgmZy3CgXG#OIE!e5E}^9 z7Ml%D8(F}q0CxjeR}wmTG!X?)5)b(%D|O)pz~!Bk90EuokpDCR5iNyYR}!*B>Gvcc zPC%aYhky%*1CVo0%f$+SboP0^6=4zuBo}QiSG)kt>ErVW$POem0G{j|;7r6-Jv}>I z0|0RDmt33kMLM}0fdt%Tf2q=MfL-whqzC}{819!(5gt!XOvBH8)SQ_ATP`PAI$yKd z=4`2Y2rCQ$U>behIDZ{Ry2=9O4JN$~9tui4S2HcZ-rODlY&9OY>$UEg7*KU!(x^?> z8j3Nitlt1}1;EUwGT37HNXpITiV?^Miq~2N9hq5KF=PM`-`~gGF1fIH%HJeEJ1Eh44m^?bVic=xae?NoVb*(Czx4Vm0- zOr46Vtn*1*MT?!l3IiZ`Si-kQfd2tl6LgfzQ`pw$DxCCh>~{K8%9Ky0^T3O?0oS578H6sRG{Bk}=U+MS1zarHme2GE<5Jv$f|7a`<>*?t! zR)Ls_Oh*_P^K0?2grZ`6Q4g2Lqm?Qhl7wch0YtDIJg^%?A+abWyP2dDrp703JvU+Z zQq$8bwrru&Wk zOAlsz0`US3B0uRfV9CYQA~Z7!27}9vs_K?D8US2QyY-bK_%81cHN`5M3fe<)f5_Kn zaZ0e@#Nq@WY!(YNZ*ln4_2Zd>kU}XtyP8tP8i0RfG#va^bn+z&@+*OKpb9)zhWSES z(lUrTQxRINK9vcu)>X<-J4V7#a37Z&TuKHrs&D1&{D77QAen79*Fr->0r;mqUJ+0| zNLK4~(&&=eRefm(h7g`#l0GX_I7twuE>gqr`Nbm7{$qEb5maG-5Q-ORvPdhtmG+DY0L5AN2h`J zFw<+d&0E`Wkdg-JG*UkIc$T?Bh$x_`%x!jh%yGRrKfOFyo>n;*%gYM{GfgE zx*XhzVSt2$#6P1}hxO01DDCE2{XhaQaJ7VEB@P44Q>yI+%#a6|X#2fjteTPGi&+7G zW%y>jt{4KIa89NP$|iwUR1_2%i}1U8)DwdZl!m0%TEK;sjp8IF9z(wW0>RWEBa!6>#^DBA@|&cnfp+K(N;cf`QP zGX8+lH$)WU_Difd2`&w3M=%W zry^`WF7Z0#4ayw*MJa~R=i?~u*Zh2Zt|;#IuUt@SWBiShg;d;GziM8F(eq68GHV3ug_0hSJoM zoviHuQlAp@auC3_U57GEv}EiX)QFGf6DKbRqi`n(h$7(4CBhSGGKZ(8roOX~s)`&b zb_G1h$x^%nSS1%o4R)13Zu#jafCexI2XpldJOpOU^rXZx@r_ zD&=Mg0{w#DXJ==A>gARtkCs_0RHmaf32DMYG%+*R!_~}Hj#k8r^yyU^DCJjZS2khI z(!3N`CYM$<5UmD>UoUy5o4$cu~a`)Bi^ug zF6AN-d;*)gB9Yow<2f<})%?y6KZjZL))s^}ToBdWX>R@5=$x$&re?I< zaukoll1%P~Q|1_-?^EIBF*cj~RsQ`rahp>c_npDccIM|Hf{!SN`AL6&bCrA8mnB~| zaf{4898uX3eNnI5T{hi;7FrWJqeM<`8?#_HU$^%CiOvGUW`8$B&(`|J0oEd>S^GnP z%U6)zHi>Y5I1S><++_L0==oBZ2!Wr!yKC^}I8Tvwz&D^7U}Tk}bpn)4zfJv<24ot@ zFN!W zs;NRJIIHa4<2sG=l4mN5WO3JUNLYV;67;R=_bsi zkJy@vB$C0v#ipj2o%g4?GITQk_+{UJgoJR>SOqKjP_q3&!0`Q1%kalVCz~~u`uEmK z+Cxc@Lif(o>OlBa{uV||ujBdMBZAwyR_92XP;j~N`bN=^>AUw7;*+asZ4AEAc*aBr zW2X;d6D5Yxu5KFD6ral8syt<5o}*5|u$ZV&T%H`o-q#TB51sUGNvg)0o-FDt2c)&Z zZn{8&M!4tzf6QOGiX)?`mM?JA{PKUl1I`h?r>G@29ZW|dIUjc@{4bYldQ8ySUBk(G zmzd8`?EJm+>GqSyr;0KaIgf)~4ri58v&}c}?NRyLBx;rP9Cke)ySB1!Qq&i*R@zN) z15FMW6s0kl#W9eL*N@2*E=_9gPNNa`6eQds3^sNt%1^as8+;xaa2>GfTcEx+qD1u7 z;=mRsnKq0zz&h16UoVzcgM$-3WR{T>yr0E>Y@T>NQ2z@g5 zmq!xFJ?6=R#%8N0W|A{G@tE>5CGR%_WMVxO6%}`rMMx-N@<=}-n(C6JXv*kRA?fvA zx6HjfZ}-0X;~3RwP$!mXqJnFlCtd~oxHDdCA9tHu^t2IAog*|Nl8l+@Q~(!#JWq@MWZ@s z;9&HsNCGo_VH*;vywy75?)2jjttJN|CAWd7TH>Gy+UPe^1 z8i^-09E=Pz969j?1&0<=#QN^!RT~^+5b#-2Qo^o*a2s<>!(~28vc8@9J02<_i%AQw z`zC9qPw@6^JmvFa4mZySx)R2~;Px>*x0C^+HSdq(wPOr$sLvtJJ}SvNh+*=n zP(dm7+)PdnpjJs)=zUmPy4j!9pe4Cg-Z-HJob2(cOd{ju&#P#Bu4H;$y1Ag?`Y5Tx zYan4Bu_dOXh5*}96)6gXPlTZ4OB(&z(%a~E!9_!pt0<{w94Ap2C@CXiGil@!N3nQX zVp_k!l4!D=`r_nt>gr%x`TH-RS!aMM6S^^;OCXmU?4-w%-N4jw^)oYYaH!)9U;qQ1 z&(F_Sn~jD}oK?`Wphb?x=XR|zDE$JZph%t1ZdJF2$^kIFq-B4Z z|3q)Fid^>0xXl-o>;Tejyt=QoW>Awkd_I6WPChPC{2b^z*i|Y;+fBK22P?6V+eL)4 zTokqll{cd}z^q|1lr1C=hL|$|t+bqn1qHQ=f?*XxO{iD5FCGPRNRF1? zk((wio>r+YNvtLtGIo0|C;u6YLcl2tsGFs)p2=#oDtj>&4F@#-oLnhx0eeF+LpB*G z#M<57Je+N_*`laVU9Xo)OV#S%F4VoPfZ_^|yrw4CSun+$IGZ5I1({26l`fviSTXWX z6x&ulN;KytD)&mw`TddNrEYYm{7ogN*?b`-RInS*G6tU?lTgVaL*kGbPLAlEf6s|p%uHEEy13Kq5 zHNMc4@AJDSiEknK6wkVf{S;_UGZUgb2MFReo>J3ym8+YTG4#4Gyd@eC{@?;IkS9Ke z5Bi$ikm=(BnA0cOTV?|ASo43msI$hkc8>asU;kc_6O{5P8ss@X^bG+b``X7s{tnD+ zoh-L~Bn4tr^8BYupyC9Y38>}br=?co;>}9J%$BOM-duqWnU}*CAKyt*8+{eT4ZzR6y%#*8s2s11|{KdAr9C(BPf?0A!|QkLCoV9;raL zf%Yw9*pPA^aX@Y$xYw7kmZxO}#z^+oTyHNXSK~FHOC^L{Z_O?O&_FtwqvZ_3)LG~x z=~*LVKMCo&Os6wT2y(kOGvv17(rYnF(^VC7ZOznTfAVTD2_Im5DU zOF6xrgbdvm(s+AL>VoO}?qYjOP1EHCyGab{%iVXOcfS+Pe-fRTRIb{IKE%$HE5g&d zQM6g# zET>W3{VAFUJQ}}ibOo+n%+hyntDeR1ZmLt(kNe4vA96jx<7{SX1@Lt00lZSlxYRFl zE-tP&(XG_T*$HU#Agaqk4Ya-Zd7|+-e}6EQBa7gQ_Z}4E(0OrpKrq~oy#~nJ3bBqG ziH+fq$%M0!?&b>)xdGW{?>aM7o_St4>?oJU+BC4SToS&KuH;m0Hy+R3sq9Ko9{cP2f+HqL}j7{PtB_yi-?1r4dhOQh~ zaS8JySR{}{3>uNWD-LL?0e!9P_FRNb1A8y3oonYY`>cziXFr?fL%1wyoDD>iseXSy z)UN001VOb12(epuMHq%6H#7@j#NU@dBg2Uj zdJ9mxvHg*8(pdn?z#{rYBub4(yHv3Yg_&2t6$2VKk>DnwjjWr!p*^e+`=Wi+s#S)7 zmiaLNJX6XBG)V}vvZv^IgT3zVv@|ppP1dkT7r&U_^4ZcjNW%1?k~l|Ip?h&=vuZl= z9%xg`*pu_reqqp6_F=;%Ne&QWospN`1L|fYiFnDAgw<+YzL*lUYj2R86X`twv_wts z^|KbCF2_16&)SWp<9hS?)=Sg10!GJ@bRM_s_Gq=zv)7?Hq_$t5*$g^+MW6HRm3 zydeq%4+xRPol6$#CjmiU9(^wbceA7{_Fwi*y{?f%C7Ll4P9wZ!AC?H)nwqB4pde!< zUxP|37AggGb(o_#A+*u)-RI~=G+8oabjq}}v|v%ISSYWWM$*$k>goyaxK;< z>fG6iiVAt`CV7?!mrQa*9^1_hdDOz+zxN2(O6aC>qgAnCC4{gmtOkBeaTm0Msj0Cx z*3@L{@G$};m1oRt5ciB z7?^IBb&#ESiQ>?QnAF9QE2A(9(b|x3{*|Ndp~P}nuD_>6==;|N~&{`;+r(Q|$(#G*h>7LuO6J`sA3NwGjr37`c4 zz*;4uDPc%nP4USaDZr?4C(pqA6i+RNBghQlxE8E-QCUSH!d&2@!9V)`IR<4WF8Czq zCWeQ_OCcu*0TFo8&j3+sdu5nh2n3qhTQLS?F9qIGNVhU+@>0?pKTw%?G)iT)A`;r8 zqa)OZNJp^X-^InJJiT+W5x9*+Z?8U&m%Qv{r;&S4BWE^(@f${WeIDt=p~e{zxIKO!8a}h$j34*jNxINMAr<{d1T7e~vV$*^5GdlMM9zmKYdVNP+}S zvY%wcwqGQ7G`X%`kJ|#;0(1R7{$UT+>hX)6>-i?rW2#k~L7>-3$(I>|KOJoR9%w+F zMf;yuY%vJPf4_jYg8cUjq>vKie_YVYDG(r~hGcwMyfW|eqlhhw6-Ksh|&OYHFUu3Cwt1oo>>r zq?I4{G%Y4$3?7eyFwEg%p&7WaC$(D8Wtusv%zY22(2ooI8?A82`MejMev2|#g39yp z+WfNR6!V=`_Vspo2VCsYC!^jvs|}?!kJ4P;Vv6@>cCpHgU}R+S#nakJy~`qmb~5cz z*xj=m^hF_mS8L^_AjFg4sjp&T^*~YEHSpp>hNJl^UOl#$Rm_LaM=4;->Bdvr35JJB zHlO+1aK5zTj-!tGrp{nV{k^QW+4{U{Bi@39`-tWCR7iCW+rYM;`y>MHb4^E+&1TIj zp;Y2Ec9hP(SMb2cXU~Nu->XGG_X2@$+UE7}7b)>VCWT-1?PbI{1lUVQRUuaPFr&gz z2#rBdT}F|dGjKl+UC9hGq`jO6;~(?yU9fG>pxiyq)4~*+a3U4ux;@V&C=-+9KpIO~ z=8f}onU9hQEGW{Hr`nB&#nh+btqjNSZshI(QB zkig699sZbI+An70bvggr^WjD9t6`d4HrqkUsWZ5RlF#S2j1$bN)3R{whlBg!+@9^& zz(mGTt>3@8%V{P|BRNyPtmz(gRfv_w#%gw($rh|tdbxcb*KT5}lhSt*9!z)fxF?>HPpr3S;H>%u5V$Hgg2om%nVItEs-z8Hl$Djz6pG=uX<5KDQlhHl z@Tq%}L@=H@Dke#yA9q?RPBwEjHmy^W+_jAc%tyaWNTL*N4iUWT=PV|3Wq69Ys+Zmp z`<02gPCW@9z?DExKje<@6AhYur8@g#{2G-_Y8|v;xTK*^HQe&`Rv-zIC8_qu@<#3hL!ZeC- zCSI4}{MdYNZ;Q7um`xqzh_&CjBlgvPxN8!T3kZ!$vtZ7y(ErQ-{E+j(M)H!ee@o8{vwj&`_) zj`emd^OjM19Igv2+M)8}jT%cP?XU@wuGwrsrn}3RD&? zZdFyUZ~|=da;bN4|HLpV$>^++&uqrFFyUq52TkivxW(wfY#O44uNIVn%#FdKAuF#`zf@HBn;W$9ft~c|_$Y~E@&Ue-j)RL;P}O?oPv>tPFd4wVR@H70XCWu49lmV*0Wch9;xmM{SBQeW-3?57sxvKSCa>;+vk!%fcNhXLO9Zu17sb zY`?pRZ0zR2&CXxiL4Hw73|mJ?YD^NjFAlHnbt)P!ZFBssbvgi_0!gI-{}|9TX3CdT(sVY=h7^QP{FtFzLr;}*M~lp~wqAKuupJ$MX_F@ z-V~aF8Aa|U5BjiuC6OT>wxOw&XWNx)0Xh3tB9K+RIs1!gJP(z|1{kn# z&(ACP#a9PEf3@XRNn;DgyuDBOY_G2PXWs4>0QVz{5F^buS}7?^6fQ7rvfg@GY4>qc z%-MUuE{XTKwXSn$kbxX)?|c~Aa$kygY32T*g7|54QKwQrB&As3 z*;lLr%ar6~XI-nPwgJ$>QbZ7QScW+`5a168h`7@KynuWHDfP=@z z#s*sc&zGum+O$Q4h2eqUP$){#0d$iqfP?}-PsntGgMvz{dUx!GrxLQWy8yC03YQIN z&iUJVl${V0wP2x=^#ue>WeEurlbndt`|WA0@X!w&YQOmikaLummCZMvtTk6>+N`(O z%l=k+o}HbI&&qnA5hJu-uF0#al1(!PN~rkD)79Zm5#U!AJkdX6(s(?aB_$;RHAT12 znnc9m;UR$bV}p$>0c8h(!+!zFTn(!nOangEh4Xvo4amtFs=X!kqyA=}_rT~eCi8)4J4b)}2 zPCQgak@LBLq-4~0eSIAUl?;HlbkhXGX<^`C6tsB z{!d$99TjEtc1w46iJ-)Qba!_%G!jxWAT6Ckm!w03Fu(wVgo30-~NAuJ5jU|2(tioHg^V^PcB<_OtgsRI#sj$6Vapj4SYnh+wE_fIT<6!MP1U4n~!F zYmLrn?R7U-CtZM?ZhPBtM{!s0IM8+X4zn%E%?rGd1{KKaa@Ra9c4%W70EIH z^x^G})sqZWB_#?KC$JnS6bf|tHHWLDlwR`hRB68DK*4^Z*Ldw?a2+wmm?nP2cIf?aQ~ooKZwfy?%n# zRgru|r`W=xhTK20%b&tA5EmD{q|Y|co-?k*?Dm^|_!w|3Xli0c_n^(I!LD1opO9p* zgTxt7z%k?{C^g6sSAv?78^1+^BpgrSLviJ95p z+u*ZbWvNotz;39uY{DoGzC0WrCY7`ashmhT)-T1_z~Dc z0;>T(g$?t!L+V)tMP=$rxR&Y7jeq)Z7Kfe##eNSrF`{M7pV6xnm+lk@;otkd5{-=b zAQ{={(jn^|Z2^gycrl>Dv`51i0HVK5!UO}cYz_lP54(&QNl?D-537Cdsauv-cw7w9 zivH!p>~5_M4GqoBVtY^{JxT0%0X{5QM*yFprl$Vr=Lj^z)edVoMbRt-qpla1OR?t!`JCmV)n`$HK|GrV2VNqQH1A87;HL(%-> z?_FJ9_l_WrI^#BFt8_fX_!3}=xCJ%Pnc^M2i&1VrGJXJ+M%{e~blmU~`~RfU#y8Q3V1Q!vPrw30+K zV;5>E8*uJ+gK9EO!|!diY6_L~tyH`W|KnAB>gI>bXu-a!SYJRtvP`P}OKmINKYnB7 zg&r;%@xZR$Bct1#`8%d>X`8?{K_;;j`j6u;eiCV|;mBe0Jl!Rp%G{8gdoo!So3hbx zbMz*O&hV92mdd$Wg36XpOfX;=03AtOhkSnx|z%X2w7QXk}hf()g*Q#HNpI(rYgkSbF z$glQHW`t=?Fy)ty&E)_I09jWd0$mtjLlNfAl5KHVrM3toC8Sy^fiU_4O;M$9K+2OM zE_gViH2!5bIto9I6pxh{!ky6T-L95V7e zEB)PsdS3vor(}qSmh969UDt}nc3E-NZL5-I`wbD3s8Rz;I(__!Y6cv}_O{G?6co@Gxi<=P?sIoYHDdSCRmoQT7g#Dz#j__0(e zdIi?UPRtm9_qM$2<@+KNB}!W!OrFQP{cC1}l6*?~p@~jkAK zqvi;EhWyF>b)NQ!o~(6R*gdih3$Nf^;I2uT$6L)^z0X05mtDhN_b2^f^^$*cYA=@l zhRBCR9PBRU$i;eqeB-xYz4JC*5uR}44e$>=U4Li&Slx_q_-SslKZ>HX09i;OSL!MBzD5!WkJ2uN{zBwTT>!761r4Hz zJB^-NH`eBBa}K`wk{EgT`?&$()jA zGeyfs8SO4RA>iQhytEW_vy$WoWFs0HOR@iNr7a{clT=cSab{-IvD?{JzYSYfakdwKd%MvG__=wkgKS-MqejH?S97Jnz>zFtw=D=}X48(xLW!Fn411ZNyCzZQcMnXZYjU$nv=(+k`#g#V5Rcx-^~7#uJ}Avkq>s%WBZ zf$}@UKagyLX>Qmk#0thpDJu#ep)uY&jO-a zdfMOEQ`oJ@kWaExZVBwI#;B*hy8(55Ee*wL0Nv(De*VLp`hUoY_^8KNN<+EgI<}FbXEb{teJsXz)L>w7HN}ZpJEq9C3H1&HqKj zmv_H+_JA0t!g}X}pd}JFN90Mv5Hsi=Z7;gMVB$2BVdpJ0$a(`HIfy)J7>it(W0KMq zeOc{~_BQiUD*@){#4SlD=We|aO_0#{>k&P+A2bQD^U+&Bw{g=K*noSRU8}pVp9b{4 zSCiUpaITIGDVm*UQoS}1NJF6u%Q8)}$*t4f#t&_+z+8m0@ROv?LaY+A3UZtD*nK5ydGbAocm3m&)fcHyaNhymfRZnU>a_}Q|L0*P;ViE6OR z9|BlZzKUHB{#JfR4bl|PP6_b_ln7(w=3$_qgDFzIC>3)5>7%0!nL51!htYmg^Z5Gm z&7NwQvMQ(48w?px;jgpOO%8f-~OO|dT)^YSjg3tgIR{)E{Jryt)0^XQ>Q&N&P-GO1zq`A`^Z zP4BDM6I~7~12G2NvoCw5Oz?GF75-lQcw~jAxR+|-8T$LV&-DJP-n|3tqXIJGzP3Ot zkk+|r^vzX2++{OZxfGXc*{9ETGd1>=2X`P^ba{zP@C$=kJh8?3c|$##P*Is-KtGVR z?%(4Ng!mh6XR>3&1l77B!R<5%C+r-kqf6jy^JJaaCoa&D?4kJS1nrM%k`G&qbZSfH zx5JyqSO%MC+4Q0%Wi&LK)GP%w3|iR&l`#-PH?gQbK#EyTP5Peho#VM{xp8(Q8WGv; zV#xE3>b8f~Pkeh`o2~LLb4!qJjOP?K&#s8s$OH!5sA@3~fV;;i70mv7Si$q6R9}l? zXFboz!ms)a;$lfGK5x(+KHd~PP`Ez3zoaOby}-ciFO>Yd^C_Rp1QWn4tdJdptm5h1 z?eF6*_0S>SM?z#Txx@kKA8tF@03kIuVAoT;!IxEjw|#r@c>LkW5vcz_*_+7x$S-FD zj0mmqzQ!b=2fNiailm5ZeX5OX6#9J}{1!WcjQmuT-bJS*$r9OfmaXW4X_hlNCu0nRfuIV474@|f9 zzz_TBR)wpjVVINI-VlNa?inAjjF`z&MeMXX+5^=JZOCkcC;pM;8J`^Btc2nDL9Ln* zrwlpdUSf+EjQ&EY60V;zhD!?qtpHj)S<=k+;HIK@b%uf8da5g^zFl)ei=| zxy)&-teV~E$8z0Xw0#XPsdb$2+T@|&SNZ#FPGD}syz~M;u$XERH5s&vc>FU%)36Kjm4tA@Ax2P)p5=Pc#1boVuT`VB)ws{qDK;6*RJQMrCM# z36`nMl|Pf2E3eoXQrwd_f#bakPy}f=zN+x%@#SaAYVrtI-cnV^V~AOcAk6$LxLdUb zJ-sg}LRBrIC&a2V35WVHaG*8IjatMk_{TKk*Ai1~jP{R@4cyR88J>P0#!Grj?xb9+K5~P=Zn-y!gplYqRgkmji{PDv&%m-Xe%e2A)-g zqB*mkLG3crFcO#qXxE_^WfSq&Z|wqys6h19LIU|y`)H|Bt1wMIvdHL|i23rnBuvTf zLKnqfBhI^O3?Uo8WtXj)(&hL68Z@!cX`%b*H>qf)%`w}*P*y`54$p9q@fn9B%l%b^ zf`iS)J~&E7I}My-HE2?H2)}frm9mYOMiXbGQo#hoe#>I4!Y#rupQ>auFPI|N_4=2Bz zHc-Kr&7~Sjvc7_hEE3i>##WK9>INhN448r>jrJ0m`OD->=p53#GgLB0Uz(XrXVX=0 zi6}KZsPEkGz;x>XKV+i|u-;4GjXR>FO4qixJ^oHB!+2zXXBW4d2^N>HBxu?DP|&f7 z7RP23$1v1>jg<8HW%4#HLhG9t^X1nFH)093L@#H(y~8Q0z_NF#$1u&oEDhmwDn%=U z*U4xN8vo>EN8IHqw&gqNi4BfixqivA2hl=I?pGDjH6EcOYXx>l6jACyn zh}*I1%rX-lXSYlGiEavT4H%wo>tGW-0=ah+FSA+VYq3Xs*{aR@2H|jEgX-lsD!q6A ztM*-2!?BZtQ)dbO+Uz81IWXfwMGC5=kb&k}YBbUezl(ae?{E<^>KO!4-1VIx(H*WZ zZ+w~3sXSe*A#9MUZkstuUh||PHFDxg9Yv3%lkHJ*Xv3H$`E^Q7sw>(L#9JiYu{YSV z={kX;2apCmBSA|a*W{-)T{I~qn*y)!*K!+6gfvZNXLfkExqMYOY6l{T4xQFcDQ3U{`r;K{FdIEhqjEDk1<-7yq2 z^NJRp!WUZ$v92jg)wq#kJm|(BzA@&GaC!e)!(YOz8bI)Aey<7A=G!6b7CXtjUl*EW z{~H$~?#_|nP@XI2@JDd}@#>mEXn3y7v!xv&N4C7kWx?~y#{w_VngV&S^M(=teV)e{ zjTJT-Dg2lv<@&7$EW4E2rbc9T!4_M?m8Z}$Yv!oD#9(>7A~WNd`D+lv-|pFE>VD#( zNcj2Z)u7v>7A|VXr}LV8tQAH#0G6aE!OKt@s?rXBmH8?ItFbWDIvIAU?9Y$j6_NST z4XJ`??L5~gfLV~8bB+}K{`|n8^vm<6s9uPi*PuM3HFpfvH)p3nqQUZeF3RLV`^l>+ z(37>^Fw=+O32f4}x~*JZIc3fahr;3qI#u5yxNCB1f!5$NtBiIbZcm-jkFcIuCA#X<7#eZTj>^xF z>1gcJW(&f~$F0dcs<;r|=!*0gHVu7Nyk))Jtg5k~cM8U>?d_IeA9ptZTaw^x5{u7N zKz0)?8*}evq?VSwNe?NgfJ?r5*jn0?;q@~C{0BP^>ORv|jULSQaj1f*t82fpk>Xu7 z#fLI%l7Cw0XDXL4juzR7$<8B_OEIUiNh6*tm(&XI(3C;6aT$#C=ipw(20OW&4P=+U zuhLP95WE5M6nZIyTkc=M26wq4`XBKUAmSkERkSO5u<8mW_4sb3F5>`*28>J}`Vj9E-zXEdM@TG!9yQ8=I za&16L65U2J7RRJjnAa{rerAc9Ab(-t46Bn$*P-ryU*9PeH1D@t&Q10X%^E8S;zZ=H z=S)4q9XW3EOXVlWPIlC-r_nlTYSr3etACH=lZsd)Nf)j_Kp*Ko!hJ>?#R!CiJ1qW= zQ>9_SG}nwGeTi*4Wo0qv)B^j^BJp5-aC?zkJe2j~K%m4IfONA_sc4*@cHqJ zG=vE2v_aDR!h#lh7g`x|6tMp6#)S8J)ogU`d;q6E{|w7M{fdrk@m2Y0v(NTgWutJ&-lptzNvG_D!F=*B~G5$_Q9C(B&3XB~EezUhlnBp;u zL&~8*R>NC)i|k9=c~9iFjt&)e=JT**`)VTLItPl$&kqGmI-{>>d5Bs0PK0vFpy*e< zZR((mg#tBi%c%(==_vmNk?QUKL7%7`1vj9j@MY&`x2g`6IYzfR3DtClz#-6qg4!?t zOvA%u3{W7k^quAtQNW9C$;Oa6#c%soXDxj(d5yNTm(Bb9^f86y%ZI?UphZd>RmV{> z2j)`~0@FS*ZnaHj@s1)qh++?2qhdo!4I7``Waug?0eNOoroa1{_E2nCIpfi2v0}Hn zf~~m~#-Xlb`_N8RgGz*W=xAY=TN*^_iF4;ek^izw+&1yJafXirfE@xkhkeImJ2OdK zC{y4{HxX-4-1H+NIa)3cT%O1T)Kt+Ei4KLtfL*uJs73N+I}2ho*^KY%vVhiqiqHIo zsu3(S-)11{XN(Wx@Wc006EL2f9q|od4yr(mf8)x&2>4r}rv<{U`e|)d#MyEvB5{OX zGvf&k-P{CkHgIvEVg@?MWi`te9%!S`lB|2G{eGGiQ%n#^d|LH>XY&t`;?0DgvED{8 z-4)i)g(kvJ4IwGAuo2Ktt{QD2n@{M5DDEufj59AwB`%y~3XyruM{pQ6C-1a0Xf9XK z;cl7zxMYnOQiJ0cEzJ=F22_`ulEl^vxcnGt#pQmlCTw=-+0aV31V{-h8R8!JV>Db9 zhI!>g$teNh>{!2UvMURdrz@nGstjK=Mp7Xa0xi4LP#lPgp0mj$uwy6D8d?aarUHe( z8`m9OcLf|75%~FG)(Q&w5I+8!>S}JNyjXg7FxSuruT7;F%4RX~iX4$(9%na3QdcqA zQjK;{SpS|=v3$yCzGpazRuO>YTG}fgVerRz;3(sz+WL0gai9;eUH|Q))K5Q0Pa#Y# z%@9i9PWldOh|O+x9Hzjmh4V<@9|a^7X1SsPp!WAxZwIeN^BBWGTCSX-O*SG}sgzo0 zc~N0GGi%(F(n6-lYeo@+Vbq%&JnxRyOtJ&j6Zm`JHh5_W#T`oNAUaXaww zt0_KK32F;-hctTIc*0g@iC!eJ;J(sYngyK<3I|E_V`vKr^nlI#Z(Om_W4&=}dZQ=p z(F|s7(ef-zisz}!9hlN*_Uzn642%@C0FwYN>^Z7(s{b<(#r`))2Ll$!T-g5xb5#EZ zidul1z`w7iga3W?zX$(g-hUSPAM^gR$p4!6|19#Kd6B&9`^UE!Xrn=gXP9Uo0B+p> pzWU(*_9x)_?^_c7KX)b2`Wg)ue_>%g0q%7`(^S<{sZ)9p^Nclb$fgJ$H&L7U%$S* zyf85_si~=*o}OM`UvqG9@bU3IKR>^|zS7art*oqUZEa0VOhiOP%+1ZQu&@*r6+JvW zFfcGMGBPqVGfPWL-`?Kt@9*E;-IbS@A08e)Jw4IW(_da*{`m1DK0dy&vGMr$xUjG= zI5_y=;DD2pv$V97m6g@f(z2$eMn*;k0ReGzbW}n@!pFx)PEPLZ?2MhAy{V~bb8}Nc zK>-N~>Hhv+QBjeNjjgt}mWzwa#Kfexx3{68;m@BxnVFe4H#gbY+5G(cLqkJiVq(?R z)xyHUgM))2A|gCIJm=@<7Z(@H%geuh{qpki^7ZxI-ri13OmuT|v$L~1Iy#z~n%dpn z-Pzd@7Z>mD?hXkF>FevOudf#p5;8I}($?12)6>(?&9Mh~Nls2qNlDSv z)D#d9I5|1d*Vn(gy0Wma=Wetv#fSXf?OUP(y_ z2n1SMTFS`CSX*0*ii&D$Yy1BFyP%+8Yip~YpWnA{->j^xTwGkNt*r|R3beGeoSmHw z4GrDh-E(tu(a_Km5)y`ohmDPmS65d90|T3zn=30TU0q$1l9IBrvT$&4($mwGl$1O@ zJq-*DOifKkMn-04W+o>m!^6XMbaXm8I)FeRCMITDTAG=eSxig}GBR>#XsDy3qqn!W zzrQ~U3JM+`o|BUkDJiLgg99!uE;>3o78VvZHa0OaF#!PqDk>@&8QGUFUkC{a$;ruy zh=@o?NbvFTDJUqUq@)&)Od0_IfjBuyF-;$1^JirZRz&Habf(X!rpHMZr9IcYNpIuP zRd@HO7}1c>I)bf70BlDLI5w>Ee z7O%QSxqF$BD75`VrQxX0nRP6sN(D6I8x{Giz4mfYDNPjWJq3wSLAu$o$$ZL-o zpY6=@U8%qDJQv;P-g&q0g_29MhW|x_OPDH@6p?fK9RA|SSuc1tyi*Z`uCmbTNJBy- z&cJxv-GqXNpJaD&s&~KCmyDsKouSCn3=#g=kZGaOs4c~MD~B8z3*(FW?h>Jxz|e6W zhunEVE+eCI$T=IatL1pULkPdv2ZD0pbPxyJPB=;*M;Xw8`IMOwt7f!tMb1vOD8v4)WQr{){0Sdb zNblR)$PZT%bI?4puY~-!9AzQ{MI$$b-H)M@n53+;sjh}4ZW}OXNUF5>`~~+WC24}Q}vwJ{#@!Tjkv6hu>ml&?8@F31Pej3?#9EDS_ zMiK7jnFh%=G5+V@|ID`Lmj+Oc#*0Jh=eEkY`gT5g7=mNHq>LWB8iJQ7#nr3j$ zC-;>8n%U5*nRqH>EMVpA#;#zxY4s`6MgTAtufoA%8@$DA$70;9xcQw;8BSlDbSD9S zcH~g4+lS0;o9337IBL<#anpdt$%DL%J>9<2=~s%RF&qI}BNvC$AXf?JV4DBM4l~KB zYd?H0UZTjB0kC7jNoPL(4%_WCm&S)Tu2U9n#lT?~puOmZ;u17|PYC#uix0EKH#;Tm zvGEf@IF&D5uNfDQW2J{!l%b8Yge_7r59aT8eXtE)km8+f$%B#Gi{uHZ{R%0>GbiUB z23dOu7XXKCw>acn&8q!nD_zN=7qy;ax;r=(p(f#H$0}HLnmL!>@4Q1>$tw7T3%Ta# z5EbvJc?NTxfp}oHZH}qrFPAXvP=DJMc;$wohsd3>#guo*&`9dh3Mu5_Km?Fr2riug zXSG3AlLteRtxSwTIP5|aiwYf|Fo62&!cFYmKaUfqxbiY%R*wRyjKZqkV~u#q=REkgdA4fQ(u|HEvjlIntxk z8E~nAmH+~iMqU3tJz!qZ!1_5ZUkg}Bx!dGm6}eb^gW#Tv zOtgzYmz=ZTo61*oj5)wE3f@iD%!1*IyPgC%|H8SxXzru`N*$XkAe$0ASqA{N5NAiGo=A7K!ON`jN;ji=M) z3^-mval5MKlzLH`?t>_J47zarU?PrZCgkqk)J`{FA`<5oc+|Q_13WKQ9a2r846h6+ zFQ^g;*UU#`koyaS6u6z?J10BoU&+TuV}PS;0Er9JAp-4Il^WJ;XpEp-F2S+X)(noG_v{ zF5dJ0v<&`=pKtFJp4k_F-~{qWn^~5%7cl%`M{muT8P!&Znc#;9)3Z~8e6!28 z=NqQ=(@jg4fN0+6*+d&m{m%}JdBcwvb0Q^#Lw{Sq-m}XGo4J0&-K916kF!5=OimfOqSynG# zTofGZ{G2@fkJ}k;0qqM-$D{BJDoF_6%m`){Q&!bgD$oZ`3*hsz8(ho;GO_6@$ra%S z(e!K*+nm40QRV*qjtUJ)j^>D3WZ}xu#b-eXz6%j zaEB#;d_^xH(}j)~(Gz4Ud)l@YMou2lBTHLdKBbmJM8GeJk3^oTRASEe%|aHQJe8}M z??rDWIuc!+0*Uwk_lcDHw>Xf$8Ug?t3TQ`n*xg>yydhilJ2{VoWqz7*|jTYQ#QD~xIz}{-*orgUNjLWr;wH& z2FKvxW3aLR7k+U44-=F6Ka6C;g`SqiZ`r<+TFG;DEwnJbkAbk-t`A*x zp>qqMNEC?|+Sk}-M?fRbl)Hmms}sZpbW6;8!SEJB2;*r8WQblc5bzeB8mOR|H3nGg zOdHO6a~h)tmHqhBkE7ScJC_TFCFKbRZ~387-t|KIcb*eM&6Kwe^|n{qG@*lvz^Brx$e$eazz?5h0NoMgkj{Y1jw*R=$wGC z0_56HNRRhJDyXa_enB{M@e85))T0J*uPQim1GNDQo+pc(Pd_w5Zys!Eg zlE*K8qdX8uJff!SO*kZBm5=1PwinDN7QObi9x9>Sv0xn|kV~I)#Kc634ImyBcTr1( zU_dENCI3iH{k{0vD=G5@DMD32HtBsog=(4@rMQ=U-%6KLqmhK7ZcH~sdm*olA*3J> zW^S7qwnfrv_M*9*a;UyFN)h^l%(vg2n}-0RSQ|If(`mVV{I2>Uuw33N&}udX%Udnc*G@wn{5h@&tZB0-V!;fSao7 z(>dMkGnv~G-9%&&kmrSPjlL{5&BW+?1|(nv%Niu5$rmQA?h8~d!LQ8MUl0ep$t5|l zm}^3fgq-go7oI%ZHN7qZ*&L&?8&i$KaCM~qLtW& zD4BGUlPmd>3g-|@xr!2_x(6ud;!ba|7ISegoI0v3HqNRiV=G4X#bp^2P6JQY?JqO( zdU<11QU)Y*>cY_whlly0(lsYNFQwsyb1iZ5YYoI{ zAVj@4iB8U$@BA3xwNZ&vDUV*jO^BQTBHSjBe0_MBf;_i#ZdB>8AMza2r|ZCu_(@zv zm3SYMqv190#V~djbKh#PL{jkojZPEvVUw7#mh?m*k( zg*F|1kg9QL_MboR*aIFlHi#h@Oa#ylv9!lB6fanm$bb}Ce+X8tke-wHoR=*dNc53B zbv%K3S0so1B|iH;sXPc4U&(@9?BcZOhizA}j#4X4I>lks|j1Pb9sx;BAW| z9C8&MRk$rm)%gr?tP?}D{*K8*lEu0a!RJ7>>szG)rQ6OfNiq}|^oIs8Rb|g%y7sfT z^e1IPQw(myqo~aR^so$MmY-GJDqNa#!}1JJ%ZZFNEE0ei0sPI8Yl&*4q6qlCgJ7f% z)6jwpct3Bw+af8t@TFm-OA}yP(;CVRnV$;ei}_t$a308_2QQc;<_{;sF2CQMyGKGBLoeIi=J+5{wt7L#=}H_7KlB*Jvq)CB7o%u-$gIo$1KPs zO=%|xFp5c8V$s{iAiK1x+gN$c@hyM8EjUhn7BdfsCfP}a9S<9RTPOe#Fi>_v!S2AL z*}Z46%x;K9zP?)8-ppUcGA?`~Pe3<;`g?(@8!_{(#}UGOzv22Zjt(+r6h;}~_Sz%bghV!Qif7P%uA zB;4#4h`F)28+6R!kT`n=0BIf933e9K=me9GZwW#KWsl8;@$Pl2QdTBaoiL4^alL7S zNQht+2RvQV(Kg;aZu+xmW<3I+sF{0>5#J4e0VjrJsaYdqXI7>z?J{bIfhYDSi2)ys zh>dW@=mWK0k-5+xX1}>nmE|59+nTJTY_?Zv<+)0}V$!%h?Gr}BuLp8uFC{(Lex;N@ z*aeg_9ZZ@&u1XEOk}efM-%XV5mZ$_EGbcLAkxg4$SC=$Eq&|j4vZtHMOb3Q@?NN#(hA{$AM%fU z)A+SOUjS={rL^;-L{{t(PG=4+RlX1j;CEK-Z;ax%RHT~>uF8)qX5oW?5&>lf@EO;$q#Z<1U2_QJaeWw8;Db1Fh``1~0zRu!bhiCLHqNO^_& zoXTH~X7T#b9m)fGqCO%@8N_$*GR>OP@|r!x>rR;4WsP`Wu=F|vTh;pmDE21dNcE6r z79zfj5Rh@9>yS0-E5NyhL`d=PRqcpy)*?`$Qss;s|LPXPrHFD~0`v#sqEuEkihjMd ztt5E7l5e;RioD?4#HQ*oS&h<3Gy4{9T?M*^%J@Q*3zz!3)S!5^Vr4XoP+ASa2~}N5 zbgc2X)xr>d&xqSS?YiO$)T{1yV8i{~J%a*wg2GNkf&{tG<9F&hehcl+h3~)+|KvjC z_{eOc+{xFpi*`K=vmI{KGZS{Qu1gtqTO1EVD{^RohF)rSYmU!=w_49Yc`IGoUlLHs zKE#_!)Pp??wa(*A3Z3P_<6Bz#>MG+n2FI_k>z87IvR*&yON}6k1120lbwOg>IA{iK zXC*XxH^!$bGJZ3S)-Fa@e7C$lO zN{b=R66{tawy|wY{XVDGgBc1K!FtU=UaTNB&v!)H-R(NKfncq69$ef!PT>h4Kc1u)~t~l5gnuMe`Y9>o@ZVtMB#s+kw~M_9kEqM(1~Ii4I){5-TdQB z72kgMvMu{~rRF(_d?RRR?_Y^qk`J){X?J_yhYprhfNhZU*U1?)Rhoo6`M z_EI6W$`_Z!=eO1kO5HQ&##~abOVZo!eue^{C(b&k?COmm+|+$h2iT~Y&rRf_Jo;84 zcc%S&sSTLW9&s(~ocg3V5*#n_=X}hSPMQYRCfo{vi;&g7y@HQmN9jf!VWF#3S#oX5 zyuKi0E&@6%yG6Dx7lmjdn}0$(B)JDHYp`ehp*Lk`3{;51yw~8LpBAF0!uO&5H=Sj| zke)+B>$5C}aEndOUSP+x7gtR-FcbpR!vbrp%`Tr|&pZ}pL-wprW-14?;#53E#z!kj zv`_dnU?(~t6m@~>rjo$=n?XCLkj0OEqcxhQ9qJA3E^fKd|7ihqL&g^>?VJ2m%AJB(lt#0{Yh2W&52;~8s>H;M1< zyr85TY623z9$o%z0C`gE2!CK`l<7yhUU{l0bH4^yIZw`kN! zD}=e9fzmb^D{OmbH360|=$dYMk5Mu=H&H+%9TUyg>?(n#7dODu<@e!EsDm18bRZv} z?vGEX{EFuc{tCtRzXUlJMMLkmjCnxvpxo=pdSh6@hAOTnKGW*ma;@V1I!S@-qV)~{d6J_8IY`T(Rz6T?UEjLL(i>thQS~o;)(!c;(UX7$O;>uW(O@T zm6(3=?CQBnOlhy3^_m0)=o6rGEp*NEEsz9x;iM2v(7qOH&3pO-Zs1^w#hU0wl%4WZ zU`^k7rZb+bevwBLCa0D6VAA#4l-*%+w$Y?|&>R7>JLW0zw}$dgpH8WfZgRpVZ+84e zBtbJTUNHC&956bnR1=2qOxQgz#5&yTI8FHzE?n*~eb%TooA%kV|r?Boagy z)g$-ks=0j{1ZqsnWj9oQO4?xYIy#F-2bUJQ@rImRGRwD2f5_5~U-}qixP}}W3Rc{W zUKMMl(vSM6fzp%J=fVoo^!bDFSaY|aL+R7gzhyH8i+0AhzZRk+zw;KW-{A-Q&?$*X zZcN;Upr?62i>ONy?~cRnxCg=8vTRj+)W>bX|7>+WN^PHVhS=F6j%^WePBnxMZ8wX` zX;&yMn*a9=)jAKeT{J-xe;ov&1^NVee-}~vg@89!e6Z^>lZy|;BZ9@dngO`UIAAD< zrc%2t8g*vL_d3<-sy1}R#L;bNt6kbv>$hrmtzBwk8`M0~ur0Sc<$KmSd8c#R{)qjf zvU7PfRbUp!(cx*Cu>K)@o#UQk;`0Y3SI(;F^ZaLQ*lmChp2o#>_(+tnj0GJ2 zJIh@uIk(Ty!uA) zjlxCC4bzU4RkZaaHj7VK*^MEs3Ex!pUR6&|;D_@L@3*p$K6yis+KSFtY#U zDAjfZE$fAIivAZAn3BMOy4DGRU(O>P1rmol zH-I<)x_?rA_!-W3g|_pEEm;vg6~>!=8oxdvmZ_%)k_6^(#LLIy7kG?rq*qj(6nMX` z`G@_gK1}))#7eCjY97B6|LXeabj|j7CHdrDwB!G3X|!th9^h3j@Wptd0QonvwqU9h z4(uC|AVWv@2x=kQ$e+6roK1)5r*`q^b0&OD3G`Ghxh2Ce9#C&^Lgf;{>BLSna%`(Z zYbWG0w+cl*N)h{p?8A-f(_+&i0%85pBZFX92XI%Hx`5QPv zhqX3H1FOdP5;`Q@8g1_VJ{cfPW!sTj!tUqC%c-03p$+FLS`pV|(H2_p{wtP`7x%XRdfv=E#d_S(jIrW8?d9+>^c_OP7b}-t* zYg8J_Pp=2=Z5c#td}KcS`XZgVnKV@WV^*r_Tk9ci67^n{7S`z(09IVOzTMimTSl>^#9m||hq1~6 zzYOr8&D?e0BllNmPSd@}btR`g$W8UL_o&6WyixUdMpmo@evb=3Jz;O?D$z2aICAgV)cUUgW@C4nR}t>aMn>S~SFzT>8qhq?amJ z72u@3`m0aqCJ`X*PCmhcGCkP^r*+~hHMb7X65x_)@Gg~gKw_y%yrEZVcUi4@O0zZN zLJ2@NR%dlMLxT!|K<%Q~g!$?+t`1M9@k0C50xirg*3<2iG1-$(e#J8J{a}3LW$rZ9 zmU^!eI1P!@BD*amo3iUx@Mc&>PWYUz0#tFy_i8xiGad?90fhW1i@#k1*XDht1f=AA z`|Toi^g2GE?c3vxTc?N&S!;VakNOx?=h!VJBq$eklp*ZYY`k$8=aA{2l5igKjnfNq zU`hr(myE(d3JTC#{yl->G>*w8d*Y-t-m4h=sGv>TlzKYnQ3rPq+gCQ`R1B6sZ6=z% z1%3XwL6cwMo4eRyat3w^@;d=z88+M81d-=@b;OS%8;;4Qhor%TTb*KsqMcNN-_2j?kB+OG!;59f+3-Vq!i*8KB1@@ZvxyrTldE52-oOKMl-^^M_0oyK{2Bh;}u#DO3NxKV!->fMSzNlyPl zNc^`B9_D|&-2b3W4}vB_S)ve_;RdYD2!E#X?ej`NtW-)j{4v}f;cw`+;0UBt2*|2v z12i_koV934u)D++6NXZ8n=T<$O4Nl8Q)vH7-)LRHAP;**=8sl`Ns*|l0#4`>dXDL+ zgH>Br$ZZ*wPFH83?nn{|ejB4vYNqGP9yvS($YlsYnk%BK9cQmSs6wQpJ0>^Nd)|F? zV)Z-cE{8Psa&7|~lOHxu?u&Zbt|U0ayo0#^!+_+)Kzt){0)2fuovcpyt zZa0%_K<;a%8@w{?yX|TAC(?$5cngX1fy4ddk@yTlfYsq>@E&iR2+>qmso~{9s)L@x zrlF@bMrwCJrQ)DgL-*GcAMVUEt;h9k=XYeKu{3s{lXR^5PxU>*YXCN3^~d?tGP*tc z7I)KU+t!aKSIQ7`Mic%*3$<%VF&*Uvze>35<9uH(9^_s|`jOs(yrVb=%>I!G^kEsJ zm62S*7J{~Us+ZP_b)oToP)1hQ=przwp#QC0((RD=WJ6Y6XeD1REgx9ol9!o^K$nqqwHOS+letTYdUhx1!TzhcgsaXZ#`Jy^3f2bBDwur zEqB|_CPPUY#rqw}gOsp8tq~TQYqFh6QOR#kwVbf{Y^a?+vQaaAiwH*A{t!K?ToG^b zP6*K=i4TZ9C6Xj{KP0S)Tuq7e1c=v$h;M_}>Y!%n_E|&r(NvCqcXbOXZ!9>rMSd-} zZ`S{zS+?N7r3RGrY=?KZ$1|&38mEvBBm3qN16?jkNV^n~7+ca$9@2w!?Q&iC^sCp~ zavRN<t(4#fq2?Fb~1((5EMg(whvdo zZ(9M9u;}=rKtN2r6MzCL1{shF@gL^Dn2h~@d;iY{nT$OI4EV2oD#m}jQX&4!P(b|` zOTzx^rFcvJuh;*K0Fr81HTtsF`c;+^Id|Q$CSQ+(5Wzj#@#>govY^|vzjwDb_gW@vJok_t!#S8H04NkrI5nPTcUA!Hr7Kf` zQB-3mcXrfLi$hfsq;=^Y4KmJ%;v?1|Mi-f^^;54k&{}r2jmpZftD)>?#^>76rn ze#X%#%$P_LQk!m%?Vk)U+9&@ZLL>~*{$;8(8szkuO=)j%QEd%OZqP#ddF|4IkXoVB zs2O{qI{B8DDl~m*rw+`Gy!8VL1vcNLUKaT65bEs>C+jYQrI+vMw;p-0^==h}gQd|9 z?p{h8W6L$nC=_@RY!jj%5)`|V?ZhCvA9z3!`?9Tl*1?YN;ixhFfn1d7iqT05?pwOa ziptbbQb)Y5PrfYqn5!R%slAgV7^{jPJD@~`y?)Puel5D5x4)OM-O08l5R)QpG5l&V zo++XMSMUD!*+Tq+kpZEJR&tdJ zX&2$<)!ahDw4h39_0PB%(QkBNA*Cg}NO;sUbguBc!@N@T!|OIgv21o&N~LNFWzr2N zi9?B* znftF8I;Iu%VwE2qbX8sGDxhaDYps~(Hm`J|I?H=y68x3d85C&1&FxJuPyxGBbDd`E zT!;)a(dz}38Bd-WCDC2Wlvv}Gsj|XlOIB~`>us&yO5XuNFGwj7$nVzSj>6u#?f12_ zO!_IpVbgNCOji6xjEl;?KrB4Lf0?1SfWclw1;xnD=*lHsK2~$K*`nU=5Q^iEns*VD3_)wg$r!YssFkV&EKja zARRq)R`R3*edJ0+3SYzzEJ_mD_AhM*T9k(~O1URGfK?|Tc|^?7lny%UDhdc4;B{0d zVs|fTX`1JcIWYdQsYbq-#tI|4<}b+!Lx=CX4Y^t2*XNy5iE;^%`w$SLwz2&)wH{_6 zOlKIXZmfDPGFn#sygwcgeSx}u9KxG^2>H^ST}tL?NA-=AC)c!-rOW@6AJg>H3kxBZ z0?sKy9z6AJR7*^@vjO*}#E&esAG)5b^4gx7j13g$6*}3tNH$p$bsEFpu!^>UKpz|{ z01T!Y=(sAvOH2uxjv0fvYM_8wej>F`xrA8sMLiuyM~Lm`5TAka@%6(|{dWq-8dC2( z{*u)s4xw-2Yy*$Z=iQ?V5|8JO*&!`t^^>3B=X=W7GZs7>`g985%1W|}SoFk@1$_1s zi)?ZGOV_m<>=cx#J*8hHrQb1voh^O{a;ee|gBrO(k4absry?V%vG3u)>QrhD}|*lvI=cVItPkB&>QR&X4^FtThp{- zM5ZC`aH@e-9vkXIiAe5iHC0zydw1R>qBH(A%hrGq5(H)1DOS5T(~by+Y(Xc`YbQXM z8P!v{k^oWiB}0?D^q`^V-bib4m*@c~tWr_M$ z$^=c$t>H;Bj~d_Vbju@Vg#zN!NO^GK9H%wim<};ADCA}LjrCn$k^;Lf=^ykM zQ0A6rGv34*K!$x)@Kc|pJOagjl_pP9sNF`>PuhUe4KHJ961c1makyuFlzF zCbLg8>7&Etl~exff9nQRDl!}(=U4?E@li4164o%r-Fvh^$~38fNB`~(oJGu)s_tN6 z1h&&5j-=1VQ^^y0<2T3JOzl8V{m5Tz_o@H4R+p52X6r^+)eAo{r0-M5656Wk58e%qC^ti9VE%fL9HJ z<4$Ek+MED+e*|JmSv*Ivyl#Z`cP+Fap~6yTBs<0V!_$3H%3peFj;pbw@aw{8dEP;y zB?Fhp80itl$(RFmgzG24^l6-wdH5Y3*s6YtLK>@5MR!XEv=M^Rx3wXeEOsfHDyN}$ z%=y={fz;4)1#$b<99?{%ATA_GuZQYyj7iTdu(Ch)USxj|5GNegql?%Vxy;54PQZ;l zKt9OgXhD1=^+_Vlrb8z5#k-RBka!H78$LJRQds`Vv?Y#toog=nf_cilm&>Sm23KQ5 zV+5xPZt61w2970o$kEi+j!JQv3rxlZVTk+Uxl^Iy&%2|p-}r9IV2<~j^<8+<2p~jH z6)SSDlDr8BE@E;?(}%6HEJMvn1AU6drhL9N?W4YJ;8;T?`Ua5Gyg2%&Q zo_ZVZpeA?}bCHs0(cdHhFKJI?n2pPF#0{+I+T(nTbil4kIF-=$h?0_NXhp+sf*gxl zzsL2w%Qw%AVL#RMwOp({9?Ba95^RFO)kX{KGIW8RxE8sIx*%fNv>fxaQ@en9-=?2{ z#|8R#9`AB*VWkLBG~R(ZZd5Rvh7i`F;wN&*k*%df;p~=;k=895K)~HslpPBn6gwkrO1gZ7d;>Hf3y@q5w1HaQt8X z4YS+|I@r;_C|*P7)`&i6{8Z!*3Q9h0H76V+-&8Op9o(H2-kL~?FG_*gNRYCJi6#K% zmUVs|y`Ez7wmPT(IG4X_O>;Z5?qeM!u__rE4K%OoPw6;{sW{<%9H(+YoA>?29F*Xa z*01`}#%hCn+Slw|lY&B#U5_zYj?M%A5Dn<$0UlD*6JZkQHgLLu!(LMdDl}-i%26+K zR(M3MkPf`UbUE_XCOEuCd=kW{uwNa?ynl^~d!DTGYHLMKIDOB&AU{Gu2pGCFcY$o2 zQ;fJ_*3Apa-pHLASI!N&fN{MXQZ!q1Rf}{`o*Nz+=Gw688i#Tmvw~Q6Fy8 za$syOzjX}p)>%GapiWZkQBgE+e!oV@Rka(|F4yuEqhT3by_iIr_~KTB7n~a8tUAdP znQbcyYM7=4#!DVh^RAs=?oqRG9PjfwZxR@~gkKc{!l=ZGaDhi~#4F+ZW$&vh0R1`bg5 zv@$?Tgdk$|FkSz{?q`MYdd>RD^BeMBVxajj$`(SELqc@RpA@?Z$X>F$u~vAiQP`br z;}jG@voP1|5xngb1k(+A!e0}AA`)gwb;FsgimF3Sa6J&gIoEon%(pT>hzNiWqLM1$ z(z|6#Y6BR%lPsi2fFK!Cf=o6pu&bZDLN0^_4BpNm6f;PC@q1GE&}b#M{2qkl1~yrz zdqT}!hW#`qpFH9)%EwoR0r$-S34r7|Wny0VzvLfb^wtE|yi-&mJ3jcp3x6Z5&^)3Y z3X5yANK#TiqUjM8?foJhcx?YxFvz^>ky?>T*|SQ1GDSWu(;xq^PrORO9-1WtHFIyS z;V*p6T1J;Zl^-VtLDZS~QT+8aaX?8_-#RfbX~DI@LsNaC?G32(`6`XM zw<6?=Mq#cm*Y^AY;+6JUB&uJO(<+0G^w{v>t03Q`rIj&zDS>i9;w$QW0oeh#>3rg0ZAxdCg>V~r)@R4lEn1*$84qK`<=5XnV84!Ascmy`jH zxYYBGiB=VLv_K7)5|)%ysIhUQ+ZBOo)*cKHuZCs?EPnP!H$lcDY%Ua=T)_y_=Q;?%&ecj1X@gsMB9S=7b~)0 zA_^-{3eAwQB=$qE8|DbTSX*2twmTKE ztWfPjT;OVA7ISe*q)FmoFNjnnKq9N0M6#P{V+8K>*np-acKtZExQ23Y8;G&~2}ms$ zdlUt^9=GamC0>DsiqAvk1U`Ul%%sImYf*!KXAxipW>r^66SnT@<#jQ0x%$rO? z;4xdVj62`F?;o~wo1XD|sAC@%*e7E4jb#7fr7I**IAWz+sRS?Z2WzCv8_RZz6m&Te zu8)mhjFeb6vY?a!V*h+UAuwCj;RFU$^FsQBxNcS84+T7xbVSf4kLNq8zA6r{uNclS zqh6S$^A2aCfcAa&eSaWHxlH>_Sz62KUf>MQ(*5$|3x3)Tyq8F&?4N9@NVU;6ir9aL z-(tNab8)-Hxamo(qrY&`lcYE*q`IgXl1rLl*rwDZu)1&jMp?&V+~$hVTgPq`~SsWkxFZ1HX_O=FTWqKxJH2a4x!Dyc-Pz#Yy=GERA>H zxk+Xhqf<U{1ge-_az70I-(A?Xfl1B+(~ zm91dlhr3|W-@zTj@cQ*2lmJx8lLpMr6P0Ajmbr~xeI{*1@7sYB-}{gn*UoIDWz^-&>du_atlzL!0a= zZ)#TWZGh9>4-EV~d9uS`PH1>Md!zlGBDefu^j9B>4Dv=lYe9q%&}*EH%W8=t*`Ihn zN9wo0fCj3=*{oQKpH!D*jd0jjiUL0tUfzIB9(s!%Ldxa&y~?3(_cFON;pc(!2bIeH z4T!wbr(0_>0q||UHM^)~Air@#GO_Ig2REB1p`ykq$PtWe=z5DpAqVNB+=0RYr(nz+ z8Vz!uhGEOKXoG{Ax|t6V)Q83&$cE7|Q7rNiw+FG+moR)Cv87I2ZIBvKSI~=Yf6-SX z&q0)4c$mf~0q?bwX8QDomUXKK@IZ<;6PJ_dY zDUr{#pYI_~OQN@Fg0~>W-|VeIP6?Gf;~R8~pIKWr)XteEmBO|s+-6;~z}`Mg8BPOi7aLx)f2v>!u!yBT)8q!+&BiyXMozkZp6 z-Z;0+JwE@QdENTWF)4ga5H9vUqBzf9Zk$8DGRGF|W-`!C$TvY-t@u*8|C~b(`gk^O zEKr;@N$7JT**3P4slZXbP8NxxfRcozfJ%j+Q24jC{jY&a4Fv=K6;WUa_)Ext8^{=B z$$yuv{$uxF+t~jP{-1rte_a00O%zDR{-1)L`_KJQCWGC09IDU@7do5@1ugdY=KQTtan_|Bw;%KZFjOdWiT5 uLy^zzC1_!0iob4(l@NBlt!IM-5Py+=u%+2?`*-&oASb0P*(h!r_WuCZMK;#} literal 0 HcmV?d00001 diff --git a/doc/8-advanced/compat-flags.md b/doc/8-advanced/compat-flags.md index e69de29b..6f2380dd 100644 --- a/doc/8-advanced/compat-flags.md +++ b/doc/8-advanced/compat-flags.md @@ -0,0 +1,5 @@ +# compatibility flags + +The "Compatibility Flags" window contains several tabs full of settings that change aspects of tracking and playback. A new Furnace file will leave them all at their defaults (off), while opening a DefleMask, Amiga MOD, or earlier Furnace file will automatically set the appropriate options. + +Hovering over most options will bring up additional info about them. It's not recommended to change any of these without clear reason. _There be dragons here._ diff --git a/doc/8-advanced/log-viewer.md b/doc/8-advanced/log-viewer.md index e69de29b..07d7960e 100644 --- a/doc/8-advanced/log-viewer.md +++ b/doc/8-advanced/log-viewer.md @@ -0,0 +1,17 @@ +# log viewer + +The log viewer provides a look at Furnace's internal messages. This can be useful for chasing down problems. + +![log viewer dialog](log-viewer.png) + +If the "Follow" checkbox is enabled, the log will snap to the bottom and continually scroll to show the newest messages. If disabled, it will stay put on what's currently shown. + +The "Level" dropdown determines the minimum importance of the messages displayed. + +| level | message shown | +|---|---| +| ERROR | serious problem | +| warning | may or may not be a problem | +| info | significant information | +| debug | general info about what Furnace is doing | +| trace | detailed info useful only to developers | diff --git a/doc/8-advanced/log-viewer.png b/doc/8-advanced/log-viewer.png new file mode 100644 index 0000000000000000000000000000000000000000..71120570404684d95193979c9f26546df9f66ae2 GIT binary patch literal 30020 zcmbrmWmH^Ew=LXQAP_7;f?II+;3Nch*G7W7yA#|A?!n#NAq01ATtaZSMjO5+&-XBOt9I?Z)|xffT(t>PkP}Bm#zzJK0H~4@Uz7j zs4W2Cj3W8vlZu<}Q7;TC0PqHuRJ+sn-MYxaU=$31wCkwbA9~~)c(UB{jIJT!PMcQ% zz+9c>0Mn~}d%}UPapO9TgiqyS-=;`}f5)(pr}yQiBw+OkKf;B}SiO0bK4$VcoGl0I z=D0G;>W1HyZKXpmUjFX*v{S(LVgfqwhAgxZhK0_?4;~)+=W8Tr^A-czd?1B362j0X z)(_f{!oWbAh(2;cvQ)sgmFzoNbUs@&Xi>$x`@mXsH!L3;vC+;qXfeh^Oq-S)IJbNDotCV) zF0^#3K$~{&9XoWhCrk}nS8a-B%ts+UzWl__fuD0e=TxuSybB8q{-J>g0Q}f4f)rsF zGk#2!8NJFr-`%DDVZni4qagz)QND2Oa<4FI-=fo@dwM=!3@Kyu>RR6p;^^=e%x2~E z+P!RHty{F>z~?k6P}+BCyHJ7N0p!`+fTH&s9iCNF0#Cw0RHANXO}DGM*lCwM z^7~EmGkLpaNvTHtJQ#%GG9IQV^}4IW^-ez0K9Y6!4cQ=q$EH@<{6R;uEe0kg=5~f+ zxD>4`HJ_@$0*@zlUjQjGGn>D!K2>qWfWZb;os`@r&BGTmik#$oRm$g^GG+q7)WSoOHEa(Es5ne6=RStLh+1`Am=kRa++Kvlz24CTRd=YAfG zO5YUzBXd%U!DE5F|M09u!?lM%`dFx9(F~>o*lO$CjV=+{f$@fi5RGP}{)Bv~Q%Hd+ zS_C?>b6cz&2ag>76u?((^UhZ~$v7K4A=`v46T)o;C5uCsb($4wQ)cy`!y4Q;b%~t0Ix_jDWyY)SOE0G6Z$6k#=I}U9Z9pf3 zvUp+AZc3D(pAesHxuWEeAe8Rj-{&98b}v&^sqjQ-%!A^9K3ybXsh_Cg|IL~RQs=TW@G^VKi~~PP z>;aY)RmLxw{<#+SY;29FjN{!GMZ)ag-|EAcXlbud%T?g}q~KBL8R7Y|d&H}+D7`SP ze|^SOMxw*_g4f=B=;^MuvICM6u&nrU@}{Q)rwPYfT)Cox2B8t)(_|SzpVVq(Y%IDW zNu{f!gC%`&f3M{+k~`C#%qV=>@>%ssFZEzMDKk5}=}19E)?Q7=oa4_LPs=3S+WLA? zwq1yl{u2pYOjPn1zwRmsgj>PI&YlOTm2T?nJW;!}X2%E8PG2(+5D>WJOvC`THwF0l zX%PHt@3V^4vR!n5z|71{S!_WeA=(i=qT2WHpD^G*wUf$i;gikP&r#0C1YYg$m!$Ro z-r4C_Umkn+HX$drN{6d4D8K|$Wq!dZ1$NJ~qLlAf_e)hzRw zc-Yhx;_CoXq<|lPx+pQ_y0-N2ao@deJuxb2KsC>+m}TWXxZsmU>P&+fGCaI_m|xr6 zB(<` z`4lidij`-7Z;_^Pn1Lle65c2sBDPOVOl)IgGi(sXD40R~tEs7JHm$9#ZAubTB?7}G zfh5kfn!Bj`!;d#<gaT%k?i6l)Xr!2T){x_ES{rjm0IieTvifr}pA-W84d zt&#L4wezE1(lg>vvttB4C!=-+-yq4?<5s)*6!ebf&V18PN=_y!a&U4ol7;;)NX72( ztkV-~wKm4e)bk4|f6YRPt)ai^W9-CF%g-{m7Ilsqkx@x+CkOf(E-x=jFmvaB)QpSP zjoQRqOH6Mo8}g$lHg|QMnh9SrA*)gTP*|9JZObN$`{HyM9NEu0a#1)R`~(TxH;$CIKL3Ks`|UMKkWnd@R0^_xmS)j4BrHKcxu4M4foT! z*Yfi6C8MQ=GPs2$f2~3OY%R#y3O?L{^(Th!fUcX3%08niT1y0&WtnzSYKivl7xEE?a*#|#)U+tp>zn5b4v zR*XmA(`qm!ql$_Ny!mE7RJ$5*y#(j+diO3<%?RfRf&8?DRIJHY9*Hb4_Hoy-oKp*# z5D!L=FjcT6JCnB}QBbSR8~+ne*TPNKJ;umWH(#P}uQCg0=hSHrvGOH;lI`#c#0YjnH2 zBL{r7z}%OnT2wc`lhJXbWx112_j19VA2LS5ZU;jgUq5SuS2){65mj1yI0N}`Tg7yvs3-A+R z`EN(OaN-wo{KAr7=<*A1{!atE{5+TxQA&5CX}P^#T*{9QxLR|}<|)F)0Ql|x|8)3I zJ3!?dH0etn*L$fC<#c?RN<51CM}Dpl7qFQ^$H=8HaU+0DxKeOm1Cx*X%~ zeZ&51<8ngi`RU=58=JkMAKx;P_n_F`>#(Bf>3o1hG@{{mIDItRFpa&}X~)eIp7mgF1XQFZU#ZnjWvdB406J zcB0VzUf$Q+1gQe05-h*Az1)b#RhQ*lcc9y5kjPHgm+mm?tlRBmJz^@&7@?9I(hnmC>2JVp$wjvk{tm}E~{0me3 zWTvwez zx}Mgg8(jpmhT!8l^{oLCU;gV^da@$^dl&Bo^6WDs4wCpYktsB`6g>OVlpZ5S= zSFd-oeYpyQUu=}iKIamy?tmK#uL_{g$3-3b1K9+8MgvRNFvgmm#-d z>|-3tEh1AHDTI~_?_P|RiuMFO_mU7#`p-AXR$JQ6bE?Lo(zT0@69NTDUH1oNP=kbs zn}w{aD9g@m-fjqYUPJve#_wWq8f+{aNERn#RxNnxE!(f)l^FReqlO}fbdHweNR)yU&%@>OwB-ANX40gK_s-h7@}sb?uNzhq&Xt8 zuAfS{Uvn5?wdrJ;Jx7U<7IAQn#+E~nT#LUX={^QjUyk#g_M!`whyR3k z`{R)DMlOhMk##YnF5d*J{6J87SSXZJH zLnA6~4ST2kX5MEA0>z@?AxyixAq)A^WyV6)4k$X|YFn{JBGGu`Rd(JVm}Yx7?&1B7 z@U}lyT~8LC(G{14#+G~IvrCp$VBwHpB_rSW|hEQ8rbqCeDi-HoT(V*~vd`h#$^ zLiZ_2uiQ8M5r3hRgvtkJ9}PK1*2oD#oG7AqQ%#9iweySOa?xBcQNzR#;4r=rtouHD zPq9UD&TGhsn~s+D{Rnmu!g) zQo|s5gx$zSg2I{Qy7!GJKMrC%b_H(UOMt4P!_T@vAqE=y1lnETCCey|9YnuGb()S9 zhY=#T4gV*E1}1|T0dTkboJy4muQX%BEcCREQ2YTHGnH_$LOrwdbrJ&F=k6snJ)}LV zc|jFiKgwjC>CcP1~5?&5N>1w>vP>i(#1A~Tx!8>3X4y4a+dpHyAGQo9d07Zb7sDB}%#0UL7U69((Gh8YN(GfLS(d-X3% z0M0tmP1RQHm-f|IHN%6FA|})DZzvJrE1$ke)R>8#l$b=t@l|RDi^{9MAiJBelB9?y zEeQsw-bicNO)2y@pb(2jrABdNos5fy)YB5Au3VTW3z4XtckLHncoXsruVSHqLp4G- z{NWzS-E{D0?N8r+V@6gSW@Mh8FNnouW;K7Ti6j)HZn@+XIu$PLk8oGa@}g7%zfi(! zO?zM%sEcTZQ)jv5Mkz2>n1T2G{j4YIjoIB4-?rO-UJe??U^(a{%k)SFa~~!h?tX;* z{a*5AF_B7AiXPP4TxxbuWu}B}EF}-zR43S6aQ^t?kG?1D*H4~DNtz~j?c^w<=E^EP zh0_)d-MTblEYyL25URs>5BwgGn&Y(OWgGegO$&eZjI;n2ecDXUy7yGQd6fIM2E-7h$f?2P#+bx!uf=U z`>w@7NtIuvO1;=D%;E8TfbZGH-WLX^ZcK81p^~b@b~d6JS(Ih0@GHWA@Ap+354Vna z)OVL?%Vt8A(rDQq-)y}tSAGf83u?*hq7T|Uzq?-IVrqXlTt93?LsLzMkq4=(Jsdp^ znFe8$JKT?^6F>Gwxf35&yBv5{1BFNW^h7i?>epg46+xK1rNt7$fqsR~K!Cdgof6Su z2%-{Z4sw`5W%?2tZZTLCgiUea8>NmJD?qhX0+Qqw^kd@sIRExnlpx80sG&tti22Fq zyMxfOIwTiN;Z_>=sdH8^?z~imWz5m#G92IVh57)`z-z$EgvIpl-fJUP93W&ON$_?F zS8{@M9KnmG%(S1lF}(6P-*}e8!H@;{Z4-ZyG=L$ZAyp+)lz!ZLHP>K)$zfC}$QoRb zugsB*h967~LY9Rh>2{4;kQA@i?;b=F9ir3aCfnI^70TlXL!&b6CWm$lK}r+n8X9qm z6pMzyidaRVWrXl0tW+l-i;ZS!Wz3bmp^}5@C%)r)r8tc z?-RQO|GM)yZ%z6;pqWCc=vjIP2 z&RQZiGej4cnq_C8BYep3M7VrYJ1-)rsaCr7wTao&Mb7#Sbp(n(vl(8HfrYHj{ zm(|0x^(6#a6`aUn7br<@CKcleg7B-$WoSK|ta$Y7TrjI+i#Zjpqdo{zkS@y$Q@}2L zpe7ZI^yBRL(xUP{N7T-F#mhQ;(IJC9MafAes%(m8qisU)A)#{4=i#`B9yJ`5X?AV# zQZDx!@YsWlsA<~&(&|lwIVsgUxir2v)+`@Bwns;$lvf?BzR4;azkelFs4Zd)TEI>1 z(OfAx5~-2!`b}3>{&pQXXmd%t4w7r1=dfCo<$>HQTGD)XQZ6Wnf!DaiGyJEHjfR8} zL?@Tv(B?YH-buHRd`&QhwWZo=n9(A*{MkJcxtWkf-_Mq|nIrYsq9Pm`7E)0g!73qe zgL*vrnNBRi3G9v9XSTmYy5*QDw(;-F)>mQL^xQ;YaYISJ`{i%OdEjzZE2NYxe({sL ze|2v*10eiPyrXIfkA$NLBq*ZGVK8QZtoC1eZB&^F)|)A}t40{6!D2qZOh*C$85!*ogu`&Z0f0#~Xg-ehKOC)*?>|1Cw0~yraewjjWV*xykK)(X zW@~PBc&+u4bT9trVM!67c|I}{pqu=7Vrpt?Y%HYEe7HNE8`u1M@wWyYT|q&?dtCr2 z!iw1C2U$GlYAt(Q9 zvhjz$cN1fA%z8HDP1;P%+J(Ll4{fxchoIfAF=ks^A)8L={PgXmp2z6zx%VZ%cyjIo zxAHs}DSj2i5-$H(qr<#vR;zO46HVnA&o0yG24~0RplBdkwi%P`cN`qoL!Q}<`>cwH z0Yp6jKryVCXwK~Wule#*l=r^rg(Y-ea3+a2W2YLG;*oJmyP>?sJPYk7)fw6JFn5oQ z6a0jHy5NO31rm<-=Ukst*Ny8I;-9#OlgG%4eZ|N*T6i^>_2KDps*%-hY6r^BB@dz$ zC&Jgs>f!18%Z^pX4(@dum7xY&Hub-jn0K^Ed_+xGMLUSYpkQsevn*v zngcr?yYz-uC1=aKj!y#g+3P;4dR8%-ltxguF!EQ_8yfobWJx&S_U42LGa5-5au8Zq zItKLyI|-1H)7{v2W9HG#&W`jbxe1yoZ!{#O4rtQP5EFL zvP#IDl-v_lZ0|>Oo2+ean2$(@1LnG7+-iyL8{c(*O?ZeERV6(^|ctP%Nl&1HMg)HhhbL4r)&ie8)wZ?V%I@A94ww}9b8Hy$bpW3-VPv6M7|Fr&Uo|Ri$ieYC7U{`%%E#-S?S&EK`39GPs`!*WC7y)ZeHJ z{h0@%ozDZiSNsvy3^A3&FR2V$U>6q}6MObquc4tR+*0xZkoB)%dkK}lL3d1Ar3;Be zBN6iP%9f(RWB@b;XZaxCK0$=`&(2R)Eh=-c7yxo|x{vqQwrQnXTZYG^%g`G0zq|iC z!e8D`PzHUEIy#~WC0%YZ7t2qu#r*>35J~Z>2w|$o9F3>b8x`pdtkkObM@_OaR*Ap zW&Q9yUOhfOK;!zOcmg`HiAk%Fxm#On>w&k4ZPK^aO3uoWkr4}GGn?jB`%xzt6I;s` z!#Qwu6-mWr3YGAISOOM+1%6g>!)|lLIeqz2l`})6)sGrt*04HYr)-X7%!3Yi1Jic1 zoq3DzreN4sU~(9Argfz6;5ZQ^TU9)r*L4h`1^;7_EbJKT92DPGi?3 zU)~>s-GHDjY>eN*P zX-p*qcqNtFiD8y%fHTGSnV=p1fZn$X#K|NdCNyK1G8XGo0{&LP(J(gVRX)f@b%=Ag#bTG`zyb> zl}Cfs4WU@|wEl+EgH0AZRPh@W;&oT__u32vuauN7BzJGK{H|K_W(g0-03yOoB>6Uj z=&ye6hO$Mb-%`{cjB5XpD<<4r)Ju zTK8GC$3e+LNmoAK;Td{~p~3^6y$ z#kUw|$P}f7>A#ddCMK48EJ3+ni}M(ad(0cLBm#(ZpV9I)BNls(hs#&`VA3gg3b#C0 z^%vlm-sn(@>}4+z)VwckHwKicy^IOnWc2S& z|N4cvr+U$98hlnZXW<&}=H}g2S-OPQI0xQp!&T*RhTM;Bfjn)vN!H~R*`cFDX9Wa3 zApEGzx-41)d&>)@2tfyY1H;V31g+|R?~cHAubcGfc#`a0o|{uW1vd^14E$HvHQ9%q z^dLxbaQL>eS5O7!ulKPkJk^B`d_ZH@e74;>HkMz6&qN6XXxX}}#1jaB=SBuapqBw$ zF6FdkSHAOK8(8WBUVnqwi*6*@YYql~cUhCiH>tZSlN>g=q&n=W#Tj!zjh8avIfHwq zuW^-9|D`*A*tBezZ^NxxQP4hANmPCq5vrJPgs`~;?}JoVTP?Z!;c;_Sbi~Qq?coZ( zwFTHV`x#WN_4cX;x>?G?vk+Svb(ZU`=_4AGYP*Y?rDr~QnSpz2y?{llO7EIu9tY69 z#H*Df670~ojjiNCm0ySmh|zz!(cQ>y=aChggUG+i?O8Y~zq=yaB+lYF>XlK)6H)G` zMq7iAYTCA`;wzsN2(%YA*Yv0e(wEoRl$zTlBoL}c_eiyoYKaeS$%SZ}S9c}l;vX;BvR=z=h!OHb!Fi?PyDsOYor^kCA0GP%d>o8`N7J<6^drQmjLt{`R zt#Exo(wWH@Bz-FR2T4s|cKQ+bycoa_o5h=`I)Xawer4O-Efu>wk#o=%H#i0$7mF0|)OC|k|f?Ld^>TPE|bwWr|?%ItbqTk$TJMN{@wxH9@2}8#D;%tT{ z@9r$oHxH6{f+H*4tPqiWe1IAy<4l*8t6P;!HcW)P%@4g;5E0i1#Fvw4Zj#Y4iwSlA z1sDxz>znb{)iR8j%I@#72phGtq#};a1+FkL-osTQcz4TnF2AX%;QFH}du}e7*?2u$4U;Jb-~9o4PNz3*i!p*?d92cev!cl`}j=H zArZ!*E0b$t1y_#&7YZ_ICO2)`jN3_bG=jx>jzF;e^Yr>Ow*y8??pRmkJr+PhLgMNw(x}!lsgkl&=nGgKpLBZtrFb|9@t^=Vd1RW?_#FT1{W)yKMZI#4fyz8hSeZnU(kp$W;>*U6 zkdP0PCc1l<(wyx;An;nS?#8{Y-`U+=a|~__wT4eFjj5s6I;7#_(`xT}LEL(ku2&Q; z%jhYXF@hbYG)h*xwb8QS%-91sgokQalU{!KqoY#mmZ9?D!81O*IhbjCJJ0x_#R76E zQ_2KQ%nl*{aNv3+&J2TAC#;VDpaCMlkE_3YUV z^!Kn*nd1}Q748o&7#;TCFuF6hn3a!v@yM%Q994iRef`1zIdOrnfc`73`{DOOUag;ZJBzBOrj?)G1iCaX9gbIn?z( zqEeSiyp(17_k_NM;wF4hC6(4PHedF!=_}b}#J!p+b0N6x0v!c((b6u{SZ#Xw%ZIn! z5&C(`x22J+Tf^;%G;MV`9$ZGn)t$s}i!R2LBQ+-!!KupnJLPVYk(rrd=HI6+oYpd*Y)jBHo~~%+`|Y zwOz_*)DcL)B`;jJ!;0&8**5G8G3>{GQVrEUHG0o|UWVtq!|3MoM<4)Zr!6{4aYGXJ zKNHz^>t*c;Q=)Y3H9Dm$nYlW>SClL>V+GUrg6D@B%z#ZEK2OrE2Y&t^PlNAHl+mlx zQg6QMmag2mI81a-e&K|oFuxz}?v?P`jl0v}bI^SloJjYA@kMuZ(*e(6o&0LH{<>g_ z_uaFFPHB$z4nGio8dK=^+n-8i_MDx;a~9)>%fqfrjRF#nmH|<#pPrr$P8mmE=Q$5q zC>m~;-FEGQMl7sBIHlKWkN3F3RKOYKwL^=P_qu!9n8!jC?fu(4jT&qXO~8lR6|e)( z(M@J2!XfMZY9WID+(>7Lhi;^XgX(xfdMEO4rBmd@C>Dr^zteT(tJRi|E;#dL%j_3) zG-vNl$qVcmV;2j{+Chx8dZ^i9mWyWi4X0x_b4uhqnnLWHfNSV$brsma@xyL?NWH33 z$U9B6rS~>y&RX1RvZG5L!DHl|&pIr#p3mj>$gV}@)zW%tflv&TZelZdJuTfPH7LRe z`zDcDT>||02HOFvqJDUc-5Biq`;1~QSZP4&Yp{WBiWE!D!F|9FC6XUY65#;{yGRG* zb`ITxWjrtoM1L9Ne<6+khp_oCrui=p3PuVZGl>T$=v1h+5rp?1E<3Bvxl~s)lB{B(p9NX@0v(hxP@~%BP|6|2pxjXsJj5v=tG!tFF)t@b$E_^TE7d}X z-`r9u*L&96zO5`08sLW+=Zf+_i>#1HFw&dUCc{dDcX_+WFo9k5{ z)MUQF?bK;%k+o5QQY09&sPHTSP`db_1+PgZne&k4)CWjo(nDaHo1ocyfht#wMam{- zeIy!ZUZJKssU4`KU`g#VhYlXV_Sfz&h?*IHkff+^lThkpqqW4{m+#e({f+pf{`EAW zGPENDWDCuVS8YnQq}}6zd>SBJ%sh!9K zez;<8Z;kgxc;^Hw-!8XlQ#zY0f-EXHe5E|@YaS##j(+!2?jK+`)C3WoK#Xf^T8c+>!#Cw>I3%76dqaIb_D0q88OotF7u60X0kC&yVOW`YbSCYe!_;)63e^?_nvSZ72fMif(zW=b9%9KnON&-d7>;Q_irO+U21t!6i}lx2SoYn5+)z2 ztyTUp&DM=AHQh?(uqQsDJHy%szo(UT7lTC3#_pFwrr%D1i%l<-Ru8L(Ejs2d={Spn zJvwE}IFRw5Ht-vhr&+Rig$BXw9)%gd@s+X&+>uYqYvU@}`fc^_)eW8iBtc=RI^z@{ zP3X4m@BBSdTa3r6!dj$$RcrTJ22th?VA93b(JbO}GHk^&-kDjl*FF;=-wd zn9BvF^)-PGrvF$&6$Flqg4Jt520n;NLMay9V%KbrCG}}v_$!j6Y?{_7wGd%Q@5_34 zr}u>BX72WY9&uBx(pe-Zu%^i97ypi8q^Gpud4dTLZ1F>l~KZ#5?@xfaToTDxoq13G>rg z5;Y6+Y@Ha^wE`JoLGE8o+}V}oBsGGVY}=Gs<2cD~yspy8(s$lV^~|#7s*(5NmdA-6 zANBqbDT?x6L<;4y+~$iXGfWfGQ~qnI^xpIp;Cl4xrL$^NGI9?N>pTx26l>S6EG&VIuaO#aKCu&V+tdt7`13HulR$;@4M7u%N^t`7J{zM1n2XSS-07?Tt4 zj+j`-L;V+?XT=8JifO5lHo60#k_8pqAHM5Mb&P<&oV*H)Ut52jcSEzD`9*6`c;X;O zbforA!lw3&DY(q^e?)wt>h!OL)gE9Xw~*K%_w1z4F#T44RjvQR%eyChz;!~;mqO3a zSv7DEVSIz;FJi^nW%l!9)$@JT^Ipu;Ub=0kIg;1Y<6YPDLznMO+d5>|_h~omAK_!; z+1Dhyn|tE1Pw%ns+5MGkY{AQEj*KrZ=E~GrpGKmv7^}k=-2M?ud@s3u4Xgb4I+(fQ z3ef&4CmU5y2USlO%+IxD31KN44QuNyRe=u<5DtNhkKyuWLQ_4bKgpPe;1XEp+##y)P3g3Hm-(Vc-s ztCcZkdWY9br~0*-;E`7&O#=hs4~Imn+uO!}d@I`@ca`o9WP?CWl?DvQYU`yUUj(k2 z8A8zMX9}GX$g-qL9qWfL1Ib9;Q260!_ADNAgYQ$#PlcZzddeNNw}@_R@WqTrwzPa~ z;6#Kod3dZ%{s`txzg~aQW7yF%6$@HyIng<|y@I*DTC16JYk8pcgJP8#{tg} zX?X@Z*@Z7J{hALpHPKfadK5l2toT`Z-}BT=Za31*U?d{RcS?<_cRraykybt$9=OI4 z>E1|ks~6Ux-FmdK01H_rL1PGCC)5ya()E;hPF0(tH1>)DZvC0@Xv>yLSRMN*p7Jq1 zx%S(7ieOBP%S!#3byI2rZyIvch|(Ve{xz9a2m6-s!eX3hJ>D4ZOlLn8i3}*{!DwhMV@C1%w*JWVMIWz%{{w zQ%sM-S)Y`1c}@?o6D}SB`~gt444^+3p$KfxW^?>;zN1jvO&! z#0kV#2ew(Wm49#Jy|L-JfU7FdiYL$w{EdgN^rW0mB|Jk(+ykj&{mF&XV!$fqiG|wN zrk0~_yc!f zyEReB|Bq=Gv3pJtv85BH37F6=uhi^)*Eh(`Rd|BO^*pg4iMrW>AT=kGfG?@nuM`wL zUG;`ww^#FwhX(dRBwWBe_Ys@y{R8^6#OeCTB;GkjpPl^ZaS;I_AKEQAzE8BwFdAcj zP*izhHd0Cw2DTB02u5<1^?1%Jqwb<6_6;lb$_>IHPfu&!1JT!g(N5S}r=wghzRwZ$ zzmM-^oPBKvxN07(RfCL27#(>xB3OtJeQg-q+9N&trTF+=q`e`zjd1!m7FVqr@cv{Q z98a1&r=`tHwmJ`$#AxwTc1~UTb2$qlT&NL1QX@NC~1L!0TBVyUJq))pYLD*KRQmT0UMZaUQj>-W(EY) z$H%~IT%W9z-3IF#PLAqqo%GPtqN3GHon=ok^T?)m0c^8UpSRfTzk%X8cV z#W_=;Qf|NYY)z|7a!PH*eBE&bF@EXTF?WKWpgw_s)8ax&&RJD*_j;(n0Kbj>=FEx_ z>h~ijNgld|AOBk_^oKvMNL(Q3l8i!8h*uA^J7;QcgCsIX*}+?!kfmO0U16!Cj6ZsT zZ=pRtB6jOYrZ+6TsHq{%I8%$9UC{@a1%W`WuC8-mVOA|Qc9VzyicPW#CqLR=jS%+~ z1R($b|IUaC11WEJb_(gXwgzGhsBNPD5#lp3UxauS$H1RUrjIH5pV0w;>J2i|4->V& zbRYts)L{->-(5m&$pRl}tQkYYAO#i9p`y1Q{c9XJ=75+6Ff^>I`Tol7|GUEOCt%7w zaci>3zF4==;P7e+Dnr^K!syE@)#DTVBgD6gvycqH{FUoXTd1vg{*k7lwX}*{nip)f zKxfCDqjL}Wa3~oO^fu}6b^A)FDANrLf5&-ouyQ}ZtyhZoI66N4u?vyED%~;1YHV$` zNk(0liNvAn>3)PMRE1|)`|gA%DN=WUoo_kxw-BI@c&k%5<08Fm0FyS69k*m7@QxC2ZLIMkDb!s?yxu(}cP?bgdO$ zb&wYVzC07c@-izmVSxTX^dsnc1r8*NuZLWpO{~v>lI{M~DoDAn6elJXq(plTLMvf~ z`CE6UDf(je2g z6w_y>1kJcytZwkAfd`m68I{{`FRGp&&~;9T`$&eT1mw7pR1$z`etREukYu9X9kL{D~^NW{JD6MTF0A++Hb6&fSWlUbDxq!0gRk8nljB z+@^x8vplK~TwS*7Q{x^YrBH358-6+__`Spm?18$vYL~)}y{2xxMJU=;#@DvryFbS3 z0<8ONKqbL2vspzGw0x&9xu@7D+5D%q-p+yN3$pXh3m|n**+D^V%4sDTl9p%kDK?@; zZ&vuLG+v!sht-{bulC)nFq3Nh7w?k!ZGCli|rhgv++lc%}fs>NDCnB_qLv(`6yxY(>xQrIo|N=xBz z+=7zh$x4+5RNTV{IbieJ1Doy@v#VCPcgH``|KM@pY3W{g(K0ey>yfK2Ek{mw{;!-j z*iFcIM>ubysWi{7EPp)3^CnaVn(un@LG#^Xn*B6-3vBj?WLlfX`eSgcx7^Q#)cfiL zU_<#u+5Tu{l(qa9laRUso~}WSk%`SbC1!njx177unw$(1sEo|VGg$G?iTx!Z zLpTU(nm15*VM z*NW-z`%m?s1vFGQlUcc;P zfbhRlWByr3u5#Dk6kfjp!cKLLBA%-TFx@ZPnxN|gY$3B;Shk$*@ZN_4L01IF8CXm<*KzdYc{>A&-UBbSZ@$QwCBYPjPb;f^|c<&v2{5PuAn zMv~6y+jhZURCW++D+U5n$0lm8a6=Hhs!(o_Y>r63`gBe#TDpFG_tVg$BYH)_qa0dg zTCo*4#U!+5Y+r3?G%a8dyRNk|B)Pyj;PuqWoHpLR?#;eBvdJ0@kl&?BSy$Cb> zq;mkwsl_bRV~))*y}BwcvJ*7=a3H>Wc;CL1wG+&u0-P@UCbjQQxjf(6&$%5aSe4Vb z-CiD;tA8|s)gJ!HeHX&P!`F0QJoIz2fl?SpLvRgW_#{v(~{uY9`s z3Kj_1)z%QMQaaOx{h|L1fwgjt{acQr-0mJ5lU3~>h#~2fTfrxIs-V-jWhgyow9HGR zz?$!rJb-`a0bTD9&|%2jlPFF2lo5dl@7uC6X#TF?XN`H)N$LT@=pv#B7FZ&}DTh+9 z8j*-A-^;xLHN6?;VtdYLuXX?K`+2VW_4?(Hypl*xXU6$G zj^p!rAIC{L`XF7u&mMdBzI@Adn7=pmd=W9Q((yNJaEkRE%InUFb6}f(MA842JA^Ft z|0R7W7%BB_Z3TMcV*-o^%&PE*ueike8Sw7K^{RodJaQ}FEel%P3xLA|h_V6Li3C3^ zaG?Bj$$_k<>MhTD-b^Vf`;A1!2|Ia6l^wg>@|L@ABfvD(+V91Bkeg}*+l|uQ2VX4! zQ&ryd=ax(+n+3b`n}OJdWn0izFMZMcrA)uZ&-OFH@3L|@wz9I=rVJlF4F!xyw~N}a zC5Hsa-beS{-DumjMn5W?1hzRH8YzM^NyufIMqq%%j<$oWkI5(@1L+BX~p(WfoVWMySb40j4*k0(x0 z*4FNvnwVe!@}zR=5M39+b*GD1u`tazMc;)_Bt*B_&{bvDpK?96i16_k+zk&b&dSOf zoO8S;lRaZHhAl78o_sPHNaRUV=KzWB%Vq&)<{aKf4Bj8aY?({!=X;qsa=MeD3VMVA z$hWLa1bZ3`oq4i&fA~JQZDX`;&-p%b4-%tL!a)5{I*% z?bY#m*mJ8c7L^0w^X_FCaN!9}k2x!I%Ui+cE($UA@GUAvN50UM<{x2O5HU%esUfE6 zQd;JuQ*1-KFXr9wO4SoG6mUErm{l)j7%8T^ORAiR1 zK(+poZjBp2D<3Rdg_`?Z_-`ONi)(OAsyK=0B-xf@Xi_|vrk=4>qiPf$L9oavZoq~c zX7gp-L%HfVvT<>#b01wzF~_H?7PcKmmnKcCUxccrM${s&Ni+-VwYv#;$koo^(rby= zJ3Z;f?vteOT{Zg)!BG*&^OVInkOe(A!z6XzG`jK~%6Ef1Ga-b3< zPEo|6im6#|HJGVyA6(YR7tfioPJ{|(L8_jVU{|>X(MH6nz(-~rvHnzrpCp!WO)l)C8Jigp5R_o{Qzu-EN z?EC4w`4sal908*aTSI8rPs5PhPV&ULYLCsV?1cig_SF6_Q`h>G!6x&c*n!Xt)~=cL z_Y`pY6`GR*C;X}r@%x+&;S8l`r(0GzC$^6vq8Wi-T8(!rji7U+aUY7wH131%7x&@H z_)#~mD9}f?wEeh=UnX1jMzquy)#3Yjv2%i-KLn8}2N?d~a-u6zE?Vd#1kR^m7Zgmc zzY*@qU&^_PR2Pc+y6_-l++))``0SHyu|nMKyt8gpCXZy~cFWpo0`thx{=v}iE$I*@jCjE<&Uvq#c*m!nbw-%&T^#Os!Bi>{D8 z!bVa6WW-l}tjw778+$^*Xt+>;5XF+Y@h`+k#^4KxSIoL>M`0x7DgQi=uQn@DxaKmG zRB_T^XYmSYW3r{@Y=%@Q9xC6eyvsV|mvB!}F#A>Ijv&Udj^c;rs`IU=T!;|qZ5_Yu zt3)X9Z0mFSJPKIl8*Mxl7z@L#ni_f~Rb1Ceumu-F;o#eBJy=wf`vKPAHL?jGiBV_WDyu2d4(s!*WQ)mh)>Syd2^!D?{{E|%Qqq5!|I3+8}#fq2%bUDn=-*mt{E-3-Z zcM?`h9)H=qb4vLu#;1D*Gm+p?+f7$|yKHqZ#5{U#hg}1MdM9lP#10AXbLn%tx3097 zTuR4L#QEbyTx|Mek>W1o^eo^Td{kF1BjYSi-24UOiF<3ORFZDn5h^m5T{OQEdGZA<+=a z?AAMvi0h*_*_cs7>pMGgl#h3I0?rOEC0C7nLC#z&wnxFQ*SJkzde}^DeX(@)P@I98 z331z6))xD1y_fnVOav#0L0=zgTs{sQ&uLN9;j;2=n|EZ2v;6YqbD8?DipWAORfO#Vj=F|1H{ zX@A1Na9(>!VS=5bRDX9zLu*PgCEXPRX)U>X)aVhw?LC@>O_U~i3W>ZGvTP)`p5;a6 z)d``RgXEy8(3NnyU($vZL%G-&c_Bs1?u^w(k=dtQXaybPqSRqPz_qOdm#w9$VGk%c z`T@&A>_WG8w@ml|#D;o>d&Gm7k5@Ab9hy(DpON%AMJ>E@S>#RosB{+LxuIza1fZll zJx?LwR(D>daH(iI^?(Vcu5E5gudhxECZ3V%GDOb6&gFtNdPf~2UXaFS7T@c0KEj`- zE%kJ`>mofl{fe4?t23MIUZhXT9M*OB9Ckw~QwG%=)0ROcMZI@!8IDRr8i~o>b+a?I zWdI3@3K-mOmBrqRSQ zdM&k7bdknGi+~<3j3JV9qVwK)8FlBUsppv<0%hC&U``G3p_1DCU|h+84R+VDmSTR6 zAO=Txs_&WmJ)HXuar;484OB7Jkbbs9mlkC{{8&!Cm{i)@(7C>|#)`b1TNhOGs0oxMpA>sJxHp}H1LjDRp- zAJrP(6{NB4Pnprfy4qR(RYL6wE%7OC9Cvuo=dpa~x#NTk2N8T>N3yzZ{*1prh01{PL#qXqopg*s3RUoEpZ{%(xJriV21tzgY+%+n={z&~oMl~Ny}j|N z1~X?dg9Qm+wS%2eNOj}46C`NA{PMUo9f&kDGXu;`f;R-@1x^?4PVZ@)m|_p z$|T{B1^jgOTqTV|mCk~oDxc`)n2cNHRXq1T zDXdkn6g)iwvKq?#Vd2FMTBBKT^4p#A!bj!n&z`y6w!0s+eK?*CSO%m0E>^$a2fEfv zXT@|qa!tY!5IaGjo$aCB?d7TS1BSQTz9OaeU}US(Ioc+8_#FT@?c3QiwC4p@`L84W zrv>kybJ}lK_Y+g@N}xLLt~$>#T+S!5a>(wzcG!K<*?*Jhzg6$w>{MsB?{YN5wXj;Y zpT3>tF2&NZrf6t;{_*Y-?{52dE}~zbTGaE`0S=im#p;mG{3FqF!qpKEB4NSxTCKwE}zP}H+do1lnS%mqbAB!6v<^~v^ z2U&CVk3}%B$57u)LrwQ>8V%fn={Hbj2_{Q^VP#p*c~Yk z`MY;-JUrz18u0M6KLOp~zq2co^liCGev^fIBS^B*lQ?Up^nxq^`r{iH7mRX4Vn41hC896jj^D@!9XQV`fnlYa68=dZAWKm2%c=fjFMZ(zes1OAeG5>a*s&S z)2~6NFe}XD$nI|lIo_^g`Tp~B1w6`mn=vo|x+%_X;~?gjNc{wE{C`cjvbHO4dy4C^oyGZ&_px&2 zzFY=F{ki7wBsM{NGidlS1_CEn15~xFLS}=SS(wI0>r-4tr4gwbL>oS-*G(FdvnGun zU3$A8#GI6V&PWLxdAhPC-rmxi_dunt$B_IE(yD6{H|6)zvQ?CM?b!iu< z!agaDmzdpS!yziJW|Ws6B0T$WK{Pz1#nJgx23D&Ar$%b{^0=(mkeL7dAd3LADD)Y6 zrW^O3Be*#wS>)tKRpwN(mk#N&rLUm5SocSJN70%wa^&Ye+c}t_x}-#gxoJdE{g_J) zErkcL+X+^6N@QDDzvpwbcsk*P3ozd6K4u5OCN$mZ7%EqREj^>vN(GcHmEc z&9ysOBkD$_;2`FT(C5lgZKKSjdRo4|b6;iit_rsGHh0{!- zWY5uAIm?s?W*;p7v=p#*y|r-}Gnd zrP`GGaf5{<`&WYdS#j7#Kc=Sg)k&z*{D}#!I-e%r5;MUZ_%VD5`aN-ux{?}jL=rKr zx20OUSbA0%_XGEOLqE!)#D|QVKMZ*~aKh354FqOGSnDd|oSNC1Hc|rOL|GSr6*AkC z2aW-8LdVs1x-Fqs%_HUk>J-1!xsRh;@||SC1@|{GrBm7JnwIQ(bXo7E1ub7UF5Jr4 z@!eoR3|JTR?;4FkS$yCAnC^J@cH<~=L1y~Kr1+XWHC}()XD@BHP5E!rc8#tMsu;$k zYw=tm*9-=mwP5}EG}F;KNUxsvQ6cY&BBb|cBw7QluQ*U$E-O`7UWjT)%L-A+PlZrI zj`}%a9*Y%%=M!#x5g)*-Ot0MWUdAW-Y(ld<5S2+7k%`c4$mdmTS4kC|X-IM46_h5! zHT?EVhO?!|i%L=OBbxKM&h_)_*i53v3#&Jr4#@Y*@sbbXbC0i{3pN=r&vXbr7kNi@!sKMb`x#C)dM$Q}GETrEHKa1l%kXBYsI{X^_KxWd1{;j;Fi)SUz4iOx!(;grCD zS-SQHmBT)@NpE+3(8KpYZE4e7Dl}aN;-w$`%T=zEWP+9Wqy@Bgv)faMou=?sfzj=AGCBrfq08{FxS!TsRZ{^S6 z-3j;3nNMh_aFIMJncu7C|EfQqL~wVcYO`a24#j~iaM}EdmG$iVH!0#^zL}m`MwUuj znFTIzMQF;+*2_G5yO{5*jK7Cw-8?aaP_$V=oxAwy-snl53qFR5EMs1QfwY|iQpSfG zre~M84kQr;<`jB(?(V0jnQ#G&k5I|ErKR8QwZ;JsDD7Qr->W5Z0KCm!!{DA#M|x7` zm)fa*>+!jSgCBT*yaV2D|8JlGYSW96w4U8t`}PE|Pa1jtHu#-u6{2?DEHJbOi{}Pf zp?1N?-yc=6UM%n9Bhz-*-p+0mYy?=d!2cP(?rc0@Tv8S>uO5e-J8h8%Y?bEZIX+$X zT+5|SpLpX0=~#w2xbeS#ws?+{=AiDS2?4b0|FZ%EiXz(c{wApXpD(h)XoLP?i>h|1 z?U&lx+L{_g^B$4K(b_kNBGJx=IEysa5umJE+1&d~c6|E&qPC^6cHuAI)Rv|PKCbAP z&dpEw>4I}|#fCo{q?Ts^_GhlbSId${@fXWzMT&rCBLJ_n%tPJ(tXLMf#^B4f8#|pT ziFqQP>g=j4A4DQem;lVQ{a4)#toLDXv8!KfghtDn{TK0< zXRWAm-!k90r_#du#=U=43hG@WDQcoh)OD|e|af_tdd+~J`yyLz<{d!Q%`x%)G@0D>^N3K4fuyYzm@zvVN zZJwIWT88Ep2twGui$qHQ1t7(Lj}6GK0*Qa|F}t{+?gP#cpB#jo3s0E- zKIsE4BMOL5li2<-KYCTC=?Sl=Fd;U(VvaA;aJev|!$=DrbWO8-kTqJw@jQbambFkP z?Tl0(kZG^SO=yc zNuy$l2Kr`Aco0Xma@wNJ>d^`9GwZ!+Dk-F1&zstDL1l+zm9P+Hb-e^#`SX(Zu<**l zHr>RocWbANlp22sUK~*hukMgEGwVyUFTYr-Yhl3!#WCa|el`3Csl+b6pMNOBcG5x^u zYH}+(&|7$b(q3Tl=()Coq2S#ooe6my^W)KJiOf?5KfQ}40(&0=P3WL8#$tc*Ik z5yi*V(*~_Nq63Nk2)j}Kwd7~qPgSU~-m26ODgYJsH#sO-sM`RWigp$1PB512T0Fk- zD64hiho03Wv_O+Xj6T?aVax|1IeV^DP$u;!TzY|U-t!m$m)1ENhV+5uynMayX2Q~W zPvl4Qhj^*HjpI&)Y(2ykuVTfKpAW}`1pcvl-nL{skq5Ym?P`s}>}L(cWJG&(DvwS; z?O9N32SpT>YU(St#Gu2~ z_BZ#q8lr7y_BDbhDB@G4jD;KNT75=S=-{vv2^dx*eleWcaH7JHt5oKXMRF1fQfik&dOsenw zF*HKNhd)q#A-U9Ji7sj>8O+nKDZx{zfC2Z)1gnx?s7~?kDPkX-hwpw;ruy22dYAP<8zW~8 zEd&WTuvb7*2O7$}kGA{0+d>BF_?4^eqAxXYLi*Rf9Gu{ogcr_)Wn*H+hLBL`)DWH?OrPBt|td%^}JC;P2&YwSpf? zXM&J5qm8;m#cgtFm#92MSOd*lO~@gib#iGe3%m)nI+Jp3%hZ55XyKjYpN+Kl&N0*4 z#F~$*%H6HcsR8|x{b(jE!0+gh-(Fx8=Lh1)&*s^HCjf-{AL$)h-1vtC$S>n(_UPe% zXw-By=dK&&^~~tI=hPXdy+!vx=Y+dfn^MaU5EjYg4l=?R_qfQ(%#3E=+)?ku!{Pch z0Qu24oqN_!z|{9!&%MBaVM$vy9V7g@p7Ul!8t(~(5J-5Ysk|aWH(A|lVdGT7t(B99 z_i3o~swK7r_fH|E-S@^GJa;O%BSJQ?u4a zyO^z@-?0D1Ri|mvrx=`H8AO@np+_)j{4m>BjjedesibarBv*4dNKAzY~brN#VdfjY5`8exX zSX|_aqPmz^aM>oti6UPg>iz^Sn$E%zn$y6_+!0zfiO0HN4$?Nd!SA`lI-Wx1Tz{I3 zKr60wNe}exQQPNSMh#{D#p)!p%*VXwlr-M5;^cY}u;cq&3*CR(g^TJql$NfsXYL5^ z6TC04lqp3CZo369Ghy8V08DYpZR}~ao`8gc3}^k#C!}!uO`awpAvBjry~=eI_gsQm zJDX6c7pEN}gNo&7W117H?ReSb_K<~t#bGsDiwgj!O0WDTkQG?YG{1Gs`m)#b&;$%6 zr~aS%bN%cEA}Yr_ywaf)cELoL3H;KubcOFa9^8rM;xZpockXX&$~q%;2rA7Gn>&(V z7VFVclb!IaNR;6CyyUg3_KZ)0y~Zh_;WOf;0E)535(&_la&JQJvQ|!}(+k{=Z9tbs zGzYwqSlL4{IM(a{6r<-9-LN=i;942+rmtowqvIliT7u#ejmuXOE(kqQEbcE?1-XGR;Q>ktgm(@n{BV8si4eYdX0a~Raki; zwxlcAzka0>na+E=MC$%nma0gkq4`Ud4%%3SH~Z)UDJR{J4_``%UMFC?2USdK_+JSU z#3))JJA&sLDOmmj#$q&DH~H%`Z?$w@EDyB;nLBj{9y$F1MCzOqY$=RbViHN~Z*snu zcLi-$^Rt0X`uK%?XBKXhtw1aw=E?Ty+k_i)jj;8Z*xJ)Qda ze{DE^SjbwubiZ@C7W&9<_}Vc6$QemTp{OERRWloS`lrxA6-`UF?F^%FgB<9Di{nT#IpY`l!9ce@p!5^`_}EXKcaWU~SD#=9L6#$ayshG|{ynY;8S>U`38vhw zsWiacsp5u@nRY8HAO5DI=>P>{@U zi+qnWutwNB9oDfhVM{LGszMji<6PJmcC)O>c72;XQky$afcx(0exSHWagweRNE<#D2 z=q>G?P@HivNRNccy&%=~acEN~I~yE0*Y>3>BJC!Td_)@Pya0Xk78Ow?4y0+6a-pM)pJhM(hCymlDUUK zGUB`-m-6;YMnb;k0o!dTqx-gD=rClb{b-3!4I&bmDxsL()nQ^wjVO`s8C0B*lm>B} zq$M(d$^iP#S+hpR7uq%c*q+f?epJi$7=_<}cVv}|b!0l*4@vr9+=2p$Qv1|X75FYiTg#*2-tsj=G<&1<$I z0n@<27jl#Lj!j>`PEMl$9-(RU+x$M@&2tVGh#~^Os}MIfz2b_sn6q2{g#GOc^Pdt9 z?d`?)4+dLmDs4L3A{hENV~5I+X<7Fc#v+7)nF>?NR5CPPQPELgy0vVihA*C4!p4G> z9Bs#iYLJrDln!d`r`7kA+2fT@SU-zM7W$_r2>8ds`zG$ho&1V&yT_s#4$LVS-||-s zqVpoHFS#a{mp9@<31e&Y6<{45HVzb>j-{pL(7=EJ?7-d_mrj8QnHMh>mYXF{+nq$t zlV?kRL$CzR$C>I_jMoj9`>eMhMNu4|!u4)gCpiNkdH(+WRqrd#aC*FfwW=z*JnLho zpKDsY-yaexE4<5+46L9b;v(r>f?#N) z+mZ3f*p75=6KRvDvD{p#-Uy}HOzRJEMj5|33p=$x^>n2aCGG zFY=Q;a%OyCs0_+O)2+R#KLjqeHoZJ(t9hpLwKv1$*r^=%8i%LblpQ^9^Ve)E>oXMo z*0_T}BB`zJP&H5R`#IYnIB;$C%Pdj9)HJaE{i~(%DsgPN)63I3LHIl;G5W)(vTBPP z_sa>XJ4`v!0*@C*phH5G(hq>85f4cW*{@)vq{o)zjo9}$_d+{n|X^xLhWiR`Bn28)EybckyD>BhRDi8UA6_kgR z(8@r0xOfk)o)H8=0-B1x|HoWtqg_J51XmzmX3}JHN6fi{iI^;$e%iYUN%ptPsc~s4 zMcpA!WrA-_McstlORqm7hF|~>dS9{CAKlHeM0N0RZ<2QjCHjgKkLI;2k;l4Epssu< zBGqP;-7Xr+Nivfk3a{~KN}qWHWRv&`G%Rf3pJ@~B`z@ch_uZ#tjx>n;=9rr#OWf|+ zL_IUY6gINvlsKGHx~!*XA*D{X-s*~n`gX&N@f4jJ(c{0P!%B1mkf)Y7?9R$7m!Yz} zr8RGQ(Y$;&w*HIB-q9jnNMM@9&p|f$jhTdrA2Q$fdS>IfLGWEY?z4D5K&a*!zp!ud zWRUdEa^%ydeE>Rq_KaWRqjy1DUtYv)7`{74OC$5EFbqeswgZG&YVeP)g8r>9@k?p| zgmWOO0~-OZL0el>^745nwTv`#0b;PmicmPxZq1H-y4S zMe;7@Ju?(+$O*J8r!ISx^yUm3pU_a|VXH0Rhc!f6WmYhUOljlhHWU0n3Z^0&N~*&0 zLq9&vz|`L#4Bm|}uoTb#*AX^O&dclJe+>^V7U(FpfTFv_F78*SG(rnKS<_Ud_l1$} za;*4G?tw;%Q~Y*p&M}tJ%T;UI#*{mHKWS83txW5%*;61{=FTIF(MmkbDtZ#Z5rHT< z`Hb}!H`s!A1G)CAhsG7#nqFK5x=#r1WhBPUvDa0?W1ru#T%0RMt;FQ=NElW{Kj`*r zOAfSu5yZPTw0=kQzkpL8)wRs^q1mOczpJ|_iST#q5jXGi>$+EZ0eXrB6Y}*`DD^sv zq^pF~VM|k6#*5SHRO`&{io8`Q=l8cC@^IqqI(Sbr-!vg;5-jsY%~~kSDDA7}+-1nJ zXzq&NY7I)+VKV8d)X!)!iV#ldH-*7{kT z4?diUKRjl;(s7|1$z;qcvUGsQz2*L3G1YA!b#%eR*&S_;aHYGH9ptgN`@PhL8)OZf zI*aXSYS2P0x=b+cT-cGLM>Zt&YSsD8vk$&i*(#(A)^qAIfD|02;*i@^4cmELR#3ps zGBXn>aaaAq8Q^w!08nsh0|)#MdEk^siM!nz3LwxnKd@G;pnwdy&0h&P8 AumAu6 literal 0 HcmV?d00001 diff --git a/doc/8-advanced/mixer-mixer.png b/doc/8-advanced/mixer-mixer.png new file mode 100644 index 0000000000000000000000000000000000000000..27574804c0495df097e3fa32cae1554f76fb93a2 GIT binary patch literal 39651 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 J58{Ra{}%>4xOo5o literal 0 HcmV?d00001 diff --git a/doc/8-advanced/mixer-patchbay.png b/doc/8-advanced/mixer-patchbay.png new file mode 100644 index 0000000000000000000000000000000000000000..bd73cd832e41dd99e8820743af5d84dbb07117ae GIT binary patch literal 37129 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 Nu*KS2(JejV{s7?{P2m6l literal 0 HcmV?d00001 diff --git a/doc/8-advanced/mixer.md b/doc/8-advanced/mixer.md index e69de29b..e0c68a8d 100644 --- a/doc/8-advanced/mixer.md +++ b/doc/8-advanced/mixer.md @@ -0,0 +1,25 @@ +# mixer + +The "Mixer" dialog provides options for overall sound mixing. + +## "Mixer" tab + +![mixer dialog on mixer tab](mixer-mixer.png) + +"Master Volume" controls the overall mix. + +Each chip has several options: +- "Invert" flips the output wave. +- "Volume" controls the chip's volume relative to other chips. +- "Panning" is for left-right control. +- "Front/Rear" does as it says, is only useful for setups with four or more speakers. + +## "Patchbay" tab + +![mixer dialog on patchbay tab](mixer-patchbay.png) + +- "Automatic patchbay" will make appropriate connections when adding, removing, or changing chips and chip settings. +- "Display hidden ports" shows all available connection ports. The "System" unit actually has 16 ports; 1 maps to the left channel, and 2 maps to the right. +- "Display internal" shows two additional units, one for sample previews and one for the metronome sound. + +The graph shows each existing unit along with their outputs, inputs, and the "patch cables" connecting them. Connections can be made by dragging between an output and an input. Right-clicking on a unit gives the option to disconnect all patches from that unit. diff --git a/doc/8-advanced/osc.md b/doc/8-advanced/osc.md index e69de29b..fe90e397 100644 --- a/doc/8-advanced/osc.md +++ b/doc/8-advanced/osc.md @@ -0,0 +1,9 @@ +# oscilloscope + +The Oscilloscope shows the waveform of the mix of all currently playing sounds. + +![oscilloscope view](osc.png) + +Right-clicking on the oscilloscope toggles the adjustment sliders: +- waveform height zoom +- width of viewed audio (window size) in milliseconds. diff --git a/doc/8-advanced/osc.png b/doc/8-advanced/osc.png new file mode 100644 index 0000000000000000000000000000000000000000..dbf48507517ffb1fc14e3bfa94aa1baf4c1b95de GIT binary patch literal 23018 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�> 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 literal 0 HcmV?d00001 diff --git a/doc/8-advanced/pat-manager.md b/doc/8-advanced/pat-manager.md index e69de29b..c9304d43 100644 --- a/doc/8-advanced/pat-manager.md +++ b/doc/8-advanced/pat-manager.md @@ -0,0 +1,22 @@ +# pattern manager + +The pattern manager is useful for cleaning up stray patterns and as an overview of pattern usage. + +![pattern manager dialog](pattern-manager.png) + +"De-duplicate patterns" looks for matching patterns, eliminates all but the first instance, and changes all references in the order list to match. + +"Re-arrange patterns" renumbers patterns to be in sequence, along with changing all references in the order list to match. + +The pattern grid shows each channel and all its patterns. These are color-coded to show how much they're used in the song; these colors can be changed in Settings. + +| default color | name in Settings | meaning | +| --- | --- | --- | +| grey | Unallocated | pattern doesn't exist yet | +| red | Unused | exists but isn't in order list | +| green | Used | used only once in order list | +| yellow | Overused | used multiple times | +| orange | Really overused | used in half or more orders | +| magenta | Combo Breaker | the only used pattern in this channel! | + +Right-clicking a pattern will permanently delete it. diff --git a/doc/8-advanced/pattern-manager.png b/doc/8-advanced/pattern-manager.png new file mode 100644 index 0000000000000000000000000000000000000000..4df068111139e87da43f7871f6e20539efecd45a GIT binary patch literal 36608 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 literal 0 HcmV?d00001 diff --git a/doc/8-advanced/register.png b/doc/8-advanced/register.png new file mode 100644 index 0000000000000000000000000000000000000000..df68b667eb60fb5a1550df84a2cb9977fb1c340f GIT binary patch literal 21075 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 F{{!GX$S42+ literal 0 HcmV?d00001 diff --git a/doc/8-advanced/regview.md b/doc/8-advanced/regview.md index e69de29b..57f526fb 100644 --- a/doc/8-advanced/regview.md +++ b/doc/8-advanced/regview.md @@ -0,0 +1,5 @@ +# register view + +During playback, "Register View" shows the hex data involved with each chip's operation. + +![register view dialog](register.png) diff --git a/doc/8-advanced/stats.md b/doc/8-advanced/stats.md index e69de29b..9f3c5f49 100644 --- a/doc/8-advanced/stats.md +++ b/doc/8-advanced/stats.md @@ -0,0 +1,5 @@ +# statistics + +The Statistics dialog shows running stats such as overall audio processing load and per-chip sample memory. + +![statistics dialog](stats.png) diff --git a/doc/8-advanced/stats.png b/doc/8-advanced/stats.png new file mode 100644 index 0000000000000000000000000000000000000000..9c11db264a07ec9650167222e810dd2e2bcc8a91 GIT binary patch literal 9898 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 Ppn()+)u5FS literal 0 HcmV?d00001 From e5f7f28cd84f3030b5690fca6105f600e235a054 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Mon, 12 Jun 2023 13:34:19 -0700 Subject: [PATCH 070/183] Typo fix. --- doc/4-instrument/8930.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/4-instrument/8930.md b/doc/4-instrument/8930.md index ca57def9..2d671f6d 100644 --- a/doc/4-instrument/8930.md +++ b/doc/4-instrument/8930.md @@ -11,6 +11,6 @@ AY8930 instrument editor consists of these macros. - [Duty] - duty cycle of a pulse wave sequence - [Envelope] - allows shaping an envelope - [AutoEnv Num] - sets the envelope to the channel's frequency multiplied by numerator -- [AutoEnv Den] - sets the envelope to the channel's frequency multiplied by denominator +- [AutoEnv Den] - sets the envelope to the channel's frequency divided by denominator - [Noise AND Mask] - alters the shape/frequency of the noise generator, allowing to produce various interesting sound effects and even PWM phasing - [Noise OR Mask] - see above From 91a7132e796fef7e2aed6dc34d27052242ca86b8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 15:58:16 -0500 Subject: [PATCH 071/183] GUI: add a draw metric --- src/gui/debugWindow.cpp | 1 + src/gui/gui.cpp | 6 ++++++ src/gui/gui.h | 1 + 3 files changed, 8 insertions(+) diff --git a/src/gui/debugWindow.cpp b/src/gui/debugWindow.cpp index bc562a2e..e440b589 100644 --- a/src/gui/debugWindow.cpp +++ b/src/gui/debugWindow.cpp @@ -549,6 +549,7 @@ void FurnaceGUI::drawDebug() { ImGui::Text("audio: %dµs",lastProcTime); ImGui::Text("render: %.0fµs",(double)renderTimeDelta/perfFreq); + ImGui::Text("draw: %.0fµs",(double)drawTimeDelta/perfFreq); ImGui::Text("layout: %.0fµs",(double)layoutTimeDelta/perfFreq); ImGui::Text("event: %.0fµs",(double)eventTimeDelta/perfFreq); ImGui::Separator(); diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 16a05582..edc71376 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -5810,6 +5810,7 @@ bool FurnaceGUI::loop() { renderTimeBegin=SDL_GetPerformanceCounter(); ImGui::Render(); renderTimeEnd=SDL_GetPerformanceCounter(); + drawTimeBegin=SDL_GetPerformanceCounter(); rend->renderGUI(); if (mustClear) { rend->clear(ImVec4(0,0,0,0)); @@ -5824,12 +5825,14 @@ bool FurnaceGUI::loop() { } } rend->present(); + drawTimeEnd=SDL_GetPerformanceCounter(); if (settings.renderClearPos) { rend->clear(uiColors[GUI_COLOR_BACKGROUND]); } layoutTimeDelta=layoutTimeEnd-layoutTimeBegin; renderTimeDelta=renderTimeEnd-renderTimeBegin; + drawTimeDelta=drawTimeEnd-drawTimeBegin; eventTimeDelta=eventTimeEnd-eventTimeBegin; soloTimeout-=ImGui::GetIO().DeltaTime; @@ -6832,6 +6835,9 @@ FurnaceGUI::FurnaceGUI(): renderTimeBegin(0), renderTimeEnd(0), renderTimeDelta(0), + drawTimeBegin(0), + drawTimeEnd(0), + drawTimeDelta(0), eventTimeBegin(0), eventTimeEnd(0), eventTimeDelta(0), diff --git a/src/gui/gui.h b/src/gui/gui.h index 50e90e5e..77bcab26 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1864,6 +1864,7 @@ class FurnaceGUI { int layoutTimeBegin, layoutTimeEnd, layoutTimeDelta; int renderTimeBegin, renderTimeEnd, renderTimeDelta; + int drawTimeBegin, drawTimeEnd, drawTimeDelta; int eventTimeBegin, eventTimeEnd, eventTimeDelta; FurnaceGUIPerfMetric perfMetrics[64]; From f605ae9f6524d3179f0003d85a33e21212cb5e31 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 16:47:54 -0500 Subject: [PATCH 072/183] GUI: prepare for DirectX 11 render backend --- CMakeLists.txt | 20 ++++++- src/gui/gui.cpp | 4 +- src/gui/gui.h | 8 ++- src/gui/render.cpp | 11 ++++ src/gui/render/renderDX11.cpp | 100 ++++++++++++++++++++++++++++++++++ src/gui/render/renderDX11.h | 64 ++++++++++++++++++++++ src/gui/settings.cpp | 5 ++ 7 files changed, 208 insertions(+), 4 deletions(-) create mode 100644 src/gui/render/renderDX11.cpp create mode 100644 src/gui/render/renderDX11.h diff --git a/CMakeLists.txt b/CMakeLists.txt index b55f514f..da3256a1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,6 +60,11 @@ if (APPLE) else() set(WITH_RENDER_OPENGL_DEFAULT ON) endif() +if (WIN32) + set(WITH_RENDER_DX11_DEFAULT ON) +else() + set(WITH_RENDER_DX11_DEFAULT OFF) +endif() if (ANDROID) set(USE_GLES_DEFAULT ON) @@ -75,6 +80,7 @@ option(USE_BACKWARD "Use backward-cpp to print a backtrace on crash/abort." ${US option(WITH_JACK "Whether to build with JACK support. Auto-detects if JACK is available" ${WITH_JACK_DEFAULT}) option(WITH_RENDER_SDL "Whether to build with the SDL_Renderer render backend." ${WITH_RENDER_SDL_DEFAULT}) option(WITH_RENDER_OPENGL "Whether to build with the OpenGL render backend." ${WITH_RENDER_OPENGL_DEFAULT}) +option(WITH_RENDER_DX11 "Whether to build with the DirectX 11 render backend." ${WITH_RENDER_DX11_DEFAULT}) option(USE_GLES "Use OpenGL ES for the OpenGL render backend." ${USE_GLES_DEFAULT}) option(SYSTEM_FFTW "Use a system-installed version of FFTW instead of the vendored one" OFF) option(SYSTEM_FMT "Use a system-installed version of fmt instead of the vendored one" OFF) @@ -302,7 +308,7 @@ else() endif() if (BUILD_GUI) - if (NOT WITH_RENDER_SDL AND NOT WITH_RENDER_OPENGL) + if (NOT WITH_RENDER_SDL AND NOT WITH_RENDER_OPENGL AND NOT WITH_RENDER_DX11) message(FATAL_ERROR "No render backends selected!") endif() endif() @@ -731,6 +737,18 @@ if (WITH_RENDER_OPENGL) message(STATUS "UI render backend: OpenGL") endif() +if (WITH_RENDER_DX11) + if (WIN32) + list(APPEND GUI_SOURCES src/gui/render/renderDX11.cpp) + list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_dx11.cpp) + list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_DX11) + list(APPEND DEPENDENCIES_LIBRARIES D3D11 d3dcompiler) + message(STATUS "UI render backend: DirectX 11") + else() + message(FATAL_ERROR "DirectX 11 render backend only for Windows!") + endif() +endif() + if (NOT WIN32 AND NOT APPLE) CHECK_INCLUDE_FILE(sys/io.h SYS_IO_FOUND) CHECK_INCLUDE_FILE(linux/input.h LINUX_INPUT_FOUND) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index edc71376..732ce551 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6148,7 +6148,7 @@ bool FurnaceGUI::init() { logV("window size: %dx%d",scrW,scrH); if (!initRender()) { - if (settings.renderBackend=="OpenGL") { + if (settings.renderBackend!="SDL" && !settings.renderBackend.empty()) { settings.renderBackend=""; e->setConf("renderBackend",""); e->saveConf(); @@ -6234,7 +6234,7 @@ bool FurnaceGUI::init() { logD("starting render backend..."); if (!rend->init(sdlWin)) { - if (settings.renderBackend=="OpenGL") { + if (settings.renderBackend!="SDL" && !settings.renderBackend.empty()) { settings.renderBackend=""; e->setConf("renderBackend",""); e->saveConf(); diff --git a/src/gui/gui.h b/src/gui/gui.h index 77bcab26..19fdb281 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -71,16 +71,22 @@ enum FurnaceGUIRenderBackend { GUI_BACKEND_SDL=0, - GUI_BACKEND_GL + GUI_BACKEND_GL, + GUI_BACKEND_DX11 }; #ifdef HAVE_RENDER_SDL #define GUI_BACKEND_DEFAULT GUI_BACKEND_SDL #define GUI_BACKEND_DEFAULT_NAME "SDL" #else +#ifdef HAVE_RENDER_DX11 +#define GUI_BACKEND_DEFAULT GUI_BACKEND_DX11 +#define GUI_BACKEND_DEFAULT_NAME "DirectX 11" +#else #define GUI_BACKEND_DEFAULT GUI_BACKEND_GL #define GUI_BACKEND_DEFAULT_NAME "OpenGL" #endif +#endif // TODO: // - add colors for FM envelope and waveform diff --git a/src/gui/render.cpp b/src/gui/render.cpp index 908fd57d..5ad753c2 100644 --- a/src/gui/render.cpp +++ b/src/gui/render.cpp @@ -25,12 +25,17 @@ #ifdef HAVE_RENDER_GL #include "render/renderGL.h" #endif +#ifdef HAVE_RENDER_DX11 +#include "render/renderDX11.h" +#endif bool FurnaceGUI::initRender() { if (rend!=NULL) return false; if (settings.renderBackend=="OpenGL") { renderBackend=GUI_BACKEND_GL; + } else if (settings.renderBackend=="DirectX 11") { + renderBackend=GUI_BACKEND_DX11; } else if (settings.renderBackend=="SDL") { renderBackend=GUI_BACKEND_SDL; } else { @@ -44,6 +49,12 @@ bool FurnaceGUI::initRender() { rend=new FurnaceGUIRenderGL; break; #endif +#ifdef HAVE_RENDER_DX11 + case GUI_BACKEND_DX11: + logI("render backend: DirectX 11"); + rend=new FurnaceGUIRenderDX11; + break; +#endif #ifdef HAVE_RENDER_SDL case GUI_BACKEND_SDL: logI("render backend: SDL_Renderer"); diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp new file mode 100644 index 00000000..6e7bdb6b --- /dev/null +++ b/src/gui/render/renderDX11.cpp @@ -0,0 +1,100 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "renderDX11.h" + +ImTextureID FurnaceGUIRenderDX11::getTextureID(void* which) { + return NULL; +} + +bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { + return false; +} + +bool FurnaceGUIRenderDX11::unlockTexture(void* which) { + return false; +} + +bool FurnaceGUIRenderDX11::updateTexture(void* which, void* data, int pitch) { + return false; +} + +void* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { + return NULL; +} + +bool FurnaceGUIRenderDX11::destroyTexture(void* which) { + return false; +} + +void FurnaceGUIRenderDX11::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +} + +void FurnaceGUIRenderDX11::setBlendMode(FurnaceGUIBlendMode mode) { +} + +void FurnaceGUIRenderDX11::clear(ImVec4 color) { +} + +bool FurnaceGUIRenderDX11::newFrame() { + return true; +} + +void FurnaceGUIRenderDX11::createFontsTexture() { +} + +void FurnaceGUIRenderDX11::destroyFontsTexture() { +} + +void FurnaceGUIRenderDX11::renderGUI() { +} + +void FurnaceGUIRenderDX11::wipe(float alpha) { +} + +void FurnaceGUIRenderDX11::present() { +} + +bool FurnaceGUIRenderDX11::getOutputSize(int& w, int& h) { + return false; +} + +int FurnaceGUIRenderDX11::getWindowFlags() { + return 0; +} + +void FurnaceGUIRenderDX11::preInit() { +} + +bool FurnaceGUIRenderDX11::init(SDL_Window* win) { + return false; +} + +void FurnaceGUIRenderDX11::initGUI(SDL_Window* win) { +} + +bool FurnaceGUIRenderDX11::quit() { + return false; +} + +void FurnaceGUIRenderDX11::quitGUI() { +} + +FurnaceGUIRenderDX11::~FurnaceGUIRenderDX11() { +} diff --git a/src/gui/render/renderDX11.h b/src/gui/render/renderDX11.h new file mode 100644 index 00000000..6900848f --- /dev/null +++ b/src/gui/render/renderDX11.h @@ -0,0 +1,64 @@ +/** + * Furnace Tracker - multi-system chiptune tracker + * Copyright (C) 2021-2023 tildearrow and contributors + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include "../gui.h" + +class FurnaceGUIRenderDX11: public FurnaceGUIRender { + ID3D11Device* device; + ID3D11DeviceContext* context; + ID3D11RenderTargetView* renderTarget; + SDL_Window* sdlWin; + IDXGISwapChain* swapchain; + float quadVertex[4][3]; + unsigned int quadBuf; + + void createRenderTarget(); + + public: + ImTextureID getTextureID(void* which); + bool lockTexture(void* which, void** data, int* pitch); + bool unlockTexture(void* which); + bool updateTexture(void* which, void* data, int pitch); + void* createTexture(bool dynamic, int width, int height); + bool destroyTexture(void* which); + void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + void setBlendMode(FurnaceGUIBlendMode mode); + void clear(ImVec4 color); + bool newFrame(); + void createFontsTexture(); + void destroyFontsTexture(); + void renderGUI(); + void wipe(float alpha); + void present(); + bool getOutputSize(int& w, int& h); + int getWindowFlags(); + void preInit(); + bool init(SDL_Window* win); + void initGUI(SDL_Window* win); + void quitGUI(); + bool quit(); + FurnaceGUIRenderDX11(): + device(NULL), + context(NULL), + renderTarget(NULL), + sdlWin(NULL), + swapchain(NULL) { + memset(quadVertex,0,4*3*sizeof(float)); + } +}; diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 9648de12..5e57640d 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -1303,6 +1303,11 @@ void FurnaceGUI::drawSettings() { settings.renderBackend="SDL"; } #endif +#ifdef HAVE_RENDER_DX11 + if (ImGui::Selectable("DirectX 11",curRenderBackend=="DirectX 11")) { + settings.renderBackend="DirectX 11"; + } +#endif #ifdef HAVE_RENDER_GL if (ImGui::Selectable("OpenGL",curRenderBackend=="OpenGL")) { settings.renderBackend="OpenGL"; From 2c912da89af3182cd52216342e96ec75504e2ed5 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 19:17:46 -0500 Subject: [PATCH 073/183] GUI: DirectX 11 render backend, part 1 --- CMakeLists.txt | 2 +- src/gui/render/renderDX11.cpp | 129 ++++++++++++++++++++++++++++++++-- src/gui/render/renderDX11.h | 12 +++- 3 files changed, 134 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index da3256a1..30174880 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -742,7 +742,7 @@ if (WITH_RENDER_DX11) list(APPEND GUI_SOURCES src/gui/render/renderDX11.cpp) list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_dx11.cpp) list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_DX11) - list(APPEND DEPENDENCIES_LIBRARIES D3D11 d3dcompiler) + list(APPEND DEPENDENCIES_LIBRARIES d3d11 d3dcompiler) message(STATUS "UI render backend: DirectX 11") else() message(FATAL_ERROR "DirectX 11 render backend only for Windows!") diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 6e7bdb6b..dcfb0998 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -17,7 +17,61 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +#define INCLUDE_D3D11 #include "renderDX11.h" +#include +#include "backends/imgui_impl_dx11.h" +#include "../../ta-log.h" + +const D3D_FEATURE_LEVEL possibleFeatureLevels[2]={ + D3D_FEATURE_LEVEL_11_0, + D3D_FEATURE_LEVEL_10_0 +}; + +bool FurnaceGUIRenderDX11::destroyRenderTarget() { + if (renderTarget!=NULL) { + renderTarget->Release(); + renderTarget=NULL; + return true; + } + return false; +} + +bool FurnaceGUIRenderDX11::createRenderTarget() { + ID3D11Texture2D* screen=NULL; + HRESULT result; + + destroyRenderTarget(); + + if (swapchain==NULL || device==NULL) { + logW("createRenderTarget: swapchain or device are NULL!"); + return false; + } + + result=swapchain->GetBuffer(0,IID_PPV_ARGS(&screen)); + if (result!=S_OK) { + logW("createRenderTarget: could not get buffer! %.8x",result); + return false; + } + if (screen==NULL) { + logW("createRenderTarget: screen is null!"); + return false; + } + + result=device->CreateRenderTargetView(screen,NULL,&renderTarget); + if (result!=S_OK) { + logW("createRenderTarget: could not create render target view! %.8x",result); + screen->Release(); + return false; + } + if (renderTarget==NULL) { + logW("createRenderTarget: what the hell the render target is null?"); + screen->Release(); + return false; + } + + return true; +} ImTextureID FurnaceGUIRenderDX11::getTextureID(void* which) { return NULL; @@ -50,25 +104,40 @@ void FurnaceGUIRenderDX11::setBlendMode(FurnaceGUIBlendMode mode) { } void FurnaceGUIRenderDX11::clear(ImVec4 color) { + float floatColor[4]={ + color.x*color.w, + color.y*color.w, + color.z*color.w, + color.w, + }; + + context->OMSetRenderTargets(1,&renderTarget,NULL); + context->ClearRenderTargetView(renderTarget,floatColor); } bool FurnaceGUIRenderDX11::newFrame() { + ImGui_ImplDX11_NewFrame(); return true; } void FurnaceGUIRenderDX11::createFontsTexture() { + ImGui_ImplDX11_CreateDeviceObjects(); } void FurnaceGUIRenderDX11::destroyFontsTexture() { + ImGui_ImplDX11_InvalidateDeviceObjects(); } void FurnaceGUIRenderDX11::renderGUI() { + ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData()); } void FurnaceGUIRenderDX11::wipe(float alpha) { + // TODO } void FurnaceGUIRenderDX11::present() { + swapchain->Present(1,0); } bool FurnaceGUIRenderDX11::getOutputSize(int& w, int& h) { @@ -83,18 +152,68 @@ void FurnaceGUIRenderDX11::preInit() { } bool FurnaceGUIRenderDX11::init(SDL_Window* win) { - return false; + SDL_SysWMinfo sysWindow; + D3D_FEATURE_LEVEL featureLevel; + + SDL_VERSION(&sysWindow.version); + if (SDL_GetWindowWMInfo(win,&sysWindow)==SDL_FALSE) { + logE("could not get window WM info! %s",SDL_GetError()); + return false; + } + HWND window=(HWND)sysWindow.info.win.window; + + DXGI_SWAP_CHAIN_DESC chainDesc; + memset(&chainDesc,0,sizeof(chainDesc)); + chainDesc.BufferDesc.Width=0; + chainDesc.BufferDesc.Height=0; + chainDesc.BufferDesc.Format=DXGI_FORMAT_R8G8B8A8_UNORM; + chainDesc.BufferDesc.RefreshRate.Numerator=60; + chainDesc.BufferDesc.RefreshRate.Denominator=1; + chainDesc.SampleDesc.Count=1; + chainDesc.SampleDesc.Quality=0; + chainDesc.BufferUsage=DXGI_USAGE_RENDER_TARGET_OUTPUT; + chainDesc.BufferCount=2; + chainDesc.OutputWindow=window; + chainDesc.Windowed=TRUE; // TODO: what if we're in full screen mode? + chainDesc.SwapEffect=DXGI_SWAP_EFFECT_DISCARD; + chainDesc.Flags=DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH; + + HRESULT result=D3D11CreateDeviceAndSwapChain(NULL,D3D_DRIVER_TYPE_HARDWARE,NULL,0,possibleFeatureLevels,2,D3D11_SDK_VERSION,&chainDesc,&swapchain,&device,&featureLevel,&context); + if (result!=S_OK) { + logE("could not create device and/or swap chain! %.8x",result); + return false; + } + + createRenderTarget(); + return true; } void FurnaceGUIRenderDX11::initGUI(SDL_Window* win) { + IMGUI_CHECKVERSION(); + ImGui::CreateContext(); + + ImGui_ImplSDL2_InitForD3D(win); + ImGui_ImplDX11_Init(device,context); } bool FurnaceGUIRenderDX11::quit() { - return false; + destroyRenderTarget(); + + if (swapchain!=NULL) { + swapchain->Release(); + swapchain=NULL; + } + if (context!=NULL) { + context->Release(); + context=NULL; + } + if (device!=NULL) { + device->Release(); + device=NULL; + } + return true; } void FurnaceGUIRenderDX11::quitGUI() { -} - -FurnaceGUIRenderDX11::~FurnaceGUIRenderDX11() { + ImGui_ImplDX11_Shutdown(); } diff --git a/src/gui/render/renderDX11.h b/src/gui/render/renderDX11.h index 6900848f..9db29851 100644 --- a/src/gui/render/renderDX11.h +++ b/src/gui/render/renderDX11.h @@ -18,17 +18,24 @@ */ #include "../gui.h" +#ifdef INCLUDE_D3D11 +#include +#else +typedef void ID3D11DeviceContext; +typedef void ID3D11RenderTargetView; +typedef void IDXGISwapChain; +#endif class FurnaceGUIRenderDX11: public FurnaceGUIRender { ID3D11Device* device; ID3D11DeviceContext* context; ID3D11RenderTargetView* renderTarget; - SDL_Window* sdlWin; IDXGISwapChain* swapchain; float quadVertex[4][3]; unsigned int quadBuf; - void createRenderTarget(); + bool destroyRenderTarget(); + bool createRenderTarget(); public: ImTextureID getTextureID(void* which); @@ -57,7 +64,6 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { device(NULL), context(NULL), renderTarget(NULL), - sdlWin(NULL), swapchain(NULL) { memset(quadVertex,0,4*3*sizeof(float)); } From cf144f4fe9e24dbfbe89c2067ddf909968fde588 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 19:43:26 -0500 Subject: [PATCH 074/183] GUI: DirectX 11 render backend, part 2 --- src/gui/gui.cpp | 3 ++- src/gui/gui.h | 1 + src/gui/render/abstract.cpp | 5 ++++- src/gui/render/renderDX11.cpp | 22 +++++++++++++++++++++- src/gui/render/renderDX11.h | 7 +++++-- 5 files changed, 33 insertions(+), 5 deletions(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 732ce551..6ea8a941 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3420,6 +3420,7 @@ bool FurnaceGUI::loop() { logV("portrait: %d (%dx%d)",portrait,scrW,scrH); logD("window resized to %dx%d",scrW,scrH); updateWindow=true; + rend->resized(ev); break; case SDL_WINDOWEVENT_MOVED: scrX=ev.window.data1; @@ -5824,8 +5825,8 @@ bool FurnaceGUI::loop() { } } } - rend->present(); drawTimeEnd=SDL_GetPerformanceCounter(); + rend->present(); if (settings.renderClearPos) { rend->clear(uiColors[GUI_COLOR_BACKGROUND]); } diff --git a/src/gui/gui.h b/src/gui/gui.h index 19fdb281..81266e43 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1248,6 +1248,7 @@ class FurnaceGUIRender { virtual bool destroyTexture(void* which); virtual void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); virtual void setBlendMode(FurnaceGUIBlendMode mode); + virtual void resized(const SDL_Event& ev); virtual void clear(ImVec4 color); virtual bool newFrame(); virtual void createFontsTexture(); diff --git a/src/gui/render/abstract.cpp b/src/gui/render/abstract.cpp index 996cf4e8..a45c4ecd 100644 --- a/src/gui/render/abstract.cpp +++ b/src/gui/render/abstract.cpp @@ -49,6 +49,9 @@ void FurnaceGUIRender::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode void FurnaceGUIRender::setBlendMode(FurnaceGUIBlendMode mode) { } +void FurnaceGUIRender::resized(const SDL_Event& ev) { +} + void FurnaceGUIRender::clear(ImVec4 color) { } @@ -97,4 +100,4 @@ void FurnaceGUIRender::quitGUI() { } FurnaceGUIRender::~FurnaceGUIRender() { -} \ No newline at end of file +} diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index dcfb0998..767878ce 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -48,6 +48,15 @@ bool FurnaceGUIRenderDX11::createRenderTarget() { return false; } + DXGI_SWAP_CHAIN_DESC chainDesc; + memset(&chainDesc,0,sizeof(chainDesc)); + if (swapchain->GetDesc(&chainDesc)!=S_OK) { + logW("createRenderTarget: could not get swapchain desc!"); + } else { + outW=chainDesc.BufferDesc.Width; + outH=chainDesc.BufferDesc.Height; + } + result=swapchain->GetBuffer(0,IID_PPV_ARGS(&screen)); if (result!=S_OK) { logW("createRenderTarget: could not get buffer! %.8x",result); @@ -103,6 +112,15 @@ void FurnaceGUIRenderDX11::setTextureBlendMode(void* which, FurnaceGUIBlendMode void FurnaceGUIRenderDX11::setBlendMode(FurnaceGUIBlendMode mode) { } +void FurnaceGUIRenderDX11::resized(const SDL_Event& ev) { + destroyRenderTarget(); + swapchain->ResizeBuffers(0,0,0,DXGI_FORMAT_UNKNOWN,0); + + + + createRenderTarget(); +} + void FurnaceGUIRenderDX11::clear(ImVec4 color) { float floatColor[4]={ color.x*color.w, @@ -141,7 +159,9 @@ void FurnaceGUIRenderDX11::present() { } bool FurnaceGUIRenderDX11::getOutputSize(int& w, int& h) { - return false; + w=outW; + h=outH; + return true; } int FurnaceGUIRenderDX11::getWindowFlags() { diff --git a/src/gui/render/renderDX11.h b/src/gui/render/renderDX11.h index 9db29851..1a3d7dca 100644 --- a/src/gui/render/renderDX11.h +++ b/src/gui/render/renderDX11.h @@ -31,8 +31,8 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { ID3D11DeviceContext* context; ID3D11RenderTargetView* renderTarget; IDXGISwapChain* swapchain; + int outW, outH; float quadVertex[4][3]; - unsigned int quadBuf; bool destroyRenderTarget(); bool createRenderTarget(); @@ -46,6 +46,7 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { bool destroyTexture(void* which); void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); void setBlendMode(FurnaceGUIBlendMode mode); + void resized(const SDL_Event& ev); void clear(ImVec4 color); bool newFrame(); void createFontsTexture(); @@ -64,7 +65,9 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { device(NULL), context(NULL), renderTarget(NULL), - swapchain(NULL) { + swapchain(NULL), + outW(0), + outH(0) { memset(quadVertex,0,4*3*sizeof(float)); } }; From cd163cd9a03e68b9b8c14e7534ab56e41af5395e Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Mon, 12 Jun 2023 19:31:24 -0700 Subject: [PATCH 075/183] Expanding interface docs. --- doc/2-interface/asset-list.md | 33 ++++++++++++++-- doc/2-interface/control-edit.png | Bin 0 -> 635 bytes doc/2-interface/control-metronome.png | Bin 0 -> 623 bytes doc/2-interface/control-play-pattern.png | Bin 0 -> 657 bytes doc/2-interface/control-play-repeat.png | Bin 0 -> 313 bytes doc/2-interface/control-play.png | Bin 0 -> 351 bytes doc/2-interface/control-repeat.png | Bin 0 -> 693 bytes doc/2-interface/control-step.png | Bin 0 -> 413 bytes doc/2-interface/control-stop.png | Bin 0 -> 460 bytes doc/2-interface/controls-classic.png | Bin 0 -> 21016 bytes doc/2-interface/controls-compact.png | Bin 0 -> 16054 bytes doc/2-interface/controls-split.png | Bin 0 -> 20672 bytes doc/2-interface/controls-vertical.png | Bin 0 -> 10175 bytes doc/2-interface/instruments-folder.png | Bin 0 -> 50247 bytes doc/2-interface/instruments.png | Bin 0 -> 52044 bytes doc/2-interface/play-edit-controls.md | 32 +++++++++++----- doc/2-interface/samples.png | Bin 0 -> 19676 bytes doc/2-interface/song-info.md | 46 ++++++++++++++++++++++- doc/2-interface/wavetables.png | Bin 0 -> 11257 bytes 19 files changed, 98 insertions(+), 13 deletions(-) create mode 100644 doc/2-interface/control-edit.png create mode 100644 doc/2-interface/control-metronome.png create mode 100644 doc/2-interface/control-play-pattern.png create mode 100644 doc/2-interface/control-play-repeat.png create mode 100644 doc/2-interface/control-play.png create mode 100644 doc/2-interface/control-repeat.png create mode 100644 doc/2-interface/control-step.png create mode 100644 doc/2-interface/control-stop.png create mode 100644 doc/2-interface/controls-classic.png create mode 100644 doc/2-interface/controls-compact.png create mode 100644 doc/2-interface/controls-split.png create mode 100644 doc/2-interface/controls-vertical.png create mode 100644 doc/2-interface/instruments-folder.png create mode 100644 doc/2-interface/instruments.png create mode 100644 doc/2-interface/samples.png create mode 100644 doc/2-interface/wavetables.png diff --git a/doc/2-interface/asset-list.md b/doc/2-interface/asset-list.md index 7e8dc9a6..44c3fefa 100644 --- a/doc/2-interface/asset-list.md +++ b/doc/2-interface/asset-list.md @@ -1,11 +1,38 @@ # instrument list -image +![instruments window](instruments.png) + +Buttons from left to right: +- **Add:** Creates a new, default instrument. +- **Duplicate:** Duplicates the currently selected instrument. +- **Open:** Brings up a file dialog to load a file as a new instrument at the end of the list. +- **Save:** Brings up a file dialog to save the currently selected instrument. +- **Toggle folders/standard view:** Enables (and disables) folder view, explained below. +- **Move up:** Moves the currently selected instrument up in the list. Pattern data will automatically be adjusted to match. +- **Move down:** Same, but downward. +- **Delete:** Deletes the currently selected instrument. Pattern data will be adjusted to use the next available instrument in the list. + +## folder view + +![instruments window in folder view](instruments-folder.png) + +In folder view, the "Move up" and "Move down buttons disappear and a new one appears: +- **New Folder:** Creates a new folder. + +Instruments may be dragged from folder to folder and even rearranged within folders without changing their associated numbers. + +Right-clicking on a folder allows one to rename or delete it. Deleting a folder does not remove the instruments in it. # wavetable list -image +![wavetables window](wavetables.png) + +Everything from the instrument list applies here also, with one major difference: Moving waves around with the buttons will change their associated numbers in the list but _not_ in pattern or instrument data. Be careful! # sample list -image +![samples window](samples.png) + +Everything from the wavetables list applies here also, with the addition of two buttons: +- **Preview:** Plays the selected sample at its default note. +- **Stop preview:** Stops the sample playback. diff --git a/doc/2-interface/control-edit.png b/doc/2-interface/control-edit.png new file mode 100644 index 0000000000000000000000000000000000000000..35fce78c7800c164e3e128a92fdf967a1d171cb4 GIT binary patch literal 635 zcmV->0)+jEP)H5l+GuY*WgXOt1wG7j}rHapW>$z zwx(~7$b8sQAoan6D#c>LAB7`$A`1XS{THr(?IUF`m1b+#QJ7UJop9WpztwDa9Fhfi zm}`7}H-1PNYTJsGg`Qp*|J1W-l`@Ikt?Z|T3ub;oY908GCsW&lKS$OE=Y>QB`URb? V5kE*_&oux5002ovPDHLkV1iLSL~8&5 literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-metronome.png b/doc/2-interface/control-metronome.png new file mode 100644 index 0000000000000000000000000000000000000000..0c66725653361836a835c62b1bbc852cb00b9664 GIT binary patch literal 623 zcmV-#0+9WQP)lqQy}higtVl>m%gf8*;o(zLQ~Ue-X=!PGettAGG`P69qobpRg@raYHf?QfNl8he zp`o0doK{v=kdTn=?d?THMQCVft*xzJUtjh0_1D+e=;-KCQBhJ-Qpm{2*x1FLSI z$vHVWT3TB1@$r9ufB5+L@bK{K>+9kSuxJ1P0YFJaK~#8N?UcoC>p%cSeasMMX6BTc zx$ph|?{v{fi5+L`Y}!rF?q2CgGqUeUzr`${pY0`NAhVY+hj@6QUn|BSR;=|y2~kC6 zg{(w_g^~u=qMl6F7ZzxxK%oKI>UXGSp%ElRbSmpqL5&0m8pGT=<%VbhH#R72<^qQJ z-bdg%Lqz3BD4arhGnZ9Pg~BzYH*;F$S}07A-Nh#pp)kdA7yp?Gg%(fl;+B?B=+bi+ zJ-Wi(r1}9?anw)?-WijY;R{9oa_=tGR^I_ zi9GTb4%$51+qHd1`@nb0b9CR|;4((sZ`)TeIP_%zSH4e?fVkgw9>=WE-*GX15wFO+ zQ2@Y{!jWKk4#1@p5+}7({(&JTL$N literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-play-pattern.png b/doc/2-interface/control-play-pattern.png new file mode 100644 index 0000000000000000000000000000000000000000..a6eb5d01eff4e36bf500014d1424181488b7d881 GIT binary patch literal 657 zcmV;C0&e|@P)x&GpwwvNJvPfrKRiZ>tSJGYin!v_V&HKy@-g2udlCOUS67-nnXlI zXJ=>i_4SsPmihVlNl8gnRaJ+Fhw<_8-QC^1yu8xV(z?33QBhH3WMuO4@@#BuuCA_^ zmzP>vTED-)p`oF%v9a6R+wAP@_xJa~!NE{aPFMdt&d%oM=5=*-goK2Jg@v`XweIfj z@9*!z!ooW{JA8b6F)=ZTiHYFg;66S+r>|)x0003jNkl{ElQvG%>uS&aC)t)Ux`fv&FsyhWx*sBP-A4m)I7?Sj^e0tG!@>3> z^*ElzK*b5_GrxcV!a=eKhGEN>Cq_OC8)AwiZF-Z;R%{0fk+cfmOoSAz0G7T*5{(1; z+&U?5Iymno6#$=K>R_!OaNJ}L0Pmt^1Q9nlZ50@nca35RoQx%aIB3Zr15Q~5%9;$y z;8dBQupxsgICV?VcsACqgR|2Y`1d?y_yFhd$Qq|(hTncWH481oRrGX`63jVwYBu%|z|sE_Lj12tc$$7>S~V!4hAI=L8} r`4UOFik3`dF(iMtR_ppPLjL^%CrueL2XejY00000NkvXXu0mjfk*G+; literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-play-repeat.png b/doc/2-interface/control-play-repeat.png new file mode 100644 index 0000000000000000000000000000000000000000..853cdcffee4396101838274feca24dce449ef147 GIT binary patch literal 313 zcmV-90mlA`P)FMcZWo0@#I%Z~OF)=at`1ndnN{EPv`}_M*QBhMq{r&6f>png{K|w)jX=!L^XhK3l^OB$k0001#NklnhWLF)$g>sgrp00000 LNkvXXu0mjf#;A@G literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-play.png b/doc/2-interface/control-play.png new file mode 100644 index 0000000000000000000000000000000000000000..feafe1681d86d27ad861325375651b2612157dcf GIT binary patch literal 351 zcmV-l0igbgP)5{E0PAIdY7UfV&w$N*%WPPWR@9aDvtS5NJstDXWqTn061Iu} xTU7vC2~gG8DgbO%0&Law!B$=0Uod@b=nui93A{ue*j4}l002ovPDHLkV1iCdb#-<6`ud%nolHzj`}_Op>FJS?kz!(EHa0eGZEf}S z_5S|;adC0%?Cd!?IfjOYv9Yn*+S*1&MtOO8I5;>#K|%5H@rj9vV`F2zy}f>Ze(mk; z(b3VVsi{9dKT}gv`T6G z+1bFr!0PJiy1KgE-QDKq=682@_xJaurKOdXm2`A;QBhIE#KdJ~WsHoBuCA`XzrW|_ z=eD-Cf`WoeOG{K#RDpqkQc_aO%gaSYMOIc;T3TAPw6x63%wJz$U0q#@ii%lTS(%xc zs;a7ujg5GCc)Yy4eSLjtX=(58?{jl=L_|cUrl!=?)Q*mhN=iyiO-);9&f)+70X|7Y zK~#8N?aHS|}ZB9#!M2zv2-e%-U>9tZVJ2c00000NkvXXu0mjfIV4o_ literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-step.png b/doc/2-interface/control-step.png new file mode 100644 index 0000000000000000000000000000000000000000..fd6262da71130a3db51077004a8cae136d8aecb8 GIT binary patch literal 413 zcmV;O0b>4%P)U3Z&d!I2hyDHiXlQ8u{{CHEU3hqStgNib$;nGg zOE@?mU006~FL_t(| zUhU4;vV$-TMN!G7_LAOvz4iaUE)3w&goweshV19FY{C1s%Cb`ja87(gKRIfHAjG^d z&;|=E^16aaFM#+NyaMYkn!wP-aa;%S7}rA{{BIG_xIP2Z$mN9>8^lTwFuw}=J!63Q z#Yzw`jgsy-0DDxztAN_$0k|w%3AY5U+B;Kd5^Qq`petz4H@Go-x`z|XIvCOWt$)y7 z|Bn&fqao=1)~jf*m2^sw(mh%tm7tycL$oDyNJNoMM&5#)o1+N9%v@#w20<~lL;0LiGN(ToPfRCYNUBKSn6 z4j>RdwS6!`T@H+fEclVu0Aiu#YXDgfKkKBO=afnVn5ydI8ZgGLfW4jr-sk|U-aqdC zWIKM|yl>mFe*b7PP8vQXEl!Fp|Is||StuakC~7`d>IWq>wvA^PLM}lmqVN*)nTx^4 zN>OE(ga$o#3nVEOS{Nh1;mRVMQ9)jXf@Gi*ocaYMj}oAF2|`r>0000K literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-classic.png b/doc/2-interface/controls-classic.png new file mode 100644 index 0000000000000000000000000000000000000000..a8a093fa92fbe3d28de256c00fb0c840bf9b82ee GIT binary patch literal 21016 zcmZ_$V|XS_)HVvo&cx2dwr$&)WMWTj+qP|EV%s(+b|w?s$?p4k-{;srzWx13A4y+V zS65e8t#x8mB9s&)5#ey*KtMncrKQAFKtMnTfgd#(FyPE;Sf3*Zi1LoKn6R3=o)JtL zLUf=q6P!dpl>vy6u46wHHe`_jdUW9RwLOT}BNm)CdI+dDjs`L;nGCs%bO;$N4F(2E z;%y{lxtM%@IHj6@hh7(zaDChAv#2HxDd!w)mHde_KUXDn{UdGgX-)*i{8I3 z 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 W2smlyKMHhw1Q9IGnm3yIQvVCO_aC7E literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-compact.png b/doc/2-interface/controls-compact.png new file mode 100644 index 0000000000000000000000000000000000000000..b0d1b0d40ba37563920bb345a0f47580fa1376d7 GIT binary patch literal 16054 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 literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-split.png b/doc/2-interface/controls-split.png new file mode 100644 index 0000000000000000000000000000000000000000..235ea2ce381e9d1f25a9332c04eda7a9b68f9559 GIT binary patch literal 20672 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 literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-vertical.png b/doc/2-interface/controls-vertical.png new file mode 100644 index 0000000000000000000000000000000000000000..98a89cc4ec81a52003ac00f7cef4160030b1d817 GIT binary patch literal 10175 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 literal 0 HcmV?d00001 diff --git a/doc/2-interface/instruments-folder.png b/doc/2-interface/instruments-folder.png new file mode 100644 index 0000000000000000000000000000000000000000..18e4ae630f1f07fc5523f83c3493540d552363a3 GIT binary patch literal 50247 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 z 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≪HimYZKjU?r;tR4^r@fO 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 Appearance to one of these: +The layout can be changed in Settings > Appearance to one of these: ### classic -image +![classic play/edit controls](controls-classic.png) ### compact -image +![compact play/edit controls](controls-compact.png) ### compact (vertical) -image +![compact vertical play/edit controls](controls-vertical.png) + +### split + +![split play and edit controls](controls-split.png) diff --git a/doc/2-interface/samples.png b/doc/2-interface/samples.png new file mode 100644 index 0000000000000000000000000000000000000000..816512fbb1261d26a014d000adb5d0034249ce6f GIT binary patch literal 19676 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

    4mcKoxy~ss!rlEz8;@Fm!62>4};rB_HC-Lx+F0 z`hmEs<*15{7HuVhxhhzejwTKn)s( zp!jp?(OWMt3kpFyv6so6@*&vAcN}fXUn;@V7QWt;(%%{G&9J0}pd4q{A}@7R+(J0C z8Ku>lIczlOvjWb33!kQ0dzCI>A|=bKOVb zgCRxb0NwfKw)mheR;QTR;F1y|DnK3{lXtxcTqEhYYWew{MWHeqoAq@49FVs{j*h8W zIz3AQ+{=tiX64f%| zd5>cUY48u%GCm4?HRb3Zs(PB(+!dWJZxC*E%3!A_g9OwTwdM}|xqz9D(M?fPJGhVb zdgIFACSP?h_T=i)4YR2rF^*Vr#bEX>8q+4MKG)4;2H>eeE+#?rH?_Nlg|lrV81-o6 z_?DOuTxJ~*Fi~|)s3JKA-#g^>UaYYZ|1P}1*=DAnJ z&MmYhT(-35<`$@|t{)z|l5uxYN+=D+>Dr3B0XA?lJI(t%&c)NUvB=0GqD4Fb>@eM@ zeOq(P$)*-t@yuXT?w#D~9FDiMkU`4~b)eo|VlC-$EI5y-AR#WkQxRiFq-PIkYCfWq z)c|I_@f1y)mhQ0&pu%uy47R?q;LMCI6vr24p0qSFL#y<;?%yH*$(IZ0(d&j(wiqV3 zqDo1uBM{;^fHmN_TaSps|Xw{5R(JS)sJGnnr8H zIP81`=-_E9_!Ajwxozfv%5abK&V_K#e7_8|57tiHuiKDlA~7*s1Zp>O#*pvdf%Ud6 ze~7lFLIs>bS!-?kkO*AWQLV|h7QT@ms&KY9&zQ5>n7Rszz{|gx=hOD(YJP#IZx%Fx z#{B$E8F8Vx5Y2Cw3_Y0a&E#Hx{b^b@2Q<5|a|x{wP6YP?;rI|{7?)HKdCJ(~;ks=g zTxjoHgb3d%ab>4F64el@{f6}R(A#i2*NR7{EjTYuP_zbfPa1;X1~gan4rp?X=bGn# z`9&B7*6wd!MkrxM_tY6Fp%q-0-2H3|29l_`UXp+M#V3zChY`I`*C)l5<~SAU_ymjb z?6X-I#?bq2f?G7RPaA(nSqg4UMhZ!zyNE-SRM;^{xha^>>XWqM^MGimZ0ab>3v7t>q9{8%)kul3pLglR~1uZreO>dT;oohLjmOD#&b#GLnN%A;6#MgiY zbn-;ZlN<3eXP?9r_jC;J J)N0vB{SR{RO|Sp} literal 0 HcmV?d00001 diff --git a/doc/2-interface/song-info.md b/doc/2-interface/song-info.md index e2aa806f..1a4cd03e 100644 --- a/doc/2-interface/song-info.md +++ b/doc/2-interface/song-info.md @@ -1,5 +1,49 @@ # song info -# sub-songs +- "Name" is for the track's title. +- "Author" is used to list the contributors to a song. If the song is a cover of someone else's track, it's customary to list their name first, followed by `[cv. YourName]`. +- "Album" can be used to store the associated album name, the name of the game the song is from, or whatever. +- "System" is for the game or computer the track is designed for. This is automatically set when creating a new tune, but it can be changed to anything one wants. The "Auto" button will provide a guess based on the chips in use. + +All of this metadata will be included in a VGM export. This isn't the case for a WAV export, however. + +"Tuning (A-4)" allows one to set tuning based on the note A-4, which should be 440 in most cases. Opening an Amiga MOD will set it to 436 for hardware compatibility. + +# subsongs + +This window allows one to create **subsongs** – multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. + +- The drop-down box selects the current subsong. +- The `+` button adds a new subsong. +- The `−` button permanently deletes the current subsong (unless it's the only one). +- "Name" sets the title of the current subsong. +- The box at the bottom can store any arbitrary text, like a separate "Comments" box for the current subsong. # speed + +There are multiple ways to set the tempo of a song. + +**Tick Rate** sets the frequency of ticks per second, the rate at which notes and effects are processed. +- All values are allowed for all chips, but most chips have hardware limitations that mean they should stay at either 60 (approximately NTSC) or 50 (exactly PAL). +- Clicking the Tick Rate button switches to a more traditional **Base Tempo** BPM setting. + +**Speed** sets the number of ticks per row. +- Clicking the "Speed" button changes to more complex modes covered in the [grooves] page. + +**Virtual Tempo** simulates any arbitrary tempo without altering the tick rate. It does this by adding or skipping ticks to approximate the tempo. The two numbers represent a ratio applied to the actual tick rate. Example: +- Set tick rate to 150 BPM (60 Hz) and speed to 6. +- Set the first virtual tempo number (numerator) to 200. +- Set the second virtual tempo number (denominator) to 150. +- The track will play at 200 BPM. +- The ratio doesn't have to match BPM numbers. Set the numerator to 4 and the denominator to 5, and the virtual BPM becomes 150 × 4/5 = 120. + +**Divider** changes the effective tick rate. A tick rate of 60Hz and a divisor of 6 will result in ticks lasting a tenth of a second each! + +**Highlight** sets the pattern row highlights: +- The first value represents the number of rows per beat. +- The second value represents the number of rows per measure. +- These don't have to line up with the music's actual beats and measures. Set them as preferred for tracking. _Note:_ These values are used for the metronome and calculating BPM. + +**Pattern Length** is the length of each pattern in rows. This affects all patterns in the song, and every pattern must be the same length. (Individual patterns can be cut short by `0Bxx`, `0Dxx`, and `FFxx` commands.) + +**Song Length** shows how many orders are in the order list. Decreasing it will hide the orders at the bottom. Increasing it will restore those orders; increasing it further will add new orders of all `00` patterns. diff --git a/doc/2-interface/wavetables.png b/doc/2-interface/wavetables.png new file mode 100644 index 0000000000000000000000000000000000000000..ad7ea88082aead6b6f72340d2944fb8131c9817f GIT binary patch literal 11257 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 ou*}%M Date: Mon, 12 Jun 2023 19:31:24 -0700 Subject: [PATCH 076/183] Expanding interface docs. --- doc/2-interface/asset-list.md | 33 ++++++++++++++-- doc/2-interface/control-edit.png | Bin 0 -> 635 bytes doc/2-interface/control-metronome.png | Bin 0 -> 623 bytes doc/2-interface/control-play-pattern.png | Bin 0 -> 657 bytes doc/2-interface/control-play-repeat.png | Bin 0 -> 313 bytes doc/2-interface/control-play.png | Bin 0 -> 351 bytes doc/2-interface/control-repeat.png | Bin 0 -> 693 bytes doc/2-interface/control-step.png | Bin 0 -> 413 bytes doc/2-interface/control-stop.png | Bin 0 -> 460 bytes doc/2-interface/controls-classic.png | Bin 0 -> 21016 bytes doc/2-interface/controls-compact.png | Bin 0 -> 16054 bytes doc/2-interface/controls-split.png | Bin 0 -> 20672 bytes doc/2-interface/controls-vertical.png | Bin 0 -> 10175 bytes doc/2-interface/instruments-folder.png | Bin 0 -> 50247 bytes doc/2-interface/instruments.png | Bin 0 -> 52044 bytes doc/2-interface/play-edit-controls.md | 32 +++++++++++----- doc/2-interface/samples.png | Bin 0 -> 19676 bytes doc/2-interface/song-info.md | 46 ++++++++++++++++++++++- doc/2-interface/wavetables.png | Bin 0 -> 11257 bytes 19 files changed, 98 insertions(+), 13 deletions(-) create mode 100644 doc/2-interface/control-edit.png create mode 100644 doc/2-interface/control-metronome.png create mode 100644 doc/2-interface/control-play-pattern.png create mode 100644 doc/2-interface/control-play-repeat.png create mode 100644 doc/2-interface/control-play.png create mode 100644 doc/2-interface/control-repeat.png create mode 100644 doc/2-interface/control-step.png create mode 100644 doc/2-interface/control-stop.png create mode 100644 doc/2-interface/controls-classic.png create mode 100644 doc/2-interface/controls-compact.png create mode 100644 doc/2-interface/controls-split.png create mode 100644 doc/2-interface/controls-vertical.png create mode 100644 doc/2-interface/instruments-folder.png create mode 100644 doc/2-interface/instruments.png create mode 100644 doc/2-interface/samples.png create mode 100644 doc/2-interface/wavetables.png diff --git a/doc/2-interface/asset-list.md b/doc/2-interface/asset-list.md index 7e8dc9a6..44c3fefa 100644 --- a/doc/2-interface/asset-list.md +++ b/doc/2-interface/asset-list.md @@ -1,11 +1,38 @@ # instrument list -image +![instruments window](instruments.png) + +Buttons from left to right: +- **Add:** Creates a new, default instrument. +- **Duplicate:** Duplicates the currently selected instrument. +- **Open:** Brings up a file dialog to load a file as a new instrument at the end of the list. +- **Save:** Brings up a file dialog to save the currently selected instrument. +- **Toggle folders/standard view:** Enables (and disables) folder view, explained below. +- **Move up:** Moves the currently selected instrument up in the list. Pattern data will automatically be adjusted to match. +- **Move down:** Same, but downward. +- **Delete:** Deletes the currently selected instrument. Pattern data will be adjusted to use the next available instrument in the list. + +## folder view + +![instruments window in folder view](instruments-folder.png) + +In folder view, the "Move up" and "Move down buttons disappear and a new one appears: +- **New Folder:** Creates a new folder. + +Instruments may be dragged from folder to folder and even rearranged within folders without changing their associated numbers. + +Right-clicking on a folder allows one to rename or delete it. Deleting a folder does not remove the instruments in it. # wavetable list -image +![wavetables window](wavetables.png) + +Everything from the instrument list applies here also, with one major difference: Moving waves around with the buttons will change their associated numbers in the list but _not_ in pattern or instrument data. Be careful! # sample list -image +![samples window](samples.png) + +Everything from the wavetables list applies here also, with the addition of two buttons: +- **Preview:** Plays the selected sample at its default note. +- **Stop preview:** Stops the sample playback. diff --git a/doc/2-interface/control-edit.png b/doc/2-interface/control-edit.png new file mode 100644 index 0000000000000000000000000000000000000000..35fce78c7800c164e3e128a92fdf967a1d171cb4 GIT binary patch literal 635 zcmV->0)+jEP)H5l+GuY*WgXOt1wG7j}rHapW>$z zwx(~7$b8sQAoan6D#c>LAB7`$A`1XS{THr(?IUF`m1b+#QJ7UJop9WpztwDa9Fhfi zm}`7}H-1PNYTJsGg`Qp*|J1W-l`@Ikt?Z|T3ub;oY908GCsW&lKS$OE=Y>QB`URb? V5kE*_&oux5002ovPDHLkV1iLSL~8&5 literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-metronome.png b/doc/2-interface/control-metronome.png new file mode 100644 index 0000000000000000000000000000000000000000..0c66725653361836a835c62b1bbc852cb00b9664 GIT binary patch literal 623 zcmV-#0+9WQP)lqQy}higtVl>m%gf8*;o(zLQ~Ue-X=!PGettAGG`P69qobpRg@raYHf?QfNl8he zp`o0doK{v=kdTn=?d?THMQCVft*xzJUtjh0_1D+e=;-KCQBhJ-Qpm{2*x1FLSI z$vHVWT3TB1@$r9ufB5+L@bK{K>+9kSuxJ1P0YFJaK~#8N?UcoC>p%cSeasMMX6BTc zx$ph|?{v{fi5+L`Y}!rF?q2CgGqUeUzr`${pY0`NAhVY+hj@6QUn|BSR;=|y2~kC6 zg{(w_g^~u=qMl6F7ZzxxK%oKI>UXGSp%ElRbSmpqL5&0m8pGT=<%VbhH#R72<^qQJ z-bdg%Lqz3BD4arhGnZ9Pg~BzYH*;F$S}07A-Nh#pp)kdA7yp?Gg%(fl;+B?B=+bi+ zJ-Wi(r1}9?anw)?-WijY;R{9oa_=tGR^I_ zi9GTb4%$51+qHd1`@nb0b9CR|;4((sZ`)TeIP_%zSH4e?fVkgw9>=WE-*GX15wFO+ zQ2@Y{!jWKk4#1@p5+}7({(&JTL$N literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-play-pattern.png b/doc/2-interface/control-play-pattern.png new file mode 100644 index 0000000000000000000000000000000000000000..a6eb5d01eff4e36bf500014d1424181488b7d881 GIT binary patch literal 657 zcmV;C0&e|@P)x&GpwwvNJvPfrKRiZ>tSJGYin!v_V&HKy@-g2udlCOUS67-nnXlI zXJ=>i_4SsPmihVlNl8gnRaJ+Fhw<_8-QC^1yu8xV(z?33QBhH3WMuO4@@#BuuCA_^ zmzP>vTED-)p`oF%v9a6R+wAP@_xJa~!NE{aPFMdt&d%oM=5=*-goK2Jg@v`XweIfj z@9*!z!ooW{JA8b6F)=ZTiHYFg;66S+r>|)x0003jNkl{ElQvG%>uS&aC)t)Ux`fv&FsyhWx*sBP-A4m)I7?Sj^e0tG!@>3> z^*ElzK*b5_GrxcV!a=eKhGEN>Cq_OC8)AwiZF-Z;R%{0fk+cfmOoSAz0G7T*5{(1; z+&U?5Iymno6#$=K>R_!OaNJ}L0Pmt^1Q9nlZ50@nca35RoQx%aIB3Zr15Q~5%9;$y z;8dBQupxsgICV?VcsACqgR|2Y`1d?y_yFhd$Qq|(hTncWH481oRrGX`63jVwYBu%|z|sE_Lj12tc$$7>S~V!4hAI=L8} r`4UOFik3`dF(iMtR_ppPLjL^%CrueL2XejY00000NkvXXu0mjfk*G+; literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-play-repeat.png b/doc/2-interface/control-play-repeat.png new file mode 100644 index 0000000000000000000000000000000000000000..853cdcffee4396101838274feca24dce449ef147 GIT binary patch literal 313 zcmV-90mlA`P)FMcZWo0@#I%Z~OF)=at`1ndnN{EPv`}_M*QBhMq{r&6f>png{K|w)jX=!L^XhK3l^OB$k0001#NklnhWLF)$g>sgrp00000 LNkvXXu0mjf#;A@G literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-play.png b/doc/2-interface/control-play.png new file mode 100644 index 0000000000000000000000000000000000000000..feafe1681d86d27ad861325375651b2612157dcf GIT binary patch literal 351 zcmV-l0igbgP)5{E0PAIdY7UfV&w$N*%WPPWR@9aDvtS5NJstDXWqTn061Iu} xTU7vC2~gG8DgbO%0&Law!B$=0Uod@b=nui93A{ue*j4}l002ovPDHLkV1iCdb#-<6`ud%nolHzj`}_Op>FJS?kz!(EHa0eGZEf}S z_5S|;adC0%?Cd!?IfjOYv9Yn*+S*1&MtOO8I5;>#K|%5H@rj9vV`F2zy}f>Ze(mk; z(b3VVsi{9dKT}gv`T6G z+1bFr!0PJiy1KgE-QDKq=682@_xJaurKOdXm2`A;QBhIE#KdJ~WsHoBuCA`XzrW|_ z=eD-Cf`WoeOG{K#RDpqkQc_aO%gaSYMOIc;T3TAPw6x63%wJz$U0q#@ii%lTS(%xc zs;a7ujg5GCc)Yy4eSLjtX=(58?{jl=L_|cUrl!=?)Q*mhN=iyiO-);9&f)+70X|7Y zK~#8N?aHS|}ZB9#!M2zv2-e%-U>9tZVJ2c00000NkvXXu0mjfIV4o_ literal 0 HcmV?d00001 diff --git a/doc/2-interface/control-step.png b/doc/2-interface/control-step.png new file mode 100644 index 0000000000000000000000000000000000000000..fd6262da71130a3db51077004a8cae136d8aecb8 GIT binary patch literal 413 zcmV;O0b>4%P)U3Z&d!I2hyDHiXlQ8u{{CHEU3hqStgNib$;nGg zOE@?mU006~FL_t(| zUhU4;vV$-TMN!G7_LAOvz4iaUE)3w&goweshV19FY{C1s%Cb`ja87(gKRIfHAjG^d z&;|=E^16aaFM#+NyaMYkn!wP-aa;%S7}rA{{BIG_xIP2Z$mN9>8^lTwFuw}=J!63Q z#Yzw`jgsy-0DDxztAN_$0k|w%3AY5U+B;Kd5^Qq`petz4H@Go-x`z|XIvCOWt$)y7 z|Bn&fqao=1)~jf*m2^sw(mh%tm7tycL$oDyNJNoMM&5#)o1+N9%v@#w20<~lL;0LiGN(ToPfRCYNUBKSn6 z4j>RdwS6!`T@H+fEclVu0Aiu#YXDgfKkKBO=afnVn5ydI8ZgGLfW4jr-sk|U-aqdC zWIKM|yl>mFe*b7PP8vQXEl!Fp|Is||StuakC~7`d>IWq>wvA^PLM}lmqVN*)nTx^4 zN>OE(ga$o#3nVEOS{Nh1;mRVMQ9)jXf@Gi*ocaYMj}oAF2|`r>0000K literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-classic.png b/doc/2-interface/controls-classic.png new file mode 100644 index 0000000000000000000000000000000000000000..a8a093fa92fbe3d28de256c00fb0c840bf9b82ee GIT binary patch literal 21016 zcmZ_$V|XS_)HVvo&cx2dwr$&)WMWTj+qP|EV%s(+b|w?s$?p4k-{;srzWx13A4y+V zS65e8t#x8mB9s&)5#ey*KtMncrKQAFKtMnTfgd#(FyPE;Sf3*Zi1LoKn6R3=o)JtL zLUf=q6P!dpl>vy6u46wHHe`_jdUW9RwLOT}BNm)CdI+dDjs`L;nGCs%bO;$N4F(2E z;%y{lxtM%@IHj6@hh7(zaDChAv#2HxDd!w)mHde_KUXDn{UdGgX-)*i{8I3 z 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 W2smlyKMHhw1Q9IGnm3yIQvVCO_aC7E literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-compact.png b/doc/2-interface/controls-compact.png new file mode 100644 index 0000000000000000000000000000000000000000..b0d1b0d40ba37563920bb345a0f47580fa1376d7 GIT binary patch literal 16054 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 literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-split.png b/doc/2-interface/controls-split.png new file mode 100644 index 0000000000000000000000000000000000000000..235ea2ce381e9d1f25a9332c04eda7a9b68f9559 GIT binary patch literal 20672 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 literal 0 HcmV?d00001 diff --git a/doc/2-interface/controls-vertical.png b/doc/2-interface/controls-vertical.png new file mode 100644 index 0000000000000000000000000000000000000000..98a89cc4ec81a52003ac00f7cef4160030b1d817 GIT binary patch literal 10175 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 literal 0 HcmV?d00001 diff --git a/doc/2-interface/instruments-folder.png b/doc/2-interface/instruments-folder.png new file mode 100644 index 0000000000000000000000000000000000000000..18e4ae630f1f07fc5523f83c3493540d552363a3 GIT binary patch literal 50247 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 z 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≪HimYZKjU?r;tR4^r@fO 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 Appearance to one of these: +The layout can be changed in Settings > Appearance to one of these: ### classic -image +![classic play/edit controls](controls-classic.png) ### compact -image +![compact play/edit controls](controls-compact.png) ### compact (vertical) -image +![compact vertical play/edit controls](controls-vertical.png) + +### split + +![split play and edit controls](controls-split.png) diff --git a/doc/2-interface/samples.png b/doc/2-interface/samples.png new file mode 100644 index 0000000000000000000000000000000000000000..816512fbb1261d26a014d000adb5d0034249ce6f GIT binary patch literal 19676 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

    4mcKoxy~ss!rlEz8;@Fm!62>4};rB_HC-Lx+F0 z`hmEs<*15{7HuVhxhhzejwTKn)s( zp!jp?(OWMt3kpFyv6so6@*&vAcN}fXUn;@V7QWt;(%%{G&9J0}pd4q{A}@7R+(J0C z8Ku>lIczlOvjWb33!kQ0dzCI>A|=bKOVb zgCRxb0NwfKw)mheR;QTR;F1y|DnK3{lXtxcTqEhYYWew{MWHeqoAq@49FVs{j*h8W zIz3AQ+{=tiX64f%| zd5>cUY48u%GCm4?HRb3Zs(PB(+!dWJZxC*E%3!A_g9OwTwdM}|xqz9D(M?fPJGhVb zdgIFACSP?h_T=i)4YR2rF^*Vr#bEX>8q+4MKG)4;2H>eeE+#?rH?_Nlg|lrV81-o6 z_?DOuTxJ~*Fi~|)s3JKA-#g^>UaYYZ|1P}1*=DAnJ z&MmYhT(-35<`$@|t{)z|l5uxYN+=D+>Dr3B0XA?lJI(t%&c)NUvB=0GqD4Fb>@eM@ zeOq(P$)*-t@yuXT?w#D~9FDiMkU`4~b)eo|VlC-$EI5y-AR#WkQxRiFq-PIkYCfWq z)c|I_@f1y)mhQ0&pu%uy47R?q;LMCI6vr24p0qSFL#y<;?%yH*$(IZ0(d&j(wiqV3 zqDo1uBM{;^fHmN_TaSps|Xw{5R(JS)sJGnnr8H zIP81`=-_E9_!Ajwxozfv%5abK&V_K#e7_8|57tiHuiKDlA~7*s1Zp>O#*pvdf%Ud6 ze~7lFLIs>bS!-?kkO*AWQLV|h7QT@ms&KY9&zQ5>n7Rszz{|gx=hOD(YJP#IZx%Fx z#{B$E8F8Vx5Y2Cw3_Y0a&E#Hx{b^b@2Q<5|a|x{wP6YP?;rI|{7?)HKdCJ(~;ks=g zTxjoHgb3d%ab>4F64el@{f6}R(A#i2*NR7{EjTYuP_zbfPa1;X1~gan4rp?X=bGn# z`9&B7*6wd!MkrxM_tY6Fp%q-0-2H3|29l_`UXp+M#V3zChY`I`*C)l5<~SAU_ymjb z?6X-I#?bq2f?G7RPaA(nSqg4UMhZ!zyNE-SRM;^{xha^>>XWqM^MGimZ0ab>3v7t>q9{8%)kul3pLglR~1uZreO>dT;oohLjmOD#&b#GLnN%A;6#MgiY zbn-;ZlN<3eXP?9r_jC;J J)N0vB{SR{RO|Sp} literal 0 HcmV?d00001 diff --git a/doc/2-interface/song-info.md b/doc/2-interface/song-info.md index e2aa806f..1a4cd03e 100644 --- a/doc/2-interface/song-info.md +++ b/doc/2-interface/song-info.md @@ -1,5 +1,49 @@ # song info -# sub-songs +- "Name" is for the track's title. +- "Author" is used to list the contributors to a song. If the song is a cover of someone else's track, it's customary to list their name first, followed by `[cv. YourName]`. +- "Album" can be used to store the associated album name, the name of the game the song is from, or whatever. +- "System" is for the game or computer the track is designed for. This is automatically set when creating a new tune, but it can be changed to anything one wants. The "Auto" button will provide a guess based on the chips in use. + +All of this metadata will be included in a VGM export. This isn't the case for a WAV export, however. + +"Tuning (A-4)" allows one to set tuning based on the note A-4, which should be 440 in most cases. Opening an Amiga MOD will set it to 436 for hardware compatibility. + +# subsongs + +This window allows one to create **subsongs** – multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. + +- The drop-down box selects the current subsong. +- The `+` button adds a new subsong. +- The `−` button permanently deletes the current subsong (unless it's the only one). +- "Name" sets the title of the current subsong. +- The box at the bottom can store any arbitrary text, like a separate "Comments" box for the current subsong. # speed + +There are multiple ways to set the tempo of a song. + +**Tick Rate** sets the frequency of ticks per second, the rate at which notes and effects are processed. +- All values are allowed for all chips, but most chips have hardware limitations that mean they should stay at either 60 (approximately NTSC) or 50 (exactly PAL). +- Clicking the Tick Rate button switches to a more traditional **Base Tempo** BPM setting. + +**Speed** sets the number of ticks per row. +- Clicking the "Speed" button changes to more complex modes covered in the [grooves] page. + +**Virtual Tempo** simulates any arbitrary tempo without altering the tick rate. It does this by adding or skipping ticks to approximate the tempo. The two numbers represent a ratio applied to the actual tick rate. Example: +- Set tick rate to 150 BPM (60 Hz) and speed to 6. +- Set the first virtual tempo number (numerator) to 200. +- Set the second virtual tempo number (denominator) to 150. +- The track will play at 200 BPM. +- The ratio doesn't have to match BPM numbers. Set the numerator to 4 and the denominator to 5, and the virtual BPM becomes 150 × 4/5 = 120. + +**Divider** changes the effective tick rate. A tick rate of 60Hz and a divisor of 6 will result in ticks lasting a tenth of a second each! + +**Highlight** sets the pattern row highlights: +- The first value represents the number of rows per beat. +- The second value represents the number of rows per measure. +- These don't have to line up with the music's actual beats and measures. Set them as preferred for tracking. _Note:_ These values are used for the metronome and calculating BPM. + +**Pattern Length** is the length of each pattern in rows. This affects all patterns in the song, and every pattern must be the same length. (Individual patterns can be cut short by `0Bxx`, `0Dxx`, and `FFxx` commands.) + +**Song Length** shows how many orders are in the order list. Decreasing it will hide the orders at the bottom. Increasing it will restore those orders; increasing it further will add new orders of all `00` patterns. diff --git a/doc/2-interface/wavetables.png b/doc/2-interface/wavetables.png new file mode 100644 index 0000000000000000000000000000000000000000..ad7ea88082aead6b6f72340d2944fb8131c9817f GIT binary patch literal 11257 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 ou*}%M Date: Mon, 12 Jun 2023 22:36:27 -0500 Subject: [PATCH 077/183] add demos/msx/OPLL_High_and_Rising.fur see ticket #1084 --- demos/msx/OPLL_High_and_Rising.fur | Bin 0 -> 6187 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 demos/msx/OPLL_High_and_Rising.fur diff --git a/demos/msx/OPLL_High_and_Rising.fur b/demos/msx/OPLL_High_and_Rising.fur new file mode 100644 index 0000000000000000000000000000000000000000..2ecab85bb1de2b9cb2b1a402f457701802cf269b GIT binary patch literal 6187 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 literal 0 HcmV?d00001 From 852f61b7fcacc64516935ee7c34ae250803ba215 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 12 Jun 2023 23:43:15 -0500 Subject: [PATCH 078/183] GUI: DirectX 11 render backend, part 3 --- src/gui/render/renderDX11.cpp | 112 +++++++++++++++++++++++++++++++--- src/gui/render/renderDX11.h | 4 ++ 2 files changed, 107 insertions(+), 9 deletions(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 767878ce..1133f842 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -28,6 +28,19 @@ const D3D_FEATURE_LEVEL possibleFeatureLevels[2]={ D3D_FEATURE_LEVEL_10_0 }; +struct FurnaceDXTexture { + ID3D11Texture2D* tex; + ID3D11ShaderResourceView* view; + int width, height; + unsigned char* lockedData; + FurnaceDXTexture(): + tex(NULL), + view(NULL), + width(0), + height(0), + lockedData(NULL) {} +}; + bool FurnaceGUIRenderDX11::destroyRenderTarget() { if (renderTarget!=NULL) { renderTarget->Release(); @@ -83,27 +96,104 @@ bool FurnaceGUIRenderDX11::createRenderTarget() { } ImTextureID FurnaceGUIRenderDX11::getTextureID(void* which) { - return NULL; + FurnaceDXTexture* t=(FurnaceDXTexture*)which; + return (ImTextureID)t->view; } bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { - return false; + FurnaceDXTexture* t=(FurnaceDXTexture*)which; + if (t->lockedData!=NULL) return false; + + D3D11_MAPPED_SUBRESOURCE mappedRes; + memset(&mappedRes,0,sizeof(mappedRes)); + + HRESULT result=context->Map(t->tex,D3D11CalcSubresource(0,0,1),D3D11_MAP_WRITE,0,&mappedRes); + if (result!=S_OK) { + logW("could not map texture!"); + return false; + } + t->lockedData=(unsigned char*)mappedRes.pData; + *data=mappedRes.pData; + *pitch=mappedRes.RowPitch; + return true; } bool FurnaceGUIRenderDX11::unlockTexture(void* which) { - return false; + FurnaceDXTexture* t=(FurnaceDXTexture*)which; + if (t->lockedData==NULL) return false; + context->Unmap(t->tex,D3D11CalcSubresource(0,0,1)); + t->lockedData=NULL; + return true; } bool FurnaceGUIRenderDX11::updateTexture(void* which, void* data, int pitch) { - return false; + FurnaceDXTexture* t=(FurnaceDXTexture*)which; + context->UpdateSubresource(t->tex,D3D11CalcSubresource(0,0,1),NULL,data,pitch,pitch*t->height); + return true; } void* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { - return NULL; + D3D11_TEXTURE2D_DESC texDesc; + D3D11_SHADER_RESOURCE_VIEW_DESC viewDesc; + ID3D11Texture2D* tex=NULL; + ID3D11ShaderResourceView* view=NULL; + HRESULT result; + + memset(&texDesc,0,sizeof(texDesc)); + memset(&viewDesc,0,sizeof(viewDesc)); + + texDesc.Width=width; + texDesc.Height=height; + texDesc.MipLevels=1; + texDesc.ArraySize=1; + texDesc.Format=DXGI_FORMAT_R8G8B8A8_UNORM; // ??? + texDesc.SampleDesc.Count=1; + texDesc.SampleDesc.Quality=0; + texDesc.Usage=dynamic?D3D11_USAGE_DYNAMIC:D3D11_USAGE_DEFAULT; + texDesc.BindFlags=D3D11_BIND_SHADER_RESOURCE; + texDesc.CPUAccessFlags=dynamic?D3D11_CPU_ACCESS_WRITE:0; + texDesc.MiscFlags=0; + + result=device->CreateTexture2D(&texDesc,NULL,&tex); + if (result!=S_OK) { + logW("could not create texture! %.8x",result); + return NULL; + } + + viewDesc.Format=texDesc.Format=texDesc.Format; + viewDesc.ViewDimension=D3D11_SRV_DIMENSION_TEXTURE2D; + viewDesc.Texture2D.MostDetailedMip=0; + viewDesc.Texture2D.MipLevels=texDesc.MipLevels; + + result=device->CreateShaderResourceView(tex,&viewDesc,&view); + if (result!=S_OK) { + logW("could not create texture view! %.8x",result); + tex->Release(); + return NULL; + } + + FurnaceDXTexture* ret=new FurnaceDXTexture; + ret->width=width; + ret->height=height; + ret->tex=tex; + ret->view=view; + textures.push_back(ret); + return ret; } bool FurnaceGUIRenderDX11::destroyTexture(void* which) { - return false; + FurnaceDXTexture* t=(FurnaceDXTexture*)which; + t->view->Release(); + t->tex->Release(); + delete t; + + for (size_t i=0; iResizeBuffers(0,0,0,DXGI_FORMAT_UNKNOWN,0); - - - createRenderTarget(); } @@ -219,6 +306,13 @@ void FurnaceGUIRenderDX11::initGUI(SDL_Window* win) { bool FurnaceGUIRenderDX11::quit() { destroyRenderTarget(); + for (FurnaceDXTexture* i: textures) { + i->view->Release(); + i->tex->Release(); + delete i; + } + textures.clear(); + if (swapchain!=NULL) { swapchain->Release(); swapchain=NULL; diff --git a/src/gui/render/renderDX11.h b/src/gui/render/renderDX11.h index 1a3d7dca..19cfb6f0 100644 --- a/src/gui/render/renderDX11.h +++ b/src/gui/render/renderDX11.h @@ -26,6 +26,8 @@ typedef void ID3D11RenderTargetView; typedef void IDXGISwapChain; #endif +struct FurnaceDXTexture; + class FurnaceGUIRenderDX11: public FurnaceGUIRender { ID3D11Device* device; ID3D11DeviceContext* context; @@ -37,6 +39,8 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { bool destroyRenderTarget(); bool createRenderTarget(); + std::vector textures; + public: ImTextureID getTextureID(void* which); bool lockTexture(void* which, void** data, int* pitch); From ad8082a9210c7f7d275dcf2468febe03ddaa605a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 03:12:12 -0500 Subject: [PATCH 079/183] GUI: DirectX 11 render backend, part 4 ready to merge? --- CMakeLists.txt | 14 +- .../backends/imgui_impl_dx11.cpp | 27 ++- src/gui/gui.cpp | 6 +- src/gui/render/renderDX11.cpp | 210 +++++++++++++++++- src/gui/render/renderDX11.h | 32 ++- 5 files changed, 269 insertions(+), 20 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 30174880..a5e91fb0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -739,11 +739,15 @@ endif() if (WITH_RENDER_DX11) if (WIN32) - list(APPEND GUI_SOURCES src/gui/render/renderDX11.cpp) - list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_dx11.cpp) - list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_DX11) - list(APPEND DEPENDENCIES_LIBRARIES d3d11 d3dcompiler) - message(STATUS "UI render backend: DirectX 11") + if (SUPPORT_XP) + message(FATAL_ERROR "SUPPORT_XP is on. cannot enable DirectX 11 backend.") + else() + list(APPEND GUI_SOURCES src/gui/render/renderDX11.cpp) + list(APPEND GUI_SOURCES extern/imgui_patched/backends/imgui_impl_dx11.cpp) + list(APPEND DEPENDENCIES_DEFINES HAVE_RENDER_DX11) + list(APPEND DEPENDENCIES_LIBRARIES d3d11) + message(STATUS "UI render backend: DirectX 11") + endif() else() message(FATAL_ERROR "DirectX 11 render backend only for Windows!") endif() diff --git a/extern/imgui_patched/backends/imgui_impl_dx11.cpp b/extern/imgui_patched/backends/imgui_impl_dx11.cpp index fa60d9eb..86276968 100644 --- a/extern/imgui_patched/backends/imgui_impl_dx11.cpp +++ b/extern/imgui_patched/backends/imgui_impl_dx11.cpp @@ -32,16 +32,16 @@ // 2018-02-06: Misc: Removed call to ImGui::Shutdown() which is not available from 1.60 WIP, user needs to call CreateContext/DestroyContext themselves. // 2016-05-07: DirectX11: Disabling depth-write. +// DISCLAIMER: modified with d3dcompiler patch (see https://github.com/ocornut/imgui/pull/638). + #include "imgui.h" #include "imgui_impl_dx11.h" // DirectX #include #include -#include -#ifdef _MSC_VER -#pragma comment(lib, "d3dcompiler") // Automatically link with d3dcompiler.lib as we are using D3DCompile() below. -#endif + +typedef HRESULT (__stdcall *D3DCompile_t)(LPCVOID, SIZE_T, LPCSTR, D3D_SHADER_MACRO*, ID3DInclude*, LPCSTR, LPCSTR, UINT, UINT, ID3DBlob**, ID3DBlob*); // DirectX11 data struct ImGui_ImplDX11_Data @@ -380,11 +380,22 @@ bool ImGui_ImplDX11_CreateDeviceObjects() if (bd->pFontSampler) ImGui_ImplDX11_InvalidateDeviceObjects(); - // By using D3DCompile() from / d3dcompiler.lib, we introduce a dependency to a given version of d3dcompiler_XX.dll (see D3DCOMPILER_DLL_A) - // If you would like to use this DX11 sample code but remove this dependency you can: - // 1) compile once, save the compiled shader blobs into a file or source code and pass them to CreateVertexShader()/CreatePixelShader() [preferred solution] - // 2) use code to detect any version of the DLL and grab a pointer to D3DCompile from the DLL. // See https://github.com/ocornut/imgui/pull/638 for sources and details. + // Detect which d3dcompiler_XX.dll is present in the system and grab a pointer to D3DCompile. + // Without this, you must link d3dcompiler.lib with the project. + D3DCompile_t D3DCompile = NULL; + { + char dllBuffer[20]; + for (int i = 47; i > 30 && !D3DCompile; i--) + { + sprintf(dllBuffer, "d3dcompiler_%d.dll", i); + HMODULE hDll = LoadLibraryA(dllBuffer); + if (hDll) + D3DCompile = (D3DCompile_t)GetProcAddress(hDll, "D3DCompile"); + } + if (!D3DCompile) + return false; + } // Create the vertex shader { diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 6ea8a941..620ad36a 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6237,9 +6237,9 @@ bool FurnaceGUI::init() { if (!rend->init(sdlWin)) { if (settings.renderBackend!="SDL" && !settings.renderBackend.empty()) { settings.renderBackend=""; - e->setConf("renderBackend",""); - e->saveConf(); - lastError=fmt::sprintf("\r\nthe render backend has been set to a safe value. please restart Furnace."); + //e->setConf("renderBackend",""); + //e->saveConf(); + //lastError=fmt::sprintf("\r\nthe render backend has been set to a safe value. please restart Furnace."); } else { lastError=fmt::sprintf("could not init renderer! %s",SDL_GetError()); if (!settings.renderDriver.empty()) { diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 1133f842..1ed6c9cc 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -23,6 +23,47 @@ #include "backends/imgui_impl_dx11.h" #include "../../ta-log.h" +typedef HRESULT (__stdcall *D3DCompile_t)(LPCVOID,SIZE_T,LPCSTR,D3D_SHADER_MACRO*,ID3DInclude*,LPCSTR,LPCSTR,UINT,UINT,ID3DBlob**,ID3DBlob*); + +const char* shD3D11_wipe_srcV= + "cbuffer WipeUniform: register(b0) {\n" + " float alpha;\n" + " float padding1;\n" + " float padding2;\n" + " float padding3;\n" + " float4 padding4;\n" + "};\n" + "\n" + "struct vsInput {\n" + " float4 pos: POSITION;\n" + "};\n" + "\n" + "struct fsInput {\n" + " float4 pos: SV_POSITION;\n" + " float4 color: COLOR0;\n" + "};\n" + "\n" + "fsInput main(vsInput input) {\n" + " fsInput output;\n" + " output.pos=input.pos;\n" + " output.color=float4(0.0f,0.0f,0.0f,alpha);\n" + " return output;\n" + "}"; + +const char* shD3D11_wipe_srcF= + "struct fsInput {\n" + " float4 pos: SV_POSITION;\n" + " float4 color: COLOR0;\n" + "};\n" + "\n" + "float4 main(fsInput input): SV_Target {\n" + " return input.color;\n" + "}"; + +const D3D11_INPUT_ELEMENT_DESC shD3D11_wipe_inputLayout={ + "POSITION", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, 0, D3D11_INPUT_PER_VERTEX_DATA, 0 +}; + const D3D_FEATURE_LEVEL possibleFeatureLevels[2]={ D3D_FEATURE_LEVEL_11_0, D3D_FEATURE_LEVEL_10_0 @@ -237,8 +278,43 @@ void FurnaceGUIRenderDX11::renderGUI() { ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData()); } +const float blendFactor[4]={ + 1.0f, 1.0f, 1.0f, 1.0f +}; + void FurnaceGUIRenderDX11::wipe(float alpha) { - // TODO + D3D11_VIEWPORT viewPort; + unsigned int strides=4*sizeof(float); + unsigned int offsets=0; + + memset(&viewPort,0,sizeof(viewPort)); + viewPort.TopLeftX=0.0f; + viewPort.TopLeftY=0.0f; + viewPort.Width=outW; + viewPort.Height=outH; + viewPort.MinDepth=0.0f; + viewPort.MaxDepth=1.0f; + + D3D11_MAPPED_SUBRESOURCE mappedUniform; + if (context->Map(sh_wipe_uniform,0,D3D11_MAP_WRITE_DISCARD,0,&mappedUniform)!=S_OK) { + logW("could not map constant"); + } + WipeUniform* sh_wipe_uniformState=(WipeUniform*)mappedUniform.pData; + sh_wipe_uniformState->alpha=alpha; + context->Unmap(sh_wipe_uniform,0); + + context->RSSetViewports(1,&viewPort); + context->RSSetState(rsState); + + context->OMSetBlendState(omBlendState,blendFactor,0xffffffff); + context->IASetInputLayout(sh_wipe_inputLayout); + context->IASetVertexBuffers(0,1,&quadVertex,&strides,&offsets); + context->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP); + context->VSSetShader(sh_wipe_vertex,NULL,0); + context->VSSetConstantBuffers(0,1,&sh_wipe_uniform); + context->PSSetShader(sh_wipe_fragment,NULL,0); + + context->Draw(4,0); } void FurnaceGUIRenderDX11::present() { @@ -258,6 +334,13 @@ int FurnaceGUIRenderDX11::getWindowFlags() { void FurnaceGUIRenderDX11::preInit() { } +const float wipeVertices[4][4]={ + -1.0, -1.0, 0.0, 1.0, + 1.0, -1.0, 0.0, 1.0, + -1.0, 1.0, 0.0, 1.0, + 1.0, 1.0, 0.0, 1.0 +}; + bool FurnaceGUIRenderDX11::init(SDL_Window* win) { SDL_SysWMinfo sysWindow; D3D_FEATURE_LEVEL featureLevel; @@ -291,6 +374,131 @@ bool FurnaceGUIRenderDX11::init(SDL_Window* win) { return false; } + // https://github.com/ocornut/imgui/pull/638 + D3DCompile_t D3DCompile=NULL; + char dllBuffer[20]; + for (int i=47; (i>30 && !D3DCompile); i--) { + snprintf(dllBuffer,20,"d3dcompiler_%d.dll",i); + HMODULE hDll=LoadLibraryA(dllBuffer); + if (hDll) { + D3DCompile=(D3DCompile_t)GetProcAddress(hDll,"D3DCompile"); + } + } + if (!D3DCompile) { + logE("could not find D3DCompile!"); + return false; + } + + // create wipe shader + ID3DBlob* wipeBlobV=NULL; + ID3DBlob* wipeBlobF=NULL; + D3D11_BUFFER_DESC wipeConstantDesc; + + result=D3DCompile(shD3D11_wipe_srcV,strlen(shD3D11_wipe_srcV),NULL,NULL,NULL,"main","vs_4_0",0,0,&wipeBlobV,NULL); + if (result!=S_OK) { + logE("could not compile vertex shader! %.8x",result); + return false; + } + result=D3DCompile(shD3D11_wipe_srcF,strlen(shD3D11_wipe_srcF),NULL,NULL,NULL,"main","ps_4_0",0,0,&wipeBlobF,NULL); + if (result!=S_OK) { + logE("could not compile pixel shader! %.8x",result); + return false; + } + + result=device->CreateVertexShader(wipeBlobV->GetBufferPointer(),wipeBlobV->GetBufferSize(),NULL,&sh_wipe_vertex); + if (result!=S_OK) { + logE("could not create vertex shader! %.8x",result); + return false; + } + result=device->CreatePixelShader(wipeBlobF->GetBufferPointer(),wipeBlobF->GetBufferSize(),NULL,&sh_wipe_fragment); + if (result!=S_OK) { + logE("could not create pixel shader! %.8x",result); + return false; + } + + result=device->CreateInputLayout(&shD3D11_wipe_inputLayout,1,wipeBlobV->GetBufferPointer(),wipeBlobV->GetBufferSize(),&sh_wipe_inputLayout); + if (result!=S_OK) { + logE("could not create input layout! %.8x",result); + return false; + } + + memset(&wipeConstantDesc,0,sizeof(wipeConstantDesc)); + wipeConstantDesc.ByteWidth=sizeof(WipeUniform); + wipeConstantDesc.Usage=D3D11_USAGE_DYNAMIC; + wipeConstantDesc.BindFlags=D3D11_BIND_CONSTANT_BUFFER; + wipeConstantDesc.CPUAccessFlags=D3D11_CPU_ACCESS_WRITE; + wipeConstantDesc.MiscFlags=0; + wipeConstantDesc.StructureByteStride=0; + + result=device->CreateBuffer(&wipeConstantDesc,NULL,&sh_wipe_uniform); + if (result!=S_OK) { + logE("could not create constant buffer! %.8x",result); + return false; + } + + // create wipe vertices + D3D11_BUFFER_DESC vertexDesc; + D3D11_SUBRESOURCE_DATA vertexRes; + + memset(&vertexDesc,0,sizeof(vertexDesc)); + memset(&vertexRes,0,sizeof(vertexRes)); + + vertexDesc.ByteWidth=4*4*sizeof(float); + vertexDesc.Usage=D3D11_USAGE_DEFAULT; + vertexDesc.BindFlags=D3D11_BIND_VERTEX_BUFFER; + vertexDesc.CPUAccessFlags=0; + vertexDesc.MiscFlags=0; + vertexDesc.StructureByteStride=0; + + vertexRes.pSysMem=wipeVertices; + vertexRes.SysMemPitch=0; + vertexRes.SysMemSlicePitch=0; + + result=device->CreateBuffer(&vertexDesc,&vertexRes,&quadVertex); + if (result!=S_OK) { + logE("could not create vertex buffer! %.8x",result); + return false; + } + + // initialize the rest + D3D11_RASTERIZER_DESC rasterDesc; + D3D11_BLEND_DESC blendDesc; + + memset(&rasterDesc,0,sizeof(rasterDesc)); + memset(&blendDesc,0,sizeof(blendDesc)); + + rasterDesc.FillMode=D3D11_FILL_SOLID; + rasterDesc.CullMode=D3D11_CULL_NONE; + rasterDesc.FrontCounterClockwise=false; + rasterDesc.DepthBias=0; + rasterDesc.DepthBiasClamp=0.0f; + rasterDesc.SlopeScaledDepthBias=0.0f; + rasterDesc.DepthClipEnable=false; + rasterDesc.ScissorEnable=false; + rasterDesc.MultisampleEnable=false; + rasterDesc.AntialiasedLineEnable=false; + result=device->CreateRasterizerState(&rasterDesc,&rsState); + if (result!=S_OK) { + logE("could not create rasterizer state! %.8x",result); + return false; + } + + blendDesc.AlphaToCoverageEnable=false; + blendDesc.IndependentBlendEnable=false; + blendDesc.RenderTarget[0].BlendEnable=true; + blendDesc.RenderTarget[0].SrcBlend=D3D11_BLEND_SRC_ALPHA; + blendDesc.RenderTarget[0].DestBlend=D3D11_BLEND_INV_SRC_ALPHA; + blendDesc.RenderTarget[0].BlendOp=D3D11_BLEND_OP_ADD; + blendDesc.RenderTarget[0].SrcBlendAlpha=D3D11_BLEND_ONE; + blendDesc.RenderTarget[0].DestBlendAlpha=D3D11_BLEND_INV_SRC_ALPHA; + blendDesc.RenderTarget[0].BlendOpAlpha=D3D11_BLEND_OP_ADD; + blendDesc.RenderTarget[0].RenderTargetWriteMask=D3D11_COLOR_WRITE_ENABLE_ALL; + result=device->CreateBlendState(&blendDesc,&omBlendState); + if (result!=S_OK) { + logE("could not create blend state! %.8x",result); + return false; + } + createRenderTarget(); return true; } diff --git a/src/gui/render/renderDX11.h b/src/gui/render/renderDX11.h index 19cfb6f0..18d8673d 100644 --- a/src/gui/render/renderDX11.h +++ b/src/gui/render/renderDX11.h @@ -23,6 +23,12 @@ #else typedef void ID3D11DeviceContext; typedef void ID3D11RenderTargetView; +typedef void ID3D11Buffer; +typedef void ID3D11RasterizerState; +typedef void ID3D11BlendState; +typedef void ID3D11VertexShader; +typedef void ID3D11PixelShader; +typedef void ID3D11InputLayout; typedef void IDXGISwapChain; #endif @@ -33,8 +39,22 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { ID3D11DeviceContext* context; ID3D11RenderTargetView* renderTarget; IDXGISwapChain* swapchain; + ID3D11RasterizerState* rsState; + ID3D11BlendState* omBlendState; + + ID3D11Buffer* quadVertex; int outW, outH; - float quadVertex[4][3]; + + // SHADERS // + // -> wipe + ID3D11VertexShader* sh_wipe_vertex; + ID3D11PixelShader* sh_wipe_fragment; + ID3D11InputLayout* sh_wipe_inputLayout; + ID3D11Buffer* sh_wipe_uniform; + struct WipeUniform { + float alpha; + float padding[7]; + }; bool destroyRenderTarget(); bool createRenderTarget(); @@ -70,8 +90,14 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { context(NULL), renderTarget(NULL), swapchain(NULL), + rsState(NULL), + omBlendState(NULL), + quadVertex(NULL), outW(0), - outH(0) { - memset(quadVertex,0,4*3*sizeof(float)); + outH(0), + sh_wipe_vertex(NULL), + sh_wipe_fragment(NULL), + sh_wipe_inputLayout(NULL), + sh_wipe_uniform(NULL) { } }; From 4f39e6ee31830f5346e577aed4b9525b9b0ee96e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 03:54:55 -0500 Subject: [PATCH 080/183] GUI: DirectX 11 render backend, part 5 nope, not yet --- src/gui/render/renderDX11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 1ed6c9cc..5b2cbb36 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -245,7 +245,7 @@ void FurnaceGUIRenderDX11::setBlendMode(FurnaceGUIBlendMode mode) { void FurnaceGUIRenderDX11::resized(const SDL_Event& ev) { destroyRenderTarget(); - swapchain->ResizeBuffers(0,0,0,DXGI_FORMAT_UNKNOWN,0); + swapchain->ResizeBuffers(0,(unsigned int)ev.window.data1,(unsigned int)ev.window.data2,DXGI_FORMAT_UNKNOWN,DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH); createRenderTarget(); } From d85dd7071a5472410a636b190ee7f60411f3d9ff Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 04:06:03 -0500 Subject: [PATCH 081/183] GUI: DirectX 11 render backend, part 6 nice I probably found a new DXVK bug --- src/gui/render/renderDX11.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 5b2cbb36..5f7e70d6 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -109,6 +109,7 @@ bool FurnaceGUIRenderDX11::createRenderTarget() { } else { outW=chainDesc.BufferDesc.Width; outH=chainDesc.BufferDesc.Height; + logI("DX11: buffer desc sizes: %d, %d",chainDesc.BufferDesc.Width,chainDesc.BufferDesc.Height); } result=swapchain->GetBuffer(0,IID_PPV_ARGS(&screen)); @@ -133,6 +134,7 @@ bool FurnaceGUIRenderDX11::createRenderTarget() { return false; } + screen->Release(); return true; } @@ -245,7 +247,11 @@ void FurnaceGUIRenderDX11::setBlendMode(FurnaceGUIBlendMode mode) { void FurnaceGUIRenderDX11::resized(const SDL_Event& ev) { destroyRenderTarget(); - swapchain->ResizeBuffers(0,(unsigned int)ev.window.data1,(unsigned int)ev.window.data2,DXGI_FORMAT_UNKNOWN,DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH); + logI("DX11: resizing buffers"); + HRESULT result=swapchain->ResizeBuffers(0,(unsigned int)ev.window.data1,(unsigned int)ev.window.data2,DXGI_FORMAT_UNKNOWN,DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH); + if (result!=S_OK) { + logW("error while resizing swapchain buffers! %.8x",result); + } createRenderTarget(); } From db14ce602d1901642b940730727edce62ae87306 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 04:16:19 -0500 Subject: [PATCH 082/183] why are you not showing me the return value I want to see what's going on --- src/gui/render/renderDX11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 5f7e70d6..452b8180 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -152,7 +152,7 @@ bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { HRESULT result=context->Map(t->tex,D3D11CalcSubresource(0,0,1),D3D11_MAP_WRITE,0,&mappedRes); if (result!=S_OK) { - logW("could not map texture!"); + logW("could not map texture! %.8x",result); return false; } t->lockedData=(unsigned char*)mappedRes.pData; From 8ee4734eabaef61223f434a02919d31351893d82 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 04:24:34 -0500 Subject: [PATCH 083/183] DISCARD --- src/gui/render/renderDX11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 452b8180..ea6aac78 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -150,7 +150,7 @@ bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { D3D11_MAPPED_SUBRESOURCE mappedRes; memset(&mappedRes,0,sizeof(mappedRes)); - HRESULT result=context->Map(t->tex,D3D11CalcSubresource(0,0,1),D3D11_MAP_WRITE,0,&mappedRes); + HRESULT result=context->Map(t->tex,D3D11CalcSubresource(0,0,1),D3D11_MAP_WRITE_DISCARD,0,&mappedRes); if (result!=S_OK) { logW("could not map texture! %.8x",result); return false; From 1ffa80e84594092540c02563cfa5f74a070d6f6d Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 04:38:13 -0500 Subject: [PATCH 084/183] and one more piece of code --- src/gui/render/renderDX11.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index ea6aac78..e7ea0910 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -158,6 +158,8 @@ bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { t->lockedData=(unsigned char*)mappedRes.pData; *data=mappedRes.pData; *pitch=mappedRes.RowPitch; + + logV("texture locked... pitch: %d",mappedRes.RowPitch); return true; } From 6933446d8a5d69d6f2470b10798c71c568ca512f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 13 Jun 2023 05:45:36 -0500 Subject: [PATCH 085/183] GUI: DirectX 11 render backend, part 7 now with texture workaround --- src/gui/sampleEdit.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 8f5a9843..5d2e1d9f 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -1231,7 +1231,17 @@ void FurnaceGUI::drawSampleEdit() { } } - memcpy(dataT,data,sampleTexW*sampleTexH*sizeof(unsigned int)); + if ((pitch>>2)==sampleTexW) { + memcpy(dataT,data,sampleTexW*sampleTexH*sizeof(unsigned int)); + } else { + int srcY=0; + int destY=0; + for (int i=0; i>2; + } + } rend->unlockTexture(sampleTex); delete[] data; } From 83ad6e08941b556410d590ab06029ddf16fd3e62 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 14 Jun 2023 14:50:39 -0500 Subject: [PATCH 086/183] GUI: DirectX 11 render backend, part 8 updateTexture for dynamic textures --- src/gui/render/renderDX11.cpp | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index e7ea0910..b860890f 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -74,12 +74,14 @@ struct FurnaceDXTexture { ID3D11ShaderResourceView* view; int width, height; unsigned char* lockedData; + bool dynamic; FurnaceDXTexture(): tex(NULL), view(NULL), width(0), height(0), - lockedData(NULL) {} + lockedData(NULL), + dynamic(false) {} }; bool FurnaceGUIRenderDX11::destroyRenderTarget() { @@ -173,7 +175,26 @@ bool FurnaceGUIRenderDX11::unlockTexture(void* which) { bool FurnaceGUIRenderDX11::updateTexture(void* which, void* data, int pitch) { FurnaceDXTexture* t=(FurnaceDXTexture*)which; - context->UpdateSubresource(t->tex,D3D11CalcSubresource(0,0,1),NULL,data,pitch,pitch*t->height); + if (t->dynamic) { + unsigned char* d=NULL; + int p=0; + if (!lockTexture(t,&d,&p)) return false; + if (p==pitch) { + memcpy(d,data,p*t->height); + } else { + unsigned char* ucData=(unsigned char*)data; + int srcPos=0; + int destPos=0; + for (int i=0; iheight; i++) { + memcpy(&d[destPos],&ucData[srcPos],pitch); + srcPos+=pitch; + destPos+=p; + } + } + unlockTexture(t); + } else { + context->UpdateSubresource(t->tex,D3D11CalcSubresource(0,0,1),NULL,data,pitch,pitch*t->height); + } return true; } @@ -222,6 +243,7 @@ void* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { ret->height=height; ret->tex=tex; ret->view=view; + ret->dynamic=dynamic; textures.push_back(ret); return ret; } From cca84dea00aea754d615cc026d8eee1f3ae4e884 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 14 Jun 2023 17:21:02 -0500 Subject: [PATCH 087/183] fix --- src/gui/render/renderDX11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index b860890f..18cbcbae 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -178,7 +178,7 @@ bool FurnaceGUIRenderDX11::updateTexture(void* which, void* data, int pitch) { if (t->dynamic) { unsigned char* d=NULL; int p=0; - if (!lockTexture(t,&d,&p)) return false; + if (!lockTexture(t,(void**)&d,&p)) return false; if (p==pitch) { memcpy(d,data,p*t->height); } else { From 89f8c8fa19a274fcd1540a50b474c13128f12615 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 14 Jun 2023 17:35:17 -0500 Subject: [PATCH 088/183] OPLL: try to fix vol macro for drums --- src/engine/platform/opll.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/opll.cpp b/src/engine/platform/opll.cpp index 8f30a9dd..d0effd15 100644 --- a/src/engine/platform/opll.cpp +++ b/src/engine/platform/opll.cpp @@ -101,8 +101,17 @@ void DivPlatformOPLL::tick(bool sysTick) { if (chan[i].std.vol.had) { chan[i].outVol=VOL_SCALE_LOG_BROKEN(chan[i].vol,MIN(15,chan[i].std.vol.val),15); - if (i<9) { - rWrite(0x30+i,((15-VOL_SCALE_LOG_BROKEN(chan[i].outVol,15-chan[i].state.op[1].tl,15))&15)|(chan[i].state.opllPreset<<4)); + + if (i>=6 && properDrums) { + drumVol[i-6]=15-chan[i].outVol; + rWrite(0x36,drumVol[0]); + rWrite(0x37,drumVol[1]|(drumVol[4]<<4)); + rWrite(0x38,drumVol[3]|(drumVol[2]<<4)); + break; + } else if (i<6 || !drums) { + if (i<9) { + rWrite(0x30+i,((15-VOL_SCALE_LOG_BROKEN(chan[i].outVol,15-chan[i].state.op[1].tl,15))&15)|(chan[i].state.opllPreset<<4)); + } } } From 65a81d67b94989b7b143a02ac053ab1142364dda Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Tue, 13 Jun 2023 23:57:42 +0200 Subject: [PATCH 089/183] Update sample doc --- doc/6-sample/README.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/doc/6-sample/README.md b/doc/6-sample/README.md index 05891a49..2f4fe3cd 100644 --- a/doc/6-sample/README.md +++ b/doc/6-sample/README.md @@ -1,6 +1,6 @@ # samples -In the context of Furnace, a sound sample (usually just referred to as a sample) is a string of numbers that hold sampled PCM audio. +In the context of Furnace, a sound sample (usually just referred to as a sample) is a string of numbers that represent sampled PCM audio. In Furnace, these samples can be generated by importing a .wav (think of it as an higher quality MP3) file. @@ -13,6 +13,7 @@ as of Furnace 0.6, the following sound chips have sample support: - PC Engine/TurboGrafx-16/HuC6280 - Amiga/Paula - SegaPCM +- NEC PC-9801/YM2608 (ADPCM channel only) - Neo Geo/Neo Geo CD/YM2610 (ADPCM channels only) - Seta/Allumer X1-010 - Atari Lynx @@ -21,12 +22,16 @@ as of Furnace 0.6, the following sound chips have sample support: - QSound - ZX Spectrum 48k (1-bit) - RF5C68 -- WonderSwan +- SNES/S-DSP +- WonderSwan (second channel only) - tildearrow Sound Unit - VERA (last channel only) - Y8950 (last channel only) - Konami K007232 -- a few more that I've forgotten to mention +- Irem GA20 +- Ensoniq OTTO/ES5506 +- Yamaha PCMD8/YMZ280B +- MMC5 (last channel only) ## compatible sample mode @@ -45,9 +50,9 @@ due to limitations in some of those sound chips, some restrictions exist: - NES: if on DPCM mode, only a limited selection of frequencies is available, and loop position isn't supported (only entire sample). - SegaPCM: your sample can't be longer than 65535, and the maximum frequency is 31.25KHz. - QSound: your sample can't be longer than 65535, and the loop length shall not be greater than 32767. -- Neo Geo (ADPCM-A): no looping supported. your samples will play at ~18.5KHz. -- Neo Geo (ADPCM-B): no loop position supported (only entire sample), and the maximum frequency is ~55KHz. -- YM2608: the maximum frequency is ~55KHz. +- Neo Geo (ADPCM-A): no looping supported. your samples will play at 18.518KHz. +- Neo Geo (ADPCM-B): no loop position supported (only entire sample), and the maximum frequency is 55.555KHz. +- YM2608: the maximum frequency is 55.555KHz. - MSM6258/MSM6295: no arbitrary frequency. - ZX Spectrum Beeper: your sample can't be longer than 2048, and it always plays at ~55KHz. - Seta/Allumer X1-010: frequency resolution is terrible in the lower end. your sample can't be longer than 131072. From baf2964faa4fd700ef46113040b42640e22e5d83 Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Wed, 14 Jun 2023 10:05:54 +0200 Subject: [PATCH 090/183] Update README.md wavetable --- doc/5-wave/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/5-wave/README.md b/doc/5-wave/README.md index 19a07b10..a42ffd81 100644 --- a/doc/5-wave/README.md +++ b/doc/5-wave/README.md @@ -6,7 +6,11 @@ Furnace's wavetable editor is rather simple, you can draw the waveform using mou Furnace's wavetable editor features multiple ways of creating desired waveform shape: -- Shape tab allows you to select a few predefined basic shapes and indirectly edit it via "Duty", "Exponent" and "XOR Point" sliders TODO: what the last two are doing? What is amplitude/phase for?) +- Shape tab allows you to select a few predefined basic shapes and indirectly edit it via "Duty", "Exponent" and "XOR Point" sliders: + - `Duty` slider affects mainly pulse waves, determining its wisth, like on C64/VRC6 + - `Exponent` powers the waveform in the mathematical sense of the word (^2, ^3 and so on) + - `XOR Point` determines the point where the waveform gets negated. + - TODO: amplitude/phase part - FM is for creating the waveform with frequency modulation synthesis principles: One can set carrier/modulation levels, frquency multiplier, connection between operators and FM waveforms of these operators. - WaveTools allows user to fine-tune the waveform: scale said waveform in both X and Y axes, smoothen, amplify, normalize, convert to signed/unisgned, invert or even randomize the wavetable. From f8346f55885cb51fd3119a6690bcc7f7591c70c7 Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:16:02 +0200 Subject: [PATCH 091/183] Update opll.md drum mode internals --- doc/7-systems/opll.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/doc/7-systems/opll.md b/doc/7-systems/opll.md index 8b16e888..115e4bd7 100644 --- a/doc/7-systems/opll.md +++ b/doc/7-systems/opll.md @@ -12,7 +12,11 @@ OPLL also spawned a few derivative chips, the best known of these is: the YM2413 is equipped with the following features: - 9 channels of 2 operator FM synthesis -- A drum/percussion mode, replacing the last 3 voices with 5 rhythm channels +- A drum/percussion mode, replacing the last 3 voices with 5 rhythm channels, with drum mode tones hard-defined in the chip itself, like FM instruments. Only pitch might be altered. + + - Drum mode works like following: FM channel 7 is for Kick Drum, which is a normal FM channel but routed through mxier twice for 2x volume, like all drum sounds. FM channel 8 splits to Snare Drum and Hi-Hat. Snare Drum is the carrier and it works with a special 1 bit noise generator combined with a square wave, all possible by overriding phase-generator with some different synthesis method. Hi-Hat is the modulator and it works with the noise generator and also the special synthesis. CH9 splits to Top-Cymbal and Tom-Tom, Top-Cymbal is the carrier and only has the special synthesis, while Tom-Tom is basically a 1op wave. + - Special syntheis mentioned already is: 5 square waves are gathered from 4x, 64x and 128x the pitch of channel 8 and 16x and 64x the pitch of channel 9 and they go through a process where 2 HH bits OR'd together, then 1 HH and 1 TC bit OR'd, then the two TC bits OR'd together, and those 3 results get XOR'd. + - 1 user-definable patch (this patch can be changed throughout the course of the song) - 15 pre-defined patches which can all be used at the same time - Support for ADSR on both the modulator and the carrier @@ -60,4 +64,4 @@ the YM2413 is equipped with the following features: - `58xx`: set DR of operator 2. - `5Bxy`: set KSR of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - - `y` determines whether KSR is on. \ No newline at end of file + - `y` determines whether KSR is on. From 72b654f708b507a2d4d49f13bddad07d6860222f Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:17:42 +0200 Subject: [PATCH 092/183] Update opl.md ditto --- doc/7-systems/opl.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/7-systems/opl.md b/doc/7-systems/opl.md index b4a86e6d..80c00299 100644 --- a/doc/7-systems/opl.md +++ b/doc/7-systems/opl.md @@ -3,7 +3,7 @@ a series of FM sound chips which were very popular in DOS land. it was so popular that even Yamaha made a logo for it! essentially a downgraded version of Yamaha's other FM chips, with only 2 operators per channel. -however, it also had a drums mode, and later chips in the series added more waveforms (than just the typical sine) and even a 4-operator mode. +however, it also had a [drums mode](opll.md), and later chips in the series added more waveforms (than just the typical sine) and even a 4-operator mode. the original OPL (Yamaha YM3526) was present as an expansion for the Commodore 64 and MSX computers (erm, a variant of it). it only had 9 two-operator channels and drums mode. @@ -77,4 +77,4 @@ afterwards everyone moved to Windows and software mixed PCM streaming... - only in 4-op mode (OPL3). - `5Bxy`: set KSR of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - - `y` determines whether KSR is on. \ No newline at end of file + - `y` determines whether KSR is on. From 3e7710651a3cb71d54819c440dc387df61ecf4fb Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:23:08 +0200 Subject: [PATCH 093/183] Update ym2612.md src: genny vst and sonic.exe vs fnf --- doc/7-systems/ym2612.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/7-systems/ym2612.md b/doc/7-systems/ym2612.md index 1eeb148e..cbb38e33 100644 --- a/doc/7-systems/ym2612.md +++ b/doc/7-systems/ym2612.md @@ -1,6 +1,6 @@ # Yamaha YM2612 -one of two chips that powered the Sega Genesis. It is a six-channel, four-operator FM synthesizer. Channel #6 can be turned into 8-bit PCM player. +one of two chips that powered the Sega Genesis. It is a six-channel, four-operator FM synthesizer. Channel #6 can be turned into 8-bit PCM player, that via software mixing, thanks to Z80 sound CPU, can play more than one channel of straight-shot samples at once. As of Furnace 0.6pre5, Furnace offers DualPCM, which allows 2 channels ofsoftware-mixed 8-bit PCM samples at 13750 Hz. # effects From 2658f4cfdcdaed60347cfef81dfacdd9ba33d628 Mon Sep 17 00:00:00 2001 From: freq-mod <32672779+freq-mod@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:23:26 +0200 Subject: [PATCH 094/183] typo --- doc/7-systems/ym2612.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/7-systems/ym2612.md b/doc/7-systems/ym2612.md index cbb38e33..dda45266 100644 --- a/doc/7-systems/ym2612.md +++ b/doc/7-systems/ym2612.md @@ -1,6 +1,6 @@ # Yamaha YM2612 -one of two chips that powered the Sega Genesis. It is a six-channel, four-operator FM synthesizer. Channel #6 can be turned into 8-bit PCM player, that via software mixing, thanks to Z80 sound CPU, can play more than one channel of straight-shot samples at once. As of Furnace 0.6pre5, Furnace offers DualPCM, which allows 2 channels ofsoftware-mixed 8-bit PCM samples at 13750 Hz. +one of two chips that powered the Sega Genesis. It is a six-channel, four-operator FM synthesizer. Channel #6 can be turned into 8-bit PCM player, that via software mixing, thanks to Z80 sound CPU, can play more than one channel of straight-shot samples at once. As of Furnace 0.6pre5, Furnace offers DualPCM, which allows 2 channels of software-mixed 8-bit PCM samples at 13750 Hz. # effects From e089c3940dfaa0ce14042bd1c1012e8320ab29a7 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 15 Jun 2023 15:45:53 -0500 Subject: [PATCH 095/183] fix atari breakbeat issue #1157 --- demos/a2600/atari breakbeat.fur | Bin 1101 -> 1096 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/demos/a2600/atari breakbeat.fur b/demos/a2600/atari breakbeat.fur index dd4183befab50e4c8cde3799e4e2c3df042577a6..7dfbb0e35700a659689831e1cbfcb672b52c472e 100644 GIT binary patch literal 1096 zcmV-O1h@Nmob6XlZyQAzerIN9?IcY$AP`7CIDANzkfK^W5TpXNX$gu_FBa_|*tqMi zvGY;e5sic(kpOYy#x1JE58&7{9JuoX5ZXUbi33N_^33ecdL7%f7pq99o%orZdEe*# z*mqv9H=EnXy#uf5Z|oo5J?{FO4~b}lhGWOw{`e8cLP|z-^ua0FWUUvpZW;KBo;<2E z#td`%ozG%C-Qf+qUVCG&=X;$!-y6`o2c7pJ{_O^F&J=+$LuKrmAbJE`w}^fLwj|LH zz`9NJ9q=O%7K#1_R#u3dRieE$qCXsPUO?ergcsbfurM>sZ0Ma%uak+VK9&j1)t0`; zUp#6$THBA?!oghp-P}AHqI_eF*yy z_95(*Z8Er&_Q;@B+|L`p6=3^T?W4(=+;dnv>_YvC-$MMLZ79fC3V`(PL810 zR8Scy=gh%CBp%VvXgPdg(E?Q*eHF)E6+9*tZHrNaeq&-hkuTCjZ0a9)JwHb#TPl;{ zFcaj0WGtNwN>P#+qUR^4fwTH$b$!=S4krCx#1Js#H+JXBh@rg4~^8r1=)~yVpd5a<8Jt< z8$RlWkGkQyV_r55D4J-e7T^N`X{D{(32j>VRyc(tAq!|LeKq^M@CbSVNS`_{p8xx}`FO&75~eQcH@c*8EybZUGuQJ-l#Im4^YVMr%v{f-{N9}Wq}mhs z_obP+o=5%PUzk6TX6AYxxqTP|3rX-{- zRZ;{D{HVlVz`#Gizrex<12Y>F3lkF?V#K_&9p@V7lDjI!zSakJp5L9n@8jpIUoM`U ze$rg`D%IlJQwgl?Jo{r^632 zXvFR|Z_{hmi%ZR_*I250n{Z{laSh$yZvv$O8i@f3p%mZ+ZhvumV*&iZ&9ec%;x@+s z9*koO4*_f)0eE{1;Qc9p4`%_soCElF5#Z-#RKasC8}|hFq@xb6uR}W?|8KWLQ+^2V z@L$-<0rBG9a(FmBQ@(Q)KP#(`D~*Nf>eZ>SwfeLA`oqQN8&y2OJG^kdg#)(0g}L%L zta!`VTlAV6Fg<%3eq-0vtK-K@1^MS}`3#;66TS}?QWb23>NG_4k&%KmGUm_R!nspq z^XwD3J;y^ok3%zP)GG~*pci;h=5ujUz=pY_K70;RSVD!8MZ-?lu?hH?E@CACUd8|p zwAQ_5RfFIXCvZCi$bgq?#}IhWOHQ;|b{ocVlN66)iV>*QCu=y>)GTo%~v zl|#2*Ha=@Qrt>>Pikp^>>HKU+ansTzMvPHJ#t|2de4( zraVxy8kfQZXsr-P^cxxfy@~_^uuUNJCk42lO8gci$A~)Jwyw?~{hWVq^2_|D@SC3h zoIjiVmV!NqUnmGvC4!iGQazL{(>yzUlmqgumNQCH|fAtLmi1Kd2xK zi=RpOyZuz+-)a6;b@n>HE8*| Date: Fri, 16 Jun 2023 13:34:03 -0500 Subject: [PATCH 096/183] YM2612: fix DualPCM chan osc sustain issue #1162 --- src/engine/platform/genesis.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index 9f905105..8e92c40f 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -188,9 +188,11 @@ void DivPlatformGenesis::acquire_nuked(short** buf, size_t len) { oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<7; } else { oscBuf[i]->data[oscBuf[i]->needle++]=fm.dacdata<<7; + oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?2:7),-32768,32767); + oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?2:7),-32768,32767); @@ -251,9 +253,11 @@ void DivPlatformGenesis::acquire_ymfm(short** buf, size_t len) { oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<7; } else { oscBuf[i]->data[oscBuf[i]->needle++]=fm_ymfm->debug_dac_data()<<7; + oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { oscBuf[i]->data[oscBuf[i]->needle++]=chOut; + oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { oscBuf[i]->data[oscBuf[i]->needle++]=chOut; From 7b30cfb1b75ad4569b86134fc4a0235e52f7c019 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 16 Jun 2023 15:43:41 -0500 Subject: [PATCH 097/183] IGFD: some changes --- extern/igfd/ImGuiFileDialog.cpp | 13 +++++++------ extern/igfd/ImGuiFileDialog.h | 2 ++ src/gui/fileDialog.cpp | 3 +++ 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index 4af6ca44..4ad01ba1 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -133,6 +133,9 @@ namespace IGFD #ifndef resetButtonString #define resetButtonString ICON_FA_REPEAT #endif // resetButtonString +#ifndef homeButtonString +#define homeButtonString ICON_FA_HOME +#endif // bomeButtonString #ifndef drivesButtonString #define drivesButtonString ICON_FA_HDD_O #endif // drivesButtonString @@ -170,7 +173,7 @@ namespace IGFD #define buttonEditPathString "Edit path\nYou can also right click on path buttons" #endif // buttonEditPathString #ifndef buttonResetPathString -#define buttonResetPathString "Reset to current directory" +#define buttonResetPathString "Go to home directory" #endif // buttonResetPathString #ifndef buttonParentDirString #define buttonParentDirString "Go to parent directory" @@ -700,10 +703,8 @@ namespace IGFD if (ImGui::IsItemHovered()) ImGui::SetTooltip(buttonResetSearchString); ImGui::SameLine(); - ImGui::Text(searchString); - ImGui::SameLine(); ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x); - bool edited = ImGui::InputText("##InputImGuiFileDialogSearchField", puSearchBuffer, MAX_FILE_DIALOG_NAME_BUFFER); + bool edited = ImGui::InputTextWithHint("##InputImGuiFileDialogSearchField", searchString, puSearchBuffer, MAX_FILE_DIALOG_NAME_BUFFER); if (ImGui::GetItemID() == ImGui::GetActiveID()) puSearchInputIsActive = true; ImGui::PopItemWidth(); @@ -2245,9 +2246,9 @@ namespace IGFD void IGFD::FileManager::DrawPathComposer(const FileDialogInternal& vFileDialogInternal) { - if (IMGUI_BUTTON(resetButtonString)) + if (IMGUI_BUTTON(homeButtonString)) { - SetCurrentPath("."); + SetCurrentPath(FileDialog::Instance()->homePath); OpenCurrentPath(vFileDialogInternal); } if (ImGui::IsItemHovered()) diff --git a/extern/igfd/ImGuiFileDialog.h b/extern/igfd/ImGuiFileDialog.h index 827a987e..2ad9cbc8 100644 --- a/extern/igfd/ImGuiFileDialog.h +++ b/extern/igfd/ImGuiFileDialog.h @@ -878,6 +878,7 @@ namespace IGFD bool fileListActuallyEmpty = false; std::string puDLGpath; // base path set by user when OpenDialog/OpenModal was called + std::string puError; // last error std::string puDLGDefaultFileName; // base default file path name set by user when OpenDialog/OpenModal was called size_t puDLGcountSelectionMax = 1U; // 0 for infinite // base max selection count set by user when OpenDialog/OpenModal was called bool puDLGDirectoryMode = false; // is directory mode (defiend like : puDLGDirectoryMode = (filters.empty())) @@ -1145,6 +1146,7 @@ namespace IGFD double DpiScale; bool singleClickSel; bool mobileMode; + std::string homePath; public: static FileDialog* Instance() // Singleton for easier accces form anywhere but only one dialog at a time diff --git a/src/gui/fileDialog.cpp b/src/gui/fileDialog.cpp index 94ffa94e..a0a45e1e 100644 --- a/src/gui/fileDialog.cpp +++ b/src/gui/fileDialog.cpp @@ -1,5 +1,6 @@ #include "fileDialog.h" #include "ImGuiFileDialog.h" +#include "util.h" #include "../ta-log.h" #ifdef USE_NFD @@ -152,6 +153,7 @@ bool FurnaceGUIFileDialog::openLoad(String header, std::vector filter, c ImGuiFileDialog::Instance()->singleClickSel=mobileUI; ImGuiFileDialog::Instance()->DpiScale=dpiScale; ImGuiFileDialog::Instance()->mobileMode=mobileUI; + ImGuiFileDialog::Instance()->homePath=getHomeDir(); ImGuiFileDialog::Instance()->OpenModal("FileDialog",header,noSysFilter,path,allowMultiple?999:1,nullptr,0,clickCallback); } opened=true; @@ -235,6 +237,7 @@ bool FurnaceGUIFileDialog::openSave(String header, std::vector filter, c ImGuiFileDialog::Instance()->singleClickSel=false; ImGuiFileDialog::Instance()->DpiScale=dpiScale; ImGuiFileDialog::Instance()->mobileMode=mobileUI; + ImGuiFileDialog::Instance()->homePath=getHomeDir(); ImGuiFileDialog::Instance()->OpenModal("FileDialog",header,noSysFilter,path,1,nullptr,ImGuiFileDialogFlags_ConfirmOverwrite); } opened=true; From 9b1fea5c36f2bed12e76b8d1238411ee2f5f17c2 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 16 Jun 2023 16:12:20 -0500 Subject: [PATCH 098/183] IGFD: remove std::filesystem support it is unused in Furnace --- extern/igfd/ImGuiFileDialog.cpp | 89 +---------------------------- extern/igfd/ImGuiFileDialog.h | 12 +--- extern/igfd/ImGuiFileDialogConfig.h | 3 - 3 files changed, 3 insertions(+), 101 deletions(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index 4ad01ba1..b4941c79 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -42,10 +42,6 @@ SOFTWARE. #include #include #include -// this option need c++17 -#ifdef USE_STD_FILESYSTEM - #include -#endif #if defined (__EMSCRIPTEN__) // EMSCRIPTEN #include #endif // EMSCRIPTEN @@ -53,12 +49,7 @@ SOFTWARE. #define stat _stat #define stricmp _stricmp #include - // this option need c++17 - #ifdef USE_STD_FILESYSTEM - #include - #else - #include "dirent/dirent.h" // directly open the dirent file attached to this lib - #endif // USE_STD_FILESYSTEM + #include "dirent/dirent.h" // directly open the dirent file attached to this lib #define PATH_SEP '\\' #ifndef PATH_MAX #define PATH_MAX 260 @@ -67,10 +58,7 @@ SOFTWARE. #define UNIX #define stricmp strcasecmp #include - // this option need c++17 - #ifndef USE_STD_FILESYSTEM - #include - #endif // USE_STD_FILESYSTEM + #include #define PATH_SEP '/' #endif // defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) @@ -320,12 +308,10 @@ namespace IGFD //// INLINE FUNCTIONS /////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////// -#ifndef USE_STD_FILESYSTEM inline int inAlphaSort(const struct dirent** a, const struct dirent** b) { return strcoll((*a)->d_name, (*b)->d_name); } -#endif ///////////////////////////////////////////////////////////////////////////////////// //// FILE EXTENTIONS INFOS ////////////////////////////////////////////////////////// @@ -497,16 +483,6 @@ namespace IGFD if (!name.empty()) { -#ifdef USE_STD_FILESYSTEM - namespace fs = std::filesystem; -#ifdef WIN32 - std::wstring wname = IGFD::Utils::string_to_wstring(name.c_str()); - fs::path pathName = fs::path(wname); -#else - fs::path pathName = fs::path(name); -#endif - bExists = fs::is_directory(pathName); -#else DIR* pDir = nullptr; pDir = opendir(name.c_str()); if (pDir != nullptr) @@ -514,7 +490,6 @@ namespace IGFD bExists = true; (void)closedir(pDir); } -#endif // USE_STD_FILESYSTEM } return bExists; // this is not a directory! @@ -529,18 +504,11 @@ namespace IGFD if (!IsDirectoryExist(name)) { #ifdef WIN32 -#ifdef USE_STD_FILESYSTEM - namespace fs = std::filesystem; - std::wstring wname = IGFD::Utils::string_to_wstring(name.c_str()); - fs::path pathName = fs::path(wname); - res = fs::create_directory(pathName); -#else std::wstring wname = IGFD::Utils::string_to_wstring(name); if (CreateDirectoryW(wname.c_str(), nullptr)) { res = true; } -#endif // USE_STD_FILESYSTEM #elif defined(__EMSCRIPTEN__) std::string str = std::string("FS.mkdir('") + name + "');"; emscripten_run_script(str.c_str()); @@ -563,26 +531,6 @@ namespace IGFD return res; } -#ifdef USE_STD_FILESYSTEM - // https://github.com/aiekick/ImGuiFileDialog/issues/54 - IGFD::Utils::PathStruct IGFD::Utils::ParsePathFileName(const std::string& vPathFileName) - { - namespace fs = std::filesystem; - PathStruct res; - if (vPathFileName.empty()) - return res; - - auto fsPath = fs::path(vPathFileName); - - if (fs::is_regular_file(fsPath)) { - res.name = fsPath.string(); - res.path = fsPath.parent_path().string(); - res.isOk = true; - } - - return res; - } -#else IGFD::Utils::PathStruct IGFD::Utils::ParsePathFileName(const std::string& vPathFileName) { PathStruct res; @@ -627,7 +575,6 @@ namespace IGFD return res; } -#endif // USE_STD_FILESYSTEM void IGFD::Utils::AppendToBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr) { std::string st = vStr; @@ -1552,24 +1499,6 @@ namespace IGFD ClearFileLists(); -#ifdef USE_STD_FILESYSTEM - //const auto wpath = IGFD::Utils::WGetString(path.c_str()); - const std::filesystem::path fspath(path); - const auto dir_iter = std::filesystem::directory_iterator(fspath); - AddFile(vFileDialogInternal, path, "..", 'd'); - for (const auto& file : dir_iter) - { - char fileType = 0; - if (file.is_symlink()) - fileType = 'l'; - else if (file.is_directory()) - fileType = 'd'; - else - fileType = 'f'; - auto fileNameExt = file.path().filename().string(); - AddFile(vFileDialogInternal, path, fileNameExt, fileType); - } -#else // dirent struct dirent** files = nullptr; int n = scandir(path.c_str(), &files, nullptr, inAlphaSort); logV("IGFD: %d entries in directory",n); @@ -1643,7 +1572,6 @@ namespace IGFD } else { logV("IGFD: it's empty"); } -#endif // USE_STD_FILESYSTEM logV("IGFD: sorting fields..."); SortFields(vFileDialogInternal, puSortingField, false); @@ -1891,16 +1819,6 @@ namespace IGFD path += std::string(1u, PATH_SEP); #endif // WIN32 -#ifdef USE_STD_FILESYSTEM - namespace fs = std::filesystem; - bool dir_opened = fs::is_directory(vPath); - if (!dir_opened) - { - path = "."; - dir_opened = fs::is_directory(vPath); - } - if (dir_opened) -#else DIR* dir = opendir(path.c_str()); if (dir == nullptr) { @@ -1909,7 +1827,6 @@ namespace IGFD } if (dir != nullptr) -#endif // USE_STD_FILESYSTEM { #ifdef WIN32 DWORD numchar = 0; @@ -1945,9 +1862,7 @@ namespace IGFD #endif // WIN32 } } -#ifndef USE_STD_FILESYSTEM closedir(dir); -#endif } } diff --git a/extern/igfd/ImGuiFileDialog.h b/extern/igfd/ImGuiFileDialog.h index 2ad9cbc8..9c2d246f 100644 --- a/extern/igfd/ImGuiFileDialog.h +++ b/extern/igfd/ImGuiFileDialog.h @@ -534,23 +534,13 @@ if (IGFD_DisplayDialog(cfiledialog, "filedlg", ImGuiWindowFlags_NoCollapse, minS // destroy ImGuiFileDialog IGFD_Destroy(cfiledialog); ------------------------------------------------------------------------------------------------------------------ -## Std::filesystem (c++17) can be used instead of dirent.h ------------------------------------------------------------------------------------------------------------------ - -you just need to uncomment that in the config file - -#define USE_STD_FILESYSTEM - -in this mode dirent is not more required - ----------------------------------------------------------------------------------------------------------------- ## How to Integrate ImGuiFileDialog in your project ----------------------------------------------------------------------------------------------------------------- ### ImGuiFileDialog require : -* dirent v1.23 (only when USE_STD_FILESYSTEM is not defined) (https://github.com/tronkko/dirent/tree/v1.23) lib, only for windows. Successfully tested with version v1.23 only +* dirent v1.23 (https://github.com/tronkko/dirent/tree/v1.23) lib, only for windows. Successfully tested with version v1.23 only * Dear ImGui (https://github.com/ocornut/imgui/tree/master) (with/without tables widgets) ### Customize ImGuiFileDialog : diff --git a/extern/igfd/ImGuiFileDialogConfig.h b/extern/igfd/ImGuiFileDialogConfig.h index 1db638dd..4a212b60 100644 --- a/extern/igfd/ImGuiFileDialogConfig.h +++ b/extern/igfd/ImGuiFileDialogConfig.h @@ -2,9 +2,6 @@ // uncomment and modify defines under for customize ImGuiFileDialog -//this options need c++17 -//#define USE_STD_FILESYSTEM - //#define MAX_FILE_DIALOG_NAME_BUFFER 1024 //#define MAX_PATH_BUFFER_SIZE 1024 From ad9981fdea5aed2ee89b75a49711982cd339b537 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 16 Jun 2023 16:26:22 -0500 Subject: [PATCH 099/183] IGFD: tabs to spaces... --- extern/igfd/ImGuiFileDialog.cpp | 7854 +++++++++++++++---------------- extern/igfd/ImGuiFileDialog.h | 1758 +++---- 2 files changed, 4806 insertions(+), 4806 deletions(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index b4941c79..a3104839 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -26,7 +26,7 @@ SOFTWARE. */ #ifndef IMGUI_DEFINE_MATH_OPERATORS - #define IMGUI_DEFINE_MATH_OPERATORS + #define IMGUI_DEFINE_MATH_OPERATORS #endif // IMGUI_DEFINE_MATH_OPERATORS #include "ImGuiFileDialog.h" @@ -43,23 +43,23 @@ SOFTWARE. #include #include #if defined (__EMSCRIPTEN__) // EMSCRIPTEN - #include + #include #endif // EMSCRIPTEN #ifdef WIN32 - #define stat _stat - #define stricmp _stricmp - #include - #include "dirent/dirent.h" // directly open the dirent file attached to this lib - #define PATH_SEP '\\' - #ifndef PATH_MAX - #define PATH_MAX 260 - #endif // PATH_MAX + #define stat _stat + #define stricmp _stricmp + #include + #include "dirent/dirent.h" // directly open the dirent file attached to this lib + #define PATH_SEP '\\' + #ifndef PATH_MAX + #define PATH_MAX 260 + #endif // PATH_MAX #elif defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) || defined (__EMSCRIPTEN__) || defined(__HAIKU__) - #define UNIX - #define stricmp strcasecmp - #include - #include - #define PATH_SEP '/' + #define UNIX + #define stricmp strcasecmp + #include + #include + #define PATH_SEP '/' #endif // defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) #include "imgui.h" @@ -229,29 +229,29 @@ namespace IGFD #define DisplayMode_ThumbailsList_ImageHeight 32.0f #endif // DisplayMode_ThumbailsList_ImageHeight #ifndef IMGUI_RADIO_BUTTON - inline bool inRadioButton(const char* vLabel, bool vToggled) - { - bool pressed = false; + inline bool inRadioButton(const char* vLabel, bool vToggled) + { + bool pressed = false; - if (vToggled) - { - ImVec4 bua = ImGui::GetStyleColorVec4(ImGuiCol_ButtonActive); - ImVec4 te = ImGui::GetStyleColorVec4(ImGuiCol_Text); - ImGui::PushStyleColor(ImGuiCol_Button, te); - ImGui::PushStyleColor(ImGuiCol_ButtonActive, te); - ImGui::PushStyleColor(ImGuiCol_ButtonHovered, te); - ImGui::PushStyleColor(ImGuiCol_Text, bua); - } + if (vToggled) + { + ImVec4 bua = ImGui::GetStyleColorVec4(ImGuiCol_ButtonActive); + ImVec4 te = ImGui::GetStyleColorVec4(ImGuiCol_Text); + ImGui::PushStyleColor(ImGuiCol_Button, te); + ImGui::PushStyleColor(ImGuiCol_ButtonActive, te); + ImGui::PushStyleColor(ImGuiCol_ButtonHovered, te); + ImGui::PushStyleColor(ImGuiCol_Text, bua); + } - pressed = IMGUI_BUTTON(vLabel); + pressed = IMGUI_BUTTON(vLabel); - if (vToggled) - { - ImGui::PopStyleColor(4); //-V112 - } + if (vToggled) + { + ImGui::PopStyleColor(4); //-V112 + } - return pressed; - } + return pressed; + } #define IMGUI_RADIO_BUTTON inRadioButton #endif // IMGUI_RADIO_BUTTON #endif // USE_THUMBNAILS @@ -272,902 +272,902 @@ namespace IGFD #define removeBookmarkButtonString "-" #endif // removeBookmarkButtonString #ifndef IMGUI_TOGGLE_BUTTON - inline bool inToggleButton(const char* vLabel, bool* vToggled) - { - bool pressed = false; + inline bool inToggleButton(const char* vLabel, bool* vToggled) + { + bool pressed = false; - if (vToggled && *vToggled) - { - ImVec4 bua = ImGui::GetStyleColorVec4(ImGuiCol_ButtonActive); - //ImVec4 buh = ImGui::GetStyleColorVec4(ImGuiCol_ButtonHovered); - //ImVec4 bu = ImGui::GetStyleColorVec4(ImGuiCol_Button); - ImVec4 te = ImGui::GetStyleColorVec4(ImGuiCol_Text); - ImGui::PushStyleColor(ImGuiCol_Button, te); - ImGui::PushStyleColor(ImGuiCol_ButtonActive, te); - ImGui::PushStyleColor(ImGuiCol_ButtonHovered, te); - ImGui::PushStyleColor(ImGuiCol_Text, bua); - } + if (vToggled && *vToggled) + { + ImVec4 bua = ImGui::GetStyleColorVec4(ImGuiCol_ButtonActive); + //ImVec4 buh = ImGui::GetStyleColorVec4(ImGuiCol_ButtonHovered); + //ImVec4 bu = ImGui::GetStyleColorVec4(ImGuiCol_Button); + ImVec4 te = ImGui::GetStyleColorVec4(ImGuiCol_Text); + ImGui::PushStyleColor(ImGuiCol_Button, te); + ImGui::PushStyleColor(ImGuiCol_ButtonActive, te); + ImGui::PushStyleColor(ImGuiCol_ButtonHovered, te); + ImGui::PushStyleColor(ImGuiCol_Text, bua); + } - pressed = IMGUI_BUTTON(vLabel); + pressed = IMGUI_BUTTON(vLabel); - if (vToggled && *vToggled) - { - ImGui::PopStyleColor(4); //-V112 - } + if (vToggled && *vToggled) + { + ImGui::PopStyleColor(4); //-V112 + } - if (vToggled && pressed) - *vToggled = !*vToggled; + if (vToggled && pressed) + *vToggled = !*vToggled; - return pressed; - } + return pressed; + } #define IMGUI_TOGGLE_BUTTON inToggleButton #endif // IMGUI_TOGGLE_BUTTON #endif // USE_BOOKMARK - ///////////////////////////////////////////////////////////////////////////////////// - //// INLINE FUNCTIONS /////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// INLINE FUNCTIONS /////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - inline int inAlphaSort(const struct dirent** a, const struct dirent** b) - { - return strcoll((*a)->d_name, (*b)->d_name); - } + inline int inAlphaSort(const struct dirent** a, const struct dirent** b) + { + return strcoll((*a)->d_name, (*b)->d_name); + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILE EXTENTIONS INFOS ////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILE EXTENTIONS INFOS ////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - IGFD::FileStyle::FileStyle() - : color(0, 0, 0, 0) - { + IGFD::FileStyle::FileStyle() + : color(0, 0, 0, 0) + { - } - - IGFD::FileStyle::FileStyle(const FileStyle& vStyle) - { - color = vStyle.color; - icon = vStyle.icon; - font = vStyle.font; - flags = vStyle.flags; - } + } + + IGFD::FileStyle::FileStyle(const FileStyle& vStyle) + { + color = vStyle.color; + icon = vStyle.icon; + font = vStyle.font; + flags = vStyle.flags; + } - IGFD::FileStyle::FileStyle(const ImVec4& vColor, const std::string& vIcon, ImFont* vFont) - : color(vColor), icon(vIcon), font(vFont) - { + IGFD::FileStyle::FileStyle(const ImVec4& vColor, const std::string& vIcon, ImFont* vFont) + : color(vColor), icon(vIcon), font(vFont) + { - } + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILE INFOS ///////////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILE INFOS ///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - // https://github.com/ocornut/imgui/issues/1720 - bool IGFD::Utils::Splitter(bool split_vertically, float thickness, float* size1, float* size2, float min_size1, float min_size2, float splitter_long_axis_size) - { - using namespace ImGui; - ImGuiContext& g = *GImGui; - ImGuiWindow* window = g.CurrentWindow; - ImGuiID id = window->GetID("##Splitter"); - ImRect bb; - bb.Min = window->DC.CursorPos + (split_vertically ? ImVec2(*size1, 0.0f) : ImVec2(0.0f, *size1)); - bb.Max = bb.Min + CalcItemSize(split_vertically ? ImVec2(thickness, splitter_long_axis_size) : ImVec2(splitter_long_axis_size, thickness), 0.0f, 0.0f); - return SplitterBehavior(bb, id, split_vertically ? ImGuiAxis_X : ImGuiAxis_Y, size1, size2, min_size1, min_size2, 1.0f); - } + // https://github.com/ocornut/imgui/issues/1720 + bool IGFD::Utils::Splitter(bool split_vertically, float thickness, float* size1, float* size2, float min_size1, float min_size2, float splitter_long_axis_size) + { + using namespace ImGui; + ImGuiContext& g = *GImGui; + ImGuiWindow* window = g.CurrentWindow; + ImGuiID id = window->GetID("##Splitter"); + ImRect bb; + bb.Min = window->DC.CursorPos + (split_vertically ? ImVec2(*size1, 0.0f) : ImVec2(0.0f, *size1)); + bb.Max = bb.Min + CalcItemSize(split_vertically ? ImVec2(thickness, splitter_long_axis_size) : ImVec2(splitter_long_axis_size, thickness), 0.0f, 0.0f); + return SplitterBehavior(bb, id, split_vertically ? ImGuiAxis_X : ImGuiAxis_Y, size1, size2, min_size1, min_size2, 1.0f); + } #ifdef WIN32 - bool IGFD::Utils::WReplaceString(std::wstring& str, const std::wstring& oldStr, const std::wstring& newStr) - { - bool found = false; - size_t pos = 0; - while ((pos = str.find(oldStr, pos)) != std::wstring::npos) - { - found = true; - str.replace(pos, oldStr.length(), newStr); - pos += newStr.length(); - } - return found; - } + bool IGFD::Utils::WReplaceString(std::wstring& str, const std::wstring& oldStr, const std::wstring& newStr) + { + bool found = false; + size_t pos = 0; + while ((pos = str.find(oldStr, pos)) != std::wstring::npos) + { + found = true; + str.replace(pos, oldStr.length(), newStr); + pos += newStr.length(); + } + return found; + } - std::vector IGFD::Utils::WSplitStringToVector(const std::wstring& text, char delimiter, bool pushEmpty) - { - std::vector arr; - if (!text.empty()) - { - std::wstring::size_type start = 0; - std::wstring::size_type end = text.find(delimiter, start); - while (end != std::wstring::npos) - { - std::wstring token = text.substr(start, end - start); - if (!token.empty() || (token.empty() && pushEmpty)) //-V728 - arr.push_back(token); - start = end + 1; - end = text.find(delimiter, start); - } - std::wstring token = text.substr(start); - if (!token.empty() || (token.empty() && pushEmpty)) //-V728 - arr.push_back(token); - } - return arr; - } + std::vector IGFD::Utils::WSplitStringToVector(const std::wstring& text, char delimiter, bool pushEmpty) + { + std::vector arr; + if (!text.empty()) + { + std::wstring::size_type start = 0; + std::wstring::size_type end = text.find(delimiter, start); + while (end != std::wstring::npos) + { + std::wstring token = text.substr(start, end - start); + if (!token.empty() || (token.empty() && pushEmpty)) //-V728 + arr.push_back(token); + start = end + 1; + end = text.find(delimiter, start); + } + std::wstring token = text.substr(start); + if (!token.empty() || (token.empty() && pushEmpty)) //-V728 + arr.push_back(token); + } + return arr; + } - std::wstring IGFD::Utils::string_to_wstring(const std::string& str) - { - std::wstring ret; - if (!str.empty()) - { - size_t sz = std::mbstowcs(nullptr, str.c_str(), str.size()); - if (sz) - { - ret.resize(sz); - std::mbstowcs((wchar_t*)ret.data(), str.c_str(), sz); - } - } - return ret; - } + std::wstring IGFD::Utils::string_to_wstring(const std::string& str) + { + std::wstring ret; + if (!str.empty()) + { + size_t sz = std::mbstowcs(nullptr, str.c_str(), str.size()); + if (sz) + { + ret.resize(sz); + std::mbstowcs((wchar_t*)ret.data(), str.c_str(), sz); + } + } + return ret; + } - std::string IGFD::Utils::wstring_to_string(const std::wstring& str) - { - std::string ret; - if (!str.empty()) - { - size_t sz = std::wcstombs(nullptr, str.c_str(), str.size()); - if (sz) - { - ret.resize(sz); - std::wcstombs((char*)ret.data(), str.c_str(), sz); - } - } - return ret; - } + std::string IGFD::Utils::wstring_to_string(const std::wstring& str) + { + std::string ret; + if (!str.empty()) + { + size_t sz = std::wcstombs(nullptr, str.c_str(), str.size()); + if (sz) + { + ret.resize(sz); + std::wcstombs((char*)ret.data(), str.c_str(), sz); + } + } + return ret; + } #endif // WIN32 - bool IGFD::Utils::ReplaceString(std::string& str, const std::string& oldStr, const std::string& newStr) - { - bool found = false; - size_t pos = 0; - while ((pos = str.find(oldStr, pos)) != std::string::npos) - { - found = true; - str.replace(pos, oldStr.length(), newStr); - pos += newStr.length(); - } - return found; - } + bool IGFD::Utils::ReplaceString(std::string& str, const std::string& oldStr, const std::string& newStr) + { + bool found = false; + size_t pos = 0; + while ((pos = str.find(oldStr, pos)) != std::string::npos) + { + found = true; + str.replace(pos, oldStr.length(), newStr); + pos += newStr.length(); + } + return found; + } - std::vector IGFD::Utils::SplitStringToVector(const std::string& text, char delimiter, bool pushEmpty) - { - std::vector arr; - if (!text.empty()) - { - size_t start = 0; - size_t end = text.find(delimiter, start); - while (end != std::string::npos) - { - auto token = text.substr(start, end - start); - if (!token.empty() || (token.empty() && pushEmpty)) //-V728 - arr.push_back(token); - start = end + 1; - end = text.find(delimiter, start); - } - auto token = text.substr(start); - if (!token.empty() || (token.empty() && pushEmpty)) //-V728 - arr.push_back(token); - } - return arr; - } + std::vector IGFD::Utils::SplitStringToVector(const std::string& text, char delimiter, bool pushEmpty) + { + std::vector arr; + if (!text.empty()) + { + size_t start = 0; + size_t end = text.find(delimiter, start); + while (end != std::string::npos) + { + auto token = text.substr(start, end - start); + if (!token.empty() || (token.empty() && pushEmpty)) //-V728 + arr.push_back(token); + start = end + 1; + end = text.find(delimiter, start); + } + auto token = text.substr(start); + if (!token.empty() || (token.empty() && pushEmpty)) //-V728 + arr.push_back(token); + } + return arr; + } - std::vector IGFD::Utils::GetDrivesList() - { - std::vector res; + std::vector IGFD::Utils::GetDrivesList() + { + std::vector res; #ifdef WIN32 - const DWORD mydrives = 2048; - char lpBuffer[2048]; + const DWORD mydrives = 2048; + char lpBuffer[2048]; #define mini(a,b) (((a) < (b)) ? (a) : (b)) - const DWORD countChars = mini(GetLogicalDriveStringsA(mydrives, lpBuffer), 2047); + const DWORD countChars = mini(GetLogicalDriveStringsA(mydrives, lpBuffer), 2047); #undef mini - if (countChars > 0) - { - std::string var = std::string(lpBuffer, (size_t)countChars); - IGFD::Utils::ReplaceString(var, "\\", ""); - res = IGFD::Utils::SplitStringToVector(var, '\0', false); - } + if (countChars > 0) + { + std::string var = std::string(lpBuffer, (size_t)countChars); + IGFD::Utils::ReplaceString(var, "\\", ""); + res = IGFD::Utils::SplitStringToVector(var, '\0', false); + } #endif // WIN32 - return res; - } + return res; + } - bool IGFD::Utils::IsDirectoryExist(const std::string& name) - { - bool bExists = false; + bool IGFD::Utils::IsDirectoryExist(const std::string& name) + { + bool bExists = false; - if (!name.empty()) - { - DIR* pDir = nullptr; - pDir = opendir(name.c_str()); - if (pDir != nullptr) - { - bExists = true; - (void)closedir(pDir); - } - } + if (!name.empty()) + { + DIR* pDir = nullptr; + pDir = opendir(name.c_str()); + if (pDir != nullptr) + { + bExists = true; + (void)closedir(pDir); + } + } - return bExists; // this is not a directory! - } + return bExists; // this is not a directory! + } - bool IGFD::Utils::CreateDirectoryIfNotExist(const std::string& name) - { - bool res = false; + bool IGFD::Utils::CreateDirectoryIfNotExist(const std::string& name) + { + bool res = false; - if (!name.empty()) - { - if (!IsDirectoryExist(name)) - { + if (!name.empty()) + { + if (!IsDirectoryExist(name)) + { #ifdef WIN32 - std::wstring wname = IGFD::Utils::string_to_wstring(name); - if (CreateDirectoryW(wname.c_str(), nullptr)) - { - res = true; - } + std::wstring wname = IGFD::Utils::string_to_wstring(name); + if (CreateDirectoryW(wname.c_str(), nullptr)) + { + res = true; + } #elif defined(__EMSCRIPTEN__) - std::string str = std::string("FS.mkdir('") + name + "');"; - emscripten_run_script(str.c_str()); - res = true; + std::string str = std::string("FS.mkdir('") + name + "');"; + emscripten_run_script(str.c_str()); + res = true; #elif defined(UNIX) - char buffer[PATH_MAX] = {}; - snprintf(buffer, PATH_MAX, "mkdir -p %s", name.c_str()); - const int dir_err = std::system(buffer); - if (dir_err != -1) - { - res = true; - } + char buffer[PATH_MAX] = {}; + snprintf(buffer, PATH_MAX, "mkdir -p %s", name.c_str()); + const int dir_err = std::system(buffer); + if (dir_err != -1) + { + res = true; + } #endif // WIN32 - if (!res) { - std::cout << "Error creating directory " << name << std::endl; - } - } - } + if (!res) { + std::cout << "Error creating directory " << name << std::endl; + } + } + } - return res; - } + return res; + } - IGFD::Utils::PathStruct IGFD::Utils::ParsePathFileName(const std::string& vPathFileName) - { - PathStruct res; + IGFD::Utils::PathStruct IGFD::Utils::ParsePathFileName(const std::string& vPathFileName) + { + PathStruct res; - if (!vPathFileName.empty()) - { - std::string pfn = vPathFileName; - std::string separator(1u, PATH_SEP); - IGFD::Utils::ReplaceString(pfn, "\\", separator); - IGFD::Utils::ReplaceString(pfn, "/", separator); + if (!vPathFileName.empty()) + { + std::string pfn = vPathFileName; + std::string separator(1u, PATH_SEP); + IGFD::Utils::ReplaceString(pfn, "\\", separator); + IGFD::Utils::ReplaceString(pfn, "/", separator); - size_t lastSlash = pfn.find_last_of(separator); - if (lastSlash != std::string::npos) - { - res.name = pfn.substr(lastSlash + 1); - res.path = pfn.substr(0, lastSlash); - res.isOk = true; - } + size_t lastSlash = pfn.find_last_of(separator); + if (lastSlash != std::string::npos) + { + res.name = pfn.substr(lastSlash + 1); + res.path = pfn.substr(0, lastSlash); + res.isOk = true; + } - size_t lastPoint = pfn.find_last_of('.'); - if (lastPoint != std::string::npos) - { - if (!res.isOk) - { - res.name = pfn; - res.isOk = true; - } - res.ext = pfn.substr(lastPoint + 1); - IGFD::Utils::ReplaceString(res.name, "." + res.ext, ""); - } + size_t lastPoint = pfn.find_last_of('.'); + if (lastPoint != std::string::npos) + { + if (!res.isOk) + { + res.name = pfn; + res.isOk = true; + } + res.ext = pfn.substr(lastPoint + 1); + IGFD::Utils::ReplaceString(res.name, "." + res.ext, ""); + } if (res.path.empty()) { res.path=separator; } - if (!res.isOk) - { - res.name = std::move(pfn); - res.isOk = true; - } - } + if (!res.isOk) + { + res.name = std::move(pfn); + res.isOk = true; + } + } - return res; - } - void IGFD::Utils::AppendToBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr) - { - std::string st = vStr; - size_t len = vBufferLen - 1u; - size_t slen = strlen(vBuffer); + return res; + } + void IGFD::Utils::AppendToBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr) + { + std::string st = vStr; + size_t len = vBufferLen - 1u; + size_t slen = strlen(vBuffer); - if (!st.empty() && st != "\n") - { - IGFD::Utils::ReplaceString(st, "\n", ""); - IGFD::Utils::ReplaceString(st, "\r", ""); - } - vBuffer[slen] = '\0'; - std::string str = std::string(vBuffer); - //if (!str.empty()) str += "\n"; - str += vStr; - if (len > str.size()) len = str.size(); + if (!st.empty() && st != "\n") + { + IGFD::Utils::ReplaceString(st, "\n", ""); + IGFD::Utils::ReplaceString(st, "\r", ""); + } + vBuffer[slen] = '\0'; + std::string str = std::string(vBuffer); + //if (!str.empty()) str += "\n"; + str += vStr; + if (len > str.size()) len = str.size(); #ifdef MSVC - strncpy_s(vBuffer, vBufferLen, str.c_str(), len); + strncpy_s(vBuffer, vBufferLen, str.c_str(), len); #else // MSVC - strncpy(vBuffer, str.c_str(), len); + strncpy(vBuffer, str.c_str(), len); #endif // MSVC - vBuffer[len] = '\0'; - } + vBuffer[len] = '\0'; + } - void IGFD::Utils::ResetBuffer(char* vBuffer) - { - vBuffer[0] = '\0'; - } + void IGFD::Utils::ResetBuffer(char* vBuffer) + { + vBuffer[0] = '\0'; + } - void IGFD::Utils::SetBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr) - { - ResetBuffer(vBuffer); - AppendToBuffer(vBuffer, vBufferLen, vStr); - } + void IGFD::Utils::SetBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr) + { + ResetBuffer(vBuffer); + AppendToBuffer(vBuffer, vBufferLen, vStr); + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILE INFOS ///////////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILE INFOS ///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - bool IGFD::FileInfos::IsTagFound(const std::string& vTag) const - { - if (!vTag.empty()) - { - if (fileNameExt_optimized == "..") return true; + bool IGFD::FileInfos::IsTagFound(const std::string& vTag) const + { + if (!vTag.empty()) + { + if (fileNameExt_optimized == "..") return true; - return - fileNameExt_optimized.find(vTag) != std::string::npos || // first try wihtout case and accents - fileNameExt.find(vTag) != std::string::npos; // second if searched with case and accents - } + return + fileNameExt_optimized.find(vTag) != std::string::npos || // first try wihtout case and accents + fileNameExt.find(vTag) != std::string::npos; // second if searched with case and accents + } - // if tag is empty => its a special case but all is found - return true; - } + // if tag is empty => its a special case but all is found + return true; + } - ///////////////////////////////////////////////////////////////////////////////////// - //// SEARCH MANAGER ///////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// SEARCH MANAGER ///////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - void IGFD::SearchManager::Clear() - { - puSearchTag.clear(); - IGFD::Utils::ResetBuffer(puSearchBuffer); - } + void IGFD::SearchManager::Clear() + { + puSearchTag.clear(); + IGFD::Utils::ResetBuffer(puSearchBuffer); + } - void IGFD::SearchManager::DrawSearchBar(FileDialogInternal& vFileDialogInternal) - { - // search field - if (IMGUI_BUTTON(resetButtonString "##BtnImGuiFileDialogSearchField")) - { - Clear(); - vFileDialogInternal.puFileManager.ApplyFilteringOnFileList(vFileDialogInternal); - } - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(buttonResetSearchString); - ImGui::SameLine(); - ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x); - bool edited = ImGui::InputTextWithHint("##InputImGuiFileDialogSearchField", searchString, puSearchBuffer, MAX_FILE_DIALOG_NAME_BUFFER); - if (ImGui::GetItemID() == ImGui::GetActiveID()) - puSearchInputIsActive = true; - ImGui::PopItemWidth(); - if (edited) - { - puSearchTag = puSearchBuffer; - vFileDialogInternal.puFileManager.ApplyFilteringOnFileList(vFileDialogInternal); - } - } + void IGFD::SearchManager::DrawSearchBar(FileDialogInternal& vFileDialogInternal) + { + // search field + if (IMGUI_BUTTON(resetButtonString "##BtnImGuiFileDialogSearchField")) + { + Clear(); + vFileDialogInternal.puFileManager.ApplyFilteringOnFileList(vFileDialogInternal); + } + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(buttonResetSearchString); + ImGui::SameLine(); + ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x); + bool edited = ImGui::InputTextWithHint("##InputImGuiFileDialogSearchField", searchString, puSearchBuffer, MAX_FILE_DIALOG_NAME_BUFFER); + if (ImGui::GetItemID() == ImGui::GetActiveID()) + puSearchInputIsActive = true; + ImGui::PopItemWidth(); + if (edited) + { + puSearchTag = puSearchBuffer; + vFileDialogInternal.puFileManager.ApplyFilteringOnFileList(vFileDialogInternal); + } + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILTER INFOS /////////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILTER INFOS /////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - void IGFD::FilterManager::FilterInfos::clear() - { - filter.clear(); - collectionfilters.clear(); - } + void IGFD::FilterManager::FilterInfos::clear() + { + filter.clear(); + collectionfilters.clear(); + } - bool IGFD::FilterManager::FilterInfos::empty() const - { - return filter.empty() && collectionfilters.empty(); - } + bool IGFD::FilterManager::FilterInfos::empty() const + { + return filter.empty() && collectionfilters.empty(); + } - bool IGFD::FilterManager::FilterInfos::exist(const std::string& vFilter) const - { - return filter == vFilter || (collectionfilters.find(vFilter) != collectionfilters.end()); - } + bool IGFD::FilterManager::FilterInfos::exist(const std::string& vFilter) const + { + return filter == vFilter || (collectionfilters.find(vFilter) != collectionfilters.end()); + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILTER MANAGER ///////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILTER MANAGER ///////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - void IGFD::FilterManager::ParseFilters(const char* vFilters) - { - prParsedFilters.clear(); + void IGFD::FilterManager::ParseFilters(const char* vFilters) + { + prParsedFilters.clear(); - if (vFilters) - puDLGFilters = vFilters; // file mode - else - puDLGFilters.clear(); // directory mode + if (vFilters) + puDLGFilters = vFilters; // file mode + else + puDLGFilters.clear(); // directory mode - if (!puDLGFilters.empty()) - { - // ".*,.cpp,.h,.hpp" - // "Source files{.cpp,.h,.hpp},Image files{.png,.gif,.jpg,.jpeg},.md" + if (!puDLGFilters.empty()) + { + // ".*,.cpp,.h,.hpp" + // "Source files{.cpp,.h,.hpp},Image files{.png,.gif,.jpg,.jpeg},.md" - bool currentFilterFound = false; + bool currentFilterFound = false; - size_t nan = std::string::npos; - size_t p = 0, lp = 0; - while ((p = puDLGFilters.find_first_of("{,", p)) != nan) - { - FilterInfos infos; + size_t nan = std::string::npos; + size_t p = 0, lp = 0; + while ((p = puDLGFilters.find_first_of("{,", p)) != nan) + { + FilterInfos infos; - if (puDLGFilters[p] == '{') // { - { - infos.filter = puDLGFilters.substr(lp, p - lp); - p++; - lp = puDLGFilters.find('}', p); - if (lp != nan) - { - std::string fs = puDLGFilters.substr(p, lp - p); - auto arr = IGFD::Utils::SplitStringToVector(fs, ',', false); - for (auto a : arr) - { - infos.collectionfilters.emplace(a); - } - } - p = lp + 1; - } - else // , - { - infos.filter = puDLGFilters.substr(lp, p - lp); - p++; - } + if (puDLGFilters[p] == '{') // { + { + infos.filter = puDLGFilters.substr(lp, p - lp); + p++; + lp = puDLGFilters.find('}', p); + if (lp != nan) + { + std::string fs = puDLGFilters.substr(p, lp - p); + auto arr = IGFD::Utils::SplitStringToVector(fs, ',', false); + for (auto a : arr) + { + infos.collectionfilters.emplace(a); + } + } + p = lp + 1; + } + else // , + { + infos.filter = puDLGFilters.substr(lp, p - lp); + p++; + } - if (!currentFilterFound && prSelectedFilter.filter == infos.filter) - { - currentFilterFound = true; - prSelectedFilter = infos; - } + if (!currentFilterFound && prSelectedFilter.filter == infos.filter) + { + currentFilterFound = true; + prSelectedFilter = infos; + } - lp = p; - if (!infos.empty()) - prParsedFilters.emplace_back(infos); - } + lp = p; + if (!infos.empty()) + prParsedFilters.emplace_back(infos); + } - std::string token = puDLGFilters.substr(lp); - if (!token.empty()) - { - FilterInfos infos; - infos.filter = std::move(token); - prParsedFilters.emplace_back(infos); - } + std::string token = puDLGFilters.substr(lp); + if (!token.empty()) + { + FilterInfos infos; + infos.filter = std::move(token); + prParsedFilters.emplace_back(infos); + } - if (!currentFilterFound) - if (!prParsedFilters.empty()) - prSelectedFilter = *prParsedFilters.begin(); - } - } + if (!currentFilterFound) + if (!prParsedFilters.empty()) + prSelectedFilter = *prParsedFilters.begin(); + } + } - void IGFD::FilterManager::SetSelectedFilterWithExt(const std::string& vFilter) - { - if (!prParsedFilters.empty()) - { - if (!vFilter.empty()) - { - // std::map - for (const auto& infos : prParsedFilters) - { - if (vFilter == infos.filter) - { - prSelectedFilter = infos; - } - else - { - // maybe this ext is in an extention so we will - // explore the collections is they are existing - for (const auto& filter : infos.collectionfilters) - { - if (vFilter == filter) - { - prSelectedFilter = infos; - } - } - } - } - } + void IGFD::FilterManager::SetSelectedFilterWithExt(const std::string& vFilter) + { + if (!prParsedFilters.empty()) + { + if (!vFilter.empty()) + { + // std::map + for (const auto& infos : prParsedFilters) + { + if (vFilter == infos.filter) + { + prSelectedFilter = infos; + } + else + { + // maybe this ext is in an extention so we will + // explore the collections is they are existing + for (const auto& filter : infos.collectionfilters) + { + if (vFilter == filter) + { + prSelectedFilter = infos; + } + } + } + } + } - if (prSelectedFilter.empty()) - prSelectedFilter = *prParsedFilters.begin(); - } - } + if (prSelectedFilter.empty()) + prSelectedFilter = *prParsedFilters.begin(); + } + } - void IGFD::FilterManager::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const FileStyle& vInfos) - { - std::string _criteria; - if (vCriteria) - _criteria = std::string(vCriteria); - prFilesStyle[vFlags][_criteria] = std::make_shared(vInfos); - prFilesStyle[vFlags][_criteria]->flags = vFlags; - } + void IGFD::FilterManager::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const FileStyle& vInfos) + { + std::string _criteria; + if (vCriteria) + _criteria = std::string(vCriteria); + prFilesStyle[vFlags][_criteria] = std::make_shared(vInfos); + prFilesStyle[vFlags][_criteria]->flags = vFlags; + } - // will be called internally - // will not been exposed to IGFD API - bool IGFD::FilterManager::prFillFileStyle(std::shared_ptr vFileInfos) const - { - if (vFileInfos.use_count() && !prFilesStyle.empty()) - { - for (const auto& _flag : prFilesStyle) - { - for (const auto& _file : _flag.second) - { - if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') - { - if (_file.first.empty()) // for all dirs - { - vFileInfos->fileStyle = _file.second; - } - else if (_file.first == vFileInfos->fileNameExt) // for dirs who are equal to style criteria - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') - { - if (_file.first.empty()) // for all files - { - vFileInfos->fileStyle = _file.second; - } - else if (_file.first == vFileInfos->fileNameExt) // for files who are equal to style criteria - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') - { - if (_file.first.empty()) // for all links - { - vFileInfos->fileStyle = _file.second; - } - else if (_file.first == vFileInfos->fileNameExt) // for links who are equal to style criteria - { - vFileInfos->fileStyle = _file.second; - } - } + // will be called internally + // will not been exposed to IGFD API + bool IGFD::FilterManager::prFillFileStyle(std::shared_ptr vFileInfos) const + { + if (vFileInfos.use_count() && !prFilesStyle.empty()) + { + for (const auto& _flag : prFilesStyle) + { + for (const auto& _file : _flag.second) + { + if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') + { + if (_file.first.empty()) // for all dirs + { + vFileInfos->fileStyle = _file.second; + } + else if (_file.first == vFileInfos->fileNameExt) // for dirs who are equal to style criteria + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') + { + if (_file.first.empty()) // for all files + { + vFileInfos->fileStyle = _file.second; + } + else if (_file.first == vFileInfos->fileNameExt) // for files who are equal to style criteria + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') + { + if (_file.first.empty()) // for all links + { + vFileInfos->fileStyle = _file.second; + } + else if (_file.first == vFileInfos->fileNameExt) // for links who are equal to style criteria + { + vFileInfos->fileStyle = _file.second; + } + } - if (_flag.first & IGFD_FileStyleByExtention) - { - if (_file.first == vFileInfos->fileExt) - { - vFileInfos->fileStyle = _file.second; - } + if (_flag.first & IGFD_FileStyleByExtention) + { + if (_file.first == vFileInfos->fileExt) + { + vFileInfos->fileStyle = _file.second; + } - // can make sense for some dirs like the hidden by ex ".git" - if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') - { - if (_file.first == vFileInfos->fileExt) - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') - { - if (_file.first == vFileInfos->fileExt) - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') - { - if (_file.first == vFileInfos->fileExt) - { - vFileInfos->fileStyle = _file.second; - } - } - } - if (_flag.first & IGFD_FileStyleByFullName) - { - if (_file.first == vFileInfos->fileNameExt) - { - vFileInfos->fileStyle = _file.second; - } + // can make sense for some dirs like the hidden by ex ".git" + if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') + { + if (_file.first == vFileInfos->fileExt) + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') + { + if (_file.first == vFileInfos->fileExt) + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') + { + if (_file.first == vFileInfos->fileExt) + { + vFileInfos->fileStyle = _file.second; + } + } + } + if (_flag.first & IGFD_FileStyleByFullName) + { + if (_file.first == vFileInfos->fileNameExt) + { + vFileInfos->fileStyle = _file.second; + } - if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') - { - if (_file.first == vFileInfos->fileNameExt) - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') - { - if (_file.first == vFileInfos->fileNameExt) - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') - { - if (_file.first == vFileInfos->fileNameExt) - { - vFileInfos->fileStyle = _file.second; - } - } - } - if (_flag.first & IGFD_FileStyleByContainedInFullName) - { - if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) - { - vFileInfos->fileStyle = _file.second; - } + if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') + { + if (_file.first == vFileInfos->fileNameExt) + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') + { + if (_file.first == vFileInfos->fileNameExt) + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') + { + if (_file.first == vFileInfos->fileNameExt) + { + vFileInfos->fileStyle = _file.second; + } + } + } + if (_flag.first & IGFD_FileStyleByContainedInFullName) + { + if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) + { + vFileInfos->fileStyle = _file.second; + } - if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') - { - if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') - { - if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) - { - vFileInfos->fileStyle = _file.second; - } - } - else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') - { - if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) - { - vFileInfos->fileStyle = _file.second; - } - } - } + if (_flag.first & IGFD_FileStyleByTypeDir && vFileInfos->fileType == 'd') + { + if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeFile && vFileInfos->fileType == 'f') + { + if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) + { + vFileInfos->fileStyle = _file.second; + } + } + else if (_flag.first & IGFD_FileStyleByTypeLink && vFileInfos->fileType == 'l') + { + if (vFileInfos->fileNameExt.find(_file.first) != std::string::npos) + { + vFileInfos->fileStyle = _file.second; + } + } + } - if (vFileInfos->fileStyle.use_count()) - return true; - } - } - } + if (vFileInfos->fileStyle.use_count()) + return true; + } + } + } - return false; - } + return false; + } - void IGFD::FilterManager::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const ImVec4& vColor, const std::string& vIcon, ImFont* vFont) - { - std::string _criteria; - if (vCriteria) - _criteria = std::string(vCriteria); - prFilesStyle[vFlags][_criteria] = std::make_shared(vColor, vIcon, vFont); - prFilesStyle[vFlags][_criteria]->flags = vFlags; - } + void IGFD::FilterManager::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const ImVec4& vColor, const std::string& vIcon, ImFont* vFont) + { + std::string _criteria; + if (vCriteria) + _criteria = std::string(vCriteria); + prFilesStyle[vFlags][_criteria] = std::make_shared(vColor, vIcon, vFont); + prFilesStyle[vFlags][_criteria]->flags = vFlags; + } - // todo : to refactor this fucking function - bool IGFD::FilterManager::GetFileStyle(const IGFD_FileStyleFlags& vFlags, const std::string& vCriteria, ImVec4* vOutColor, std::string* vOutIcon, ImFont **vOutFont) - { - if (vOutColor) - { - if (!prFilesStyle.empty()) - { - if (prFilesStyle.find(vFlags) != prFilesStyle.end()) // found - { - if (vFlags & IGFD_FileStyleByContainedInFullName) - { - // search for vCriteria who are containing the criteria - for (const auto& _file : prFilesStyle.at(vFlags)) - { - if (vCriteria.find(_file.first) != std::string::npos) - { - if (_file.second.use_count()) - { - *vOutColor = _file.second->color; - if (vOutIcon) - *vOutIcon = _file.second->icon; - if (vOutFont) - *vOutFont = _file.second->font; - return true; - } - } - } - } - else - { - if (prFilesStyle.at(vFlags).find(vCriteria) != prFilesStyle.at(vFlags).end()) // found - { - *vOutColor = prFilesStyle[vFlags][vCriteria]->color; - if (vOutIcon) - *vOutIcon = prFilesStyle[vFlags][vCriteria]->icon; - if (vOutFont) - *vOutFont = prFilesStyle[vFlags][vCriteria]->font; - return true; - } - } - } - else - { - // search for flag composition - for (const auto& _flag : prFilesStyle) - { - if (_flag.first & vFlags) - { - if (_flag.first & IGFD_FileStyleByContainedInFullName) - { - // search for vCriteria who are containing the criteria - for (const auto& _file : prFilesStyle.at(_flag.first)) - { - if (vCriteria.find(_file.first) != std::string::npos) - { - if (_file.second.use_count()) - { - *vOutColor = _file.second->color; - if (vOutIcon) - *vOutIcon = _file.second->icon; - if (vOutFont) - *vOutFont = _file.second->font; - return true; - } - } - } - } - else - { - if (prFilesStyle.at(_flag.first).find(vCriteria) != prFilesStyle.at(_flag.first).end()) // found - { - *vOutColor = prFilesStyle[_flag.first][vCriteria]->color; - if (vOutIcon) - *vOutIcon = prFilesStyle[_flag.first][vCriteria]->icon; - if (vOutFont) - *vOutFont = prFilesStyle[_flag.first][vCriteria]->font; - return true; - } - } - } - } - } - } - } - return false; - } + // todo : to refactor this fucking function + bool IGFD::FilterManager::GetFileStyle(const IGFD_FileStyleFlags& vFlags, const std::string& vCriteria, ImVec4* vOutColor, std::string* vOutIcon, ImFont **vOutFont) + { + if (vOutColor) + { + if (!prFilesStyle.empty()) + { + if (prFilesStyle.find(vFlags) != prFilesStyle.end()) // found + { + if (vFlags & IGFD_FileStyleByContainedInFullName) + { + // search for vCriteria who are containing the criteria + for (const auto& _file : prFilesStyle.at(vFlags)) + { + if (vCriteria.find(_file.first) != std::string::npos) + { + if (_file.second.use_count()) + { + *vOutColor = _file.second->color; + if (vOutIcon) + *vOutIcon = _file.second->icon; + if (vOutFont) + *vOutFont = _file.second->font; + return true; + } + } + } + } + else + { + if (prFilesStyle.at(vFlags).find(vCriteria) != prFilesStyle.at(vFlags).end()) // found + { + *vOutColor = prFilesStyle[vFlags][vCriteria]->color; + if (vOutIcon) + *vOutIcon = prFilesStyle[vFlags][vCriteria]->icon; + if (vOutFont) + *vOutFont = prFilesStyle[vFlags][vCriteria]->font; + return true; + } + } + } + else + { + // search for flag composition + for (const auto& _flag : prFilesStyle) + { + if (_flag.first & vFlags) + { + if (_flag.first & IGFD_FileStyleByContainedInFullName) + { + // search for vCriteria who are containing the criteria + for (const auto& _file : prFilesStyle.at(_flag.first)) + { + if (vCriteria.find(_file.first) != std::string::npos) + { + if (_file.second.use_count()) + { + *vOutColor = _file.second->color; + if (vOutIcon) + *vOutIcon = _file.second->icon; + if (vOutFont) + *vOutFont = _file.second->font; + return true; + } + } + } + } + else + { + if (prFilesStyle.at(_flag.first).find(vCriteria) != prFilesStyle.at(_flag.first).end()) // found + { + *vOutColor = prFilesStyle[_flag.first][vCriteria]->color; + if (vOutIcon) + *vOutIcon = prFilesStyle[_flag.first][vCriteria]->icon; + if (vOutFont) + *vOutFont = prFilesStyle[_flag.first][vCriteria]->font; + return true; + } + } + } + } + } + } + } + return false; + } - void IGFD::FilterManager::ClearFilesStyle() - { - prFilesStyle.clear(); - } - - bool IGFD::FilterManager::IsCoveredByFilters(const std::string& vTag) const - { - if (!puDLGFilters.empty() && !prSelectedFilter.empty()) - { - // check if current file extention is covered by current filter - // we do that here, for avoid doing that during filelist display - // for better fps - if (prSelectedFilter.exist(vTag) || prSelectedFilter.filter == ".*") - { - return true; - } - } + void IGFD::FilterManager::ClearFilesStyle() + { + prFilesStyle.clear(); + } + + bool IGFD::FilterManager::IsCoveredByFilters(const std::string& vTag) const + { + if (!puDLGFilters.empty() && !prSelectedFilter.empty()) + { + // check if current file extention is covered by current filter + // we do that here, for avoid doing that during filelist display + // for better fps + if (prSelectedFilter.exist(vTag) || prSelectedFilter.filter == ".*") + { + return true; + } + } - return false; - } + return false; + } - bool IGFD::FilterManager::DrawFilterComboBox(FileDialogInternal& vFileDialogInternal) - { - // combobox of filters - if (!puDLGFilters.empty()) - { - ImGui::SameLine(); + bool IGFD::FilterManager::DrawFilterComboBox(FileDialogInternal& vFileDialogInternal) + { + // combobox of filters + if (!puDLGFilters.empty()) + { + ImGui::SameLine(); - bool needToApllyNewFilter = false; + bool needToApllyNewFilter = false; - ImGui::PushItemWidth(FILTER_COMBO_WIDTH*FileDialog::Instance()->DpiScale); - if (ImGui::BeginCombo("##Filters", prSelectedFilter.filter.c_str(), ImGuiComboFlags_None)) - { - intptr_t i = 0; - for (const auto& filter : prParsedFilters) - { - const bool item_selected = (filter.filter == prSelectedFilter.filter); - ImGui::PushID((void*)(intptr_t)i++); - if (ImGui::Selectable(filter.filter.c_str(), item_selected)) - { - prSelectedFilter = filter; - needToApllyNewFilter = true; - } - ImGui::PopID(); - } + ImGui::PushItemWidth(FILTER_COMBO_WIDTH*FileDialog::Instance()->DpiScale); + if (ImGui::BeginCombo("##Filters", prSelectedFilter.filter.c_str(), ImGuiComboFlags_None)) + { + intptr_t i = 0; + for (const auto& filter : prParsedFilters) + { + const bool item_selected = (filter.filter == prSelectedFilter.filter); + ImGui::PushID((void*)(intptr_t)i++); + if (ImGui::Selectable(filter.filter.c_str(), item_selected)) + { + prSelectedFilter = filter; + needToApllyNewFilter = true; + } + ImGui::PopID(); + } - ImGui::EndCombo(); - } - ImGui::PopItemWidth(); + ImGui::EndCombo(); + } + ImGui::PopItemWidth(); - if (needToApllyNewFilter) - { - vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); - } + if (needToApllyNewFilter) + { + vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); + } - return needToApllyNewFilter; - } + return needToApllyNewFilter; + } - return false; - } + return false; + } - IGFD::FilterManager::FilterInfos IGFD::FilterManager::GetSelectedFilter() - { - return prSelectedFilter; - } + IGFD::FilterManager::FilterInfos IGFD::FilterManager::GetSelectedFilter() + { + return prSelectedFilter; + } - std::string IGFD::FilterManager::ReplaceExtentionWithCurrentFilter(const std::string& vFile) const - { - auto result = vFile; + std::string IGFD::FilterManager::ReplaceExtentionWithCurrentFilter(const std::string& vFile) const + { + auto result = vFile; - if (!result.empty()) - { - // if not a collection we can replace the filter by the extention we want - if (prSelectedFilter.collectionfilters.empty()) - { - size_t lastPoint = vFile.find_last_of('.'); - if (lastPoint != std::string::npos) - { - result = result.substr(0, lastPoint); - } + if (!result.empty()) + { + // if not a collection we can replace the filter by the extention we want + if (prSelectedFilter.collectionfilters.empty()) + { + size_t lastPoint = vFile.find_last_of('.'); + if (lastPoint != std::string::npos) + { + result = result.substr(0, lastPoint); + } - result += prSelectedFilter.filter; - } - } + result += prSelectedFilter.filter; + } + } - return result; - } - - void IGFD::FilterManager::SetDefaultFilterIfNotDefined() - { - if (prSelectedFilter.empty() && // no filter selected - !prParsedFilters.empty()) // filter exist - prSelectedFilter = *prParsedFilters.begin(); // we take the first filter - } + return result; + } + + void IGFD::FilterManager::SetDefaultFilterIfNotDefined() + { + if (prSelectedFilter.empty() && // no filter selected + !prParsedFilters.empty()) // filter exist + prSelectedFilter = *prParsedFilters.begin(); // we take the first filter + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILE MANAGER /////////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILE MANAGER /////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - IGFD::FileManager::FileManager() - { - puFsRoot = std::string(1u, PATH_SEP); + IGFD::FileManager::FileManager() + { + puFsRoot = std::string(1u, PATH_SEP); for (int i=0; i<4; i++) { puSortingDirection[i]=true; } - } + } - void IGFD::FileManager::OpenCurrentPath(const FileDialogInternal& vFileDialogInternal) - { - puShowDrives = false; - ClearComposer(); - ClearFileLists(); - if (puDLGDirectoryMode) // directory mode - SetDefaultFileName("."); - else - SetDefaultFileName(""); + void IGFD::FileManager::OpenCurrentPath(const FileDialogInternal& vFileDialogInternal) + { + puShowDrives = false; + ClearComposer(); + ClearFileLists(); + if (puDLGDirectoryMode) // directory mode + SetDefaultFileName("."); + else + SetDefaultFileName(""); logV("IGFD: OpenCurrentPath()"); - ScanDir(vFileDialogInternal, GetCurrentPath()); - } + ScanDir(vFileDialogInternal, GetCurrentPath()); + } - void IGFD::FileManager::SortFields(const FileDialogInternal& vFileDialogInternal, const SortingFieldEnum& vSortingField, const bool vCanChangeOrder) - { + void IGFD::FileManager::SortFields(const FileDialogInternal& vFileDialogInternal, const SortingFieldEnum& vSortingField, const bool vCanChangeOrder) + { logV("IGFD: SortFields()"); - if (vSortingField != SortingFieldEnum::FIELD_NONE) - { - puHeaderFileName = tableHeaderFileNameString; - puHeaderFileType = tableHeaderFileTypeString; - puHeaderFileSize = tableHeaderFileSizeString; - puHeaderFileDate = tableHeaderFileDateString; + if (vSortingField != SortingFieldEnum::FIELD_NONE) + { + puHeaderFileName = tableHeaderFileNameString; + puHeaderFileType = tableHeaderFileTypeString; + puHeaderFileSize = tableHeaderFileSizeString; + puHeaderFileDate = tableHeaderFileDateString; #ifdef USE_THUMBNAILS - puHeaderFileThumbnails = tableHeaderFileThumbnailsString; + puHeaderFileThumbnails = tableHeaderFileThumbnailsString; #endif // #ifdef USE_THUMBNAILS - } else { + } else { logV("IGFD: sorting by NONE!"); } @@ -1175,2790 +1175,2790 @@ namespace IGFD logV("IGFD: with an empty file list?"); } - if (vSortingField == SortingFieldEnum::FIELD_FILENAME) - { + if (vSortingField == SortingFieldEnum::FIELD_FILENAME) + { logV("IGFD: sorting by name"); - if (vCanChangeOrder && puSortingField == vSortingField) { + if (vCanChangeOrder && puSortingField == vSortingField) { //printf("Change the sorting\n"); - puSortingDirection[0] = !puSortingDirection[0]; + puSortingDirection[0] = !puSortingDirection[0]; } - if (puSortingDirection[0]) - { + if (puSortingDirection[0]) + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileName = tableHeaderDescendingIcon + puHeaderFileName; + puHeaderFileName = tableHeaderDescendingIcon + puHeaderFileName; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - // this code fail in c:\\Users with the link "All users". got a invalid comparator - /* - // use code from https://github.com/jackm97/ImGuiFileDialog/commit/bf40515f5a1de3043e60562dc1a494ee7ecd3571 - // strict ordering for file/directory types beginning in '.' - // common on Linux platforms - if (a->fileNameExt[0] == '.' && b->fileNameExt[0] != '.') - return false; - if (a->fileNameExt[0] != '.' && b->fileNameExt[0] == '.') - return true; - if (a->fileNameExt[0] == '.' && b->fileNameExt[0] == '.') - { - return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) < 0); // sort in insensitive case - } - */ - if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first - return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) < 0); // sort in insensitive case - }); - } - else - { + // this code fail in c:\\Users with the link "All users". got a invalid comparator + /* + // use code from https://github.com/jackm97/ImGuiFileDialog/commit/bf40515f5a1de3043e60562dc1a494ee7ecd3571 + // strict ordering for file/directory types beginning in '.' + // common on Linux platforms + if (a->fileNameExt[0] == '.' && b->fileNameExt[0] != '.') + return false; + if (a->fileNameExt[0] != '.' && b->fileNameExt[0] == '.') + return true; + if (a->fileNameExt[0] == '.' && b->fileNameExt[0] == '.') + { + return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) < 0); // sort in insensitive case + } + */ + if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first + return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) < 0); // sort in insensitive case + }); + } + else + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileName = tableHeaderAscendingIcon + puHeaderFileName; + puHeaderFileName = tableHeaderAscendingIcon + puHeaderFileName; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - // this code fail in c:\\Users with the link "All users". got a invalid comparator - /* - // use code from https://github.com/jackm97/ImGuiFileDialog/commit/bf40515f5a1de3043e60562dc1a494ee7ecd3571 - // strict ordering for file/directory types beginning in '.' - // common on Linux platforms - if (a->fileNameExt[0] == '.' && b->fileNameExt[0] != '.') - return false; - if (a->fileNameExt[0] != '.' && b->fileNameExt[0] == '.') - return true; - if (a->fileNameExt[0] == '.' && b->fileNameExt[0] == '.') - { - return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) > 0); // sort in insensitive case - } - */ - return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) > 0); // sort in insensitive case - }); - } - } - else if (vSortingField == SortingFieldEnum::FIELD_TYPE) - { + // this code fail in c:\\Users with the link "All users". got a invalid comparator + /* + // use code from https://github.com/jackm97/ImGuiFileDialog/commit/bf40515f5a1de3043e60562dc1a494ee7ecd3571 + // strict ordering for file/directory types beginning in '.' + // common on Linux platforms + if (a->fileNameExt[0] == '.' && b->fileNameExt[0] != '.') + return false; + if (a->fileNameExt[0] != '.' && b->fileNameExt[0] == '.') + return true; + if (a->fileNameExt[0] == '.' && b->fileNameExt[0] == '.') + { + return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) > 0); // sort in insensitive case + } + */ + return (stricmp(a->fileNameExt.c_str(), b->fileNameExt.c_str()) > 0); // sort in insensitive case + }); + } + } + else if (vSortingField == SortingFieldEnum::FIELD_TYPE) + { logV("IGFD: sorting by type"); - if (vCanChangeOrder && puSortingField == vSortingField) - puSortingDirection[1] = !puSortingDirection[1]; + if (vCanChangeOrder && puSortingField == vSortingField) + puSortingDirection[1] = !puSortingDirection[1]; - if (puSortingDirection[1]) - { + if (puSortingDirection[1]) + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileType = tableHeaderDescendingIcon + puHeaderFileType; + puHeaderFileType = tableHeaderDescendingIcon + puHeaderFileType; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { - if (!a.use_count() || !b.use_count()) - return false; + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first - return (a->fileExt < b->fileExt); // else - }); - } - else - { + if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first + return (a->fileExt < b->fileExt); // else + }); + } + else + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileType = tableHeaderAscendingIcon + puHeaderFileType; + puHeaderFileType = tableHeaderAscendingIcon + puHeaderFileType; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last - return (a->fileExt > b->fileExt); // else - }); - } - } - else if (vSortingField == SortingFieldEnum::FIELD_SIZE) - { + if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last + return (a->fileExt > b->fileExt); // else + }); + } + } + else if (vSortingField == SortingFieldEnum::FIELD_SIZE) + { logV("IGFD: sorting by size"); - if (vCanChangeOrder && puSortingField == vSortingField) - puSortingDirection[2] = !puSortingDirection[2]; + if (vCanChangeOrder && puSortingField == vSortingField) + puSortingDirection[2] = !puSortingDirection[2]; - if (puSortingDirection[2]) - { + if (puSortingDirection[2]) + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileSize = tableHeaderDescendingIcon + puHeaderFileSize; + puHeaderFileSize = tableHeaderDescendingIcon + puHeaderFileSize; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first - return (a->fileSize < b->fileSize); // else - }); - } - else - { + if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first + return (a->fileSize < b->fileSize); // else + }); + } + else + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileSize = tableHeaderAscendingIcon + puHeaderFileSize; + puHeaderFileSize = tableHeaderAscendingIcon + puHeaderFileSize; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last - return (a->fileSize > b->fileSize); // else - }); - } - } - else if (vSortingField == SortingFieldEnum::FIELD_DATE) - { + if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last + return (a->fileSize > b->fileSize); // else + }); + } + } + else if (vSortingField == SortingFieldEnum::FIELD_DATE) + { logV("IGFD: sorting by date"); - if (vCanChangeOrder && puSortingField == vSortingField) - puSortingDirection[3] = !puSortingDirection[3]; + if (vCanChangeOrder && puSortingField == vSortingField) + puSortingDirection[3] = !puSortingDirection[3]; - if (puSortingDirection[3]) - { + if (puSortingDirection[3]) + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileDate = tableHeaderDescendingIcon + puHeaderFileDate; + puHeaderFileDate = tableHeaderDescendingIcon + puHeaderFileDate; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first - return (a->fileModifDate < b->fileModifDate); // else - }); - } - else - { + if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first + return (a->fileModifDate < b->fileModifDate); // else + }); + } + else + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileDate = tableHeaderAscendingIcon + puHeaderFileDate; + puHeaderFileDate = tableHeaderAscendingIcon + puHeaderFileDate; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { if (a==NULL || b==NULL) return false; - if (!a.use_count() || !b.use_count()) - return false; + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last - return (a->fileModifDate > b->fileModifDate); // else - }); - } - } + if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last + return (a->fileModifDate > b->fileModifDate); // else + }); + } + } #ifdef USE_THUMBNAILS - else if (vSortingField == SortingFieldEnum::FIELD_THUMBNAILS) - { - if (vCanChangeOrder && puSortingField == vSortingField) - puSortingDirection[4] = !puSortingDirection[4]; + else if (vSortingField == SortingFieldEnum::FIELD_THUMBNAILS) + { + if (vCanChangeOrder && puSortingField == vSortingField) + puSortingDirection[4] = !puSortingDirection[4]; - // we will compare thumbnails by : - // 1) width - // 2) height + // we will compare thumbnails by : + // 1) width + // 2) height - if (puSortingDirection[4]) - { + if (puSortingDirection[4]) + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileThumbnails = tableHeaderDescendingIcon + puHeaderFileThumbnails; + puHeaderFileThumbnails = tableHeaderDescendingIcon + puHeaderFileThumbnails; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { - if (!a.use_count() || !b.use_count()) - return false; + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first - if (a->thumbnailInfo.textureWidth == b->thumbnailInfo.textureWidth) - return (a->thumbnailInfo.textureHeight < b->thumbnailInfo.textureHeight); - return (a->thumbnailInfo.textureWidth < b->thumbnailInfo.textureWidth); - }); - } + if (a->fileType != b->fileType) return (a->fileType == 'd'); // directory in first + if (a->thumbnailInfo.textureWidth == b->thumbnailInfo.textureWidth) + return (a->thumbnailInfo.textureHeight < b->thumbnailInfo.textureHeight); + return (a->thumbnailInfo.textureWidth < b->thumbnailInfo.textureWidth); + }); + } - else - { + else + { #ifdef USE_CUSTOM_SORTING_ICON - puHeaderFileThumbnails = tableHeaderAscendingIcon + puHeaderFileThumbnails; + puHeaderFileThumbnails = tableHeaderAscendingIcon + puHeaderFileThumbnails; #endif // USE_CUSTOM_SORTING_ICON - std::sort(prFileList.begin(), prFileList.end(), - [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool - { - if (!a.use_count() || !b.use_count()) - return false; + std::sort(prFileList.begin(), prFileList.end(), + [](const std::shared_ptr& a, const std::shared_ptr& b) -> bool + { + if (!a.use_count() || !b.use_count()) + return false; - if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last - if (a->thumbnailInfo.textureWidth == b->thumbnailInfo.textureWidth) - return (a->thumbnailInfo.textureHeight > b->thumbnailInfo.textureHeight); - return (a->thumbnailInfo.textureWidth > b->thumbnailInfo.textureWidth); - }); - } - } + if (a->fileType != b->fileType) return (a->fileType != 'd'); // directory in last + if (a->thumbnailInfo.textureWidth == b->thumbnailInfo.textureWidth) + return (a->thumbnailInfo.textureHeight > b->thumbnailInfo.textureHeight); + return (a->thumbnailInfo.textureWidth > b->thumbnailInfo.textureWidth); + }); + } + } #endif // USE_THUMBNAILS - if (vSortingField != SortingFieldEnum::FIELD_NONE) - { - puSortingField = vSortingField; - } + if (vSortingField != SortingFieldEnum::FIELD_NONE) + { + puSortingField = vSortingField; + } logV("IGFD: applying filtering on file list"); - ApplyFilteringOnFileList(vFileDialogInternal); - } + ApplyFilteringOnFileList(vFileDialogInternal); + } - void IGFD::FileManager::ClearFileLists() - { - prFilteredFileList.clear(); - prFileList.clear(); - } + void IGFD::FileManager::ClearFileLists() + { + prFilteredFileList.clear(); + prFileList.clear(); + } - std::string IGFD::FileManager::prOptimizeFilenameForSearchOperations(const std::string& vFileNameExt) - { - auto fileNameExt = vFileNameExt; - // convert to lower case - for (char& c : fileNameExt) - c = (char)std::tolower(c); - return fileNameExt; - } + std::string IGFD::FileManager::prOptimizeFilenameForSearchOperations(const std::string& vFileNameExt) + { + auto fileNameExt = vFileNameExt; + // convert to lower case + for (char& c : fileNameExt) + c = (char)std::tolower(c); + return fileNameExt; + } - void IGFD::FileManager::AddFile(const FileDialogInternal& vFileDialogInternal, const std::string& vPath, const std::string& vFileName, const char& vFileType) - { - auto infos = std::make_shared(); + void IGFD::FileManager::AddFile(const FileDialogInternal& vFileDialogInternal, const std::string& vPath, const std::string& vFileName, const char& vFileType) + { + auto infos = std::make_shared(); - infos->filePath = vPath; - infos->fileNameExt = vFileName; - infos->fileNameExt_optimized = prOptimizeFilenameForSearchOperations(infos->fileNameExt); - infos->fileType = vFileType; + infos->filePath = vPath; + infos->fileNameExt = vFileName; + infos->fileNameExt_optimized = prOptimizeFilenameForSearchOperations(infos->fileNameExt); + infos->fileType = vFileType; - if (infos->fileNameExt.empty() || ((infos->fileNameExt == "." || infos->fileNameExt == "..") && !vFileDialogInternal.puFilterManager.puDLGFilters.empty())) return; // filename empty or filename is the current dir '.' //-V807 - if (infos->fileNameExt != ".." && (vFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DontShowHiddenFiles) && infos->fileNameExt[0] == '.') // dont show hidden files - if (!vFileDialogInternal.puFilterManager.puDLGFilters.empty() || (vFileDialogInternal.puFilterManager.puDLGFilters.empty() && infos->fileNameExt != ".")) // except "." if in directory mode //-V728 - return; + if (infos->fileNameExt.empty() || ((infos->fileNameExt == "." || infos->fileNameExt == "..") && !vFileDialogInternal.puFilterManager.puDLGFilters.empty())) return; // filename empty or filename is the current dir '.' //-V807 + if (infos->fileNameExt != ".." && (vFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DontShowHiddenFiles) && infos->fileNameExt[0] == '.') // dont show hidden files + if (!vFileDialogInternal.puFilterManager.puDLGFilters.empty() || (vFileDialogInternal.puFilterManager.puDLGFilters.empty() && infos->fileNameExt != ".")) // except "." if in directory mode //-V728 + return; - if (infos->fileType == 'f' || - infos->fileType == 'l') // link can have the same extention of a file - { - size_t lpt = infos->fileNameExt.find_last_of('.'); - if (lpt != std::string::npos) - { - infos->fileExt = infos->fileNameExt.substr(lpt); - } + if (infos->fileType == 'f' || + infos->fileType == 'l') // link can have the same extention of a file + { + size_t lpt = infos->fileNameExt.find_last_of('.'); + if (lpt != std::string::npos) + { + infos->fileExt = infos->fileNameExt.substr(lpt); + } for (char& i: infos->fileExt) { if (i>='A' && i<='Z') i+='a'-'A'; } - if (!vFileDialogInternal.puFilterManager.IsCoveredByFilters(infos->fileExt)) - { - return; - } - } + if (!vFileDialogInternal.puFilterManager.IsCoveredByFilters(infos->fileExt)) + { + return; + } + } - vFileDialogInternal.puFilterManager.prFillFileStyle(infos); + vFileDialogInternal.puFilterManager.prFillFileStyle(infos); - prCompleteFileInfos(infos); - prFileList.push_back(infos); - } + prCompleteFileInfos(infos); + prFileList.push_back(infos); + } - void IGFD::FileManager::ScanDir(const FileDialogInternal& vFileDialogInternal, const std::string& vPath) - { - std::string path = vPath; + void IGFD::FileManager::ScanDir(const FileDialogInternal& vFileDialogInternal, const std::string& vPath) + { + std::string path = vPath; logV("IGFD: ScanDir(%s)",vPath); - if (prCurrentPathDecomposition.empty()) - { + if (prCurrentPathDecomposition.empty()) + { logV("IGFD: the current path decomposition is empty. setting."); - SetCurrentDir(path); - } + SetCurrentDir(path); + } - if (!prCurrentPathDecomposition.empty()) - { + if (!prCurrentPathDecomposition.empty()) + { logV("IGFD: the current path decomposition is not empty. trying."); #ifdef WIN32 - if (path == puFsRoot) - path += std::string(1u, PATH_SEP); + if (path == puFsRoot) + path += std::string(1u, PATH_SEP); #endif // WIN32 - ClearFileLists(); + ClearFileLists(); - struct dirent** files = nullptr; - int n = scandir(path.c_str(), &files, nullptr, inAlphaSort); + struct dirent** files = nullptr; + int n = scandir(path.c_str(), &files, nullptr, inAlphaSort); logV("IGFD: %d entries in directory",n); - if (n>0) - { - int i; + if (n>0) + { + int i; - for (i = 0; i < n; i++) - { - struct dirent* ent = files[i]; - std::string where = path + std::string("/") + std::string(ent->d_name); - char fileType = 0; + for (i = 0; i < n; i++) + { + struct dirent* ent = files[i]; + std::string where = path + std::string("/") + std::string(ent->d_name); + char fileType = 0; #ifdef HAVE_DIRENT_TYPE - if (ent->d_type != DT_UNKNOWN) - { - switch (ent->d_type) - { - case DT_REG: - fileType = 'f'; break; - case DT_DIR: - fileType = 'd'; break; - case DT_LNK: - DIR* dirTest = opendir(where.c_str()); - if (dirTest == NULL) - { - if (errno == ENOTDIR) - { - fileType = 'f'; - } - else - { - fileType = 'l'; - } - } - else - { - fileType = 'd'; - closedir(dirTest); - } - break; - } - } - else + if (ent->d_type != DT_UNKNOWN) + { + switch (ent->d_type) + { + case DT_REG: + fileType = 'f'; break; + case DT_DIR: + fileType = 'd'; break; + case DT_LNK: + DIR* dirTest = opendir(where.c_str()); + if (dirTest == NULL) + { + if (errno == ENOTDIR) + { + fileType = 'f'; + } + else + { + fileType = 'l'; + } + } + else + { + fileType = 'd'; + closedir(dirTest); + } + break; + } + } + else #endif // HAVE_DIRENT_TYPE - { - struct stat filestat; - if (stat(where.c_str(), &filestat) == 0) - { - if (S_ISDIR(filestat.st_mode)) - { - fileType = 'd'; - } - else - { - fileType = 'f'; - } - } - } + { + struct stat filestat; + if (stat(where.c_str(), &filestat) == 0) + { + if (S_ISDIR(filestat.st_mode)) + { + fileType = 'd'; + } + else + { + fileType = 'f'; + } + } + } - auto fileNameExt = ent->d_name; + auto fileNameExt = ent->d_name; - AddFile(vFileDialogInternal, path, fileNameExt, fileType); - } + AddFile(vFileDialogInternal, path, fileNameExt, fileType); + } - for (i = 0; i < n; i++) - { - free(files[i]); - } + for (i = 0; i < n; i++) + { + free(files[i]); + } - free(files); - } else { + free(files); + } else { logV("IGFD: it's empty"); } logV("IGFD: sorting fields..."); - SortFields(vFileDialogInternal, puSortingField, false); - } else { + SortFields(vFileDialogInternal, puSortingField, false); + } else { logE("IGFD: current path decomposition is empty!"); } fileListActuallyEmpty=prFileList.empty(); - } + } - bool IGFD::FileManager::GetDrives() - { - auto drives = IGFD::Utils::GetDrivesList(); - if (!drives.empty()) - { - prCurrentPath.clear(); - prCurrentPathDecomposition.clear(); - ClearFileLists(); - for (auto& drive : drives) - { - auto info = std::make_shared(); - info->fileNameExt = drive; - info->fileNameExt_optimized = prOptimizeFilenameForSearchOperations(drive); - info->fileType = 'd'; + bool IGFD::FileManager::GetDrives() + { + auto drives = IGFD::Utils::GetDrivesList(); + if (!drives.empty()) + { + prCurrentPath.clear(); + prCurrentPathDecomposition.clear(); + ClearFileLists(); + for (auto& drive : drives) + { + auto info = std::make_shared(); + info->fileNameExt = drive; + info->fileNameExt_optimized = prOptimizeFilenameForSearchOperations(drive); + info->fileType = 'd'; - if (!info->fileNameExt.empty()) - { - prFileList.push_back(info); - } - } - puShowDrives = true; - return true; - } - return false; - } + if (!info->fileNameExt.empty()) + { + prFileList.push_back(info); + } + } + puShowDrives = true; + return true; + } + return false; + } - bool IGFD::FileManager::IsComposerEmpty() - { - return prCurrentPathDecomposition.empty(); - } - - size_t IGFD::FileManager::GetComposerSize() - { - return prCurrentPathDecomposition.size(); - } + bool IGFD::FileManager::IsComposerEmpty() + { + return prCurrentPathDecomposition.empty(); + } + + size_t IGFD::FileManager::GetComposerSize() + { + return prCurrentPathDecomposition.size(); + } - bool IGFD::FileManager::IsFileListEmpty() - { - return prFileList.empty(); - } + bool IGFD::FileManager::IsFileListEmpty() + { + return prFileList.empty(); + } - size_t IGFD::FileManager::GetFullFileListSize() - { - return prFileList.size(); - } + size_t IGFD::FileManager::GetFullFileListSize() + { + return prFileList.size(); + } - std::shared_ptr IGFD::FileManager::GetFullFileAt(size_t vIdx) - { - if (vIdx < prFileList.size()) - return prFileList[vIdx]; - return nullptr; - } + std::shared_ptr IGFD::FileManager::GetFullFileAt(size_t vIdx) + { + if (vIdx < prFileList.size()) + return prFileList[vIdx]; + return nullptr; + } - bool IGFD::FileManager::IsFilteredListEmpty() - { - return prFilteredFileList.empty(); - } + bool IGFD::FileManager::IsFilteredListEmpty() + { + return prFilteredFileList.empty(); + } - size_t IGFD::FileManager::GetFilteredListSize() - { - return prFilteredFileList.size(); - } + size_t IGFD::FileManager::GetFilteredListSize() + { + return prFilteredFileList.size(); + } - std::shared_ptr IGFD::FileManager::GetFilteredFileAt(size_t vIdx) - { - if (vIdx < prFilteredFileList.size()) - return prFilteredFileList[vIdx]; - return nullptr; - } + std::shared_ptr IGFD::FileManager::GetFilteredFileAt(size_t vIdx) + { + if (vIdx < prFilteredFileList.size()) + return prFilteredFileList[vIdx]; + return nullptr; + } - bool IGFD::FileManager::IsFileNameSelected(const std::string& vFileName) - { - return prSelectedFileNames.find(vFileName) != prSelectedFileNames.end(); - } + bool IGFD::FileManager::IsFileNameSelected(const std::string& vFileName) + { + return prSelectedFileNames.find(vFileName) != prSelectedFileNames.end(); + } - std::string IGFD::FileManager::GetBack() - { - return prCurrentPathDecomposition.back(); - } + std::string IGFD::FileManager::GetBack() + { + return prCurrentPathDecomposition.back(); + } - void IGFD::FileManager::ClearComposer() - { - prCurrentPathDecomposition.clear(); - } + void IGFD::FileManager::ClearComposer() + { + prCurrentPathDecomposition.clear(); + } - void IGFD::FileManager::ClearAll() - { - ClearComposer(); - ClearFileLists(); - } + void IGFD::FileManager::ClearAll() + { + ClearComposer(); + ClearFileLists(); + } - void IGFD::FileManager::ApplyFilteringOnFileList(const FileDialogInternal& vFileDialogInternal) - { - prFilteredFileList.clear(); - for (const auto& file : prFileList) - { - if (!file.use_count()) - continue; - bool show = true; - if (!file->IsTagFound(vFileDialogInternal.puSearchManager.puSearchTag)) // if search tag - show = false; - if (puDLGDirectoryMode && file->fileType != 'd') // directory mode - show = false; - if (show) - prFilteredFileList.push_back(file); - } - } + void IGFD::FileManager::ApplyFilteringOnFileList(const FileDialogInternal& vFileDialogInternal) + { + prFilteredFileList.clear(); + for (const auto& file : prFileList) + { + if (!file.use_count()) + continue; + bool show = true; + if (!file->IsTagFound(vFileDialogInternal.puSearchManager.puSearchTag)) // if search tag + show = false; + if (puDLGDirectoryMode && file->fileType != 'd') // directory mode + show = false; + if (show) + prFilteredFileList.push_back(file); + } + } - std::string IGFD::FileManager::prRoundNumber(double vvalue, int n) - { - std::stringstream tmp; - tmp << std::setprecision(n) << std::fixed << vvalue; - return tmp.str(); - } + std::string IGFD::FileManager::prRoundNumber(double vvalue, int n) + { + std::stringstream tmp; + tmp << std::setprecision(n) << std::fixed << vvalue; + return tmp.str(); + } - std::string IGFD::FileManager::prFormatFileSize(size_t vByteSize) - { - if (vByteSize != 0) - { - static double lo = 1024.0; - static double ko = 1024.0 * 1024.0; - static double mo = 1024.0 * 1024.0 * 1024.0; + std::string IGFD::FileManager::prFormatFileSize(size_t vByteSize) + { + if (vByteSize != 0) + { + static double lo = 1024.0; + static double ko = 1024.0 * 1024.0; + static double mo = 1024.0 * 1024.0 * 1024.0; - auto v = (double)vByteSize; + auto v = (double)vByteSize; - if (v < lo) - return prRoundNumber(v, 0); // octet - else if (v < ko) - return prRoundNumber(v / lo, 2) + "K"; // ko - else if (v < mo) - return prRoundNumber(v / ko, 2) + "M"; // Mo - else - return prRoundNumber(v / mo, 2) + "G"; // Go - } + if (v < lo) + return prRoundNumber(v, 0); // octet + else if (v < ko) + return prRoundNumber(v / lo, 2) + "K"; // ko + else if (v < mo) + return prRoundNumber(v / ko, 2) + "M"; // Mo + else + return prRoundNumber(v / mo, 2) + "G"; // Go + } - return ""; - } + return ""; + } - void IGFD::FileManager::prCompleteFileInfos(const std::shared_ptr& vInfos) - { - if (!vInfos.use_count()) - return; + void IGFD::FileManager::prCompleteFileInfos(const std::shared_ptr& vInfos) + { + if (!vInfos.use_count()) + return; - if (vInfos->fileNameExt != "." && - vInfos->fileNameExt != "..") - { - // _stat struct : - //dev_t st_dev; /* ID of device containing file */ - //ino_t st_ino; /* inode number */ - //mode_t st_mode; /* protection */ - //nlink_t st_nlink; /* number of hard links */ - //uid_t st_uid; /* user ID of owner */ - //gid_t st_gid; /* group ID of owner */ - //dev_t st_rdev; /* device ID (if special file) */ - //off_t st_size; /* total size, in bytes */ - //blksize_t st_blksize; /* blocksize for file system I/O */ - //blkcnt_t st_blocks; /* number of 512B blocks allocated */ - //time_t st_atime; /* time of last access - not sure out of ntfs */ - //time_t st_mtime; /* time of last modification - not sure out of ntfs */ - //time_t st_ctime; /* time of last status change - not sure out of ntfs */ + if (vInfos->fileNameExt != "." && + vInfos->fileNameExt != "..") + { + // _stat struct : + //dev_t st_dev; /* ID of device containing file */ + //ino_t st_ino; /* inode number */ + //mode_t st_mode; /* protection */ + //nlink_t st_nlink; /* number of hard links */ + //uid_t st_uid; /* user ID of owner */ + //gid_t st_gid; /* group ID of owner */ + //dev_t st_rdev; /* device ID (if special file) */ + //off_t st_size; /* total size, in bytes */ + //blksize_t st_blksize; /* blocksize for file system I/O */ + //blkcnt_t st_blocks; /* number of 512B blocks allocated */ + //time_t st_atime; /* time of last access - not sure out of ntfs */ + //time_t st_mtime; /* time of last modification - not sure out of ntfs */ + //time_t st_ctime; /* time of last status change - not sure out of ntfs */ - std::string fpn; + std::string fpn; - if (vInfos->fileType == 'f' || vInfos->fileType == 'l' || vInfos->fileType == 'd') // file - fpn = vInfos->filePath + std::string(1u, PATH_SEP) + vInfos->fileNameExt; + if (vInfos->fileType == 'f' || vInfos->fileType == 'l' || vInfos->fileType == 'd') // file + fpn = vInfos->filePath + std::string(1u, PATH_SEP) + vInfos->fileNameExt; - struct stat statInfos = {}; - char timebuf[100]; - int result = stat(fpn.c_str(), &statInfos); - if (result!=-1) - { - if (vInfos->fileType != 'd') - { - vInfos->fileSize = (size_t)statInfos.st_size; - vInfos->formatedFileSize = prFormatFileSize(vInfos->fileSize); - } + struct stat statInfos = {}; + char timebuf[100]; + int result = stat(fpn.c_str(), &statInfos); + if (result!=-1) + { + if (vInfos->fileType != 'd') + { + vInfos->fileSize = (size_t)statInfos.st_size; + vInfos->formatedFileSize = prFormatFileSize(vInfos->fileSize); + } - size_t len = 0; + size_t len = 0; #ifdef MSVC - struct tm _tm; - errno_t err = localtime_s(&_tm, &statInfos.st_mtime); - if (!err) len = strftime(timebuf, 99, DateTimeFormat, &_tm); + struct tm _tm; + errno_t err = localtime_s(&_tm, &statInfos.st_mtime); + if (!err) len = strftime(timebuf, 99, DateTimeFormat, &_tm); #else // MSVC - struct tm* _tm = localtime(&statInfos.st_mtime); - if (_tm) len = strftime(timebuf, 99, DateTimeFormat, _tm); + struct tm* _tm = localtime(&statInfos.st_mtime); + if (_tm) len = strftime(timebuf, 99, DateTimeFormat, _tm); #endif // MSVC - if (len) - { - vInfos->fileModifDate = std::string(timebuf, len); - } - } else { + if (len) + { + vInfos->fileModifDate = std::string(timebuf, len); + } + } else { vInfos->fileSize=0; vInfos->formatedFileSize = prFormatFileSize(vInfos->fileSize); vInfos->fileModifDate="???"; } - } - } + } + } - void IGFD::FileManager::prRemoveFileNameInSelection(const std::string& vFileName) - { - prSelectedFileNames.erase(vFileName); + void IGFD::FileManager::prRemoveFileNameInSelection(const std::string& vFileName) + { + prSelectedFileNames.erase(vFileName); - if (prSelectedFileNames.size() == 1) - { - snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%s", vFileName.c_str()); - } - else - { - snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%zu files Selected", prSelectedFileNames.size()); - } - } - - void IGFD::FileManager::prAddFileNameInSelection(const std::string& vFileName, bool vSetLastSelectionFileName) - { - prSelectedFileNames.emplace(vFileName); + if (prSelectedFileNames.size() == 1) + { + snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%s", vFileName.c_str()); + } + else + { + snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%zu files Selected", prSelectedFileNames.size()); + } + } + + void IGFD::FileManager::prAddFileNameInSelection(const std::string& vFileName, bool vSetLastSelectionFileName) + { + prSelectedFileNames.emplace(vFileName); - if (prSelectedFileNames.size() == 1) - { - snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%s", vFileName.c_str()); - } - else - { - snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%zu files Selected", prSelectedFileNames.size()); - } + if (prSelectedFileNames.size() == 1) + { + snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%s", vFileName.c_str()); + } + else + { + snprintf(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, "%zu files Selected", prSelectedFileNames.size()); + } - if (vSetLastSelectionFileName) - prLastSelectedFileName = vFileName; - } + if (vSetLastSelectionFileName) + prLastSelectedFileName = vFileName; + } - void IGFD::FileManager::SetCurrentDir(const std::string& vPath) - { - std::string path = vPath; + void IGFD::FileManager::SetCurrentDir(const std::string& vPath) + { + std::string path = vPath; #ifdef WIN32 - if (puFsRoot == path) - path += std::string(1u, PATH_SEP); + if (puFsRoot == path) + path += std::string(1u, PATH_SEP); #endif // WIN32 - - DIR* dir = opendir(path.c_str()); - if (dir == nullptr) - { - path = "."; - dir = opendir(path.c_str()); - } + + DIR* dir = opendir(path.c_str()); + if (dir == nullptr) + { + path = "."; + dir = opendir(path.c_str()); + } - if (dir != nullptr) - { + if (dir != nullptr) + { #ifdef WIN32 - DWORD numchar = 0; - // numchar = GetFullPathNameA(path.c_str(), PATH_MAX, real_path, nullptr); - std::wstring wpath = IGFD::Utils::string_to_wstring(path); - numchar = GetFullPathNameW(wpath.c_str(), 0, nullptr, nullptr); - std::wstring fpath(numchar, 0); - GetFullPathNameW(wpath.c_str(), numchar, (wchar_t*)fpath.data(), nullptr); - std::string real_path = IGFD::Utils::wstring_to_string(fpath); - if (real_path.back() == '\0') // for fix issue we can have with std::string concatenation.. if there is a \0 at end - real_path = real_path.substr(0, real_path.size() - 1U); - if (!real_path.empty()) + DWORD numchar = 0; + // numchar = GetFullPathNameA(path.c_str(), PATH_MAX, real_path, nullptr); + std::wstring wpath = IGFD::Utils::string_to_wstring(path); + numchar = GetFullPathNameW(wpath.c_str(), 0, nullptr, nullptr); + std::wstring fpath(numchar, 0); + GetFullPathNameW(wpath.c_str(), numchar, (wchar_t*)fpath.data(), nullptr); + std::string real_path = IGFD::Utils::wstring_to_string(fpath); + if (real_path.back() == '\0') // for fix issue we can have with std::string concatenation.. if there is a \0 at end + real_path = real_path.substr(0, real_path.size() - 1U); + if (!real_path.empty()) #elif defined(UNIX) // UNIX is LINUX or APPLE - char real_path[PATH_MAX]; - char* numchar = realpath(path.c_str(), real_path); - if (numchar != nullptr) + char real_path[PATH_MAX]; + char* numchar = realpath(path.c_str(), real_path); + if (numchar != nullptr) #endif // WIN32 - { - prCurrentPath = std::move(real_path); - if (prCurrentPath[prCurrentPath.size() - 1] == PATH_SEP) - { - prCurrentPath = prCurrentPath.substr(0, prCurrentPath.size() - 1); - } - IGFD::Utils::SetBuffer(puInputPathBuffer, MAX_PATH_BUFFER_SIZE, prCurrentPath); - prCurrentPathDecomposition = IGFD::Utils::SplitStringToVector(prCurrentPath, PATH_SEP, false); + { + prCurrentPath = std::move(real_path); + if (prCurrentPath[prCurrentPath.size() - 1] == PATH_SEP) + { + prCurrentPath = prCurrentPath.substr(0, prCurrentPath.size() - 1); + } + IGFD::Utils::SetBuffer(puInputPathBuffer, MAX_PATH_BUFFER_SIZE, prCurrentPath); + prCurrentPathDecomposition = IGFD::Utils::SplitStringToVector(prCurrentPath, PATH_SEP, false); #ifdef UNIX // UNIX is LINUX or APPLE - prCurrentPathDecomposition.insert(prCurrentPathDecomposition.begin(), std::string(1u, PATH_SEP)); + prCurrentPathDecomposition.insert(prCurrentPathDecomposition.begin(), std::string(1u, PATH_SEP)); #endif // UNIX - if (!prCurrentPathDecomposition.empty()) - { + if (!prCurrentPathDecomposition.empty()) + { #ifdef WIN32 - puFsRoot = prCurrentPathDecomposition[0]; + puFsRoot = prCurrentPathDecomposition[0]; #endif // WIN32 - } - } - closedir(dir); - } - } + } + } + closedir(dir); + } + } - bool IGFD::FileManager::CreateDir(const std::string& vPath) - { - bool res = false; + bool IGFD::FileManager::CreateDir(const std::string& vPath) + { + bool res = false; - if (!vPath.empty()) - { - std::string path = prCurrentPath + std::string(1u, PATH_SEP) + vPath; + if (!vPath.empty()) + { + std::string path = prCurrentPath + std::string(1u, PATH_SEP) + vPath; - res = IGFD::Utils::CreateDirectoryIfNotExist(path); - } + res = IGFD::Utils::CreateDirectoryIfNotExist(path); + } - return res; - } + return res; + } - void IGFD::FileManager::ComposeNewPath(std::vector::iterator vIter) - { - std::string res; + void IGFD::FileManager::ComposeNewPath(std::vector::iterator vIter) + { + std::string res; - while (true) - { - if (!res.empty()) - { + while (true) + { + if (!res.empty()) + { #ifdef WIN32 - res = *vIter + std::string(1u, PATH_SEP) + res; + res = *vIter + std::string(1u, PATH_SEP) + res; #elif defined(UNIX) // UNIX is LINUX or APPLE - if (*vIter == puFsRoot) - res = *vIter + res; - else - res = *vIter + PATH_SEP + res; + if (*vIter == puFsRoot) + res = *vIter + res; + else + res = *vIter + PATH_SEP + res; #endif // WIN32 - } - else - res = *vIter; + } + else + res = *vIter; - if (vIter == prCurrentPathDecomposition.begin()) - { + if (vIter == prCurrentPathDecomposition.begin()) + { #if defined(UNIX) // UNIX is LINUX or APPLE - if (res[0] != PATH_SEP) - res = PATH_SEP + res; + if (res[0] != PATH_SEP) + res = PATH_SEP + res; #endif // defined(UNIX) - break; - } + break; + } - --vIter; - } + --vIter; + } - prCurrentPath = std::move(res); - } + prCurrentPath = std::move(res); + } - bool IGFD::FileManager::SetPathOnParentDirectoryIfAny() - { - if (prCurrentPathDecomposition.size() > 1) - { - ComposeNewPath(prCurrentPathDecomposition.end() - 2); - return true; - } - return false; - } + bool IGFD::FileManager::SetPathOnParentDirectoryIfAny() + { + if (prCurrentPathDecomposition.size() > 1) + { + ComposeNewPath(prCurrentPathDecomposition.end() - 2); + return true; + } + return false; + } - std::string IGFD::FileManager::GetCurrentPath() - { - if (prCurrentPath.empty()) - prCurrentPath = "."; - return prCurrentPath; - } + std::string IGFD::FileManager::GetCurrentPath() + { + if (prCurrentPath.empty()) + prCurrentPath = "."; + return prCurrentPath; + } - void IGFD::FileManager::SetCurrentPath(const std::string& vCurrentPath) - { - if (vCurrentPath.empty()) - prCurrentPath = "."; - else - prCurrentPath = vCurrentPath; - } + void IGFD::FileManager::SetCurrentPath(const std::string& vCurrentPath) + { + if (vCurrentPath.empty()) + prCurrentPath = "."; + else + prCurrentPath = vCurrentPath; + } - bool IGFD::FileManager::IsFileExist(const std::string& vFile) - { - std::ifstream docFile(vFile, std::ios::in); - if (docFile.is_open()) - { - docFile.close(); - return true; - } - return false; - } + bool IGFD::FileManager::IsFileExist(const std::string& vFile) + { + std::ifstream docFile(vFile, std::ios::in); + if (docFile.is_open()) + { + docFile.close(); + return true; + } + return false; + } - void IGFD::FileManager::SetDefaultFileName(const std::string& vFileName) - { - puDLGDefaultFileName = vFileName; - IGFD::Utils::SetBuffer(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, vFileName); - } + void IGFD::FileManager::SetDefaultFileName(const std::string& vFileName) + { + puDLGDefaultFileName = vFileName; + IGFD::Utils::SetBuffer(puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER, vFileName); + } - bool IGFD::FileManager::SelectDirectory(const std::shared_ptr& vInfos) - { - if (!vInfos.use_count()) - return false; + bool IGFD::FileManager::SelectDirectory(const std::shared_ptr& vInfos) + { + if (!vInfos.use_count()) + return false; - bool pathClick = false; + bool pathClick = false; - if (vInfos->fileNameExt == "..") - { - pathClick = SetPathOnParentDirectoryIfAny(); - } - else - { - std::string newPath; + if (vInfos->fileNameExt == "..") + { + pathClick = SetPathOnParentDirectoryIfAny(); + } + else + { + std::string newPath; - if (puShowDrives) - { - newPath = vInfos->fileNameExt + std::string(1u, PATH_SEP); - } - else - { + if (puShowDrives) + { + newPath = vInfos->fileNameExt + std::string(1u, PATH_SEP); + } + else + { #ifdef __linux__ - if (puFsRoot == prCurrentPath) - newPath = prCurrentPath + vInfos->fileNameExt; - else + if (puFsRoot == prCurrentPath) + newPath = prCurrentPath + vInfos->fileNameExt; + else #endif // __linux__ - newPath = prCurrentPath + std::string(1u, PATH_SEP) + vInfos->fileNameExt; - } + newPath = prCurrentPath + std::string(1u, PATH_SEP) + vInfos->fileNameExt; + } - if (IGFD::Utils::IsDirectoryExist(newPath)) - { - if (puShowDrives) - { - prCurrentPath = vInfos->fileNameExt; - puFsRoot = prCurrentPath; - } - else - { - prCurrentPath = newPath; //-V820 - } - pathClick = true; - } - } + if (IGFD::Utils::IsDirectoryExist(newPath)) + { + if (puShowDrives) + { + prCurrentPath = vInfos->fileNameExt; + puFsRoot = prCurrentPath; + } + else + { + prCurrentPath = newPath; //-V820 + } + pathClick = true; + } + } - return pathClick; - } + return pathClick; + } - void IGFD::FileManager::SelectFileName(const FileDialogInternal& vFileDialogInternal, const std::shared_ptr& vInfos) - { - if (!vInfos.use_count()) - return; + void IGFD::FileManager::SelectFileName(const FileDialogInternal& vFileDialogInternal, const std::shared_ptr& vInfos) + { + if (!vInfos.use_count()) + return; - if (ImGui::GetIO().KeyCtrl) - { - if (puDLGcountSelectionMax == 0) // infinite selection - { - if (prSelectedFileNames.find(vInfos->fileNameExt) == prSelectedFileNames.end()) // not found +> add - { - prAddFileNameInSelection(vInfos->fileNameExt, true); - } - else // found +> remove - { - prRemoveFileNameInSelection(vInfos->fileNameExt); - } - } - else // selection limited by size - { - if (prSelectedFileNames.size() < puDLGcountSelectionMax) - { - if (prSelectedFileNames.find(vInfos->fileNameExt) == prSelectedFileNames.end()) // not found +> add - { - prAddFileNameInSelection(vInfos->fileNameExt, true); - } - else // found +> remove - { - prRemoveFileNameInSelection(vInfos->fileNameExt); - } - } - } - } - else if (ImGui::GetIO().KeyShift) - { - if (puDLGcountSelectionMax != 1) - { - prSelectedFileNames.clear(); - // we will iterate filelist and get the last selection after the start selection - bool startMultiSelection = false; - std::string fileNameToSelect = vInfos->fileNameExt; - std::string savedLastSelectedFileName; // for invert selection mode - for (const auto& file : prFileList) - { - if (!file.use_count()) - continue; + if (ImGui::GetIO().KeyCtrl) + { + if (puDLGcountSelectionMax == 0) // infinite selection + { + if (prSelectedFileNames.find(vInfos->fileNameExt) == prSelectedFileNames.end()) // not found +> add + { + prAddFileNameInSelection(vInfos->fileNameExt, true); + } + else // found +> remove + { + prRemoveFileNameInSelection(vInfos->fileNameExt); + } + } + else // selection limited by size + { + if (prSelectedFileNames.size() < puDLGcountSelectionMax) + { + if (prSelectedFileNames.find(vInfos->fileNameExt) == prSelectedFileNames.end()) // not found +> add + { + prAddFileNameInSelection(vInfos->fileNameExt, true); + } + else // found +> remove + { + prRemoveFileNameInSelection(vInfos->fileNameExt); + } + } + } + } + else if (ImGui::GetIO().KeyShift) + { + if (puDLGcountSelectionMax != 1) + { + prSelectedFileNames.clear(); + // we will iterate filelist and get the last selection after the start selection + bool startMultiSelection = false; + std::string fileNameToSelect = vInfos->fileNameExt; + std::string savedLastSelectedFileName; // for invert selection mode + for (const auto& file : prFileList) + { + if (!file.use_count()) + continue; - bool canTake = true; - if (!file->IsTagFound(vFileDialogInternal.puSearchManager.puSearchTag)) canTake = false; - if (canTake) // if not filtered, we will take files who are filtered by the dialog - { - if (file->fileNameExt == prLastSelectedFileName) - { - startMultiSelection = true; - prAddFileNameInSelection(prLastSelectedFileName, false); - } - else if (startMultiSelection) - { - if (puDLGcountSelectionMax == 0) // infinite selection - { - prAddFileNameInSelection(file->fileNameExt, false); - } - else // selection limited by size - { - if (prSelectedFileNames.size() < puDLGcountSelectionMax) - { - prAddFileNameInSelection(file->fileNameExt, false); - } - else - { - startMultiSelection = false; - if (!savedLastSelectedFileName.empty()) - prLastSelectedFileName = savedLastSelectedFileName; - break; - } - } - } + bool canTake = true; + if (!file->IsTagFound(vFileDialogInternal.puSearchManager.puSearchTag)) canTake = false; + if (canTake) // if not filtered, we will take files who are filtered by the dialog + { + if (file->fileNameExt == prLastSelectedFileName) + { + startMultiSelection = true; + prAddFileNameInSelection(prLastSelectedFileName, false); + } + else if (startMultiSelection) + { + if (puDLGcountSelectionMax == 0) // infinite selection + { + prAddFileNameInSelection(file->fileNameExt, false); + } + else // selection limited by size + { + if (prSelectedFileNames.size() < puDLGcountSelectionMax) + { + prAddFileNameInSelection(file->fileNameExt, false); + } + else + { + startMultiSelection = false; + if (!savedLastSelectedFileName.empty()) + prLastSelectedFileName = savedLastSelectedFileName; + break; + } + } + } - if (file->fileNameExt == fileNameToSelect) - { - if (!startMultiSelection) // we are before the last Selected FileName, so we must inverse - { - savedLastSelectedFileName = prLastSelectedFileName; - prLastSelectedFileName = fileNameToSelect; - fileNameToSelect = savedLastSelectedFileName; - startMultiSelection = true; - prAddFileNameInSelection(prLastSelectedFileName, false); - } - else - { - startMultiSelection = false; - if (!savedLastSelectedFileName.empty()) - prLastSelectedFileName = savedLastSelectedFileName; - break; - } - } - } - } - } - } - else - { - prSelectedFileNames.clear(); - IGFD::Utils::ResetBuffer(puFileNameBuffer); - prAddFileNameInSelection(vInfos->fileNameExt, true); - } - } + if (file->fileNameExt == fileNameToSelect) + { + if (!startMultiSelection) // we are before the last Selected FileName, so we must inverse + { + savedLastSelectedFileName = prLastSelectedFileName; + prLastSelectedFileName = fileNameToSelect; + fileNameToSelect = savedLastSelectedFileName; + startMultiSelection = true; + prAddFileNameInSelection(prLastSelectedFileName, false); + } + else + { + startMultiSelection = false; + if (!savedLastSelectedFileName.empty()) + prLastSelectedFileName = savedLastSelectedFileName; + break; + } + } + } + } + } + } + else + { + prSelectedFileNames.clear(); + IGFD::Utils::ResetBuffer(puFileNameBuffer); + prAddFileNameInSelection(vInfos->fileNameExt, true); + } + } - void IGFD::FileManager::DrawDirectoryCreation(const FileDialogInternal& vFileDialogInternal) - { - if (vFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DisableCreateDirectoryButton) - return; + void IGFD::FileManager::DrawDirectoryCreation(const FileDialogInternal& vFileDialogInternal) + { + if (vFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DisableCreateDirectoryButton) + return; - if (IMGUI_BUTTON(createDirButtonString)) - { - if (!prCreateDirectoryMode) - { - prCreateDirectoryMode = true; - IGFD::Utils::ResetBuffer(puDirectoryNameBuffer); - } - } - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(buttonCreateDirString); + if (IMGUI_BUTTON(createDirButtonString)) + { + if (!prCreateDirectoryMode) + { + prCreateDirectoryMode = true; + IGFD::Utils::ResetBuffer(puDirectoryNameBuffer); + } + } + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(buttonCreateDirString); - if (prCreateDirectoryMode) - { - ImGui::SameLine(); + if (prCreateDirectoryMode) + { + ImGui::SameLine(); - ImGui::PushItemWidth(100.0f); - ImGui::InputText("##DirectoryFileName", puDirectoryNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER); - ImGui::PopItemWidth(); + ImGui::PushItemWidth(100.0f); + ImGui::InputText("##DirectoryFileName", puDirectoryNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER); + ImGui::PopItemWidth(); - ImGui::SameLine(); + ImGui::SameLine(); - if (IMGUI_BUTTON(okButtonString)) - { - std::string newDir = std::string(puDirectoryNameBuffer); - if (CreateDir(newDir)) - { - SetCurrentPath(prCurrentPath + std::string(1u, PATH_SEP) + newDir); - OpenCurrentPath(vFileDialogInternal); - } + if (IMGUI_BUTTON(okButtonString)) + { + std::string newDir = std::string(puDirectoryNameBuffer); + if (CreateDir(newDir)) + { + SetCurrentPath(prCurrentPath + std::string(1u, PATH_SEP) + newDir); + OpenCurrentPath(vFileDialogInternal); + } - prCreateDirectoryMode = false; - } + prCreateDirectoryMode = false; + } - ImGui::SameLine(); + ImGui::SameLine(); - if (IMGUI_BUTTON(cancelButtonString)) - { - prCreateDirectoryMode = false; - } - } - } + if (IMGUI_BUTTON(cancelButtonString)) + { + prCreateDirectoryMode = false; + } + } + } - void IGFD::FileManager::DrawPathComposer(const FileDialogInternal& vFileDialogInternal) - { - if (IMGUI_BUTTON(homeButtonString)) - { - SetCurrentPath(FileDialog::Instance()->homePath); - OpenCurrentPath(vFileDialogInternal); - } - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(buttonResetPathString); + void IGFD::FileManager::DrawPathComposer(const FileDialogInternal& vFileDialogInternal) + { + if (IMGUI_BUTTON(homeButtonString)) + { + SetCurrentPath(FileDialog::Instance()->homePath); + OpenCurrentPath(vFileDialogInternal); + } + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(buttonResetPathString); ImGui::SameLine(); if (IMGUI_BUTTON(parentDirString)) - { - if (SetPathOnParentDirectoryIfAny()) { - OpenCurrentPath(vFileDialogInternal); + { + if (SetPathOnParentDirectoryIfAny()) { + OpenCurrentPath(vFileDialogInternal); } - } - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(buttonParentDirString); + } + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(buttonParentDirString); #ifdef WIN32 - ImGui::SameLine(); + ImGui::SameLine(); - if (IMGUI_BUTTON(drivesButtonString)) - { - puDrivesClicked = true; - } - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(buttonDriveString); + if (IMGUI_BUTTON(drivesButtonString)) + { + puDrivesClicked = true; + } + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(buttonDriveString); #endif // WIN32 - ImGui::SameLine(); - - if (IMGUI_BUTTON(editPathButtonString)) - { - puInputPathActivated = true; - } - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(buttonEditPathString); + ImGui::SameLine(); + + if (IMGUI_BUTTON(editPathButtonString)) + { + puInputPathActivated = true; + } + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(buttonEditPathString); - ImGui::SameLine(); + ImGui::SameLine(); - ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); + ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); - // show current path - if (!prCurrentPathDecomposition.empty()) - { - ImGui::SameLine(); + // show current path + if (!prCurrentPathDecomposition.empty()) + { + ImGui::SameLine(); - if (puInputPathActivated) - { - ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x); - ImGui::InputText("##pathedition", puInputPathBuffer, MAX_PATH_BUFFER_SIZE); - ImGui::PopItemWidth(); - } - else - { - int _id = 0; - for (auto itPathDecomp = prCurrentPathDecomposition.begin(); - itPathDecomp != prCurrentPathDecomposition.end(); ++itPathDecomp) - { - if (itPathDecomp != prCurrentPathDecomposition.begin()) - ImGui::SameLine(); - ImGui::PushID(_id++); - bool click = IMGUI_PATH_BUTTON((*itPathDecomp).c_str()); - ImGui::PopID(); - if (click) - { - ComposeNewPath(itPathDecomp); - puPathClicked = true; - break; - } - // activate input for path - if (ImGui::IsItemClicked(ImGuiMouseButton_Right)) - { - ComposeNewPath(itPathDecomp); - IGFD::Utils::SetBuffer(puInputPathBuffer, MAX_PATH_BUFFER_SIZE, prCurrentPath); - puInputPathActivated = true; - break; - } - } - } - } - } + if (puInputPathActivated) + { + ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x); + ImGui::InputText("##pathedition", puInputPathBuffer, MAX_PATH_BUFFER_SIZE); + ImGui::PopItemWidth(); + } + else + { + int _id = 0; + for (auto itPathDecomp = prCurrentPathDecomposition.begin(); + itPathDecomp != prCurrentPathDecomposition.end(); ++itPathDecomp) + { + if (itPathDecomp != prCurrentPathDecomposition.begin()) + ImGui::SameLine(); + ImGui::PushID(_id++); + bool click = IMGUI_PATH_BUTTON((*itPathDecomp).c_str()); + ImGui::PopID(); + if (click) + { + ComposeNewPath(itPathDecomp); + puPathClicked = true; + break; + } + // activate input for path + if (ImGui::IsItemClicked(ImGuiMouseButton_Right)) + { + ComposeNewPath(itPathDecomp); + IGFD::Utils::SetBuffer(puInputPathBuffer, MAX_PATH_BUFFER_SIZE, prCurrentPath); + puInputPathActivated = true; + break; + } + } + } + } + } - std::string IGFD::FileManager::GetResultingPath() - { - std::string path = prCurrentPath; + std::string IGFD::FileManager::GetResultingPath() + { + std::string path = prCurrentPath; - if (puDLGDirectoryMode) // if directory mode - { - std::string selectedDirectory = puFileNameBuffer; - if (!selectedDirectory.empty() && - selectedDirectory != ".") - path += std::string(1u, PATH_SEP) + selectedDirectory; - } + if (puDLGDirectoryMode) // if directory mode + { + std::string selectedDirectory = puFileNameBuffer; + if (!selectedDirectory.empty() && + selectedDirectory != ".") + path += std::string(1u, PATH_SEP) + selectedDirectory; + } - return path; - } + return path; + } - std::string IGFD::FileManager::GetResultingFileName(FileDialogInternal& vFileDialogInternal) - { - if (!puDLGDirectoryMode) // if not directory mode - { - return puFileNameBuffer; //vFileDialogInternal.puFilterManager.ReplaceExtentionWithCurrentFilter(std::string(puFileNameBuffer)); - } + std::string IGFD::FileManager::GetResultingFileName(FileDialogInternal& vFileDialogInternal) + { + if (!puDLGDirectoryMode) // if not directory mode + { + return puFileNameBuffer; //vFileDialogInternal.puFilterManager.ReplaceExtentionWithCurrentFilter(std::string(puFileNameBuffer)); + } - return ""; // directory mode - } + return ""; // directory mode + } - std::string IGFD::FileManager::GetResultingFilePathName(FileDialogInternal& vFileDialogInternal) - { - std::string result = GetResultingPath(); + std::string IGFD::FileManager::GetResultingFilePathName(FileDialogInternal& vFileDialogInternal) + { + std::string result = GetResultingPath(); - std::string filename = GetResultingFileName(vFileDialogInternal); - if (!filename.empty()) - { + std::string filename = GetResultingFileName(vFileDialogInternal); + if (!filename.empty()) + { #ifdef UNIX - if (puFsRoot != result) + if (puFsRoot != result) #endif // UNIX - result += std::string(1u, PATH_SEP); + result += std::string(1u, PATH_SEP); - result += filename; - } + result += filename; + } - return result; - } + return result; + } - std::map IGFD::FileManager::GetResultingSelection() - { - std::map res; + std::map IGFD::FileManager::GetResultingSelection() + { + std::map res; - for (auto& selectedFileName : prSelectedFileNames) - { - std::string result = GetResultingPath(); + for (auto& selectedFileName : prSelectedFileNames) + { + std::string result = GetResultingPath(); #ifdef UNIX - if (puFsRoot != result) + if (puFsRoot != result) #endif // UNIX - result += std::string(1u, PATH_SEP); + result += std::string(1u, PATH_SEP); - result += selectedFileName; + result += selectedFileName; - res[selectedFileName] = result; - } + res[selectedFileName] = result; + } - return res; - } + return res; + } - ///////////////////////////////////////////////////////////////////////////////////// - //// FILE DIALOG INTERNAL /////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILE DIALOG INTERNAL /////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - void IGFD::FileDialogInternal::NewFrame() - { - puCanWeContinue = true; // reset flag for possibily validate the dialog - puIsOk = false; // reset dialog result - puFileManager.puDrivesClicked = false; - puFileManager.puPathClicked = false; - - puNeedToExitDialog = false; + void IGFD::FileDialogInternal::NewFrame() + { + puCanWeContinue = true; // reset flag for possibily validate the dialog + puIsOk = false; // reset dialog result + puFileManager.puDrivesClicked = false; + puFileManager.puPathClicked = false; + + puNeedToExitDialog = false; #ifdef USE_DIALOG_EXIT_WITH_KEY - if (ImGui::IsKeyPressed(IGFD_EXIT_KEY)) - { - // we do that here with the data's defined at the last frame - // because escape key can quit input activation and at the end of the frame all flag will be false - // so we will detect nothing - if (!(puFileManager.puInputPathActivated || - puSearchManager.puSearchInputIsActive || - puFileInputIsActive || - puFileListViewIsActive)) - { - puNeedToExitDialog = true; // need to quit dialog - } - } - else + if (ImGui::IsKeyPressed(IGFD_EXIT_KEY)) + { + // we do that here with the data's defined at the last frame + // because escape key can quit input activation and at the end of the frame all flag will be false + // so we will detect nothing + if (!(puFileManager.puInputPathActivated || + puSearchManager.puSearchInputIsActive || + puFileInputIsActive || + puFileListViewIsActive)) + { + puNeedToExitDialog = true; // need to quit dialog + } + } + else #endif - { - puSearchManager.puSearchInputIsActive = false; - puFileInputIsActive = false; - puFileListViewIsActive = false; - } - } + { + puSearchManager.puSearchInputIsActive = false; + puFileInputIsActive = false; + puFileListViewIsActive = false; + } + } - void IGFD::FileDialogInternal::EndFrame() - { - // directory change - if (puFileManager.puPathClicked) - { - puFileManager.OpenCurrentPath(*this); - } + void IGFD::FileDialogInternal::EndFrame() + { + // directory change + if (puFileManager.puPathClicked) + { + puFileManager.OpenCurrentPath(*this); + } - if (puFileManager.puDrivesClicked) - { - if (puFileManager.GetDrives()) - { - puFileManager.ApplyFilteringOnFileList(*this); - } - } + if (puFileManager.puDrivesClicked) + { + if (puFileManager.GetDrives()) + { + puFileManager.ApplyFilteringOnFileList(*this); + } + } - if (puFileManager.puInputPathActivated) - { - auto gio = ImGui::GetIO(); - if (ImGui::IsKeyReleased(ImGuiKey_Enter)) - { - puFileManager.SetCurrentPath(std::string(puFileManager.puInputPathBuffer)); - puFileManager.OpenCurrentPath(*this); - puFileManager.puInputPathActivated = false; - } - if (ImGui::IsKeyReleased(ImGuiKey_Escape)) - { - puFileManager.puInputPathActivated = false; - } - } - } + if (puFileManager.puInputPathActivated) + { + auto gio = ImGui::GetIO(); + if (ImGui::IsKeyReleased(ImGuiKey_Enter)) + { + puFileManager.SetCurrentPath(std::string(puFileManager.puInputPathBuffer)); + puFileManager.OpenCurrentPath(*this); + puFileManager.puInputPathActivated = false; + } + if (ImGui::IsKeyReleased(ImGuiKey_Escape)) + { + puFileManager.puInputPathActivated = false; + } + } + } - void IGFD::FileDialogInternal::ResetForNewDialog() - { - puFileManager.fileListActuallyEmpty=false; - } + void IGFD::FileDialogInternal::ResetForNewDialog() + { + puFileManager.fileListActuallyEmpty=false; + } - ///////////////////////////////////////////////////////////////////////////////////// - //// THUMBNAIL FEATURE ////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// THUMBNAIL FEATURE ////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - IGFD::ThumbnailFeature::ThumbnailFeature() - { + IGFD::ThumbnailFeature::ThumbnailFeature() + { #ifdef USE_THUMBNAILS - prDisplayMode = DisplayModeEnum::FILE_LIST; + prDisplayMode = DisplayModeEnum::FILE_LIST; #endif - } + } - IGFD::ThumbnailFeature::~ThumbnailFeature() = default; + IGFD::ThumbnailFeature::~ThumbnailFeature() = default; - void IGFD::ThumbnailFeature::NewThumbnailFrame(FileDialogInternal& vFileDialogInternal) - { - (void)vFileDialogInternal; + void IGFD::ThumbnailFeature::NewThumbnailFrame(FileDialogInternal& vFileDialogInternal) + { + (void)vFileDialogInternal; #ifdef USE_THUMBNAILS - prStartThumbnailFileDatasExtraction(); + prStartThumbnailFileDatasExtraction(); #endif - } + } - void IGFD::ThumbnailFeature::EndThumbnailFrame(FileDialogInternal& vFileDialogInternal) - { + void IGFD::ThumbnailFeature::EndThumbnailFrame(FileDialogInternal& vFileDialogInternal) + { #ifdef USE_THUMBNAILS - prClearThumbnails(vFileDialogInternal); + prClearThumbnails(vFileDialogInternal); #endif - } + } - void IGFD::ThumbnailFeature::QuitThumbnailFrame(FileDialogInternal& vFileDialogInternal) - { + void IGFD::ThumbnailFeature::QuitThumbnailFrame(FileDialogInternal& vFileDialogInternal) + { #ifdef USE_THUMBNAILS - prStopThumbnailFileDatasExtraction(); - prClearThumbnails(vFileDialogInternal); + prStopThumbnailFileDatasExtraction(); + prClearThumbnails(vFileDialogInternal); #endif - } + } #ifdef USE_THUMBNAILS - void IGFD::ThumbnailFeature::prStartThumbnailFileDatasExtraction() - { - const bool res = prThumbnailGenerationThread.use_count() && prThumbnailGenerationThread->joinable(); - if (!res) - { - prIsWorking = true; - prCountFiles = 0U; - prThumbnailGenerationThread = std::shared_ptr( - new std::thread(&IGFD::ThumbnailFeature::prThreadThumbnailFileDatasExtractionFunc, this), - [this](std::thread* obj) - { - prIsWorking = false; - if (obj) - obj->join(); - }); - } - } + void IGFD::ThumbnailFeature::prStartThumbnailFileDatasExtraction() + { + const bool res = prThumbnailGenerationThread.use_count() && prThumbnailGenerationThread->joinable(); + if (!res) + { + prIsWorking = true; + prCountFiles = 0U; + prThumbnailGenerationThread = std::shared_ptr( + new std::thread(&IGFD::ThumbnailFeature::prThreadThumbnailFileDatasExtractionFunc, this), + [this](std::thread* obj) + { + prIsWorking = false; + if (obj) + obj->join(); + }); + } + } - bool IGFD::ThumbnailFeature::prStopThumbnailFileDatasExtraction() - { - const bool res = prThumbnailGenerationThread.use_count() && prThumbnailGenerationThread->joinable(); - if (res) - { - prThumbnailGenerationThread.reset(); - } + bool IGFD::ThumbnailFeature::prStopThumbnailFileDatasExtraction() + { + const bool res = prThumbnailGenerationThread.use_count() && prThumbnailGenerationThread->joinable(); + if (res) + { + prThumbnailGenerationThread.reset(); + } - return res; - } - - void IGFD::ThumbnailFeature::prThreadThumbnailFileDatasExtractionFunc() - { - prCountFiles = 0U; - prIsWorking = true; + return res; + } + + void IGFD::ThumbnailFeature::prThreadThumbnailFileDatasExtractionFunc() + { + prCountFiles = 0U; + prIsWorking = true; - // infinite loop while is thread working - while(prIsWorking) - { - if (!prThumbnailFileDatasToGet.empty()) - { - std::shared_ptr file = nullptr; - prThumbnailFileDatasToGetMutex.lock(); - //get the first file in the list - file = (*prThumbnailFileDatasToGet.begin()); - prThumbnailFileDatasToGetMutex.unlock(); + // infinite loop while is thread working + while(prIsWorking) + { + if (!prThumbnailFileDatasToGet.empty()) + { + std::shared_ptr file = nullptr; + prThumbnailFileDatasToGetMutex.lock(); + //get the first file in the list + file = (*prThumbnailFileDatasToGet.begin()); + prThumbnailFileDatasToGetMutex.unlock(); - // retrieve datas of the texture file if its an image file - if (file.use_count()) - { - if (file->fileType == 'f') //-V522 - { - if (file->fileExt == ".png" - || file->fileExt == ".bmp" - || file->fileExt == ".tga" - || file->fileExt == ".jpg" || file->fileExt == ".jpeg" - || file->fileExt == ".gif" - || file->fileExt == ".psd" - || file->fileExt == ".pic" - || file->fileExt == ".ppm" || file->fileExt == ".pgm" - //|| file->fileExt == ".hdr" => format float so in few times - ) - { - auto fpn = file->filePath + std::string(1u, PATH_SEP) + file->fileNameExt; + // retrieve datas of the texture file if its an image file + if (file.use_count()) + { + if (file->fileType == 'f') //-V522 + { + if (file->fileExt == ".png" + || file->fileExt == ".bmp" + || file->fileExt == ".tga" + || file->fileExt == ".jpg" || file->fileExt == ".jpeg" + || file->fileExt == ".gif" + || file->fileExt == ".psd" + || file->fileExt == ".pic" + || file->fileExt == ".ppm" || file->fileExt == ".pgm" + //|| file->fileExt == ".hdr" => format float so in few times + ) + { + auto fpn = file->filePath + std::string(1u, PATH_SEP) + file->fileNameExt; - int w = 0; - int h = 0; - int chans = 0; - uint8_t *datas = stbi_load(fpn.c_str(), &w, &h, &chans, STBI_rgb_alpha); - if (datas) - { - if (w && h) - { - // resize with respect to glyph ratio - const float ratioX = (float)w / (float)h; - const float newX = DisplayMode_ThumbailsList_ImageHeight * ratioX; - float newY = w / ratioX; - if (newX < w) - newY = DisplayMode_ThumbailsList_ImageHeight; + int w = 0; + int h = 0; + int chans = 0; + uint8_t *datas = stbi_load(fpn.c_str(), &w, &h, &chans, STBI_rgb_alpha); + if (datas) + { + if (w && h) + { + // resize with respect to glyph ratio + const float ratioX = (float)w / (float)h; + const float newX = DisplayMode_ThumbailsList_ImageHeight * ratioX; + float newY = w / ratioX; + if (newX < w) + newY = DisplayMode_ThumbailsList_ImageHeight; - const auto newWidth = (int)newX; - const auto newHeight = (int)newY; - const auto newBufSize = (size_t)(newWidth * newHeight * 4U); //-V112 //-V1028 - auto resizedData = new uint8_t[newBufSize]; - - const int resizeSucceeded = stbir_resize_uint8( - datas, w, h, 0, - resizedData, newWidth, newHeight, 0, - 4); //-V112 + const auto newWidth = (int)newX; + const auto newHeight = (int)newY; + const auto newBufSize = (size_t)(newWidth * newHeight * 4U); //-V112 //-V1028 + auto resizedData = new uint8_t[newBufSize]; + + const int resizeSucceeded = stbir_resize_uint8( + datas, w, h, 0, + resizedData, newWidth, newHeight, 0, + 4); //-V112 - if (resizeSucceeded) - { - auto th = &file->thumbnailInfo; + if (resizeSucceeded) + { + auto th = &file->thumbnailInfo; - th->textureFileDatas = resizedData; - th->textureWidth = newWidth; - th->textureHeight = newHeight; - th->textureChannels = 4; //-V112 + th->textureFileDatas = resizedData; + th->textureWidth = newWidth; + th->textureHeight = newHeight; + th->textureChannels = 4; //-V112 - // we set that at least, because will launch the gpu creation of the texture in the main thread - th->isReadyToUpload = true; + // we set that at least, because will launch the gpu creation of the texture in the main thread + th->isReadyToUpload = true; - // need gpu loading - prAddThumbnailToCreate(file); - } - } - else - { - printf("image loading fail : w:%i h:%i c:%i\n", w, h, 4); //-V112 - } + // need gpu loading + prAddThumbnailToCreate(file); + } + } + else + { + printf("image loading fail : w:%i h:%i c:%i\n", w, h, 4); //-V112 + } - stbi_image_free(datas); - } - } - } + stbi_image_free(datas); + } + } + } - // peu importe le resultat on vire le fichicer - // remove form this list - // write => thread concurency issues - prThumbnailFileDatasToGetMutex.lock(); - prThumbnailFileDatasToGet.pop_front(); - prThumbnailFileDatasToGetMutex.unlock(); - } - } - } - } + // peu importe le resultat on vire le fichicer + // remove form this list + // write => thread concurency issues + prThumbnailFileDatasToGetMutex.lock(); + prThumbnailFileDatasToGet.pop_front(); + prThumbnailFileDatasToGetMutex.unlock(); + } + } + } + } - inline void inVariadicProgressBar(float fraction, const ImVec2& size_arg, const char* fmt, ...) - { - va_list args; - va_start(args, fmt); - char TempBuffer[512]; - const int w = vsnprintf(TempBuffer, 511, fmt, args); - va_end(args); - if (w) - { - ImGui::ProgressBar(fraction, size_arg, TempBuffer); - } - } + inline void inVariadicProgressBar(float fraction, const ImVec2& size_arg, const char* fmt, ...) + { + va_list args; + va_start(args, fmt); + char TempBuffer[512]; + const int w = vsnprintf(TempBuffer, 511, fmt, args); + va_end(args); + if (w) + { + ImGui::ProgressBar(fraction, size_arg, TempBuffer); + } + } - void IGFD::ThumbnailFeature::prDrawThumbnailGenerationProgress() - { - if (prThumbnailGenerationThread.use_count() && prThumbnailGenerationThread->joinable()) - { - if (!prThumbnailFileDatasToGet.empty()) - { - const auto p = (float)((double)prCountFiles / (double)prThumbnailFileDatasToGet.size()); // read => no thread concurency issues - inVariadicProgressBar(p, ImVec2(50, 0), "%u/%u", prCountFiles, (uint32_t)prThumbnailFileDatasToGet.size()); // read => no thread concurency issues - ImGui::SameLine(); - } - } - } + void IGFD::ThumbnailFeature::prDrawThumbnailGenerationProgress() + { + if (prThumbnailGenerationThread.use_count() && prThumbnailGenerationThread->joinable()) + { + if (!prThumbnailFileDatasToGet.empty()) + { + const auto p = (float)((double)prCountFiles / (double)prThumbnailFileDatasToGet.size()); // read => no thread concurency issues + inVariadicProgressBar(p, ImVec2(50, 0), "%u/%u", prCountFiles, (uint32_t)prThumbnailFileDatasToGet.size()); // read => no thread concurency issues + ImGui::SameLine(); + } + } + } - void IGFD::ThumbnailFeature::prAddThumbnailToLoad(const std::shared_ptr& vFileInfos) - { - if (vFileInfos.use_count()) - { - if (vFileInfos->fileType == 'f') - { - if (vFileInfos->fileExt == ".png" - || vFileInfos->fileExt == ".bmp" - || vFileInfos->fileExt == ".tga" - || vFileInfos->fileExt == ".jpg" || vFileInfos->fileExt == ".jpeg" - || vFileInfos->fileExt == ".gif" - || vFileInfos->fileExt == ".psd" - || vFileInfos->fileExt == ".pic" - || vFileInfos->fileExt == ".ppm" || vFileInfos->fileExt == ".pgm" - //|| file->fileExt == ".hdr" => format float so in few times - ) - { - // write => thread concurency issues - prThumbnailFileDatasToGetMutex.lock(); - prThumbnailFileDatasToGet.push_back(vFileInfos); - vFileInfos->thumbnailInfo.isLoadingOrLoaded = true; - prThumbnailFileDatasToGetMutex.unlock(); - } - } - } - } - - void IGFD::ThumbnailFeature::prAddThumbnailToCreate(const std::shared_ptr& vFileInfos) - { - if (vFileInfos.use_count()) - { - // write => thread concurency issues - prThumbnailToCreateMutex.lock(); - prThumbnailToCreate.push_back(vFileInfos); - prThumbnailToCreateMutex.unlock(); - } - } + void IGFD::ThumbnailFeature::prAddThumbnailToLoad(const std::shared_ptr& vFileInfos) + { + if (vFileInfos.use_count()) + { + if (vFileInfos->fileType == 'f') + { + if (vFileInfos->fileExt == ".png" + || vFileInfos->fileExt == ".bmp" + || vFileInfos->fileExt == ".tga" + || vFileInfos->fileExt == ".jpg" || vFileInfos->fileExt == ".jpeg" + || vFileInfos->fileExt == ".gif" + || vFileInfos->fileExt == ".psd" + || vFileInfos->fileExt == ".pic" + || vFileInfos->fileExt == ".ppm" || vFileInfos->fileExt == ".pgm" + //|| file->fileExt == ".hdr" => format float so in few times + ) + { + // write => thread concurency issues + prThumbnailFileDatasToGetMutex.lock(); + prThumbnailFileDatasToGet.push_back(vFileInfos); + vFileInfos->thumbnailInfo.isLoadingOrLoaded = true; + prThumbnailFileDatasToGetMutex.unlock(); + } + } + } + } + + void IGFD::ThumbnailFeature::prAddThumbnailToCreate(const std::shared_ptr& vFileInfos) + { + if (vFileInfos.use_count()) + { + // write => thread concurency issues + prThumbnailToCreateMutex.lock(); + prThumbnailToCreate.push_back(vFileInfos); + prThumbnailToCreateMutex.unlock(); + } + } - void IGFD::ThumbnailFeature::prAddThumbnailToDestroy(const IGFD_Thumbnail_Info& vIGFD_Thumbnail_Info) - { - // write => thread concurency issues - prThumbnailToDestroyMutex.lock(); - prThumbnailToDestroy.push_back(vIGFD_Thumbnail_Info); - prThumbnailToDestroyMutex.unlock(); - } + void IGFD::ThumbnailFeature::prAddThumbnailToDestroy(const IGFD_Thumbnail_Info& vIGFD_Thumbnail_Info) + { + // write => thread concurency issues + prThumbnailToDestroyMutex.lock(); + prThumbnailToDestroy.push_back(vIGFD_Thumbnail_Info); + prThumbnailToDestroyMutex.unlock(); + } - void IGFD::ThumbnailFeature::prDrawDisplayModeToolBar() - { - if (IMGUI_RADIO_BUTTON(DisplayMode_FilesList_ButtonString, - prDisplayMode == DisplayModeEnum::FILE_LIST)) - prDisplayMode = DisplayModeEnum::FILE_LIST; - if (ImGui::IsItemHovered()) ImGui::SetTooltip(DisplayMode_FilesList_ButtonHelp); - ImGui::SameLine(); - if (IMGUI_RADIO_BUTTON(DisplayMode_ThumbailsList_ButtonString, - prDisplayMode == DisplayModeEnum::THUMBNAILS_LIST)) - prDisplayMode = DisplayModeEnum::THUMBNAILS_LIST; - if (ImGui::IsItemHovered()) ImGui::SetTooltip(DisplayMode_ThumbailsList_ButtonHelp); - ImGui::SameLine(); - /* todo - if (IMGUI_RADIO_BUTTON(DisplayMode_ThumbailsGrid_ButtonString, - prDisplayMode == DisplayModeEnum::THUMBNAILS_GRID)) - prDisplayMode = DisplayModeEnum::THUMBNAILS_GRID; - if (ImGui::IsItemHovered()) ImGui::SetTooltip(DisplayMode_ThumbailsGrid_ButtonHelp); - ImGui::SameLine(); - */ - prDrawThumbnailGenerationProgress(); - } + void IGFD::ThumbnailFeature::prDrawDisplayModeToolBar() + { + if (IMGUI_RADIO_BUTTON(DisplayMode_FilesList_ButtonString, + prDisplayMode == DisplayModeEnum::FILE_LIST)) + prDisplayMode = DisplayModeEnum::FILE_LIST; + if (ImGui::IsItemHovered()) ImGui::SetTooltip(DisplayMode_FilesList_ButtonHelp); + ImGui::SameLine(); + if (IMGUI_RADIO_BUTTON(DisplayMode_ThumbailsList_ButtonString, + prDisplayMode == DisplayModeEnum::THUMBNAILS_LIST)) + prDisplayMode = DisplayModeEnum::THUMBNAILS_LIST; + if (ImGui::IsItemHovered()) ImGui::SetTooltip(DisplayMode_ThumbailsList_ButtonHelp); + ImGui::SameLine(); + /* todo + if (IMGUI_RADIO_BUTTON(DisplayMode_ThumbailsGrid_ButtonString, + prDisplayMode == DisplayModeEnum::THUMBNAILS_GRID)) + prDisplayMode = DisplayModeEnum::THUMBNAILS_GRID; + if (ImGui::IsItemHovered()) ImGui::SetTooltip(DisplayMode_ThumbailsGrid_ButtonHelp); + ImGui::SameLine(); + */ + prDrawThumbnailGenerationProgress(); + } - void IGFD::ThumbnailFeature::prClearThumbnails(FileDialogInternal& vFileDialogInternal) - { - // directory wil be changed so the file list will be erased - if (vFileDialogInternal.puFileManager.puPathClicked) - { - size_t count = vFileDialogInternal.puFileManager.GetFullFileListSize(); - for (size_t idx = 0U; idx < count; idx++) - { - auto file = vFileDialogInternal.puFileManager.GetFullFileAt(idx); - if (file.use_count()) - { - if (file->thumbnailInfo.isReadyToDisplay) //-V522 - { - prAddThumbnailToDestroy(file->thumbnailInfo); - } - } - } - } - } + void IGFD::ThumbnailFeature::prClearThumbnails(FileDialogInternal& vFileDialogInternal) + { + // directory wil be changed so the file list will be erased + if (vFileDialogInternal.puFileManager.puPathClicked) + { + size_t count = vFileDialogInternal.puFileManager.GetFullFileListSize(); + for (size_t idx = 0U; idx < count; idx++) + { + auto file = vFileDialogInternal.puFileManager.GetFullFileAt(idx); + if (file.use_count()) + { + if (file->thumbnailInfo.isReadyToDisplay) //-V522 + { + prAddThumbnailToDestroy(file->thumbnailInfo); + } + } + } + } + } - void IGFD::ThumbnailFeature::SetCreateThumbnailCallback(const CreateThumbnailFun& vCreateThumbnailFun) - { - prCreateThumbnailFun = vCreateThumbnailFun; - } + void IGFD::ThumbnailFeature::SetCreateThumbnailCallback(const CreateThumbnailFun& vCreateThumbnailFun) + { + prCreateThumbnailFun = vCreateThumbnailFun; + } - void IGFD::ThumbnailFeature::SetDestroyThumbnailCallback(const DestroyThumbnailFun& vCreateThumbnailFun) - { - prDestroyThumbnailFun = vCreateThumbnailFun; - } + void IGFD::ThumbnailFeature::SetDestroyThumbnailCallback(const DestroyThumbnailFun& vCreateThumbnailFun) + { + prDestroyThumbnailFun = vCreateThumbnailFun; + } - void IGFD::ThumbnailFeature::ManageGPUThumbnails() - { - if (prCreateThumbnailFun) - { - if (!prThumbnailToCreate.empty()) - { - for (const auto& file : prThumbnailToCreate) - { - if (file.use_count()) - { - prCreateThumbnailFun(&file->thumbnailInfo); - } - } - prThumbnailToCreateMutex.lock(); - prThumbnailToCreate.clear(); - prThumbnailToCreateMutex.unlock(); - } - } - else - { - printf("No Callback found for create texture\nYou need to define the callback with a call to SetCreateThumbnailCallback\n"); - } + void IGFD::ThumbnailFeature::ManageGPUThumbnails() + { + if (prCreateThumbnailFun) + { + if (!prThumbnailToCreate.empty()) + { + for (const auto& file : prThumbnailToCreate) + { + if (file.use_count()) + { + prCreateThumbnailFun(&file->thumbnailInfo); + } + } + prThumbnailToCreateMutex.lock(); + prThumbnailToCreate.clear(); + prThumbnailToCreateMutex.unlock(); + } + } + else + { + printf("No Callback found for create texture\nYou need to define the callback with a call to SetCreateThumbnailCallback\n"); + } - if (prDestroyThumbnailFun) - { - if (!prThumbnailToDestroy.empty()) - { - for (auto thumbnail : prThumbnailToDestroy) - { - prDestroyThumbnailFun(&thumbnail); - } - prThumbnailToDestroyMutex.lock(); - prThumbnailToDestroy.clear(); - prThumbnailToDestroyMutex.unlock(); - } - } - else - { - printf("No Callback found for destroy texture\nYou need to define the callback with a call to SetCreateThumbnailCallback\n"); - } - } + if (prDestroyThumbnailFun) + { + if (!prThumbnailToDestroy.empty()) + { + for (auto thumbnail : prThumbnailToDestroy) + { + prDestroyThumbnailFun(&thumbnail); + } + prThumbnailToDestroyMutex.lock(); + prThumbnailToDestroy.clear(); + prThumbnailToDestroyMutex.unlock(); + } + } + else + { + printf("No Callback found for destroy texture\nYou need to define the callback with a call to SetCreateThumbnailCallback\n"); + } + } #endif // USE_THUMBNAILS - ///////////////////////////////////////////////////////////////////////////////////// - //// BOOKMARK FEATURE /////////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// BOOKMARK FEATURE /////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - IGFD::BookMarkFeature::BookMarkFeature() - { + IGFD::BookMarkFeature::BookMarkFeature() + { #ifdef USE_BOOKMARK - prBookmarkWidth = defaultBookmarkPaneWith; + prBookmarkWidth = defaultBookmarkPaneWith; #endif // USE_BOOKMARK - } + } #ifdef USE_BOOKMARK - void IGFD::BookMarkFeature::prDrawBookmarkButton() - { - IMGUI_TOGGLE_BUTTON(bookmarksButtonString, &prBookmarkPaneShown); + void IGFD::BookMarkFeature::prDrawBookmarkButton() + { + IMGUI_TOGGLE_BUTTON(bookmarksButtonString, &prBookmarkPaneShown); - if (ImGui::IsItemHovered()) - ImGui::SetTooltip(bookmarksButtonHelpString); - } - bool IGFD::BookMarkFeature::prDrawBookmarkPane(FileDialogInternal& vFileDialogInternal, const ImVec2& vSize) - { - bool res = false; + if (ImGui::IsItemHovered()) + ImGui::SetTooltip(bookmarksButtonHelpString); + } + bool IGFD::BookMarkFeature::prDrawBookmarkPane(FileDialogInternal& vFileDialogInternal, const ImVec2& vSize) + { + bool res = false; - ImGui::BeginChild("##bookmarkpane", vSize); + ImGui::BeginChild("##bookmarkpane", vSize); - static int selectedBookmarkForEdition = -1; + static int selectedBookmarkForEdition = -1; - if (IMGUI_BUTTON(addBookmarkButtonString "##ImGuiFileDialogAddBookmark")) - { - if (!vFileDialogInternal.puFileManager.IsComposerEmpty()) - { - BookmarkStruct bookmark; - bookmark.name = vFileDialogInternal.puFileManager.GetBack(); - bookmark.path = vFileDialogInternal.puFileManager.GetCurrentPath(); - prBookmarks.push_back(bookmark); - } - } - if (selectedBookmarkForEdition >= 0 && - selectedBookmarkForEdition < (int)prBookmarks.size()) - { - ImGui::SameLine(); - if (IMGUI_BUTTON(removeBookmarkButtonString "##ImGuiFileDialogAddBookmark")) - { - prBookmarks.erase(prBookmarks.begin() + selectedBookmarkForEdition); - if (selectedBookmarkForEdition == (int)prBookmarks.size()) - selectedBookmarkForEdition--; - } + if (IMGUI_BUTTON(addBookmarkButtonString "##ImGuiFileDialogAddBookmark")) + { + if (!vFileDialogInternal.puFileManager.IsComposerEmpty()) + { + BookmarkStruct bookmark; + bookmark.name = vFileDialogInternal.puFileManager.GetBack(); + bookmark.path = vFileDialogInternal.puFileManager.GetCurrentPath(); + prBookmarks.push_back(bookmark); + } + } + if (selectedBookmarkForEdition >= 0 && + selectedBookmarkForEdition < (int)prBookmarks.size()) + { + ImGui::SameLine(); + if (IMGUI_BUTTON(removeBookmarkButtonString "##ImGuiFileDialogAddBookmark")) + { + prBookmarks.erase(prBookmarks.begin() + selectedBookmarkForEdition); + if (selectedBookmarkForEdition == (int)prBookmarks.size()) + selectedBookmarkForEdition--; + } - if (selectedBookmarkForEdition >= 0 && - selectedBookmarkForEdition < (int)prBookmarks.size()) - { - ImGui::SameLine(); + if (selectedBookmarkForEdition >= 0 && + selectedBookmarkForEdition < (int)prBookmarks.size()) + { + ImGui::SameLine(); - ImGui::PushItemWidth(vSize.x - ImGui::GetCursorPosX()); - if (ImGui::InputText("##ImGuiFileDialogBookmarkEdit", prBookmarkEditBuffer, MAX_FILE_DIALOG_NAME_BUFFER)) - { - prBookmarks[(size_t)selectedBookmarkForEdition].name = std::string(prBookmarkEditBuffer); - } - ImGui::PopItemWidth(); - } - } + ImGui::PushItemWidth(vSize.x - ImGui::GetCursorPosX()); + if (ImGui::InputText("##ImGuiFileDialogBookmarkEdit", prBookmarkEditBuffer, MAX_FILE_DIALOG_NAME_BUFFER)) + { + prBookmarks[(size_t)selectedBookmarkForEdition].name = std::string(prBookmarkEditBuffer); + } + ImGui::PopItemWidth(); + } + } - ImGui::Separator(); + ImGui::Separator(); - if (!prBookmarks.empty()) - { - prBookmarkClipper.Begin((int)prBookmarks.size(), ImGui::GetTextLineHeightWithSpacing()); - while (prBookmarkClipper.Step()) - { - for (int i = prBookmarkClipper.DisplayStart; i < prBookmarkClipper.DisplayEnd; i++) - { - if (i < 0) continue; - const BookmarkStruct& bookmark = prBookmarks[(size_t)i]; - ImGui::PushID(i); - if (ImGui::Selectable(bookmark.name.c_str(), selectedBookmarkForEdition == i, - ImGuiSelectableFlags_AllowDoubleClick) | - (selectedBookmarkForEdition == -1 && - bookmark.path == vFileDialogInternal.puFileManager.GetCurrentPath())) // select if path is current - { - selectedBookmarkForEdition = i; - IGFD::Utils::ResetBuffer(prBookmarkEditBuffer); - IGFD::Utils::AppendToBuffer(prBookmarkEditBuffer, MAX_FILE_DIALOG_NAME_BUFFER, bookmark.name); + if (!prBookmarks.empty()) + { + prBookmarkClipper.Begin((int)prBookmarks.size(), ImGui::GetTextLineHeightWithSpacing()); + while (prBookmarkClipper.Step()) + { + for (int i = prBookmarkClipper.DisplayStart; i < prBookmarkClipper.DisplayEnd; i++) + { + if (i < 0) continue; + const BookmarkStruct& bookmark = prBookmarks[(size_t)i]; + ImGui::PushID(i); + if (ImGui::Selectable(bookmark.name.c_str(), selectedBookmarkForEdition == i, + ImGuiSelectableFlags_AllowDoubleClick) | + (selectedBookmarkForEdition == -1 && + bookmark.path == vFileDialogInternal.puFileManager.GetCurrentPath())) // select if path is current + { + selectedBookmarkForEdition = i; + IGFD::Utils::ResetBuffer(prBookmarkEditBuffer); + IGFD::Utils::AppendToBuffer(prBookmarkEditBuffer, MAX_FILE_DIALOG_NAME_BUFFER, bookmark.name); - if (ImGui::IsMouseDoubleClicked(0)) // apply path - { - vFileDialogInternal.puFileManager.SetCurrentPath(bookmark.path); - vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); - res = true; - } - } - ImGui::PopID(); - if (ImGui::IsItemHovered()) - ImGui::SetTooltip("%s", bookmark.path.c_str()); //-V111 - } - } - prBookmarkClipper.End(); - } + if (ImGui::IsMouseDoubleClicked(0)) // apply path + { + vFileDialogInternal.puFileManager.SetCurrentPath(bookmark.path); + vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); + res = true; + } + } + ImGui::PopID(); + if (ImGui::IsItemHovered()) + ImGui::SetTooltip("%s", bookmark.path.c_str()); //-V111 + } + } + prBookmarkClipper.End(); + } - ImGui::EndChild(); + ImGui::EndChild(); - return res; - } + return res; + } - std::string IGFD::BookMarkFeature::SerializeBookmarks() - { - std::string res; + std::string IGFD::BookMarkFeature::SerializeBookmarks() + { + std::string res; - size_t idx = 0; - for (auto& it : prBookmarks) - { - if (idx++ != 0) - res += "##"; // ## because reserved by imgui, so an input text cant have ## - res += it.name + "##" + it.path; - } + size_t idx = 0; + for (auto& it : prBookmarks) + { + if (idx++ != 0) + res += "##"; // ## because reserved by imgui, so an input text cant have ## + res += it.name + "##" + it.path; + } - return res; - } + return res; + } - void IGFD::BookMarkFeature::DeserializeBookmarks(const std::string& vBookmarks) - { - if (!vBookmarks.empty()) - { - prBookmarks.clear(); - auto arr = IGFD::Utils::SplitStringToVector(vBookmarks, '#', false); - for (size_t i = 0; i < arr.size(); i += 2) - { - BookmarkStruct bookmark; - bookmark.name = arr[i]; - if (i + 1 < arr.size()) // for avoid crash if arr size is impair due to user mistake after edition - { - // if bad format we jump this bookmark - bookmark.path = arr[i + 1]; - prBookmarks.push_back(bookmark); - } - } - } - } + void IGFD::BookMarkFeature::DeserializeBookmarks(const std::string& vBookmarks) + { + if (!vBookmarks.empty()) + { + prBookmarks.clear(); + auto arr = IGFD::Utils::SplitStringToVector(vBookmarks, '#', false); + for (size_t i = 0; i < arr.size(); i += 2) + { + BookmarkStruct bookmark; + bookmark.name = arr[i]; + if (i + 1 < arr.size()) // for avoid crash if arr size is impair due to user mistake after edition + { + // if bad format we jump this bookmark + bookmark.path = arr[i + 1]; + prBookmarks.push_back(bookmark); + } + } + } + } #endif // USE_BOOKMARK - ///////////////////////////////////////////////////////////////////////////////////// - //// KEY EXPLORER FEATURE /////////////////////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// KEY EXPLORER FEATURE /////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - KeyExplorerFeature::KeyExplorerFeature() = default; + KeyExplorerFeature::KeyExplorerFeature() = default; #ifdef USE_EXPLORATION_BY_KEYS - bool IGFD::KeyExplorerFeature::prLocateItem_Loop(FileDialogInternal& vFileDialogInternal, ImWchar vC) - { - bool found = false; + bool IGFD::KeyExplorerFeature::prLocateItem_Loop(FileDialogInternal& vFileDialogInternal, ImWchar vC) + { + bool found = false; - auto& fdi = vFileDialogInternal.puFileManager; - if (!fdi.IsFilteredListEmpty()) - { - auto countFiles = fdi.GetFilteredListSize(); - for (size_t i = prLocateFileByInputChar_lastFileIdx; i < countFiles; i++) - { - auto nfo = fdi.GetFilteredFileAt(i); - if (nfo.use_count()) - { - if (nfo->fileNameExt_optimized[0] == vC || // lower case search //-V522 - nfo->fileNameExt[0] == vC) // maybe upper case search - { - //float p = ((float)i) * ImGui::GetTextLineHeightWithSpacing(); - float p = (float)((double)i / (double)countFiles) * ImGui::GetScrollMaxY(); - ImGui::SetScrollY(p); - prLocateFileByInputChar_lastFound = true; - prLocateFileByInputChar_lastFileIdx = i; - prStartFlashItem(prLocateFileByInputChar_lastFileIdx); + auto& fdi = vFileDialogInternal.puFileManager; + if (!fdi.IsFilteredListEmpty()) + { + auto countFiles = fdi.GetFilteredListSize(); + for (size_t i = prLocateFileByInputChar_lastFileIdx; i < countFiles; i++) + { + auto nfo = fdi.GetFilteredFileAt(i); + if (nfo.use_count()) + { + if (nfo->fileNameExt_optimized[0] == vC || // lower case search //-V522 + nfo->fileNameExt[0] == vC) // maybe upper case search + { + //float p = ((float)i) * ImGui::GetTextLineHeightWithSpacing(); + float p = (float)((double)i / (double)countFiles) * ImGui::GetScrollMaxY(); + ImGui::SetScrollY(p); + prLocateFileByInputChar_lastFound = true; + prLocateFileByInputChar_lastFileIdx = i; + prStartFlashItem(prLocateFileByInputChar_lastFileIdx); - auto infos = fdi.GetFilteredFileAt(prLocateFileByInputChar_lastFileIdx); - if (infos.use_count()) - { - if (infos->fileType == 'd') //-V522 - { - if (fdi.puDLGDirectoryMode) // directory chooser - { - fdi.SelectFileName(vFileDialogInternal, infos); - } - } - else - { - fdi.SelectFileName(vFileDialogInternal, infos); - } + auto infos = fdi.GetFilteredFileAt(prLocateFileByInputChar_lastFileIdx); + if (infos.use_count()) + { + if (infos->fileType == 'd') //-V522 + { + if (fdi.puDLGDirectoryMode) // directory chooser + { + fdi.SelectFileName(vFileDialogInternal, infos); + } + } + else + { + fdi.SelectFileName(vFileDialogInternal, infos); + } - found = true; - break; - } - } - } - } - } + found = true; + break; + } + } + } + } + } - return found; - } + return found; + } - void IGFD::KeyExplorerFeature::prLocateByInputKey(FileDialogInternal& vFileDialogInternal) - { - ImGuiContext& g = *GImGui; - auto& fdi = vFileDialogInternal.puFileManager; - if (!g.ActiveId && !fdi.IsFilteredListEmpty()) - { - auto& queueChar = ImGui::GetIO().InputQueueCharacters; - auto countFiles = fdi.GetFilteredListSize(); + void IGFD::KeyExplorerFeature::prLocateByInputKey(FileDialogInternal& vFileDialogInternal) + { + ImGuiContext& g = *GImGui; + auto& fdi = vFileDialogInternal.puFileManager; + if (!g.ActiveId && !fdi.IsFilteredListEmpty()) + { + auto& queueChar = ImGui::GetIO().InputQueueCharacters; + auto countFiles = fdi.GetFilteredListSize(); - // point by char - if (!queueChar.empty()) - { - ImWchar c = queueChar.back(); - if (prLocateFileByInputChar_InputQueueCharactersSize != queueChar.size()) - { - if (c == prLocateFileByInputChar_lastChar) // next file starting with same char until - { - if (prLocateFileByInputChar_lastFileIdx < countFiles - 1U) - prLocateFileByInputChar_lastFileIdx++; - else - prLocateFileByInputChar_lastFileIdx = 0; - } + // point by char + if (!queueChar.empty()) + { + ImWchar c = queueChar.back(); + if (prLocateFileByInputChar_InputQueueCharactersSize != queueChar.size()) + { + if (c == prLocateFileByInputChar_lastChar) // next file starting with same char until + { + if (prLocateFileByInputChar_lastFileIdx < countFiles - 1U) + prLocateFileByInputChar_lastFileIdx++; + else + prLocateFileByInputChar_lastFileIdx = 0; + } - if (!prLocateItem_Loop(vFileDialogInternal, c)) - { - // not found, loop again from 0 this time - prLocateFileByInputChar_lastFileIdx = 0; - prLocateItem_Loop(vFileDialogInternal, c); - } + if (!prLocateItem_Loop(vFileDialogInternal, c)) + { + // not found, loop again from 0 this time + prLocateFileByInputChar_lastFileIdx = 0; + prLocateItem_Loop(vFileDialogInternal, c); + } - prLocateFileByInputChar_lastChar = c; - } - } + prLocateFileByInputChar_lastChar = c; + } + } - prLocateFileByInputChar_InputQueueCharactersSize = queueChar.size(); - } - } + prLocateFileByInputChar_InputQueueCharactersSize = queueChar.size(); + } + } - void IGFD::KeyExplorerFeature::prExploreWithkeys(FileDialogInternal& vFileDialogInternal, ImGuiID vListViewID) - { - auto& fdi = vFileDialogInternal.puFileManager; - if (!fdi.IsFilteredListEmpty()) - { - bool canWeExplore = false; - bool hasNav = (ImGui::GetIO().ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard); - - ImGuiContext& g = *GImGui; - if (!hasNav && !g.ActiveId) // no nav and no activated inputs - canWeExplore = true; + void IGFD::KeyExplorerFeature::prExploreWithkeys(FileDialogInternal& vFileDialogInternal, ImGuiID vListViewID) + { + auto& fdi = vFileDialogInternal.puFileManager; + if (!fdi.IsFilteredListEmpty()) + { + bool canWeExplore = false; + bool hasNav = (ImGui::GetIO().ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard); + + ImGuiContext& g = *GImGui; + if (!hasNav && !g.ActiveId) // no nav and no activated inputs + canWeExplore = true; - if (g.NavId && g.NavId == vListViewID) - { - if (ImGui::IsKeyPressedMap(IGFD_KEY_ENTER) || - ImGui::IsKeyPressedMap(ImGuiKey_KeyPadEnter) || - ImGui::IsKeyPressedMap(ImGuiKey_Space)) - { - ImGui::ActivateItem(vListViewID); - ImGui::SetActiveID(vListViewID, g.CurrentWindow); - } - } - - if (vListViewID == g.LastActiveId-1) // if listview id is the last acticated nav id (ImGui::ActivateItem(vListViewID);) - canWeExplore = true; + if (g.NavId && g.NavId == vListViewID) + { + if (ImGui::IsKeyPressedMap(IGFD_KEY_ENTER) || + ImGui::IsKeyPressedMap(ImGuiKey_KeyPadEnter) || + ImGui::IsKeyPressedMap(ImGuiKey_Space)) + { + ImGui::ActivateItem(vListViewID); + ImGui::SetActiveID(vListViewID, g.CurrentWindow); + } + } + + if (vListViewID == g.LastActiveId-1) // if listview id is the last acticated nav id (ImGui::ActivateItem(vListViewID);) + canWeExplore = true; - if (canWeExplore) - { - if (ImGui::IsKeyPressedMap(ImGuiKey_Escape)) - { - ImGui::ClearActiveID(); - g.LastActiveId = 0; - } + if (canWeExplore) + { + if (ImGui::IsKeyPressedMap(ImGuiKey_Escape)) + { + ImGui::ClearActiveID(); + g.LastActiveId = 0; + } - auto countFiles = fdi.GetFilteredListSize(); + auto countFiles = fdi.GetFilteredListSize(); - // explore - bool exploreByKey = false; - bool enterInDirectory = false; - bool exitDirectory = false; + // explore + bool exploreByKey = false; + bool enterInDirectory = false; + bool exitDirectory = false; - if ((hasNav && ImGui::IsKeyPressedMap(ImGuiKey_UpArrow)) || (!hasNav && ImGui::IsKeyPressed(IGFD_KEY_UP))) - { - exploreByKey = true; - if (prLocateFileByInputChar_lastFileIdx > 0) - prLocateFileByInputChar_lastFileIdx--; - else - prLocateFileByInputChar_lastFileIdx = countFiles - 1U; - } - else if ((hasNav && ImGui::IsKeyPressedMap(ImGuiKey_DownArrow)) || (!hasNav && ImGui::IsKeyPressed(IGFD_KEY_DOWN))) - { - exploreByKey = true; - if (prLocateFileByInputChar_lastFileIdx < countFiles - 1U) - prLocateFileByInputChar_lastFileIdx++; - else - prLocateFileByInputChar_lastFileIdx = 0U; - } - else if (ImGui::IsKeyReleased(IGFD_KEY_ENTER)) - { - exploreByKey = true; - enterInDirectory = true; - } - else if (ImGui::IsKeyReleased(IGFD_KEY_BACKSPACE)) - { - exploreByKey = true; - exitDirectory = true; - } + if ((hasNav && ImGui::IsKeyPressedMap(ImGuiKey_UpArrow)) || (!hasNav && ImGui::IsKeyPressed(IGFD_KEY_UP))) + { + exploreByKey = true; + if (prLocateFileByInputChar_lastFileIdx > 0) + prLocateFileByInputChar_lastFileIdx--; + else + prLocateFileByInputChar_lastFileIdx = countFiles - 1U; + } + else if ((hasNav && ImGui::IsKeyPressedMap(ImGuiKey_DownArrow)) || (!hasNav && ImGui::IsKeyPressed(IGFD_KEY_DOWN))) + { + exploreByKey = true; + if (prLocateFileByInputChar_lastFileIdx < countFiles - 1U) + prLocateFileByInputChar_lastFileIdx++; + else + prLocateFileByInputChar_lastFileIdx = 0U; + } + else if (ImGui::IsKeyReleased(IGFD_KEY_ENTER)) + { + exploreByKey = true; + enterInDirectory = true; + } + else if (ImGui::IsKeyReleased(IGFD_KEY_BACKSPACE)) + { + exploreByKey = true; + exitDirectory = true; + } - if (exploreByKey) - { - //float totalHeight = prFilteredFileList.size() * ImGui::GetTextLineHeightWithSpacing(); - float p = (float)((double)prLocateFileByInputChar_lastFileIdx / (double)(countFiles - 1U)) * ImGui::GetScrollMaxY();// seems not udpated in tables version outside tables - //float p = ((float)locateFileByInputChar_lastFileIdx) * ImGui::GetTextLineHeightWithSpacing(); - ImGui::SetScrollY(p); - prStartFlashItem(prLocateFileByInputChar_lastFileIdx); + if (exploreByKey) + { + //float totalHeight = prFilteredFileList.size() * ImGui::GetTextLineHeightWithSpacing(); + float p = (float)((double)prLocateFileByInputChar_lastFileIdx / (double)(countFiles - 1U)) * ImGui::GetScrollMaxY();// seems not udpated in tables version outside tables + //float p = ((float)locateFileByInputChar_lastFileIdx) * ImGui::GetTextLineHeightWithSpacing(); + ImGui::SetScrollY(p); + prStartFlashItem(prLocateFileByInputChar_lastFileIdx); - auto infos = fdi.GetFilteredFileAt(prLocateFileByInputChar_lastFileIdx); - if (infos.use_count()) - { - if (infos->fileType == 'd') //-V522 - { - if (!fdi.puDLGDirectoryMode || enterInDirectory) - { - if (enterInDirectory) - { - if (fdi.SelectDirectory(infos)) - { - // changement de repertoire - vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); - if (prLocateFileByInputChar_lastFileIdx > countFiles - 1U) - { - prLocateFileByInputChar_lastFileIdx = 0; - } - } - } - } - else // directory chooser - { - fdi.SelectFileName(vFileDialogInternal, infos); - } - } - else - { - fdi.SelectFileName(vFileDialogInternal, infos); - } + auto infos = fdi.GetFilteredFileAt(prLocateFileByInputChar_lastFileIdx); + if (infos.use_count()) + { + if (infos->fileType == 'd') //-V522 + { + if (!fdi.puDLGDirectoryMode || enterInDirectory) + { + if (enterInDirectory) + { + if (fdi.SelectDirectory(infos)) + { + // changement de repertoire + vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); + if (prLocateFileByInputChar_lastFileIdx > countFiles - 1U) + { + prLocateFileByInputChar_lastFileIdx = 0; + } + } + } + } + else // directory chooser + { + fdi.SelectFileName(vFileDialogInternal, infos); + } + } + else + { + fdi.SelectFileName(vFileDialogInternal, infos); + } - if (exitDirectory) - { - auto nfo = std::make_shared(); - nfo->fileNameExt = ".."; + if (exitDirectory) + { + auto nfo = std::make_shared(); + nfo->fileNameExt = ".."; - if (fdi.SelectDirectory(nfo)) - { - // changement de repertoire - vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); - if (prLocateFileByInputChar_lastFileIdx > countFiles - 1U) - { - prLocateFileByInputChar_lastFileIdx = 0; - } - } + if (fdi.SelectDirectory(nfo)) + { + // changement de repertoire + vFileDialogInternal.puFileManager.OpenCurrentPath(vFileDialogInternal); + if (prLocateFileByInputChar_lastFileIdx > countFiles - 1U) + { + prLocateFileByInputChar_lastFileIdx = 0; + } + } #ifdef WIN32 - else - { - if (fdi.GetComposerSize() == 1U) - { - if (fdi.GetDrives()) - { - fdi.ApplyFilteringOnFileList(vFileDialogInternal); - } - } - } + else + { + if (fdi.GetComposerSize() == 1U) + { + if (fdi.GetDrives()) + { + fdi.ApplyFilteringOnFileList(vFileDialogInternal); + } + } + } #endif // WIN32 - } - } - } - } - } - } + } + } + } + } + } + } - bool IGFD::KeyExplorerFeature::prFlashableSelectable(const char* label, bool selected, - ImGuiSelectableFlags flags, bool vFlashing, const ImVec2& size_arg) - { - using namespace ImGui; + bool IGFD::KeyExplorerFeature::prFlashableSelectable(const char* label, bool selected, + ImGuiSelectableFlags flags, bool vFlashing, const ImVec2& size_arg) + { + using namespace ImGui; - ImGuiWindow* window = GetCurrentWindow(); - if (window->SkipItems) - return false; + ImGuiWindow* window = GetCurrentWindow(); + if (window->SkipItems) + return false; - ImGuiContext& g = *GImGui; - const ImGuiStyle& style = g.Style; + ImGuiContext& g = *GImGui; + const ImGuiStyle& style = g.Style; - // Submit label or explicit size to ItemSize(), whereas ItemAdd() will submit a larger/spanning rectangle. - ImGuiID id = window->GetID(label); - ImVec2 label_size = CalcTextSize(label, nullptr, true); - ImVec2 size(size_arg.x != 0.0f ? size_arg.x : label_size.x, size_arg.y != 0.0f ? size_arg.y : label_size.y); //-V550 - ImVec2 pos = window->DC.CursorPos; - pos.y += window->DC.CurrLineTextBaseOffset; - ItemSize(size, 0.0f); + // Submit label or explicit size to ItemSize(), whereas ItemAdd() will submit a larger/spanning rectangle. + ImGuiID id = window->GetID(label); + ImVec2 label_size = CalcTextSize(label, nullptr, true); + ImVec2 size(size_arg.x != 0.0f ? size_arg.x : label_size.x, size_arg.y != 0.0f ? size_arg.y : label_size.y); //-V550 + ImVec2 pos = window->DC.CursorPos; + pos.y += window->DC.CurrLineTextBaseOffset; + ItemSize(size, 0.0f); - // Fill horizontal space - // We don't support (size < 0.0f) in Selectable() because the ItemSpacing extension would make explicitly right-aligned sizes not visibly match other widgets. - const bool span_all_columns = (flags & ImGuiSelectableFlags_SpanAllColumns) != 0; - const float min_x = span_all_columns ? window->ParentWorkRect.Min.x : pos.x; - const float max_x = span_all_columns ? window->ParentWorkRect.Max.x : window->WorkRect.Max.x; - if (fabs(size_arg.x) < FLT_EPSILON || (flags & ImGuiSelectableFlags_SpanAvailWidth)) - size.x = ImMax(label_size.x, max_x - min_x); + // Fill horizontal space + // We don't support (size < 0.0f) in Selectable() because the ItemSpacing extension would make explicitly right-aligned sizes not visibly match other widgets. + const bool span_all_columns = (flags & ImGuiSelectableFlags_SpanAllColumns) != 0; + const float min_x = span_all_columns ? window->ParentWorkRect.Min.x : pos.x; + const float max_x = span_all_columns ? window->ParentWorkRect.Max.x : window->WorkRect.Max.x; + if (fabs(size_arg.x) < FLT_EPSILON || (flags & ImGuiSelectableFlags_SpanAvailWidth)) + size.x = ImMax(label_size.x, max_x - min_x); - // Text stays at the submission position, but bounding box may be extended on both sides - const ImVec2 text_min = pos; - const ImVec2 text_max(min_x + size.x, pos.y + size.y); + // Text stays at the submission position, but bounding box may be extended on both sides + const ImVec2 text_min = pos; + const ImVec2 text_max(min_x + size.x, pos.y + size.y); - // Selectables are meant to be tightly packed together with no click-gap, so we extend their box to cover spacing between selectable. - ImRect bb(min_x, pos.y, text_max.x, text_max.y); - if ((flags & ImGuiSelectableFlags_NoPadWithHalfSpacing) == 0) - { - const float spacing_x = span_all_columns ? 0.0f : style.ItemSpacing.x; - const float spacing_y = style.ItemSpacing.y; - const float spacing_L = IM_FLOOR(spacing_x * 0.50f); - const float spacing_U = IM_FLOOR(spacing_y * 0.50f); - bb.Min.x -= spacing_L; - bb.Min.y -= spacing_U; - bb.Max.x += (spacing_x - spacing_L); - bb.Max.y += (spacing_y - spacing_U); - } - //if (g.IO.KeyCtrl) { GetForegroundDrawList()->AddRect(bb.Min, bb.Max, IM_COL32(0, 255, 0, 255)); } + // Selectables are meant to be tightly packed together with no click-gap, so we extend their box to cover spacing between selectable. + ImRect bb(min_x, pos.y, text_max.x, text_max.y); + if ((flags & ImGuiSelectableFlags_NoPadWithHalfSpacing) == 0) + { + const float spacing_x = span_all_columns ? 0.0f : style.ItemSpacing.x; + const float spacing_y = style.ItemSpacing.y; + const float spacing_L = IM_FLOOR(spacing_x * 0.50f); + const float spacing_U = IM_FLOOR(spacing_y * 0.50f); + bb.Min.x -= spacing_L; + bb.Min.y -= spacing_U; + bb.Max.x += (spacing_x - spacing_L); + bb.Max.y += (spacing_y - spacing_U); + } + //if (g.IO.KeyCtrl) { GetForegroundDrawList()->AddRect(bb.Min, bb.Max, IM_COL32(0, 255, 0, 255)); } - // Modify ClipRect for the ItemAdd(), faster than doing a PushColumnsBackground/PushTableBackground for every Selectable.. - const float backup_clip_rect_min_x = window->ClipRect.Min.x; - const float backup_clip_rect_max_x = window->ClipRect.Max.x; - if (span_all_columns) - { - window->ClipRect.Min.x = window->ParentWorkRect.Min.x; - window->ClipRect.Max.x = window->ParentWorkRect.Max.x; - } + // Modify ClipRect for the ItemAdd(), faster than doing a PushColumnsBackground/PushTableBackground for every Selectable.. + const float backup_clip_rect_min_x = window->ClipRect.Min.x; + const float backup_clip_rect_max_x = window->ClipRect.Max.x; + if (span_all_columns) + { + window->ClipRect.Min.x = window->ParentWorkRect.Min.x; + window->ClipRect.Max.x = window->ParentWorkRect.Max.x; + } - bool item_add; - const bool disabled_item = (flags & ImGuiSelectableFlags_Disabled) != 0; - if (disabled_item) - { - ImGuiItemFlags backup_item_flags = g.CurrentItemFlags; - g.CurrentItemFlags |= ImGuiItemFlags_Disabled; - item_add = ItemAdd(bb, id); - g.CurrentItemFlags = backup_item_flags; - } - else - { - item_add = ItemAdd(bb, id); - } + bool item_add; + const bool disabled_item = (flags & ImGuiSelectableFlags_Disabled) != 0; + if (disabled_item) + { + ImGuiItemFlags backup_item_flags = g.CurrentItemFlags; + g.CurrentItemFlags |= ImGuiItemFlags_Disabled; + item_add = ItemAdd(bb, id); + g.CurrentItemFlags = backup_item_flags; + } + else + { + item_add = ItemAdd(bb, id); + } - if (span_all_columns) - { - window->ClipRect.Min.x = backup_clip_rect_min_x; - window->ClipRect.Max.x = backup_clip_rect_max_x; - } + if (span_all_columns) + { + window->ClipRect.Min.x = backup_clip_rect_min_x; + window->ClipRect.Max.x = backup_clip_rect_max_x; + } - if (!item_add) - return false; + if (!item_add) + return false; - const bool disabled_global = (g.CurrentItemFlags & ImGuiItemFlags_Disabled) != 0; - if (disabled_item && !disabled_global) // Only testing this as an optimization - BeginDisabled(true); + const bool disabled_global = (g.CurrentItemFlags & ImGuiItemFlags_Disabled) != 0; + if (disabled_item && !disabled_global) // Only testing this as an optimization + BeginDisabled(true); - // FIXME: We can standardize the behavior of those two, we could also keep the fast path of override ClipRect + full push on render only, - // which would be advantageous since most selectable are not selected. - if (span_all_columns && window->DC.CurrentColumns) - PushColumnsBackground(); - else if (span_all_columns && g.CurrentTable) - TablePushBackgroundChannel(); + // FIXME: We can standardize the behavior of those two, we could also keep the fast path of override ClipRect + full push on render only, + // which would be advantageous since most selectable are not selected. + if (span_all_columns && window->DC.CurrentColumns) + PushColumnsBackground(); + else if (span_all_columns && g.CurrentTable) + TablePushBackgroundChannel(); - // We use NoHoldingActiveID on menus so user can click and _hold_ on a menu then drag to browse child entries - ImGuiButtonFlags button_flags = 0; - if (flags & ImGuiSelectableFlags_NoHoldingActiveID) { button_flags |= ImGuiButtonFlags_NoHoldingActiveId; } - if (flags & ImGuiSelectableFlags_SelectOnClick) { button_flags |= ImGuiButtonFlags_PressedOnClick; } - if (flags & ImGuiSelectableFlags_SelectOnRelease) { button_flags |= ImGuiButtonFlags_PressedOnRelease; } - if (flags & ImGuiSelectableFlags_AllowDoubleClick) { button_flags |= ImGuiButtonFlags_PressedOnClickRelease | ImGuiButtonFlags_PressedOnDoubleClick; } - if (flags & ImGuiSelectableFlags_AllowItemOverlap) { button_flags |= ImGuiButtonFlags_AllowItemOverlap; } + // We use NoHoldingActiveID on menus so user can click and _hold_ on a menu then drag to browse child entries + ImGuiButtonFlags button_flags = 0; + if (flags & ImGuiSelectableFlags_NoHoldingActiveID) { button_flags |= ImGuiButtonFlags_NoHoldingActiveId; } + if (flags & ImGuiSelectableFlags_SelectOnClick) { button_flags |= ImGuiButtonFlags_PressedOnClick; } + if (flags & ImGuiSelectableFlags_SelectOnRelease) { button_flags |= ImGuiButtonFlags_PressedOnRelease; } + if (flags & ImGuiSelectableFlags_AllowDoubleClick) { button_flags |= ImGuiButtonFlags_PressedOnClickRelease | ImGuiButtonFlags_PressedOnDoubleClick; } + if (flags & ImGuiSelectableFlags_AllowItemOverlap) { button_flags |= ImGuiButtonFlags_AllowItemOverlap; } - const bool was_selected = selected; - bool hovered, held; - bool pressed = ButtonBehavior(bb, id, &hovered, &held, button_flags); + const bool was_selected = selected; + bool hovered, held; + bool pressed = ButtonBehavior(bb, id, &hovered, &held, button_flags); - // Auto-select when moved into - // - This will be more fully fleshed in the range-select branch - // - This is not exposed as it won't nicely work with some user side handling of shift/control - // - We cannot do 'if (g.NavJustMovedToId != id) { selected = false; pressed = was_selected; }' for two reasons - // - (1) it would require focus scope to be set, need exposing PushFocusScope() or equivalent (e.g. BeginSelection() calling PushFocusScope()) - // - (2) usage will fail with clipped items - // The multi-select API aim to fix those issues, e.g. may be replaced with a BeginSelection() API. - if ((flags & ImGuiSelectableFlags_SelectOnNav) && g.NavJustMovedToId != 0 && g.NavJustMovedToFocusScopeId == window->DC.NavFocusScopeIdCurrent) - if (g.NavJustMovedToId == id) - selected = pressed = true; + // Auto-select when moved into + // - This will be more fully fleshed in the range-select branch + // - This is not exposed as it won't nicely work with some user side handling of shift/control + // - We cannot do 'if (g.NavJustMovedToId != id) { selected = false; pressed = was_selected; }' for two reasons + // - (1) it would require focus scope to be set, need exposing PushFocusScope() or equivalent (e.g. BeginSelection() calling PushFocusScope()) + // - (2) usage will fail with clipped items + // The multi-select API aim to fix those issues, e.g. may be replaced with a BeginSelection() API. + if ((flags & ImGuiSelectableFlags_SelectOnNav) && g.NavJustMovedToId != 0 && g.NavJustMovedToFocusScopeId == window->DC.NavFocusScopeIdCurrent) + if (g.NavJustMovedToId == id) + selected = pressed = true; - // Update NavId when clicking or when Hovering (this doesn't happen on most widgets), so navigation can be resumed with gamepad/keyboard - if (pressed || (hovered && (flags & ImGuiSelectableFlags_SetNavIdOnHover))) - { - if (!g.NavDisableMouseHover && g.NavWindow == window && g.NavLayer == window->DC.NavLayerCurrent) - { - SetNavID(id, window->DC.NavLayerCurrent, window->DC.NavFocusScopeIdCurrent, ImRect(bb.Min - window->Pos, bb.Max - window->Pos)); - g.NavDisableHighlight = true; - } - } - if (pressed) - MarkItemEdited(id); + // Update NavId when clicking or when Hovering (this doesn't happen on most widgets), so navigation can be resumed with gamepad/keyboard + if (pressed || (hovered && (flags & ImGuiSelectableFlags_SetNavIdOnHover))) + { + if (!g.NavDisableMouseHover && g.NavWindow == window && g.NavLayer == window->DC.NavLayerCurrent) + { + SetNavID(id, window->DC.NavLayerCurrent, window->DC.NavFocusScopeIdCurrent, ImRect(bb.Min - window->Pos, bb.Max - window->Pos)); + g.NavDisableHighlight = true; + } + } + if (pressed) + MarkItemEdited(id); - if (flags & ImGuiSelectableFlags_AllowItemOverlap) - SetItemAllowOverlap(); + if (flags & ImGuiSelectableFlags_AllowItemOverlap) + SetItemAllowOverlap(); - // In this branch, Selectable() cannot toggle the selection so this will never trigger. - if (selected != was_selected) //-V547 - g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_ToggledSelection; + // In this branch, Selectable() cannot toggle the selection so this will never trigger. + if (selected != was_selected) //-V547 + g.LastItemData.StatusFlags |= ImGuiItemStatusFlags_ToggledSelection; - // Render - if ((held && (flags & ImGuiSelectableFlags_DrawHoveredWhenHeld)) || vFlashing) - hovered = true; - if (hovered || selected) - { - const ImU32 col = GetColorU32((held && hovered) ? ImGuiCol_HeaderActive : hovered ? ImGuiCol_HeaderHovered : ImGuiCol_Header); - RenderFrame(bb.Min, bb.Max, col, false, 0.0f); - } - RenderNavHighlight(bb, id, ImGuiNavHighlightFlags_TypeThin | ImGuiNavHighlightFlags_NoRounding); + // Render + if ((held && (flags & ImGuiSelectableFlags_DrawHoveredWhenHeld)) || vFlashing) + hovered = true; + if (hovered || selected) + { + const ImU32 col = GetColorU32((held && hovered) ? ImGuiCol_HeaderActive : hovered ? ImGuiCol_HeaderHovered : ImGuiCol_Header); + RenderFrame(bb.Min, bb.Max, col, false, 0.0f); + } + RenderNavHighlight(bb, id, ImGuiNavHighlightFlags_TypeThin | ImGuiNavHighlightFlags_NoRounding); - if (span_all_columns && window->DC.CurrentColumns) - PopColumnsBackground(); - else if (span_all_columns && g.CurrentTable) - TablePopBackgroundChannel(); + if (span_all_columns && window->DC.CurrentColumns) + PopColumnsBackground(); + else if (span_all_columns && g.CurrentTable) + TablePopBackgroundChannel(); - RenderTextClipped(text_min, text_max, label, nullptr, &label_size, style.SelectableTextAlign, &bb); + RenderTextClipped(text_min, text_max, label, nullptr, &label_size, style.SelectableTextAlign, &bb); - // Automatically close popups - if (pressed && (window->Flags & ImGuiWindowFlags_Popup) && !(flags & ImGuiSelectableFlags_DontClosePopups) && !(g.LastItemData.InFlags & ImGuiItemFlags_SelectableDontClosePopup)) - CloseCurrentPopup(); + // Automatically close popups + if (pressed && (window->Flags & ImGuiWindowFlags_Popup) && !(flags & ImGuiSelectableFlags_DontClosePopups) && !(g.LastItemData.InFlags & ImGuiItemFlags_SelectableDontClosePopup)) + CloseCurrentPopup(); - if (disabled_item && !disabled_global) - EndDisabled(); + if (disabled_item && !disabled_global) + EndDisabled(); - IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags); - return pressed; //-V1020 - } + IMGUI_TEST_ENGINE_ITEM_INFO(id, label, g.LastItemData.StatusFlags); + return pressed; //-V1020 + } - void IGFD::KeyExplorerFeature::prStartFlashItem(size_t vIdx) - { - prFlashAlpha = 1.0f; - prFlashedItem = vIdx; - } + void IGFD::KeyExplorerFeature::prStartFlashItem(size_t vIdx) + { + prFlashAlpha = 1.0f; + prFlashedItem = vIdx; + } - bool IGFD::KeyExplorerFeature::prBeginFlashItem(size_t vIdx) - { - bool res = false; + bool IGFD::KeyExplorerFeature::prBeginFlashItem(size_t vIdx) + { + bool res = false; - if (prFlashedItem == vIdx && - std::abs(prFlashAlpha - 0.0f) > 0.00001f) - { - prFlashAlpha -= prFlashAlphaAttenInSecs * ImGui::GetIO().DeltaTime; - if (prFlashAlpha < 0.0f) prFlashAlpha = 0.0f; + if (prFlashedItem == vIdx && + std::abs(prFlashAlpha - 0.0f) > 0.00001f) + { + prFlashAlpha -= prFlashAlphaAttenInSecs * ImGui::GetIO().DeltaTime; + if (prFlashAlpha < 0.0f) prFlashAlpha = 0.0f; - ImVec4 hov = ImGui::GetStyleColorVec4(ImGuiCol_HeaderHovered); - hov.w = prFlashAlpha; - ImGui::PushStyleColor(ImGuiCol_HeaderHovered, hov); - res = true; - } + ImVec4 hov = ImGui::GetStyleColorVec4(ImGuiCol_HeaderHovered); + hov.w = prFlashAlpha; + ImGui::PushStyleColor(ImGuiCol_HeaderHovered, hov); + res = true; + } - return res; - } + return res; + } - void IGFD::KeyExplorerFeature::prEndFlashItem() - { - ImGui::PopStyleColor(); - } + void IGFD::KeyExplorerFeature::prEndFlashItem() + { + ImGui::PopStyleColor(); + } - void IGFD::KeyExplorerFeature::SetFlashingAttenuationInSeconds(float vAttenValue) - { - prFlashAlphaAttenInSecs = 1.0f / ImMax(vAttenValue, 0.01f); - } + void IGFD::KeyExplorerFeature::SetFlashingAttenuationInSeconds(float vAttenValue) + { + prFlashAlphaAttenInSecs = 1.0f / ImMax(vAttenValue, 0.01f); + } #endif // USE_EXPLORATION_BY_KEYS - ///////////////////////////////////////////////////////////////////////////////////// - //// FILE DIALOG CONSTRUCTOR / DESTRUCTOR /////////////////////////////////////////// - ///////////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// + //// FILE DIALOG CONSTRUCTOR / DESTRUCTOR /////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////////// - IGFD::FileDialog::FileDialog() : BookMarkFeature(), KeyExplorerFeature(), ThumbnailFeature() {DpiScale=1.0f; singleClickSel=false; mobileMode=false;} - IGFD::FileDialog::~FileDialog() = default; + IGFD::FileDialog::FileDialog() : BookMarkFeature(), KeyExplorerFeature(), ThumbnailFeature() {DpiScale=1.0f; singleClickSel=false; mobileMode=false;} + IGFD::FileDialog::~FileDialog() = default; - ////////////////////////////////////////////////////////////////////////////////////////////////// - ///// FILE DIALOG STANDARD DIALOG //////////////////////////////////////////////////////////////// - ////////////////////////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////////////////////////// + ///// FILE DIALOG STANDARD DIALOG //////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////////////////////////// - // path and fileNameExt can be specified - void IGFD::FileDialog::OpenDialog( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vPath, - const std::string& vFileName, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + // path and fileNameExt can be specified + void IGFD::FileDialog::OpenDialog( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vPath, + const std::string& vFileName, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - prFileDialogInternal.ResetForNewDialog(); + prFileDialogInternal.ResetForNewDialog(); - prFileDialogInternal.puDLGkey = vKey; - prFileDialogInternal.puDLGtitle = vTitle; - prFileDialogInternal.puDLGuserDatas = vUserDatas; - prFileDialogInternal.puDLGflags = vFlags; + prFileDialogInternal.puDLGkey = vKey; + prFileDialogInternal.puDLGtitle = vTitle; + prFileDialogInternal.puDLGuserDatas = vUserDatas; + prFileDialogInternal.puDLGflags = vFlags; prFileDialogInternal.puDLGselFun = vSelectFun; - prFileDialogInternal.puDLGoptionsPane = nullptr; - prFileDialogInternal.puDLGoptionsPaneWidth = 0.0f; - prFileDialogInternal.puDLGmodal = false; + prFileDialogInternal.puDLGoptionsPane = nullptr; + prFileDialogInternal.puDLGoptionsPaneWidth = 0.0f; + prFileDialogInternal.puDLGmodal = false; - prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); - prFileDialogInternal.puFilterManager.ParseFilters(vFilters); + prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); + prFileDialogInternal.puFilterManager.ParseFilters(vFilters); - prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); - if (vPath.empty()) - prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); - else - prFileDialogInternal.puFileManager.puDLGpath = vPath; - prFileDialogInternal.puFileManager.SetCurrentPath(vPath); - prFileDialogInternal.puFileManager.puDLGcountSelectionMax = (size_t)vCountSelectionMax; - prFileDialogInternal.puFileManager.SetDefaultFileName(vFileName); + prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); + if (vPath.empty()) + prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); + else + prFileDialogInternal.puFileManager.puDLGpath = vPath; + prFileDialogInternal.puFileManager.SetCurrentPath(vPath); + prFileDialogInternal.puFileManager.puDLGcountSelectionMax = (size_t)vCountSelectionMax; + prFileDialogInternal.puFileManager.SetDefaultFileName(vFileName); - prFileDialogInternal.puFileManager.ClearAll(); - - prFileDialogInternal.puShowDialog = true; // open dialog - } + prFileDialogInternal.puFileManager.ClearAll(); + + prFileDialogInternal.puShowDialog = true; // open dialog + } - // path and filename are obtained from filePathName - void IGFD::FileDialog::OpenDialog( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vFilePathName, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + // path and filename are obtained from filePathName + void IGFD::FileDialog::OpenDialog( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vFilePathName, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - prFileDialogInternal.ResetForNewDialog(); + prFileDialogInternal.ResetForNewDialog(); - prFileDialogInternal.puDLGkey = vKey; - prFileDialogInternal.puDLGtitle = vTitle; - prFileDialogInternal.puDLGoptionsPane = nullptr; - prFileDialogInternal.puDLGoptionsPaneWidth = 0.0f; - prFileDialogInternal.puDLGuserDatas = vUserDatas; - prFileDialogInternal.puDLGflags = vFlags; + prFileDialogInternal.puDLGkey = vKey; + prFileDialogInternal.puDLGtitle = vTitle; + prFileDialogInternal.puDLGoptionsPane = nullptr; + prFileDialogInternal.puDLGoptionsPaneWidth = 0.0f; + prFileDialogInternal.puDLGuserDatas = vUserDatas; + prFileDialogInternal.puDLGflags = vFlags; prFileDialogInternal.puDLGselFun = vSelectFun; - prFileDialogInternal.puDLGmodal = false; + prFileDialogInternal.puDLGmodal = false; - auto ps = IGFD::Utils::ParsePathFileName(vFilePathName); - if (ps.isOk) - { - prFileDialogInternal.puFileManager.puDLGpath = ps.path; - prFileDialogInternal.puFileManager.SetDefaultFileName(""); - prFileDialogInternal.puFilterManager.puDLGdefaultExt = "." + ps.ext; - } - else - { - prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); - prFileDialogInternal.puFileManager.SetDefaultFileName(""); - prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); - } + auto ps = IGFD::Utils::ParsePathFileName(vFilePathName); + if (ps.isOk) + { + prFileDialogInternal.puFileManager.puDLGpath = ps.path; + prFileDialogInternal.puFileManager.SetDefaultFileName(""); + prFileDialogInternal.puFilterManager.puDLGdefaultExt = "." + ps.ext; + } + else + { + prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); + prFileDialogInternal.puFileManager.SetDefaultFileName(""); + prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); + } - prFileDialogInternal.puFilterManager.ParseFilters(vFilters); - prFileDialogInternal.puFilterManager.SetSelectedFilterWithExt( - prFileDialogInternal.puFilterManager.puDLGdefaultExt); - - prFileDialogInternal.puFileManager.SetCurrentPath(prFileDialogInternal.puFileManager.puDLGpath); + prFileDialogInternal.puFilterManager.ParseFilters(vFilters); + prFileDialogInternal.puFilterManager.SetSelectedFilterWithExt( + prFileDialogInternal.puFilterManager.puDLGdefaultExt); + + prFileDialogInternal.puFileManager.SetCurrentPath(prFileDialogInternal.puFileManager.puDLGpath); - prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); - prFileDialogInternal.puFileManager.puDLGcountSelectionMax = vCountSelectionMax; //-V101 + prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); + prFileDialogInternal.puFileManager.puDLGcountSelectionMax = vCountSelectionMax; //-V101 - prFileDialogInternal.puFileManager.ClearAll(); - - prFileDialogInternal.puShowDialog = true; - } + prFileDialogInternal.puFileManager.ClearAll(); + + prFileDialogInternal.puShowDialog = true; + } - // with pane - // path and fileNameExt can be specified - void IGFD::FileDialog::OpenDialog( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vPath, - const std::string& vFileName, - const PaneFun& vSidePane, - const float& vSidePaneWidth, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + // with pane + // path and fileNameExt can be specified + void IGFD::FileDialog::OpenDialog( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vPath, + const std::string& vFileName, + const PaneFun& vSidePane, + const float& vSidePaneWidth, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - prFileDialogInternal.ResetForNewDialog(); + prFileDialogInternal.ResetForNewDialog(); - prFileDialogInternal.puDLGkey = vKey; - prFileDialogInternal.puDLGtitle = vTitle; - prFileDialogInternal.puDLGuserDatas = vUserDatas; - prFileDialogInternal.puDLGflags = vFlags; + prFileDialogInternal.puDLGkey = vKey; + prFileDialogInternal.puDLGtitle = vTitle; + prFileDialogInternal.puDLGuserDatas = vUserDatas; + prFileDialogInternal.puDLGflags = vFlags; prFileDialogInternal.puDLGselFun = vSelectFun; - prFileDialogInternal.puDLGoptionsPane = vSidePane; - prFileDialogInternal.puDLGoptionsPaneWidth = vSidePaneWidth; - prFileDialogInternal.puDLGmodal = false; + prFileDialogInternal.puDLGoptionsPane = vSidePane; + prFileDialogInternal.puDLGoptionsPaneWidth = vSidePaneWidth; + prFileDialogInternal.puDLGmodal = false; - prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); - prFileDialogInternal.puFilterManager.ParseFilters(vFilters); + prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); + prFileDialogInternal.puFilterManager.ParseFilters(vFilters); - prFileDialogInternal.puFileManager.puDLGcountSelectionMax = (size_t)vCountSelectionMax; - prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); - if (vPath.empty()) - prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); - else - prFileDialogInternal.puFileManager.puDLGpath = vPath; + prFileDialogInternal.puFileManager.puDLGcountSelectionMax = (size_t)vCountSelectionMax; + prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); + if (vPath.empty()) + prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); + else + prFileDialogInternal.puFileManager.puDLGpath = vPath; - prFileDialogInternal.puFileManager.SetCurrentPath(prFileDialogInternal.puFileManager.puDLGpath); + prFileDialogInternal.puFileManager.SetCurrentPath(prFileDialogInternal.puFileManager.puDLGpath); - prFileDialogInternal.puFileManager.SetDefaultFileName(vFileName); + prFileDialogInternal.puFileManager.SetDefaultFileName(vFileName); - prFileDialogInternal.puFileManager.ClearAll(); - - prFileDialogInternal.puShowDialog = true; // open dialog - } + prFileDialogInternal.puFileManager.ClearAll(); + + prFileDialogInternal.puShowDialog = true; // open dialog + } - // with pane - // path and filename are obtained from filePathName - void IGFD::FileDialog::OpenDialog( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vFilePathName, - const PaneFun& vSidePane, - const float& vSidePaneWidth, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + // with pane + // path and filename are obtained from filePathName + void IGFD::FileDialog::OpenDialog( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vFilePathName, + const PaneFun& vSidePane, + const float& vSidePaneWidth, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - prFileDialogInternal.ResetForNewDialog(); + prFileDialogInternal.ResetForNewDialog(); - prFileDialogInternal.puDLGkey = vKey; - prFileDialogInternal.puDLGtitle = vTitle; - prFileDialogInternal.puDLGoptionsPane = vSidePane; - prFileDialogInternal.puDLGoptionsPaneWidth = vSidePaneWidth; - prFileDialogInternal.puDLGuserDatas = vUserDatas; - prFileDialogInternal.puDLGflags = vFlags; + prFileDialogInternal.puDLGkey = vKey; + prFileDialogInternal.puDLGtitle = vTitle; + prFileDialogInternal.puDLGoptionsPane = vSidePane; + prFileDialogInternal.puDLGoptionsPaneWidth = vSidePaneWidth; + prFileDialogInternal.puDLGuserDatas = vUserDatas; + prFileDialogInternal.puDLGflags = vFlags; prFileDialogInternal.puDLGselFun = vSelectFun; - prFileDialogInternal.puDLGmodal = false; + prFileDialogInternal.puDLGmodal = false; - auto ps = IGFD::Utils::ParsePathFileName(vFilePathName); - if (ps.isOk) - { - prFileDialogInternal.puFileManager.puDLGpath = ps.path; - prFileDialogInternal.puFileManager.SetDefaultFileName(vFilePathName); - prFileDialogInternal.puFilterManager.puDLGdefaultExt = "." + ps.ext; - } - else - { - prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); - prFileDialogInternal.puFileManager.SetDefaultFileName(""); - prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); - } + auto ps = IGFD::Utils::ParsePathFileName(vFilePathName); + if (ps.isOk) + { + prFileDialogInternal.puFileManager.puDLGpath = ps.path; + prFileDialogInternal.puFileManager.SetDefaultFileName(vFilePathName); + prFileDialogInternal.puFilterManager.puDLGdefaultExt = "." + ps.ext; + } + else + { + prFileDialogInternal.puFileManager.puDLGpath = prFileDialogInternal.puFileManager.GetCurrentPath(); + prFileDialogInternal.puFileManager.SetDefaultFileName(""); + prFileDialogInternal.puFilterManager.puDLGdefaultExt.clear(); + } - prFileDialogInternal.puFileManager.SetCurrentPath(prFileDialogInternal.puFileManager.puDLGpath); + prFileDialogInternal.puFileManager.SetCurrentPath(prFileDialogInternal.puFileManager.puDLGpath); - prFileDialogInternal.puFileManager.puDLGcountSelectionMax = vCountSelectionMax; //-V101 - prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); - prFileDialogInternal.puFilterManager.ParseFilters(vFilters); - prFileDialogInternal.puFilterManager.SetSelectedFilterWithExt( - prFileDialogInternal.puFilterManager.puDLGdefaultExt); + prFileDialogInternal.puFileManager.puDLGcountSelectionMax = vCountSelectionMax; //-V101 + prFileDialogInternal.puFileManager.puDLGDirectoryMode = (vFilters == nullptr); + prFileDialogInternal.puFilterManager.ParseFilters(vFilters); + prFileDialogInternal.puFilterManager.SetSelectedFilterWithExt( + prFileDialogInternal.puFilterManager.puDLGdefaultExt); - prFileDialogInternal.puFileManager.ClearAll(); + prFileDialogInternal.puFileManager.ClearAll(); - prFileDialogInternal.puShowDialog = true; - } + prFileDialogInternal.puShowDialog = true; + } - ////////////////////////////////////////////////////////////////////////////////////////////////// - ///// FILE DIALOG MODAL DIALOG /////////////////////////////////////////////////////////////////// - ////////////////////////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////////////////////////// + ///// FILE DIALOG MODAL DIALOG /////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////////////////////////// - void IGFD::FileDialog::OpenModal( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vPath, - const std::string& vFileName, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + void IGFD::FileDialog::OpenModal( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vPath, + const std::string& vFileName, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - OpenDialog( - vKey, vTitle, vFilters, - vPath, vFileName, - vCountSelectionMax, vUserDatas, vFlags, vSelectFun); + OpenDialog( + vKey, vTitle, vFilters, + vPath, vFileName, + vCountSelectionMax, vUserDatas, vFlags, vSelectFun); - prFileDialogInternal.puDLGmodal = true; - } + prFileDialogInternal.puDLGmodal = true; + } - void IGFD::FileDialog::OpenModal( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vFilePathName, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + void IGFD::FileDialog::OpenModal( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vFilePathName, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - OpenDialog( - vKey, vTitle, vFilters, - vFilePathName, - vCountSelectionMax, vUserDatas, vFlags, vSelectFun); + OpenDialog( + vKey, vTitle, vFilters, + vFilePathName, + vCountSelectionMax, vUserDatas, vFlags, vSelectFun); - prFileDialogInternal.puDLGmodal = true; - } + prFileDialogInternal.puDLGmodal = true; + } - // with pane - // path and fileNameExt can be specified - void IGFD::FileDialog::OpenModal( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vPath, - const std::string& vFileName, - const PaneFun& vSidePane, - const float& vSidePaneWidth, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + // with pane + // path and fileNameExt can be specified + void IGFD::FileDialog::OpenModal( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vPath, + const std::string& vFileName, + const PaneFun& vSidePane, + const float& vSidePaneWidth, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - OpenDialog( - vKey, vTitle, vFilters, - vPath, vFileName, - vSidePane, vSidePaneWidth, - vCountSelectionMax, vUserDatas, vFlags, vSelectFun); + OpenDialog( + vKey, vTitle, vFilters, + vPath, vFileName, + vSidePane, vSidePaneWidth, + vCountSelectionMax, vUserDatas, vFlags, vSelectFun); - prFileDialogInternal.puDLGmodal = true; - } + prFileDialogInternal.puDLGmodal = true; + } - // with pane - // path and filename are obtained from filePathName - void IGFD::FileDialog::OpenModal( - const std::string& vKey, - const std::string& vTitle, - const char* vFilters, - const std::string& vFilePathName, - const PaneFun& vSidePane, - const float& vSidePaneWidth, - const int& vCountSelectionMax, - UserDatas vUserDatas, - ImGuiFileDialogFlags vFlags, + // with pane + // path and filename are obtained from filePathName + void IGFD::FileDialog::OpenModal( + const std::string& vKey, + const std::string& vTitle, + const char* vFilters, + const std::string& vFilePathName, + const PaneFun& vSidePane, + const float& vSidePaneWidth, + const int& vCountSelectionMax, + UserDatas vUserDatas, + ImGuiFileDialogFlags vFlags, SelectFun vSelectFun) - { - if (prFileDialogInternal.puShowDialog) // if already opened, quit - return; + { + if (prFileDialogInternal.puShowDialog) // if already opened, quit + return; - OpenDialog( - vKey, vTitle, vFilters, - vFilePathName, - vSidePane, vSidePaneWidth, - vCountSelectionMax, vUserDatas, vFlags, vSelectFun); + OpenDialog( + vKey, vTitle, vFilters, + vFilePathName, + vSidePane, vSidePaneWidth, + vCountSelectionMax, vUserDatas, vFlags, vSelectFun); - prFileDialogInternal.puDLGmodal = true; - } + prFileDialogInternal.puDLGmodal = true; + } - ////////////////////////////////////////////////////////////////////////////////////////////////// - ///// FILE DIALOG DISPLAY FUNCTION /////////////////////////////////////////////////////////////// - ////////////////////////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////////////////////////// + ///// FILE DIALOG DISPLAY FUNCTION /////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////////////////////////// - bool IGFD::FileDialog::Display(const std::string& vKey, ImGuiWindowFlags vFlags, ImVec2 vMinSize, ImVec2 vMaxSize) - { - bool res = false; + bool IGFD::FileDialog::Display(const std::string& vKey, ImGuiWindowFlags vFlags, ImVec2 vMinSize, ImVec2 vMaxSize) + { + bool res = false; - if (prFileDialogInternal.puShowDialog && prFileDialogInternal.puDLGkey == vKey) - { - if (prFileDialogInternal.puUseCustomLocale) - setlocale(prFileDialogInternal.puLocaleCategory, prFileDialogInternal.puLocaleBegin.c_str()); + if (prFileDialogInternal.puShowDialog && prFileDialogInternal.puDLGkey == vKey) + { + if (prFileDialogInternal.puUseCustomLocale) + setlocale(prFileDialogInternal.puLocaleCategory, prFileDialogInternal.puLocaleBegin.c_str()); - auto& fdFile = prFileDialogInternal.puFileManager; - auto& fdFilter = prFileDialogInternal.puFilterManager; + auto& fdFile = prFileDialogInternal.puFileManager; + auto& fdFilter = prFileDialogInternal.puFilterManager; - static ImGuiWindowFlags flags; + static ImGuiWindowFlags flags; - // to be sure than only one dialog is displayed per frame - ImGuiContext& g = *GImGui; - if (g.FrameCount == prFileDialogInternal.puLastImGuiFrameCount) // one instance was displayed this frame before for this key +> quit - return res; - prFileDialogInternal.puLastImGuiFrameCount = g.FrameCount; // mark this instance as used this frame + // to be sure than only one dialog is displayed per frame + ImGuiContext& g = *GImGui; + if (g.FrameCount == prFileDialogInternal.puLastImGuiFrameCount) // one instance was displayed this frame before for this key +> quit + return res; + prFileDialogInternal.puLastImGuiFrameCount = g.FrameCount; // mark this instance as used this frame - std::string name = prFileDialogInternal.puDLGtitle + "##" + prFileDialogInternal.puDLGkey; - if (prFileDialogInternal.puName != name) - { - fdFile.ClearComposer(); - fdFile.ClearFileLists(); - flags = vFlags; - } + std::string name = prFileDialogInternal.puDLGtitle + "##" + prFileDialogInternal.puDLGkey; + if (prFileDialogInternal.puName != name) + { + fdFile.ClearComposer(); + fdFile.ClearFileLists(); + flags = vFlags; + } - NewFrame(); + NewFrame(); #ifdef IMGUI_HAS_VIEWPORT - if (!ImGui::GetIO().ConfigViewportsNoDecoration) - { - // https://github.com/ocornut/imgui/issues/4534 - ImGuiWindowClass window_class; - window_class.ViewportFlagsOverrideClear = ImGuiViewportFlags_NoDecoration; - ImGui::SetNextWindowClass(&window_class); - } + if (!ImGui::GetIO().ConfigViewportsNoDecoration) + { + // https://github.com/ocornut/imgui/issues/4534 + ImGuiWindowClass window_class; + window_class.ViewportFlagsOverrideClear = ImGuiViewportFlags_NoDecoration; + ImGui::SetNextWindowClass(&window_class); + } #endif // IMGUI_HAS_VIEWPORT - ImGui::SetNextWindowSizeConstraints(vMinSize, vMaxSize); + ImGui::SetNextWindowSizeConstraints(vMinSize, vMaxSize); - bool beg = false; - if (prFileDialogInternal.puDLGmodal && - !prFileDialogInternal.puOkResultToConfirm) // disable modal because the confirm dialog for overwrite is a new modal - { - ImGui::OpenPopup(name.c_str()); - beg = ImGui::BeginPopupModal(name.c_str(), (bool*)nullptr, - flags | ImGuiWindowFlags_NoScrollbar); - } - else - { - beg = ImGui::Begin(name.c_str(), (bool*)nullptr, flags | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoScrollWithMouse | ImGuiWindowFlags_NoDocking); - } - if (beg) - { + bool beg = false; + if (prFileDialogInternal.puDLGmodal && + !prFileDialogInternal.puOkResultToConfirm) // disable modal because the confirm dialog for overwrite is a new modal + { + ImGui::OpenPopup(name.c_str()); + beg = ImGui::BeginPopupModal(name.c_str(), (bool*)nullptr, + flags | ImGuiWindowFlags_NoScrollbar); + } + else + { + beg = ImGui::Begin(name.c_str(), (bool*)nullptr, flags | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoScrollWithMouse | ImGuiWindowFlags_NoDocking); + } + if (beg) + { ImGui::SetWindowPos(ImVec2((ImGui::GetMainViewport()->Size.x-ImGui::GetWindowWidth())*0.5f,(ImGui::GetMainViewport()->Size.y-ImGui::GetWindowHeight())*0.5f)); if (ImGui::GetWindowSize().xViewport->Idx != 0) - flags |= ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoTitleBar; - else - flags = vFlags; - } + // if decoration is enabled we disable the resizing feature of imgui for avoid crash with SDL2 and GLFW3 + if (ImGui::GetIO().ConfigViewportsNoDecoration) + { + flags = vFlags; + } + else + { + auto win = ImGui::GetCurrentWindowRead(); + if (win->Viewport->Idx != 0) + flags |= ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoTitleBar; + else + flags = vFlags; + } #endif // IMGUI_HAS_VIEWPORT - prFileDialogInternal.puName = name; //-V820 - puAnyWindowsHovered |= ImGui::IsWindowHovered(); + prFileDialogInternal.puName = name; //-V820 + puAnyWindowsHovered |= ImGui::IsWindowHovered(); - if (fdFile.puDLGpath.empty()) - fdFile.puDLGpath = "."; // defaut path is '.' + if (fdFile.puDLGpath.empty()) + fdFile.puDLGpath = "."; // defaut path is '.' - fdFilter.SetDefaultFilterIfNotDefined(); + fdFilter.SetDefaultFilterIfNotDefined(); - // init list of files - if (fdFile.IsFileListEmpty() && !fdFile.puShowDrives && !fdFile.fileListActuallyEmpty) - { - IGFD::Utils::ReplaceString(fdFile.puDLGDefaultFileName, fdFile.puDLGpath, ""); // local path - if (!fdFile.puDLGDefaultFileName.empty()) - { - fdFile.SetDefaultFileName(fdFile.puDLGDefaultFileName); - fdFilter.SetSelectedFilterWithExt(fdFilter.puDLGdefaultExt); - } else if (fdFile.puDLGDirectoryMode) { // directory mode - fdFile.SetDefaultFileName("."); + // init list of files + if (fdFile.IsFileListEmpty() && !fdFile.puShowDrives && !fdFile.fileListActuallyEmpty) + { + IGFD::Utils::ReplaceString(fdFile.puDLGDefaultFileName, fdFile.puDLGpath, ""); // local path + if (!fdFile.puDLGDefaultFileName.empty()) + { + fdFile.SetDefaultFileName(fdFile.puDLGDefaultFileName); + fdFilter.SetSelectedFilterWithExt(fdFilter.puDLGdefaultExt); + } else if (fdFile.puDLGDirectoryMode) { // directory mode + fdFile.SetDefaultFileName("."); } logV("IGFD: fdFile.IsFileListEmpty() and !fdFile.puShowDrives"); - fdFile.ScanDir(prFileDialogInternal, fdFile.puDLGpath); - } + fdFile.ScanDir(prFileDialogInternal, fdFile.puDLGpath); + } - // draw dialog parts - prDrawHeader(); // bookmark, directory, path - res = prDrawContent(); // bookmark, files view, side pane - bool res1 = prDrawFooter(); // file field, filter combobox, ok/cancel buttons + // draw dialog parts + prDrawHeader(); // bookmark, directory, path + res = prDrawContent(); // bookmark, files view, side pane + bool res1 = prDrawFooter(); // file field, filter combobox, ok/cancel buttons if (!res) res=res1; - EndFrame(); + EndFrame(); - // for display in dialog center, the confirm to overwrite dlg - prFileDialogInternal.puDialogCenterPos = ImGui::GetCurrentWindowRead()->ContentRegionRect.GetCenter(); + // for display in dialog center, the confirm to overwrite dlg + prFileDialogInternal.puDialogCenterPos = ImGui::GetCurrentWindowRead()->ContentRegionRect.GetCenter(); - // when the confirm to overwrite dialog will appear we need to - // disable the modal mode of the main file dialog - // see prOkResultToConfirm under - if (prFileDialogInternal.puDLGmodal && - !prFileDialogInternal.puOkResultToConfirm) - ImGui::EndPopup(); - } + // when the confirm to overwrite dialog will appear we need to + // disable the modal mode of the main file dialog + // see prOkResultToConfirm under + if (prFileDialogInternal.puDLGmodal && + !prFileDialogInternal.puOkResultToConfirm) + ImGui::EndPopup(); + } - // same things here regarding prOkResultToConfirm - if (!prFileDialogInternal.puDLGmodal || prFileDialogInternal.puOkResultToConfirm) - ImGui::End(); + // same things here regarding prOkResultToConfirm + if (!prFileDialogInternal.puDLGmodal || prFileDialogInternal.puOkResultToConfirm) + ImGui::End(); - // confirm the result and show the confirm to overwrite dialog if needed - res = prConfirm_Or_OpenOverWriteFileDialog_IfNeeded(res, vFlags); - - if (prFileDialogInternal.puUseCustomLocale) - setlocale(prFileDialogInternal.puLocaleCategory, prFileDialogInternal.puLocaleEnd.c_str()); - } + // confirm the result and show the confirm to overwrite dialog if needed + res = prConfirm_Or_OpenOverWriteFileDialog_IfNeeded(res, vFlags); + + if (prFileDialogInternal.puUseCustomLocale) + setlocale(prFileDialogInternal.puLocaleCategory, prFileDialogInternal.puLocaleEnd.c_str()); + } - return res; - } + return res; + } - void IGFD::FileDialog::NewFrame() - { - prFileDialogInternal.NewFrame(); - NewThumbnailFrame(prFileDialogInternal); - } - - void IGFD::FileDialog::EndFrame() - { - EndThumbnailFrame(prFileDialogInternal); - prFileDialogInternal.EndFrame(); - - } - void IGFD::FileDialog::QuitFrame() - { - QuitThumbnailFrame(prFileDialogInternal); - } + void IGFD::FileDialog::NewFrame() + { + prFileDialogInternal.NewFrame(); + NewThumbnailFrame(prFileDialogInternal); + } + + void IGFD::FileDialog::EndFrame() + { + EndThumbnailFrame(prFileDialogInternal); + prFileDialogInternal.EndFrame(); + + } + void IGFD::FileDialog::QuitFrame() + { + QuitThumbnailFrame(prFileDialogInternal); + } - void IGFD::FileDialog::prDrawHeader() - { + void IGFD::FileDialog::prDrawHeader() + { #ifdef USE_BOOKMARK - prDrawBookmarkButton(); - ImGui::SameLine(); + prDrawBookmarkButton(); + ImGui::SameLine(); #endif // USE_BOOKMARK - prFileDialogInternal.puFileManager.DrawDirectoryCreation(prFileDialogInternal); - ImGui::SameLine(); - ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); - ImGui::SameLine(); - prFileDialogInternal.puFileManager.DrawPathComposer(prFileDialogInternal); + prFileDialogInternal.puFileManager.DrawDirectoryCreation(prFileDialogInternal); + ImGui::SameLine(); + ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); + ImGui::SameLine(); + prFileDialogInternal.puFileManager.DrawPathComposer(prFileDialogInternal); #ifdef USE_THUMBNAILS - if (!(prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DisableThumbnailMode)) - { - prDrawDisplayModeToolBar(); - ImGui::SameLine(); - ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); - ImGui::SameLine(); - } + if (!(prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DisableThumbnailMode)) + { + prDrawDisplayModeToolBar(); + ImGui::SameLine(); + ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); + ImGui::SameLine(); + } #endif // USE_THUMBNAILS - prFileDialogInternal.puSearchManager.DrawSearchBar(prFileDialogInternal); - } + prFileDialogInternal.puSearchManager.DrawSearchBar(prFileDialogInternal); + } - bool IGFD::FileDialog::prDrawContent() - { + bool IGFD::FileDialog::prDrawContent() + { bool escape = false; - ImVec2 size = ImGui::GetContentRegionAvail() - ImVec2(0.0f, prFileDialogInternal.puFooterHeight); + ImVec2 size = ImGui::GetContentRegionAvail() - ImVec2(0.0f, prFileDialogInternal.puFooterHeight); #ifdef USE_BOOKMARK - if (prBookmarkPaneShown) - { - //size.x -= prBookmarkWidth; - float otherWidth = size.x - prBookmarkWidth; - ImGui::PushID("##splitterbookmark"); - IGFD::Utils::Splitter(true, 4.0f, - &prBookmarkWidth, &otherWidth, 10.0f, - 10.0f + prFileDialogInternal.puDLGoptionsPaneWidth, size.y); - ImGui::PopID(); - size.x -= otherWidth; - prDrawBookmarkPane(prFileDialogInternal, size); - ImGui::SameLine(); - } + if (prBookmarkPaneShown) + { + //size.x -= prBookmarkWidth; + float otherWidth = size.x - prBookmarkWidth; + ImGui::PushID("##splitterbookmark"); + IGFD::Utils::Splitter(true, 4.0f, + &prBookmarkWidth, &otherWidth, 10.0f, + 10.0f + prFileDialogInternal.puDLGoptionsPaneWidth, size.y); + ImGui::PopID(); + size.x -= otherWidth; + prDrawBookmarkPane(prFileDialogInternal, size); + ImGui::SameLine(); + } #endif // USE_BOOKMARK - size.x = ImGui::GetContentRegionAvail().x - prFileDialogInternal.puDLGoptionsPaneWidth; + size.x = ImGui::GetContentRegionAvail().x - prFileDialogInternal.puDLGoptionsPaneWidth; - if (prFileDialogInternal.puDLGoptionsPane) - { - ImGui::PushID("##splittersidepane"); - IGFD::Utils::Splitter(true, 4.0f, &size.x, &prFileDialogInternal.puDLGoptionsPaneWidth, 10.0f, 10.0f, size.y); - ImGui::PopID(); - } + if (prFileDialogInternal.puDLGoptionsPane) + { + ImGui::PushID("##splittersidepane"); + IGFD::Utils::Splitter(true, 4.0f, &size.x, &prFileDialogInternal.puDLGoptionsPaneWidth, 10.0f, 10.0f, size.y); + ImGui::PopID(); + } #ifdef USE_THUMBNAILS - if (prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DisableThumbnailMode) - { - prDrawFileListView(size); - } - else - { - switch (prDisplayMode) - { - case DisplayModeEnum::FILE_LIST: - prDrawFileListView(size); - break; - case DisplayModeEnum::THUMBNAILS_LIST: - prDrawThumbnailsListView(size); - break; - case DisplayModeEnum::THUMBNAILS_GRID: - prDrawThumbnailsGridView(size); - } - } + if (prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_DisableThumbnailMode) + { + prDrawFileListView(size); + } + else + { + switch (prDisplayMode) + { + case DisplayModeEnum::FILE_LIST: + prDrawFileListView(size); + break; + case DisplayModeEnum::THUMBNAILS_LIST: + prDrawThumbnailsListView(size); + break; + case DisplayModeEnum::THUMBNAILS_GRID: + prDrawThumbnailsGridView(size); + } + } #else - escape = prDrawFileListView(size); + escape = prDrawFileListView(size); #endif // USE_THUMBNAILS - if (prFileDialogInternal.puDLGoptionsPane) - { - prDrawSidePane(size.y); - } + if (prFileDialogInternal.puDLGoptionsPane) + { + prDrawSidePane(size.y); + } return escape; - } + } - bool IGFD::FileDialog::prDrawFooter() - { - auto& fdFile = prFileDialogInternal.puFileManager; - - float posY = ImGui::GetCursorPos().y; // height of last bar calc + bool IGFD::FileDialog::prDrawFooter() + { + auto& fdFile = prFileDialogInternal.puFileManager; + + float posY = ImGui::GetCursorPos().y; // height of last bar calc - if (!fdFile.puDLGDirectoryMode) - ImGui::Text(fileNameString); - else // directory chooser - ImGui::Text(dirNameString); + if (!fdFile.puDLGDirectoryMode) + ImGui::Text(fileNameString); + else // directory chooser + ImGui::Text(dirNameString); - ImGui::SameLine(); + ImGui::SameLine(); - // Input file fields - float width = ImGui::GetContentRegionAvail().x; + // Input file fields + float width = ImGui::GetContentRegionAvail().x; // fix this! fix this! fix this! - if (!fdFile.puDLGDirectoryMode) - width -= FILTER_COMBO_WIDTH*DpiScale; - ImGui::PushItemWidth(width); - ImGui::InputText("##FileName", fdFile.puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER); - if (ImGui::GetItemID() == ImGui::GetActiveID()) - prFileDialogInternal.puFileInputIsActive = true; - ImGui::PopItemWidth(); + if (!fdFile.puDLGDirectoryMode) + width -= FILTER_COMBO_WIDTH*DpiScale; + ImGui::PushItemWidth(width); + ImGui::InputText("##FileName", fdFile.puFileNameBuffer, MAX_FILE_DIALOG_NAME_BUFFER); + if (ImGui::GetItemID() == ImGui::GetActiveID()) + prFileDialogInternal.puFileInputIsActive = true; + ImGui::PopItemWidth(); - // combobox of filters - prFileDialogInternal.puFilterManager.DrawFilterComboBox(prFileDialogInternal); + // combobox of filters + prFileDialogInternal.puFilterManager.DrawFilterComboBox(prFileDialogInternal); - bool res = false; + bool res = false; - // OK Button - if (prFileDialogInternal.puCanWeContinue && strlen(fdFile.puFileNameBuffer)) - { - if (IMGUI_BUTTON(okButtonString "##validationdialog")) - { - prFileDialogInternal.puIsOk = true; - res = true; - } + // OK Button + if (prFileDialogInternal.puCanWeContinue && strlen(fdFile.puFileNameBuffer)) + { + if (IMGUI_BUTTON(okButtonString "##validationdialog")) + { + prFileDialogInternal.puIsOk = true; + res = true; + } - ImGui::SameLine(); - } + ImGui::SameLine(); + } - // Cancel Button - if (IMGUI_BUTTON(cancelButtonString "##validationdialog") || - prFileDialogInternal.puNeedToExitDialog) // dialog exit asked - { - prFileDialogInternal.puIsOk = false; - res = true; - } + // Cancel Button + if (IMGUI_BUTTON(cancelButtonString "##validationdialog") || + prFileDialogInternal.puNeedToExitDialog) // dialog exit asked + { + prFileDialogInternal.puIsOk = false; + res = true; + } - prFileDialogInternal.puFooterHeight = ImGui::GetCursorPosY() - posY; + prFileDialogInternal.puFooterHeight = ImGui::GetCursorPosY() - posY; - return res; - } + return res; + } // returns 0 if not break loop, 1 if break loop, 2 if exit dialog - int IGFD::FileDialog::prSelectableItem(int vidx, std::shared_ptr vInfos, bool vSelected, const char* vFmt, ...) - { - if (!vInfos.use_count()) - return 0; + int IGFD::FileDialog::prSelectableItem(int vidx, std::shared_ptr vInfos, bool vSelected, const char* vFmt, ...) + { + if (!vInfos.use_count()) + return 0; - auto& fdi = prFileDialogInternal.puFileManager; + auto& fdi = prFileDialogInternal.puFileManager; - static ImGuiSelectableFlags selectableFlags = ImGuiSelectableFlags_AllowDoubleClick | - ImGuiSelectableFlags_SpanAllColumns | ImGuiSelectableFlags_SpanAvailWidth; + static ImGuiSelectableFlags selectableFlags = ImGuiSelectableFlags_AllowDoubleClick | + ImGuiSelectableFlags_SpanAllColumns | ImGuiSelectableFlags_SpanAvailWidth; // TODO BUG?! // YES BUG: THIS JUST CRASHED FOR SOME REASON - va_list args; - va_start(args, vFmt); - vsnprintf(fdi.puVariadicBuffer, MAX_FILE_DIALOG_NAME_BUFFER, vFmt, args); - va_end(args); + va_list args; + va_start(args, vFmt); + vsnprintf(fdi.puVariadicBuffer, MAX_FILE_DIALOG_NAME_BUFFER, vFmt, args); + va_end(args); - float h = /*mobileMode?(ImGui::GetFontSize()+10.0f*DpiScale):*/0.0f; + float h = /*mobileMode?(ImGui::GetFontSize()+10.0f*DpiScale):*/0.0f; #ifdef USE_THUMBNAILS - if (prDisplayMode == DisplayModeEnum::THUMBNAILS_LIST) - h = DisplayMode_ThumbailsList_ImageHeight; + if (prDisplayMode == DisplayModeEnum::THUMBNAILS_LIST) + h = DisplayMode_ThumbailsList_ImageHeight; #endif // USE_THUMBNAILS #ifdef USE_EXPLORATION_BY_KEYS - bool flashed = prBeginFlashItem((size_t)vidx); - bool res = prFlashableSelectable(fdi.puVariadicBuffer, vSelected, selectableFlags, - flashed, ImVec2(-1.0f, h)); - if (flashed) - prEndFlashItem(); + bool flashed = prBeginFlashItem((size_t)vidx); + bool res = prFlashableSelectable(fdi.puVariadicBuffer, vSelected, selectableFlags, + flashed, ImVec2(-1.0f, h)); + if (flashed) + prEndFlashItem(); #else // USE_EXPLORATION_BY_KEYS - (void)vidx; // remove a warnings ofr unused var + (void)vidx; // remove a warnings ofr unused var - bool res = ImGui::Selectable(fdi.puVariadicBuffer, vSelected, selectableFlags, ImVec2(-1.0f, h)); + bool res = ImGui::Selectable(fdi.puVariadicBuffer, vSelected, selectableFlags, ImVec2(-1.0f, h)); #endif // USE_EXPLORATION_BY_KEYS - if (res) - { - if (vInfos->fileType == 'd') - { + if (res) + { + if (vInfos->fileType == 'd') + { bool isSelectingDir=false; - // nav system, selectebale cause open directory or select directory - if (ImGui::GetIO().ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) - { - if (fdi.puDLGDirectoryMode) // directory chooser - { - fdi.SelectFileName(prFileDialogInternal, vInfos); - } - else - { - fdi.puPathClicked = fdi.SelectDirectory(vInfos); + // nav system, selectebale cause open directory or select directory + if (ImGui::GetIO().ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) + { + if (fdi.puDLGDirectoryMode) // directory chooser + { + fdi.SelectFileName(prFileDialogInternal, vInfos); + } + else + { + fdi.puPathClicked = fdi.SelectDirectory(vInfos); isSelectingDir=true; - } - } - else // no nav system => classic behavior - { - if (DOUBLE_CLICKED) // 0 -> left mouse button double click - { + } + } + else // no nav system => classic behavior + { + if (DOUBLE_CLICKED) // 0 -> left mouse button double click + { isSelectingDir=true; - fdi.puPathClicked = fdi.SelectDirectory(vInfos); - } - else if (fdi.puDLGDirectoryMode) // directory chooser - { - fdi.SelectFileName(prFileDialogInternal, vInfos); - } - } + fdi.puPathClicked = fdi.SelectDirectory(vInfos); + } + else if (fdi.puDLGDirectoryMode) // directory chooser + { + fdi.SelectFileName(prFileDialogInternal, vInfos); + } + } - return isSelectingDir; // needToBreakTheloop - } - else - { + return isSelectingDir; // needToBreakTheloop + } + else + { if (DOUBLE_CLICKED) { fdi.SelectFileName(prFileDialogInternal, vInfos); prFileDialogInternal.puIsOk = true; return 2; } else { - fdi.SelectFileName(prFileDialogInternal, vInfos); + fdi.SelectFileName(prFileDialogInternal, vInfos); if (prFileDialogInternal.puDLGselFun!=NULL) { std::string argPath; for (auto& i: GetSelection()) { @@ -3969,581 +3969,581 @@ namespace IGFD } } } - } - } + } + } - return 0; - } + return 0; + } - void IGFD::FileDialog::prBeginFileColorIconStyle(std::shared_ptr vFileInfos, bool& vOutShowColor, std::string& vOutStr, ImFont** vOutFont) - { - vOutStr.clear(); - vOutShowColor = false; + void IGFD::FileDialog::prBeginFileColorIconStyle(std::shared_ptr vFileInfos, bool& vOutShowColor, std::string& vOutStr, ImFont** vOutFont) + { + vOutStr.clear(); + vOutShowColor = false; - if (vFileInfos->fileStyle.use_count()) //-V807 //-V522 - { - vOutShowColor = true; + if (vFileInfos->fileStyle.use_count()) //-V807 //-V522 + { + vOutShowColor = true; - *vOutFont = vFileInfos->fileStyle->font; - } + *vOutFont = vFileInfos->fileStyle->font; + } - if (vOutShowColor && !vFileInfos->fileStyle->icon.empty()) vOutStr = vFileInfos->fileStyle->icon; - else if (vFileInfos->fileType == 'd') vOutStr = dirEntryString; - else if (vFileInfos->fileType == 'l') vOutStr = linkEntryString; - else if (vFileInfos->fileType == 'f') vOutStr = fileEntryString; + if (vOutShowColor && !vFileInfos->fileStyle->icon.empty()) vOutStr = vFileInfos->fileStyle->icon; + else if (vFileInfos->fileType == 'd') vOutStr = dirEntryString; + else if (vFileInfos->fileType == 'l') vOutStr = linkEntryString; + else if (vFileInfos->fileType == 'f') vOutStr = fileEntryString; - vOutStr += " " + vFileInfos->fileNameExt; + vOutStr += " " + vFileInfos->fileNameExt; - if (vOutShowColor) - ImGui::PushStyleColor(ImGuiCol_Text, vFileInfos->fileStyle->color); - if (*vOutFont) - ImGui::PushFont(*vOutFont); - } + if (vOutShowColor) + ImGui::PushStyleColor(ImGuiCol_Text, vFileInfos->fileStyle->color); + if (*vOutFont) + ImGui::PushFont(*vOutFont); + } - void IGFD::FileDialog::prEndFileColorIconStyle(const bool& vShowColor, ImFont* vFont) - { - if (vFont) - ImGui::PopFont(); - if (vShowColor) - ImGui::PopStyleColor(); - } + void IGFD::FileDialog::prEndFileColorIconStyle(const bool& vShowColor, ImFont* vFont) + { + if (vFont) + ImGui::PopFont(); + if (vShowColor) + ImGui::PopStyleColor(); + } - bool IGFD::FileDialog::prDrawFileListView(ImVec2 vSize) - { + bool IGFD::FileDialog::prDrawFileListView(ImVec2 vSize) + { bool escape = false; - auto& fdi = prFileDialogInternal.puFileManager; + auto& fdi = prFileDialogInternal.puFileManager; - ImGui::PushID(this); + ImGui::PushID(this); - static ImGuiTableFlags flags = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_RowBg | - ImGuiTableFlags_Hideable | ImGuiTableFlags_ScrollY | - ImGuiTableFlags_NoHostExtendY + static ImGuiTableFlags flags = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_RowBg | + ImGuiTableFlags_Hideable | ImGuiTableFlags_ScrollY | + ImGuiTableFlags_NoHostExtendY #ifndef USE_CUSTOM_SORTING_ICON - | ImGuiTableFlags_Sortable + | ImGuiTableFlags_Sortable #endif // USE_CUSTOM_SORTING_ICON - ; - auto listViewID = ImGui::GetID("##FileDialog_fileTable"); - if (ImGui::BeginTableEx("##FileDialog_fileTable", listViewID, 4, flags, vSize, 0.0f)) //-V112 - { - ImGui::TableSetupScrollFreeze(0, 1); // Make header always visible - ImGui::TableSetupColumn(fdi.puHeaderFileName.c_str(), ImGuiTableColumnFlags_WidthStretch, -1, 0); - ImGui::TableSetupColumn(fdi.puHeaderFileType.c_str(), ImGuiTableColumnFlags_WidthFixed | - ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnType) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 1); - ImGui::TableSetupColumn(fdi.puHeaderFileSize.c_str(), ImGuiTableColumnFlags_WidthFixed | - ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnSize) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 2); - ImGui::TableSetupColumn(fdi.puHeaderFileDate.c_str(), ImGuiTableColumnFlags_WidthFixed | - ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnDate) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 3); + ; + auto listViewID = ImGui::GetID("##FileDialog_fileTable"); + if (ImGui::BeginTableEx("##FileDialog_fileTable", listViewID, 4, flags, vSize, 0.0f)) //-V112 + { + ImGui::TableSetupScrollFreeze(0, 1); // Make header always visible + ImGui::TableSetupColumn(fdi.puHeaderFileName.c_str(), ImGuiTableColumnFlags_WidthStretch, -1, 0); + ImGui::TableSetupColumn(fdi.puHeaderFileType.c_str(), ImGuiTableColumnFlags_WidthFixed | + ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnType) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 1); + ImGui::TableSetupColumn(fdi.puHeaderFileSize.c_str(), ImGuiTableColumnFlags_WidthFixed | + ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnSize) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 2); + ImGui::TableSetupColumn(fdi.puHeaderFileDate.c_str(), ImGuiTableColumnFlags_WidthFixed | + ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnDate) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 3); #ifndef USE_CUSTOM_SORTING_ICON - // Sort our data if sort specs have been changed! - if (ImGuiTableSortSpecs* sorts_specs = ImGui::TableGetSortSpecs()) - { - if (sorts_specs->SpecsDirty && !fdi.IsFileListEmpty()) - { - if (sorts_specs->Specs->ColumnUserID == 0) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); - else if (sorts_specs->Specs->ColumnUserID == 1) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); - else if (sorts_specs->Specs->ColumnUserID == 2) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); - else //if (sorts_specs->Specs->ColumnUserID == 3) => alwayd true for the moment, to uncomment if we add a fourth column - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); + // Sort our data if sort specs have been changed! + if (ImGuiTableSortSpecs* sorts_specs = ImGui::TableGetSortSpecs()) + { + if (sorts_specs->SpecsDirty && !fdi.IsFileListEmpty()) + { + if (sorts_specs->Specs->ColumnUserID == 0) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); + else if (sorts_specs->Specs->ColumnUserID == 1) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); + else if (sorts_specs->Specs->ColumnUserID == 2) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); + else //if (sorts_specs->Specs->ColumnUserID == 3) => alwayd true for the moment, to uncomment if we add a fourth column + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); - sorts_specs->SpecsDirty = false; - } - } + sorts_specs->SpecsDirty = false; + } + } - ImGui::TableHeadersRow(); + ImGui::TableHeadersRow(); #else // USE_CUSTOM_SORTING_ICON - ImGui::TableNextRow(ImGuiTableRowFlags_Headers); - for (int column = 0; column < 4; column++) //-V112 - { - ImGui::TableSetColumnIndex(column); - const char* column_name = ImGui::TableGetColumnName(column); // Retrieve name passed to TableSetupColumn() - ImGui::PushID(column); - ImGui::TableHeader(column_name); - ImGui::PopID(); - if (ImGui::IsItemClicked()) - { - if (column == 0) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); - else if (column == 1) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); - else if (column == 2) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); - else //if (column == 3) => alwayd true for the moment, to uncomment if we add a fourth column - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); - } - } + ImGui::TableNextRow(ImGuiTableRowFlags_Headers); + for (int column = 0; column < 4; column++) //-V112 + { + ImGui::TableSetColumnIndex(column); + const char* column_name = ImGui::TableGetColumnName(column); // Retrieve name passed to TableSetupColumn() + ImGui::PushID(column); + ImGui::TableHeader(column_name); + ImGui::PopID(); + if (ImGui::IsItemClicked()) + { + if (column == 0) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); + else if (column == 1) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); + else if (column == 2) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); + else //if (column == 3) => alwayd true for the moment, to uncomment if we add a fourth column + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); + } + } #endif // USE_CUSTOM_SORTING_ICON - if (!fdi.IsFilteredListEmpty()) - { - std::string _str; - ImFont* _font = nullptr; - bool _showColor = false; - - prFileListClipper.Begin((int)fdi.GetFilteredListSize(), ImGui::GetTextLineHeightWithSpacing()); - while (prFileListClipper.Step()) - { - for (int i = prFileListClipper.DisplayStart; i < prFileListClipper.DisplayEnd; i++) - { - if (i < 0) continue; + if (!fdi.IsFilteredListEmpty()) + { + std::string _str; + ImFont* _font = nullptr; + bool _showColor = false; + + prFileListClipper.Begin((int)fdi.GetFilteredListSize(), ImGui::GetTextLineHeightWithSpacing()); + while (prFileListClipper.Step()) + { + for (int i = prFileListClipper.DisplayStart; i < prFileListClipper.DisplayEnd; i++) + { + if (i < 0) continue; - auto infos = fdi.GetFilteredFileAt((size_t)i); - if (!infos.use_count()) - continue; + auto infos = fdi.GetFilteredFileAt((size_t)i); + if (!infos.use_count()) + continue; - prBeginFileColorIconStyle(infos, _showColor, _str, &_font); - - bool selected = fdi.IsFileNameSelected(infos->fileNameExt); // found + prBeginFileColorIconStyle(infos, _showColor, _str, &_font); + + bool selected = fdi.IsFileNameSelected(infos->fileNameExt); // found - ImGui::TableNextRow(); + ImGui::TableNextRow(); - int needToBreakTheloop = false; + int needToBreakTheloop = false; - if (ImGui::TableNextColumn()) // file name - { + if (ImGui::TableNextColumn()) // file name + { // TODO BUG?!?!?! // YES BUG - needToBreakTheloop = prSelectableItem(i, infos, selected, "%s", _str.c_str()); + needToBreakTheloop = prSelectableItem(i, infos, selected, "%s", _str.c_str()); if (needToBreakTheloop==2) escape=true; - } - if (ImGui::TableNextColumn()) // file type - { - ImGui::Text("%s", infos->fileExt.c_str()); - } - if (ImGui::TableNextColumn()) // file size - { - if (infos->fileType != 'd') - { - ImGui::Text("%s ", infos->formatedFileSize.c_str()); - } - else - { - ImGui::Text("%s",""); - } - } - if (ImGui::TableNextColumn()) // file date + time - { - ImGui::Text("%s", infos->fileModifDate.c_str()); - } + } + if (ImGui::TableNextColumn()) // file type + { + ImGui::Text("%s", infos->fileExt.c_str()); + } + if (ImGui::TableNextColumn()) // file size + { + if (infos->fileType != 'd') + { + ImGui::Text("%s ", infos->formatedFileSize.c_str()); + } + else + { + ImGui::Text("%s",""); + } + } + if (ImGui::TableNextColumn()) // file date + time + { + ImGui::Text("%s", infos->fileModifDate.c_str()); + } - prEndFileColorIconStyle(_showColor, _font); + prEndFileColorIconStyle(_showColor, _font); - if (needToBreakTheloop==1) - break; - } - } - prFileListClipper.End(); - } + if (needToBreakTheloop==1) + break; + } + } + prFileListClipper.End(); + } #ifdef USE_EXPLORATION_BY_KEYS - if (!fdi.puInputPathActivated) - { - prLocateByInputKey(prFileDialogInternal); - prExploreWithkeys(prFileDialogInternal, listViewID); - } + if (!fdi.puInputPathActivated) + { + prLocateByInputKey(prFileDialogInternal); + prExploreWithkeys(prFileDialogInternal, listViewID); + } #endif // USE_EXPLORATION_BY_KEYS - ImGuiContext& g = *GImGui; - if (g.LastActiveId - 1 == listViewID || g.LastActiveId == listViewID) - { - prFileDialogInternal.puFileListViewIsActive = true; - } + ImGuiContext& g = *GImGui; + if (g.LastActiveId - 1 == listViewID || g.LastActiveId == listViewID) + { + prFileDialogInternal.puFileListViewIsActive = true; + } - ImGui::EndTable(); - } + ImGui::EndTable(); + } - ImGui::PopID(); + ImGui::PopID(); return escape; - } + } #ifdef USE_THUMBNAILS - void IGFD::FileDialog::prDrawThumbnailsListView(ImVec2 vSize) - { - auto& fdi = prFileDialogInternal.puFileManager; + void IGFD::FileDialog::prDrawThumbnailsListView(ImVec2 vSize) + { + auto& fdi = prFileDialogInternal.puFileManager; - ImGui::PushID(this); + ImGui::PushID(this); - static ImGuiTableFlags flags = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_RowBg | - ImGuiTableFlags_Hideable | ImGuiTableFlags_ScrollY | - ImGuiTableFlags_NoHostExtendY + static ImGuiTableFlags flags = ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_RowBg | + ImGuiTableFlags_Hideable | ImGuiTableFlags_ScrollY | + ImGuiTableFlags_NoHostExtendY #ifndef USE_CUSTOM_SORTING_ICON - | ImGuiTableFlags_Sortable + | ImGuiTableFlags_Sortable #endif // USE_CUSTOM_SORTING_ICON - ; - auto listViewID = ImGui::GetID("##FileDialog_fileTable"); - if (ImGui::BeginTableEx("##FileDialog_fileTable", listViewID, 5, flags, vSize, 0.0f)) - { - ImGui::TableSetupScrollFreeze(0, 1); // Make header always visible - ImGui::TableSetupColumn(fdi.puHeaderFileName.c_str(), ImGuiTableColumnFlags_WidthStretch, -1, 0); - ImGui::TableSetupColumn(fdi.puHeaderFileType.c_str(), ImGuiTableColumnFlags_WidthFixed | - ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnType) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 1); - ImGui::TableSetupColumn(fdi.puHeaderFileSize.c_str(), ImGuiTableColumnFlags_WidthFixed | - ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnSize) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 2); - ImGui::TableSetupColumn(fdi.puHeaderFileDate.c_str(), ImGuiTableColumnFlags_WidthFixed | - ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnDate) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 3); - // not needed to have an option for hide the thumbnails since this is why this view is used - ImGui::TableSetupColumn(fdi.puHeaderFileThumbnails.c_str(), ImGuiTableColumnFlags_WidthFixed, -1, 4); //-V112 + ; + auto listViewID = ImGui::GetID("##FileDialog_fileTable"); + if (ImGui::BeginTableEx("##FileDialog_fileTable", listViewID, 5, flags, vSize, 0.0f)) + { + ImGui::TableSetupScrollFreeze(0, 1); // Make header always visible + ImGui::TableSetupColumn(fdi.puHeaderFileName.c_str(), ImGuiTableColumnFlags_WidthStretch, -1, 0); + ImGui::TableSetupColumn(fdi.puHeaderFileType.c_str(), ImGuiTableColumnFlags_WidthFixed | + ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnType) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 1); + ImGui::TableSetupColumn(fdi.puHeaderFileSize.c_str(), ImGuiTableColumnFlags_WidthFixed | + ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnSize) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 2); + ImGui::TableSetupColumn(fdi.puHeaderFileDate.c_str(), ImGuiTableColumnFlags_WidthFixed | + ((prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_HideColumnDate) ? ImGuiTableColumnFlags_DefaultHide : 0), -1, 3); + // not needed to have an option for hide the thumbnails since this is why this view is used + ImGui::TableSetupColumn(fdi.puHeaderFileThumbnails.c_str(), ImGuiTableColumnFlags_WidthFixed, -1, 4); //-V112 #ifndef USE_CUSTOM_SORTING_ICON - // Sort our data if sort specs have been changed! - if (ImGuiTableSortSpecs* sorts_specs = ImGui::TableGetSortSpecs()) - { - if (sorts_specs->SpecsDirty && !fdi.IsFileListEmpty()) - { - if (sorts_specs->Specs->ColumnUserID == 0) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); - else if (sorts_specs->Specs->ColumnUserID == 1) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); - else if (sorts_specs->Specs->ColumnUserID == 2) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); - else if (sorts_specs->Specs->ColumnUserID == 3) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); - else // if (sorts_specs->Specs->ColumnUserID == 4) = > always true for the moment, to uncomment if we add another column - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_THUMBNAILS, true); - sorts_specs->SpecsDirty = false; - } - } + // Sort our data if sort specs have been changed! + if (ImGuiTableSortSpecs* sorts_specs = ImGui::TableGetSortSpecs()) + { + if (sorts_specs->SpecsDirty && !fdi.IsFileListEmpty()) + { + if (sorts_specs->Specs->ColumnUserID == 0) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); + else if (sorts_specs->Specs->ColumnUserID == 1) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); + else if (sorts_specs->Specs->ColumnUserID == 2) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); + else if (sorts_specs->Specs->ColumnUserID == 3) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); + else // if (sorts_specs->Specs->ColumnUserID == 4) = > always true for the moment, to uncomment if we add another column + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_THUMBNAILS, true); + sorts_specs->SpecsDirty = false; + } + } - ImGui::TableHeadersRow(); + ImGui::TableHeadersRow(); #else // USE_CUSTOM_SORTING_ICON - ImGui::TableNextRow(ImGuiTableRowFlags_Headers); - for (int column = 0; column < 5; column++) - { - ImGui::TableSetColumnIndex(column); - const char* column_name = ImGui::TableGetColumnName(column); // Retrieve name passed to TableSetupColumn() - ImGui::PushID(column); - ImGui::TableHeader(column_name); - ImGui::PopID(); - if (ImGui::IsItemClicked()) - { - if (column == 0) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); - else if (column == 1) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); - else if (column == 2) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); - else if (column == 3) - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); - else // if (column == 4) = > always true for the moment, to uncomment if we add another column - fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_THUMBNAILS, true); - } - } + ImGui::TableNextRow(ImGuiTableRowFlags_Headers); + for (int column = 0; column < 5; column++) + { + ImGui::TableSetColumnIndex(column); + const char* column_name = ImGui::TableGetColumnName(column); // Retrieve name passed to TableSetupColumn() + ImGui::PushID(column); + ImGui::TableHeader(column_name); + ImGui::PopID(); + if (ImGui::IsItemClicked()) + { + if (column == 0) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_FILENAME, true); + else if (column == 1) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_TYPE, true); + else if (column == 2) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_SIZE, true); + else if (column == 3) + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_DATE, true); + else // if (column == 4) = > always true for the moment, to uncomment if we add another column + fdi.SortFields(prFileDialogInternal, IGFD::FileManager::SortingFieldEnum::FIELD_THUMBNAILS, true); + } + } #endif // USE_CUSTOM_SORTING_ICON - if (!fdi.IsFilteredListEmpty()) - { - std::string _str; - ImFont* _font = nullptr; - bool _showColor = false; + if (!fdi.IsFilteredListEmpty()) + { + std::string _str; + ImFont* _font = nullptr; + bool _showColor = false; - ImGuiContext& g = *GImGui; - const float itemHeight = ImMax(g.FontSize, DisplayMode_ThumbailsList_ImageHeight) + g.Style.ItemSpacing.y; + ImGuiContext& g = *GImGui; + const float itemHeight = ImMax(g.FontSize, DisplayMode_ThumbailsList_ImageHeight) + g.Style.ItemSpacing.y; - prFileListClipper.Begin((int)fdi.GetFilteredListSize(), itemHeight); - while (prFileListClipper.Step()) - { - for (int i = prFileListClipper.DisplayStart; i < prFileListClipper.DisplayEnd; i++) - { - if (i < 0) continue; + prFileListClipper.Begin((int)fdi.GetFilteredListSize(), itemHeight); + while (prFileListClipper.Step()) + { + for (int i = prFileListClipper.DisplayStart; i < prFileListClipper.DisplayEnd; i++) + { + if (i < 0) continue; - auto infos = fdi.GetFilteredFileAt((size_t)i); - if (!infos.use_count()) - continue; + auto infos = fdi.GetFilteredFileAt((size_t)i); + if (!infos.use_count()) + continue; - prBeginFileColorIconStyle(infos, _showColor, _str, &_font); + prBeginFileColorIconStyle(infos, _showColor, _str, &_font); - bool selected = fdi.IsFileNameSelected(infos->fileNameExt); // found + bool selected = fdi.IsFileNameSelected(infos->fileNameExt); // found - ImGui::TableNextRow(); + ImGui::TableNextRow(); - bool needToBreakTheloop = false; + bool needToBreakTheloop = false; - if (ImGui::TableNextColumn()) // file name - { - needToBreakTheloop = prSelectableItem(i, infos, selected, _str.c_str()); - } - if (ImGui::TableNextColumn()) // file type - { - ImGui::Text("%s", infos->fileExt.c_str()); - } - if (ImGui::TableNextColumn()) // file size - { - if (infos->fileType != 'd') - { - ImGui::Text("%s ", infos->formatedFileSize.c_str()); - } - else - { - ImGui::Text(""); - } - } - if (ImGui::TableNextColumn()) // file date + time - { - ImGui::Text("%s", infos->fileModifDate.c_str()); - } - if (ImGui::TableNextColumn()) // file thumbnails - { - auto th = &infos->thumbnailInfo; + if (ImGui::TableNextColumn()) // file name + { + needToBreakTheloop = prSelectableItem(i, infos, selected, _str.c_str()); + } + if (ImGui::TableNextColumn()) // file type + { + ImGui::Text("%s", infos->fileExt.c_str()); + } + if (ImGui::TableNextColumn()) // file size + { + if (infos->fileType != 'd') + { + ImGui::Text("%s ", infos->formatedFileSize.c_str()); + } + else + { + ImGui::Text(""); + } + } + if (ImGui::TableNextColumn()) // file date + time + { + ImGui::Text("%s", infos->fileModifDate.c_str()); + } + if (ImGui::TableNextColumn()) // file thumbnails + { + auto th = &infos->thumbnailInfo; - if (!th->isLoadingOrLoaded) - { - prAddThumbnailToLoad(infos); - } - if (th->isReadyToDisplay && - th->textureID) - { - ImGui::Image((ImTextureID)th->textureID, - ImVec2((float)th->textureWidth, - (float)th->textureHeight)); - } - } + if (!th->isLoadingOrLoaded) + { + prAddThumbnailToLoad(infos); + } + if (th->isReadyToDisplay && + th->textureID) + { + ImGui::Image((ImTextureID)th->textureID, + ImVec2((float)th->textureWidth, + (float)th->textureHeight)); + } + } - prEndFileColorIconStyle(_showColor, _font); + prEndFileColorIconStyle(_showColor, _font); - if (needToBreakTheloop) - break; - } - } - prFileListClipper.End(); - } + if (needToBreakTheloop) + break; + } + } + prFileListClipper.End(); + } #ifdef USE_EXPLORATION_BY_KEYS - if (!fdi.puInputPathActivated) - { - prLocateByInputKey(prFileDialogInternal); - prExploreWithkeys(prFileDialogInternal, listViewID); - } + if (!fdi.puInputPathActivated) + { + prLocateByInputKey(prFileDialogInternal); + prExploreWithkeys(prFileDialogInternal, listViewID); + } #endif // USE_EXPLORATION_BY_KEYS - ImGuiContext& g = *GImGui; - if (g.LastActiveId - 1 == listViewID || g.LastActiveId == listViewID) - { - prFileDialogInternal.puFileListViewIsActive = true; - } + ImGuiContext& g = *GImGui; + if (g.LastActiveId - 1 == listViewID || g.LastActiveId == listViewID) + { + prFileDialogInternal.puFileListViewIsActive = true; + } - ImGui::EndTable(); - } + ImGui::EndTable(); + } - ImGui::PopID(); - } + ImGui::PopID(); + } - void IGFD::FileDialog::prDrawThumbnailsGridView(ImVec2 vSize) - { - if (ImGui::BeginChild("##thumbnailsGridsFiles", vSize)) - { - // todo - } + void IGFD::FileDialog::prDrawThumbnailsGridView(ImVec2 vSize) + { + if (ImGui::BeginChild("##thumbnailsGridsFiles", vSize)) + { + // todo + } - ImGui::EndChild(); - } + ImGui::EndChild(); + } #endif - void IGFD::FileDialog::prDrawSidePane(float vHeight) - { - ImGui::SameLine(); + void IGFD::FileDialog::prDrawSidePane(float vHeight) + { + ImGui::SameLine(); - ImGui::BeginChild("##FileTypes", ImVec2(0, vHeight)); + ImGui::BeginChild("##FileTypes", ImVec2(0, vHeight)); - prFileDialogInternal.puDLGoptionsPane( - prFileDialogInternal.puFilterManager.GetSelectedFilter().filter.c_str(), - prFileDialogInternal.puDLGuserDatas, &prFileDialogInternal.puCanWeContinue); + prFileDialogInternal.puDLGoptionsPane( + prFileDialogInternal.puFilterManager.GetSelectedFilter().filter.c_str(), + prFileDialogInternal.puDLGuserDatas, &prFileDialogInternal.puCanWeContinue); - ImGui::EndChild(); - } + ImGui::EndChild(); + } - void IGFD::FileDialog::Close() - { - prFileDialogInternal.puDLGkey.clear(); - prFileDialogInternal.puShowDialog = false; - } + void IGFD::FileDialog::Close() + { + prFileDialogInternal.puDLGkey.clear(); + prFileDialogInternal.puShowDialog = false; + } - bool IGFD::FileDialog::WasOpenedThisFrame(const std::string& vKey) const - { - bool res = prFileDialogInternal.puShowDialog && prFileDialogInternal.puDLGkey == vKey; - if (res) - { - ImGuiContext& g = *GImGui; - res &= prFileDialogInternal.puLastImGuiFrameCount == g.FrameCount; // return true if a dialog was displayed in this frame - } - return res; - } + bool IGFD::FileDialog::WasOpenedThisFrame(const std::string& vKey) const + { + bool res = prFileDialogInternal.puShowDialog && prFileDialogInternal.puDLGkey == vKey; + if (res) + { + ImGuiContext& g = *GImGui; + res &= prFileDialogInternal.puLastImGuiFrameCount == g.FrameCount; // return true if a dialog was displayed in this frame + } + return res; + } - bool IGFD::FileDialog::WasOpenedThisFrame() const - { - bool res = prFileDialogInternal.puShowDialog; - if (res) - { - ImGuiContext& g = *GImGui; - res &= prFileDialogInternal.puLastImGuiFrameCount == g.FrameCount; // return true if a dialog was displayed in this frame - } - return res; - } + bool IGFD::FileDialog::WasOpenedThisFrame() const + { + bool res = prFileDialogInternal.puShowDialog; + if (res) + { + ImGuiContext& g = *GImGui; + res &= prFileDialogInternal.puLastImGuiFrameCount == g.FrameCount; // return true if a dialog was displayed in this frame + } + return res; + } - bool IGFD::FileDialog::IsOpened(const std::string& vKey) const - { - return (prFileDialogInternal.puShowDialog && prFileDialogInternal.puDLGkey == vKey); - } + bool IGFD::FileDialog::IsOpened(const std::string& vKey) const + { + return (prFileDialogInternal.puShowDialog && prFileDialogInternal.puDLGkey == vKey); + } - bool IGFD::FileDialog::IsOpened() const - { - return prFileDialogInternal.puShowDialog; - } + bool IGFD::FileDialog::IsOpened() const + { + return prFileDialogInternal.puShowDialog; + } - std::string IGFD::FileDialog::GetOpenedKey() const - { - if (prFileDialogInternal.puShowDialog) - return prFileDialogInternal.puDLGkey; - return ""; - } + std::string IGFD::FileDialog::GetOpenedKey() const + { + if (prFileDialogInternal.puShowDialog) + return prFileDialogInternal.puDLGkey; + return ""; + } - std::string IGFD::FileDialog::GetFilePathName() - { - return prFileDialogInternal.puFileManager.GetResultingFilePathName(prFileDialogInternal); - } + std::string IGFD::FileDialog::GetFilePathName() + { + return prFileDialogInternal.puFileManager.GetResultingFilePathName(prFileDialogInternal); + } - std::string IGFD::FileDialog::GetCurrentPath() - { - return prFileDialogInternal.puFileManager.GetResultingPath(); - } + std::string IGFD::FileDialog::GetCurrentPath() + { + return prFileDialogInternal.puFileManager.GetResultingPath(); + } - std::string IGFD::FileDialog::GetCurrentFileName() - { - return prFileDialogInternal.puFileManager.GetResultingFileName(prFileDialogInternal); - } + std::string IGFD::FileDialog::GetCurrentFileName() + { + return prFileDialogInternal.puFileManager.GetResultingFileName(prFileDialogInternal); + } - std::string IGFD::FileDialog::GetCurrentFilter() - { - return prFileDialogInternal.puFilterManager.GetSelectedFilter().filter; - } + std::string IGFD::FileDialog::GetCurrentFilter() + { + return prFileDialogInternal.puFilterManager.GetSelectedFilter().filter; + } - std::map IGFD::FileDialog::GetSelection() - { - return prFileDialogInternal.puFileManager.GetResultingSelection(); - } + std::map IGFD::FileDialog::GetSelection() + { + return prFileDialogInternal.puFileManager.GetResultingSelection(); + } - UserDatas IGFD::FileDialog::GetUserDatas() const - { - return prFileDialogInternal.puDLGuserDatas; - } + UserDatas IGFD::FileDialog::GetUserDatas() const + { + return prFileDialogInternal.puDLGuserDatas; + } - bool IGFD::FileDialog::IsOk() const - { - return prFileDialogInternal.puIsOk; - } + bool IGFD::FileDialog::IsOk() const + { + return prFileDialogInternal.puIsOk; + } - void IGFD::FileDialog::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const FileStyle& vInfos) - { - prFileDialogInternal.puFilterManager.SetFileStyle(vFlags, vCriteria, vInfos); - } + void IGFD::FileDialog::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const FileStyle& vInfos) + { + prFileDialogInternal.puFilterManager.SetFileStyle(vFlags, vCriteria, vInfos); + } - void IGFD::FileDialog::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const ImVec4& vColor, const std::string& vIcon, ImFont* vFont) - { - prFileDialogInternal.puFilterManager.SetFileStyle(vFlags, vCriteria, vColor, vIcon, vFont); - } + void IGFD::FileDialog::SetFileStyle(const IGFD_FileStyleFlags& vFlags, const char* vCriteria, const ImVec4& vColor, const std::string& vIcon, ImFont* vFont) + { + prFileDialogInternal.puFilterManager.SetFileStyle(vFlags, vCriteria, vColor, vIcon, vFont); + } - bool IGFD::FileDialog::GetFileStyle(const IGFD_FileStyleFlags& vFlags, const std::string& vCriteria, ImVec4* vOutColor, std::string* vOutIcon, ImFont **vOutFont) - { - return prFileDialogInternal.puFilterManager.GetFileStyle(vFlags, vCriteria, vOutColor, vOutIcon, vOutFont); - } + bool IGFD::FileDialog::GetFileStyle(const IGFD_FileStyleFlags& vFlags, const std::string& vCriteria, ImVec4* vOutColor, std::string* vOutIcon, ImFont **vOutFont) + { + return prFileDialogInternal.puFilterManager.GetFileStyle(vFlags, vCriteria, vOutColor, vOutIcon, vOutFont); + } - void IGFD::FileDialog::ClearFilesStyle() - { - prFileDialogInternal.puFilterManager.ClearFilesStyle(); - } + void IGFD::FileDialog::ClearFilesStyle() + { + prFileDialogInternal.puFilterManager.ClearFilesStyle(); + } - void IGFD::FileDialog::SetLocales(const int& vLocaleCategory, const std::string& vLocaleBegin, const std::string& vLocaleEnd) - { - prFileDialogInternal.puUseCustomLocale = true; - prFileDialogInternal.puLocaleBegin = vLocaleBegin; - prFileDialogInternal.puLocaleEnd = vLocaleEnd; - } + void IGFD::FileDialog::SetLocales(const int& vLocaleCategory, const std::string& vLocaleBegin, const std::string& vLocaleEnd) + { + prFileDialogInternal.puUseCustomLocale = true; + prFileDialogInternal.puLocaleBegin = vLocaleBegin; + prFileDialogInternal.puLocaleEnd = vLocaleEnd; + } - ////////////////////////////////////////////////////////////////////////////// - //// OVERWRITE DIALOG //////////////////////////////////////////////////////// - ////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////// + //// OVERWRITE DIALOG //////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////// - bool IGFD::FileDialog::prConfirm_Or_OpenOverWriteFileDialog_IfNeeded(bool vLastAction, ImGuiWindowFlags vFlags) - { - // if confirmation => return true for confirm the overwrite et quit the dialog - // if cancel => return false && set IsOk to false for keep inside the dialog + bool IGFD::FileDialog::prConfirm_Or_OpenOverWriteFileDialog_IfNeeded(bool vLastAction, ImGuiWindowFlags vFlags) + { + // if confirmation => return true for confirm the overwrite et quit the dialog + // if cancel => return false && set IsOk to false for keep inside the dialog - // if IsOk == false => return false for quit the dialog - if (!prFileDialogInternal.puIsOk && vLastAction) - { - QuitFrame(); - return true; - } + // if IsOk == false => return false for quit the dialog + if (!prFileDialogInternal.puIsOk && vLastAction) + { + QuitFrame(); + return true; + } - // if IsOk == true && no check of overwrite => return true for confirm the dialog - if (prFileDialogInternal.puIsOk && vLastAction && !(prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_ConfirmOverwrite)) - { - QuitFrame(); - return true; - } + // if IsOk == true && no check of overwrite => return true for confirm the dialog + if (prFileDialogInternal.puIsOk && vLastAction && !(prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_ConfirmOverwrite)) + { + QuitFrame(); + return true; + } - // if IsOk == true && check of overwrite => return false and show confirm to overwrite dialog - if ((prFileDialogInternal.puOkResultToConfirm || (prFileDialogInternal.puIsOk && vLastAction)) && - (prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_ConfirmOverwrite)) - { - if (prFileDialogInternal.puIsOk) // catched only one time - { - if (!prFileDialogInternal.puFileManager.IsFileExist(GetFilePathName())) // not existing => quit dialog - { - QuitFrame(); - return true; - } - else // existing => confirm dialog to open - { - prFileDialogInternal.puIsOk = false; - prFileDialogInternal.puOkResultToConfirm = true; - } - } + // if IsOk == true && check of overwrite => return false and show confirm to overwrite dialog + if ((prFileDialogInternal.puOkResultToConfirm || (prFileDialogInternal.puIsOk && vLastAction)) && + (prFileDialogInternal.puDLGflags & ImGuiFileDialogFlags_ConfirmOverwrite)) + { + if (prFileDialogInternal.puIsOk) // catched only one time + { + if (!prFileDialogInternal.puFileManager.IsFileExist(GetFilePathName())) // not existing => quit dialog + { + QuitFrame(); + return true; + } + else // existing => confirm dialog to open + { + prFileDialogInternal.puIsOk = false; + prFileDialogInternal.puOkResultToConfirm = true; + } + } - std::string name = OverWriteDialogTitleString "##" + prFileDialogInternal.puDLGtitle + prFileDialogInternal.puDLGkey + "OverWriteDialog"; + std::string name = OverWriteDialogTitleString "##" + prFileDialogInternal.puDLGtitle + prFileDialogInternal.puDLGkey + "OverWriteDialog"; - bool res = false; + bool res = false; - ImGui::OpenPopup(name.c_str()); - if (ImGui::BeginPopupModal(name.c_str(), (bool*)0, - vFlags | ImGuiWindowFlags_AlwaysAutoResize | - ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove)) - { - ImGui::SetWindowPos(prFileDialogInternal.puDialogCenterPos - ImGui::GetWindowSize() * 0.5f); // next frame needed for GetWindowSize to work + ImGui::OpenPopup(name.c_str()); + if (ImGui::BeginPopupModal(name.c_str(), (bool*)0, + vFlags | ImGuiWindowFlags_AlwaysAutoResize | + ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove)) + { + ImGui::SetWindowPos(prFileDialogInternal.puDialogCenterPos - ImGui::GetWindowSize() * 0.5f); // next frame needed for GetWindowSize to work - ImGui::Text("%s", OverWriteDialogMessageString); + ImGui::Text("%s", OverWriteDialogMessageString); - if (IMGUI_BUTTON(OverWriteDialogConfirmButtonString)) - { - prFileDialogInternal.puOkResultToConfirm = false; - prFileDialogInternal.puIsOk = true; - res = true; - ImGui::CloseCurrentPopup(); - } + if (IMGUI_BUTTON(OverWriteDialogConfirmButtonString)) + { + prFileDialogInternal.puOkResultToConfirm = false; + prFileDialogInternal.puIsOk = true; + res = true; + ImGui::CloseCurrentPopup(); + } - ImGui::SameLine(); + ImGui::SameLine(); - if (IMGUI_BUTTON(OverWriteDialogCancelButtonString)) - { - prFileDialogInternal.puOkResultToConfirm = false; - prFileDialogInternal.puIsOk = false; - res = false; - ImGui::CloseCurrentPopup(); - } + if (IMGUI_BUTTON(OverWriteDialogCancelButtonString)) + { + prFileDialogInternal.puOkResultToConfirm = false; + prFileDialogInternal.puIsOk = false; + res = false; + ImGui::CloseCurrentPopup(); + } - ImGui::EndPopup(); - } + ImGui::EndPopup(); + } - if (res) - { - QuitFrame(); - } - return res; - } + if (res) + { + QuitFrame(); + } + return res; + } - return false; - } + return false; + } } #endif // __cplusplus @@ -4555,574 +4555,574 @@ namespace IGFD // Return an initialized IGFD_Selection_Pair IMGUIFILEDIALOG_API IGFD_Selection_Pair IGFD_Selection_Pair_Get(void) { - IGFD_Selection_Pair res = {}; - res.fileName = nullptr; - res.filePathName = nullptr; - return res; + IGFD_Selection_Pair res = {}; + res.fileName = nullptr; + res.filePathName = nullptr; + return res; } // destroy only the content of vSelection_Pair IMGUIFILEDIALOG_API void IGFD_Selection_Pair_DestroyContent(IGFD_Selection_Pair* vSelection_Pair) { - if (vSelection_Pair) - { - delete[] vSelection_Pair->fileName; - delete[] vSelection_Pair->filePathName; - } + if (vSelection_Pair) + { + delete[] vSelection_Pair->fileName; + delete[] vSelection_Pair->filePathName; + } } // Return an initialized IGFD_Selection IMGUIFILEDIALOG_API IGFD_Selection IGFD_Selection_Get(void) { - return { nullptr, 0U }; + return { nullptr, 0U }; } // destroy only the content of vSelection IMGUIFILEDIALOG_API void IGFD_Selection_DestroyContent(IGFD_Selection* vSelection) { - if (vSelection) - { - if (vSelection->table) - { - for (size_t i = 0U; i < vSelection->count; i++) - { - IGFD_Selection_Pair_DestroyContent(&vSelection->table[i]); - } - delete[] vSelection->table; - } - vSelection->count = 0U; - } + if (vSelection) + { + if (vSelection->table) + { + for (size_t i = 0U; i < vSelection->count; i++) + { + IGFD_Selection_Pair_DestroyContent(&vSelection->table[i]); + } + delete[] vSelection->table; + } + vSelection->count = 0U; + } } // create an instance of ImGuiFileDialog IMGUIFILEDIALOG_API ImGuiFileDialog* IGFD_Create(void) { - return new ImGuiFileDialog(); + return new ImGuiFileDialog(); } // destroy the instance of ImGuiFileDialog IMGUIFILEDIALOG_API void IGFD_Destroy(ImGuiFileDialog* vContext) { - if (vContext) - { - delete vContext; - vContext = nullptr; - } + if (vContext) + { + delete vContext; + vContext = nullptr; + } } // standard dialog IMGUIFILEDIALOG_API void IGFD_OpenDialog( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vPath, - const char* vFileName, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vPath, + const char* vFileName, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenDialog( - vKey, vTitle, vFilters, vPath, vFileName, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenDialog( + vKey, vTitle, vFilters, vPath, vFileName, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API void IGFD_OpenDialog2( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vFilePathName, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vFilePathName, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenDialog( - vKey, vTitle, vFilters, vFilePathName, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenDialog( + vKey, vTitle, vFilters, vFilePathName, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API void IGFD_OpenPaneDialog( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vPath, - const char* vFileName, - IGFD_PaneFun vSidePane, - const float vSidePaneWidth, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vPath, + const char* vFileName, + IGFD_PaneFun vSidePane, + const float vSidePaneWidth, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenDialog( - vKey, vTitle, vFilters, - vPath, vFileName, - vSidePane, vSidePaneWidth, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenDialog( + vKey, vTitle, vFilters, + vPath, vFileName, + vSidePane, vSidePaneWidth, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API void IGFD_OpenPaneDialog2( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vFilePathName, - IGFD_PaneFun vSidePane, - const float vSidePaneWidth, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vFilePathName, + IGFD_PaneFun vSidePane, + const float vSidePaneWidth, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenDialog( - vKey, vTitle, vFilters, - vFilePathName, - vSidePane, vSidePaneWidth, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenDialog( + vKey, vTitle, vFilters, + vFilePathName, + vSidePane, vSidePaneWidth, + vCountSelectionMax, vUserDatas, flags); + } } // modal dialog IMGUIFILEDIALOG_API void IGFD_OpenModal( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vPath, - const char* vFileName, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vPath, + const char* vFileName, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenModal( - vKey, vTitle, vFilters, vPath, vFileName, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenModal( + vKey, vTitle, vFilters, vPath, vFileName, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API void IGFD_OpenModal2( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vFilePathName, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vFilePathName, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenModal( - vKey, vTitle, vFilters, vFilePathName, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenModal( + vKey, vTitle, vFilters, vFilePathName, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API void IGFD_OpenPaneModal( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vPath, - const char* vFileName, - IGFD_PaneFun vSidePane, - const float vSidePaneWidth, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vPath, + const char* vFileName, + IGFD_PaneFun vSidePane, + const float vSidePaneWidth, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenModal( - vKey, vTitle, vFilters, - vPath, vFileName, - vSidePane, vSidePaneWidth, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenModal( + vKey, vTitle, vFilters, + vPath, vFileName, + vSidePane, vSidePaneWidth, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API void IGFD_OpenPaneModal2( - ImGuiFileDialog* vContext, - const char* vKey, - const char* vTitle, - const char* vFilters, - const char* vFilePathName, - IGFD_PaneFun vSidePane, - const float vSidePaneWidth, - const int vCountSelectionMax, - void* vUserDatas, - ImGuiFileDialogFlags flags) + ImGuiFileDialog* vContext, + const char* vKey, + const char* vTitle, + const char* vFilters, + const char* vFilePathName, + IGFD_PaneFun vSidePane, + const float vSidePaneWidth, + const int vCountSelectionMax, + void* vUserDatas, + ImGuiFileDialogFlags flags) { - if (vContext) - { - vContext->OpenModal( - vKey, vTitle, vFilters, - vFilePathName, - vSidePane, vSidePaneWidth, - vCountSelectionMax, vUserDatas, flags); - } + if (vContext) + { + vContext->OpenModal( + vKey, vTitle, vFilters, + vFilePathName, + vSidePane, vSidePaneWidth, + vCountSelectionMax, vUserDatas, flags); + } } IMGUIFILEDIALOG_API bool IGFD_DisplayDialog(ImGuiFileDialog* vContext, - const char* vKey, ImGuiWindowFlags vFlags, ImVec2 vMinSize, ImVec2 vMaxSize) + const char* vKey, ImGuiWindowFlags vFlags, ImVec2 vMinSize, ImVec2 vMaxSize) { - if (vContext) - { - return vContext->Display(vKey, vFlags, vMinSize, vMaxSize); - } + if (vContext) + { + return vContext->Display(vKey, vFlags, vMinSize, vMaxSize); + } - return false; + return false; } IMGUIFILEDIALOG_API void IGFD_CloseDialog(ImGuiFileDialog* vContext) { - if (vContext) - { - vContext->Close(); - } + if (vContext) + { + vContext->Close(); + } } IMGUIFILEDIALOG_API bool IGFD_IsOk(ImGuiFileDialog* vContext) { - if (vContext) - { - return vContext->IsOk(); - } + if (vContext) + { + return vContext->IsOk(); + } - return false; + return false; } IMGUIFILEDIALOG_API bool IGFD_WasKeyOpenedThisFrame(ImGuiFileDialog* vContext, - const char* vKey) + const char* vKey) { - if (vContext) - { - vContext->WasOpenedThisFrame(vKey); - } + if (vContext) + { + vContext->WasOpenedThisFrame(vKey); + } - return false; + return false; } IMGUIFILEDIALOG_API bool IGFD_WasOpenedThisFrame(ImGuiFileDialog* vContext) { - if (vContext) - { - vContext->WasOpenedThisFrame(); - } + if (vContext) + { + vContext->WasOpenedThisFrame(); + } - return false; + return false; } IMGUIFILEDIALOG_API bool IGFD_IsKeyOpened(ImGuiFileDialog* vContext, - const char* vCurrentOpenedKey) + const char* vCurrentOpenedKey) { - if (vContext) - { - vContext->IsOpened(vCurrentOpenedKey); - } + if (vContext) + { + vContext->IsOpened(vCurrentOpenedKey); + } - return false; + return false; } IMGUIFILEDIALOG_API bool IGFD_IsOpened(ImGuiFileDialog* vContext) { - if (vContext) - { - vContext->IsOpened(); - } + if (vContext) + { + vContext->IsOpened(); + } - return false; + return false; } IMGUIFILEDIALOG_API IGFD_Selection IGFD_GetSelection(ImGuiFileDialog* vContext) { - IGFD_Selection res = IGFD_Selection_Get(); + IGFD_Selection res = IGFD_Selection_Get(); - if (vContext) - { - auto sel = vContext->GetSelection(); - if (!sel.empty()) - { - res.count = sel.size(); - res.table = new IGFD_Selection_Pair[res.count]; + if (vContext) + { + auto sel = vContext->GetSelection(); + if (!sel.empty()) + { + res.count = sel.size(); + res.table = new IGFD_Selection_Pair[res.count]; - size_t idx = 0U; - for (const auto& s : sel) - { - IGFD_Selection_Pair* pair = res.table + idx++; + size_t idx = 0U; + for (const auto& s : sel) + { + IGFD_Selection_Pair* pair = res.table + idx++; - // fileNameExt - if (!s.first.empty()) - { - size_t siz = s.first.size() + 1U; - pair->fileName = new char[siz]; + // fileNameExt + if (!s.first.empty()) + { + size_t siz = s.first.size() + 1U; + pair->fileName = new char[siz]; #ifndef MSVC - strncpy(pair->fileName, s.first.c_str(), siz); + strncpy(pair->fileName, s.first.c_str(), siz); #else - strncpy_s(pair->fileName, siz, s.first.c_str(), siz); + strncpy_s(pair->fileName, siz, s.first.c_str(), siz); #endif - pair->fileName[siz - 1U] = '\0'; - } + pair->fileName[siz - 1U] = '\0'; + } - // filePathName - if (!s.second.empty()) - { - size_t siz = s.first.size() + 1U; - pair->filePathName = new char[siz]; + // filePathName + if (!s.second.empty()) + { + size_t siz = s.first.size() + 1U; + pair->filePathName = new char[siz]; #ifndef MSVC - strncpy(pair->filePathName, s.first.c_str(), siz); + strncpy(pair->filePathName, s.first.c_str(), siz); #else - strncpy_s(pair->filePathName, siz, s.first.c_str(), siz); + strncpy_s(pair->filePathName, siz, s.first.c_str(), siz); #endif - pair->filePathName[siz - 1U] = '\0'; - } - } + pair->filePathName[siz - 1U] = '\0'; + } + } - return res; - } - } + return res; + } + } - return res; + return res; } IMGUIFILEDIALOG_API char* IGFD_GetFilePathName(ImGuiFileDialog* vContext) { - char* res = nullptr; + char* res = nullptr; - if (vContext) - { - auto s = vContext->GetFilePathName(); - if (!s.empty()) - { - size_t siz = s.size() + 1U; - res = new char[siz]; + if (vContext) + { + auto s = vContext->GetFilePathName(); + if (!s.empty()) + { + size_t siz = s.size() + 1U; + res = new char[siz]; #ifndef MSVC - strncpy(res, s.c_str(), siz); + strncpy(res, s.c_str(), siz); #else - strncpy_s(res, siz, s.c_str(), siz); + strncpy_s(res, siz, s.c_str(), siz); #endif - res[siz - 1U] = '\0'; - } - } + res[siz - 1U] = '\0'; + } + } - return res; + return res; } IMGUIFILEDIALOG_API char* IGFD_GetCurrentFileName(ImGuiFileDialog* vContext) { - char* res = nullptr; + char* res = nullptr; - if (vContext) - { - auto s = vContext->GetCurrentFileName(); - if (!s.empty()) - { - size_t siz = s.size() + 1U; - res = new char[siz]; + if (vContext) + { + auto s = vContext->GetCurrentFileName(); + if (!s.empty()) + { + size_t siz = s.size() + 1U; + res = new char[siz]; #ifndef MSVC - strncpy(res, s.c_str(), siz); + strncpy(res, s.c_str(), siz); #else - strncpy_s(res, siz, s.c_str(), siz); + strncpy_s(res, siz, s.c_str(), siz); #endif - res[siz - 1U] = '\0'; - } - } + res[siz - 1U] = '\0'; + } + } - return res; + return res; } IMGUIFILEDIALOG_API char* IGFD_GetCurrentPath(ImGuiFileDialog* vContext) { - char* res = nullptr; + char* res = nullptr; - if (vContext) - { - auto s = vContext->GetCurrentPath(); - if (!s.empty()) - { - size_t siz = s.size() + 1U; - res = new char[siz]; + if (vContext) + { + auto s = vContext->GetCurrentPath(); + if (!s.empty()) + { + size_t siz = s.size() + 1U; + res = new char[siz]; #ifndef MSVC - strncpy(res, s.c_str(), siz); + strncpy(res, s.c_str(), siz); #else - strncpy_s(res, siz, s.c_str(), siz); + strncpy_s(res, siz, s.c_str(), siz); #endif - res[siz - 1U] = '\0'; - } - } + res[siz - 1U] = '\0'; + } + } - return res; + return res; } IMGUIFILEDIALOG_API char* IGFD_GetCurrentFilter(ImGuiFileDialog* vContext) { - char* res = nullptr; + char* res = nullptr; - if (vContext) - { - auto s = vContext->GetCurrentFilter(); - if (!s.empty()) - { - size_t siz = s.size() + 1U; - res = new char[siz]; + if (vContext) + { + auto s = vContext->GetCurrentFilter(); + if (!s.empty()) + { + size_t siz = s.size() + 1U; + res = new char[siz]; #ifndef MSVC - strncpy(res, s.c_str(), siz); + strncpy(res, s.c_str(), siz); #else - strncpy_s(res, siz, s.c_str(), siz); + strncpy_s(res, siz, s.c_str(), siz); #endif - res[siz - 1U] = '\0'; - } - } + res[siz - 1U] = '\0'; + } + } - return res; + return res; } IMGUIFILEDIALOG_API void* IGFD_GetUserDatas(ImGuiFileDialog* vContext) { - if (vContext) - { - return vContext->GetUserDatas(); - } + if (vContext) + { + return vContext->GetUserDatas(); + } - return nullptr; + return nullptr; } IMGUIFILEDIALOG_API void IGFD_SetFileStyle(ImGuiFileDialog* vContext, - IGFD_FileStyleFlags vFlags, const char* vCriteria, ImVec4 vColor, const char* vIcon, ImFont* vFont) //-V813 + IGFD_FileStyleFlags vFlags, const char* vCriteria, ImVec4 vColor, const char* vIcon, ImFont* vFont) //-V813 { - if (vContext) - { - vContext->SetFileStyle(vFlags, vCriteria, vColor, vIcon, vFont); - } + if (vContext) + { + vContext->SetFileStyle(vFlags, vCriteria, vColor, vIcon, vFont); + } } IMGUIFILEDIALOG_API void IGFD_SetFileStyle2(ImGuiFileDialog* vContext, - IGFD_FileStyleFlags vFlags, const char* vCriteria, float vR, float vG, float vB, float vA, const char* vIcon, ImFont* vFont) + IGFD_FileStyleFlags vFlags, const char* vCriteria, float vR, float vG, float vB, float vA, const char* vIcon, ImFont* vFont) { - if (vContext) - { - vContext->SetFileStyle(vFlags, vCriteria, ImVec4(vR, vG, vB, vA), vIcon, vFont); - } + if (vContext) + { + vContext->SetFileStyle(vFlags, vCriteria, ImVec4(vR, vG, vB, vA), vIcon, vFont); + } } IMGUIFILEDIALOG_API bool IGFD_GetFileStyle(ImGuiFileDialog* vContext, - IGFD_FileStyleFlags vFlags, const char* vCriteria, ImVec4* vOutColor, char** vOutIcon, ImFont** vOutFont) + IGFD_FileStyleFlags vFlags, const char* vCriteria, ImVec4* vOutColor, char** vOutIcon, ImFont** vOutFont) { - if (vContext) - { - std::string icon; - bool res = vContext->GetFileStyle(vFlags, vCriteria, vOutColor, &icon, vOutFont); - if (!icon.empty() && vOutIcon) - { - size_t siz = icon.size() + 1U; - *vOutIcon = new char[siz]; + if (vContext) + { + std::string icon; + bool res = vContext->GetFileStyle(vFlags, vCriteria, vOutColor, &icon, vOutFont); + if (!icon.empty() && vOutIcon) + { + size_t siz = icon.size() + 1U; + *vOutIcon = new char[siz]; #ifndef MSVC - strncpy(*vOutIcon, icon.c_str(), siz); + strncpy(*vOutIcon, icon.c_str(), siz); #else - strncpy_s(*vOutIcon, siz, icon.c_str(), siz); + strncpy_s(*vOutIcon, siz, icon.c_str(), siz); #endif - (*vOutIcon)[siz - 1U] = '\0'; - } - return res; - } + (*vOutIcon)[siz - 1U] = '\0'; + } + return res; + } - return false; + return false; } IMGUIFILEDIALOG_API void IGFD_ClearFilesStyle(ImGuiFileDialog* vContext) { - if (vContext) - { - vContext->ClearFilesStyle(); - } + if (vContext) + { + vContext->ClearFilesStyle(); + } } IMGUIFILEDIALOG_API void SetLocales(ImGuiFileDialog* vContext, const int vCategory, const char* vBeginLocale, const char* vEndLocale) { - if (vContext) - { - vContext->SetLocales(vCategory, (vBeginLocale ? vBeginLocale : ""), (vEndLocale ? vEndLocale : "")); - } + if (vContext) + { + vContext->SetLocales(vCategory, (vBeginLocale ? vBeginLocale : ""), (vEndLocale ? vEndLocale : "")); + } } #ifdef USE_EXPLORATION_BY_KEYS IMGUIFILEDIALOG_API void IGFD_SetFlashingAttenuationInSeconds(ImGuiFileDialog* vContext, float vAttenValue) { - if (vContext) - { - vContext->SetFlashingAttenuationInSeconds(vAttenValue); - } + if (vContext) + { + vContext->SetFlashingAttenuationInSeconds(vAttenValue); + } } #endif #ifdef USE_BOOKMARK IMGUIFILEDIALOG_API char* IGFD_SerializeBookmarks(ImGuiFileDialog* vContext) { - char* res = nullptr; + char* res = nullptr; - if (vContext) - { - auto s = vContext->SerializeBookmarks(); - if (!s.empty()) - { - size_t siz = s.size() + 1U; - res = new char[siz]; + if (vContext) + { + auto s = vContext->SerializeBookmarks(); + if (!s.empty()) + { + size_t siz = s.size() + 1U; + res = new char[siz]; #ifndef MSVC - strncpy(res, s.c_str(), siz); + strncpy(res, s.c_str(), siz); #else - strncpy_s(res, siz, s.c_str(), siz); + strncpy_s(res, siz, s.c_str(), siz); #endif - res[siz - 1U] = '\0'; - } - } + res[siz - 1U] = '\0'; + } + } - return res; + return res; } IMGUIFILEDIALOG_API void IGFD_DeserializeBookmarks(ImGuiFileDialog* vContext, const char* vBookmarks) { - if (vContext) - { - vContext->DeserializeBookmarks(vBookmarks); - } + if (vContext) + { + vContext->DeserializeBookmarks(vBookmarks); + } } #endif #ifdef USE_THUMBNAILS IMGUIFILEDIALOG_API void SetCreateThumbnailCallback(ImGuiFileDialog* vContext, const IGFD_CreateThumbnailFun vCreateThumbnailFun) { - if (vContext) - { - vContext->SetCreateThumbnailCallback(vCreateThumbnailFun); - } + if (vContext) + { + vContext->SetCreateThumbnailCallback(vCreateThumbnailFun); + } } IMGUIFILEDIALOG_API void SetDestroyThumbnailCallback(ImGuiFileDialog* vContext, const IGFD_DestroyThumbnailFun vDestroyThumbnailFun) { - if (vContext) - { - vContext->SetDestroyThumbnailCallback(vDestroyThumbnailFun); - } + if (vContext) + { + vContext->SetDestroyThumbnailCallback(vDestroyThumbnailFun); + } } IMGUIFILEDIALOG_API void ManageGPUThumbnails(ImGuiFileDialog* vContext) { - if (vContext) - { - vContext->ManageGPUThumbnails(); - } + if (vContext) + { + vContext->ManageGPUThumbnails(); + } } #endif // USE_THUMBNAILS diff --git a/extern/igfd/ImGuiFileDialog.h b/extern/igfd/ImGuiFileDialog.h index 9c2d246f..5ab7f6c8 100644 --- a/extern/igfd/ImGuiFileDialog.h +++ b/extern/igfd/ImGuiFileDialog.h @@ -85,20 +85,20 @@ void drawGui() { // open Dialog Simple if (ImGui::Button("Open File Dialog")) - ImGuiFileDialog::Instance()->OpenDialog("ChooseFileDlgKey", "Choose File", ".cpp,.h,.hpp", "."); + ImGuiFileDialog::Instance()->OpenDialog("ChooseFileDlgKey", "Choose File", ".cpp,.h,.hpp", "."); // display if (ImGuiFileDialog::Instance()->FileDialog("ChooseFileDlgKey")) { - // action if OK - if (ImGuiFileDialog::Instance()->IsOk == true) - { - std::string filePathName = ImGuiFileDialog::Instance()->GetFilePathName(); - std::string filePath = ImGuiFileDialog::Instance()->GetCurrentPath(); - // action - } - // close - ImGuiFileDialog::Instance()->CloseDialog("ChooseFileDlgKey"); + // action if OK + if (ImGuiFileDialog::Instance()->IsOk == true) + { + std::string filePathName = ImGuiFileDialog::Instance()->GetFilePathName(); + std::string filePath = ImGuiFileDialog::Instance()->GetCurrentPath(); + // action + } + // close + ImGuiFileDialog::Instance()->CloseDialog("ChooseFileDlgKey"); } } @@ -121,40 +121,40 @@ Example code : static bool canValidateDialog = false; inline void InfosPane(std::string& vFilter, IGFD::UserDatas vUserDatas, bool *vCantContinue) // if vCantContinue is false, the user cant validate the dialog { - ImGui::TextColored(ImVec4(0, 1, 1, 1), "Infos Pane"); - ImGui::Text("Selected Filter : %s", vFilter.c_str()); - if (vUserDatas) - ImGui::Text("UserDatas : %s", vUserDatas); - ImGui::Checkbox("if not checked you cant validate the dialog", &canValidateDialog); - if (vCantContinue) - *vCantContinue = canValidateDialog; + ImGui::TextColored(ImVec4(0, 1, 1, 1), "Infos Pane"); + ImGui::Text("Selected Filter : %s", vFilter.c_str()); + if (vUserDatas) + ImGui::Text("UserDatas : %s", vUserDatas); + ImGui::Checkbox("if not checked you cant validate the dialog", &canValidateDialog); + if (vCantContinue) + *vCantContinue = canValidateDialog; } void drawGui() { // open Dialog with Pane if (ImGui::Button("Open File Dialog with a custom pane")) - ImGuiFileDialog::Instance()->OpenDialog("ChooseFileDlgKey", "Choose File", ".cpp,.h,.hpp", - ".", "", std::bind(&InfosPane, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3), 350, 1, IGFD::UserDatas("InfosPane")); + ImGuiFileDialog::Instance()->OpenDialog("ChooseFileDlgKey", "Choose File", ".cpp,.h,.hpp", + ".", "", std::bind(&InfosPane, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3), 350, 1, IGFD::UserDatas("InfosPane")); // display and action if ok if (ImGuiFileDialog::Instance()->FileDialog("ChooseFileDlgKey")) { - if (ImGuiFileDialog::Instance()->IsOk == true) - { - std::string filePathName = ImGuiFileDialog::Instance()->GetFilePathName(); - std::string filePath = ImGuiFileDialog::Instance()->GetCurrentPath(); - std::string filter = ImGuiFileDialog::Instance()->GetCurrentFilter(); - // here convert from string because a string was passed as a userDatas, but it can be what you want - std::string userDatas; - if (ImGuiFileDialog::Instance()->GetUserDatas()) - userDatas = std::string((const char*)ImGuiFileDialog::Instance()->GetUserDatas()); - auto selection = ImGuiFileDialog::Instance()->GetSelection(); // multiselection + if (ImGuiFileDialog::Instance()->IsOk == true) + { + std::string filePathName = ImGuiFileDialog::Instance()->GetFilePathName(); + std::string filePath = ImGuiFileDialog::Instance()->GetCurrentPath(); + std::string filter = ImGuiFileDialog::Instance()->GetCurrentFilter(); + // here convert from string because a string was passed as a userDatas, but it can be what you want + std::string userDatas; + if (ImGuiFileDialog::Instance()->GetUserDatas()) + userDatas = std::string((const char*)ImGuiFileDialog::Instance()->GetUserDatas()); + auto selection = ImGuiFileDialog::Instance()->GetSelection(); // multiselection - // action - } - // close - ImGuiFileDialog::Instance()->CloseDialog("ChooseFileDlgKey"); + // action + } + // close + ImGuiFileDialog::Instance()->CloseDialog("ChooseFileDlgKey"); } } @@ -170,13 +170,13 @@ the general form is : ImGuiFileDialog::Instance()->SetFileStyle(styleType, criteria, color, icon, font); styleType can be thoses : -IGFD_FileStyle_None // define none style -IGFD_FileStyleByTypeFile // define style for all files -IGFD_FileStyleByTypeDir // define style for all dir -IGFD_FileStyleByTypeLink // define style for all link -IGFD_FileStyleByExtention // define style by extention, for files or links -IGFD_FileStyleByFullName // define style for particular file/dir/link full name (filename + extention) -IGFD_FileStyleByContainedInFullName // define style for file/dir/link when criteria is contained in full name +IGFD_FileStyle_None // define none style +IGFD_FileStyleByTypeFile // define style for all files +IGFD_FileStyleByTypeDir // define style for all dir +IGFD_FileStyleByTypeLink // define style for all link +IGFD_FileStyleByExtention // define style by extention, for files or links +IGFD_FileStyleByFullName // define style for particular file/dir/link full name (filename + extention) +IGFD_FileStyleByContainedInFullName // define style for file/dir/link when criteria is contained in full name samples : @@ -341,14 +341,14 @@ define if a dialog will be for Open or Save behavior. (and its wanted :) ) Example code For Standard Dialog : Example code : ImGuiFileDialog::Instance()->OpenDialog("ChooseFileDlgKey", - ICON_IGFD_SAVE " Choose a File", filters, - ".", "", 1, nullptr, ImGuiFileDialogFlags_ConfirmOverwrite); + ICON_IGFD_SAVE " Choose a File", filters, + ".", "", 1, nullptr, ImGuiFileDialogFlags_ConfirmOverwrite); Example code For Modal Dialog : Example code : ImGuiFileDialog::Instance()->OpenModal("ChooseFileDlgKey", - ICON_IGFD_SAVE " Choose a File", filters, - ".", "", 1, nullptr, ImGuiFileDialogFlags_ConfirmOverwrite); + ICON_IGFD_SAVE " Choose a File", filters, + ".", "", 1, nullptr, ImGuiFileDialogFlags_ConfirmOverwrite); This dialog will only verify the file in the file field. So Not to be used with GetSelection() @@ -372,8 +372,8 @@ Example code : ----------------------------------------------------------------------------------------------------------------- flag must be specified in OpenDialog or OpenModal -* ImGuiFileDialogFlags_ConfirmOverwrite => show confirm to overwrite dialog -* ImGuiFileDialogFlags_DontShowHiddenFiles => dont show hidden file (file starting with a .) +* ImGuiFileDialogFlags_ConfirmOverwrite => show confirm to overwrite dialog +* ImGuiFileDialogFlags_DontShowHiddenFiles => dont show hidden file (file starting with a .) ----------------------------------------------------------------------------------------------------------------- ## Open / Save dialog Behavior : @@ -419,43 +419,43 @@ Example code : // Create thumbnails texture ImGuiFileDialog::Instance()->SetCreateThumbnailCallback([](IGFD_Thumbnail_Info *vThumbnail_Info) -> void { - if (vThumbnail_Info && - vThumbnail_Info->isReadyToUpload && - vThumbnail_Info->textureFileDatas) - { - GLuint textureId = 0; - glGenTextures(1, &textureId); - vThumbnail_Info->textureID = (void*)textureId; + if (vThumbnail_Info && + vThumbnail_Info->isReadyToUpload && + vThumbnail_Info->textureFileDatas) + { + GLuint textureId = 0; + glGenTextures(1, &textureId); + vThumbnail_Info->textureID = (void*)textureId; - glBindTexture(GL_TEXTURE_2D, textureId); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, - (GLsizei)vThumbnail_Info->textureWidth, (GLsizei)vThumbnail_Info->textureHeight, - 0, GL_RGBA, GL_UNSIGNED_BYTE, vThumbnail_Info->textureFileDatas); - glFinish(); - glBindTexture(GL_TEXTURE_2D, 0); + glBindTexture(GL_TEXTURE_2D, textureId); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, + (GLsizei)vThumbnail_Info->textureWidth, (GLsizei)vThumbnail_Info->textureHeight, + 0, GL_RGBA, GL_UNSIGNED_BYTE, vThumbnail_Info->textureFileDatas); + glFinish(); + glBindTexture(GL_TEXTURE_2D, 0); - delete[] vThumbnail_Info->textureFileDatas; - vThumbnail_Info->textureFileDatas = nullptr; + delete[] vThumbnail_Info->textureFileDatas; + vThumbnail_Info->textureFileDatas = nullptr; - vThumbnail_Info->isReadyToUpload = false; - vThumbnail_Info->isReadyToDisplay = true; - } + vThumbnail_Info->isReadyToUpload = false; + vThumbnail_Info->isReadyToDisplay = true; + } }); Example code : // Destroy thumbnails texture ImGuiFileDialog::Instance()->SetDestroyThumbnailCallback([](IGFD_Thumbnail_Info* vThumbnail_Info) { - if (vThumbnail_Info) - { - GLuint texID = (GLuint)vThumbnail_Info->textureID; - glDeleteTextures(1, &texID); - glFinish(); - } + if (vThumbnail_Info) + { + GLuint texID = (GLuint)vThumbnail_Info->textureID; + glDeleteTextures(1, &texID); + glFinish(); + } }); Example code : @@ -477,17 +477,17 @@ ImGuiFileDialog *cfileDialog = IGFD_Create(); // open dialog if (igButton("Open File", buttonSize)) { - IGFD_OpenDialog(cfiledialog, - "filedlg", // dialog key (make it possible to have different treatment reagrding the dialog key - "Open a File", // dialog title - "c files(*.c *.h){.c,.h}", // dialog filter syntax : simple => .h,.c,.pp, etc and collections : text1{filter0,filter1,filter2}, text2{filter0,filter1,filter2}, etc.. - ".", // base directory for files scan - "", // base filename - 0, // a fucntion for display a right pane if you want - 0.0f, // base width of the pane - 0, // count selection : 0 infinite, 1 one file (default), n (n files) - "User data !", // some user datas - ImGuiFileDialogFlags_ConfirmOverwrite); // ImGuiFileDialogFlags + IGFD_OpenDialog(cfiledialog, + "filedlg", // dialog key (make it possible to have different treatment reagrding the dialog key + "Open a File", // dialog title + "c files(*.c *.h){.c,.h}", // dialog filter syntax : simple => .h,.c,.pp, etc and collections : text1{filter0,filter1,filter2}, text2{filter0,filter1,filter2}, etc.. + ".", // base directory for files scan + "", // base filename + 0, // a fucntion for display a right pane if you want + 0.0f, // base width of the pane + 0, // count selection : 0 infinite, 1 one file (default), n (n files) + "User data !", // some user datas + ImGuiFileDialogFlags_ConfirmOverwrite); // ImGuiFileDialogFlags } ImGuiIO* ioptr = igGetIO(); @@ -501,34 +501,34 @@ minSize.y = maxSize.y * 0.25f; // display dialog if (IGFD_DisplayDialog(cfiledialog, "filedlg", ImGuiWindowFlags_NoCollapse, minSize, maxSize)) { - if (IGFD_IsOk(cfiledialog)) // result ok - { - char* cfilePathName = IGFD_GetFilePathName(cfiledialog); - printf("GetFilePathName : %s\n", cfilePathName); - char* cfilePath = IGFD_GetCurrentPath(cfiledialog); - printf("GetCurrentPath : %s\n", cfilePath); - char* cfilter = IGFD_GetCurrentFilter(cfiledialog); - printf("GetCurrentFilter : %s\n", cfilter); - // here convert from string because a string was passed as a userDatas, but it can be what you want - void* cdatas = IGFD_GetUserDatas(cfiledialog); - if (cdatas) - printf("GetUserDatas : %s\n", (const char*)cdatas); - struct IGFD_Selection csel = IGFD_GetSelection(cfiledialog); // multi selection - printf("Selection :\n"); - for (int i = 0; i < (int)csel.count; i++) - { - printf("(%i) FileName %s => path %s\n", i, csel.table[i].fileName, csel.table[i].filePathName); - } - // action + if (IGFD_IsOk(cfiledialog)) // result ok + { + char* cfilePathName = IGFD_GetFilePathName(cfiledialog); + printf("GetFilePathName : %s\n", cfilePathName); + char* cfilePath = IGFD_GetCurrentPath(cfiledialog); + printf("GetCurrentPath : %s\n", cfilePath); + char* cfilter = IGFD_GetCurrentFilter(cfiledialog); + printf("GetCurrentFilter : %s\n", cfilter); + // here convert from string because a string was passed as a userDatas, but it can be what you want + void* cdatas = IGFD_GetUserDatas(cfiledialog); + if (cdatas) + printf("GetUserDatas : %s\n", (const char*)cdatas); + struct IGFD_Selection csel = IGFD_GetSelection(cfiledialog); // multi selection + printf("Selection :\n"); + for (int i = 0; i < (int)csel.count; i++) + { + printf("(%i) FileName %s => path %s\n", i, csel.table[i].fileName, csel.table[i].filePathName); + } + // action - // destroy - if (cfilePathName) free(cfilePathName); - if (cfilePath) free(cfilePath); - if (cfilter) free(cfilter); + // destroy + if (cfilePathName) free(cfilePathName); + if (cfilePath) free(cfilePath); + if (cfilter) free(cfilter); - IGFD_Selection_DestroyContent(&csel); - } - IGFD_CloseDialog(cfiledialog); + IGFD_Selection_DestroyContent(&csel); + } + IGFD_CloseDialog(cfiledialog); } // destroy ImGuiFileDialog @@ -572,9 +572,9 @@ ImGuiFontStudio is using also ImGuiFileDialog. #define IMGUIFILEDIALOG_H #if defined(__WIN32__) || defined(_WIN32) - #ifndef WIN32 - #define WIN32 - #endif // WIN32 + #ifndef WIN32 + #define WIN32 + #endif // WIN32 #endif // defined(__WIN32__) || defined(_WIN32) #define IMGUIFILEDIALOG_VERSION "v0.6.4" @@ -589,43 +589,43 @@ ImGuiFontStudio is using also ImGuiFileDialog. typedef int IGFD_FileStyleFlags; // -> enum IGFD_FileStyleFlags_ enum IGFD_FileStyleFlags_ // by evaluation / priority order { - IGFD_FileStyle_None = 0, // define none style - IGFD_FileStyleByTypeFile = (1 << 0), // define style for all files - IGFD_FileStyleByTypeDir = (1 << 1), // define style for all dir - IGFD_FileStyleByTypeLink = (1 << 2), // define style for all link - IGFD_FileStyleByExtention = (1 << 3), // define style by extention, for files or links - IGFD_FileStyleByFullName = (1 << 4), // define style for particular file/dir/link full name (filename + extention) - IGFD_FileStyleByContainedInFullName = (1 << 5), // define style for file/dir/link when criteria is contained in full name + IGFD_FileStyle_None = 0, // define none style + IGFD_FileStyleByTypeFile = (1 << 0), // define style for all files + IGFD_FileStyleByTypeDir = (1 << 1), // define style for all dir + IGFD_FileStyleByTypeLink = (1 << 2), // define style for all link + IGFD_FileStyleByExtention = (1 << 3), // define style by extention, for files or links + IGFD_FileStyleByFullName = (1 << 4), // define style for particular file/dir/link full name (filename + extention) + IGFD_FileStyleByContainedInFullName = (1 << 5), // define style for file/dir/link when criteria is contained in full name }; typedef int ImGuiFileDialogFlags; // -> enum ImGuiFileDialogFlags_ enum ImGuiFileDialogFlags_ { - ImGuiFileDialogFlags_None = 0, - ImGuiFileDialogFlags_ConfirmOverwrite = (1 << 0), // show confirm to overwrite dialog - ImGuiFileDialogFlags_DontShowHiddenFiles = (1 << 1), // dont show hidden file (file starting with a .) - ImGuiFileDialogFlags_DisableCreateDirectoryButton = (1 << 2), // disable the create directory button - ImGuiFileDialogFlags_HideColumnType = (1 << 3), // hide column file type - ImGuiFileDialogFlags_HideColumnSize = (1 << 4), // hide column file size - ImGuiFileDialogFlags_HideColumnDate = (1 << 5), // hide column file date + ImGuiFileDialogFlags_None = 0, + ImGuiFileDialogFlags_ConfirmOverwrite = (1 << 0), // show confirm to overwrite dialog + ImGuiFileDialogFlags_DontShowHiddenFiles = (1 << 1), // dont show hidden file (file starting with a .) + ImGuiFileDialogFlags_DisableCreateDirectoryButton = (1 << 2), // disable the create directory button + ImGuiFileDialogFlags_HideColumnType = (1 << 3), // hide column file type + ImGuiFileDialogFlags_HideColumnSize = (1 << 4), // hide column file size + ImGuiFileDialogFlags_HideColumnDate = (1 << 5), // hide column file date #ifdef USE_THUMBNAILS - ImGuiFileDialogFlags_DisableThumbnailMode = (1 << 6), // disable the thumbnail mode + ImGuiFileDialogFlags_DisableThumbnailMode = (1 << 6), // disable the thumbnail mode #endif - ImGuiFileDialogFlags_Default = ImGuiFileDialogFlags_ConfirmOverwrite + ImGuiFileDialogFlags_Default = ImGuiFileDialogFlags_ConfirmOverwrite }; #ifdef USE_THUMBNAILS struct IGFD_Thumbnail_Info { - int isReadyToDisplay = 0; // ready to be rendered, so texture created - int isReadyToUpload = 0; // ready to upload to gpu - int isLoadingOrLoaded = 0; // was sent to laoding or loaded - void* textureID = 0; // 2d texture id (void* is like ImtextureID type) (GL, DX, VK, Etc..) - unsigned char* textureFileDatas = 0; // file texture datas, will be rested to null after gpu upload - int textureWidth = 0; // width of the texture to upload - int textureHeight = 0; // height of the texture to upload - int textureChannels = 0; // count channels of the texture to upload - void* userDatas = 0; // user datas + int isReadyToDisplay = 0; // ready to be rendered, so texture created + int isReadyToUpload = 0; // ready to upload to gpu + int isLoadingOrLoaded = 0; // was sent to laoding or loaded + void* textureID = 0; // 2d texture id (void* is like ImtextureID type) (GL, DX, VK, Etc..) + unsigned char* textureFileDatas = 0; // file texture datas, will be rested to null after gpu upload + int textureWidth = 0; // width of the texture to upload + int textureHeight = 0; // height of the texture to upload + int textureChannels = 0; // count channels of the texture to upload + void* userDatas = 0; // user datas }; #endif // USE_THUMBNAILS @@ -659,680 +659,680 @@ namespace IGFD #define MAX_PATH_BUFFER_SIZE 1024 #endif // MAX_PATH_BUFFER_SIZE - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class FileDialogInternal; + class FileDialogInternal; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class SearchManager - { - public: - std::string puSearchTag; - char puSearchBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; - bool puSearchInputIsActive = false; + class SearchManager + { + public: + std::string puSearchTag; + char puSearchBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; + bool puSearchInputIsActive = false; - public: - void Clear(); // clear datas - void DrawSearchBar(FileDialogInternal& vFileDialogInternal); // draw the search bar - }; + public: + void Clear(); // clear datas + void DrawSearchBar(FileDialogInternal& vFileDialogInternal); // draw the search bar + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class Utils - { - public: - struct PathStruct - { - std::string path; - std::string name; - std::string ext; - bool isOk = false; - }; + class Utils + { + public: + struct PathStruct + { + std::string path; + std::string name; + std::string ext; + bool isOk = false; + }; - public: - static bool Splitter(bool split_vertically, float thickness, float* size1, float* size2, float min_size1, float min_size2, float splitter_long_axis_size = -1.0f); - static bool ReplaceString(std::string& str, const std::string& oldStr, const std::string& newStr); - static bool IsDirectoryExist(const std::string& name); - static bool CreateDirectoryIfNotExist(const std::string& name); - static PathStruct ParsePathFileName(const std::string& vPathFileName); - static void AppendToBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr); - static void ResetBuffer(char* vBuffer); - static void SetBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr); + public: + static bool Splitter(bool split_vertically, float thickness, float* size1, float* size2, float min_size1, float min_size2, float splitter_long_axis_size = -1.0f); + static bool ReplaceString(std::string& str, const std::string& oldStr, const std::string& newStr); + static bool IsDirectoryExist(const std::string& name); + static bool CreateDirectoryIfNotExist(const std::string& name); + static PathStruct ParsePathFileName(const std::string& vPathFileName); + static void AppendToBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr); + static void ResetBuffer(char* vBuffer); + static void SetBuffer(char* vBuffer, size_t vBufferLen, const std::string& vStr); #ifdef WIN32 - static bool WReplaceString(std::wstring& str, const std::wstring& oldStr, const std::wstring& newStr); - static std::vector WSplitStringToVector(const std::wstring& text, char delimiter, bool pushEmpty); - static std::string wstring_to_string(const std::wstring& wstr); - static std::wstring string_to_wstring(const std::string& mbstr); + static bool WReplaceString(std::wstring& str, const std::wstring& oldStr, const std::wstring& newStr); + static std::vector WSplitStringToVector(const std::wstring& text, char delimiter, bool pushEmpty); + static std::string wstring_to_string(const std::wstring& wstr); + static std::wstring string_to_wstring(const std::string& mbstr); #endif - static std::vector SplitStringToVector(const std::string& text, char delimiter, bool pushEmpty); - static std::vector GetDrivesList(); - }; + static std::vector SplitStringToVector(const std::string& text, char delimiter, bool pushEmpty); + static std::vector GetDrivesList(); + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class FileStyle - { - public: - ImVec4 color = ImVec4(0, 0, 0, 0); - std::string icon; - ImFont* font = nullptr; - IGFD_FileStyleFlags flags = 0; + class FileStyle + { + public: + ImVec4 color = ImVec4(0, 0, 0, 0); + std::string icon; + ImFont* font = nullptr; + IGFD_FileStyleFlags flags = 0; - public: - FileStyle(); - FileStyle(const FileStyle& vStyle); - FileStyle(const ImVec4& vColor, const std::string& vIcon = "", ImFont* vFont = nullptr); - }; + public: + FileStyle(); + FileStyle(const FileStyle& vStyle); + FileStyle(const ImVec4& vColor, const std::string& vIcon = "", ImFont* vFont = nullptr); + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class FileInfos; - class FilterManager - { - public: - class FilterInfos - { - public: - std::string filter; - std::set collectionfilters; + class FileInfos; + class FilterManager + { + public: + class FilterInfos + { + public: + std::string filter; + std::set collectionfilters; - public: - void clear(); // clear the datas - bool empty() const; // is filter empty - bool exist(const std::string& vFilter) const; // is filter exist - }; + public: + void clear(); // clear the datas + bool empty() const; // is filter empty + bool exist(const std::string& vFilter) const; // is filter exist + }; - private: - std::vector prParsedFilters; - std::unordered_map>> prFilesStyle; // file infos for file extention only - FilterInfos prSelectedFilter; + private: + std::vector prParsedFilters; + std::unordered_map>> prFilesStyle; // file infos for file extention only + FilterInfos prSelectedFilter; - public: - std::string puDLGFilters; - std::string puDLGdefaultExt; + public: + std::string puDLGFilters; + std::string puDLGdefaultExt; - public: - void ParseFilters(const char* vFilters); // Parse filter syntax, detect and parse filter collection - void SetSelectedFilterWithExt(const std::string& vFilter); // Select filter - - bool prFillFileStyle(std::shared_ptr vFileInfos) const; // fill with the good style - - void SetFileStyle( - const IGFD_FileStyleFlags& vFlags, - const char* vCriteria, - const FileStyle& vInfos); // Set FileStyle - void SetFileStyle( - const IGFD_FileStyleFlags& vFlags, - const char* vCriteria, - const ImVec4& vColor, - const std::string& vIcon, - ImFont* vFont); // link file style to Color and Icon and Font - bool GetFileStyle( - const IGFD_FileStyleFlags& vFlags, - const std::string& vCriteria, - ImVec4* vOutColor, - std::string* vOutIcon, - ImFont** vOutFont); // Get Color and Icon for Filter - void ClearFilesStyle(); // clear prFileStyle + public: + void ParseFilters(const char* vFilters); // Parse filter syntax, detect and parse filter collection + void SetSelectedFilterWithExt(const std::string& vFilter); // Select filter + + bool prFillFileStyle(std::shared_ptr vFileInfos) const; // fill with the good style + + void SetFileStyle( + const IGFD_FileStyleFlags& vFlags, + const char* vCriteria, + const FileStyle& vInfos); // Set FileStyle + void SetFileStyle( + const IGFD_FileStyleFlags& vFlags, + const char* vCriteria, + const ImVec4& vColor, + const std::string& vIcon, + ImFont* vFont); // link file style to Color and Icon and Font + bool GetFileStyle( + const IGFD_FileStyleFlags& vFlags, + const std::string& vCriteria, + ImVec4* vOutColor, + std::string* vOutIcon, + ImFont** vOutFont); // Get Color and Icon for Filter + void ClearFilesStyle(); // clear prFileStyle - bool IsCoveredByFilters(const std::string& vTag) const; // check if current file extention (vTag) is covered by current filter - bool DrawFilterComboBox(FileDialogInternal& vFileDialogInternal); // draw the filter combobox - FilterInfos GetSelectedFilter(); // get the current selected filter - std::string ReplaceExtentionWithCurrentFilter(const std::string& vFile) const; // replace the extention of the current file by the selected filter - void SetDefaultFilterIfNotDefined(); // define the first filter if no filter is selected - }; + bool IsCoveredByFilters(const std::string& vTag) const; // check if current file extention (vTag) is covered by current filter + bool DrawFilterComboBox(FileDialogInternal& vFileDialogInternal); // draw the filter combobox + FilterInfos GetSelectedFilter(); // get the current selected filter + std::string ReplaceExtentionWithCurrentFilter(const std::string& vFile) const; // replace the extention of the current file by the selected filter + void SetDefaultFilterIfNotDefined(); // define the first filter if no filter is selected + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class FileInfos - { - public: - char fileType = ' '; // dirent fileType (f:file, d:directory, l:link) - std::string filePath; // path of the file - std::string fileNameExt; // filename of the file (file name + extention) (but no path) - std::string fileNameExt_optimized; // optimized for search => insensitivecase - std::string fileExt; // extention of the file - size_t fileSize = 0; // for sorting operations - std::string formatedFileSize; // file size formated (10 o, 10 ko, 10 mo, 10 go) - std::string fileModifDate; // file user defined format of the date (data + time by default) - std::shared_ptr fileStyle = nullptr; // style of the file + class FileInfos + { + public: + char fileType = ' '; // dirent fileType (f:file, d:directory, l:link) + std::string filePath; // path of the file + std::string fileNameExt; // filename of the file (file name + extention) (but no path) + std::string fileNameExt_optimized; // optimized for search => insensitivecase + std::string fileExt; // extention of the file + size_t fileSize = 0; // for sorting operations + std::string formatedFileSize; // file size formated (10 o, 10 ko, 10 mo, 10 go) + std::string fileModifDate; // file user defined format of the date (data + time by default) + std::shared_ptr fileStyle = nullptr; // style of the file #ifdef USE_THUMBNAILS - IGFD_Thumbnail_Info thumbnailInfo; // structre for the display for image file tetxure + IGFD_Thumbnail_Info thumbnailInfo; // structre for the display for image file tetxure #endif // USE_THUMBNAILS - public: - bool IsTagFound(const std::string& vTag) const; - }; + public: + bool IsTagFound(const std::string& vTag) const; + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class FileManager - { - public: // types - enum class SortingFieldEnum // sorting for filetering of the file lsit - { - FIELD_NONE = 0, // no sorting preference, result indetermined haha.. - FIELD_FILENAME, // sorted by filename - FIELD_TYPE, // sorted by filetype - FIELD_SIZE, // sorted by filesize (formated file size) - FIELD_DATE, // sorted by filedate + class FileManager + { + public: // types + enum class SortingFieldEnum // sorting for filetering of the file lsit + { + FIELD_NONE = 0, // no sorting preference, result indetermined haha.. + FIELD_FILENAME, // sorted by filename + FIELD_TYPE, // sorted by filetype + FIELD_SIZE, // sorted by filesize (formated file size) + FIELD_DATE, // sorted by filedate #ifdef USE_THUMBNAILS - FIELD_THUMBNAILS, // sorted by thumbnails (comparaison by width then by height) + FIELD_THUMBNAILS, // sorted by thumbnails (comparaison by width then by height) #endif // USE_THUMBNAILS - }; + }; - private: - std::string prCurrentPath; // current path (to be decomposed in prCurrentPathDecomposition - std::vector prCurrentPathDecomposition; // part words - std::vector> prFileList; // base container - std::vector> prFilteredFileList; // filtered container (search, sorting, etc..) - std::string prLastSelectedFileName; // for shift multi selection - std::set prSelectedFileNames; // the user selection of FilePathNames - bool prCreateDirectoryMode = false; // for create directory widget + private: + std::string prCurrentPath; // current path (to be decomposed in prCurrentPathDecomposition + std::vector prCurrentPathDecomposition; // part words + std::vector> prFileList; // base container + std::vector> prFilteredFileList; // filtered container (search, sorting, etc..) + std::string prLastSelectedFileName; // for shift multi selection + std::set prSelectedFileNames; // the user selection of FilePathNames + bool prCreateDirectoryMode = false; // for create directory widget - public: - char puVariadicBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; // called by prSelectableItem - bool puInputPathActivated = false; // show input for path edition - bool puDrivesClicked = false; // event when a drive button is clicked - bool puPathClicked = false; // event when a path button was clicked - char puInputPathBuffer[MAX_PATH_BUFFER_SIZE] = ""; // input path buffer for imgui widget input text (displayed in palce of composer) - char puFileNameBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; // file name buffer in footer for imgui widget input text - char puDirectoryNameBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; // directory name buffer in footer for imgui widget input text (when is directory mode) - std::string puHeaderFileName; // detail view name of column file - std::string puHeaderFileType; // detail view name of column type - std::string puHeaderFileSize; // detail view name of column size - std::string puHeaderFileDate; // detail view name of column date + time + public: + char puVariadicBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; // called by prSelectableItem + bool puInputPathActivated = false; // show input for path edition + bool puDrivesClicked = false; // event when a drive button is clicked + bool puPathClicked = false; // event when a path button was clicked + char puInputPathBuffer[MAX_PATH_BUFFER_SIZE] = ""; // input path buffer for imgui widget input text (displayed in palce of composer) + char puFileNameBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; // file name buffer in footer for imgui widget input text + char puDirectoryNameBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; // directory name buffer in footer for imgui widget input text (when is directory mode) + std::string puHeaderFileName; // detail view name of column file + std::string puHeaderFileType; // detail view name of column type + std::string puHeaderFileSize; // detail view name of column size + std::string puHeaderFileDate; // detail view name of column date + time #ifdef USE_THUMBNAILS - std::string puHeaderFileThumbnails; // detail view name of column thumbnails - bool puSortingDirection[5]; // detail view // true => Descending, false => Ascending + std::string puHeaderFileThumbnails; // detail view name of column thumbnails + bool puSortingDirection[5]; // detail view // true => Descending, false => Ascending #else - bool puSortingDirection[4]; // detail view // true => Descending, false => Ascending + bool puSortingDirection[4]; // detail view // true => Descending, false => Ascending #endif - SortingFieldEnum puSortingField = SortingFieldEnum::FIELD_FILENAME; // detail view sorting column - bool puShowDrives = false; // drives are shown (only on os windows) + SortingFieldEnum puSortingField = SortingFieldEnum::FIELD_FILENAME; // detail view sorting column + bool puShowDrives = false; // drives are shown (only on os windows) bool fileListActuallyEmpty = false; - std::string puDLGpath; // base path set by user when OpenDialog/OpenModal was called + std::string puDLGpath; // base path set by user when OpenDialog/OpenModal was called std::string puError; // last error - std::string puDLGDefaultFileName; // base default file path name set by user when OpenDialog/OpenModal was called - size_t puDLGcountSelectionMax = 1U; // 0 for infinite // base max selection count set by user when OpenDialog/OpenModal was called - bool puDLGDirectoryMode = false; // is directory mode (defiend like : puDLGDirectoryMode = (filters.empty())) + std::string puDLGDefaultFileName; // base default file path name set by user when OpenDialog/OpenModal was called + size_t puDLGcountSelectionMax = 1U; // 0 for infinite // base max selection count set by user when OpenDialog/OpenModal was called + bool puDLGDirectoryMode = false; // is directory mode (defiend like : puDLGDirectoryMode = (filters.empty())) - std::string puFsRoot; + std::string puFsRoot; - private: - static std::string prRoundNumber(double vvalue, int n); // custom rounding number - static std::string prFormatFileSize(size_t vByteSize); // format file size field - static std::string prOptimizeFilenameForSearchOperations(const std::string& vFileNameExt); // turn all text in lower case for search facilitie - static void prCompleteFileInfos(const std::shared_ptr& FileInfos); // set time and date infos of a file (detail view mode) - void prRemoveFileNameInSelection(const std::string& vFileName); // selection : remove a file name - void prAddFileNameInSelection(const std::string& vFileName, bool vSetLastSelectionFileName); // selection : add a file name - void AddFile(const FileDialogInternal& vFileDialogInternal, - const std::string& vPath, const std::string& vFileName, const char& vFileType); // add file called by scandir + private: + static std::string prRoundNumber(double vvalue, int n); // custom rounding number + static std::string prFormatFileSize(size_t vByteSize); // format file size field + static std::string prOptimizeFilenameForSearchOperations(const std::string& vFileNameExt); // turn all text in lower case for search facilitie + static void prCompleteFileInfos(const std::shared_ptr& FileInfos); // set time and date infos of a file (detail view mode) + void prRemoveFileNameInSelection(const std::string& vFileName); // selection : remove a file name + void prAddFileNameInSelection(const std::string& vFileName, bool vSetLastSelectionFileName); // selection : add a file name + void AddFile(const FileDialogInternal& vFileDialogInternal, + const std::string& vPath, const std::string& vFileName, const char& vFileType); // add file called by scandir - public: - FileManager(); - bool IsComposerEmpty(); - size_t GetComposerSize(); - bool IsFileListEmpty(); - bool IsFilteredListEmpty(); - size_t GetFullFileListSize(); - std::shared_ptr GetFullFileAt(size_t vIdx); - size_t GetFilteredListSize(); - std::shared_ptr GetFilteredFileAt(size_t vIdx); - bool IsFileNameSelected(const std::string& vFileName); - std::string GetBack(); - void ClearComposer(); - void ClearFileLists(); // clear file list, will destroy thumbnail textures - void ClearAll(); - void ApplyFilteringOnFileList(const FileDialogInternal& vFileDialogInternal); - void OpenCurrentPath(const FileDialogInternal& vFileDialogInternal); // set the path of the dialog, will launch the directory scan for populate the file listview - void SortFields(const FileDialogInternal& vFileDialogInternal, - const SortingFieldEnum& vSortingField, const bool vCanChangeOrder); // will sort a column - bool GetDrives(); // list drives on windows platform - bool CreateDir(const std::string& vPath); // create a directory on the file system - void ComposeNewPath(std::vector::iterator vIter); // compose a path from the compose path widget - bool SetPathOnParentDirectoryIfAny(); // compose paht on parent directory - std::string GetCurrentPath(); // get the current path - void SetCurrentPath(const std::string& vCurrentPath); // set the current path - static bool IsFileExist(const std::string& vFile); - void SetDefaultFileName(const std::string& vFileName); - bool SelectDirectory(const std::shared_ptr& vInfos); // enter directory - void SelectFileName(const FileDialogInternal& vFileDialogInternal, - const std::shared_ptr& vInfos); // select filename - - //depend of dirent.h - void SetCurrentDir(const std::string& vPath); // define current directory for scan - void ScanDir(const FileDialogInternal& vFileDialogInternal, const std::string& vPath); // scan the directory for retrieve the file list + public: + FileManager(); + bool IsComposerEmpty(); + size_t GetComposerSize(); + bool IsFileListEmpty(); + bool IsFilteredListEmpty(); + size_t GetFullFileListSize(); + std::shared_ptr GetFullFileAt(size_t vIdx); + size_t GetFilteredListSize(); + std::shared_ptr GetFilteredFileAt(size_t vIdx); + bool IsFileNameSelected(const std::string& vFileName); + std::string GetBack(); + void ClearComposer(); + void ClearFileLists(); // clear file list, will destroy thumbnail textures + void ClearAll(); + void ApplyFilteringOnFileList(const FileDialogInternal& vFileDialogInternal); + void OpenCurrentPath(const FileDialogInternal& vFileDialogInternal); // set the path of the dialog, will launch the directory scan for populate the file listview + void SortFields(const FileDialogInternal& vFileDialogInternal, + const SortingFieldEnum& vSortingField, const bool vCanChangeOrder); // will sort a column + bool GetDrives(); // list drives on windows platform + bool CreateDir(const std::string& vPath); // create a directory on the file system + void ComposeNewPath(std::vector::iterator vIter); // compose a path from the compose path widget + bool SetPathOnParentDirectoryIfAny(); // compose paht on parent directory + std::string GetCurrentPath(); // get the current path + void SetCurrentPath(const std::string& vCurrentPath); // set the current path + static bool IsFileExist(const std::string& vFile); + void SetDefaultFileName(const std::string& vFileName); + bool SelectDirectory(const std::shared_ptr& vInfos); // enter directory + void SelectFileName(const FileDialogInternal& vFileDialogInternal, + const std::shared_ptr& vInfos); // select filename + + //depend of dirent.h + void SetCurrentDir(const std::string& vPath); // define current directory for scan + void ScanDir(const FileDialogInternal& vFileDialogInternal, const std::string& vPath); // scan the directory for retrieve the file list - public: - std::string GetResultingPath(); - std::string GetResultingFileName(FileDialogInternal& vFileDialogInternal); - std::string GetResultingFilePathName(FileDialogInternal& vFileDialogInternal); - std::map GetResultingSelection(); + public: + std::string GetResultingPath(); + std::string GetResultingFileName(FileDialogInternal& vFileDialogInternal); + std::string GetResultingFilePathName(FileDialogInternal& vFileDialogInternal); + std::map GetResultingSelection(); - public: - void DrawDirectoryCreation(const FileDialogInternal& vFileDialogInternal); // draw directory creation widget - void DrawPathComposer(const FileDialogInternal& vFileDialogInternal); // draw path composer widget - }; + public: + void DrawDirectoryCreation(const FileDialogInternal& vFileDialogInternal); // draw directory creation widget + void DrawPathComposer(const FileDialogInternal& vFileDialogInternal); // draw path composer widget + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// #ifdef USE_THUMBNAILS - typedef std::function CreateThumbnailFun; // texture 2d creation function binding - typedef std::function DestroyThumbnailFun; // texture 2d destroy function binding + typedef std::function CreateThumbnailFun; // texture 2d creation function binding + typedef std::function DestroyThumbnailFun; // texture 2d destroy function binding #endif - class ThumbnailFeature - { - protected: - ThumbnailFeature(); - ~ThumbnailFeature(); + class ThumbnailFeature + { + protected: + ThumbnailFeature(); + ~ThumbnailFeature(); - void NewThumbnailFrame(FileDialogInternal& vFileDialogInternal); - void EndThumbnailFrame(FileDialogInternal& vFileDialogInternal); - void QuitThumbnailFrame(FileDialogInternal& vFileDialogInternal); + void NewThumbnailFrame(FileDialogInternal& vFileDialogInternal); + void EndThumbnailFrame(FileDialogInternal& vFileDialogInternal); + void QuitThumbnailFrame(FileDialogInternal& vFileDialogInternal); #ifdef USE_THUMBNAILS - protected: - enum class DisplayModeEnum - { - FILE_LIST = 0, - THUMBNAILS_LIST, - THUMBNAILS_GRID - }; + protected: + enum class DisplayModeEnum + { + FILE_LIST = 0, + THUMBNAILS_LIST, + THUMBNAILS_GRID + }; - private: - uint32_t prCountFiles = 0U; - bool prIsWorking = false; - std::shared_ptr prThumbnailGenerationThread = nullptr; - std::list> prThumbnailFileDatasToGet; // base container - std::mutex prThumbnailFileDatasToGetMutex; - std::list> prThumbnailToCreate; // base container - std::mutex prThumbnailToCreateMutex; - std::list prThumbnailToDestroy; // base container - std::mutex prThumbnailToDestroyMutex; + private: + uint32_t prCountFiles = 0U; + bool prIsWorking = false; + std::shared_ptr prThumbnailGenerationThread = nullptr; + std::list> prThumbnailFileDatasToGet; // base container + std::mutex prThumbnailFileDatasToGetMutex; + std::list> prThumbnailToCreate; // base container + std::mutex prThumbnailToCreateMutex; + std::list prThumbnailToDestroy; // base container + std::mutex prThumbnailToDestroyMutex; - CreateThumbnailFun prCreateThumbnailFun = nullptr; - DestroyThumbnailFun prDestroyThumbnailFun = nullptr; + CreateThumbnailFun prCreateThumbnailFun = nullptr; + DestroyThumbnailFun prDestroyThumbnailFun = nullptr; - protected: - DisplayModeEnum prDisplayMode = DisplayModeEnum::FILE_LIST; + protected: + DisplayModeEnum prDisplayMode = DisplayModeEnum::FILE_LIST; - protected: - // will be call in cpu zone (imgui computations, will call a texture file retrieval thread) - void prStartThumbnailFileDatasExtraction(); // start the thread who will get byte buffer from image files - bool prStopThumbnailFileDatasExtraction(); // stop the thread who will get byte buffer from image files - void prThreadThumbnailFileDatasExtractionFunc(); // the thread who will get byte buffer from image files - void prDrawThumbnailGenerationProgress(); // a little progressbar who will display the texture gen status - void prAddThumbnailToLoad(const std::shared_ptr& vFileInfos); // add texture to load in the thread - void prAddThumbnailToCreate(const std::shared_ptr& vFileInfos); - void prAddThumbnailToDestroy(const IGFD_Thumbnail_Info& vIGFD_Thumbnail_Info); - void prDrawDisplayModeToolBar(); // draw display mode toolbar (file list, thumbnails list, small thumbnails grid, big thumbnails grid) - void prClearThumbnails(FileDialogInternal& vFileDialogInternal); + protected: + // will be call in cpu zone (imgui computations, will call a texture file retrieval thread) + void prStartThumbnailFileDatasExtraction(); // start the thread who will get byte buffer from image files + bool prStopThumbnailFileDatasExtraction(); // stop the thread who will get byte buffer from image files + void prThreadThumbnailFileDatasExtractionFunc(); // the thread who will get byte buffer from image files + void prDrawThumbnailGenerationProgress(); // a little progressbar who will display the texture gen status + void prAddThumbnailToLoad(const std::shared_ptr& vFileInfos); // add texture to load in the thread + void prAddThumbnailToCreate(const std::shared_ptr& vFileInfos); + void prAddThumbnailToDestroy(const IGFD_Thumbnail_Info& vIGFD_Thumbnail_Info); + void prDrawDisplayModeToolBar(); // draw display mode toolbar (file list, thumbnails list, small thumbnails grid, big thumbnails grid) + void prClearThumbnails(FileDialogInternal& vFileDialogInternal); - public: - void SetCreateThumbnailCallback(const CreateThumbnailFun& vCreateThumbnailFun); - void SetDestroyThumbnailCallback(const DestroyThumbnailFun& vCreateThumbnailFun); - - // must be call in gpu zone (rendering, possibly one rendering thread) - void ManageGPUThumbnails(); // in gpu rendering zone, whill create or destroy texture + public: + void SetCreateThumbnailCallback(const CreateThumbnailFun& vCreateThumbnailFun); + void SetDestroyThumbnailCallback(const DestroyThumbnailFun& vCreateThumbnailFun); + + // must be call in gpu zone (rendering, possibly one rendering thread) + void ManageGPUThumbnails(); // in gpu rendering zone, whill create or destroy texture #endif - }; + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class BookMarkFeature - { - protected: - BookMarkFeature(); + class BookMarkFeature + { + protected: + BookMarkFeature(); #ifdef USE_BOOKMARK - private: - struct BookmarkStruct - { - std::string name; // name of the bookmark - - // todo: the path could be relative, better if the app is movedn but bookmarked path can be outside of the app - std::string path; // absolute path of the bookmarked directory - }; + private: + struct BookmarkStruct + { + std::string name; // name of the bookmark + + // todo: the path could be relative, better if the app is movedn but bookmarked path can be outside of the app + std::string path; // absolute path of the bookmarked directory + }; - private: - ImGuiListClipper prBookmarkClipper; - std::vector prBookmarks; - char prBookmarkEditBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; + private: + ImGuiListClipper prBookmarkClipper; + std::vector prBookmarks; + char prBookmarkEditBuffer[MAX_FILE_DIALOG_NAME_BUFFER] = ""; - protected: - float prBookmarkWidth = 200.0f; - bool prBookmarkPaneShown = false; - - protected: - void prDrawBookmarkButton(); // draw bookmark button - bool prDrawBookmarkPane(FileDialogInternal& vFileDialogInternal, const ImVec2& vSize); // draw bookmark Pane + protected: + float prBookmarkWidth = 200.0f; + bool prBookmarkPaneShown = false; + + protected: + void prDrawBookmarkButton(); // draw bookmark button + bool prDrawBookmarkPane(FileDialogInternal& vFileDialogInternal, const ImVec2& vSize); // draw bookmark Pane - public: - std::string SerializeBookmarks(); // serialize bookmarks : return bookmark buffer to save in a file - void DeserializeBookmarks( // deserialize bookmarks : load bookmark buffer to load in the dialog (saved from previous use with SerializeBookmarks()) - const std::string& vBookmarks); // bookmark buffer to load + public: + std::string SerializeBookmarks(); // serialize bookmarks : return bookmark buffer to save in a file + void DeserializeBookmarks( // deserialize bookmarks : load bookmark buffer to load in the dialog (saved from previous use with SerializeBookmarks()) + const std::string& vBookmarks); // bookmark buffer to load #endif // USE_BOOKMARK - }; + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - // file localization by input chat // widget flashing - class KeyExplorerFeature - { - protected: - KeyExplorerFeature(); + // file localization by input chat // widget flashing + class KeyExplorerFeature + { + protected: + KeyExplorerFeature(); #ifdef USE_EXPLORATION_BY_KEYS - private: - size_t prFlashedItem = 0; // flash when select by char - float prFlashAlpha = 0.0f; // flash when select by char - float prFlashAlphaAttenInSecs = 1.0f; // fps display dependant - size_t prLocateFileByInputChar_lastFileIdx = 0; - ImWchar prLocateFileByInputChar_lastChar = 0; - int prLocateFileByInputChar_InputQueueCharactersSize = 0; - bool prLocateFileByInputChar_lastFound = false; + private: + size_t prFlashedItem = 0; // flash when select by char + float prFlashAlpha = 0.0f; // flash when select by char + float prFlashAlphaAttenInSecs = 1.0f; // fps display dependant + size_t prLocateFileByInputChar_lastFileIdx = 0; + ImWchar prLocateFileByInputChar_lastChar = 0; + int prLocateFileByInputChar_InputQueueCharactersSize = 0; + bool prLocateFileByInputChar_lastFound = false; - protected: - void prLocateByInputKey(FileDialogInternal& vFileDialogInternal); // select a file line in listview according to char key - bool prLocateItem_Loop(FileDialogInternal& vFileDialogInternal, ImWchar vC); // restrat for start of list view if not found a corresponding file - void prExploreWithkeys(FileDialogInternal& vFileDialogInternal, ImGuiID vListViewID); // select file/directory line in listview accroding to up/down enter/backspace keys - static bool prFlashableSelectable( // custom flashing selectable widgets, for flash the selected line in a short time - const char* label, bool selected = false, ImGuiSelectableFlags flags = 0, - bool vFlashing = false, const ImVec2& size = ImVec2(0, 0)); - void prStartFlashItem(size_t vIdx); // define than an item must be flashed - bool prBeginFlashItem(size_t vIdx); // start the flashing of a line in lsit view - static void prEndFlashItem(); // end the fleshing accrdoin to var prFlashAlphaAttenInSecs + protected: + void prLocateByInputKey(FileDialogInternal& vFileDialogInternal); // select a file line in listview according to char key + bool prLocateItem_Loop(FileDialogInternal& vFileDialogInternal, ImWchar vC); // restrat for start of list view if not found a corresponding file + void prExploreWithkeys(FileDialogInternal& vFileDialogInternal, ImGuiID vListViewID); // select file/directory line in listview accroding to up/down enter/backspace keys + static bool prFlashableSelectable( // custom flashing selectable widgets, for flash the selected line in a short time + const char* label, bool selected = false, ImGuiSelectableFlags flags = 0, + bool vFlashing = false, const ImVec2& size = ImVec2(0, 0)); + void prStartFlashItem(size_t vIdx); // define than an item must be flashed + bool prBeginFlashItem(size_t vIdx); // start the flashing of a line in lsit view + static void prEndFlashItem(); // end the fleshing accrdoin to var prFlashAlphaAttenInSecs - public: - void SetFlashingAttenuationInSeconds( // set the flashing time of the line in file list when use exploration keys - float vAttenValue); // set the attenuation (from flashed to not flashed) in seconds + public: + void SetFlashingAttenuationInSeconds( // set the flashing time of the line in file list when use exploration keys + float vAttenValue); // set the attenuation (from flashed to not flashed) in seconds #endif // USE_EXPLORATION_BY_KEYS - }; + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - typedef void* UserDatas; - typedef std::function PaneFun; // side pane function binding + typedef void* UserDatas; + typedef std::function PaneFun; // side pane function binding typedef std::function SelectFun; // click on file function binding - class FileDialogInternal - { - public: - FileManager puFileManager; - FilterManager puFilterManager; - SearchManager puSearchManager; + class FileDialogInternal + { + public: + FileManager puFileManager; + FilterManager puFilterManager; + SearchManager puSearchManager; - public: - std::string puName; - bool puShowDialog = false; - ImVec2 puDialogCenterPos = ImVec2(0, 0); // center pos for display the confirm overwrite dialog - int puLastImGuiFrameCount = 0; // to be sure than only one dialog displayed per frame - float puFooterHeight = 0.0f; - bool puCanWeContinue = true; // events - bool puOkResultToConfirm = false; // to confim if ok for OverWrite - bool puIsOk = false; - bool puFileInputIsActive = false; // when input text for file or directory is active - bool puFileListViewIsActive = false; // when list view is active - std::string puDLGkey; - std::string puDLGtitle; - ImGuiFileDialogFlags puDLGflags = ImGuiFileDialogFlags_None; - UserDatas puDLGuserDatas = nullptr; - PaneFun puDLGoptionsPane = nullptr; + public: + std::string puName; + bool puShowDialog = false; + ImVec2 puDialogCenterPos = ImVec2(0, 0); // center pos for display the confirm overwrite dialog + int puLastImGuiFrameCount = 0; // to be sure than only one dialog displayed per frame + float puFooterHeight = 0.0f; + bool puCanWeContinue = true; // events + bool puOkResultToConfirm = false; // to confim if ok for OverWrite + bool puIsOk = false; + bool puFileInputIsActive = false; // when input text for file or directory is active + bool puFileListViewIsActive = false; // when list view is active + std::string puDLGkey; + std::string puDLGtitle; + ImGuiFileDialogFlags puDLGflags = ImGuiFileDialogFlags_None; + UserDatas puDLGuserDatas = nullptr; + PaneFun puDLGoptionsPane = nullptr; SelectFun puDLGselFun = nullptr; - float puDLGoptionsPaneWidth = 0.0f; - bool puDLGmodal = false; - bool puNeedToExitDialog = false; + float puDLGoptionsPaneWidth = 0.0f; + bool puDLGmodal = false; + bool puNeedToExitDialog = false; - bool puUseCustomLocale = false; - int puLocaleCategory = LC_ALL; // locale category to use - std::string puLocaleBegin; // the locale who will be applied at start of the display dialog - std::string puLocaleEnd; // the locale who will be applaied at end of the display dialog + bool puUseCustomLocale = false; + int puLocaleCategory = LC_ALL; // locale category to use + std::string puLocaleBegin; // the locale who will be applied at start of the display dialog + std::string puLocaleEnd; // the locale who will be applaied at end of the display dialog - public: - void NewFrame(); // new frame, so maybe neded to do somethings, like reset events - void EndFrame(); // end frame, so maybe neded to do somethings fater all - void ResetForNewDialog(); // reset what is needed to reset for the openging of a new dialog - }; + public: + void NewFrame(); // new frame, so maybe neded to do somethings, like reset events + void EndFrame(); // end frame, so maybe neded to do somethings fater all + void ResetForNewDialog(); // reset what is needed to reset for the openging of a new dialog + }; - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - class FileDialog : - public BookMarkFeature, - public KeyExplorerFeature, - public ThumbnailFeature - { - private: - FileDialogInternal prFileDialogInternal; - ImGuiListClipper prFileListClipper; + class FileDialog : + public BookMarkFeature, + public KeyExplorerFeature, + public ThumbnailFeature + { + private: + FileDialogInternal prFileDialogInternal; + ImGuiListClipper prFileListClipper; - public: - bool puAnyWindowsHovered = false; // not remember why haha :) todo : to check if we can remove + public: + bool puAnyWindowsHovered = false; // not remember why haha :) todo : to check if we can remove double DpiScale; bool singleClickSel; bool mobileMode; std::string homePath; - public: - static FileDialog* Instance() // Singleton for easier accces form anywhere but only one dialog at a time - { - static FileDialog _instance; - return &_instance; - } + public: + static FileDialog* Instance() // Singleton for easier accces form anywhere but only one dialog at a time + { + static FileDialog _instance; + return &_instance; + } - public: - FileDialog(); // ImGuiFileDialog Constructor. can be used for have many dialog at same tiem (not possible with singleton) - virtual ~FileDialog(); // ImGuiFileDialog Destructor + public: + FileDialog(); // ImGuiFileDialog Constructor. can be used for have many dialog at same tiem (not possible with singleton) + virtual ~FileDialog(); // ImGuiFileDialog Destructor - // standard dialog - void OpenDialog( // open simple dialog (path and fileName can be specified) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vPath, // path - const std::string& vFileName, // defaut file name - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + // standard dialog + void OpenDialog( // open simple dialog (path and fileName can be specified) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vPath, // path + const std::string& vFileName, // defaut file name + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - void OpenDialog( // open simple dialog (path and filename are obtained from filePathName) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + void OpenDialog( // open simple dialog (path and filename are obtained from filePathName) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - // with pane - void OpenDialog( // open dialog with custom right pane (path and fileName can be specified) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vPath, // path - const std::string& vFileName, // defaut file name - const PaneFun& vSidePane, // side pane - const float& vSidePaneWidth = 250.0f, // side pane width - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + // with pane + void OpenDialog( // open dialog with custom right pane (path and fileName can be specified) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vPath, // path + const std::string& vFileName, // defaut file name + const PaneFun& vSidePane, // side pane + const float& vSidePaneWidth = 250.0f, // side pane width + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - void OpenDialog( // open dialog with custom right pane (path and filename are obtained from filePathName) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) - const PaneFun& vSidePane, // side pane - const float& vSidePaneWidth = 250.0f, // side pane width - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + void OpenDialog( // open dialog with custom right pane (path and filename are obtained from filePathName) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) + const PaneFun& vSidePane, // side pane + const float& vSidePaneWidth = 250.0f, // side pane width + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - // modal dialog - void OpenModal( // open simple modal (path and fileName can be specified) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vPath, // path - const std::string& vFileName, // defaut file name - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + // modal dialog + void OpenModal( // open simple modal (path and fileName can be specified) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vPath, // path + const std::string& vFileName, // defaut file name + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - void OpenModal( // open simple modal (path and fielname are obtained from filePathName) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + void OpenModal( // open simple modal (path and fielname are obtained from filePathName) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - // with pane - void OpenModal( // open modal with custom right pane (path and filename are obtained from filePathName) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vPath, // path - const std::string& vFileName, // defaut file name - const PaneFun& vSidePane, // side pane - const float& vSidePaneWidth = 250.0f, // side pane width - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + // with pane + void OpenModal( // open modal with custom right pane (path and filename are obtained from filePathName) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vPath, // path + const std::string& vFileName, // defaut file name + const PaneFun& vSidePane, // side pane + const float& vSidePaneWidth = 250.0f, // side pane width + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - void OpenModal( // open modal with custom right pane (path and fielname are obtained from filePathName) - const std::string& vKey, // key dialog - const std::string& vTitle, // title - const char* vFilters, // filters - const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) - const PaneFun& vSidePane, // side pane - const float& vSidePaneWidth = 250.0f, // side pane width - const int& vCountSelectionMax = 1, // count selection max - UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags - SelectFun vSelectFun = nullptr); // function to be called on file click + void OpenModal( // open modal with custom right pane (path and fielname are obtained from filePathName) + const std::string& vKey, // key dialog + const std::string& vTitle, // title + const char* vFilters, // filters + const std::string& vFilePathName, // file path name (will be decompsoed in path and fileName) + const PaneFun& vSidePane, // side pane + const float& vSidePaneWidth = 250.0f, // side pane width + const int& vCountSelectionMax = 1, // count selection max + UserDatas vUserDatas = nullptr, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags = 0, // ImGuiFileDialogFlags + SelectFun vSelectFun = nullptr); // function to be called on file click - // Display / Close dialog form - bool Display( // Display the dialog. return true if a result was obtained (Ok or not) - const std::string& vKey, // key dialog to display (if not the same key as defined by OpenDialog/Modal => no opening) - ImGuiWindowFlags vFlags = ImGuiWindowFlags_NoCollapse, // ImGuiWindowFlags - ImVec2 vMinSize = ImVec2(0, 0), // mininmal size contraint for the ImGuiWindow - ImVec2 vMaxSize = ImVec2(FLT_MAX, FLT_MAX)); // maximal size contraint for the ImGuiWindow - void Close(); // close dialog + // Display / Close dialog form + bool Display( // Display the dialog. return true if a result was obtained (Ok or not) + const std::string& vKey, // key dialog to display (if not the same key as defined by OpenDialog/Modal => no opening) + ImGuiWindowFlags vFlags = ImGuiWindowFlags_NoCollapse, // ImGuiWindowFlags + ImVec2 vMinSize = ImVec2(0, 0), // mininmal size contraint for the ImGuiWindow + ImVec2 vMaxSize = ImVec2(FLT_MAX, FLT_MAX)); // maximal size contraint for the ImGuiWindow + void Close(); // close dialog - // queries - bool WasOpenedThisFrame(const std::string& vKey) const; // say if the dialog key was already opened this frame - bool WasOpenedThisFrame() const; // say if the dialog was already opened this frame - bool IsOpened(const std::string& vKey) const; // say if the key is opened - bool IsOpened() const; // say if the dialog is opened somewhere - std::string GetOpenedKey() const; // return the dialog key who is opened, return nothing if not opened + // queries + bool WasOpenedThisFrame(const std::string& vKey) const; // say if the dialog key was already opened this frame + bool WasOpenedThisFrame() const; // say if the dialog was already opened this frame + bool IsOpened(const std::string& vKey) const; // say if the key is opened + bool IsOpened() const; // say if the dialog is opened somewhere + std::string GetOpenedKey() const; // return the dialog key who is opened, return nothing if not opened - // get result - bool IsOk() const; // true => Dialog Closed with Ok result / false : Dialog closed with cancel result - std::map GetSelection(); // Open File behavior : will return selection via a map - std::string GetFilePathName(); // Save File behavior : will always return the content of the field with current filter extention and current path - std::string GetCurrentFileName(); // Save File behavior : will always return the content of the field with current filter extention - std::string GetCurrentPath(); // will return current path - std::string GetCurrentFilter(); // will return selected filter - UserDatas GetUserDatas() const; // will return user datas send with Open Dialog/Modal + // get result + bool IsOk() const; // true => Dialog Closed with Ok result / false : Dialog closed with cancel result + std::map GetSelection(); // Open File behavior : will return selection via a map + std::string GetFilePathName(); // Save File behavior : will always return the content of the field with current filter extention and current path + std::string GetCurrentFileName(); // Save File behavior : will always return the content of the field with current filter extention + std::string GetCurrentPath(); // will return current path + std::string GetCurrentFilter(); // will return selected filter + UserDatas GetUserDatas() const; // will return user datas send with Open Dialog/Modal - // file style by extentions - void SetFileStyle( // SetExtention datas for have custom display of particular file type - const IGFD_FileStyleFlags& vFlags, // file style - const char* vCriteria, // extention filter to tune - const FileStyle& vInfos); // Filter Extention Struct who contain Color and Icon/Text for the display of the file with extention filter - void SetFileStyle( // SetExtention datas for have custom display of particular file type - const IGFD_FileStyleFlags& vFlags, // file style - const char* vCriteria, // extention filter to tune - const ImVec4& vColor, // wanted color for the display of the file with extention filter - const std::string& vIcon = "", // wanted text or icon of the file with extention filter - ImFont *vFont = nullptr); // wantes font - bool GetFileStyle( // GetExtention datas. return true is extention exist - const IGFD_FileStyleFlags& vFlags, // file style - const std::string& vCriteria, // extention filter (same as used in SetExtentionInfos) - ImVec4* vOutColor, // color to retrieve - std::string* vOutIcon = nullptr, // icon or text to retrieve + // file style by extentions + void SetFileStyle( // SetExtention datas for have custom display of particular file type + const IGFD_FileStyleFlags& vFlags, // file style + const char* vCriteria, // extention filter to tune + const FileStyle& vInfos); // Filter Extention Struct who contain Color and Icon/Text for the display of the file with extention filter + void SetFileStyle( // SetExtention datas for have custom display of particular file type + const IGFD_FileStyleFlags& vFlags, // file style + const char* vCriteria, // extention filter to tune + const ImVec4& vColor, // wanted color for the display of the file with extention filter + const std::string& vIcon = "", // wanted text or icon of the file with extention filter + ImFont *vFont = nullptr); // wantes font + bool GetFileStyle( // GetExtention datas. return true is extention exist + const IGFD_FileStyleFlags& vFlags, // file style + const std::string& vCriteria, // extention filter (same as used in SetExtentionInfos) + ImVec4* vOutColor, // color to retrieve + std::string* vOutIcon = nullptr, // icon or text to retrieve ImFont** vOutFont = nullptr); // font to retreive - void ClearFilesStyle(); // clear extentions setttings + void ClearFilesStyle(); // clear extentions setttings - void SetLocales( // set locales to use before and after the dialog display - const int& vLocaleCategory, // set local category - const std::string& vLocaleBegin, // locale to use at begining of the dialog display - const std::string& vLocaleEnd); // locale to use at the end of the dialog display + void SetLocales( // set locales to use before and after the dialog display + const int& vLocaleCategory, // set local category + const std::string& vLocaleBegin, // locale to use at begining of the dialog display + const std::string& vLocaleEnd); // locale to use at the end of the dialog display - protected: - void NewFrame(); // new frame just at begining of display - void EndFrame(); // end frame just at end of display - void QuitFrame(); // quit frame when qui quit the dialog + protected: + void NewFrame(); // new frame just at begining of display + void EndFrame(); // end frame just at end of display + void QuitFrame(); // quit frame when qui quit the dialog - // others - bool prConfirm_Or_OpenOverWriteFileDialog_IfNeeded( - bool vLastAction, ImGuiWindowFlags vFlags); // treatment of the result, start the confirm to overwrite dialog if needed (if defined with flag) - - public: - // dialog parts - virtual void prDrawHeader(); // draw header part of the dialog (bookmark btn, dir creation, path composer, search bar) - virtual bool prDrawContent(); // draw content part of the dialog (bookmark pane, file list, side pane) - virtual bool prDrawFooter(); // draw footer part of the dialog (file field, fitler combobox, ok/cancel btn's) + // others + bool prConfirm_Or_OpenOverWriteFileDialog_IfNeeded( + bool vLastAction, ImGuiWindowFlags vFlags); // treatment of the result, start the confirm to overwrite dialog if needed (if defined with flag) + + public: + // dialog parts + virtual void prDrawHeader(); // draw header part of the dialog (bookmark btn, dir creation, path composer, search bar) + virtual bool prDrawContent(); // draw content part of the dialog (bookmark pane, file list, side pane) + virtual bool prDrawFooter(); // draw footer part of the dialog (file field, fitler combobox, ok/cancel btn's) - // widgets components - virtual void prDrawSidePane(float vHeight); // draw side pane - virtual int prSelectableItem(int vidx, - std::shared_ptr vInfos, - bool vSelected, const char* vFmt, ...); // draw a custom selectable behavior item - virtual bool prDrawFileListView(ImVec2 vSize); // draw file list view (default mode) + // widgets components + virtual void prDrawSidePane(float vHeight); // draw side pane + virtual int prSelectableItem(int vidx, + std::shared_ptr vInfos, + bool vSelected, const char* vFmt, ...); // draw a custom selectable behavior item + virtual bool prDrawFileListView(ImVec2 vSize); // draw file list view (default mode) #ifdef USE_THUMBNAILS - virtual void prDrawThumbnailsListView(ImVec2 vSize); // draw file list view with small thumbnails on the same line - virtual void prDrawThumbnailsGridView(ImVec2 vSize); // draw a grid of small thumbnails + virtual void prDrawThumbnailsListView(ImVec2 vSize); // draw file list view with small thumbnails on the same line + virtual void prDrawThumbnailsGridView(ImVec2 vSize); // draw a grid of small thumbnails #endif - // to be called only by these function and theirs overrides - // - prDrawFileListView - // - prDrawThumbnailsListView - // - prDrawThumbnailsGridView - void prBeginFileColorIconStyle( - std::shared_ptr vFileInfos, - bool& vOutShowColor, - std::string& vOutStr, - ImFont** vOutFont); // begin style apply of filter with color an icon if any - void prEndFileColorIconStyle( - const bool& vShowColor, - ImFont* vFont); // end style apply of filter - }; + // to be called only by these function and theirs overrides + // - prDrawFileListView + // - prDrawThumbnailsListView + // - prDrawThumbnailsGridView + void prBeginFileColorIconStyle( + std::shared_ptr vFileInfos, + bool& vOutShowColor, + std::string& vOutStr, + ImFont** vOutFont); // begin style apply of filter with color an icon if any + void prEndFileColorIconStyle( + const bool& vShowColor, + ImFont* vFont); // end style apply of filter + }; } typedef IGFD::UserDatas IGFDUserDatas; @@ -1374,229 +1374,229 @@ typedef struct IGFD_Selection IGFD_Selection; struct IGFD_Selection_Pair { - char* fileName; - char* filePathName; + char* fileName; + char* filePathName; }; -IMGUIFILEDIALOG_API IGFD_Selection_Pair IGFD_Selection_Pair_Get(); // return an initialized IGFD_Selection_Pair -IMGUIFILEDIALOG_API void IGFD_Selection_Pair_DestroyContent(IGFD_Selection_Pair* vSelection_Pair); // destroy the content of a IGFD_Selection_Pair +IMGUIFILEDIALOG_API IGFD_Selection_Pair IGFD_Selection_Pair_Get(); // return an initialized IGFD_Selection_Pair +IMGUIFILEDIALOG_API void IGFD_Selection_Pair_DestroyContent(IGFD_Selection_Pair* vSelection_Pair); // destroy the content of a IGFD_Selection_Pair struct IGFD_Selection { - IGFD_Selection_Pair* table; // 0 - size_t count; // 0U + IGFD_Selection_Pair* table; // 0 + size_t count; // 0U }; -IMGUIFILEDIALOG_API IGFD_Selection IGFD_Selection_Get(); // return an initialized IGFD_Selection -IMGUIFILEDIALOG_API void IGFD_Selection_DestroyContent(IGFD_Selection* vSelection); // destroy the content of a IGFD_Selection +IMGUIFILEDIALOG_API IGFD_Selection IGFD_Selection_Get(); // return an initialized IGFD_Selection +IMGUIFILEDIALOG_API void IGFD_Selection_DestroyContent(IGFD_Selection* vSelection); // destroy the content of a IGFD_Selection // constructor / destructor -IMGUIFILEDIALOG_API ImGuiFileDialog* IGFD_Create(void); // create the filedialog context -IMGUIFILEDIALOG_API void IGFD_Destroy(ImGuiFileDialog* vContext); // destroy the filedialog context +IMGUIFILEDIALOG_API ImGuiFileDialog* IGFD_Create(void); // create the filedialog context +IMGUIFILEDIALOG_API void IGFD_Destroy(ImGuiFileDialog* vContext); // destroy the filedialog context -typedef void (*IGFD_PaneFun)(const char*, void*, bool*); // callback fucntion for display the pane +typedef void (*IGFD_PaneFun)(const char*, void*, bool*); // callback fucntion for display the pane #ifdef USE_THUMBNAILS -typedef void (*IGFD_CreateThumbnailFun)(IGFD_Thumbnail_Info*); // callback function for create thumbnail texture -typedef void (*IGFD_DestroyThumbnailFun)(IGFD_Thumbnail_Info*); // callback fucntion for destroy thumbnail texture +typedef void (*IGFD_CreateThumbnailFun)(IGFD_Thumbnail_Info*); // callback function for create thumbnail texture +typedef void (*IGFD_DestroyThumbnailFun)(IGFD_Thumbnail_Info*); // callback fucntion for destroy thumbnail texture #endif // USE_THUMBNAILS -IMGUIFILEDIALOG_API void IGFD_OpenDialog( // open a standard dialog - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vPath, // path - const char* vFileName, // defaut file name - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenDialog( // open a standard dialog + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vPath, // path + const char* vFileName, // defaut file name + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenDialog2( // open a standard dialog - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vFilePathName, // defaut file path name (path and filename witl be extracted from it) - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenDialog2( // open a standard dialog + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vFilePathName, // defaut file path name (path and filename witl be extracted from it) + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenPaneDialog( // open a standard dialog with pane - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vPath, // path - const char* vFileName, // defaut file name - const IGFD_PaneFun vSidePane, // side pane - const float vSidePaneWidth, // side pane base width - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenPaneDialog( // open a standard dialog with pane + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vPath, // path + const char* vFileName, // defaut file name + const IGFD_PaneFun vSidePane, // side pane + const float vSidePaneWidth, // side pane base width + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenPaneDialog2( // open a standard dialog with pane - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vFilePathName, // defaut file name (path and filename witl be extracted from it) - const IGFD_PaneFun vSidePane, // side pane - const float vSidePaneWidth, // side pane base width - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenPaneDialog2( // open a standard dialog with pane + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vFilePathName, // defaut file name (path and filename witl be extracted from it) + const IGFD_PaneFun vSidePane, // side pane + const float vSidePaneWidth, // side pane base width + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenModal( // open a modal dialog - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vPath, // path - const char* vFileName, // defaut file name - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenModal( // open a modal dialog + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vPath, // path + const char* vFileName, // defaut file name + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenModal2( // open a modal dialog - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vFilePathName, // defaut file name (path and filename witl be extracted from it) - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenModal2( // open a modal dialog + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vFilePathName, // defaut file name (path and filename witl be extracted from it) + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenPaneModal( // open a modal dialog with pane - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vPath, // path - const char* vFileName, // defaut file name - const IGFD_PaneFun vSidePane, // side pane - const float vSidePaneWidth, // side pane base width - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenPaneModal( // open a modal dialog with pane + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vPath, // path + const char* vFileName, // defaut file name + const IGFD_PaneFun vSidePane, // side pane + const float vSidePaneWidth, // side pane base width + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API void IGFD_OpenPaneModal2( // open a modal dialog with pane - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog - const char* vTitle, // title - const char* vFilters, // filters/filter collections. set it to null for directory mode - const char* vFilePathName, // defaut file name (path and filename witl be extracted from it) - const IGFD_PaneFun vSidePane, // side pane - const float vSidePaneWidth, // side pane base width - const int vCountSelectionMax, // count selection max - void* vUserDatas, // user datas (can be retrieved in pane) - ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags +IMGUIFILEDIALOG_API void IGFD_OpenPaneModal2( // open a modal dialog with pane + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog + const char* vTitle, // title + const char* vFilters, // filters/filter collections. set it to null for directory mode + const char* vFilePathName, // defaut file name (path and filename witl be extracted from it) + const IGFD_PaneFun vSidePane, // side pane + const float vSidePaneWidth, // side pane base width + const int vCountSelectionMax, // count selection max + void* vUserDatas, // user datas (can be retrieved in pane) + ImGuiFileDialogFlags vFlags); // ImGuiFileDialogFlags -IMGUIFILEDIALOG_API bool IGFD_DisplayDialog( // Display the dialog - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey, // key dialog to display (if not the same key as defined by OpenDialog/Modal => no opening) - ImGuiWindowFlags vFlags, // ImGuiWindowFlags - ImVec2 vMinSize, // mininmal size contraint for the ImGuiWindow - ImVec2 vMaxSize); // maximal size contraint for the ImGuiWindow +IMGUIFILEDIALOG_API bool IGFD_DisplayDialog( // Display the dialog + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey, // key dialog to display (if not the same key as defined by OpenDialog/Modal => no opening) + ImGuiWindowFlags vFlags, // ImGuiWindowFlags + ImVec2 vMinSize, // mininmal size contraint for the ImGuiWindow + ImVec2 vMaxSize); // maximal size contraint for the ImGuiWindow -IMGUIFILEDIALOG_API void IGFD_CloseDialog( // Close the dialog - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API void IGFD_CloseDialog( // Close the dialog + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API bool IGFD_IsOk( // true => Dialog Closed with Ok result / false : Dialog closed with cancel result - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API bool IGFD_IsOk( // true => Dialog Closed with Ok result / false : Dialog closed with cancel result + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API bool IGFD_WasKeyOpenedThisFrame( // say if the dialog key was already opened this frame - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vKey); +IMGUIFILEDIALOG_API bool IGFD_WasKeyOpenedThisFrame( // say if the dialog key was already opened this frame + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vKey); -IMGUIFILEDIALOG_API bool IGFD_WasOpenedThisFrame( // say if the dialog was already opened this frame - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API bool IGFD_WasOpenedThisFrame( // say if the dialog was already opened this frame + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API bool IGFD_IsKeyOpened( // say if the dialog key is opened - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vCurrentOpenedKey); // the dialog key +IMGUIFILEDIALOG_API bool IGFD_IsKeyOpened( // say if the dialog key is opened + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vCurrentOpenedKey); // the dialog key -IMGUIFILEDIALOG_API bool IGFD_IsOpened( // say if the dialog is opened somewhere - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API bool IGFD_IsOpened( // say if the dialog is opened somewhere + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API IGFD_Selection IGFD_GetSelection( // Open File behavior : will return selection via a map - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API IGFD_Selection IGFD_GetSelection( // Open File behavior : will return selection via a map + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API char* IGFD_GetFilePathName( // Save File behavior : will always return the content of the field with current filter extention and current path - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API char* IGFD_GetFilePathName( // Save File behavior : will always return the content of the field with current filter extention and current path + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API char* IGFD_GetCurrentFileName( // Save File behavior : will always return the content of the field with current filter extention - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API char* IGFD_GetCurrentFileName( // Save File behavior : will always return the content of the field with current filter extention + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API char* IGFD_GetCurrentPath( // will return current path - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API char* IGFD_GetCurrentPath( // will return current path + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API char* IGFD_GetCurrentFilter( // will return selected filter - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API char* IGFD_GetCurrentFilter( // will return selected filter + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API void* IGFD_GetUserDatas( // will return user datas send with Open Dialog/Modal - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API void* IGFD_GetUserDatas( // will return user datas send with Open Dialog/Modal + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API void IGFD_SetFileStyle( // SetExtention datas for have custom display of particular file type - ImGuiFileDialog* vContext, // ImGuiFileDialog context - IGFD_FileStyleFlags vFileStyleFlags, // file style type - const char* vFilter, // extention filter to tune - ImVec4 vColor, // wanted color for the display of the file with extention filter - const char* vIconText, // wanted text or icon of the file with extention filter (can be sued with font icon) - ImFont* vFont); // wanted font pointer +IMGUIFILEDIALOG_API void IGFD_SetFileStyle( // SetExtention datas for have custom display of particular file type + ImGuiFileDialog* vContext, // ImGuiFileDialog context + IGFD_FileStyleFlags vFileStyleFlags, // file style type + const char* vFilter, // extention filter to tune + ImVec4 vColor, // wanted color for the display of the file with extention filter + const char* vIconText, // wanted text or icon of the file with extention filter (can be sued with font icon) + ImFont* vFont); // wanted font pointer -IMGUIFILEDIALOG_API void IGFD_SetFileStyle2( // SetExtention datas for have custom display of particular file type - ImGuiFileDialog* vContext, // ImGuiFileDialog context - IGFD_FileStyleFlags vFileStyleFlags, // file style type - const char* vFilter, // extention filter to tune - float vR, float vG, float vB, float vA, // wanted color channels RGBA for the display of the file with extention filter - const char* vIconText, // wanted text or icon of the file with extention filter (can be sued with font icon) - ImFont* vFont); // wanted font pointer +IMGUIFILEDIALOG_API void IGFD_SetFileStyle2( // SetExtention datas for have custom display of particular file type + ImGuiFileDialog* vContext, // ImGuiFileDialog context + IGFD_FileStyleFlags vFileStyleFlags, // file style type + const char* vFilter, // extention filter to tune + float vR, float vG, float vB, float vA, // wanted color channels RGBA for the display of the file with extention filter + const char* vIconText, // wanted text or icon of the file with extention filter (can be sued with font icon) + ImFont* vFont); // wanted font pointer IMGUIFILEDIALOG_API bool IGFD_GetFileStyle( - ImGuiFileDialog* vContext, // ImGuiFileDialog context - IGFD_FileStyleFlags vFileStyleFlags, // file style type - const char* vFilter, // extention filter (same as used in SetExtentionInfos) - ImVec4* vOutColor, // color to retrieve - char** vOutIconText, // icon or text to retrieve - ImFont** vOutFont); // font pointer to retrived + ImGuiFileDialog* vContext, // ImGuiFileDialog context + IGFD_FileStyleFlags vFileStyleFlags, // file style type + const char* vFilter, // extention filter (same as used in SetExtentionInfos) + ImVec4* vOutColor, // color to retrieve + char** vOutIconText, // icon or text to retrieve + ImFont** vOutFont); // font pointer to retrived -IMGUIFILEDIALOG_API void IGFD_ClearFilesStyle( // clear extentions setttings - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API void IGFD_ClearFilesStyle( // clear extentions setttings + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API void SetLocales( // set locales to use before and after display - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const int vCategory, // set local category - const char* vBeginLocale, // locale to use at begining of the dialog display - const char* vEndLocale); // locale to set at end of the dialog display +IMGUIFILEDIALOG_API void SetLocales( // set locales to use before and after display + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const int vCategory, // set local category + const char* vBeginLocale, // locale to use at begining of the dialog display + const char* vEndLocale); // locale to set at end of the dialog display #ifdef USE_EXPLORATION_BY_KEYS -IMGUIFILEDIALOG_API void IGFD_SetFlashingAttenuationInSeconds( // set the flashing time of the line in file list when use exploration keys - ImGuiFileDialog* vContext, // ImGuiFileDialog context - float vAttenValue); // set the attenuation (from flashed to not flashed) in seconds +IMGUIFILEDIALOG_API void IGFD_SetFlashingAttenuationInSeconds( // set the flashing time of the line in file list when use exploration keys + ImGuiFileDialog* vContext, // ImGuiFileDialog context + float vAttenValue); // set the attenuation (from flashed to not flashed) in seconds #endif #ifdef USE_BOOKMARK -IMGUIFILEDIALOG_API char* IGFD_SerializeBookmarks( // serialize bookmarks : return bookmark buffer to save in a file - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API char* IGFD_SerializeBookmarks( // serialize bookmarks : return bookmark buffer to save in a file + ImGuiFileDialog* vContext); // ImGuiFileDialog context -IMGUIFILEDIALOG_API void IGFD_DeserializeBookmarks( // deserialize bookmarks : load bookmar buffer to load in the dialog (saved from previous use with SerializeBookmarks()) - ImGuiFileDialog* vContext, // ImGuiFileDialog context - const char* vBookmarks); // bookmark buffer to load +IMGUIFILEDIALOG_API void IGFD_DeserializeBookmarks( // deserialize bookmarks : load bookmar buffer to load in the dialog (saved from previous use with SerializeBookmarks()) + ImGuiFileDialog* vContext, // ImGuiFileDialog context + const char* vBookmarks); // bookmark buffer to load #endif #ifdef USE_THUMBNAILS -IMGUIFILEDIALOG_API void SetCreateThumbnailCallback( // define the callback for create the thumbnails texture - ImGuiFileDialog* vContext, // ImGuiFileDialog context - IGFD_CreateThumbnailFun vCreateThumbnailFun); // the callback for create the thumbnails texture +IMGUIFILEDIALOG_API void SetCreateThumbnailCallback( // define the callback for create the thumbnails texture + ImGuiFileDialog* vContext, // ImGuiFileDialog context + IGFD_CreateThumbnailFun vCreateThumbnailFun); // the callback for create the thumbnails texture -IMGUIFILEDIALOG_API void SetDestroyThumbnailCallback( // define the callback for destroy the thumbnails texture - ImGuiFileDialog* vContext, // ImGuiFileDialog context - IGFD_DestroyThumbnailFun vDestroyThumbnailFun); // the callback for destroy the thumbnails texture +IMGUIFILEDIALOG_API void SetDestroyThumbnailCallback( // define the callback for destroy the thumbnails texture + ImGuiFileDialog* vContext, // ImGuiFileDialog context + IGFD_DestroyThumbnailFun vDestroyThumbnailFun); // the callback for destroy the thumbnails texture -IMGUIFILEDIALOG_API void ManageGPUThumbnails( // must be call in gpu zone, possibly a thread, will call the callback for create / destroy the textures - ImGuiFileDialog* vContext); // ImGuiFileDialog context +IMGUIFILEDIALOG_API void ManageGPUThumbnails( // must be call in gpu zone, possibly a thread, will call the callback for create / destroy the textures + ImGuiFileDialog* vContext); // ImGuiFileDialog context #endif // USE_THUMBNAILS //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// From 29dfeccfe725e31bde3d9a9a1ecb143dd4064a93 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 16 Jun 2023 17:30:11 -0500 Subject: [PATCH 100/183] change chan osc range - PLEASE READ as of now the range is ~32768, either from -16384 to 16383, or 0 to 32767. it previously was -32768 to 32767 (~65536). this change was made to better suit chips that only output a positive value. if you are working on a new chip, update your code and shift right by one if necessary. --- extern/SAASound/src/SAADevice.cpp | 14 +++++++------- src/engine/platform/amiga.cpp | 2 +- src/engine/platform/arcade.cpp | 4 ++-- src/engine/platform/ay.cpp | 12 ++++++------ src/engine/platform/ay8930.cpp | 6 +++--- src/engine/platform/bubsyswsg.cpp | 2 +- src/engine/platform/c64.cpp | 12 ++++++------ src/engine/platform/dummy.cpp | 2 +- src/engine/platform/es5506.cpp | 2 +- src/engine/platform/fds.cpp | 4 ++-- src/engine/platform/ga20.cpp | 2 +- src/engine/platform/gb.cpp | 2 +- src/engine/platform/genesis.cpp | 18 +++++++++--------- src/engine/platform/k007232.cpp | 4 ++-- src/engine/platform/mmc5.cpp | 6 +++--- src/engine/platform/msm5232.cpp | 2 +- src/engine/platform/msm6258.cpp | 2 +- src/engine/platform/msm6295.cpp | 3 +-- src/engine/platform/n163.cpp | 2 +- src/engine/platform/namcowsg.cpp | 2 +- src/engine/platform/nes.cpp | 20 ++++++++++---------- src/engine/platform/opl.cpp | 12 +++++------- src/engine/platform/opll.cpp | 4 ++-- src/engine/platform/pce.cpp | 2 +- src/engine/platform/pcmdac.cpp | 2 +- src/engine/platform/pokey.cpp | 8 ++++---- src/engine/platform/qsound.cpp | 2 +- src/engine/platform/rf5c68.cpp | 2 +- src/engine/platform/scc.cpp | 2 +- src/engine/platform/segapcm.cpp | 2 +- src/engine/platform/sm8521.cpp | 4 ++-- src/engine/platform/snes.cpp | 2 +- src/engine/platform/sound/lynx/Mikey.cpp | 2 +- src/engine/platform/sound/pokey/AltASAP.cpp | 2 +- src/engine/platform/swan.cpp | 2 +- src/engine/platform/tia.cpp | 4 ++-- src/engine/platform/tx81z.cpp | 2 +- src/engine/platform/vb.cpp | 2 +- src/engine/platform/vera.cpp | 4 ++-- src/engine/platform/vic20.cpp | 2 +- src/engine/platform/vrc6.cpp | 4 ++-- src/engine/platform/x1_010.cpp | 2 +- src/engine/platform/ym2203.cpp | 8 ++++---- src/engine/platform/ym2608.cpp | 16 ++++++++-------- src/engine/platform/ym2610.cpp | 16 ++++++++-------- src/engine/platform/ym2610b.cpp | 16 ++++++++-------- src/engine/platform/ymz280b.cpp | 2 +- src/gui/chanOsc.cpp | 6 +++--- 48 files changed, 126 insertions(+), 129 deletions(-) diff --git a/extern/SAASound/src/SAADevice.cpp b/extern/SAASound/src/SAADevice.cpp index 9064dcab..78b6e4a4 100644 --- a/extern/SAASound/src/SAADevice.cpp +++ b/extern/SAASound/src/SAADevice.cpp @@ -316,27 +316,27 @@ void CSAADevice::_TickAndOutputStereo(unsigned int& left_mixed, unsigned int& ri m_Noise0.Tick(); m_Noise1.Tick(); m_Amp0.TickAndOutputStereo(temp_left, temp_right); - oscBuf[0]->data[oscBuf[0]->needle++]=(temp_left+temp_right)<<4; + oscBuf[0]->data[oscBuf[0]->needle++]=(temp_left+temp_right)<<3; accum_left += temp_left; accum_right += temp_right; m_Amp1.TickAndOutputStereo(temp_left, temp_right); - oscBuf[1]->data[oscBuf[1]->needle++]=(temp_left+temp_right)<<4; + oscBuf[1]->data[oscBuf[1]->needle++]=(temp_left+temp_right)<<3; accum_left += temp_left; accum_right += temp_right; m_Amp2.TickAndOutputStereo(temp_left, temp_right); - oscBuf[2]->data[oscBuf[2]->needle++]=(temp_left+temp_right)<<4; + oscBuf[2]->data[oscBuf[2]->needle++]=(temp_left+temp_right)<<3; accum_left += temp_left; accum_right += temp_right; m_Amp3.TickAndOutputStereo(temp_left, temp_right); - oscBuf[3]->data[oscBuf[3]->needle++]=(temp_left+temp_right)<<4; + oscBuf[3]->data[oscBuf[3]->needle++]=(temp_left+temp_right)<<3; accum_left += temp_left; accum_right += temp_right; m_Amp4.TickAndOutputStereo(temp_left, temp_right); - oscBuf[4]->data[oscBuf[4]->needle++]=(temp_left+temp_right)<<4; + oscBuf[4]->data[oscBuf[4]->needle++]=(temp_left+temp_right)<<3; accum_left += temp_left; accum_right += temp_right; m_Amp5.TickAndOutputStereo(temp_left, temp_right); - oscBuf[5]->data[oscBuf[5]->needle++]=(temp_left+temp_right)<<4; + oscBuf[5]->data[oscBuf[5]->needle++]=(temp_left+temp_right)<<3; accum_left += temp_left; accum_right += temp_right; } @@ -394,4 +394,4 @@ void CSAADevice::_TickAndOutputSeparate(unsigned int& left_mixed, unsigned int& } left_mixed = accum_left; right_mixed = accum_right; -} \ No newline at end of file +} diff --git a/src/engine/platform/amiga.cpp b/src/engine/platform/amiga.cpp index 7c0b8c24..48128bc6 100644 --- a/src/engine/platform/amiga.cpp +++ b/src/engine/platform/amiga.cpp @@ -168,7 +168,7 @@ void DivPlatformAmiga::acquire(short** buf, size_t len) { outL+=(output*sep2)>>7; outR+=(output*sep1)>>7; } - oscBuf[i]->data[oscBuf[i]->needle++]=(amiga.nextOut[i]*MIN(64,amiga.audVol[i]))<<2; + oscBuf[i]->data[oscBuf[i]->needle++]=(amiga.nextOut[i]*MIN(64,amiga.audVol[i]))<<1; } else { oscBuf[i]->data[oscBuf[i]->needle++]=0; } diff --git a/src/engine/platform/arcade.cpp b/src/engine/platform/arcade.cpp index e617fc0d..8de0fa3b 100644 --- a/src/engine/platform/arcade.cpp +++ b/src/engine/platform/arcade.cpp @@ -76,7 +76,7 @@ void DivPlatformArcade::acquire_nuked(short** buf, size_t len) { } for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fm.ch_out[i]; + oscBuf[i]->data[oscBuf[i]->needle++]=fm.ch_out[i]>>1; } if (o[0]<-32768) o[0]=-32768; @@ -111,7 +111,7 @@ void DivPlatformArcade::acquire_ymfm(short** buf, size_t len) { fm_ymfm->generate(&out_ymfm); for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1)); + oscBuf[i]->data[oscBuf[i]->needle++]=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1))>>1; } os[0]=out_ymfm.data[0]; diff --git a/src/engine/platform/ay.cpp b/src/engine/platform/ay.cpp index 8eaea3fe..d31f0683 100644 --- a/src/engine/platform/ay.cpp +++ b/src/engine/platform/ay.cpp @@ -187,9 +187,9 @@ void DivPlatformAY8910::acquire(short** buf, size_t len) { buf[0][i]=ayBuf[0][0]; buf[1][i]=buf[0][i]; - oscBuf[0]->data[oscBuf[0]->needle++]=sunsoftVolTable[31-(ay->lastIndx&31)]<<3; - oscBuf[1]->data[oscBuf[1]->needle++]=sunsoftVolTable[31-((ay->lastIndx>>5)&31)]<<3; - oscBuf[2]->data[oscBuf[2]->needle++]=sunsoftVolTable[31-((ay->lastIndx>>10)&31)]<<3; + oscBuf[0]->data[oscBuf[0]->needle++]=sunsoftVolTable[31-(ay->lastIndx&31)]<<2; + oscBuf[1]->data[oscBuf[1]->needle++]=sunsoftVolTable[31-((ay->lastIndx>>5)&31)]<<2; + oscBuf[2]->data[oscBuf[2]->needle++]=sunsoftVolTable[31-((ay->lastIndx>>10)&31)]<<2; } } else { for (size_t i=0; idata[oscBuf[0]->needle++]=ayBuf[0][0]<<2; - oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<2; - oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<2; + oscBuf[0]->data[oscBuf[0]->needle++]=ayBuf[0][0]<<1; + oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<1; + oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<1; } } } diff --git a/src/engine/platform/ay8930.cpp b/src/engine/platform/ay8930.cpp index 8561548d..51560975 100644 --- a/src/engine/platform/ay8930.cpp +++ b/src/engine/platform/ay8930.cpp @@ -186,9 +186,9 @@ void DivPlatformAY8930::acquire(short** buf, size_t len) { buf[1][i]=buf[0][i]; } - oscBuf[0]->data[oscBuf[0]->needle++]=ayBuf[0][0]<<2; - oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<2; - oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<2; + oscBuf[0]->data[oscBuf[0]->needle++]=ayBuf[0][0]<<1; + oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<1; + oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<1; } } diff --git a/src/engine/platform/bubsyswsg.cpp b/src/engine/platform/bubsyswsg.cpp index 94202de1..bfb1e365 100644 --- a/src/engine/platform/bubsyswsg.cpp +++ b/src/engine/platform/bubsyswsg.cpp @@ -55,7 +55,7 @@ void DivPlatformBubSysWSG::acquire(short** buf, size_t len) { chanOut=chan[i].waveROM[k005289.addr(i)]*(regPool[2+i]&0xf); out+=chanOut; if (writeOscBuf==0) { - oscBuf[i]->data[oscBuf[i]->needle++]=chanOut<<7; + oscBuf[i]->data[oscBuf[i]->needle++]=chanOut<<6; } } } diff --git a/src/engine/platform/c64.cpp b/src/engine/platform/c64.cpp index 977e3951..43cfbdf0 100644 --- a/src/engine/platform/c64.cpp +++ b/src/engine/platform/c64.cpp @@ -80,18 +80,18 @@ void DivPlatformC64::acquire(short** buf, size_t len) { sid_fp.clock(4,&buf[0][i]); if (++writeOscBuf>=4) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=(sid_fp.lastChanOut[0]-dcOff)>>5; - oscBuf[1]->data[oscBuf[1]->needle++]=(sid_fp.lastChanOut[1]-dcOff)>>5; - oscBuf[2]->data[oscBuf[2]->needle++]=(sid_fp.lastChanOut[2]-dcOff)>>5; + oscBuf[0]->data[oscBuf[0]->needle++]=(sid_fp.lastChanOut[0]-dcOff)>>6; + oscBuf[1]->data[oscBuf[1]->needle++]=(sid_fp.lastChanOut[1]-dcOff)>>6; + oscBuf[2]->data[oscBuf[2]->needle++]=(sid_fp.lastChanOut[2]-dcOff)>>6; } } else { sid.clock(); buf[0][i]=sid.output(); if (++writeOscBuf>=16) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=(sid.last_chan_out[0]-dcOff)>>5; - oscBuf[1]->data[oscBuf[1]->needle++]=(sid.last_chan_out[1]-dcOff)>>5; - oscBuf[2]->data[oscBuf[2]->needle++]=(sid.last_chan_out[2]-dcOff)>>5; + oscBuf[0]->data[oscBuf[0]->needle++]=(sid.last_chan_out[0]-dcOff)>>6; + oscBuf[1]->data[oscBuf[1]->needle++]=(sid.last_chan_out[1]-dcOff)>>6; + oscBuf[2]->data[oscBuf[2]->needle++]=(sid.last_chan_out[2]-dcOff)>>6; } } } diff --git a/src/engine/platform/dummy.cpp b/src/engine/platform/dummy.cpp index 541630de..04763898 100644 --- a/src/engine/platform/dummy.cpp +++ b/src/engine/platform/dummy.cpp @@ -32,7 +32,7 @@ void DivPlatformDummy::acquire(short** buf, size_t len) { if (chan[j].active) { if (!isMuted[j]) { chanOut=(((signed short)chan[j].pos)*chan[j].amp*chan[j].vol)>>12; - oscBuf[j]->data[oscBuf[j]->needle++]=chanOut; + oscBuf[j]->data[oscBuf[j]->needle++]=chanOut>>1; out+=chanOut; } else { oscBuf[j]->data[oscBuf[j]->needle++]=0; diff --git a/src/engine/platform/es5506.cpp b/src/engine/platform/es5506.cpp index 5f6e2829..f388e860 100644 --- a/src/engine/platform/es5506.cpp +++ b/src/engine/platform/es5506.cpp @@ -168,7 +168,7 @@ void DivPlatformES5506::acquire(short** buf, size_t len) { buf[(o<<1)|1][h]=es5506.rout(o); } for (int i=chanMax; i>=0; i--) { - oscBuf[i]->data[oscBuf[i]->needle++]=(es5506.voice_lout(i)+es5506.voice_rout(i))>>5; + oscBuf[i]->data[oscBuf[i]->needle++]=(es5506.voice_lout(i)+es5506.voice_rout(i))>>6; } } } diff --git a/src/engine/platform/fds.cpp b/src/engine/platform/fds.cpp index 420f3e3a..2674e954 100644 --- a/src/engine/platform/fds.cpp +++ b/src/engine/platform/fds.cpp @@ -64,7 +64,7 @@ void DivPlatformFDS::acquire_puNES(short* buf, size_t len) { buf[i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf->data[oscBuf->needle++]=sample<<1; + oscBuf->data[oscBuf->needle++]=sample; } } } @@ -80,7 +80,7 @@ void DivPlatformFDS::acquire_NSFPlay(short* buf, size_t len) { buf[i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf->data[oscBuf->needle++]=sample<<1; + oscBuf->data[oscBuf->needle++]=sample; } } } diff --git a/src/engine/platform/ga20.cpp b/src/engine/platform/ga20.cpp index 7b9d86a1..60764585 100644 --- a/src/engine/platform/ga20.cpp +++ b/src/engine/platform/ga20.cpp @@ -75,7 +75,7 @@ void DivPlatformGA20::acquire(short** buf, size_t len) { ga20.sound_stream_update(buffer, 1); buf[0][h]=(signed int)(ga20Buf[0][h]+ga20Buf[1][h]+ga20Buf[2][h]+ga20Buf[3][h])>>2; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=ga20Buf[i][h]; + oscBuf[i]->data[oscBuf[i]->needle++]=ga20Buf[i][h]>>1; } } } diff --git a/src/engine/platform/gb.cpp b/src/engine/platform/gb.cpp index 9a5d6d7d..6a3b92d0 100644 --- a/src/engine/platform/gb.cpp +++ b/src/engine/platform/gb.cpp @@ -74,7 +74,7 @@ void DivPlatformGB::acquire(short** buf, size_t len) { buf[1][i]=gb->apu_output.final_sample.right; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(gb->apu_output.current_sample[i].left+gb->apu_output.current_sample[i].right)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=(gb->apu_output.current_sample[i].left+gb->apu_output.current_sample[i].right)<<5; } } } diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index 8e92c40f..072e8bc0 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -184,18 +184,18 @@ void DivPlatformGenesis::acquire_nuked(short** buf, size_t len) { if (i==5) { if (fm.dacen) { if (softPCM) { - oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<7; - oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<7; + oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<6; + oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<6; } else { - oscBuf[i]->data[oscBuf[i]->needle++]=fm.dacdata<<7; + oscBuf[i]->data[oscBuf[i]->needle++]=fm.dacdata<<6; oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { - oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?2:7),-32768,32767); + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?1:6),-32768,32767); oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { - oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?2:7),-32768,32767); + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fm.ch_out[i]<<(chipType==2?1:6),-32768,32767); } } @@ -243,16 +243,16 @@ void DivPlatformGenesis::acquire_ymfm(short** buf, size_t len) { //OPN2_Write(&fm,0,0); for (int i=0; i<6; i++) { - int chOut=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1))<<6; + int chOut=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1))<<5; if (chOut<-32768) chOut=-32768; if (chOut>32767) chOut=32767; if (i==5) { if (fm_ymfm->debug_dac_enable()) { if (softPCM) { - oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<7; - oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<7; + oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<6; + oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<6; } else { - oscBuf[i]->data[oscBuf[i]->needle++]=fm_ymfm->debug_dac_data()<<7; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_ymfm->debug_dac_data()<<6; oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { diff --git a/src/engine/platform/k007232.cpp b/src/engine/platform/k007232.cpp index 0b11d45f..bb0bf7a9 100644 --- a/src/engine/platform/k007232.cpp +++ b/src/engine/platform/k007232.cpp @@ -79,14 +79,14 @@ void DivPlatformK007232::acquire(short** buf, size_t len) { buf[0][h]=(lout[0]+lout[1])<<4; buf[1][h]=(rout[0]+rout[1])<<4; for (int i=0; i<2; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(lout[i]+rout[i])<<4; + oscBuf[i]->data[oscBuf[i]->needle++]=(lout[i]+rout[i])<<3; } } else { const unsigned char vol=regPool[0xc]; const signed int out[2]={(k007232.output(0)*(vol&0xf)),(k007232.output(1)*((vol>>4)&0xf))}; buf[0][h]=(out[0]+out[1])<<4; for (int i=0; i<2; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=out[i]<<5; + oscBuf[i]->data[oscBuf[i]->needle++]=out[i]<<4; } } } diff --git a/src/engine/platform/mmc5.cpp b/src/engine/platform/mmc5.cpp index 11b04e81..0edc83b2 100644 --- a/src/engine/platform/mmc5.cpp +++ b/src/engine/platform/mmc5.cpp @@ -85,9 +85,9 @@ void DivPlatformMMC5::acquire(short** buf, size_t len) { if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:((mmc5->S3.output*10)<<7); - oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:((mmc5->S4.output*10)<<7); - oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:((mmc5->pcm.output*2)<<6); + oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:((mmc5->S3.output*10)<<6); + oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:((mmc5->S4.output*10)<<6); + oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:((mmc5->pcm.output*2)<<5); } } } diff --git a/src/engine/platform/msm5232.cpp b/src/engine/platform/msm5232.cpp index eb8d5cbf..55df6128 100644 --- a/src/engine/platform/msm5232.cpp +++ b/src/engine/platform/msm5232.cpp @@ -60,7 +60,7 @@ void DivPlatformMSM5232::acquire(short** buf, size_t len) { ((regPool[12+(i>>4)]&2)?((msm->vo8[i]*partVolume[2+(i&4)])>>8):0)+ ((regPool[12+(i>>4)]&4)?((msm->vo4[i]*partVolume[1+(i&4)])>>8):0)+ ((regPool[12+(i>>4)]&8)?((msm->vo2[i]*partVolume[i&4])>>8):0) - )<<3; + )<<2; oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(o,-32768,32767); } diff --git a/src/engine/platform/msm6258.cpp b/src/engine/platform/msm6258.cpp index 6591eda5..31002a9c 100644 --- a/src/engine/platform/msm6258.cpp +++ b/src/engine/platform/msm6258.cpp @@ -84,7 +84,7 @@ void DivPlatformMSM6258::acquire(short** buf, size_t len) { } else { buf[0][h]=(msmPan&2)?msmOut:0; buf[1][h]=(msmPan&1)?msmOut:0; - oscBuf[0]->data[oscBuf[0]->needle++]=msmPan?msmOut:0; + oscBuf[0]->data[oscBuf[0]->needle++]=msmPan?(msmOut>>1):0; } } } diff --git a/src/engine/platform/msm6295.cpp b/src/engine/platform/msm6295.cpp index de7fedd5..2aff0006 100644 --- a/src/engine/platform/msm6295.cpp +++ b/src/engine/platform/msm6295.cpp @@ -79,9 +79,8 @@ void DivPlatformMSM6295::acquire(short** buf, size_t len) { if (++updateOsc>=22) { updateOsc=0; - // TODO: per-channel osc for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=msm.voice_out(i)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=msm.voice_out(i)<<5; } } } diff --git a/src/engine/platform/n163.cpp b/src/engine/platform/n163.cpp index ead44cc1..eee73b99 100644 --- a/src/engine/platform/n163.cpp +++ b/src/engine/platform/n163.cpp @@ -118,7 +118,7 @@ void DivPlatformN163::acquire(short** buf, size_t len) { buf[0][i]=out; if (n163.voice_cycle()==0x78) for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=n163.voice_out(i)<<7; + oscBuf[i]->data[oscBuf[i]->needle++]=n163.voice_out(i)<<6; } // command queue diff --git a/src/engine/platform/namcowsg.cpp b/src/engine/platform/namcowsg.cpp index 87721eb8..088f1e63 100644 --- a/src/engine/platform/namcowsg.cpp +++ b/src/engine/platform/namcowsg.cpp @@ -177,7 +177,7 @@ void DivPlatformNamcoWSG::acquire(short** buf, size_t len) { }; namco->sound_stream_update(bufC,1); for (int i=0; idata[oscBuf[i]->needle++]=namco->m_channel_list[i].last_out*chans; + oscBuf[i]->data[oscBuf[i]->needle++]=(namco->m_channel_list[i].last_out*chans)>>1; } } } diff --git a/src/engine/platform/nes.cpp b/src/engine/platform/nes.cpp index a25568d0..07f9c5ae 100644 --- a/src/engine/platform/nes.cpp +++ b/src/engine/platform/nes.cpp @@ -115,11 +115,11 @@ void DivPlatformNES::acquire_puNES(short** buf, size_t len) { buf[0][i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:(nes->S1.output<<11); - oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:(nes->S2.output<<11); - oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:(nes->TR.output<<11); - oscBuf[3]->data[oscBuf[3]->needle++]=isMuted[3]?0:(nes->NS.output<<11); - oscBuf[4]->data[oscBuf[4]->needle++]=isMuted[4]?0:(nes->DMC.output<<8); + oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:(nes->S1.output<<10); + oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:(nes->S2.output<<10); + oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:(nes->TR.output<<10); + oscBuf[3]->data[oscBuf[3]->needle++]=isMuted[3]?0:(nes->NS.output<<10); + oscBuf[4]->data[oscBuf[4]->needle++]=isMuted[4]?0:(nes->DMC.output<<7); } } } @@ -142,11 +142,11 @@ void DivPlatformNES::acquire_NSFPlay(short** buf, size_t len) { buf[0][i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=nes1_NP->out[0]<<11; - oscBuf[1]->data[oscBuf[1]->needle++]=nes1_NP->out[1]<<11; - oscBuf[2]->data[oscBuf[2]->needle++]=nes2_NP->out[0]<<11; - oscBuf[3]->data[oscBuf[3]->needle++]=nes2_NP->out[1]<<11; - oscBuf[4]->data[oscBuf[4]->needle++]=nes2_NP->out[2]<<8; + oscBuf[0]->data[oscBuf[0]->needle++]=nes1_NP->out[0]<<10; + oscBuf[1]->data[oscBuf[1]->needle++]=nes1_NP->out[1]<<10; + oscBuf[2]->data[oscBuf[2]->needle++]=nes2_NP->out[0]<<10; + oscBuf[3]->data[oscBuf[3]->needle++]=nes2_NP->out[1]<<10; + oscBuf[4]->data[oscBuf[4]->needle++]=nes2_NP->out[2]<<7; } } } diff --git a/src/engine/platform/opl.cpp b/src/engine/platform/opl.cpp index a54667a7..b39fb8f6 100644 --- a/src/engine/platform/opl.cpp +++ b/src/engine/platform/opl.cpp @@ -211,7 +211,7 @@ void DivPlatformOPL::acquire_nuked(short** buf, size_t len) { if (!isMuted[adpcmChan]) { os[0]-=aOut.data[0]>>3; os[1]-=aOut.data[0]>>3; - oscBuf[adpcmChan]->data[oscBuf[adpcmChan]->needle++]=aOut.data[0]; + oscBuf[adpcmChan]->data[oscBuf[adpcmChan]->needle++]=aOut.data[0]>>1; } else { oscBuf[adpcmChan]->data[oscBuf[adpcmChan]->needle++]=0; } @@ -234,14 +234,13 @@ void DivPlatformOPL::acquire_nuked(short** buf, size_t len) { if (fm.channel[i].out[3]!=NULL) { oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[3]; } - oscBuf[i]->data[oscBuf[i]->needle]<<=1; oscBuf[i]->needle++; } // special - oscBuf[melodicChans+1]->data[oscBuf[melodicChans+1]->needle++]=fm.slot[16].out*6; - oscBuf[melodicChans+2]->data[oscBuf[melodicChans+2]->needle++]=fm.slot[14].out*6; - oscBuf[melodicChans+3]->data[oscBuf[melodicChans+3]->needle++]=fm.slot[17].out*6; - oscBuf[melodicChans+4]->data[oscBuf[melodicChans+4]->needle++]=fm.slot[13].out*6; + oscBuf[melodicChans+1]->data[oscBuf[melodicChans+1]->needle++]=fm.slot[16].out*3; + oscBuf[melodicChans+2]->data[oscBuf[melodicChans+2]->needle++]=fm.slot[14].out*3; + oscBuf[melodicChans+3]->data[oscBuf[melodicChans+3]->needle++]=fm.slot[17].out*3; + oscBuf[melodicChans+4]->data[oscBuf[melodicChans+4]->needle++]=fm.slot[13].out*3; } else { for (int i=0; idata[oscBuf[i]->needle]+=*fm.channel[ch].out[3]; } - oscBuf[i]->data[oscBuf[i]->needle]<<=1; oscBuf[i]->needle++; } } diff --git a/src/engine/platform/opll.cpp b/src/engine/platform/opll.cpp index d0effd15..e7486b94 100644 --- a/src/engine/platform/opll.cpp +++ b/src/engine/platform/opll.cpp @@ -68,7 +68,7 @@ void DivPlatformOPLL::acquire_nuked(short** buf, size_t len) { unsigned char nextOut=cycleMapOPLL[fm.cycles]; if ((nextOut>=6 && properDrums) || !isMuted[nextOut]) { os+=(o[0]+o[1]); - if (vrc7 || (fm.rm_enable&0x20)) oscBuf[nextOut]->data[oscBuf[nextOut]->needle++]=(o[0]+o[1])<<6; + if (vrc7 || (fm.rm_enable&0x20)) oscBuf[nextOut]->data[oscBuf[nextOut]->needle++]=(o[0]+o[1])<<5; } else { if (vrc7 || (fm.rm_enable&0x20)) oscBuf[nextOut]->data[oscBuf[nextOut]->needle++]=0; } @@ -76,7 +76,7 @@ void DivPlatformOPLL::acquire_nuked(short** buf, size_t len) { if (!(vrc7 || (fm.rm_enable&0x20))) for (int i=0; i<9; i++) { unsigned char ch=visMapOPLL[i]; if ((i>=6 && properDrums) || !isMuted[ch]) { - oscBuf[ch]->data[oscBuf[ch]->needle++]=(fm.output_ch[i])<<6; + oscBuf[ch]->data[oscBuf[ch]->needle++]=(fm.output_ch[i])<<5; } else { oscBuf[ch]->data[oscBuf[ch]->needle++]=0; } diff --git a/src/engine/platform/pce.cpp b/src/engine/platform/pce.cpp index a920a4d0..47e5bbcd 100644 --- a/src/engine/platform/pce.cpp +++ b/src/engine/platform/pce.cpp @@ -101,7 +101,7 @@ void DivPlatformPCE::acquire(short** buf, size_t len) { pce->ResetTS(0); for (int i=0; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP((pce->channel[i].blip_prev_samp[0]+pce->channel[i].blip_prev_samp[1])<<1,-32768,32767); + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(pce->channel[i].blip_prev_samp[0]+pce->channel[i].blip_prev_samp[1],-32768,32767); } tempL[0]=(tempL[0]>>1)+(tempL[0]>>2); diff --git a/src/engine/platform/pcmdac.cpp b/src/engine/platform/pcmdac.cpp index 283b6e24..3a00e431 100644 --- a/src/engine/platform/pcmdac.cpp +++ b/src/engine/platform/pcmdac.cpp @@ -229,7 +229,7 @@ void DivPlatformPCMDAC::acquire(short** buf, size_t len) { } else { output=output*chan[0].vol*chan[0].envVol/16384; } - oscBuf->data[oscBuf->needle++]=output; + oscBuf->data[oscBuf->needle++]=output>>1; if (outStereo) { buf[0][h]=((output*chan[0].panL)>>(depthScale+8))<>(depthScale+8))<=14) { oscBufDelay=0; - oscBuf[0]->data[oscBuf[0]->needle++]=pokey.outvol_0<<11; - oscBuf[1]->data[oscBuf[1]->needle++]=pokey.outvol_1<<11; - oscBuf[2]->data[oscBuf[2]->needle++]=pokey.outvol_2<<11; - oscBuf[3]->data[oscBuf[3]->needle++]=pokey.outvol_3<<11; + oscBuf[0]->data[oscBuf[0]->needle++]=pokey.outvol_0<<10; + oscBuf[1]->data[oscBuf[1]->needle++]=pokey.outvol_1<<10; + oscBuf[2]->data[oscBuf[2]->needle++]=pokey.outvol_2<<10; + oscBuf[3]->data[oscBuf[3]->needle++]=pokey.outvol_3<<10; } } } diff --git a/src/engine/platform/qsound.cpp b/src/engine/platform/qsound.cpp index b1aeab3e..d7f908f5 100644 --- a/src/engine/platform/qsound.cpp +++ b/src/engine/platform/qsound.cpp @@ -272,7 +272,7 @@ void DivPlatformQSound::acquire(short** buf, size_t len) { buf[1][h]=chip.out[1]; for (int i=0; i<19; i++) { - int data=chip.voice_output[i]<<2; + int data=chip.voice_output[i]<<1; if (data<-32768) data=-32768; if (data>32767) data=32767; oscBuf[i]->data[oscBuf[i]->needle++]=data; diff --git a/src/engine/platform/rf5c68.cpp b/src/engine/platform/rf5c68.cpp index 7be43801..84522c74 100644 --- a/src/engine/platform/rf5c68.cpp +++ b/src/engine/platform/rf5c68.cpp @@ -74,7 +74,7 @@ void DivPlatformRF5C68::acquire(short** buf, size_t len) { rf5c68.sound_stream_update(bufPtrs,chBufPtrs,blockLen); for (int i=0; i<8; i++) { for (size_t j=0; jdata[oscBuf[i]->needle++]=bufC[i*2][j]+bufC[i*2+1][j]; + oscBuf[i]->data[oscBuf[i]->needle++]=(bufC[i*2][j]+bufC[i*2+1][j])>>1; } } pos+=blockLen; diff --git a/src/engine/platform/scc.cpp b/src/engine/platform/scc.cpp index cd97ff30..e7ad162f 100644 --- a/src/engine/platform/scc.cpp +++ b/src/engine/platform/scc.cpp @@ -87,7 +87,7 @@ void DivPlatformSCC::acquire(short** buf, size_t len) { buf[0][h]=out; for (int i=0; i<5; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=scc->voice_out(i)<<7; + oscBuf[i]->data[oscBuf[i]->needle++]=scc->voice_out(i)<<6; } } } diff --git a/src/engine/platform/segapcm.cpp b/src/engine/platform/segapcm.cpp index ce24e2fb..47411496 100644 --- a/src/engine/platform/segapcm.cpp +++ b/src/engine/platform/segapcm.cpp @@ -49,7 +49,7 @@ void DivPlatformSegaPCM::acquire(short** buf, size_t len) { buf[1][h]=os[1]; for (int i=0; i<16; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=pcm.lastOut[i][0]+pcm.lastOut[i][1]; + oscBuf[i]->data[oscBuf[i]->needle++]=(pcm.lastOut[i][0]+pcm.lastOut[i][1])>>1; } } } diff --git a/src/engine/platform/sm8521.cpp b/src/engine/platform/sm8521.cpp index e1f359c0..1c669a64 100644 --- a/src/engine/platform/sm8521.cpp +++ b/src/engine/platform/sm8521.cpp @@ -58,9 +58,9 @@ void DivPlatformSM8521::acquire(short** buf, size_t len) { sm8521_sound_tick(&sm8521,8); buf[0][h]=sm8521.out<<6; for (int i=0; i<2; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=sm8521.sg[i].base.out<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=sm8521.sg[i].base.out<<5; } - oscBuf[2]->data[oscBuf[2]->needle++]=sm8521.noise.base.out<<6; + oscBuf[2]->data[oscBuf[2]->needle++]=sm8521.noise.base.out<<5; } } diff --git a/src/engine/platform/snes.cpp b/src/engine/platform/snes.cpp index 0c9734c2..43401ebc 100644 --- a/src/engine/platform/snes.cpp +++ b/src/engine/platform/snes.cpp @@ -91,7 +91,7 @@ void DivPlatformSNES::acquire(short** buf, size_t len) { next=(next*254)/MAX(1,globalVolL+globalVolR); if (next<-32768) next=-32768; if (next>32767) next=32767; - oscBuf[i]->data[oscBuf[i]->needle++]=next; + oscBuf[i]->data[oscBuf[i]->needle++]=next>>1; } } } diff --git a/src/engine/platform/sound/lynx/Mikey.cpp b/src/engine/platform/sound/lynx/Mikey.cpp index 791336c1..baf376f5 100644 --- a/src/engine/platform/sound/lynx/Mikey.cpp +++ b/src/engine/platform/sound/lynx/Mikey.cpp @@ -509,7 +509,7 @@ public: } if (oscb!=NULL) { - oscb[i]->data[oscb[i]->needle++]=oscbWrite; + oscb[i]->data[oscb[i]->needle++]=oscbWrite>>1; } } diff --git a/src/engine/platform/sound/pokey/AltASAP.cpp b/src/engine/platform/sound/pokey/AltASAP.cpp index 21bc31a2..9ed2f207 100644 --- a/src/engine/platform/sound/pokey/AltASAP.cpp +++ b/src/engine/platform/sound/pokey/AltASAP.cpp @@ -39,7 +39,7 @@ static constexpr int MuteInit = 2; static constexpr int MuteSerialInput = 8; //just some magick value to match the audio level of mzpokeysnd static constexpr int16_t MAGICK_VOLUME_BOOSTER = 160; -static constexpr int16_t MAGICK_OSC_VOLUME_BOOSTER = 4; +static constexpr int16_t MAGICK_OSC_VOLUME_BOOSTER = 2; struct PokeyBase { diff --git a/src/engine/platform/swan.cpp b/src/engine/platform/swan.cpp index 209e2fc2..46edfd7f 100644 --- a/src/engine/platform/swan.cpp +++ b/src/engine/platform/swan.cpp @@ -87,7 +87,7 @@ void DivPlatformSwan::acquire(short** buf, size_t len) { buf[0][h]=samp[0]; buf[1][h]=samp[1]; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(ws->sample_cache[i][0]+ws->sample_cache[i][1])<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=(ws->sample_cache[i][0]+ws->sample_cache[i][1])<<5; } } } diff --git a/src/engine/platform/tia.cpp b/src/engine/platform/tia.cpp index 1836bee1..cdd11621 100644 --- a/src/engine/platform/tia.cpp +++ b/src/engine/platform/tia.cpp @@ -51,8 +51,8 @@ void DivPlatformTIA::acquire(short** buf, size_t len) { } if (++chanOscCounter>=114) { chanOscCounter=0; - oscBuf[0]->data[oscBuf[0]->needle++]=tia.myChannelOut[0]; - oscBuf[1]->data[oscBuf[1]->needle++]=tia.myChannelOut[1]; + oscBuf[0]->data[oscBuf[0]->needle++]=tia.myChannelOut[0]>>1; + oscBuf[1]->data[oscBuf[1]->needle++]=tia.myChannelOut[1]>>1; } } } diff --git a/src/engine/platform/tx81z.cpp b/src/engine/platform/tx81z.cpp index 935390bc..c4d921fd 100644 --- a/src/engine/platform/tx81z.cpp +++ b/src/engine/platform/tx81z.cpp @@ -78,7 +78,7 @@ void DivPlatformTX81Z::acquire(short** buf, size_t len) { fm_ymfm->generate(&out_ymfm); for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1)); + oscBuf[i]->data[oscBuf[i]->needle++]=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1))>>1; } os[0]=out_ymfm.data[0]; diff --git a/src/engine/platform/vb.cpp b/src/engine/platform/vb.cpp index 3701b5aa..6732bded 100644 --- a/src/engine/platform/vb.cpp +++ b/src/engine/platform/vb.cpp @@ -107,7 +107,7 @@ void DivPlatformVB::acquire(short** buf, size_t len) { tempL=0; tempR=0; for (int i=0; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(vb->last_output[i][0]+vb->last_output[i][1])*8; + oscBuf[i]->data[oscBuf[i]->needle++]=(vb->last_output[i][0]+vb->last_output[i][1])*4; tempL+=vb->last_output[i][0]; tempR+=vb->last_output[i][1]; } diff --git a/src/engine/platform/vera.cpp b/src/engine/platform/vera.cpp index 57e6f29f..8357f756 100644 --- a/src/engine/platform/vera.cpp +++ b/src/engine/platform/vera.cpp @@ -107,9 +107,9 @@ void DivPlatformVERA::acquire(short** buf, size_t len) { pos++; for (int i=0; i<16; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=psg->channels[i].lastOut<<4; + oscBuf[i]->data[oscBuf[i]->needle++]=psg->channels[i].lastOut<<3; } - int pcmOut=whyCallItBuf[2][i]+whyCallItBuf[3][i]; + int pcmOut=(whyCallItBuf[2][i]+whyCallItBuf[3][i])>>1; if (pcmOut<-32768) pcmOut=-32768; if (pcmOut>32767) pcmOut=32767; oscBuf[16]->data[oscBuf[16]->needle++]=pcmOut; diff --git a/src/engine/platform/vic20.cpp b/src/engine/platform/vic20.cpp index bd25b528..cb78e9b4 100644 --- a/src/engine/platform/vic20.cpp +++ b/src/engine/platform/vic20.cpp @@ -69,7 +69,7 @@ void DivPlatformVIC20::acquire(short** buf, size_t len) { vic_sound_machine_calculate_samples(vic,&samp,1,1,0,SAMP_DIVIDER); buf[0][h]=samp; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=vic->ch[i].out?(vic->volume<<11):0; + oscBuf[i]->data[oscBuf[i]->needle++]=vic->ch[i].out?(vic->volume<<10):0; } } } diff --git a/src/engine/platform/vrc6.cpp b/src/engine/platform/vrc6.cpp index 2aeb3897..7834ecbe 100644 --- a/src/engine/platform/vrc6.cpp +++ b/src/engine/platform/vrc6.cpp @@ -87,9 +87,9 @@ void DivPlatformVRC6::acquire(short** buf, size_t len) { if (++writeOscBuf>=32) { writeOscBuf=0; for (int i=0; i<2; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=vrc6.pulse_out(i)<<10; + oscBuf[i]->data[oscBuf[i]->needle++]=vrc6.pulse_out(i)<<9; } - oscBuf[2]->data[oscBuf[2]->needle++]=vrc6.sawtooth_out()<<10; + oscBuf[2]->data[oscBuf[2]->needle++]=vrc6.sawtooth_out()<<9; } // Command part diff --git a/src/engine/platform/x1_010.cpp b/src/engine/platform/x1_010.cpp index 44f94d99..29601ae9 100644 --- a/src/engine/platform/x1_010.cpp +++ b/src/engine/platform/x1_010.cpp @@ -222,7 +222,7 @@ void DivPlatformX1_010::acquire(short** buf, size_t len) { if (stereo) buf[1][h]=tempR; for (int i=0; i<16; i++) { - int vo=(x1_010.voice_out(i,0)+x1_010.voice_out(i,1))<<3; + int vo=(x1_010.voice_out(i,0)+x1_010.voice_out(i,1))<<2; oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(vo,-32768,32767); } } diff --git a/src/engine/platform/ym2203.cpp b/src/engine/platform/ym2203.cpp index cc2d1f3f..69d1ca8a 100644 --- a/src/engine/platform/ym2203.cpp +++ b/src/engine/platform/ym2203.cpp @@ -231,11 +231,11 @@ void DivPlatformYM2203::acquire_combo(short** buf, size_t len) { buf[0][h]=os; for (int i=0; i<3; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]>>1; } for (int i=3; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]; + oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]>>1; } } } @@ -282,11 +282,11 @@ void DivPlatformYM2203::acquire_ymfm(short** buf, size_t len) { for (int i=0; i<3; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1)); + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; } for (int i=3; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]; + oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]>>1; } } } diff --git a/src/engine/platform/ym2608.cpp b/src/engine/platform/ym2608.cpp index 7c10e76c..73280bcb 100644 --- a/src/engine/platform/ym2608.cpp +++ b/src/engine/platform/ym2608.cpp @@ -402,19 +402,19 @@ void DivPlatformYM2608::acquire_combo(short** buf, size_t len) { for (int i=0; idata[oscBuf[i]->needle++]=fm_nuked.ch_out[i]; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]>>1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1); + oscBuf[i]->data[oscBuf[i]->needle++]=(adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1))>>1; } - oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); + oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=(abe->get_last_out(0)+abe->get_last_out(1))>>1; } } @@ -471,19 +471,19 @@ void DivPlatformYM2608::acquire_ymfm(short** buf, size_t len) { buf[1][h]=os[1]; for (int i=0; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1)); + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; } ssge->get_last_out(ssgOut); for (int i=6; i<9; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-6]; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-6]>>1; } for (int i=9; i<15; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=adpcmAChan[i-9]->get_last_out(0)+adpcmAChan[i-9]->get_last_out(1); + oscBuf[i]->data[oscBuf[i]->needle++]=(adpcmAChan[i-9]->get_last_out(0)+adpcmAChan[i-9]->get_last_out(1))>>1; } - oscBuf[15]->data[oscBuf[15]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); + oscBuf[15]->data[oscBuf[15]->needle++]=(abe->get_last_out(0)+abe->get_last_out(1))>>1; } } diff --git a/src/engine/platform/ym2610.cpp b/src/engine/platform/ym2610.cpp index e9cb021d..303604d6 100644 --- a/src/engine/platform/ym2610.cpp +++ b/src/engine/platform/ym2610.cpp @@ -333,19 +333,19 @@ void DivPlatformYM2610::acquire_combo(short** buf, size_t len) { for (int i=0; idata[oscBuf[i]->needle++]=fm_nuked.ch_out[bchOffs[i]]; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[bchOffs[i]]>>1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1); + oscBuf[i]->data[oscBuf[i]->needle++]=(adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1))>>1; } - oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); + oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=(abe->get_last_out(0)+abe->get_last_out(1))>>1; } } @@ -404,19 +404,19 @@ void DivPlatformYM2610::acquire_ymfm(short** buf, size_t len) { buf[1][h]=os[1]; for (int i=0; idata[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1)); + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1); + oscBuf[i]->data[oscBuf[i]->needle++]=(adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1))>>1; } - oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); + oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=(abe->get_last_out(0)+abe->get_last_out(1))>>1; } } diff --git a/src/engine/platform/ym2610b.cpp b/src/engine/platform/ym2610b.cpp index 7d28a801..b4292a14 100644 --- a/src/engine/platform/ym2610b.cpp +++ b/src/engine/platform/ym2610b.cpp @@ -401,19 +401,19 @@ void DivPlatformYM2610B::acquire_combo(short** buf, size_t len) { for (int i=0; idata[oscBuf[i]->needle++]=fm_nuked.ch_out[i]; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]>>1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1); + oscBuf[i]->data[oscBuf[i]->needle++]=(adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1))>>1; } - oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); + oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=(abe->get_last_out(0)+abe->get_last_out(1))>>1; } } @@ -471,19 +471,19 @@ void DivPlatformYM2610B::acquire_ymfm(short** buf, size_t len) { for (int i=0; idata[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1)); + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1); + oscBuf[i]->data[oscBuf[i]->needle++]=(adpcmAChan[i-adpcmAChanOffs]->get_last_out(0)+adpcmAChan[i-adpcmAChanOffs]->get_last_out(1))>>1; } - oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); + oscBuf[adpcmBChanOffs]->data[oscBuf[adpcmBChanOffs]->needle++]=(abe->get_last_out(0)+abe->get_last_out(1))>>1; } } diff --git a/src/engine/platform/ymz280b.cpp b/src/engine/platform/ymz280b.cpp index a8838ae9..496f3568 100644 --- a/src/engine/platform/ymz280b.cpp +++ b/src/engine/platform/ymz280b.cpp @@ -76,7 +76,7 @@ void DivPlatformYMZ280B::acquire(short** buf, size_t len) { for (int j=0; j<8; j++) { dataL+=why[j*2][i]; dataR+=why[j*2+1][i]; - oscBuf[j]->data[oscBuf[j]->needle++]=(short)(((int)why[j*2][i]+why[j*2+1][i])/2); + oscBuf[j]->data[oscBuf[j]->needle++]=(short)(((int)why[j*2][i]+why[j*2+1][i])/4); } buf[0][pos]=(short)(dataL/8); buf[1][pos]=(short)(dataR/8); diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index 3e580524..c278463e 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -93,7 +93,7 @@ void FurnaceGUI::calcChanOsc() { unsigned short needlePos=buf->needle; needlePos-=displaySize; for (unsigned short i=0; i<512; i++) { - float y=(float)buf->data[(unsigned short)(needlePos+(i*displaySize/512))]/65536.0f; + float y=(float)buf->data[(unsigned short)(needlePos+(i*displaySize/512))]/32768.0f; if (minLevel>y) minLevel=y; if (maxLeveldata[(unsigned short)(needlePos+(i*displaySize/precision))]/65536.0f; + float y=(float)buf->data[(unsigned short)(needlePos+(i*displaySize/precision))]/32768.0f; if (minLevel>y) minLevel=y; if (maxLeveldata[(unsigned short)(needlePos+(i*displaySize/precision))]/65536.0f; + float y=(float)buf->data[(unsigned short)(needlePos+(i*displaySize/precision))]/32768.0f; y-=dcOff; if (y<-0.5f) y=-0.5f; if (y>0.5f) y=0.5f; From d35fa6f1bc02971c95eedcfcb9af2d7c7b3b5fe6 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 16 Jun 2023 18:43:33 -0500 Subject: [PATCH 101/183] new demo song by Xan --- demos/snes/changeyourheart.fur | Bin 0 -> 216906 bytes src/gui/about.cpp | 1 + 2 files changed, 1 insertion(+) create mode 100644 demos/snes/changeyourheart.fur diff --git a/demos/snes/changeyourheart.fur b/demos/snes/changeyourheart.fur new file mode 100644 index 0000000000000000000000000000000000000000..7b671c3a26e21f15b0e94c7e225c574c5c2679ae GIT binary patch literal 216906 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

    P{(H5euaP;|$t%H=Ai3G!e_Zri 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

    # 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%0Df9Cxj?a1lc36y!IicKDRe%%7FUaN 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

    w*c~w#=kJ4e>M6E?lt>8 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 literal 0 HcmV?d00001 diff --git a/src/gui/about.cpp b/src/gui/about.cpp index 449a2714..4076dbc6 100644 --- a/src/gui/about.cpp +++ b/src/gui/about.cpp @@ -124,6 +124,7 @@ const char* aboutLine[]={ "Ultraprogramer", "UserSniper", "Weeppiko", + "Xan", "Yuzu4K", "Zaxolotl", "ZoomTen (Zumi)", From e246501b3a68b4e4c9e5126efe0e708f84bcb601 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 02:55:45 -0500 Subject: [PATCH 102/183] YM2612: fix DAC chan osc --- src/engine/platform/genesis.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index 072e8bc0..f33ce4a7 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -187,7 +187,7 @@ void DivPlatformGenesis::acquire_nuked(short** buf, size_t len) { oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<6; oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<6; } else { - oscBuf[i]->data[oscBuf[i]->needle++]=fm.dacdata<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=(fm.dacdata^0x100)<<6; oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { From b9414de49d01fac9e579bb39fcc4a6669dd7d518 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 03:14:06 -0500 Subject: [PATCH 103/183] OPLL: fix vol macro for drums --- src/engine/platform/opll.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/engine/platform/opll.cpp b/src/engine/platform/opll.cpp index e7486b94..596735a4 100644 --- a/src/engine/platform/opll.cpp +++ b/src/engine/platform/opll.cpp @@ -107,7 +107,6 @@ void DivPlatformOPLL::tick(bool sysTick) { rWrite(0x36,drumVol[0]); rWrite(0x37,drumVol[1]|(drumVol[4]<<4)); rWrite(0x38,drumVol[3]|(drumVol[2]<<4)); - break; } else if (i<6 || !drums) { if (i<9) { rWrite(0x30+i,((15-VOL_SCALE_LOG_BROKEN(chan[i].outVol,15-chan[i].state.op[1].tl,15))&15)|(chan[i].state.opllPreset<<4)); From 4776020d05049c8c0fdfdadad24de96efa0e7501 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 04:27:22 -0500 Subject: [PATCH 104/183] GUI: per-chan osc improvements --- src/engine/platform/gb.cpp | 2 +- src/engine/platform/sm8521.cpp | 4 +- src/gui/chanOsc.cpp | 360 +++++++++++++++++++++------------ src/gui/gui.cpp | 24 +++ src/gui/gui.h | 7 +- 5 files changed, 265 insertions(+), 132 deletions(-) diff --git a/src/engine/platform/gb.cpp b/src/engine/platform/gb.cpp index 6a3b92d0..9a5d6d7d 100644 --- a/src/engine/platform/gb.cpp +++ b/src/engine/platform/gb.cpp @@ -74,7 +74,7 @@ void DivPlatformGB::acquire(short** buf, size_t len) { buf[1][i]=gb->apu_output.final_sample.right; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(gb->apu_output.current_sample[i].left+gb->apu_output.current_sample[i].right)<<5; + oscBuf[i]->data[oscBuf[i]->needle++]=(gb->apu_output.current_sample[i].left+gb->apu_output.current_sample[i].right)<<6; } } } diff --git a/src/engine/platform/sm8521.cpp b/src/engine/platform/sm8521.cpp index 1c669a64..e72616bd 100644 --- a/src/engine/platform/sm8521.cpp +++ b/src/engine/platform/sm8521.cpp @@ -58,9 +58,9 @@ void DivPlatformSM8521::acquire(short** buf, size_t len) { sm8521_sound_tick(&sm8521,8); buf[0][h]=sm8521.out<<6; for (int i=0; i<2; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=sm8521.sg[i].base.out<<5; + oscBuf[i]->data[oscBuf[i]->needle++]=sm8521.sg[i].base.out<<7; } - oscBuf[2]->data[oscBuf[2]->needle++]=sm8521.noise.base.out<<5; + oscBuf[2]->data[oscBuf[2]->needle++]=sm8521.noise.base.out<<7; } } diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index c278463e..e6306db2 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -22,6 +22,7 @@ #include "../ta-log.h" #include "imgui.h" #include "imgui_internal.h" +#include "misc/cpp/imgui_stdlib.h" #define FURNACE_FFT_SIZE 4096 #define FURNACE_FFT_RATE 80.0 @@ -284,159 +285,266 @@ void FurnaceGUI::drawChanOsc() { ImGui::ColorPicker4("Color",(float*)&chanOscColor); } + ImGui::Text("Text format:"); + ImGui::SameLine(); + ImGui::InputText("##TextFormat",&chanOscTextFormat); + if (ImGui::IsItemHovered()) { + if (ImGui::BeginTooltip()) { + ImGui::TextUnformatted( + "format guide:\n" + "- %c: channel name\n" + "- %C: channel short name\n" + "- %d: channel number (starting from 0)\n" + "- %D: channel number (starting from 1)\n" + "- %i: instrument name\n" + "- %I: instrument number (decimal)\n" + "- %x: instrument number (hex)\n" + "- %s: chip name\n" + "- %S: chip ID\n" + "- %v: volume (decimal)\n" + "- %V: volume (percentage)\n" + "- %b: volume (hex)\n" + "- %%: percent sign" + ); + ImGui::EndTooltip(); + } + } + + ImGui::ColorEdit4("Text color",(float*)&chanOscTextColor); + if (ImGui::Button("OK")) { chanOscOptions=false; } - } + } else { + ImGui::PushStyleVar(ImGuiStyleVar_CellPadding,ImVec2(0.0f,0.0f)); + float availY=ImGui::GetContentRegionAvail().y; + if (ImGui::BeginTable("ChanOsc",chanOscCols,ImGuiTableFlags_Borders)) { + std::vector oscBufs; + std::vector oscFFTs; + std::vector oscChans; + int chans=e->getTotalChannelCount(); + ImGuiWindow* window=ImGui::GetCurrentWindow(); + ImVec2 waveform[512]; - ImGui::PushStyleVar(ImGuiStyleVar_CellPadding,ImVec2(0.0f,0.0f)); - float availY=ImGui::GetContentRegionAvail().y; - if (ImGui::BeginTable("ChanOsc",chanOscCols,ImGuiTableFlags_Borders)) { - std::vector oscBufs; - std::vector oscFFTs; - std::vector oscChans; - int chans=e->getTotalChannelCount(); - ImGuiWindow* window=ImGui::GetCurrentWindow(); - ImVec2 waveform[512]; + ImGuiStyle& style=ImGui::GetStyle(); - ImGuiStyle& style=ImGui::GetStyle(); - - for (int i=0; igetOscBuffer(i); - if (buf!=NULL && e->curSubSong->chanShow[i]) { - oscBufs.push_back(buf); - oscFFTs.push_back(&chanOscChan[i]); - oscChans.push_back(i); + for (int i=0; igetOscBuffer(i); + if (buf!=NULL && e->curSubSong->chanShow[i]) { + oscBufs.push_back(buf); + oscFFTs.push_back(&chanOscChan[i]); + oscChans.push_back(i); + } } - } - int rows=(oscBufs.size()+(chanOscCols-1))/chanOscCols; + int rows=(oscBufs.size()+(chanOscCols-1))/chanOscCols; - for (size_t i=0; ireadNeedle=buf->needle; - } + if (centerSettingReset) { + buf->readNeedle=buf->needle; + } - // check FFT status existence - if (fft->plan==NULL) { - logD("creating FFT plan for channel %d",ch); - fft->inBuf=(double*)fftw_malloc(FURNACE_FFT_SIZE*sizeof(double)); - fft->outBuf=(fftw_complex*)fftw_malloc(FURNACE_FFT_SIZE*sizeof(fftw_complex)); - fft->plan=fftw_plan_dft_r2c_1d(FURNACE_FFT_SIZE,fft->inBuf,fft->outBuf,FFTW_ESTIMATE); - } + // check FFT status existence + if (fft->plan==NULL) { + logD("creating FFT plan for channel %d",ch); + fft->inBuf=(double*)fftw_malloc(FURNACE_FFT_SIZE*sizeof(double)); + fft->outBuf=(fftw_complex*)fftw_malloc(FURNACE_FFT_SIZE*sizeof(fftw_complex)); + fft->plan=fftw_plan_dft_r2c_1d(FURNACE_FFT_SIZE,fft->inBuf,fft->outBuf,FFTW_ESTIMATE); + } - int displaySize=(float)(buf->rate)*(chanOscWindowSize/1000.0f); + int displaySize=(float)(buf->rate)*(chanOscWindowSize/1000.0f); - ImVec2 minArea=window->DC.CursorPos; - ImVec2 maxArea=ImVec2( - minArea.x+size.x, - minArea.y+size.y - ); - ImRect rect=ImRect(minArea,maxArea); - ImRect inRect=rect; - inRect.Min.x+=dpiScale; - inRect.Min.y+=2.0*dpiScale; - inRect.Max.x-=dpiScale; - inRect.Max.y-=2.0*dpiScale; + ImVec2 minArea=window->DC.CursorPos; + ImVec2 maxArea=ImVec2( + minArea.x+size.x, + minArea.y+size.y + ); + ImRect rect=ImRect(minArea,maxArea); + ImRect inRect=rect; + inRect.Min.x+=dpiScale; + inRect.Min.y+=2.0*dpiScale; + inRect.Max.x-=dpiScale; + inRect.Max.y-=2.0*dpiScale; - int precision=inRect.Max.x-inRect.Min.x; - if (precision<1) precision=1; - if (precision>512) precision=512; + int precision=inRect.Max.x-inRect.Min.x; + if (precision<1) precision=1; + if (precision>512) precision=512; - ImGui::ItemSize(size,style.FramePadding.y); - if (ImGui::ItemAdd(rect,ImGui::GetID("chOscDisplay"))) { - if (!e->isRunning()) { - for (unsigned short i=0; ineedle; - for (int i=0; iinBuf[i]=(double)buf->data[(unsigned short)(needlePos-displaySize*2+((i*displaySize*2)/FURNACE_FFT_SIZE))]/32768.0; - } - fftw_execute(fft->plan); - - // find origin frequency - int point=1; - double candAmp=0.0; - for (unsigned short i=1; i<512; i++) { - fftw_complex& f=fft->outBuf[i]; - // AMPLITUDE - double amp=sqrt(pow(f[0],2.0)+pow(f[1],2.0))/pow((double)i,0.8); - if (amp>candAmp) { - point=i; - candAmp=amp; + ImGui::ItemSize(size,style.FramePadding.y); + if (ImGui::ItemAdd(rect,ImGui::GetID("chOscDisplay"))) { + if (!e->isRunning()) { + for (unsigned short i=0; ineedle; + for (int i=0; iinBuf[i]=(double)buf->data[(unsigned short)(needlePos-displaySize*2+((i*displaySize*2)/FURNACE_FFT_SIZE))]/32768.0; + } + fftw_execute(fft->plan); + + // find origin frequency + int point=1; + double candAmp=0.0; + for (unsigned short i=1; i<512; i++) { + fftw_complex& f=fft->outBuf[i]; + // AMPLITUDE + double amp=sqrt(pow(f[0],2.0)+pow(f[1],2.0))/pow((double)i,0.8); + if (amp>candAmp) { + point=i; + candAmp=amp; + } + } + + // PHASE + fftw_complex& candPoint=fft->outBuf[point]; + double phase=((double)(displaySize*2)/(double)point)*(0.5+(atan2(candPoint[1],candPoint[0])/(M_PI*2))); + + if (chanOscWaveCorr) { + needlePos-=phase; + } + chanOscPitch[ch]=(float)point/32.0f; + + /* + String cPhase=fmt::sprintf("%d cphase: %f vol: %f",point,phase,chanOscVol[ch]); + dl->AddText(inRect.Min,0xffffffff,cPhase.c_str()); + */ + + needlePos-=displaySize; + for (unsigned short i=0; idata[(unsigned short)(needlePos+(i*displaySize/precision))]/32768.0f; + if (minLevel>y) minLevel=y; + if (maxLeveldata[(unsigned short)(needlePos+(i*displaySize/precision))]/32768.0f; + y-=dcOff; + if (y<-0.5f) y=-0.5f; + if (y>0.5f) y=0.5f; + y*=chanOscAmplify; + waveform[i]=ImLerp(inRect.Min,inRect.Max,ImVec2(x,0.5f-y)); } } + ImU32 color=ImGui::GetColorU32(chanOscColor); + if (chanOscUseGrad) { + float xVal=computeGradPos(chanOscColorX,ch); + float yVal=computeGradPos(chanOscColorY,ch); - // PHASE - fftw_complex& candPoint=fft->outBuf[point]; - double phase=((double)(displaySize*2)/(double)point)*(0.5+(atan2(candPoint[1],candPoint[0])/(M_PI*2))); + xVal=CLAMP(xVal,0.0f,1.0f); + yVal=CLAMP(yVal,0.0f,1.0f); - if (chanOscWaveCorr) { - needlePos-=phase; + color=chanOscGrad.get(xVal,1.0f-yVal); } - chanOscPitch[ch]=(float)point/32.0f; - - /* - String cPhase=fmt::sprintf("%d cphase: %f vol: %f",point,phase,chanOscVol[ch]); - dl->AddText(inRect.Min,0xffffffff,cPhase.c_str()); - */ + ImGui::PushClipRect(inRect.Min,inRect.Max,false); - needlePos-=displaySize; - for (unsigned short i=0; idata[(unsigned short)(needlePos+(i*displaySize/precision))]/32768.0f; - if (minLevel>y) minLevel=y; - if (maxLeveldata[(unsigned short)(needlePos+(i*displaySize/precision))]/32768.0f; - y-=dcOff; - if (y<-0.5f) y=-0.5f; - if (y>0.5f) y=0.5f; - waveform[i]=ImLerp(inRect.Min,inRect.Max,ImVec2(x,0.5f-y)); + dl->AddPolyline(waveform,precision,color,ImDrawFlags_None,dpiScale); + + if (!chanOscTextFormat.empty()) { + String text; + bool inFormat=false; + + for (char i: chanOscTextFormat) { + if (inFormat) { + switch (i) { + case 'c': + text+=e->getChannelName(ch); + break; + case 'C': + text+=e->getChannelShortName(ch); + break; + case 'd': + text+=fmt::sprintf("%d",ch); + break; + case 'D': + text+=fmt::sprintf("%d",ch+1); + break; + case 'i': { + DivChannelState* chanState=e->getChanState(ch); + if (chanState==NULL) break; + DivInstrument* ins=e->getIns(chanState->lastIns); + text+=ins->name; + break; + } + case 'I': { + DivChannelState* chanState=e->getChanState(ch); + if (chanState==NULL) break; + text+=fmt::sprintf("%d",chanState->lastIns); + break; + } + case 'x': { + DivChannelState* chanState=e->getChanState(ch); + if (chanState==NULL) break; + if (chanState->lastIns<0) { + text+="??"; + } else { + text+=fmt::sprintf("%.2X",chanState->lastIns); + } + break; + } + case 's': { + text+=e->getSystemName(e->sysOfChan[ch]); + break; + } + case 'S': { + text+=fmt::sprintf("%d",e->dispatchOfChan[ch]); + break; + } + case 'v': + break; + case 'V': + break; + case 'b': + break; + case '%': + text+='%'; + break; + default: + text+='%'; + text+=i; + break; + } + inFormat=false; + } else { + if (i=='%') { + inFormat=true; + } else { + text+=i; + } + } + } + + dl->AddText(ImLerp(inRect.Min,inRect.Max,ImVec2(0.0f,0.0f)),ImGui::GetColorU32(chanOscTextColor),text.c_str()); } + + ImGui::PopClipRect(); } - ImU32 color=ImGui::GetColorU32(chanOscColor); - if (chanOscUseGrad) { - float xVal=computeGradPos(chanOscColorX,ch); - float yVal=computeGradPos(chanOscColorY,ch); - - xVal=CLAMP(xVal,0.0f,1.0f); - yVal=CLAMP(yVal,0.0f,1.0f); - - color=chanOscGrad.get(xVal,1.0f-yVal); - } - ImGui::PushClipRect(inRect.Min,inRect.Max,false); - dl->AddPolyline(waveform,precision,color,ImDrawFlags_None,dpiScale); - ImGui::PopClipRect(); } } - } - ImGui::EndTable(); + ImGui::EndTable(); - if (ImGui::IsItemClicked(ImGuiMouseButton_Right)) { - chanOscOptions=!chanOscOptions; + if (ImGui::IsItemClicked(ImGuiMouseButton_Right)) { + chanOscOptions=!chanOscOptions; + } } + ImGui::PopStyleVar(); } - ImGui::PopStyleVar(); } if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_CHAN_OSC; ImGui::End(); diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 8c14f977..a51f9ab8 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -5994,13 +5994,22 @@ bool FurnaceGUI::init() { chanOscCols=e->getConfInt("chanOscCols",3); chanOscColorX=e->getConfInt("chanOscColorX",GUI_OSCREF_CENTER); chanOscColorY=e->getConfInt("chanOscColorY",GUI_OSCREF_CENTER); + chanOscTextX=e->getConfFloat("chanOscTextX",0.0f); + chanOscTextY=e->getConfFloat("chanOscTextY",0.0f); + chanOscAmplify=e->getConfFloat("chanOscAmplify",0.95f); chanOscWindowSize=e->getConfFloat("chanOscWindowSize",20.0f); chanOscWaveCorr=e->getConfBool("chanOscWaveCorr",true); chanOscOptions=e->getConfBool("chanOscOptions",false); + chanOscNormalize=e->getConfBool("chanOscNormalize",false); + chanOscTextFormat=e->getConfString("chanOscTextFormat","%c"); chanOscColor.x=e->getConfFloat("chanOscColorR",1.0f); chanOscColor.y=e->getConfFloat("chanOscColorG",1.0f); chanOscColor.z=e->getConfFloat("chanOscColorB",1.0f); chanOscColor.w=e->getConfFloat("chanOscColorA",1.0f); + chanOscTextColor.x=e->getConfFloat("chanOscTextColorR",1.0f); + chanOscTextColor.y=e->getConfFloat("chanOscTextColorG",1.0f); + chanOscTextColor.z=e->getConfFloat("chanOscTextColorB",1.0f); + chanOscTextColor.w=e->getConfFloat("chanOscTextColorA",0.75f); chanOscUseGrad=e->getConfBool("chanOscUseGrad",false); chanOscGrad.fromString(e->getConfString("chanOscGrad","")); chanOscGrad.render(); @@ -6487,13 +6496,22 @@ void FurnaceGUI::commitState() { e->setConf("chanOscCols",chanOscCols); e->setConf("chanOscColorX",chanOscColorX); e->setConf("chanOscColorY",chanOscColorY); + e->setConf("chanOscTextX",chanOscTextX); + e->setConf("chanOscTextY",chanOscTextY); + e->setConf("chanOscAmplify",chanOscAmplify); e->setConf("chanOscWindowSize",chanOscWindowSize); e->setConf("chanOscWaveCorr",chanOscWaveCorr); e->setConf("chanOscOptions",chanOscOptions); + e->setConf("chanOscNormalize",chanOscNormalize); + e->setConf("chanOscTextFormat",chanOscTextFormat); e->setConf("chanOscColorR",chanOscColor.x); e->setConf("chanOscColorG",chanOscColor.y); e->setConf("chanOscColorB",chanOscColor.z); e->setConf("chanOscColorA",chanOscColor.w); + e->setConf("chanOscTextColorR",chanOscTextColor.x); + e->setConf("chanOscTextColorG",chanOscTextColor.y); + e->setConf("chanOscTextColorB",chanOscTextColor.z); + e->setConf("chanOscTextColorA",chanOscTextColor.w); e->setConf("chanOscUseGrad",chanOscUseGrad); e->setConf("chanOscGrad",chanOscGrad.toString()); @@ -6915,11 +6933,17 @@ FurnaceGUI::FurnaceGUI(): chanOscColorX(GUI_OSCREF_CENTER), chanOscColorY(GUI_OSCREF_CENTER), chanOscWindowSize(20.0f), + chanOscTextX(0.0f), + chanOscTextY(0.0f), + chanOscAmplify(0.95f), chanOscWaveCorr(true), chanOscOptions(false), updateChanOscGradTex(true), chanOscUseGrad(false), + chanOscNormalize(false), + chanOscTextFormat("%c"), chanOscColor(1.0f,1.0f,1.0f,1.0f), + chanOscTextColor(1.0f,1.0f,1.0f,0.75f), chanOscGrad(64,64), chanOscGradTex(NULL), followLog(true), diff --git a/src/gui/gui.h b/src/gui/gui.h index 3d91e405..87c2a7fa 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1947,9 +1947,10 @@ class FurnaceGUI { // per-channel oscilloscope int chanOscCols, chanOscColorX, chanOscColorY; - float chanOscWindowSize; - bool chanOscWaveCorr, chanOscOptions, updateChanOscGradTex, chanOscUseGrad; - ImVec4 chanOscColor; + float chanOscWindowSize, chanOscTextX, chanOscTextY, chanOscAmplify; + bool chanOscWaveCorr, chanOscOptions, updateChanOscGradTex, chanOscUseGrad, chanOscNormalize; + String chanOscTextFormat; + ImVec4 chanOscColor, chanOscTextColor; Gradient2D chanOscGrad; void* chanOscGradTex; float chanOscLP0[DIV_MAX_CHANS]; From 0e029def516331936f3d82db541d2379e1547ee8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 13:40:29 -0500 Subject: [PATCH 105/183] YM2612: fix chan osc again --- src/engine/platform/genesis.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index f33ce4a7..a4b0f7b1 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -252,7 +252,7 @@ void DivPlatformGenesis::acquire_ymfm(short** buf, size_t len) { oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<6; oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<6; } else { - oscBuf[i]->data[oscBuf[i]->needle++]=fm_ymfm->debug_dac_data()<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=(fm_ymfm->debug_dac_data()^0x100)<<6; oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { From e7b69b27e64bebc0dce0ebb1ac02c08253e1827d Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 13:55:55 -0500 Subject: [PATCH 106/183] YM2151: fix Nuked chan osc --- src/engine/platform/arcade.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/arcade.cpp b/src/engine/platform/arcade.cpp index 8de0fa3b..0e38bf96 100644 --- a/src/engine/platform/arcade.cpp +++ b/src/engine/platform/arcade.cpp @@ -76,7 +76,8 @@ void DivPlatformArcade::acquire_nuked(short** buf, size_t len) { } for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fm.ch_out[i]>>1; + int chOut=(int16_t)fm.ch_out[i]; + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(chOut<<1,-32768,32767); } if (o[0]<-32768) o[0]=-32768; @@ -111,7 +112,8 @@ void DivPlatformArcade::acquire_ymfm(short** buf, size_t len) { fm_ymfm->generate(&out_ymfm); for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1))>>1; + int chOut=fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1); + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(chOut,-32768,32767); } os[0]=out_ymfm.data[0]; From 9cb1fbcc45c4b368dab55d262553efd59861d60a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 20:00:20 -0500 Subject: [PATCH 107/183] chan osc volume balancing, part 1 --- src/engine/platform/ay.cpp | 12 ++++---- src/engine/platform/ay8930.cpp | 6 ++-- src/engine/platform/bubsyswsg.cpp | 2 +- src/engine/platform/c64.cpp | 12 ++++---- src/engine/platform/dummy.cpp | 2 +- src/engine/platform/fds.cpp | 4 +-- src/engine/platform/ga20.cpp | 9 ++++-- src/engine/platform/mmc5.cpp | 6 ++-- src/engine/platform/n163.cpp | 2 +- src/engine/platform/nes.cpp | 20 ++++++------- src/engine/platform/opl.cpp | 32 ++++++++++----------- src/engine/platform/opll.cpp | 4 +-- src/engine/platform/pv1000.cpp | 2 +- src/engine/platform/scc.cpp | 2 +- src/engine/platform/sound/lynx/Mikey.cpp | 2 +- src/engine/platform/sound/pokey/AltASAP.cpp | 2 +- src/engine/platform/swan.cpp | 2 +- src/engine/platform/t6w28.cpp | 2 +- src/engine/platform/tia.cpp | 4 +-- src/engine/platform/tx81z.cpp | 2 +- src/engine/platform/vb.cpp | 2 +- src/engine/platform/vic20.cpp | 2 +- src/engine/platform/vrc6.cpp | 4 +-- 23 files changed, 71 insertions(+), 66 deletions(-) diff --git a/src/engine/platform/ay.cpp b/src/engine/platform/ay.cpp index d31f0683..c32a4ee2 100644 --- a/src/engine/platform/ay.cpp +++ b/src/engine/platform/ay.cpp @@ -187,9 +187,9 @@ void DivPlatformAY8910::acquire(short** buf, size_t len) { buf[0][i]=ayBuf[0][0]; buf[1][i]=buf[0][i]; - oscBuf[0]->data[oscBuf[0]->needle++]=sunsoftVolTable[31-(ay->lastIndx&31)]<<2; - oscBuf[1]->data[oscBuf[1]->needle++]=sunsoftVolTable[31-((ay->lastIndx>>5)&31)]<<2; - oscBuf[2]->data[oscBuf[2]->needle++]=sunsoftVolTable[31-((ay->lastIndx>>10)&31)]<<2; + oscBuf[0]->data[oscBuf[0]->needle++]=CLAMP(sunsoftVolTable[31-(ay->lastIndx&31)]<<3,-32768,32767); + oscBuf[1]->data[oscBuf[1]->needle++]=CLAMP(sunsoftVolTable[31-((ay->lastIndx>>5)&31)]<<3,-32768,32767); + oscBuf[2]->data[oscBuf[2]->needle++]=CLAMP(sunsoftVolTable[31-((ay->lastIndx>>10)&31)]<<3,-32768,32767); } } else { for (size_t i=0; idata[oscBuf[0]->needle++]=ayBuf[0][0]<<1; - oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<1; - oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<1; + oscBuf[0]->data[oscBuf[0]->needle++]=ayBuf[0][0]<<2; + oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<2; + oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<2; } } } diff --git a/src/engine/platform/ay8930.cpp b/src/engine/platform/ay8930.cpp index 51560975..8561548d 100644 --- a/src/engine/platform/ay8930.cpp +++ b/src/engine/platform/ay8930.cpp @@ -186,9 +186,9 @@ void DivPlatformAY8930::acquire(short** buf, size_t len) { buf[1][i]=buf[0][i]; } - oscBuf[0]->data[oscBuf[0]->needle++]=ayBuf[0][0]<<1; - oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<1; - oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<1; + oscBuf[0]->data[oscBuf[0]->needle++]=ayBuf[0][0]<<2; + oscBuf[1]->data[oscBuf[1]->needle++]=ayBuf[1][0]<<2; + oscBuf[2]->data[oscBuf[2]->needle++]=ayBuf[2][0]<<2; } } diff --git a/src/engine/platform/bubsyswsg.cpp b/src/engine/platform/bubsyswsg.cpp index bfb1e365..94202de1 100644 --- a/src/engine/platform/bubsyswsg.cpp +++ b/src/engine/platform/bubsyswsg.cpp @@ -55,7 +55,7 @@ void DivPlatformBubSysWSG::acquire(short** buf, size_t len) { chanOut=chan[i].waveROM[k005289.addr(i)]*(regPool[2+i]&0xf); out+=chanOut; if (writeOscBuf==0) { - oscBuf[i]->data[oscBuf[i]->needle++]=chanOut<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=chanOut<<7; } } } diff --git a/src/engine/platform/c64.cpp b/src/engine/platform/c64.cpp index 43cfbdf0..977e3951 100644 --- a/src/engine/platform/c64.cpp +++ b/src/engine/platform/c64.cpp @@ -80,18 +80,18 @@ void DivPlatformC64::acquire(short** buf, size_t len) { sid_fp.clock(4,&buf[0][i]); if (++writeOscBuf>=4) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=(sid_fp.lastChanOut[0]-dcOff)>>6; - oscBuf[1]->data[oscBuf[1]->needle++]=(sid_fp.lastChanOut[1]-dcOff)>>6; - oscBuf[2]->data[oscBuf[2]->needle++]=(sid_fp.lastChanOut[2]-dcOff)>>6; + oscBuf[0]->data[oscBuf[0]->needle++]=(sid_fp.lastChanOut[0]-dcOff)>>5; + oscBuf[1]->data[oscBuf[1]->needle++]=(sid_fp.lastChanOut[1]-dcOff)>>5; + oscBuf[2]->data[oscBuf[2]->needle++]=(sid_fp.lastChanOut[2]-dcOff)>>5; } } else { sid.clock(); buf[0][i]=sid.output(); if (++writeOscBuf>=16) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=(sid.last_chan_out[0]-dcOff)>>6; - oscBuf[1]->data[oscBuf[1]->needle++]=(sid.last_chan_out[1]-dcOff)>>6; - oscBuf[2]->data[oscBuf[2]->needle++]=(sid.last_chan_out[2]-dcOff)>>6; + oscBuf[0]->data[oscBuf[0]->needle++]=(sid.last_chan_out[0]-dcOff)>>5; + oscBuf[1]->data[oscBuf[1]->needle++]=(sid.last_chan_out[1]-dcOff)>>5; + oscBuf[2]->data[oscBuf[2]->needle++]=(sid.last_chan_out[2]-dcOff)>>5; } } } diff --git a/src/engine/platform/dummy.cpp b/src/engine/platform/dummy.cpp index 04763898..18fa5ca9 100644 --- a/src/engine/platform/dummy.cpp +++ b/src/engine/platform/dummy.cpp @@ -32,7 +32,7 @@ void DivPlatformDummy::acquire(short** buf, size_t len) { if (chan[j].active) { if (!isMuted[j]) { chanOut=(((signed short)chan[j].pos)*chan[j].amp*chan[j].vol)>>12; - oscBuf[j]->data[oscBuf[j]->needle++]=chanOut>>1; + oscBuf[j]->data[oscBuf[j]->needle++]=chanOut<<1; out+=chanOut; } else { oscBuf[j]->data[oscBuf[j]->needle++]=0; diff --git a/src/engine/platform/fds.cpp b/src/engine/platform/fds.cpp index 2674e954..ea903ced 100644 --- a/src/engine/platform/fds.cpp +++ b/src/engine/platform/fds.cpp @@ -64,7 +64,7 @@ void DivPlatformFDS::acquire_puNES(short* buf, size_t len) { buf[i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf->data[oscBuf->needle++]=sample; + oscBuf->data[oscBuf->needle++]=sample*3; } } } @@ -80,7 +80,7 @@ void DivPlatformFDS::acquire_NSFPlay(short* buf, size_t len) { buf[i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf->data[oscBuf->needle++]=sample; + oscBuf->data[oscBuf->needle++]=sample*3; } } } diff --git a/src/engine/platform/ga20.cpp b/src/engine/platform/ga20.cpp index 60764585..7794d61a 100644 --- a/src/engine/platform/ga20.cpp +++ b/src/engine/platform/ga20.cpp @@ -71,8 +71,13 @@ void DivPlatformGA20::acquire(short** buf, size_t len) { delay=w.delay; } } - short *buffer[4] = {&ga20Buf[0][h],&ga20Buf[1][h],&ga20Buf[2][h],&ga20Buf[3][h]}; - ga20.sound_stream_update(buffer, 1); + short *buffer[4]={ + &ga20Buf[0][h], + &ga20Buf[1][h], + &ga20Buf[2][h], + &ga20Buf[3][h] + }; + ga20.sound_stream_update(buffer,1); buf[0][h]=(signed int)(ga20Buf[0][h]+ga20Buf[1][h]+ga20Buf[2][h]+ga20Buf[3][h])>>2; for (int i=0; i<4; i++) { oscBuf[i]->data[oscBuf[i]->needle++]=ga20Buf[i][h]>>1; diff --git a/src/engine/platform/mmc5.cpp b/src/engine/platform/mmc5.cpp index 0edc83b2..e9ac6be9 100644 --- a/src/engine/platform/mmc5.cpp +++ b/src/engine/platform/mmc5.cpp @@ -85,9 +85,9 @@ void DivPlatformMMC5::acquire(short** buf, size_t len) { if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:((mmc5->S3.output*10)<<6); - oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:((mmc5->S4.output*10)<<6); - oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:((mmc5->pcm.output*2)<<5); + oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:((mmc5->S3.output)<<11); + oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:((mmc5->S4.output)<<11); + oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:((mmc5->pcm.output)<<7); } } } diff --git a/src/engine/platform/n163.cpp b/src/engine/platform/n163.cpp index eee73b99..ead44cc1 100644 --- a/src/engine/platform/n163.cpp +++ b/src/engine/platform/n163.cpp @@ -118,7 +118,7 @@ void DivPlatformN163::acquire(short** buf, size_t len) { buf[0][i]=out; if (n163.voice_cycle()==0x78) for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=n163.voice_out(i)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=n163.voice_out(i)<<7; } // command queue diff --git a/src/engine/platform/nes.cpp b/src/engine/platform/nes.cpp index 07f9c5ae..99131ac3 100644 --- a/src/engine/platform/nes.cpp +++ b/src/engine/platform/nes.cpp @@ -115,11 +115,11 @@ void DivPlatformNES::acquire_puNES(short** buf, size_t len) { buf[0][i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:(nes->S1.output<<10); - oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:(nes->S2.output<<10); - oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:(nes->TR.output<<10); - oscBuf[3]->data[oscBuf[3]->needle++]=isMuted[3]?0:(nes->NS.output<<10); - oscBuf[4]->data[oscBuf[4]->needle++]=isMuted[4]?0:(nes->DMC.output<<7); + oscBuf[0]->data[oscBuf[0]->needle++]=isMuted[0]?0:(nes->S1.output<<11); + oscBuf[1]->data[oscBuf[1]->needle++]=isMuted[1]?0:(nes->S2.output<<11); + oscBuf[2]->data[oscBuf[2]->needle++]=isMuted[2]?0:(nes->TR.output<<11); + oscBuf[3]->data[oscBuf[3]->needle++]=isMuted[3]?0:(nes->NS.output<<11); + oscBuf[4]->data[oscBuf[4]->needle++]=isMuted[4]?0:(nes->DMC.output<<8); } } } @@ -142,11 +142,11 @@ void DivPlatformNES::acquire_NSFPlay(short** buf, size_t len) { buf[0][i]=sample; if (++writeOscBuf>=32) { writeOscBuf=0; - oscBuf[0]->data[oscBuf[0]->needle++]=nes1_NP->out[0]<<10; - oscBuf[1]->data[oscBuf[1]->needle++]=nes1_NP->out[1]<<10; - oscBuf[2]->data[oscBuf[2]->needle++]=nes2_NP->out[0]<<10; - oscBuf[3]->data[oscBuf[3]->needle++]=nes2_NP->out[1]<<10; - oscBuf[4]->data[oscBuf[4]->needle++]=nes2_NP->out[2]<<7; + oscBuf[0]->data[oscBuf[0]->needle++]=nes1_NP->out[0]<<11; + oscBuf[1]->data[oscBuf[1]->needle++]=nes1_NP->out[1]<<11; + oscBuf[2]->data[oscBuf[2]->needle++]=nes2_NP->out[0]<<11; + oscBuf[3]->data[oscBuf[3]->needle++]=nes2_NP->out[1]<<12; + oscBuf[4]->data[oscBuf[4]->needle++]=nes2_NP->out[2]<<8; } } } diff --git a/src/engine/platform/opl.cpp b/src/engine/platform/opl.cpp index b39fb8f6..d340aa31 100644 --- a/src/engine/platform/opl.cpp +++ b/src/engine/platform/opl.cpp @@ -220,45 +220,45 @@ void DivPlatformOPL::acquire_nuked(short** buf, size_t len) { if (fm.rhy&0x20) { for (int i=0; idata[oscBuf[i]->needle]=0; if (fm.channel[i].out[0]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[0]; + chOut+=*fm.channel[ch].out[0]; } if (fm.channel[i].out[1]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[1]; + chOut+=*fm.channel[ch].out[1]; } if (fm.channel[i].out[2]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[2]; + chOut+=*fm.channel[ch].out[2]; } if (fm.channel[i].out[3]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[3]; + chOut+=*fm.channel[ch].out[3]; } - oscBuf[i]->needle++; + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(chOut<<(i==melodicChans?1:2),-32768,32767); } // special - oscBuf[melodicChans+1]->data[oscBuf[melodicChans+1]->needle++]=fm.slot[16].out*3; - oscBuf[melodicChans+2]->data[oscBuf[melodicChans+2]->needle++]=fm.slot[14].out*3; - oscBuf[melodicChans+3]->data[oscBuf[melodicChans+3]->needle++]=fm.slot[17].out*3; - oscBuf[melodicChans+4]->data[oscBuf[melodicChans+4]->needle++]=fm.slot[13].out*3; + oscBuf[melodicChans+1]->data[oscBuf[melodicChans+1]->needle++]=fm.slot[16].out*4; + oscBuf[melodicChans+2]->data[oscBuf[melodicChans+2]->needle++]=fm.slot[14].out*4; + oscBuf[melodicChans+3]->data[oscBuf[melodicChans+3]->needle++]=fm.slot[17].out*4; + oscBuf[melodicChans+4]->data[oscBuf[melodicChans+4]->needle++]=fm.slot[13].out*4; } else { for (int i=0; idata[oscBuf[i]->needle]=0; if (fm.channel[i].out[0]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[0]; + chOut+=*fm.channel[ch].out[0]; } if (fm.channel[i].out[1]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[1]; + chOut+=*fm.channel[ch].out[1]; } if (fm.channel[i].out[2]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[2]; + chOut+=*fm.channel[ch].out[2]; } if (fm.channel[i].out[3]!=NULL) { - oscBuf[i]->data[oscBuf[i]->needle]+=*fm.channel[ch].out[3]; + chOut+=*fm.channel[ch].out[3]; } - oscBuf[i]->needle++; + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(chOut<<2,-32768,32767); } } diff --git a/src/engine/platform/opll.cpp b/src/engine/platform/opll.cpp index 596735a4..38b892e8 100644 --- a/src/engine/platform/opll.cpp +++ b/src/engine/platform/opll.cpp @@ -68,7 +68,7 @@ void DivPlatformOPLL::acquire_nuked(short** buf, size_t len) { unsigned char nextOut=cycleMapOPLL[fm.cycles]; if ((nextOut>=6 && properDrums) || !isMuted[nextOut]) { os+=(o[0]+o[1]); - if (vrc7 || (fm.rm_enable&0x20)) oscBuf[nextOut]->data[oscBuf[nextOut]->needle++]=(o[0]+o[1])<<5; + if (vrc7 || (fm.rm_enable&0x20)) oscBuf[nextOut]->data[oscBuf[nextOut]->needle++]=(o[0]+o[1])<<6; } else { if (vrc7 || (fm.rm_enable&0x20)) oscBuf[nextOut]->data[oscBuf[nextOut]->needle++]=0; } @@ -76,7 +76,7 @@ void DivPlatformOPLL::acquire_nuked(short** buf, size_t len) { if (!(vrc7 || (fm.rm_enable&0x20))) for (int i=0; i<9; i++) { unsigned char ch=visMapOPLL[i]; if ((i>=6 && properDrums) || !isMuted[ch]) { - oscBuf[ch]->data[oscBuf[ch]->needle++]=(fm.output_ch[i])<<5; + oscBuf[ch]->data[oscBuf[ch]->needle++]=(fm.output_ch[i])<<6; } else { oscBuf[ch]->data[oscBuf[ch]->needle++]=0; } diff --git a/src/engine/platform/pv1000.cpp b/src/engine/platform/pv1000.cpp index 4d32fc5a..bf03df40 100644 --- a/src/engine/platform/pv1000.cpp +++ b/src/engine/platform/pv1000.cpp @@ -42,7 +42,7 @@ void DivPlatformPV1000::acquire(short** buf, size_t len) { short samp=d65010g031_sound_tick(&d65010g031,1); buf[0][h]=samp; for (int i=0; i<3; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(d65010g031.out[i]); + oscBuf[i]->data[oscBuf[i]->needle++]=d65010g031.out[i]<<1; } } } diff --git a/src/engine/platform/scc.cpp b/src/engine/platform/scc.cpp index e7ad162f..cd97ff30 100644 --- a/src/engine/platform/scc.cpp +++ b/src/engine/platform/scc.cpp @@ -87,7 +87,7 @@ void DivPlatformSCC::acquire(short** buf, size_t len) { buf[0][h]=out; for (int i=0; i<5; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=scc->voice_out(i)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=scc->voice_out(i)<<7; } } } diff --git a/src/engine/platform/sound/lynx/Mikey.cpp b/src/engine/platform/sound/lynx/Mikey.cpp index baf376f5..791336c1 100644 --- a/src/engine/platform/sound/lynx/Mikey.cpp +++ b/src/engine/platform/sound/lynx/Mikey.cpp @@ -509,7 +509,7 @@ public: } if (oscb!=NULL) { - oscb[i]->data[oscb[i]->needle++]=oscbWrite>>1; + oscb[i]->data[oscb[i]->needle++]=oscbWrite; } } diff --git a/src/engine/platform/sound/pokey/AltASAP.cpp b/src/engine/platform/sound/pokey/AltASAP.cpp index 9ed2f207..e6675027 100644 --- a/src/engine/platform/sound/pokey/AltASAP.cpp +++ b/src/engine/platform/sound/pokey/AltASAP.cpp @@ -39,7 +39,7 @@ static constexpr int MuteInit = 2; static constexpr int MuteSerialInput = 8; //just some magick value to match the audio level of mzpokeysnd static constexpr int16_t MAGICK_VOLUME_BOOSTER = 160; -static constexpr int16_t MAGICK_OSC_VOLUME_BOOSTER = 2; +static constexpr int16_t MAGICK_OSC_VOLUME_BOOSTER = 6; struct PokeyBase { diff --git a/src/engine/platform/swan.cpp b/src/engine/platform/swan.cpp index 46edfd7f..209e2fc2 100644 --- a/src/engine/platform/swan.cpp +++ b/src/engine/platform/swan.cpp @@ -87,7 +87,7 @@ void DivPlatformSwan::acquire(short** buf, size_t len) { buf[0][h]=samp[0]; buf[1][h]=samp[1]; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(ws->sample_cache[i][0]+ws->sample_cache[i][1])<<5; + oscBuf[i]->data[oscBuf[i]->needle++]=(ws->sample_cache[i][0]+ws->sample_cache[i][1])<<6; } } } diff --git a/src/engine/platform/t6w28.cpp b/src/engine/platform/t6w28.cpp index 0d7b9223..5d21e1ad 100644 --- a/src/engine/platform/t6w28.cpp +++ b/src/engine/platform/t6w28.cpp @@ -54,7 +54,7 @@ void DivPlatformT6W28::acquire(short** buf, size_t len) { tempL=0; tempR=0; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(out[i][1].curValue+out[i][2].curValue)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=(out[i][1].curValue+out[i][2].curValue)<<7; tempL+=out[i][1].curValue<<7; tempR+=out[i][2].curValue<<7; } diff --git a/src/engine/platform/tia.cpp b/src/engine/platform/tia.cpp index cdd11621..1836bee1 100644 --- a/src/engine/platform/tia.cpp +++ b/src/engine/platform/tia.cpp @@ -51,8 +51,8 @@ void DivPlatformTIA::acquire(short** buf, size_t len) { } if (++chanOscCounter>=114) { chanOscCounter=0; - oscBuf[0]->data[oscBuf[0]->needle++]=tia.myChannelOut[0]>>1; - oscBuf[1]->data[oscBuf[1]->needle++]=tia.myChannelOut[1]>>1; + oscBuf[0]->data[oscBuf[0]->needle++]=tia.myChannelOut[0]; + oscBuf[1]->data[oscBuf[1]->needle++]=tia.myChannelOut[1]; } } } diff --git a/src/engine/platform/tx81z.cpp b/src/engine/platform/tx81z.cpp index c4d921fd..86128340 100644 --- a/src/engine/platform/tx81z.cpp +++ b/src/engine/platform/tx81z.cpp @@ -78,7 +78,7 @@ void DivPlatformTX81Z::acquire(short** buf, size_t len) { fm_ymfm->generate(&out_ymfm); for (int i=0; i<8; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1))>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=CLAMP(fme->debug_channel(i)->debug_output(0)+fme->debug_channel(i)->debug_output(1),-32768,32767); } os[0]=out_ymfm.data[0]; diff --git a/src/engine/platform/vb.cpp b/src/engine/platform/vb.cpp index 6732bded..3701b5aa 100644 --- a/src/engine/platform/vb.cpp +++ b/src/engine/platform/vb.cpp @@ -107,7 +107,7 @@ void DivPlatformVB::acquire(short** buf, size_t len) { tempL=0; tempR=0; for (int i=0; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(vb->last_output[i][0]+vb->last_output[i][1])*4; + oscBuf[i]->data[oscBuf[i]->needle++]=(vb->last_output[i][0]+vb->last_output[i][1])*8; tempL+=vb->last_output[i][0]; tempR+=vb->last_output[i][1]; } diff --git a/src/engine/platform/vic20.cpp b/src/engine/platform/vic20.cpp index cb78e9b4..bd25b528 100644 --- a/src/engine/platform/vic20.cpp +++ b/src/engine/platform/vic20.cpp @@ -69,7 +69,7 @@ void DivPlatformVIC20::acquire(short** buf, size_t len) { vic_sound_machine_calculate_samples(vic,&samp,1,1,0,SAMP_DIVIDER); buf[0][h]=samp; for (int i=0; i<4; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=vic->ch[i].out?(vic->volume<<10):0; + oscBuf[i]->data[oscBuf[i]->needle++]=vic->ch[i].out?(vic->volume<<11):0; } } } diff --git a/src/engine/platform/vrc6.cpp b/src/engine/platform/vrc6.cpp index 7834ecbe..b52bc106 100644 --- a/src/engine/platform/vrc6.cpp +++ b/src/engine/platform/vrc6.cpp @@ -87,9 +87,9 @@ void DivPlatformVRC6::acquire(short** buf, size_t len) { if (++writeOscBuf>=32) { writeOscBuf=0; for (int i=0; i<2; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=vrc6.pulse_out(i)<<9; + oscBuf[i]->data[oscBuf[i]->needle++]=vrc6.pulse_out(i)<<11; } - oscBuf[2]->data[oscBuf[2]->needle++]=vrc6.sawtooth_out()<<9; + oscBuf[2]->data[oscBuf[2]->needle++]=vrc6.sawtooth_out()<<10; } // Command part From 8afe77db6f9bd84edc399b6aed558790574a2461 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Sun, 18 Jun 2023 18:56:11 -0700 Subject: [PATCH 108/183] Links to advanced docs. --- doc/8-advanced/README.md | 20 +++++++++++++++++++- doc/README.md | 1 + 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/doc/8-advanced/README.md b/doc/8-advanced/README.md index 3c001173..b1772007 100644 --- a/doc/8-advanced/README.md +++ b/doc/8-advanced/README.md @@ -1,3 +1,21 @@ # advanced -advanced Furnace features. +advanced Furnace features, as listed in the `Window` menu. + +- [mixer](mixer.md) +- [grooves](grooves.md) +- [channel manager](channels.md) +- [pattern manager](pat-manager.md) +- [chip manager](chip-manager.md) +- [compatibility flags](compat-flags.md) +- [song comments](comments.md) + +


    + +- [piano](piano.md) +- [oscilloscope](osc.md) +- [oscilloscopes (per-channel)](chanosc.md) +- [clock](clock.md) +- [register view](regview.md) +- [log viewer](log-viewer.md) +- [stats](stats.md) diff --git a/doc/README.md b/doc/README.md index a59ce838..f561710c 100644 --- a/doc/README.md +++ b/doc/README.md @@ -9,6 +9,7 @@ this documentation is a work in progress! expect several sections to be incomple 5. [wavetables](5-wave/README.md) 6. [samples](6-sample/README.md) 7. [list of sound chips](7-systems/README.md) +8. [advanced topics](8-advanced/README.md) # attribution From ae6e68b9764cbbc6e2e4dd67319beadd684ebcdc Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 18 Jun 2023 21:07:00 -0500 Subject: [PATCH 109/183] chan osc volume balancing, part 2 TODO: maybe change the range again? --- extern/SAASound/src/SAADevice.cpp | 12 ++++++------ src/engine/platform/ym2203.cpp | 8 ++++---- src/engine/platform/ym2608.cpp | 8 ++++---- src/engine/platform/ym2610.cpp | 8 ++++---- src/engine/platform/ym2610b.cpp | 8 ++++---- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/extern/SAASound/src/SAADevice.cpp b/extern/SAASound/src/SAADevice.cpp index 78b6e4a4..eb88e9ac 100644 --- a/extern/SAASound/src/SAADevice.cpp +++ b/extern/SAASound/src/SAADevice.cpp @@ -316,27 +316,27 @@ void CSAADevice::_TickAndOutputStereo(unsigned int& left_mixed, unsigned int& ri m_Noise0.Tick(); m_Noise1.Tick(); m_Amp0.TickAndOutputStereo(temp_left, temp_right); - oscBuf[0]->data[oscBuf[0]->needle++]=(temp_left+temp_right)<<3; + oscBuf[0]->data[oscBuf[0]->needle++]=(temp_left+temp_right)<<5; accum_left += temp_left; accum_right += temp_right; m_Amp1.TickAndOutputStereo(temp_left, temp_right); - oscBuf[1]->data[oscBuf[1]->needle++]=(temp_left+temp_right)<<3; + oscBuf[1]->data[oscBuf[1]->needle++]=(temp_left+temp_right)<<5; accum_left += temp_left; accum_right += temp_right; m_Amp2.TickAndOutputStereo(temp_left, temp_right); - oscBuf[2]->data[oscBuf[2]->needle++]=(temp_left+temp_right)<<3; + oscBuf[2]->data[oscBuf[2]->needle++]=(temp_left+temp_right)<<5; accum_left += temp_left; accum_right += temp_right; m_Amp3.TickAndOutputStereo(temp_left, temp_right); - oscBuf[3]->data[oscBuf[3]->needle++]=(temp_left+temp_right)<<3; + oscBuf[3]->data[oscBuf[3]->needle++]=(temp_left+temp_right)<<5; accum_left += temp_left; accum_right += temp_right; m_Amp4.TickAndOutputStereo(temp_left, temp_right); - oscBuf[4]->data[oscBuf[4]->needle++]=(temp_left+temp_right)<<3; + oscBuf[4]->data[oscBuf[4]->needle++]=(temp_left+temp_right)<<5; accum_left += temp_left; accum_right += temp_right; m_Amp5.TickAndOutputStereo(temp_left, temp_right); - oscBuf[5]->data[oscBuf[5]->needle++]=(temp_left+temp_right)<<3; + oscBuf[5]->data[oscBuf[5]->needle++]=(temp_left+temp_right)<<5; accum_left += temp_left; accum_right += temp_right; } diff --git a/src/engine/platform/ym2203.cpp b/src/engine/platform/ym2203.cpp index 69d1ca8a..135ad140 100644 --- a/src/engine/platform/ym2203.cpp +++ b/src/engine/platform/ym2203.cpp @@ -231,11 +231,11 @@ void DivPlatformYM2203::acquire_combo(short** buf, size_t len) { buf[0][h]=os; for (int i=0; i<3; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]<<1; } for (int i=3; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]<<1; } } } @@ -282,11 +282,11 @@ void DivPlatformYM2203::acquire_ymfm(short** buf, size_t len) { for (int i=0; i<3; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))<<1; } for (int i=3; i<6; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=fmout.data[i-2]<<1; } } } diff --git a/src/engine/platform/ym2608.cpp b/src/engine/platform/ym2608.cpp index 73280bcb..589d90d3 100644 --- a/src/engine/platform/ym2608.cpp +++ b/src/engine/platform/ym2608.cpp @@ -402,12 +402,12 @@ void DivPlatformYM2608::acquire_combo(short** buf, size_t len) { for (int i=0; idata[oscBuf[i]->needle++]=fm_nuked.ch_out[i]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]<<1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]<<1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))<<1; } ssge->get_last_out(ssgOut); for (int i=6; i<9; i++) { - oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-6]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-6]<<1; } for (int i=9; i<15; i++) { diff --git a/src/engine/platform/ym2610.cpp b/src/engine/platform/ym2610.cpp index 303604d6..66c2f411 100644 --- a/src/engine/platform/ym2610.cpp +++ b/src/engine/platform/ym2610.cpp @@ -333,12 +333,12 @@ void DivPlatformYM2610::acquire_combo(short** buf, size_t len) { for (int i=0; idata[oscBuf[i]->needle++]=fm_nuked.ch_out[bchOffs[i]]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[bchOffs[i]]<<1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]<<1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))<<1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]<<1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=fm_nuked.ch_out[i]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=fm_nuked.ch_out[i]<<1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]<<1; } for (int i=adpcmAChanOffs; idata[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1))<<1; } ssge->get_last_out(ssgOut); for (int i=psgChanOffs; idata[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]>>1; + oscBuf[i]->data[oscBuf[i]->needle++]=ssgOut.data[i-psgChanOffs]<<1; } for (int i=adpcmAChanOffs; i Date: Mon, 19 Jun 2023 14:11:25 -0500 Subject: [PATCH 110/183] add Revolt link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4ecbd14c..37371239 100644 --- a/README.md +++ b/README.md @@ -119,7 +119,7 @@ check out the [Releases](https://github.com/tildearrow/furnace/releases) page. a --- # quick references -- **discussion**: see the [Discussions](https://github.com/tildearrow/furnace/discussions) section, or the [official Discord server](https://discord.gg/EfrwT2wq7z). +- **discussion**: see the [Discussions](https://github.com/tildearrow/furnace/discussions) section, the [official Revolt](https://rvlt.gg/GRPS6tmc) or the [official Discord server](https://discord.gg/EfrwT2wq7z). - **help**: check out the [documentation](doc/README.md). it's incomplete though. ## packages From 2e469396b1f9d4f19da19472b5718f3e48f411ba Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 19 Jun 2023 23:29:06 -0500 Subject: [PATCH 111/183] fix inability to save 1.1.8 .dmf --- src/engine/fileOps.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/engine/fileOps.cpp b/src/engine/fileOps.cpp index 5a752236..20f5b165 100644 --- a/src/engine/fileOps.cpp +++ b/src/engine/fileOps.cpp @@ -5683,7 +5683,8 @@ SafeWriter* DivEngine::saveFur(bool notPrimary, bool newPatternFormat) { SafeWriter* DivEngine::saveDMF(unsigned char version) { // fail if version is not supported - if (version<24 || version>26) { + if (version>26) version=26; + if (version<24) { logE("cannot save in this version!"); lastError="invalid version to save in! this is a bug!"; return NULL; From c7da358376bac9c9b73deb0153073a8488bde25e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 00:29:47 -0500 Subject: [PATCH 112/183] fix .dmf PAL/NTSC thing --- src/engine/fileOps.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/fileOps.cpp b/src/engine/fileOps.cpp index 20f5b165..ed0c0ce9 100644 --- a/src/engine/fileOps.cpp +++ b/src/engine/fileOps.cpp @@ -5818,7 +5818,7 @@ SafeWriter* DivEngine::saveDMF(unsigned char version) { w->writeC(curSubSong->timeBase); w->writeC(curSubSong->speeds.val[0]); w->writeC((curSubSong->speeds.len>=2)?curSubSong->speeds.val[1]:curSubSong->speeds.val[0]); - w->writeC((intHz<=53)?1:0); + w->writeC((intHz<=53)?0:1); w->writeC((intHz!=60 && intHz!=50)); char customHz[4]; memset(customHz,0,4); From 9851f5cc87785eff5e9a7527a44abd9dcfdd9a60 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 00:41:17 -0500 Subject: [PATCH 113/183] YM2612: fix a couple DAC chan osc problems issue #1168 --- src/engine/platform/genesis.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index a4b0f7b1..42d6f79e 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -122,6 +122,8 @@ void DivPlatformGenesis::processDAC(int iRate) { urgentWrite(0x2a,(unsigned char)sample+0x80); chan[5].dacReady=false; } + } else { + urgentWrite(0x2a,0x80); } chan[5].dacPos++; if (!chan[5].dacDirection && (s->isLoopable() && chan[5].dacPos>=(unsigned int)s->loopEnd)) { @@ -187,7 +189,7 @@ void DivPlatformGenesis::acquire_nuked(short** buf, size_t len) { oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<6; oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<6; } else { - oscBuf[i]->data[oscBuf[i]->needle++]=(fm.dacdata^0x100)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=((fm.dacdata^0x100)-0x100)<<6; oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { @@ -252,7 +254,7 @@ void DivPlatformGenesis::acquire_ymfm(short** buf, size_t len) { oscBuf[5]->data[oscBuf[5]->needle++]=chan[5].dacOutput<<6; oscBuf[6]->data[oscBuf[6]->needle++]=chan[6].dacOutput<<6; } else { - oscBuf[i]->data[oscBuf[i]->needle++]=(fm_ymfm->debug_dac_data()^0x100)<<6; + oscBuf[i]->data[oscBuf[i]->needle++]=((fm_ymfm->debug_dac_data()^0x100)-0x100)<<6; oscBuf[6]->data[oscBuf[6]->needle++]=0; } } else { From 443535a54cdae125d0e56a82268740893f2e9d6f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 01:08:51 -0500 Subject: [PATCH 114/183] fix possible hang in runMidiClock issue #1167 --- src/engine/playback.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index c2397d1e..83c0d29f 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -1564,8 +1564,10 @@ void DivEngine::runMidiClock(int totalCycles) { if (speedSum<1.0) speedSum=1.0; if (vD<1) vD=1; double bpm=((24.0*divider)/(timeBase*hl*speedSum))*(double)curSubSong->virtualTempoN/vD; + if (bpm<1.0) bpm=1.0; + int increment=got.rate*pow(2,MASTER_CLOCK_PREC)/(bpm); - midiClockCycles+=got.rate*pow(2,MASTER_CLOCK_PREC)/(bpm); + midiClockCycles+=increment; midiClockDrift+=fmod(got.rate*pow(2,MASTER_CLOCK_PREC),(double)(bpm)); if (midiClockDrift>=(bpm)) { midiClockDrift-=(bpm); From 6e61343ad830c5b6b02740aa18ab05da53711553 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 01:20:48 -0500 Subject: [PATCH 115/183] playSub optimization MAY CAUSE REGRESSIONS but I don't know --- src/engine/playback.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 83c0d29f..a10b1ad6 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -1314,7 +1314,7 @@ bool DivEngine::nextTick(bool noAccum, bool inhibitLowLat) { subticks=tickMult; if (stepPlay!=1) { - tempoAccum+=curSubSong->virtualTempoN; + tempoAccum+=(skipping && curSubSong->virtualTempoNvirtualTempoD)?curSubSong->virtualTempoD:curSubSong->virtualTempoN; while (tempoAccum>=curSubSong->virtualTempoD) { tempoAccum-=curSubSong->virtualTempoD; if (--ticks<=0) { From 4521cbfb4f17576e6f3f688c2fb9c902d42fbc8f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 04:26:23 -0500 Subject: [PATCH 116/183] asdf --- src/engine/playback.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index a10b1ad6..0021d93b 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -1188,6 +1188,11 @@ void DivEngine::nextRow() { nextSpeed=speeds.val[curSpeed]; } + /* + if (skipping) { + ticks=1; + }*/ + // post row details for (int i=0; iord[i][curOrder],false); From c777d699d24c4d57aced6053ccd9c033202cb43b Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 14:43:20 -0500 Subject: [PATCH 117/183] POKEY: implement two-tone mode effect --- doc/7-systems/pokey.md | 3 +++ src/engine/platform/pokey.cpp | 15 ++++++++++++++- src/engine/platform/pokey.h | 4 ++-- src/engine/sysDef.cpp | 1 + 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/doc/7-systems/pokey.md b/doc/7-systems/pokey.md index b05c4367..efebfcd3 100644 --- a/doc/7-systems/pokey.md +++ b/doc/7-systems/pokey.md @@ -32,3 +32,6 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, - filtered output on channel 2 (I suggest you to set channel 4 volume to 0). - use for PWM effects (not automatic!). - bit 0: 15KHz mode. +- 12xx: toggle two-tone mode. + - when enabled, channel 2 modulates channel 1. I don't know how, but it does. + - only on ASAP core. diff --git a/src/engine/platform/pokey.cpp b/src/engine/platform/pokey.cpp index d03fa6de..790346e1 100644 --- a/src/engine/platform/pokey.cpp +++ b/src/engine/platform/pokey.cpp @@ -35,6 +35,7 @@ const char* regCheatSheetPOKEY[]={ "AUDF4", "6", "AUDC4", "7", "AUDCTL", "8", + "SKCTL", "F", NULL }; @@ -154,6 +155,11 @@ void DivPlatformPOKEY::tick(bool sysTick) { } } + if (skctlChanged) { + skctlChanged=false; + rWrite(15,skctl); + } + for (int i=0; i<4; i++) { if (chan[i].freqChanged || chan[i].keyOn || chan[i].keyOff) { chan[i].freq=parent->calcFreq(chan[i].baseFreq,parent->song.linearPitch?chan[i].pitch:0,chan[i].fixedArp?chan[i].baseNoteOverride:chan[i].arpOff,chan[i].fixedArp,true,0,parent->song.linearPitch?chan[i].pitch2:0,chipClock,CHIP_DIVIDER); @@ -320,6 +326,10 @@ int DivPlatformPOKEY::dispatch(DivCommand c) { audctl=c.value&0xff; audctlChanged=true; break; + case DIV_CMD_STD_NOISE_FREQ: + skctl=c.value?0x8b:0x03; + skctlChanged=true; + break; case DIV_CMD_NOTE_PORTA: { int destFreq=NOTE_PERIODIC(c.value2); bool return2=false; @@ -385,6 +395,7 @@ void DivPlatformPOKEY::forceIns() { chan[i].freqChanged=true; } audctlChanged=true; + skctlChanged=true; } void* DivPlatformPOKEY::getChanState(int ch) { @@ -408,7 +419,7 @@ unsigned char* DivPlatformPOKEY::getRegisterPool() { } int DivPlatformPOKEY::getRegisterPoolSize() { - return 9; + return 16; } void DivPlatformPOKEY::reset() { @@ -430,6 +441,8 @@ void DivPlatformPOKEY::reset() { audctl=0; audctlChanged=true; + skctl=3; + skctlChanged=true; } bool DivPlatformPOKEY::keyOffAffectsArp(int ch) { diff --git a/src/engine/platform/pokey.h b/src/engine/platform/pokey.h index f24ea56c..b5087517 100644 --- a/src/engine/platform/pokey.h +++ b/src/engine/platform/pokey.h @@ -48,8 +48,8 @@ class DivPlatformPOKEY: public DivDispatch { QueuedWrite(unsigned char a, unsigned char v): addr(a), val(v) {} }; std::queue writes; - unsigned char audctl; - bool audctlChanged; + unsigned char audctl, skctl; + bool audctlChanged, skctlChanged; unsigned char oscBufDelay; PokeyState pokey; AltASAP::Pokey altASAP; diff --git a/src/engine/sysDef.cpp b/src/engine/sysDef.cpp index c590ba10..f4d76ceb 100644 --- a/src/engine/sysDef.cpp +++ b/src/engine/sysDef.cpp @@ -1169,6 +1169,7 @@ void DivEngine::registerSystems() { { {0x10, {DIV_CMD_WAVE, "10xx: Set waveform (0 to 7)"}}, {0x11, {DIV_CMD_STD_NOISE_MODE, "11xx: Set AUDCTL"}}, + {0x12, {DIV_CMD_STD_NOISE_FREQ, "12xx: Toggle two-tone mode"}}, } ); From 75948304ab6c6b8b8b17d42da645056cb5bf27c7 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 20 Jun 2023 15:11:55 -0500 Subject: [PATCH 118/183] UPDATE SDL TO 2.28.0 -> **PLEASE READ!** <- after pulling this commit, type: ``` git submodule update extern/SDL ``` if building on Android, you **will** have to delete the android/app/.cxx directory, and do gradlew clean. only tested in the Android build - there may or may not be another commit which fixes building for other platforms. --- .gitmodules | 1 + .../app/HIDDeviceBLESteamController.java | 4 +- .../java/org/libsdl/app/HIDDeviceManager.java | 16 +- .../java/org/libsdl/app/HIDDeviceUSB.java | 6 +- .../app/src/main/java/org/libsdl/app/SDL.java | 1 + .../main/java/org/libsdl/app/SDLActivity.java | 768 +++++------------- .../java/org/libsdl/app/SDLAudioManager.java | 164 +++- .../org/libsdl/app/SDLControllerManager.java | 78 +- .../main/java/org/libsdl/app/SDLSurface.java | 405 +++++++++ extern/SDL | 2 +- 10 files changed, 846 insertions(+), 599 deletions(-) create mode 100644 android/app/src/main/java/org/libsdl/app/SDLSurface.java diff --git a/.gitmodules b/.gitmodules index 0dcbd0c8..f3ef8bbd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,7 @@ [submodule "extern/SDL"] path = extern/SDL url = https://github.com/libsdl-org/SDL.git + branch = release-2.28.x [submodule "extern/libsndfile"] path = extern/libsndfile url = https://github.com/libsndfile/libsndfile.git diff --git a/android/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java b/android/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java index 65c5a423..ee5521fd 100644 --- a/android/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java +++ b/android/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java @@ -186,7 +186,7 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe // Because on Chromebooks we show up as a dual-mode device, it will attempt to connect TRANSPORT_AUTO, which will use TRANSPORT_BREDR instead // of TRANSPORT_LE. Let's force ourselves to connect low energy. private BluetoothGatt connectGatt(boolean managed) { - if (Build.VERSION.SDK_INT >= 23) { + if (Build.VERSION.SDK_INT >= 23 /* Android 6.0 (M) */) { try { return mDevice.connectGatt(mManager.getContext(), managed, this, TRANSPORT_LE); } catch (Exception e) { @@ -429,7 +429,7 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe } }); } - } + } else if (newState == 0) { mIsConnected = false; } diff --git a/android/app/src/main/java/org/libsdl/app/HIDDeviceManager.java b/android/app/src/main/java/org/libsdl/app/HIDDeviceManager.java index cf3c9267..6f7013b2 100644 --- a/android/app/src/main/java/org/libsdl/app/HIDDeviceManager.java +++ b/android/app/src/main/java/org/libsdl/app/HIDDeviceManager.java @@ -170,7 +170,7 @@ public class HIDDeviceManager { Log.i(TAG," Interface protocol: " + mUsbInterface.getInterfaceProtocol()); Log.i(TAG," Endpoint count: " + mUsbInterface.getEndpointCount()); - // Get endpoint details + // Get endpoint details for (int epi = 0; epi < mUsbInterface.getEndpointCount(); epi++) { UsbEndpoint mEndpoint = mUsbInterface.getEndpoint(epi); @@ -251,6 +251,8 @@ public class HIDDeviceManager { 0x20d6, // PowerA 0x24c6, // PowerA 0x2c22, // Qanba + 0x2dc8, // 8BitDo + 0x9886, // ASTRO Gaming }; if (usbInterface.getInterfaceClass() == UsbConstants.USB_CLASS_VENDOR_SPEC && @@ -271,14 +273,16 @@ public class HIDDeviceManager { final int XB1_IFACE_SUBCLASS = 71; final int XB1_IFACE_PROTOCOL = 208; final int[] SUPPORTED_VENDORS = { + 0x044f, // Thrustmaster 0x045e, // Microsoft 0x0738, // Mad Catz 0x0e6f, // PDP 0x0f0d, // Hori + 0x10f5, // Turtle Beach 0x1532, // Razer Wildcat 0x20d6, // PowerA 0x24c6, // PowerA - 0x2dc8, /* 8BitDo */ + 0x2dc8, // 8BitDo 0x2e24, // Hyperkin }; @@ -353,13 +357,13 @@ public class HIDDeviceManager { private void initializeBluetooth() { Log.d(TAG, "Initializing Bluetooth"); - if (Build.VERSION.SDK_INT <= 30 && + if (Build.VERSION.SDK_INT <= 30 /* Android 11.0 (R) */ && mContext.getPackageManager().checkPermission(android.Manifest.permission.BLUETOOTH, mContext.getPackageName()) != PackageManager.PERMISSION_GRANTED) { Log.d(TAG, "Couldn't initialize Bluetooth, missing android.permission.BLUETOOTH"); return; } - if (!mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE) || (Build.VERSION.SDK_INT < 18)) { + if (!mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE) || (Build.VERSION.SDK_INT < 18 /* Android 4.3 (JELLY_BEAN_MR2) */)) { Log.d(TAG, "Couldn't initialize Bluetooth, this version of Android does not support Bluetooth LE"); return; } @@ -524,7 +528,7 @@ public class HIDDeviceManager { for (HIDDevice device : mDevicesById.values()) { device.setFrozen(frozen); } - } + } } ////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -573,7 +577,7 @@ public class HIDDeviceManager { try { final int FLAG_MUTABLE = 0x02000000; // PendingIntent.FLAG_MUTABLE, but don't require SDK 31 int flags; - if (Build.VERSION.SDK_INT >= 31) { + if (Build.VERSION.SDK_INT >= 31 /* Android 12.0 (S) */) { flags = FLAG_MUTABLE; } else { flags = 0; diff --git a/android/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java b/android/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java index d20fe80b..bfe0cf95 100644 --- a/android/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java +++ b/android/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java @@ -52,7 +52,7 @@ class HIDDeviceUSB implements HIDDevice { @Override public String getSerialNumber() { String result = null; - if (Build.VERSION.SDK_INT >= 21) { + if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) { try { result = mDevice.getSerialNumber(); } @@ -74,7 +74,7 @@ class HIDDeviceUSB implements HIDDevice { @Override public String getManufacturerName() { String result = null; - if (Build.VERSION.SDK_INT >= 21) { + if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) { result = mDevice.getManufacturerName(); } if (result == null) { @@ -86,7 +86,7 @@ class HIDDeviceUSB implements HIDDevice { @Override public String getProductName() { String result = null; - if (Build.VERSION.SDK_INT >= 21) { + if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) { result = mDevice.getProductName(); } if (result == null) { diff --git a/android/app/src/main/java/org/libsdl/app/SDL.java b/android/app/src/main/java/org/libsdl/app/SDL.java index dafc0cb8..44c21c1c 100644 --- a/android/app/src/main/java/org/libsdl/app/SDL.java +++ b/android/app/src/main/java/org/libsdl/app/SDL.java @@ -29,6 +29,7 @@ public class SDL { // This function stores the current activity (SDL or not) public static void setContext(Context context) { + SDLAudioManager.setContext(context); mContext = context; } diff --git a/android/app/src/main/java/org/libsdl/app/SDLActivity.java b/android/app/src/main/java/org/libsdl/app/SDLActivity.java index 55b961a4..045e99c7 100644 --- a/android/app/src/main/java/org/libsdl/app/SDLActivity.java +++ b/android/app/src/main/java/org/libsdl/app/SDLActivity.java @@ -15,13 +15,9 @@ import android.content.pm.PackageManager; import android.content.res.Configuration; import android.graphics.Bitmap; import android.graphics.Color; -import android.graphics.PixelFormat; import android.graphics.PorterDuff; import android.graphics.drawable.Drawable; import android.hardware.Sensor; -import android.hardware.SensorEvent; -import android.hardware.SensorEventListener; -import android.hardware.SensorManager; import android.net.Uri; import android.os.Build; import android.os.Bundle; @@ -37,11 +33,8 @@ import android.view.Display; import android.view.Gravity; import android.view.InputDevice; import android.view.KeyEvent; -import android.view.MotionEvent; import android.view.PointerIcon; import android.view.Surface; -import android.view.SurfaceHolder; -import android.view.SurfaceView; import android.view.View; import android.view.ViewGroup; import android.view.Window; @@ -51,6 +44,7 @@ import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputConnection; import android.view.inputmethod.InputMethodManager; import android.widget.Button; +import android.widget.EditText; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; @@ -65,6 +59,9 @@ import java.util.Locale; */ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityChangeListener { private static final String TAG = "SDL"; + private static final int SDL_MAJOR_VERSION = 2; + private static final int SDL_MINOR_VERSION = 28; + private static final int SDL_MICRO_VERSION = 0; /* // Display InputType.SOURCE/CLASS of events and devices // @@ -96,7 +93,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh s2 = s_copy & InputDevice.SOURCE_ANY; // keep source only, no class; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + if (Build.VERSION.SDK_INT >= 23) { tst = InputDevice.SOURCE_BLUETOOTH_STYLUS; if ((s & tst) == tst) src += " BLUETOOTH_STYLUS"; s2 &= ~tst; @@ -110,7 +107,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh if ((s & tst) == tst) src += " GAMEPAD"; s2 &= ~tst; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + if (Build.VERSION.SDK_INT >= 21) { tst = InputDevice.SOURCE_HDMI; if ((s & tst) == tst) src += " HDMI"; s2 &= ~tst; @@ -149,7 +146,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh if ((s & tst) == tst) src += " TOUCHSCREEN"; s2 &= ~tst; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { + if (Build.VERSION.SDK_INT >= 18) { tst = InputDevice.SOURCE_TOUCH_NAVIGATION; if ((s & tst) == tst) src += " TOUCH_NAVIGATION"; s2 &= ~tst; @@ -173,7 +170,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh */ public static boolean mIsResumedCalled, mHasFocus; - public static final boolean mHasMultiWindow = (Build.VERSION.SDK_INT >= 24); + public static final boolean mHasMultiWindow = (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */); // Cursor types // private static final int SDL_SYSTEM_CURSOR_NONE = -1; @@ -213,7 +210,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh // Main components protected static SDLActivity mSingleton; protected static SDLSurface mSurface; - protected static View mTextEdit; + protected static DummyEdit mTextEdit; protected static boolean mScreenKeyboardShown; protected static ViewGroup mLayout; protected static SDLClipboardHandler mClipboardHandler; @@ -227,9 +224,9 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh protected static SDLGenericMotionListener_API12 getMotionListener() { if (mMotionListener == null) { - if (Build.VERSION.SDK_INT >= 26) { + if (Build.VERSION.SDK_INT >= 26 /* Android 8.0 (O) */) { mMotionListener = new SDLGenericMotionListener_API26(); - } else if (Build.VERSION.SDK_INT >= 24) { + } else if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { mMotionListener = new SDLGenericMotionListener_API24(); } else { mMotionListener = new SDLGenericMotionListener_API12(); @@ -314,6 +311,10 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh mNextNativeState = NativeState.INIT; mCurrentNativeState = NativeState.INIT; } + + protected SDLSurface createSDLSurface(Context context) { + return new SDLSurface(context); + } // Setup @Override @@ -344,8 +345,18 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh errorMsgBrokenLib = e.getMessage(); } - if (mBrokenLibraries) - { + if (!mBrokenLibraries) { + String expected_version = String.valueOf(SDL_MAJOR_VERSION) + "." + + String.valueOf(SDL_MINOR_VERSION) + "." + + String.valueOf(SDL_MICRO_VERSION); + String version = nativeGetVersion(); + if (!version.equals(expected_version)) { + mBrokenLibraries = true; + errorMsgBrokenLib = "SDL C/Java version mismatch (expected " + expected_version + ", got " + version + ")"; + } + } + + if (mBrokenLibraries) { mSingleton = this; AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this); dlgAlert.setMessage("An error occurred while trying to start the application. Please try again and/or reinstall." @@ -382,7 +393,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh mHIDDeviceManager = HIDDeviceManager.acquire(this); // Set up the surface - mSurface = new SDLSurface(getApplication()); + mSurface = createSDLSurface(this); mLayout = new RelativeLayout(this); mLayout.addView(mSurface); @@ -393,7 +404,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh SDLActivity.onNativeOrientationChanged(mCurrentOrientation); try { - if (Build.VERSION.SDK_INT < 24) { + if (Build.VERSION.SDK_INT < 24 /* Android 7.0 (N) */) { mCurrentLocale = getContext().getResources().getConfiguration().locale; } else { mCurrentLocale = getContext().getResources().getConfiguration().getLocales().get(0); @@ -577,6 +588,8 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh mHIDDeviceManager = null; } + SDLAudioManager.release(this); + if (SDLActivity.mBrokenLibraries) { super.onDestroy(); return; @@ -755,7 +768,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh } break; case COMMAND_CHANGE_WINDOW_STYLE: - if (Build.VERSION.SDK_INT >= 19) { + if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) { if (context instanceof Activity) { Window window = ((Activity) context).getWindow(); if (window != null) { @@ -830,7 +843,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh msg.obj = data; boolean result = commandHandler.sendMessage(msg); - if (Build.VERSION.SDK_INT >= 19) { + if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) { if (command == COMMAND_CHANGE_WINDOW_STYLE) { // Ensure we don't return until the resize has actually happened, // or 500ms have passed. @@ -886,6 +899,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh } // C functions we call + public static native String nativeGetVersion(); public static native int nativeSetupJNI(); public static native int nativeRunMain(String library, String function, Object arguments); public static native void nativeLowMemory(); @@ -957,15 +971,18 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh /* If set, hint "explicitly controls which UI orientations are allowed". */ if (hint.contains("LandscapeRight") && hint.contains("LandscapeLeft")) { orientation_landscape = ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE; - } else if (hint.contains("LandscapeRight")) { - orientation_landscape = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE; } else if (hint.contains("LandscapeLeft")) { + orientation_landscape = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE; + } else if (hint.contains("LandscapeRight")) { orientation_landscape = ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE; } - if (hint.contains("Portrait") && hint.contains("PortraitUpsideDown")) { + /* exact match to 'Portrait' to distinguish with PortraitUpsideDown */ + boolean contains_Portrait = hint.contains("Portrait ") || hint.endsWith("Portrait"); + + if (contains_Portrait && hint.contains("PortraitUpsideDown")) { orientation_portrait = ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT; - } else if (hint.contains("Portrait")) { + } else if (contains_Portrait) { orientation_portrait = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT; } else if (hint.contains("PortraitUpsideDown")) { orientation_portrait = ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT; @@ -1078,7 +1095,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh // thus SDK version 27. If we are in DeX mode and not API 27 or higher, as a result, // we should stick to relative mode. // - if ((Build.VERSION.SDK_INT < 27) && isDeXMode()) { + if (Build.VERSION.SDK_INT < 27 /* Android 8.1 (O_MR1) */ && isDeXMode()) { return false; } @@ -1168,7 +1185,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh * This method is called by SDL using JNI. */ public static boolean isDeXMode() { - if (Build.VERSION.SDK_INT < 24) { + if (Build.VERSION.SDK_INT < 24 /* Android 7.0 (N) */) { return false; } try { @@ -1220,8 +1237,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh } // This method is called by SDLControllerManager's API 26 Generic Motion Handler. - public static View getContentView() - { + public static View getContentView() { return mLayout; } @@ -1292,6 +1308,77 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh return event.isPrintingKey() || event.getKeyCode() == KeyEvent.KEYCODE_SPACE; } + public static boolean handleKeyEvent(View v, int keyCode, KeyEvent event, InputConnection ic) { + int deviceId = event.getDeviceId(); + int source = event.getSource(); + + if (source == InputDevice.SOURCE_UNKNOWN) { + InputDevice device = InputDevice.getDevice(deviceId); + if (device != null) { + source = device.getSources(); + } + } + +// if (event.getAction() == KeyEvent.ACTION_DOWN) { +// Log.v("SDL", "key down: " + keyCode + ", deviceId = " + deviceId + ", source = " + source); +// } else if (event.getAction() == KeyEvent.ACTION_UP) { +// Log.v("SDL", "key up: " + keyCode + ", deviceId = " + deviceId + ", source = " + source); +// } + + // Dispatch the different events depending on where they come from + // Some SOURCE_JOYSTICK, SOURCE_DPAD or SOURCE_GAMEPAD are also SOURCE_KEYBOARD + // So, we try to process them as JOYSTICK/DPAD/GAMEPAD events first, if that fails we try them as KEYBOARD + // + // Furthermore, it's possible a game controller has SOURCE_KEYBOARD and + // SOURCE_JOYSTICK, while its key events arrive from the keyboard source + // So, retrieve the device itself and check all of its sources + if (SDLControllerManager.isDeviceSDLJoystick(deviceId)) { + // Note that we process events with specific key codes here + if (event.getAction() == KeyEvent.ACTION_DOWN) { + if (SDLControllerManager.onNativePadDown(deviceId, keyCode) == 0) { + return true; + } + } else if (event.getAction() == KeyEvent.ACTION_UP) { + if (SDLControllerManager.onNativePadUp(deviceId, keyCode) == 0) { + return true; + } + } + } + + if ((source & InputDevice.SOURCE_KEYBOARD) == InputDevice.SOURCE_KEYBOARD) { + if (event.getAction() == KeyEvent.ACTION_DOWN) { + if (isTextInputEvent(event)) { + if (ic != null) { + ic.commitText(String.valueOf((char) event.getUnicodeChar()), 1); + } else { + SDLInputConnection.nativeCommitText(String.valueOf((char) event.getUnicodeChar()), 1); + } + } + onNativeKeyDown(keyCode); + return true; + } else if (event.getAction() == KeyEvent.ACTION_UP) { + onNativeKeyUp(keyCode); + return true; + } + } + + if ((source & InputDevice.SOURCE_MOUSE) == InputDevice.SOURCE_MOUSE) { + // on some devices key events are sent for mouse BUTTON_BACK/FORWARD presses + // they are ignored here because sending them as mouse input to SDL is messy + if ((keyCode == KeyEvent.KEYCODE_BACK) || (keyCode == KeyEvent.KEYCODE_FORWARD)) { + switch (event.getAction()) { + case KeyEvent.ACTION_DOWN: + case KeyEvent.ACTION_UP: + // mark the event as handled or it will be handled by system + // handling KEYCODE_BACK by system will call onBackPressed() + return true; + } + } + } + + return false; + } + /** * This method is called by SDL using JNI. */ @@ -1535,7 +1622,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh private final Runnable rehideSystemUi = new Runnable() { @Override public void run() { - if (Build.VERSION.SDK_INT >= 19) { + if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) { int flags = View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | @@ -1588,7 +1675,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh Bitmap bitmap = Bitmap.createBitmap(colors, width, height, Bitmap.Config.ARGB_8888); ++mLastCursorID; - if (Build.VERSION.SDK_INT >= 24) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { try { mCursors.put(mLastCursorID, PointerIcon.create(bitmap, hotSpotX, hotSpotY)); } catch (Exception e) { @@ -1604,7 +1691,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh * This method is called by SDL using JNI. */ public static void destroyCustomCursor(int cursorID) { - if (Build.VERSION.SDK_INT >= 24) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { try { mCursors.remove(cursorID); } catch (Exception e) { @@ -1618,7 +1705,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh */ public static boolean setCustomCursor(int cursorID) { - if (Build.VERSION.SDK_INT >= 24) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { try { mSurface.setPointerIcon(mCursors.get(cursorID)); } catch (Exception e) { @@ -1673,7 +1760,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh cursor_type = 1002; //PointerIcon.TYPE_HAND; break; } - if (Build.VERSION.SDK_INT >= 24) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { try { mSurface.setPointerIcon(PointerIcon.getSystemIcon(SDL.getContext(), cursor_type)); } catch (Exception e) { @@ -1687,7 +1774,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh * This method is called by SDL using JNI. */ public static void requestPermission(String permission, int requestCode) { - if (Build.VERSION.SDK_INT < 23) { + if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) { nativePermissionResult(requestCode, true); return; } @@ -1716,7 +1803,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh i.setData(Uri.parse(url)); int flags = Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_MULTIPLE_TASK; - if (Build.VERSION.SDK_INT >= 21) { + if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) { flags |= Intent.FLAG_ACTIVITY_NEW_DOCUMENT; } else { flags |= Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET; @@ -1809,455 +1896,6 @@ class SDLMain implements Runnable { } } - -/** - SDLSurface. This is what we draw on, so we need to know when it's created - in order to do anything useful. - - Because of this, that's where we set up the SDL thread -*/ -class SDLSurface extends SurfaceView implements SurfaceHolder.Callback, - View.OnKeyListener, View.OnTouchListener, SensorEventListener { - - // Sensors - protected SensorManager mSensorManager; - protected Display mDisplay; - - // Keep track of the surface size to normalize touch events - protected float mWidth, mHeight; - - // Is SurfaceView ready for rendering - public boolean mIsSurfaceReady; - - // Startup - public SDLSurface(Context context) { - super(context); - getHolder().addCallback(this); - - setFocusable(true); - setFocusableInTouchMode(true); - requestFocus(); - setOnKeyListener(this); - setOnTouchListener(this); - - mDisplay = ((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); - mSensorManager = (SensorManager)context.getSystemService(Context.SENSOR_SERVICE); - - setOnGenericMotionListener(SDLActivity.getMotionListener()); - - // Some arbitrary defaults to avoid a potential division by zero - mWidth = 1.0f; - mHeight = 1.0f; - - mIsSurfaceReady = false; - } - - public void handlePause() { - enableSensor(Sensor.TYPE_ACCELEROMETER, false); - } - - public void handleResume() { - setFocusable(true); - setFocusableInTouchMode(true); - requestFocus(); - setOnKeyListener(this); - setOnTouchListener(this); - enableSensor(Sensor.TYPE_ACCELEROMETER, true); - } - - public Surface getNativeSurface() { - return getHolder().getSurface(); - } - - // Called when we have a valid drawing surface - @Override - public void surfaceCreated(SurfaceHolder holder) { - Log.v("SDL", "surfaceCreated()"); - SDLActivity.onNativeSurfaceCreated(); - } - - // Called when we lose the surface - @Override - public void surfaceDestroyed(SurfaceHolder holder) { - Log.v("SDL", "surfaceDestroyed()"); - - // Transition to pause, if needed - SDLActivity.mNextNativeState = SDLActivity.NativeState.PAUSED; - SDLActivity.handleNativeState(); - - mIsSurfaceReady = false; - SDLActivity.onNativeSurfaceDestroyed(); - } - - // Called when the surface is resized - @Override - public void surfaceChanged(SurfaceHolder holder, - int format, int width, int height) { - Log.v("SDL", "surfaceChanged()"); - - if (SDLActivity.mSingleton == null) { - return; - } - - mWidth = width; - mHeight = height; - int nDeviceWidth = width; - int nDeviceHeight = height; - try - { - if (Build.VERSION.SDK_INT >= 17) { - DisplayMetrics realMetrics = new DisplayMetrics(); - mDisplay.getRealMetrics( realMetrics ); - nDeviceWidth = realMetrics.widthPixels; - nDeviceHeight = realMetrics.heightPixels; - } - } catch(Exception ignored) { - } - - synchronized(SDLActivity.getContext()) { - // In case we're waiting on a size change after going fullscreen, send a notification. - SDLActivity.getContext().notifyAll(); - } - - Log.v("SDL", "Window size: " + width + "x" + height); - Log.v("SDL", "Device size: " + nDeviceWidth + "x" + nDeviceHeight); - SDLActivity.nativeSetScreenResolution(width, height, nDeviceWidth, nDeviceHeight, mDisplay.getRefreshRate()); - SDLActivity.onNativeResize(); - - // Prevent a screen distortion glitch, - // for instance when the device is in Landscape and a Portrait App is resumed. - boolean skip = false; - int requestedOrientation = SDLActivity.mSingleton.getRequestedOrientation(); - - if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT) { - if (mWidth > mHeight) { - skip = true; - } - } else if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE) { - if (mWidth < mHeight) { - skip = true; - } - } - - // Special Patch for Square Resolution: Black Berry Passport - if (skip) { - double min = Math.min(mWidth, mHeight); - double max = Math.max(mWidth, mHeight); - - if (max / min < 1.20) { - Log.v("SDL", "Don't skip on such aspect-ratio. Could be a square resolution."); - skip = false; - } - } - - // Don't skip in MultiWindow. - if (skip) { - if (Build.VERSION.SDK_INT >= 24) { - if (SDLActivity.mSingleton.isInMultiWindowMode()) { - Log.v("SDL", "Don't skip in Multi-Window"); - skip = false; - } - } - } - - if (skip) { - Log.v("SDL", "Skip .. Surface is not ready."); - mIsSurfaceReady = false; - return; - } - - /* If the surface has been previously destroyed by onNativeSurfaceDestroyed, recreate it here */ - SDLActivity.onNativeSurfaceChanged(); - - /* Surface is ready */ - mIsSurfaceReady = true; - - SDLActivity.mNextNativeState = SDLActivity.NativeState.RESUMED; - SDLActivity.handleNativeState(); - } - - // Key events - @Override - public boolean onKey(View v, int keyCode, KeyEvent event) { - - int deviceId = event.getDeviceId(); - int source = event.getSource(); - - if (source == InputDevice.SOURCE_UNKNOWN) { - InputDevice device = InputDevice.getDevice(deviceId); - if (device != null) { - source = device.getSources(); - } - } - -// if (event.getAction() == KeyEvent.ACTION_DOWN) { -// Log.v("SDL", "key down: " + keyCode + ", deviceId = " + deviceId + ", source = " + source); -// } else if (event.getAction() == KeyEvent.ACTION_UP) { -// Log.v("SDL", "key up: " + keyCode + ", deviceId = " + deviceId + ", source = " + source); -// } - - // Dispatch the different events depending on where they come from - // Some SOURCE_JOYSTICK, SOURCE_DPAD or SOURCE_GAMEPAD are also SOURCE_KEYBOARD - // So, we try to process them as JOYSTICK/DPAD/GAMEPAD events first, if that fails we try them as KEYBOARD - // - // Furthermore, it's possible a game controller has SOURCE_KEYBOARD and - // SOURCE_JOYSTICK, while its key events arrive from the keyboard source - // So, retrieve the device itself and check all of its sources - if (SDLControllerManager.isDeviceSDLJoystick(deviceId)) { - // Note that we process events with specific key codes here - if (event.getAction() == KeyEvent.ACTION_DOWN) { - if (SDLControllerManager.onNativePadDown(deviceId, keyCode) == 0) { - return true; - } - } else if (event.getAction() == KeyEvent.ACTION_UP) { - if (SDLControllerManager.onNativePadUp(deviceId, keyCode) == 0) { - return true; - } - } - } - - if ((source & InputDevice.SOURCE_KEYBOARD) == InputDevice.SOURCE_KEYBOARD) { - if (event.getAction() == KeyEvent.ACTION_DOWN) { - if (SDLActivity.isTextInputEvent(event)) { - SDLInputConnection.nativeCommitText(String.valueOf((char) event.getUnicodeChar()), 1); - } - SDLActivity.onNativeKeyDown(keyCode); - return true; - } else if (event.getAction() == KeyEvent.ACTION_UP) { - SDLActivity.onNativeKeyUp(keyCode); - return true; - } - } - - if ((source & InputDevice.SOURCE_MOUSE) == InputDevice.SOURCE_MOUSE) { - // on some devices key events are sent for mouse BUTTON_BACK/FORWARD presses - // they are ignored here because sending them as mouse input to SDL is messy - if ((keyCode == KeyEvent.KEYCODE_BACK) || (keyCode == KeyEvent.KEYCODE_FORWARD)) { - switch (event.getAction()) { - case KeyEvent.ACTION_DOWN: - case KeyEvent.ACTION_UP: - // mark the event as handled or it will be handled by system - // handling KEYCODE_BACK by system will call onBackPressed() - return true; - } - } - } - - return false; - } - - // Touch events - @Override - public boolean onTouch(View v, MotionEvent event) { - /* Ref: http://developer.android.com/training/gestures/multi.html */ - int touchDevId = event.getDeviceId(); - final int pointerCount = event.getPointerCount(); - int action = event.getActionMasked(); - int pointerFingerId; - int i = -1; - float x,y,p; - - /* - * Prevent id to be -1, since it's used in SDL internal for synthetic events - * Appears when using Android emulator, eg: - * adb shell input mouse tap 100 100 - * adb shell input touchscreen tap 100 100 - */ - if (touchDevId < 0) { - touchDevId -= 1; - } - - // 12290 = Samsung DeX mode desktop mouse - // 12290 = 0x3002 = 0x2002 | 0x1002 = SOURCE_MOUSE | SOURCE_TOUCHSCREEN - // 0x2 = SOURCE_CLASS_POINTER - if (event.getSource() == InputDevice.SOURCE_MOUSE || event.getSource() == (InputDevice.SOURCE_MOUSE | InputDevice.SOURCE_TOUCHSCREEN)) { - int mouseButton = 1; - try { - Object object = event.getClass().getMethod("getButtonState").invoke(event); - if (object != null) { - mouseButton = (Integer) object; - } - } catch(Exception ignored) { - } - - // We need to check if we're in relative mouse mode and get the axis offset rather than the x/y values - // if we are. We'll leverage our existing mouse motion listener - SDLGenericMotionListener_API12 motionListener = SDLActivity.getMotionListener(); - x = motionListener.getEventX(event); - y = motionListener.getEventY(event); - - SDLActivity.onNativeMouse(mouseButton, action, x, y, motionListener.inRelativeMode()); - } else { - switch(action) { - case MotionEvent.ACTION_MOVE: - for (i = 0; i < pointerCount; i++) { - pointerFingerId = event.getPointerId(i); - x = event.getX(i) / mWidth; - y = event.getY(i) / mHeight; - p = event.getPressure(i); - if (p > 1.0f) { - // may be larger than 1.0f on some devices - // see the documentation of getPressure(i) - p = 1.0f; - } - SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); - } - break; - - case MotionEvent.ACTION_UP: - case MotionEvent.ACTION_DOWN: - // Primary pointer up/down, the index is always zero - i = 0; - /* fallthrough */ - case MotionEvent.ACTION_POINTER_UP: - case MotionEvent.ACTION_POINTER_DOWN: - // Non primary pointer up/down - if (i == -1) { - i = event.getActionIndex(); - } - - pointerFingerId = event.getPointerId(i); - x = event.getX(i) / mWidth; - y = event.getY(i) / mHeight; - p = event.getPressure(i); - if (p > 1.0f) { - // may be larger than 1.0f on some devices - // see the documentation of getPressure(i) - p = 1.0f; - } - SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); - break; - - case MotionEvent.ACTION_CANCEL: - for (i = 0; i < pointerCount; i++) { - pointerFingerId = event.getPointerId(i); - x = event.getX(i) / mWidth; - y = event.getY(i) / mHeight; - p = event.getPressure(i); - if (p > 1.0f) { - // may be larger than 1.0f on some devices - // see the documentation of getPressure(i) - p = 1.0f; - } - SDLActivity.onNativeTouch(touchDevId, pointerFingerId, MotionEvent.ACTION_UP, x, y, p); - } - break; - - default: - break; - } - } - - return true; - } - - // Sensor events - public void enableSensor(int sensortype, boolean enabled) { - // TODO: This uses getDefaultSensor - what if we have >1 accels? - if (enabled) { - mSensorManager.registerListener(this, - mSensorManager.getDefaultSensor(sensortype), - SensorManager.SENSOR_DELAY_GAME, null); - } else { - mSensorManager.unregisterListener(this, - mSensorManager.getDefaultSensor(sensortype)); - } - } - - @Override - public void onAccuracyChanged(Sensor sensor, int accuracy) { - // TODO - } - - @Override - public void onSensorChanged(SensorEvent event) { - if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) { - - // Since we may have an orientation set, we won't receive onConfigurationChanged events. - // We thus should check here. - int newOrientation; - - float x, y; - switch (mDisplay.getRotation()) { - case Surface.ROTATION_90: - x = -event.values[1]; - y = event.values[0]; - newOrientation = SDLActivity.SDL_ORIENTATION_LANDSCAPE; - break; - case Surface.ROTATION_270: - x = event.values[1]; - y = -event.values[0]; - newOrientation = SDLActivity.SDL_ORIENTATION_LANDSCAPE_FLIPPED; - break; - case Surface.ROTATION_180: - x = -event.values[0]; - y = -event.values[1]; - newOrientation = SDLActivity.SDL_ORIENTATION_PORTRAIT_FLIPPED; - break; - case Surface.ROTATION_0: - default: - x = event.values[0]; - y = event.values[1]; - newOrientation = SDLActivity.SDL_ORIENTATION_PORTRAIT; - break; - } - - if (newOrientation != SDLActivity.mCurrentOrientation) { - SDLActivity.mCurrentOrientation = newOrientation; - SDLActivity.onNativeOrientationChanged(newOrientation); - } - - SDLActivity.onNativeAccel(-x / SensorManager.GRAVITY_EARTH, - y / SensorManager.GRAVITY_EARTH, - event.values[2] / SensorManager.GRAVITY_EARTH); - - - } - } - - // Captured pointer events for API 26. - public boolean onCapturedPointerEvent(MotionEvent event) - { - int action = event.getActionMasked(); - - float x, y; - switch (action) { - case MotionEvent.ACTION_SCROLL: - x = event.getAxisValue(MotionEvent.AXIS_HSCROLL, 0); - y = event.getAxisValue(MotionEvent.AXIS_VSCROLL, 0); - SDLActivity.onNativeMouse(0, action, x, y, false); - return true; - - case MotionEvent.ACTION_HOVER_MOVE: - case MotionEvent.ACTION_MOVE: - x = event.getX(0); - y = event.getY(0); - SDLActivity.onNativeMouse(0, action, x, y, true); - return true; - - case MotionEvent.ACTION_BUTTON_PRESS: - case MotionEvent.ACTION_BUTTON_RELEASE: - - // Change our action value to what SDL's code expects. - if (action == MotionEvent.ACTION_BUTTON_PRESS) { - action = MotionEvent.ACTION_DOWN; - } else { /* MotionEvent.ACTION_BUTTON_RELEASE */ - action = MotionEvent.ACTION_UP; - } - - x = event.getX(0); - y = event.getY(0); - int button = event.getButtonState(); - - SDLActivity.onNativeMouse(button, action, x, y, true); - return true; - } - - return false; - } - -} - /* This is a fake invisible editor view that receives the input and defines the * pan&scan region */ @@ -2278,21 +1916,7 @@ class DummyEdit extends View implements View.OnKeyListener { @Override public boolean onKey(View v, int keyCode, KeyEvent event) { - /* - * This handles the hardware keyboard input - */ - if (event.getAction() == KeyEvent.ACTION_DOWN) { - if (SDLActivity.isTextInputEvent(event)) { - ic.commitText(String.valueOf((char) event.getUnicodeChar()), 1); - return true; - } - SDLActivity.onNativeKeyDown(keyCode); - return true; - } else if (event.getAction() == KeyEvent.ACTION_UP) { - SDLActivity.onNativeKeyUp(keyCode); - return true; - } - return false; + return SDLActivity.handleKeyEvent(v, keyCode, event, ic); } // @@ -2316,9 +1940,10 @@ class DummyEdit extends View implements View.OnKeyListener { public InputConnection onCreateInputConnection(EditorInfo outAttrs) { ic = new SDLInputConnection(this, true); - outAttrs.inputType = InputType.TYPE_CLASS_TEXT; - outAttrs.imeOptions = EditorInfo.IME_FLAG_NO_EXTRACT_UI - | EditorInfo.IME_FLAG_NO_FULLSCREEN /* API 11 */; + outAttrs.inputType = InputType.TYPE_CLASS_TEXT | + InputType.TYPE_TEXT_FLAG_MULTI_LINE; + outAttrs.imeOptions = EditorInfo.IME_FLAG_NO_EXTRACT_UI | + EditorInfo.IME_FLAG_NO_FULLSCREEN /* API 11 */; return ic; } @@ -2326,9 +1951,17 @@ class DummyEdit extends View implements View.OnKeyListener { class SDLInputConnection extends BaseInputConnection { + protected EditText mEditText; + protected String mCommittedText = ""; + public SDLInputConnection(View targetView, boolean fullEditor) { super(targetView, fullEditor); + mEditText = new EditText(SDL.getContext()); + } + @Override + public Editable getEditable() { + return mEditText.getEditableText(); } @Override @@ -2351,79 +1984,96 @@ class SDLInputConnection extends BaseInputConnection { } } - return super.sendKeyEvent(event); } @Override public boolean commitText(CharSequence text, int newCursorPosition) { - - /* Generate backspaces for the text we're going to replace */ - final Editable content = getEditable(); - if (content != null) { - int a = getComposingSpanStart(content); - int b = getComposingSpanEnd(content); - if (a == -1 || b == -1) { - a = Selection.getSelectionStart(content); - b = Selection.getSelectionEnd(content); - } - if (a < 0) a = 0; - if (b < 0) b = 0; - if (b < a) { - int tmp = a; - a = b; - b = tmp; - } - int backspaces = (b - a); - - for (int i = 0; i < backspaces; i++) { - nativeGenerateScancodeForUnichar('\b'); - } + if (!super.commitText(text, newCursorPosition)) { + return false; } - - for (int i = 0; i < text.length(); i++) { - char c = text.charAt(i); - if (c == '\n') { - if (SDLActivity.onNativeSoftReturnKey()) { - return true; - } - } - nativeGenerateScancodeForUnichar(c); - } - - SDLInputConnection.nativeCommitText(text.toString(), newCursorPosition); - - return super.commitText(text, newCursorPosition); + updateText(); + return true; } @Override public boolean setComposingText(CharSequence text, int newCursorPosition) { + if (!super.setComposingText(text, newCursorPosition)) { + return false; + } + updateText(); + return true; + } - nativeSetComposingText(text.toString(), newCursorPosition); + @Override + public boolean deleteSurroundingText(int beforeLength, int afterLength) { + if (Build.VERSION.SDK_INT <= 29 /* Android 10.0 (Q) */) { + // Workaround to capture backspace key. Ref: http://stackoverflow.com/questions>/14560344/android-backspace-in-webview-baseinputconnection + // and https://bugzilla.libsdl.org/show_bug.cgi?id=2265 + if (beforeLength > 0 && afterLength == 0) { + // backspace(s) + while (beforeLength-- > 0) { + nativeGenerateScancodeForUnichar('\b'); + } + return true; + } + } - return super.setComposingText(text, newCursorPosition); + if (!super.deleteSurroundingText(beforeLength, afterLength)) { + return false; + } + updateText(); + return true; + } + + protected void updateText() { + final Editable content = getEditable(); + if (content == null) { + return; + } + + String text = content.toString(); + int compareLength = Math.min(text.length(), mCommittedText.length()); + int matchLength, offset; + + /* Backspace over characters that are no longer in the string */ + for (matchLength = 0; matchLength < compareLength; ) { + int codePoint = mCommittedText.codePointAt(matchLength); + if (codePoint != text.codePointAt(matchLength)) { + break; + } + matchLength += Character.charCount(codePoint); + } + /* FIXME: This doesn't handle graphemes, like '🌬️' */ + for (offset = matchLength; offset < mCommittedText.length(); ) { + int codePoint = mCommittedText.codePointAt(offset); + nativeGenerateScancodeForUnichar('\b'); + offset += Character.charCount(codePoint); + } + + if (matchLength < text.length()) { + String pendingText = text.subSequence(matchLength, text.length()).toString(); + for (offset = 0; offset < pendingText.length(); ) { + int codePoint = pendingText.codePointAt(offset); + if (codePoint == '\n') { + if (SDLActivity.onNativeSoftReturnKey()) { + return; + } + } + /* Higher code points don't generate simulated scancodes */ + if (codePoint < 128) { + nativeGenerateScancodeForUnichar((char)codePoint); + } + offset += Character.charCount(codePoint); + } + SDLInputConnection.nativeCommitText(pendingText, 0); + } + mCommittedText = text; } public static native void nativeCommitText(String text, int newCursorPosition); - public native void nativeGenerateScancodeForUnichar(char c); - - public native void nativeSetComposingText(String text, int newCursorPosition); - - @Override - public boolean deleteSurroundingText(int beforeLength, int afterLength) { - // Workaround to capture backspace key. Ref: http://stackoverflow.com/questions/14560344/android-backspace-in-webview-baseinputconnection - // and https://bugzilla.libsdl.org/show_bug.cgi?id=2265 - if (beforeLength > 0 && afterLength == 0) { - // backspace(s) - while (beforeLength-- > 0) { - nativeGenerateScancodeForUnichar('\b'); - } - return true; - } - - return super.deleteSurroundingText(beforeLength, afterLength); - } + public static native void nativeGenerateScancodeForUnichar(char c); } class SDLClipboardHandler implements diff --git a/android/app/src/main/java/org/libsdl/app/SDLAudioManager.java b/android/app/src/main/java/org/libsdl/app/SDLAudioManager.java index 2bfc7186..7c821a40 100644 --- a/android/app/src/main/java/org/libsdl/app/SDLAudioManager.java +++ b/android/app/src/main/java/org/libsdl/app/SDLAudioManager.java @@ -1,5 +1,8 @@ package org.libsdl.app; +import android.content.Context; +import android.media.AudioDeviceCallback; +import android.media.AudioDeviceInfo; import android.media.AudioFormat; import android.media.AudioManager; import android.media.AudioRecord; @@ -8,34 +11,67 @@ import android.media.MediaRecorder; import android.os.Build; import android.util.Log; -public class SDLAudioManager -{ +import java.util.Arrays; + +public class SDLAudioManager { protected static final String TAG = "SDLAudio"; protected static AudioTrack mAudioTrack; protected static AudioRecord mAudioRecord; + protected static Context mContext; + + private static final int[] NO_DEVICES = {}; + + private static AudioDeviceCallback mAudioDeviceCallback; public static void initialize() { mAudioTrack = null; mAudioRecord = null; + mAudioDeviceCallback = null; + + if(Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) + { + mAudioDeviceCallback = new AudioDeviceCallback() { + @Override + public void onAudioDevicesAdded(AudioDeviceInfo[] addedDevices) { + Arrays.stream(addedDevices).forEach(deviceInfo -> addAudioDevice(deviceInfo.isSink(), deviceInfo.getId())); + } + + @Override + public void onAudioDevicesRemoved(AudioDeviceInfo[] removedDevices) { + Arrays.stream(removedDevices).forEach(deviceInfo -> removeAudioDevice(deviceInfo.isSink(), deviceInfo.getId())); + } + }; + } + } + + public static void setContext(Context context) { + mContext = context; + if (context != null) { + registerAudioDeviceCallback(); + } + } + + public static void release(Context context) { + unregisterAudioDeviceCallback(context); } // Audio protected static String getAudioFormatString(int audioFormat) { switch (audioFormat) { - case AudioFormat.ENCODING_PCM_8BIT: - return "8-bit"; - case AudioFormat.ENCODING_PCM_16BIT: - return "16-bit"; - case AudioFormat.ENCODING_PCM_FLOAT: - return "float"; - default: - return Integer.toString(audioFormat); + case AudioFormat.ENCODING_PCM_8BIT: + return "8-bit"; + case AudioFormat.ENCODING_PCM_16BIT: + return "16-bit"; + case AudioFormat.ENCODING_PCM_FLOAT: + return "float"; + default: + return Integer.toString(audioFormat); } } - protected static int[] open(boolean isCapture, int sampleRate, int audioFormat, int desiredChannels, int desiredFrames) { + protected static int[] open(boolean isCapture, int sampleRate, int audioFormat, int desiredChannels, int desiredFrames, int deviceId) { int channelConfig; int sampleSize; int frameSize; @@ -43,14 +79,14 @@ public class SDLAudioManager Log.v(TAG, "Opening " + (isCapture ? "capture" : "playback") + ", requested " + desiredFrames + " frames of " + desiredChannels + " channel " + getAudioFormatString(audioFormat) + " audio at " + sampleRate + " Hz"); /* On older devices let's use known good settings */ - if (Build.VERSION.SDK_INT < 21) { + if (Build.VERSION.SDK_INT < 21 /* Android 5.0 (LOLLIPOP) */) { if (desiredChannels > 2) { desiredChannels = 2; } } /* AudioTrack has sample rate limitation of 48000 (fixed in 5.0.2) */ - if (Build.VERSION.SDK_INT < 22) { + if (Build.VERSION.SDK_INT < 22 /* Android 5.1 (LOLLIPOP_MR1) */) { if (sampleRate < 8000) { sampleRate = 8000; } else if (sampleRate > 48000) { @@ -59,7 +95,7 @@ public class SDLAudioManager } if (audioFormat == AudioFormat.ENCODING_PCM_FLOAT) { - int minSDKVersion = (isCapture ? 23 : 21); + int minSDKVersion = (isCapture ? 23 /* Android 6.0 (M) */ : 21 /* Android 5.0 (LOLLIPOP) */); if (Build.VERSION.SDK_INT < minSDKVersion) { audioFormat = AudioFormat.ENCODING_PCM_16BIT; } @@ -120,7 +156,7 @@ public class SDLAudioManager channelConfig = AudioFormat.CHANNEL_OUT_5POINT1 | AudioFormat.CHANNEL_OUT_BACK_CENTER; break; case 8: - if (Build.VERSION.SDK_INT >= 23) { + if (Build.VERSION.SDK_INT >= 23 /* Android 6.0 (M) */) { channelConfig = AudioFormat.CHANNEL_OUT_7POINT1_SURROUND; } else { Log.v(TAG, "Requested " + desiredChannels + " channels, getting 5.1 surround"); @@ -201,6 +237,10 @@ public class SDLAudioManager return null; } + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */ && deviceId != 0) { + mAudioRecord.setPreferredDevice(getOutputAudioDeviceInfo(deviceId)); + } + mAudioRecord.startRecording(); } @@ -224,6 +264,10 @@ public class SDLAudioManager return null; } + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */ && deviceId != 0) { + mAudioTrack.setPreferredDevice(getInputAudioDeviceInfo(deviceId)); + } + mAudioTrack.play(); } @@ -238,11 +282,73 @@ public class SDLAudioManager return results; } + private static AudioDeviceInfo getInputAudioDeviceInfo(int deviceId) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE); + return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_INPUTS)) + .filter(deviceInfo -> deviceInfo.getId() == deviceId) + .findFirst() + .orElse(null); + } else { + return null; + } + } + + private static AudioDeviceInfo getOutputAudioDeviceInfo(int deviceId) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE); + return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS)) + .filter(deviceInfo -> deviceInfo.getId() == deviceId) + .findFirst() + .orElse(null); + } else { + return null; + } + } + + private static void registerAudioDeviceCallback() { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE); + audioManager.registerAudioDeviceCallback(mAudioDeviceCallback, null); + } + } + + private static void unregisterAudioDeviceCallback(Context context) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE); + audioManager.unregisterAudioDeviceCallback(mAudioDeviceCallback); + } + } + /** * This method is called by SDL using JNI. */ - public static int[] audioOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames) { - return open(false, sampleRate, audioFormat, desiredChannels, desiredFrames); + public static int[] getAudioOutputDevices() { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE); + return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS)).mapToInt(AudioDeviceInfo::getId).toArray(); + } else { + return NO_DEVICES; + } + } + + /** + * This method is called by SDL using JNI. + */ + public static int[] getAudioInputDevices() { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE); + return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_INPUTS)).mapToInt(AudioDeviceInfo::getId).toArray(); + } else { + return NO_DEVICES; + } + } + + /** + * This method is called by SDL using JNI. + */ + public static int[] audioOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames, int deviceId) { + return open(false, sampleRate, audioFormat, desiredChannels, desiredFrames, deviceId); } /** @@ -254,6 +360,11 @@ public class SDLAudioManager return; } + if (android.os.Build.VERSION.SDK_INT < 21 /* Android 5.0 (LOLLIPOP) */) { + Log.e(TAG, "Attempted to make an incompatible audio call with uninitialized audio! (floating-point output is supported since Android 5.0 Lollipop)"); + return; + } + for (int i = 0; i < buffer.length;) { int result = mAudioTrack.write(buffer, i, buffer.length - i, AudioTrack.WRITE_BLOCKING); if (result > 0) { @@ -326,18 +437,22 @@ public class SDLAudioManager /** * This method is called by SDL using JNI. */ - public static int[] captureOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames) { - return open(true, sampleRate, audioFormat, desiredChannels, desiredFrames); + public static int[] captureOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames, int deviceId) { + return open(true, sampleRate, audioFormat, desiredChannels, desiredFrames, deviceId); } /** This method is called by SDL using JNI. */ public static int captureReadFloatBuffer(float[] buffer, boolean blocking) { - return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING); + if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) { + return 0; + } else { + return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING); + } } /** This method is called by SDL using JNI. */ public static int captureReadShortBuffer(short[] buffer, boolean blocking) { - if (Build.VERSION.SDK_INT < 23) { + if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) { return mAudioRecord.read(buffer, 0, buffer.length); } else { return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING); @@ -346,7 +461,7 @@ public class SDLAudioManager /** This method is called by SDL using JNI. */ public static int captureReadByteBuffer(byte[] buffer, boolean blocking) { - if (Build.VERSION.SDK_INT < 23) { + if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) { return mAudioRecord.read(buffer, 0, buffer.length); } else { return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING); @@ -391,4 +506,9 @@ public class SDLAudioManager } public static native int nativeSetupJNI(); + + public static native void removeAudioDevice(boolean isCapture, int deviceId); + + public static native void addAudioDevice(boolean isCapture, int deviceId); + } diff --git a/android/app/src/main/java/org/libsdl/app/SDLControllerManager.java b/android/app/src/main/java/org/libsdl/app/SDLControllerManager.java index 82373d9d..d6913f15 100644 --- a/android/app/src/main/java/org/libsdl/app/SDLControllerManager.java +++ b/android/app/src/main/java/org/libsdl/app/SDLControllerManager.java @@ -24,7 +24,7 @@ public class SDLControllerManager public static native int nativeAddJoystick(int device_id, String name, String desc, int vendor_id, int product_id, boolean is_accelerometer, int button_mask, - int naxes, int nhats, int nballs); + int naxes, int axis_mask, int nhats, int nballs); public static native int nativeRemoveJoystick(int device_id); public static native int nativeAddHaptic(int device_id, String name); public static native int nativeRemoveHaptic(int device_id); @@ -42,7 +42,7 @@ public class SDLControllerManager public static void initialize() { if (mJoystickHandler == null) { - if (Build.VERSION.SDK_INT >= 19) { + if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) { mJoystickHandler = new SDLJoystickHandler_API19(); } else { mJoystickHandler = new SDLJoystickHandler_API16(); @@ -50,7 +50,7 @@ public class SDLControllerManager } if (mHapticHandler == null) { - if (Build.VERSION.SDK_INT >= 26) { + if (Build.VERSION.SDK_INT >= 26 /* Android 8.0 (O) */) { mHapticHandler = new SDLHapticHandler_API26(); } else { mHapticHandler = new SDLHapticHandler(); @@ -168,6 +168,32 @@ class SDLJoystickHandler_API16 extends SDLJoystickHandler { arg1Axis = MotionEvent.AXIS_GAS; } + // Make sure the AXIS_Z is sorted between AXIS_RY and AXIS_RZ. + // This is because the usual pairing are: + // - AXIS_X + AXIS_Y (left stick). + // - AXIS_RX, AXIS_RY (sometimes the right stick, sometimes triggers). + // - AXIS_Z, AXIS_RZ (sometimes the right stick, sometimes triggers). + // This sorts the axes in the above order, which tends to be correct + // for Xbox-ish game pads that have the right stick on RX/RY and the + // triggers on Z/RZ. + // + // Gamepads that don't have AXIS_Z/AXIS_RZ but use + // AXIS_LTRIGGER/AXIS_RTRIGGER are unaffected by this. + // + // References: + // - https://developer.android.com/develop/ui/views/touch-and-input/game-controllers/controller-input + // - https://www.kernel.org/doc/html/latest/input/gamepad.html + if (arg0Axis == MotionEvent.AXIS_Z) { + arg0Axis = MotionEvent.AXIS_RZ - 1; + } else if (arg0Axis > MotionEvent.AXIS_Z && arg0Axis < MotionEvent.AXIS_RZ) { + --arg0Axis; + } + if (arg1Axis == MotionEvent.AXIS_Z) { + arg1Axis = MotionEvent.AXIS_RZ - 1; + } else if (arg1Axis > MotionEvent.AXIS_Z && arg1Axis < MotionEvent.AXIS_RZ) { + --arg1Axis; + } + return arg0Axis - arg1Axis; } } @@ -210,7 +236,7 @@ class SDLJoystickHandler_API16 extends SDLJoystickHandler { mJoysticks.add(joystick); SDLControllerManager.nativeAddJoystick(joystick.device_id, joystick.name, joystick.desc, getVendorId(joystickDevice), getProductId(joystickDevice), false, - getButtonMask(joystickDevice), joystick.axes.size(), joystick.hats.size()/2, 0); + getButtonMask(joystickDevice), joystick.axes.size(), getAxisMask(joystick.axes), joystick.hats.size()/2, 0); } } } @@ -291,6 +317,9 @@ class SDLJoystickHandler_API16 extends SDLJoystickHandler { public int getVendorId(InputDevice joystickDevice) { return 0; } + public int getAxisMask(List ranges) { + return -1; + } public int getButtonMask(InputDevice joystickDevice) { return -1; } @@ -308,6 +337,43 @@ class SDLJoystickHandler_API19 extends SDLJoystickHandler_API16 { return joystickDevice.getVendorId(); } + @Override + public int getAxisMask(List ranges) { + // For compatibility, keep computing the axis mask like before, + // only really distinguishing 2, 4 and 6 axes. + int axis_mask = 0; + if (ranges.size() >= 2) { + // ((1 << SDL_GAMEPAD_AXIS_LEFTX) | (1 << SDL_GAMEPAD_AXIS_LEFTY)) + axis_mask |= 0x0003; + } + if (ranges.size() >= 4) { + // ((1 << SDL_GAMEPAD_AXIS_RIGHTX) | (1 << SDL_GAMEPAD_AXIS_RIGHTY)) + axis_mask |= 0x000c; + } + if (ranges.size() >= 6) { + // ((1 << SDL_GAMEPAD_AXIS_LEFT_TRIGGER) | (1 << SDL_GAMEPAD_AXIS_RIGHT_TRIGGER)) + axis_mask |= 0x0030; + } + // Also add an indicator bit for whether the sorting order has changed. + // This serves to disable outdated gamecontrollerdb.txt mappings. + boolean have_z = false; + boolean have_past_z_before_rz = false; + for (InputDevice.MotionRange range : ranges) { + int axis = range.getAxis(); + if (axis == MotionEvent.AXIS_Z) { + have_z = true; + } else if (axis > MotionEvent.AXIS_Z && axis < MotionEvent.AXIS_RZ) { + have_past_z_before_rz = true; + } + } + if (have_z && have_past_z_before_rz) { + // If both these exist, the compare() function changed sorting order. + // Set a bit to indicate this fact. + axis_mask |= 0x8000; + } + return axis_mask; + } + @Override public int getButtonMask(InputDevice joystickDevice) { int button_mask = 0; @@ -743,7 +809,7 @@ class SDLGenericMotionListener_API26 extends SDLGenericMotionListener_API24 { @Override public boolean supportsRelativeMouse() { - return (!SDLActivity.isDeXMode() || (Build.VERSION.SDK_INT >= 27)); + return (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */); } @Override @@ -753,7 +819,7 @@ class SDLGenericMotionListener_API26 extends SDLGenericMotionListener_API24 { @Override public boolean setRelativeMouseEnabled(boolean enabled) { - if (!SDLActivity.isDeXMode() || (Build.VERSION.SDK_INT >= 27)) { + if (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */) { if (enabled) { SDLActivity.getContentView().requestPointerCapture(); } else { diff --git a/android/app/src/main/java/org/libsdl/app/SDLSurface.java b/android/app/src/main/java/org/libsdl/app/SDLSurface.java new file mode 100644 index 00000000..0857e4b6 --- /dev/null +++ b/android/app/src/main/java/org/libsdl/app/SDLSurface.java @@ -0,0 +1,405 @@ +package org.libsdl.app; + + +import android.content.Context; +import android.content.pm.ActivityInfo; +import android.hardware.Sensor; +import android.hardware.SensorEvent; +import android.hardware.SensorEventListener; +import android.hardware.SensorManager; +import android.os.Build; +import android.util.DisplayMetrics; +import android.util.Log; +import android.view.Display; +import android.view.InputDevice; +import android.view.KeyEvent; +import android.view.MotionEvent; +import android.view.Surface; +import android.view.SurfaceHolder; +import android.view.SurfaceView; +import android.view.View; +import android.view.WindowManager; + + +/** + SDLSurface. This is what we draw on, so we need to know when it's created + in order to do anything useful. + + Because of this, that's where we set up the SDL thread +*/ +public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback, + View.OnKeyListener, View.OnTouchListener, SensorEventListener { + + // Sensors + protected SensorManager mSensorManager; + protected Display mDisplay; + + // Keep track of the surface size to normalize touch events + protected float mWidth, mHeight; + + // Is SurfaceView ready for rendering + public boolean mIsSurfaceReady; + + // Startup + public SDLSurface(Context context) { + super(context); + getHolder().addCallback(this); + + setFocusable(true); + setFocusableInTouchMode(true); + requestFocus(); + setOnKeyListener(this); + setOnTouchListener(this); + + mDisplay = ((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); + mSensorManager = (SensorManager)context.getSystemService(Context.SENSOR_SERVICE); + + setOnGenericMotionListener(SDLActivity.getMotionListener()); + + // Some arbitrary defaults to avoid a potential division by zero + mWidth = 1.0f; + mHeight = 1.0f; + + mIsSurfaceReady = false; + } + + public void handlePause() { + enableSensor(Sensor.TYPE_ACCELEROMETER, false); + } + + public void handleResume() { + setFocusable(true); + setFocusableInTouchMode(true); + requestFocus(); + setOnKeyListener(this); + setOnTouchListener(this); + enableSensor(Sensor.TYPE_ACCELEROMETER, true); + } + + public Surface getNativeSurface() { + return getHolder().getSurface(); + } + + // Called when we have a valid drawing surface + @Override + public void surfaceCreated(SurfaceHolder holder) { + Log.v("SDL", "surfaceCreated()"); + SDLActivity.onNativeSurfaceCreated(); + } + + // Called when we lose the surface + @Override + public void surfaceDestroyed(SurfaceHolder holder) { + Log.v("SDL", "surfaceDestroyed()"); + + // Transition to pause, if needed + SDLActivity.mNextNativeState = SDLActivity.NativeState.PAUSED; + SDLActivity.handleNativeState(); + + mIsSurfaceReady = false; + SDLActivity.onNativeSurfaceDestroyed(); + } + + // Called when the surface is resized + @Override + public void surfaceChanged(SurfaceHolder holder, + int format, int width, int height) { + Log.v("SDL", "surfaceChanged()"); + + if (SDLActivity.mSingleton == null) { + return; + } + + mWidth = width; + mHeight = height; + int nDeviceWidth = width; + int nDeviceHeight = height; + try + { + if (Build.VERSION.SDK_INT >= 17 /* Android 4.2 (JELLY_BEAN_MR1) */) { + DisplayMetrics realMetrics = new DisplayMetrics(); + mDisplay.getRealMetrics( realMetrics ); + nDeviceWidth = realMetrics.widthPixels; + nDeviceHeight = realMetrics.heightPixels; + } + } catch(Exception ignored) { + } + + synchronized(SDLActivity.getContext()) { + // In case we're waiting on a size change after going fullscreen, send a notification. + SDLActivity.getContext().notifyAll(); + } + + Log.v("SDL", "Window size: " + width + "x" + height); + Log.v("SDL", "Device size: " + nDeviceWidth + "x" + nDeviceHeight); + SDLActivity.nativeSetScreenResolution(width, height, nDeviceWidth, nDeviceHeight, mDisplay.getRefreshRate()); + SDLActivity.onNativeResize(); + + // Prevent a screen distortion glitch, + // for instance when the device is in Landscape and a Portrait App is resumed. + boolean skip = false; + int requestedOrientation = SDLActivity.mSingleton.getRequestedOrientation(); + + if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT) { + if (mWidth > mHeight) { + skip = true; + } + } else if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE) { + if (mWidth < mHeight) { + skip = true; + } + } + + // Special Patch for Square Resolution: Black Berry Passport + if (skip) { + double min = Math.min(mWidth, mHeight); + double max = Math.max(mWidth, mHeight); + + if (max / min < 1.20) { + Log.v("SDL", "Don't skip on such aspect-ratio. Could be a square resolution."); + skip = false; + } + } + + // Don't skip in MultiWindow. + if (skip) { + if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) { + if (SDLActivity.mSingleton.isInMultiWindowMode()) { + Log.v("SDL", "Don't skip in Multi-Window"); + skip = false; + } + } + } + + if (skip) { + Log.v("SDL", "Skip .. Surface is not ready."); + mIsSurfaceReady = false; + return; + } + + /* If the surface has been previously destroyed by onNativeSurfaceDestroyed, recreate it here */ + SDLActivity.onNativeSurfaceChanged(); + + /* Surface is ready */ + mIsSurfaceReady = true; + + SDLActivity.mNextNativeState = SDLActivity.NativeState.RESUMED; + SDLActivity.handleNativeState(); + } + + // Key events + @Override + public boolean onKey(View v, int keyCode, KeyEvent event) { + return SDLActivity.handleKeyEvent(v, keyCode, event, null); + } + + // Touch events + @Override + public boolean onTouch(View v, MotionEvent event) { + /* Ref: http://developer.android.com/training/gestures/multi.html */ + int touchDevId = event.getDeviceId(); + final int pointerCount = event.getPointerCount(); + int action = event.getActionMasked(); + int pointerFingerId; + int i = -1; + float x,y,p; + + /* + * Prevent id to be -1, since it's used in SDL internal for synthetic events + * Appears when using Android emulator, eg: + * adb shell input mouse tap 100 100 + * adb shell input touchscreen tap 100 100 + */ + if (touchDevId < 0) { + touchDevId -= 1; + } + + // 12290 = Samsung DeX mode desktop mouse + // 12290 = 0x3002 = 0x2002 | 0x1002 = SOURCE_MOUSE | SOURCE_TOUCHSCREEN + // 0x2 = SOURCE_CLASS_POINTER + if (event.getSource() == InputDevice.SOURCE_MOUSE || event.getSource() == (InputDevice.SOURCE_MOUSE | InputDevice.SOURCE_TOUCHSCREEN)) { + int mouseButton = 1; + try { + Object object = event.getClass().getMethod("getButtonState").invoke(event); + if (object != null) { + mouseButton = (Integer) object; + } + } catch(Exception ignored) { + } + + // We need to check if we're in relative mouse mode and get the axis offset rather than the x/y values + // if we are. We'll leverage our existing mouse motion listener + SDLGenericMotionListener_API12 motionListener = SDLActivity.getMotionListener(); + x = motionListener.getEventX(event); + y = motionListener.getEventY(event); + + SDLActivity.onNativeMouse(mouseButton, action, x, y, motionListener.inRelativeMode()); + } else { + switch(action) { + case MotionEvent.ACTION_MOVE: + for (i = 0; i < pointerCount; i++) { + pointerFingerId = event.getPointerId(i); + x = event.getX(i) / mWidth; + y = event.getY(i) / mHeight; + p = event.getPressure(i); + if (p > 1.0f) { + // may be larger than 1.0f on some devices + // see the documentation of getPressure(i) + p = 1.0f; + } + SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); + } + break; + + case MotionEvent.ACTION_UP: + case MotionEvent.ACTION_DOWN: + // Primary pointer up/down, the index is always zero + i = 0; + /* fallthrough */ + case MotionEvent.ACTION_POINTER_UP: + case MotionEvent.ACTION_POINTER_DOWN: + // Non primary pointer up/down + if (i == -1) { + i = event.getActionIndex(); + } + + pointerFingerId = event.getPointerId(i); + x = event.getX(i) / mWidth; + y = event.getY(i) / mHeight; + p = event.getPressure(i); + if (p > 1.0f) { + // may be larger than 1.0f on some devices + // see the documentation of getPressure(i) + p = 1.0f; + } + SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); + break; + + case MotionEvent.ACTION_CANCEL: + for (i = 0; i < pointerCount; i++) { + pointerFingerId = event.getPointerId(i); + x = event.getX(i) / mWidth; + y = event.getY(i) / mHeight; + p = event.getPressure(i); + if (p > 1.0f) { + // may be larger than 1.0f on some devices + // see the documentation of getPressure(i) + p = 1.0f; + } + SDLActivity.onNativeTouch(touchDevId, pointerFingerId, MotionEvent.ACTION_UP, x, y, p); + } + break; + + default: + break; + } + } + + return true; + } + + // Sensor events + public void enableSensor(int sensortype, boolean enabled) { + // TODO: This uses getDefaultSensor - what if we have >1 accels? + if (enabled) { + mSensorManager.registerListener(this, + mSensorManager.getDefaultSensor(sensortype), + SensorManager.SENSOR_DELAY_GAME, null); + } else { + mSensorManager.unregisterListener(this, + mSensorManager.getDefaultSensor(sensortype)); + } + } + + @Override + public void onAccuracyChanged(Sensor sensor, int accuracy) { + // TODO + } + + @Override + public void onSensorChanged(SensorEvent event) { + if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) { + + // Since we may have an orientation set, we won't receive onConfigurationChanged events. + // We thus should check here. + int newOrientation; + + float x, y; + switch (mDisplay.getRotation()) { + case Surface.ROTATION_90: + x = -event.values[1]; + y = event.values[0]; + newOrientation = SDLActivity.SDL_ORIENTATION_LANDSCAPE; + break; + case Surface.ROTATION_270: + x = event.values[1]; + y = -event.values[0]; + newOrientation = SDLActivity.SDL_ORIENTATION_LANDSCAPE_FLIPPED; + break; + case Surface.ROTATION_180: + x = -event.values[0]; + y = -event.values[1]; + newOrientation = SDLActivity.SDL_ORIENTATION_PORTRAIT_FLIPPED; + break; + case Surface.ROTATION_0: + default: + x = event.values[0]; + y = event.values[1]; + newOrientation = SDLActivity.SDL_ORIENTATION_PORTRAIT; + break; + } + + if (newOrientation != SDLActivity.mCurrentOrientation) { + SDLActivity.mCurrentOrientation = newOrientation; + SDLActivity.onNativeOrientationChanged(newOrientation); + } + + SDLActivity.onNativeAccel(-x / SensorManager.GRAVITY_EARTH, + y / SensorManager.GRAVITY_EARTH, + event.values[2] / SensorManager.GRAVITY_EARTH); + + + } + } + + // Captured pointer events for API 26. + public boolean onCapturedPointerEvent(MotionEvent event) + { + int action = event.getActionMasked(); + + float x, y; + switch (action) { + case MotionEvent.ACTION_SCROLL: + x = event.getAxisValue(MotionEvent.AXIS_HSCROLL, 0); + y = event.getAxisValue(MotionEvent.AXIS_VSCROLL, 0); + SDLActivity.onNativeMouse(0, action, x, y, false); + return true; + + case MotionEvent.ACTION_HOVER_MOVE: + case MotionEvent.ACTION_MOVE: + x = event.getX(0); + y = event.getY(0); + SDLActivity.onNativeMouse(0, action, x, y, true); + return true; + + case MotionEvent.ACTION_BUTTON_PRESS: + case MotionEvent.ACTION_BUTTON_RELEASE: + + // Change our action value to what SDL's code expects. + if (action == MotionEvent.ACTION_BUTTON_PRESS) { + action = MotionEvent.ACTION_DOWN; + } else { /* MotionEvent.ACTION_BUTTON_RELEASE */ + action = MotionEvent.ACTION_UP; + } + + x = event.getX(0); + y = event.getY(0); + int button = event.getButtonState(); + + SDLActivity.onNativeMouse(button, action, x, y, true); + return true; + } + + return false; + } +} diff --git a/extern/SDL b/extern/SDL index 55b03c74..ffa78e6b 160000 --- a/extern/SDL +++ b/extern/SDL @@ -1 +1 @@ -Subproject commit 55b03c7493a7abed33cf803d1380a40fa8af903f +Subproject commit ffa78e6bead23e2ba3adf8ec2367ff2218d4343c From 61fd9d05a064aca8f7f3aba577e042b31ac01386 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 21 Jun 2023 04:27:31 -0500 Subject: [PATCH 119/183] IGFD: change default sorting order --- extern/igfd/ImGuiFileDialog.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index a3104839..752f4100 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -1137,8 +1137,9 @@ namespace IGFD IGFD::FileManager::FileManager() { puFsRoot = std::string(1u, PATH_SEP); - for (int i=0; i<4; i++) { - puSortingDirection[i]=true; + puSortingDirection[0]=true; + for (int i=1; i<4; i++) { + puSortingDirection[i]=false; } } From b31024847fee5c0b63df5f9dce5ef55358b2cac5 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 21 Jun 2023 14:39:49 -0500 Subject: [PATCH 120/183] GUI: add presets for QuadTone engine issue #1172 --- src/gui/presets.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gui/presets.cpp b/src/gui/presets.cpp index 1262b453..12b77ceb 100644 --- a/src/gui/presets.cpp +++ b/src/gui/presets.cpp @@ -822,10 +822,15 @@ void FurnaceGUI::initSystemPresets() { } ); ENTRY( - "ZX Spectrum (48K)", { + "ZX Spectrum (48K, SFX-like engine)", { CH(DIV_SYSTEM_SFX_BEEPER, 1.0f, 0, "") } ); + ENTRY( + "ZX Spectrum (48K, QuadTone engine)", { + CH(DIV_SYSTEM_SFX_BEEPER_QUADTONE, 1.0f, 0, "") + } + ); ENTRY( "ZX Spectrum (128K)", { CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=1") //beeper was also included @@ -2594,10 +2599,15 @@ void FurnaceGUI::initSystemPresets() { } ); ENTRY( - "ZX Spectrum (beeper only)", { + "ZX Spectrum (beeper only, SFX-like engine)", { CH(DIV_SYSTEM_SFX_BEEPER, 1.0f, 0, "") } ); + ENTRY( + "ZX Spectrum (beeper only, QuadTone engine)", { + CH(DIV_SYSTEM_SFX_BEEPER_QUADTONE, 1.0f, 0, "") + } + ); ENTRY( "Sharp SM8521", { CH(DIV_SYSTEM_SM8521, 1.0f, 0, "") From ef57ad531d62ab6992fcfe080695f485328f487d Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 03:24:39 -0500 Subject: [PATCH 121/183] oh crap I did not commit --- src/engine/dispatch.h | 2 ++ src/engine/vgmOps.cpp | 13 +++++++++++++ 2 files changed, 15 insertions(+) diff --git a/src/engine/dispatch.h b/src/engine/dispatch.h index 7469f903..c19e7d95 100644 --- a/src/engine/dispatch.h +++ b/src/engine/dispatch.h @@ -284,6 +284,8 @@ struct DivRegWrite { * - xx is the instance ID * - 0xffffxx03: set sample playback direction * - x is the instance ID + * - 0xffffxx04: switch sample bank + * - for use in VGM export * - 0xffffffff: reset */ unsigned int addr; diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index eb10521a..bc94415b 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -1094,6 +1094,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p DivDispatch* writeRF5C68[2]={NULL,NULL}; DivDispatch* writeMSM6295[2]={NULL,NULL}; DivDispatch* writeGA20[2]={NULL,NULL}; + DivDispatch* writeNES[2]={NULL,NULL}; for (int i=0; iwriteI(0); w->write(writeGA20[i]->getSampleMem(),writeGA20[i]->getSampleMemUsage()); } + // TODO + if (writeNES[i]!=NULL && writeNES[i]->getSampleMemUsage()>0) { + w->writeC(0x67); + w->writeC(0x66); + w->writeC(0x07); + w->writeI((writeNES[i]->getSampleMemUsage()+8)|(i*0x80000000)); + w->writeI(writeNES[i]->getSampleMemCapacity()); + w->writeI(0); + w->write(writeNES[i]->getSampleMem(),writeNES[i]->getSampleMemUsage()); + } } // TODO From 0bcd1b74ac1b9e37ff22729482ecd1857c76b5a3 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 04:55:12 -0500 Subject: [PATCH 122/183] VGM export: prepare for NES DPCM --- src/engine/platform/nes.cpp | 13 +++++++++++-- src/engine/vgmOps.cpp | 18 +++++++++++++----- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/engine/platform/nes.cpp b/src/engine/platform/nes.cpp index 99131ac3..8fac5235 100644 --- a/src/engine/platform/nes.cpp +++ b/src/engine/platform/nes.cpp @@ -346,7 +346,11 @@ void DivPlatformNES::tick(bool sysTick) { rWrite(0x4012,(dpcmAddr>>6)&0xff); rWrite(0x4013,dpcmLen&0xff); rWrite(0x4015,31); - dpcmBank=dpcmAddr>>14; + if (dpcmBank!=(dpcmAddr>>14)) { + dpcmBank=dpcmAddr>>14; + logV("switching bank to %d",dpcmBank); + if (dumpWrites) addWrite(0xffff0004,dpcmBank); + } } } else { if (nextDPCMFreq>=0) { @@ -425,7 +429,11 @@ int DivPlatformNES::dispatch(DivCommand c) { rWrite(0x4012,(dpcmAddr>>6)&0xff); rWrite(0x4013,dpcmLen&0xff); rWrite(0x4015,31); - dpcmBank=dpcmAddr>>14; + if (dpcmBank!=(dpcmAddr>>14)) { + dpcmBank=dpcmAddr>>14; + logV("switching bank to %d",dpcmBank); + if (dumpWrites) addWrite(0xffff0004,dpcmBank); + } } } break; @@ -854,6 +862,7 @@ int DivPlatformNES::init(DivEngine* p, int channels, int sugRate, const DivConfi dpcmMem=new unsigned char[262144]; dpcmMemLen=0; dpcmBank=0; + if (dumpWrites) addWrite(0xffff0004,dpcmBank); init_nla_table(500,500); reset(); diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index bc94415b..7a6caa67 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -1054,6 +1054,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p bool willExport[DIV_MAX_CHIPS]; bool isSecond[DIV_MAX_CHIPS]; int streamIDs[DIV_MAX_CHIPS]; + double loopTimer[DIV_MAX_CHANS]; double loopFreq[DIV_MAX_CHANS]; int loopSample[DIV_MAX_CHANS]; @@ -1096,6 +1097,9 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p DivDispatch* writeGA20[2]={NULL,NULL}; DivDispatch* writeNES[2]={NULL,NULL}; + size_t bankOffsetNESCurrent=0; + size_t bankOffsetNES[2]={0,0}; + for (int i=0; ilength8; j++) { w->writeC(((unsigned char)sample->data8[j]+0x80)>>1); } + bankOffsetNESCurrent+=sample->length8; } if (writePCESamples && !directStream) for (int i=0; igetSampleMemUsage()>0) { + size_t howMuchWillBeWritten=writeNES[i]->getSampleMemUsage(); w->writeC(0x67); w->writeC(0x66); - w->writeC(0x07); - w->writeI((writeNES[i]->getSampleMemUsage()+8)|(i*0x80000000)); - w->writeI(writeNES[i]->getSampleMemCapacity()); - w->writeI(0); - w->write(writeNES[i]->getSampleMem(),writeNES[i]->getSampleMemUsage()); + w->writeC(7); + w->writeI(howMuchWillBeWritten); + w->write(writeNES[i]->getSampleMem(),howMuchWillBeWritten); + bankOffsetNES[i]=bankOffsetNESCurrent; + bankOffsetNESCurrent+=howMuchWillBeWritten; } } @@ -2231,6 +2237,8 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p } // write write performVGMWrite(w,song.system[i.first],i.second.write,streamIDs[i.first],loopTimer,loopFreq,loopSample,sampleDir,isSecond[i.first],pendingFreq,playingSample,directStream); + // handle global Furnace commands + writeCount++; } sortedWrites.clear(); From 317aca056465ef026a69a301bd75017068255ad9 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 15:20:48 -0500 Subject: [PATCH 123/183] VGM export: NES DPCM, part 1 still does not work --- src/engine/engine.h | 2 +- src/engine/vgmOps.cpp | 38 +++++++++++++++++++++++++++++++++----- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/src/engine/engine.h b/src/engine/engine.h index bae7daa9..85e8f641 100644 --- a/src/engine/engine.h +++ b/src/engine/engine.h @@ -489,7 +489,7 @@ class DivEngine { void processRow(int i, bool afterDelay); void nextOrder(); void nextRow(); - void performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write, int streamOff, double* loopTimer, double* loopFreq, int* loopSample, bool* sampleDir, bool isSecond, int* pendingFreq, int* playingSample, bool directStream); + void performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write, int streamOff, double* loopTimer, double* loopFreq, int* loopSample, bool* sampleDir, bool isSecond, int* pendingFreq, int* playingSample, size_t bankOffset, bool directStream); // returns true if end of song. bool nextTick(bool noAccum=false, bool inhibitLowLat=false); bool perSystemEffect(int ch, unsigned char effect, unsigned char effectVal); diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index 7a6caa67..5cf18e42 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -24,7 +24,7 @@ constexpr int MASTER_CLOCK_PREC=(sizeof(void*)==8)?8:0; -void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write, int streamOff, double* loopTimer, double* loopFreq, int* loopSample, bool* sampleDir, bool isSecond, int* pendingFreq, int* playingSample, bool directStream) { +void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write, int streamOff, double* loopTimer, double* loopFreq, int* loopSample, bool* sampleDir, bool isSecond, int* pendingFreq, int* playingSample, size_t bankOffset, bool directStream) { unsigned char baseAddr1=isSecond?0xa0:0x50; unsigned char baseAddr2=isSecond?0x80:0; unsigned short baseAddr2S=isSecond?0x8000:0; @@ -577,6 +577,28 @@ void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write break; } } + if (write.addr==0xffff0004) { // switch sample bank + switch (sys) { + case DIV_SYSTEM_NES: { + unsigned int bankAddr=bankOffset+(write.val<<14); + w->writeC(0x68); + w->writeC(0x6c); + w->writeC(0x07); + w->writeC(bankAddr&0xff); + w->writeC((bankAddr>>8)&0xff); + w->writeC((bankAddr>>16)&0xff); + w->writeC(0x00); + w->writeC(0xc0); + w->writeC(0x00); + w->writeC(0x00); + w->writeC(0x40); + w->writeC(0x00); + break; + } + default: + break; + } + } if (write.addr>=0xffff0000) { // Furnace special command if (!directStream) { unsigned char streamID=streamOff+((write.addr&0xff00)>>8); @@ -1054,7 +1076,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p bool willExport[DIV_MAX_CHIPS]; bool isSecond[DIV_MAX_CHIPS]; int streamIDs[DIV_MAX_CHIPS]; - + size_t bankOffset[DIV_MAX_CHIPS]; double loopTimer[DIV_MAX_CHANS]; double loopFreq[DIV_MAX_CHANS]; int loopSample[DIV_MAX_CHANS]; @@ -1072,6 +1094,8 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p bool mayWriteRate=(fmod(curSubSong->hz,1.0)<0.00001 || fmod(curSubSong->hz,1.0)>0.99999); int countDown=MAX(0,trailingTicks)+1; + memset(bankOffset,0,DIV_MAX_CHIPS*sizeof(size_t)); + for (int i=0; iwriteI(0); w->write(writeGA20[i]->getSampleMem(),writeGA20[i]->getSampleMemUsage()); } - // TODO if (writeNES[i]!=NULL && writeNES[i]->getSampleMemUsage()>0) { size_t howMuchWillBeWritten=writeNES[i]->getSampleMemUsage(); w->writeC(0x67); @@ -1985,6 +2012,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p w->writeI(howMuchWillBeWritten); w->write(writeNES[i]->getSampleMem(),howMuchWillBeWritten); bankOffsetNES[i]=bankOffsetNESCurrent; + bankOffset[writeNESIndex[i]]=bankOffsetNES[i]; bankOffsetNESCurrent+=howMuchWillBeWritten; } } @@ -2196,7 +2224,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p for (int i=0; i& writes=disCont[i].dispatch->getRegisterWrites(); for (DivRegWrite& j: writes) { - performVGMWrite(w,song.system[i],j,streamIDs[i],loopTimer,loopFreq,loopSample,sampleDir,isSecond[i],pendingFreq,playingSample,directStream); + performVGMWrite(w,song.system[i],j,streamIDs[i],loopTimer,loopFreq,loopSample,sampleDir,isSecond[i],pendingFreq,playingSample,bankOffset[i],directStream); writeCount++; } writes.clear(); @@ -2236,7 +2264,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p lastOne=i.second.time; } // write write - performVGMWrite(w,song.system[i.first],i.second.write,streamIDs[i.first],loopTimer,loopFreq,loopSample,sampleDir,isSecond[i.first],pendingFreq,playingSample,directStream); + performVGMWrite(w,song.system[i.first],i.second.write,streamIDs[i.first],loopTimer,loopFreq,loopSample,sampleDir,isSecond[i.first],pendingFreq,playingSample,bankOffset[i.first],directStream); // handle global Furnace commands writeCount++; From b9514bb98e94424b0e03116b6bdea0a109531f14 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 15:40:50 -0500 Subject: [PATCH 124/183] VGM export: NES DPCM, part 2 now it works issue #1163 --- src/engine/vgmOps.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index 5cf18e42..5f6cdeeb 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -2014,6 +2014,19 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p bankOffsetNES[i]=bankOffsetNESCurrent; bankOffset[writeNESIndex[i]]=bankOffsetNES[i]; bankOffsetNESCurrent+=howMuchWillBeWritten; + // force the first bank + w->writeC(0x68); + w->writeC(0x6c); + w->writeC(0x07); + w->writeC(bankOffsetNES[i]&0xff); + w->writeC((bankOffsetNES[i]>>8)&0xff); + w->writeC((bankOffsetNES[i]>>16)&0xff); + w->writeC(0x00); + w->writeC(0xc0); + w->writeC(0x00); + w->writeC(0x00); + w->writeC(0x40); + w->writeC(0x00); } } From 95b51e630727a62c4840b8461ab95f6f1b2b11f7 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 15:45:27 -0500 Subject: [PATCH 125/183] VGM export: NES DPCM, part 3 dual chip --- src/engine/vgmOps.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index 5f6cdeeb..7a3fa948 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -583,7 +583,7 @@ void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write unsigned int bankAddr=bankOffset+(write.val<<14); w->writeC(0x68); w->writeC(0x6c); - w->writeC(0x07); + w->writeC(0x07|(isSecond?0x80:0x00)); w->writeC(bankAddr&0xff); w->writeC((bankAddr>>8)&0xff); w->writeC((bankAddr>>16)&0xff); @@ -2017,7 +2017,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p // force the first bank w->writeC(0x68); w->writeC(0x6c); - w->writeC(0x07); + w->writeC(0x07|(i?0x80:0x00)); w->writeC(bankOffsetNES[i]&0xff); w->writeC((bankOffsetNES[i]>>8)&0xff); w->writeC((bankOffsetNES[i]>>16)&0xff); From 06a2d10ba1110483843502c1b942d712ee399955 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 16:45:31 -0500 Subject: [PATCH 126/183] VGM export: cap streams to 44100Hz VGMPlay doesn't like higher frequencies --- src/engine/vgmOps.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index 7a3fa948..97c26c56 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -622,11 +622,14 @@ void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write } } break; - case 1: // set sample freq + case 1: { // set sample freq + int realFreq=write.val; + if (realFreq<0) realFreq=0; + if (realFreq>44100) realFreq=44100; w->writeC(0x92); w->writeC(streamID); - w->writeI(write.val); - loopFreq[streamID]=write.val; + w->writeI(realFreq); + loopFreq[streamID]=realFreq; if (pendingFreq[streamID]!=-1) { DivSample* sample=song.sample[pendingFreq[streamID]]; w->writeC(0x95); @@ -641,6 +644,7 @@ void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write pendingFreq[streamID]=-1; } break; + } case 2: // stop sample w->writeC(0x94); w->writeC(streamID); From 8fd1a9667ce5063f07878d8084837bbe5ede650e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 18:05:17 -0500 Subject: [PATCH 127/183] GUI: prepare for destructive/warning/error color h ints --- src/gui/gui.h | 3 +++ src/gui/guiConst.cpp | 3 +++ src/gui/settings.cpp | 3 +++ 3 files changed, 9 insertions(+) diff --git a/src/gui/gui.h b/src/gui/gui.h index 87c2a7fa..b6e77306 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -126,6 +126,9 @@ enum FurnaceGUIColors { GUI_COLOR_TOGGLE_ON, GUI_COLOR_EDITING, GUI_COLOR_SONG_LOOP, + GUI_COLOR_DESTRUCTIVE, + GUI_COLOR_WARNING, + GUI_COLOR_ERROR, GUI_COLOR_FILE_DIR, GUI_COLOR_FILE_SONG_NATIVE, diff --git a/src/gui/guiConst.cpp b/src/gui/guiConst.cpp index 9fcf78a3..91cb91cf 100644 --- a/src/gui/guiConst.cpp +++ b/src/gui/guiConst.cpp @@ -742,6 +742,9 @@ const FurnaceGUIColorDef guiColors[GUI_COLOR_MAX]={ D(GUI_COLOR_TOGGLE_ON,"",ImVec4(0.2f,0.6f,0.2f,1.0f)), D(GUI_COLOR_EDITING,"",ImVec4(0.2f,0.1f,0.1f,1.0f)), D(GUI_COLOR_SONG_LOOP,"",ImVec4(0.3f,0.5f,0.8f,0.4f)), + D(GUI_COLOR_DESTRUCTIVE,"",ImVec4(0.2f,0.2f,0.8f,1.0f)), + D(GUI_COLOR_WARNING,"",ImVec4(0.98f,0.87f,0.06f,1.0f)) + D(GUI_COLOR_ERROR,"",ImVec4(0.98f,0.06f,0.11f,1.0f)), D(GUI_COLOR_FILE_DIR,"",ImVec4(0.0f,1.0f,1.0f,1.0f)), D(GUI_COLOR_FILE_SONG_NATIVE,"",ImVec4(0.5f,1.0f,0.5f,1.0f)), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 5e57640d..9551d666 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -1922,6 +1922,9 @@ void FurnaceGUI::drawSettings() { UI_COLOR_CONFIG(GUI_COLOR_EDITING,"Editing"); UI_COLOR_CONFIG(GUI_COLOR_SONG_LOOP,"Song loop"); UI_COLOR_CONFIG(GUI_COLOR_PLAYBACK_STAT,"Playback status"); + UI_COLOR_CONFIG(GUI_COLOR_DESTRUCTIVE,"Destructive hint"); + UI_COLOR_CONFIG(GUI_COLOR_WARNING,"Warning hint"); + UI_COLOR_CONFIG(GUI_COLOR_ERROR,"Error hint"); ImGui::TreePop(); } if (ImGui::TreeNode("File Picker (built-in)")) { From 955de3175865a3bcd2b39f2e549cd74901b68a64 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 18:09:10 -0500 Subject: [PATCH 128/183] GitHub please disable your hot loading feature NOW if it's not gonna work, why have it? --- src/gui/guiConst.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/guiConst.cpp b/src/gui/guiConst.cpp index 91cb91cf..de003295 100644 --- a/src/gui/guiConst.cpp +++ b/src/gui/guiConst.cpp @@ -743,7 +743,7 @@ const FurnaceGUIColorDef guiColors[GUI_COLOR_MAX]={ D(GUI_COLOR_EDITING,"",ImVec4(0.2f,0.1f,0.1f,1.0f)), D(GUI_COLOR_SONG_LOOP,"",ImVec4(0.3f,0.5f,0.8f,0.4f)), D(GUI_COLOR_DESTRUCTIVE,"",ImVec4(0.2f,0.2f,0.8f,1.0f)), - D(GUI_COLOR_WARNING,"",ImVec4(0.98f,0.87f,0.06f,1.0f)) + D(GUI_COLOR_WARNING,"",ImVec4(0.98f,0.87f,0.06f,1.0f)), D(GUI_COLOR_ERROR,"",ImVec4(0.98f,0.06f,0.11f,1.0f)), D(GUI_COLOR_FILE_DIR,"",ImVec4(0.0f,1.0f,1.0f,1.0f)), From 6c36fb6e40c75869258b8dd6719611b98dd26190 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 18:17:49 -0500 Subject: [PATCH 129/183] wrong color --- src/gui/guiConst.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/guiConst.cpp b/src/gui/guiConst.cpp index de003295..40f98708 100644 --- a/src/gui/guiConst.cpp +++ b/src/gui/guiConst.cpp @@ -742,8 +742,8 @@ const FurnaceGUIColorDef guiColors[GUI_COLOR_MAX]={ D(GUI_COLOR_TOGGLE_ON,"",ImVec4(0.2f,0.6f,0.2f,1.0f)), D(GUI_COLOR_EDITING,"",ImVec4(0.2f,0.1f,0.1f,1.0f)), D(GUI_COLOR_SONG_LOOP,"",ImVec4(0.3f,0.5f,0.8f,0.4f)), - D(GUI_COLOR_DESTRUCTIVE,"",ImVec4(0.2f,0.2f,0.8f,1.0f)), - D(GUI_COLOR_WARNING,"",ImVec4(0.98f,0.87f,0.06f,1.0f)), + D(GUI_COLOR_DESTRUCTIVE,"",ImVec4(0.8f,0.3f,0.3f,1.0f)), + D(GUI_COLOR_WARNING,"",ImVec4(0.98f,0.98f,0.06f,1.0f)), D(GUI_COLOR_ERROR,"",ImVec4(0.98f,0.06f,0.11f,1.0f)), D(GUI_COLOR_FILE_DIR,"",ImVec4(0.0f,1.0f,1.0f,1.0f)), From aeeaa9ca1d516dd87322c624b52143dd8d09f95f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 19:49:45 -0500 Subject: [PATCH 130/183] GUI: change color of destructive actions --- src/gui/dataList.cpp | 6 ++++++ src/gui/gui.cpp | 1 + src/gui/gui.h | 7 ++++++- src/gui/guiConst.cpp | 2 +- src/gui/settings.cpp | 29 +++++++++++++++++++++++++++++ src/gui/subSongs.cpp | 2 ++ 6 files changed, 45 insertions(+), 2 deletions(-) diff --git a/src/gui/dataList.cpp b/src/gui/dataList.cpp index 2ccbca94..77084e06 100644 --- a/src/gui/dataList.cpp +++ b/src/gui/dataList.cpp @@ -693,6 +693,7 @@ void FurnaceGUI::drawInsList(bool asChild) { } } ImGui::SameLine(); + pushDestColor(); if (ImGui::Button(ICON_FA_TIMES "##InsDelete")) { if (settings.unifiedDataView) { switch (lastAssetType) { @@ -710,6 +711,7 @@ void FurnaceGUI::drawInsList(bool asChild) { doAction(GUI_ACTION_INS_LIST_DELETE); } } + popDestColor(); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Delete"); } @@ -930,9 +932,11 @@ void FurnaceGUI::drawWaveList(bool asChild) { } } ImGui::SameLine(); + pushDestColor(); if (ImGui::Button(ICON_FA_TIMES "##WaveDelete")) { doAction(GUI_ACTION_WAVE_LIST_DELETE); } + popDestColor(); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Delete"); } @@ -1070,9 +1074,11 @@ void FurnaceGUI::drawSampleList(bool asChild) { } } ImGui::SameLine(); + pushDestColor(); if (ImGui::Button(ICON_FA_TIMES "##SampleDelete")) { doAction(GUI_ACTION_SAMPLE_LIST_DELETE); } + popDestColor(); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Delete"); } diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index a51f9ab8..4edaeab2 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6575,6 +6575,7 @@ FurnaceGUI::FurnaceGUI(): portrait(false), injectBackUp(false), mobileMenuOpen(false), + warnColorPushed(false), wantCaptureKeyboard(false), oldWantCaptureKeyboard(false), displayMacroMenu(false), diff --git a/src/gui/gui.h b/src/gui/gui.h index b6e77306..77199a6c 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1299,7 +1299,7 @@ class FurnaceGUI { bool quit, warnQuit, willCommit, edit, modified, displayError, displayExporting, vgmExportLoop, zsmExportLoop, vgmExportPatternHints; bool vgmExportDirectStream, displayInsTypeList; - bool portrait, injectBackUp, mobileMenuOpen; + bool portrait, injectBackUp, mobileMenuOpen, warnColorPushed; bool wantCaptureKeyboard, oldWantCaptureKeyboard, displayMacroMenu; bool displayNew, fullScreen, preserveChanPos, wantScrollList, noteInputPoly; bool displayPendingIns, pendingInsSingle, displayPendingRawSample, snesFilterHex, modTableHex, displayEditString; @@ -2084,6 +2084,11 @@ class FurnaceGUI { void pushAccentColors(const ImVec4& one, const ImVec4& two, const ImVec4& border, const ImVec4& borderShadow); void popAccentColors(); + void pushDestColor(); + void popDestColor(); + void pushWarningColor(bool warnCond, bool errorCond=false); + void popWarningColor(); + float calcBPM(const DivGroovePattern& speeds, float hz, int vN, int vD); void patternRow(int i, bool isPlaying, float lineHeight, int chans, int ord, const DivPattern** patCache, bool inhibitSel); diff --git a/src/gui/guiConst.cpp b/src/gui/guiConst.cpp index 40f98708..25364d2d 100644 --- a/src/gui/guiConst.cpp +++ b/src/gui/guiConst.cpp @@ -742,7 +742,7 @@ const FurnaceGUIColorDef guiColors[GUI_COLOR_MAX]={ D(GUI_COLOR_TOGGLE_ON,"",ImVec4(0.2f,0.6f,0.2f,1.0f)), D(GUI_COLOR_EDITING,"",ImVec4(0.2f,0.1f,0.1f,1.0f)), D(GUI_COLOR_SONG_LOOP,"",ImVec4(0.3f,0.5f,0.8f,0.4f)), - D(GUI_COLOR_DESTRUCTIVE,"",ImVec4(0.8f,0.3f,0.3f,1.0f)), + D(GUI_COLOR_DESTRUCTIVE,"",ImVec4(1.0f,0.2f,0.2f,1.0f)), D(GUI_COLOR_WARNING,"",ImVec4(0.98f,0.98f,0.06f,1.0f)), D(GUI_COLOR_ERROR,"",ImVec4(0.98f,0.06f,0.11f,1.0f)), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 9551d666..33a6c5c6 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -3495,6 +3495,35 @@ void FurnaceGUI::popAccentColors() { ImGui::PopStyleColor(24); } +void FurnaceGUI::pushDestColor() { + pushAccentColors(uiColors[GUI_COLOR_DESTRUCTIVE],uiColors[GUI_COLOR_DESTRUCTIVE],uiColors[GUI_COLOR_DESTRUCTIVE],ImVec4(0.0f,0.0f,0.0f,0.0f)); +} + +void FurnaceGUI::popDestColor() { + popAccentColors(); +} + +void FurnaceGUI::pushWarningColor(bool warnCond, bool errorCond) { + if (warnColorPushed) { + logE("warnColorPushed"); + abort(); + } + if (errorCond) { + pushAccentColors(uiColors[GUI_COLOR_ERROR],uiColors[GUI_COLOR_ERROR],uiColors[GUI_COLOR_ERROR],ImVec4(0.0f,0.0f,0.0f,0.0f)); + warnColorPushed=true; + } else if (warnCond) { + pushAccentColors(uiColors[GUI_COLOR_WARNING],uiColors[GUI_COLOR_WARNING],uiColors[GUI_COLOR_WARNING],ImVec4(0.0f,0.0f,0.0f,0.0f)); + warnColorPushed=true; + } +} + +void FurnaceGUI::popWarningColor() { + if (warnColorPushed) { + popAccentColors(); + warnColorPushed=false; + } +} + #define IGFD_FileStyleByExtension IGFD_FileStyleByExtention #ifdef _WIN32 diff --git a/src/gui/subSongs.cpp b/src/gui/subSongs.cpp index c0056b72..86fb2cb3 100644 --- a/src/gui/subSongs.cpp +++ b/src/gui/subSongs.cpp @@ -92,6 +92,7 @@ void FurnaceGUI::drawSubSongs(bool asChild) { ImGui::SetTooltip("Add"); } ImGui::SameLine(); + pushDestColor(); if (ImGui::Button(ICON_FA_MINUS "##SubSongDel")) { if (e->song.subsong.size()<=1) { showError("this is the only subsong!"); @@ -99,6 +100,7 @@ void FurnaceGUI::drawSubSongs(bool asChild) { showWarning("are you sure you want to remove this subsong?",GUI_WARN_SUBSONG_DEL); } } + popDestColor(); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Remove"); } From 937c3f1c27925a3565db7ceafc4838a777edd08c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 19:52:07 -0500 Subject: [PATCH 131/183] GUI: move delete button to end in sample list --- src/gui/dataList.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/gui/dataList.cpp b/src/gui/dataList.cpp index 77084e06..b9c1e11a 100644 --- a/src/gui/dataList.cpp +++ b/src/gui/dataList.cpp @@ -1074,15 +1074,6 @@ void FurnaceGUI::drawSampleList(bool asChild) { } } ImGui::SameLine(); - pushDestColor(); - if (ImGui::Button(ICON_FA_TIMES "##SampleDelete")) { - doAction(GUI_ACTION_SAMPLE_LIST_DELETE); - } - popDestColor(); - if (ImGui::IsItemHovered()) { - ImGui::SetTooltip("Delete"); - } - ImGui::SameLine(); if (ImGui::Button(ICON_FA_VOLUME_UP "##PreviewSampleL")) { doAction(GUI_ACTION_SAMPLE_LIST_PREVIEW); } @@ -1096,6 +1087,15 @@ void FurnaceGUI::drawSampleList(bool asChild) { if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Stop preview"); } + ImGui::SameLine(); + pushDestColor(); + if (ImGui::Button(ICON_FA_TIMES "##SampleDelete")) { + doAction(GUI_ACTION_SAMPLE_LIST_DELETE); + } + popDestColor(); + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("Delete"); + } ImGui::Separator(); if (ImGui::BeginTable("SampleListScroll",1,ImGuiTableFlags_ScrollY)) { actualSampleList(); From 7b184fe321215573ad78b523c0659bb761560d9f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 22 Jun 2023 20:03:39 -0500 Subject: [PATCH 132/183] GUI: prepare for sample warnings --- src/gui/sampleEdit.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 5d2e1d9f..4f38044b 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -166,6 +166,10 @@ void FurnaceGUI::drawSampleEdit() { ImGui::Separator(); + // TODO + String warnLoop, warnLoopType, warnLoopPos; + String warnLength; + bool isChipVisible[DIV_MAX_CHIPS]; bool isTypeVisible[DIV_MAX_SAMPLE_TYPE]; bool isMemVisible[DIV_MAX_SAMPLE_TYPE][DIV_MAX_CHIPS]; From d0871fd3d95402360e3f55073f5b29664bd2bf33 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Mon, 19 Jun 2023 20:22:55 -0700 Subject: [PATCH 133/183] Initial "concepts and terms" doc. --- doc/1-intro/README.md | 4 +++- doc/1-intro/concepts.md | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 doc/1-intro/concepts.md diff --git a/doc/1-intro/README.md b/doc/1-intro/README.md index c21ad355..66e74979 100644 --- a/doc/1-intro/README.md +++ b/doc/1-intro/README.md @@ -6,13 +6,15 @@ it has a large selection of features and sound chips. from the NES, SNES and Gen every chip is emulated using many emulation cores, therefore the sound that Furnace produces is authentic to that of real hardware. + + ## hexadecimal Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [this guide](hex.md) for a crash course. ## interface -Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. +Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. even experienced tracker musicians might benefit from a quick review of [tracker concepts and terms](concepts.md) before using Furnace. due to its nature of being feature-packed, it may be technical and somewhat difficult to get around. therefore we added a basic mode, which hides several advanced features. diff --git a/doc/1-intro/concepts.md b/doc/1-intro/concepts.md new file mode 100644 index 00000000..a5282b51 --- /dev/null +++ b/doc/1-intro/concepts.md @@ -0,0 +1,36 @@ +# concepts and terms + +- A **module** is a file for a tracker that contains at least one **song**. +- Each Furnace module involves at least one **[chip](../7-systems/README.md)**, an emulation of a specific audio processor. + +## tracking + +The **[pattern view](../3-pattern/README.md)** is like a spreadsheet that displays the following: +- Each labeled column represents a **channel** of sound provided by the chips in use. +- Each **note** starts a sound playing. Within a channel, only one note can play at a time. +- Each note is assigned an **[instrument](../4-instrument/README.md)** which describes what it will sound like. +- An **effect** is a command that changes some aspect of playback. It can alter note pitch, volume, timing, and more. +- An instrument **macro** is an automated sequence of effects that applies to every note of that instrument. + +## structure + +The **order list** is a smaller spreadsheet showing the overall song structure. +- A song is made up of a list of **orders**. +- An **order** is a set of numbered **patterns** used for each channel. +- Each channel has its own unique list of patterns. +- Each pattern contains note and effect data for that channel only. +- Patterns may be used multiple times in the order list. Changing a pattern's data in one order will affect the same pattern used in other orders. + +## time + +- Each pattern is made of the same number of **rows** as seen in the tracker view. +- During playback, Each row lasts a number of **ticks** determined by its **speed** value. +- A tick is the smallest measure of time to which all note, effect, and macro times are quantized. + +## sound + +Different chips have different capabilities. Even within the same chip, each channel may have its own ways of making sound. +- Some channels use one or more waveform **generators** (sine, square, noise...) to build up a sound. +- Of special note are **[FM (frequency modulation)](../4-instrument/fm.md)** channels, which use a number of generators called **operators** that can interact to make very complex sounds. +- Some channels use **[samples](../6-sample/README.md)** – recordings of sounds, often with defined loop points to allow a note to sustain. +- Some channels use **[wavetables](../5-wave/README.md)**, which are like very short samples of fixed length that automatically loop. From 5af69aafba3533f2a483249cb9467f3eb5525101 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 23 Jun 2023 18:30:48 -0500 Subject: [PATCH 134/183] Android: warnings are errors --- android/app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 483ea52c..3f3fc8bd 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -19,7 +19,7 @@ android { versionName "0.6pre5" externalNativeBuild { cmake { - arguments "-DANDROID_APP_PLATFORM=android-21", "-DANDROID_STL=c++_static" + arguments "-DANDROID_APP_PLATFORM=android-21", "-DANDROID_STL=c++_static", "-DWARNINGS_ARE_ERRORS=ON" // abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' abiFilters 'arm64-v8a' } From f15bc78a96c89713942a974bd5c51a47c83a07d6 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 23 Jun 2023 18:31:05 -0500 Subject: [PATCH 135/183] GUI: sample editor warnings, part 1 --- src/gui/sampleEdit.cpp | 104 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 96 insertions(+), 8 deletions(-) diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 4f38044b..350ea373 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -43,6 +43,12 @@ const double timeMultipliers[13]={ #define CENTER_TEXT(text) \ ImGui::SetCursorPosX(ImGui::GetCursorPosX()+0.5*(ImGui::GetContentRegionAvail().x-ImGui::CalcTextSize(text).x)); +#define SAMPLE_WARN(_x,_text) \ + if (_x.find(_text)==String::npos) { \ + if (!_x.empty()) _x+='\n'; \ + _x+=_text; \ + } + void FurnaceGUI::drawSampleEdit() { if (nextWindow==GUI_WINDOW_SAMPLE_EDIT) { sampleEditOpen=true; @@ -166,8 +172,7 @@ void FurnaceGUI::drawSampleEdit() { ImGui::Separator(); - // TODO - String warnLoop, warnLoopType, warnLoopPos; + String warnLoop, warnLoopMode, warnLoopPos; String warnLength; bool isChipVisible[DIV_MAX_CHIPS]; @@ -178,7 +183,74 @@ void FurnaceGUI::drawSampleEdit() { memset(isTypeVisible,0,DIV_MAX_SAMPLE_TYPE*sizeof(bool)); memset(isMemVisible,0,DIV_MAX_CHIPS*DIV_MAX_SAMPLE_TYPE*sizeof(bool)); memset(isMemWarning,0,DIV_MAX_CHIPS*DIV_MAX_SAMPLE_TYPE*sizeof(bool)); + for (int i=0; isong.systemLen; i++) { + // warnings + switch (e->song.system[i]) { + case DIV_SYSTEM_SNES: + if (sample->loop) { + if (sample->loopStart&15 || sample->loopEnd&15) { + SAMPLE_WARN(warnLoopPos,"SNES: loop must be a multiple of 16"); + } + } + break; + case DIV_SYSTEM_QSOUND: + if (sample->loop) { + if (sample->loopEnd-sample->loopStart>32767) { + SAMPLE_WARN(warnLoopPos,"QSound: loop cannot be longer than 32767 samples"); + } + } + break; + case DIV_SYSTEM_NES: + if (sample->loop) { + if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples-1)) { + SAMPLE_WARN(warnLoopPos,"NES: loop point ignored on DPCM (may only loop entire sample)"); + } + } + break; + case DIV_SYSTEM_X1_010: + if (sample->loop) { + SAMPLE_WARN(warnLoop,"X1-010: samples can't loop"); + } + break; + case DIV_SYSTEM_GA20: + if (sample->loop) { + SAMPLE_WARN(warnLoop,"GA20: samples can't loop"); + } + break; + case DIV_SYSTEM_YM2608: + case DIV_SYSTEM_YM2608_EXT: + case DIV_SYSTEM_YM2608_CSM: + if (sample->loop) { + if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples-1)) { + SAMPLE_WARN(warnLoopPos,"YM2608: loop point ignored on ADPCM-B (may only loop entire sample)"); + } + } + break; + case DIV_SYSTEM_YM2610_FULL: + case DIV_SYSTEM_YM2610_FULL_EXT: + case DIV_SYSTEM_YM2610_CSM: + case DIV_SYSTEM_YM2610B: + case DIV_SYSTEM_YM2610B_EXT: + if (sample->loop) { + SAMPLE_WARN(warnLoop,"YM2610: ADPCM-A samples can't loop"); + if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples-1)) { + SAMPLE_WARN(warnLoopPos,"YM2608: loop point ignored on ADPCM-B (may only loop entire sample)"); + } + } + break; + case DIV_SYSTEM_AMIGA: + if (sample->loop) { + if (sample->loopStart&1 || sample->loopEnd&1) { + SAMPLE_WARN(warnLoopPos,"Amiga: loop must be a multiple of 2"); + } + } + break; + default: + break; + } + + // chips grid DivDispatch* dispatch=e->getDispatch(i); if (dispatch==NULL) continue; @@ -190,6 +262,7 @@ void FurnaceGUI::drawSampleEdit() { if (!dispatch->isSampleLoaded(j,curSample)) isMemWarning[j][i]=true; } } + int selColumns=1; for (int i=0; iloop); + pushWarningColor(!warnLoop.empty()); if (ImGui::Checkbox("Loop",&doLoop)) { MARK_MODIFIED if (doLoop) { sample->loop=true; @@ -242,8 +316,12 @@ void FurnaceGUI::drawSampleEdit() { e->renderSamplesP(); } } - if (ImGui::IsItemHovered() && sample->depth==DIV_SAMPLE_DEPTH_BRR) { - ImGui::SetTooltip("changing the loop in a BRR sample may result in glitches!"); + popWarningColor(); + if (ImGui::IsItemHovered() && (!warnLoop.empty() || sample->depth==DIV_SAMPLE_DEPTH_BRR)) { + if (sample->depth==DIV_SAMPLE_DEPTH_BRR) { + SAMPLE_WARN(warnLoop,"changing the loop in a BRR sample may result in glitches!"); + } + ImGui::SetTooltip("%s",warnLoop.c_str()); } if (selColumns>1) { @@ -421,6 +499,7 @@ void FurnaceGUI::drawSampleEdit() { keepLoopAlive=false; ImGui::Text("Mode"); ImGui::SameLine(); + pushWarningColor(!warnLoopMode.empty()); ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x); if (ImGui::BeginCombo("##SampleLoopMode",loopType.c_str())) { for (int i=0; idepth==DIV_SAMPLE_DEPTH_BRR) { - ImGui::SetTooltip("changing the loop in a BRR sample may result in glitches!"); + if (ImGui::IsItemHovered() && (!warnLoopPos.empty() || sample->depth==DIV_SAMPLE_DEPTH_BRR)) { + if (sample->depth==DIV_SAMPLE_DEPTH_BRR) { + SAMPLE_WARN(warnLoopPos,"changing the loop in a BRR sample may result in glitches!"); + } + ImGui::SetTooltip("%s",warnLoopPos.c_str()); } ImGui::Text("End"); @@ -476,9 +560,13 @@ void FurnaceGUI::drawSampleEdit() { if (ImGui::IsItemActive()) { keepLoopAlive=true; } - if (ImGui::IsItemHovered() && sample->depth==DIV_SAMPLE_DEPTH_BRR) { - ImGui::SetTooltip("changing the loop in a BRR sample may result in glitches!"); + if (ImGui::IsItemHovered() && (!warnLoopPos.empty() || sample->depth==DIV_SAMPLE_DEPTH_BRR)) { + if (sample->depth==DIV_SAMPLE_DEPTH_BRR) { + SAMPLE_WARN(warnLoopPos,"changing the loop in a BRR sample may result in glitches!"); + } + ImGui::SetTooltip("%s",warnLoopPos.c_str()); } + popWarningColor(); ImGui::EndDisabled(); if (selColumns>1) { From 4748e185a78fd7f577950018967b16b217df627a Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 23 Jun 2023 18:13:37 -0700 Subject: [PATCH 136/183] Fixing something I botched. Hey, all those files I thought I clobbered! --- doc/2-interface/asset-list.md | 22 +++---- doc/2-interface/play-edit-controls.md | 26 ++++---- doc/2-interface/song-info.md | 32 +++++----- doc/3-pattern/effects.md | 80 ++++++++++++------------- doc/4-instrument/8930.md | 24 ++++---- doc/4-instrument/amiga.md | 16 ++--- doc/4-instrument/ay8910.md | 18 +++--- doc/4-instrument/c64.md | 52 ++++++++-------- doc/4-instrument/fm.md | 65 ++++++++++---------- doc/4-instrument/game-boy.md | 28 ++++----- doc/4-instrument/lynx.md | 14 ++--- doc/4-instrument/n163.md | 36 +++++------ doc/4-instrument/pce.md | 16 ++--- doc/4-instrument/saa.md | 16 ++--- doc/4-instrument/scc.md | 8 +-- doc/4-instrument/standard.md | 12 ++-- doc/4-instrument/tia.md | 8 +-- doc/4-instrument/vera.md | 12 ++-- doc/4-instrument/vrc6.md | 8 +-- doc/4-instrument/wonderswan.md | 8 +-- doc/4-instrument/x1_010.md | 14 ++--- doc/5-wave/README.md | 14 ++--- doc/7-systems/amiga.md | 8 +-- doc/7-systems/ay8910.md | 20 +++---- doc/7-systems/ay8930.md | 22 +++---- doc/7-systems/bubblesystem.md | 2 +- doc/7-systems/c64.md | 24 ++++---- doc/7-systems/es5506.md | 54 ++++++++--------- doc/7-systems/fds.md | 12 ++-- doc/7-systems/game-boy.md | 10 ++-- doc/7-systems/genesis.md | 30 +++++----- doc/7-systems/lynx.md | 2 +- doc/7-systems/mmc5.md | 2 +- doc/7-systems/msm5232.md | 8 +-- doc/7-systems/msm6295.md | 2 +- doc/7-systems/n163.md | 26 ++++---- doc/7-systems/namco.md | 4 +- doc/7-systems/nes.md | 20 +++---- doc/7-systems/opl.md | 52 ++++++++-------- doc/7-systems/opll.md | 36 +++++------ doc/7-systems/opz.md | 86 +++++++++++++-------------- doc/7-systems/pce.md | 10 ++-- doc/7-systems/pet.md | 2 +- doc/7-systems/pokey.md | 7 +-- doc/7-systems/qsound.md | 8 +-- doc/7-systems/saa1099.md | 6 +- doc/7-systems/scc.md | 2 +- doc/7-systems/segapcm.md | 2 +- doc/7-systems/sm8521.md | 2 +- doc/7-systems/sms.md | 2 +- doc/7-systems/snes.md | 54 ++++++++--------- doc/7-systems/soundunit.md | 38 ++++++------ doc/7-systems/t6w28.md | 2 +- doc/7-systems/tia.md | 2 +- doc/7-systems/vera.md | 4 +- doc/7-systems/vic20.md | 2 +- doc/7-systems/virtual-boy.md | 12 ++-- doc/7-systems/vrc6.md | 4 +- doc/7-systems/wonderswan.md | 10 ++-- doc/7-systems/x1-010.md | 18 +++--- doc/7-systems/ym2151.md | 66 ++++++++++---------- doc/7-systems/ym2203.md | 74 +++++++++++------------ doc/7-systems/ym2608.md | 76 +++++++++++------------ doc/7-systems/ym2610.md | 76 +++++++++++------------ doc/7-systems/ym2610b.md | 76 +++++++++++------------ doc/7-systems/ym2612.md | 62 +++++++++---------- doc/7-systems/zxbeep.md | 4 +- doc/8-advanced/channels.md | 6 +- doc/8-advanced/chanosc.md | 12 ++-- doc/8-advanced/chip-manager.md | 2 +- doc/8-advanced/compat-flags.md | 2 +- doc/8-advanced/grooves.md | 6 +- doc/8-advanced/log-viewer.md | 4 +- doc/8-advanced/mixer.md | 14 ++--- doc/8-advanced/pat-manager.md | 4 +- doc/8-advanced/piano.md | 16 ++--- 76 files changed, 816 insertions(+), 820 deletions(-) diff --git a/doc/2-interface/asset-list.md b/doc/2-interface/asset-list.md index 44c3fefa..36c14727 100644 --- a/doc/2-interface/asset-list.md +++ b/doc/2-interface/asset-list.md @@ -3,21 +3,21 @@ ![instruments window](instruments.png) Buttons from left to right: -- **Add:** Creates a new, default instrument. -- **Duplicate:** Duplicates the currently selected instrument. -- **Open:** Brings up a file dialog to load a file as a new instrument at the end of the list. -- **Save:** Brings up a file dialog to save the currently selected instrument. -- **Toggle folders/standard view:** Enables (and disables) folder view, explained below. -- **Move up:** Moves the currently selected instrument up in the list. Pattern data will automatically be adjusted to match. -- **Move down:** Same, but downward. -- **Delete:** Deletes the currently selected instrument. Pattern data will be adjusted to use the next available instrument in the list. +- **Add**: Creates a new, default instrument. +- **Duplicate**: Duplicates the currently selected instrument. +- **Open**: Brings up a file dialog to load a file as a new instrument at the end of the list. +- **Save**: Brings up a file dialog to save the currently selected instrument. +- **Toggle folders/standard view**: Enables (and disables) folder view, explained below. +- **Move up**: Moves the currently selected instrument up in the list. Pattern data will automatically be adjusted to match. +- **Move down**: Same, but downward. +- **Delete**: Deletes the currently selected instrument. Pattern data will be adjusted to use the next available instrument in the list. ## folder view ![instruments window in folder view](instruments-folder.png) In folder view, the "Move up" and "Move down buttons disappear and a new one appears: -- **New Folder:** Creates a new folder. +- **New Folder**: Creates a new folder. Instruments may be dragged from folder to folder and even rearranged within folders without changing their associated numbers. @@ -34,5 +34,5 @@ Everything from the instrument list applies here also, with one major difference ![samples window](samples.png) Everything from the wavetables list applies here also, with the addition of two buttons: -- **Preview:** Plays the selected sample at its default note. -- **Stop preview:** Stops the sample playback. +- **Preview**: Plays the selected sample at its default note. +- **Stop preview**: Stops the sample playback. diff --git a/doc/2-interface/play-edit-controls.md b/doc/2-interface/play-edit-controls.md index 0645f6d1..038c458e 100644 --- a/doc/2-interface/play-edit-controls.md +++ b/doc/2-interface/play-edit-controls.md @@ -2,19 +2,19 @@ The "Play/Edit Controls" are used to control playback and change parameters of the pattern view. -- ![](control-play.png) **Play:** Plays from cursor position. -- ![](control-stop.png) **Stop:** Stops all playback. -- ![](control-play-pattern.png) **Play from the beginning of this pattern:** Plays from the start of current pattern. -- ![](control-play-repeat.png) **Repeat from the beginning of this pattern:** Repeats current pattern from its start. -- ![](control-step.png) **Step one row:** Plays only the row at cursor position and moves down one. -- ![](control-edit.png) **Edit:** Toggles edit mode. If off, nothing can be edited in the pattern window. (Great for playing around on the keyboard!) -- ![](control-metronome.png) **Metronome:** Toggles the metronome, which only sounds during playback. -- ![](control-repeat.png) **Repeat pattern:** Toggles pattern repeat. During playback while this is on, the current pattern will play over and over instead of following the order list. -- **Poly:** Turns on polyphony for previewing notes. Toggles to **Mono** for monophony (one note at a time only). -- **Octave:** Sets current input octave. -- **Step:** Sets edit step. If this is 1, entering a note or effect will move to the next row. If this is a larger number, rows will be skipped. If this is 0, the cursor will stay in place. -- **Follow orders:** If on, the selected order in the orders window will follow the song during playback. -- **Follow pattern:** If on, the cursor will follow playback and the song will scroll by as it plays. +- ![](control-play.png) **Play**: Plays from cursor position. +- ![](control-stop.png) **Stop**: Stops all playback. +- ![](control-play-pattern.png) **Play from the beginning of this pattern**: Plays from the start of current pattern. +- ![](control-play-repeat.png) **Repeat from the beginning of this pattern**: Repeats current pattern from its start. +- ![](control-step.png) **Step one row**: Plays only the row at cursor position and moves down one. +- ![](control-edit.png) **Edit**: Toggles edit mode. If off, nothing can be edited in the pattern window. (Great for playing around on the keyboard!) +- ![](control-metronome.png) **Metronome**: Toggles the metronome, which only sounds during playback. +- ![](control-repeat.png) **Repeat pattern**: Toggles pattern repeat. During playback while this is on, the current pattern will play over and over instead of following the order list. +- **Poly**: Turns on polyphony for previewing notes. Toggles to **Mono** for monophony (one note at a time only). +- **Octave**: Sets current input octave. +- **Step**: Sets edit step. If this is 1, entering a note or effect will move to the next row. If this is a larger number, rows will be skipped. If this is 0, the cursor will stay in place. +- **Follow orders**: If on, the selected order in the orders window will follow the song during playback. +- **Follow pattern**: If on, the cursor will follow playback and the song will scroll by as it plays. ## layouts diff --git a/doc/2-interface/song-info.md b/doc/2-interface/song-info.md index 1a4cd03e..5ba682a2 100644 --- a/doc/2-interface/song-info.md +++ b/doc/2-interface/song-info.md @@ -1,49 +1,49 @@ # song info -- "Name" is for the track's title. -- "Author" is used to list the contributors to a song. If the song is a cover of someone else's track, it's customary to list their name first, followed by `[cv. YourName]`. -- "Album" can be used to store the associated album name, the name of the game the song is from, or whatever. -- "System" is for the game or computer the track is designed for. This is automatically set when creating a new tune, but it can be changed to anything one wants. The "Auto" button will provide a guess based on the chips in use. +- **Name**: The track's title. +- **Author**: List of contributors to a song. If the song is a cover of someone else's track, it's customary to list their name first, followed by `[cv. YourName]`. +- **Album**: The associated album name, the name of the game the song is from, or whatever. +- **System**: The game console or computer the track is designed for. This is automatically set when creating a new tune, but it can be changed to anything one wants. The **Auto** button will provide a guess based on the chips in use. All of this metadata will be included in a VGM export. This isn't the case for a WAV export, however. -"Tuning (A-4)" allows one to set tuning based on the note A-4, which should be 440 in most cases. Opening an Amiga MOD will set it to 436 for hardware compatibility. +**Tuning (A-4)**: Set tuning based on the note A-4, which should be 440 in most cases. Opening an Amiga MOD will set it to 436 for hardware compatibility. # subsongs This window allows one to create **subsongs** – multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. - The drop-down box selects the current subsong. -- The `+` button adds a new subsong. -- The `−` button permanently deletes the current subsong (unless it's the only one). -- "Name" sets the title of the current subsong. +- The **`+`** button adds a new subsong. +- The **`−`** button permanently deletes the current subsong (unless it's the only one). +- **Name**: Title of the current subsong. - The box at the bottom can store any arbitrary text, like a separate "Comments" box for the current subsong. # speed There are multiple ways to set the tempo of a song. -**Tick Rate** sets the frequency of ticks per second, the rate at which notes and effects are processed. -- All values are allowed for all chips, but most chips have hardware limitations that mean they should stay at either 60 (approximately NTSC) or 50 (exactly PAL). +**Tick Rate**: The frequency of ticks per second, thus the rate at which notes and effects are processed. +- All values are allowed for all chips, though most chips have hardware limitations that mean they should stay at either 60 (approximately NTSC) or 50 (exactly PAL). - Clicking the Tick Rate button switches to a more traditional **Base Tempo** BPM setting. -**Speed** sets the number of ticks per row. +**Speed**: The number of ticks per row. - Clicking the "Speed" button changes to more complex modes covered in the [grooves] page. -**Virtual Tempo** simulates any arbitrary tempo without altering the tick rate. It does this by adding or skipping ticks to approximate the tempo. The two numbers represent a ratio applied to the actual tick rate. Example: +**Virtual Tempo**: Simulates any arbitrary tempo without altering the tick rate. It does this by adding or skipping ticks to approximate the tempo. The two numbers represent a ratio applied to the actual tick rate. Example: - Set tick rate to 150 BPM (60 Hz) and speed to 6. - Set the first virtual tempo number (numerator) to 200. - Set the second virtual tempo number (denominator) to 150. - The track will play at 200 BPM. - The ratio doesn't have to match BPM numbers. Set the numerator to 4 and the denominator to 5, and the virtual BPM becomes 150 × 4/5 = 120. -**Divider** changes the effective tick rate. A tick rate of 60Hz and a divisor of 6 will result in ticks lasting a tenth of a second each! +**Divider**: Changes the effective tick rate. A tick rate of 60Hz and a divisor of 6 will result in ticks lasting a tenth of a second each! -**Highlight** sets the pattern row highlights: +**Highlight**: Sets the pattern row highlights: - The first value represents the number of rows per beat. - The second value represents the number of rows per measure. - These don't have to line up with the music's actual beats and measures. Set them as preferred for tracking. _Note:_ These values are used for the metronome and calculating BPM. -**Pattern Length** is the length of each pattern in rows. This affects all patterns in the song, and every pattern must be the same length. (Individual patterns can be cut short by `0Bxx`, `0Dxx`, and `FFxx` commands.) +**Pattern Length**: The length of each pattern in rows. This affects all patterns in the song, and every pattern must be the same length. (Individual patterns can be cut short by `0Bxx`, `0Dxx`, and `FFxx` commands.) -**Song Length** shows how many orders are in the order list. Decreasing it will hide the orders at the bottom. Increasing it will restore those orders; increasing it further will add new orders of all `00` patterns. +**Song Length**: How many orders are in the order list. Decreasing it will hide the orders at the bottom. Increasing it will restore those orders; increasing it further will add new orders of all `00` patterns. diff --git a/doc/3-pattern/effects.md b/doc/3-pattern/effects.md index 54d18000..c7a54fd4 100644 --- a/doc/3-pattern/effects.md +++ b/doc/3-pattern/effects.md @@ -3,74 +3,74 @@ most of the effect numbers are from ProTracker/FastTracker 2. however, effects are continuous, which means you only need to type it once and then stop it with an effect value of `00`. -- `00xy`: arpeggio. after using this effect the channel will rapidly switch between `note`, `note+x` and `note+y`. -- `01xx`: slide up. -- `02xx`: slide down. -- `03xx`: note portamento. +- **`00xy`**: arpeggio. after using this effect the channel will rapidly switch between `note`, `note+x` and `note+y`. +- **`01xx`**: slide up. +- **`02xx`**: slide down. +- **`03xx`**: note portamento. - a note must be present for this effect to work. -- `04xy`: vibrato. `x` is the speed, while `y` is the depth. +- **`04xy`**: vibrato. `x` is the speed, while `y` is the depth. - maximum vibrato depth is ±1 semitone. -- `07xy`: tremolo. `x` is the speed, while `y` is the depth. +- **`07xy`**: tremolo. `x` is the speed, while `y` is the depth. - maximum tremolo depth is -60 volume steps. -- `08xy`: set panning. `x` is the left channel and `y` is the right one. +- **`08xy`**: set panning. `x` is the left channel and `y` is the right one. - not all chips support this effect. -- `80xx`: set panning (linear). this effect behaves more like other trackers: +- **`80xx`**: set panning (linear). this effect behaves more like other trackers: - `00` is left. - `80` is center. - `FF` is right. - not all chips support this effect. -- `81xx`: set volume of left channel (from `00` to `FF`). +- **`81xx`**: set volume of left channel (from `00` to `FF`). - not all chips support this effect. -- `82xx`: set volume of right channel (from `00` to `FF`). +- **`82xx`**: set volume of right channel (from `00` to `FF`). - not all chips support this effect. -- `09xx`: set speed 1. -- `0Axy`: volume slide. +- **`09xx`**: set speed 1. +- **`0Axy`**: volume slide. - if `x` is 0 then this is a slide down. - if `y` is 0 then this is a slide up. -- `0Bxx`: jump to pattern. -- `0Cxx`: retrigger note every `xx` ticks. +- **`0Bxx`**: jump to pattern. +- **`0Cxx`**: retrigger note every `xx` ticks. - this effect is not continuous. -- `0Dxx`: jump to next pattern. -- `0Fxx`: set speed 2. +- **`0Dxx`**: jump to next pattern. +- **`0Fxx`**: set speed 2. -- `9xxx`: set sample position to `xxx`\*0x100. +- **`9xxx`**: set sample position to `xxx`\*0x100. - not all chips support this effect. -- `Cxxx`: change song Hz. +- **`Cxxx`**: change song Hz. - `xxx` may be from `000` to `3ff`. -- `E0xx`: set arpeggio tick. +- **`E0xx`**: set arpeggio tick. - this sets the number of ticks between arpeggio values. -- `E1xy`: note slide up. `x` is the speed, while `y` is how many semitones to slide up. -- `E2xy`: note slide down. `x` is the speed, while `y` is how many semitones to slide down. -- `E3xx`: set vibrato direction. `xx` may be one of the following: +- **`E1xy`**: note slide up. `x` is the speed, while `y` is how many semitones to slide up. +- **`E2xy`**: note slide down. `x` is the speed, while `y` is how many semitones to slide down. +- **`E3xx`**: set vibrato direction. `xx` may be one of the following: - `00`: up and down. - `01`: up only. - `02`: down only. -- `E4xx`: set vibrato range in 1/16th of a semitone. -- `E5xx`: set pitch. `80` is 0 cents. +- **`E4xx`**: set vibrato range in 1/16th of a semitone. +- **`E5xx`**: set pitch. `80` is 0 cents. - range is ±1 semitone. -- `EAxx`: toggle legato. -- `EBxx`: set sample bank. +- **`EAxx`**: toggle legato. +- **`EBxx`**: set sample bank. - does not apply on Amiga. -- `ECxx`: note off after `xx` ticks. -- `EDxx`: delay note by `xx` ticks. -- `EExx`: send external command. +- **`ECxx`**: note off after `xx` ticks. +- **`EDxx`**: delay note by `xx` ticks. +- **`EExx`**: send external command. - this effect is currently incomplete. -- `F0xx`: change song Hz by BPM value. -- `F1xx`: single tick slide up. -- `F2xx`: single tick slide down. -- `F3xx`: fine volume slide up (64x slower than `0Axy`). -- `F4xx`: fine volume slide down (64x slower than `0Axy`). -- `F5xx`: disable macro. +- **`F0xx`**: change song Hz by BPM value. +- **`F1xx`**: single tick slide up. +- **`F2xx`**: single tick slide down. +- **`F3xx`**: fine volume slide up (64x slower than `0Axy`). +- **`F4xx`**: fine volume slide down (64x slower than `0Axy`). +- **`F5xx`**: disable macro. - see macro table at the end of this document for possible values. -- `F6xx`: enable macro. -- `F8xx`: single tick volume slide up. -- `F9xx`: single tick volume slide down. -- `FAxy`: fast volume slide (4x faster than `0Axy`). +- **`F6xx`**: enable macro. +- **`F8xx`**: single tick volume slide up. +- **`F9xx`**: single tick volume slide down. +- **`FAxy`**: fast volume slide (4x faster than `0Axy`). - if `x` is 0 then this is a slide down. - if `y` is 0 then this is a slide up. -- `FFxx`: end of song/stop playback. +- **`FFxx`**: end of song/stop playback. additionally each chip has its own effects. [click here for more details](../7-systems/README.md). diff --git a/doc/4-instrument/8930.md b/doc/4-instrument/8930.md index 2d671f6d..ecb1e8ed 100644 --- a/doc/4-instrument/8930.md +++ b/doc/4-instrument/8930.md @@ -2,15 +2,15 @@ AY8930 instrument editor consists of these macros. -- [Volume] - volume sequence -- [Arpeggio]- pitch in half-steps -- [Noise Freq] - AY8930 noise generator frequency sequence -- [Waveform] - selector of sound type: pulse wave tone, noise or envelope generator -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform -- [Duty] - duty cycle of a pulse wave sequence -- [Envelope] - allows shaping an envelope -- [AutoEnv Num] - sets the envelope to the channel's frequency multiplied by numerator -- [AutoEnv Den] - sets the envelope to the channel's frequency divided by denominator -- [Noise AND Mask] - alters the shape/frequency of the noise generator, allowing to produce various interesting sound effects and even PWM phasing -- [Noise OR Mask] - see above +- **Volume**: volume sequence +- **Arpeggio**: pitch in half-steps +- **Noise Freq**: AY8930 noise generator frequency sequence +- **Waveform**: selector of sound type: pulse wave tone, noise or envelope generator +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform +- **Duty**: duty cycle of a pulse wave sequence +- **Envelope**: allows shaping an envelope +- **AutoEnv Num**: sets the envelope to the channel's frequency multiplied by numerator +- **AutoEnv Den**: sets the envelope to the channel's frequency divided by denominator +- **Noise AND Mask**: alters the shape/frequency of the noise generator, allowing to produce various interesting sound effects and even PWM phasing +- **Noise OR Mask**: see above diff --git a/doc/4-instrument/amiga.md b/doc/4-instrument/amiga.md index 6b8d81cd..fc76c866 100644 --- a/doc/4-instrument/amiga.md +++ b/doc/4-instrument/amiga.md @@ -4,14 +4,14 @@ The PCM instrument editor consists of a sample selector and several macros: # Amiga/sample -- [Initial sample] - specifies which sample should be assigned to the instrument, or the first one in the sequence +- **Initial sample**: specifies which sample should be assigned to the instrument, or the first one in the sequence # Macros -- [Volume] - volume sequence WARNING: it works only on Amiga system, as of version 0.5.5!! -- [Arpeggio] - pitch sequence -- [Waveform] - sample sequence -- [Panning (left)] - output level for left channel -- [Panning (right)] - output level for right channel -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform \ No newline at end of file +- **Volume**: volume sequence WARNING: it works only on Amiga system, as of version 0.5.5!! +- **Arpeggio**: pitch sequence +- **Waveform**: sample sequence +- **Panning (left)**: output level for left channel +- **Panning (right)**: output level for right channel +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform \ No newline at end of file diff --git a/doc/4-instrument/ay8910.md b/doc/4-instrument/ay8910.md index c5ec5e98..c4a0a815 100644 --- a/doc/4-instrument/ay8910.md +++ b/doc/4-instrument/ay8910.md @@ -2,12 +2,12 @@ The AY-3-8910 instrument editor consists of these macros. -- [Volume] - volume levels sequence -- [Arpeggio]- pitch sequence -- [Noise Freq] - AY-3-8910 noise generator frequency sequence -- [Waveform] - selector of sound type - square wave tone, noise or envelope generator -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform -- [Envelope] - allows shaping an envelope -- [AutoEnv Num] - sets the envelope to the channel's frequency multiplied by numerator -- [AutoEnv Den] - sets the envelope to the channel's frequency multiplied by denominator +- **Volume**: volume levels sequence +- **Arpeggio**: pitch sequence +- **Noise Freq**: AY-3-8910 noise generator frequency sequence +- **Waveform**: selector of sound type - square wave tone, noise or envelope generator +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform +- **Envelope**: allows shaping an envelope +- **AutoEnv Num**: sets the envelope to the channel's frequency multiplied by numerator +- **AutoEnv Den**: sets the envelope to the channel's frequency multiplied by denominator diff --git a/doc/4-instrument/c64.md b/doc/4-instrument/c64.md index 2f3a9737..5dd20408 100644 --- a/doc/4-instrument/c64.md +++ b/doc/4-instrument/c64.md @@ -4,32 +4,32 @@ The C64 instrument editor consists of two tabs: "C64" to control various paramet ## C64 -- [Waveform] - allows selecting a waveform. NOTE: more than one waveform can be selected at once, logical AND mix of waves will be produced, with an exception of a noise waveform, it can't be mixed. -- [Attack] - determines the rising time for the sound. The bigger the value, the slower the attack. (0-15 range) -- [Decay]- Determines the diminishing time for the sound. The higher the value, the longer the decay. It's the initial amplitude decay rate. (0-15 range) -- [Sustain] - Sets the volume level at which the sound stops decaying and holds steady. (0-15 range) -- [Release] - Determines the rate at which the sound disappears after KEY-OFF. The higher the value, the longer the release. (0-15 range) -- [Ring Modulation] - enables the ring modulation affecting the instrument. -- [Duty] - specifies the width of a pulse wave. (0-4095 range) -- [Oscillator Sync] - enables the oscillator hard sync. As one oscillator finishes a cycle, it resets the period of another oscillator, forcing the latter to have the same base frequency. This can produce a harmonically rich sound, the timbre of which can be altered by varying the synced oscillator's frequency. -- [Enable filter] - enables analogue filter affecting the instrument -- [Initialize filter] - initializes the filter with the specified parameters: -- [Cutoff] - defines the "intensity" of a filter, to put in in layman terms (0-2047 range) -- [Resonance] - defines an additional controlled amplification of that cutoff frequency, creating a secondary peak forms and colors the original pitch. (0-15 range) -- [Filter mode] - determined the filter mode NOTE: SID's filter is multi-mode, you can mix different modes together (like low and high-pass filters at once) CH3-OFF disables the channel 3, for no reason whatsoever lmao -- [Volume Macro is Cutoff Macro] - turns a volume macro in a macros tab into a filter cutoff macro. -- [Absolute Cutoff Macro] - changes the behaviour of a cutoff macro from the old-style, compatible to much more define-able. -- [Absolute Duty Macro] - changes the behaviour of a duty cycle macro from the old-style, compatible to much more definable. -- [Don't test/gate before new note] - Don't reset the envelope to zero when a new note starts. (Read "Test/Gate" below for more info.) +- **Waveform**: allows selecting a waveform. NOTE: more than one waveform can be selected at once, logical AND mix of waves will be produced, with an exception of a noise waveform, it can't be mixed. +- **Attack**: determines the rising time for the sound. The bigger the value, the slower the attack. (0-15 range) +- **Decay**: Determines the diminishing time for the sound. The higher the value, the longer the decay. It's the initial amplitude decay rate. (0-15 range) +- **Sustain**: Sets the volume level at which the sound stops decaying and holds steady. (0-15 range) +- **Release**: Determines the rate at which the sound disappears after KEY-OFF. The higher the value, the longer the release. (0-15 range) +- **Ring Modulation**: enables the ring modulation affecting the instrument. +- **Duty**: specifies the width of a pulse wave. (0-4095 range) +- **Oscillator Sync**: enables the oscillator hard sync. As one oscillator finishes a cycle, it resets the period of another oscillator, forcing the latter to have the same base frequency. This can produce a harmonically rich sound, the timbre of which can be altered by varying the synced oscillator's frequency. +- **Enable filter**: enables analogue filter affecting the instrument +- **Initialize filter**: initializes the filter with the specified parameters: +- **Cutoff**: defines the "intensity" of a filter, to put in in layman terms (0-2047 range) +- **Resonance**: defines an additional controlled amplification of that cutoff frequency, creating a secondary peak forms and colors the original pitch. (0-15 range) +- **Filter mode**: determined the filter mode NOTE: SID's filter is multi-mode, you can mix different modes together (like low and high-pass filters at once) CH3-OFF disables the channel 3, for no reason whatsoever lmao +- **Volume Macro is Cutoff Macro**: turns a volume macro in a macros tab into a filter cutoff macro. +- **Absolute Cutoff Macro**: changes the behaviour of a cutoff macro from the old-style, compatible to much more define-able. +- **Absolute Duty Macro**: changes the behaviour of a duty cycle macro from the old-style, compatible to much more definable. +- **Don't test/gate before new note**: Don't reset the envelope to zero when a new note starts. (Read "Test/Gate" below for more info.) ## Macros -- [Volume] - volume sequence (WARNING: Volume sequence is global for ALL three channels!!) -- [Arpeggio] - pitch sequence -- [Duty] - pulse duty cycle sequence -- [Waveform] - select the waveform used by instrument -- [Pitch] - fine pitch -- [Filter mode] - select the filter mode/sequence -- [Resonance] - filter resonance sequence -- [Special] - ring and oscillator sync selector -- [Test/Gate] - When on, the TEST bit resets and locks Oscillator 1 at zero until cleared. The GATE bit controls Oscillator 1's envelope: Gate on runs through the envelope's attack, delay, and sustain; Gate off is envelope release. \ No newline at end of file +- **Volume**: volume sequence (WARNING: Volume sequence is global for ALL three channels!!) +- **Arpeggio**: pitch sequence +- **Duty**: pulse duty cycle sequence +- **Waveform**: select the waveform used by instrument +- **Pitch**: fine pitch +- **Filter mode**: select the filter mode/sequence +- **Resonance**: filter resonance sequence +- **Special**: ring and oscillator sync selector +- **Test/Gate**: When on, the TEST bit resets and locks Oscillator 1 at zero until cleared. The GATE bit controls Oscillator 1's envelope: Gate on runs through the envelope's attack, delay, and sustain; Gate off is envelope release. \ No newline at end of file diff --git a/doc/4-instrument/fm.md b/doc/4-instrument/fm.md index 31de4de8..08542eb3 100644 --- a/doc/4-instrument/fm.md +++ b/doc/4-instrument/fm.md @@ -2,47 +2,46 @@ FM editor is divided into 7 tabs: -- [FM] - for controlling the basic parameters of FM sound source. -- [Macros (FM)]- for macros controlling algorithm, feedback and LFO -- [Macros (OP1)] - for macros controlling FM paramets of operator 1 -- [Macros (OP2)] - for macros controlling FM paramets of operator 2 -- [Macros (OP3)] - for macros controlling FM paramets of operator 3 -- [Macros (OP4)] - for macros controlling FM paramets of operator 4 -- [Macros] - for miscellaneous macros controlling volume, argeggio and YM2151 noise generator. +- **FM**: for controlling the basic parameters of FM sound source. +- **Macros (FM)**: for macros controlling algorithm, feedback and LFO +- **Macros (OP1)**: for macros controlling FM paramets of operator 1 +- **Macros (OP2)**: for macros controlling FM paramets of operator 2 +- **Macros (OP3)**: for macros controlling FM paramets of operator 3 +- **Macros (OP4)**: for macros controlling FM paramets of operator 4 +- **Macros**: for miscellaneous macros controlling volume, argeggio and YM2151 noise generator. ## FM FM synthesizers Furnace supports are four-operator, meaning it takes four oscillators to produce a single sound. Each operator is controlled by a dozen sliders: -- [Attack Rate (AR)] - determines the rising time for the sound. The bigger the value, the faster the attack. (0-31 range) -- [Decay Rate (DR)]- Determines the diminishing time for the sound. The higher the value, the shorter the decay. It's the initial amplitude decay rate. (0-31 range) -- [Secondary Decay Rate (DR2)/Sustain Rate (SR)] - Determines the diminishing time for the sound. The higher the value, the shorter the decay. This is the long "tail" of the sound that continues as long as the key is depressed. (0-31 range) -- [Release Rate (RR)] - Determines the rate at which the sound disappears after KEY-OFF. The higher the value, the shorter the release. (0-15 range) -- [Sustain Level(SL)] - Determines the point at which the sound ceases to decay and changes to a sound having a constant level. The sustain level is expressed as a fraction of the maximum level. (0-15 range) -- [Total Level (TL)] - Represents the envelope’s highest amplitude, with 0 being the largest and 127 (decimal) the smallest. A change of one unit is about 0.75 dB. -- [Envelope Scale (KSR)] - A parameter that determines the degree to which the envelope execution speed increases according to the pitch. (0-3 range) -- [Frequency Multiplier (MULT)] - Determines the operator frequency in relation to the pitch. (0-15 range) -- [Fine Detune (DT)] - Shifts the pitch a little (0-7 range) -- [Coarse Detune (DT2)] - Shifts the pitch by tens of cents (0-3 range) WARNING: this parameter affects only YM2151 sound source!!! -- [Hardware Envelope Generator (SSG-EG)] - Executes the built-in envelope, inherited from AY-3-8910 PSG. Speed of execution is controlled via Decay Rate. WARNING: this parameter affects only YM2610/YM2612 sound source!!! -- [Algorithm (AL)] - Determines how operators are connected to each other. (0-7 range) -- [Feedback (FB)] - Determines the amount of signal whick operator 1 returns to itself. (0-7 range) -- [Amplitude Modulation (AM)] - Makes the operator affected by LFO. -- [LFO Frequency Sensitivity] - Determines the amount of LFO frequency changes. (0-7 range) -- [LFO Amplitude Sensitivity (AM)] - Determines the amount of LFO frequency changes. (0-3 range) +- **Attack Rate (AR)**: determines the rising time for the sound. The bigger the value, the faster the attack. (0-31 range) +- **Decay Rate (DR)**: Determines the diminishing time for the sound. The higher the value, the shorter the decay. It's the initial amplitude decay rate. (0-31 range) +- **Secondary Decay Rate (DR2)/Sustain Rate (SR)**: Determines the diminishing time for the sound. The higher the value, the shorter the decay. This is the long "tail" of the sound that continues as long as the key is depressed. (0-31 range) +- **Release Rate (RR)**: Determines the rate at which the sound disappears after KEY-OFF. The higher the value, the shorter the release. (0-15 range) +- **Sustain Level(SL)**: Determines the point at which the sound ceases to decay and changes to a sound having a constant level. The sustain level is expressed as a fraction of the maximum level. (0-15 range) +- **Total Level (TL)**: Represents the envelope’s highest amplitude, with 0 being the largest and 127 (decimal) the smallest. A change of one unit is about 0.75 dB. +- **Envelope Scale (KSR)**: A parameter that determines the degree to which the envelope execution speed increases according to the pitch. (0-3 range) +- **Frequency Multiplier (MULT)**: Determines the operator frequency in relation to the pitch. (0-15 range) +- **Fine Detune (DT)**: Shifts the pitch a little (0-7 range) +- **Coarse Detune (DT2)**: Shifts the pitch by tens of cents (0-3 range) WARNING: this parameter affects only YM2151 sound source!!! +- **Hardware Envelope Generator (SSG-EG)**: Executes the built-in envelope, inherited from AY-3-8910 PSG. Speed of execution is controlled via Decay Rate. WARNING: this parameter affects only YM2610/YM2612 sound source!!! +- **Algorithm (AL)**: Determines how operators are connected to each other. (0-7 range) +- **Feedback (FB)**: Determines the amount of signal whick operator 1 returns to itself. (0-7 range) +- **Amplitude Modulation (AM)**: Makes the operator affected by LFO. +- **LFO Frequency Sensitivity**: Determines the amount of LFO frequency changes. (0-7 range) +- **LFO Amplitude Sensitivity (AM)**: Determines the amount of LFO frequency changes. (0-3 range) ## Macros Macros define the sequence of values passed to the given parameter. Via macro, aside previously mentioned parameters, the following can be controlled: -- LFO Frequency -- LFO waveform selection WARNING: this parameter affects only YM2151 sound source!!! -- Amplitude Modulation Depth WARNING: this parameter affects only YM2151 sound source!!! -- Frequency Modulation Depth WARNING: this parameter affects only YM2151 sound source!!! -- Arpeggio Macro: pitch change sequence in semitones. Two modes are available: -Absolute (default) - Executes the pitch with absolute change based on the pitch of the actual note. -Fixed - Executes at the pitch specified in the sequence regardless of the note pitch. -- Noise Frequency: specifies the noise frequency in noise mode of YM2151's Channel 8 Operator 4 special mode. +- **LFO Frequency** +- **LFO Waveform**: _WARNING:_ this parameter affects only YM2151 sound source! +- **Amplitude Modulation Depth**: _WARNING:_ this parameter affects only YM2151 sound source! +- **Frequency Modulation Depth**: _WARNING:_ this parameter affects only YM2151 sound source! +- **Arpeggio Macro**: Pitch change sequence in semitones. Two modes are available: + - **Absolute** (default): Executes the pitch with absolute change based on the pitch of the actual note. + - **Fixed**: Executes at the pitch specified in the sequence regardless of the note pitch. +- **Noise Frequency**: specifies the noise frequency in noise mode of YM2151's Channel 8 Operator 4 special mode. -Loop -You can loop the execution of part of a sequence. Left-click anywhere on the Loop line at the bottom of the editor to create a loop. You can move the start and end points of the loop by dragging both ends of the loop. +Looping: You can loop the execution of part of a sequence. Left-click anywhere on the Loop line at the bottom of the editor to create a loop. You can move the start and end points of the loop by dragging both ends of the loop. Rigkt-click to remove the loop. diff --git a/doc/4-instrument/game-boy.md b/doc/4-instrument/game-boy.md index d3da0776..fd982615 100644 --- a/doc/4-instrument/game-boy.md +++ b/doc/4-instrument/game-boy.md @@ -4,22 +4,22 @@ GB instrument editor consists of two tabs: one controlling envelope of sound cha ## Game Boy -- [Use software envelope] - switch to volume macro instead of envelope -- [Initialize envelope on every note] - forces a volume reset on each new note -- [Volume] - initial channel volume (range 0-15) -- [Length] - envelope decay/attack duration (range 0-7) -- [Sound Length] - cuts off sound after specified length, overriding the Length value +- **Use software envelope**: switch to volume macro instead of envelope +- **Initialize envelope on every note**: forces a volume reset on each new note +- **Volume**: initial channel volume (range 0-15) +- **Length**: envelope decay/attack duration (range 0-7) +- **Sound Length**: cuts off sound after specified length, overriding the Length value -- [Up and Down radio buttons] - Up makes the envelope an attack, down makes it decay. _Note:_ For envelope attack to have any effect, start at a lower volume! +- **Up and Down radio buttons**: Up makes the envelope an attack, down makes it decay. _Note:_ For envelope attack to have any effect, start at a lower volume! -- [Hardware Sequence] - (document this) +- **Hardware Sequence**: (document this) ## Macros -- [Volume] - volume sequence. _Note:_ This only appears if "Use software envelope" is checked. -- [Arpeggio] - pitch in half-steps -- [Duty/Noise] - pulse wave duty cycle or noise mode sequence -- [Waveform] - ch3 wavetable sequence -- [Panning] - output for left and right channels -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform +- **Volume**: volume sequence. _Note:_ This only appears if "Use software envelope" is checked. +- **Arpeggio**: pitch in half-steps +- **Duty/Noise**: pulse wave duty cycle or noise mode sequence +- **Waveform**: ch3 wavetable sequence +- **Panning**: output for left and right channels +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform diff --git a/doc/4-instrument/lynx.md b/doc/4-instrument/lynx.md index b181e8e2..43dc1734 100644 --- a/doc/4-instrument/lynx.md +++ b/doc/4-instrument/lynx.md @@ -2,13 +2,13 @@ Atari Lynx instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch in half-steps -- [Duty/Int] - bit pattern for LFSR taps and integration -- [Panning (left)] - output level for left channel -- [Panning (right)] - output level for right channel -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform +- **Volume**: volume sequence +- **Arpeggio**: pitch in half-steps +- **Duty/Int**: bit pattern for LFSR taps and integration +- **Panning (left)**: output level for left channel +- **Panning (right)**: output level for right channel +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform ## Audio generation description diff --git a/doc/4-instrument/n163.md b/doc/4-instrument/n163.md index 4cd12261..1ec45914 100644 --- a/doc/4-instrument/n163.md +++ b/doc/4-instrument/n163.md @@ -4,27 +4,27 @@ The Namco 163 instrument editor consists of two tabs: "Namco 163" for control of ## Namco 163 -- [Waveform] - Determines the initial waveform for playing. -- [Offset] - Determines the initial waveform position will be load to RAM. -- [Length] - Determines the initial waveform length will be load to RAM. -- [Load waveform before playback] - Determines the load initial waveform into RAM before playback. -- [Update waveforms into RAM when every waveform changes] - Determines the update every different waveform changes in playback. +- **Waveform**: Determines the initial waveform for playing. +- **Offset**: Determines the initial waveform position will be load to RAM. +- **Length**: Determines the initial waveform length will be load to RAM. +- **Load waveform before playback**: Determines the load initial waveform into RAM before playback. +- **Update waveforms into RAM when every waveform changes**: Determines the update every different waveform changes in playback. ## Macros -- [Volume] - volume levels sequence -- [Arpeggio]- pitch sequence -- [Waveform] - sets waveform source for playback immediately or update later -- [Panning] - output for left and right channels -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform +- **Volume**: volume levels sequence +- **Arpeggio**: pitch sequence +- **Waveform**: sets waveform source for playback immediately or update later +- **Panning**: output for left and right channels +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform \ No newline at end of file diff --git a/doc/4-instrument/pce.md b/doc/4-instrument/pce.md index 96a910af..72c87470 100644 --- a/doc/4-instrument/pce.md +++ b/doc/4-instrument/pce.md @@ -2,13 +2,13 @@ The PCE instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch in half-steps -- [Noise] - enable noise mode (ch5 and ch6 only) -- [Waveform] - wavetable sequence -- [Panning (left)] - output level for left channel -- [Panning (right)] - output level for right channel -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform +- **Volume**: volume sequence +- **Arpeggio**: pitch in half-steps +- **Noise**: enable noise mode (ch5 and ch6 only) +- **Waveform**: wavetable sequence +- **Panning (left)**: output level for left channel +- **Panning (right)**: output level for right channel +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform It also has wavetable synthesizer support, but unfortunately, it clicks a lot when in use on the HuC6280. diff --git a/doc/4-instrument/saa.md b/doc/4-instrument/saa.md index 4e6f76a7..1611bd61 100644 --- a/doc/4-instrument/saa.md +++ b/doc/4-instrument/saa.md @@ -2,11 +2,11 @@ The SAA1099 instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequence -- [Duty/Noise] - noise generator frequency -- [Waveform] - selector between tone and noise -- [Panning (left)] - output level for left channel -- [Panning (right)] - output level for right channel -- [Pitch] - fine pitch -- [Envelope] - envelope generator shape +- **Volume**: volume sequence +- **Arpeggio**: pitch sequence +- **Duty/Noise**: noise generator frequency +- **Waveform**: selector between tone and noise +- **Panning (left)**: output level for left channel +- **Panning (right)**: output level for right channel +- **Pitch**: fine pitch +- **Envelope**: envelope generator shape diff --git a/doc/4-instrument/scc.md b/doc/4-instrument/scc.md index 33d5f341..fa9a9408 100644 --- a/doc/4-instrument/scc.md +++ b/doc/4-instrument/scc.md @@ -2,7 +2,7 @@ The SCC/Bubble System WSG instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequence -- [Waveform] - spicifies wavetables sequence -- [Pitch] - fine pitch +- **Volume**: volume sequence +- **Arpeggio**: pitch sequence +- **Waveform**: spicifies wavetables sequence +- **Pitch**: fine pitch diff --git a/doc/4-instrument/standard.md b/doc/4-instrument/standard.md index 0cf7a729..2da6e160 100644 --- a/doc/4-instrument/standard.md +++ b/doc/4-instrument/standard.md @@ -2,9 +2,9 @@ The instrument editor for NES and PSG (SMS, MSX, and such) consists of these macros: -- [Volume] - volume -- [Arpeggio] - pitch in half-steps -- [Duty] - duty cycle and noise mode for NES channels. _Note:_ This has no effect on Sega Master System. -- [Panning] - output for left and right channels -- [Pitch] - fine pitch -- [Phase Reset] - trigger restart of waveform \ No newline at end of file +- **Volume**: volume +- **Arpeggio**: pitch in half-steps +- **Duty**: duty cycle and noise mode for NES channels. _Note:_ This has no effect on Sega Master System. +- **Panning**: output for left and right channels +- **Pitch**: fine pitch +- **Phase Reset**: trigger restart of waveform \ No newline at end of file diff --git a/doc/4-instrument/tia.md b/doc/4-instrument/tia.md index c80dc42a..704d3aa2 100644 --- a/doc/4-instrument/tia.md +++ b/doc/4-instrument/tia.md @@ -2,7 +2,7 @@ The TIA instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequencr -- [Waveform] - 1-bit polynomial pattern type sequence -- [Pitch] - "fine" pitch +- **Volume**: volume sequence +- **Arpeggio**: pitch sequencr +- **Waveform**: 1-bit polynomial pattern type sequence +- **Pitch**: "fine" pitch diff --git a/doc/4-instrument/vera.md b/doc/4-instrument/vera.md index ed6cbbec..ec76f659 100644 --- a/doc/4-instrument/vera.md +++ b/doc/4-instrument/vera.md @@ -2,9 +2,9 @@ VERA instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequence -- [Duty] - pulse duty cycle sequence -- [Waveform] - select the waveform used by instrument -- [Panning] - output for left and right channels -- [Pitch] - fine pitch +- **Volume**: volume sequence +- **Arpeggio**: pitch sequence +- **Duty**: pulse duty cycle sequence +- **Waveform**: select the waveform used by instrument +- **Panning**: output for left and right channels +- **Pitch**: fine pitch diff --git a/doc/4-instrument/vrc6.md b/doc/4-instrument/vrc6.md index 4a8e86ae..17588b21 100644 --- a/doc/4-instrument/vrc6.md +++ b/doc/4-instrument/vrc6.md @@ -2,10 +2,10 @@ The VRC6 (regular) instrument editor consists of these macros: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequence -- [Duty] - specifies duty cycle for pulse wave channels -- [Pitch] - fine pitch +- **Volume**: volume sequence +- **Arpeggio**: pitch sequence +- **Duty**: specifies duty cycle for pulse wave channels +- **Pitch**: fine pitch ## VRC6 (saw) instrument editor diff --git a/doc/4-instrument/wonderswan.md b/doc/4-instrument/wonderswan.md index 6ad0e8c9..d43e154e 100644 --- a/doc/4-instrument/wonderswan.md +++ b/doc/4-instrument/wonderswan.md @@ -2,7 +2,7 @@ WS instrument editor consists of only four macros, similar to PCE but with different volume and noise range: -- [Volume] - volume sequence -- [Arpeggio] - pitch sequencr -- [Noise] - noise LFSR tap sequence -- [Waveform] - spicifies wavetables sequence +- **Volume**: volume sequence +- **Arpeggio**: pitch sequencr +- **Noise**: noise LFSR tap sequence +- **Waveform**: spicifies wavetables sequence diff --git a/doc/4-instrument/x1_010.md b/doc/4-instrument/x1_010.md index c76cbcb5..2311f74d 100644 --- a/doc/4-instrument/x1_010.md +++ b/doc/4-instrument/x1_010.md @@ -2,10 +2,10 @@ X1-010 instrument editor consists of 7 macros. -- [Volume] - volume levels sequence -- [Arpeggio]- pitch sequence -- [Waveform] - spicifies wavetables sequence -- [Envelope Mode] - allows shaping an envelope -- [Envelope] - spicifies envelope shape sequence, it's also wavetable. -- [Auto envelope numerator] - sets the envelope to the channel's frequency multiplied by numerator -- [Auto envelope denominator] - sets the envelope to the channel's frequency divided by denominator +- **Volume**: volume levels sequence +- **Arpeggio**: pitch sequence +- **Waveform**: spicifies wavetables sequence +- **Envelope Mode**: allows shaping an envelope +- **Envelope**: spicifies envelope shape sequence, it's also wavetable. +- **Auto envelope numerator**: sets the envelope to the channel's frequency multiplied by numerator +- **Auto envelope denominator**: sets the envelope to the channel's frequency divided by denominator diff --git a/doc/5-wave/README.md b/doc/5-wave/README.md index a42ffd81..cdf344f0 100644 --- a/doc/5-wave/README.md +++ b/doc/5-wave/README.md @@ -6,13 +6,13 @@ Furnace's wavetable editor is rather simple, you can draw the waveform using mou Furnace's wavetable editor features multiple ways of creating desired waveform shape: -- Shape tab allows you to select a few predefined basic shapes and indirectly edit it via "Duty", "Exponent" and "XOR Point" sliders: - - `Duty` slider affects mainly pulse waves, determining its wisth, like on C64/VRC6 - - `Exponent` powers the waveform in the mathematical sense of the word (^2, ^3 and so on) - - `XOR Point` determines the point where the waveform gets negated. - - TODO: amplitude/phase part -- FM is for creating the waveform with frequency modulation synthesis principles: One can set carrier/modulation levels, frquency multiplier, connection between operators and FM waveforms of these operators. -- WaveTools allows user to fine-tune the waveform: scale said waveform in both X and Y axes, smoothen, amplify, normalize, convert to signed/unisgned, invert or even randomize the wavetable. +- **Shape** tab allows you to select a few predefined basic shapes and indirectly edit it via "Duty", "Exponent" and "XOR Point" sliders: + - **Duty**: Affects mainly pulse waves, determining its wisth, like on C64/VRC6 + - **Exponent**: Powers the waveform in the mathematical sense of the word (^2, ^3 and so on) + - **XOR Point**: Determines the point where the waveform gets negated. + - _TODO:_ amplitude/phase part +- **FM** For creating the waveform with frequency modulation synthesis principles: One can set carrier/modulation levels, frquency multiplier, connection between operators and FM waveforms of these operators. +- **WaveTools**: Allows user to fine-tune the waveform: scale said waveform in both X and Y axes, smoothen, amplify, normalize, convert to signed/unisgned, invert or even randomize the wavetable. ## wavetable synthesizer diff --git a/doc/7-systems/amiga.md b/doc/7-systems/amiga.md index 41911445..907b79fe 100644 --- a/doc/7-systems/amiga.md +++ b/doc/7-systems/amiga.md @@ -6,10 +6,10 @@ in this very computer music trackers were born... # effects -- `10xx`: toggle low-pass filter. `0` turns it off and `1` turns it on. -- `11xx`: toggle amplitude modulation with the next channel. +- **`10xx`**: toggle low-pass filter. `0` turns it off and `1` turns it on. +- **`11xx`**: toggle amplitude modulation with the next channel. - does not work on the last channel. -- `12xx`: toggle period (frequency) modulation with the next channel. +- **`12xx`**: toggle period (frequency) modulation with the next channel. - does not work on the last channel. -- `13xx`: change wave. +- **`13xx`**: change wave. - only works when "Mode" is set to "Wavetable" in the instrument. diff --git a/doc/7-systems/ay8910.md b/doc/7-systems/ay8910.md index 25eb77f7..4b4724e7 100644 --- a/doc/7-systems/ay8910.md +++ b/doc/7-systems/ay8910.md @@ -8,7 +8,7 @@ the AY-3-8914 variant was used in Intellivision, which is pretty much an AY with # effects -- `20xx`: set channel mode. `xx` may be one of the following: +- **`20xx`**: set channel mode. `xx` may be one of the following: - `00`: square - `01`: noise - `02`: square and noise @@ -17,8 +17,8 @@ the AY-3-8914 variant was used in Intellivision, which is pretty much an AY with - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- `21xx`: set noise frequency. `xx` is a value between 00 and 1F. -- `22xy`: set envelope mode. +- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. +- **`22xy`**: set envelope mode. - `x` sets the envelope shape, which may be one of the following: - `0: \___` decay - `4: /___` attack once @@ -31,16 +31,16 @@ the AY-3-8914 variant was used in Intellivision, which is pretty much an AY with - `E: /\/\` obelisco - `F: /___` attack once - if `y` is 1 then the envelope will affect this channel. -- `23xx`: set envelope period low byte. -- `24xx`: set envelope period high byte. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `29xy`: enable auto-envelope mode. +- **`23xx`**: set envelope period low byte. +- **`24xx`**: set envelope period high byte. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`29xy`**: enable auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- `2Exx`: write to I/O port A. +- **`2Exx`**: write to I/O port A. - this changes the port's mode to "write". make sure you have connected something to it. -- `2Fxx`: write to I/O port B. +- **`2Fxx`**: write to I/O port B. - this changes the port's mode to "write". make sure you have connected something to it. diff --git a/doc/7-systems/ay8930.md b/doc/7-systems/ay8930.md index 0d471bca..dda2e758 100644 --- a/doc/7-systems/ay8930.md +++ b/doc/7-systems/ay8930.md @@ -9,7 +9,7 @@ emulation of this chip in Furnace is now complete thanks to community efforts an # effects -- `12xx`: set channel duty cycle. `xx` is a value between 00 and 08. +- **`12xx`**: set channel duty cycle. `xx` is a value between 00 and 08. - `00`: 3.125% - `01`: 6.25% - `02`: 12.5% @@ -19,7 +19,7 @@ emulation of this chip in Furnace is now complete thanks to community efforts an - `06`: 87.5% - `07`: 93.75% - `08`: 96.875% -- `20xx`: set channel mode. `xx` may be one of the following: +- **`20xx`**: set channel mode. `xx` may be one of the following: - `00`: square - `01`: noise - `02`: square and noise @@ -28,8 +28,8 @@ emulation of this chip in Furnace is now complete thanks to community efforts an - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- `21xx`: set noise frequency. `xx` is a value between 00 and FF. -- `22xy`: set envelope mode. +- **`21xx`**: set noise frequency. `xx` is a value between 00 and FF. +- **`22xy`**: set envelope mode. - `x` sets the envelope shape, which may be one of the following: - `0: \___` decay - `4: /___` attack once @@ -42,13 +42,13 @@ emulation of this chip in Furnace is now complete thanks to community efforts an - `E: /\/\` obelisco - `F: /___` attack once - if `y` is 1 then the envelope will affect this channel. -- `23xx`: set envelope period low byte. -- `24xx`: set envelope period high byte. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `27xx`: set noise AND mask. -- `28xx`: set noise OR mask. -- `29xy`: enable auto-envelope mode. +- **`23xx`**: set envelope period low byte. +- **`24xx`**: set envelope period high byte. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`27xx`**: set noise AND mask. +- **`28xx`**: set noise OR mask. +- **`29xy`**: enable auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. diff --git a/doc/7-systems/bubblesystem.md b/doc/7-systems/bubblesystem.md index b339b893..1a904b9d 100644 --- a/doc/7-systems/bubblesystem.md +++ b/doc/7-systems/bubblesystem.md @@ -10,4 +10,4 @@ Furnace emulates this configuration as a "chip" with 32x16 wavetables. # effects -- `10xx`: change wave. +- **`10xx`**: change wave. diff --git a/doc/7-systems/c64.md b/doc/7-systems/c64.md index 0f8054ef..4b0f26f1 100644 --- a/doc/7-systems/c64.md +++ b/doc/7-systems/c64.md @@ -8,7 +8,7 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro # effects -- `10xx`: change wave. the following values are accepted: +- **`10xx`**: change wave. the following values are accepted: - `00`: nothing - `01`: triangle - `02`: saw @@ -18,14 +18,14 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro - `06`: pulse and saw - `07`: pulse and triangle and saw - `08`: noise -- `11xx`: set coarse cutoff. `xx` may be a value between 00 to 64. +- **`11xx`**: set coarse cutoff. `xx` may be a value between 00 to 64. - **this effect only exists for compatibility reasons, and its use is discouraged.** - use effect `4xxx` instead. -- `12xx`: set coarse duty cycle. `xx` may be a value between 00 to 64. +- **`12xx`**: set coarse duty cycle. `xx` may be a value between 00 to 64. - **this effect only exists for compatibility reasons, and its use is discouraged.** - use effect `3xxx` instead. -- `13xx`: set resonance. `xx` may be a value between 00 and 0F. -- `14xx`: set filter mode. the following values are accepted: +- **`13xx`**: set resonance. `xx` may be a value between 00 and 0F. +- **`14xx`**: set filter mode. the following values are accepted: - `00`: filter off - `01`: low pass - `02`: band pass @@ -34,19 +34,19 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro - `05`: band reject/stop/notch - `06`: high+band pass - `07`: all pass -- `15xx`: set envelope reset time. +- **`15xx`**: set envelope reset time. - this is the amount of ticks the channel turns off before a note occurs in order to reset the envelope safely. - if `xx` is 0 or higher than the song speed, the envelope will not reset. -- `1Axx`: disable envelope reset for this channel. -- `1Bxy`: reset cutoff: +- **`1Axx`**: disable envelope reset for this channel. +- **`1Bxy`**: reset cutoff: - if `x` is not 0: on new note - if `y` is not 0: now - this effect is not necessary if the instrument's cutoff macro is absolute. -- `1Cxy`: reset duty cycle: +- **`1Cxy`**: reset duty cycle: - if `x` is not 0: on new note - if `y` is not 0: now - this effect is not necessary if the instrument's duty macro is absolute. -- `1Exy`: change additional parameters. +- **`1Exy`**: change additional parameters. - `x` may be one of the following: - `0`: attack (`y` from 0 to F) - `1`: decay (`y` from 0 to F) @@ -55,5 +55,5 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro - `4`: ring modulation (`y` is 0 or 1) - `5`: oscillator sync (`y` is 0 or 1) - `6`: disable channel 3 (`y` is 0 or 1) -- `3xxx`: set duty cycle. `xxx` range is 000-FFF -- `4xxx`: set cutoff. `xxx` range is 000-7FF. +- **`3xxx`**: set duty cycle. `xxx` range is 000-FFF +- **`4xxx`**: set cutoff. `xxx` range is 000-7FF. diff --git a/doc/7-systems/es5506.md b/doc/7-systems/es5506.md index acdcd0a4..759fdde5 100644 --- a/doc/7-systems/es5506.md +++ b/doc/7-systems/es5506.md @@ -12,30 +12,30 @@ it supports a whooping 32 channels of 16-bit PCM and: # effects -- `10xx`: set waveform. -- `11xx`: set filter mode (0-3) -- `120x`: set pause (bit 0). Pauses the sample until the bit is unset, where it will then resume where it left off. -- `14xx`: set filter coefficient K1 low byte. -- `15xx`: set filter coefficient K1 high byte. -- `16xx`: set filter coefficient K2 low byte. -- `17xx`: set filter coefficient K2 high byte. -- `18xx`: set filter coefficient K1 slide up. -- `19xx`: set filter coefficient K1 slide down. -- `1Axx`: set filter coefficient K2 slide up. -- `1Bxx`: set filter coefficient K2 slide down. -- `20xx`: set envelope count. -- `22xx`: set envelope left volume ramp. -- `23xx`: set envelope right volume ramp. -- `24xx`: set envelope filter coefficient K1 ramp. -- `25xx`: set envelope filter coefficient K1 ramp (slower). -- `26xx`: set envelope filter coefficient K2 ramp. -- `27xx`: set envelope filter coefficient K2 ramp (slower). -- `3xxx`: set coarse filter coefficient K1. -- `4xxx`: set coarse filter coefficient K2. -- `81xx`: set panning (left channel). -- `82xx`: set panning (right channel). -- `88xx`: set panning (rear channels). -- `89xx`: set panning (rear left channel). -- `8Axx`: set panning (rear right channel). -- `9xxx`: set sample offset (x256). -- `DFxx`: set sample playback direction. +- **`10xx`**: set waveform. +- **`11xx`**: set filter mode (0-3) +- **`120x`**: set pause (bit 0). Pauses the sample until the bit is unset, where it will then resume where it left off. +- **`14xx`**: set filter coefficient K1 low byte. +- **`15xx`**: set filter coefficient K1 high byte. +- **`16xx`**: set filter coefficient K2 low byte. +- **`17xx`**: set filter coefficient K2 high byte. +- **`18xx`**: set filter coefficient K1 slide up. +- **`19xx`**: set filter coefficient K1 slide down. +- **`1Axx`**: set filter coefficient K2 slide up. +- **`1Bxx`**: set filter coefficient K2 slide down. +- **`20xx`**: set envelope count. +- **`22xx`**: set envelope left volume ramp. +- **`23xx`**: set envelope right volume ramp. +- **`24xx`**: set envelope filter coefficient K1 ramp. +- **`25xx`**: set envelope filter coefficient K1 ramp (slower). +- **`26xx`**: set envelope filter coefficient K2 ramp. +- **`27xx`**: set envelope filter coefficient K2 ramp (slower). +- **`3xxx`**: set coarse filter coefficient K1. +- **`4xxx`**: set coarse filter coefficient K2. +- **`81xx`**: set panning (left channel). +- **`82xx`**: set panning (right channel). +- **`88xx`**: set panning (rear channels). +- **`89xx`**: set panning (rear left channel). +- **`8Axx`**: set panning (rear right channel). +- **`9xxx`**: set sample offset (x256). +- **`DFxx`**: set sample playback direction. diff --git a/doc/7-systems/fds.md b/doc/7-systems/fds.md index e7bede28..83e8538b 100644 --- a/doc/7-systems/fds.md +++ b/doc/7-systems/fds.md @@ -7,14 +7,14 @@ it also offers an additional 6-bit, 64-byte wavetable sound channel with (somewh # effects -- `10xx`: change wave. -- `11xx`: set modulation depth. -- `12xy`: set modulation speed high byte and toggle on/off. +- **`10xx`**: change wave. +- **`11xx`**: set modulation depth. +- **`12xy`**: set modulation speed high byte and toggle on/off. - `x` is the toggle. a value of 1 turns on the modulator. - `y` is the speed. -- `13xx`: set modulation speed low byte. -- `14xx`: set modulator position. -- `15xx`: set modulator wave. +- **`13xx`**: set modulation speed low byte. +- **`14xx`**: set modulator position. +- **`15xx`**: set modulator wave. - `xx` points to a wavetable. it should (preferably) have a height of 7 with the values mapping to: - 0: +0 - 1: +1 diff --git a/doc/7-systems/game-boy.md b/doc/7-systems/game-boy.md index ffc357fb..16b6c149 100644 --- a/doc/7-systems/game-boy.md +++ b/doc/7-systems/game-boy.md @@ -6,13 +6,13 @@ with stereo sound, two pulse channels, a wave channel and a noise one it packed # effects -- `10xx`: change wave. -- `11xx`: set noise length. `xx` may be one of: +- **`10xx`**: change wave. +- **`11xx`**: set noise length. `xx` may be one of: - 0: long - 1: short -- `12xx`: set duty cycle (from 0 to 3). -- `13xy`: setup sweep (pulse channels only). +- **`12xx`**: set duty cycle (from 0 to 3). +- **`13xy`**: setup sweep (pulse channels only). - `x` is the time. - `y` is the shift. - set to 0 to disable it. -- `14xx`: set sweep direction. 0 is up and 1 is down. +- **`14xx`**: set sweep direction. 0 is up and 1 is down. diff --git a/doc/7-systems/genesis.md b/doc/7-systems/genesis.md index 335466d0..fd7fc56d 100644 --- a/doc/7-systems/genesis.md +++ b/doc/7-systems/genesis.md @@ -6,29 +6,29 @@ this console is powered by two sound chips: the [Yamaha YM2612](ym2612.md) and [ # effects -- `10xy`: set LFO parameters. +- **`10xy`**: set LFO parameters. - `x` toggles the LFO. - `y` sets its speed. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `17xx`: enable PCM channel. +- **`17xx`**: enable PCM channel. - this only works on channel 6. - **this effect is there for compatibility reasons** - it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). -- `18xx`: toggle extended channel 3 mode. +- **`18xx`**: toggle extended channel 3 mode. - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `20xy`: set PSG noise mode. +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`20xy`**: set PSG noise mode. - `x` controls whether to inherit frequency from PSG channel 3. - 0: use one of 3 preset frequencies (C: A-2; C#: A-3; D: A-4). - 1: use frequency of PSG channel 3. diff --git a/doc/7-systems/lynx.md b/doc/7-systems/lynx.md index e7178a61..7c46ec44 100644 --- a/doc/7-systems/lynx.md +++ b/doc/7-systems/lynx.md @@ -15,6 +15,6 @@ the Atari Lynx has a 6502-based CPU with a sound part (this chip is known as MIK # effects -- `3xxx`: Load LFSR (0 to FFF). +- **`3xxx`**: Load LFSR (0 to FFF). - this is a bitmask. - for it to work, duty macro in instrument editor must be set to some value. without it LFSR will not be fed with any bits. diff --git a/doc/7-systems/mmc5.md b/doc/7-systems/mmc5.md index d483bd57..ef3e3140 100644 --- a/doc/7-systems/mmc5.md +++ b/doc/7-systems/mmc5.md @@ -8,5 +8,5 @@ additionally, it offers an 8-bit DAC which can be used to play samples. only one # effects -- `12xx`: set duty cycle or noise mode of channel. +- **`12xx`**: set duty cycle or noise mode of channel. - may be 0-3 for the pulse channels. diff --git a/doc/7-systems/msm5232.md b/doc/7-systems/msm5232.md index b08875a3..7c5ffa6b 100644 --- a/doc/7-systems/msm5232.md +++ b/doc/7-systems/msm5232.md @@ -16,11 +16,11 @@ Furnace implements this chip in a way that allows the following features: # effects -- `10xy`: set group control. +- **`10xy`**: set group control. - `x` sets sustain mode. - `y` is a 4-bit mask which toggles overtones. -- `11xx`: set noise mode. -- `12xx`: set group attack (0 to 5). +- **`11xx`**: set noise mode. +- **`12xx`**: set group attack (0 to 5). - only in internal (capacitor-based) envelope mode. -- `13xx`: set group decay (0 to 11). +- **`13xx`**: set group decay (0 to 11). - only in internal (capacitor-based) envelope mode. diff --git a/doc/7-systems/msm6295.md b/doc/7-systems/msm6295.md index 25766927..1faf1566 100644 --- a/doc/7-systems/msm6295.md +++ b/doc/7-systems/msm6295.md @@ -4,4 +4,4 @@ an upgrade from 6258 - it provides 4 ADPCM channels, at max 32 KHz (still no var # effects -- `20xx`: set chip output rate. +- **`20xx`**: set chip output rate. diff --git a/doc/7-systems/n163.md b/doc/7-systems/n163.md index 06f2d0b1..50b2bbd1 100644 --- a/doc/7-systems/n163.md +++ b/doc/7-systems/n163.md @@ -17,16 +17,16 @@ both waveform playback and load command work independently per each channel colu # effects -- `10xx`: set waveform for playback. -- `11xx`: set waveform position in RAM for playback (single nibble unit). -- `12xx`: set waveform length in RAM for playback (04 to FC, 4 nibble unit). -- `130x`: set playback waveform update behavior (0: off, bit 0: update now, bit 1: update when every waveform is changed). -- `14xx`: set waveform for load to RAM. -- `15xx`: set waveform position for load to RAM (single nibble unit). -- `16xx`: set waveform length for load to RAM (04 to FC, 4 nibble unit). -- `170x`: set waveform load behavior (0: off, bit 0: load now, bit 1: load when every waveform is changed). -- `180x`: set channel limit (0 to 7, x + 1). -- `20xx`: (Global) set waveform for load to RAM. -- `21xx`: (Global) set waveform position for load to RAM (single nibble unit). -- `22xx`: (Global) set waveform length for load to RAM (04 to FC, 4 nibble unit). -- `230x`: (Global) set waveform load behavior (0: off, bit 0: load now, bit 1: load when every waveform is changed). +- **`10xx`**: set waveform for playback. +- **`11xx`**: set waveform position in RAM for playback (single nibble unit). +- **`12xx`**: set waveform length in RAM for playback (04 to FC, 4 nibble unit). +- **`130x`**: set playback waveform update behavior (0: off, bit 0: update now, bit 1: update when every waveform is changed). +- **`14xx`**: set waveform for load to RAM. +- **`15xx`**: set waveform position for load to RAM (single nibble unit). +- **`16xx`**: set waveform length for load to RAM (04 to FC, 4 nibble unit). +- **`170x`**: set waveform load behavior (0: off, bit 0: load now, bit 1: load when every waveform is changed). +- **`180x`**: set channel limit (0 to 7, x + 1). +- **`20xx`**: (Global) set waveform for load to RAM. +- **`21xx`**: (Global) set waveform position for load to RAM (single nibble unit). +- **`22xx`**: (Global) set waveform length for load to RAM (04 to FC, 4 nibble unit). +- **`230x`**: (Global) set waveform load behavior (0: off, bit 0: load now, bit 1: load when every waveform is changed). diff --git a/doc/7-systems/namco.md b/doc/7-systems/namco.md index 0a53d15d..12d9ec9e 100644 --- a/doc/7-systems/namco.md +++ b/doc/7-systems/namco.md @@ -6,5 +6,5 @@ everything starts with Namco WSG, which is a simple 3-channel wavetable with no # effects -- `10xx`: change waveform. -- `11xx`: toggle noise mode (WARNING: only on C30). +- **`10xx`**: change waveform. +- **`11xx`**: toggle noise mode (WARNING: only on C30). diff --git a/doc/7-systems/nes.md b/doc/7-systems/nes.md index 8367c589..9292a1de 100644 --- a/doc/7-systems/nes.md +++ b/doc/7-systems/nes.md @@ -6,30 +6,30 @@ also known as Famicom. it is a five-channel sound generator: first two channels # effects -- `11xx`: write to delta modulation counter. +- **`11xx`**: write to delta modulation counter. - this may be used to attenuate the triangle and noise channels. - will not work if a sample is playing. -- `12xx`: set duty cycle or noise mode of channel. +- **`12xx`**: set duty cycle or noise mode of channel. - may be 0-3 for the pulse channels and 0-1 for the noise channel. -- `13xy`: setup sweep up. +- **`13xy`**: setup sweep up. - `x` is the time. - `y` is the shift. - set to 0 to disable it. -- `14xy`: setup sweep down. +- **`14xy`**: setup sweep down. - `x` is the time. - `y` is the shift. - set to 0 to disable it. -- `15xx`: set envelope mode. +- **`15xx`**: set envelope mode. - `0`: envelope + length counter (volume represents envelope duration). - `1`: length counter (volume represents output volume). - `2`: looping envelope (volume represents envelope duration). - `3`: constant volume (default; volume represents output volume). - pulse and noise channels only. - you may need to apply a phase reset (using the macro) to make the envelope effective. -- `16xx`: set length counter. +- **`16xx`**: set length counter. - see table below for possible values. - this will trigger phase reset. -- `17xx`: set frame counter mode. +- **`17xx`**: set frame counter mode. - `0`: 4-step. - NTSC: 120Hz sweeps and lengths; 240Hz envelope. - PAL: 100Hz sweeps and lengths; 200Hz envelope. @@ -38,14 +38,14 @@ also known as Famicom. it is a five-channel sound generator: first two channels - NTSC: 96Hz sweeps and lengths; 192Hz envelope. - PAL: 80Hz sweeps and lengths; 160Hz envelope. - Dendy: 95.1Hz sweeps and lengths; 190.2Hz envelope. -- `18xx`: set PCM channel mode. +- **`18xx`**: set PCM channel mode. - `00`: PCM (software). - `01`: DPCM (hardware). - when in DPCM mode, samples will sound muffled (due to its nature), availables pitches are limited and loop point is ignored. -- `19xx`: set triangle linear counter. +- **`19xx`**: set triangle linear counter. - `00` to `7F` set the counter. - `80` and higher halt it. -- `20xx`: set DPCM frequency. +- **`20xx`**: set DPCM frequency. - only works in DPCM mode. - see table below for possible values. diff --git a/doc/7-systems/opl.md b/doc/7-systems/opl.md index 80c00299..3f9e9c0c 100644 --- a/doc/7-systems/opl.md +++ b/doc/7-systems/opl.md @@ -20,61 +20,61 @@ afterwards everyone moved to Windows and software mixed PCM streaming... - 0: 1dB (shallow) - 1: 4.8dB (deep) - this effect applies to all channels. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. - only in 4-op mode (OPL3). -- `15xx`: set operator 4 level. +- **`15xx`**: set operator 4 level. - only in 4-op mode (OPL3). -- `16xy`: set multiplier of operator. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). - `y` is the multiplier. - 17xx: set vibrato depth. the following values are accepted: - 0: normal - 1: double - this effect applies to all channels. -- `18xx`: toggle drums mode. +- **`18xx`**: toggle drums mode. - 0 disables it and 1 enables it. - only in drums chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. - only in 4-op mode (OPL3). -- `1Dxx`: set attack of operator 4. +- **`1Dxx`**: set attack of operator 4. - only in 4-op mode (OPL3). -- `2Axy`: set waveform of operator. +- **`2Axy`**: set waveform of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` is the value. - only in OPL2 or higher. -- `30xx`: enable envelope hard reset. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` is the value. -- `53xy`: set VIB of operator. +- **`53xy`**: set VIB of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` determines whether VIB is on. -- `54xy` set KSL of operator. +- **`54xy`**: set KSL of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` is the value. -- `55xy` set SUS of operator. +- **`55xy`**: set SUS of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` determines whether SUS is on. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. - only in 4-op mode (OPL3). -- `5Axx`: set DR of operator 4. +- **`5Axx`**: set DR of operator 4. - only in 4-op mode (OPL3). -- `5Bxy`: set KSR of operator. +- **`5Bxy`**: set KSR of operator. - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". - `y` determines whether KSR is on. diff --git a/doc/7-systems/opll.md b/doc/7-systems/opll.md index 115e4bd7..e4dc3ae3 100644 --- a/doc/7-systems/opll.md +++ b/doc/7-systems/opll.md @@ -29,39 +29,39 @@ the YM2413 is equipped with the following features: # effects -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1 or 2). - `y` is the multiplier. -- `18xx`: toggle drums mode. +- **`18xx`**: toggle drums mode. - 0 disables it and 1 enables it. - only in drums chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `50xy`: set AM of operator. +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`50xy`**: set AM of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` is the value. -- `53xy`: set VIB of operator. +- **`53xy`**: set VIB of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` determines whether VIB is on. -- `54xy` set KSL of operator. +- **`54xy`**: set KSL of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` is the value. -- `55xy` set EGT of operator. +- **`55xy`**: set EGT of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` determines whether EGT is on. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `5Bxy`: set KSR of operator. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`5Bxy`**: set KSR of operator. - `x` is the operator (1-2). a value of 0 means "all operators". - `y` determines whether KSR is on. diff --git a/doc/7-systems/opz.md b/doc/7-systems/opz.md index 507e4ab1..f5b79d4c 100644 --- a/doc/7-systems/opz.md +++ b/doc/7-systems/opz.md @@ -25,68 +25,68 @@ no plans have been made for TX81Z MIDI passthrough, because: # effects -- `10xx`: set noise frequency of channel 8 operator 4. 00 disables noise while 01 to 20 enables it. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`10xx`**: set noise frequency of channel 8 operator 4. 00 disables noise while 01 to 20 enables it. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `17xx`: set LFO speed. -- `18xx`: set LFO waveform. `xx` may be one of the following: +- **`17xx`**: set LFO speed. +- **`18xx`**: set LFO waveform. `xx` may be one of the following: - `00`: saw - `01`: square - `02`: triangle - `03`: noise -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `1Exx`: set LFO AM depth. -- `1Fxx`: set LFO PM depth. -- `24xx`: set LFO 2 speed. -- `25xx`: set LFO 2 waveform. `xx` may be one of the following: +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`1Exx`**: set LFO AM depth. +- **`1Fxx`**: set LFO PM depth. +- **`24xx`**: set LFO 2 speed. +- **`25xx`**: set LFO 2 waveform. `xx` may be one of the following: - `00`: saw - `01`: square - `02`: triangle - `03`: noise -- `26xx`: set LFO 2 AM depth. -- `27xx`: set LFO 2 PM depth. -- `28xy`: set reverb of operator. +- **`26xx`**: set LFO 2 AM depth. +- **`27xx`**: set LFO 2 PM depth. +- **`28xy`**: set reverb of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `2Axy`: set waveform of operator. +- **`2Axy`**: set waveform of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `2Bxy`: set EG shift of operator. +- **`2Bxy`**: set EG shift of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `2Cxy` set fine multiplier of operator. +- **`2Cxy`**: set fine multiplier of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `2Fxx`: enable envelope hard reset. +- **`2Fxx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `3xyy`: set fixed frequency of operator 1/2. +- **`3xyy`**: set fixed frequency of operator 1/2. - `x` is the block (0-7 for operator 1; 8-F for operator 2). - `y` is the frequency. fixed frequency mode will be disabled if this is less than 8. - the actual frequency is: `y*(2^x)`. -- `4xyy`: set fixed frequency of operator 3/4. +- **`4xyy`**: set fixed frequency of operator 3/4. - `x` is the block (0-7 for operator 3; 8-F for operator 4). - `y` is the frequency. fixed frequency mode will be disabled if this is less than 8. - the actual frequency is: `y*(2^x)`. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -97,19 +97,19 @@ no plans have been made for TX81Z MIDI passthrough, because: - 5: -3 - 6: -2 - 7: -1 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set DT2 of operator. +- **`55xy`**: set DT2 of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/pce.md b/doc/7-systems/pce.md index 2405ac4f..ea7b0a23 100644 --- a/doc/7-systems/pce.md +++ b/doc/7-systems/pce.md @@ -9,14 +9,14 @@ furthermore, it has some PCM and LFO! # effects -- `10xx`: change wave. -- `11xx`: toggle noise mode. only available in the last two channels. -- `12xx`: setup LFO. the following values are accepted: +- **`10xx`**: change wave. +- **`11xx`**: toggle noise mode. only available in the last two channels. +- **`12xx`**: setup LFO. the following values are accepted: - `00`: LFO disabled. - `01`: LFO enabled, shift 0. - `02`: LFO enabled, shift 4. - `03`: LFO enabled, shift 8. - when LFO is enabled, channel 2 is muted and its output is passed to channel 1's frequency. -- `13xx`: set LFO speed. -- `17xx`: toggle PCM mode. +- **`13xx`**: set LFO speed. +- **`17xx`**: toggle PCM mode. - **this effect is there for compatibility reasons** - it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). diff --git a/doc/7-systems/pet.md b/doc/7-systems/pet.md index f2c2c1c6..8d5406db 100644 --- a/doc/7-systems/pet.md +++ b/doc/7-systems/pet.md @@ -8,4 +8,4 @@ some of these didn't even have sound... # effects -- 10xx: set waveform. `xx` is a bitmask. +- **`10xx`**: set waveform. `xx` is a bitmask. diff --git a/doc/7-systems/pokey.md b/doc/7-systems/pokey.md index efebfcd3..1125da1a 100644 --- a/doc/7-systems/pokey.md +++ b/doc/7-systems/pokey.md @@ -4,7 +4,7 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, # effects -- 10xx: set waveform. +- **`10xx`**: set waveform. - 0: harsh noise (poly5+17) - 1: square buzz (poly5) - 2: weird noise (poly4+5) @@ -13,7 +13,7 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, - 5: square - 6: bass (poly4) - 7: buzz (poly4) -- 11xx: set AUDCTL. `xx` is a bitmask. +- **`11xx`**: set AUDCTL. `xx` is a bitmask. - bit 7: 9-bit poly mode. shortens noise. - bit 6: high channel 1 clock (~1.79MHz on NTSC). - overrides 15KHz mode. @@ -32,6 +32,3 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, - filtered output on channel 2 (I suggest you to set channel 4 volume to 0). - use for PWM effects (not automatic!). - bit 0: 15KHz mode. -- 12xx: toggle two-tone mode. - - when enabled, channel 2 modulates channel 1. I don't know how, but it does. - - only on ASAP core. diff --git a/doc/7-systems/qsound.md b/doc/7-systems/qsound.md index 81bfe4b9..95bd6124 100644 --- a/doc/7-systems/qsound.md +++ b/doc/7-systems/qsound.md @@ -12,8 +12,8 @@ there are also 3 ADPCM channels. ADPCM samples are fixed to 8012 Hz. # effects -- `10xx`: set echo feedback level. +- **`10xx`**: set echo feedback level. - this effect will apply to all channels. -- `11xx`: set echo level. -- `12xx`: toggle QSound algorithm (on by default). -- `3xxx`: set the length of the echo delay buffer. +- **`11xx`**: set echo level. +- **`12xx`**: toggle QSound algorithm (on by default). +- **`3xxx`**: set the length of the echo delay buffer. diff --git a/doc/7-systems/saa1099.md b/doc/7-systems/saa1099.md index 8c58bbbb..55073716 100644 --- a/doc/7-systems/saa1099.md +++ b/doc/7-systems/saa1099.md @@ -6,13 +6,13 @@ this was used by the Game Blaster and SAM Coupé. it's pretty similar to the AY- # effects -- `10xy`: set channel mode. +- **`10xy`**: set channel mode. - `x` toggles noise. - `y` toggles square. - this effect affects either the first 3 or last 3 channels, depending on where it is placed. -- `11xx`: set noise frequency. +- **`11xx`**: set noise frequency. - this effect affects either the first 3 or last 3 channels, depending on where it is placed. -- `12xx`: setup envelope. this is a bitmask. +- **`12xx`**: setup envelope. this is a bitmask. - bit 7 toggles the envelope. - bit 5 toggles whether to use a fixed frequency or lock to the frequency of channel 2 or 5. - bit 4 sets the envelope resolution. diff --git a/doc/7-systems/scc.md b/doc/7-systems/scc.md index fb69a9cb..413d240f 100644 --- a/doc/7-systems/scc.md +++ b/doc/7-systems/scc.md @@ -8,4 +8,4 @@ the SCC+ fixes this issue though (while being compatible with SCC games). # effects -- `10xx`: change wave. +- **`10xx`**: change wave. diff --git a/doc/7-systems/segapcm.md b/doc/7-systems/segapcm.md index ba1a8118..b44ca250 100644 --- a/doc/7-systems/segapcm.md +++ b/doc/7-systems/segapcm.md @@ -12,6 +12,6 @@ Furnace also has a five channel version of this chip, but it only exists for Def # effects -- `20xx`: set PCM frequency. +- **`20xx`**: set PCM frequency. - `xx` is a 256th fraction of 31250Hz. - this effect exists for mostly DefleMask compatibility - it is otherwise recommended to use Sample type instruments. diff --git a/doc/7-systems/sm8521.md b/doc/7-systems/sm8521.md index e6846198..563aa35c 100644 --- a/doc/7-systems/sm8521.md +++ b/doc/7-systems/sm8521.md @@ -19,5 +19,5 @@ The sound-related features and quirks of the SM8521 are as follows: ## effect commands -- `10xx` Set waveform +- **`10xx`**: Set waveform - `xx` is a value between 0 and 255, that sets the waveform of the channel you place it on. diff --git a/doc/7-systems/sms.md b/doc/7-systems/sms.md index 37097ccd..a17f8d22 100644 --- a/doc/7-systems/sms.md +++ b/doc/7-systems/sms.md @@ -8,7 +8,7 @@ on the other hand, the chip was clocked at a much higher speed on Master System # effects -- `20xy`: set noise mode. +- **`20xy`**: set noise mode. - `x` controls whether to inherit frequency from channel 3. - 0: use one of 3 preset frequencies (C: A-2; C#: A-3; D: A-4). - 1: use frequency of channel 3. diff --git a/doc/7-systems/snes.md b/doc/7-systems/snes.md index 61b30635..a9a98b89 100644 --- a/doc/7-systems/snes.md +++ b/doc/7-systems/snes.md @@ -22,58 +22,58 @@ Furnace also allows the SNES to use wavetables (and the wavetable synthesizer) i # effects -- `10xx`: set waveform. -- `11xx`: toggle noise mode. -- `12xx`: toggle echo on this channel. -- `13xx`: toggle pitch modulation. -- `14xy`: toggle inverting the left or right channels (x: left, y: right). -- `15xx`: set envelope mode. +- **`10xx`**: set waveform. +- **`11xx`**: toggle noise mode. +- **`12xx`**: toggle echo on this channel. +- **`13xx`**: toggle pitch modulation. +- **`14xy`**: toggle inverting the left or right channels (x: left, y: right). +- **`15xx`**: set envelope mode. - 0: ADSR. - 1: gain (direct). - 2: linear decrement. - 3: exponential decrement. - 4: linear increment. - 5: bent line (inverse log) increment. -- `16xx`: set gain (00 to 7F if direct, 00 to 1F otherwise). -- `18xx`: enable echo buffer. -- `19xx`: set echo delay +- **`16xx`**: set gain (00 to 7F if direct, 00 to 1F otherwise). +- **`18xx`**: enable echo buffer. +- **`19xx`**: set echo delay - goes from 0 to F. -- `1Axx`: set left echo channel volume. +- **`1Axx`**: set left echo channel volume. - this is a signed number. - 00 to 7F for 0 to 127. - 80 to FF for -128 to -1. - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- `1Bxx`: set right echo channel volume. +- **`1Bxx`**: set right echo channel volume. - this is a signed number. - 00 to 7F for 0 to 127. - 80 to FF for -128 to -1. - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- `1Cxx`: set echo feedback. +- **`1Cxx`**: set echo feedback. - this is a signed number. - 00 to 7F for 0 to 127. - 80 to FF for -128 to -1. - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- `1Dxx`: set noise generator frequency (00 to 1F). -- `1Exx`: set left dry/global volume. +- **`1Dxx`**: set noise generator frequency (00 to 1F). +- **`1Exx`**: set left dry/global volume. - this does not affect echo. -- `1Fxx`: set right dry/global volume. +- **`1Fxx`**: set right dry/global volume. - this does not affect echo. -- `20xx`: set attack (0 to F). +- **`20xx`**: set attack (0 to F). - only in ADSR envelope mode. -- `21xx`: set decay (0 to 7). +- **`21xx`**: set decay (0 to 7). - only in ADSR envelope mode. -- `22xx`: set sustain (0 to 7). +- **`22xx`**: set sustain (0 to 7). - only in ADSR envelope mode. -- `23xx`: set release (00 to 1F). +- **`23xx`**: set release (00 to 1F). - only in ADSR envelope mode. -- `30xx`: set echo filter coefficient 0. -- `31xx`: set echo filter coefficient 1. -- `32xx`: set echo filter coefficient 2. -- `33xx`: set echo filter coefficient 3. -- `34xx`: set echo filter coefficient 4. -- `35xx`: set echo filter coefficient 5. -- `36xx`: set echo filter coefficient 6. -- `37xx`: set echo filter coefficient 7. +- **`30xx`**: set echo filter coefficient 0. +- **`31xx`**: set echo filter coefficient 1. +- **`32xx`**: set echo filter coefficient 2. +- **`33xx`**: set echo filter coefficient 3. +- **`34xx`**: set echo filter coefficient 4. +- **`35xx`**: set echo filter coefficient 5. +- **`36xx`**: set echo filter coefficient 6. +- **`37xx`**: set echo filter coefficient 7. - all of these are signed numbers. - 00 to 7F for 0 to 127. - 80 to FF for -128 to -1. diff --git a/doc/7-systems/soundunit.md b/doc/7-systems/soundunit.md index 4f123461..6bc43d18 100644 --- a/doc/7-systems/soundunit.md +++ b/doc/7-systems/soundunit.md @@ -14,7 +14,7 @@ it has the following capabilities: # effects -- `10xx`: set waveform +- **`10xx`**: set waveform - 0: pulse wave - 1: sawtooth - 2: sine wave @@ -23,34 +23,34 @@ it has the following capabilities: - 5: periodic noise - 6: XOR sine - 7: XOR triangle -- `12xx`: set pulse width (0 to 7F) -- `13xx`: set resonance of filter (0 to FF) +- **`12xx`**: set pulse width (0 to 7F) +- **`13xx`**: set resonance of filter (0 to FF) - despite what the internal effects list says (0 to F), you can use a resonance value from 0 to FF (255) -- `14xx`: set filter mode and ringmod +- **`14xx`**: set filter mode and ringmod - bit 0: ring mod - bit 1: low pass - bit 2: high pass - bit 3: band pass -- `15xx`: set frequency sweep period low byte -- `16xx`: set frequency sweep period high byte -- `17xx`: set volume sweep period low byte -- `18xx`: set volume sweep period high byte -- `19xx`: set cutoff sweep period low byte -- `1Axx`: set cutoff sweep period high byte -- `1Bxx`: set frequency sweep boundary -- `1Cxx`: set volume sweep boundary -- `1Dxx`: set cutoff sweep boundary -- `1Exx`: set phase reset period low byte -- `1Fxx`: set phase reset period high byte -- `20xx`: toggle frequency sweep +- **`15xx`**: set frequency sweep period low byte +- **`16xx`**: set frequency sweep period high byte +- **`17xx`**: set volume sweep period low byte +- **`18xx`**: set volume sweep period high byte +- **`19xx`**: set cutoff sweep period low byte +- **`1Axx`**: set cutoff sweep period high byte +- **`1Bxx`**: set frequency sweep boundary +- **`1Cxx`**: set volume sweep boundary +- **`1Dxx`**: set cutoff sweep boundary +- **`1Exx`**: set phase reset period low byte +- **`1Fxx`**: set phase reset period high byte +- **`20xx`**: toggle frequency sweep - bit 0-6: speed - bit 7: up direction -- `21xx`: toggle volume sweep +- **`21xx`**: toggle volume sweep - bit 0-4: speed - bit 5: up direction - bit 6: loop - bit 7: alternate -- `22xx`: toggle cutoff sweep +- **`22xx`**: toggle cutoff sweep - bit 0-6: speed - bit 7: up direction -- `4xxx`: set cutoff (0 to FFF) +- **`4xxx`**: set cutoff (0 to FFF) diff --git a/doc/7-systems/t6w28.md b/doc/7-systems/t6w28.md index 9083cb7a..346100f0 100644 --- a/doc/7-systems/t6w28.md +++ b/doc/7-systems/t6w28.md @@ -6,6 +6,6 @@ this chip was used in Neo Geo Pocket. # effects -- `20xx`: set noise mode. +- **`20xx`**: set noise mode. - 0: thin pulse. - 1: noise. diff --git a/doc/7-systems/tia.md b/doc/7-systems/tia.md index 3d9146af..fbfd2edb 100644 --- a/doc/7-systems/tia.md +++ b/doc/7-systems/tia.md @@ -9,7 +9,7 @@ Furnace isn't complete without this one... # effects -- `10xx` select shape. `xx` may be one of: +- **`10xx`**: select shape. `xx` may be one of: - 0: nothing - 1: buzzy - 2: low buzzy diff --git a/doc/7-systems/vera.md b/doc/7-systems/vera.md index be610a80..8d630129 100644 --- a/doc/7-systems/vera.md +++ b/doc/7-systems/vera.md @@ -7,9 +7,9 @@ currently Furnace does not support the PCM channel's stereo mode, though (except # effects -- `20xx`: set waveform. the following values are accepted: +- **`20xx`**: set waveform. the following values are accepted: - 0: pulse - 1: saw - 2: triangle - 3: noise -- `22xx`: set duty cycle. `xx` may go from 0 to 3F. +- **`22xx`**: set duty cycle. `xx` may go from 0 to 3F. diff --git a/doc/7-systems/vic20.md b/doc/7-systems/vic20.md index cf9a8a46..4d445936 100644 --- a/doc/7-systems/vic20.md +++ b/doc/7-systems/vic20.md @@ -15,4 +15,4 @@ these channels are not referred as "square" wave channels since a technique to p ## effect commands - - `10xx` Switch waveform (`xx` from `00` to `0F`) +- **`10xx`**: Switch waveform (`xx` from `00` to `0F`) diff --git a/doc/7-systems/virtual-boy.md b/doc/7-systems/virtual-boy.md index 94a2d049..9079d1c7 100644 --- a/doc/7-systems/virtual-boy.md +++ b/doc/7-systems/virtual-boy.md @@ -10,10 +10,10 @@ additionally, channel 5 offers a modulation/sweep unit. the former is similar to # effects -- `10xx`: set waveform. -- `11xx`: set noise length (0 to 7). +- **`10xx`**: set waveform. +- **`11xx`**: set noise length (0 to 7). - only in the noise channel. -- `12xy`: setup envelope. +- **`12xy`**: setup envelope. - `x` determines whether envelope is enabled or not. - 0: disabled - 1: enabled @@ -22,13 +22,13 @@ additionally, channel 5 offers a modulation/sweep unit. the former is similar to - `y` sets the speed and direction. - 0-7: down - 8-F: up -- `13xy`: setup sweep. +- **`13xy`**: setup sweep. - `x` sets the speed. - 0 and 8 are "speed 0" - sweep is ineffective. - `y` sets the shift (0 to 7). - 8 and higher will mute the channel. - only in channel 5. -- `14xy`: setup modulation. +- **`14xy`**: setup modulation. - `x` determines whether it's enabled or not. - 0: disabled - 1: enabled @@ -38,6 +38,6 @@ additionally, channel 5 offers a modulation/sweep unit. the former is similar to - 0 and 8 are "speed 0" - modulation is ineffective. - no, you can't really do Yamaha FM using this. - only in channel 5. -- `15xx`: set modulation wave. +- **`15xx`**: set modulation wave. - `xx` points to a wavetable. it should have a height of 255. - this is an alternative to setting the modulation wave through the instrument. diff --git a/doc/7-systems/vrc6.md b/doc/7-systems/vrc6.md index 0ec4c8b2..e761f90d 100644 --- a/doc/7-systems/vrc6.md +++ b/doc/7-systems/vrc6.md @@ -14,5 +14,5 @@ Furnace supports this routine for PCM playback, but it consumes a lot of CPU tim these effects only are effective in the pulse channels. -- `12xx`: set duty cycle (0 to 7). -- `17xx`: toggle PCM mode. +- **`12xx`**: set duty cycle (0 to 7). +- **`17xx`**: toggle PCM mode. diff --git a/doc/7-systems/wonderswan.md b/doc/7-systems/wonderswan.md index 21a1a926..eb3b47cd 100644 --- a/doc/7-systems/wonderswan.md +++ b/doc/7-systems/wonderswan.md @@ -10,12 +10,12 @@ it has 4 wavetable channels. some of them have additional capabilities: # effects -- `10xx`: change wave. -- `11xx`: setup noise mode (channel 4 only). +- **`10xx`**: change wave. +- **`11xx`**: setup noise mode (channel 4 only). - 0: disable. - 1-8: enable and set tap preset. -- `12xx`: setup sweep period (channel 3 only). +- **`12xx`**: setup sweep period (channel 3 only). - 0: disable. - 1-32: enable and set period. -- `13xx`: setup sweep amount (channel 3 only). -- `17xx`: toggle PCM mode (channel 2 only). +- **`13xx`**: setup sweep amount (channel 3 only). +- **`17xx`**: toggle PCM mode (channel 2 only). diff --git a/doc/7-systems/x1-010.md b/doc/7-systems/x1-010.md index 80b5b41a..deae16e7 100644 --- a/doc/7-systems/x1-010.md +++ b/doc/7-systems/x1-010.md @@ -25,20 +25,20 @@ In furnace, you can enable the envelope shape split mode. When it is set, its wa # effects -- `10xx`: change wave. -- `11xx`: change envelope shape (also wavetable). -- `17xx`: toggle PCM mode. -- `20xx`: set PCM frequency (1 to FF). -- `22xx`: set envelope mode. +- **`10xx`**: change wave. +- **`11xx`**: change envelope shape (also wavetable). +- **`17xx`**: toggle PCM mode. +- **`20xx`**: set PCM frequency (1 to FF). +- **`22xx`**: set envelope mode. - bit 0 sets whether envelope will affect this channel. - bit 1 toggles the envelope one-shot mode. when it is set, channel is halted after envelope cycle is finished. - bit 2 toggles the envelope shape split mode. when it is set, envelope shape will be split to left half and right half. - bit 3/5 sets whether the right/left shape will mirror the original one. - bit 4/6 sets whether the right/left output will mirror the original one. -- `23xx`: set envelope period. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `29xy`: enable auto-envelope mode. +- **`23xx`**: set envelope period. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`29xy`**: enable auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. diff --git a/doc/7-systems/ym2151.md b/doc/7-systems/ym2151.md index cef663c8..affb8c3a 100644 --- a/doc/7-systems/ym2151.md +++ b/doc/7-systems/ym2151.md @@ -8,40 +8,40 @@ in most arcade boards the chip was used in combination with a PCM chip, like [Se # effects -- `10xx`: set noise frequency of channel 8 operator 4. 00 disables noise while 01 to 20 enables it. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`10xx`**: set noise frequency of channel 8 operator 4. 00 disables noise while 01 to 20 enables it. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `17xx`: set LFO speed. -- `18xx`: set LFO waveform. `xx` may be one of the following: +- **`17xx`**: set LFO speed. +- **`18xx`**: set LFO waveform. `xx` may be one of the following: - `00`: saw - `01`: square - `02`: triangle - `03`: noise -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `1Exx`: set LFO AM depth. -- `1Fxx`: set LFO PM depth. -- `30xx`: enable envelope hard reset. +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`1Exx`**: set LFO AM depth. +- **`1Fxx`**: set LFO PM depth. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -52,19 +52,19 @@ in most arcade boards the chip was used in combination with a PCM chip, like [Se - 5: -3 - 6: -2 - 7: -1 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set DT2 of operator. +- **`55xy`**: set DT2 of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/ym2203.md b/doc/7-systems/ym2203.md index b9f76b8e..984d32f9 100644 --- a/doc/7-systems/ym2203.md +++ b/doc/7-systems/ym2203.md @@ -11,23 +11,23 @@ several variants of this chip were released as well, with more features. # effects -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `18xx`: toggle extended channel 3 mode. +- **`18xx`**: toggle extended channel 3 mode. - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `20xx`: set SSG channel mode. `xx` may be one of the following: +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`20xx`**: set SSG channel mode. `xx` may be one of the following: - `00`: square - `01`: noise - `02`: square and noise @@ -36,8 +36,8 @@ several variants of this chip were released as well, with more features. - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- `21xx`: set noise frequency. `xx` is a value between 00 and 1F. -- `22xy`: set envelope mode. +- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. +- **`22xy`**: set envelope mode. - `x` sets the envelope shape, which may be one of the following: - `0: \___` decay - `4: /___` attack once @@ -50,27 +50,27 @@ several variants of this chip were released as well, with more features. - `E: /\/\` obelisco - `F: /___` attack once - if `y` is 1 then the envelope will affect this channel. -- `23xx`: set envelope period low byte. -- `24xx`: set envelope period high byte. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `29xy`: enable SSG auto-envelope mode. +- **`23xx`**: set envelope period low byte. +- **`24xx`**: set envelope period high byte. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`29xy`**: enable SSG auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- `30xx`: enable envelope hard reset. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -81,21 +81,21 @@ several variants of this chip were released as well, with more features. - 5: -3 - 6: -2 - 7: -1 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set SSG-EG of operator. +- **`55xy`**: set SSG-EG of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/ym2608.md b/doc/7-systems/ym2608.md index 5eda41c1..5f57e5f6 100644 --- a/doc/7-systems/ym2608.md +++ b/doc/7-systems/ym2608.md @@ -8,26 +8,26 @@ the YM2610 (OPNB) and YM2610B chips are very similar to this one, but the built- # effects -- `10xy`: set LFO parameters. +- **`10xy`**: set LFO parameters. - `x` toggles the LFO. - `y` sets its speed. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `18xx`: toggle extended channel 3 mode. +- **`18xx`**: toggle extended channel 3 mode. - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `20xx`: set SSG channel mode. `xx` may be one of the following: +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`20xx`**: set SSG channel mode. `xx` may be one of the following: - `00`: square - `01`: noise - `02`: square and noise @@ -36,8 +36,8 @@ the YM2610 (OPNB) and YM2610B chips are very similar to this one, but the built- - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- `21xx`: set noise frequency. `xx` is a value between 00 and 1F. -- `22xy`: set envelope mode. +- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. +- **`22xy`**: set envelope mode. - `x` sets the envelope shape, which may be one of the following: - `0: \___` decay - `4: /___` attack once @@ -50,27 +50,27 @@ the YM2610 (OPNB) and YM2610B chips are very similar to this one, but the built- - `E: /\/\` obelisco - `F: /___` attack once - if `y` is 1 then the envelope will affect this channel. -- `23xx`: set envelope period low byte. -- `24xx`: set envelope period high byte. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `29xy`: enable SSG auto-envelope mode. +- **`23xx`**: set envelope period low byte. +- **`24xx`**: set envelope period high byte. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`29xy`**: enable SSG auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- `30xx`: enable envelope hard reset. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -81,21 +81,21 @@ the YM2610 (OPNB) and YM2610B chips are very similar to this one, but the built- - 5: -3 - 6: -2 - 7: -1 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set SSG-EG of operator. +- **`55xy`**: set SSG-EG of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/ym2610.md b/doc/7-systems/ym2610.md index a18888e6..022b82e9 100644 --- a/doc/7-systems/ym2610.md +++ b/doc/7-systems/ym2610.md @@ -6,26 +6,26 @@ its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different # effects -- `10xy`: set LFO parameters. +- **`10xy`**: set LFO parameters. - `x` toggles the LFO. - `y` sets its speed. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `18xx`: toggle extended channel 2 mode. +- **`18xx`**: toggle extended channel 2 mode. - 0 disables it and 1 enables it. - only in extended channel 2 chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `20xx`: set SSG channel mode. `xx` may be one of the following: +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`20xx`**: set SSG channel mode. `xx` may be one of the following: - `00`: square - `01`: noise - `02`: square and noise @@ -34,8 +34,8 @@ its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- `21xx`: set noise frequency. `xx` is a value between 00 and 1F. -- `22xy`: set envelope mode. +- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. +- **`22xy`**: set envelope mode. - `x` sets the envelope shape, which may be one of the following: - `0: \___` decay - `4: /___` attack once @@ -48,27 +48,27 @@ its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different - `E: /\/\` obelisco - `F: /___` attack once - if `y` is 1 then the envelope will affect this channel. -- `23xx`: set envelope period low byte. -- `24xx`: set envelope period high byte. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `29xy`: enable SSG auto-envelope mode. +- **`23xx`**: set envelope period low byte. +- **`24xx`**: set envelope period high byte. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`29xy`**: enable SSG auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- `30xx`: enable envelope hard reset. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -79,21 +79,21 @@ its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different - 5: -3 - 6: -2 - 7: -1 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set SSG-EG of operator. +- **`55xy`**: set SSG-EG of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/ym2610b.md b/doc/7-systems/ym2610b.md index f20e82ed..feeea9f1 100644 --- a/doc/7-systems/ym2610b.md +++ b/doc/7-systems/ym2610b.md @@ -5,26 +5,26 @@ it is backward compatible with the original chip. # effects -- `10xy`: set LFO parameters. +- **`10xy`**: set LFO parameters. - `x` toggles the LFO. - `y` sets its speed. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `18xx`: toggle extended channel 3 mode. +- **`18xx`**: toggle extended channel 3 mode. - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `20xx`: set SSG channel mode. `xx` may be one of the following: +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`20xx`**: set SSG channel mode. `xx` may be one of the following: - `00`: square - `01`: noise - `02`: square and noise @@ -33,8 +33,8 @@ it is backward compatible with the original chip. - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- `21xx`: set noise frequency. `xx` is a value between 00 and 1F. -- `22xy`: set envelope mode. +- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. +- **`22xy`**: set envelope mode. - `x` sets the envelope shape, which may be one of the following: - `0: \___` decay - `4: /___` attack once @@ -47,27 +47,27 @@ it is backward compatible with the original chip. - `E: /\/\` obelisco - `F: /___` attack once - if `y` is 1 then the envelope will affect this channel. -- `23xx`: set envelope period low byte. -- `24xx`: set envelope period high byte. -- `25xx`: slide envelope period up. -- `26xx`: slide envelope period down. -- `29xy`: enable SSG auto-envelope mode. +- **`23xx`**: set envelope period low byte. +- **`24xx`**: set envelope period high byte. +- **`25xx`**: slide envelope period up. +- **`26xx`**: slide envelope period down. +- **`29xy`**: enable SSG auto-envelope mode. - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- `30xx`: enable envelope hard reset. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -78,21 +78,21 @@ it is backward compatible with the original chip. - 5: -3 - 6: -2 - 7: -1 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set SSG-EG of operator. +- **`55xy`**: set SSG-EG of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/ym2612.md b/doc/7-systems/ym2612.md index dda45266..afdb98f3 100644 --- a/doc/7-systems/ym2612.md +++ b/doc/7-systems/ym2612.md @@ -4,39 +4,39 @@ one of two chips that powered the Sega Genesis. It is a six-channel, four-operat # effects -- `10xy`: set LFO parameters. +- **`10xy`**: set LFO parameters. - `x` toggles the LFO. - `y` sets its speed. -- `11xx`: set feedback of channel. -- `12xx`: set operator 1 level. -- `13xx`: set operator 2 level. -- `14xx`: set operator 3 level. -- `15xx`: set operator 4 level. -- `16xy`: set multiplier of operator. +- **`11xx`**: set feedback of channel. +- **`12xx`**: set operator 1 level. +- **`13xx`**: set operator 2 level. +- **`14xx`**: set operator 3 level. +- **`15xx`**: set operator 4 level. +- **`16xy`**: set multiplier of operator. - `x` is the operator (1-4). - `y` is the multiplier. -- `17xx`: enable PCM channel. +- **`17xx`**: enable PCM channel. - this only works on channel 6. -- `18xx`: toggle extended channel 3 mode. +- **`18xx`**: toggle extended channel 3 mode. - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- `19xx`: set attack of all operators. -- `1Axx`: set attack of operator 1. -- `1Bxx`: set attack of operator 2. -- `1Cxx`: set attack of operator 3. -- `1Dxx`: set attack of operator 4. -- `30xx`: enable envelope hard reset. +- **`19xx`**: set attack of all operators. +- **`1Axx`**: set attack of operator 1. +- **`1Bxx`**: set attack of operator 2. +- **`1Cxx`**: set attack of operator 3. +- **`1Dxx`**: set attack of operator 4. +- **`30xx`**: enable envelope hard reset. - this works by inserting a quick release and tiny delay before a new note. -- `50xy`: set AM of operator. +- **`50xy`**: set AM of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- `51xy` set SL of operator. +- **`51xy`**: set SL of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `52xy` set RR of operator. +- **`52xy`**: set RR of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `53xy` set DT of operator. +- **`53xy`**: set DT of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: -3 @@ -47,21 +47,21 @@ one of two chips that powered the Sega Genesis. It is a six-channel, four-operat - 5: 2 - 6: 3 - 7: -0 -- `54xy` set RS of operator. +- **`54xy`**: set RS of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- `55xy` set SSG-EG of operator. +- **`55xy`**: set SSG-EG of operator. - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- `56xx`: set DR of all operators. -- `57xx`: set DR of operator 1. -- `58xx`: set DR of operator 2. -- `59xx`: set DR of operator 3. -- `5Axx`: set DR of operator 4. -- `5Bxx`: set D2R/SR of all operators. -- `5Cxx`: set D2R/SR of operator 1. -- `5Dxx`: set D2R/SR of operator 2. -- `5Exx`: set D2R/SR of operator 3. -- `5Fxx`: set D2R/SR of operator 4. +- **`56xx`**: set DR of all operators. +- **`57xx`**: set DR of operator 1. +- **`58xx`**: set DR of operator 2. +- **`59xx`**: set DR of operator 3. +- **`5Axx`**: set DR of operator 4. +- **`5Bxx`**: set D2R/SR of all operators. +- **`5Cxx`**: set D2R/SR of operator 1. +- **`5Dxx`**: set D2R/SR of operator 2. +- **`5Exx`**: set D2R/SR of operator 3. +- **`5Fxx`**: set D2R/SR of operator 4. diff --git a/doc/7-systems/zxbeep.md b/doc/7-systems/zxbeep.md index 6504ce98..6381814a 100644 --- a/doc/7-systems/zxbeep.md +++ b/doc/7-systems/zxbeep.md @@ -6,8 +6,8 @@ not really - very soon talented programmers found out ways to output much more t # effects -- `12xx`: set pulse width. -- `17xx`: trigger overlay drum. +- **`12xx`**: set pulse width. +- **`17xx`**: trigger overlay drum. - `xx` is the sample number. - overlay drums are 1-bit and always play at 55930Hz (NTSC) or 55420Hz (PAL). - the maximum length is 2048! diff --git a/doc/8-advanced/channels.md b/doc/8-advanced/channels.md index b2686960..7bf4fbf7 100644 --- a/doc/8-advanced/channels.md +++ b/doc/8-advanced/channels.md @@ -5,7 +5,7 @@ The "Channels" dialog allows manipulation of the song's channels. ![channels dialog](channels.png) Each channel has the following options: -- "Visible": uncheck the box to hide the channel from view. Pattern data will be kept. -- Crossed-arrows button: Click and drag to rearrange pattern data throughout the song. _Note:_ This does **not** move channels around within a chip! It only affects pattern data. -- "Name" is the name displayed at the top of each channel in the tracker view. +- **Visible**: uncheck the box to hide the channel from view. Pattern data will be kept. +- Crossed-arrows button: Click and drag to rearrange pattern data throughout the song. _Note:_ This does _not_ move channels around within a chip! It only affects pattern data. +- **Name** is the name displayed at the top of each channel in the tracker view. - To the right of that is the abbreviation used above each channel in the order view. \ No newline at end of file diff --git a/doc/8-advanced/chanosc.md b/doc/8-advanced/chanosc.md index acc8a4fc..55e04a19 100644 --- a/doc/8-advanced/chanosc.md +++ b/doc/8-advanced/chanosc.md @@ -5,12 +5,12 @@ The "Oscilloscope (per channel)" dialog shows an individual oscilloscope for eac ![oscilloscope per-channel configuration view](chanosc.png) Right-clicking within the view will change it to the configuration view shown above: -- "Columns" sets the number of columns the view will be split into. -- "Size (ms)" sets what length of audio is visible in each oscilloscope. -- "Center waveform" does its best to latch to the channel's note frequency and centers the display. -- "Gradient" is presently unimplemented. -- The color selector allows setting the waveform color. Right-clicking on it pops up an option dialog: +- **Columns**: Sets the number of columns the view will be split into. +- **Size (ms)**: Sets what length of audio is visible in each oscilloscope. +- **Center waveform**: Does its best to latch to the channel's note frequency and centers the display. +- **Gradient**: (document this) +- The color selector sets the waveform color. Right-clicking on it pops up an option dialog: - Select between the square selector and the color wheel selector. - - "Alpha bar" adds a transparency selector. + - **Alpha bar**: Adds a transparency selector. - The boxes below that are for selecting colors numerically by red-green-blue-alpha, hue-saturation-value-alpha, and HTML-style RGBA in hex. - The OK button returns from options view to regular. diff --git a/doc/8-advanced/chip-manager.md b/doc/8-advanced/chip-manager.md index 4b08e49f..722f3a97 100644 --- a/doc/8-advanced/chip-manager.md +++ b/doc/8-advanced/chip-manager.md @@ -4,7 +4,7 @@ The **chip manager** window does exactly what it says. ![chip manager](chip-manager.png) -"Preserve channel order" will make existing pattern data stay in place even when chips are rearranged. If turned off, pattern data will rearrange to match (the default, and usually the desired behavior). +**Preserve channel order**: Make existing pattern data stay in place even when chips are rearranged. If turned off, pattern data will rearrange to match (the default, and usually the desired behavior). To move a chip around, click and drag the ![crossed-arrows](chip-manager-move.png) button to its left. diff --git a/doc/8-advanced/compat-flags.md b/doc/8-advanced/compat-flags.md index 6f2380dd..55319cc1 100644 --- a/doc/8-advanced/compat-flags.md +++ b/doc/8-advanced/compat-flags.md @@ -1,5 +1,5 @@ # compatibility flags -The "Compatibility Flags" window contains several tabs full of settings that change aspects of tracking and playback. A new Furnace file will leave them all at their defaults (off), while opening a DefleMask, Amiga MOD, or earlier Furnace file will automatically set the appropriate options. +The **Compatibility Flags** window contains several tabs full of settings that change aspects of tracking and playback. A new Furnace file will leave them all at their defaults (off), while opening a DefleMask, Amiga MOD, or earlier Furnace file will automatically set the appropriate options. Hovering over most options will bring up additional info about them. It's not recommended to change any of these without clear reason. _There be dragons here._ diff --git a/doc/8-advanced/grooves.md b/doc/8-advanced/grooves.md index 29ee6f0f..d6fea075 100644 --- a/doc/8-advanced/grooves.md +++ b/doc/8-advanced/grooves.md @@ -2,7 +2,7 @@ Grooves are macros for speed. -A groove is the equivalent of repeating `0Fxx` commands on each row to get a cycle of speeds. For example, a groove of "6 4 5 3" makes the first row 6 ticks long, the next row 4 ticks, then 5, 3, 6, 4, 5, 3... +A **groove** is the equivalent of repeating `0Fxx` commands on each row to get a cycle of speeds. For example, a groove of "6 4 5 3" makes the first row 6 ticks long, the next row 4 ticks, then 5, 3, 6, 4, 5, 3... ![groove](groove.png) @@ -17,7 +17,7 @@ To set the song's groove: ![groove patterns](grooves.png) The "Grooves" window is for entering preset groove patterns. -- The `+` button adds a new groove pattern; click in the pattern to edit it. -- The `×` buttons remove them. +- The **`+`** button adds a new groove pattern; click in the pattern to edit it. +- The **`×`** buttons remove them. A single `09xx` command will switch to the matching numbered groove pattern. diff --git a/doc/8-advanced/log-viewer.md b/doc/8-advanced/log-viewer.md index 07d7960e..4f1e1e4b 100644 --- a/doc/8-advanced/log-viewer.md +++ b/doc/8-advanced/log-viewer.md @@ -4,9 +4,9 @@ The log viewer provides a look at Furnace's internal messages. This can be usefu ![log viewer dialog](log-viewer.png) -If the "Follow" checkbox is enabled, the log will snap to the bottom and continually scroll to show the newest messages. If disabled, it will stay put on what's currently shown. +If the **Follow** checkbox is enabled, the log will snap to the bottom and continually scroll to show the newest messages. If disabled, it will stay put on what's currently shown. -The "Level" dropdown determines the minimum importance of the messages displayed. +The **Level** dropdown determines the minimum importance of the messages displayed. | level | message shown | |---|---| diff --git a/doc/8-advanced/mixer.md b/doc/8-advanced/mixer.md index e0c68a8d..bafa0fe8 100644 --- a/doc/8-advanced/mixer.md +++ b/doc/8-advanced/mixer.md @@ -9,17 +9,17 @@ The "Mixer" dialog provides options for overall sound mixing. "Master Volume" controls the overall mix. Each chip has several options: -- "Invert" flips the output wave. -- "Volume" controls the chip's volume relative to other chips. -- "Panning" is for left-right control. -- "Front/Rear" does as it says, is only useful for setups with four or more speakers. +- **Invert**: Flips the output wave. +- **Volume**: Controls the chip's volume relative to other chips. +- **Panning**: Left-right sound control. +- **Front/Rear**: Front-read sound control. Only useful for setups with four or more speakers. ## "Patchbay" tab ![mixer dialog on patchbay tab](mixer-patchbay.png) -- "Automatic patchbay" will make appropriate connections when adding, removing, or changing chips and chip settings. -- "Display hidden ports" shows all available connection ports. The "System" unit actually has 16 ports; 1 maps to the left channel, and 2 maps to the right. -- "Display internal" shows two additional units, one for sample previews and one for the metronome sound. +- **Automatic patchbay**: Make appropriate connections when adding, removing, or changing chips and chip settings. +- **Display hidden ports**: Shows all available connection ports. The "System" unit actually has 16 ports; 1 maps to the left channel, and 2 maps to the right. +- **Display internal**: hows two additional units, one for sample previews and one for the metronome sound. The graph shows each existing unit along with their outputs, inputs, and the "patch cables" connecting them. Connections can be made by dragging between an output and an input. Right-clicking on a unit gives the option to disconnect all patches from that unit. diff --git a/doc/8-advanced/pat-manager.md b/doc/8-advanced/pat-manager.md index c9304d43..ea058e66 100644 --- a/doc/8-advanced/pat-manager.md +++ b/doc/8-advanced/pat-manager.md @@ -4,9 +4,9 @@ The pattern manager is useful for cleaning up stray patterns and as an overview ![pattern manager dialog](pattern-manager.png) -"De-duplicate patterns" looks for matching patterns, eliminates all but the first instance, and changes all references in the order list to match. +**De-duplicate patterns** looks for matching patterns, eliminates all but the first instance, and changes all references in the order list to match. -"Re-arrange patterns" renumbers patterns to be in sequence, along with changing all references in the order list to match. +**Re-arrange patterns** renumbers patterns to be in sequence, along with changing all references in the order list to match. The pattern grid shows each channel and all its patterns. These are color-coded to show how much they're used in the song; these colors can be changed in Settings. diff --git a/doc/8-advanced/piano.md b/doc/8-advanced/piano.md index bb75ca3d..6217f847 100644 --- a/doc/8-advanced/piano.md +++ b/doc/8-advanced/piano.md @@ -25,14 +25,14 @@ Right-clicking on the piano keys will make the buttons disappear; right-clicking ## options Key layout: -- [Automatic] -- [Standard]: Black keys are 2/3 length. -- [Continuous]: Black keys are full length. +- **Automatic** +- **Standard**: Black keys are 2/3 length. +- **Continuous**: Black keys are full length. Value input pad: (document this) -- [Disabled] -- [Replace piano] -- [Split (automatic)] -- [Split (always visible)] +- **Disabled** +- **Replace piano** +- **Split (automatic)** +- **Split (always visible)** -[Share play/edit offset/range]: (document this) +**Share play/edit offset/range**: (document this) From ba99cfd4f3335611fce9e4585773700347d6e72c Mon Sep 17 00:00:00 2001 From: Chrysi Planitoskopion Date: Fri, 23 Jun 2023 18:17:55 -0700 Subject: [PATCH 137/183] Revert "Initial "concepts and terms" doc." This reverts commit d0871fd3d95402360e3f55073f5b29664bd2bf33. --- doc/1-intro/README.md | 4 +--- doc/1-intro/concepts.md | 36 ------------------------------------ 2 files changed, 1 insertion(+), 39 deletions(-) delete mode 100644 doc/1-intro/concepts.md diff --git a/doc/1-intro/README.md b/doc/1-intro/README.md index 66e74979..c21ad355 100644 --- a/doc/1-intro/README.md +++ b/doc/1-intro/README.md @@ -6,15 +6,13 @@ it has a large selection of features and sound chips. from the NES, SNES and Gen every chip is emulated using many emulation cores, therefore the sound that Furnace produces is authentic to that of real hardware. - - ## hexadecimal Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [this guide](hex.md) for a crash course. ## interface -Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. even experienced tracker musicians might benefit from a quick review of [tracker concepts and terms](concepts.md) before using Furnace. +Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. due to its nature of being feature-packed, it may be technical and somewhat difficult to get around. therefore we added a basic mode, which hides several advanced features. diff --git a/doc/1-intro/concepts.md b/doc/1-intro/concepts.md deleted file mode 100644 index a5282b51..00000000 --- a/doc/1-intro/concepts.md +++ /dev/null @@ -1,36 +0,0 @@ -# concepts and terms - -- A **module** is a file for a tracker that contains at least one **song**. -- Each Furnace module involves at least one **[chip](../7-systems/README.md)**, an emulation of a specific audio processor. - -## tracking - -The **[pattern view](../3-pattern/README.md)** is like a spreadsheet that displays the following: -- Each labeled column represents a **channel** of sound provided by the chips in use. -- Each **note** starts a sound playing. Within a channel, only one note can play at a time. -- Each note is assigned an **[instrument](../4-instrument/README.md)** which describes what it will sound like. -- An **effect** is a command that changes some aspect of playback. It can alter note pitch, volume, timing, and more. -- An instrument **macro** is an automated sequence of effects that applies to every note of that instrument. - -## structure - -The **order list** is a smaller spreadsheet showing the overall song structure. -- A song is made up of a list of **orders**. -- An **order** is a set of numbered **patterns** used for each channel. -- Each channel has its own unique list of patterns. -- Each pattern contains note and effect data for that channel only. -- Patterns may be used multiple times in the order list. Changing a pattern's data in one order will affect the same pattern used in other orders. - -## time - -- Each pattern is made of the same number of **rows** as seen in the tracker view. -- During playback, Each row lasts a number of **ticks** determined by its **speed** value. -- A tick is the smallest measure of time to which all note, effect, and macro times are quantized. - -## sound - -Different chips have different capabilities. Even within the same chip, each channel may have its own ways of making sound. -- Some channels use one or more waveform **generators** (sine, square, noise...) to build up a sound. -- Of special note are **[FM (frequency modulation)](../4-instrument/fm.md)** channels, which use a number of generators called **operators** that can interact to make very complex sounds. -- Some channels use **[samples](../6-sample/README.md)** – recordings of sounds, often with defined loop points to allow a note to sustain. -- Some channels use **[wavetables](../5-wave/README.md)**, which are like very short samples of fixed length that automatically loop. From a8b51400b5c8a0df905a980b467cc09d989d2033 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 23 Jun 2023 18:38:47 -0700 Subject: [PATCH 138/183] Oops, tiny update. --- doc/7-systems/pokey.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/7-systems/pokey.md b/doc/7-systems/pokey.md index 1125da1a..cd94652f 100644 --- a/doc/7-systems/pokey.md +++ b/doc/7-systems/pokey.md @@ -32,3 +32,6 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, - filtered output on channel 2 (I suggest you to set channel 4 volume to 0). - use for PWM effects (not automatic!). - bit 0: 15KHz mode. +- **`12xx`**: toggle two-tone mode. + - when enabled, channel 2 modulates channel 1. I don't know how, but it does. + - only on ASAP core. From 6fc0c3a7505a151d09a1963a786a78bf55a7552c Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 23 Jun 2023 21:23:28 -0700 Subject: [PATCH 139/183] A zillion new images for docs. (#1176) * A whole mess of redone graphics. * Minor adjustments and new ADSR chart. * Android: warnings are errors * GUI: sample editor warnings, part 1 * optimize images --------- Co-authored-by: tildearrow --- doc/2-interface/asset-add.png | Bin 0 -> 423 bytes doc/2-interface/asset-delete.png | Bin 0 -> 576 bytes doc/2-interface/asset-duplicate.png | Bin 0 -> 648 bytes doc/2-interface/asset-folderview.png | Bin 0 -> 436 bytes doc/2-interface/asset-list.md | 23 +++++++++++------------ doc/2-interface/asset-move.png | Bin 0 -> 725 bytes doc/2-interface/asset-newfolder.png | Bin 0 -> 464 bytes doc/2-interface/asset-open.png | Bin 0 -> 684 bytes doc/2-interface/asset-preview.png | Bin 0 -> 1039 bytes doc/2-interface/asset-previewstop.png | Bin 0 -> 406 bytes doc/2-interface/asset-save.png | Bin 0 -> 620 bytes doc/2-interface/control-edit.png | Bin 635 -> 458 bytes doc/2-interface/control-metronome.png | Bin 623 -> 553 bytes doc/2-interface/control-play-pattern.png | Bin 657 -> 898 bytes doc/2-interface/control-play-repeat.png | Bin 313 -> 469 bytes doc/2-interface/control-play.png | Bin 351 -> 525 bytes doc/2-interface/control-repeat.png | Bin 693 -> 562 bytes doc/2-interface/control-step.png | Bin 413 -> 617 bytes doc/2-interface/control-stop.png | Bin 460 -> 310 bytes doc/2-interface/controls-classic.png | Bin 21016 -> 26044 bytes doc/2-interface/controls-compact.png | Bin 16054 -> 21187 bytes doc/2-interface/controls-split.png | Bin 20672 -> 26008 bytes doc/2-interface/controls-vertical.png | Bin 10175 -> 11833 bytes doc/2-interface/docking.png | Bin 438920 -> 370637 bytes doc/2-interface/instruments-folder.png | Bin 50247 -> 37929 bytes doc/2-interface/instruments.png | Bin 52044 -> 38435 bytes doc/2-interface/interface1.png | Bin 564402 -> 377386 bytes doc/2-interface/samples.png | Bin 19676 -> 41265 bytes doc/2-interface/tab1.png | Bin 45024 -> 77710 bytes doc/2-interface/tab2.png | Bin 37229 -> 66415 bytes doc/2-interface/tab3.png | Bin 44311 -> 82104 bytes doc/2-interface/wavetables.png | Bin 11257 -> 23217 bytes doc/2-interface/window.png | Bin 151607 -> 149747 bytes doc/3-pattern/channelbar.png | Bin 73633 -> 63739 bytes doc/3-pattern/channels.png | Bin 70066 -> 66261 bytes doc/3-pattern/keyboard.png | Bin 91604 -> 85019 bytes doc/3-pattern/pattern.png | Bin 274675 -> 248655 bytes doc/4-instrument/README.md | 23 ++++++++++++----------- doc/4-instrument/list.png | Bin 165259 -> 130716 bytes doc/4-instrument/macro-ADSR.png | Bin 11379 -> 28151 bytes doc/4-instrument/macro-ADSRchart.png | Bin 9285 -> 154008 bytes doc/4-instrument/macro-LFO.png | Bin 7939 -> 19846 bytes doc/4-instrument/macro-button-ADSR.png | Bin 395 -> 573 bytes doc/4-instrument/macro-button-LFO.png | Bin 350 -> 518 bytes doc/4-instrument/macro-button-seq.png | Bin 232 -> 387 bytes doc/4-instrument/macro-seq.png | Bin 11526 -> 17322 bytes doc/4-instrument/macro.png | Bin 169942 -> 138231 bytes doc/4-instrument/macroview.png | Bin 3678 -> 4838 bytes doc/8-advanced/channels.png | Bin 28947 -> 35727 bytes doc/8-advanced/chanosc.png | Bin 74086 -> 121516 bytes doc/8-advanced/chip-manager-change.png | Bin 267 -> 459 bytes doc/8-advanced/chip-manager-move.png | Bin 399 -> 575 bytes doc/8-advanced/chip-manager-remove.png | Bin 380 -> 573 bytes doc/8-advanced/chip-manager.png | Bin 71772 -> 81340 bytes doc/8-advanced/clock.png | Bin 25086 -> 56318 bytes doc/8-advanced/comments.png | Bin 16055 -> 33282 bytes doc/8-advanced/groove.png | Bin 14642 -> 54776 bytes doc/8-advanced/grooves.png | Bin 28381 -> 26085 bytes doc/8-advanced/log-viewer.png | Bin 30020 -> 140501 bytes doc/8-advanced/mixer-mixer.png | Bin 39651 -> 53839 bytes doc/8-advanced/mixer-patchbay.png | Bin 37129 -> 45254 bytes doc/8-advanced/osc.png | Bin 23018 -> 31330 bytes doc/8-advanced/pattern-manager.png | Bin 36608 -> 108780 bytes doc/8-advanced/piano.png | Bin 29471 -> 113993 bytes doc/8-advanced/register.png | Bin 21075 -> 38988 bytes doc/8-advanced/stats.png | Bin 9898 -> 13500 bytes 66 files changed, 23 insertions(+), 23 deletions(-) create mode 100644 doc/2-interface/asset-add.png create mode 100644 doc/2-interface/asset-delete.png create mode 100644 doc/2-interface/asset-duplicate.png create mode 100644 doc/2-interface/asset-folderview.png create mode 100644 doc/2-interface/asset-move.png create mode 100644 doc/2-interface/asset-newfolder.png create mode 100644 doc/2-interface/asset-open.png create mode 100644 doc/2-interface/asset-preview.png create mode 100644 doc/2-interface/asset-previewstop.png create mode 100644 doc/2-interface/asset-save.png diff --git a/doc/2-interface/asset-add.png b/doc/2-interface/asset-add.png new file mode 100644 index 0000000000000000000000000000000000000000..f6ef5b73b9ccc0d82158f108bcf28c638a052e80 GIT binary patch literal 423 zcmV;Y0a*TtP)1Pc-oDnm3;ZvOuM-s9&B8Y;rd)BOGYFimPVQ*hnl z=bEXvkDsoZs<`a$@zUAfG*E3DJ6njEs)v}VC`V=^lf^L5{e3#BSv^0=a`4f#2-j4+6D=fOKl% z7a+X~4ltc(3@Mv0JaED~nt0%}3y$9ouDamb12@}Ues9)-S^F9tj=lUj13b6z5)D7g zim|Hv^+0bp)NxKb$m1Y)P{ct&K6B*5N-5 R)DZvx002ovPDHLkV1g&-xw-%V literal 0 HcmV?d00001 diff --git a/doc/2-interface/asset-delete.png b/doc/2-interface/asset-delete.png new file mode 100644 index 0000000000000000000000000000000000000000..d0eb8dd9734d7e21e41b245593f0def2f49dd06c GIT binary patch literal 576 zcmV-G0>AxFp*(WHwW7RBVNip|Ed*n3|}z=j-kO005@5zo)don5MNHJ6oo+z}nyB zhnT6Tw85*l!`a^Bg_o%G_4oDm_(WcKlcTbfqq230oI_oBKU#I>>h5-loG?vl>h16` zPHHw%Z`|SL6VJhvhiMb$;*h+CnK&f_Ox$1s7`ed+FmQtbVCV)zKyl2k!{Od;$G5`7HT`9NAdS7`X;91GansDZvfDdge_YbUV zPY5U;B%H^!!y7HQu5b`F;W!A1ck)m!kF7g76%wNF=n4(tFbO0?-yu1OdbRW!Si9G| zx+VcH`juPruCA@TA>hoqZexZz1iUS(dW}ga?g=QZ0ANgM{UNJYfO_eu*PME>YFD}Xc+j6K`U6RSlIf2?{n_~+Zt@S#1$e-Fe*O#q O0000`_4fE#aESW*{CbR^-s9&NI9T1{ z=b5RuD@kYM=j)oOw+k97HdAh4caGHB;BbYR;^yi`VS7(#fxgGl%F@~F@9`HnS^ob1 zdyJp-_4wJ|%I=QEG$O-QtX#taON*`uh9U+~P=Ld>T4iHBxSQ zjGvjOws?!4<>>5Tc#Xx))gwV+rnA3qf|oE&YVq^+Vt0 zX4%bYY{jXiQQ;r^Thd70w5He(g}!EZE~VsphUQO)Hhq~r1zHYe$gz^JK^berp+%Xq zV$jJBok?huMD{22li*-~rx143Co!L)mTjI3qCdJ?`xb}P+yuLyH zBsc1TA%MUPTfssqyaaa@x@s3dIr=`gid1+yX7}e8q1!@!kOcxcny9*re5)V_*^w-a z?s-d6kX?%upa~2LqwXYOAKb7c10N9-qlP__ffbk~;(ir;)<0@X!546lg0FApxNbHm zR{5sTm4hxrZyKC4xx{1TF*HQj0Vh0<218AR|2uV^OFYOLL!YGbRe$Bm<3W9{s1GFd iNv1vm)o15l*yQgsi?*_*FmHSS0000v%j0f*p2@D*?sBqZGjKx_h8i6m@6QGpv<5G1hB z2PJpippVcy3>km*(s#dH`|kDrFO#_~X*x3sa6$!x=^D-D;jHommNg-T%!qrFYi`aF}fzAp^t)9<- zF3x?fA>vTP^MhldKo9*p;v4;gMz{j7H4YZI3?^-W(qKA6oJ|KMfc7L<;vyKgPJ*Aj zgqsKGh;nwIwBh0WBp8a-Pk;XoJ3f<}2G?T6BlJYrgNg`$5}>${U-^pBJ=A%#uj^oq z_~W<4g)A(1uBEzWc!)7J2k;Xo(SqTeZa&E;gw>f2FRkm{V;X!>|Q67-gM>6#x e@Pe`P-)ak48uq-wW&ooA0000>6Dv%kg8*8cwg zI#zNQH&_J=68`@FS#XHZ*WLgC01F!`{{R2m;N`^4)p3QHQEGzC)Z1x)lX{GwkDssX z?(yX3>l{2>J6ChAxy4#>h+A@qrLw>J`};CbZ6rftm!`EtUU;^^%e=Be0Z}Xm|%X@DR^^^bR7x<Hs??Y;hLvM=*im zEZ*M*=kqw6J=l^g0GCPu3{y*K(+cEpMX5_1uIb?#$>9^F8aPZ%o!cZioLd)iINZKT zyWO@N?$y_Dy$8cII8MP=B!|a8mGK;g=_2V?138@8l+JPZF$u3o4xet|NdUuC=5Cqf za54T*XE;1tGI%D3hoiVQ8p1GL|8_ehhdZo@!^7Ly9o@;{nPRzzVJgOOk>v0Lhs$#q zrb%=-Ne-{3isuQ3Gn;Q@0Jy3Wsp2p_|F~n4!vmGd0Ec@oYq$O?huhsW+00000NkvXX Hu0mjf*lSwZ literal 0 HcmV?d00001 diff --git a/doc/2-interface/asset-newfolder.png b/doc/2-interface/asset-newfolder.png new file mode 100644 index 0000000000000000000000000000000000000000..01540abd9d433193bb755e3d40ed912a8364a8aa GIT binary patch literal 464 zcmV;>0WbcEP)B9{{H?QJzc%W(96==@A31UtGSw}whJ373mPh$s<;3E0M^{%<>~D%OKF9dsQdi< zU2}@Ey~uozp*>l2#m&{l&en{atc#nh+1}&i=Sn5VXwrnSt|+95xhxBvhE z@<~KNRCr$P*2iuGF$_gfs!T2Jz4w~_{~u?=3tD4Kio|RZWbRVH*$Lo-8L>YKlUQ&G zh9nnpqK5%|TcCka2o8nOBb`Siyr09xd=>gJ%nDyqVp+VS!LDY8{>G)QUQ2pl1lBpOXl= zALIyy9~9&>M?S37Q%)TZ)VUH-2NH3TwW%ZU=d<%aZ1M}#o_gYYnAgq#0000pILB-?eFr1mZuv$ zTp>VUV|kA%NM`Qv^YZlecZ!`HJY5|ljGtX}i`LxYK3a9T!p(q^q)umm+u-F@ zZH4jk^{BMLlcKWS;^!bhUy7Tn@bdKI9aj0#}_zR{r&z%VSD!X_$x_gF;8sg>h3>Vb=BM9 z`uqG?Z- z|2LvU?RXr|YfZP5MU=Zg>ne0A_BWxcTbcnfL$h=@3_6IA(*|u5kuvR87)RvdL1;rF zI{-}?Xf~k(shkFMA(_jeE(>)IttQBJeAd4%h8Bk!cpHPg?5pa?s0eBt8r+R_v+pL$ zpfflGZ<+-vLC_DF3c?`?=mlY|tI<-=iVO_aH>C*KKt>U=Syec!3KPE!7Z%4Sk}cJv zz~W2=bTpi+1LgVcM0+`31ef#hSJzl*X#p&3Vk^eN+u5bz-aax1g!2wTLhlGTW<)2T z;VF=&+}Sw|FD{Y0B3!Hj62^R7-w>{L3mWEecTc$D0|XG+N5VZlLkM38mr6nmON9_s zeSLce4aE`AkaY%!nk>{fv}B>BJafv!sygMW=Ry6hs2?QtOQwDT)o zAV6QWzsfmParE~0`TF|%{QMz6V341$9zI^NyvQa*V;VYJc8Q&pq_g__{QCO)mZr2O zMP%LL=Nmj+ue!yZtGRB1m($tcikqvDp|Ah|0Fk1xthdA=L12B5qCQ%6SZ{|aNM_H~ z+*)vm_V@Yx{QgU1ez?NSg_ftMw7^?(iRS9Fn>y(b`UDf5gnx z#m&_sL18CGWOj6o%pN3yy7F+g97QZQHhO{N1k3sgrb4=k8AStgGKqCQq$B%34?;**^*sv9K?W zS&I9@u|$0s#9s^6fsqhg6pA=uD_quUhY`3gVuK;~F!U!3!b3p|Cg7=r31i-1%!FZY zFl<7f29-wl9ClNU1KaDdy>tSNs zG*cx!=EVkF;$;u;3OS=|IbPG146kE$c*6lpH*YDp-J{;Y-FxbN0n{D@0)ftH6aKFB zki|!s;bgA>R;y$!*#0ERr_b>G1z$o84Y|mKugT^&NWbN~_abP?8XQmd^&&mM(T@;A z>$Oz~1(^6mwNDd3$IQ=B<7?>4SE?gATtX<{%7&ZzPIe9Ja0#u_Kl~j(Vb9eM8H0H^ ziVIeNFrW0&kzRAsi&b`&OCJyN=ZgG+B!800AA#~`=l^h%{{ma_9^1ayIavb+3Kuw8{{H?PJY5SKDv+VDH&bvII9RQ? z!~g&Q+1}%kp|H8b%{o?c-QwpSK3=7uCx-w3Lv|7d1L{}B zVru5@PsuCyqZ!yQg@u>O(T$vvzLB$%mn>1P><1gXudF7+xyD zg|B-NW5Klm;oB47Kis0Q+;v@dIPzes9zaO-I{>4EAk_mKrZ+!(1k%^{4*_sG_=gOi z0Ql&@XAVBB=qZQC13p*qfrL*od<5dN^Dk`j6UlB)LX@R*QUCw|07*qoM6N<$f)oU; ARsaA1 literal 0 HcmV?d00001 diff --git a/doc/2-interface/asset-save.png b/doc/2-interface/asset-save.png new file mode 100644 index 0000000000000000000000000000000000000000..19dd03e9a894b1a7438283f63b00fb9a817714f8 GIT binary patch literal 620 zcmV-y0+aoTP)`T7eQ zD*5{QyvEP^`}`O=S^ob2JXmxhL1CAsv{!G2FHCA;c#fN@xS6T90000jOK7{r&n`@8 z7dTk<_xL~g2m3(8ai5JdXO18TClsvvc1SKO=|u9{WVfCFFre~g>nLwPc zx@)R%eFNCs`hf8cd)ONXOD@aQL)zr%2IJttVa8RD)FF;fDxdXBP=`W48pZ>jYY?l! zi%TYS)l!1jHzKUxDnafx`#jTqyIEF+Wn|*+_uxN#WQ9FRU_|iwrO3U$Nq)!qskbYjrNkj9Bs!^WlwI}-_st`ei8Kf*tt zn=TN4Bp49Nxs~wx?%ty?>36+;(k8w4?lkRxC1YB4jv>j}mYET|ER!ZHV1~mK;^-+} zCw!^Slw&MFM;$t;K9u{|3|lJmzhW*2%@|t3y6btauwcc|PSlFktJf*OFVEZwwB%NEl)cW+4gBQ3w|#Y~!#^!Y&TGB<$d@L&7EwnJ^-{?gE08y{uC)WXD1Te-5rTv4_hNxmoh7KBQ^)Z)v zu%;g6>6Zu1P>1?@79>s6)mAcNeM{g9Yv-TMFHl8R literal 635 zcmV->0)+jEP)H5l+GuY*WgXOt1wG7j}rHapW>$z zwx(~7$b8sQAoan6D#c>LAB7`$A`1XS{THr(?IUF`m1b+#QJ7UJop9WpztwDa9Fhfi zm}`7}H-1PNYTJsGg`Qp*|J1W-l`@Ikt?Z|T3ub;oY908GCsW&lKS$OE=Y>QB`URb? V5kE*_&oux5002ovPDHLkV1iLSL~8&5 diff --git a/doc/2-interface/control-metronome.png b/doc/2-interface/control-metronome.png index 0c66725653361836a835c62b1bbc852cb00b9664..51822c0e4a9afb99bb6a0de393f1c7d1de14a21d 100644 GIT binary patch literal 553 zcmV+^0@nSBP)5M^5wg;Ot!7KHQ#Y-$t=agiFt#k4-ag>uRvY>vi) z8U&3R6fWxhC%vfW-s8DX=2ZX5<8y!91NU&A$Km*2QQRKyBpZ@Rug9&3-2}7Egn+qx zj1Zr5gx3jQ>SW}&IOwB8-$)xZZB`LJ;NRc(3k&_P;uhAAfn#C8-Gd%sT>~^>!PA3Y zYjH7i*9O{mnMG^O+k=*Krlxg#MNg}i)7OLM%G4E5%f%y+c&-MNrp)!BumGIRe*T<2 z0}52QWgy>Q*kT=MssvsDl|5l9z=Z^AkVKQf@J;LcvCbRMS~p?)Tdtc_BmD_dg5vNCnX#yG zSpR@g!8jmm0qpwaF#QUYnXCnfn$CO~jSkB5(xxMBbJ0{PYSZQv_M<4jZ{?#84-OX{ rI>$30bw?!HNah;f5crF+^UvlT{+DIQ9fdUE00000NkvXXu0mjf;mP{( literal 623 zcmV-#0+9WQP)lqQy}higtVl>m%gf8*;o(zLQ~Ue-X=!PGettAGG`P69qobpRg@raYHf?QfNl8he zp`o0doK{v=kdTn=?d?THMQCVft*xzJUtjh0_1D+e=;-KCQBhJ-Qpm{2*x1FLSI z$vHVWT3TB1@$r9ufB5+L@bK{K>+9kSuxJ1P0YFJaK~#8N?UcoC>p%cSeasMMX6BTc zx$ph|?{v{fi5+L`Y}!rF?q2CgGqUeUzr`${pY0`NAhVY+hj@6QUn|BSR;=|y2~kC6 zg{(w_g^~u=qMl6F7ZzxxK%oKI>UXGSp%ElRbSmpqL5&0m8pGT=<%VbhH#R72<^qQJ z-bdg%Lqz3BD4arhGnZ9Pg~BzYH*;F$S}07A-Nh#pp)kdA7yp?Gg%(fl;+B?B=+bi+ zJ-Wi(r1}9?anw)?-WijY;R{9oa_=tGR^I_ zi9GTb4%$51+qHd1`@nb0b9CR|;4((sZ`)TeIP_%zSH4e?fVkgw9>=WE-*GX15wFO+ zQ2@Y{!jWKk4#1@p5+}7({(&JTL$N diff --git a/doc/2-interface/control-play-pattern.png b/doc/2-interface/control-play-pattern.png index a6eb5d01eff4e36bf500014d1424181488b7d881..a11f0aab2e792c5a2879a989e13bed46fd8bca17 100644 GIT binary patch literal 898 zcmV-|1AY97P)4?(vJ8tnTphDoAEEQf~G3_&-~9Vt9_@=j%OLbhyII>Fn>j z#m`)Gip|v9HBxVUkD=)6?)3KeCq`tly~ywK^z`-j8$4V{VtmWf+Kim6qOZMhgqZgC z`J=GC_V@U;zspc)fu^&+m!`BZO=|xB|50gyPG^AR=j*Ap!C`lfEJ|qk`T76=0D6p{ z3mPi-`1uPPDi=3c+u`OfOlri<)j3shy2H)K&(~jej3Pl{k)g2o`TAmaj>XQ_thmGG z>g~wT*cm!mLtS|C^z}quc>DbQWqXl#ik*0io>p##t+>QjZ-)N=|GC4?gq5dLY=qa` z;xtiiCPZUQWq(a(e;z(wcvf+<0005KNklfZSC*!WFKKr9A9O=Grjk8M%MOBbAsFNlMs^|>;;F{k7Dl<R%mzwJa)?p z74Tfn0%h+|CZQi1$ZtXs8cM`aZ49ay3XZ@R3`QNHfT3hVvBBa{8KLme@kz`EB@8u+ z#YnMMwcPP#!~RtJfRO^Y1K zyTI0p4tF6k*G9m^0UHLsBfaYYfuFw!ImU*67EB1RI5m&q%q$az_DKj3>`WN2EyRS~ z2t%W#Wkaqo;i?USZ>_%uH*T}w76Ea^8qDTdu+sr<>wo+X^NTGuxc9|)*%n~I_HS0$ z^rL``+L`e5jD&&aJLZ3WmkE9M2zdViGJ6P22#*Zd4UeBZC0ym13yeP3VgHMli0svC z7YJ|OB8Lj^zzss^z1@{RfIAF)4AUx&GpwwvNJvPfrKRiZ>tSJGYin!v_V&HKy@-g2udlCOUS67-nnXlI zXJ=>i_4SsPmihVlNl8gnRaJ+Fhw<_8-QC^1yu8xV(z?33QBhH3WMuO4@@#BuuCA_^ zmzP>vTED-)p`oF%v9a6R+wAP@_xJa~!NE{aPFMdt&d%oM=5=*-goK2Jg@v`XweIfj z@9*!z!ooW{JA8b6F)=ZTiHYFg;66S+r>|)x0003jNkl{ElQvG%>uS&aC)t)Ux`fv&FsyhWx*sBP-A4m)I7?Sj^e0tG!@>3> z^*ElzK*b5_GrxcV!a=eKhGEN>Cq_OC8)AwiZF-Z;R%{0fk+cfmOoSAz0G7T*5{(1; z+&U?5Iymno6#$=K>R_!OaNJ}L0Pmt^1Q9nlZ50@nca35RoQx%aIB3Zr15Q~5%9;$y z;8dBQupxsgICV?VcsACqgR|2Y`1d?y_yFhd$Qq|(hTncWH481oRrGX`63jVwYBu%|z|sE_Lj12tc$$7>S~V!4hAI=L8} r`4UOFik3`dF(iMtR_ppPLjL^%CrueL2XejY00000NkvXXu0mjfk*G+; diff --git a/doc/2-interface/control-play-repeat.png b/doc/2-interface/control-play-repeat.png index 853cdcffee4396101838274feca24dce449ef147..fc28659020d356db0a31191f2f1100b54cd3d88c 100644 GIT binary patch literal 469 zcmV;`0V@89P)0|p8aDnkz@JydLk1q%`c3lawr8~*b-{a^dL}H{r>6f?xD}!*LlLGjtZ*8*p`Yeqo`@u(j|qPTc8@$lbnyZHCFh zm7mB15jj3GFlC4hDE{OphFMcZWo0@#I%Z~OF)=at`1ndnN{EPv`}_M*QBhMq{r&6f>png{K|w)jX=!L^XhK3l^OB$k0001#NklnhWLF)$g>sgrp00000 LNkvXXu0mjf#;A@G diff --git a/doc/2-interface/control-play.png b/doc/2-interface/control-play.png index feafe1681d86d27ad861325375651b2612157dcf..c258b5fd8e0063df94a0edda83844c3c2fe6769c 100644 GIT binary patch literal 525 zcmV+o0`mQdP)Z;I9W|* zf8^)u897>OfR+0C`}z9%f03j8{r)XWXpy0?WqObR002E%bSOtY=oPtxGYL& z(AVCEm#N<4=eonqpsl;Iy~sFJa3DZmCPZU}m#7{-Udqzh`1$&NkfUsYmbt^t-{k0J zdy&i1+HHcCm!`BcP;E$Je8sz=-~a#t7fD1xRCr$H*2iwdFbqXeN^&n#dr9xT*Z=>p z1i?Tr6F4?WuY%nD*}R2B+EVsMVGLkGAY$HlBu51ohf9e(!s)UB1( z@T=#662|khb1__pm4py0u^~EMb!8CU48#yC$soGLN<4^)yN(!QB^g9x9qe6QYvAPc zKr>GHu&rA4aIa4aIJ_Sb$zkv4f=C3hi5!+E*n|hMi2@E^un7}l6CuPV4Cnw~u?gcr zwt#Q%ed2!shC~_lH>dts)nB>(cmT}!Fl~JxtxI_)S*AS#+n=5P;U@n8L>_?o2OmQd P00000NkvXXu0mjf2yN<* literal 351 zcmV-l0igbgP)5{E0PAIdY7UfV&w$N*%WPPWR@9aDvtS5NJstDXWqTn061Iu} xTU7vC2~gG8DgbO%0&Law!B$=0Uod@b=nui93A{ue*j4}l002ovPDHLkV1iCW zESoV&01+z!q-hj@Ym~w&Z|dr1id8}iu2BU;&ZczBv)}*!|9-l$#0o=F1+Ec2omq6g z{SOB(J1mWjO`6`eAyOY)BbvUDyZ=$Ztss-OzyFVzz!l)onET;B8u+y4@BjZt3299J z0apC))~cyfR^I#v*G)*H&r6W1zq^7V+~940iPLDh2c+n08A7D=D^VJg{{YqeNJ9vi zwEiVVqsc*#_j<7CBcRdo8&JtzON2n-AL0V19HgWR$?2W&P+e+_PvcCWieEvMWXq*ew_|u0Bjdh^#Ya~OX+fSgzi)N&2 zG(7`K;gzWBOo-5ETnNfXA48FqMZK6vghtcT;Nl_yArkxc|KEv(H5x~L2I>4U*B-*P zpZg2s_*TLijY}cf;p^Vsipq(5AjQF-S|T)>wEjXbbAHzm;Zz{Ve21#s~HOaWC*9fGb**Rdb#-<6`ud%nolHzj`}_Op>FJS?kz!(EHa0eGZEf}S z_5S|;adC0%?Cd!?IfjOYv9Yn*+S*1&MtOO8I5;>#K|%5H@rj9vV`F2zy}f>Ze(mk; z(b3VVsi{9dKT}gv`T6G z+1bFr!0PJiy1KgE-QDKq=682@_xJaurKOdXm2`A;QBhIE#KdJ~WsHoBuCA`XzrW|_ z=eD-Cf`WoeOG{K#RDpqkQc_aO%gaSYMOIc;T3TAPw6x63%wJz$U0q#@ii%lTS(%xc zs;a7ujg5GCc)Yy4eSLjtX=(58?{jl=L_|cUrl!=?)Q*mhN=iyiO-);9&f)+70X|7Y zK~#8N?aHS|}ZB9#!M2zv2-e%-U>9tZVJ2c00000NkvXXu0mjfIV4o_ diff --git a/doc/2-interface/control-step.png b/doc/2-interface/control-step.png index fd6262da71130a3db51077004a8cae136d8aecb8..e2d86be34e4c4207e662ee18efd4796d614e2939 100644 GIT binary patch literal 617 zcmV-v0+#)WP)C91q%`sF;5{tU>G@BZi1Hp006?u z(2^^bFm`(4@>v00WC8viwz8BgtyZ&?o7FC1}Y*D+x_f$ozsfDP;?& zt3h2r1A>!Q>k2|cKo79}&X{@Jxd6};Fa)sIY0r_{Xp$Nvtq&Z4K)y1+RVfvQP!5K}0dyfg0XTdD3^i!v zICD74%P)U3Z&d!I2hyDHiXlQ8u{{CHEU3hqStgNib$;nGg zOE@?mU006~FL_t(| zUhU4;vV$-TMN!G7_LAOvz4iaUE)3w&goweshV19FY{C1s%Cb`ja87(gKRIfHAjG^d z&;|=E^16aaFM#+NyaMYkn!wP-aa;%S7}rA{{BIG_xIP2Z$mN9>8^lTwFuw}=J!63Q z#Yzw`jgsy-0DDxztAN_$0k|w%3AY5U+B;Kd5^Qq`petz4H@Go-x`z|XIvCOWt$)y7 z|Bn&fqao=1)~jf*m2^sw(mh%tm7tycL$oDyNJNoG^|{z#)plgX2%(xo<= zHf6G9E{HB|wrx+y8r+HtVu*cRCr$P*0~M>F$_gfJ9}o|;Qv3B20a)l0Vh)- za{D8fe$-X=qtH55kupWa&ZeQEubBi4ngnSNh;zcs8Ty{2g%i{yPQOD#1(_GLRFnmD zWzYdKq4}O^Cd7aWZkdKm(*mdf55RHAHUdV#z6{c5*kFSVHrU_+xaQ#s7ZWdF+i#in zE%5@FisI@wSN&M)U-|X%&;>d4mj}`_FPmhcb_8CZo&T`OAM?LX_E={{!2kdN07*qo IM6N<$f(4Lz_W%F@ literal 460 zcmV;-0WMM&5#)o1+N9%v@#w20<~lL;0LiGN(ToPfRCYNUBKSn6 z4j>RdwS6!`T@H+fEclVu0Aiu#YXDgfKkKBO=afnVn5ydI8ZgGLfW4jr-sk|U-aqdC zWIKM|yl>mFe*b7PP8vQXEl!Fp|Is||StuakC~7`d>IWq>wvA^PLM}lmqVN*)nTx^4 zN>OE(ga$o#3nVEOS{Nh1;mRVMQ9)jXf@Gi*ocaYMj}oAF2|`r>0000K diff --git a/doc/2-interface/controls-classic.png b/doc/2-interface/controls-classic.png index a8a093fa92fbe3d28de256c00fb0c840bf9b82ee..37295e0df036d6f1f2cc7d389cef3ef2aa059624 100644 GIT binary patch literal 26044 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 z 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 W2smlyKMHhw1Q9IGnm3yIQvVCO_aC7E diff --git a/doc/2-interface/controls-compact.png b/doc/2-interface/controls-compact.png index b0d1b0d40ba37563920bb345a0f47580fa1376d7..7d9c7cca2b191979cbd145dc676703c263da3108 100644 GIT binary patch literal 21187 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 B_wE1y literal 16054 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 diff --git a/doc/2-interface/controls-split.png b/doc/2-interface/controls-split.png index 235ea2ce381e9d1f25a9332c04eda7a9b68f9559..2b3fab407d7aa56fd639f9368ddb74227487c7ab 100644 GIT binary patch literal 26008 zcmb5WbzD@@`!1@eD5!KODeX{7mw?hW)X<&MAl;yJ=SYXt&?PA;jdTi<(%lUM+=buY z@7(jb_uPBW{YMdJ@4fa~Z#~cZyb~-hEB+jv2>sr@d(R~$L=^AcLovK}@4mqk6!04k zG6|e}_l$KVMLsCGOl_w=cEMAg4p2^_)kArRf(CtpM&maWGsKtSEb<;sFIsRsCsH6G z{vIn^B6iMwk2E{~c<#Z&n5dt()Lq_9w$*zBy92a?p8Xy8h$cSw)tRF-9{W>Y%qJ9n zSVI4|KbU1U$IQMP_rAo!dV!}@sa8IcBc;6B9*j#Tn^O6%MdcGg-y`o9gHxR4Kyt4H z7QJMu?iKaXmX|ksd!7HA3c1ABlJY__@{GOT8Fkv z2;rMSF;(yp$@}LRzbn4^VzLfJMU8B?3WKL?+}mpLT&-^T*q6Y=ov>2^HYA4N6ZtdK zILK4H*R5x?cMs(FEAV2dsAW?~xc9&V8{FFG=VwGg5tAR76ZFUoK|j%G-V8Ns9+5N?toe zO-*E?yH>r^j(f6tjdkjS0mn!(ezC9@3fU6a1bmNiad3Rt=8HAC($Iy1#;e`Wc2n^a zbMT2h9u#_eQ6|uq#6F7I`$3AuJuwoJtE#647ectTOkHaa-xZ*V*yIB4(2gO)=4C zMSsxhODm&Zpky5C#Or!!q{$xKU(9Vh?|DW_uPc1zalWsAwAx=~)`LSMg}gqS5BZ$_ z&h@*)#>k++Ro}rM9Tyju)xJbCDWRak?h%U5`&16FN1ytvXEFBDG9X?cEgwYN5y?tOdXiM_u&Ti@8wK=N`h zf|T#m%;tFEDBKTAH9Ci7cLs2o`9lX6~lyrjyy$5D+kXc1)m z=J~XdqAz`J=0~%+JruziVk}>9)l_BGmQJH%%?ku5Uf4I~vWA zR?U&Z$JWV}O_hSb&Zy~C)YE%q@LIdBQd20G;>B6u!@qwk%|?4B`qKFMes53Ll$xTG zy>t20_;C4PA|LixH>#$l=G>+;>}8>HVZig1s}_ZxIHu`Fcjpun52}@(uWcluG8-Ek zfASQv^xFa!vK%)?a*Te(xShR!Lg9uhF8a}|w?a}p0f$kuy3Ye@V5}(+APGz3bH)(A z*r}P9Ny6E5JKxWsY?!TgUK_k^CSPULs9fKgC|&qE^TU3N?CFim<*}KiC8G)(p4{!t zHTGMB?kEah(R6ld>gC0b(2)IVoB5I`f)~6FuL*W0%O8Busds`l-7K^Pu8=>r8=2Oa zD>oE3Bc-mjnQ!v{YCB)%xTP{|&DacW!@wlv&7N!<&JqWntcQRwsFpA`;qk=3(PdUC zdSP*2C@3*8XIYdu9m?AcfAo}qeIDLjzHK5!PM*$XGxztkaKJMb>mH3NbNzl`ozP@X zisbF#tS+$guh5EI50@n&_`>v%qR&Xlvrksj)uM03BS=_cF#A(@VDB<2*9|Efy1OMT zUyzbEI_+p=e+6b88XDS`Qt!M6JX3B0uBH!Ma)0IX{Rd(ZB(5i$%D=7^T_k4Xn6>Nd zR-_gL88wpLj~6K8BP>U1lf#NsL-!SMJC^9{DvwHA{I=M@?|%9$7$FIx zgf=^F#c>bLd*6BjmjuDu<#b!U{PA{r)jf)K8TCb4ov&i5;H1Jx`F@i?4LFDe18iYV zJ5$Oe5(R%wl5lQ(rRAI39v}8ciw46BMMDV=sn9VuHnCok5u9v}_e%UE=CW?*eM-Ri z_Lgn&y+m2rI4~@bCusXY$kA%{;$OWz=psM-t*0;LLE>tj0HTWZY~8}r&(e_9UEt-j zKkU1P?4`CJC;#jk&6O)vElop0W5)7fOI|3%LM32FqkC=U8eA6{UESP>xK_C4J$w_v zNx+@GI#pl@nTw6w^hs3dCoH;gnVl*$$qs%Hg_ew6wh~DroazbRR=8ZcfYrG!ufzH) z8ZN8^EowJ=siJSwM(FiHs$_IB39tH(&(6Fr4r%Q8vIh>oMo;SB6sneny~}pEy8W#e zszbIjlJk_aC7>>s0i2{ngWh*^eEQcit{WpXKXQJWq@qg+_xbTkZ zYdhi2)>fg~^3Kk4s>QIzMVA7)otVEu`FMhrDgs9r75H4Bkw+ z_)&j;;w9Thy%iANdbJr2gardn5hH zT!tHG^WLRzS3uBnP$hu8V%2bsqJ^T7#xdlssTw0>Q$vd57}Ybm%KlWC7;Ydhj>40_ zn+&EUxB{OlQorzB@Wa~T*l;T@^#L)F2qz&2b2BWNm7d;w&-+U`IH}{43Eizz3=T7? zW#JDWK8WIA**Fxbl?#;+Y!f`@cie=-EA=-Hmb&nFD&2TIFDpe6B1rF>3p!4-`KHD> zd;~NZ(R~q?aG0C!)taeXsG@Ep1sur6T*jY1?E?!C zC4Mlb3DTa{54(f!bbe|Dl7w5sRM=!>*4^+!0jlcc5s7(K?Ppa@oR*WHfcq?ZqCG-~ zU7nx6^EiLY%q;5`Peo1ru)0%b)=A=#!E4teV&dq4kfwKaZHH(ep!wzuRr4TH-s<~k zAlk{=6SwD^o9BM=I&S)vu3nyObwW4dhC)C#)!wiSb=?2K`mwK@{xg<=Vl4ATTu{oq z*A-OtU4q%_pf67!ye$xuuza@36J(APkUL4EKfBQA>Pv0dOAfvf4<|BSUBiKVdpF7| zo5XIG#_#^I9iDjv_Xvz&p~3o9LIHEyoq4I-56&B!G{UsN(a&i$)tAb5Hd$_%NyW@< zw=7ZTu%U*HB@|{7Tf%kt+2`};d&4v$DB~rIEg7TGmw0&8bG7pC+#Z4wY|NsEh{L?S zvomw#?C|jL_!zHIweRH;LbX&!?FeKcF&tXPn1JtXwjE{S{BFlX^@pX+Hz7G7BG@-T z%E>MLVcA@7ZI8aN&yv7;et}T`?SpUB%#w7zQa;WWickXBTc7$Geb99q^s0s1+;JNU5RIo`b5Y9K*r*X2|0H{ri-~4en>mO=iPi2m+sCVy3eiqtEy@ zR$0$#FmE$yRtIG)+tLD)k4#kmZq#BzNVOOCl1+>&mBTFrjC+UoG?Gs+|MAXv6DBel>Ij*ZW{ zc21R$S)94o_skua%RAr(?|uMtpxD4}KK0LQr{ekqP9G#VkfOJzsw_Zo`;{&z=BU#yO0D&PqT3+H^$%F4_fNadruHIvKE4Z-!t+X2UA0HOTz!#?*# z4yNT?gZi+kWj^G-^`rK|SpBsi5o^ySL|-&jSCi+J2sL*O@M^b%MSu3rqV)814`U>u z{*u5w@s=I`DAPn%W9#`QCNjNr9(z=}TTnioYc@Q!*jTUiixMf7+|qy*PY(?v7?VG5 zn)IW?P#-;FQvWW}@SO6x+a8pXAn2InA7O91{QY^~+uQp^4oJOu^|o*jnCYFyo4viu zz4qoBnZik4PHz9Hpm@e&hjJt8!)@`KkwmoA0aT73H zGrWOEcmI}S6mE@%sUjXp#>B-x(qg;R3Gu3FXIhvY0$D#qA>@@3WVW5_yT^syFbd;m zd0XKJ&nt9Z`Awz~X{3hnPQjVKL`Gsd=rp=Hvdu3u=rnMP;JkckCT%lUq+X#?tbt$s zmTsYw7aT>Ac7636Ih!rz6Gq)8k1F$VAp&dd-uu<9W+ICiatvfIaD|?fUE@nqNFQyz zPEvdX%K3oUCbLo6am}v)k#LhHDf%-?g-L&NWhnl{zE`Mc&m?q#yazLP+N1QY6kC1;bwW`){-*eZ34b7if!kl7lKPQ{%|vx8^Q5${>su>vF=d9H%hk9 zJXU?xNeZXX)FmvZFhOG}IXO9Ua&kez=5OD=QPO|W)(@Oya*7as>-9LEoRI#DWGj5P z>0-QKDol<$ihlrm$pl#)^~3FBmy#xTl=k9a%8wx7pI=@y)9y@u6nNG38R(XK=_->%BVP8n;^sHuR))* zsr+25u#N+Fx2e29$ynM(xqIG|wG0oJ&d-(Glg_J@yiycVVnZOa6%UC@J&_Dm%<@@{ zzC=UcA8O1To6vj3!VrtlLsg4Fi2VVAD005Wh>dNcPdi`P)YqEgr2ZphTx)4#t8}?~2mP(eOWeD~KIvRM_w=wFYl~yj^n)A(hSv+djfiYkD>wKG z5QAb4`pqXHBxgK16siLMnQb72c{|c+ksf@cD&E!Jhx9Z|+pj+5r12>~4oe8r-GgV% zOcYwIQwobR&>`iQ;vIYM-RH^b@ zUbSTQv~W_?pyi`AA+`^*txhm(3rz;od z?)>2q=k88p{Mm0^ok&r&mXKM>7okgMM->C;pa4tdu=wr&l+fU|8M%asBxEb^uJfdP z(bcY7pp*{+RIzUJ4M5TWG+mz|n?2pv2JS961|d@<7zZO{zThzH&#w@i1SJ_WyRvfi zUd~XT^W%$NidX_8rr8-Ugvi^tG;Ha|(!voOf4f{G)5IFM&{ck#6VMo81l%&>0gm0Mn zLrDcZxT`N00?CykbftaA^I2y|q50&oRgp$gEmhNJ(-;Zxd>354Un3)I2EzjjVZ9T( z4P40#6MJy0-_m>sPfOp&t%QjgS3!12n+-O(Zd7OO=e&`n5sZQa<5b~s9CfGLNf#@R z8N8d2py1KBMG~NlZcmmA`<{~1V_TYVIk5R9ygkU#tLjO3zCW6+VNcRqgt`p93I*vv_;+ZsQQ8eou%<>g;jyWw2 zqSYQVSaiWt`JBCOkUu)sZaYHp8C0G?eI7i<7=p9sEXhF9=!<7AV_+-(SfsC!L_0ObGzx#kIbaj$>qLqE*2PUnth7 z8u5W>)>xC`=e)apf~ijBAYe6BnGeeq+6VYrrE-ly!U$p6&~Px=_hvd&hQu-X(C-*20e~p)GY_t?;`ahzyRDfLL;Z^94&lNpF5~__JtF3Nl9kgL)F*L zcpGa@ey8%9iM2j{K;g4o_tYbN-} zyV1+gIsfP>1Bs1-JW{opwV3wK3{Uk` zD$U=jB&Tf*d}Y$PctSa=Rk2idKtTMf$Z;BTGzoIj6N6A1hFeWkhkFuQ)I*l$I`ma# z*^NP=AVU3-Gq2k6k77~e^HkFwfUl(Y%GRC zZyt5W>m&7Nw>rIoq?f@684Uy;3BUWFxB-F9-(z$7(CS^me6E4}xAR>%TkPw{*B#9^ zNl4RajFgdY5XWTws*h4L@9>K!XiP5RekUGQ*fE8S?-{I;Ce(3|(tq>hI&D-9zUDej zE*jo8=@}Hf)$-F{-HKUQSTOLkTxW!}y1JikM++v92zoV)CppAH$VCN4uIDUnb=)Va zv=1P5GDhK|9Hu?gCQ`(FS9zMSD^+vS3toVlZ#|zjjm1CkPP*OhV4zCh8sFl&uRLWs z1P|#`gdv`ljAL`j9W-L;HtxQ4Dab*z(_+7&5_PuN?rA|V3YH?bYD&jhX*SzKju?1* z;kw?}RZrTMg{3|O+zk57h1YzO0&dLumA8S%z zH&$d{Y2Kk8{_Sw8P=l}@_0G)LM_qTfdE;H>6#9ENgyWMix`KY-6nlGqd$Ce@l}$)q16Ajw6hBgU}!0BPb)eyw00nx@%(tF`b{=>do&%)A4xXp-K7%e20o zWew%GK1C0efglQsQOWq6MfX&eywx+*VN(5NQ!FbX&?|gwp*ZbZ-MCID8nm;U9isMQ z<#WvgD9_P(-&q0cRy(6fq8*6529@`Zpb#;Np8*4`D}9M<#x!&Yuj|Xz<9p_SvNG|k zw3_CmrWS!A8V;$O($wwE!ZS-xe!2IUh`0D0Pauz^$eq^)Ij< z^khS-jHRUinZa$fIVjEXB7fI;-d0%m?trA&z+ovx(R;yAW6=WV4g?wVces2^4mNCa zJo`oGZ@!}7HkluXi&Boz;Je)gSRr_@_l-8|JY4N%vYs$lH()alnM*S=GEQ%Ju*H+U zBO4Bf%MaAA#;9O9i4y4PO|JBHpGkjs8ntGiUD<4V6BBwfiHL|+s*ShSLM#{y4(KoO zovtoe`F(}0F8I9Ikvw#3Whcs62s{TO-u@QEOxad~BLZ*qd$>EkrqzsRAD_%90G{tP{O}UHRmSQt1(_RU??>9py zc1B!eFBZqQ9Qh(m+u`Y7Ey}O|LWIA+vs;bXMYiR>>3A`;yh~+buWY&@0W0}YDW(mh zpZY`cQHpzYWAt3c81S_O9Fv*d`oc%}Io3#v-$l`p(k9<`l#&r5%#)t>&KK++gZmG- zFoR^U&EfAR9AT>2F=x7SrR>cy2C6x0aZRV&Q}t(imwW3rGw|!`v$nq8$TtjRRv2^m z^GL7No5Z0%8SFW$GQk=)bL7(~g*DDn(Cg7shT^xzpNb>AE$2$lm}Iu)dj}yIzr<3- z%?tJzjD9Q)nc>gP2%2le79`sZ{NmY68gXfhzn1xvEs2Z$nJ4m+8nh1RLP$8BLm;A| z<;PFyK>gz&3M0DDlZnKS_BSC2@l)KJi%W|nk96Kysp^EP>wEckMMoMg86=llGS4G_ z7C$&>%)|&Yo>#R>#F?0k^Q2=eKq!~y^I@i2M?)&&tZ%L>=XJ%1JXr4WjTM2#1*D3Z z?|b(6^&M7*Cmk0KjU4R3F#d3eXu}KwWm#4LYiE1R=e(;n_1X2x2^ss*au*L4q9cLR z7Vz9&6eiXsM&4|%C9u<2?%b02Na6ivA4B-Okp?BX)471V z;{BZTx^iEk>Tsz{Q@tdNcMP8UM#pMs!+k0B4T(IADxL%U<}Hno)#+?Pv-J#zfKuJ2 z4J6N4N-}neB#RD&dli$oj~`=C-x_~?qzr6nY{Y16I&br7A>SOlBb1P^Q4Mg+rujT& zlE_*MxwM3f>F&)=UC@oV*fRzF#m*4j{;_R)sabvI62az(6FTz5B4_^v_kb?vKklv* z*$}>>J*+Ecf}Sm@azbTY|34iqK=`R3`_bII)Z=hW}Qg1V5*jLXB~wSngu`Nqe~e)$5kzw>vBvT9KX)v zu!zU~HXD&`miu!YiHK(51jTAZD)+f+&EEv@^rxC??3Ag@JJU6UzWLUFzIU9*3b|L3 zahZ)Qj~CuP>n6d+=P(&a0fp^mNm!y99xg7GO$8|^oum^ELsxVgT(4G7rYE3rT*IUa z{FL-4hZc>9DjvkML{hth;ST4$c}K1JgTtj>+r32*X-4SALzu>_Ro4NBWAY8|^YB&k zn40o(tH&}UK4!~^v1DjnPpS1w?~i7pS%unA21_mhoS3^|nnVj##oVUvC(kt9EdV!4*jfCiZaZ5ZY7XzP)CEk!F{Pj(3H+gUrIQg#lnwn0aMV;6BiLRUY@~WDXS_!#3c?NFZN z)*Qfh4f(1 zuk&y@b!o0QD$UaU)xzeUY!AH?*aGTtm$(Eo-b`1j##(1Juk+I9i9KdY_s)&Kqf0FF zgF|i=8&3DCG>gr~-Jljo{biHezQjAO>FPo~^>$~z`F3M8H;RU}7qq3Vlm$Nh{XEVG z796JgOi-y%rC0^+eL5#bhBXvf{gu34cAQYz`{nha@^N8OsQFas9i3HYf;J`#4ZPdl zJ2DQZS&oT(N6G3xd{PmCFeo<{M2CZws7=n_eAH+Zez??quH5yH)XL6Z3W%UOi$E?3 zd91CGsya_r{XY|AfBy$T2AZ`{$)B5Is%ZZcLFVACiqB(wB$zb)?;dwF-TzFo-2j5r zJl99~EkRd0YmSqQuU?GS9W7@u0QYr%o@Q@1Q2StM6RFcRNAos6fwk#=KUXtt(tyX2 zrnBNdmhPr+oXsM`N%)0IXF5*>0lV+p7*pibYe8AYyW@Ig)f6&Nyo&XiY0dwD%}aCf zj{cmHLcc$W=l%Y(J%{hT7zgA4v!LvoyH7)AMtN!w(z|H`aYu`r2Xt!}&gRHno|#ll zxgW;P6%a3H=e4BH{(i)H`48!?z2n2B<2wo}aVQ{e&~@kIg{2?|GkG)SU^Cm2vjK4u zeX)+LWm{$4tfDMJCQ*ymE8f}{Dzj7K#Ff)+Niq`_(3VriM68Dl(=9%?)!g~}k(~r% zBgp)q{s&L(OWZ(V-rn<6Wv@yV6b_$cRi~?@krq<+qFtYs^Ow!ni_U6xdbz}|fi&?2 z*#^OHy(T1?adqh-?1>a|>f#B9zJ4XQ`6HLW2#)vPSY3TGK5XgyM@`pc3JU@%H6mEh zcnY5Oh~Lxv;@op9ckz?)B)(J7tihVoP6TKV{SQ`JurRQGly8#w-~XvJ$VdAv*2rDh zX5g%AL3s!682BIt^O%1mdzjh(zrUeGqtyS1{3J%{e_XrDf87ZBkK_-kO3H?SZi0O5 zKkDD0nD$QlLNWHAYt#xQlVU(8fJ5@`(hS<-@&CG)QWu>3Pzy9DBz=;Od$dO?A-=wC z0ypQlY1ZIsNoZ^W>qTITFKq;z%jN@SWaYah@D4Fav@92wguaiVB#b5lpTk~yx{Umj zRzVGV(sEzCGhK8M5cpH^vH#bRERbd8o8iC)J`3%C3l{b|40c~=rE%H(&&LtH_$WY= zguo=h!dhPW8mxPd!Y?X2OHxK1>7)O?A|jPpJD|bU_X4yPpGfj1wZjF=UOzLne%R8Y zPf!E}J&W2}T2DLFL@z;+h(Pf=N>QmCsSZMhyPJDK-8>1N0X-*qvGVAe&NyT-(SXI2}vxDW>1*3 zbkpkdo(~}YMnw@o6hlZo?k=E(UM@fLnJuz(81HDK(*E@6MT~Tl323ym=Wrx4t4a_w z|3!WgUEm0<-%ogGX8iuWJb3T#ANvzovLXY;r~GtD7vvo7^kyZrjdt;U%jBzDx{U7c z%Tw
    #@}KH9gNs_gLIrisc6z+~E3Ds5>KLh1+)VPPxY-oDN=EjP%K{#wxYPxZ%b=IT@Ymoee#jZeomO*f_>@~vTK-y?K9 zwC7Cme9k%~ebdu)R#Ohvcg9-%<-b4rm-WSS9T+TjW7Oms8ibUD1dw-f(8G6Xt1Twd@@PB$flzq}7 zlMj!{jlNM(Ud#LKLGK=D{?qgA zH+A1}|A4rq3rcY7hhOePF`em9uNHoRe`Y?KYjjs__VUy`{oFs_>}|8!V^FJti@9cxx;#uV704Y7A0dJ?!2*M>qtAYElJCzjye4SXD-UfOzn+<&*!2@`}{Vj&!p? z`?6vdJ{g=tF7WnkSt10eB@G8kfNaTsI{YaibGOMr635do+CZNJ1Wg4V{eV_yQZ7&e zEOq(X{RgOjseoRQZqZ=2!bC3RCrIA==yZO0G}6+^`o+>>`tMza{2;&(EQe+3`=AGdclo*TZbSy}1JNsO-2k zIl=3(Xwe;DJ>1rS>@)qR!5cBMC>SrUI%UmCe3_(T{3GOrJtGkyE~zvP{wWxHM_j&}8e+b3PsAbNcNJ%MM5!(zM6sQPh7p>?4x|xx@izEX#n_gR zCXx1zb&uQ0rn-3#=b|Y4jTGEdldC*W?+R8Wf+1sC`)4J6D|smy9b2kYX4u2LWV6^_$22v?z!6b4IC7BfTINrB;=>GSEBW zSqNRI)p=YTg3j*M*p1>&)+v(TvKU+AUcVqyf0YFN3CTt6u(;i-T= zxsO&KzaTd~o{m#fxr+bS#5>#+8k%@IhKqBdM{n)nr8* zN@GD-D@*1$3okEGj9AIga}&jfvqhRxME zN~ai+Xh@xdZk^BPgJ@gSvL{^67pY!BloD`u@i65L4Gh3GDI#QEnqj`tZNfXUEdpNh z6H#7Xo^Z6kAlyL+q-Y>QW2H7@kPEys>W(UHx)gV?=y65R1 zAc1+#pX&$F7YHJ#FIFy$Lqc(0oB<8sh~aA6mmH_-Z@PF#`{LuXhIkXoX|NWPafS z*aX;DYbKB_0{t4}C2%xHLZIOx`l9{APSh;~azAS+?vXTLIL&6@Ahx#4EJrs~qftms zz`qFxVst`-@hxv((9TQWS!<=8scGJ)pTJkGyYCkykBpAODwUILq)03V)A%Q|0r^xX z9c@SY&IL=_{dhg&ZO$&~y&DF__o8AJBXFRD9G=E@9?leqNBe&d_kmb3bZ?Fb)cPRFLSX~+FW2PwXJ1oY}$SVxG((;u$1s* z9Kand0@a|RYY^~_#IAl3@alJ`&Dc+?y~l*j(|moJTtdqND{e7mWHk=NAWbpo0ZY?c zsj`?zy2$YG@My1p9Uuegw9*ASdSB?q>FuD_^M4HsHMhlfv{;0Lw2Nh!%|rkDTcLys zKTmh2FH~qK+9{!RbKMWnQBY9YUt8nk`GY5n8bw2ZIyB-d1qDzUi6_~O{ImXtvU2r=)(1VCY)9vi+ zBw*G`m=L6BCxO;&-l^*d@u@*`7_pf6y&LY2j*s&rbZ&y2&vDa;4kpBt$#D|;rfH~N z2&e)h$OW5#;P6iG#RI&8wbFZC#bG4cIoK`%BFbx#r>qCGU22zYn1XkrI?!b9IIk%} zc|x&j6wAybR7U|aGbMYl;26I;LE@bWI!FM4XyoF~)3GZ9QwsNlk)2!33@`~W2oy@2 z%=lT|LfVSFC*!KR3-))x9duDbz5;s>Zr=j^*0R(ksCvF44GBMxP}S&v0~!ehw7(JU zK;mj*lv7t+lxcXEcX7{boN$DchO?z_Hsi20DorV5%<_1K#b9&I-hx^B%N%y22-_q7MQ+ZsU?zHLEQ%g~M|Y4?#d}4*&{8>rq6w%i_~iDk$NZ zFvwrgT|;1q!XHv$^otS|6BI~ak-5KLY1oD|-CSCzJoLlD?>BK|D-wpHRnvZRE799{ z!_)R2sOGSeU)>4f&wvDMzYD}@h1}%%OZteb)&Ar)v`UMK0i!$s^?hkYCBO`bfcp`dd6m9>K*SlfutrpIJgDF77h|h=z()zlbQn{tf*&zychq$ z36Q__pB}sh12BBam6;slbVA}y`hxsSnG&2V5Ks{OD*QxtSO#`=JRc^$hh^P84(#mOjv z`2YU#AI@c``9DQ&LHsf=i8OW}0Bk~?Z!qQi4-hB)2W^825+J630Q`UB$N$$Q1XBn| zMbj&rzi}=lAyY>gz4ABihN%>zxwi?Fn{1Pdm-CMqL1qP$~r*n`c9+dJdZSobe;P>pz-G(uiGV2@v~$U1PZ=( zgBb6WPBzW5Hg*Ut33gW%x6*&)YhhmPer*fi;yM#sMHiK}>g+wRzn36^01#*E@Uta` z)3SH0uO&gYslWxvM%pc{)diy@jW(5RRS6#*0YzxfzZJ0Jf6AooF#7oMv)?cEOKceW z5i6%^FsyiMU_&%0ktPEY>}l(fRS0Bg_Ck)I3=wmy{q1(xyVId))e&qrJ zqG&2{PSc^k6@vmx`L}X>8LAl2M4W>c&p4#NIX&~!)8hZHn^WB_Q4uqoh{Np$dErh9 z;M&U4lA#5C9KAB2Yg=1e1(5r~@i#>8zCQ#S7P0^fC!h|SV!`sUJ-Issc4fbJjLmGX zsDqPmh>}5l1_06D4j`KWrEd|KW&(I;zTB`Ynak$w5eO_mwN*uP2?DW!DyRb`K-n(s z{d^NcCAa63ae$DrEf%+OK(zgT-#H9UE@awsdlzZefg0Yr)enu_8(Hq5pr`j2Fq`G< ztgIt(eXPR?im)WS*bMoqEOM3~ZYk#4&Jh)QD+1O3xjY&m9uP=c{DH82v>s)~_2SUD zXdh@IG)X-{Jpjr~Qz_sF4shBlx3G{FIE5TfQp^y%I_VG$|9yT`3V;dd2V#-~uDBk!yPB?TEtn?4 zhbU$P#WIk$Z-e?7pf)^lAWbLcZ1-rC<1Ke}ap6{xUv5wLIFtks32dT(*+@26_`}DK zr_aB^5kNO!)AJB2_7q0jt(b)<0@^m93s)e1y^2Y~T?POEq{M-!4Ra@A zT>;~74+2lN|BRlS$1`iUngczsYG0{(#VYt=h5xfovsWW%$~!wdm$!l?Il80qdtNHd z#f7pSoF5oopkp0@{0+Dn`eIn^r-d5u47Zb>UTL}JQxN^SIyx3Ax*t80yaiJgA;P5^ zRp@4w+R%;EQY7L0F&Ufd?xG;4?5(5OV1^(;!9EWZv}Zfviky)2B2HtFv5As|Y~9TT z0H)<*{)L81`+7B$f&Z6NLzgy+Y%eHU^7)GsSVcqdy73N*L0!^zo^+S<%t5k_UNZt% z#wT5`>TWCuhC$=+LKU_T2LhJa1O$e~H zz^qtVl3AU1XBJuakB-=yR>6c>J26!ZgzaPB`T8(bZ7#3~J5O+4gb=D#;1Fs_>bbI{ zBob#lD|dw3*2AP{n3(Z{0EJX{Gg^!n(DaLlg(d>;g2pi>dKhzY)qsH;y%nEFPo@VraV2vpEN|`> zoj0s3khA0QTDU1hB^l@Jd-8KbN2=%Gf9e7t3v~KDK=?weiwmJrsdqg>PM(R;Vf`3UhOFqqOZy{|Wq| z{1zzV; zfje5m^r4ua+FB#Tp;Ycl+5Rh0CH~_bflrLUEX}EtD`O!Fbb6i_RRK?(zd`4_IG53%*^W3hy0lR>iBbc{vS zu*=}-gC3#)s6J1`;hnfX z=N=D{CHo8T3zjya!b^}bPwvqDCTPiLUUu|>8KEYR3&n%FJH+YGOqFz~oBvH@k$s^L zs5^CuRg%H*@LQT)&;6V!pygNsqlzjXasY$s{;;Fznfdz=z@ZWgsWR82kA33$IJdLa zR>U`l&}{MANO77d z7DKTMvR6vw7eIE2FYfpAE%|uFfn4A-8IQQGNOCIIpO+)C>PJpoG6peu%L)z|ep40WM%;l&X}kxUdym z8pi7cU)2IGxi_0AifDfhcNrAP;QieDz7(QBTPA@1JVrtb?e+aydc5MUTH5krew|s4 zQJt0*BK+c+Z1W`yLD}0KWJfdhepZ*91;1dN{K(Dnm@meR5# z0hN-%w>zER9eh~;Q-9z>)bxj%9BE==^5*wnP=?VwE>_}4+^2)G!N};Mf>I~}lLOQh zFgA``zdy*zXL&%rV?<-4qTZN9xm|2o9bSMTx1V&pU?j1j#CKd|um>c7U%Kpsh<2U^ zFsB191f%iG1oPjGpT-R&un0GK&*;35t;>2p1i!_Nk4&b`Hw;*bTg^ntgqw!TT}iP6cu@a<#_QNe24TNoK39eT`_21fd9hQ58#hPon;)17zuJqQkjx(|Piu0`d@ z>4^eCdI>rcVbPx-@+LjRH{k>_!TWXLDUkFMt!CfYuqP{Q$(~%DRWkXy?w3aSnY32q zuJ7H%f|5ik*(kh6W-;m4LCHicy%L{xfe@*Rcq^~4Zbe+ASyN(a2^V`>pk9GkZ+bOL zKt<)(r)OJ!2nfX-Q3DJS(`7Ouju@9Y>eAoTpR|U#D1mYn%y#lbFDjI97v^a@#-DCY z$m#cl;4>I_di(@YW~&6G9XEw93^EY!e7S)P;lQ%vnt87*2-AZ{qVH&$95!%v)#VX6 z+s}3F9URyRuJ7u=XblDK_HR6(R0F}d(Scvj=JiS~+E?dL{72doa4;N7cqRY{jrflS zsQ^p|krlW>gF~Mur*PY%oEg`qk4#@lXE(gYJuElBMj}OO)Miwt#^EDnPUB7M+-AQs ziE9?gCARq;C}B5;Q(VSP1@r60B*MfFqdt%}A}2N;^Jm;Hhd#~;y$P(^*AUc|GhOw9 z@pbcPi0!EQz`Z=0n`<)M0LtJubQu|L&Q*q87#-7EfcTzKY~!!9vGM);_iqiF#NY?) zXXdEcWg`}&jczA6&$HEzL6b!3jiSNldoltNLgN%^%|t{|67S03f(OxV$Ll3wn;4bZkV34>9nheK*iDiM#)!L5|y-Lg`{IT3>6hM|=|gAPEb(EvJ3 zHktFeh4pkbv_@N1YkM(3M{2li3Y23C3$KWAZ#$|dO+fwMJ`ZSoNXYU0^WgS5o8?+23hZf^}jTQXAlWyQY6P+st#`)a4AF1gZtd=t#G zv^Ie+lZfGJ0W`Iymf<3wFi)qo!nf%v3%X0LcnD0ayar5Vgq&DRlvusygm372U5HjD z24UFAuYxawvHbDn`;`a-=cNOK z43G5;Hx;5iL$vXYx27$S5i62YDzVls2-q(A<;6!y=nsSMC&}490;s)H_e2ce54}AI zq5y+<)ei+hL@ig7?aucX5{>}FPPEYn0=zUE6p~sA#;?JbaG<>OuSNSwSls=|RLbz% zx)SK4NJLYLc?C+JQ9M-q3AEtqvu)g-m&bs4?jlpNdHgfyE1evf2c@!CdzX3oH8=l_ zb61)`=r>U0ZW)H`~UDx1-1BENzML~Yk~ z4Q*BczEaPR6(~PVHvpuT0k&4eNwn1B9=&pbUi7=s@zBV~$f$A;KU|(nN9YaSZ}2LD zJ)kOI-yzDhkQ#QxrjsvKcVq$dF*+eLqt`JS>#8Q@@&ote5y7H3XMt-u%E+{LbOC-j zU}gBmW?8iVM_*?G4RznXangdaW=Y9ThR8DZEZL2v7(z&7Eg?(Ul`TtT8A~%t#7rn; z$r9qp9zt1?C4;hrkbV2#qvyQ;_j%8I-cILq8e`1wH{a#HKiBoW^akpxPnf_7q)%3S zu@h$(Je+G0pxeY$|7cA*0ix$Hu^k7ahwZv}d# z_+Q>TM}(vARk?{LWPU(w{L*X@q{)_z zi4^8@rO2CoE^z)?TT_2Gt>?(z=%UuzlTtdypu60=U)t(Jm(o8*B5nsYRpLWWCPU#I=m_lSp2 zL^&cmt*V7a_ueV8U8=s*Ji_}ZT{iU>rF5R$5R4=O`@QTW@^^fCaW}@V%rH>#6fr;9Oy}jNpWR z;Q?{I-*9zfAK(M{z#6rN1S;YWl8uk?!uZ8W*3@4HgsxLP=!DkE4%}VPW!yz<(bX!p z4H!*7Oge_`F zhHD2<@^o*0>V)?}uApEl!f=0oDxPokR^St{ahU{#EWxY0TbqxS&owvgDrk>?9T*VZ z(ej)i_ir%InY?$dDvmm@n>!(P>&DB_M<}duAW}ha0$4;=`)HN-(dmS#mk$O(erk;_ zpcA=LO0OJ5wO8+$Cvai#(B$+<)YLG>* z_CoYe%ve~FQ%|;zLy-Iw>g4Yg2pNzMSTCv=d7ZJlvn71x0!T#8lK_?*3*4KeK_Y`O zNJ<(oFVWm)5C028Bm`&_X2F8SYt^)A`|DO%wvR$xB!a;Xy6lEi=VaeQX&An)@m|*d zH~o>vjOh256<0as_=Csj;)bf1RdTV`o)0-v<326ok$k$$QqGSUdIAFi;(zG8GrHHo zovayqa=POJc-{q#z#oyKji;icdvGSKDI_#>68E{#n$tf?ld9S9+c9=SH$GrhQ9dTe za?^;c%I;_RYI&;RsD0Yr^!D~P$nM-Vw)eH;6I0GvU%jh8j%S){Qr`X*ntgR5Rn{#d zXfroql+n5C8M#ueaSe=*BbCMT`Q!o_Xld7>6Isc0iL~b6F6e9LP=onKz<#hOb_ME! zdozp9YwE8(B=lv$ao)L2eNVTO+B`2`CkbDQWkMJ+oi!_h#j9%E?hCDi>Q6Stvdu=P zQx`leA?5>Y&?h;`K9USN5kstRCHAZ+0s<=JEnSfAAPI^~m)_C&rK z>olt}$HhmY8{ur!z4@0;&rKbvuh?gcmzlVAQu1#0Xm5~^`DJ1P|0OhD{rq9Im2xBrg&#vh9eO!u`W(FwYT&Um+4Mq#qp)0wdBYrSXaiG6h5wQ<2L z$321c=4DmoxnUd`@NeW>Z1;-b3KVu{Sl|(!j{+OIoel;LyZGdM(w%Cy_7Die>rKek zcAL0KV&yXBE5y-m%MP~De>8@c_9ZoVe=lz$Kg@gSW4~N@Z)0`c<)`fU{vCAArhFYr z2RG0PZjn%|laZcg)h^r;{Gpx5))ry5g8h#SA5Cw48m`MQ18ySH9@TJN>~m@De;GcC zKy&a=^*|T<6ecq?fXwvtzu?gEQnm0`su~ZcKLUjLf&U^v>}5hE8Wgxeh410pXZi~Z z-|j-9&}At0fcFd37uNIYKEvxx+f+EL{rb0=LK@!hmlP;e6SEK?^llLwkNSvRsVz&RwJnWBHhW2hK`{2IAP-1sbbb_RSFjN2zapMGhOJl1wBJdeobo_CD*$3In( zz45yH6kQ{bZ3AfcY(~ae^Wu!)UGtV=Ao9o@mH#0d1aC|vU9`2eeO3di@T^rP;BRJO zp;1X3#GU|$>cL!*w%=?ERMc#|))r4-*Vl1E;q=V2wG$wh;(|ZKr3jeb@$`h86u0iI zMmV-x)Cx&3d1vC4-z|xh!dev;5do_t_@JWTny4Y4gMIik1cB(_uKxf}{3gV~9XWR5 zp7JkikS4Mbx4P^~#q2}QO5JFKHi3@gdxLv=_ zznGf0Aw>e%br?S>=W4b-pVA7x#*R`33Hvs6^dRk03fv%W?(VlpaJ-mdl>+^$y5#UM z5b+g^L?RKk88fgoLb*7O`w4Eg1R?d!P_1Y5}+0D_S6=9JJkGL0m>nOWQ6OV?|77c|R3x@T#mGmuM&TR+s;mP|?q zNk%^$4TMHs!S>u4EO&cUB7SQSS);q}ssP0(^XQZ7s7pDhWDvS_?#8{CBpr|~w1$X0 zG`*4q?>)sRHTc6|NLbwzT@w zC(taf`g2@9U9A)@LlxsouOuOJ?o53tA#kI!B8IBGh4pi((9}vWr{ME}Tqx7?mInnp z9I!@1EA3dR{B)%TF%?)fQmWy2<~49cnaR5hh?$DpE+`YW?W?e%Y*|9z1_@UtK zfNlMO_*|V&m_Dg0zyqMkfY)=nzi<>r6AV9BCnvpGy{MW%z*z&HaF`5QOYgTW-&>Oi zpvHmH-nF6+;he9v%PR*uI%t-KFTZq}xJ~D}mg7yfItn%$fZbBiwgLT#c=H!F@(A03 zJf#YH@-wj|E&8b(cDtMI>4S)X3&hNF<1hjHF-5G{f?0(GEYl zcViV?q&TFr5ui_SS-e;)!2k!tK?vi*#}+;)J&;J_83vwUPIA$@R9VR91Ya7Liz(aC z=WgEY=Vn|A4R=Fl56&ZnmWh@W{gk>*J?4{n#nJuUj|ssg!A|H zRrFmth*LQqtpV5Hv<;2*i49BWkQ!Yf_Vbb0H%Z@PFosEy2(OwURtF-&yfseyK)DXn z_Jis1Kt5&{@P)>3In*fTfmS9kss_Y#cXRe!qdeT+t~oCcIFfYxFie~`?qjOm#ysS|^cNjm+Q$7`l~Z5%1T3rSA&%#6D=P{d8kH-82;$0f-8o9XL`Jo1*&W?Y>H z8X8yB#2IaWsGQ@DF>_u%FME8UYjzcpi5MqYKbERF9QrF`mjZ^O@eS5 z9ua|(iooG4{-)SrpR>|nhW?9UbB6zmV#9Ei+a@PvHx6b)l9!b4LM&`!*FHwlv?XlO z-G>|#5@K0;QWv0_q8jG$9WdyW9Dnit$`xo3rL8URx4N(kkACM=3NTw+JTtFb zM9E3xc+m!xPF>?hL5&6vt~rCWQlz#KtP6=u`ccG?<;b7<3m2Wd=ZDOv^5A;ErxjnT z4*{`yfcreb>>wLVK~4os@RO{7J#cGQ5YR7`{eC-%uixvt(v%be=N6qRuXS{W%cDnr zxs_f+h4tT>(A)5u+&rCbr!JWB<>y=R0(;cX;HNXBhHtBdqDNBIa*!xB1smP;{E?`B zNYjkXp*e{x`U?YwShW-7uEQacUU#pSyITDO@U)w-&y@wfgMHaFZxMn1f~eS}@Jjnt;ZkZNKkOHo{o+->=f1LT-9N{C^NM2|tS2W=hM(HV&<>fT$`Z@r z*)U9FL=?L|<>jalay^t7y`NcnauZtJsGs^HJok^1O&XOx6rR7V9&BGT8tW8Zcj!3F z>O1S@#g!FiUPc!PA=x#yPFsSiOj~%8PVCzP)CVWo%Aep%^AXD?JDP5jCkCJ4SoGNX zig2xl*X!z&SgYS#Hese`E{Y4j+iNp=rD+SVXc!w#*MK1+eGPuiduox(AzpC?wp$ z9OAj93pM#nuc7&n^mDlq-51SjKp$+bNaM8EtUK(%N^>Ud2tB6 zY3eHJ(C4w?HEs~lUk_ObEsl3Ml!nVZP@Zlo^22yxJX+%e^G!^ol|kWjvDL;4k1%0obV9CU?7+f=|A9TYF-$4)&9(!#`h+HYS^!>rqW zU9Aqz35U*f#HK|k(2*;PVQiJpkVHA^S+L|0^d5(_8!db~l*WkLUj6Du4Cn4HircYJ z{3)T|`U4}nnch?J|0LG$8kk_PQa72(iZ<{h>4*VM?D`7>wXezfoa2F!@#f%HVv?Cv zH2{Gvev>2m=W&jnS!G@Qs4Iq72BGU12&>O{P31u*>)?K1-9iM-6U_YF4%WdhEvJq^ zSxZ2eh~-#%Kw?t`T}ZD>z(*$B^Jk`c#;q+=t%(4fo=-Ag#`f(_1&x zQ&zjOqw&8X)Uwb}s7gxv+f~a&o@X0)pnf8KpaNu%j4p&yedC+(TvG5i79d8^?G~8i zvnVw}!e}E;1^X;-@-~;v*^6fr9jp2td%)P@QSIKG0iBWk@G|0OoaDWo7q+OMV^9pS zc$a1(=9W?-t;Bazpoc^YbgUuZw0bPocugb$z~ESnQ-8sec^^EBCGxnq9hEc0cNJDDb?Z!3q0_JjS&5)SNKWQjuj9{fuc566Zz5WtQ{1l| zlQV}khE&-HG!XrY-_reQJCqK=-XBIA#6~ghxGA%*kV@Lv2B;SriD&a<2x60Iqcmc#Yi`L-p7cNz}17H_g*<#L}0cPeo*_P9-A_$TwKW7w{>Kbu>%yywP(Xc7L4f}x@Nza5Y2vyb3#kyAa}&!o%gF@j@lV<3 zMg!Wlhxk)<({`x+xbHGOGK@EdmGi%2Q5DFvNXUU&%4ML)hS=<-yg9{7NhKw_x(yjZ zQ+M*{7b-iRD6pQifb-7*hLAt}+6f5v+QR4qtqwLn%{0c>VB;|!**PN0^v>$hM^XMV z%Bv6aBySVdb7juP^<-%r4a<`uq=UbS8%@-_aE$laP1H|yFCooi9>QB&TQNw}#U$pa zuNc>>Uz|~_Vv`@2Q{TyicKvcd=0xAV>@4>U!pcH!cxl^>*PfjH_B>I*gtMan@Fh6C zSSCplD6mK7)3)4|aN~ssMKWo|IM(Tul4kD1$gu&%``~w7iYIE4;P7BLJ#7OO$m(## zZ8dhvH^Qa{AIrI(YDJSV&E-R7%=(_nraN0FseQw#$CH#cT?11Pj79Ww@I?)+7Lr!Q z(PdlCL!zA`mKF5nhgcc!eHTCSpowr3d|9QnQ^)x_4^IKu4RDiH&MN0+8GEC)D`cRe zLYC-#R>Qbx9jIPIoewcZW6@5A0mq0{_caK^Z$nK0l^Gf~GS=wF_=yFyd^;wBq^iz| zt5$)P<%Y@h+##1;Fe88mTicB`8l(G=E^gCG!rsSc9RP0lzk|=iI?aZc3$MoV&cp&4 zP^$ErPCOBId9j+lnell#?|I4KHq^*-0!*L8Sgz~qIwNzdqtRbGZZ$+Qz*cT66_5^% zR+Jr6@(3*OuWg{-nsB6;E<;vS+tLrh@tz&%_-)+=iXfXVT2jujlU+O;%hUsgF)v*G z@q9$Mz;Ob?ieXF9mE=i+^|}BOjeBmyx7AT=mw07l{0%&NzcTk3OsxiXzzPc+&I;|( zGk48kqJkp(^WIof{2jFc$Vx+U7!lQa`1Es`d$z)zQAv@_mtI^ApK;PsrfljR2XAUg z7Nt(Hu~m|08=bf_DoY9u(_Z<5Z=!sTMa)=VQ8=tBR=`2RYu*}^q-QpL019Pg0Bzr8 z_qDc61e%8^g{|yfq3jNU^SvU0I{%x2Hk2X3NObh0 zOT9ticluDdOnirFcje{}}IVnsC4IP}+!;>VnMZ!aqSD0BQ?!ewCHPXe!$S7@Id=E@ zM^5kXQP+{Pk8T(h9AOzxH~g-e^clNYaJh{|YZKaGIj-w}9YD4eu zDt+s3Y0R>{|9Ze|o#WhyiU%+oP&?I8_+KMU-G?Yv|Cho0g)N{xZQOW`?0xdB>m~?oa-gj)D?m25heOw zMK<~-W!j0J{_OV(>?OW?yosZge)&?ct)8p=6FKQgP4D`;>mybsH++ynKkt%NrL?AH z1w4c&6^|-gh+5D2ksk6|Vm}0r6;_=6VJ_`OMmA+2aJ>NU&E%f%O_=_emv@?itSYHB zZR-I+@Y@@UOZ~XhyC=zNeFc_nN4A4n-X-!`y&Ab_P;Ew4x9BMGHut$-ckQtBB#}6% zXhs&Nl;r%n_N|5H%IcSAt=T6Z5onK*X{EQex-isy^~CwrT;2AxG_RsLTDNEq-#dOo z0>xUh^|`6>(DaR!d2&v&I7E`K_@k;h-%l&SI*ENN0-~Zdj#PE!op$oRwb;Hjx{KXq zPdLY%nNpMO<*Y@mwVvCGwIoe!kDF?3tFw~Lb=ck6l1{%R>NtD5Qnao4g<0v(n{JrZ zEk|D^(dgnl7KVw`ROO}<*Y$8e#@|fwv@!1t&U~1G->$O%=ich((ZjST*_HlR45SBi MGz`=WRIi2nA3sdJm;e9( literal 20672 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 diff --git a/doc/2-interface/controls-vertical.png b/doc/2-interface/controls-vertical.png index 98a89cc4ec81a52003ac00f7cef4160030b1d817..6dfd57706e93608d45199321c59a2959bb2911db 100644 GIT binary patch literal 11833 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 diff --git a/doc/2-interface/docking.png b/doc/2-interface/docking.png index 7a4eaa775862a987860ef43bbc882ab4177d4c6f..bc8eb14150105914ff280a6972fe3d6f08444f2d 100644 GIT binary patch literal 370637 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

    Swnp^df_>NXtCJ|5A$65!dyC1oW1YO)IST_ z`i{qZv%WaW;i6V=W7+?4`Suaov#{8LXZLTg{ZGgZ2+SJ+B|(7J!nAeg?fJHKhQz{S z3|qffXh7wkfc)R%Xc?g}>~RTe7D|LlC6nm*8n!$gCB|_Who)nP1SW5g$ih~rC9(@z zKCco~dfbAP$<9dKIl#N!1$)k=QrN@n`e5=~cw2%pbv~~S4e6INZE?hL;42i;PlEc7 z|DGHBt&)03tZl|6iR&=^#0-v%nbWrMf{3(CtxuLVW(OH)#6?hyiz1x24?g9}9R&{> z⪻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%0Dk@BZDZW41 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 lBzPUj_x0W^xx@ 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 diff --git a/doc/2-interface/instruments-folder.png b/doc/2-interface/instruments-folder.png index 18e4ae630f1f07fc5523f83c3493540d552363a3..a2fbb5ab23a6941f429e6c7d051363e9e57de937 100644 GIT binary patch literal 37929 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

    g_N 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

    OQD3T(jIbtr%*3P8UH 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 EAOEW-$N&HU literal 564402 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

    #ZIFPl{EYZ`4)80ldUo%vf@0MY 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 Nf$M?-ir4H+`Co!*^F#mu diff --git a/doc/2-interface/samples.png b/doc/2-interface/samples.png index 816512fbb1261d26a014d000adb5d0034249ce6f..2be62a9ba998b45575e78542fe6cbf571ef034bf 100644 GIT binary patch literal 41265 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 literal 19676 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

    4mcKoxy~ss!rlEz8;@Fm!62>4};rB_HC-Lx+F0 z`hmEs<*15{7HuVhxhhzejwTKn)s( zp!jp?(OWMt3kpFyv6so6@*&vAcN}fXUn;@V7QWt;(%%{G&9J0}pd4q{A}@7R+(J0C z8Ku>lIczlOvjWb33!kQ0dzCI>A|=bKOVb zgCRxb0NwfKw)mheR;QTR;F1y|DnK3{lXtxcTqEhYYWew{MWHeqoAq@49FVs{j*h8W zIz3AQ+{=tiX64f%| zd5>cUY48u%GCm4?HRb3Zs(PB(+!dWJZxC*E%3!A_g9OwTwdM}|xqz9D(M?fPJGhVb zdgIFACSP?h_T=i)4YR2rF^*Vr#bEX>8q+4MKG)4;2H>eeE+#?rH?_Nlg|lrV81-o6 z_?DOuTxJ~*Fi~|)s3JKA-#g^>UaYYZ|1P}1*=DAnJ z&MmYhT(-35<`$@|t{)z|l5uxYN+=D+>Dr3B0XA?lJI(t%&c)NUvB=0GqD4Fb>@eM@ zeOq(P$)*-t@yuXT?w#D~9FDiMkU`4~b)eo|VlC-$EI5y-AR#WkQxRiFq-PIkYCfWq z)c|I_@f1y)mhQ0&pu%uy47R?q;LMCI6vr24p0qSFL#y<;?%yH*$(IZ0(d&j(wiqV3 zqDo1uBM{;^fHmN_TaSps|Xw{5R(JS)sJGnnr8H zIP81`=-_E9_!Ajwxozfv%5abK&V_K#e7_8|57tiHuiKDlA~7*s1Zp>O#*pvdf%Ud6 ze~7lFLIs>bS!-?kkO*AWQLV|h7QT@ms&KY9&zQ5>n7Rszz{|gx=hOD(YJP#IZx%Fx z#{B$E8F8Vx5Y2Cw3_Y0a&E#Hx{b^b@2Q<5|a|x{wP6YP?;rI|{7?)HKdCJ(~;ks=g zTxjoHgb3d%ab>4F64el@{f6}R(A#i2*NR7{EjTYuP_zbfPa1;X1~gan4rp?X=bGn# z`9&B7*6wd!MkrxM_tY6Fp%q-0-2H3|29l_`UXp+M#V3zChY`I`*C)l5<~SAU_ymjb z?6X-I#?bq2f?G7RPaA(nSqg4UMhZ!zyNE-SRM;^{xha^>>XWqM^MGimZ0ab>3v7t>q9{8%)kul3pLglR~1uZreO>dT;oohLjmOD#&b#GLnN%A;6#MgiY zbn-;ZlN<3eXP?9r_jC;J J)N0vB{SR{RO|Sp} diff --git a/doc/2-interface/tab1.png b/doc/2-interface/tab1.png index 2c63a7d916fa9110abdecb4cad3404541f9ce4e7..156532c5b90e55c9d9862a4386cad4e7081e618a 100644 GIT binary patch literal 77710 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 z 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

    Z3$3+jtdNk)HRv#AdZ?W zyFtM_UhV++WAmfHd7&SQ^N7}9GKbB-?bnld8iDB+UU><~2ocL&uxJ|PYgJ#Fh-}Lt zhgnU%x9C{5Kw2ms)3&$2XcHfIXPY*(YYQnzTbBE ze7VMLJy@~BJ^xlt?=f{V)_e67I>`XW$;c41P50(u4Y=FO955C0OJ$cDin>KL5pg01 za*t=w+@s!wIC2;EHx;T@5$_AFnPR!chPhBt;Ws5$ocH&6CTQsxMskY^G|!lAanRY# zDJ>`v`?MY7!cJ5?eEPA&3Um7&jlcS@9=7v9rsmK|`wAv#D(NYTU7cp}#Hqh@F7-4= z_m@jbGK{v=7)Pnbi`2!H62qRv*2NL>nH_kF}D83Wh3l7i$^ zB&$#?tRlFuya0N%cFTZu)$}K1G2FoH?;TH4(am+^n143GbnU}?10U1x2b-FgYXqVz z_j{rpqF#~DFzoxzZx7*Ej}3x>`YoVSy?Ix{g3aKl+Obk4FDcQpfai)}kls;Oc`s2^ z$GP{^S5M`Mv0#$WqkS*wC(kQnr$16o8Y(A$N&Gd?HT>dhW89ufwrkxL3v;+S(nF_M zE(4+ugJqbZMIu@)i0I5<&R$%~b)?8t!GrmI@~)!750!OP4Ni=@fzu5veWEwdswGzF z{Qm4KnEkbW2Nsu5@^YGvCCWu>a=l(#ch`ivJ-P(5ddM`Q1!&(fL^rhh4E(^8_tv+yHtjTU2gpslx#4jt+b zzFCn^y$4=7Wu9%J!E?rPeFHS|5|_RwN`A|EO6Fn<8`JxXJF}3Q+tPVQO9GRefl(zk zrB?ZA9=>$KvBYkbSzqm?{l2l{E_R2gilis=lJP-|mv zQARvyPo`gN9I_-F0`s1`)Kq-Dxm1jm8h=UHTx&=I$*kWE3=2)7;1U-j4u2L53h%w_ zN>1<(A33Jvhtk|edua%hB%pVP%ypYv^*qty)fPP+H1g_^SEg22?61@4{6O=sdDm*P z<(r9gD%YT(VT{{ZLF?Tx2 zJMI!wa8oG{2)kHuiOPAK`GZwM3BEn%to&~pJd-2TFnrGwl?22R>Y!XLx9W7xZVHcH_X?Cl( z6A6bZD~x*7eB}d67dS@M)tHii#Dc2f6#qS(M;7Q;Ng0``lnKARUJxaiv}$^#L)s+X zkva*>Ym7olmKu~{GkyH~t&fX_;Ct%vJ&C4>8o-@?WKj1IxpX4}S}vrn_fz<_2XwUe zU}bgPyj5t-FJoJ2J4cU7hc1bJbo|!62(2mItU}F*-auX_y#SX=-jS0rNvGqWOf4t0 zL(o0SkW!*wE_72!fOUK{;uz`^-D=;^BD%k)Jy;hJ%& zJ%s$*Lpv`~T%V*m^l!3~D|gB-P3gHLK`WEcVrEv%WWMjU>9&}Mq0z|t+4-)$%i@-!j{%nfm{RyAoTmCHtEjr`gb z>#I@{m5lU5ot7i7+SpUR0D0frc~Wwi&@#`5L^GRJK!B;P!?S zQ*+c=B&yt(dedrRFFRR~g@}*fQ=nVPRd{8$zNC#=m%|X= z5!4lj3`Taj6Ukq8t;Ku1Q`1mbZW7v~Jl+@XwK+D4GT)*1K8+GscpT2Ln>TBCmZ3O` zLAu)X!UNHkPYQ5Fs_AFVPiVBQ>n%1P*b`N_(n=m~P9?Zn4I0I&Weh%4(PiFFA@4}a z(6668^48i*(bJ<+v}8gl&rfoSkRK<+i?{V%t}YZ2Ub%(SsIR$y@eA-0spY}l7xU4} z;9KooSKl9Z1tG$LbY!B^_?HBX+P)zORLg+TQ8;-NwGI*)0 zTPn?LVszj9=I&d+7{%w9{=0%|l^p(dtdIwL)@44+QZAS8AN0SQ9>EmQgPjUqdv5P? ze9qMO6`3l10KPAXOzh3-{{6y8l#I$1TI;-6B?F&oHX_*CcpmMe%+~gFTst#!R}zZ8 zqKzoA&B~eX69s#cPnm35=$blEL26Y8!48 z74aHO<@8={?X;bw!`NT9UfYtYX{Uu6+XVG}tsuMttT>#f+UvmX(Vr?QSX*jpJV9t? zl=_ClUesz*6kM1CX{WO&$6gv;SIc>*-fvR)5{3K)7HkcP?!V6fp}53ja%cVQ!{J6x zWti^6nBhvUAa^{^MUvpvV-9V6rd*80(Ratd?w&TQC5Oy%r^~F>LrQ*{OE^7O430Y2 z9K57iY`OQ`!^r5&yG6HY(Vv98qOtM!GSFx(AM*$Na6~UIyq|#`x+h`La67xKGvoUm zOSMgaKe;<{R}}PwS6<-g*MUd)K`TzqEDu(@WziHQnNHi207ag-9hAkioBtSl{eAyl z-#6%dqi1vtTv5q*ivJDHqp@s?`Zy-N^ZwVy3zq`}TR(>y4IC4{sS6U5sX3K@rl}gd zm<)_7@HzNYyBZr#9lPk4Mbq--+-Z;MA@yC zKX)eq@itdK1W_>G&#R=P(L<`~FHK7Y=hXIbWW$M~(&dS0sRacOMrA~-qou5a&9|Lf zshc&+UWaBL3o+jI8qX8*Z*CZvOI%aYxkapPE>tzjSb0$4m<%&QXRgkleQN{!r50?> zZzOiNmsjJ3jvaA=-E^712za~|(c$eczERvPt(Dk$2Pa%?zTur%Vh*v;u#AlGSs-n^;4gvt;w7Qvnf4iqVde*=t8-nUfso4=h8up&p@Cv zSLO?FKj>Wbnu@tYhhSq!^Ho80lZ={w{1=W0r=A6{Yc~R|kk=rEh6mmMF@UM)nm@i6 z-B{P{c<#&-OV-jY*YiUbSIZV}`7@6@Ys0)P$1!i{8mhVh(+8ION9c`M=k0P6`vtjP z6L{v4Nr)eC`3FWTI+WVQhwSk|5)1319Apvre|$Va&Bg4uo}v5Wb8@E z+@z~RY2kk!rJbP zhJPE-R*znWO}|qt4_+xLu1Kf~q>TZT`1N=XFm1-$C~E9O>Tez_t+p#anAxp46E?-f ze08ckaZ9@~>QLBZSJ!dH=Ne+1rw_Pk~%|Xe+FyojnbRP*_SW4Ac zI$oKTFRcoxRgDM5PzJtdXHLMI&nMMT;!81%3+;X3aP{-(aD&}C?X{X8Cgr{S^&~nO zUXb<*-S^h>C1cyT0g?;HxL=dMn}fI|tr%tY;gp1fc2q=vc9;{UP4)BZWlAJGCE4JY zcUi@F3gv-n`fy`AnbJLTwin*4WBEwfwcWgp9BDJCPL!6&om{+4v+wUU`IL0xT7MJvv)>ZYt6ec_+v`h= zf9sN3rI(_@V@#O2-&K}x`J*K>K7sdJy4~xf56d=CBA*|9KGK*Hb3-Ma8!#0LoeE{n zZ~2MT4}(MqrIi0F8BVUMaDH1WCVH2UpCgw${H^6VK(IRM+XqpJPE#*4>BOpph|$KB z2vl$Hma29vm}t>gWA zIrQL$kdHUbq^*pl>x*!TKg`X#tj#Qh+EZUFc^{R#_JjVy$lc0ZCEZL#KPhmy5loJl zvtzPH!eRjPJ^37Sj;SiAskr><=yE!q4CqT_Zy?RPtZ6)`mE<(<>^H(Z?l)30rd>5A zht!wLO}1hdkMF|FN05J>&om`R`i*eV?I2R$40&qAJcwh;M=36Q!Il9S+9(Rk+bEG1 zWXu)6ksasT&B>8KK+6fa+?VpmtKs==6}t7az*>)?RC46(yy7xB@+Oe}u|IpObvv`( zXeu-|IrodWDDs!JT+3M|=$Mi)HAm`~ErOWfBX+j0B7&(7kP#}L`#3v)+!hGo-zdCixePum9cG8G8M}9)E>lk`o<Z$rLMDn6sITp(Ar*bvqs3T|Jw03Q{Q&!?p2 zVeJm>N$kgU>Gxi&FMcl2seU$t0LJH_+LKUq=~y7A)fvo5O2WcJ`xq;>RfHRWCBvZP zpMPa3WH1SOWs9AGhrtoW4IQBG4|3rd$*m64ipv>rlu9~SS&{nLHh;P-ETw#Gg!Z4t zA4I*F%JL4=UWZZbu@6TYWdXuGv>&3an4aMMmNA#6yAiqaJs34Y2TtcaYNLb?H`=z_HlYvB z3Gyv(J3pw@(Y%L0Vnu#=zo>iJ*t&B3{hC4H$?nCsF(x$vg_x3Y=hH>c?6YcNM+F5aNaYoqZ4eAJ4u>SVu*^FqJ;moDxIf5LqcRxebeEZg*RrDi{%J^|~lmv?G2XcJ{6*U+7nl>2N zx7FskoO@cCn%Od+)CRZHIfo9rOp!PdJG}3P?6saWYE79v<_oNvHb)y?DTS#fr*kf+ z=;S;db|{Zd&JjePMfn6h%5;u}M_l2jTPYa~Nnf^itc-B{z13w$kVIcr zQ0O87cuM)is?u=zm9iSsGLy{l>xz6baz@o&k0Dg<-$~!X`6U&MTEZLp$FO?G_!1?% z29iXOnINBdB(Mr>iV91}umsZ)$oQ3`0&kcg9~O&cm z@Yz%IC)Jmx)`SNJd&gq)vN&q|m<3;1w^qeUDQHx@YmA5Tu$cUG!}c2m@fNI?L!G6g zx8?fBs$vV)m&l{Jp8apIo56TGf(&a2l?fuyuiVultlp{-z5M(sk-x#vAynlPq5jv= zTwYlC_DOl>LCmt#XmF`6jEekl!e}n_6UB;yEsLk9)LU2OO5D~MB(1DkYxu*pql1H3 z1aHE7L0YO^7<7!hyt;FwQYFDo|Dp>?A~Mlf*zho`8r z4Ce;M{y)6rrZ24Ix`f+nQu3POV*zA)WV+<1g@I6oxu3AL2Wh?GORR-_U)MM>#^sfo zUUBZy+uCJ=@@%gtzrttN0w9zj=92yS(+closuxI~Rz}jI7>KmvL|M%xCNGp)#+uJB zJcU`%7Z^68jz}jdJ&1anoCoAJ9}JZgYm8Su(e0h5omAff;DgqYMdd4^+WQ9pkG!-B zPbaAa5U6;!X)%qV-ugdSmtg-zTa}yn#9|)idq6VSx&KYGVK9gJG4C-*J}Kj*9|BNf z+(6o&yS^nS(FJFaEOvtz)~(ZSx$ET(S$SK#iowBT zLmvL&S{8{lF{8>S5>H@haiqS4^1z=zz3xbAy439tW(m~!?`OJMT`;1SLNz=Vc=JW0|>$-+Iq*J=PZEMp9Za4nIOvlOZrLA#coaUXyRQMRweyo2AdX7 z9yYkr{4zK9Dcj2XPvccVUUM433prEx>&`k!*a3Sx225-z4)GM59SMdG(=zG2 z`#OVUYQ1t(Jk}E)wGh{cAeR3`QA<#gL?cKdjRWrx1f^qrUw28Q9@GVL+q7_?)o4W% zr+lUUUtINYIbFf{JZhN*Ww00%q}WXZ0JDUQRpyu&i1yT2@>-M$qP?N<#I}7hFmGV& zGi+9wjR*677O3vxpZ!URz-TSxvt&~)CE9Ni_SE+-x?1sNPj*oiYf6m~?2{QY3gRw? z(l-5v>t{eIo***Q7ylPy86iG952=1kI3Z484A(aujCy)QfL{-RCw*(QDxX}aJiT1! z2~>dir&`rGIr{J2^Xd^mq>|CUa>)SgZ`%Dg@jtcRK%ay#+RVsfCi#T5;;|fw)L>;w z-cA5QVp>MKH=UbDj**|7-;)`+86w=8&!cXbQ;^%F`JCKlGGORMpVF3sETmHEAm;_=Iw? z+s~gU%1<^8t;5<&JPEM4-Z6tGS(RrznT?f|&%QdqvMpXUnJ7H~Oy#tK zq}b;utuA3Pm+#DsGDQJUUxiM6*(wO;ym_VseNB^sUfM ztT==j>mct)8}=q(j@s<$SRaDJXH|b(*IvprGQyI z@lB#+5FHIv{{M;gDX~P+|6h4NE?pR3*q+3~;0fdfm=|9n1{QuLFJ!kP7qD*tP*H7m zKmfaF-%z|Pw^xy{K}^S`@ghxfdsa8ZD668-U5JmJo%N>oD=QW zAb|L5)TegzAF1exu%}uC=sbS^R?B$pifv^J(8f z+8-p1roCZ`>JRksRAzVCr->2---1V};N;6<7>S}bRYv6t zX`H7rCvvisY#R0Bg?I}jih>txi0y%PXZ8f#sNd6*HRdoPDa>iWb6#NO{=ulp_2Odi z1U56?X-{qUztJa!d5Hi~J!j>00*q(WW>m(4YMqV=LfU`w2YGs6D^e+dUhw8*?>kV* zJs8xumoXdmgasU74S8xO=vcW%aScnK3{MEGtS*%=$_V3OO3ADPEQbib#GRgjLMkY* z7s0?Xa$J9LXcEOAJO!G>Gp)o938h?Z-A&5;?GfhI%z#b!)e)yG#Sw>`FHua=f-3o5 z$?wo)(v4j=2S5k0W}{-Hdgh8&^JHP8ep&Q5I}r~8hP!Y;$6LFTuce0u#sWXXeg{Ky zk#IlLK*J%pH&Osw17j_LzA7;z7OJ6Z7_H z$D#_tLn>}Tf4Cre$q8 zhJb)?927Tw=E@6W$ojYwT;x9RG4}w@Zbbn(npe)oAu+ihlP>NmO@}$R7wH!r4{+W% z07fBHv|Xd8L#ZWy%~3%5)&F%C87-_yavzGNA)w;##l^YmpgbPm@$@tLYsutLe+WMOT+2C{-3WB-I(cC6^YD#2 zTP%RXgGv}!ZFwZ6LO5Y-@qC2=WfITrqR0A0MCfJt9*tr5CoDmn>iE2npM*oG1D3V# zBVS&%ojG-2)DHzWeQ-gd?7toIp++q;AK;mjIBz=twI z)KtR+bIOjbZ&-GPt=gDx_$`}8{))au%}Hiw%P!cyb0fNOnD4?u3mz5U98I;1YS6z{ zNU=Vy*gW<@n6CTy0E-Na-6kWv6(}o9t{df|4V8qVt$uK(5Y)tL3BHyToBvV+v3L8&&&iq-*OPthHBWdMcIBgb>xcH)`pXV2!1ogwSX&Y(mRzTHW~?7tSW6K7fV?6lp%r7uQvF`*@~bTMl2G_^D=nR5aVj!2+T4C{D?iw~6OrB~3bA!v>937B z_hsZI?X2M>sO^7qSfO&~WOIB}jwo8X$Y%f!$kTfK8*V7}Z;L`czI`Y#)jEQl8cy8Z z+AM#~ynRs7%$vgd;dM{?STpF)nSwK>Wa_Px!|T0Sc}R%CtmxgUBbu-^a3LwCJkR%= z@arM%2ys9vYBUGni?o9!3(&;(%+EW!n?;p za8H_pC`-ZK&dD)mtAhtm$Z)>gkiTf@!-}JF8_2WL{ANH5VK#9b^V4m z(Xi-3L;Uk5hTi(lg{+n@gIlAcy|q93Uz`MlmhH!gZL3;{TO?*59V?X|z;Ex~Mcisl zqtv7`DSV7N?x-I14D9#mb}z+oEH4`&7Z{s4&$9hR-T|)QJUWZXEY(uQb|leg#R@%# zUInq_BIT;EfdlzU5qB5OZS1n8IT~~(yc*di8e<{c5XorGi+MP^l62EcdY4rbo%V`7 z8dc_zeI>cCT4b`M)(Qz5p0wm`+$O(}RC7J`FmxnPd`!>LbX-aIYpK{pn|zxZM+}Cr zxk`R1H6X=FEpN1^9&nZ*nT?;;Wgh=!-HrE09*PTc(kn5qq)kS2 zd?f%X!Eta8QE+Rd<2$)LkaqKMOmJB+IijvsFS4L6jO;B?J_7N)XS;DAG0@3r_bi}2 z*=!a=6MMWG*z{JauY${TNh|J~s_g|Jz=7)i_TgEz83KELc<|)JQn9CsSM>X+o|5UiFY$tZKCMeJh_E$)2|UM#37@Bn8Pc{ zVYp;E)@-~Wo2tz+o&-u$F8I+{c-3a$Q}Uu%4Pb@9hb%`Jp==vw)tdxJyyT{~ErqU|;!O0pQo9vbFMb zU|+sP(N}04eB5hGYMKx_Kg`;-Z}Nv$l|LGsnbrsPDC@t;MA72$wu+P$V-V~6K+n8m zzQ@jg{zcuQE@chLpNxc&i;Ac5!V^1c{64?TS6>r#peT*sJp9&f#9PqTn*niT$+a6Y zUoa2f$pGxN$bPm*muAqqrcG4NUKa2fN^4Ya{U+%#tMHTM2!EfZQa5!A<+HslO-V_M z?~lwI1iyyOB*EqfWgRmJ?}R;X$DE}54#MTfuf8dhld&9QkQEAkQ(qe$v7G>w5BfIR zW&C~gSd^CabeEesq5B#w4yKRrEn+qHGIyr4L);Ebf z3k~n$ODT8QK17mBeQG!_^0h&Q>XY&Cd_(;v&8YS9aXigo?$jN3Q)j}E?uZiMiK{wt z|F~l-7{$2`0VumtV+Q0pS7m5hX-|klu9G7+>>W8LXJhE4km3D{UM6qpb9U%xEDhT? z)VqF*b+7w8uZ&IwK7reHF#nF2&_&T9|6$+Ky#uh9DB7#WP7aJWy;n~YddtRpaNAdD zz?1ecWA9_n>a>`S_8bIyxQU=lDqyK*p*3ct&CdVbp^?dxUtWLFqq@(9edF*pIgsgg z5&CNf<&RT{H{XHN5P`6M$=%}4<61`y_`|HD=;iGpNYAbWa^8In1QrrE}&5YRNp1sd? z?bb&S$dS^N@kHW#!)42i#m+Do%vNB)M(W3M1hIFi0Nm~EF#kdAZ>1%HW0~0mgqxN# zj2V`kg#xnpOKlIcW_MRqGU4S_bMm{mk%py#Gw=59&e&*Hiolt;?|o%r5yY=AL4G2B zG$YGyct`R)ye^N8G+NTRur?L!#gN*bi-{9+gc>jLY90$!8wv?2~z^JB0TTkz=nI>wNb5-r_o)6DGs}IHQcHsj) zzgt*`2i}7~29^1PG`gh9u@GTwfkeSSG>1nQn)CryBycbumdtndZPX_-4U__I%<^4adA-^kq?gE*ub1NTuE{h^eK%m$K8{;Oi zsEf71l8G-R*~0})d%_F%;&n6TCE!eQ9C@oE!`izYZ~y@abaz89c6a=EcLaU@h=3hG z?DvSZ4#p1%pZ6zlK1wJjp0?hD<4Xm6aLYMU(mcw*nRM`lsfXR*Pa?jyByGeOwn#gV zbHcc*4E;QqUzN<_`@G}DUkLU|z3OB@LMGDb48(tq{rdGl(p1v(6p7Hp@5&H3y7d}c zxP<1rDz;FmJ`V?08`czKzt|wq8z?T-SL9DepN{p;~}x?EUM`11+&$ouucE_SI!8r#oeW@?gLDT8QaC8_C#%DrSc5amysp z5#dzWa^u?ID#f2&zt3gE$f2?{sNl=e;>3?)M~eTga~r)W+CsDr#voZj)@gTlA*jH* zpcvj53__slEJyL6hM4o`)q94$2a^SdA0RF=P3-^1Kx!0Z7nXG#G)muuTz!(IY~4Ni z)|6n}O^=3s`gP|Bgk6B;;bZJvQl2RK9*A|FqWmj^i<7BnGeTgID{f5KP3p*zU@$5F z*EcT#S8!nR0V3d<&htVeemKLlemL)tTP+~vll=LloLEIsIO+17rm|;wl#}+00IC;n zE-he^i<0YkNcQ1n=3U83x%eKvjF>+=`|92pD%xwmT%Ao^SZKtz`I1LP86BE#%to$o zhfz3Wi1SQ7!B)UiB2RNDhfJ7O6!X|hK~3+y`$QM>3~Y(FI(NAbr|qlMt-UtKDeTbP ziG9*B8uNeA+q&(#*sN$y=cOj;1bpcJLi=&u(JeWoqa-SSy~?qanlk#TsuHWmVIvk> zhWeIdV9+r;_&(BcEhY-R!+PGQ(QA4?kGWk0wzX0K_hHaa^gb=9Z<5loyYg&m6BVZI z?TKg9;5{kDWZ=DS^x8WzW>eAE z@79uSE^Hcp*Rk_TU3j3WU2Jx6Qbf|s(euyA$EMbhrJ8rkxLHo6SY@<>)tAkY>K^9p z*;h5dP$diPSecQ4I7k1z6aQ>GE63kUQ(H$wzG6yReMud=-@X%4gl2pDny5Bb&Ij#8 z1|ScvciF!<^CjoE9ehpp!%?Mg;D5h4oxnKyZp=UK4hjK9 z`y079Jum;Gn1xlw?5}?VgpsrFfKLP$_YE&Ck+A>0_=QLCJfoMuIBXav@{7YwSu5{I zNv2i0$M(P1W$pJ(H86Sm;_V#_7ySC6wf7XMrWkpOmsg%n!Cyp=6ZEmmJ*K^JeyTj! zkxY#%T#IE@;$w^lqq5{=ZytBmfm=m6t{qT`b}J1ooa5hNo!Pig2pi(-S6J@}UYT^q z_FV@1r06wWwERt>AW7$BVVKp5NCWARDyuRU;ph zKB?yynOR{JrO4vv4NrW}uyW=~Q#h7tkS>c?UsZRZ?elX8(7`xz6n}wB#F2V!mP~MbxHjOXQ zU4_J)Eh`;wrtt-y8<5`LybZE%i0u4MtMsnK)Yh%Kt8G6B2MJP<+TOCWImL`%jonUT zr0)3ZJp=PP{)G1{v&3e2Y(BmtAb=+e6h-r08Y#Le=`@5oN16u6$|u|SUDJQY}Sb)({s0Q$_q z-IkbnN!K6SkbcMbxwN<|mjF1@Q(BgS$^x^>+S8ZuMKfYtYN5!kN{Ry5SA3xq42Ictt zgeN0DI~%|L^zTRhQ8EHF?seuLPog6P#=NQetHodcmxHF?Bkl%%C>&$(7j^K)Vp%>K zI?>n)Ltu&sF4a&x^Jw`4_k|T~v=>B)M#K5x50C?$L1SAn0F#PX0ZBG*e?g1N7(IbChO(*&*Vwq6%9uA5~&R)Gr0l#rC6#3uVj>+ zJn6HoJoKqZX`ieMMOGkq99pIXGa*t|lMY}{(z@L2_#>w*&RNnIvXR;w==e{(I%2Q# zE2W}BsE=iL2itscjFQs>n#kKOWTCdJ0jI;E#XBMYTd4#uSV1M4VfxaW_BHL{^9_p z_rb6sFMhF8j`P{{>Xv1EnF4R-I$$5^UIL1{!#L022?s`vl-aMJcff`Y5YR3byDN9g zQ9^!I#_a{F@7>O5k3$#kMPZ2b#l?^bR3pw^^3xe89q4(xRgb$?)PSfY3WpJ4#B6Vf zHN%cLW8n_;o)|zuBKsSS(m*u{gzle|dta?iO*HLUA7n&XZLpw&I;K^^1KLclu39s*sbv9s>?%?msi0y z)AGA*PCX|(?>P24*eKLqJ(Pak5$L!vaxWyd>CA4R_e4Mh@rd|$WIDRh5^)zc+brx; zC&sU$_u{i}?!)KdS(?hSu2nnkxF@tp^mcyZrQCVksg^5%kYL_uS7F6~?W_@t zoffU*Arlf(rb5Y_*lwF*3xMuQ z_Vf2m_4yy_HdGkfL{CshRG{?Law{_(^DRNygfVib-grN^?K_$jyBn_`uZw8jhsC_T z6Oyyvs9LK;2jiEG~;Bp+unCnbR);eNima;DwrgAUjR z?b>1+aSU?7IMgkgTHu!rJ>@G&DbAFOsL$AQHS!PV{8xLnpDRV!D{+D9FtXJv<)&+$p2DrRe0vwZl|#udf{wC5ZcD_3JSO_Q`~qDCZ}(a`{qc zF|zhZ`3U|(dRmz(kE@Lo(X4OWk>muMg?xLZJhu(5mEZ5 z1gDY{l+CpRUO|QXihDHU?U9ovBVJJ7x5Dy_Gd!oCnE+$}Su$$Z0p+}4`Njr+7zEu8 zadT66CvDIZi$r1V<9S(;loorn02!EV^16$_?iR=0U{gPv-ui(ylGbsvMCd5$H%gl6 zboOJ+*URpz+5OVa-Q~P50uh>(8p{iezzsVz6^6Ty6I12%z31~FD)QWy$GL! zHO8@~-(vTzx8h%N%zX>G+(`>$y2%mTW_Ws|SquhlVuPhX^< zUN*)2s5t5|L|04n6*gk3c7OPPl2-)T&QG=vE-oQ+d6pXcM zyGDzpq+?GL2W0U8u3x&LnKHZ^Vc$iWpB+yI zltG}YcHWdF4sn$bwRk)4H~heHUhyRmk@dnF2;|oaj;KF$0D;6IIbHKE0-??zP+8Lf ze#p#Pz8?825J)J~s?*;^Koq`zNeuUnp#T6;OA`3qx?Gv@929%L?;w|Uumyy^>(DGp zuJ~ZplmO#R0gleXH+CvdFKO9+102HS_NC1j$*3mfz~xm+rXtc>=U?ADgJ9% z`EccQ)-c2F;|sgq9+@sBL#sD4WVI0nlbWnV(y_($}s}9RETG(b6 zvwdh*x%&B}j>Umj^oE$IOLW7RAdd0u%+yCA>`_k^n6gKcrf1Ejn$eIcBEfsu{#1(l z%)?X^G&nezDdK*5cYQ|44!JYaYyL=Cs8q;)IM=YhL$6pFO?JnF2|U|3QMy+UA%-uM z$->84$v?eAxk#ay-qhUevDKdx7Z+EBv9YniZ@1X!w4?ZN`JH2?!a%-9Ph0!Nv9+t~ z#l_*mUZtRr5Q!DW>S(THmg3H0lapm=PIflfVO4xKnQc5|FJVu9@711Nu4?&(iKiw&}eU|I+^CD`rX zXLon^l!W`C4F2O~SVlH0o~5_9D7n3(BWG*nm!9YX^F|l=^z5v5F})w~3qk!x2O}#h zrn@5N5a$Nx9p$XR9B-W9{S9Y7E+yV))B3KGbH)kN`r}KE6EWw8rI*Jm?O%@}ZY{Ou zBR&nR2memD27GU74oQ!71vnC`4PM4jncT9WSALe0-Xknrwz`cbk0)9O?ifV|g-r8C$txptqSK)9nKeITW*x z0Ryd0X2s*2<3@6#fCyNo+d6VX|1q0eST_1z9OyK^K%o7;ySw{LnOZ-On@hCEQIL%e zC>p-9HhP$KY}v2?EO$4w>@F_lUSRJN6o^OSZ? z=bKQKjS>}o-fB2q^=HXyV_K_&S&ZTjIM4BLq{R2G9?6d!U0vIdWXv+xA3cZ3hL_-3 z*UL>!P8Utb-pf12_EdF;pE0f;W2B-#;#;TO0X)i*Lt2V`!t^AoB&7Q-R zH3fOJzJRsLwdaB1=x&4cj3RyY#lL^MV|hJwmJ=MAKQ+tenN#FW*1Hz!EG5GZ&-W(U zuhual3D0#5%602cFD@tq9Hm zX^~1gUTo4UMCSij8CQ0mBK1s@Nl=GfRFI2sb=`Wpj2gMu`@@HC&4xeK0l7lQ^JUW? zI3hE7tu=j+#9MqHuFd)R`CXLk?2ejU;Dw*kPVd~`&sekTH;yhX8I=E8sWL)|8c1Pp zuwBrE$;~l|-%lmmQgL%9xB;|V>_(#TD~b5>Y+z$yk#ibee6umwk2BjnQ?do#E%to+-~Z8+V~Mp8i|wa5+M~J>Ns2*&*V8_s(Ro z(GgSF^?-;5@WOT%xTcIu4>Iy>%UAXJ)$cf491y zRT#DpTLyA8P7;gtJpbms`WtB(etb-chxd#z?@2b*HPEU=$_*wFNaULeBe!uHTD<>zX zsx4;H8%xdYSpfTzOT%t#Pk-p_T*c2rG{(W7uhJLmB7n>UPnsDJ%0%W%|6xll?iN_` zEeJU)OVrcV)%DkIj-V6Wp4B@x)egB2TqcdVtq%HQFVlPglwGW6)_=|U`i=B!l%A%g z=r1#0ycs>gAY{WN<@V$mx*4ia&*$y zx3NN#{26@9T~Y zgtAX}+x-6|BD@-GlC&m26u#?RZt)ubn`bOIWwl`-uAu$*(E6nc&UO|vl=ztErnmYV z1~Zt6g-5h2RoJ!RE2+k*)%L-KV%+*L_G9xKLdT;&LlJ2sY6Uc1b7s`k%Xam#)NqHg zu~#2VllW3jmsPE)+tNftO%l}`*3yU?d22k?nVGdJCf{W-GBR3B114YTV#N9`$>zSz z`}X^A`u!Tt%q6AB=0y9-u1emo!`YC6vK9uWss~uD;fu*I~WS1xZjR zO**W^BVt(8-2T^BmXg=Ie3{aNQxotWpBs_AxJ0PC_nlPF2~wAw*66{AoUe~7ye2S$ zE}fRiGWJk<$Y$|N{;sxIg?xWb3ua_bX~&Lj@C~5|oe0lvwmmjROn-I0e5IfsIuT`a zC%e%UCigJ@ZTIjBi^Z(1w%L5`Qmr&e+;qxW+1W{>yGDk0SwZ&D&`_8F9^PHYcNU+p z#}O*YLd089tEf{CMs-b7Cq~Ks4a42|Eh4nnM;?fMVj@=geAxs#9*0KXtADxEet>Dv zp!bNqSBqS3cCjXDaXlPY%?TtI{))Xj)9`7ID~YK&S2zV#d|ueFL~fm#A1(a_Owr?9 zdB4;5cv&?6P^eUwhK8mfE7Ys`>+!G~{|tJcQqFeD0>OPIiipSg$B20@>K>)ct47J& zZmbop`PqNAxmANi`&5>gHt$9szmFUFX%ZkU$Dqnuix{RAy>QLW$Qo+UnxAK~J?!=B zz^fh4KB2D6WDfen!NG*k4@=u*jVwwym$>yE++^k8=*TNs_^CAWv;DOAs&}AagzQsz zi`rPJB_cVC*`49mz-eHdKjK)=H^bQ`HQ zCwP#3kBuusD^<`uMCwX@b8sT5=ZQAHiM~NCim*Jtrn$yi{ru-N56S`wm+n4G6gGE} zufRQC=Gg$wk}UU9zg;gqSSfoJ=kIJsZu!}WhIq=<=h`qX9Uf4eWE;tS;FAyEiXAlV zx0;6rG|SbBBr8?%MN#P8BJ${oxlG()yb`8cLS$*vrJj-PuPMcRBEuAXP}2GB!H(;l zT86#`WvR+Pju)HMC|~*~B;daEl#butc{BH@FfotMs+pJtqST%%{~J_mey-Ev8ZAW~ zFo^M!J-!`%o}?vIwLp&gAy*}If`0ts<;$1ACQ}kqvWeqbH>;zDd!pXBhI#$tXLe|f z`#|*JAC6n}t%3I5{$7n)aj!n<9TW4vWnDJ^uGa-Jlx?5A8>AQ$6P-6){1Yc_r)j1s zoxVHJw~j>YDiuD@LGvnF7YX+bnJ$-B@Q+ay*`4rXhVBXW?INj1`wH?|yvG@Q$$$VU z_uKLSal=K#LbRo1EGpygZmEK$QfzIn*9uZS)lU3MH~OL!2#Eotw$U4FG=4ONy$pGA z_f_1sR6>2&7X7Bq2wLU0s5BNPMs2B_D>h>}Y?kx;-BQc$tHd+G}7~B2VJ+_N*Tj7AKl-U+2Y>^0uH7u z>80Su>I2UpOyZi>Wue>}Ch};^y>ZV#Qu#rRXiBl{6;Nnl_LiFXyK=;NZcjjwYc5}%f9p74Z%?&IJ(!0J^)n{2-ut4WqKSXS`m(wFt5zI3LCADD zuQW_=-;w2!lO3q3su^9pp4%SM!@Pk~webhBf^n7nAGXnv%TYz=h%Jp9IzWiOxwhC1 zzv`#bnNdDlsE;>|d!gwYG7yMl)bYp8%^WUjZLRvr`P|mMPlx(?1QfkG*MSzBk=nam zoE3%rpfu>*&n?$G&v5v>)?lTJJ?ou`t}niw-BhmLKs>l?q9QwXel}K7zufL_b2)WS zx;BcQ(D65qN%aRF7N;k{^NT}r>5+>0R+?`SLIt+e1+Y( z)+c_}krzLlq)v9d>4O(_%DYcojOw-G$&usWxZ|5|csJbCv8k_d@#@%nT!|T{#eCRe zk5S?LI!~foxh#^Iyf92IT-8oP*^P#Gj+A4VMMz~JrsN~1Ifttx5Z;;YO?<}^N|E?%xSu4d z@ig}#{l0=q!49Ec`FQqZP4j3%ViVJGB~oc`Dp09%;pSl{1&bnBiy_L$dTlqJJa#$Y zV(y=~E^Kx0yZ$7S#>dR`*ne=i32CTEXJ#7ysjM%6$LjcRM>ghI`m|If6@`EzDNkzq zU~c*s1y2yA+-!1J^~^AlC@9hYAX#t^T0SQpd)ok7WNGo37O32(@Yp6c|3uU)f0NNn zLM*zw;Ma1AJNPEa&;NgWLOJF{U{6R!Lh^07hCg*z<8|J|YA~Iio}OhKn=6m*#>V=( zwu#&1X3N4PsmY)EVyi#^rOz~h!ujV3h69aJ1BONyHgAlLzZep~ggi(LRX%rg#5W{9 z#6?m+IcGUs|NG8ig`lo2)^Jf;$6@~cxnv!0-w)khI|j@cIkCoRtJDMLd<_CHr}e&wZ%CV3L3 zP6*BSIxcsZ&0zk6wI~Ko3MmN|2@e%+B`aNp9^tWTxqUbiZPfcf)Dxxo4cI=}BI$Uc zLWTqy4c{A8cTpp}?@K))6p)Jghv$r9zH1UTHksh0PGHx36tM+ia&hN;>zUM_thB8& zZt%K6c~ACes>2~W?v?W80t2xbSt^)m{PCRt4(kVsg)c-QY>)Ah^qWpx|6)hOn-gd7 z1K-%9K;CMQc%Prlh(#^B)w?bn?V9}hbfoaIM(4*5I(&9TX9H@nD4c=?Gyg3a+VHOv z*>v%(_LnhfftutQcjo)W-{GQWcB>bl+Hakf8UqiH`HrT?9tTPP4EM>ayw}(AE59xl zR@Li9C`!Lv-R<8CCoIc^;z}69?zJ?$8mj;HtJD=IjDh?6#!B+I$ZB56@RX4=F;_Ju zQsemOq)^!aJNd=y{q61G<}6Z;CPGbxl>56o<%B%%8M1cwGcyZOLO#bWrVYn#JmwhN z->0J{og4Q^l2k7Q2BV#$h>9vVBN;yT{n6y-P{jpm|!&^gQqn|mb)RhPV8vb+6* zM(GfSfAT#IhZN<3p0Hn{$M@Qlb0i>YL70H~_eeIU_HYcP7)7NA0->t@@@(m(%!Ipx z|3k13I~{6H~QVOX{A1f43cL#3)LM!UxN4;|o zE*C6aK;M4IQm_hi#fV0iVDIITmc&EUz&|S_ofP-Mmt2>c=>1PEaAl-E+PRR>h~?>a znCmb!=vULt9dWs|TKzhL8ujdFafgsHh~;?+nk;K4s+29G`cigc7%Fyt8QY207b7Dh zbkzK7y=?d7W^edR@0E4ZUdcd0c?!TO$yoZ1clY;%EZTl^1HjDuLl*h1CPQJs|Et<9b6MN@VRb5^N9l8Ld0RLaDP}Pw z;LkKdnOUP&rppdjiuhv+1rWgf(8t5-B%7&{Dd4(7LPBEo5^oafOEBlGKtlNXwI6y; zX_-RCBWv2I|;Sed3L;N>+0@oWbW*r#UNsi#_>?=y@b%&pJys_JA#Y! z^qtBPmb)^7_%mvt@(%h$rsY(<$-5eNX3aw6?VDo9M5d{emF?dnpC~ng(y=&lWEH%C z!vtPe#)ZZgUi-1*j9F`= zwUA$_TqWa2yaJ_?H%eKYF0=I0gDpO8deT-<%NP>dV4s)?FO=gyj%(&k=tI9_fgiDi zMu=_8@8-?+Ie7W6&{j?d(w$vr&>`f)qf}e7VyWp5RwUeEcuWy9YrXkxt8laOFVv`L zXe%&JLZ45CnG2PxoelOYg%Wt{6;8kv=1wl+pH{K^Mt79d@a-q<*|j`hHb@N%>()=O z+1c67$WF9&ZnZyg`=Z%9#NILYp{Lla*S&~?H_Nx%q8y*M-im4Vz$tz8W_~@yd?ff4 zdANc?1OaR3OB87#8+3o5a8!aH$``<)#L@V7%nM>sJ&X%J8v`m@ zuUDVqu&LiTU*t(g8K3#BhSYfjw=9fazZlxu+78%0V0u_IgL)hozRRf7<$%@E$)?v*ACLxx6Vy?s28Yvgt4We4TUWL@jF}r{07n zcS3h^wQQ(&e+!2kT8XIvMfA;92l}`zW#!(KC{7(47rZxmOtTO(N1)SMMyhiNm-*#X zRNwc5=}eK8MBkOb{jEtxdyG&}!fSk-a|24AQwX`|7km%X$Kc4xB2?)h6`Q*sVPu>} znf*&I5{(mDcl6Yd!3URBU83-OaI}{8OA0YrK21=VS7N;stz`0yd~S^wc{IxlPZhsc zJ44T^xUehLN36HzpRdr8W>M-q{_DUt(AQT^UTJa)X|30_u5c3J|0Piv*Ojo)t-G_{ z6+x^s_m?yz1$>kyw*6jc^(Kn+-Kq+jyN8Fw9Ag1~Tc)L@CHLuf!Bi~2<{>Z=yB9j@ z>lf6yIQSJzdP!9I*HSL)SDa)wQ!~@Z!_2Yk{}%J}-wjzC8d)aZnQd+kW(j}oi>Lk8 zgW2&g<(i3h_MLcnUSv}~I*7mZ)odzQ%*ahW-Rb$3MBQgM<)2|E>=T<^&XCoZEQ~1g z%C|x<=y|G3@_Kp36i&v8?CMtgpg5-~zZIIya7xBSUM;uM5FN6B5=N1yG32Zlnwz{^~ zTsF+<9S&wWQBXpGC~k8L>y_VkGv-PGUi z>s_vmUgOoyhZLh@Ob064 z{{$FKXYrPz>m)r~J6BaBY6lJLUAnft=_2HUZJaE9%-E;aQVk*O<_85rWDlc8L$U9> zva|AV=RIDCrU3^i%Hm@T1Pz1%>XP2Pn^Vj0tzMYPd@kZZviX*_UrTXPYC|shYf?`{0XB$vb{2)BqsU54>oy6hMfMl$aEsn*YYQHM&jz* zXqu_UIC2rR%XR6YQ#mIrX&U)X<}5Zr{{lUnI6vG~55ar};_;c7f!jkD0sH5*A!yp! ztq`zaJlh9&2m7?_*Jj>Y9YOTkMA|82{{ak_cH|NM!t!kWo8aK zmmgBqXN!=e8#uUpC(h$K(KncFD=~vB!CeoA5aPPDO^tEDE<1X6Ydfc9GP24ightlgPC)Y*_5yXH}EM zAm)ACl^_k021CIr;)!C7Q}|RaVbr9|rNSqNjkm*&;6Pl(tP5EFV4G2cQ5kHK{^eqz z<}RqDVRzBnjEe2STITDv)4Tnja{5V98^E1lcmoNSNyb2f2C!$X(aw-3z8-U92D(b! zvZnG>W?AGxB)^NblASBxyE*Bw&;o7E8}51bun19b*qc1(mxF{!4^Gct;$rDrTro(J zwXHb}1vibEY@OLwzP zw#~6F^17?J5L*a~Ph(+NIG&AO)s5Xi24-DfsorE4ZJ^x{Wq&dTNe!w6I#y3W`M5{vT6+85T#=b%DZzI|O$L zK?f&TaCc{LcM0z965QP#26y-17Cd+e?hxG1+|T=6-#Puat!nk|s@}WSS}lAab7uG4 zFj(@bqcol+`n6wln-PXtWLMUdN?@ag%k%CUGFeN7k%}@kdft>}N}`t<(QG9-;`x&4HErp@o!hzqwx@VWX%2;ZN>sy{>LdYWCwkXc`8lR6U+xyo}~p zQTnr+gr8RDgnJcZadl+#os%i%7k9eR3_^uGW4O%c1}?5ksCMK-hn2*A=W_*<>C?|K zrK+u}n-)d+b~55t%12m2sx@UlCIDkU;=5yTBDyk9JP7FyG^)j(A6Tw>+-&l-i~d^H ze?PcdFUM#m|2nzaB1>IYMhPsD-H42?0jr$2YNA;$wU0_O?}_q{ScIoj@aY*2x4=O1 zS31b(vwydYnz|2Zw<%2)B=KOSHK^mv)H^n@R!Ph}FmH?r`&Bknn3&j~e+)FLog#z8 z_Ar-`jcF-nv8V$n&sMfCyf}hX76Lc3(Oqr;ljFtHc~$#4xwW&5CI&+J-^Wh=$XKjr zv<30fkLR3^%7}))BFuwwhk&YR?}s0}(-$~6C>0c&rfNi{A7LdKit{wd9eH^011NJY(F4Sx?Tth1l~90*qj_T)y>HZx4-M26^+G4L!Lyy?Mo#LhGe{ zOHMptbV z&$QIJQ^h04+(D>$KOO$o@gVC?FduhEvDAcI(f{RiSRMfQQ;@#V^D&kJd$hAhS?6C| zX)tR-V>$6{1qP6Sh5#NsQh@X3>5vxdA)85kmbiriu*&j+2k8_!2?cVn6x386Inxo9 z5f{(_fz8|MxRQ22a)F$AMYY5{&h+jd-!5Yr$pL`*k}6=#Jm_j-%KTl64S8#5;3rw! z97J3|<3r>CR#td;d6~Oao(;g?;jzF|ZrNbk_(E@BpZRHT&U#)Y3w(RD^JshJ zE%4&#|FH*ZcC>8)K3wy-Y13%qK<~Zz-aiJ>BLWUn+?>}&5w_E7_3D`Q^UOCT-c1c? zJWDG@3nGg1)mMg$*^-eeO=>n4=Ef?Z0K!?Wo#&cPH#XhAc3kA;&rI%bl~$a5n)ez_ zOTUH+KOICdhPLRmm1Uk)X{Q~Zl|lg?3+}Bxs$x%RS4?_{xQo^#ZdlBQf^cl-{kats zYp?6;IBufv7{ z1pe(+Pu2D5O2*?bfk zda^)t=0+$K(e(T8SQqZk7K zSL3z@9!QeV(x|1C!G#91W=fx@9F8j4hK8?mxZm`ts%o%o5s*m^wXe9sUi$ZtD1)h>GX4-pAN#vF7qR^rPK1z#2K5 zT)OR>`xTHkc7OCiF%E-y>R?2iorh1EwC(W6(2s7{k1G1JU&6dFpaSTnRw&$xF+<0W z_0dY6@F&ks8gZ0l(_!LXxdxNL?6$-5Dn!!~N`^9E67+Xw<5Oxz3(@j#Z_azJycGO3 zu;p`i00S)?-T+@h>*T}l_y-D5ARvwO)ZcLFn3MX}<%c5sKjv>im9S7d=G5)`0qWI? zcU~n-0)~8DnaD%1VcHu6*y`$=!qdj;<~UXX(?Q4}U3gFdrBFMkizc8qBKq~&90R|c z34nhyY3SjOc%bZJel23BBnI2_~uahM;e7zHHaW@@x$C-PQIe%YLTv8TuJV@iL zs@^dIto*5s)7@DAJ5R0Tm`!A=WnT+z+19@0W@xfJPc4dk$fYnnBbX3i4Q(`$!R>3lMW-C@50^7Vm2Z7Ufw5T-LIOKpJsyz(>wS zMcQY;IxV8xNBD!|#t%o>BemtC)~$NH;!E8T!RDf%9v|hO{_0qml1;)cWz3nre$&FG znHOU#l{4^jgz!LAm*gW*YD*TG>C#PFLzxB#z(t7MDO5BG9L2x%{EXK^sSei?tRqr0 zruk-mX>XccvC9+a@bK%dbJcw%E_N=K*M@r{*vc~n6FM|B6rUJqHus4Qo>~QKT3O(J4y!LVZBcH3y;JdW(&XNE2 zMsz^u=D!`!o6U2NkA=nc%8SP3%XKc*(=K~&-=N-xk$%ykbh@`gM~=m^`qkYL`P-^B zrPbj5`p3iDcpG7l7l{B(gvo1k)qQKm;kfQ`MQb|W{fA_mz^*5Rc7R0uEL#TCLy3+E zXq#H~&1-IZYv9Cl)Hw`1m3ZhZTX>b4k6jt}X({*{{3(p;TZs&=0YkTjXU&z4HBF3S z`()SMYIvef-`^#S*Pb`i*r2cxW|imJoj;xeTt3rip#tJ;8R88Uuz0Sr2DztphsMSX z`4UiO0$)RnU-dOZpz4VJoZ6C~p22=`HZo*b50ZcsVesC? z7>ij(awOr#^hWig_%B>UA&Je%k2y47zj`EXW^gA$Q(}HwToF@}(Wk~rr3&*d0yZIW zxfuPfnAi>Z&Zvb0M6ts~Uc%{`!&4u39#aD0feMk;qY9AKv*NuG%XhsW^q~zZbW{yB zb#Las)(`bOd-_dB`K@!Al_=CJ7&ndn8Igximez%nI9!#}bf~NIcF;7pBfW(Kj3tTN zbbhKHQ05W3(NR{K9aC8dEc`{gGWr6oD3XXIa zLTtWi!hK9`sp%E2yy3eAlKmVuLzBho-@ddp1{(xy(EBQa+^Uh{RDdulUMi55&<6uS z)`DSAcv}7X?gWK0@XE{2&z%Z0Qg+IxD@zxQW0OmwP30_0ly$>P%8uv=1m@2tnQK$#HXc#t?6+B2W$#1Du7XRWqCf@CMqWZI0!kOnAH$-kY!U^4 zp&>(pmvR``6^V4Pu;m?>Y3Uh;Z!7nNj+v=}bfcq^!hvy8ptqYmTL2zmFdROFRTm>V zNgD-w$#v`9432S4SMeu+G=O7L%-A$&n)iu~v%u=vHrI#%(bJ**Lsox@{LGdHTp9`D z-RjM#h@%H7Ogq!r=GZo+QLCy?h3^Cft#1+Ij}+Pnf|XM_Dn!+Z#5qG33Nm#*?(SpF z)uQMC6K_GJ4bJf_m*m<1J!r@%byd&!ibCR&K2J|%o`XAi`%RLduVdMp1|D)#-Vb|Y zg5{QWcJzKny{9CgmY$%G9vS*}@`>^nJq^#Bj;(4{b>@ZaSXL&-^Agde^JD(a!TRbd zozlM@|7?nE_?aU{@_{R%KoB(=q(ykE23_dkjz&=NQ-ijCwxiD-O7ed7Eo2wVVw%4@ zU$WyL7Kd(nn>XTjw9s4sZ*V&nx}V`GiDX6H{c#dinX}@g-U@bN^At8 zq>{x%T!c$5sA#4Oam_%Kh)ThMu27#&qz^7kM7EJ>&yo8+vzNWK+M+PG)N0^BH~Ezz zr|Hbk^Qm1Z0J5s|=;>wO+&9T9V>D~vRm)GM*QjMln46R4920yvfUooW_qDIFzHag4 zag0g{t@-{7OS3V&9bVZ1ew2Bna!GN(lWz;?Tz}aKnz(4fXa6&1(y({?QHVAD;WsdR z&BFB;bpff=%)F9`2Yg0lI21JpoTvvHQMk}|B-PKjs@K6F>AQGZZ8DV2`wL5}!RyzF zYUd9@fRWauH`7kw=M)Vg#;zB{Ju=0%jTO!6%#C6NV{UZ#=*<4L7HV)zlg(p_t-DN3 z7|ntj_Ag6}GIT&Em%`;j7B#>WM&O*&MxqwDBdnokLt{#Gje&|9{UcZwLF>}GNBw6U zv8LRPnCMleAwKQ9X<}2 zRopn;jEB?kMLG;5y^mQU3PwvT*<|zgznT7eun+b>noW!5zI-t_HAb>jIo%vl*4YG< zpFDnU+aMQElc&+Xgeg!cTs5uF7?;JKc9TuirAQl&uut#rkM{d)8m`IY7mJbhrhiMS za8H=6mx)aii*+6Y1*m8)j}_Z=OFeji*(xNW&El6;(W2PGCI_bWPpJ`(qQ)}$sS6c) zZSYJp1<0)|egW4{|cAW^>@-W-uSIkrT+44;bS)=%c zG1DQUx^3Bt?!{c$ud{{>q?uUFDcH%|X=%wF+>)2X{k_xx9tSp9}UWi%CqR>fT}>8=nRn|#uoOV z31=OjAYz8jd<+unit{t?EUeRoh?nm*hvawYyyz^K52#53 zVXOeaFYoKcaZ{)p7KI?*;-THGf%n41t1~?=Cv}K+Hd)ZCKRx}y2YNhDlmGxgRQ#v_ zZ+IO%8W(Trc>GS$Qp);=oFpJX0=bOS>DCg%Ve6xuJW}0yOy}w$&8}=+Z$3O%r(j#~vv|?A_ zo8H;ZuO@`BdXF9qbk1DC-@iAUD>pqc0DlzMRnV*%>?5M1feN+I2>0$DTddma4R+td zb$*~Gv!|}Bmd}%)GvOO-DK$dQKW+#T%D1Ph<1@a^e0m)5L;^he3Kk1f645hHQj00c z!{=_x^pw&k3~iSY)0hL%G|E(Gu6=v*Ah|Ls06=v{VtP7+5A#pkuxYfBu?g?S{r0^{ zGczKQ1^g~Cv5=DLk_Ew(3?gEodNG?nzVNbhmS{Bm;4t^%QMiU>`VY~1oai+*Q%NX7 zvG6(G)OQZ^?z}ST`&)<}CXm#dJU^SQHVMiMby)3KNiD9GL!z-fV(85q9{^zeaQoeE zqX@6ehg)NjaQ0QGC-*rF1rq>B=XP%{myDG&I}Rn)5J-L3xS4P`+DSO8gjA#ed>oi$ zm+OC^V;J!XFOy5vl}bPM->SZ2me3~&+(DEu3H3vXk?&|euIhM6`+wcF4na0u7|v#Q z|NIjmbpt3sKTL~IgpY+#Pm9=YbfPkQtI={~j;tbGd1~?`R%60^Wy++WLeSgU@eZUm zp^@P%y=4wewVsewQ2Y1vQBJ?c^IyjR(rQ(rAHY9({|l)<4FB*`(wNBK8wcmlv!l4` zG%qEdPb00Uj9JK?VGIsI;DwYgLILIUlWYAPaNhTsZ5<^MYFdBm-iNoI5ID6Xpf);U zW6?x1Dq5iwWldOBn=NQ~R0A94pb;EncyMFgV=bJ;Q8B;$NwJ5i#ze92*PlVb^ZcFQ zEZxvmfw_z>J;`f%Oz4#%-2Zu{00Hq*;p%bd&9iO`;r+4q>f+7+V)e#3U*KV5lFRj6?J0u_j6>~9@R>+B2dv~i91*8*>E8jMo= zty?cL20v^0k8h+5HwhY&&yI~>^i=4GJ2qH5^a?a0EX+I+nDZGt;J?t()0Y*QT#hG0 zIXR_pet)M0;UI@i?oaGHx9H?1CStae;AYC>MT$Q?J#lh!s;jGi`}VD&p@Bhj?Qs@g zGEAM%9ivF7;+A4o;#B(Xl9PZGtqW7u#Qy$sY_s%qJdBFpU^Gr9SE$?N?d2gk*iLRA zenl_u??&E<3gcecOC-px1gk`j5^Hx;;wMuoUr@oX zU_Y#or%4v3AkYzqYyFHDEhi@jq5P9WA6;I~&dhKTptcqbR{S#5BuM>of?NX?>&V?# z^HY5*4yu6tH#6DkPM^rYg2OMFu-@y4VYTVFR(i$)r$0Fmw-$r=cL1Lfy#rhgdAG%d zU~%`AqK09YyNTxy%&Bk6-(3w4n+O1kioh2F1D>bD`u%K0A7wkdv)CFSlKEk$kTeyP-9SO+QsviO*I&ckd~sHSylu1wNUcUH#pN^bEhW~ z*H64~Qce;&L9<3tB`0Jq_gd(}D*mc)d)Ak0uobkobitC=4JS|&6hA{8&0twp4pm_2 zGn3mOqE&wTZ~IX+Zm+3WLK>)1WTa;HxcK|Aym6Pii$$oy&+%<@bQ{&ne0%z0%P^*F zbOJY)W)VV)HL26tq)DC8I&>~o^nS|;$%xz*)pf%;?VJ;OO@%8f{@v? zRJFAuM|T}I+M(=uAu=u{x06MB&+-2L!0c?|oKJXo@NKoz6|BJOwFaM0<{|~&DukbB zpaW~l!x4;sljeesyvfjgnHuR4X1t7pTxN0v?la_W5wdA%5~P3CtmLOm*}REvblF)8 z(u7O&+kgK30RsT9thp{p{CZ9tFeEmJZucu)VMcptm*yXb>%7yK*l*J5`&8WK-<6>T zjdGBuZ}c(tEhn&DS}Q~GyYOkE!xe7syNwGmM}MCGHw(B6h>vgHWa?^ly0k_04?S(h z>AxL%NMS}~V}ya0^Ycb?+RA|Y!0OJ)mX__MC8(vex0eC-Gby-ifuxh)Y%eMU)rgVe z!HR|Alns;>jCd%o$oE*tVH~iyxr&yo1oZ%vOm%hfz&P^LjMX;YTd?*5e}HVk3pSCZy}Hp@z17 z5xWs!)p}6v%k5&ha_8O9{jAKm zK0ZCI)$@sAlh3XZ5LaM9l47a6g;VQJ~;gNw^yD+X`o4`kM&0TFZA{tAi`seQCL^!X(X$LwUeh)C5Bh+(TF0MkcmC}4?k z4x9JTZ_X*-Z$u2G3LJ}*SBV=~=nZmsms}@fj0{2D9xARTE26UNGyEN36;L>yZ z#)(OodR`AV3(4!Hm@wIQlR~Yv$=NbT*lHD0VO5?v-%$S7C&90Pzq`-~RkqZj zLZ7>O2?qna<}&PXDdNktUPdH?55`($Nrtkl?izlFGL{spE~2pPfZWxx&uvL#7alf! z0<&FY)-7Em%vS-Z9|CcKQAx)~<$_qF?SDlW==_%&O6c^Znc3JS^Y~x%y!P}WO(;n; zc=YLfKWnAv!9iQOu*E(j5^5I6U(C-BPo|Zs!&Qc*pSsU}1;)!$N1139I(O*NjT);| zKo?LhRPZ?cg+=xNfk3YA?qq!K|4~nMTWtrZg?JGDz>nN1zv2PpE0k>{5rAnOf2(pY zMQYDF8duOG@zmfQIbD3-ZjMF@)3^H8PoFa1Qg~!k)tYV23tJ1NUBMm2dy!Z1A`+Pp;@%eh+a+DRKDRr`4FoRNFqScy{DWN=17ebbVmRFkn znmV5a8lfo|_h^N7GX;7@$CuVxBErLM-rjq1Wov2n^*U1Z=$$`5?I9If*`9G*niVrR*NSH>y!|)|uWVeT zWC|WbUB$Eyxl)G4eA|3CFOu*6?zO&x{Rxwf6ytk9+EJ4xdc$-%HLr;YGdgVM**O5p zSn?sJx<420Yp+EnxVw8pRAqqP9tIb;;%A%BgT3maxuatO2{#@N&f@ZNk_{^&4XD2T zNO+h-)3@bDVC?-IWEBfzstgnmD=nic{(ahkfk4V+K6`%0|F`&ar|*1E-10l|x#Q9B9mKeagCA_`VUvb-QEEhJ5*i4%m71DbDvpGn zfgyxHOdXIeu9V9Q`EXrYU+)U|@CQsm;gC#QBo$9)XJa!T6s7WiA&7u+$5&}(mpY$TQvAa| zZNQJ`$m;p510#ar1<+vDFH>jtndypd;TA>OOElGazAB{sM8Qnw`8OkF{P*=EW46KX zH7T^S>=a)RQ=fIRpEYux4{~^o*c$nA&DQvfgJUS9Che7{eS27hRqVEVNwG@$`p8*^ zG}R!IRW72~zt-7Yb|#{3PyftGD+ufCz~K34uTlr{fme5LIOv)->t!|t)IFVM$G z3ePej--s}sci(j+M~}C%a`Xm9&O~pOW&v36Og2JSrcY#WQNmTG;d5Up>srHZ&6SY- z>7>dODAF6%153N|9&!{uaFwyg=a4=Q0f( zR$-5OKV9ARB58!0GySZC13$n0y@MXd_HUQnqi$}^ct1EhlXZ-920TIEYjK@lRq-NB z@o~|S`j^lrv7Cd+#D{lo1%YF|>vW)EK9S)a$6t08EyB2@q_K%bMU*E-`ELCk7@JnV zQZh0!G(W_ol{?-$odto72&5QT`Ld=d+LaK2>oZ#>OX=NlHda(q8}$f_y9A}VOi|3i zPeOgw`TDlfy938Byd+f=bI(5=PtTC3un&KnC-8g37iiB(*QV~>(||1%lx&ttrAMYQ z+B~vl0xoPnC)uF%C`?y=J!h(^X7fKo3Tjo8j4l)D4+$VRnW%N|(|{kU!3Nd*H0i?m zOqT^#ukFy_jwc(I0o3&i8wT~ePqdFo|9}-nv9DV4Lronp;t?stS{Dn;W+|ozb>LN4 zZ6dBs$@>IgLOwUd#KevrM$#_)Kok>k13by+lK;Krrn$KwfDExE9(QKmp zpVqsW3=?bkQu~(*`>GkCUQG-E zzbOwxwCfwrLZUva+M^rsy_K6dkp|Psmd-p~E8EMA$BSUX{2C+g_K)w<+*St92Z?H1 z!HF}mUua2cQdKKgjtk0C!Js@Syq2ig*r@`W)J*H+tq^K0nsk_Qqo;pfUG6(Eq>yG0 zW04E;>re&jkEFi6_~7A&?BIYP=}h^8$ZnNtB{UtV`GgyizkK-ugN86Ru+FGFzVF=b z^{bZUS7MVEqc_Pm0Nm;S=DnAin)<7Y4-S_^f<$=#R_Ff{^GaE|f4R%5SYE|0Jk<8K zBtuQh?jBjo+H28Ar!Mt_6)?Se?D+Z&x9xs=7#b)+SHJZ~{b=u@^=lva9&dB!#_8A- zn*SC!z{t-unO@nbn%~w>p5qHnT;1M824wR&-FP*fw5?t_9@;v9`noFC;-y!Zw$kIO z%ywm+Q9VAazz$dFL8$Q2mWY1R{^V`ny?uNYwA}%AOO~^pjb8r8UQ3Kh~ z_XLK&xAh||%;~hWkpB4bgU<^KU$S<|=8lu|)8Jr>Hy|3EDqkk6(2`ZeME@-<;S+W8 z^zZu5ws$8lnsw{~{JxLAzYT?T5@_*;&TEy5piLpy=)aR07#Ps0X)P;*kMp^jFSCXe zB;@?aaOn_Zh%iWbsXih8ySXW(U}0hk)8;Gtm4)rN`uOOXgLV!Dg2mN7H^b<)VB1)C zxdEFKMh$|uFMC~~S^8Pn?B`m0zCDm1`2=mqB`;uH$YLq(FQ5uqOKIr(bVV+Ug^DeB z(@UJ{uM#4hMbac6Oun%FArf)r@jOjg#r6_Fx;=aFqteTuJe0>nCmtR~+5cX>1fs(| zIpeS_6rJrAZnRilE=g1q4S$aRiE<9zbD^kiEVJ5%+$Fao`F^b-wveJ^(&M?Y^BJ3U zd3k=#QNqQ(t@?f9?xReDcT=#?u~2UY6WNKF-ymQ`wzyK6ZqeG>eT9}Etb6ONA{#YZ zB2zp#NJsmA(3Q@dE3eq=a-l~q2?q_tL7p=j;lmdxoVVgY4x^kV0|y5~)5#xQw0Cv! zS=ZYp1U@&^P2=+!R%h67pg5B)Md``vK0Q(IdbJ}Cv+FbXLv#%ySPe!1fC z0f7?((8BEwokjx}p_yMTa|NmzU&bug=4)4;dfY$?umOQ>5E&coE4!2*#Fz9FUSYg*}c~ziYv-2eBLh71Pgaah8 z_*@`dYv1oK)0HtWUEHo^I3gx2t}Qf5Fy5LLQrdUZ@+Ca*65cx$gi3<7jz**>GGNli zipdyk0$ia9lPTAs5{KrZr@~f+)f_Y%F|%;59reik7J?t#K4hyTn80^BTD(JQaRjO7)H^NN><$RH=fnUP9hY>W7A4I;%)_xN~Gq%($xA6JeTe zN3qIhI=+Q1cb^Imz?Hr~X-TiM>DVu%+~|8=p5DGE#{c>JRLVzGN6ofs*7tgmy;9d> zwz@g!XRJK1**JLC^$Z`}Dz zHcaK)=`mP}X)kZ@vDs~62`h#j;2nQAug~rdTkY4zG1L-Bqb7d*T%(gJJomJ}-EvA(`{zHNoVVYn$U`IEwHgeQ!=)7}RNBws z<3`+%q8Ou#l`ERK5XY+vw?o0><#fD@mENY@mpc2NUEuOM+nv**HbLe$1+`m8@M=?e zL^1>@#E0^lCW@VxX~PnEjmbHgvkkccS)N|XR6CrPwes=^)BLz5OC<~h0HAsOd}DOd z-Q&g*p+WF`L$~^p_s88mQuCi!NGP+Nbz0HT%`o4%NP04Mq)H zA~~|i+#>uX^xix&J@2AlZyhCf#t-Xcyw+-jeqsYCR%fTD75G=NA#`nvH`q#@q=RIJ z^eD2K$2)JeItvV1bjZpH;B55^>M7Si85hc50tiAU3uLF!Z1UX(5NzY(b=ACC^#%jQR%k1 zDM5~W)KiztYP9f^R!tq{m%yME`ab|7A|fCH<5)>C<`V8BJMSiW(Ym+t_QGhVPB2MY zi7nCJBOHO8Gc}g~mRkZ9%bOruU*E@3|Jj*s^=S?&N47#{j=`i@c*`T1eUWvLodO1!vEkB#u(iKK}_-6x2@ZV`l4Vu zQT1bH)y>Votj@+@AD+ci1wR`f9^5*}x>DfsjzOCjW9dBH5qnN8Q0mi*y;AmzNKbF) zxM1jqX%B=loAchwRBCeq-Cc`J;&Lpss#XVy1owK=ss>$yUGuh;&O;~lr$c?bko9{Q zft+z#pSX^nkZPh6>!LNmXnD(bZTi7h6w-3`1k^7yY&l8#U6#mW7pWE!QALq^S!xld zCjcosElMH_!qwUn;r2`&k4~_-YzKx5YA&wQjv7n2>Q*OEp-sT+ELy~9oz{12*>#&HzxZLid)e|NAS*xFtQq^}c4l&NvMV%1orft+ zrSIdjJ|+#H{(WZ0>Jfri9HzVs(FTzuM*5sR>ixtXYR*O-zDR?^=)oVc$q_6x0nVgfyH^X2-w zN87Ii4e8ar^6Y{f{5fi#Y&3#z=SN4?%5zp6g86kNB^;!Ph=_pl+S-}n;nJ=y-K>fA zb-vG^gG39ZM<6~`S$8@O_6cBAgeSp5Ex8;c79$11}7=@SFnOP z1qHWCODT{IH+ua91mB$qkd< zt7;=5q0h}_V`Jg%IJ)!%)7?|F1~)zm+dVLeY!3--HFL+@HY;_LW-$Q>kl{m(jU6+f zX_DN4w_Hz|!#K+kH%RAqRyOxq)Dae%-;xg?W8 zBu`((APP!eYhM%S;O^HX+_lBO)t)eZo5jXKUFalY|I&dh=znd8b{vDNmV%7uicNPH zt}8L;O}N&y0}jWhb`3jMZV}N^v$BZdN56bRbX-JtHum+kNrRY=2?+E=MInFrQVdBL zSy))83?(F}`T0pI3X(=m8YH*LiTV-one_@5j^E$kGcz-jCeyT zFpET_BqYidjKaW}sFJdSiQREb#5=u<(t?6<4^Ti^8TjPbuCC%2EBhJ={^$pH>Qk+L zxNckA?E`*imk>RRl#N=!o&NlM^}}VvpJE2hdI35$2D%qb<3ao*{TO7sB{HXjSyt^n ztGKmO%ppJR6}=fH2*%GE?i34!IsspV^#2u;9bv6pCG~3?TOgf~N1kd|(^i5-`eN%7 zBF4Py=XMIqva0I!DBw8I6jW3@zH*Oa?-%NjyE8&qwO9^5TOE9i@FZEg@X8<3-41^^ zlSxtMg&wbFe^et7lM>6#GKFuWu+Ul>TZASdr$FW8i77C%vVNk1!@`dgzhZLK)7KaA zqHv-cUR_%YKD)ZRlc0hlcpM)eR|9!=x3t{ls17iGtr#ZuIn!7cmL;m(Hje61kmYJ+X*aqT zes9d%)T^%S>XzSbP*S~DzrnelNgr-k^xcSVNa)u#=!v0G<3upWcUe zsS6n_!%qD1uE`INjjq1<^zPZ~*^e!5p}xLt!>Pa0!0Z7!&PQVlE9jI$EbW3eUluEm zuUx(eU7ddskUX!|=0XMRT*mX8%J032f(AZkRS=-^X6s)zSlZf{otiI@0Irrj2yP7x zc`s1|4Of}o&R!J|3xhTN2VQwlZBFl)D+Oy`P)Bhm+4(y}bpH7k9cSx0Kn_sirly7q zLAgTfin_7Qn;*KsBP1jgS0X?Sw=N5AYcDE-ei9{<*%<|;AV2fvly>ffN15&K@_-1$ zHbq%<^pGC%MkK4osZfxk3|eDqMVzJ!e!#SV*KRK>56$VnB=2WQJ0MxXZXrATXdBMn z#cNO0stm1SytbiVJD7i&$Xh$Lh6Qt)84#f=6heExK%0Y=D=?pufGrLXEll+B1dU_~z2&=)|d|#~e za;np#Nl z_fnCnx3-kW@6~!iOXg0mKcKIliB=2_4Mhs9%&kFcPKDQSL#*iPBFru_VLF`<4^~f` z$%%=CFH@6~Vx6@G1^qTH&%sebubEM*a1Ef{;^I~r;BASN816XL(kHo6SlmPEy>2ny zS-o~;Y~oYp`;yTj=L7jpcnQvsBKakjUsQES%3%t$0DJtbZumC5uefL@Lpz%HixFa* zJbQ(5G{X4U5Av&B9bH?GGc$g$M!vqNQem>wx)0%XurdsdZ0&avFdI*U&i6VRr!hMV z!e<=eYw*v24zR=LX>o?;w>6EOT z`iTsa`zuORN&`K7lYo?8OrCICywowU!2B z4x%|;7{BTrSYcwc?qB$z*PTO9imba3F3CEUa)Wsz7CJ5wM7jrpk}ZV+*f|cWsg1*+ znYZWxI%KIk{|j09!YG*sCgB7a;akvOjFX|yQgQtOV-tDLj#j^!LN^f0)AqUYp)kd$xYt@m`IZ z7Uyi*?bJ4`o|{bxbZ}Vu9jsZZY3_}d)am!#Eq$&!$7gYPohzw|Xaa+g z;atwo&r3^7H|)I~SBxCw*bnmL<>g}_X<$^8=*1_dD+mX|z!O3N`2jFgzK#%5QvvV1 zRO(cL>vtA~eO^lE=aJBtek}3w%9x*?x^(Yt{S+T66gwy@n_#F>3egtLws z1vX3jt?vtASB6Vhijyx!?55-$t~qs+#~k_bEHIr~CxqV~S;o7fZ`?l~cD&U&L7CaA zZd)9CAoP#zPa1lDn=}RoA6khg{D7aKA&BKAw;okrGiQ*yl-%FN|CAbIv#W zkm2Xp(NRZq{@R(x$G!dPMD^6+KbH?Zr<0GeljGw7l|p5T2Y5oL%QJ{qYzF{R;M`*; z11DnsK+2xh(ASU6^C0H7|B3g|Tksd7ue1mx#)w<2Oi_-4kH)`xxv4~LSy@d2Z0>c+ zks?sc>Bo5Zc>6^Vp%-om&=2{WDWbyJ{wg_K>8uSnOMeRy!%)_l{7PQ6z`dh=r68wy zen4!+d;A&KrhnOt>G`jXZn=!G$)pQV1)*i-#+LhZGvUXth%fLy0_yjVM*}jKGe4A0 ztTw$)SJGaQ8_6!!Ze9fR4T-x&;pmlsTYpMCWN^!tj9L;VJ$IeOOi%B0wG8M=asSeV z#ZZ8*COcV5zNB9xaOF7I+rwi_Jo<`5UPU>HN($J>O37pKeXv1VALR{ZB~CVF;^Yw# z&Jt?WxN+U}r$6JR)=N^d>&&l}9nW@e<3eX^uVP_(2dD)q2t9Xe%VUl;0D|}mXHDjB z|3+G~ieFR@W^==ZFwt!4@Dm$pZ4CG!)1Bi?0g?c`h|bF0yX<{;%j_9yV7i&Zw!l~B zhQ6v|@R|BetVW$RsoEt$m#GOT^fb;^C2@zx-8B;t$>E?k{M;imgH;m|m#c-)v`4t2 z2QsMMXpQ~`&3^$WCPEBHO#_*1$$;vvt{fP+N{?S~OB-F?73)DZ+@O;qEBS{ z0k8{wM~)a?piy_lncHU|$&l#M=))xr#YJUfxg9ecgO5#JIh#!zAzHpEtL0o<4wNz% zadKMZz}>9iu#;?!-3&urgt)jz+w0+3b{`3cn~$10sy55wJ4(o9t^S2PT(aT}m=RS` zLw}F*xS7a9DY!IRjg8ekGgKK39X(IL2QTFH)z=c(q1S7_$%|SKg@)g+PZV!VaHbXl z_1eB5PEGL|8>PBQN@8nXi5EDLDz9W#iAn-KNTwY*mlR{y5;v2V+kKwD_Kds)*TPa(Ydw<~x1 zkM>=FX!mTl-=mv}Q~D`GzntOTY;a+ZW^2cN!5fTy%@3W%mKG-R<3dhmp!7mf``r&B zT9=0ETjI;kcd8H1x7( zQ+OzdS+CBKm9_Y=Z8z!yDaDlAvq>o@$LE1t!e4411|oLSFN|fmkZYkimMaN zTB9n@+857(0^dbY6B>@bp@eZ<{D-a^Tlfn7DvHmJqh&eE1^lSvsaDA>KBUG)IVV6i zsdR&-?M1%YYR~8EzUBOZY6_7b?WHFmuLNt(;-l&3iGN^MkF)5Qmt*iU=u@lzcPo+fs%cW@z?4k{Kh-r<+791+T_$Ms+vU%w?=@+z}npQ@jHt99c zyB%Au78SoXvxcFI94Rn8nQy7KfR0FP2o5-#pHIrja7OGY-8M4R%YxQANQ7)|tY(6{T#N8AuH;|K>jGU5=GkgXOb;M76`M`I`752nj z`U1zo^N#pK`8BpCxgoZFwyK8X4o&Y11b(OILo06n|Frt`;U(%x>G$k${j0r<=6`lu zb|JcOu9bQpj=aSDvf8Pv?{cp`PVtYtXO{ni5Iw!N;(BXjy~eY5QFS!%s(5=6tW4|L zif%jH@q+($?$#QYG|%`{U+C!#_lCykv_}^qCQ0^sW#I=l(@q=PD=jU(AU^)r<&mD5 zS*}t759=>Y_3_4lZE$Oux~J1@oM;{ zuFN;0D|hR=1Xu1hSwluS0`^_j#4Tz2xkIh785b#2NZCYmQyEs{F1G#Kdrw!`nOV{S znCFSwU3?|X@(KgI)D{Dd#zTA_YOB0dN1R6YT+IA`i}CEeC{`vTdwl_ZX@_ll>{#gO zXBS2aJ1}NM{(MMevmYo>rE^Jk>4MLM-$q{RnU$)LDj$64?tRB1AG8A=uI{fqd)YtC z*9M>V>kv5-v0b>gPV}&6xDKgdhP_a(`05P^9iYGe>|=8;d6^trv6OI9T-XxtBsnQJ z6UAt}4#N?f$B+3LVqznrSwS-|K8oE20CEpC+r$IXit#co`is#>{S-EYZ;S;YvI& z)kWJ#Z(^Z|Pq}KUS$3!=>0tcl?tW)xpU^RbAhAfSe`$W5Mtu@ZdS(9LN&JwwuNB%i z({|Z??^27o)c;Pk3@Njs<>Z66Q|;G7i?|S>QGw>)bs0i7RZxD#6nBS9+=i7z2}AWo z)xJ#rYthkp9ew>@aUTLIMZFOFHeY)j8V+{$IZbi|_|*+LzRcXpoopZ01*?{nmX}rh zJKp`8Ajo)eq98}h9i)YMbb|>bwP~qXI0oP&ki{?C=})b^a=N-1cQ#=$8V&4<$~GLU ztQ%F4DIXJM=Orf+MxMj7h#OxO7E@`Gv@i`u3)sV(j(}7zAW-8u_*_QrjcuE`s=E@N5e!V z1`l_?Y?(Orv^N%cimi6v|9$Dq=#(wPs3*C$vysF8->X5+Uv|1xhu&ANnS?T}Vxc7^ z#5A=w2esp*rPb6_>a!ZDKf8Lt2$G<^>s|a06ay8j@-S%(^$0?D1r`=6^G(i=_83U< zN!+NY74~fR?IzBZ7#$9_s=fpUpQ7ZQ0mu*t)cq0+6J=T zllas#gnVa2=4komAxOJuKe}6c_n$xqw3RjIuow+J_+YsZsABrV=bd&fqAl8|{eC<9n{{J*{ea2%*Ax(5hom@$2c$m!K7^_L>cI7VU=qAG;L1O}czVtuo z5m1Te#osRj6WpJyq@{)#AhmfsN1>itBbPUqIO@zuY1v~uYdhgJNfM4vDN_TPI-S8OEu8W#v2y=G$9-lruFpI8am#wGQl-(mfy4;WdUI@h^ls@^oGA#xY%&3SDvmON$YoI?} z+2aW=!6E1=T+~sR!-u=4^oiFRmvfB~-J!kGmJ)M$bLkT&y2por{uNt~qNSF{Kdv%o0!stOt9}!_+u~`X6%iPscnFTCoga>kXMy_ z&Sq*HRkBXf;mS=An{8-u~`n z*R?sCxWHr&dy9ar(m=IvR|7DF1^|f{NTf`-iN2vN&r0TbzQ1tq)%!*0WmC5@>x|3! zCazj0Rnz@(%SS0E>L8U^=ryvqIbgFljc?(#O|C4^>@hLib4Ed*#v`L(I;?Sk@14D9 z`+CXK+%aF*vLFd`{(r`U`Y|~p6u*2)EOaTMXv$7l_{YrKmQan z7e~?j;<2&G=J!Dh$iNF8jEt#MInbDb2?+QMmV2k1q6FKuDuLTNHN{4){Yv$YBt^V` z6qg85^mUB-J>XlNrO@^ExQUXcQbu&VBt8N+F!3&gC!oJNn;6uuBg8KnWz6#5Yw1G5 z$0f`%)D&d=IP7h+ohqk^s9BI(ZTa=e|9dDC$uTk4SbudEUwWMG^8x!5F3GI0jR_sh zwH=eFT^oDyX0K2fA<#F_!dy8@3$6NP{3PKhYrgEVwK#jh#?qEEADN{~{YrVQDl^NwN=P-TTwQ1q9r#@(QE?8P^36n9;_GuJ1fLu8 z`vP0h=$_x>Lxp>$Bn*99o(cpDq=1QO%^4VQopKhEcVJ-4W$ON1VPtOp@6M@gP%dj$ zO<6sj40oIP1C5xoy1l(UA1^ONRdpceP?;jauP*+Es2 zKeUwjr1*PN8|TyO6=%mI)ExI$n-*jwUYipOcY(v~vku^@V8|R#r~6UOLANBex^i!R&{vnKAqyo5bT6G1Mk-OL1 zOJ=ikwE^bt_TpG64cMi3oxWcDwLkWNWTM{T3SJDtzbOhTd$I9pg8F_4pI^VqH%l)5@Prt{k8g@hp1 zKs$V1mZzs-olc9P6b7@ZrCC|IQ1x0ET?7~dbwNINht${!9-9gyBg4y7p*1>c1XJbS zjZUPaW32iH*rjW9=#+r;qG}ydKC>qUh~+xF#_iuEM&8u!O^@>^*`ghJ(8#e=YYOB* z>BvJ|;`%#0_p$zJi=B~(}kqufPnq&2O;}wcBL2EtVmbYIc6t|N8W6F5LxYDT9QB@G^HSaS39t3W3b_M-%&hjR2DP zT;JaA?d`GXw%{$Mu<`H+I~`!}xoImXjK@>U`F%yrNdq&g;o;#i>9r9I?rm=~FfpB+ zpBL3bG06nN4jF(9NEpQ2pmaRn*XN~1TYUict&)JXIRJeHVUo$WCDYsTMTLnk9*ez2Xy9L}P(Lx?CxLHuN_-gqj5ibYPtjC)opMRRcj$WR84ppqVNS zJz>=1jO8ZKNv5~-H$%LB%hnYR$a^^l9PC8tz?Dw}1iuiASrFRUI0;&ZD0C`R0{8MJ z*$&aF*$4`U#UneoDCNZ{87BMfN_vCn8Z=u%5MnfyZDz<|`<)SCC`mmg^pU*IZg+MC zvwGYoTGJ`=tj2T#c&2BjWk(Rx(C42DL+hP9OT1i`tC<(Q|$LvXU)m z0ikitR@Oe#ITqCRF!jB9%Jo6!fPA*M@(6+u2VZ{Oj}{0xXnEpo)KFirTl0e66<><2 zcU=uBp3RCjh=+@#l=d~Wme~}^-i++G>O!1C^FoM-^yU{f zM#sGK7Fgk7BLD%Ttf^BU1#zIV*+$XnYcnh32(WgEGlQ*9NHAx3p(brv%!do?+(x~U zd)CPQptZ*ixyRrK18KHnm)lv3&EIGFN-v?;!uxHcrm4lR2rlw_2h=w0 z!kK@66f1=bZuWv9Uwb@qRJRvppt|S1X>NNI$ap?!FMcHyw!1C=Ss`+xZ~s^$jBV1! zLpAA=kHnw2>A*Qn^-jg|6Oq4&-&wL=B^Jjz;hEFtOIlt$i4W-^*Lna0juUqY0-bv# ztQEOX*7J*?Kn@nW)GxVUHiQ7`5ISqSd3{aI!%H_YkL-zs)m3ysns`SChk0JGoP^cu zvpE6r@fY3koHXapo}Y-sJs2c%AI-@w995S(AAhp^qubL>>% zdUaL6rVVX6x3X0SmOQe({7qMP)L*qT;t8i5lj%c1F7a$vOh&cY!95phy7$tPQ6|IP zoT)>?10LulB)C}4f`{t+BXqcV2%)Yb| zKx8Z}x1-SCV##sW*5t?uPfx@PrRnLyzRE_F5||iY@OUn~pHTyc&a8NjG>DN*)<@ue z7d?I*Ed6ARO2o4hAi4b|IfeSOH^oeKD$CS+?+eo{gzXV|4Y4n`HBAH9x7nlS@YM0 zQ4v62D#d$-rTPMo?WB>lbwhgscdt3%wA_0VoTUqYpzks@2?~V$-kY5A`lEVUkE1}I z;xr+jvu(1?BnAy^9G^}BR#nidjxDY0@$B$z}1 zC(75yETsHyqm2*){!>B0Ty(UocAysqgJJ?FzKi~n2@HBjWK*SqMR4A7@8)NcG&b5Au0=thtd*M1-|#170XEZk-11!z$!LQMYEbaapn z-QV+ifSDO$BF@StDg&*^h~iCfOf_{OrNPcemuZuI20wp+Z#6Hu2J=*Y!?;_+e! z?3=1mlD=i&rdG6NdS}42PW=amvYDa|N4-b8(E>%b zI;wyYG11Fb$G*qxevFh?c)?;Ite^H)NE7pqm=A0}uaqx0uROTL2|s60)%xmVYfWGr z%fz>Q43F?4t+_oh6ppn`7_`)41u`#r8?y|wVl;8t7cQtBurDar?v1ID`yA)`!ugH$ z4Eg-!m$Ff)*s9P|ms#(`fQT#1_%_So&E@;9TlpO05e>=k>h3Dw&)t5f?tx2Il4t4K zoA6%uK0MAo8ynkEc^xN_FNEij!FSF;59R(Qgj}5J{`(|s1Se7wE zDRIK_P{G7Glov?igf>?>UCd?>60mYlWudaFW_h^+twsC9uEVF_KAgXmEN6=8O!dPD zP*N7gvxVLE&|B`Zg-%=SU{GEaaO*IX-k-U=gx4U+4Y>~j{E%ur|&y8^+{W1$8mbczlA7Y7iTUQ{^tZ*n{!g% z1fYPaspbSKky^m8QMFQw-%lzOGZ&`PAqWs=O@aK;Ba#IXsO1>LD3@;uwzs#t@f9o_ z2M@W%$4XbMH6-Ik-UXy45QSVf+M=rp8Irwp&{o&TkK|MsX4*~O2cKHT zL#e->{u`@Y=GU{du59?EE3^U&u*V^}7cZj-xBpms7DA=0qFOtj3(0XvwGf>#j)MaG z-|GpBIz&^Ex?gUZllxvAF3pGRXSuhY;@Z7neSTK`uh6p>@2W%&QivPAfuun60reY-Nq4Sh@58u4FAZbVw%UN%kC1{ zTKBpl+BknJdLmtg{D|P5IysIwJ7;G=2&TB@np%$^AX-o^+JPwg_-1+@p`V7_!?uE{ zII80kS89w;4JcQ4{g_CLQ;gW{LG=Ob&oU@EzWMra$f$I(x(0)vzI~t$O@Rc{RW~C$ zTG4-7gcLUa9^hZpefkk4pc3ni#i4iZ?H{`0eb?^kzJ9lpPe)gbDP?LfE3_AHb`$Uz z!Xr-i?r&KoQ89?}<>Lv7crvt{RIXNP?#VQtMA(p=eCjVfEig0(Jkz)dXa~Rt2@+%IP%f4xI5Vn ztHqTSwEW+{|8~{@bM;5Y0JiC{;bGa)1!!q0Krj92k&p^Dt#4>*>ZzR`Ff8C9s>Vg6 zE;BIp{Nudj7GgTZ9~n(`aCg4no@dR*4mJ6&)?t={OwM9ZHB!v6qds4hMh=_rL0-m{ zhIk8FGOP*R_-V{+g`pWLQf;up9_EU=pL&p)AHb&IV`5uLS_7TRN}6`;!%y=%!BaEB zOwJjb9J}98GtV6Q+zHU`sdGTNO30xjf2y>~e96HI8UZR?z_W;B@0-sJ_ zU(Ik*=O2y4d>9PL()3Fz zfi)*40#-q+kn{ZfP-~27t`w4-oX;eA0+sLDOM}(Eev>&d^a~YSByu59x^_za1aIO50ar6 z0-iUU{GTmiI&-vvs#)U~EjZn=sGzy!?(PMD80H>GU438Jr4!&Zbn8O!jg&Ob?%u9k zv;{E%84qxBP_A#w3cAg9;(ewyB*81@kiVbAChNQJSqJ-ldKaRs7KAqQ6~>>b`~%gI ze901nf}KW*i2*6R+$fj1w7j_{DtG=@DyA8l!v^U&(WC}82|wn)@nICfcp^0oC7g0h zS`?qZO2ziGkRonEexL0SG@idR*6Q-HGgYpA0OEN^M00iQ7#wb zt!s#PF4H8Xq}*IG|Ayy! z9`746Itp1mWm4LhjzFOy@ObIWkN%?mFFjOmLcqwVPje)y4s-BN1rrs?Bh{}eS&vW*{DX>2Wmqb9L&NnYRhFmE zkLyy9;$_Ynv}|t3Y2@O+`D+WC=YK`4-`L~c`NO;teD_(^bnZ;eLT8riyOE`{E~3T- z7d%iuOk>R}Cy#&!VuM;RX-3D!^wrj1Eoz@4tPDk|a8k$i4h}4kjaO{A?JRS!#xkt!v42>87$pNOKh$`KRsi{W8m;!`%AKAUn75=9V)505c~IB=g;i}h}p z)&hJ&zlTnVz8tZ+bt)Xw)Um2~<|+*mZeqHt$y)O_$+@CA6_I)YCYo>RKh9*zZvmFO zO(_i$Qsd)8aBr^&0n&9AcYFpB(Xx)`&!s?lwyr^)SH{Gby`lxqXpi&KEQ$2V3NB7m z!KVC5b=rTww;$pW zC3rJ@o?T`g02IDYw|n>O%PUpbuDr)6c)$f$gbqr*dm7>ngj zW`;VqO<6z~64jv2luG3c1Q2wF>l0$+kGe%@lwlNPSV&6V#AIY_1Rm;Q!OF!8{G>6x z)6>{O!k<3C09@SKotKxrZKJ2-g>)+{4$lh!O}(Fn;Pu0}?Tf%OV&Ej^1>=&=N4tRP{uoO>u0P$b$!yps^catUV{t&NynFUqfcwt!=4g35REu)? z*qPk(0aJvgBKu8?H&$jfQc?Xm(|O(Nc^+zZQ#+GTS=)&*Pllz=gCun>Wxf$x)Zym5 zqdX_D@8Y|=QuLD06ZpAqX72Id`?boWL$x^?^PRC3EZQRB!jAi`JrCfzv&`47fu18X zU()5nqmkBywMr{q5@7Y8vT*VecyU!lu!7Qn85tR$o}T8$YL~FOTJ`5nbP}Oj#F*+x zf%#JhWh<&{M|b2lw(4)+p4@FKkHR+6{qHuv>d$@kQklyZdbT#--#t5nu6K4HwLjfd zly!QPWX;8<^vSMnRFLl!RWCoc5QyKvr2TMK@S}FEZRFFuU z5VJK<#To}*g%~1FToCB;vBCl6zkj#)Q_aJGCiiOc1>Q(v67n_h2mbqbmF6I7+MbYq z)v&F2TOpis%8zb)HHI}s?xEFtG+)t>l+P1kF@_Ur5-#2#8aG;|T#}_@O3A71`q^pb zol!&IO*i48a!VFVQNehwYfRQn4W_YUO4^SYqn1@Wr*r1^x@3YU%5b~v{i}he2j{!h zgo(BN_B(I*Eb(>MATpghM9}HMJzMTx`_fv$JFCU_*lBk?6gM@*2o50(+rz% zn49kx?bmC42gG4!WTowT~3jXm_xPS@+^I*r_ zIcB+;>d_8cB) zf6h;g3AfET50Gee5wA{8f+l`T=F>AV;YIc_B%+c@GbAogO>G^uM5t9Y12G@W@$vD7 zh6b$^RZq`Wb|`QtJUX(Hb}~=|l<|N{L{$~stF)3JO(h{Akz`_u&cnk)$9S|2q>2X= zbGkOFW!Q{PD~$na>4eCGp@BYuz5N03lM+F(hWp3{!I_j-3P|gk)R;YYI?BILywW3Q zZ1q`QZp$`}0^UY#dpz|n3<|+z_9UUSRR#J2)`6{>A9dMu%{oVXr0gs3Vht0y7P>zs z)UtY&Lv#h1$BcV39&grryWpN`I91SNPF6d<7TiaP3V-Gj#P!~8A73F#utu;yw zp#M}4_%Z^+3Xn1&z``tk2nh|%{h_5~P@D*y@3qQ9t``6PHPO(}00{ED+uTWDrFhu_ zz?ed52=0rRj!uRSi=wo&UsHAUJ8mjkT2D_;Ah{F!$B!R#5NBp*Ke4fa4%ICziZ$!S z$|k={X=(CcD`{c*&pnS)51%OS4-UU21iX)oeHX4&uI`(5Wnro*EX>L7uuCZfk7Ow@ z`1*Ftd()KSFu0#Qe%wA*Ph$e^!=S`QQ7WI{rPbEcoSKM@-VjcVLxW-b3m$yE`PWM7 zqN|4QN9p_gN^VOf`>8!}Z!%(H|H~aosXjeD{m6)79T6d+KQ*$O!1|2DH$dUfChgbb zY-7X3%iB~`G;mc$q044~fY6N!S0dzf8kDv7@6QBUiC83fl3K0FG}U z6?P@8X*J!eQtf&&wJ>nYskS(@93I}JQYuvt_K4)+B1l9wzv7b~(Ob2(LlYJyHdZYH zRDE9ec1FRcEhn?{Lqf`JCGUNl&CinCBaEGbbKe7`JAwPdd`g1Hp?~BN?d_Nt(W^V{ z&WLJbzY~?{f+{O(9Khu*EiHd2(awuSF2ten@i@Z5on2j`MA7pb8@AMCp#1#&$z-JL z>MkEPJV1&hB9g1bG%AY)D6y+hnV6XB>gon=`RmDyG#J~qXKPbFdA7K}OKK3ys zvK*=5i~a1DeY3Kx51DK$L`kBOv(VF4^t}96Qi+#yPHnpiC$RqHA*aYnZr60@b=P{H z1rvCBQ+7hQ%4c=m@IZbxFk(BD^5c(#5z)j>Z1&8OB1VH_rM^Rx0H?a};9Ip@Secgh z)lk-sTXTJ^`fKuirCXNwRh>rj{Z`_6<(t=Qa2({bu~Nn6%<1{Ym?~3YHuUh&GG5IH zfn_~B90jtM!+hj7*CjHN1sMkj%H!6tAx8;k+GQ``h%(x6NuK#;nBH$wCB$G(mx z89JHc&~R3lF^kO7jGUpjDy!eTt9S~&Kj*|vmS82*ICV#J)I^W!?RB1sV++i%mO@bY zp!&L-?RP<2or+$A=sDFF9Ya!#AE>yD1jBJdCRT%}zPeSPs}??SaKK7kb$5$V;gp~- zZqeqVI#p}*@(C*ikfy>OMS^Qv?p*ozWy#SIpX@Z29QVV7j=wHFU9PG?cRQuD$prU$ zq%#oH#k2c#5Lt+mPu|`@Pv(-s%j@eAG5Sh8jG-f?eG5_Ms;Ye!a?Q;sl=f8V(L%YK z_KRhGjOnS2yySyfjFQ@qUP5jksAOw)QELjJP-tr_vBJjXr9FfNnAerXd+B>r zN+7suz)?I{-YvkM>etyum}I_Nm$-5jmyr5s1W?I{E(3B*M$eE%D9Hl#}!4i@Eb!9;{4N=tOG~1H=d{Fvsb8 z+*%So@o_`%1CbNX_`aZ-nL|la@YI5VM7bAUkAZqH8tkV7DJSl6hB7u;1cZ@-0&4ly zp4BM8^K{$tMSB8v!)LbqJzvIlZTUWXRIezX@aLoONo?%(o&XRYKjzq);R>@l-%Ny0b>g+VajIj_;cp44xSM?u0Zhjj3u2IdV7d4 zjPa+7$a*6LPZYkuzFpBxZXO;aSpryNWJa^T)=WoJ7`DaGZ`$mA!&&@N_$4bFFPzYV zMz^O&2abl^-)0pt-=V7S8Z=o{8C`>ieQ(QSbDwOzt}uTTaRjKcbmpFRtTmMFGJhH5ns3cxLu$Aus*I-sDRvN*{8JF|WLgJ978}}KHi+u1FP-7gj6TCn zQxVi-sMBW4!KgzJB*(6-7(DU2vQn`O2^NOovx|#MH^Fz*|I>&<1Z9OsV|o)@o@XSM zb8X~<*QBYo3IrVG?fbo5g>Hsja&fMsWEW!J&Y~Tp|8xX z(Xj&XEncXtF@J6}{H@!$ftr~wcFPJd>3^5dMdZc(OdEGfYY=vQ+8d4Q zr&tw9`bgnt_=h44l;9^#ANqOk7v6M)=8;)qErF^@*#`p?dUoX^v*tq;HnzjR`6(;! z4Ytf`=25?V&v6lnkMGuD zJP9N>C^k{bl~qtM6REdnoiPD&gP{g9<%^js(Gf5Ms0dKn_@X4aDCtWm(cqkJc_W?mT$yitzDVaRqpxgMkgJK420y)Zk{mveA0gD zwqCtK#%n5jH(Y?u9rnwOvHju0h^zG9>2I$^*oS{jv&E-x?h(@KuiOO0XUde=W>Iyg z0rMd$0ukKjVs5LQu6I~Rm{gNHHBqQBK@=K4lOgKr`u`&P`z1kt&}rn2meC=2;P%rx zwOs7~t=y+#_89|LP8-UYz0ysSb4Mp8{b)?V-@KHSqbBADmY(12X?7M=(j>(BC#+Zv zEt@D_g>LB$Ag=tLTc){#6M*sAgtBrjQw%N~eN5kD(ykUjLxM|`Es&MIC{NTX2V6!% z(f`lukJlec*cGOI>erX`=(Alvhh4o&SEv+DeQXq-#qGm1 znz{j#O!dNVAZf*fj@)1^#WP{^4{k zZC}~ilebp7hkU!tvzw0L@l#a8)x!@`w93`07(;tRmFN>?%he)vDi?6;{Tl7MJy8su z7PanAddiIwl(t;m^Se7B47+x`fc}{%y5E3plk~&w)J8Bzy8NzF>l(0n_9CWpK~gdz zzG}3xCBdq#y0nr)(1pza8UZu1k}~AFAylC}B@hv#v?q5o3sZWi$e47ruCX9 zzfGfs#yt}j*lO^k-*s#v}Av&06ag<>Lf>ur?IXM?*vAX89*v1)(ObS z^mKK>;o?Cmz^NuVF)?>6JOduBxJjo%gGmzMj|6wAfYy`&l)?%d2SkNdOvm7{@})zq zvrmMC03qMtx@Bo9>E&Q_$~Pnz&d>PvpNfq))O?t55mlBE=3Uj=#qCsir1pFAv=t7e z3fP#XC&~TWPx#s?2SX#WFz+T+UC9OX+AY;LuKVD288!)0%FCHAq68>P;1NaCVa^+L z+T85rH1E z!<=k%l23q4bahFqbgfNI5!xhwX;lz8&skWJGZP{bMFmV5v#@J_6X!aXg2}HdX8LofZP^dSmEKlLvdN5^6gtfVj=>W1T2Yc#B}J7fUZeru+pV58^H%duA|baS)sILn3Gk16hAg>_%55bui60t zVeTB?`r~|7-K*jXa8n+-Q62b$P5;AF;-AB-~bQGDg4#Gdw>T5S;;PG z#{lL|v!i9|w@E-ShKuVu4)Qjl8I#BiVs@|c=N5+Jt=y=LXf+Sc4;Z@rva^NZ5vi!DOHwPEn(#+=J^NC1v< zDk>`Zh7!7LsFLY77xQ@Dh%!!@!myCy_E~geVGosI@0g-{YG6TASkF_sW&!;fdRdCQqsu$Kh(^X#+0MA)m0jWjN;r} zf2R8zK>nJP)X~wQ-{~_os|wh}*siyI(D>L`UvFw^DhluA?cHdzB$ny4dq~*g!9_f& z%4Y6AJvWpv;^oz0=m^F|i=4PVl%%I040wBe6;#sqEv`>A+K+09cs#VaC~`5liU|t? zEwcdbJWQ{rD~*6Jof-rJ(&Zvj>p=ouZqex}_NS>-%BWvF+dm4XZ^9xDR*-GxJDZ%h z7US2y>ozAhu)f@GMMuTBZ=Zbe+O9cZ_S6%lc=)%npB~C>C}B&!mba?fCBzb0*Z`Y; z1E|hZxqVGdM|!!^T>%g2DQQK=nRuD$_yfvI?!A!6!a9H|>kCxWYg^~b-St;~Os}^~ zI15<2iw-)@7zRTy7+i0^BWaKT@FUTHZE16Jvs^L@0{4Hg1K`OR#J3Kh4NZnUhz4JP z2~8MCcfiQZjL;zcA3+o4&xe-fWi74Nqs^{BcqtfWW@aESf_}Tl&E<}iRUx#vIP5>J z=iK}EEF{OLYf0&zmWL_^l&bx!0+*YjLg)ZJ*de4s2gRoJ^#QP~DFhtgNA4CDHdb2S z<3){)oq2ml$>ZT0D7e&#H$G!6F%A`5$U1QYj$@ zbPHax>%gqHe>pMIGY;&XM+{kyVLJT2SaG!XWFl{L~kh4P$lZ3{;C0X*U*nJr@1lTM#wGU^H( zeEckaR~AOb<0wK-zp>y>Ur|FY(_uV-C@koCYhh`5bA25YO4$uiAh8xh0Jk3jmlF*; zyNk&8tee|^y2LhljbvnoN>!mO`W^C$>V_3aDFW`mF2@lF=6(ByD=aMRJe^oo^|snP zT2^LmHoBOW@Q?hY^xL;WWCn)*(RIQPalD-gg+arB~S**Ifx{{TXgR2PQ z1IV{w7>poKbvWF)#9#z+PBoD~gaqQS&gF91M)8S?B0TTU#m*kl81dNSxEFRWzvhUsGJ2pBp6G}n%@6R@TkN?0><$CWr6srUF z>J4MaYG$pB-v;IuV{d`jCm?Mb)NIxnAMyY>@*3J@8KwZ?&9X_|cgVjBrI)^?kGvt} zXyCtBayt5H2fdBSyA-9T#PO6Gu%`DU_Kec~&WsBwGy>m2EsEnuPiDHyyH|ua+V7O8 zYP9OT=o?c~9UpnfpG`*w=o{snqeXbme{F5RrHp0@&J2<>MND85hhiQ!GX{$(YiXg5 zy~7$RfKll7!aCH^&?t6%eY`oI{Friof4|8u6`F`WxDI%Ed?|r+C*=@Lz4?g3(ET!v z6H=>3l`yuXuPft;O{}dv|0LYGzCYpndaM1xUmFQ4V7=_Xf*8;!RDE_CMONEuV~n^3 zoWcXZQ7oVL4YPqjNly?XVNojwKD^4e6VwO0|DIXSu}gBBDSbCuX6^>I9f^!?+$e*v z2{K}CyPeUV;B-VXk(#0dS)KLV?4HY>y{UO!MQyu5cwbrI>!{*JFjQKYRFrak2aS3t zLiTC_$VMr6cn6)(TJwn-Rr^&`lDfg*^OZ(LHv(;7+ij)xLLij@M&h+I!103t?bZST zEJ{N4@o^3=C<9#CqWnL3GRDzdu^gkso15-`7>%~B+}sg1Hmd=Fpmi%qCTOsWu^m<|QOMq#yrm z(eEdpY}*%aJcmIZaH}(atn!{Ts`o-csLp;E- z|KqCB%HcXew`< z;N;>es{1A#;jfxlFMa|p6IQ+JtS3=JbjDQq{$^-QK!bYUECQUT)K{(r_-;)Z9tAm8u#?VJ&KQ zBsCk|oMl*fm|7mPEH()POYno>ehktoMNZuOf5#kKZDKTJqsvOE*ut1+J<2t9^X?kks8bEYx>bKE;yoIoy)$!%(UFFZ)mb3i!4b5B0Jm? zAOF|$4mLi1aaqYipG8;DjixsuFVnLehlC(G@PFxXfMS>@A?8ZleET8UzJFkdTya zB&4K7x>Oor=@jXPrKChc>25(_X{5WmLqa;GBo-tV-r47Q-rxEE&Uw%Izno!LFgqYEj2YhQaZ9<{^K`u8$wTa@;W_BNxMcYg05_>K_P zIqnx@RfY$tV_ z-%BC`A;|a(YHO$J)y`)w-z48hjay;{e~pPj8x9aWI2MUVszB2mLQVZ9#=~n#QE6|x z!fSkPuGn~bdVT=J1<^^6iA*gdQclfK({cy3~ zYWyj2n&e*ecB6?*>sQ*>F>#Uu8T;@pIXNYCSy}#jx}J3ht3_&tH0=_!HOYZ^d$u1| zxU~>2)P6x2S+|2DmYh0>>=Kuh=E1!$x1Aa!oF!!4R<`{hr`Tb-m&vvZ_s)PVLS3-aup1#es%;M{g*#cVPg&K{K>0PyO=2=Xt&3Vbgyj-8%gVH@iMP0+ltu?X`d|HD%?l>(^(g#yGTJdLdc) zvJy&){<9-7`*5?eS=782@A>>=A+66WiXudxlM!#z^jP)lC>Umn*=l_`vF!%I%qt~Z zM*P2Xt4VbB2*JBs%1UZ%EoQq0pM#mOMG`ZNLEMok?Kl|t7@N}!BM2Y=m8@)rgx?Ye zEMF}%D%2v|`nAyK8n68DV&;@OqH>}cf84!S!R1LpglYngy;%251fp`GMv{_=iHYVUH@F)VSKd$i1*a}g4RQT!saAyj;mFzoujbE> zPHmD%&KbE;y>z*w&cp{)>XJ_Z51*+x|eZuHL(IHf|rWX}m7#}CJ z{NqOQ_;u&@>guzhx}xGe?W#(?wt9CV7CWPkD`3nP{MNiIlkxa>b#{EvRZfQ50u#?l28*jF5jJYKzIl zc-KEw&;K4qbdbm>nd;CR-l+@$sm4v?*tbrjX@+vx|KWx6RiCaTW{1i zI-mV~66zyFOv92O6XC)AS(@29opafJBlduyd`&}Nq?ktdReWtUCglCK6{;{ zf+99*>#9a1S5KK*JmYg)B$SzQh9bR0fIXLTzo5<9`Me|g2A+kIxi5X^@KxAi^KsL~ z?bb}esO(MYYac8vaNYB5;h_QGUD@a`MwhHfZKbB52v18ZF5de}FSoMu!OreEcX32S z1SXdM+m|yu<=_`12Zw&$LrCyyuV#u!>Dn3-p3ddKX8Gqf_P6bg?3?So7pj>xW=a08 zdoH{Zk7RN%_hwC2zsM4%wTJvD*IifF?C1wt$>Z~PF;uMB+MlV(QUDjPC9vjv<&Km8rBr4g{L@TiV=oP)~^s+04dki}L?fH`E>73 zRU+vy6DhgxJR+L^Zu4iG<`J)!dcfl6)VU5>S!W&h>K|0Be^!(@u_oA+ykB9?`1b$S z!SPfhS7TTsOu8r~c?-cb5?GYcIKauCVZ@F?7z8suJrBCj~m#koV%?r!nnX><>hj@%$Z$un{ zACptQg9l<^l3|4IzZuJggJYgLj#5UVtt26uh~F*$PIkho37k-r#84Ii5uS!R*W>JZ z&ZOUlOD+7&?H$hx2igRsUMmuY(QezIce|@_Gnu<*sR8w5~cyc=aIUhPMVCzNn&sBjK4GoQ` zY!SMwfk4W9tIs775m8K1lFsYbD7I?vbaW)Uzz^MePzDbC@xC~W3?V7}XZ(S>=wm4q zA7*l$$jQE$$IEF{Q4dM3X7gB4UIhi+eWV+J;SvW%<3Lw zSxCMKnHB^>ogj2|cYg3L1Qqk+vSx>kjZbAI_ekcQY+A8SeH}w&g#Tw{2&4(;#b&xJ zG8W&ba3I;u%gcLma?;e)1U5sc_(q+iIT0ZwoOVSWu9t~FesqrKVw3G)%A(S=J`~an zeD(z;<~5E*w&Y)b7JVF+9*pcpKfdsMsQvXea6cst-Re>M9?cEe!oZbzYmDBxHj2?)wC;H=_goEO zrsKux?5!v>hd0$ofcNh zn}f=*gtNlz>V73uAru{DWyrkITOt6zzyjJlQhc|$1F{!Su95`zhOZE%1E+gUC&`27 zAi;24Vis1kUAO^*Ph%T`S2lV_Vb@^LIUY1;Y@bfg}d&fc=4bI9v zLMJ)BsX*%Gx&R4YDJ#{8(cB(Lr(`&fe$QqyE%2>#H?bKX8^zyagt}q86^%+2%Ho-h zUm)&-g+f~vJrnue%6Zq}s;On8P&CaEVu*qgc6IiL-(F?cp~n;9nF#F)Xre~(pQRdE zJO0?zl85|HSYq^^h0uup`9$&{Ada9KN$Ffl9)yTE>jIYih8u7z7{6d+Qxv3m(y2BX zsE^O&cd~lUA%(Cy9+RBf)9i`kOUx8Wiz(Q3h`Rd-g8g!i4W~krLeBNAWtmZ%tRwoq zeo6Ph>rHtz23-dtIEt*I$s+7kityFd>l+~_AOBb2-LS}H{SQa76=mG{-t}w=m9B)iUsg_W+QHDa zs@2BYhQGslr_@Hh(k%Vt;IiM}plLB%TiBy_?19iUy2Vs?>YrCkuLb{C)cwqb*7IaT z!QTF;*1jT?L{#*;$@3I!mS`7?wab3*?2PsP7jAFgkC1uw>I@E7ke8(5-e3m1y z@83aio)l^zgD3|kh&*-@HP()#<-skdVH2`?r=HuZA0uHQ;Wf0$GWLHDo7Yjcb#qe+ zLJ7d#|HJ-Ym#j6UwOlzl#s5E;49e?5V@;R3n2f4!*SEPt)zWfhbWj)A0g)%hb5<_> zy0L|Y)YMe4Iecqm+OfEJGnOq~S*g>3``u$WML;r=M%?FTtvyY;f$N_YDP`@=jSUXn zN{pXls0}{d;Ut)tm>`~uRaswG2Pg_bX7%nN+wV~1aFPD>UZYK3z_^7NdIZ^GN#VGw z&_?aPTy#Aprv6RG?GNWf_nU)?gg+&Z`(%Uc82`(KN}z$SHjBpqBAz|}`FGBE+?JiO)upr#uc zA72&l@YcwIu-w^Z}t$!jS+y_D?iRV$rHWV|`rznnsn2N$bFKtL$c!efF4Zzx?<=!3Iczd< zcCd+vP}EJJ2wlY|CtqH0KZPAGw-Usm@!lX1!NG*aj7&^5?`OGIaA!e9LSYe+3}NSx z+fuaWq+?(yrmg<*1GDA@SPy;gZXb|hR|Z51K zvr>sH?aYRmOElnH5|dprqklZ@NC-}PtHzb-;d;b|_oOjH`+iDXf^(Rs*=?qwgm!!= zTJL`0auLosn(UtexG2xJ5l9o3zSw9_55@0oEK=Lz5rL`cI_J9zKU?wF39`oVX=(SB zJ@80P?iGXj7$~!SXbY6jo`sdC@LR_e7VZwG3Ie*`GK0qFW2Gc1iI=<^3rFv~mVHLL1g8ttpG`7O$8lC# zbf$cZRJO^n!@zv0iBZyyfmi)Bj6^_|u$s|!)6aFwsmJ!+pnvnvF^v>qsCcFdTtzT* zK2)OV*JUZrQd7&doA^raYRl=$`VGE=kWZ`g^Tj8$pq^}cNhvcG{YwbdoblN}6NZ7zs# ztuOvCZTz#@Oc13da1)1cQn+gyqv*yJ`PJ3+imaq$qQb`7x}7z{4wb~-+?-Lw`8#Kt z|MYxJTR%!V!SdU$G*FhW(#6Z&o=$AM!s{GJdEdz%30a+sY6t z-inWzRX4Y96MmnWtVj7_cekupp7KC8N?2Jh^h*FF04o5+cm8R%j%yU^9#qVIBin^p691Z~2mwRpLl=;${*MA#pHCwKnoW685h{VU06YR*HJ z^g^5LL*eY+Gn2q|q3j|fI~(KRN~RYtUOat@rnn61Jh*THa*455UF_1S!?G1mwc-w3 zK60T`gwxN}xXXTNg7})Nop}A88y#6R)+HgTMGSAXua$8VL#G3DsxlqCFtP4^oxQ{g z>XP6We1BJ51-&D+yl6sLPthljtzicR^&T#!-YFpXLZhs!^*qJAeY1)2rTXUD# z&@c~0WYR%;TH4~=oWg(d7GX;*GHA9p=u$YdHdYoqOT-XVqpA2v$M&Z97Y@CU$h~II zit-HS*=MN)pF;?qzdd;2;L+if+fcpJ`K$e?z>@|lKH`#3>p1qVsw@N$FC=o5ES4&UNxBzT?GZ$dXdYO+wOg zarEe%C5GUBVtR5*w=E(;hiQKI(CTLOk1w4HCsbRF#>=tuM!(~*sTac9?6lRm5Nld& zYEDJ<$nYY1o6G1x!^~snllp@%J2!H^HeNPfdKEgl9PZt?o#n^;oPd1&QEvC-S(a%# zF}`MbNAJ&{Kf8Z5+kwIzo12^9#2mPP9rx(pq5t6YC|IW=XPHszOKE;uEbFerhW2@0 zC!Mn1u#m7Ify-ugO=!_=s&?i>(K_$zwdc0E7C&E_M-L`trt%4->z~9up;>5o5jX(Z z9_{?l=HeKy8SF}2Ad2}mEwW3 zIz9_M8Mu|4=v~>fI5miiw+;MfNDn?W=~|u+A^U(^cs!o}N|2`5u0s;tBR$|Fk}4k4 zO0q=Pmh;>MM#kX#rXCy6L!ODw-!WGn*LyPQ%nVjO)zgxN$xDIs8GRZY@h)sy#>U1bTI}b%@87>SW?*0tB4B?OMpBVu ztIf=g7T_X;f8sSaRwNgi`=u$vAFcV?hd!b%LSGJBx#`od_y_1}rZVwRK~-_vy{!+d zQ5Y|LZk|1T6zj|ZEjEM+J+prQp%rI+_m?OY745{_sfS2JQAm|ykByH{6S!6&YghUT zRzCbpRP+hf<1rzL;>~#v%3fn{{D|9I-|+bR4}lIEq>w`JZorF5_XSemakG#9=sadk zNJ@^Dt5Bkhsl%7KyE=(lvc}QD2bROO9)vSbHY_B#; zf8<=n%hT`sNqVVD4fF5y%kasG^Uoa>9qWAM1EZs}dxI=Ayr{Qlwt5p7_Sh4*E$cop^P$?i(1(tG^+Z4eryk zi&7pMP75DMdlOUr<;_rAVAo^BTNV{Lc{9cGuo(GXoW872&l43yoZgh$Fb43Y#26(- zk_l-$zbi?O`!LDCJih;zD{@vorL?g0x>-={$f-TL3O&vJ#f7MShI@l-NwtSoh5iC0 z{;2ZZ>uu;(O9vvys~r2N|4lDGTG+;m_YDp@Ig1d7A;k2(O`n2a%KR>}X7_@G`%| zPMhhPS6U_122(7a2D}l~dYn7fIvkI?ioh?37T*zVr+P|Pye~4FebHG`gtGokQN&jt zyKrwGCzHUoH#b4qsc&yti9V&Irmj-b!6tWIUgJrr3#Y4EnwruVv0!}FTxscm@vu`K z1XST#8wJTf4>spQjP6$qF=Ck=2o7G#QSdu#!KXeF&VI*KZ4b;q=;4w)Z_?7S-ETzA#3YC-;D0gf^ zhnB?8lVdZ8ei)0{S~ZuHzPDmLGHm6V_*n+|NQ6T)5%cKa%I+xF*@PFW-JavD)kpT% zr$simzpoF)*tU-?>pkXKcHxw;VZT{rO3Jd2O!jLd6bAYI%W{*dIVvJvYSla5a=)z&+p=QF z{0pBqhw~>?f$Icb$ZdUo(1)g-zYKMBCt2xRt_3+4A%CN}(W4oAhq?K^*}2BobncI+ zGI$ExQO(GYl6gvaT%@_$g~;rdIvV+y1M{2I5aV?1h| zO~aosaE|z}Qwry^B~w|GIOU0_E)6|#%lu`c+$M)GW3RWhwab%E!Un&F!4qOQ=t8B1P=5 zv;8P#{V2lWTFuC7!WcUJ$X1K#^Mk|qEq3~V=|SA*3phsqyy5PVA;RqF*08u}T_~z` znP$7rt|FczIqHWEn;n|Gja05M5v-z6!zRRdY^a^~zSIQa>$*5X*iGTR5W5tiX57Z%j z*|E-w`(kO|0d=K6wW?k7QUcFYqs7$vp(T}b9&m>eB@CWHD&4%qdpNAm#s`WQq8M#W zY?`Sdi}|4p=`;OT!ViTnv0v@nXORQ6?yNHWS5^?PtL8Czdm#x-vqDYp9to^N2$SSy)**Aq;w8ncHa+NGWGzAT=7$D~#PDFnAdQT)B2L@{D;kS>YB<4jK9`42-Y z5ovc){Tbh<^m=e`20rl;N>H#x){;bapWJos&^G!9#8P%vbwa3BdH!uSZ59hp?>8lo z6EOaVm9^~@ZE7zzV_);G3R2dhL-5TFyiKxsDd4{`P3=9(*#B3AkQW@TAfzO{NeX^ zI8lzEX|}SZhG`q-6Q0QJcRd_JA4=e};JW`gH}vAbx46hDKBy!wFAw;9P_?nPwieiL zX{lXC6&u&mkN2~m9x;!ki@IN(?S8~2(9+i4K8D>4fONAL6<+Y)Xx=a(_7S#tMUby| z1kRp7rrXisp}5P=Sc<@V4;T@St?guIMflF@4Gqk@+0)+L@HqT!zgMlntJ|xpyKQ>T zN4fO8gIn(6a}Bl9Tc?8+7d^MPnt^jmf9DC7p_-LX8Odpyx%qtWOjkahj~+>oJ<7}v zDKT{SZ8+Q{HB0#9$K>5|S9sCeQYaVAa3655fD3@2hDr?Jy5V{X$nij89X&n$T9s*U z6bO{q{w$ZW@cjG7SX)~g@KJ(_Yk8K_^YbELQ+_0Rs$QV#>f$2b14hdYPG~xHyZ`7o zYNf>&fnTzITh9t%usB^NCZ-Wk9pdJ%BXuz*T2j4BZm6lXrt60^Z=pGK%}sj;pSy*n z!FrR*yProMkS%ua*k<;n`~B2I!afduIvG8c=7VO|=qSo+YD)T`bRL)Ct;$-UWoGdh zbLCf#>-c&??=NE2Uq`4dS_Enx51vSHRHM~!F8+L-kUFwx1Sph+h>*OtSt1uvvicQo zrqT9R>$J;imH8`{Ae@9#d)dfhvo2ffpWqn_aIaz(R=C&q<`k#H>%#A(?F+pF0|S+n zl_wDzY>cQVZ6LwOs^{lVGPs?8-sq4yOE|9k7Ewl!8PnM8?5wtihP*t=N^(R|5gQ>n zC8ct~WX-|@U~OFCtbNH!L4UC-K^9d-#j^$-0+1jquu$`%N=e`nMN-C`%T>7Jne(nC zZgr?M>j)nE%;~Nh#TK8uTO+1afyiwqtQMW*)RVb4{aS3QPvfxU$q}*AhwW=D9t?yK3Q^P|+ zdC2LqItSTZt?R8@=nUZcZgC`YdXtit76;g#cV}r(ir&%!XTkJUjB;n6UXAZ^Y3VzL zpojU0c@TNgw@J6|EK~HL^ z7Pp%jL|ir_?A|7I!ySB_;S}~T%Lj4-+s$U@8S~X;L}Q>Z9AM4GZ@EQz?U!&dy2-&< zBX`7D3$af|fqQ*}(5#H(J-5nyw0EGr#gz8)=h)cTpFibYcqn$i8sLAAO+VqHz^O(O zMQ`jeIle)Th+~hu#Q4*wqnNeiKU}+ra2}&c5^RG>Bw|IOnBblOzIx;t*QkDnpg`XF zTlMA4w%Gc?v{a+uw15EAPk1Q$t-c0Nu_R?aWSnB+D{b$d4CN0DeS37DFHynAz3{dr za_icTCIll&e0~BR;mBW$xSL7cCk=X*ST(V= z-zoKCDyG7g;0Z!hdYgL#%GC-UTC1R9R*DXTGkKeGZ5Qlz3ipq^d9f^f6;@}vP_Nn?{3eH)`R~pfLGCQfIGi-7t2E^C zQ`ieH?|9GT6{w6tuWbq*EM%m&zUC*foNOX64|!Ok`#Qo$oyUhabTuc=Ce7+cE4)1*=X zqh~QF9z62qM&Exa_u0bvacs`=eQ*#Z8D&;aJ(%iNy{0U-#XEO7n_DzS&X-@NTI^mug0!=d+GC%4*fWw)slos~BK96`TD%W2hZCR1<(Wj zUxht6FMeel+kAdCWY2g24+~qm9zdVSS*B(makN~tgElR4A1=$%XkYAIcOy>J?oPL5 zs&q@~dZun15gvOUO2^KdxI&>=MPf;31SH*#Z)nI~(nC|IvMWgVzurGDk@Bby7V)(! z))n%r_yT_q6=H2lT(uwCjOa4FJ&)!m*v>NJq%ZhPcXC(v_c*^P7Dr9-#hszJFSXw@ zJ00JzaKy{WZO)+dG{%&tk1zM;tj&oxcFqV~gYM(LG)<{{NV@Lqs*e*n%1K_abQpsP zEv0_SdfHn{LYFDdXinoPGc?e$RAs2GzPpyna!t2KU|lYEzI!TjvYA8+J1wwtr{;q;J3v5TKik+B|3fbcGSnOvx7!c+-II$+Y76F zgkQz;`zU1*2{5&3$qh`Ntwi{qP0>JknfCb`K7vrU-DZiZ@nzS$hy3g{2#BM^VgHq{ z%vwR~JnNcT4uX``0c||+MNvd4DQTaAx2gd*zll=qQ5nriqVA;Sp6_C-(oE(^xnF61 z&w?P`?bU^!27EQ^?(cE$-tUp|=%v`mmZjLLdDmE|3%I2L4-oMPZtMna%z+i29^kujZC`WoB-oyAm0We?3;-|0q)df04eY&mY9AW zeFr%!5S64x5}`u@m1n&kedVWdCi+pqg)#rb95gUDtG6MtS$cn4r()WXiecsnbKpIu9wkx_%NH)RYGkIS@h$7eu9)ivAQQ`Cc~R zJE%}<*MPaNA#1IArq9Hk!VEL3(BXUxTzBq$88^f2d26fou2-cm%eC*G?hJu$6VMIo zVHG_2)!Qp$gQbEm4U4;N$AxWiuf+Ldu-3C~BrhN0$OY_o=W*ksypNrHjOLx_Vt5CY z{v~(IbnnD=`X~;*4$XwkLJZ6H`>z_(bA5Eq4@_$7Mk5oN%W95cEC_d}Mg*qZD(rg# zg+X+S);E03k1=EN?`{|yAXaA3WjwI{R!olC9``KOpBEGP{g4(Hy}tBnZ1zp8{HND@ z*S|x`-510Ylio#LJsO@ojZD1~SGs}K@h&WnsEMm;eZirQUZC z>x5Wsw2r>@m9}G6$t<~|s)W#t=*Ei~NVEe?G*+rr`pPVp318?A+wWcXUikDyG2xr zvwK5@HoKPZjxq(6E1aj~q(^4Mu6^uBe?txC3#K=1B8Ai@^@ua@^B}TOrB4i_!wQDG z-Z*4YerBXEMl_5)q`(&2;OkjPfMyyL(j5zyTv481Ik0&9`0`9H!0j9}4J$P>;fOK@ z-^W)^8ur;{l;RE4rY#W@^)ZiZ%_2Vsj%EGs)jXDc{FIa2Q-4F%af+y0OS zLcdp4S$5Q!z5k}wnZM=E#PLpJd7Imr+b=(Jwr2Dm%cuAO)N;0^7o+9?Y++ ztX1sTs#b|ta^zdXOWaH~)zG)6tWj0@qlYtvW>774GiXR<=KF0chST&lalcl%kRlF^HE%xm8lX0; zbUw3olvr}#xxVq}bX65M|9~L(i7#c)<`pEkD7y8kF?-Al51`}!y}gPPNqmnRFH%17 zQ#@0eScy7K9}o+pY3A-`J#FMi%=UX7z~g`uC(%V%JGPb_#hSMEsHQJ(OHkE0F!sJ9 zr*4_FcRJ%Ba1G1Z{y`_fc{5R(Hx?#lXnA5gnD?tz0D)%)EllaKuT2a{`{*16`Lydx zki>8}`GLOjx`cbZ#!tToQ5k(SiJI>F*)=}%XgRU?D$bNkf~#nL5B|NIbK&%vZ^Xh^ z2S!t{7*B|2h<(j#wY=d{qmof3qwriB){@-LtSPy2^t2G@u98EHjBlr3AA7EcKtI}X z5eX7j>@a3@B}~aJ+MAa$m?ZQLKPB)@_n=p@dex-*<4EA7%1o_megR*%j3Cr9nqkiw zwZXi=$HhpRUj#{;t0XP#yGWr^_9+FA8;>Xxb{$lY7VOgOaikNfkf z?I-Ilr5g@RN?WV6OX|*xOW&YP_pT+D2=>e5IHcEFHFmswl>H7mouPPP9+L>{(2%jd zi53QalUBo4>9JX>tE*>;abmy0jJ%Eh32zM-;PZXAxh+xmibjPeKP@YPQf z!a_RE@YDxEvS<7~EwdNEu&%_@(x3XaX8C;s%bWDv6X*KnCbcWyg04|E3B=D)`{oTb zN5FJ-#j6`_fu35_jXki;I>Ggle)yAONh%{wWLOz)%m8`n7az{{8AT;>q zWdsF^%l3GPD#5L;88UCm^jw+@K~SxrWm$qIViztws;${1uhf%M*pl-=&MM+F!yik! zwJ?Lgup~8=;X|O-D~I23#BJV~nsB%f+x3H?|+)Ok6FjVq`}NVpLva=>hFqu=F`(Rv+jLCVth`?3OnyEy)!P4r5_<%+gQKDgq1 zUqkklq$j0M79~4jd%Vj@p16crHF%4Y3&JS>MNbQ4ZFbwL5)#F;ub{E8ut&wLug~@SVJEXrT1VOg7I{2qN>jK0FpzKMoUC4@HaPTpdyezF3X;2HAw zcJG%G-6h~_W76<_3DLVFqrfBWVvD%?F{UmWt2e#s1R-7Utyw6;b~r}=51 zKlTNFXjG=v5Tk+G+=8%(O`BGxJF%l?R8Jo8-IWb%-6s8HNAO(@Z-kSi#@HS?ax74x zS!N3=8U5#5L-Pp2=+pb;c0ZiwXgx z0g&$=dvCy_Zc!Un!W2%`=$o&P=hwxUfsE8n)szo}=L4LqepUD4*@RbaD|WD$2va<- zq+}_x|3yr3G3!$C;5#drjeEIa^)cmNH6s{5!lKdHAUF?@jiq_$n`5>{{r=(FR%x!| zS^Ec+Qc-SMlxz?sERCj@xmiFQ<867QkKJ9&vQ$YAt7W|1?enIDPlfY$|xw ztu!|{ZV;7_`;Ssd%EW-s0AoN}$_Gz$*&vm^=-E;#0YJWi@$El*n^s7`coxfAy~255 zVk7;DnF|Ml^qgeO`wZyt~{ zfZdw-*efbToDwN&kG>ZW%zhiksrpUV>tj9MtToN!3>xGZ|5f9a1F|LX9|^wXQn7@F zYj?BrYcx%1#O7}PpL!LTB7R!B28JU`C>>Sv6|*Guj4cXKk+zvfT=tliz5jY0iFq3{vJT#g}{eGb%u|+_#{+ z{=~9@@h`dcF=OCn3nq9FUkjj4SOoF~OqMevQmHSkl74&v2qi))@7-6_(mY0VJ;7kv zBWS}I&--jgM!pqA3Yq&P_M8d#=gl)_RL*=;!e?Q@=LokbDD~1$UZRw$|1RNIJ z6Q6d!lp*4&)^SJ7o9G#p%9e{$O)%B#iV&1i2BgS4o#PGnfU!>3#gO{{-zEKjW!Dqr zB+tqZl3iD9K`Gt1GRmJtK@PGcl?{T_wedpxJ~vFWY0NguH5SGl14r$Ul6E0 z&?aiO-`aVi(ey)y*DBFdPjLJ?o*h#4m_pm>B~n(W{{cZ=spV+=hT_X8NH5YwaQ*{- zi*1}M2Y`c>|G}|rY_74oW>gECz5j6?iF#sf0ljf<$n6Nro;BDHGLITX~B;J2e^>|*_>8#%X7?&(z6~u^Msr%g%@|U^H z_F=Hrd04Pp22hrE4EsIo0nMiJuisoxLvl*D_OzQUIIB-Ltib9*1Zd9xfhjrpDU=V8PV%3j znSBQWBZaMt5&Z&u8`8&@gGNgkEB@TD_V~q@U_0=UeOFSr+HQV5ohExcq8{U))d{%s zoz9A0Z`2^!Nm~?ThoyOu97unI`H(^-DuWu>;Pdb#_Ipos^#rqvJ)dNcGmZYEB{m2N zx2>7=ub@&3f+G-iLE5=fbvWs{$B%#HX+q7FiNGlV0e5gtWV%H$ z6Yig>s))&1RVO>~>yF05LfJos70f6Nae}Q&C}U^LxF%SSzzx+IJTOuH0y^9~(B*&R zHN$z3J&x;iraz3O-@kyVuK*QV0Xw6>@YxtTer5j;%c63F;}!|zGWY)-jb;;RJH}5Y zxg)8lkY|a=z02FcBh*dSg(t$GN@$DvegItoMLc$Y~&IdnEU43dw)tno6(tp1%ikAS~wc6L0Gi6VK zml%$}NpN69LLuDUmxEkS@Pd>4A;s{>*YsR_EbSOr^t}?&(v59`xXu{ket;e9i25|7 zPv>Sb{Lilc6MPH_3vo*1c#w-MEx(=&*e0p8_*7h?AxDEBSL{K@KOZ1W@z2Ia>o^dJ zGsw4mBQ)FCTtf`tL0X06*7-@ee;X(O?B+mJRDDeLQYW9r^ literal 37229 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 DFy%5J diff --git a/doc/2-interface/tab3.png b/doc/2-interface/tab3.png index 4ebc1077a9936429679cc850cafc3b67a344b486..c59d973ea7109d587e6260cce9a54fc1c11fb520 100644 GIT binary patch literal 82104 zcmY&=b9h|u6K`zWXzZl1ZKH8EcABIy8r!yw#?}T+(x9GLk0sE@spJh)$jnEt*hGD zNuvF^W|vGQC-YL}&L_|h^C#Q-h1OdF2iJ{&0O3v^*&P+$9f7DKvSp#ftH6p>vFDXR zDY%}qNs6cR!o+&7=x6Afx6<|TXH|a4>|ndU&u}p+rq`nJ`EvWE_GSu7|C_kal3#8q zNAjPK-IHyOkN|%ALIDnNEo@a%w>&0!NOMfiXZulmdYI(}7XC^p7N&yfFcX91_G*bD zD;K)#)TtvixHo&)*j6lw)lrcjT_uhL{ySDQn~KYdlA8p;yQ*mp-8-=&NtXNC{xE2w z+8OOsixTiox>#;27s%qo{OLkm$1XW>oVz8*E+Pk{n(27CnIj@;&=0meh-(c=Q2&vq zj=&Q@WX6;)Uij=@0UC+BIi#_;=l?E1ST!N;Z+Vm?iuYd^{?aO^i*W<7=CEoy`nOm* zd@OE;G6&_phbdaj0W1Ham6h4F)v8y;Uc|Ns`9E^`HoyGjl+~0KrWB40m2wyf3r7Rb zM!cLDy=+lI!r--%|BU}S)({~_hgeZbA_oD14$-9}o;h4>+AcDI!8N_fG-6C>KMWB| z^w&L)upkgo5K2v!Am>=Dy&q=FBj#(cYADM;@;ZZ>?6iC&fCnH$#S6eQAHIG_U!Juh zK#pOI#Z{Ay#g)Q$>M}5YfGM8-C*+YSJ>);Cm|ARW(%6PS2LUpHVi9LUapKhO{O&n! zEO&8YyxazOjOIU)SnfRTJ){Fc%OF=!#)L}Y3?UXF@ovCxc?3yui_pUpFnMJ_f<)#V zjo&@T|G(Hf7UZw_T+*|eH$n+mg+ zb({vqKYae_gIk=4cPYlp1E`?n0TdziUH^dsVZ-DFKJ<&@e?R3`Dwrm+IQ$1Kf#609 zfF3?pivp3zAzP^kck0MDf11PVPAXLc!>fxx=l^m{5-(CM_WTbxL4Y8@vFo~tGgIm_ zPAo|3pFs36;}+2~TONJaFfqRHfHA25*0W6}AL5VP4Pm9Va_Ni8*b-|$G8fyAC`iH~(vK;+6+z zL+^Die*8l8;U*xv=kd&OzqwVYZ2G)l+VAaU@S^c2Hvj(HyX9n0JCFYJ$IzzG%bq;$ zr~_F_Fi9;53(tmCirg1lo~#Ux4qgsE2d3?br1ceImx4Eti~e(xzH2GMm_Hpg89KPu z95MEv-@0yJmr2`A4Ngs}iT}Cc|6nePk#gQXb<1ks(B8B+G^36wosQ{=>glJgb#7E#-;e#to{x{R zN5p;4*AuIGj(uLDn5trW6hhjVvDxUa5*6X(#FrTp)6-K{KOgTc!w^aRUglAS-iT0fJj|5M<~$xLs&E z8CW+ls5rVL?LrUzy+%p;7n?C-U0q#_{I7pGZ@+O60A9AmctI}z(~$?{AO+4YNNTeB zJ&h#_O#iZ2*YD}^lCq*KInzYOVP2yDZlDB=1&?)5reFb$vj1J-8agFH2^KAIzEkmF z!~9y3ScvQLnpD6M>)542Ky+zTg3c%XC`}JP9d!il`;}+Im~B+WdTiH2{P2j!ibF`i zuZ;O$0(lx~LyW}*#(ur43GpPlTn6$>WAcspE%ReO(N@~UD7$OXki*m79*n=z(e6%M ze1!mq!C!XGMMNm4En+Mzq7C06BZI)`{UIfamKRGH$oNGFTvb#DvY|s1LqCCvH5O3} zqb0t0v*$F_cmDA~Z9XTK$p=+ZRl{}N``1MK<71BcreLdVkyo`|u3ni^^+NRoayBEg zkXoG&i{ADF(EH&+S!LdG?$vcsY5ZjIlk5cc_BpB6TXFY_aRxP47 zV6Pq>A`q`ihZbjq+?6z;Rtu2KZ_)0}4!Z}nyfsqVaW>k%+9#ZF*x2Xq5pu3W(`Jz8 z*EZ86wGSRi_{+ZpvXdO6VKDEyYRqd-bptKLHoy*QesgDaXMX-EUEEmGh-nVW3*DGS zj{Bky6nQ(etnxMfbF!0IbR9SCYO{Fqc<8ohI1AxY2!L)5hrF6Pb+Grewg4o2r+hq9 zZ*@IhN)8f%$2|}@lRZ@%PL}8AJ8%rN`J_Hi^_W2!@%0&P{)*`7B5jv7$#t zd7gnN4S!e2_{e45^(Y={W_o$B4ig^x5gZ!?WYTVX9@M(2`?O(eY0MPJZz)bWHc+W( zLU0Bwu)P2YYGytH-soy}jsYS9WFo_qGHB3aNobjR@;_tpNVj z17W%D*>W&nNUvr+G^MDXfnO>l#RQ2^Guk3AJk~!(@*G0@>`f==D$MWCqg|rGyLP?l3G2&etq;#-ujtD$-=kp`79i?ymap68liE#R&1=v=x;v24wY0&Qh|Ts;ou zz+SpJ7zIQNt+77eS5A|{p|~{g3-OHjxKy;VI7j}|FSD?InrDf@bBZ|!Uqe#A&Iu4P zt?as%@n~Ua5MwO#w0ra~t?{P06QeIZvCyCr2^8Z%kVGP{1w~Q|yE$(SoOHd_w>x)k zvWm_v0kxP@d>dS)c^n-~pgS30Z+0E8c9N<$RnX^UQ3)I3t?Zx-CC$w@I({1+dFCoM z1xRw*czDUguT<{y>bL61D6!UBFJ4@_U%YVRn!qq5S8R~zVQI!JmKM+);P>pJKy$3D2E`=x+kL$ z(zMa&l42;#vYj)86Tpi9t+xcGcqF6<%?EEi&SD&kum-kiLxdJ!oS=Mm*pmM?&aFTpmtf9^esUjDku0IhfES#UX{{)Fair zL0fUn%@?Sm?LT*G-}E}{&vNJ*d&w2$GW>a;6XW)>g%(#o-DTGJ zm*v7^hw0O2eLy@+F1!qeuQy#4NQ&>7bPuyd{6GOj@4vDz&r4KgU^iMBo>Uc>|1*%5w6*2ob5Mt_?dUwNy=~JOBR55|o)$GxY4JF$gZnX#zlj1MyHArbF zKmkuV;}*3KeXhDIVR~*(%L9dQCK)h>x#TMdz>#@kQWAdtHXL0E?+J(VCe9}T|7XdG<2oG)QX zd_S!$H`a)F z1^4d+RltHGx~ioBq_Y7C*H7UYE}gOqi3r8M2nbu*Sh2KWgw z0KtN@3MNS{4$z~AKct7~x!7!5riZ`OzZ}UySJ%r+O3Fg2x=PpN@7PYy@o{t4h70Q# zft$abu~3_c1R`a^F&{^}wI;798}}zaNd0a&kNk(3Q%d#d_x1w29WaOlL%VJ_@$T}>c;utp75Ui3wCjI2D2N{pa}# zKAZ6Fxw~?i8_L_gcm1G(ALPd-f#T~BrGjm7S^3ZES7WGo4SgK#&0}R#&HeAm5ID5%FN$3ESUuqFw8V?KN1qJLsR^^3JG^g~wy^NGgVr$?QE(WWj0jVvZ z4W{?MJj~|mIN2xhUl2YB2(_+wFFwKE7;kV}Iiz8z&Id#v* z2$l_v@310#@iwv}3BFI*2%kK~;&z3|;)N@%*5-)I@)|^i)qR`VnE|0i6)El*dv)8U z$;l+nLjh;)(@5bvU>TS6zfk1*Fgz5FVK!2xOpSJN=E5989r7WDNc{wsP7j8*lfuLH z{S8h0sf$tY0P_LXguXFm#g-~tg{@rugIY&|OX7?TRwJeO>{@LD6mW50@37wMH;-h{p2+kPxE9ZI=Es~mg^Om+IRxAO6$qp4cW3FOo?H2rp&$2y zkg#%nSIG`i5H|JOO6gfwok(Mx=AJyd9H`P|?Q?~K01ERVD@SZc^-N3nO7wb9aHzpy zE6<-({I{#a!av@Qru$WDE=fPWl%ul#fq8MZ!AHdXJ|Ld2HkG|y7B!p_87T_Cu{#t? zBKY+_gQ|67h8&Kzi7(9odMgV~^@?O&Pez@c4%QH2puZm@*A;Oigw+x8F}#eamR9&c zvFPMGv^U%lO7|=MFZJn@nMQ8=W%7GsIY@v=GpWmA3da0LBTIJ-7=O8P<};t?iWq}9 zL9C*i+n??JA&RoHbi#nrZZ`n+FiDQwr9}9g8We@u zZ#F~I{0L#bAGxHzjFG4vape*ir~Wc^yNpfJ^1GcKq5B_5j!z~Y?aFUX#%;?E?N5|Q z5rEm$z6@`nqz9*L{6;!P$OTrN9TkX64=JXnl)Hb(UUd{L{1o_Ws;?`Dq9zaN+S z6jd{*@KtiI07aElWbCw%gl}R;nMDvraa&rlAkrAjj?-=2NHC0Pgcb9V08IDLLZCq~ zA-J;$CL*n>%!Js&>N3{FgMI8 zBDA?I#)nkj2EaT3U!7HI12oCcNdhsfO!JUrg_lmti1g< zNl}I)tJXNOGKay>zBE>S9vlRo&`r!r#+Ap}vejH6l;b#U2^$XVg?DG}6O{oGl;5quv2qbJVdWUEN{(6bGE zMcKlZ!Su_>AifZfN#j%Cm^?rG{z#xM>>IbP(nvn|;1v1rA@e#I4BHoKQuL)&viL~k ztx$`0QC9e0w{@`nwlk1ZsV_?^1|T@CI8Y>PvR$RkKRMc>9#;l(S+)_>`+&o?({Gz` zKG%UcGuwbOVWkmiI%gCWT+Lx+xcDAj{dj6uxGPra1e>!BH`>l@4#BAHn1(J3@!$>L z)}b(OPOEqTC4%ul9S+i)F8PgjRy42Re=(5*i=-~73)`UY1;OB zcr>GNGvsBv4D=%h%80+n`gScZ2H+pMfJpL%Ql{%KljipW2yWJb8=OVRijm(-tEdT& zib-|V3T&;W*_GES#!@J~m~uS#^V~VV>u*vsvOn(`u~QsK9Fr+65n|!Yqg5zL*lZ)n zhxEQla~5d%bcg`%E83n|kAh{&C>%xh!6@vZR4a%G>DBy{^-9*#(85k$gNlUs|H_N< zjc#_s9%*}l3YCEqd9)Pw_>qtEaS@|u*i5BM(=hmTy1sfd#t9uZ9}aV954;>T7c_&#yS0dQAk=MAHy6^z!>B$TC04^cfuKX zXJ7tj04L~pOG1`0-;iKgB#N5QibN@K;M8@|$nUE=vU{a3uhVr{d&4A5T=)r#zYwF<190b` zL_O;+lQBch#$@UEKlCo`w%s7jYSEljV7r5f69s*tonw*ri{#!4(t_JEQK-%;JGz54 zYeUb?lXyy$sHqc<%6*29|GIs7w;v3(U91U_q}oCr85YV_;gT$HQskNf$)5m9?4TTE zTYg1_{m1H#-YI=g$?LtLC58p70y5=EkSuZhYs7cIz6anbw{P>^`*#oM`6(nCQ;riy z-fLFLSTShZ@O@X)8wf?!AC%3(84{-f!9IT#&x0x+Qj&|gQXUzHR-or2mi+oiY^CyF z4osRpUs`y+=D`LWDZ{Ikb8fKl_4z>j3Q`$3MC6Li;<&p^S{9U=C1>x8LSl^we&9;- zEq@@r_=T%?CpOFh4HTj;AKQAJ*U(Y0OEh4y z87p^>r4lzp31+V4{y9r%En_%xnJ5gPq+KVkNE-|SXB1L|hM^wDx+D3`Jb?>Y26+&zkkDvh%`N^CLy$K2t#4MldSBgfw z9o%x3pRyaTAJ&p`-8=+$SNDvQ`1WM64}=747^#89DJZ*kVDMO9hD8+C41 zjj!_(|M|qJl1@$Wu$SlqwweJX$2o#2=S89%%&MyC> zB3MV_=$9BET<3%wyLG)<$0Alvq8;aIy@a8#prF(c5GyxBt_B)g{kKip7Jt>kSduAx z7>(8?A{F+H##R=6F#R*xUH<%UK4AU&H?zKtdPwyz`3izJ)Q8U(b##7pSm6T}c_YB` z{Z25wf1Ag!Ij2Fm9-31NYRBy;oQC%WbcNonLEvsLFiIs`dvG>T-IXXB<09IxW0 zq0aEUqeiv>#AoP`HD3ZjuF3=~X|%N9q`Y=c+GM8OQ%0woA1*m$f26x}Qk`XeqDG+( zZOw^k#a@yumr;M@q-?oRSD;%Vu?v<^nr#fdOcJuo460)7qJel+uBQn|9W~0|6e&F3 zMPuGwXWE|6*Q28d80C%hhkMph1ISyio19N9;ZL|+!mlg8oYP0~G1gkUf9l`h7uNof z;`}C2IOclV6JP$&+{muY#Bin3+&CMdt%uHg%-oK?59Ng76w1M`X@(kb2*ifgZyq>1 zrE_*Hx!2F>eHl=u4fDVIJ^TJ`*kiNq&~i-oBkDqj(PywjDPrJZ9^Z>s`zOzu*|KHX z#(}gamsItQw9_v0sso^9-<0)==PbxhOcDaEs-})SHMXu0CX2h%QxE_ z-V6RKt=9YFr{Up^ULW{6xAQrd@t@KGHnIJmZkZ!$OQHDoNQ8$=eMxEz~X$Ab*Vb{ZxP4bk;0Mb?G^N#%Vf|JNyr?i zG&%wRkNp|_ za6Yx%d-u)N1FY}<@EF`umzwcDjntNZioot4s-Zh6D0iz0S9&n9>>bu`x*oOc4{_)i zV)@SJGefh-?mW=TvJ=e>rXLJHg@#=bwx6P3K8?p~)YZHg8Gdm!Q(9^y7HV^eh9*Lm z<$onv_-=7(#!^>=S5*9(a1(ix2Yk);{Nqr}Ud$KMs9=8JVL})^5~6{IzuvGJ+)XC=R~4{%pFzUfXTID(rSt{k{0V$;2dAJcMSy zCT@B8+r%yJH}OqI4$GENkUJ%Dgy5k$4aYjfy!X@}Q8YU7CJD-)N1pM?@=NuL{^m{C z>0?dkI@r-qCqpF?dHBsU=kKGlTu&+S@N=thJYr%)344BiYh6-UC0oPD&CTmw1wl?; zSz6jIbju4`pG8s>iHLcTe7t`eR3`tgujix-B`Knsf2E^jZk?n6K=YG>2OGu`2?PG@ z%_+C|LOyR~F6W$5I=OSSP}@b~K~t~7rqO77r~{ZXZOdRwC21-pR%^e6c1Mr~fSf?L}sUdtY;Okm*XC=zkXTwzh7*Fgl%`Sn6E-u54> z?-Xa0B*fle-Kwf6HhWgniHb8Xn*K~bA!tm0G5j#)@W3OV_%8V%(>j66Y={kM_#5`H zP4O3*S&zqvg^(ediB@K1=qk6Nt2v_Wh5QQH&V}gSlY0x8jdjbMJoG%tiNKJiX52`e zQ$5YT5}MBEdR#-}sfwps>@-B0R^{I!2>jU@+W-PdN}dz$3>eD~%jTvs&si9@O>fDx zs3m#C;A!6#T=yd?2!<-rvBuQZgKQRFjlDl3W1}dVXa?*f zig1I2F>s?)mu|f>3$`tdiz811hGRh`;-A4hze$rjYVAN%a;YgC&pz6ThIse3!cPE!xc!^A=z!^1~Od^D}G)ep1} z2!lh0Ra)=9V5n>u+?iILepIHC^4)DVjo{Z0=EAPMNSkYl6tH3s@R4_ZfogD{y&Xw9 zl@X;;*H8m(mNTgTj#UIV_Hf-n6Da@CTT5h!LD&*4w=Ob?TN;pGrLT-YhM4{AbG75t5nM;J73vdOD$xa@u(A<0Jn57{OHyt)vUQ zDZ0?ki=Ib>jU##%kXM?0(5v-fLp(NF&b=x0)_AEKsoR-bjPWB`B2nG4aeVNVm)a$s5gXf;F$=NP%>QQc!eQ98GeZh#t^|UKIz-FRl{6a~p z(5yUZO-|wDgw-xa?v!R&>0~IE^dsUeX#|idBp>6yM;R;kqRlQU`Cys5?QhV}--Yg? zrzob1b#!N{MM%_Wl<^?!u&W*+3o(!86|twGPp77~l6F{npJa!}wB=lx=gt~jT^V>% zL}qfu{7Qjz5k^gzUHspaoWi>+Htp+N;?v-(dZTTddQuqVmuz9@c+N*jW#LymQJAbVDNCVR#+&uT^Qx@a}p4QSX8&IRQL)Az5CU44(c-CMDi*eHk z*#v_3sx33b5NK$^^Ui6O_0Za1cq}gDyRo&WzXNBLnqfY!Nj(7QPs#`7l(xJTOV<@W zpUXlv`d25w`Bh4UV(l#MyN(*FVSxSTY*dtdtXFZb+gSl_hCJiy6_ObjiAN3bv&~n~=0_2F4x%7=;pLfN4`YF4&Kwk8PG2F?i2CAh+1~QguyDk6E9} zz2*Bw_6f_f%&mmj!$L_Z65Tj27J+6~gOu`!2+Q>sEDS7@Djhv5!OhA+-i6^G8!KW7 z24Vb({Pf3O<`4A8Sg1EU?2v_-q|}iGPX6reN7ah+GXzHmSmB)v+pgcPd=1k#@|g3P zC;04lx-chlJ2MLt3p%mV3HM@zA)ix_%BDfM05qjErkw4bXHSmOjLsDLJ|h zuN#ynKvKu{hs^#P5i|spF4|6$I4Cy!_(^x{s`Y@+nq%iqZaf=`T||BuuYq3W0F)^9 z8ymjRKQF0b*PPd_&75xKO`JiyeqIJf_EW13H`a_kF6x zM!G+pMREChxZmTSH+S!KgXrcB1Vpw3Z9^qU$<@T!4y>qQjO1=gUZWw2zi@rM*d{q+ z@?=MZe~UWfiy$dN#Uf3e*o$rd(RbFTuu*5fq%dp=&Lek$6F6^dv=&&eLoQSrK5v|= zkL-V0G0CWt(#mA@#cq~;Gu?UfE#on~@;qx45_KGI$!|L~g2O)*Y-b*(%8)lx-Uj|1 zMv3kk_6%6+t!ZHDaukR{L_7YzdTO!PebK1A9*PWED!#%BLo^fWdHa5uZIix1w*ps@ zuTy{(Oc5Yo<%VC`>**ozC{=^f{Y&1zzQsl{K5#gO-){l<^E(>yEay{ZEw|8RVC)gWLJdz`VI4Ap6D<1aLs>*36 zS=RbbbXf$swT(IFpuy^w8J+DevNN1DljgI=PD3*aW-QnvAKoQ)l0^!o7^DKZ zqlZDGhBo_mOLUycoyu+W52@cnR<8B)7Ua$?PhyjTv~+?qpRpB)2Pj(O4!zaq%U>2_ zS(Xd(|}Wnx$bSOk8&l>kyVJTrhWL z=If0vjM8ZP2x1hJXgSQEqwmk1`7q0lWIyE|Ug#~R3tPFBJ^65MgSt4jSY|y)y(4|I z*=!}-2+J3{3q<(Ro@gG71u=P#z%*7e00C>)K2PO)So8R=~<{YSjbZiDahvswQ>D{YP zFClPr(hZw;xxtWDvTI6fbJHYA+!4dbENG*WY#f~Rjt^fzxr7ES#a7Tp8YQmT-ZpR4 zhvrC`XSe?2$Al3W(NoO57cI+IG_9oOC`q&akUYU}8res~fG>M8WOSty&)RxAtGm8LimoIMhn079EHejeW02m`RGiBqppzufbc%AC&D#-sn-8Y;8w zc!>S>fHSe4FF@^{x{g%kclX0>rnlH%w#?W)-d@A+(?w&q+B_dmF17Jk=2GaS*&Sx;AEce6^LeO#OSgij={| zFmR4-@}2+R*eJ;tG@k{{UZw?JJ@!7AI=zT_Bgqupl`qdW1K1&gd#TCmV%W2vq@mE3 zpTOhEt|`bUCH&F%pt``sw1Z*9&=Sq#v&oD<%;M|Vltlc^p4&RtGcNGED_5A1`Mp~^ z%k(nxZKa*ri*hSZYEFQ)Hnv{HQ~26Y(&;IZyxo3&urmAOtt@#wzI(r)lPr~p1zoH> zcAmDWll#=-dN!UR{hvn57BAOVO-OX4>bk?$nf=u$(SQ$sVAt2+mc&fALVfm5h2M@= zEc5(`#pv9{URYW`0cZsgJeQq7@PU{Zc=I3kE2vf+S@~%81w%$mc@+|KUbgkuGMEybL|Vb<4)C-lfIl^?9Ex#p=pzb7A$P}6aN8E+YQuxf-N>C5UF&4hItsaUNHGuaH{~k^7{2Sp*~0PN z+zo}5+F4u1pF>AvNfw9F)yR( z>0tU(8fZ6sE=}!NdhXUT)Q4E@U-pnVf*(!pYHqSqDp{>MujtSd&e;w31vBehflUG3 z{u7Q!Bv=yso^@Qob?xmj1D_1I^CELF$Zia}e)so}uYzTp*eXwcI(G52*o4J=*|4Np zWfjH>nFR35+xOHM5GG^n*ng)k&4Jr6bPcu zcVEA@)yAGdkKl(wI6J=H+s%xpI=U#;aBwmbLPjctCN|!TB-a2g;yn2eZ{iBvIbxsZ z`MBL{nX_c`aMjoMKC~5_u8aBf2+ zL(cW4_8qa`)vzd7$u~{aT%WiYd|{m%-)ZEh@Ti0JQj0lUwv4dFE1g#96QU~<5qVM` zmW&y?POzlu9eRypDGW)bkAxWr`nHv<>485ro(Uc+h0!qmqAa$l36V8Bcg4c(5SaxSG=kN;Co0}b41!x2AuFrIuM zM=u5D+GW+1 z@pd~UKYSG{CBz6+J<C5?D?=b3T*4GIdT~x*^nQk3e~7{#Bea#DP?t5r z3>9L_RT;G=U?^F6Om1IYZh7%Mk^)vF&b&phnx1kq#T_YNwV-SUVnVcRGC_)!JoQLWTsH(9LgR-N+j2z+f}O-$3#aSwlNg>lzt$= zxX5{LCRFt)u;`9%@y&O6vQ2ULyED&kGZt%vCDBTDfuJ)Z@qVM@mD9ldMkZ^Dm=DgG zv=nU@oNcUokw($~GaSfAeM?@-U;`IuLJyGzeO}ubeJr{p?LPU`SM8p|LefS?*|5?{(?-7Hs_G-e81bn;YYZ_evX;d0@5>%GIpJ}> z!r?7R{+sCIDPl~nTY5n4qYbx}8^ebQA+VGP2bL=@@4G;shSGsTq49&DzVfRBg3n?&=}dEo9a1}nJ=xPu@Ew;={}b} zqZ{Pitc@;x1l%ny1rFB^yVly-oqZ3-ehRJeJ8v9ZFkWT9J`3Io_RJb-seKz_LQ0pi z=7213afZ=$;`w@lRF^Ke#IoJj%AQz2IQ-|1iqO{TuXK!$QdN5N%4V9gOaCV?%%qu84i3wRv1zaicy1}!IJ5$Cd>tDF5%l65^n0sj;Fr9?ByP8tmBj`@H*0jvU` zG$REoK{F;Oq$2!zQdJE$2cA$SukA2&!uI{h7}974)rm(0CG7dk8W?N=HZiU60zPn> zaR*6@TqDqT7VwEajhlb}8&;>cm^4}H?TEUB4e{D*EVqWzG1g)LF&G)|8e&!-qjsp2 z)q7&Pmp2og1&zyS05RI5o^FhUM_L(iVmiAhW4V_sOx*gPOo&TZ7Rp);dXBMw42lC5 z5LtIhIQ-FBxS-Pod5I>bMNUJ|FQYYJO2GfeAw4qPnPbXpJMe}T++S9BcpHoYFqT^p z9^lMTjk^`-Bv%9j;>-@m>RtM!lp&%!8loEaH;jn23c&*wu~e4^3}`V7AJxSk=~MZF zd$A=WKmmvy1F}@tT31hw(L)n}M|w8J?4KsI$VLNEimsSrxeJJnu?K-p|3n5YXNTZr z3@Et28I{k2m&|tFj>#@sMa4~qqyWf4;$54li%jMc#ip&>d$Ar`G1I~_)0X`|h1Ai1 zF^6HKrlo1P;!OTi&6>GAKYIquiD%D|)tlD7#ijYauu^^~O$>f0u4fs%@sLRI6dI0D zg+K&^6*NeYs7hwrie(lSrm*~5Hf**jFLFDuWSA0T#PwjrQSipH`@)ots`c44Rb7_e z@U%K`6@uhH`q3Wk`9zJdx-2W`)mj~i(H;SHeO~z-A}Q!BxXJ9NR8wBo=Wo2v&UaIX z6hOg==}b&~V!MSDX!Oj1aaDGZJ!p{wd0J*(&})s<{g-FGGNK8srXC3V7gMKFJp^%+ zU&jkn^FdfGs1qbhc2n$0cNu)X=^w0@f;G~F6^Zh1ct+%BnOtzIRM{RO34F zj6(0@(;`o?Qn2@?%GWAQ-GlrCgj=`^lVp(rhIb80@jZmTijp;$R&IHX;fpKOG)-90 zauEwNniO@evkQ?G5DYh2ouC(~u5!Mnwhv9JD_!tqrhOqQ&FDX`v1SgK$>(rUk`r%M zxNFw9ZubuOH{_AL~olGIJux1qk&UZrn4PHu8@D)f3IHT8n?|ajXLk(i$|}msj)sAB?CCT1TKQ~ z4}CwFT5hWkQs}$%K{O0sG=11}w3s?p|H^QFDp#pzi!?Q_-Z+|%rLiB}Rj&8|tC-qT zdFwfw@f-}2cI^DTV6~(`J<)d_qUSKs2?U7JVK%_lnWegbo*_bpD>57dcSE%e3p^73o$e%7YmZTBoM(HKefqixHSbr~u2I8dMBxw{gTFgV;mR%m#X z`6!cCjQs(ko3fIH78V3xU0E!}>FG9fMg32mJlD2^_p$XZ(ncDD_y>LINdy{PO-0p#h8ca4TleqXggWK(Q!S#0uE-iCJ_dsoc03yi7yi^G!Yg z$^>UULRxH=h@@94^&LyERR3s9Y$=^S3#k*;CghsJD*@kgq(v@|v!D1)rE{X;bvGPC z*KR*`>2s6oA!sqlk+#csv6l__E^1rELqHMckT^3_5srWT0wf>+n-OyaIX^OUIR4! zmmo~R?>ocXZd*Z&a*zvLJ{FDxzxuY<0Zqd>dVH&M?`3yD z^bND4R7oAM_Kow;`c0o2G+#NwdF}GS5|gYGPYdf%h^V#y%Z$~mW!Kjc+-JcP&Enyk zoSm%AS7ZNZvPXlzAdBuf@|EA;E7d+|M|Sj|xccI1^CM4g=_3NH&VMf(Jr(Rb0#oNRU00QfPULSr3lyX9=o4Yy8-b4dCpkjHZ-F==B zdTLknSRVgnxt)7cTVV4E_s$)pb!|_uTa`XAHX$Y2uTv-f%@eS|5ff~zX_}ssKItsV zTLNxxu{SZ+oL?l@twB_sVOf9JAa4omi`(epZjbZ1_3b^gq(W15-dQGJjHNbyCh7G6RMTT~d%kk4(Hzt13Lk*z)Ey_~?77 z;3v^eN;I3B^%!K6vdlhi?oIemN$BF`y&#u#ld4+PL(&6}tT3bgEsE$|~gGvjEw;YvDDx1NU9^)!S9j8#A`T00R4q z3zg^@NB0XFhxP)QQgk{#^LHjgdeA1Km>j}=?vFzAqxeik*cF(n{o&|DJ>q^n{|ZDr zd^!MDe_Kgz87Q54LHXyEFK9{?3$~IPWooPQ58m~;N8{Gt#IrgQ%cHC=AobNVu=?~1 zqqkE~8)%Uow`cI*qqQ__E+tR3C>@?t|4fVZ;0o6Qb$m+JS{F)1n#nAcQHF3 zH)=%}m}RMD)fXyT*=$-oFZVZ+Hkn&wP|Cg)mJ2%Ze1{9JIDu*c_@n{;0#wr)wW=MK zPI+RyKYb}Is6^Ke>ph3CtmSA#*CDT8GFU)72Tlx6x;CS_Vd`lJZ6hDOH@jHUylqz( zmy=N(jzmysy2VE`gnw>y?K{Gt=CrR@(Rro}y+Tbq5bJF`<^o?IK8CyVUZ#opTSBjS zoc8X^@?IxqCw&hCVDor??%lsk%G*xwOqpd@QQjm@+WvV{z_!chw=#?mLfJZO!eDJ^2z588urXzw7G5Lhrac#J~8<1N!2`ujHt8kK~#| z^=!tkMNx)ur3^<@qmSo$=ax^zEJw{9I2JSTW>?w+L3evi=BkNQN%DR?^t+V zAYtlmJE)o*gmF{we(nsRR z9#b;BbqIap&Fa2&DM~V8@7&YrcYN)S7Q#&x(Td@X724)vUB32C4__t@ z^lI)m&b~Ku06xoF{jPi#&&F-urG0N}D0Plz<@1s#(Phn`%TTG;Lm(qC#d@m#GB7eR zF|m|HJ#P5Chp{{PeQpZh*Are;&wJ6ZSAz;BL`$j@S$v=EKqu4^QEP3^F%#=y8O&`g zB|r6odFtDX3Y80nue@Ipn=2(?YGtzx2dl80c)0QeuU}$0&u#%-KCh{1pYL&v&10RS;KyG4cC({Dg3P2)X%msMlDZ?acgi z-r;$1UiK#^63?L`@4bkvcX2Q}71UiMhYsVNuyC^LXXa+bdzX=ZyMX=3#il!5voz(E z5@@FhWB2&_uVB$^d>qZeHdU<61nwUgqWmh>{TxvLY;UukJs8&m9VIms-eU|PU(xSx z^oR@gMXvQc|H%T?@}67go$BqVzuq>=E??gSKQV|ZInPIy(73}5(2ZPW3{?JQg{0dX z1K;_P7+XipzrgeBjO^s*Yr@qT!#I18H`o>6TBQE=@JVahn5xW6+A!hb$DF`a26mG93vu5qdmp#AevW(w<3NJm ztWcKi6$%AU5Lga_PF&d=K{XCNGg|acKnWiMUWq+U#!r^9P83T{+(X`Gk#~#ynw+;` zYwq4G#fn34cP~)f-Jxi3cTV2#obw|;a%Hm5%)R%{GrK#p z`?-SR4bOw8xR`7lvZH(DYoK7I4vwh_8Fh5x6fw(_z7cfy;TNQtOja%B&z`XD52P`m zkP1-|2gjYJ{Bl}pV|IswwDwPA>$&MLzolX&<(G0f879o`-GcgID5*-;^d0Z1=Ce){ zOBkyBEQuA^K}n>0aq7QABy_u&Ej(t(UxkEE9HJFp&81rdIz>uj$8Im%2 zi%l6DqZ&w_dey0)&R!J#sJaNBgeWgYKKyT!xW8hTeEyqVZJUw~wPfd}oE2Zh+@N=t zUDViGeSW~T@QaiL_8$c=(8jY41_heYe^>$=rQ&7Xonz&uDZ|qCGmPiS?cDe{ZSJjZ zny#MFWnBD8WyeNkw9CHeO7KC%Kf6YA@Y|JJjjbLg^+DKzQy_^xEEl=dg2(K*T#@{| z%4k0A3z55wlVHx`>|tA|q%Lqk{+Boq<#ey)Rt_?sHw!?sonW^Sh6v47;(EYH*CSI| zcGt{k<=V2?2XL7E8e0rMZ7N81I`e1d>+hcNMSw{1sV4%v5)D;)HM*(QLm_jm_V=zc zhpLt2ff*3+E^C2n%e+uP8XN-=6(ixUcpR|lLhl~@*57pFR;B``)^9X!qBXvd|GU#@ zaOaUiA5T_2`7-mLp7fm*C9vv2SqvSlskl>vWF)(HxsX2My;LXlyR~UsExdyW{X1Pq zkqD1_%GQar*n2o}%po$l%{-V*9@j;utGUA#khdIJPFg5JnOHGyB!|e`F-v|E--yTW z<4WhWzo#aPURp|MRCur%gePM*PgsP&9{kHk&NI165wnBHAu9S$1Zg}SmGRbf=Bez* zG$dOI<$uj&Tl}Llz9OyeCudYs3^t}4D!lKcN*ZNVLQ`8&zW14%<<#1k0o?f-Y@mSRI< z>A#6EE#`W; z?fg|^qj5*xy^~2GRk1js8&dC?$(@(o)?&)x{`8+zZEYsIVBuVu?WhJ*I zWL`b4eXIPo*g1!R;enulxGL51AIQx)K0D0~_n}`B<1u-h1l(?_IdufxS;^lv6_e%n zDn&*v_3HhAA#&h22(g6a4;#Bbn8L1ny@%g7^oH}A7foDDRWo!T4b9%aR&VHJE~;kU zVkmsHZZ;3e~68Gq5=dP5ZVOKsfxb6-c0qJ){j+p zKcASKCbJY(91poK&FkNFcp2SJ4xWh;5`TW%Q|Ug+Ii?^RGF6`3)V6$k7+B&_wuJLH;JNC3)Q2|@+mS~~39zZq}2C{vp~7Y^cX(tKUvZ!`pXf`-EL zl`9Z->j(A05rldqlYes+y{Bmiqsk69=RaP{&{{JlPVrF7@&3P@;?4OaE|tW(5kzm% zdba%nDU1ebvW&Hyu6rJmErp|+Ja))RYC^Q6BAt6y|0fc#^N3@(O4Fb&za{f*#Z#gk zK2csOF8HgJ%Gl|%lG}>y8^O;{H31(^7k*5Yt}|iQTfUcXb1Z)ZFIua&YI&=in5_S! zrQgGOiSZH6eTRhmP!Ol*er0QH(RT=& z9UpF9f$oR#RhlP@9}^orH#;UB41Q;)!=hI@`ClM($aH3?ziY~Tx!uQ_2&`*yz9%Zp zbz3|>)@h$M(2cye64=#*C>YSt@`!fz{7c?K+QQ6ir)jDCV`l65ruN6ko21G6zqN-h zhuxLu;qE{K6L4ID;lm0o$vwoM;nMAn`O!HTmQ3;8{gZsyxN`b%UTVPD%nU3>Q5Ct& zbT?1oEga-2Zl2G47vd-VbnMp$rUoE!gAUs(7bPAQOy zW+&fL(?4`mct7<`JK78KlNJthrJu>zPXtow=^7de1^QowXPu)_8Gh86AQNd|srHBj z+#vLSX0H-`lzj+mgLo{q7mK-}focODX87U7iL8Q7A{?|C;$xQ$#Il z)SnjPzk@$VC#B4qluLMA7?=mm9d7t3a~>MMWG|0p-kk9pwO9td2wLZC8T&aXNBWgZ zUElR@FULe(_7yI^8<+P6!r-9q+XW=!J7noD)n6Y=8*3k&ZQ-rIaB(>p!rR$I%>)9q zuP?8OHuY?6Y+GE(P1k3;^L@sy3pzV*|H&d9<{esr`0%T89XVfAnO8kHZR|30aPxd# zT3%%zEY2xOpQE7}cOFtpJi8Vh2bA>rPe`)T@q`(@vw!&>|BLDT)~!2In42pe!xA7b zc(Yhc@T6KE=lQ*%pR&d6<}qei-dGI9s-&b@in?!`58q>9b&}*~${cN551p%Ae_xW`^QLb^xA}&D+BMs0vqPrPDgDKQ6tnt~+}AvuW(;ul05-OY@x?}Via$vy7T2$0O<~7g>CzxoucW?qo@4Tk*Kk`21 zh&e0s#%T4|dluSz4)ekiQ`bB|*7|uE4bxmLd1>SCd(qyc>9nb*=XK8Qc&5%=7hlxQ zu;*)d;#8`Z(sU+5sP!`bie+7fy#GZ!2jjz$pv28p)2Y-**dY6@EK`yoWqq8i-M{&) ze^U=e!IhK$77tFl|Dr;5c${>*g?vOSaq00j`OjF1gMfG#n3$MfHKVkgMx^eVakTQE z+4<4BZL6x@4kwxe`{+L|*^W!SV=kM>n~H0Kj8}EJ-`g(82?53S)86ata$}w>VXEZh z#(dAmZzK#cqE5>eyF}vIh@~sou z)PFVg;Ttz*^|qYy=Y!R7%%ijPW1clh1*R?lfm3nUR?{?EuTf5)?TKZ7|%_{i#g0yVSR3`576@RE9o%8qvYTV|p zBSei}e&@JEL=30zBx-tD=5UHCQh+60pI@G}8cl1sM7quEIJhjR``_^T{(vViY8fqR z5iq+lV5Uf`0Ad{R@P{#$_+|*7Kk55+gkHw}tMcEQV#q6RUpYb7OwSU**zbJXc+Z`N zew$%_QDOdhr`A`u)U9p_);Q#KS&O%GR$tL6pGpalw}WabXo2Mll1({jSgbXdey2Zx zaEg+fzf)5P0b@IpVlj9j*RG0>p2YZWBV;H2_dDCKJ1@>f8hDZZ*vW-RHZWhA9UKq? z(9k?)WMiM>VoSe?z?4VJ?p3q;T5c(0LNmUI6q0bUhZyY5pR90eq&{lzVL0{K1p9Ri zmIkCSKcHuqeZe1iB5NCuiIjjgdc?!4L;lpx82*N09zlO*IH~YS_gw>ozIj1vDRlLFI zP5BGd_K2?+j+PcP<1Y<-KX!!J`2B|W*NWi2_4?K^IGo7%d#wbL=T>$foz7JME*lZF zp1e*>{oD*&okOVwe{tckyZ^w%o?uvJescr^q*VVp7}N;XBdTn2b>M)F1hPe-J{a6l4>*{nnd|y3)2s2!bq7HjRKP zzfbPQPC!dG8O`UtPb>-{zzqb?G~tfJ;q0x4Lu2$*{=myD+8SHvw~~<{>>x6euePh9 z7dh<3xZvCI2uYI_lr7^aF}nw+aenV#(IQ_dl`k#}T#DiNJ;KO671)tUb4IBs>-e%OtUNC3t!RT z2>V7sppE!Ze<*s8b9UU@DmRD z=khx2Kojvl1Jc3s=&+BsSq;8JeS!|Y2@<( zD*Dg0mJqAh)#h6To^f9fOSi57=P5b1DQ5Q{6q=&J4khDYnO)WwteVi*;wvz9PZV>m z8xz`DyjWEdxMVaos;E9u|;P#>nf)iA$0*@k4C6m`;m>p?O5bUoUcqHDD5 zV;jDS_Wc1f)8K555Hv|F%yvUry`7o_BeKmu?aCt!bh;*GpNSkc;DhGoE50mJjfwFG zLo?<-q-yEk{>%RrPD|~38~f|)V_#fIFi5dOM?7!FdZEz+LhoKa7soMds#s5|25Lr| zmr1=aASs>B#CThfrjaHJHpQJ^jB0j=@~^y9+@ObbtY4MH2CMy|NMO-LqED@FEnW5( zgEE~A%(mYw!3Q_Y92(pt7dx-0^Mc&~T3o@K!a4zfZ&d z4VcyE=HqjRjPGHDe}htzleeMmglDPLO}D z4BgUUQ&~?Cgsp9wjf_Mv1pTS+KM5vZGu*x^iH&Ef+>-30&CtQ2w!0p#8NziTny@WWT z6Gfo%#L=WrHvZJ%6PU+gU6w}b+kjCvI%B||RoQ`dcO_qw70;E~4eEL2-d^PPl!eGnxP0NQvi04M84Cc>l}ClO zk6{-{Xvj$33Fj2_1pZGK+m~k%s+>+DH#=ppC*#IbD1?Nl%2g$BIT2ce-~1v~F@W+w z06E_7%_47|np|)1A8c#%HG^3*pw3IQ);TM=>_BTVfR??Viimb_O=Tf_5K9MLq$a&WAqSOc3eRH*D>nCi(N zHZWOS69xU%w)U&3sR*eVgP&E6wP~-2RNh%D;#&m6g-RYdh#5_Sw8&T>3|@QV%WY#K ztT4LZ>zo5yOjCQn5LRo(izw8=74Zo|9fZFH?*7G2`b|TM2wQ zKO&jT(wMOx?CtgEdu8;41WLWrorNR})6YW(88+`e2Y`7*pvtz41)JmN__ty6w@g&1 z&)*`!yum*|?SI8ZxW?5*YODGEggL^?cq)P|^bd&=d81OOCE!e zM2Qz&NzNR&dnlDGkAHyma{(Z~p4x|d0J{0*G)lI;%zr&`AgiT(_O&#n*a9+F`Y~MY z&EI$d16_Z_HA`TQ@j_xs!8HkcDY4)6GJ2cSLlq(W({Gg2z%u`5va6;P6t1p1G>oJJ zd%BH!C}a+Wh@`O)mLqrIpCoe!N{!Zamwy8fE0>njBXUXz%)7?l%aB;O@LA4N+fLNN?!(7^MrxVjBnbC88itYT0qk)XaVxvU4R0(w z#7w;MAOkPYkAdAL=6mnoPD636#Df@Ki7t$?v1N1MH~J12OgDFtBZJrqbaG=>6I?Ti z5_(3oC9JThu)i#tZ|r{yd7pI{>X3+=xx$MP{3?_&+T2|iDsLa%yn&PrV$OAfK7mn3 zs_UqAs%&9`Fa+8Xa4b6i0MzNK5hZnC?yuWF;<~yGbMtbUQWeHm1+emA;#`HM=|uNLsKmbG z!9-Z1<_D7REy?u5Lc1i871pwT*PQ}zoBt`36f;3VQHVz>RYgU5UZVE>q>EJd+|`5n zM-U_Fr*jVnTU{_;FPF-0d4PfnifOaOYw{iH7 zh;-E(JUE=D-J3?nnEZ45&z2{<}jhu6r)OQ&GO5;oF%HkKa3~RCqCO< ztsBk8k8has{?)DYCbupjP@cR(v_I>U+&-r053R1QUZiehRFxPNqd29Q{uNKP%ae$1H`*m+V-dlhs?hs@Y0Gz8 zDm#)f*NFdeDrtq7xEyOQx&zaK@l1I$16dquUs;W5IzY^;>&K=vZ&w&}J1b>7GFxJ3Fb$RlK_n)0n4Bvb ziL{reY635sA`QOZWF}b;1v&@fxKE;Zu4T|ocEitsPczG_`OqqnPfE(+#>b?g{9bH_Ync5&jw*>F(F% zHOBl_985Zi>2ZG?(e+L``Fqt@cSHcPRM|nW<@YEjhCWQR$8IdTKK$Rx@NGQ$wNWhI zA)h0Uzx7mxB4qVZrBjkUnlwJdyK8tdmpvV_dN&f7_0kyKFNLm;1EH@r`dv^Qav$voU^(wal@SJoS^3j)RcyMx{S8@i36 zPkInznux~!HKKd<#4gp~4^O?I?i?+_5fPfJqSJN#b^OoZ_m_!{)<(QilJAPFl7SH52SkQM9O2b{Zd)e2>PZUDeL|9)+>;({W5x2kF2 zUi;!m3|`8qn0J2dWWobw%0amDKd>@~s3Kq{7Fj#J89pFb%b1kPg3&AD3fw}_mpF8WxVb2=q&H7&3f9Tu zuj9oxlOl0jMFiF~##8GMxVO*I^fif@)9v;Z;&^RFcCwR3R6EI!3lCp!K0`L7WEMtm z&l;<|lz3;)kkx@==!dLIBD;6BUxSR=RQ4eVmGKy5+CGw6)wp+@C`q=Yu@So2(yS@v z4jJ~}zd1wH#x1ZbgRx0;qi$sO;sTVqYZD;L?G7mib8Gnr6}^ifT#|`Sv@D z!{Hol>VwRVI}e0gCL}LcXMLNS59i^tM5KWh^T(Bsr`UlK3^4<5XQkkY`$Ht`x^d|5 zTqGN?j_$sFx62b{<;P-V#WWn*kN%p;RQ7|R>^UZw zp{#%kvG?*b^(7ynA1RElV3J37cQshOSmv-YbEw(~OFy?!?czzI< z{rdTdn?A%AA(XDKyAb6mD5rUafTp9{lD%^2wdVla)0TFA2Zg(V*fV6TZ76SWk%jR4Uy}FqUt- z)^EB_StY=73XQB-MySrqMtcP(Pe5G<>tqeQ<=YU(&F#_eW+OOc-;i@MfK=(BY338l z2-;;=Qf12bq^~X-qW8a*-3-cus(F}eU`f$c?bUrR=*kFDU5vQtzwmTtm71X0;emEK znBl9Gff*sG`+n1&MJMlM5I7H^fNIi+mljc-_?^?8cCXi-DTu$t;28a)*__db-(YCi zjW2eL_wJl01Kp_dB9$ma)m8Y>#64IAxf4##R)pUR29`uIS(6+14NnbopN*>uf3Wt4 zBn)OPEj<&1P}_f2kwP_fU;3+uN(l&xaB!B;G(ah(<&`yOhZnRrt4vh+Rt%Q-uJ8C! zVmc)?V7S!H3VEz}rs86#MDvm?Ju6h8N}_{M4ZXYQsTBnTxi~lhKs7kvBn;?x^f}lK z^iE5dr1#N|icTeNo%1P@TAZ?`KxBI38zkMD&yl3@!>bd5{p)T7?MQMVCKJ+CQHbMP zuVk3HN)5~SU4;dpSC|+96g14At)>JGJ3uyZUmqC5{nYMvqKxr3skRljUYSe?$!uC& z)>^EjR-aTWyzL!1>%@XIdH=UWqS|_ioedAFgO2cVuJ0-gv8kE0hNq8OkzJ9BWmEf# zF&5CdX4|;0tH5}_DLt&>L`=^qJL{rdx06jodUs+36j<*SRHqDdA?-bGd+_Wsn)7r( zfDv32`!beo7aI&M)t8u<$mie7L?!e$#Hnlu!DpJ6g6s1T!asF#)F{@-G9@(*DVc*3 z!a^~PVzx}a#i-o_TSw(c37sh z5ud=+AyVy@EbNs*=38u2ys@h-r=fim1S&VdGk;RYC#a+s3fNMuk*Z^PS_Wf}` zP6S2BQ+O!3j6yoz)jZ_hRc#Hzf?Tf)j5XFcl8RE))%t8yDsTDy+l{$*&K8wRH&hzT zZc#gjSH%iVr1`A@-^IWTgu2W=B0(naMDRP49;ncJrRkVSZ9c;3%2(UB&R^}QE4Yuw z3UZn%B)*Hqg5W`A&*gT7%6Cjaqpn<%ilS(`?SuM*#dP5|L?D5B7>GZFLFOw1 zqG$7A=#OYiTBM9&Sf6QE;5p`sA0J;8tBVfE)ZL_)Sa;4{r0pu@4xzWw$aTeC+HHo* z%u3bE7G#9?6~t~l*gQ8f4Ebf`1cVBNBgkWjV$hl()5=GFRdX(7xQeV`BdlDSBBKUk zAPkuJu50fcZPE(hv0W#7EyFa4=we4;4pJ+{m0E9F4W1P@ATLi=N0rD@ZyxO9|JLQY z!P)zkt`CF)am2pzX+8zieuGxeV8{$_$VYGhQ37ckKnqw-8RbfxdHEnpkXjf6OPNHf z=}Aq$sdJ{Hh}7?h8`IJ|@54xw`CRGNIP(dH%8wHMdd~~lVb3nVR&b7__Sq;Gs(|vt zlpz{RO`c<3Ga&2!bn9*N=Q&2a=eM)^R_QrY*=itO0mx73?r62kI^j&fw-r1mi9gUO z3xvvI5ChIBd6<5j@5#2SlAn2JmZO4@^O1pNyFVDTkfc2E;Qjb8w#IW!mR)xsUFsFT z-2Bw#R@Aoc32;9ri~cH1t7zIQfeT#7UevXBUa8461>4!id1rM8n-fRN*U zOz7UQUv#)KcPj6-lE-ifLmEqvC-f-HrQK_cD^Or;<5mpsKcFGT8UJTol5A?FaRLfw zT@cudN@ZiDS8OI*Ng*{QVXNLeyPX7{-`n7c z-gpI<8vB&wEuejmr+V(Y-ge@C*1dcmB1b3rOHSR#kxp3s2wajNRNAjX0sOiJlGmZt z9@;o`Xqh|@iARp@nRm>C6g2Q$j=nSeUkc#@;VQ~-cds>pkbaZEBhboMpwy`N({MO= zND(6qD+&nP*rD`mZ(h`l7AAG%p$Uq#5GL)!RCKF!`;u$OqsR1%?GiTqDkbyGOS2^t zFjNTnnx+j)57K;q>-FIk*6*-m(&H+(lg3+c1+`mh#;E}n@lxl?5z0^QcQu=SBLf#8 zqcKV@|XhtDzX1r z$}>R8?(HeVeXE$qZ*sycjbLz`| zU&j6W*6`7rbTk}{G4{WY)Xo1LlrCEhWzYhmfz)U)+klYaIz~}{>Bpyw$oM9UQ7QuP z*2Rw}3$PM&m`R~&_K6tV3wxf3GkLKVOJ4bRSu8G*67OKt0FVL-nk>VGREXxXU*Lsm z5qGIF0J-(@i((9XSTznbjAd%UCEmDQKkr0|EzB+m&|>`U zb}=362@3kjInnf%_3`miY6iB%%7t1FKv}aNJIhw5%P+wYk~=*3NtV)nG95KFWeiyQ z`aGG}%ZTQNhf@ejsPLd!2HH2jzQmk>7EE>EeD!cG*%}562M5m9_2|qhF@(PD9E7Xu z#I@Va1CLDSfrZr)Ipu}Vsq$~L>V?hD%p7n?x^X)v46al~+i!-h%Fx`@>SM34J- zg`e(^z|NGgXgIqN9b4S-eA4d`6&R&Fncr>?2A8~QLie?TnLU1=LUf;WGz>mihHMy- z>Q9@Km=qmiRiBYQ-d_n@X=_v2N}F;63^yCB?cO4+F}`>#Z1or<#dKQVAu=#ZIT}14 zAIH?N8Y9`4)m{Y~HQCLr5D``j1RkiFCpb9#G?r-fwAfx-Gu0{oVRW~@mb?3m@gQTw zeF9R~F+(Vk-;Az`_^**gsLeDC#*5~(JBHSKHPARet3 z09`97#inpURj>QjI&V0JtFyJEN1Ub!f7;tNFc$S?!;z6F!gzc=7%XWPT6_G8#BC&^ zE>8(9u)7yS*8=gLEk5kp1Y1I#Z%Zw#;oWr-9MNADh{f2qf8INhZwj>89gGR;l<$G8 zS$Sywtt{dx5*}ZV$U$TM1!Cl_Z+3#$nMkYkd)}4~S;NcgdXY7h5KcjPqFaU?9`#NK zV=<7ff&R~)g|Z46BWXy5rVg5r_rs2x{+-nSG_|G#6gF0J8GoR8HO9kot_o0iFW%_gL?iB zu~66CKRnd5BwR?av=oQ{+7*n$4J1y_;?_h(Fb^5fJ+YLVdU^u8x_lnC^3-*xzW+Z4 zLDcgWTL!Y$kcG4P`}@0xD86d|(Gmp=(sCDMz57e^AF_ z0_-ov*)pI)|0)&HQgPs*eh07wH*?~E$yES;UgOl#*x^vErcDxI${;xD&Xs zxc^*Xf`X%h4&Ec%zJI5tFDUMp{O!7&Xi=0F=f($yVs`SqmBEV=7h90I{qwLr%^J zO)g_61TXza&b5D#3426?8!_F~&aLrc@-FYOb}jpyX)7)y7t#5^3&A1a%9lTzWo+YN zJMT^>B0d)p04c<~DJiEiR$W@C$K0yv5eYo-*Tn?{ld3%H`71y1q|f6b`duGQT7bdD zj7#yPf~kY9fZz)QlastyQkCy^AoKy>RYUzq`EF{z`^&|+27-5ifcM$`iX}-h!1jgx zp`Dz(>gvqq{s7e%kxVhr0m>gRn6r{9VqlU#d%6K~%tEmr6oRTT>fO`jZXi8caGxnA z1KS4ag^@66fdDNIX3dBEO$12Xq8OIKfXksqNvbTq;i3C=PMiP6IVUn$u?ocCa z6Fd__6A}~hh+0eS&i5cRNzo(xW_BEaO&C#)Zdk-%=|r*9eNnG6Zy~$pvzH?P@OS6Y ziq&X~dDT-7U|QSBvEI`jP*urtCOXY@u~x-3SwyDHJ3Qz40{Spy;3wtxi_2`MpSL?s zNEHqGyWGc9K3ZxQ{xhh)tbn$Uc}Z!U>BO^Jf09b9=-ZA=@;g03L}TW67vES($)DP_ zEx+r9`e1UsKT83H$Q&5lm||veNvrr^pUNq;4GodeAx9?yML4YpY3O3?u+bSsh=|T= z*%ICZ)9*b!OiWm?eq!x1u&}ToAVh#bAR&DmnW4 z`X~GQgMa==QT+GD;A%=Z5a;3H5f$wj9UbL&J7{ca86F%Q86BNvu7nrePFuw1x!u!g z*iTzDBSfCETwV3LA6gQe>PqQ&JU`lf+R4>1&nx_NO2dxTmVnou2j@7%di?y9hG)*0 zPuH_|%*XqpBL4l0bEeG*o&bqX^&f8+J(`*ad6{(?c4qs>MD4!ZB)m+OvwdbB*Z(-2 zE}Wd|Lh*1=Vy147Wxjl&H|GrcATO&ConKXO(|LOI_q(zBZMc7Y+~#{{=a^A3+gB~% zb6u2>Fhzo@17$!mGc!|FRpsjHYNL_PY63xUv&)aS$q@4P>C3Bzc6O*kPlb$0i?GQXb#G%hWG(8{b7OdsUAQy0d9ZlC-yDO`M$@AF&2@%=NpOuKmKXtK- z0K5o~YACzctEYjtxfh!q25t(1n)0e%tG6r?FP3o=pEAqcs)>%E&JX(PQleH1?1Uo1 zp(BwFzaZgSy^n{(nwOV&@{3F#yX#jvx=E}lmBczAU#pK9f=cKgH3 zySmm~-B_88kiRMY&B&r77x)vwUOzZGLe%a`0}(kKPRPpQIb&hnGBF8qx-kBoV(!-9 zXF@Sy zKhLng%)pt6v4!G?x?G{WEKOQknF%*|4lPb*e|)?{!>LyNqNXn<PC?)GbH>?Psbtg$(fGtzNEyyS06ff{bCu3UC6^XdNx`Uw7!o?d;J z{PQ+%iLt2C)aX}RLm8G{jCNTti?ThqbagK)@getd*E_`+tx0a(4$b8Me8GMMNN!^)4>rXOx$n zLjtY1lKUBFN)EFx|P-ufM+#) zQ57SyU{kmq4+x1}#;C>akjtnMXa>y8X*vVBuN;L&>G!A9BO(^YvzN@(iPn1Tjs0Wi2cDUW!nJNpWzUnutKfd6% zscoSkE`(E)<%neW6T)nho_1(`R;4#F#kJp8vbep*{(DWoOL@{Ouvv88-W+_ptkn}4 zV+M8m_Z2GOZZOZAOViT&pW2%7PsRBto>@$~{q7jlijUn*iKq*%y|tx*nxDuSZlmQs zV{0Mb`MwnZQU|~GF?T9fER4dIeKj}V+uhv`4s+I8u-~rP#&PcbI>X+{uZ4>D<|7TW zuxg)J)mKnJovIM#kOu-WNPwdz#>csMc&N!mzues1U=c+cIdE7^yAv!|rlCU6 z`&4*Gw-sFH2NR#alUQpcU*k7*I+~1wcS2BGBRuc3=Jl5{ckk+SB7onJWlgJkbgU2X zob|dtYC+7K)yL0OylMDlZuaZ!+=j}bm}1ODVh21-$=~-M(B&HP2n!QgyZQa%!nl-K zulXFAN>&X-*@arc$f**Y1eMS^pS!^oZEcxaTPB;2-bJO^hJUIE+uV`y{N*#ljb3)^q2+8&k0F1G`&l`ud%Fz@{QqRzz2r5lU-Mj^(@9mN?lWugevVIQT6kQ z_=E`g;wdZZ3pOoXP*mf|rN^>bUML}?fe_)Ytuu>=Ry|okq zD?RYEmchfblxBa_zQb1lHp(k2KexyA-<#y9Ae1&W;T4wsmJo%3)53L?HZz`)8C=|6 z#m5N|4tM7Z2?_b0qjQT^a0iZ7Rg^z^KJXt-Rqc8Gy?f)(cjAN&P zMIJ#7$wuH+j!(t#P#UTbJI{~SxQXdAFYjHXkk4LQ^nvTX=hVuXkP81F(jSsfhAuhf zSco|2R7*a^5@GseZBAPp6_n48SjdCul6VvOt{oemFL>=3{r`@qyHu$9F}w;Fw;^Kx0Auux^)}05;O?0C;4|)C;QK}ZFOx8 zhO?&mOT(0kPK$A+vV3HOQ(kUe?6S5$q-HRbOhwUZJkThB?{)>({9Y+T-rEbjbV{&s z16##FQ`kPIZ^o8t(g8Ch>-bZ%VLJ%Q;+_M20eYl-S8P_W$Nyn5PO-G7OHPfsZ3A(c zc}=q0HSlxxpbziU^QbIvP?T^~poW5eF)0W>67J!j^5W?gvWN~5(So*p*oanO#MFXN zIwM>jV=fC*tKmQJNO<_@%R@zYILDnYhh#5&8j80d65bcs$(u5<7m!(9PD^zh@fifgXJ$9|FII_D%|QisQEz_n1Mj!9O= zp&jEW;Ye@o!EaD{_-Q%BM9V}(oKmh*7tP`(aD`G@kktgwiyaX1n%vUBSd$g2ja2Kj`;3T_Fi(a7{ z5CiAe+loXZcKC^dWddE<@@M@Dptp2V)QgLX%D!kFL5D-(S*qd}u8(TBx4OExxVXFfHSLhW*|GGOsa}u6Tuyy= zRaeJDNe)y7V&u1UXH2=j@Fxt&vT-3wxumzcsq&-l_Crgb48srBfe<9)H`A(WFI@ zI-xJc$7Y4yxIGw15&8|`zoR^eoQ_WB=r+QO{$rIRoK#`Ur{*A5>yeSgw1g$>Iu_gK zKa%gaiSsn{j&h{V_}pO#9fr9h!c0=c-^&k`PwEjqcWjYhx6$s=;dNmZ^8Y)0)?I+C zg!{LTQ^Sh$A^UvV5rC%+*}qVpuc*?=5$tcO=FL6mcfa1shNIvkF#<^5EbQ`HsfW zb|)K8Dz29h92*-8i4td^#$E9qWs;p;x3X;XFb)}gshhmTCUd0D0 zz8J5#?e#0&vw)Y65VJ3j>qKDs3+rn7JsOzQ`33xbTfxXu>>0c$iGEU8R0bE}(g|)K z6$a=~{lNXPqUR2EdY1EkIBG{@`1^9X;~(-1L+aU(clGvO@eXbBls77pX)Y=Py!(%r z$We>03CN8XSVX{6BehH=+DlkRwX$(5PERI$6!@2vE5dh4USdmR--y82MHelMi?-de zWK+hUur542so!6|Bepz}Fqmwm@c|5<{HS)4db z(2aUXJlOJdcr-GTZ?Mx~B_o1Y1B;pUOo}M<7}Dqaj`88Pu(hR2bI8CtWgV4hlja6w z&#maWKO6WQ%q}A0yD3BiYOQ2SgjK`m%HzYbD03zYNR4HfB4CJxA#PjF>@Yy}N+R%I9NA zf!VL*OfFEdVS>CplKG@o|9~u~*J()N2#Z&mzuHd-+{g_PORe?BN;&O<#&)Y0tAeUI zc)sGq4QS|i`o}Mho1FHmYghcpUw`vk?dy+|AdNPLRJYW;nw*lqc#WE|GSdKJroFcM zmL?-Xf5JKFsY?C*Vq-dm*#>E8=XWMn3KxM844|#;m+pwy*H>F)t?A6~2Ld(#eB_1w zvGkqaxxK0%qovFS%}g8|*pq`X1Q!Sl@&6-nKcpCTx@uVLKAudFgOjs^s^Vfy_aDQy z!`bN4U45)Ur2gwSW$~vaiZ-1_f0xnT?L>lLIZ5ySO2P*jKd-IX-Knm{p{fol z)~nInK5cQQt&39n(S6quAMGDt0wfaJWF#KI za^I&t-8!ZiE)1$WI1$$f_C8Z*QNS)yN)+j{$o3E8W^nE=^WtCPNj>P@EsKW*G?5{`K{HD|i1AMigZ4m!RAD zcmM4(Ndzu?sCW}E`3(Mo;FmDa2|2;@w&V%T^(hX%Jm9F2ouy&t0r6FOAt3~17hfe? zhMp(ak>bUYknq_xP!;+4x}~yvilu${p2VNm3A*uDF@qH2Y z?;2fBl{L$`K*d}Nxds90>-v=0b84q{yea9jA2~2b9Q~l@o&no--YzCvMWGn9+nP9q z@QEoY1Lw1U4dIX_n^LedGc(5M*aPQyd@@}FBctfuEmLGdDF-K35R`piPNz`O#)P7_ z8mfNP;;}nOiy?l`UxWhtA+ebGuUfbnYEQ!tSaCITP0eJP!n&1j&WQsXF-#6(uv18l z-&|bSC&Q!rqHC!;aymntw@nGeuP6@f>xUO19&d3mdZVJvWOm*Hz-Ac{c8~!0>$`^6 zrO}OD-@QA(-)O1m<)j%i7;Ctxnj-w=E8@U-_y1w*E2H8FwlHxBAwaMY+}+*X-Q7L7 zLvSZpaCdhP?hFzF1b26L8Jz9Bw{rIE@^21P(^Y+|yQ=OdcZ|v?{ft z3eEr_Gc(t^m6Pt@FztqNinT9qa2W!<4M%J-E1UI`m3a#%^;*l(LutJ5U*|~km3|s1 znwwYu{=1*}(9`9AKc=n!`u8knxQa;VTZV-;mLMioPV&M@lNQ~ORu!;z{R(BmmyF|3 zf(mrxvgOEx>>I2ksUxZSZBKczX_#cymEl4D`^gP4o#-S}AD@dtb{4}A-J4(eegKui z{-szwHR_wZb2|&QI@aL@&Kpkj2W(vA1^d|C`iIeQ$-B!$I_)lJCmi-guooE{8~bid z+odxtr-+DAPKTk9HbnxI zhOBpZ4W{e;>#8J~VmS)Xo=hLLHt`6vpdeweWs!@SnHf>Iw~-M9HQ|(%nwmxk=F-_N ze&?TsBE7+jImP?)#o`JkWavwe)Mx~0GLoX`ACo1t4C{I1!8$s48BnEkIJ!9PrX72^ zn?y06n^J;N#p0($uuXiExci%BR35dbI`JpBdu2*8Tcs$N_i>fApdAX31jOSB=7 z5L)YuONFR#5Jd7vOD9{WA0UK07D8_<0TDUkBi1*W|Mac_86xfNp}6hn_n^yJ{=SrI zLf3-c`8k84C$fxB=#E zCY|wbWZv~}f{Yfpv6Di3rgxv0bCMxzcNHMQo*wK$AC$PtZJ>OI{gr&waIt? z-}l#kBL-ar5SQnpW)?+W{8{mHW&*)$;hx$+ENDZ_7Z~0DLSX-4i{1&>UzGpctbce~ zjzk8sl{4WYw`t3UvIZAv#}`kLDo72V0nZGs!e%R0SAeiXBa9H;+*x0xc*eKY=yu^)``(2}J^@dw@s*bR1IQA^j zLxATM{)p&A)@P%yp_i_x3-Ey;z zOHlMKA*e@iU(us*(Nyq_Duiz8AH~$VdVL0)Roiw6tV7k#l!< zH#a+*#D$5C80zfgNoMZ&G=B*?BiS>xJ5gTsaY%a@|K#w@YSo{i0IKE0B?q5mEs%xI=@3u&}Uu2M57vfKf|Xb@klTR605#AYn*Ng-?Jo zK}19h3Jzv8>_)QteHI!LLPkbL$F43f9|O!Nn8qdB2cq1G+KLJ^6rnOynn`y9a&n>` z19pz}h^UUw7`H@%gdwTTp@ZES8ObJUR^;U1ev!Dl#KJ$v8{f_9etuqUV3|l z>u`_xgpAeR#!t)mrDRO_L{&wVJ{Ax1ATg7(*d2J{%gPG2)%B3XSuQ*~eGp+;PQ*Sa zOTTLx_rucoXjhhheMqk?F*75pDv8VDR|#hg&cZv=UJQ^6w|!lEah;OJKHi&SLeH*nS}C-6MHj7v*yvMDkZ zpW;=Zh{+!-EC!UM@R3yv80{|`=vG%QG@{@;{qEB?UPZ)JB`2m!im!P*Vd6p1uSx|o z;FqJU2Lt=(Nt>L8p^UlZ_K$NsH42w6jC9@P1dbPevbx^kZ#?>72fS&QC6V{28cn5o zQUd>$w>Me?M&p5m2u|c5OyLD`G5ftHJPzb1S&o8w|Tnq-wpJ*Qn-bc*yj4O z#U+HNx|Qu_>CJWJD@9Gyvt?_u=H_b^R3E~~WM`*R>ZT^ATEB+InL)z$240$<2E{xt zbX^~1HF}px`ckev2NZ=bSUyvB@f`W1ydQi|uA=(Yju|}_X=oA3zLb_zB&*H9i5zwb zb6~$yrTs$ltVfey$vtHq2?rA)HJ-D4qK-{n4)lpKA+syh1j_Sm0dzl#b)_(d{Hd)2 z@PVvCg6|3{G$GiGtnTXUn@!nRU;g%5Hp zBKItP(vlqAmca51ba41zGiTeCk}>bN^UWj5T%Vq{$GvP`%4DJ9O(FQ|>W9%3?`B-h zgOln?Zf!>XOXUY4A36a%!$3xr&Pr_wc5(Br{|*d?8jDu?MYSaqVwHygBE>B4mzLd6 zJTg^~C|WYVv_#hqbGgLuP}`_jt`*^%2Buy!^aA`ux07%I6zNEvP^;q!m1f+iSUF%9 z1yRx6-JOz>qL^%LW)`A!#m!73hM_X9mh=ZBKO;hvos}hM8G#|nD@p>rmH_2_J!`?H zVZ}+C#KZ9jOtdDf_n6^ahVhkZA~S1nWIs6qvKNLR+Z^+6S-%_s`Cm|9tdKmpqcioV zm>&~4Kikx7#@9tGreR46=|7dIMGr{JOiLua?oKDaX7rC=E{6qu3_iD~R-1UkEXI z&7SgJ&;FOWgajO%Arlg)9Pylm7}M(rNDOb4+gV$S#MCu3pzXCEA6w^6P{JpBmZe9k zq-#}7_6G@ygr?tO>n8xiHZPCP+wKaja+!XtkDKvbLZc&JFY8=ReGK}1lvgZ($KK&2#T~O+_4RL-16x?-tNwo3=Ao z3Nb+Vu&=&E)-MdFsDCiaZ^)4qOX9!VDr07=nAWzFRj(iEHZC(8yhf7a3l2h zJM)e8AtYt-Z5e*QS(a5%4+YTL9B+Ev>WPiIpThlptkJ@?Uj#<=32*g!oLoF_HK>05 zaC$%y)Y8^{#k`iFHs;8D{OCB3Rsn$7Dp@-vM*tv#P!6|v>B)zk9mqZJ2xSxvw@&ph zwpo!XM+N1ZF+)ar(-fHlh5bZy6e7vCY|bax!KRFKWTE80=B^=cEm*tYlbeER@)8Iv zEbBWV93e+)O8R}~FjAD|m9=ZP&;rBq1n}l0jVvw7wkrnVq9Yp&p- z$PO6o*Pe+++(t&gc8uO7SMh-4rl)wf5rypqLFXM^^?R4WTTibZ!xx-=XBQXd;S51} z6rg;gowW0tiGcyZh#L<+oCzMc^X}yqXm4+iON)R<^j}cvF^e;zN{&6+95<8bIl*g% zl3%{70Vf!dkUxUVeO=_8t&4XrH%vO4>SGAcm+8|L5g-kA20diF*LOK z#^D*7@a=4nLh1#+;{LV#ae%S}2OnSDgb7>8J2*PP!ySCS<`XbGtLB`JF!%Bjflm42 z_kJ`}O3ZkCa^f`5g{QWiuR|llKB~eD2VGI>IMw_5a$rTnFT1y+Y<&Bv<)>rM6OG^F zI~Zhy=lnGUq6;3gF*r%ar6*wx4IjHV=?`4g^wusT+LIo}&AJ6DCE97kgy~Tbd};T3 zs$K7W4bae`UYGxkAOhQC`y#>PobI{V`v`CjF7sj(DgGOwpk0y@oWcMajh-sci$aOY z!7I^S79bE-@YKnzp!Es~Y$wge=sPd#T1m9h;FRT)Z@t{X#J5s%&5N&Z67Fl9TbNLr z^q7k8r!`rfBU{9pGm4!HPpR@J(J}Da!7>^ar%RUFm1k06VZ*U+`h_Eb7!N;+CjW8r(S{2sF_ z3*MkD3X-*RqHlbn%qfVEeGpy3~U9D?479JXM<>}7j z%a@Ok^Xh87R*=Tv_j~vMdEd1*leFjhLkh((-jw1p3Iy;P@I;qpm{Zv%>7vLiN0GH` z&LOl~?ryvazba(rgBh+DG}ju-x66Zv*jDChTK>MgDH*wYEtS7r$6}po&vi2zCA{LR z%^6nLl@#|!1}Bzs9V~Iuf(;zIRO&1B5R~-lAYEAF^-kO9uG*04o$@Nm%lkTydCRPA zZ0tC2Z6Qh(vbW2QkB=P#_-4c6DypiGX0Cp3-DpX{B!?&wV-}03k|Gkrva{2|sEIc< z)y?;^Obr)iTzS^~YRb>`a}fpMyU;iB=r5VZ61TaYYE51MukL@VS46Htu}WHA@x4!V;us$y0q4r5STUSjCtt}i&P2B2_;XJ(DrO`X=OM(N-KCo#) zG!!@Fta!ZPnC`o_IbHETU#)pufStgr;Dhrn@cPAfO*`s2e=TN{GtvW~Onp+@J?yQ& z&0JzMeo$LfXsoRlDH+@8!Uamx**g*mwpjBRblvlgguf+M)6tU zG{p(d2ncfpacZNnHp1+*^|UIyVVZj?{`e24$Elj{@@4Ycc>sSH`X{@rAj_Oy!R4^9 z6SwDAJ=)m{v2VDu9n9EBlQVT%bRo%d6qPkK5{A_piMEg?6C)#A&TTx|HDzUGH8u8Q zdou$=Ln5icvpsltcvV2$MAmpT7G=VcJ0J*k;3o5o+BS{D8-{xs@QwM)ToAZdiNY21UxrO`KhcA7r(6G^$pm|(1-#3(Iif2(fN zYhft=I~T^~a?jG8#!nMo&Ybt%6?V{k_f()@9*|7>8aS0$y+I(zM*Jy&*S` zw)mk&eDeUh{k|60J_ED!e)X=F&59U=j}nDp z4NwII1xj>@P$D()dAvfsimnPBtZ!w0{uS=O|6C8ol^sM(ocI1K`6jz90S! z@6f_mEk`n9|BOFAE|1G0rB;Ed+hSq6y6C+vCZ&bV$d1|1B?VecOd1Q52Gz!XZcsJtS*tYPqs}J2=QM`BQF*SIQ%< zfdr_ZbCPY4JB21%Cp>fVendvj`1sy_mk52|hiO5A_qO)etn$0-@79@>32C_W6zmAQ z!wFp4&&jPm{|l;yA*UT(j?wm%NU z#3i)aCx{mn6Wo2o-bb)Dv_HT=3FJDk;e7V%INuEkfswMz(<@%Gm5_=hLwZ2=*LpO5M>yD z&Z9vw_Kw||e`FnA{+@Ws>;e*^*QSAT$%ZDDZBEz2La)K&XuzhSG@LZ`PO;P5g#YfJ zS@G%2NH4*kxy`nd$J6ND=%6rmjoumcdZ637Iy~nQ zH$kQL%h8<|<_u^Aa7oCU;tOZ>j=Afy11n<2=J2_<*1q=Tm!N{Ws(EHrH@-!B`6lVq zPWfq4*W3RH0g;xG zk&%!3-o&Jx!k)6xGF7oUAF~1 z9!5t;Nl8fuP3qNX(sd|+KT1me6vu>mgI3^j9<_$LIa8U~ zoKz_Nve4tCEQ1^}^gIWS5xjM@UN}*gL$Txq8r~u!XSX>PYE&&a`rmKMw+)^WWpc^u zEph)SsGd7f*DK}6d#?w4yEj)vzVD=)*>|5>68=mktSt4iknh!UNyj+gp0`1vbOBHs zz>(yF++Bnm-B9{8> zz=p4x@y?|CCzn6A$Yr?~84KSq;`(W6#N9NVoE^0?zhV>(yK-WP1I9_zqdOj$yu6t` zrKaKr*G0{d?FqMOs16^PKUZ`BB*)RdzWj;`Yk*ZhGBT2p0RwFPf=TJh@l(u-S-w9M@qB*`(a}+seg9CW zjiTmaz7UDu1^cCi9VhX_qu}#|a5p3;CN`Rlpcy4Xm01i%VgkSq0FS{nw6(SZ zw8!V?=Wk~f!SE<1?f**&LoxVYC5)zy4x(*51TK#ddVr{FQ&Ur64OEb_=8=TBxa}%} ztzTEGnT2_Zrz%X708d^M8s+Wn>HcnHuWu7Ak2T<@F?Na3ZJKOF)2ZaYnaBX) zeE>Zzh8^bQ*g_Aotta~esT{$@_5PEY>Z6h_wO1Z>v_1=VjfT0fi?UXlT4)s&w#A=; zuja`XKcv;fJ}hH1#Au-oa>y>!^){(vto#ZO*vSa&RhC|duS;DBzk%=0y#Rr`R#Rll zO*tTm@s7T=$hTsAc2 zRuA^PYqP5~MEN8Xr)eKoeBfB5LoD6xI88@}@O;-@fG8?DL%uS%&cCm!Tj?I#b5mMt zxT0ifc9O~{yIi^ez-qT^-g5Q~8*XLwO^x0cTQj@+k>SC}2<{rm317eAl^3a$k6WN4 zhPKXXP+?Fcj#xKMvsJ6n@Ds%9F|=sW*>;JMFlUbEiFgdm^+*)<8DrNpe?~z<5;9`K z2GnJ5Eb7kAELrjnOgi4e!jLf7YH=fGm;9)kAIPK`oN02b%hhC-Y@zZUi;DLe zM4UFvoOP;OzO~DjXWe_M>^ifT`RTW@vwz*&+YrsSF*n!8V4t16EvmngQJ&H-bmG8K z$LFdOuFfG0*a-H~r?0y+pT_^-|ImU20RdME)_;4^I-Egy!9(`2oaot4Fx+*gC&twjmQ{ii+V$OhnKS}9!xzyRjJCdpC>*XF@ z#kblP$;v?m#ZszPwtGAUEO}B-HN%VVmjQNkdUke&XJ=fD z)O@r2UY3j=f(eDEWxg)ts3}LA^h|j>)b!rH>{W6K#7k*uHz#NNbAIg|KrT7nxmA?R zfiDpt(Ms-b(me#K^oew=321IQa;@5PK2gcfoOVtefIe~6H16DDuU$RAA~+JnNN-IUZXk56~z z9^lo|7^$bL}g9aX<&%^2HhAU+^j)Y zdwVlX1l8o-Mu>*}K2sLaVBXn2=Hq(S(AkXxry zeG-j`xO{$o-rUUL#Qe7F$`ckW~thr+#w|?dAD@E>>A7mEq; zMmac%gb$ycJ`dHKDO12EPg%jxWRA}-Ej{)W1nG#9&`fs%6|lrv`1qn5Rj@F{$zA6y zHH6urn}(**{+K98%Vz2q3t%AqZPP2Fy8_cZ<_fphB(O|!fsyZOR>E}TLXNhtDyoWM z${ney6%&bSQ!yiB%w5_Tc<}z5x`~lo#A@kU*iZMO!Rvf?<~n)%VhEdChz<=Ap?QE= zMmYH;iC@#)_S?gByPE@j2+yJ_?*({7xJkQ^0_}U>GK-`yBb`%TGG%z8Dgj;OcpEK~ z_vGFSJy`J8$iVy&ebIac{Cf1NJ|R?gGsH`||KhQmH+|$PmP4zhYt4qECC7wBT8Ee~ z7hRE;Csext@+v4UhUM>HUe@^mQBPj^v7B44&M%)+An|#igmY1=ZNWF)G$dtaL%^FPi!>nUvpPM z){?Sa#D0O$L;Nye?&KsF7_lA91)v&g28@DfpUhn%%(AWc&z3-b1mN`F-;NbCg-`HB zv1TgwTAv5fb0(%tFbgb}GOO30hQdso5japNp93A_-@dh-_vpymr=7qAM*jZR{c>Bt(HL~?x1@r6L}zefJspk`LXcSjp9xbSOUmpT_X2$Ir&s|5yD z6znQg@W7FFrT&&dpCL-MFviFINyjOUbUA}sPUW%zNFFGEp`<mA8h%?Bn~Xel@l0`jJRB(WnFA9}N9NMf{HRjT(OWd2Q`8qOE) zs2vSbnt@i%r?;Q;_s5{=f&?;TYZvMsOU1oAw$`!JLs5O@dXaoF=Z!*gD04}wuPMsr zKYI9TeP>MxvvXWSM55|I;W(vL=TzLv3T9W#F2XLgNFFC1w)7@(VnOC1R1C{b&tMC6%#7kGl_ zU;CR~#0dLUk_`g0hK~I|asTv4XS3r-{l7=GZ{Jpsii>nqYj{5HyU6sQ?@iSj@HwB5 z(Y?QKQ?e;GUT?%%Tv6kKl|yi2GRaWo`@QF<*0&7hHvX2v)HlGs$MBetif-|Gu#G{= zm5JnbXHbC)+vj)?M0TL%elY{U(BN@!>_X~=*NYLzd-KUgV$XSSm9`AOj(yySsh2sU z_2@&FQ2j@ExKIxsXFN@P{WSn;1^^M@C9bLpofD6$h5(6X%WQ=FgT>Pv6@)7Gr=Xy0 z-$Xga)om+OwG9qr?7I9%)Iqutco@MF=(mB33qwH3c%H z)Soqcv-e7K{_Cxb?Lx_JC>kXb!42xchu`1Mc?ppoP<&s|sorW*PikF#8r*9DN`bNy z-Y8SvwbI-|*PFW>FHMx>c1C;D$HkZa{@9+E^B(kv;~6ZamtePN!ROd6TEA~Jk^STR zV6l33!s7ONO!6`Ymn7(hRion!EnBVtoL=m=qFYK>)M8{*vy5`31X5eEP%38q5N>*O zXpUrRx}z2E+YE09zC&iP8Q8RU%X!mJ@7x!BdYSDKod0ey*c2utX=&Ex$SzX6JTsGc z^Y`OL3QATAkY_AbDPLOB4*3Ge5k0rNe^kYF4m2hm+Gb0U0h}F!l3je66inl$iG~6i znmGQ@NVwyJQcCS9y2@ZW4J%(zEHtgD>BH5V)OZ0i@&QG5Be7-NDJ^WF%!ZD6s{sPk zL%5L5?JtE1%}EQ{vkyOzC3Rv%UAbTo_S$r`sE!6hnc15tM3zo0~c5J-^a)AfwI&MBvtnoQ__$qWG19V9SU7rT8dC`*VosNmlE4lDX2oI?7G;9)z(<%tNJBD zdR``mMZ5Teh-Jql&kAQQ@nL{+`zok*Zb>lM%#fNzeWQRCoT6#SCl8ed7@kL!Ph?A@ z;wvb$qEzFSY%_v#3 z=ZrSG9MIX5O;g4&Z&@)O*tt@*7}T5%1sM;p{np#Q{yAvEja)nyS;r$oVMCUoDzNu_r9X%b(iv`~TLn9gtCr;#W)wt8SO#I( zwXiE!(5+7jUMU2XYA13jf-yg2qZo;HB68@ql=+Z&a19QWDxXYGy+3C$ES` zO0&i7c*vFUQRCQJ=r(KJ^`lRm&@R`*t6!Kg5p-I{Q;SBRkdd1kyGt;lQIpP8_)qVB zeCSe8Wcav+sKQ?(rs$tPMJzj`BzB;ZxM=&2XVC9QH*eGtwVIw^Qe@-9c)fU z$K<|>yCHqr`*Agk6XWKIJ#_tBiYGaNLg+8ik|v^P(}>D0)*O+egwXEY_QW_AoH^p` z7KXlo;$?UjEnsVkTv(l;pVna$AOvZSgkvWGNlJs}uEibSivzP0*T*ev!a6GQ8}8Jk z*TmM2>o2T4td3SF2h<`g9x5sqF-%;ATZVcB)JYHZ%2Z*!jnHRDY|@M8o1NFqK40+8 zjwg71C3WI6BW!jTFSW|E4#rG7X?FCE1YST}sWg>)g=qVl>o(q$7b@ONvWU zqNXgT7v>D8A>Gp(qBsohO)j8RCse=t^4nj3AcZu@3+(cAF~vWZb0X4)8E;>4K_FO! z>j)i*=E^8zxHHx+RBDZWjgd$l#f$(5?5XY~@x8YW1hlKPO;t*9cAE%4#0!;A`5j@u zJ?ICnYgiQ5i?G=kJAL-DYN1l0XXk_laWS3otm&~(FVyv89}ErcIzM8M=6niuM-wYn zj4NWzUf-C910^n$WAJ41Xuc2gmW``-y|PpqgcKU2K;x|Zn%=#0+lwi*y>TP2T|m@* z_7q%WrC}rdg(P?I(Xi-(cJ#85(mfGkH|KJ@tCz7(FK0^&`zY;f?dJ)zw_pnev8~>^ z_hJ|YL~)GCezT?BQH+en;&R7YaO_1mN;>kG1)2a)Tcp$73G8nKSiUpWXr(@Nre?f5DQO;@lIYDS%FP3 z*Xj(X?9Wkl|NOeyX|DaPs!l&<#x<6RNXDHgmr)9h?D`U)(y!sqRi~DDv6?{U`0btB z)yqge@qk+O*u=%;NoKVM_Kr{(^PX!B1KmqiVlVOR{qxy z8i@0xXCAsE-WHTYOfhvhj= zU*?SM+Kq0?y#?qm$3?^85FUSUPHcqrpHIO1`tZCIyrueMXLZtI?|_hbQQAQKZ4AQe%^Zea}hiFT9x%x0kmu*2!{xFE>Z7w5zN zXH^zpT6tq@=WF>lsj&%DO$8061SmK6AmrnAixBVkl(3DxS^aQ6uLM2Fko)D%J+V@qZ<_YIAHcbzPHro zxxwFd^LFHWS%7a6SQf^ARimO27oULI;q!X`jFO8$lY;goIUeg^Yrp;dlG?G3u+u7B z>k{x;+}1BHDWRaH^#+oTlL0MjXD1&c<3%>FM?kRUCM@(UTv|;5+JD9$GB^8R zW^R}z_#VThS?}y5jq?=}Jloyr`PtK%yBryNJh<>E5{pxPt36?Cd3oz_3Ytsek6UZ8 z8=UkHUth1ilSEoF?toZB1iWb@B(eZ9?4U<0)Ou(P8i>7qD%a>drj;hr675)Squ6F- z%f;qX=7lYyWw4s{8^r(x&J9YjK<9ON4jg~fRd<8`wis(5q?1M zXCae$|3klS9hY-YV*qGN2&MGnhyjr3-#oo8KL9%zbT2aQ*Lmd=Vuj~o&=-ZfIA(ht zN&pHLNC?lz%loEE8{SN?N^36uNqA;(-NRt8F7aoJ=%oF|@&(F0K|GhGEdpeS-b&7$ zTyJk_V2^~zc}osYH_z>MC02gR`^s{U_Vku(O9Ex zaPDnxEjS|w5*d7!rfH8%3M0$m+!AJF}}LH`veKi$=TAkNrR016VNv7@9#g}9C*09mlPFA zNlQh*MArbE2j$NSjbUBo9334I>>*}l88u^q{$t?CWb`#q z$jBhaT7xb`+mNYYbpZhZhxN|B=mx+ask>X?!-o%M@IKG?cKc)L02a{W_gauy$plGD zOI!B{(2ZetPnVlU*Vgd20{V6V%cW0^vjR98A|fI-^HqI20n5wF02iF6)fyu@Xv&Ri zw|3~OemHA8k>mm?O@RX`VC}U%A8IP=)#A2iu-tvS63)rOvmeojauqSU?GX@NQ|u&k z3|Myh`8-MuLIA_kW@}20O5FJq!#lHITVA@P>i| zGV_j5(4X698;`#Ks}{V&YU^h$V*OUf{FW9@PEL=b>Ehms->a)Hllh_z4O;z(W!PHU zQ0#sWm&O1R2`iUSrZ~U|?X-8FXU*-rwG)p`$y!xF{{HWD1Oo zMD($m1QI=3TG;&rYX6KdFJ*y{lT%S4kO}&~b$)rAGo53r&Lop`%!l%NjUSBhWa)in@!k+k zT6HucLu~ot2na|Sb#TNsy3jA|X4rH(_9}^=CQ5VY|n*-(xhCe^jiu3FngbF>3 zfy^RHPi@F};hxiFBCiF#3cj^~*Saon2|9kS&gLBXbYxX*^pw^PD?1i>JvVRV^Ddi8 z3i#=qarv8DxYr!|h;lso2(%UImd*g6{kIGWJQ9Lf5T{!kVq1a~8Q|V1p~jOv zZ^f3cgrFE|s1`856fHy)U>PP9G-3vr*8mx$*M|o#j>R+gHa!FPn%3!)J4Z=+4<1SSH^pQy<9KkpB38v(=(1mhI%nWOz^w)J?( z<&h>ZJvb|4Nm@uP0-h^ZthuHKmE{A6?5r7H#gNDEio+!M$_#r-z?{=Sveew!{M$pj%tqhq!Ss|zUyvK#QL2J(A zy}3zVN2}mM+KStQ6saltNor2d4-)=ZKHqSIQDg`Gvjk3#PH8&azxw^w5n9blww@<` z?{Ip+QPIpSpW7;9=g-a+8z<+m33IUuu(N-Z7@V7)Mw^EE{q@VKWFA$rOn&@`*`D}d zvKo!J8d2hioT6fFTZK+_Ghp2~tM^%Lw;8==bE)x9j-gu5B5zMx^B<<@Qv7C9C2S=l zWu!X!$Wb8)cjGv^8xe8}3R32+zaPa-O<2Zeu|+y3VdRXMqnx(qX2sc7Q5nsQu+Ir0 zh~ZcV)=-tqKGEaXK^9AWd>HNaZH zaPN;!zZMqnAKrL>PWC>#NSZ&-RzbHZCbK-cv~nH?jpP#yiB3p3+19OqJ0H%qEoGKt zKFZ(t#||?=a-WZp=7`GG2#V4AyKQO?B~IXP9G^VhzQm^1WO-HFFQ2ed9UQs>Hj3%D z_YxE8ii#+O>uXS$4&L6p$=t2tczIr~L}W^ImbSKIfb+AuI&wJlGBZ0nI}?-8cydiQ z00kAgke8XY$kzPI=(;Q0rXcBqg(T%jb;5OzUyzOW<89PTEaqjM!YX^tTxRjb$o4FL z*rk4dIGh9@v_{i6YNGoSc^&;0T>+A?Sju!#7xAS0(u#LF6yXyqW%p{f}-d5zP$COCk%$!!JP6}079(!nLDB$xacC<1*EwYD3YZLjy^($Pku&h#>9s^=}nZvga z>dC=1H4GG7kwNp5dLL+(&JrqbZ(Y?J!?!uv*#VvE)qs=>M~;YVt4`pbCoMzW59@FI z1aT11Ombvm;f0~TUl#Rb7BQL@hLK^oE3kVA3{(lXcO-xIyx+*3af&+l@b{Kz_?yU$ zj7>Q>?NeF{ikSJ|lsdfQv|-)A?6x*ygSLK%sJqXyx_1?JbT!?C-ynt^hqzdtao$9g z{*lr$43_zzNySTyBn}ISbVoUdn@Uwyr;=~P&CDFQLx7C=`1t7Qotl~&8y&3`idccz zf&c>r0)dVJ6&2?$rmeZTc~}9OTEhytW`zaHM2SmbcX!UZ$@Tt~r?s{9)AKX;)+nOd zyyWDwq$jlzJsbo?a74(V(`sM_@VS&^)7O*4r@plUN$Unat_yZ{|5?H@S zMS1=-ju7SU0gu9wqQzw-RP~6t#KI#a7Ag|X|G9_BN%PKDm{C!TQ1g$_QOge!S9YAv z#Y@V{%0ew8B0&d(PVV{<>Qg0hffP66FGS31wBo)wWE7~C!$Yb#ra)$lH*5vmNP%y9S2Fq)cEir^N>>Y1%*36oO~>R;>4z6GVv5opr& z4Q;<-o5wxuJx?_<9?CWpy4VM{LlV3{Sfjs8SIs>gdR(POgl4RXP(l?^xdD`g77*#Yx3J$ogU)Qn& zRRpz6WNhqxfByteRKc^MILU8bHa1$eG*5K{kCH8!_T{Nym;522shCne{X=xe|4=|A zL9SGs5lS&-F{BL;I3M!RF2&N{{%3v+1)86Q2|LBe5wdCo7?W7mptMEVF`R2>fiq!k z0&3%GR2Q;qvT7{l>OpBtJqbUb6;6U!iYd0}{MHDrVl90om(o$ zCAii9uus{z(Y?KK4DTgs=|G?Mf$?2XNiSWMX6c1yZD-B%+FDewidr3Xiih_}NN2LgO(2=9VHI1#Teq^?^uqDc&{wydef_ER`+#A=g zr6(1_?}SVg0v%U4pHPcZN_sEOm2iCs02x8XEf)jKXQ}BdXMcEo+Tp=?2a#{;U)g*F zx)`X9Xs;~5yTq%L$tYNvcFjW>(`qLT&kq}^k7T^@ZX-up?5(D*cqxrbc_Q?=GZ}|@ z-h5_W=FFY+J|}m(vR1eoaQ$FKh&sGL@7QW_zi2Pgkn?hJpgH3B~dQ-*DqhF z&Vrhn*y>0bQ0j!SIlWvMTql=HPJGF}d2$zV4}Y+H%?@TT7;ilWS8(`VP?x+8d_n+4 zMisOOTl;{6K`QScL;s*y1shZSWBLSvQdsLq*v{}AkT_3+Rb zimE-!Kvq^(UOs+IPE66haqI&@;A=xcL7*^mmn;TJhSS+%7`y@o_}`Z507?{Y_)epX{__x$v(sN0q+(gI zzn`yP{IYHrdDF(C=xcbJ$ciD#&=iqMRwDM)Pno}FCW;u%_!NtOOu8bFTUz=Oog2{uDOs_qc zmjU4&Zn+n~2{D{|=JCjIueal%+)Zgkx|#aoQJVU0WlYwjbJ;C$p$iL!X62--=&)!@ z9_N%lo2w5h>v_l9!;RzkuLZ^rT>;Tx4SsWznPoGP2?h~rC}!MV>)z%#U3C;Yg>YB9 z=dAnufGQS%-l7f}%lJ3?qt#Qat7>X?7!2ce5!=Ay3FOaE$N~%Jc4&4MHnv~S;&_VZ z69DH}2)V<&)#YjvsM0kxHAP284h#=R#O@A7;oz`ZlT4Vw_n1+0k-s2C4p|IwW9x(PObz+I0@|Jb;pSm~e^5=9w)srqX_hBV zFxVS}e{B6y*_BsXF|B|^Xks(!YPEFVQJkfU_S1$Iri9iJ*!4mHGLCMv5e|Vf?7I zB6e5!r95aM1C1EdxsfFn|MN_IO`Noq11h-#DNhDNgg?3WxbFB!6cH7*EennU6cs!7 z-}%uQ(y^5iuZ$sMs8W)*Naf*Vk?7+`?EjJwc)6>vVQ{}c;Efw;MAqp>V*x4LWZQuqADngNBxGTFK8WtRX!x>$c`8(oPXwm}FQ@LPU z$E9AUwvbAgm>`*l)UEcQdweH}O?Hc*{#8MO7piI9Lm1f$AZ31)x}T`Dvhwhd^zQo6 z<%H=O|Hi>(tt=V0qGZsi19HE_O?`}r-ZA;7>|W0|k*d=C{KwadR>5-S6vQP?b`9qqM=EVfO^HB5P|=j1W0Vak*i!Xt&gPO)=U(3 zTY@*W4(M>>hE1HpgMqb3ow0v&XWOhBJl>J5mT5i{CjSO}VLYI=#>4gpwS{~tWk*HT zS^z%ERwnhpkm0Xey2Kn`#S}MgXz4~j(b6Zd*rmBrwr{7P&AM`sEz{yzMOTZ%Z}_{X z27ue-yRqH}NUW^tJx1e8!@5#t4$((K4fy7^ySXY zbbKVx^D(LV7a#_b&1G+AxH`fbE%-$W`!b<+6L0(Qayu?PhC;kT16hEnHG`nlnvgd)d$=|EqmNM>oyn8S{;5wr54 zYaf_4QkgyEszdH=`>Yk|kLz54VZ6E8%1@Bd8aTbWaNhB5;=eN2p*$S~pBa5!!o`F!}2ArNxOV0E^{Tovj5L25yFV4LEZf)1RS`-L9Ri9hP zoVP)TcjH%u4L9y3?#cWopXJssDMgbMxNB?V^*tyss)|fVCx?gTP5z@5qXPoDI9GCg zvfAZ)q@(4z`~|;cDf0L%YHBFi#7P5?1|fy?;J!_Y<&#M_|I!~9`HIjZM=iU8dQjyX zE=I@qhuiG^mHo9rN4o1}>niJGj8yKVoYhY2A^b@nN(06EV*9R)I*?CDmD5v=^GzG% z_b~{M8701PGcpu-9BUAQ7Sxq>Riy=bK1-4$zSyiK(u(I+;Qb*pL zibHFa{!g7;-H;HCZg48-gePsjo=bm-<_ug>I=bgNBQpISxgE=5`BHFjaNr#Rn970I z2r4S7v$L~nr8cG{8TzP_tSnebM@L7}1ZMRYg(L6qA25d8l6;H#8_%c;M%>obIt&S& z-q$d7Ii75fBdDic;Np`n4vTFQTpyausmAxjJLri0{c9ITyWCEnIu#b0p4Pxcr@Eo} z>NRhg<;^+DGPCV}4>O)Ho!$ z;uriXuG)&N%Kvn`GTj>s7FKnKJn@*wm{ITHy_Al6my$-xIL2HynQK3vc-c-lDt37` zGY+m0p4oidi;A^UNvXTO4-fe~LoXAsnNdks)MT!PZH+!1OU7Xsa-XO0zIpCV|7<;+ zT^M%f_WZ2i4L=vQ2J~1^F6BSiiQ33h0cgI#;L!6eSr9u%-tGNf{XG+S~u31|_tC*oTD$KgEk# z^R=5>x}l*>;1lCU_igVR8t991iDyjTsW5*n$aTI~iOi+M+mn9Zdp{VP8cj(&piTHe zgd!;z_@BZ3`ST~x1R*@rlL9Ju0s?(2^(J~q+xJ>s4(CFf&ia?c~9?VyhKJsc(SXdaqy8$gQ znlIFJbaeE8Kh*!(l2L5yEiEi=L7K_BfQ2V&dnzNBJU zitW*Y_9sFgL_FwmWX3;t7di_iS2jmOC;K~uTFl|g`+0>JR^NbKI@tUNiP2O|Aga^J zxX7cMmq<};u15B6%1^*i1YECYXC#!8uAI&O&!V@RmzwDZi`&hp!1C9Kdm!H@WOQl) z;(`+6h9y~wEDyqn5BP>D60|S`k#+}wvh@l_2H^+x8z$}H;Q@w@jtymZcULy|6FBQ+ zd^{Q-)TR#5Z&VY8>h{lbH{6TCaU(0DVH@k$Zs@-K=I_HC@<|pU2m#9XzKp`-CIRP z1tnTfPp_mR#Fw2-PnX-DaB^}ow$}ox5cb;YzAz0na*<~B@P2sK5AXw zf68sT;7)CWX+-BjY?eZD1f2$gBQQbd*VmS{jGHbxIXF!ek)=1)kLfoxRlV1*urr6{ zR$7gh{aTbP6Go#xt*HOxRQ!bsb`XyE21iAnA&HKiwwl z=vH&n^ES@o#ceZt>Ii4?$C2(#YCv`d>Z*Hg|Mf&cSq}a6Aw{S-H$@WE$bt-VD`$fy zqa*XYY2Wu*6hvVgwzXuDkQei;3ld%m@! z!!z{bAC;Nd5@@VGN&4i;W4qN|tTm@gk{QAoXeh~mQ=s}NAu2`mPAe&VN|sW{nKdz# zoEWXU2YET|hjRMT-QM~oci0yyS0f{o<%@RmVg9K{o7r4mhNTLm6?~1G0$fqGapFUR zYDNG!)yT+BR&;)sY714R<6!!Qx~fZT{~e?SqrK(D7it@bG)&In!JAeSw}lHOOk!?u z*S62Z(oCDJpp_j?-lN#}5ZkYXrvNqvpJZ+?CUN-mi@6#Y1E~swh2GcOYM1l?z zu)S`iHpJGx(Bibe#j(zkJGKE=-cmNRj3f3SzHE1&n!2*6xyZKP@d)X-&2bV3sFXzCm;@(GL8P6c!mi^%#!7P0o~f7duNxA$x$G^N~J|Py+*f} z;xDWs@#@A8PEL*8yM={?irtE3bQRk(=f)O*EKz_VTE0O0S4Pv#urClvw2RZ);r^Ww zHT0Fjk*(}GV_WxrcF1u!lladP!A?=$P^(Lb29N&zY|&f^?c>S$Y0?J1MO#Zs!*7$7 zb<>s$L``;ugZD;q9rEG>J%P{S{O*xbK;=y42??_;bVqjPlL_c_0hrJ|9xn0rTI}-} z5CcZ%XZ)NYSr5LGXuF48H?LWGiR8bI;HU8&B)7o7o2neamkh-vueaFk4TPbyh1Tm& z)gm0pF!cS>-1*|$f<|V_ot|UnK$+4xy#skm0%a8$?KExN$cFw`Mkcb56bbK)G-UG< zY1w1nFtZ$+JS|c5*Cw6Y!3BsQ%cs8LVL_&<`|thE3FU2vC?*zX*n)ZeNaYW5neZag zXfh^6`{TB`Pu!sq*P$zPKGxt1>YqL>PQ4rag-(<%PS|g?w~%n>ni~hVD;uXWY#zpz zs^A9@>^k!DXef$`qq8RvnbhJs&$^Lzn(VTO>Xl!}sh%t54oL^X%9i}7&{&s5TWHa% z0aIv#@p$Y?+5FQ_`_ZK=X+qgB(_zAE(<$Te6n=%YjdquW;$lb4+{x8O3o|ClcZNSN zNWz+h1qHVH4E4#+a?;l_nsDf3`yl_72v*Vj$rWUEn1cQ32KE&VnP!`DR!cTl)STHL zi+@HGe7S|9KE3$3ZJB)b0g1dm95NnIvDhh})@56>+3KAnb-QKO$Jo`trw3AfcT#pT znOSfn(`tfG$ojnaZDh;9(SbHrdDTRm-l6nlsqEAx{9=lN3>85+6?WKFfq5!?V*&qhG#8G417sjp_C0tJ+T#1SAgaH{1T{50-*f{zwCO$cb|>T> z=j6m;wB*%){i48mtN&)dil0wjM7CQ>gxMgWv$o&}dJQ>qcyFUOKiUm@>h`W`J?-X7 zthc5%Fzwt8ij$$ln_ka{HA#5hAVI__o+xOsLni*RB6iPen$pR z%)et4@(bsQ!6q-O`SWWfdy%&7&XJNafQcWD&|l_$8IlV1VicN=6>o8MRr~^RVqR{q zN9_P+P|c2PR0a2BvPA%I|9-?<5Yx3j%|kT+E7J7eQ$as-C~xNV5Gn5Ige8tmo87s! zqUo#~vSFOK0Zn6k*3a{;Co%sjd!zYc`94|Z(hZTt=A!v7oq#FHN4w_9Euj{%toGc+ zLx4#yUu0p!LB}nn#59F#VRfeQA;5=lMh+>t5rOVI9P(!mmm{3p`dQnx*AP5Bt<6bh zCTy)qcr9>YU7#;DZbXt;h)X2q5QdsIoIqBLNML>ElfxYHA=gX)XQ-Dw#Y{#lLuPjr zQ%Oq^g{!^T&^Gl-FOJrlC)xiN^)rX+J9l=lMBhAxt zi>s9t6BE0>zP2@0r=CR%he;hKiIcEX<_>Sk^G<$GH+?(Vbm(EOiu8^u?@6z`qP4K~ zN9DlPOXK^5ViWCe{cL07LS9bh38CgTe_wL?SzE2lF?8BHU1xB8uC&ATEW+Wn<&*E* zQWkaE!*01;tpd5UM^SO9_3w(j_7GY=|$ z^2z>;1oRg$QUd(^e$~69e&URJ5UIw$i75I$Ysv|;$);kKm>v=943{Aj9E#qPM@iLV zjaXrPghQ5HV_%#G?|%}osa2KE=IPWQgdd{+Ng)1elmm+L#N#}tH=_Q5z4yyH<`qlD zk2U?N3hcWh8?g!9K1fCqQs96z6h-y3wTs}UXKo$xw^@}d>exmot?T;HX3P|1lo>hyyx-4{tu7sCYOy>XQ zEt)WVlf@~|5fX#PU4DF;MCLvqGgroN7)8MlCpkTA!(P_Ss6kfJk z%R$`$=@_Cbc#&E5X=w)rSb3K<6SCg<9bVk$2}jUswe7Pi0=g`5MTDrMvu}Dmz^;^=151&&u8-&GYboPYV?7 zvLpD77TaOI&b%*=zg_PQuK-P?x_^f)+iERjgUh>%YBIktS3%eWeDXR>vgq}N{ObE{ zm?NVnp0f8m2wG8bZLB}!5y>UPRY5fN6%1Vbd`G85yDJ|vW^Sl4hQkIrVLNA!?o zcK8>|uv*xZ%xWF3KXJm!!s~&|(IRkbz~Ee@u6g|cUWzc^F~4Pp>B`u=s46woqYv=t zh6<66EJn|u>aobET0W*Wzxgtu2HD}pDN1h4tE=XIlkZKUDxpU$OpGH6u7S^7-m%?h zL34tV1!saqw_J#A8j;7cA~H{fvnXeyps>}a;rl&Qp%|6-g8_0`*@x@v@CsN{TKL1y z?We3_AD|CQ;PUa{k?>t4#m+(I7hjzT&4CJPScapjov}7IqBMl9npb1-2-756SGd42 zEY+lL&8yW+I|{1)P4D#Aij3VdgPKM9By$TYg;q-2)#VY^yQlcP4$(K@E$)mI)5*5x zc-?+9%sT~mHUp``gdpm{4Z;Xvxju&=g2}X>+yaG{8e-kKtU-Ohd@R0WkdhHgdW4`5 zkWymw)zreGKTwt;P=)BVjiG8WQ7FDeM2UyLhZdsx55f->-lHR4)ykY+jFE%LbQeoa z%~}D!UXS{fW;E!#D5XZ>a=Z&ZASdwdj%k680YVt*lo&dPw$23_vVE4BiNI4T*Q*rnRRilMu60rzC~gaZLA%W`#EGPi#~Rp zdxihE_T|X)sDyeXc`%}*g_HmTYx`dc*6*LYvz25;t{!8U%H7yQK7oJKYh28e>J2;G zTpT?W;+>R!FIr3WVDu+sv2z*(QDf1wAV$hZ<52|$xfy%Gkh6=~U|Y6&e&0s+4Qss* z=tc>n%1{c+x7tP_6+@$c%%Q5GX;A+$1Rc;Tn*Y!f?kmxvNsHtr90I<$+0;GgqZIU< zU*5OaaE-EK%SMsHl!YhHE8<_=)0?%qqUJgb7r$>jcM1Sd(OSd9Qt7{L3*-vI;kkSD zT+zjf$GAA_i&8RY_w0oJNUEq~=+WB*-3R9eDq#k-t)?tQyRj`1!EG?oSM$f}1DUv5 zTA3pGeqUpTKfxl%w+%W7FJL;O2}UYX1!*8R_->av{~~1SA6&xOXj_$S8PRc=1l{hi zdCBc))!n-%MfF492BGE?``AF!qpSbzGL{o;&TP)!x>-KZvJG&D%i?yLt}yr|dar4q zdi&#|*t}iDmI*V><7&6UWD+xbKx~T3SE6S-{p+kuCvLPXX4^e>p3`6LrQQs$J(kAX0mF^Msw%lEEHQUo8(d}#EYrrO2ZRJ>7-38J-K86ga=eoB6#gr%VGN8 zHDyhfjS5m!>V{w@eC~rEL78}5qK^~waNzXWV3AKFMA$7OXxnmAe*df$D`j8c&imI()8t zd9W@|rjv$CFy(8kZ3P`)6N4u6QH9cBi9#*)FiOD^t=59|_HW&S%M?&Tv4uH~{|iDwl4D@aQ~iYpWWo%P4XVy2GhiwMbJAU#`l-f}A`n zpF)2P8u-@A+dYn-p)qAjn~HlFbixC!dtl6s{Mj@nVOm?E@UtVw<0?-`n6uB0#nEhX zr-Sv|+*UWLz|}~C04Q_i_5AhT^Zb#1I3mATK4+lRs_KFXrx!djyBiyK;ZALOU$R3@ zqq<$^y%c5Ez8TueWismC^(>RF!&ai`E#?H?9= zUYVU9?&s45(BoM#GYzJ=Jd#4@tm3jnvtKS&K6J0V1p{F@k$s^RUw-77Mj8tP;ZX+i zaz;vulT7DfAz>HV9h2pF?B2Z9(y$pv2hB$hTu1QvPzv`$3Pv_SCvC>ahGi((>o2qL zl0(4a<49bpG!Re%W{VW!aKFBNiAn}^)grm04Bn?SpBLw0$J|G=aMrntK6?P~Q%_dY z12?boK?5gukzPdgEnDPoYT2#(Oh^ge(FtII{!QD)fn-)`-8*+IU3~T2IgsEBH@fLN z5~o%VAf1-EM8P7Us_qC7J#%-cMfhtER5jF8Dh0lZUv`?+0dAK}eH+s5G31aw3l zOu~0CFhU=9<*%ctuMj1aqxh21K=*F6f+Ns?uobKo!QA{Wg$F%5(3nEje6OaiSB}8P z+&ShYpEWK}cl1KRGC$BC*HGwB1^wnu!3EB6;u7N%<5_|kBCpTUn~{k`|9$yz6Na%5 z&yYDPPexpHC5}DU&l!H2Arj_6GD@SVeN#h#r&YJq*B9QU-cfvhW=24I+D2C1!?>B5 z&io*xB)1OPyww9TnjxJSFsddVO_7rS?;q)F>;OIfyxTE;9#r2i@S&kbDF(-k8B}*8 zOlY7Lche0{{l)W(>ra0Dgx_`KXQCJTuwY=`nN)m>M<&J-FN#LJW6_hdW#4tYUli(_ zr8;%R{f}e|BVUf+>%D!RPG2r$oEI{YI#T$z>xhkzqk-0`udIYCug^qUb{4x!lDqeN zoxxMv=){6kh>UhhvcmfE{za5Wt3!44!Q;fUSNfLmTR4cfi;@UhIrHZ7D3yCFeH*Ede4XV@vo7@^lM3fl?c%uK(x~U=zB*szb-iOb zJMiXZh8oQpi37&BXSh@h6)D~G_|*GNc&4d78Aq4^nSfU#LuZ!ta-lY3SSI_(a@qYw zyS@KQ*U<|^t44NZT~-C&5M;nuWHXWWg&2jdv-%QIW7i0yM6{aCmaG`)!v}WhZ>QmX6`OL8Dj|ChD#v2yq z#-^vJ7yl@wJ_4^A!Fo^by z#yeWo(Qct|0j`(T_QKl6+w<-ft3h7A5J9ESmQjLZiR`_hSI-H|X4D_K0@j(Hh-jar%1YTK6OTO}H~S9QfiKol z=~?m$t;QW|Vp52o|J`hxp@{(!z018UrK82>!EruyC3$3AlCaR3d8G+S4xvQ~C@|Gv zPFjN_y?R#0va$Gc8?qR9=aoe?GSf;ly9GtU(#c*8$6WE8tOqixF zxOqfs8JVetauo*vatp9R@qT6f4`u9JZ*X$*pP{CtgaY;f2;Jb|;JC9(jER{_XSJc1 z*!+K*Yy!$lQ2yD6oEA*Yi^~ANBFbE`jEtBVzjM!4x6j$x8Q>r|*()PjZONWfhSf>x zpBj7HhvJE`b*QVas{#AgGsJD1!dsWKH<Mk%7~KV{~xAU zMLyyG;lF`j)?R6``(7hvx6>E2xw#3@A`1Tjz0d*gR0tAYeBvOQGLUw&SOISS3ZTQg zyk3sa|C<;_MNV!q5>MI_j5K{ftz1DtL7@t4(P9yCg{f(1Ad%*0dX*Gm%YmHtHgl#% zg#{%*olLD#1<7*e^ZHn8Hdh1?N_7LguQogRV8DtweGR}RB_;3d7Gy2g`;!mA=&B&> zuQ|6zBAQifc>QaLzCX;XB{90=PnwQ-V?<8k+JP^(_r*5!QNaI(uSwkb0!cpvfi0jx z>oEAGs*gmEN0~YHXh13+*MgSe6HBhJ6)75K9W%gko%a8N5S9z}1`jukt>JHJs#Z@b zECsD$)`}h=YKns3(7GwOZ{Ll~hFi7X-x*@U5<;)a$nfp*Iv2~nD_@6|(b(H6Rs+Ky zRNXaq)UpdxpW>wT-Go-#ucDb*iPmF_990R4v%Fg(CN9|OE~-R&L(kJ1FSVuo zs;XiAKtZ@qOkr1ubY8CvNE8?x`jqiFlXf)W4+i>c>j)Sr80DYALwWH)Y6Hg zalIOC@@Ghh?5W`cd#NHtqVsjW)>D8)Hk?a51@Xb1kRWO1~W*mC=v81kw*1O zRT^o;vWBLEZA?%)%n$!XmOev^tM#KGUbxYu+w8JZj8S*>l{w^#e##0WMl~AAvkMvK z+Dt2|Zv49#USd=XSh$jp0fL&6R@QFG*EfyrgU*es{k*bnTK&3|l*MN5%eBpw+#A2b zgQ6x{NMNw~?a)V0sA?D&f)(#a|!h=mHe0P$ls_ zm{H*(!YUr|vVQOsmXN@n@5E8wZM{L2#uiZz7Yus_Pr;YUYw+#jo@Xua_NY4Ghc};1P+wL&9M_Er2 z-Y@%{yL}VLUF$DoL^hiqFguLFL+vWQK*{zEr>T1nC`C(6KHXpUlk}H(7@lXO+ z-CkxuqRIR3+dbmW-p5e$pd%pS2OGDD0~6=W9RpxihLIZ$%c_QHpr4RH#RD%s7M5lzNw>9 z2?!T&cq#ssOA5Qmt!GV@DIc6t?lrJKCvw^k-2#;HN59wGl-Vc=uQ=W6>Lxq z%m1rf7f4iZH`MtJT#o|@jLyi?6>pN)T$;k9>`SGW*~WVUsgp~D^oF~)j?wF`<%3+1 zh2Tyk2d-zMk*X=Z@~*BNx5V*DqwX?|COVl><=_nrZKLY95x;)`JMfZ1FMG6nVQG5ij}{kzQ<`MG!fx8;V83+uP)Gd0Rmt<1zn|ogofm#G zWv!i3Klmd`);F6TY@+kw&D!g9-F34mM320vTAWm^657DmGv^* zkI#yP#CQ(?VoFyGYEeQk+qal)^VsY^XIK*UR|glcDjSR=7&PW>(LhnH%sd;sgnIys z{`IF^FW0-;Ul(T@H~tWBKgBgf-Y>C?M* z&eE<`r=BW_JP$us^AoaY>CBEU-!>iJkw%r4=(8d$87b-D@bDg)nnDy522)NX@D$wc_9vu$vwp!cX54T5pEQ{9)rJAw>KxVMW#+Dv{`Tx9r*~= z_!l-RnkGdm{)61IDQZvQ6qFJqUxQQOG{?n_4aDK4C9F4+Y1m_aJHH5eA_|Jo!Vy$V z$WJ+JEa{biXNQv$Cs}rP*K4X2GdFKey0PyR2R}qg)nvF{xlj+d>XgRgH6k^rP;6d+ostlG;0NpWx}( zd&@5zJ`g-3w~Uu>&r0cRIFhaC&mEK`JZ8n2>=V;YBA4zNN-r44W&0Y1N&k{=%k&dY z&H*bN{1G}>SD38pM+yhIPwnn@EXeaM*;d))2PQdRLH$iCsV&u%W^A1@5cdS+JOm{q zCm-F^CMP6(g29@W^if1-9;Y7&UUS&q-nsansSL=^b8hD*A|m4E)pzG-`x z+Hi7Go$R8P32w=AC$^D(rR~2DIyzqdW>;&Toe?}2=e{5xVb`->QM_3Fh~I!_1WCy= z=--o6XS=_g8h*pRFk5;08jhDt@1x}BQv)rZ(L`6~`d8W_;ptw=a#BpKNf|+RC#{mA zsBtRrN!>*j@1p{HBcelTtY*Ypv#;$)IWQQKKm68hLx-eF3D7~w0@0Qhje8b=`ZQ<8 zlXYz!X1&6EL9!h}MFUN&rRSk1VQ4zF`Ym?O)OLWoG z;jj=BO z+?O}`l5r*yM$(i(u>u1~!&tNv1}RbOLM3HLjhT4Jd?81})K)c?1cuEyV>r0`Yg(=) z+1aG@Mvu+S4X}I^P0szokR%{i#eYW!QTtw~Jm>EqcG+AiYTrDQW^=n=Xsp z=5#umtCQ*Y_#0Cltr&z%BK0hz1U0%IV9^p~n{DBuq*WTFpZTtMJD2*8EVeWBn%e z-_>eE>U%Bv-SM;9HLvp=%wk=+DQ`-ZrW;{}pcDDpx!;$fQ5Ve^bsHgQF{YR+*cuNG z8EIPhU%tb}_ps=q_q=YGMU-qemLu)6DkqBw2lBAa_t!TgdTC?fq4wClENENMcFLZy z_4=gh$Y|W^e;w2zrQ(`5_Wr}m@I8MV_>w(Gpn3Kdv*VejzZ|hx*hEAJ32WL2|^#Cpv3bLBg&iR@I9Q4 z-ZK0gqWMKXpPt9SUT-3EYullXQeVwOqVh$#YLyTfBV^~3hQDLld9b|?Z#_~7zEgy}w6*hSO?=VxfYZ#!;DM!*wWC{Kx&L?0T3q}WJDK>?;vG3+GF{Q`9;l?(D^6%Im< zeheku*-Q;#WK4kIxGld+4IyuhINLtNwwIC`#&StOYQ=3AdfciVuQ@w~7_{VzH7qIK zTlNsuMzY2??}ql@uh ziVA-nc(2mMF&ia z(CUEo5lScR+MIRua^qOfyV4%8K<3XDy~mg?C0+-;F$nvW-(6my6gE_)R+i5bo36{x zbyjpbg2#8*mz;o*FxR))pB)pYph!Pzmsk90&XUxUg_DtK3mKdNoWbF>_UV8ZDLWPI zjG5ywf&13hP^!*FD#7a)(+VdH7%bgNc|)^;jY}jiZw%6q$5qtdxbsSG-ignM3YYQR zBiarIh5~5sbU@u6Z0jCos679T-xlP)wPza&s*7B#2}!_Fu?Yh}Mmf{xVf&B87Bpr8VDs%46YBLxsVal zM+2^BubYjEP|rlqT+d3+R!btBpv0n^nA^A9kXw~jPSaL^Ck3{>G*a6^5>#!KR=4O- z1Ei&t>vMbjOMwT|+$2~Rly_$<)>nY|udE35d`$9_^9AuUu`kSN<>q_8%DvsWvZRga zp413SLJET2JGbzohuq)Tw3qOu{Zs*K&Gx(aYRSyHsUz#G_2uje;VEcQr-FPjdsBzw z!>$3k)*ICQuOl&^Kyz_nT2Y;1NwPL5W{g|+)HptlGv}PQOlcNRDsAOHPcU-aelG`eDi>q`4_j>zwhNoGSAi7 zR$Hr%J}Ecno)<(|&w_l&qFW`V-0p18Me@MaG4uh6YkbK(zgbI`AzgprlzejUWX8^e z7y*(?Zh){Dtz-O2si+9T$d2at^OIK9A?}hO^#pp zk^h2iY~{x67W?5CmKhIcz5a9OEZPeoJ#d^dyy7EqXBhqStG%L9!zBCH23W}_$}Av! z|1gvjma1^m5SZW_V-FHq(2*oJG@DM5d;trG!BD$t}#y(QGks(gFLekUqIncX7_Q@A=`Ib+zH5>na&qTYDc*6OCW9h>8v);;?{GUjd{lz;;yK(14+u4W5nxL~;b^0pjz9 z|3YEGMMD4uuA-u%E_cxB-f)a8(Q11*j~??W0Q>?L0W@lLkjoV?Wooth!uxJ>1lrodosB)uJW^_}#q36MR)Bh^$tD~a&w|ECZ5hMhpJ4G5K zMM6?aK)O4my9Y#sp^@$qDd`R==?+1VmX0ALW(J0OXZ+oJ*S+h#wca1V;>?+IcJJ@m zXMgv{v)s9bRj)|VrY62y?VVk`RBl2>?^tE{(thwtEm4hA>)FkBC^`JB=~CkO4y?W3 zY^Kmx9p_G@QPZPLFoyQRB_YE z!mgh5FI0O5teQzA94^!^taElcZvvX7o6O1&y}nKCND~$ragA7z*dkD9qCvhS9sUcT)lpsTVL454TId6<^Uuf8e+EoXoW|Y)a;LDEp z%xc^me#6I`JYEH>f4BLjuOtOzBdfq|XFI0*hn5B*9 z!<*Mgb3e!9MfQ-T%PT2LUcW_2SV%iN_B*!d?tJS{Av1d?X2r4&j>rd&pm^oz+3Y zC;L{>?#3?>M~0WeS8D+X#FfMlCuD$Y!SFQKcc|#Kai@y4>Zu<#Rf;UBL^}oHqrlN2 zC3U<{W(x(wKLJx1+hIe;@hXsH83=k>5h%o zs2a6)cXxkIao_0E#o+JXbgwaQhtZ4@?Mhy!)Y*UCKHy-V2yx(Yf9_w~@@3K%e;=y+ zx?{mn?~&9gB~!ywA>sO$r=}O%)Z_9T{xI<;CWNuEiJ8 z{s%y4tRbV7Wr*izdl;iB+lP)#6^=m%>N=SRrjY07x%kPJ*fvDbD-dp+)5Jmi`rM*5 zU7#+)9JAjHxv2W4Z23u|WK}dbQ|fvgBALUltu?;%%!}7O%~Udnb3|}MLhl7i^o=|= zJ*5AJtDhaMc({gqp`>I7UKXE)D20yZFvr_+*uS!T)<5DF)}e3DH_Lbe=_pK6QA`Q9 zh+Bn_y-(i4QNwnKqd&O}@UcUvy&|RmyiOzR=;-Lw^sTt~DLcqht#lPA43_Z7=21Y} zdXEtX725iT2L$z@b5T`PQ?^OTrNLiaLhc|70j3(43I(qr1s~@V@gQmKG(-Asu;U>6 zk(({8YGAMzmsx6%xkSyMVK(&?##ob%(Bixmtoh=keS$K!PvtC$OAEEN>mUwS#mK1n ztske{95;4{DQPz?(HWST4T}B2)+7AzJZ;MdiPMgSqm)b7rNI9$ue>gkN zdeR(DfIZCSX?wB#K(r_YkBK(-++xxAB&S_aEHMEm`O-GT207nr+v)iw?z`y&Qmutk z6}1zc599WvYUc}Zn*D$+QFoqn>k=k~?#4up5tk+q4xE6}Uqsz3?fa8^R@H$am6~A9 zL9;T<&*%;84%@Z&SicwpZ&dEbDLG7FhP={M?)L2ma1n-RYzDI5JjE{2$*SEb{9pu! z!=;L!Jj5_1>w1VuCbGJq)1osRVkz?Z0mG_~*q%$H>q12dorkcf0`%E!jdy>ZO0U@y zh+U#?=G((b`tQ%EF`k8eNMRLz{rWN0hr$pI0#~*BoNqtX3%}0)9P(NEzB-m{FMUDU zvyiXh;UAPFjg%SQO;D*UGTF)AOi56YUOuHuT}s}#Q+Gmg`3C6Gn5-gliU*vX$Z&AI zJsk;N)p7hDD-tqjU(^Tv^7rW8IUYDTmEO+x)NEg*?07UL7U@C(Kfoim_s3RM&YfF) z(Fy-v!QML?$ocNMyS9K-U{FuFTGR){tn7%;#I+(wx)F4<&*O#4Z}WV$-%dXXG}m0x zpklKYLzZu`yR7QomONoA+1!a?BZ*pCF)fOvz#O-01JJ^hNAK2uf7Ee6Q^QmcpXbt4 zOqs5^Y435PD(s0LhAs~r0CO_OhoD+NQv}W|B|3aQgmu)W1$jBc5mlZAhc@l4x9zk1 ztlu{%6|z3#hGf&)6GKae{rcMEC1s^gHEZfUECSIYVnqxaR}AIW_l`Qmyx)0PrZrA$ z)D<$9wS;BN^00f{rwZOW^K~QFvr1=V;!U+RqnXH{q7+~F6V#Q_6R639)9C7g$9E_a zk$BH#z8pv%*f_mXp;Gy#JP#rL`UFa>#!PVvpOggHjpkx>npgXRh$Le@x_8oI*<6u~&I3yiGPegAYQrDw0X>3)ry7EzoFz_myXsejgrg z$d~Nb3smHX$UpGHHS@X@1Q(07RhOTg`@MA7%0DgHA9$nu!*slGy%b!aV!Sy%Zju>6 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 bzXSPN%DuCUFPsJ{(jW!dH!_t{rXT(f4m2EE literal 44311 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 literal 11257 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 lJ3?e*>imMju9J3~33Yf4#@ zKbT$JSrNcRmFQpjAw!!m+?fdiV~EU+F{_s7^S-y=kb-4qk%H;pi}lcg^@SlrN&&p# zEpmB6v=A04GUEZod5o247VHHw>W%8q-!%du9PUt+{_szc=5^@(F#Bq{@*PUwC;Nd0UM=huH+;6`R{rS6o*}3Jg4}&GRP-%WpzxwL*IY_2lVI%?&F0Z4R-d9zlgykN`L3Pr2o?Z4# zoePNI=L-<6J#;}mOPD}imy*ELV3qwJB4#jnXKX;8#xT&Hk>e$ z5%^bl-k^YKr}vlpZTasFXZzc|A)$C$mSp_gN7MRzSs^;p8G#sDVCj~eu8eG`Rp?|8 zFyP}6Ykz=3u)fY+>EPQ`Hx9`0gu47~M>pUOYt0TzMw6mGTe}3Y zt@{HcOQ1g|5ql4z0o8FvXG^T3P6PGXS@?}aa>-D?tu8-u^^Iqfu>!cE@nSnGhLB+W z1$Yvtv5M!2*)dN}eP?hnr=Myt8|{sggyHl^QjH)&(Ys#YwPg+y8Js^W^sozm+lEJC1V%{t@K(o_(0t2hOp;X zMgMgmm3e>$x(}clNjShX2y!O=HgfIE5Q|tZf|@X`f@OQ0g{6xu)L}Oa))&h4ze-N^|}3Y8o5%+#b>`a(cNyq`R{049P`# z?-AUt#Hewol*99R=GHrXxTU5eS7Ni6!J^hJCHw^QA3%`br}-lj^w-Pv(WtoXRvQ3e zQsyl?S!>ey-dsaz+hNY31}2{)I3k|kwbfWjlUGKvehB6u2>Bs%Wr0HF+pynBbR#3XqT-K=;S6^YV!3Y%_eGz1>{XcRflj>S!ZgP^gggzyUaji{F%t4 z(LG2TcGryEdlWhDwo>Px4x(zFu*#bxSG~C)($`SmM83+{4cn2qO0Fo&erpo-D=k3K-WEHq#d?S5@>sk^ zTx8PMSitHB+lRdT{Qo+8qcpWw9Q}V^Qmkunb3)#)cH=^7#+D-zCr0`01M_6v27F>u zWmbUZ!orE;4{LdjGJ>NGg68rXsDHS6LVWI58agw`^8B|L2P@HAdmhA5;b3D6)N>eF z6vUTdsU8-vnJ-4-OvDn|9}CMp~%RhxZ0YVtE>u^ zpd`{$QJyzbdRFV60boxu%ZGe778 zfif-)qbCu=H7<|a+TmBQ{TKyv1{8Wum3;J2ru5U&ZjOCdK7i#Ydksq42tKT$=%0N-3e?&ba2^ zaq*p}ZitVGb`f}rIiXP$D5cI3?aijwm3%Ln@8)wdSkm$DP)sjlM|QOA&sN&>eQt}7 zbK+v4Cmi^Ai8y7T47eu{J*L#QrkQm=$VV5msEI1bwj(gQ&30!%*5-S)aiksp{9r^X zs{M*gBsD(}6qtnu$yO{mS%j_{GH3oCS)(gSoB%6aT=Jlp(%TGHrQLoMC?Z%?{n7{* znEb%7_e%#p97>yg2`YIy+b>>9v5YYt)$aft6;txPJAbH_h^70xB^6S1NMIm+dO!E3 zr%8}?u!IoDdkhN);brWDjc!c^D}1Z-j|UALgs^M^oFurz-*E=OXaqFldwhwehwRDi z@arKE2c#ta${k1{o?W>U}T zu(z%ij?JDaPD2Cz$zu*7y~}OSl_c=*)^^ zQEu1Ps)aP^7vk|WZ$=4*SdImei4S&X+1Af|rC^m4huvSbJoqz%=2eJPph8v+hKe^8 zF_K=Xf~ww$HCy#%Bf0S$;VTX2jpGZC_`6ZkTm7ze33cI8aw!A95pO6M{2uUep~@%2 z|FhtY-@1)LVHI5l9d4v^FyA(1j;R&gkEP|AUS#lvR5PKlCG)!vSLu)nb>O;*7M?eS zGp~(;Y^Ojg1|VP79k>l){Cr~3h(B<*9}h+`23foUAAYY0b5dYJJx!#Ojt>0(6%bqg zVyY$O<>!Je0P$u@U4`IQu%bjA@uwLBlP-BkH8}PKF^RvpG-)rQU<_7DUQDTeGOdS8 zP0*r}&XQDo&Vdv8=E;B7pncCN%kHUvXS_j<%*^v9k~+sRPl4;yq{Gb?zdfzUe4~}4 zI2W(EwPY0s6=M|7?qGg^Ks8dj#AD3wKB#ph)EJAr9;0kH0#8P(PQH@zW%?rv+W##8X2Olfx6JKXA=@L}@Lh$~$Q z!Etz(T>!?L{`#I!5lqb$nZB)v*uDi+muW!mXPmQwdu(yVP$p5w~i!Nk2 z{F?zbTBp8HX(qqKsCM}GLo_|8hv-ZV+qc1s%F$EgDw0;woO(Fs854Q7^Vs{A|K4S> z3lH+@w$5-v3iEKN+42I9epU#~#eS{kn0U-Q=zFa0Sj|$Ss#WUb#DBJRq(kx; zW#@8?gEMi_p+~U7nV(L2vCX0{a%lXm7it>HiNoG!%S)O~n~*1f9R28keJswKzY~+& zBx#DUFgK^%E&UPo9(04{5A8O|A`y<1*Sjvk0|h zc1zY?#jyKiY~3&Hwp3n-eKs!x^t%;y;XPBXH&IaUB>ffFrm{$PSBgXL4l6zBK&398RMugm`9xmXwGZ4-=n-#>-sH5{qncZ=_`3sN+vuq57q|y6JC)d zce;l6rsy*c!XGXXVR0o6_2>OtXgW6HH8YaO3`0c0ot?D+6|WSJSLsj~V*EQq8I zP~~|&rP|n{l3q`7H(nx0WXcSOw7(#MDk$*SOk&12qzm5yp%n$6izb}Ybe$tnflSxF zq}}7kb(i?I;8o;Uv#*3P9gmwn)omwqmKjR>+}F=qkmdmo0lpq%uF)qlVlu^}UaaPeL-Kyp3VdaR1sJ&laDo zrc3D*PYWlgcMjX5^3Pq{-odxP7w)T*(-lkgkC(+2X8hH_>bu=0Z9w@j9gMo2bB3w2 zz7f$4InYP?DmE3!i+E0@cy$1Wz@%H3t|T0~dSZEL}0l&RR|*6`M0l8 z9FGyvd65)aDq^EFZDIjRh_nu!jb4}oz3D&WqtX0;n0v$Ku&tTQU)f1CnjC<1Zf`Zm zV3jebJa(BTe|x*!*DQ^AP@WfO>16cQfwj%;d_%n1%D*pYF1dA~gl9JNKAKybb~&uf z<3A?z%|SRBXP19cEW0Q9l9Dl6N$7rFRjIc(b9oM zs%{TTeF(9b!Juos1xc;reo;sBmsU_-V5shx{n+jd%MAv@4$<^jhzgg(rmf~rw%rap zzL}lIC4G1eC%irakDPgOd=w6_pG@^ej4(26Ds_rNFzM{3G$>N}yYASrBn7(iWg&7j zKlY@(E5J5=Zzn*)ng_mudXSf}5jH3pRtUMZcwQSeWuI%F0qlanaMHpAptgI0o%vaTqkkRr_z z;acRKPWq09-AY@4EY9)D6JySo)AhxZ^YtxSdTDyM}42|FR=k&do z^QB#|6kZy9L=;UGRv##(rR$3v^cm*qX)BgB`BwgjNF{C8S%!lyK`XB61YHErSu`e+ zDZZZdF7}7!*oDd8mGi1|cOUgBGKgRVeQ5`zSI0*!>Ye~sxQvNwy-)T}e+ScCW6Gib zQGPfI;k_+u;M40O7K2!;_8gq=hU zTz_Ni3KE2+y%CK*>?5RQkr-PSaiu`IKFj5b!2?mYLi!A~-r@n8%a>(EAK&Psft}i6 zB2}V|RX3fA^pB&$crrMWQj0JhDJ@SGsmR=OUT5LZ?*JDHv0LVo{5F^;5Q5vNHG!_N zsyr{(e*)B-RKo_b>a2a&?3&A!nOqrnTnANZhNaP%rYw@Ev)U2gCAOV4{FqXv>=W+! z(e|-IXpr6PDlTMA4L@fpu;hRj)v7murGF{eJ&^lMNp) z)%3xMzxY-78Gj_$*=MhW+%fQt-k5OE>)`LkE9`Ps16HumD7ir8|1ERy3--StmTG

    PQQBW#Tm|3cSd!iuxMmbLFf#hr#S`uj`Pv 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 AS^xk5 diff --git a/doc/3-pattern/channelbar.png b/doc/3-pattern/channelbar.png index 61a62133fb40e7851854ba15a6d0df20523b1cb8..6ef20cb43b7fede00be46ac91079fa4a9587ab24 100644 GIT binary patch literal 63739 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 X;o+87^dWmb9`I3?e=3K3Z0`Sm0zbuz literal 73633 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 V`WcPE0P$JDH4T0Bw`w*a{|%}`Z#e(} literal 70066 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 wlGBO0r|Hn84Eli321_5Su;<`1 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 P6ms{D*6kt{%b@=Q!)TML diff --git a/doc/3-pattern/keyboard.png b/doc/3-pattern/keyboard.png index 67f0b78d8476831a68f24dbdaae2376d7e57380b..7042af1c175fb6ad3943698fcec1d16f86e2c2a7 100644 GIT binary patch literal 85019 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

    uFz-rjzzqtVv+rNiE|215* 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

    gRef|K~|BZk4u^BPVwm`KM4K=kebRL~JEBEnU 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%0AdJMELp@MW5=N_Prp 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 *V`_DOF`e?ayr1c5HF*ESI0sUJ?57~^ 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%0Amflmo~!|cfOAjB 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 z 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⋙h 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ð@MSgMFXE=ct*I6j- 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

    A+-7;cZEyxS*m_Nv+nDx) zQQGQpcGSP2O|DrB>U6xY(MRq6MSb(ha+``uQC-tiV>+nxsf6Sh$XWw4^t{|;+;!uh z%A~P^($fjx!})NEcH!3@6{RJK=HTSt>}EwE)!&oHetN}Tn^p?V8`H5E%B;Rp`M3~G zm@9u5m^F+JH0#y{_HIO%%?kh?Yl5!&6b3sTuxhIr6(vTAsV~IO*koCO4=08cHM5$7 zr7-dXWg3jqZnbsv7`NIpZ%Y}m+RIja`s^@_67id1e>V5jh0xOd1fQp8A(O1g>J@*; zC1$c;yIg-od$Y+An4vTEskIJ0FXFG){srgzkDmlQu%@w%zXy)eIs7JjW7^{}J>;+K|6@(+&(VGHNB69vt;8TB-ABNIUB~`$) zZur6@QI_VCWchmOmuPzGfiYIMG>KL1A2^Qobo~{}aI1CmT|j^&=s43bb2;)&N@+v7 zs;jXLE?xw0^Ax8x114n2op9USyaPk(xbwV|nr*fcR=rAz0^;xzXsGQ?c~ z0s;0@7g)vA=J`l|)f$Ca>~w4`9=7ar1#VrFiO-w;D)gL}@ZJv{;>9O&fduhNK$5b9 z619BMLh%`V3Qyj&CEI3+Z4uDVp+*kOj&F)JbzoPbx<88<^_C}(x7`l!Li2GFCq3Ex z)3XOQD`;|FsUJt1Jd^tLT6YU22926=Pm8@5!A#}Zt|%+^){2$Y*{t!HiJFAhg}I}w z!l4d4l!tL)q|3~l^k|nBt0j2iyJ2>%Il@22EgCp+BoQb4+CA|p3X^lC4-BNyqeTYv z0(ygASI9aqrkZRN5mqg2>9yzE2U!s+-}x6!)MT_3xfC}ph{$nGxlyTovNbV_DjM!G z4TcGj)l%0S{rXD2N%l5siz5(-O}8{WP7i~c z!t{0pUHcUb;b5#vmCx>~@~h(OB$yJehSgq8n8B+Xi-s0?Zf7zGCKXx_ z-ng9%qKf!I=2Eqn!h{jtqKpm>%iDH5l1x`A-0`pxw=eG=7P>vGT^L$vK)s7n`YBI5 zToxJQhQ#wR^p0A@hN4oqNn}&&E~toAjsz|8Vv6}S|1cvWQrfV ze1}H5>rt3=%~!57ricNI0mN-L7%zk}iyA!LpN3!CZ+1}Sh<*E%^Yaen<(-Jp&Onr# ziGQsf&)eGp0s4g7ojs3Qe{OJC+8fEgwvW4NRFgsafm<$pkx}Q8x@d;D>mqjRSbv(P zN_#7p>}IZt0;h64pD^-C*9tlweI0Bh*aZx1F&3z%IUXM@JS1l%OV#zWenugY4jkd}c{#-r z*Hzb%^xfqNY~bq#`;7d(-6s1@iz_~3K3{Y(B%diQyY{zsa6Dg6s&_PsHa6seM}pnn z`8P(3RMq)8^2Yqs{hQCXX8yM%NAZTxZ_OPskcdAeN}dIi5v31E>L?km?N5K41h-UrMk3|t({zu6|F#sTC|OqeK(Ce&SzfA~h3GdgH)qtrMUyP3TF|o_747}C zHd+;klE>Z84fAa8R{h~h^GW;u@Goi0Mit*ZL>X6`<|%fqiN{1Cmpo7}iT_8^9HbzB zXc{Em+sZ}{pyPa|o4&{Rhy~GfH>qmFO&2=ktT`Z~jv?5e7dvU*4%eanU1$4kd0gq4 z8J5)kFZJ$zUO|6((o{_<@NlBL5wwZt9CA%l7|bfwC5AwJjYil1Ig6I}G~ng-YClir z+FQ|~KW&k=@hT4g)!f4Tv7c&BAzG#{wnwolWYasI&9$8Yg%8)`tQ^If_Bhj*zo2wEO|^5N4~HVy({9J|tKkFK z$pUv6G4f)+lgw=Sa^2?edK;P)(;xQv~J$lEpCrDQO?@F{~SjCf?Q7|uMpSu zWtDWVlM$ZK=FtCH+WVi6;Z&6EO1`QiME;5Af%g-+#p{lutR`Y$HRu)>{qg#{zrveR z8WE4}+g`nBEejb-Ep!5=7wCbUJj)pEpM2mXTJ8e}4;|$i3i@wGAvC@=#Lbw#!c#fZ zNXsnF1u_V8vJYa29)$lhml(P4Xo$$XOz1Rox zDSU0F%&$RBM=q)k-II==YTo@GJ?i*0+JsI6Xo7wWXf34M)c#XSc)cT<%cU3e(FO+Q5~R)}!7 zSh$VddF#<5Ve#z|6_)fAX#(ZI;+(mL3SxWmV=`=(LD7S@ZONGMfjZ{8o_z6UdE<7A zg=au4zX+zXIvB4BYuT{;z-;k+0#>iJzZ9+@1A z-PwE`RWrQ-+v<#k!RmEl=B-ehs%DCr^z>v)^&Q)<1i7*eVUZ^Q*W&FX62)AyfcU|69pY9FTeSiVp*s;KZwX> zy)gu)-jTIXD|OfHa`F0Fk~)ryg+N!ve}k|ttwu`0w?bqwpr9T`Q|w*jac=Z$s!D-2 zsOND#a9(|rW#cmEx;=RQu6~5ih=y^ibVf-=YU=y%Rlh?bN1Cs{W%ilt`|#5m75@Mm zgo~6Ad;nGxlL$f!Ly(6nrs+pVK^u*_VnSgZy4${5A2QL1?~i4mGkAx=< zhMjyIA^?R5eOFkqe=u@NY?wKh6Fc1N%5|hEt2$-js2v#Lv0jx8lxen>q93)DqSw-C zFlr_2SNou#Dx2nVV*B?h{$ITg?+t2Q1W-f<5ki%e*^e1^X%VC^Gn%|kstSJ=sDA$* zg=vn4zxMZ&ojJGNt~ls4El)*@_Gbx$)N(Ih*tElFYK0^rABIfq%-}c4tx2u*siD3} zhq1hmV^FR6n39mVT(y%?24~`6;xF6VKg@ZrUzBO8G37pH<)g7LgDDu3AW0Xv_gGpz z3%@&yL;Bo&Bjid>;&U)7WckahYx`kMJpxFIXPUZ^*JWR9c6)8Ue|Q_-B%a)Q@t&nx zB9c0_Xp+zK{W|)boQ88Q4$tkT>%1yyxbyp$1+(FGQIOCUY-u~h+& zRXvz8XM3+V>x@8lrT}?O)|UQ&+3(3H$1~L5ID%KVF;~Hb@!-2)LdlBcIicx<)O~Ep zYctpc!RpiHcSJm(rHu!2z>(NaYL}<|Dw!dDL%@5T#Gk7A7p%(Od;t#Zd(OHQj~m)| z_z2{P}D<9m(4J-<~LSHU47j1pr5 zemM&MMt#YB?s<5MmeM}JGkCEX+i3EV&p9BiR7oe9FGrNC>16Y#=n%>W@Ozlk35Of{ z+6X@5#9Hqzp>A#O7W7oaFXbi^oeGU12~!?rD2YUF^vg<8@#QS2a9LZhs%@Yo>0n@8 zKDOz}wI2YLT1Q1Z3wBqM1pa9zLF1+$wO>@|g7>25QZ^3(XaZebU)Jm3AIu?ovP!{T z1pUYj74)ioqXeikw)0)}wcT)an@FYucs3h0}}W31n>0@~ydpl`d>K<2E zs2qmfZl1~fdS@zuPqCJp%X8PRT;tI{z+Jhgz)+(UD}(;2dOd!v)o7xctreyVssWOZ zt>=%iad8^P-uH~WT$V-c5BM%>WApK~PH&UVw$=n3)Ydlkhofo&I99_cBD9x%>^@&y z7_spZw2}K0Nnits8JblT+1-K9J*jNTeX(64tYN{b?2TG$;J>#WzIQN}_Xgcyq(b%z zcUgg4fgUh&iV?0!7ieY3o8zfLX}H#1EYU<>NGfGqCn!U2;Oj~hSPCC5kIQnm#RL&< z+OYN6Lejqac>68GI?9vjAGIF|fE%5`$0gv0Ke-YxAO-%}NrPb7K!bG-q{Y?2(Y_P4 z!j$KzVA*NCrV!ZVatLhd$AR|w^wwwBI@A2dvxvu3v37V);viUG)4^?)a+77rXozCL zhRVb&67IksS?JbC)g5C8oo(=Mo?eNAWl~DkY?QH3faXh8cvrRYXAean42-G^25Hs} z!(ATHHQRHKM(U2^k=*dS_iAFQjoGP(#jihqL6vi~W*b0VY7OAvpH|a<#Eo%2CH@;oo#AJk z%=RkOS|l@^*V7j8yX5lBQJDN~uP3Np>KYb>W8H=Mdu49!`s;z%uA=RF2N))tG$LEuT+;T1%AoTMJFXc;^BH0(#^f*P9pPPK^X~i+?j&qUc1f8 z^rm5g^0C7nh(K*5c|Ihd-wCZ+RI3zlpkcU70UvH9VD(7SmVQl37Y`r~pCX6HvVY)T zQ6p~sG1rvdX~P*6ms|jKtxscBBE)qI=(fpo3(^RIm-r}`0L%s=8Kj`}nCX5-arLHO z+Xf(`Wn`r9*45V&_|kPFCOt$1`wZ})w!b9jC}d?O8pFXEyw64iC?K)aZug^^*V)IP z-oM}eHZv18sEWZ!0rVxQOHTSDoby9@dXWePEaD0x69C7fxRHG&PdhK*KMFUgOt20_AEfA%%urrQx$()v(exfgc4aR z&CC*cd%W5`lTtQE(9T7Z$vJbfX{#_Y|uv< zNa`g9loDjXw^ifl(l9(_uQs1T{K`~aQ}s8(telDBr#@3;p8z-4u~+DH*q!6CWY!4F z{cw!=4}qUSH0qz&NvwM@6V?{5qWQeAzOlHHzTaIbN^(@ZAUr7Rb=Vnh-6WZ@!B-DJp>(ePxDVc|K_8(4g}kIXSNtupB}37jy@6nJFLKI za!B5AuGwa>Ro)PTvUl)*RaV#e$Q|lXl_~HecA$(ldh}Nieu|akpVb)Hz5W5Ihbvuu ze$bU02Xle;^`3$@+`!Oak`s<$t`J+Tt_}hHBQ>?pulO}EE^s*3fGPc0Z;H}1{-hh? z9krjqd!`LnRI*XT16go4&)xoagq>{k`NI!g_$K6}Ld&7E_;D8#=%D^M6hFziG&Z;^WoNARoOv=z@((93S;{CRz)mL2EA6FjyRWdF zgZ@oT@0fAmaCF6s1N;>f7G5LvW2XS`B%x*}(=_U9zKM%@l zDKIrOG}O`xTP^;Zq+O6z*WA!R=qGvji=?SnIqr|$&?YYL9ht71hf_v6BJVm5k1U&LrRe+apN-RrMr1XS=AKRbRD%iJ`Y;z5D?dG+}*Ml*t@ z&h0}%hqeeYXc|EvGqwMFn+){XLN75mc-1)I8b`GF--y3SBuwFKr!Lytd4r`r98^E_ zxdz?KL>LP4Ws9-Fg2Wz9_k&INA-N841AE_Fm%kv|G z$~IJTIv$yhs&dsZpiVR%b|$%BBs{kWLRRQ|VWwL!()SIHCrD<9XQWy=_)45d2|+5w z*%eeFNDmqru`2YZ4po^&W7nnk^Z`AXjopim5T~A0ugFi-R5*SB+f~ zHzg#N&#+j=x^b+wKVEZ7zT;ZHk#~Eju0ixil(zkrF)yS|mgp!M^w`3P6nlM4tvIxH z^I!WUpR{wKpg4Tvb=>H}5Cf!@M^z3wy_oN-b~AnNqQ>DwDT)Llngkvbo+$qnJ_tM} zdqO@!s@h<19B8+w+iP;c2!MVGgOXRW2mqIVwOtj|g$gfT7lpx4Ljs~;#;;VxBVjZw z#>F_Nl&jjAbNh4r0;3g6rjEvZuSC!NhH41S$euIOWrecLbCd*3Wkc0 zwvLqU*j3f8&fVq1iD7u>UBO(8TBj07gb`L295gL% zRIWUV5wMD#pl9fo`|{iuu?=5Tk9ssfU}}nD7uh`B5wt(;Btk723JDo}3rD`omP_#< z+B6%pia*5;50qb&q57Ix?dEY^<)1=DqpA33fpyU=;JtZxguX(-pCR)4BDmk*TDyDh zLt!Y<&M>Q{$giiZBa-2>fUI>CTNA%0ZcK+5%t7d^lLMunTLkJ^TM9+Xg~e3vbzL9Y zj#GfR_rFn_aaIc?5Fef={HRNads?1*Z>{J=GkMA1tVrd<6yEDq6<0D@uW%6~H!ayX z49F2@sy0jl8PtND=Ys+IIX(zg4AR(Ssbd+0YRPGu$&Caz!WEtRhGU0Wkmw2af!z<( zcrt^kT@A*jEmzrIdifftjy1*r7#>%Z!0cDtztuGOKdRm`Dyr@e8z!Z@q@^3_p(F() zhVGOG#i2_&q`P52Qd*E68cAuTW9V+Ao9B4{-*-Lh;R7F7GpxPO*}uN7YdebKfihEi z-<13fFVq)F@g2~ap1ZQXIc$i~4s3C8b$xBx_L7WjXJ^OrVpk)osw&_4L$`;)0q;mB zGySnP=G(%bB(54RDKxb{Vw4}gDpca{24q@_*ut=XQi4uWyP>e1#~-CW-2X?qMKjjuHF z65AQsZ7%79yD56QTGO46rzBVQ*6uheEJOa?Yte2dot`XavVR&%ozB;WuQL`>_oGhJ zC^gf}y==ayB20x{uSG_9zeD3JBmB*n`~fF6cCLrSbDdd6O8yIJ3{8MTnVHEf`bwWD zq)G(5GEO*_sj$rxx54}lQ^bn7P}5+sO9*nu*=nS-m{dd5K|J3qIy` zigzGl`3SSOEZ82QfoNt=dZU4w(XzdO-(5kS!%jqR!Tk{%|K5p6)gv#Nk(`32CxAi0 zquSUNxx0_IsIM|pE*z_nu)X{`Tox~BwXMx>E5$8hEMJ0-cC z%%+209bgDIclD8FjXBV3v+Z(#yO@;Zx!bn7I2Mb+feN-UXKg1E{EPD1Y?V3;fqIqi z&x^kRhF`bRSmd+Y>hwo8Rs&q)Klyc_q-wa|>AIipGUz=S=M#GN(bm1nO^dEalog!w zNwGU3-H}g!U=(~mp2x4Jt3z%m+N~uWz=n*dqo67m={PN;sm>UCo?cBi^|ir4EPCK` zKX=$&AheVvz0z1xs{iGDl0}u!@7x$%5MD;}`3*_0sgz+lL=qR;pgYGZwIE9Mmt&^p z^>SM}j}zI{Uz*|*yrsD1sq3#JzkFj{%Rxu({(J9>%e`dR@5d0OsoLi9&f21 z*&9IlcAI^$$nDpiR1W%SJoF&=aoqLBZn!T#Clm^#UsNqQI5?1Q??~DBE#K<4r}f2R zEZX^ga8irsBl7#L+Vam+l>8o&3gmpRCAoZ4FDvq36i%e~rZ>;B(zjQ`x%!HbL1!nc z6DeJ%N%i^Vw@cq_SDDFzh{jiKuKRxiAtgx@^AB)6Prb+kp}G4tK44w8;3H1_v+H|#vLzABC znt^qL7>gn!ir=Z-5YSJ(mt%cPYVFz;IHVT$t7^_X5@lW#p@={BHUODdze<*do>_cz zg=MpEo?4(@3RS^wzZY5t(d@O zo0NJG*oc;NZr%uL7mHzt(MFT?V-u6FGoPtkCm!`sH@cC>&*-mYJV0toYsA!Zk1{8e z3EF@SO4r1-?$xqR+s>P`lnxOfK4BTVN{auLR?v*9qXTXlGEv2HG#YFFle&VHfD?1v zv59-YyG*`jgNDO9FPu#PNuqC8hIVUKa5!34Zckx?8rpA3K+TxhUdW*Kk%H#(PD7y1 zcS;WVS7BCif1Ch7J~6`c0DkXn_6OCXY*~g)Ywb(k@%)eWYN9U@X%-tK-34*VOh=sa zImAdnBCG%gH6-;Y@E?v88$J5PUH)N&&U8%t%1G4l?`{^-z5R8<8C+d^N>I9^SeQPb zq_I3Unm&@%4-_EtxO0Oo!TiqWxWpr@LUB4cnU<`5SAP%tDgY>9V5C?Q&))BO$_%Bm z*=kJ#!H{Q4M!2$iL3Jr}4APEZYp4?{s;-KHg;|ER2c9%SSClJC1B(VQknS(6s;q8Wg{zgPGI-PdF`Jlh8LnUlZLEgo()js3&q61q2T{e8eK z!g9(4?H#$*&Nc&U4bIm=SD0cX%{Kt*y6_`D;USPk_{WfQlj{@a z#8+XYiovlo0>B zBviX!rd{4E7|Q!uK4;3hjRk20Zm+uzq)@TEQ0M_y4wm`+3IgzD^18w9Y+7%apftfy zIEJcmEOdE$1NL9v2BWg9@cm#9OmUf#dV&hk)KEvVGmx;A(yoicLqh?0{ZL^#VUFt3 z&6_GavNaq2001=HUSX5NE@lCtAKM{}Tef3k2EhZLh5r$A_Hq8?`>W+Czb z%(^%?6t~7lb(NV81+wm}rMz4azRG+J4EgBbn+3u*4r|4<2QUnzP84xSxf10W6{Il= z;dPO)ip<{WU#*Csz;sR84vV6mk7A&vqT?;%sKi{eL&>&iD6y8R&cKuAX9RhRvn&ib86KrBIV%F|?J z)F)X((DwOV(xji5=S2I!Yv~}>HO9e`@oO6PKSuiGUp-K!veCaW19pKAD|@B%6O2Pn zq;I+y56u^kfWom<;n7gz-L4hyf9BG|0*jOjL_5USrFq48zB#Wv5@h)x1U6WBhlrY>g7@L1F2Mif>rn7rfj~=`bkrw|dlty=3lBh8~L8|~prS0p+L7|AW&x~Tw&7h{b8uAM3n{G|bS@_J18>p1_QU~Ah?>zqKwywL3! z2%!2xsekO_Y1h*ebiKQcHA?wNb2%mT4^RvokN7*spQ3Zx;PeZ5=Ny!_cI% zx36e`oc5RNFE;u(Owe~Tkwr4plnMzDl-4Q+$FrB_gwk@&w?r-~Zq? zZI3e~5wK=s_$F9;_K=+kcFA?Lg~osFR8&-S=TCL0EE9PbIVT06&45*xIcb?`&C~-+ zP7fi{TQ6ps?fZEm4xiHd5i&pS37dB)DYe7d{1Xs50%Tge)H|tS@r%mYzsz^>y+6{R z+gyZt&A5uVw7RCoIG?P!9Q*%dC9pGH^Ys0}vfC43AFa+a9Jp&x54&Y5LAc!iGCX^S zF`P^Vd3XHQe@W~Z;2IFSasH@JyJ&2D40V5#u(o~mCVX|U$b{k`rB$uQ_;g*Vg>go^ zam&F)^*=|0=cEN5LQk8b34$8qslp?m$MTlVZJokjpr6k?`ai@yL_tTt@=9e>$TFog zoh<9=DJWK)i-Ef$T{w5lguF zi(EL_Bg#3vdciqno#x`yS(0wvM$fGi(#cvop3vW{tT#v?1r4_65_W$i6grkud!@C_ zZNB8BHNv^s{T*$$oRX4Kc0hHPp+ITkBVncDfA-ke4`yt+OUAWt3{-es`&n6PWa;%w)S&QM|C2J095ks9c`3(uwU%HV_gL7VorFP##=bXO zh(PYTyxXdh-{;yXWmQw_TO%Gqq;fpp~;eu3GU zq2+WR)=DbH*|UhJ{&qayFkvRMRXWHQSdpq$yax$2<)M$}mhXSa?cy!UR$TfZF7+=! zIk7<4qxQS_7G#~00S;2DQ}QtNjYu>!Y$%Rr;}!tlt{<{g-8SW=#FcTK-PqeXhT*!2s|!|iXskQ~^1y~IcaNB0LqpG$ zVfLsFRUu|{RHC!h;ne)nK20wt>%>o`>-Vk(L7PtD~eX`uX67WoYUz#68+$2dy z7j#P=hE0C9Kh5Fxf|Z<{JUBSmY2g|F3+r1tOt3TuGiMIa4e&>l+E!_{tgRscF{p*zgHC0vlUIQ~TfY&gxUIQ!~U0S!wcrd+b z`04Tf`9YCSlare}%v4EPnZbZVSNmb*`H|N50|XMsEh#Da-1+?YTFp2S2J<3ODl#>S z#t{IJc%mh$Id_)_WTfI8930B3s<>}T@v+!7B4mh>K;F37FeFg3NDw~IaZwtM?gCdH z&ex&Q$$`PK9UT(UrBUy!H~M3J=UJSBj2a!J_q%p?ce}e~l47?@)ONMv)4d}Z)!O0`@=UQg>SOE z!OGy*8S^L*3*w1Z&y$!KY!p&p8YC?(-TwLV!+F>K{s&E=tnu9EhjX=#Lvm+lXSdkC zzCM7bd5(OIttg|9I!VYyl8KYJ&rj0uY?nohN_)<^c$$<>i>j;8I;fLrg)1 zn3vLl%>Unpsk2)sL0sONltAafu+-;gHnUT5l+4}r$@A5b5jNl1`8ghy@apz<|0ZjF zCw3b>3(G+DQmy-e?i5{WYU=4gj+p1&)zSUqy=U)MSE0D4#v{;>eO+QD5^%bT*gZNj zGSb#2K0<`f1~JFIxxas&F^(Wf`FHRD#sIGBQVg_>5G|Jkjxu8fT#WU>wDGe)3S>gA z0-!V9|J@ky+O~6WfY(|Nn*}_|T__jQ-4ES)in%Rn)eq!LIEcsVL$MH=7;orQR-tTMaeOCRqCJp2tWE3;Qr#F+4>tE?<7b#ig(Wo1-2Y8k&@pG&D5y<3}_Y46Zio#6?G!${GXIv3^3; zgZ_kx1zgC#dxzeirK6*Bnv^S_nWyqU8@1Vg2~$!~xVgLEz8FRyV#EZ_+p0}Gu>UUbviqtn zGU&+d(fpVYHZM(`QC7A$o-6rx?PZP2!;SOPF&YCyVNnqyaQczP0J|)}|7N?+>}YMe zi3{JfMtiziFV4BL%Vcw~zOJU@DxnXLfcQnQ&~)}X`J8}BE?f)22*2$__x5l~-5 zRg+k#_)*siH@yDOg{KfUvr`>IUvKZ`-ed{jXaN(tL0Gj@28dKAEUMWrdEO&9hco^A zHgUlz2jmP**qsgFpUa&q1k?mW{Q; zNQ}_F0q!Re4b}vf3Dx`IaCt{Z?-GC!@dy+!@d=t{8sNMUX{AP_52~{D;wbLE;rn+4 z6`Vm>Z|@_oh+vAu9lc-)_3INjadzgX+y69_Q`NWQZ!Zkd$+0zTJ8UGVt!-rzOhuCVa%!gp+u zE`c|irL(Nr$|qPeWg|vplX2s zdw#j?F2J>3{r&P@He=Zjr}P9*s1&yXH{4n#!6tE;QCvopXW ziUFS#cBg}!X;3`~IZw(-Qf;qGYUw>MzHPbp{hYhyKn0i>)YDu3XUyCUCS4E0{V8m3 zIC;BjS(eFF_ry6m4k#M_w{a02AR_=?BbMiVadGh|6of}Bk!=R_|K+vWz)y!&@hT#NpN+$DWnS_ydUkoYlxYV3b!XJ^;63M48&0=xOjrTf80Ht^7I zGZ8V+A2;2E*jT)r13y@MCa|&U-{68we!=$S`@wjV=xXo5b?;uEvpSyJ(MG>~4>n8c z4aQ%c8iftoI-h246o+HjlOh>sm5O}VuYIxAjkqqJkup*U6PXZxH|v@NFbwgzt}%LW z9-6&V&t5jc%3Da6R-=@M_|7{tG49;%6P4kU{ut-#Q|%eMUaG`=*sCJO_#nLemIR@1 z4E#}Df(4K8Kq!NJj8yq3@CKist~(!cT!KHr-!ieYM|A*%Ij7le42Yif5La|(df z{XNqRfR}vhfzCa|t`i{S*g8sr8pp;JBawBCJooqCc(=YY{fP>UrhvhvL!}fzRse*) zfVn6UOtwCE$H}!T5K%-#`}cHOH`lQ6Okr_xE*my%HAo0>aA;y65HPrPB-G zz&q_@!(+BOg>Pa22k{0BxwyCp+4&3~!oA|3orZ^0 z{C%@q2h(!&p<2@aiG9Z(F7P+k)JSifs&CnEjNG28mk8!`Xz@W|iYC+BY}&-~pHYp= z!tAZBFSkc21%m48>Yndco}a>3uxLP%0Z$KZ2xz@EDD5hwbvVd!4tWD z|J3a?87+R!19t;qG)b|50M$H{W+mSjbBwVtNtof;l%J#4T|f_`jn zPQNX<4v4fUkSiyrbsorFM*IQB;}@sN9>%0iXjl&zAGE>a3icGVNB(2Zr%cNAvD8tj z*T6ud;nR`?5=dm)pM56O(+dftti+-JbCf83(hD5~v^P)#IK<>9P2b&}W6NJEfDQX! zI1|F;>pNSWTvs~$^lhTdI{m>}0+A<8fA-dyqZJU%)*Vr2W@i4k4o=8fGqNP03lK~1 ztHByN1H(9TPgw)n#QU{S)s+8gTK@66fSM>xZOpXY_dFHC1D*-1aML zd1eJhhpUC-qi2E_g-tXar@XE22e%nUsL8K$lmJf3ct113B0jQHq({Z-%5;U^dApA~ zfbvoD@DTEN@8G~0t?+oelM8ruU|oP^A*10sRL@G9z^62R{180DK8x}Yy5`q)cOU}! zeJW)6G8Rws#wTS72Fw{*4=@O5>WbqPGYDz~x?P3Z03d`5C=S~>Q;3bxzjB<)tU{kG zgxBP18X}*V4Y=>P5H$u%U(SBsZg57r!M;&acV5W zir4EBKeo#%u76xPNO*lE_*e}03DZ%Yb1ABGcAYBK2n1)Cx=xqtXp69+!>zP|TR(!S zg#(^^w^Q%0j>P;QZce|1Q=CA9Eza0yRd$MEqAYG8aFsg z%LD`?5-A-oMW*o;KWR@=nr<*Fd9Lf1SY&Ss(BIx$dIqA5kVPl{&rkAhT&HNB>&4c; z597v}gcU*S%p@QA=vCQgtN^i|=^F{ZJ1U@vXm#v)TO!ap5WQ`SD)N83>J_LgztiUO6c+mxFAR#7q?*Ucb&*Q& zS^`A`41jk_!nnN8A7m+?@~S09BlMN9RO4Fcx>~u|*8+ug0~sOR`NVmJFbJn6gwp$xo`m$Yjm+=9uf=Xs0P0!nT31Yp@?icwNd8P-WStWsYv{Zsku!DiuV=Nb4n$4 zJlnngx+i$!G#!5%BlZ}bWK5a$53hJc9x5#WxH6dwp)vrOl_f!w!!SuSpXhmk zQEkv%1yp&oY1m&EJIEd*Fu(rGo{q+!bw_pqJj=z&Qi&rIS9huYxvUM%MA))Qz|R1f zh-IHD(5l$=Re2Weet*$!djh}=J<5~yj$KF~+>0LA0V1bKV$NDaeAuW+mW5qGPF~lI z&o|%1VzR;`k}*EY7$kTFh8&$tmW*E=E%LS_NbSI!H-6wtKJR&dc>_lg2v4or`Z+h9 z3TXg}-Su!jK|w(t9(5I!L!h*v5U@+g&tC%$qWW9EAtHy*cR(sS&kUiFO!D0kQZ#$I zo!kl79zeT6GsrM#ZT8|esXbh5qJIE!XExcytXN%m>e^f--B{BFtu^Y#Eg$=1M5piU zkgal@EPf8gfQ(T$)zaA3>KGU_1f1m8tnsRPK;jy!EM*3cl@^S24a4+U$6^el(6Bkc zk|wCpXM97Bw~MnU9xc+Jcp??`-Ca*Nri?rrwkkh0C~R<0ExFRf3%=GAE1Jb0-l$ya+3|5L&dS=^P_-bfHicZa(Ppx00T<=1eXNDxdT z)TQBm#mtZo^HZK^s$OB|VCOv!-AU4Wy=*G#!$t2TL$+F6_KaShE1gWW-CMaAr_);j*|^z@g|(1#L{IKqx!zkYRHTi6=G zoXnxH+xA^CaUPYJ9C{w7xjg@1q{ncaJxSyDU8g@E!=vI7yiQlml|NrsuS`zTB>JQC zuZN;Ah2fDBk*2(4V`WphGtzbo-Hbf|)eLp|r`;L${q7rm70z}GW4e53jy{_x@0MkJ z8$K9;la3rDxyppUycVM14BP@XE7~a6S|(_y+`qn?PsDZazJ`_I!}U5dd9Fa_E02QN z&!5tumlZq=e2A9VdC$MQBJz>tLQxpy!iJ)7Q;`X1=mmWfO3Q+*&CQiJnyMszldt|~ zXU?aIUKwxA`;mcW1KJ}3z&^qPdzvtPl;h<}H0P5=i=`5OzpIY8hOxnHYrD0Ynsdr9 zI5d*U@1CC+2HsiQ2FQ^ja^kM~uf75R^nW=HI{Z)@j?#R8@d=9a!h-URwTRj(v&k?{ zOSu6z2IIxy(azNvt#GLF!U>O!1kt)xcUE@nVhhkEa|6A&GidX2#zO-)I-kc&KD|?O ztdVZ>e-vH%;CWnc*Wl;tyL%<{Sf?ARlf?q(NtHmDJpM?N&H$6n;33p2EWQTvN0*0R>$3N#Gu-bsBZQ!{dS^E=c*2FAVqdfP z^I7AIsJJ`KE2*X^3(>9|(*8#GQID!r5}iN+Dzp;Zb(>14x!SyZI7i=NIS|Qt3vH?4 z-h8*KUx?7gX%_?Tet+F;R}4>TJYH%Mu?J*ap)-!lZO+5rp-sa>LqNyoZ+u8s&dG`& zHfGczHvDZ~S7LWmnLnT*!1WQxk-H6jE@aq$_yE*pFEZBc2~%sMlJ(*r&Urp=;>j~{ zS@qboDuGbvNlQ4rJOe7NGYjNS&0u+%w)#0`3qJXDMQH0|P&ayI`6rH@gCjL11%1W} z8T7A(188m4*9$zn%go65Ju~&^kG*%4m~V!+UQdY^5x~tj_JWTLjSx~XV&}1OloxZB zEm9E-V&AA~7#mq-jC{jNH#$`GPkR^5%BHx#&o-X{z+COU=XY=B_iqgCyeU{02czw& zMSoiuwRtXTysoR!hV40mI_g7fm7nTvN`i~B%2V<)TPi~Q11l6WS_fa^-yoZ2m9>@) zzl_2fw6)z4XsyumF>3sg^QEOJsz_Rcpl>CwvL62DRR%%YjiG{|pk}4SSWZVC-6xyx zBAEAXHW!4I^FAKOM3lvO%%3a@)@{D8?c`CSlwa+bim)mqCMGu27siJTib5u= z|A}0j4efuS#Er^u(_J6p?ir0U!gj@jEc@KW{Rs_^hY6|Nm3_R{f8LU@hJ2Jf=mms~ z`5Zg*^XXhgx~b@QtEq!8(#{q7C-p4F@Ulh~9(HkBN%2gz=J=qRMN3f0<#rVGoNU^NKfyMl&uujiiei%|z+EPK20?Fbgu> zPY$~%$Z`rQB$xs4w$Ehu+Gah*CPT#fX}Ws*MPwho?V1H2i#t8b+Ow1jP!$F z2u1HnC&sH3{tD}=5aL>F^1ginTY39lTbq3HLtbUXlA4c54bznorO=}=T8w(UKk2l$ zzrMH}1v-D!pqd{Fph+_X3k#Ryeq`?6QMGy0j4+oX=Y;XlP@vs%ItodT$*fbI63FNp z#a-XtWLnG|_b%z#Iu162FXSRVtas!4k;?(O5Vu|t4fktKoa-iUjpOrB$Ca~S1&CI+Y4Nep`D{8TcJU!xWFFBcJU zDL7iaMB^Zc@aQtP>q%<2kmdH`3v+w>Ou*AMXQd}gShFmtvgB>Dpgyj&`J)AXEZ+ZV zXGRl26sJQvJ5XPKdb3tU+e_fI&kDIp_@%)8!czCSZsX5VdUbBc_#kJX*+wT!1~~=1 z(n0FS^)RE<;Xgb+Ea}f^U^e+yOHNIe{H=mXBxjW2hbTjK%&eia{SQi6VvQ%g;RRe= zTwwiL6|-4=B_&f6liUr@+oi!-V6?17*a(b2*)Z&&2gqy7z;?#FrmnAfQLK6A$9cVruoQc z{|q1^e}nw*E+V4@?=SZ1oYuO58?B2=O7wJe1nap~76vVX_!H{!zbhLU%mdSzYNsk= zV2rcS@G^y&`K4`gZ2_WdDLBh%5P6uJni^iMZ3h9=F##LXS1xowWDS#x_b|3 zSnY3aZ8jAh2spX&p%+m;Q6sY` z`VwycDR6yL|6E#J*^C2WdGqU&Omx-t6e_hhWjTVPHd3xk4%xVog&sf^{PL4SEHOT& zf8yJK#|CqD#7cW`KQs5d$wfoPK14>SthcDFs*3y4W}&8MP;t@I2s$5+k59>~Pds?~ zv!LfiG&Z%k%UoV!4_b62b}At`GtP4y3OPNS3ZXMy?VO>oP1|tSfi!T{myn9OofIu% z&{I!Q5wU;(wy=M?o+o)az?E86wV`QvU@uIbZ7sba`!qT(@&(WjsIA33JYi^9i{7dUrkTUZ_^?XEkxzttcR?m}voddyXB-bQ zOi4B4j8Gzne9^-1tIL+I!|5S;A_jk98ZY6EfT&$RRFCWU>!c+q-(O7&rXYMYr(`oC zbVQ3Pqqc*IG9$gQV$y9AbE1fc;Yy?+g@hxhCvc(V4Gi@LcGoI)YsY$!SgN5;sIKW7 z+II1dggmJ6%kpcD?|Q>{Q{b1W>+htTQ&?0xUc*+K<6*r$XS zZY28PM9B{(>M(k&ZA0pp#65T$+COzTKleEy2mEWe&&Ak`zI;#VNrC*MJByl5b%FHm z?vC$P+8h-!)@2LKOLxX{jKVmyid6_mNuRzWqq4GdbK?e#z45u)+}dhLH#T7V{ZDS} zwf+w&9i7xhCe9YjKkZS#b>t+(^`WJ26O}SmutA_E+~s3ta8@rBXzQ)u%eCT;+V3IF zEHt24?L+dl;yUw)c8zF{^Z5<3Mp6G|QeJeR)7$U8_;wW}GAamf<0{AqA$p%3RIm|$ z!WI9e_;97*QFKl?1~bvFGyUN46H@$I%1Qb$%Rtke0ixmY}Vrpe>Q0t(Se-k@fc@ z%kM{@%J%GWNv4crwU4mQIxMamfD3np#aeLoS%gufwA2YZko>tY*Rwu<-hP|mDbWLd z3E{l|lZe$M@~vLK^QaZv`CH5h+h zqlg)i@PEk2$cVUc><+~ULBo5BRa5qPGfAFf`*8DDzX9m=0n#OrP2Ti11~uCd1fe@ z65t3)FbZd1ue>*JZs#(RL(F<9L@VZTziqNmn|8B%e0sgl1Qna>QQrPu9QAT#8AXP= zcT~Sa@ztg^O}p=LT2XJICB9}gzdtE9!QRT{?dkD zMeCKS?POpKD3_;|_QrCckugY`AqV`ICSdSU>XHXCz->;P6i49uflHvKrT(B6q!GcH5WBg8C^K(&DQc+x1 zOnyrxZ(?tfnKKbSj`LcE$U#=t(-!(i0MVb=C#(d3SkY-0iOcVR8ICwLb52Rm6u<2# zFa}`m*gv9Il}~809wvR8eR}Hn;lskb{$RB;$kNiXCQH));UAKxFiS{Chzr6Uj_Zt) z1*p;-Vf+4l@v>301E4@cy$RNA2FD2xrO+5OIaS*1nYDQ)8wS|n?U(o)8e%zt-AF^K zcO~(;I*izy0=}m^O*2%2Z#)n^4y%gZ$f8AI(=v)$B)nt@Qj-qDA(R&E3upT;GziT1RfxguEiE?pX*sooLkusJBhZIr6qK!$P0B=Ix26gNde z^^V0AMLoV$wcTcnj>7&)4iT6B5^^wg2XiUt^EaKgCdm?CZ>sEQz_Z&w0XI8pMvJjRs^$8K6P%sYL~-E3@%*Vj^n3S9f{ z9Hh5-u8ew5z|F?mcd~1hwh$Pp2Jk=pRn(STnvZea?INIBpvx8{IT}*od@Uep4;L6L zb?q9h4?X*Jp%YNqFy-3FYcWU8Pom*t>6wCWI#M)5ieJtLDfdInkI8sYNO|Y#<@~%H zGExs&&PEVZ&ia~`nOW7|&K7Ncbg+lN-xGoHo~gU=g#epij`XzC`DRU>S7Ji7o)na{ z$jAl7e6Ac~=M3~ogOLwvY>X%neBBGE zn*S1@h+t>haiMm7X!_ZZ8MqhusB-i&n+p6!zfsyLb&aqGITW7hG7+bX2%22~oVWPg zapM>07-34up!G(~h$yUrWPE9i3{W6~=-PFf4RyJT;Ua>ECXB9W%J?9`S(ut*X3Yi+ zmA7k_iZbIh?3z07zB{`fM~zN56G&FgRc663K3{IPYpTP%)uzie%`YPkE@71~^0JMO zH6zcvr=fzu_hx>VB=|c(5?{m51|VU6*jPK)IdAkgL6+E`zwmohR;G!0q?E|d{`sS! z1&=u&y0qy!paVfjA}`(t};E{7^e#7;k9~8qwdLa0w6@zeNUtz z)Q{wfvsEd@o8rz7Dan~EdHGX}S-{2fJ$U@thN*QFI?aLVI!;>OvC#X_Yt?AD*~e{t z?jaV&EFq0HFFtW`UfK(|#zA9qOJqyQ0Gx+P=nqZHoB1fK=4wvJ3m6Lx+$by4;chDP z#nH%-3VD@~ucwb$qwK2(yi#09ToxCT|2MyJUUp%nvZV#^?>*(2>3<&cs;QNKfb>bieL=-*5lWwiP0m;J;|IP!39y3TZjHpCExEur zYEhEW@f18&=@C`2#*~s+P^q(Q^o? zOIaS5y0F69VQyw(C{VR&wdVwbHvQ^U3_+{2Qv7CmU^J4!rZeDKTKN9<>{~-wVLRL8 z(pdTi6%zZ%aGnwjgUV^YTd-|^)lzXV?ae@W8gbTYaS?9DkKMgSMs#@+SL$vnY{RLvu_b>E9kk@7~S5(qy24!_3Zch_fl zDe*^k3rYMP(28%J$C05p!7Xs?Gz#Sr!w3QC4^SUf_GF1#`a-2aoeiu@RK2Xd-S3M{ zS9@STfG-ph5YVQEV_zN~+8ng|?3luB>~aUsewHch&Ey8u=+6%3zgcc zcAj0RH8c2U*S>tFI&=HGB_bEqESG3Ye3QC$sAEh@ce=lIF!gKs%)87pJ<$#>>9ML3 zp4YZdhF>lKDYr+==ZWX8NdLsf?H}JgzS8b9Te5@jD72k+CqRaUILk}r4~n==lS6zk zNezM`LNHF2J7mvqlmnjnh9b6Yb~sc<6tT3V;o88qD$_w0motxoMkiJ)HLeX0ufA=m ziTM3pNdMgaAuCH#PSBa3=Mzt<;RA!w?Y9AU+E4875?4kfSUDOO?NIA@wP*Z^V+d(z zo^JkHwmtnr4^Sv)r}lvpDl0ja%IdD=<>fV@I8?&;pjPLNu$-KnO5CNTC0YsJ2;S&X zn+jZr{2AX({V6O0cTNG>VHV_9&nY|zrn*=uWP$bII+xY5t3;LZF7%~cUwyLAhA&7y zaf+H`X_6tN+l(P5CEl^okF(m2jofZYe|ugANAI%?mp^1XR}Yo520Z8|<>;$tjwqOX zL;x`%-%QK+c+mKl?Xr)}`(KTS=&__}h<&`lSpx#aLDDOCf{<+B_yMVD=LGf~i&}QA zkaK7Ng2wT+Q!o?-G<_#O^`4vMqT0|r1$3+M>S{LlF+vys^|XDMW;ZrBwv4R9gw2;~ z6hcA6dZhsP&P>;fwBc?G5RwMK#5V8WOMSA0KqTDvwMUFz5wWOhmkqiJHP+C@o%^3V3nkSg)N?>8((2u%`Z{(NH)(J~1!#4G|7LD^2}{2* zXzD`I?6bUBtwV?d*qGaly*lAx`*N|bPLCNaV6AxsB55~S-YKd1`75t|N0*3vnxf7N z7JxAlhZ@>FXJQj;6kPoMOZ-X2ECZ$j<$+=5-ohl;&8e)k?)y%9#0TJ(KQG^S8qrAk zNjl{4#g~%?xKBvtf9ZmuL*1hTYG%JMSdyl+$g1)w-#XRRvaA!#V!dydPsyE%U&XC4 zb3au0O^%Nrxb5^s(RH?(1y;7Ik(rq}bum%vq73w-SFwO9%~xN%=lkp9Xlnoa{&xO>*QT5;cZZQ) z5zGCTP{0iv51`A*M6;u+x;SY)^3lqj*S-GQ9{dn-ntUu>+1z zcfVa#;c#zf2Q+c)Bm%CG9^G7PEO{Mn3JlXVP(Z2X0n5AII#*RW_d73sg3n$N+($mv zMiBjAlaTnjS{#f!1{{-Bym+B(?FNAcIdqJ zASYKz0s34}(io1_tR-!7X0sBkFFszze3^`^%+}^8FVI|VWo$aG2Xk269x(IJa@?H(s&t&UhW9G z&6EGYfDi(kqp*{dF96^-De>DtD~^P0Hh;dkGt{o?LoZ!$~p z<7RXWuL0W|@x$OU_t)0c2N0t7WjhXYW0iR;tKoP>ELCB)KBMLCK^^%(6g~tS zV73TxV5v?x^Q$IQcmzp?&YnLL6jY(DJ{)&D&&=o{*E`qQT56GAco_VVzA zEE=_Ne?NKewcBn?|8H-Dk@&#=_Jg75k<6;u5n&npwqpVixW20sk?Ks5N-wGIPEr*`>)gBK`T;X;*qa!d@lE=|ADNtMOSAMKN!VEL0JX}WCBnkOf9$xg zblpT?duuP>HLca|Qn84UwIsKqEh$StFn7&;(>kM*DU-*pEKu+H7nRqGS%+;z1G5Ut zN}R=@9zdGvU~+#o^z1w%{;Ij5Vs<=-U$S%MRZ9rvVepH%Vw$e3B$1e+u@WEAP*DSK zm~e~OVskKG&V1Z9XTDKAJsP9HskS z6*17ih~%uy?J(Hfd{&>w>9un#9Zd0%g+=C&<*I@JQZTXlg;a)mlfvli{sC%-puEPFgi8~eHW+M%k_+`8hfem;+l+x?=tSH%$V9d!d3`IzFl zN32WzdubmIS=-`RkU#`cZShM8=1;bWc?{MB^P`WJy$HB}Ci!}{eyyRleTn@MZN7y( zO8lB&4;&AqEh86Hu?q&s<%ZUthP72I{vwF= z$6w(1#@TSva80EXC_5$3si}s}sU7OQhNGkaGW*`oPjB3lu6x4q(z#9egoK{5A_#XI zF#|u^Dl|2f7*U9dWHb+VgI{_8{*`;i_m62uxNKhh#~4m{DB_!5hWPnT9_<*?9=>P^^+Vw}0HNYDYo;N|+?dpV!JRO-{X& zg=>N;AFxJs@hHV7RAv*+_m1SEv1~l5PW6QieAiPagi*4VMQZX)>1T+on- zSPrIGw=QhpC7e}v_rJrJ59?6}nOCAq8cr8*uSUUvjLJp|&bF2>J{oyQZ?{T@@c zyaFH8{yyPLKIseNmmXh2s(CKmg>z}vjwp_HNKa0dB?41l_9_JjiG?olPSp`%uk)nz z1aec%Xfb$|oziFJB8Es{KRU~hBn4_aA@N~YcwD$Do)-7{hztaGV|igwn(Ixgqm{n+ zIPHajd*KPb`quD&nEJ}7DBG}G0qK(Nltwy+kS-Ac38h;?fnn%w0g)0A5QbK1kP?RO z4(S|Pq`Rfg?faeYtn*9P=$d(+JFeW<-k8dN$BHyQ8ojcH$s2~l7warac(=pgD1)&V z2hxi7C&}T%t!dKL=S)yeGJ49szJlX3?MIN6qbC0oUip>iVUyWdl;%OP5O`;R3v*|H zWs3yBxHP81;S{8#(ZD$XXHZd55koD)oSx4dqWpqVg1b|lGQ@&0e1#HY9mkm@=74{s z1I8B%e}|>?j?8{Q@S=!VsWyFar zWh%@{ofEOz)T80?$QSq)L))P`oX~Ec^@6Vuu@AG(zhXn}`aB{w-I{f(VLA3nDoV~m z#okR^okRQ@{mmv3qy3pu4Ht7?MwU4*th53X7j;l`_vg% z%fDCYB-v*!;`JB0>@<{{q*it1=+IPnPR;ka%usj+q%myc%Q71gv*L$GOu73As;&V% zXSLBs$P!MNwiOc3(oMp>1k2i!0)eiFfC;q=ea$P=3qw#XXSTW=el;jhtyx^;)e0_A z41xdq2Ko0N=GO8Ux!)%hF(C{>m%nu*w$wDmJpV8+{{gDm=|f`DE)+ln=N)5Ei*}Cu z;Vuq?rH$XG@|SYNK*sIAZ%|xt78+FeLZ$-Lqiot#W1Pna#A`NBy@{aGo>k|#=5C+I z#lp=J7tPU6pzS9(nmkV%9{%q#xc3ZUY54G0Re@C)3Q4SAWkXsuTTRT4Z@fob?bhY{ z7o_j*PyPzkge7AA_sXMhkkP-tV>Y-?fj4%B6|p1w+_6$#9SNmpn66Dn{lA4#Ma;5( zP9pBy{f3Pw#Df*xBY+0fA=tzJR-c(V3Z6qRKQ-|Psf!^t>57bAwc%XzDI|dAHYr9D zvp)Y^@W+m4&E_FH&!1(=TNvTl}h6~@Uj$-)0Fef;83wX99g1LaD#<-Ft8Lg_V| zMo-@VU6l9BHc8GxUs&I$%MNduJ=!k6bAH2N0zu!Fq8)uEgd*gBF zI*NrXL5CGZAPO5F1pK$bZDZe56Tv9j?a410y)xrE|LgP7uPSu3wA;uco1rw5Mvjtw zTo<4T1Y(l}NhR>uWH6x-p4nfl|6ZF4{r$E$RM}a`e#M6f$s(_4h5mq-kM98dG)TlQ zZ>~=6IgY_}#6k0Q8G++9n3n_!NU9=R+mpqP^EIrVF<5Ow&sS{9RaC&G!*3g!L&^6E zgZB@F{_sG|PK9fJ<`|`(E*SRq+?VR)$3$Fhjk9mhN1KMZ+nLJS$Oxcfh`ZfHmo-7^ zJQb5lmpJ6Mu^@@J#w31Qdm<=3Fv6zd<$R;7MPm=m(BJ%%bqPSbicSAU_Ev$D-Q4S|qIh8v+N;j; z9Hv8rJhf#5_gduPe?LM9Rd#vzi{=F^kwYs+`>|nbW@t|Z?n(co{nLY1<)zw8F>mTQ zF_%+>r00Hn6c8zTJB_}5^=gPam`>W zJzW{V6m1T;%?nFj%rdHB`oS(ETzGEaI+V9(M}51$;Opof^9ZVuD$xO9B)u}TI2c49 z=v!bh1nE?MzOB9efMo?LDk`%gD&I1X!+VpW_wdNYQ?Y;B)90rPG>-m@N0!;Naz&(r zrETUyE)HZEr=IWzFp#C3nz-)e8FmkyIY`}p9c>>ko zT^f zd5NV~(PBY~Sq)XFGm&d^G4oh!%Lg&=+TFL%pd=YPqo2Zg_NjH6X%!E`aE|;t(zf(P z?d?A@9>o2G|15cG-}6kvZev_2%FpN!SThSgHQd&~NOiFHNtb@Q-VE-44j42`dI6!~yos<#+JCqNvjsH;x3@=m= zZ-`&^T3{7jLx4I2E^xDJsK8bPTpBpt9HTB7!oC8rI6n7x9q;?bo9#!--r9%$@u?|Q zPj!4EZkSB3_hTuj>4#~{lwh^}+uwK%rj35sMt5~SCIca_aFxT|H)D~>jIAkXxGE3q zYes4@c{+yBdGIn?%WVvmH-^n*kx#u&-CP1Ar%<7v=u1t6xBsKs8Q z3QPQVC=}HI-{Q((-GCU^=GZ#78>9?|+El8FtDwT;>M5)R-P*oC`pW;;cVoY4=xncg z5NSjyVb<(IR`c}lfwR3(UgaKM^snv`@11kHOwX5zum3(sD;+`_Qjb1&c0CW7vcVf+ zs4g9Juq(Jt%>Ok+)%IJNc^t#p!+D~tl^kgA^`vo8{Wl4pnm z5AolT{Z7>su5%mqwOhks?l~o~u0$|&Yji4{{aqi8lsCcZ=y~53Pt04x*O?>B4)KRH zTPDsG%}p-TP#os*m&1>9gwFaWr{=oN-?*C4m=B4*rY(OT0*Ch2~!u_-QMYaO+ODu)R~3_~RfQ@UzMJX_DLS!*mqWB0$m z4FYYRwyB4}afU$1SJ=>SmvIcX&rH<|}5`rHh$Wxb? zRf%v{x^`gkA3q)6NfwzThFD#u3bFIbFYVTu9HS!VNRZz?)@0~y3|2f=DW#RN`6(#; zzaUf_o z)Je&{-8Lo1_nKXX>5vqYbr3dtFMnG3%3dv;`?G@BgL7-uUimfilpFcbaY}7`INWcPMG}A5{_Kadmd_;jto;pJnVSbwi*Zy3Yt(D&#H`sW z$95~m8!uxMIS%rgS{gF=#=8e54VNvuz8bis4=Q;>)KftX=V)!(sz5sdy5yzyOU_i8 zYz98=+KrrT5G|>1v|ey8kr|R1X}X{#ycaH1LGL=x6!bnRB2$`BSl;`TGtdD@pzb5d zzOh%IwU>CGn;*5&X~ypQdAMER%DR$us+0JXi$5+QC!e`eI?pzJS3>jJG*jS~523St z*^sL(0sYJT-VB5iFLuA21J?o!XsxhI-X(5}uKnWJ(iF3douXepunE7fCo0XizBDin z&sW`-C$l!#?7fe$*mBx&4p4XO5N!EFQNl?AQ6jH2q7)N$vTd|oLV1x+Vsob`7HK!M z$~L@iDiYjL4EG$@{p>l8M8nXb)V44WTOq?RpnMnR4ao?xI3y!z(^#SRU~;&A8LJ>R zEs(H5+U5C?NUX6G2s`&s=K7nr?Wy&aQn?=?~?m&Q`h+vHWXFL z);%jZL0rS3!Bc@ICkH%7(gAu8oWMi%HDjV6CCQW7g4)cX_WS|F6`blbLdc%_LMh%RC=fryvDmxj-m?GRen&C16gQVH zeF)u8U$E*aRg$o1|696qr_^xnbRV}ZuC_0T6Qo0M zv0m?kI|UB%o>z|yzP7w*G;8*W@fqGqzECi-vUtsgTS%ZQj=)xSLCFiNTQb^?rjo%v z;(kul;<`kX#u&>_q6OlA!Ujf=53?<^VX%k5la4WLA4j1;B2H=W&EltjEF8K?-qqe^{Wluh*M&VYFg7(H< z$EM1IT-|6J$3Uk?nbOKs>w_lnGuMRlsJR(W{cFAp#EfNPvOvs7V7~=-W!xH1>n{6? zo4+31b+CUDIzEiIGB4tn-cpMNO|5uOa_Uxtz-i+K9m7965U2kBw!r>9NCJ3i^;UJw z2y+Ph0eE{n4N&Ag$M8+|4Ml-S(V=yqT1wfOn)1fC`kmoH_M#U`@J;L=LUfeMDu=8I zxH?~z6P3;@5In242Z!R&qjzLozR{`&Rq+4TSSW;FK7<5su)IwuB9G?pj77ub>!P_| z^iz>m=QZ-fE2S!hAR^0+h#~em>uY&sO@u*wyL*#Prv7J8(dpXj=8QUyx2$OBx4nc@ zD0!U->`hgCLrlY;-(BMe4v}F4BCq-do7J2qHX;Za{6d)nMkGYc@W?m8?UdUv3R4Fz|zk}d@4a04zw;j$u3hYA1UvON%67ZdTv zq0L4g7Zphye6vjgl}PiRp%k#kfw=m-h?tfXT~J=aIz(M;SN^S}z%$BQ&EYz+`RWi* zL2$X-N4lW3DRbfW_oy#@*e?hU)YUXFd%=F*OkSo=dqlJ70_!1}5%fSB8bo9#W%$-g zJ^K26uuR9UQPEpY-oq5{KqEB#CZvR#|8V1T$x(KOP!Cru+=rmKwUBPS=X9%uQQW`U z(@Rfi`eose7t`!kUE=j0K3dV6T5J;07pcd#7p7HB?JiyXu@vcNC+(q!Ir--;!8)>O zUnFSH<$v|ct7trZcd(L$;bZ{XW2K?CejXQZVLHmuH(zzSDXk1YO_)Ev6dz^v)Shlk z)t;P_s+31QT&VtwvuncdX=eS4X!g@5LA;kg&F*rcO*X*-bYsfOEO>`_gZ%e`sC|>% zQ~{`MrCSSu(l5o*pU_fLF5p7bo4;mhPeVb_@qi>)lI$^$0P@X;wjDwVQIMuQ($H-2 zogS`d%MB~>b|vRgK{@dDKY`Z>prHM>bnZe#+Drx;z;|Xv9UW&7-jX9AmC5DsC1_*I zJ)?%8fvrQ9h@e8cS|gY9eo zg@p=^LQornYRid+d^+qKlZnDTyrLed%ujK%l<{%&lY9e>V+=Eib1KoYyR-CkzBYVr zJ~jN1I@mWwAP6FCEat@UaUo~B&;Lj8+~}FyT+>B*t^&ii0P>mHmTcjNGm&uExp~Ee z&Accw2qP$I)6p$LZu65g8hQKtcNw}0k2usCg=UKqNzp}1FVAmt>0cyPd&@SCt%AIm zn?J|FUqj>VOdbZAe;+2w_!GQ$-}l#T^I`3aK3aBf?~18*)T!s+nG-_cAbsG$qt%N{ zXhNgI=+2uAx}QwAJ)LzWW%}K_jHMT4*qg5(1|#|Efvb=YV)OTRCQ?Rq8ala(J7`c; zd%+SvaNz%~nN1gU*U;yFzaXEVyVJVT&|^CFSr3tqa1j!+;sivb?H;7GnYrgOi-I0m zceUR}7w23c(ulqwmzt6i3fIYZki*QJxqf%ckn*~eW3K9~t;;HFq&rxle;Vy{8{)K6 z9~kT(44`U@BK~tVeTkxNxGzlPDw>pNr|8RxPiOWiKKP6pz2tvI07bnD#^;D9;Xe(j z^NpX)9?y5|vN;T?D)-L6Xi;KUv+i7vit`+TzuhKgW`F>{io!6uIC2?~B%w00c)OAE z2eNSGuy;Vwc^bEFdx+_1d`6i23h_9BM_{W6bX^jg;0PACe%YNT7qnv9{yyV^t}Pz7 z80CNJ@!{|t1Ki>Yy>b>^Eo3Lj&WQ5nl89|zTs-r0-335rF*Q9oW(4XgT)7`w16&MjI5j-TU4iz4hUI+=2I7#bU-tyqU<}O7lbF z?Q;REsb?k)oVXA<5DsU}yRw~;U{dgsR-NIwUG8$&Mnql=MhGJt}Yzkqz3%XtY zNU(?4zPQJ&vC81L=*Vfw$~76unfSzawSm}=i^?^)Y&x!r0Fsmx?%HXForS$!>ROc- zum6hjnKmnG{myX3EutBG(+#un#tc`goe&_ikuLI*vRnVJiqfXeK!Fe{U|`j_ASz=yD=Vqd?O%!?~L z94A8MHS=psLloK{Jf4~vevGmAQI+1aFL$OVFsMm5HgF0_ zmERVnBM|Hs+Yw9we~D={BIJdFeWD+YH4C<*@b`=%>`u{|26oCopyO*S3#qgJo2 zWsgnmSy6doat89}U zAIVr*l`QTsH12v0o|z~|lCd&m2QYUJfr#k4hQ(SIm5OJ}hi8=8y=3H)D#HE%-sp3s zqQr`?$UsWDpk@L)=}XLi;M${^ncO)fI%S;Q#4rc&L$2J+!)AI;+CfC?>K+~W)xvq$ ziNc)1v+7_c+SHwqZWY8MgWjOvP=u|)6$39KZ~Xz{2nJIP8(QmSo4t*N5>14G+h!AO z_Kl9)1j2czKE-NE=tm7>`FfkHDeAVNwgt9KDQBY7!6V!% z_9unZP(eq(WtrgRydsbn&|8t3Sr&4_Vh9= z72m%7%blA}aFx)q1y zZ|S-)`oSIYTiZQ%q7|m5o_JBlN4V9o?W(liT_urzRV8Q+KYDPF*59Enp14LM5My?M&<_9eT39vVb4wGak6!EXVXmv z5Lb7%n3u{Dfk!TqYJ?$jiXv2yj3Frt^MAY6HmJfC49}3iP8ZWvoGhcm87+IJkwN;lWV>Kam+=lZx`*!Ar)EL zgIt9>jB=jP=BSXjBSyc!!|&JV3;VvjS@{!h@(cVIIlWs$mYr~3Q?Cya3MNd@;nXvT z`(0Dz#)pliioc3(3iLYL3o1C_D>mRthIPE|tu5t+C3XN9J7Tu<7bA~ra(eQEucbqj zxx%T9pekCWw4wCsgLFMkE*1vSq(0KE=FpAb;w=`G3oU&cOm%0~-vpZV7g-y9PQjFU z{V9VsK1#;^pe*!3$YiH_YyVB=V^~(y1|K2J$&3^EW){759NfguX*18{l9I$!f$NcX zWofe06>%ew9px!7w|P5qS`$$z7ET?B`aT~_h(?h@N*bStC_QCN`CJ9Vku7F9YAjEu zq$}jW2>Nj2XZbd~C=wpjQXpXb8)OLas1s%SF3kBGcop=&*VxP%j@40HUhmO<=L+%N zPH)zACt`U#pD?ac+#6J6z1~L%je}MBX0_oACY-!mcxJ&r{)xz{tvw-uSmULfV zx$Yi}M1R~ASV?qTtU?@UJAQ-L{zppa-Nm8mC!>7*VC}{>fsm4Khfi({0H6xXO|ys% z8t$EUdLV#zaW&p({owP*HMSnk_iy)#9grorKj9$2pIA=GihJ((fbt`?TVLu22r6FA zEC1v{tUiV4w{mt1E0tY6oi#>vO4~EOdL$6rU&!Eu+^DX+Y}$jKi^l59%1vfF`F{Qh zrbje$F7NJXazZ_JsZ|~1b;c|?l4spWw8O8RUW+1rk_@2fAtwXv=ka7|>j@ zh}&Zd6kZMmqKEH0&yvoXsuW0*{I+H`UU7eH#WN;(+HhT6SLKN^nbWiz#JgVB%%tYb zb^=`bvVyEitRXfHYw_hwd9IdlHM2Xx`WhQ$_(obGI#ck?NEfnv+XWQH7A;IH`1n{F ze1FVtKB;kP3?qV7+ST7L$M&?sp4?YoYJ`R2rZ80}P;)(W{8Rt9W1B1~lG0R)Yb&dInX=F#42nA%(^9z8NJXtCMvh-*r+cyWzwnv*uu zeSIY_B9QtKJ8!zlT7BSkAX)O5fbDxZIJ)aat}3iV#Y4*MWc~_da|yq{Ssl<(j@$3f zh!kAnzuvSMsNVqvP*V7)$6>TehUS;@oHRtFpMzSUgp1!VwF$f@oeikDCjllt#KY7k zW3CZ0yGTFJ;gXgN??}sxPN1sy_6|kX(Sr5#?7qE@k&xE~8z72uTw6OMX*?b4Fnh5i zRE2F#)RCtIJ2+0Yj);n#UkxzUid=8lNKElvApkDWw%vKl>?faEaC^m?V<2xqzSH53 z#@o|t>b7|cJV`bQ(gGYCP{?ru@%+kc_T6)F#2U8S{ytnDR+WJ0gO=HPo~QF0f-?BD zBagxR_aEMog5p_y`-6Ypupj-sE-FNb-s** zW}Dbyhe+W}bD+NWu%UfXNQ27=08Gz!WpqWHt76FV!*a%l7p|Apuy=PQ-x!-HJ|SX7 z7}$btPCn>c3-cMp=vUP^lR(Fgv!=`y*L)wgjX$DG_)vS(WbG79{Ac_XCPbXT;_x#7 z6BOZnKS}H#Lyi7~#BGf@_t+7MGA{o65$;$T*0#ko+J2LL*i;>G;z7)#_<7mpwnLqa zk5TsmLDjl@d3YE2;TPaD*fU>ktHF1vSY2pzCUNw;C_^+kX(a7n3{ls*b+w=E1kN{m zofoNwok&KU7qUUmpHm5VjvdPcELMAT)hLYzG9=1K_O+-aIqS$qz2AT@vyDo$sXH3+ zRo80XqyILXG(uLdfP$E)z3tJTJ)=w0x#}|~t$j_G>kk0)D}&(VVw^}?&U?BS|5{(# zN!kl-^N)>l(pS#nnK|Bx8G1r<0<^&-Uu$5}DHyLPn&~i45k7Y-MmV zZhA~5eZM+8@Jj9e#o^9t1LUc5%vm)dD?(M*``tFN-%$Z9c&k^7`+I9aHd^}-DCmKw zvO-Q&p4x%wahU6XnWXhA8RqAom-EtA^Zp^5t^OH|^9vcG^tKC;p2?+oR*3}o{=f&^ z3nxvUtFK;uKE7Gdmixx7ll))zi9EG;O({eWS!d*n2`2=GmHDs_WFV@*9Znmqg~$X@5?0x zOVCqzO_dv-KYuRq-c4uZugE~nv&v<_N3)M?);X?t=v3#oVwhlwNZnjoJ6ue(q-%e0 zvh?+Sf1yFsJ^SvbvuDe`0w}Tb`QSYr2T>!JQNu-=IzGRQ>oT2odf_rimik^5F?Sod z%%#>f`(F^;EnUz(Ewaw3lv`@oPG;B0kTX-)3A{;F#Qk@iWnch9QI=O?P>c}I-l4>^ zz4FKLt}eH0el+&DZp%1-M0G81rD?q9$;&s={x{hSg)hA}h8F^wPWDRd_6)ac?X9z? zr#eI1Xk>iG0CMEL65B>8sMMtlnJMg@+|=Q270&)qo+{8(pmTMKy>Iu9idrJ;Sj^hs z(Rm2DrP>3_4&GrZ_Rm>{@85wN9sNK<*vO#BXXD%=41ZV9LzMDiG4>BQM=J3Mc_wuY zy=LQe_+fszMUW@$dnX@(lm@~74mz|*4JD_(Qyrmd1ld=7a}K)xq6^bYQYZq}C3*xw zh7V+jzs?t0DSc2}w~NTmjH7?r9kF}kTU!@jY9Wa$Bqgba#?Gyf7S{Z=u&lJA=6ib^4=`fh^BX@Q>)gKj)saB6APIOme5;8=>PUP)%^7_+o zYDC6s!~#}7^WRk>^ryoo$e95|V9!}7E#-T2i9yt&x<@}8;zX3XcWIyBQ0hdn=Z%a9aB~*09p4PrPyin=nZYnJf-^nX$r# zOtQGmGZ)-h;4zbp%l^yv)r%@9@@sf(kK-Tpd!=DNpAyFFo74e>Gq6*!Hv3Nvy|5ar zNcp6uxG`hHMB|aCkK*10DcRzBT%<3Oc|rVLOrHiuQrK5gp{B87UJ6cB=|nSfYfRWi zGtvYJw(`WUQ93xarwcg7`u)Riw3GY;Y>fW>0LOdf(HT-Gb)B4ywdlD?+1IQJEXQAf zl|9h{c%3ktv5Q?X{bYlajE1j}M>I)nD1UAih#L*s#KSy zMsgq8v(!eh8)dSZI^JL3rFxh8{&lD$6KC8hi_07^hEQr6e&K?fdBo&xy7zfCj59JPP ze}|s<-orFLexb|B%=l8Xh z^!k&OXTK%VynU0CHviGGuEDD?OLPM;$Kfr03ezH=9Rf~7~*t8TfyO>SxYZ|0{3e=Jw1{GfJ-c#QqWuEVq zYm1BnOG}6JB!z4yN%6m5s8~(g5h0%-@ng^K<1$QUymMAQs{=n^H9r>hOXQfadD?OMkjq4 zC9v>BRys>Uh3t=SUV7w%0KKuv?+6Dv^244f$ZGN*c#A4i_do0xQWxFX)ARmPOU&90 zXuSak4ian%r0x!?yn7HlcrX@>{eqcDX`f56k9^Wu^n=^wE?xE1o$A7IfvYobxuDNu zNB}CbV}|oE8lX_*!Io@`iQV5`m{}0VHF);zJ(h>*@W6yVC*?hJR0@Hwr_mZ_RumvE zZ<~BC zE6yCP8F;@qGxG&0_wOSH$YfK{OUE@fWI|X~vK1p-*y0_W+^2nY&4p}kFjLDE&wqS- z&(dNy2)?HBnL^*J@^Bj9tAmVI`^oH`Ly6Eyih|&%hNMq3z|{jFxkBxPq@*xy>ifSt zKiuuYv$B@>KjP6pMf8uVf$8drGQd{co5-nhdUh7^iUl0QXR4~$I5=aIli=3Y{zJ`b z-RtYrA*g;&T`k$y@_)L5g%0A=mf*h?RdzFY$5W(6zsnF7=W}#pUE-NMGY5uI%Mfj4 zbk_j<`t8u+${rFyNUdkeDwiiuVcq z???btnpP6Nf%D?UZJ#-M95iq{@wq4CTwE!IDB0%n|CbA`Mf0GNvXziIL&JUZ?&}eLK0e!>skHf@ur#Q-qnq1n& zIWsldWQNn@;ub2b`9z|8Ss)oZq{q`!$0fVt-A_KX6o`IIk@h`i23=TKU**a5#ow4? z<7ZSIzt?OEY&T-;YYX|H5^wDx4kNM-Ry%C!^n{d$EfyWJeC`MP+TRVxnE&1QG%%`h z34oCwm~=5AVXCpdXGOZ~!NI`^8Q{ubK$#6%0{qAG)IpPv06GOnmH!z5U)eq7Fzvqe zB|Lgevr4ko6CHO}L^*GTKHD6PC|G9k+imdd+VgiUz;86pt<>>d#Q?UV|0Cb0aa)bm z){S4Ly>05{$s4qy&JI@zBk<`1H>_PwObBj$91ka_mJ0Ib9PShl6@`|aPE5&Br*{#- zV1t2~LP{KTd|VPKTVXHQ0P`Knb!w8nA%^(0=E{ruGQV6=&6RV`>gRyx8DH;(3O zor?KCaT7xB0SO8@k0Hklnts6c1ZN0*vTX>EuHzfL{0@z8Cb!~s?Y7=MMtGb_>|5+Er_Kao^F1Kn zno3V(@7JM_LR^>~OvG#Z?j#8w@0VT!MzbV6p#^SCyP1XAoty$jm#r4-(aFIX)Ix-~ zu+#C5o>PH;5iaN>-SJwgkH{n@T8p?s_z}~!eAV7EZ=Pj`p{}^bBqM%1Yr&p%#77Mi2P)zn#m%bexe- z0U^E~S!5~@I&t4A=oGi=#sdRs-9vwMWebvFAjBf$?lrx*CcpWnK`R-vLrUHE>N9fG z?P{=a{b&pGg7$lNz6xw?h5&`BS&PG8AOTPZ?;%}aAe(7mCG&`+9+7d~{k(!pxF>yO zz;b(nG0>)NQNirNo>%G#Ro2|TpJ}M=q6t_MD4DKKKMxhMJjQf~3)}A|oaEmJ19F2f zG!@`;v<-BKA^8t6GW+_lD=OukcnoWsGgB~!z=1U%tNb3qU@?)~r5Je6)7NL~>KfI5 zs_Su{`{Bc|a9V72Rxdt{@U!pZaW*#c1L|}Vx_cAp)jyAVlxFAp-z9gv0iaB~2el9$0h!d7f3K)I|#lsjj$ zSA=G)Z0wMJ4_&)@cVCviPe4_>pO z2MVkZ&`G4#*?#-;(ze>Vk5A^d|Kcz)4lWS#gfE4I#wx|xijAu>*ZSrC%G->}37}A| z50(wZdc*?^cIJvPwPsMDqnBGpImmFl3OX_Epp?DB5@;Ixib=Lb?RV?m*mTBPUrlkBqSmHJb8CBP$1E3oZ zA>6D%cAFcXV1j&`90JI&BM9gWo9_bVs&NPp=6*h9Qk9cKNk?r{w_auo*SKr|phZ8% zrziL<$=AR%%fXlt26ay_If4RVzm9(-3FQw9Iy7<(zG4y28ZIX{Za$4G@yZ6aZ<=$W z|I?HJ=NXYThOsvJkkLE))zty)q&Rp1bwh+gP+g|KTuU3kpC(PNx>;r@{*q7)JLp>Z{JeLnvoW;YK3-NzjsR%4c=I1aflsaB4!Yn%C5I2JtgMqi# zUrp4$em!DhudE#D{-qGnOeb6*fk^$m`Qg_N(7Ad1*6fv`Iy`{1R8^@z=hJ#kEZt}~ z77fiSO8O^;wY>CCDR((JpSTro6MdnlSL@k87QkzrStRds0~4LkKt#&!eNG z0b>m2`BI&0zE){|=A(`wV2z&ozTQsqy1#1z6vOFOftM?oZtJ5inqEfM$oC|*RaGZP zN0E_{D@R^nOwfg+XzH8$&QuxDtIf%2HG)E+j`nVx9%L{QBHQBEr3F#s`cINq5vl3v z$b3x(gveu+*j+GT2=-@!01}Fn@QB@%Vzk{oY##T?kBdI)*T#TO4WPWO<%4CP0V|A`X|crnwrm1wKSYsB!lH@7V3A&d3w zwb7=eAzV@;Aa<}*X442b*usTUjkt@4Mx86iOBKx#n>#vO1m&Xp*dh7IX*S; z;#aKP$))#bLcV5Z07_bx^ljZ+BQNvly5`WPcwZM|wo{Lr8EmofcmVu;0)1|+ZeR~N z5vL83p?&tytV2amaM>|z97&gvp;a3shyQK1oSPLrex1;oK!cHMxe=^NH;)mjE~qy( zG&JaF4owffs8q*fXMabtoqmlh=U-lkxc#eTlIhM7*x3^rX0DAu%`yD9M_jy;9=oz$ z(=}681D!AuJDc85OkM-4T~X__YL2r%%w)uB06u$btIlm}EMGJ0V+<*{0%-zP;dQ%a z6H-2>GiGcfks%wBUWevxy?AMQbxC>88`ssTCr8F*J^S`^f0`>uHiIXu2w_i~> z{DW9eG}YH$srG0fM_l_qtZliSMiW9@TwG~Vz8-FF)lWtS2L>9zKcU2b%g-OE9h#e? zUi$q0{lhB+Rd1w}d*kLQ_K0h!PYij-P*Wg-wC}d%Xkki|5Ly99%kUnY{|`( zS5@tc>`=NDRGxkUW&U>wlb&A6etc?(NMcg|5mN{lmJ|%h@{KaVVOs(BBUC-vVRR(%P`(g;<4iXZmh##%I*(qA;CM9^I zj|+S~LW8N7#mZ5wo|TZ`GZ_WLa`Gm0$KLT-Xxx;OZM(I1j}rTLkN(38f|?3gNX%=D zVK+7D0ntx3-9iqw3pGhOrZldYB%=J^KQ8|P<{67>og0XkME3EGj_zY%eE%Af#ehRB zXtzkaXcI}B&VY;S{u_fm_UKGWt*jS|og!9_>?jeGN;W31d_ zJS2o={z+V<+{$?`Ub%`$aJF+tcyBLRMa9Qzc7y@k<^Il}(rY+VsyOc)O|Pw$5Z1wS z5<5)>#c4rFgY+C?z805|crNv*m$Fm>-TU%z1!zJM(r|~t9p|cn)=S;ZnHCUm0r&3n z_9gJ^x@lchSXvxTa|R7 zs0)cfI=2fXAPXNMbHiHb7r_1?^nM{;lQ2T(!6%Vv;0Ls_9+U{Hfe#p)b%gm@=XoDy z+IS%xW4^S;`fccwwW%xVCw_z%&)2GOQ_M?>way<s4xjT$e-bzU;=eI`^*usdT!mQSWzmdEhJc@OaF9{;dcS`8 zQda$loV}w#uQl`rUnzjiif>cCNjJsPK1ZZ;jL2)hI*Kwa7 zudJ+CI`FWKj*cEIwWJJ|+-;6N7HDAs={r3-68AafAYe?)vbZ~FxzD@PwVNtQ1;9>z>mPUiQf0Vnc7Imhtw%X0zTLZ6 z4%qT(taVy+q3yV`|QN#CYo2Sj%=+StA{^Ff_f?TybQSdmR`=2hhifqyJ# zBZJV*{cONnTIdLGq858}#TMb~-8O#$6mf%X8neuJ*8a>QjXT@A$-=ttnI&j@+2Xq7 zvryU3!XCHHP&yvG_$o!r!;(|s&%M_@RLkVU2Y>lI@ z6rU#XX_Sj=S1;Zfp3Rq^@6L>jXjo9K)RMyBQ( zX};RL0ih@BsKTpXFcQ`e-WU5OYGLCd1!*@Rv&ORHHEk@w66Yj@$fb!oepDq;bSavf znW40r1u|Vnzbiu!*rYC7W30$ykm2G|@II^*fIyt4%Q9kO)GaMn!PtKRONB)ThAP8i zXXHB5w^n7c%w2}So8VC(EvM$dm-QK}9^sO6AKy z!(MS~#OsMhVMf{CPm*Q1pmS6W3(c?oMmsK+cXfYiEb_OOngYFb&8orMQOKg~_T~Sj-=^U`B^e4_I1)!C7`RjO@kb#=Cu_x0UwTg0w$Smwk9C z0j2?WW=R||6C~5)omn2EVQQf8>g)*RWd1ncy;62-bEX-DDJbEhnGZldD)DC%n30k) z>M#&e!m`y;=rSa&By=+i86&Ob3=fU0ee*S18#GT&3gZlXWdlkGkjSpLka9ufnHB-@67+F=%sYbiH2 z1Q2J069S>EYTbJQcctC;*d#y%?d=H@%V$OEeayuCnM&H{-?NO*C6 z9vccl%Hb9~q=csvTB^;*U8`(;!fK`v@8`Hh4t|S&>-8{?Et&8dv|7kJ96Se?cE_|EtRVN?DB~l5RKIaBW$aK?IVXL6Cn#))#6P z`G8G>&5-d$m-@)R`bostxW$@SJnp!b5zWt03ZA8O3UZ7e)9h?hf>2b!GU!r3Zp(cw znGz>Gd6y6hfn^p4BgIcSBI~vN30<$IQmY;?@BM%P!80>POc+!O7nY;%G~+moL7hjb zV#)ua#a6gZTCF7Yb-i3IH}_^}NZqjJVWq?0y;?f~?*9IVO`Kj0)~Pt={&Jt+JonBE zFiAGrHVBZOq`=jSEc|hw!Z9ibwh~Ao6iGsv>*bTIKuDkOwHuWHBRRYPI#FJFFc|;h z`townhAj|zdA_Gkgmm-p=yohKZNee_@J!=4BuL-LsKxK9(yjljE9y_~59uOvzAaFs zV7<`(u9m{+Y=LaB7=X1!jts1*pEX|iQ9Ixq@{b~3r+su@$)PUq)wQS}uo3r9qAm zxGr8u+^6U66ZSyb(h1p|-}(0d$YwUy>KIHJ6;`@#XiV$^Lv6_|2N!-DVm#2U-3M_J z1wjPlDPGXUI$gDA;cXGy}fO{96DPb&i(8tLjrso{L2?H35j+mN*S4! z?Ck89@vXRC-R6&XLxe&|dZyV$MacmVFPc0$M%TzvxrKtNFA&lQN=ei&dVI%M8`G`8w54A@N2V3aG!t@M`ZNBoTE|ZfSddg=#1`Yt60BCla&Cebx_x_y zcC6LJAlUg*w*`@v&rWt18%6x)d1*x%Ga@oCG(HT3=bNFhO-%>{Qr)Gh+xT0B=-0yb zLW4Z=Gxa{*TPp?piVI=Egv7K7qlf$1h&=DG;NMt~gYzvNPGkv*PL7e=vv1XY-$CWu zz_7-_`|8-5_HCO@)y^YGaPi&W9ll10s<1kWn|us2aYrSNa}|(o<>=!;6;XQPFjYcj z%5JEu%ThBvHbxw{n#^PL#@+JGoA*}!;IC{o6q`7nAa7&1dKg`X*KZQm3A8z(&N^dj zGsSv*jkQL#&hrf%x^u@N_3?VOgDDcK)X0PA&eNE`A=LuhsP;0L=a?dRXYy%@3tI z`B9vKN$d3YuRRtyPAHfWeh@Dh=!>kXh2z%Nkbe~}nyG#pdhU~AT~YRFB|LJq`nR!a zm$S}n-ruOH%Mc$waS=_>)}T$7)qBA3MGO<4dZOr6F@Q)sqK*mY+ykYq7#hf8gD2mx zryY0v_Z)fTX?WoFa~nQXaoF+$>F0tXoUw3>#5ZJ%v=3zb2UwmlKb{A4Mn|T;b#>C; zG@3nmaF;+7i){99m@&O%4Z4sJ6N8D-7M4Utk_0FzcGUW(IxN(aagaa`kB)LI{Tbf2 z)MFCz^86pt{xTq{_lq9I5d@@_29fR#VMv3n0i+w0P-$C-8c93#5w0VPwc(c+G{Jd0AD%J$OGJIfZPgD(g+}r-z4dI4h*cr z-Y)mn943Sy?%GE@Jwb`fx6|*k6>|o|NwB>AQ<#&XsH>S3-Xol@xA*zQiSNd@I0W&c z^y`OM)_3@Pk2C8HQLKiDucENtKY!?y)z!IGyu$*U?x7wgW(7)Rh7l&2iM0^ItD)ls zU)PLTNgQ5AK+OPVXwnrrLM<#Eo^Bl$oYf*Vlrw!$3I}DIYjr8q&xjuXn#-#iGGgfJ zFwoEwoS=tI)fWv|r5=ssPoh}si!Qp)um8<2O~g2v-Zh;t0pj6m%K>6rR=F#0(7iO? zv>g}jLMfT*TqIY_ZQ4vpN5*29&NP(3=Eh=$aaLxk9bB!gTyQ7`U%bDY4VZ>cpJh)@ zfm>k(4DJF9mCUXtZdV^0Q{(0V6F$(d`7i?O{Ne&Veo+QQ5)_n_AOB(9zuztl`jIrI zBlUsdJNK8NAA^C|7~*;R@0rOUFE7`U_>g&jyhKwgU+*VHAskJ(Tbkc}(}WAf{)$_B zC{XMq?e(n-{#^Pox*A!aR;`neyu~33??~WPbBApJV*cqn^Iwg%`N`y(S-saLjqLh5 z4}KoCyz`>_ArKv?a++5#c>7bl8_LDQGvN}*?#QnAHHmDN*xn{Q4$m~VrGAkmG!N8@ z`hKMe6|$Se-RUt<;j*l!l#m!G-UTF@FpN`@XZ>M8YilTKHIYN>A&gqlCvq}Q)Trj& zJ^Wzu2c7fZEc!S(`VxGRvg1EJ$>@_oj|i0!B0~lkuSp{*L{UXW>t}zFR^eiD*a1%?pu1Wq*glG0DeNNk;2D0e0aVVY7^5#&5MyJLZSbAn)h zVu^jDp%Lo~*j`#%TF;l9#_F8eSlHMyYP` z6^jE83PIui$HOmv^3;@& z`PQi5_KtJD`~H)7>0BV(wYId(DweDzG1Zdjo~eA@1+b?Y`$s=^LF^MvcHPE>0qG#N zeVopwxQPy;FBd=&t%O*z+pv>DoI#oqPw;i7hh@uDbKFHa^s38^TxG%3V5Y^#V`pg< zcxMdVvl}Gc}B%H2zsDQ?&GZW`> z%>c3?u)<6~HCPw3K-LJjHn>&SG@hgz9F-n#@RH9R!V_MvFkwSlzF34&MCPJa?ad5* z{+pj52R5TNAQt|Br8J#lNW!KFpjlvZ9l|vO z+7BuC8KhA6ja0~qalm&JVu9oPkg|vY18jG`tqsH(E~}~oSQE?&paB3e!k~9R;*NtJ zurLDYYTG7Gy7tZzD&e8k+l3g3wLj z0>DRc-~ z2BcifV8B*qgM$IP;Kfa@yhB(T9&dpDa*U&>%}OcyT~9VmCe7mWpSokZ+)6zo^7FpA z1i4W)oW0r`+TWRfB@(a4O6R_sNwZCQd9?b@!q8yd+s&yOyv};b0!xcT*9`-|8xJcg zDL@wc5@NrX^}tjPpU5t93ZgyU!ge6cFZ91%aS*iq^`_(7c|2ZvW|Z1bP3=IiR4PDzm`F&=o&* zcA1frmPW>4+mBcY#*sTUU^lwH^x+%&KvY!Uz$@@bWNzz^o}XBsWcbg_3OS`8zdF%K zPxJnD5qVOeNC(NqvbIaA#p}=A47kOP&$TQqBfmU>D)hZF`qMXzKbMni!A?>EG{I`s z))4O#>G!lF!@+p#cGl$YUf-j8^44*_V}K(`ErxwaO1rKgC+~QDF2u;Fu&JIKm;q;` z=$Vz^c8t;`ny!t49_5X5IGolPUxSmU?!m#PFl}U*tP95eO_kkruv`hBaXr28PEKHb z!$?ka}+&@&L5`kfWCO)TlyJ7u?!Rl zJ$}lbhN!iB?KxNHuI*4;-CMv~czb&@B7-s79^n|P+BS=+1tk$-Bt(968@|xHX|OHY z!|(c98!*(6GggXcp`czfQP}m)=(3(FTM0ARGC*s^NhmV^rPn_2gWV#5`SB>{Q(3&7 zHhiObc_|-t!@<Oy0<>=1v)_48&M}sj^#2&f;yXM2j}E8USOxRSW)p)D5?Y!X zHha3xLZQRBI04o~%*Kz{4W#bSS^H_7SAX|=tishmkw(7&a(?{C(*3l$>eIrD8o>81 z=_E*GxoRMjP^BRy|eQ%0DwOYD_xQD#k%*&R(2RUd{4vku_4NMr$1!=nxxU^0i|t7|Ig9P|0Fm)Hz1g3j=QKKSWG$-3MbX+_IF_nih503_xG#j>bTKOVkfF0h~xFbG5Kpt^8Ld@bZ+VE{`E{kWNArB zuG!%#!twCj7scA#jYRq;^AEqekPsK|Zv`p{)~Zl7L&Moy)~rvXILIV)9udsTdHupZDQ}aeeBDIVq)mQV{DQ70v>5n$sa0$jxo)zH4 z`J76%v6&tC#^5lO0V(N(`tZ69`mhl6jOpJ1#7E(!LpreF+HKnVF)(mILC7TnMJE2q zU`s(nM@PHfi#wmn59wOC0!Y*{i$XL_cEy77*^$2JAn}LL$aZmDe{+?_PTu(M-$lse zF}}RXz=``VA*=XPq`>IA?9qJ*CuFU!o8zsxobcj}zv zhdfeKcBy7=h+27aX3#m3IuV>~Ixe(Hixq?f{gbyoM8?HEy1;71;oRRZZ`#!?W{T59 zCO(#1RedX>!zoy!rK3Y;;n5)b9^mGa>3#s$b2t=hdhm5$>zBsQ%)NxKST&8txW#t#sLc+Zs zViHh@TH1zP-(WpLt+~CH=^q+)Y;`9iQa~{qLy~sIfD7baYwQV@)1ojY9FkBateweMS`(W}y4?W3NB+I$Y+9zYEFMGJMo5 z(-cNr62hfpVHcf4$8YhTH%bv*V|W^g`YWz;wDQCf&>DEAoI~ zbvRWf+ScB_^xL;r7D!b^#jMK@3GgqaR4qJmoiz8eYHAW$natCMRz5i;oC|m!^iX7H zWDC9x$MjY5zz;k-J41SJl`X%uffyd2mghWvgCUjk%yWS|^V=FShD6(W`(sR`<)M{?m=aLbWf3mFD+IfX^dnvh(xj&%C@m z(3r9jPVr0{a5Vc8X)IDT8;G>D^;8~A^nmWJkKqfy`kLz-lja^hf9+T4W1nbN%-Rs{ zq?v}Wr^aq;5-rk!y=Q<3P$sW|FJ5|*=z9uKy!Q?UvR)l9nv|X z-|}0!@ zK3=FRgc`-`68ZTt_?-HxeR^MYRMD^z^F(TOfrfH16|K-P3Z9@t@_+-K?Hp;ThwbOr z#CQ^d>^9fW;4%6hi=Y@t9N~_%wfOfg1mQ%9_N0*nXNO^b1?XW@g(%}b)B!ajsTi8m zShh@?!qk^I=biH0PDxVUMCcAeX(D~x6Abdn(qwY(BorQxzN|ZDmL`_ zb6HbAkipUUo!zqyhrP?gXlKzIwtDK&X$=;woaqDWBzOFd4kQ$Dqn>v~5+k*-LyTLf z7X>F-$isygJSFtAO$jXP=!fEmt^m%TVZ0zh{ZrI#qJUbSZoLwrAS>%?(_U*r$(_fa zn1lq^vwoK9FyRKPpI{^pij6?KJfsgXJ&2B)Yim!mL+7*u5c{T}L!P6RRX)lOho+)& zle1AJwWi%@cV{Q*Z@H37f|$ueB^jBZ8jFt~KXP$$l5x!c{j~&%dA!jzP5HllOZ8{K z5{d~-ok+!cV_tod?z^p`l%OY<2S)rSH7)J*-@k}Dg?Io&7dAF}7ocPC3y{##{y;vU zs!-r4_3`oPDrt9L47*QPNnz^Az{Q29U(ow{&g$&Wz7P!5!cN`1sfLF6>(|*6`-k$K z!NI|jm)q5gBdL}Y`_>CQ;~^`~B#eh1fr__6);T%E*H_ZAhNTS*I8M((5=yP>|C{5b zX)nGqH$V?Aq+xIPDV-a%;s{wN!^^VM=BZ6UEAXn?S~oD$k5)%8Ffa%R2*CQ|r29>} zcEeC12!V_a4Pm@6^Z4uLq@A0atD~c{ySr;!TE3CNlVD8677zy7#DfM+AW7VZ^n$}6 zna_;S@n<0QqTWlpF{Jj@*Ebegfq|V4+)sv~W!%H&-!d##)^|xCE>iIYA%6K4(MAWj z>#9|HiekRFXMkJ=^mL=xndq?lmo?PmjiI;B;N3rk;CYRpbZM~Z8p1ownL|~P9(_+d z%yriBAS=aon~?~@2gNO`g*Kh4-p7n`f-2wGjRtUVY#u#2Q2V~?uKUA%>W6!^iSf4N z`!)GsFE%C6k1o;TS_oyowTmKBp-*=Ya#=X$i9#5>n#6h8;1qc3PJrhWq4r>SAi79S zwCD%)|6JKJc=&a_MIT`)E`I200poglzEh$UmZ(W@AJA7wH>U@o%;=^yZW|skWE?no zCv`y2D0Jm73;WKj&{!6Hd4dplZz#I70xK62E2aJP;nv#1if9XYj1V}D?=mY^P}~#2 z<5kd*_M=Wf$44hElUD(V%Jw3mekt+aOypTOh1#Ou23J|r(-!U%sMvZ^rB^L?&?IcLh2%C+d)dqD5rz_|x=KvgOrf zX{8S#PMS{W3}71=6+I)f8FWJ_+|3Vh%kng^vlTmOcALi{Lc5{C31dj^l{yP-zyEF% zfpBc4s`olrl*0_W-v_>eH2`(*;3(3u0O|{R-$>f4#KHlOtL_OyE zga7-ZWnsO7>U<1;IooONO}x7|DlH?^kp@gaftXcl3Ja@C8b-dK_7DUG2|7!tlBt0I zUi)W;qXNm32`zmxN_@Nq1I~8}q8xotcQ=$e4Dsf_y&FGxIO*R?irE_-bAJ0JYq&F) zPnt*}VPRYSKn8rja4aBG3i))!X*eqC;15Yq+?RiIK1B6itHV@6LPDhk_|6GZNN&}4 z#j1O6a3GWDY~X01!uIF9i%FndBng?i<&wYV+eBD;#=7sf$p}!|P*GE(!=hti6ciLJ z9KbMaFIYEZVaRr1!HOjV9+otS^$=c#0w3A8Z=>Vl`jsVIj+U;k^`;jNAK;bahkCE%<60Ya;A0&^ft0jK_!Rv|s_s?e} zH5bJzX>TuL{noLp*MkeH|2!J& z%68tfur!H_t5q051jM~<%~AWG$TDl{p6k96NJ~!M*@{3;=to9H0Tu20mBFN#XBQ7@ z175<2(B^lnGUFMS2!6m{X+B%s|)(b?vo1%N_q-IOYsu85-+!-mCkUsJV{I) zL!pGWrUX0~s(h!%h5k$=@)DWHzoH~Zd)H4|{vaVJ3^Q8U(Bm>A_`bJC5PATv&o?2+ z^D0}iW}4rSGPCuOSFZ}KboU-dP%uG+Q$fo?GzfrHqG#LbA;8Eb1P8iO^aKp*l7xiE4ans6_1*gVTHl+{;bH%kHKP6VekgQx=4~b> z4Cv{n?mOPz-E|70;hS52ph&Wli#W;>h17P$_G?)!khN28@^Eob#(hP-p?H7!s=kbX zwzc_P+;+=^f_(f4x_2b=ldkW*@}A@(LVt%oWLXjjTjsJ7Fndl603a(6H#I(g|C`!FrqPqpn11ag~V!)Dh zy4%?XM{@ECswUh;oLtiGZi`#V77=|hh6kI|(`5W7E}VcUGBqViNn)vQhzpy3YZa#^ z4FigSF2dq~qp|*v{a;cT8+e5hng{1PrQZacex|INSEQhjn+pjF!Tg3wZk8nDWa$1C zw;gT2yrxsq{m7V_Ms+Yfcd(hanX=4IV8yBb(KFpw*@|Av1=hq=R5(-j;d3C7dO(Qp zJWk(`n)y?M^PLqAq!33fbQmfe9aIs6)b37Gg+0^K!6f2~iH>g-w5It%q|KK7*u@!@ zUDhD>P0i}v*T^sExY@%Mc2kO6u}fr5Seo#Bclyr^4{Jr-@Z8r2(TWu zMxJG4SbDe)!M2eNj8?n6oPj46K|y?zQ=LRj5)!GS=<3%yJ9b@N(}(BNuk=djxOrMw znJ{8Go!QtYj8t5oZogto8*gdxAtt_vj~|qg&M`LWiJ=jBz*qN3O>N26fdJIQ`Rez7 zei^>IyUde_iCxkTJ(GDODtvMp82GE^Db*5w`<~S7B!D+e*dB66N2(s|R|-M&PBk`| zeLPE*l`qk;omI^>FxWQB7@JHl6Hdcd;Co+#Wx2`G}F^NLwz*569W?bY)u-7p)Ap zzyFZwa;4|x%REcJ7ib6nfD-BvG+sisBdupbrcuV>%Ct843;($E&*VSIcmcp;=@Czjj`jooG2*&2CLqHwRx;XR50FDiFc-}O3jq-aP=!YP}cN@#%_&A6IuuSZg5cw`0@Mq32DW` z_067mQ3T#YU(gE-K|nC7ts`Y<>Sv}ja1C4+Sr0i`1A7`a-dMSrpF3+3|2)3~Egc+c z%)mSpd~44bdg*t5D6pybA|;yuqWrfP*Up-XisJ{gov~y0;O6F^ks&JTr#NZD6Y@C< zgWJB@S`EFu+M0HWM(*Il=c}W7R~ih$3k#M~S0{(Pi#?Sc^V8*4e*5_02oMmRb$567 zL{MB`U;m<^TrOaM3-M*Q2G4gA!qoWE@e>f^69Mz62AuQCS~6Wzb>Y{c5)ui5M_>Oy z0(AF}@Pvh_msr1Ux)mcNHA2NU-=?KZx0MuUd@VixR-4ok(wfIyC4pyQF~*8}itasz zsi?EtK68IJ&yF$q_d+^lNeDkUZgE;tLa5kg5$rzn4(0@fkUc zcA4+vF(9RVLH;0?tD0x(2T~F?CwV9#%nVyyS&3^1+1%Rt?`b=ngdnh2aAhHt`l3^u zVEjx3S&_;3UuyfW$osqxu}+wo+q+yH9i?%dCr@TJZ9UIE4oCmlTv?6X&p9{g6cMtL znSD7*NZ2`QOhHjqTMl}upl!f!sodJE-SjCrP>zm#9z#68e%*I@S}0p@WA#RQ_EE(^ zf2_N?MqTwStiI*%-+P*;enu|?G%2iK^+0wJVtuT!A_v9}Ihv<_H6l)@L!gsozt!lEZvK;f> zEJI6w!-jZC<}aD1j|kV6-&o1<-ZO)SJGI6TiG7#FEI2YHee@F72Nz)?SD(7Qz+h21 zhX3iX@~2DM(2k;7y;m^Yu80wtSl>asz*Ba7hW1)wq8 zlU7R?y@y1$`9Dts!P!%M7_Z`2E@hiH*pNaibOwwyYb9p{*5(j>!+CJ!p1Yamn5ymY z5MN`{M$-XzWR&_Vg3OahANIl+1llv_n5FLZcV3Dg2hIE~vj#_-8b615z}|gS{VY2_ zqZI1@>EWCty?#>e5!XhOO7%x7-b!BZWt7N+5_R2v&G(lFSR(muiylq}a42ry8`t#^1 z@nvy(9W}K%6TRFaze<0WrY$#v;ORJDiC#hz*_xqI!ds)9+zp-=R5LQlAi0uSY$?p6 z4oX^{F?qOT<@=|x6%1`_b$91pSOsE`4+siA zQ&%h3+fHyaU-XX*e+|J@iU6^9RL6i*y;#{2YKsXHpyB84esg+ic~7`?dMpQ3D*a*< zZ{mH}@yEry>7mmCRx!4}94^&@PZKki6c$ZlltWw@3SZyXxD48)dvB%`&JiXvYq#+B z!hmt8mV?8RK%3qGpiMGA;I@0bbn99o*JyCwKR8aVkbwm+vcnrq~)Vm$J0HOzqs7ev6IWQ;4)*cD8cS zqNjQNOm?j2m~sJ4m4lWRmpZ!jW{#XB*AylleR9<6~#9C49B{UbaBYPy?U;O!N+ z1Htv7ppt|zF)?+d(f_ckXd#~g;qE3Mr20+qA;}gPduZpti~6Ee!mEoP(C|gl1=a?$ zgh+Lz)smXJN>OD4%eOvF$OBr)%Ch1S70%x-*44f0OHo6^&bZjZUM%dAqSUAYT0z;X z&|y_?0x4Q%s>6+|pFiz;vv>D40+NW5ljFlIc^SWw9PkXS6jXe9!lA*iF{gFGzdkhb zX;@5&+HT&_=9L6Q={bKmNvl!X=U54e4SBPMFlzS1Z{14w@Z%8xd;lGFLGI|a_QfOi z2{;`xoL!#PF~-z=WI;~wr{f18#>E3-1K?W5>5NF<^2Uqh_7{9H3Zd@UcJY^|FJfQe zA`|7!-Xu?=)z6i4bh30JX3W(es(iy?n zL?oss$Zs}6@B+&I!r_)wsH1x>%QNrsZA(>En`KR2uvze%BxR_z1vl_lEKMuOcQSMo zFh^I*yq(*gSv2vdchu;LOvqo`gE4if`;E=1(T-6d7f>=^(oqaFJP(p^bZwC79L?lJ zVcup+N?wW&rh8bBGhVGRqwhPZd+Jon3y1X0gA5|G*`JfBJ>c+p{bN2C#hiTHE}usy z{>1wbt}naF!Z__kgcGKTZT_UdldX!zpcZ!%$_shI&E0BTB|9r|;dk!*cGDfRhX9hW z*&-#pjY&Z_w zl?HY69A;;6Xyt3U95y#cVQVW}o>bC4!g6p>xf0RU_d9L{RX8*ZbE+kwqP*ALnYIZgmdcU z+;zdA$g803m!mGj!;upgej}pk4O3GzOiZ=fPgI`CIoaM-*n-&O*%=Dsitp}1k03%h zLsd&9zuTcaop%=+fbSdh0M_ZlnyIMRr+5Y=GCn0tr(@RlaDc6S1Q2VFZK?I|j?qgb zsjRAq1K7s)L2f44PW&vIljIMWU->r&zaFy2J* z--|Iy2*%%>IK)NINc3<0QrxNDiHT#N(7D_2mZBh)BK-Z(Cu^+Fo9U$*6Twx)(~n~i zhE&*QMo9dFPcpDg3J6KwFlNkaB|;ieG^C`@X=zK#9maMS6r|hFMsmK!fwnEgy=JXIZx;; z#9<%s!Kj-Mwuzhm4(7gfqnSRT99($9!q@uRIov26f-`b~{N0FDdI!vae-3{t&ZuFn zi?6cwGL)rq7)kso{RV2P!K*LyjGt@D-!Ib4JF()!R#(iv8sR_X^qK+%-+H2$MOIVQ zKJ#O4ptp7eHRKjCQlZrb;Lc|kRwZFsMy|0w-07+diMVXKqAi_DO*W^^^ih_sunq`mnc@5wfRtSV&hxvFkW6|8*Vil&IL#c?u&FDt0IS$q8&1uCuAF6 zk`jiP#Q~4Wu$tdKp+NZ;{JF4N1 zN7UwnSfGz3bh_wwLQR4aXq~DP=gaL*gx@1050@0M>Hq&Hc&J_M~1F$Yw zK^^pv$)OQ;|CiGJz9LRqZx`~$0crvpANfDu`+t1tL8hf>3s@`Scx-=H05Gccc1vXk z8A&kw;T8vcP2LQcUesp9WoI))7n3Nvxw#2Ig#B-POHHYi)YJ;LI6=K#(X_mr+^-7I zrKWojAfve$nqYS@2~CK0Ch-diY4lzTm~Eh<;6L|AyBp(Ik1>S_!y+KuI6t zpYy)wHvyAeOu)dUU~ALt_98{IB4qy2^(x-70#$LfTt+8)5 zP}asTtlzvNbS4S<aQWmC00_ke@a#9A+j2n$wBUphn z*!~yw19$@g>TTtB=f40%q}Nd$UmgyV)-Bb~o{)D2$Soug{FV_i**Rh!BU)}I2o}$! z)0h}+b5-;VybRO*I5F|FRc?CRD*kx%IX?*b3q^!(wVCXR&RRH>0XecfQ#>qj` z=*-}!twr<*(>?UuOQdm=JI_uJ=rS!KAu;s6p{QsBu!Q|8Ahr4i`zyZ83NBm33p!58 zb>ZA?VHBbp4IFvlS!=GDVl`tK;1! zM-6)VJ$SM{UODZ~-Q~8ow`ra{$)}rh1w^x1E0FFsUbVNkkL9bxA^M@q1&#Goi)2IK z=^mxKh9DA_P)CNx`K<;0Bg;R1&l2q-5UK#yb#a01u9=ve-@CV*o%!W&$DApG3)dCVeb|!zp0m&CU1dc?Xh=|Aa#vt5j%nSJjfBB*vq;O7@bhWkbt6ewZ zbV}OmpO+aov=y#}q@`Km;Lzx>6xL&Ae`pEmvDeZ9$AK^m6rx=n^wBLZ0RFtWrNydw zYIgP_#mq0;@n3Klr^|SEH#0M{C8$+iSy@33XdfLNRm6Vw$=%&uKtKQ!6B87;g5I1! z;t|>b{krqv!-wJF;jytXpbEvt#=eTlLLh^+*uXqDa~dOqZJvpqZLU~z*6AA|Nxv0{ zLWnB#UryaN6%T&eWLtKy^Kmvuo3c-uBOFwf&-%1&-}tdL;F?c-v9e6rg?LCKg!M3wfPA2 z9OE;yrX2(L4=@U8v!4;vTDi>`mjrgI8PMrb6OX@gy5bTNWHt45A3 zIwmF#!ME3OK)29>Drj{@>ES^z?|9aKP^hj~j0@t69&yd-N?<6kHvKqs;H7?KM_tftPqn*8FWbf8KI=fvv4-m8a zmsU6$Hh3w#UYP0VxGgt*@^yJq;BJiqyCF*3D={QNH}d>29}m|LBIs@OGkZqBsI zd8Wz=*Li$oWT&K}wJ}HE)O&-a)8G-w)z#5x9@^P&Ah_B^@NjYxf2&m-9312Y>cgsk zpk?@7T_(NbsxrH-re=-;(iINRc1!>b%-XJ}l1_p==>fwoJ_426Y=15X>lA!mAZ>wc zuE-0HeRV4BA~ZR)wNO=cA5z!$qrku*FCq5N_RM}|kS(hDsbFXGk*4Idm36${jFG+~ z_fJ|9nbXHb`i{FdiKLpQvskruFTq14tg?1@b_OQX$X;pI78bINR0UxZjZvhKEf*vu zkyVEB0*I|Ucky$@^eqtX zh02uZNe zI|rJS;PRv|v-?h(b6*6!-M=Pic^DfCK@6>EVZqem2WV!-i6+o1dgEIuJci} z#BNr^&P+9SqL_>(sHME~(aMz)6c;xNcY;_{Ez>&tJZu}+g9uXfQk&u}w#iIi=(Qo0C zzw_hb{&pVKEjG1-5Y8zOl$i5fYnz(VUTXt=JT&2pgoj{V0qFe4#Izwe5Bk)y$7U(y zQ5sNDQhEY^Bh545GgaMlvzl$BG@2nLVYF%{%frKS>{n7!BA3y!SzNOI_O3ASAh!Qi zM;j2TNSaX2RqeWv90D4kYfoEVN2ssn;$+%va_k8%m=;eZMQsuga^XDQhGv7#LQ*+2 z&-%oFfLtbP1*D&^trYCJC5I1BLNZ5*2;vB3_@<@=ea_#7BKF!hUT)8g?0I|l%cFOf zZw;&hLS(=QBx);dhetLKKDh|>cLZo-W}Qat?h+Xq%{#zuzLpUTw}2z8{cvS)7rl!Z zrsmi0;{4em_Lw6foF|S}28BDditvVPx)Bzf|caHK+OuYMm`0!no zE>i**Z-D0>qe~yf%i51$8d}Q_Kv24VDcg3oh!^)3 z5EC0xu)mEuv+|OXlIyL{Vk8eg_E(dUksZtHmKn07SZSa}AoF=gge+F04jS4oAyIB5$o0mRt)2dPRs$BXq6 z4)c5Q&BxKBuF*Zf*;2i4B=}kppXg|K}|sn0VwLC4GQma(py&u(`x&vF9I4=VLe5WP~L>a|3Aj zoNeT=FdcOl=cc;`A}&M;TL+QDk%kX4Oa0Xtsm6=$2GImF9fx_B37 z(E9GbY;5PMXqLY91!|y=kk11vtKMht1ZE$RN%mvYdVcWJv9T%YujbM%jeXAs7Va+! zGvAk^ewOz3+?pR|g#UoRK2BzHdppm}8Gwh>SP%x#(mmhIitmV(?(TH>;xvX1IjO^F z!$l55zfMxXo-xoQRr7J!unJc!QE11cgD63tvB(PdzA<-dH(MR7f@7q^6;YefP#y`*e6?bBEKicOf?Xqq_>Vfgv15yR+4# z`WNHkWGr7de%0U+DC9_Mc8Y4|xFMa#40S-J3s_)P<4dWpgm`;jHI9H&k|rJm1URpRosWk2+7e&s z{cnfQMNZ7a_jOR#?)C(}rnUVe2J-U%HwD1fJj>;w%aFAevhdpT^xG%gs!-LV`j#T4 zQ?(;^F_P7fWc&kIA@v z1hk3*HbKzAl~thlgvi0>oQHT8F+T^<5D*f6`WZmmd=y6K7ds+2iSDQzlD4c6QlxFjE{t(ci>*m*Q1DRHI%g=%~ROTCsM2s$Xr|gd`mWaXuXW$!WZ!6Fpc# ze9IRgss(A>IJk@f(lyd<4E2_q7Q>H!}feO)Nsl zdRV{JSIh+9Hzu=F%g#s7Z_h_b8ybKiMR-k)PX%!Kia6KS)Fi&1-70TVyQ*bnWgQL= zEZ2KBwh49L+}vEhes;CrrQDM2)pXaPxiB071l#``WIN=<7JNTx#oAO_%2(4Z3PIe% z(Ft{KW980tca1&g+~MJlK0WD3`?9m+yr+yzOu%3PjG{7v`28!{`!jwZPQd*_OH874 z4xl%!g;mvJz6pWNsC0um-sQa(*Pe!R9^u97grua+SK`Q@zjit9BRv~w^z_ZD7vRR-fBY{IC#}S({DYK z_s-^7DSb>bO+muXZS9x>Bc0unn&95VS>HcXhGX_?r&j*voQgRq3c<_X|Ba&8Y6LB2&<9SR)^&XUoS+0Qmo7dqI#QV8sc$FEtR%19s zM1>y3sE2vPle}fp+Dms@K*cs&;8^*;*Mx^m-)_(R{YLSGB?z&P;VbTz`ak@CT=wia z5|H{&-PIzaMIuJncm-Z)I!`YZ1q2iVACvFyeLZnjA4dJ#@)I~ROvqVOQRDAE% z2s<|b4NzRrRaWhZ`gS@p0g#zN148&s^ z9lsYZtlqItgg)uf=z+-J%hRIoFEokUsKY)=(STjZFzj3@mpo3==+Nr#rZEE zKR&n!0jK2H_feW{r4BfxkQPJ$jS<9G{0i1TICuG6 zRHVMR_<#A06)c&#j!OUi0LuEcX6~*_0*6{Sv*40b@{y;1xrvH+AzxICp6}4IcVi@` z$Y&PGqnR|s(2fMr%6X)nuTUX>_=;uq$Z%=}w;{7LSFtFB2desPYdaCH{SwUM9rP}1 z*r3B`!VnZh9gQFQeYeIs7o2Xcj?@q1fp1hl|3j(4v6Z2eFX`##BkWfO>>IdEil3z% zN$ChCJO|5eKv`hnKO?rH>fCOSZwon!BuzO)3_uTNJ~Oil3n%#vfUIb6_Lj6C2p~lo z40zX{HebZ|j`*5l`0}0v0{DEv4`^q$yLrijYEJQ_Jeu3unAsI)c)~=*3HQ(G>T2US z*arlk2_DKg?g2T&x5y@uk*KKKq|Douc$So#X9*9ls#ry>w4Dfap0%s{{#Ch7a{uZLChLwn^I9`AkBOA^dbw4uSl z*%qI=vu0)G5V4GPuy+=k+cCNj<^lA=z)*k{0s>vTvUZatko&S<$HTm|;urvWwH-Wu z3}8Hx5G;>1z@~N*?ZYRSV9I!CuJ%q3Kf9^J1yXrTFa%PChq`)MCk8kMCzH4X2nnqR ziTv_T(ORX}h65~IzEv$!EkME?>D9X-$xeGi>-&5=Qvt9c zPz+L0wSbe&^&2*wuf}Y1oSK>%a1$w1`45vKLQNStvV?#VJf{;-Orw|n<~`~d8j27zj9sLdXVL8eLZIPhK~pm`zT7Aw4vz5Cr}z8qtgQ>^Ay(>3 ziJw3B(-^u9CG*(ds0V;V(IyNLI(>I*5%D({q9CdP%JgzL$>PQas5Mb)Tm~k1X=!OR zR5Gxa_so%eZCBDM=bI%Jq^Tp4Vqylqla$aoGMW+svPueqqm$os~o&7N_*zQFzY@k$u>9iVA|UbwMX5D*o_hd^L9%b$@l zf;(Sct#Kx?Pf1Htj&WD|_XEoe6y9de49i27?lq9w^GUj{$Mz4|+1hGIENEh1&Z9MossD<7_oIvclX`YcP{*h{O*7N{+f$H#=w?4 z;M|!%IX^#t@eC9f^fb7vEz?dOjXrmDaFFWBhHQKR7(n=tx}jQz<(qHNkd?X5w<>s zk+amcvk?JUy^`NHl}Vwt>=z5jX+f1nSXdYY6iM;(gQ^?U%1ZuW02IDUcgX4Da@5=` ziFWKZZGx>J46=M3ot53)^0`go3S8j1(%9Gt?h@>S7X=7dBS>^XnSiO5R<3=BBF*ZT zW*YZS7f4s&`~_P8&P6d)qOSF)q?EkAn-P=0^RRkWydaARM7(xG)|HYGC*&WpMBCXeC$`wpwLkUd>25;gvFvoD$E( z8vcJo37{@OCd&MlL(Mj%P7i{9tzLGxS4iT@qMG9)!2sC?kW*Dhq`v zpV19Jhu%#iEQ{EVS4hAZ^g*XOmE2&`Jk{@(bGymo{zd=y%oyZsy6DbYJ4nmP`_ha~ znqLsx8|_4R8|^XweSF7#QbT6&*~l6OisAbJhFbK`q7;EZ#b{hCEUr%Ph7C+r9;BsM zy7mGqUSG#sGDw-Ks-I!QA+QCWO(azzA-N*#`R{8koM3#4I-#dESY2T@>C&$Vt~O&KFWRz$5|c zBS3fG6`jmX24qe%HgO)O{D0yE8jRMXBbX{Uad6WXFNM>@s_E%bJ+re+CAv{Dk;XK% zHx47zzYqO4w}7767!e=8yA!pB1Gu)Au;MTOs|+p13Fg$40J<(lAo5;a0G`kn{(3qF zudaie9URmN@!QkN#{Rrasj)WURo3+--20EL6z&4+ zoD*rOj(rmtygFFJ+l5*MH2~cXRTOCmRCCzS|Btk{j*7B<`@KOr1O$`@0R;sF$)TjA zVL(FZMw(#=>5velMM@Y#1VNDQ?i7Y@25FE`x@(_!-@oVCYw!K;_g(8<%l}y8%ynMZ zb)H9jzTe{qDGJrywpmsx&&pUeRkmP)GuG^3Z7zM3nh1dB!iASd_wJDrly|j%xRkA} zmgn0A(ZBoAXmhiuO_N3+P(Tz{FlZIF^ZxsFo&QK&ma58fG5qQR8nRu|5ne$VL3)qShj^{1#}Sn>UGO*e2=3e3DNy zh)q!*@8jk@SM|9R_Ls;qS2H$t(@#lHP2Ezw?_lF*nZv|yVP-K-N@wtZ_OPdQk}_{G zI6r>|AK%lX-dIj9W>1#a@@!^iA~>XIWxr+W`p1A@arr@VM8xpC@oI{)d0C&Bsy;=c zEa!3F!NH1X+V=|nhM#e5c*Ru%M~7IbHi5*>F0GJvx$kEGJ~*TQXy3@%b>9Lkj}>ya zge4YXqM~x1@Fb8wXQF`FK6akb{bcOp!>nfT@VVn&B(uP7)nDn?-Ag;OSXU=osOkfE zUwdC$2CK~ceI|3u0Zu_dDfdXXii$@rfdPeZ}4Hx(LiV%V*EBnhT?dtex{!V-UR_qNPrN>dm?!uffA}brEG*Pm}l5iI02GinLLP%r@s6 zbVz&>TPHWjHWkGxV>yL*$jJOrF<;Mpds#{}t?%#IW_hC(es^;$7R?Ku*v+q!wWg&2k85U-s5678eZNSPVY~(6`Dba;;Bs@UVu@dI<>pG*+EV4>s4n;%6%LhPxMDx z!NDJY)OfVq5=}C>0Yv(5s^NT)-V?e>|2eekQx%O^b(B6O^_hvSE!17mV^XO?&=73C z7-(a`A+ZGQrIspM{s`i@gpd3?&oL6&OKCGW-?jO-3{dGobd1vP- z9$9ICUS3>V%(-n?k_d&W#ou*D{Bze|MFtvuF~{+}TwLW~W)>F_@$>R3eM{YQJ0Pr& z4fCM>sc4_wEAN6vdU}|H&Bq3f*EImY&X_;>Y#zjN=quFOpQ==;FE^W?OAg6^^~7Mj z0~^cp$k%5l(lxcWxIs%MZZZ2^NlAIt1pp$Ccbe6Z>SF)+Z(VJ<%lo%R5)?8FtAa80=mrgE~ zrA#!e7~+pRkcXq6vp}b$!|R&Qspf~FvN$+DYu=0vw+GcwE>QjRy@VNa>!j)-O< z*Rz#uX;8?ErKi~g3JM;hub?VU(}`giFbIxN&A!)t`&wjRxc}I*xV#@+@a;=9d7?l4(W-kMDr9i`}-s{!plS} zFcz|CA*>=hWfrs-OoqMWn@UABkC{|;;BDlu!MrZ+dmMEifQtYq6frgP_awNuj780wt@cL(bH4fYsl+(x)jmwafiHFi z&-nD0p^srB?|=}uq83Ucse{N`1@nz`vg-~MCpep(HwJmoLyr#*Lm(u z8s9TZR=iuCd-5PbB_W}d7_@zYBCLxzAd=rga@psZdI7ERSuuWvg?8;uC;VWs7aZ~K zJZ(3(XLbQdN^K3jFj+)Mvn7<|SD3L|lCLX!NAY&ZQrOnFe+ zatRo6#3!O`zc#Vmw8z2c&4RYPldp(&>_e0$LCRzYG#)_c@;8+h@~3Xr=F4e| zraXGJCP8NAm<~t)xEPy$2*jundb5FUB&?&Gw<`z;ACnRR{tnps-;E#;#i6?S=)D5~ zvc|AjT^-AK3J7X)?1xwx|G^lXW?f;WY0RH0R z^0iu@%n|fhxL*w7`Ea_0SIpDzdz>#g3Xy%JcCgrJK-TJ zg+-8x2Qnr|BnFbao6EfCRQ9OkPCiIBRTxqT6A&Xq|0tEgPxZP{YkeXs0}y)3D?ut2 z2mxvGn8<&9veMC667?nj7d22G)-ITTLZxK?_Y$-s>w{|Zzu5q>B>3A~6i3?Czj>nZ zQ|vxuK)dH#7O*_%f>hKH07D*%tHWRw&JLOsW4YYzH!> zI{6f(m;l${h4VausmuwU{QI}bW+c{b#eU{JKlPVvF;Cb8sLO2X{b+ z`=#}r*8oEdUNFZ+aSUnV_$I(dezY&=#Ivg&92Y?qO8B^2wqJnvx`k2`~&cQ z$To%T8l6vrgnQ3nc?thlF*Ud;!ARsOYH#$tx&XXPf(Ab91+%fB^=@0r-p$tm+Pqtj zAZx2(;+sGct7Q1|q#Ku95W=TPN!dNk^#W+XKp4dlm5|^rd~jcVN z7i3sK%q_mX@q-xmKJn$&7SYj>R0)uW8#=E(swN<&L4adHZ*$|w)yFb@Hu6TC-W~jS{($bPfL;a5QyPKR^cOm=!mq!oFKY+(%8B+?o6*(Ly@MJtO z%}E25yokayXee>#_SpD3tvej^?f*l*c?*lj=x|`mPTRwCR=BqKWKq!(URxv7)fXWu zD$bXM4vWhA+L8cj#M>BGjopx(62HpbQKqXy863FJzi=-2Ou$zl#0)k+FVs-*Gi+K z1vPgy43ziha`KyE4FHT6Eu7@Vz(ey!aGl}iRLyw3Pu($6)QE6522kp-W-E|(m zS!KoMGRC-JxzDN#oYp89)wQ_Mysc zM(%z10L0&X3zu=As%evpi&w+QzF8R%U`Wq3IizMD_yVn)C`7 zRyQ{b?r#J7;^IzjEh13pjWQ)P9YUDdoAl|ME6leH$S=Li>-B>W zZ|>YFt}}X9mHu&MYu=bSQOTiz>+!niJEvW&1M!auvSI!jTuP^AXdATu{+(QD7QL=Qp;aU z`-ywt_Lc@=idx?Ub)aY-OOZmx@Cga{aiWxiP=xMwbCD42>>-X+2)T2_qIwqxt4EAb&)Ip{8tnmsL0wN;x%!izO@D(R#HR+&}qbB`Q%rwvZFH(PE(2_Hj|2ii8{Zc)Y zGGR{?K{p6e-r%d8wLlA^1B(=3vS%#s+}mx_5c36ensVy|ZEb%vZ5M&u)M5m*#Qsef zmxcN3^Afw3YO8~Ugkm0!bgkX92`mQrNgjBW?$w~;CV5j2a<5&dcxvSKXx|-1Pf!01 zGycAZLFS!UebI;MAV&Fz+}BN!kZ(gp5Rn9V?3TA8S%Wg2jvhXQ`Z`il#mtaxbFwkr zPS5!kJOJ9PKwN0G+UK}&uXABkGnDHzVWYX+@T(YK5TbdiE-dT;=L{k_yA>Id`Ph1=PmGcMVWUw_l3q!l3*zQ(DJdvAJ348oIhmOZF9x)CoQj4a@c4yx$EF+! z%1qhUcw{y^oQm3L>0b!2+1Z&z$!WP zC<$jxtj5*`4l_?`dy$LnujulNtQT1>RB?|LH7Ov#XySBg>U3r%7HjmxP$@j13?Ka& z7a=k4wj#)E4P!F6UoK^D)k`0~zdqT1F#?4ZuIw)?bSy03C@KN@onk-$W?EW?ib~=5 zI3^NYP3Om$7{`UycYujgR#pbZevUN@Wn=0It>*uTEwFZ>K=;M5z;dy0cOgDs78Yh% znVVZJ2o}ZI#8FQYy{7h3!Am5`hICRIf5bk$8ybqb2-^@kP<|Qj-jhi2HR|G z^2%kwW#_Q^borLY>;8tI}3fjC{ zS`^yOoe@;pPbkNo$nvTF!~-*h4W1O2IK;bp3xh(gLnmIwM+8^IRuTV-D%0No!&KZl zN&Z(;sXTzYx=DNqT1n%J%23H{21Qg(7nbiV-g)1LYrFm<4~ zgz@$l^Hax_ADHhPtUHXQho`3%|4aaDxxJ-m@u!avV@>obUBo%BdL$QFMIHm~`i#$^iwWB(B=8oo8# zn%kZZYO5Aw-vpSA`0rmQfwwptQs`)d_9FE;X-W4VDlIOV^iqU`00V_LVTcbu1_vo@ zZ5Jki2++I2ya({9Jy2ZuH(+E1H_$gUs;AsIy%;3nAXsi-CX_YZ+u!Fhtj7gTDxA9I z-QC@|o0x4*V2UeikY_tc{vImW*E&FF7gv`BPlSz(HWn>R;hf%ofT{)fZbscE3P||# zn3JXKt1S zt&b~Gol9{e=XtdO$MFRZ(?jo4YYm(lq1fa>^&|KnNi)p68Q+ zZec!Nj#>g7bYMbJny|-8))V1p>KKrk4xr*WY2Rc4M`%Q2%6vNDheAW~idTW@o}ImY ziS^Cb9!2<*Jp%6(7krozw&9E8%kRW1#K$1Ed6U-h#-rSqBHNPzm<>pq=e9uj2I|8y z;1Kr2WHnf@Fp=U#i+TtIjpQvkv^R09Ch(|Ilas?q%H9KBPM}F`1sa{PDclRAAnDtn zxY5eI_V%&4orVwelRrK_-@A!DWmg16MCJhUk!3)3HCy_cKo|Tl(6c=xPyurZd_cAI z9&E2IY<@rTCi%~M2s&Twp=9O!4DR#jcl&?bga<`6xo+@bF-W*O(o@R_q}$I*$;GB_ zE+JFb)Xa>SK}`89!>G~Q1BeZ@St*xUW~y_eZ$5DN4da@;Ch4vQ9)s0Q7gdcB*w)>Q z@Ub2Z0yDhCfRkQ-mpc{RKR@V>itcLmAJzL=04Z6MleGM2L)Gq|n_&77Jjp2VVDv^!or@w9~2ygcdXLHe9nM%sG^FB?9Feq zTg^6XQxHJ`5yDPRD{xFuJi+|?U8t<=?5nHuZLOdh@Df+e`ED*P@jj=_X9Bl06*cN6 zXzl+WI5)H)c!2Y!pwX=&FW(KkxWR9ef4*Nf02YuvFoz@=EO~E@H86a<1?k12t2JW2 zeafEhyAwal;CFh;Y81|~-B?mqw4w`)HU_>Ayw3+hpr@2I8J6O#1_5B^sS7iJYJYET z+I~pN%VQ%ZCcb!hBVMx$j)ggD7_oki*xs-aCsIlOKcgDkpc^J)*?=9p>y!&t6uhW_Yf-*i>)KMdAG=kL)z}(VtO6_p<`fRonzZ610p!W z-vBBJ>RrJ%w*ay(hx*;lbiXT)jnQ17IM(emj~fIC^L#K33>P22b&d-_2|b_mU|NVP^#S|VrUwzq?u-fISLbx=so zrj4p8;r8`1eM(IvY3S{J0pvr9jp|@G!d^vWi06L$cCuAA@CjL-)vym38i0D7u>XZ} z`1fM6YjTa~PJsQ{KH27Qrs7DZBF~pz9ll|7HqbY z9&0~U7$_+_fNZU6Sia(m{`L6(NCWV3^@9)r3|jlJ9Sblc9bMgxEAA118G&)#fQk&P zYQC`b27}i|b2T8dE*g@O{z*wxSA{pXJCNa2J`q}4VMuSR@>9M;_vfPwNjKZv}pvq}L#TU7mV!HrUKy6J; zOACXj`v+gHEZZRf27g-$?gU6mH`FI6_NYdu6Y_1`_yjYKU^@IGwew=$T31|-Q#fe= zZ(IGM&uVb3$Z7V2EC#Uy=6xwr?;hWSKRE^Q?BKZje+3&8cg1H#7n8_)&CXD0~dx;Y52b&M9v@Z<4y_m?(LGdk27bA37Q zIRCDvwOef&o*q2iSCzAJ0jdSC0aYZ=o4^zn)O6JtHktjMD^0 zbk*-HN@p=(Yri47x33mcn9O=DI;LJB+Ue(8ZX`URMY7&Te5^>6Sxp7bq^8=M$ELu3 z@mA}9fg@-(pr>Sve6{}jb6*@bPP$H2R1HDQN?lsoRCYE~5gRTp+Up?5ICWc zgQ=t_P6?4y^gbNlsq(Nm{TXP8!^-rn4JKBMY0 zX(T2TN8c-q^vR6~mNPP%!f3dm;icCE&?Kyd1RM7P2&s5(tfwbZAExBu;--(%74v&; zu?nJAP)GzhdZHsR06`nf(h&db@z`I(ijE!t2bDr2pD&Q4Q&3Q}xf=o7 zbzuLy)}PAk@Ed6P`uqEDZht9oSiB9GP74_uR;6m4WR#*<02A1>U3g1L#VRg}O;41a zebg~#O+{00txcZ__NPI*e&iO^?Ee}vW73-J;)>j!yRH1+Qmx^KRrY~*r=Xo7JcI(Nz-w6&Vvuj#?sPt^|(`=M6Z6A zi)}m-0sq~4mv$@h!CvU9M^LGLz`P2)e7AJno_J6wtM~#{vkzvVEF~Lf1{l< zL5+s+_f*#iu;N_#@Y%j13dgz@8!MR6dHrGVJ2&@^LsL$=EGl7TEoVt-?tOHKS)tf* zN+pJ==(C|?YyoHcszL*`&W8swp2_J2zss1^l=XJ^NLg7A-mEt^+WT6hBx(tz8!c}a z{YH~87eovCB!ZlvpeKXrrlrmXeg2%t#MG(qU}wMEq1!M;f{4B)T+lJ;c0yEj) zFPfM^CHsrkmoJ3jh(OOH=>c*l!L#()7|V1S_|_L*J5x;wv@^K<&sU{LjamyyF$^3V zQDYxN`s75p_o4Whf?Ul*j&dGCHJY2*&|b^31-?j&1}BWYZU(z_1pKEz%)$JUc&62a?$e z-yOG^N_(jc5-s6QXm}UY7L65S$>K}3X36bn8H!gXTffGX8pVn?A6d=y&mH{{_5QQf zaZS}#s9*DAO)0kpD(%~>zGGfd8XCQ~^R|mPTU8GIxzXC%cezs+ddO5Dc82Ab>7|@g zpV3DLoZILaF0=ydeB^4mV%>MQwj#uw^QFIB*$l9zOTWWdk?52b)LBl&QpUlRrHvTR z@r_Rm2{>55NulGlu=EfrF(8|_o*1uI__ey+bN>Ci+sBhP-Y-aYc`FkV=&6NW^sFCW zM7&H&>Kz{bsjBi*Q$NC&##_uWn-cP5tk!K?3``0Fcs-eziky~32+>tZtmHsww^-2c+XF~Es}BPHWbv#Q!bWu9AwXS z+^p{%$(FLG`8?y}i!Cg=U$o6zD86{tA;Qmf;jBZ)iB3{vP$y>5jycn)Qt3lye=a;p zvatl_X}7)od89bye|G!|GlzYY%zUP5tyye<@Yign-*(RVv3K5f^Hrel-f7 zW$GF&Vyy8SX>+WEzE6cqYd!YvEM<2*XN~Uqo|`NAgjBRRtHEP_%kyZf#(IRs)btWe zl>w!L%|cf*)3$2saqtYxXMG`8s6mJGK5pj0IO$bq$vEfQ{hX_8Fe>QU-Y$8W zBGH_PagO#%nCQ>iqTpcfR42}|`OUt@UJAnskt8X;tP~ePFkfHb-QJ3>pf;swx|$yr>Wqy2Css zZVBFvvlPQ*&n~?m(VhiDe2O?Q(hL=}+*&`O3n`c7pw%R|2*kKV3N2B{{r=io;n3_i z_gB4KRYiB(K{6Fesc1#h6+soaNe5PLKKpAxtn61s_W3x_4W-(%A=rQI+i17saIQN3 zvp^$>TP{ku4jtBCDOMQhEeQ+!ly*cbo+#n3RV`ma=2?#WTP1h$GY>5%EY0%K0CU_X z=doLC$!x$>A*qb8o8^i{d_NNdtA7>qz=;2*z^B7~)tSMn2s(cHr=uMSjQ2ub1R}m8 z%AA-C(Pf45^n*_%op_wQzbJ1B->MP`MmSMW#OoN}eJ;NBXEb+qCY|ziCC{`%*S1zvoi+K(qfZ=TZec^fO?k@FIhRjc78F zgj+7!ab)`a$j_g?z+S-WljrYgeu7D7`FDbe96C;yXK!2rK*F?Z$IgHy5P?_?K-|Mt z5yrGkzR$^x2Gdoh_m)lyIijs|xxz0Q!V-1g`P^7o`RA-+(@gHMMPI6&&xQU&)9r8f z=iKpli3+u-DT(4-fF%v zP8($rci)+xb(`xb+n|IX=^#&hF&LeA(zD+3xQrX*i@r5te$B*XhKxk8C-`odu31Bx zr+nXr$42Jl(1onsVY1AT-rqOFl7a8a>=S&!!m8bewZ0+L;?*C4zivA$xUce+3^dgY zwkT@WCRix22v=~9ot>-pHo*##_INWSO=0I~{3HQQPR>OF=cuI5%8+s+(=7#^o0zk>idAuMI0$d254?DL zG34_scMAA}dSwP^UvOGii<-1<6&Fhp;b_w;l5R|txH*8gM>(akveIgR(W-)FlY++5 zkX6uX@G}@6^*Qv-NqE~BH!PVSrmMQj-0>0l8Go@|Bnp9NS~d`9lpwr&vcSt0r=z9k zwsaPWXU6iFWMsUpt!1FAXKq5~*ES1*DNE3)WhXAd5EhPBnwa&^nRevyoUSZpmMW!4 zPfzDeZ_8YU@_m^X*;rn@&jec|kRHp)KUw?IZ#F8~yukRnNznV_juS8(-we^sK{gD(!61t=@fxIi8uVyB9;=-^xaieRe5<(E~@+FLU(Fw z@4^My8r!aI`)`*w)#_$4M0LlJZ){BaYl!i=JgRrI^r*RV5Xw~EsHrO@y{wZ+g5tH? zG-#1vRfqEY4y^w1OuX#kVz5bh1s`X&T1bjRcEJ5$J6c4Fow1)-{Ne*;MI)%*Cb$I{ zZ;lr{e{uv=jvOotk2;~>TcO{7c*i~BNo+v`KWtJwrXg z?t;Eq)NDa=IXgS3Ch@R5CHd-#Gmg0-h1pY9X1m`O@_0gVV~2&5D&Q=J2lLL%DH>yL z6V}Q(CbvA5=3h|7~jt(OhU?%vc~6A&mK z9v%*U;u8>9wW<|FrV0X=A!0h=AnHCaccw)p+7%Bx0%!9Ur7xkGNq(qg+D!+!6*W>3ZOB8hu!8WaML&6JtKla!%ie5vRFe|U44?n+k-^N9F!}azCiTCF--}rW^HUW&nnDv^_ zhdf}@9EhgLS!x@ry5q^sB(*|$Snb}n$fDWRW6}6v6C47|Q#*jO-slqjBzE~b2vgH& zIY2j~PdC~{E_AP2uAFo+1w@o!R4;Ju;W)$urbg3)gKu^F?=Z{GD|S^|->bIX72*1r zGxV}KH?Z2;&|~L2539q4>3)avHK_{JDr2?JUF{Aw=I8ZguAP{WT@8Ppk>_kLD>+|c z?%*WkrZi^2HCEG$9gZc3`Ob{xXdE2mI8lt9oycpA?BPCRp0TP1kJTR50lqfWp+c;> zp4Zg@cXlL_JjqV=^@`b7F0x$5)xI*b&isL1vX8IqKNfswJGGyD8qXmPVS!E?=p^-; z=5lOEuZLYx^Jb?{Z%eI=cW8*Ow~{*2?<0`1CeL>uP0wc}jN7Ue9>R3Tu%$NUNAG|{ zm^+hD&Q|<1N;`8ZZsyzS>ef2f{b-iA7Pt^0vEuts!whEPM(`l~NiX*sFxlg)Z9^lj zR`}GW;ykER!uap$9K z5W*3Ws2G&8`Jz-8%@15`KzfbC#6rTBlG~q0IwL=)#zPh!8P~`^g$;LYc^yjeuCou1 zI9eOG$?7fM=zE#^fn3^sJ`^_s!Pf@;4z3eNumS@@*723igzsP|d1dZH6_$;wjleA{ zww!*Snl$w!KPI6nwYt6eO)wkl;?`_6)#L8zs_%~tXfG;>=ZtJdCi=6Z1H%i7ief)3 zvAjD+Ut;lzkdLKbTY0C1K_ehcwg#H9$J*B5Xlug)SubTZo`E+GT%*MQ#kY9a{ZU6$ zmI=7(QPJYf?t_c$kD-%b40YP+RlC5 zyO&t`S1tz1{IaaH2+EU*-#=feQp}M$IQ^e=Qx0|$rffi1K(+d7i8{8$9S@=jY zgkLB=t{5r5ajM+~PagBou0!4wiV*u+g8Afe$GdguWa0dG zY^M+2sB?_FkeAM8iAIxDy=}s%ref}&YubeDnIcP=yVwH;amutgNgL%Tr+Mj?SZ+J=A}1yq4hug{ zf+wl~43($Ag4AP?JdVJp!yvT0n z5>83K_qZ?Oo+YbdNO^B=F7ABdCjLAK)H%J}_;*Fb&y3eUUquC;*SJqR3c`3Yv>r^i zlP<9c*i9C{`Pnknb zN!8ZUh&U1ukKWVKa6OhjS9LXZgdxx`es>@bcJ@T7wwcChpPAM}9lS!&(|#U_`ax>C zS(7JkuJPu}sDcE+gu4&Ci(p*v^I*c3n=gA%tpI`Zz*aMxc`jqEUAYrQPgbl4Qbo_a zMhc@R3TJM^WeNE1dZn_@CM9LiF{ox?zWk+Q2x10Z`KeIm9JS)*kZmqH)WDR_Q$23~ zKU9oIp^Qh$UDcsrH?YHg&<`xmXbcx(=kYcnT_pKJ#^e7Hka*u?>w@6H?@!d1LODcruyl2XLO9W>pMtP37yj~y^u zmqEk@ADJ=N;7n0s@l>R-L2YfizU2&aXEPL`6EikZH2yi=^ZY1vHd$rB*4p%Aq0fa+rHVAx&(pvwAT zaW>f5h;d%s=Oxu1xsRtAdq^-pfdkPnUy&n9lXm_kZhxjzVxJvJ+y!Mhgx=pyigF|a zD>fM+mjc{AL0Kn=GczNj1&O?!h}Q|lhx1Z_EzJ;>13{_f@shJpzd@7m` za~@3=b+=AHmZ9m<;eeCuy8(VCo!xAzz4t{5#zHd7f87vrk~Lr{`NH-B+?Jr=;6uUkI|3N=XZW#_XHOCp*6u!%CTCc`KP~z zGLuHq+-Uj&HfahisPx+@A&>dMkWOH>1?(a8$tR0-3V^MeVV&#kf{dcvTq;5MeNM6n zL}wdxv&TDY4O=SNkylbv>Jk4pCJ{SIsAdv($q|gs6bUjZeq@FcewkDV_40l!MsN38 zVb0=Rt;rAWCXV%s$r>E=2B$3m2&hpmUX92tOSSiLr{6QSP=6%yOuELhwvUVI>h>P= z!_&oE@zsxyqDVbua7EkZs zvA2Hwa#n2H&z`GxC95FsP2f0o*&*X?HS4HJVtk2xdZB48)Ad6M3o=n~ksvP;tv%xS zIV9a#;)8>zeg!2Yw+c8Nf7x&cW49A~JFo(7BgRN`q?xSk?4%1M9UZxE))}NDy8f{x zVCI2=#7z%g;;Lo(#_pUHsU;Wbw+K|Hlf^XC3EE z>=Kp{9rEt?YJ$rmVTeW*uvjoKE%MqHU<8#5w_1XcHorqz)3mGMj7-i;spukJ-f;L zsjg6`ra=4Y@?6`A!fNHGFlu~=HI|C(OV$>!vKkLo4urlB$2oStc0Yy{K8z$c z&+5JX3X}~~_pmd=Ii6Gp$Pc)jAJMVW5LZbmCwzbK{tiRGntpC@GnBp)=?caZUcOIq zX$2l64EKV2NoWK%E5Kd}%$(*PaeXW*;^HJx>VneqS0{0lWLqEf`)iQFSlIUGN0#G) zA4EK?^wU2Ya;lV*5EOp`wRlRcLR`3E?(tY#%y#fiin=LDW;JykA=0Fj_$?xbyT<34KfKwjM3SJx02h8od z*+U}4D$r^?2I*K0HU(O@t-;*Y(fA5wtwxkMH~*wD1}=H?T+g0*sf7~TAf8!HHStj( zyI`LmR_9JiJaYNQUz{!3oQnrpcYXz;++caugNwezAhErZ zW>JiBtFWy4*mv=q-_=c^tTbGHRr4gT*z{vkyPye5#%qpcGk&#SS>sjcnyfn8ArTpQ zAA2s(hS@`bxD1q`(D!T`_kOSg)YE$(31Zhvz&X7aT=)u%eiFo*JhV^CN6xQtTBnl1 zVci@M7?@!xIRhu87p0_l&kr8O+~7_qmMsfT!mT82JeVteid6`LiZR~Hjb1um$o6cX z&=N+;)$vwIz=UJ?wDs(ujY~m~7Twmf%plO*S3#{_-v_SoWAr_O5g+BkO9|^wDy4Lc z*gd$M)|jmm|GESbJvBdGtRK4eIo;gqKrRu10J~3yq;2t=%~zu@062i- z0J8>Aa4?)#nhuho0po(Pybm^i_eu{BMvZxMDMCYIYgdhEw)Ray~ z^L@SJdwS}}$#`EjA8e$?NGn5n{qTbpWZ=v;T6?}h$u{V{@duMUz^iVV_HAxP5A@S^ z)5R%Bn;fBhgwGl^ciQ&ahY})9UG$q~Az9K9O-xK|Fqfn{^z0L`w*|yG#ho>Pm{^x) z(se@ZCLakfS>W39FK=vwf!NH#%TYrp5_Y%RngsrZ4o0Lv>9uS;^56{=32m$rm5noN z?vqRH2~@S35=qZ6a=)B@)1K_~N|8{Ufm2d>;z0=M^gcOx$AB*#;R*Z#VtIZq#H}w}s^72p_Q3I44=o8%=7RWrV>y28GeIPG3N}u!y|Ku)%-zX#i@Y+#&0yfh50I@OZ6r6+1fYfz&1#2job6U z>cHH`=b303XzK07fZ2~=E;MGz^~mm07ql*t=Vo!0r9feS4OH$1iBMpM^s{GliJ>bC zEH0lrn~~DHANoGnu(v=1--2IV_P}FncD2F70_vBx!WMS#HBBB9uX*q;ww#l5;FM#0 z$3R$3OPVV!9^7 zuIR)~=|wAPmNC0=18};}ak*O1&*oWTTPC2fmuEzxjcbgwPc0@1?9-H1J}CSeVUkkk zqyLbU6snH^bfp)dLxy63skiKR9ssiT%o38YzF>*LxdPy!Mz%8d-QOl4VnaR{udtl} z|Gv0>2J-<#MQLxMoFK%viSb~Bb<5pX0f^vRtey)jnv=<@0{6E^!(Ow;e-~iBU138e zhI)a1@fN|fE$`q}nDb0-o{GA^=f$6-pD+~RUgSh1!nYqC8^nw#wVjiYHZEw`dvTMvZ=(PXvvJKWWW~CT>rp z1u(l^!E5xYSaoT?sUCJCDU(xQO=WiR`duDUZ14)w5;-<2aWw?Va)BgNqDP>p@nkPuZN8IqB-e$ct9m8eV) zG5yo0;LyOcW_Ew|TXA_#t$4v+*}`VnzHD@Unt|GdzU25$dDh2Y#V(Caqd)uKSv`LV z9~tj#eCmZsei-LSuyB$#aL`FdDPSjC3T$c%v`cQ?S=%gXiXv!dawHShn61W}Ex7{6 z)?*}LZYeg3@4ny=0c2$5?zt##ilDerh%aAE9~ z{`2y^gP+^bgz&92T*woDglk~RTm2rRJX*$-BY4|Px^bHYIWyN@VNsE)ynOR(Q|{{Z z5o$<=*>6#>wTAn@%*TY>##K3JMeap7R=91x2qGEKpnk$L`SVxskHERo^bf_99oZSr zMs9~8oR}A~CHpk1PxrQ7!zXinqWzD$K^2ahB2B#V`_*>S05kDxYwO3SXtyA8Vj}B< zM|JS0-b=NrMD^Em4sXT$_dhP;qh%B92jAF&PZSxkW>0`7^~JYczewV1x8JSTDt~;W z=ULij7)~6Jdkww!t`AlNDvBDaoqpy&=6_H{p?^Y$c&QmxL1|PyV0&H z?6bEfoGiXG#%S9?+h=)JhUUnwF)9rQyTb=O5}nNbfaj_4(24=@S6a0)2Q_4ct`kWq zDQN@O39cWehL6n8OH-gYp!9CPH*QN4rgL8Rz4gMS0;zrHvysCVB>Y<02Ohh92j4BA z2@w&5V0ym5GN`Kd=TTNb{=y?27R2KKzrgmGUnhNWPA3#KqC>mfcanZRbVs}P-Mf0V z;aH|MAQs}6`>qXbNYjv%Kx!_f$ztk!GsbHVP%~^ZSkJ(`b8y`IZ4#Vt-tYL?aAxD; z@b++H%(f?_chhE@pVv}@Lrq6#YDD$W%30lOsD5mRxk=BN^ioglg4VQ4U`~F1b-*Z{ z?jvM1$ zg|8Suh_81OnJW#OuZ+J%bYifMEUm6F_(fLAU7zMWu~T&{e>C#q&{EU^PE*}uO9Ocr zAqdvscJ*U!4%n9pM9{Q;c&=jsD``h{QmkR57!Linrs)E`DxdSC4F4Y~Le83o58?a0 zFPoa(ZWn#Z@KS-^BS(F#E_xpn7s$8+ub`#sO|kAHYwuIuwT`99~o&j`2O!#O~aJ-Fd;eW-zi6vib-{EejP z+v5$P$i!a%cx>Ih6fAcDtA@daZa{;4y z?z-u24Zi#ydrJqq=QdN!Ptye$LPtA*#`H49B4aWJ!oS|4iWBLQL~v&5F$w?K5Pb!s z*1=*dO%y#g_e(77{GqSCsy+;#p%?%AJGU-W#`W_`NQLvG61Sj(nn|grtyWt`*CT+% z909#9_xCGp%Lzo(Km?K$A-P^K@eu%X29@5i)L}z87zzBw@B7mAXwhAcMK3oD}6}L|- z&%U_-DhKH&U_Z_FQW~F2$wMhaBmMS}bLQk@rQhYy<8q{<6omzC(uibn0ud1rbY&%? zM_?soOX|4mfYHp81`o^oATlP$rwCH!e(jA3Qf{-r9HngG3N| zc^$W!M9Krqy}{@4*xWdSjr3P< zX}4&W@wN)O3t|j|g(N6ql>IoVsS(Vq+P!Wo`qfVu8V@Z07Cc6^>w4^;#VqX=w#zvS z(=8ykOH#yT(XQ$LzL{ws;1e6e0#zrACF~e{J-f;O`y`#${vWoZPzK~+|7I~L#(>F+ zoE!>$nqL8sNG542XfS#MCx}L*u*}(x0bIj7;DrO~k3dxol*0lQj4(0*Xu%s=wN08R zyqjYI;8S!+bLg^-H0_8eF?|!_|M0OmRMnVN(`vFUyIh5+AietvKxqs-KE8p&7 zWubAg?NP18uNe`^_T_lk>#el`#!!i4!hq2a4mdmRv|zOqgor4}Bs@s0uq*~L;q&FvNiB~W zh+A;|#w*;)qRW%|pvlQz?L=D1#Gu-8zkj2{~oH$Gjnp%q1yVVvvxL#EyJo z5(OnC${ZAkh5!sJ9|PFlLJgE~UsH3#C${2dYc~AXTvsVK2T zd4;vqic`@L{TO(XADHol=l-OEo;f@OwMGTa%pONb?$_I^U+DG(jN04VExA87+PWSu zOtyKs*--@@ix$aade_>M4}>l?o?FncKqw@lXo zJg6S%sIKy!{xA=^IpW78c{5XV{-#seS;SR0@uAc|nXcnu%FS2ZgPxJGw5kfLIRL=1 z1ux|*3o}nAX+Xa9-t6nU-AO_xRG_i+d#oinH8aN!x5{>Qn)Ym3P)t!8N*Kx7<=GHz z%Ri_wI-?h0JPo>GC@n8fl+ACH|AWaLvYiK6a%|<^GMCfl>mIfARa8}u13;0)byFfJ zlPr{N)84j%c3rJhiX0raC3o2@>N^|7%SEI3Y8nvF7V<>r&ONcfBsnWQIl z!X7PX;PGKWG;(2wRn>_8^x0-Z_rRHNo0 zVP5NPEMCR=k)&??4@rf5UP=LUC0FDcfTXz~fQ5lEx2*%ml@wfNMUw_BM6kweSFYbThZ`Chk+NwmaD(zspmC>TQ;tqnmyVPKsIH z)AWzV5dPDu-!ARP zj6{pGPP5dAeY$ZpZ}03&lO8B=hq%b~RS(?kS&QibJXPUeo@c}!5i||V^e$AHg!BAc z+MrLf8w6oM<(}OP<_O6Lj;5DUyGEH9q&xLXj0T3b#6hjfVJ8O8vgP-Ci?*qulq)nH z&g<20J~ve}aR=!i(ke)qB@Eh!obiEc{}0Vp!=fcv`i4dnpJd>Pk`$q{PLnD_%L<(# zrJV_ce9qBl1O0pt(p^CRHDmkH)Dsv_XLxXVG}!U|ROegKZK>iKb`(`Da0g`1b^6k& zLDQTpYZB-{eGF(I20|3EO<;?L#Qi)GF)`3({e2|(rBNnBX1)=uCdefCGZT+2xiU?L zbq4Pj=%vw044gy6y#;&W_E&w~{A5Kp&YobRunGRm&Dn(f>!jHB4upAV6|y@`O~Cyh zay`1;ONfuJsihSb?lhLh3kWR?H+5c$vtyv!J5=tT=V{lUuxL2!KyW(h@K#*o@*1;yr81Ey?Xhxb=8>fT#Zx8sc*Av>J=?elsx( zC{+uWhWXSGDmNBrSZC;Sjx99^zo-{Q$6!h!J_skj@qY25aw7CyX1P8Nz4Tx0bd@xu zj`*e@&XTCbW^1-5>%dw62ZYyt9NXWw>>h}S09agQT3VeX-_t^?>(BqUWIvO&ZS3U!<^?&bCWCop)8GLbmdXwW=39+zx3May~C;Sflj z3yETYgb(SH;ulmaz4l@wp|5>iz?=S8Sh18$>n-#2@Ze>^A=)h9nlBiZZ%#}6z&wly zooNG4vvp5d!76?&io#iH^5KRSxd0E73oz||^MVd|1V%aI`-1v=XBQ;edGXNy|HSO< zY|HO*cl@r$+WItCJqqO&3K#O8@T`ED;U~CFuP`2i_1^K-jtvIR}NPGMFjv%$F)Ri4|FC2RfqvIF)}Fp+|0>RLQQ;baEdkiK?sq> z)Tqw}O?l^#0GM4|Q-N_#y+^@kZ(8R3K$j%VSSq-emBF9z{~fL+P`!Qt#*`;Q#ZmE@ z?tobP5%}HAXHJ|Ema& zO^H(OK(3XuU4_C5`+<1_I6ib;f*u5VI`rbe_kL+Y@SIB-x?CszCiJx>C|UT3O0zIj1l|TX$r)-F(znG3HcB(x;fw!qVQthMjeF z%)%K~pa;60A$% z(7G_gQoD)ih4%jWysg`e9taiX?jv~6gV{)alq=ipaq~ACSY5feK(m-cEfZo=7>U=#-GM?QVdAdY zU;Ea-Q(wT<1q>F42>tU_$QTx9M-^L=$k3!5w393?UM(E4J0Mb6rV(}0Nt%;@i3J5~eaVD`@pE6W)c zt$(f6v^Hx&(3YtSeA4ebu^sIdlHELB8*!cNe$APY zK688gl`ddUUv7iHWMmPi@)xU(ngaFiXH@cNLNOf2ki&ke4*LSDN>}RW^u9!eLUe_K zQ>IKIJ79Syy7chqrPtbB3Mq7pPDy9lVuo{-NWGs)(i~2l!Psht*=g#HgcNrNL=o)C zB=hoVlSJ7yA^b!8i}IQ9{y%5Ya%nI}sNZnXN&Reqa~tj@MCOjqVfXoPC-uxna^Zx} zNN;HU&bUQRUSn(qRdG(XWOj{maNN2CFSP(27i&Pg8@$VlaZ!C@(P6o9WZ6S*>8Dw# zEq+8i$2?J+zXG3N+EjFAhGSf>TtG7+p{U^aq4}*1;yq39<O^?jCWBVDJim-%KRnDfyj4mb| zJhto2MwzlaT|DkGNUv;(#!zY(N!v@lyhVFW`JVr3P)@fA5LgyPeemS4d%6_M#N=E3 zO{zNlom;t(N*b9(1FI&5tuDyC5q%DA15;*&Qwo_ADeq`wDUTO4MV8iV8iJlH|2YS` zd2Ef#?0mnOh~|;l-=j)}C+p9S(MLXv>;HxWqOBGH5kLS*G3Z0+)>@`ohKAm5nZnv& zUmmCg0+E2Ze0URt z^qOFc;AAXx)f|iD30ids{3sCH1cFMfs9a0AU%!+=a%`e%J{*BwIY?5)2@H2 z*5`oACPS{q+US2D*#*&1XPl>8kS)Q3r(G`YAC)^jqHreNwwoUC-6;J&QN{FX;jEn=Ke}(-3lm_LJO=Y ze46_Pc#ZVK5qNuj2-^b)xV=cYRPgvPAR5`o_`pyqq(mw?Ikh~0h*>e9Mb(kcI@D(} zp{;yy;cD609~q2_;c|p|R3ahg0g;y3aE}<-mf5{o^?l%!UHCPT5+_a);gQLZW=_SyJnMffSv=Z5znaIC{ zCFMGw%aX@(tVSDCu;Y6iQSx@ZhOqC0Q%ch4@zdz93}%vk%fQe720kf#kG$chbqK09 ze6B+f6g}!wy;l~51TeDCT1RuQN>;CFf@G8mg)((-Tg47E?!xJ1OpCjdq!|*5Q8Lp*qbG@yEOB0gAophyQF5^P3W}oI~rr0;wN^v}w=;0u5i5fawg#v$mCo z6}9YqNSZ84TTj&24Cgp|DoldDJ{yLv6kWMGHp&emz_=p7*br5hn*`TD;l3h0g1tT5 z{;o>)dR!0JEv(B=&ofbCOJNl-?9l|OCxw+DH>!V;4`i$JH~-L;>gXy9DYN|LlaCXr?rLP>HlyO7bM^_@_ktUU%4brm@u)G_Yfldoa5JIx03L-Us13*XCoqZ>6MlIWv6g?VJv~=8!I-u? zEBYg!tCxyS4arhAC4x#p``avsiGN{9E=P*U%iyQ5&SKVtunlDa^~Amm`iQPS zdC0zqi^YqcZ3PTA^}NxF7Elh>|B^O1RD`^?5an7-bqiIIl>6!ee56A2&8XeI?hy2( z7SN`;gHydb-)y5Ao?zltL|%8+3}ZN9=@ghi59pS&M>@^;>a_ve;&a5cEGf3A1!t4m z+F7jfiIG$a3wIu%TpkRs0z{^3NEh(Od1dZfiKhPc@Y5RmmRoU{kSJBkl@7NK3j11_ z5{=Ktw_LHrnliss-~pvpOJ^G*Re(>;`t*7=R%0HTBA*L+&!Z9z*|yB~a=8UMGnLbe zMe%mWQki?{EjjZQnKr4y*+2g#U~wktU8Hd?aiS#@9C}j{nQd2+qV|r0kY9AsKthF{ zfRH^s*vsv&c;mqyHr+)`-nticdsQg2ARnsYuT5*t^ql`92uWpQ>YopN00ZepHH!Kj zPhSk&O2^|35=Xv);o2vkWBtfdyl4t}ccg=2^D^6j5t?>eDS5nMbtHwI40C)IbDqf$M0a%(Qq0_VW$o}dE`(`FjxNQ&xPG?Dn8pg;1s{H-sS zf3bVCDI|X(d7QviJ?IZePC$b}V z-5FKFh4Z<~pu#8*{BB;tZeKE|3&%fhLZ6;p89>^g)Pxj~cw^cHm4?*8pYTbh?dth| z%qQR_!8OXU#k0l5NH*r{f4<;{LX>Z@&1V{jeMQba*$2iN^r5!oW4JPe&DDv$Iu*bW zPPUqvf(4FSz0~;J)gpWr-=~?P$aRZBouTdiKwWCEpcpa~{tC^QhT!kfx_mLKks5t) zymhm6zV1e=^M9spzq>q7cjp-QP)_?alj#cO+WDIoFZ++o9iXmHJokc0%?5fzqqQ-p z%MDC4ZJ!BG&cf6rqKk?bRdmVgDlRr_D5dr#y2}z+9{YJKkGlJ-Ab{dCWIU=>}b{shVh-P{+(#1d} zkSX%}yn3JteC-`gxy~W(ZYBswsosN;`DcM}XlzD(=fkiZ9$UA-u?{c~YX>xt_1^b{ zGWS3BgF($6v*^aMV$9&hRMw${h?_t}NmQq6M1@Op1@;w>Nz+D@NW8roeOSMxTFH%d zTW=1FCmZ05O*iE+@d|U@x!WQDQN@N92WFT)sGBKsVsqA0+@+MKqTtZ!tP@JD(~JvB z^viQixzX3R7XG$XD6%x-a-J=y(22}L2Gzw_BZNF!{L3gP5Oipm4nG-`bn^GEtlln` z!~tE|TpwUh%l?pBME#A#Hf8+%rPpX5#-jWDLz$e8JnId8yX5_0B+i~n0f7;V^K7%;yDdh^b-dL;2x)e8JyCTG zeYbGXa5ZN+uCno_b-p5)P*0{#ijuAhy=xuF7f2Y#-d!v0ddQ|Dd1(B4C(fVwwf)Xs z(K#`oLplK!(>%sS;uEzFgLed`TCuz`6)W*|Y*D4eGtHs6TEbU`@O@L2Ow@GN!w|fc zs%pbARZF^`GU3unDc69obd93vxU~Kz_~^euwb1c5i(<`dr49MjcBDr^xjL`)o(~uk zMdq9S)+$M%$mVRlt>|(^HBGB?-ke|$mUOJ)sDD4hps|i8x=yo3seYPdeP)lcl_y>U ziek&l&VgU#DAJ6??HdOokq}e@78Ahe0mWdx1YZAd;eHhJl!HB8ZhNd9K&rPlW+0uI zL{Lq#Yc|=+H-nz5vjVUkKUrb||Du5<}a|FvWmDL88C&g=6y2OFKl-FPQ zCxr0~P4Dqui|(7{Sg_Vsa36j@(3`lQAY+Y?4)0(cqF4?so;)fZ&SIDf&kI$>6)tRx z4*!hXt%&0xdAyh}eF@BZ`Vi8#!~oss>41);cAda1T-2dc$}Fags86dUfp@ucFiY_%rmimLk^|vt;>n#sS~w; zK#M~&%AuJ{GBb3MIPW`0D_2F7E0q;P2l+kEiOI5DpVC9*#1;udpCc`OSj2%Spk$u$#Rzd3b|=};D4wTe zUf*7hKe?PEILFF4IwY%av>1j@qfw2~vt+Umoq#jcI0RwawQKvWISpI71khFvRF z#(Cjf4-?n2JHE(^NKpPMUYg38vHmZ5)`0#F^akwn&ie1%C;0B9!u2&a{ zG#8g!S+xP@JGiZ01oN*t3?jt^`qf!3s^Wj}hiBfT?jFp{AOkJ1%fCF|_@!lObWXH2 zKVqdZq0&vmtH=NWXiRCCd>UVt8j@Q{R-rkf9mY>r?T7$LJ5C&R#)SAWCye59jrH9Z z!LUGY9JK2pha6Z+JjxaLHZ2a}Oc19HRo$Oqoq+#d6G8MyVogt;jp}D6`Pt7V^b3Q_ zd%oJ`39`cRdflj^hM!d8fPXdDQ)@a=P5Uj)ZDx(6z-}^X%RcT6l$d7lJIOXODbJ9f ztxpg+GKEZz8Sybc!PAzG|HxO^pBYOp*)N8OMi-jO$Z!Z(wnc|jA;6i%X>ISwy)xv6 zkWvl5rCeIeDQ1*X7I8RFRd&dsXx1n_Pr&5?Pz1a&j>x2cVBGwt(Nans)emEGTb|O- zKE3mmYs#*HvGcyw*_7O6zb7adu~@Y5`j9UY6-OP@6Rc3OtYA`N<^3Tk7uid&cX%-3 ze|iDf{`;a4azDib|4^M+q3bDCu7%B;+2O2yoG7+g2wXfW5q*`?RnEP=pypC=b`1xY z-pS7?7)@Cp6o|y9$Sk8eA{mrTW8gmb^GrfQfRF}UVD4Cn7v`Y00D@5=KerS^Z0?Rj zP+Ptx2fxz;Ye-#Q3TF9M*_t;7?2|AwRfJIENTaT#)tzBwZA*mYa9hIn`8<` zuC;rhK&26u1lO=}JQJ9~N1&eT>~GbQz)&8Jhg-sp#1RK&trPHr?;hQg`t$a7{P<5H zb$A#-33Q*8M`ua1)Cl4IC;fil$lg!`KeF=tu`f%~-5oN533s;s2wmu@(ToWzrjLFn zTHPfE%9P)5jovjd(1~(La2s1YS)`I!9>V==2mgsgHd+`bf%q-vV+;tM%6jqfx>Sy3uXm_bpyh|R&ItD1pM z2A!b}$W`b9MgV+GFGKe;NasIg4Efpn@5sO~g-BYdCM5X?Nnb9ec~4<{4W8uQvjUaUt&Vh-D8k|sW_nSx zT{TWgKu1%5Qk$jTRqN^*TE!$-$q*w0sno+>SM1sNZc~`8{ws5&lArIU*yW1I;JTK9 zo@&$WQul-+YH0F#_a=`5GprBp&?vq~h+!)jrJ@KRu=(Ox!*|0g6JVCo&#IbAC#o-Y zY0a5{EzvipR!%Rv^Y2D+2|lFSDNxJFi9N+X>4)$Vh5)m_g99Fi3uL?-Ju?`JNg7>d zwg-5+Q3)TEONd#R{n?mp;mBnj)KI7&Uc$9~vxBjcNHb$Mr(fH=XInR?HMlU@Ru>)VTVJX< z)p8kTW#bCjU$`SY=V-JbTlcBH?@5>rpa)M#C?%XM;EeHBKX}xcQJMpT5nJX+fJSN; z%hR6!8eRS~)|HauwoAzeV~LcAtBp^~RM26J5Q1$kFubR0Xh=3Tt}H)MdnrC;rtuH* zNvP0{;_qd$uD_K1l>oSUh8s#4x~dp!1x$>pCQ*5DR79uonWt91vG(rI7oeCb`*^vYdv`U{_+fj!tWA%b$s)4J{-fyy^~X>R z>)(sD4prS0DTWshE^8cH=BbWfwY-*ifX86Um`m4Pi^$}3!oit5nTXzde zMSM)!5$cIG1)5vA>^*ex8B?KdxJtzh8h$(Jn~8oYNz1(q5~M4_hHtTTePSp#+9t7e zDO??*;{H57U+*@$J_9jGIL}{bGe3s~!;SV9=iFR4Br<;#(R$0Dhq9?D`}j(^-grw? z;H;b8f}f_*ccDU*yJBAC=xOh-1?7{|?}4SIUvG_KIf1wDo(j(*$L`R+?PB^kChYr) z(^s@^do_smp&3vXswpF{|UteU&+cKu!*lA%#-_fR;8rE9m97B8|32Us`XmKzJ;_cmpt2x(~k5cgu>C?a&m zhw0hc*f;UpFZxaLnLW=1NsKIj8w%2^8X)p2vpT8@t!GS&r@x3itKO4^C-2C-hr8zi zx>v8ZLQhQOG8&Tqe3|ho8$eH~IWA}YQGo7+P+7%A%Hx91eXdFl+eJieSO20om%8b!?t7!R;p^E*7>B~oU?1Nr=~UK+bmf=LLux~^C9kK$4(`+0 z6+d8U@#wXlU)qD$-xaf#q5=mZ^nVXzce+rR8wmkTRQ%~6%+NTN)4(K}oy;hRAaGZIhUI;I`o^OnrFk;WB5;CIPFnYw>>h%7I{EpsT(TX9}3xB^?to`J!-l z8QU?4^mobiBe!=W^+rKeCw>+nAMc^~6>LYmm|4{Hh|WIBscL0e}W&1PO@lsr1#v6vWM9jroz^BkuD zld;d8_x~6J-MN}H6tA*n{XEkCF5@^=JbDr>tYX_hTpg@Xm9yt9mt?dWVAP zxpL;11kNu|1TFs1LK37w?e6gSdjQ#_S9vr482J#r;orK3Gs)1l<&FjO^zM70TzvH3O@@QP>-(X zSDT$4SppUByk1v>?B{HKD;!xk?O-`tzrSap{ItK)APjH`yy1WeHNFpV2sG|Cc{i%w zTn5X-8U^XTPH0~IY_16Dx!A2)fy;qUNx5J^?Nrzbz)5h*Y4sOsEQU*KCh%GhVJF+r z;hn~z?Z8BwrgItmHL4eJbGv8n_CG@RpY#)w+Vr(DaBB_AZ#T+JLYrHH{_@+mD~Zsi zX200IMgXIk2uHhGKCLmGSyng}-`h;qWk^Vm)U625@+b7hz?;?jl5DO5otYV{qZivK zTe2CMoQHK0JFFV{N>kH`6EaYyC_+v)`~Is9R1wOHg7*^9$7np%NWb365b!r!-sBy6 zDpa!M#K4BTNT_yT^;c zrxd_!&i^}Mz$1kY=n~duV6EfyIL3Y4zXD%rc=G+lq&#_e2)*<(WV0U511s*PY8c`W zTn%4--!4nwF{%Q^x`ei}X(kX4E5vLU!lBj=rHZo`mVG^6@u-W+0GxZ(#$~1y-X9J` z(5@t!pV#UDk{g*qD{wIG|ue?4B~ON`7RuRW@Kk z(!+?nmwzr`26AoR5ie2M{;~NYa1*vOTC%lb_MdwzUj+VW9K)Ut|?y^(DD8tFrx$CMvx+c7TsPkB_;rb(HrCdbYv1_IUB~jKrtv z4vSv#^~KI$8yRkM7r2<0m#x;*nd|}dbkeUpa%A8VfL>|+G`Cs!F7$v*z+dV$sv#;wXEt??7S28o%Y7`5_P1^dse(^^;phYIMY^CrpIGgTdnTd;> zs+SuwH$4J}f^|;7(gJ~$=HDvKFhwn|zxPgt{N88M;^J^H=>RB~#(&Q&zGeOpj5UpN z+N9&e$XGqBOltFSFdcGhwJmo|i}B={M`vCu3U+#_?K?C)m$qV1T5WQ18=gpV37Q_v zNdb;xmi_wK&+s9NiTTxgup5==^7PMkQi6i80kCKAwW-nYc znLWV*O=EY(B4h+ym!RtmJgJ;1cPC1(#rJ_&k5i~HbIdqU_X3y$Eg3U^=KY%slEyi| z1{@p%a|v?Nml4>W3pP|kUm!O3tNbBqIhQ;i9`cr*rnUBZ&(L?Z^?EO}{>it%Oz8Ql zm|eO2t=(#~*=7B>W<`9BswL11NJr}4hZ4D#cB|s$a2Yf&tg?1O^j{P~LhKIX&>wLL zmlC%clcsDn6Me+34AC=OJDcj|mfzptd3|QOf`jop`tTL|UbN`3UB;XVUWkfK?+lR{e^LykWPLLFgJX;@Akqu;phf<&xEtLMheZ>WSMj49yn_w}TW%lrAA!@{IE zEe^*!tc{@{FWub<3=)Aq76@pEd#3Yi?-1c)-~=~d&`^%;^nWqyD1LA~f9jzB$rcRJ z=O&!_*xFYR`#dAVj8fPi>kIluh6HJksrSLl+&!Yod&7MVUs&%j{Tt>~Gs_Z`MeXx2!KII30?oOtt+Vxs^&bC3`H za__bZ;H!)qGgQ~d?utx5S~-J9uOUrX+)4U z9B=3U`_`2)t9}Z}VX8HW3do=34Ae4{`L*a1$|44jn+EYON7hG!P#G>uDy65JmJE*s zvBd-1`HzMes|A1krnp=dmDj+>69=VAG3MQ~zY}r$}qquAtyf zF%g4$FA*_kqVtrnTaxbpE@wInt;t2`Qp2f+ar8&s@udgwV-XqUU_V!6euZO_ts|=K z2SmU$9zFMwAzbEsOM7Ggg|Kq{%|G%;b~jhl*0Bt>_ZcdtlecmxM)?fYY4tCzIDu;K zBasX~Z3a+adP$xOiutdJ>bvpk$BD~*$?Z<%@gxGKT645EK6R?`G9s*oC%v5%-YN4y zXn=JPa|$9tP7=+~$nTlB@aP+S@qIqTm{;R{6OM0|$>$)oQPb*v0EBvH>jUqWXZD6S z2rXqWPG8@l^W5HgSXxAwltE3Rk-~T`v2L^*8u+C$6tlI0yORLozfYY$VBz;)^kUze zkG42GBX;H!frNxyo?>U#*#rfPMcYw?V!XowNGU_3h5TLuPc@v9#-3Y@&vosL1T8fW z0UC(l(%2DX_yYJrH4Kw+wBpb`>OVzS!TM7)$B%5fWW}_gcCJFRy<4kz^9up9$?iYS zIwAcsC77?cKv%>NPGNY1X=p=<E(7p?lEz z6P`HsKwQ#WE3|c1rIfols2TXl&8DI3;oEbWO67rpN*Hh{AWg;CfcG4jpA>iKU2D!r zc%9LrC?k%Y3u9k-iyc`c8|mSp0_D;<4p$4`opy7Uja0AYh`O%U+k4Iqh2KK|NF=d@ zV*i&tJ5;>HAgGJPe(08ccNVeHJOn6gMNl%Gq_?KEug1aIVRhWwM1~hl{8;4og~7k4 z!_iXhSTf^3Z9eJ4>LanIA-3$9?pErbTLJU>BoiLbvZGKLd#nD@Gg)It@8w@7-u518 zJi?55y2KDMHTttSfGaf1V|X7V3zqS6z!BPOxrRiTh{2g;cSxhoMe0;N3ABG1j5K48 z+hQMR7t5j&NanI;IiGs`>)q>;bd>y83SrPO?)TR~Si-7Kxx;&fy^b@(_&kq!M8y+; zwg<^TIdH3_FuObTvjYom=5W4%*Kv2js@uMR9a;792`jD#CMnmhguwR1g zZ=Jt+@URIPR0oEO*xGtKKb;*oh-VaHa>ust-|4qsu?oCAZyWL&0W;`}CW6)AT{lC} z^KQTd3dRwjAfIZ{d>raBvV#_~2cn!-RVAOHBX?TAhM<@Lv<#&E~n1z6gUoWOt zt$Owv5-gN?qo!j>1zb*s-|?)kpPH~swU@NK?Z+Koz3Wr*OXqdF>_1^lsvuc%IzCBC za?8j(BeF@mNA@avhnC*GNnil;BT}DN7!|x_HQ-QxPR?w5=}5G{1CVuX(ae%@;|VE> zl5>Cp+Og!dU_=U^-@Hd6-it~&o`2t7bu_;Mk6LmyM%LCY+cuFw{2<`)XFyIf^p5tR zQ)pWj*|;xFcz#oZS%G-P02*w;+!`j)^yw`#k1mmhp$4{A>RQNf)y%=26W>eNOVYH67k;x9S!~u<^ z@o0st;g!nY@iqW3tXDx6ek)Mb#o6( z9+#&-V|FbOa!9rSdHGbJ#=x{>Rc^Ktb#=(eLi5qcIM)YW=MU6~NSHc2k8rK(;V)g~ zCq(XMbUm{{PdS7v0)Uwd;idL_IiJt%$KQv(9>uweS{Q7HAN0IuN`3)B`1Oj`cOy(_ z13YPCQl@5LS?(GYpi}~L5t~ykncjty7U0LZm8N)(yg4tIxt4wZjr-|(-`COy;*L9a zN?dc-yPA$nfzp@5CA>9jTSkBV4!s7+E!HOQjp4J_10X`kkZRD4+N1t2X-pgEn~s2WSqg6Wrh%l78QJwsJeVDwvPQ1tTpi(*U=^r9Ly ziS=>2Kbi<{69`qaWpUcRjp_BmysoW!+;O_pzh=I!-#YVP28evblotDlLWwD5YM(+u zjFr|GP;=V$>A-fjP^fZkZyP;q8Xorahtqwt zVe2Ogs%_|AvvB5Z)9KM_ozM8-OFYf&SSFjZsFR)QNvn}hzhTo8rJwq1H5M-{(GpQp z3ie$3xM`cimbqQ!=PjgBtKE~;Porh2I?Fas51f$uY0yeze5QAx;mxV7X}-82F&zDU za4B~iX45?Z@0{Wd=9cYx z@H>B$g9bNtoZhlpdohwtZO`FP*sF6ID@5^8PK@}EoGgjz8q8d7hR6kClVh-^bvSPB zTgaK0(eF>$>h}3>Iv~0Ff=>oAUvJO+EIafc%k3Lf%99`#ihjiVc4tZO>CZPGAnfXK zLJOhLVBYNr&b;iV>V8^7MRy--7pu{5(Jiiddz0q-)wV~C#U7@g4K%SFl?{5YH*=4- zr<80lWS?DTCL)OE+ArOLmPolRZ{mCgj27xa3%p~sE-Qx$PioA;S~lf=wy!ev*CXRf zN~G*HR1Fpil}1OJcE$_I5ad}G4Blm#N#-H=|6x?LvANUr7&a0WZ z2~)@97(d6_!4>EzRhJr8_4V3=O7gK(BIR3+n-R@Z-xV_)<=r@Hdbp`>y)Ul$2{}7G z9M8})-ewH9OF(}{9YrNC)30CZ(LpCGxI#nuarjKFTl_soP6FGj+ZQ|@77IU4r%_Zc z4>}>53>vkTpp!uINAUAmSO8{m&U4~*;)pxebZhR?H#F2j?3T{_{2pgL4Dzc4{T?=S z$IF(!{D7>bMJv-Bc;_-kmMqHLw0i+}CU4IXMs3l)yIZf6$uUsghQZf#phKVqOCem7 zoPM|+mWh%XXv9Rw?cBVW`1P5Wo{hL6BCid4tx;hh0WvodcW7CAy*rVzmM1+Wsh_E?v-ffjMe>e{9cK`mKX>WM)Jab#)Z^h8cLbH=$I$wO5*YNi|6<#T%u_{*r zW9AI!f?Wv|h(HFmZm=>wPIAPz(wnzor^nDSC*@JhY-Qp_w-RNd3Vqev;9+~yQHjC1 zFL99Bkm9zCGX)H?JO3|0TfAYKby*|tah=25LGleNHyP`|($JE-;H#pQ9>`HkdQoG8 z)bn7|EPjmN{Ii^(==5_^re9A%v&IpeVD17M>jvkb;z32ieo)(1_f9dEuN7vc=oB4V zDcoa<*Uk3E<(>9#vlS4IR9pVf1K2h+6&R}tmD)7!xheck4r-bb+Ah&QEzey1(`Zl`DJ;~Xl})tvZu0KpSLsE+eRDJWF@ zbts|)ln?Dy(j0u}nZ){$t#&VuX2)D!geKDaKpEaIk$!s zBWuUs>%V3apTPGF22a~tYNsbYt;9ky{$Zl0B_X=$f-Bx8a|tmXa{w(-nH3B<#hj~L z8P+Jlh5U?5kMhW_4JrQx44LH7FZ*3e+TisZk7(!1Qr30@!v+VR6?2H4n$JpTGv~F9 z=4|=buVGrlPLFSG@EYj2&(EukM~ISGUymvu>WINhG^>^;Qtjn>HQ6A}+k#T9^1c>8 zvr!r1sRyMVEYj}wO#+}F)^@jdP4=|;0rj$00ri)(ShYr7nzNY7b>xM;Zi%Cpd>Dy2 z`K3d&3+e4GIwR^0%@29Z??-U$>5S?ZwAR`Qz3Uw~R9iqlT3a1Hr0l%)c8ify=6{() zarQw*Zw;&rS;5;6_mu3;t1>6zs9rOb#dBOADsSAhdYD?sVoJA1OR_c9E$*&sE7ZiR z_Zb-j^z5~=*bn2?*L`OSgYj4S#rfG^=vdFR4(Yy~KlG0euoXQ9=?G(*j0AsN^?R;;X@? zDd*->Froy6jK2)J^f22kQP*7N?pPL~jZ;H6h-QjR;Upom`5H)&>8bl`;CAjL47^2tc42Hpo z-fp6|=$*KTPSlW56TM4_KKdxpVu;?pBX0YB{_s5J%-MUb_kGtcYj1n^NtCka6vrrl z1o1mIs%iI!DokAcrv^_US*Gz~t>~fpH~dJC;}oON6k|-yeyIumk$@5?4dol)VY#!q zn=Z-@$_`o;yWvZYNshm3Lu*P}%QSm9#&NRNwO{%@&SE|{z6xhdS?~mt2-o~xX2Zz4 zg*K7^RwLbmK>4dz%Zns`wggE%mO`utzS7C-8Xw3M^OTa78xB(3Pp%prqONC> ztS*7P!w=`^k~-)uN1e*&CK!buaij+vM$V1rC@9r&q&&%WRya+W7nTT2emFqV=W&T>++=gW|LtrfH`C^WB1#S@* zqX9)VxXm=-uFW>K!0m&q7t=_;ER<%zPzgE)cQUv-&^FCxlwXfYA5SNveBuFF_a82?(zx(<4;=5?w4%wg_>=!M9m9QWoJZ2oFsdj^%Iazi)+noZO zq(>gaufd_wZzfh3ine;*mLpXu5sx`aXjv#YG`zl><$q*b&hY3P#hHrD81Ty}EeuX1 z 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 TNQCJY@S~!rrtn_Q?DhWvy~23( literal 165259 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�l_n9i~avUJnL|hLLIZ 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�E}`#6~XRox~ym^k6oOfPqnH1Z~tqK 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%0A3_r17b~o<5#E7+ zN|3Y-t!&1v5k97EuJ>jlil)j63mB zmli6#&HyU9E-7hO;EkuN8UH4K$>HrWms0hYM?G6IEWpI{Khw%BEbzbn)H*w*am>)V zbC#TmP%X@I?hJTVQ(WG1@x%Ih>Y__$SgoSRZ#6yd&n(U;)^Z)X5|b^&Nen+oj2Qk| zxhyAB(aNSjo)z5S|Du>v_wiRcx~qNjd7e761~KrNPG+GkeU-yDR!c4R@1>MYvblnO zcp2Qe6B-FVf_u1%mo_(F-}rb?L%K^{G?9n@WG=u ztG4-g-@@)3p#Q^1K(y{&{6}IXx@Z{jnmfRbWf{Kh78c*WrNwxc0C0>KOZ@X$`Ni*Q zFnQN$SbrV{6Uc28av9dIJ#cq`^Z)$$u^&Ul51()o0t~gypX9K855iHW@d^ac0I^xCnYipiVK5qpUWC7Yy(l|uTv8la=sbvhQcd&|#Y@~e=c9GyQ01;&f zM8qbkgopF;Z7@8Ne24Fm&J49I>v&#`{-_x#!qW(qLqIcWAgG2t9m1gc!5Q4;xAZ#u z^}fHa#@0F+HuCIcO?T_<_ldc#gYiv<{dy&(6I=XioF9w5f+oI0#DH)I^Vn%o$Jz;k z_An5*2QJAOa)h~L+s_n3cXtHSWgF07!~mj>cxVh>emFlAB98Cn#>P{XqQ{bwl5g(q z6_%FH);o2B%>$hc6YWn0rdyx!b{jV41Z(UXtMl_2rfExs&u-jqe$uyUxh{GN|G9DN z8sbK3_F_oC)Yh7dywRupU@#Nv`AhvjOKtpAH8W^T%3T=U6l3o_X=xdmWoA)d=0P4PRF>RN6`%Z4Ab&_De^uuX!<>KlWL3 zuyVgdJKE?y%uR^wdfGp>B-D6y1^3z?r_w*$uh-=g$vP9IDPy=!gB*I< zbZ-l*80Hiuqlh-xi?&CW04C|Gu%p;-)mMEgeKwu1UxRC! z8|jU8nVH_>d5VwW^?7BDr!3afWi1!m*6BXK0%zuElm4_iUT4Vp?VV?|empl%xrI-c zW8>k4l0LQ+deKbV9r{=&0^DuP@N{+_I|&eAQBdbLY<#8BP|2e1ali-BR@17-}fJC8RB#V zRKH=;=o#00DEY8S$!UoI_j%O)9JUWyBS~9PFdc@UnSOqcUw=kzZf>qj2RmW6&`=G9 za>q;dj?qU7UFdI_SzEP$2;6|is3(-)yq^8xdiFDct$8M!J{Umfi# z8QW8kV4QdRKxN+8HPoK~$e(+Em3j7=8rsENDiI?w(aq!2j>3+4q&vhzDc#Z`4HD7~hm@2QN$I-}zTbE6xbF{tykju-dG@o`TyxH~pS6=%g?^I@ zoc~c5q zo+E53+z;m-k+ymYvbKK#>G*G=t5!(W)Pn>3k8sfXS2Vq}KR24!5F(lp? zZ2kHb8&c~m_!QQW7o{a~+Uu6P=;{cC2n(|?ygKkH#Y@F)G93?7%cz(VFl6MVUVA~+ zCdb@lDrflL_1e6(!qrca!@Q^*@MoeG6q0SU4Mi%#po(Ve-^RPsn!=)5d;!wR8MZkL z%Q5FBLb}}~9@7J|3XfD`NN+Jih4tR&7y5u00EJk&%?pXE zvDUmUxRw`aF(Of=PE8Z@3rL)etU&8CcFV_L%B7=p1cq$)5D8|M&n;NOdF5y0HS zan}@=E|$RtOCVCLNcUUbmoMH|YKMm41H5i*w&6`K!e)YItQph_Ocb)vBkU$qV?5{( zeuq1Ch8%`bhX6x4SYGjk9=Hj6BI@hdAiW55Y!*`3L>Tg?YGdGDpo;ZVnCn4ufZ7j1 zH_dGp#$z)Za|)VLM?7$e`!RYB`?3zQ%SKB_np-y#H$oQ?G|RnXUQpq)R4_4Ia@g@U zF3Ep5swf(?>ie)q1d%wRw{3d#p4!$>Zbf(wKVf%*|B zvL82!k&vNA(j{=`UnCc72xgfpXZSx6fIN)NTdRJHonLdughp{{vu6dE@jbm!%nxVp6$vp!dKG+!?`rC1Fnr*_g|3zLwsBdsvq!+kjd~TG5JV{-x(gYAN z?MHgGHWfo|zHcMde;9wV1`jPNb1Zp`viqgiu3mXvM8VQp|FJTC0;5OQ1Nlu%5s_v! zWAGHBhH<2#oE3oHdJ}s7Nd0ExA)4kDg^Uzx1QbQX|M7m3Fy@AQN-a05pke*<6b z0UZ7G>B%fQ8LSsnw1m+(5<}p4uH|L%>7Sj&nx*ki z=B7&ZNLY0r_J6U_*@D(VzMDPqr;#;iGPOQh^~(IUwPlnu8QCVBqZ%(C*C~`4g!?7tU=Q1m^ z&f)$}nNCgJN&oFp|6J?Edd(jxF02PFM>UYrQhaco5HIh#u{2&5P_(RkeygeZ@F&|l zLyT-@Ig{0$VEt>K&W->-k7a+SfU1@;K`q@(%d$2etzHS*gKCC!4apJ|k=uE+ zvKZ64u5A)qK^tv}u{PW0%O>y`lq#MQ^Au{RHX2Dj0G0r2vrkVahf&FiaPX=q z1JWqYXhf_>26QaNO#LlMaN^XyMOpId4XS>o_K_Q)$fQq62}z-mgaQzXD^FdrVRhY% z63*II5YghdU@YIa#>UWWvqynGgbBcH{O$AmOGwBC5OxZE&}}4n9TygSQYw!#kvV+f zTd;AlEpkgbo2=QhJbXwQ#6YBsb-MCA(U~Ju!C~-Zd`bH^g{AFI;Fevwo=ePwg7yfV zvzYu0yi;JLfg~L6-(w5k9`-G9|2bdQ$$ouaL>5D_M_l+h>Mb|s4r5YHhEmu=)r_$~ zPE>eTld8vUTbp>vSB~yp2Mdemo86UsR|)feWgXZjvPtuc70BF@JaF;m^T=0I^Ul?p50 zOK=7QqFyU7v(gg%X>(gx5UJ>(PJQ{KqP(14HdXvwps)9M-V`+=Jl=74Z;$z_z1V@i zouQ$f^4YQd_|~!(s+3~T=y)Pt-+I$rxpWX9GUL_1`e*mZgB{?p;?#8i9C#EP*_mkjd2S|5 zx%tg!udTJTG!kPBDTG{0D*j+>dT(OF(|#)1fV#9B;D7wx0pGn}%8*seuOiL)3e2&! zA?QxWsTR$hoiM;yI(yJ(Lgk|xEUl`lnisR@zP~@&SLtT;g#(k8J5y1&1)F6pliPfM zWZ7O>dFh}xc47tt6Vq4EhU})!=hDP~ZDWuZ#%C9=FgJl5U#MZ_?Y{<6a^~AvSRkb( zIv{W5e7=slVEh3;~4v8>naI}0w1#8T)@YU=7<+~UOwJFZD@ zS$cW@e!wMuIH0fuS|2u^tBvK{qE4H)j!Se-Nt%Zpk|ZmS_2qEJ-|&X8HuS5|M|?rw zeG?}AP35^$eI;ig&tv4^1i|lE5T=@69fS)LP}L7*!SoSmd1-mlxD)ZxE=m^mvD`}~@}BGI_4Re@hzOlJ=H?K!?+%%i1qKR@4~Gc1;;Jw~_hDF}?h>|?!`1IV zp6l$_rpW<{2JdwP<+~!lygkcE+zp;n?s)3zoj0%Y|86=O0u6~wuYCcJ0<2CHTED*= zWVa{9F|;y=eVrd7*nI+CV2DqX0M@*;fJts6D*#3?fcg10vZN;$e|J;Y;^@E_Sx9YO zA`cGm2@&&+b|HWQ+v)Jpz$#AYWbd`<$t08|M*)*sv#&r1TcFE41;6tbpP}H!R^)JH?hmD*6Yy$ z#oVxJ6a|eOJ6=qE(1ns@6lNZnsn7X>vN0v5v895oA&$#3 z0jUp^{U00|Wig8WYqup=bvfS@{b}i#NJ0VC0cgc-Gcfb@DKTyli3VYmSF%#S0=aZ) z#NZF4sNi5PL*LZo>uv|~B7`BU!M?-;q?VrMQ#ygDx=4B0<_C$#mqsl3WhaRcE*r4Y zZ*Oyj5Ga@99Fw@3nGF%u`Lvzy?N)72||Ias*ok`DuQ-Se|UYuzMh6?|wGGeL6ie_UJWJhP!Y ze1tNLzixQ>wp0m)wn`m(babSLE;lrgb}`%PccA>6^~Vdsf221FA9|S%B;782*JhBWZGer`FE4%W*433G!BEi?>XI{9=IzL05!Wt==4{m6d|9eUi~jQK3Jbt)8n|tydN|lfR$x6OhPXp!Da- zEp10%Amrq~wYSml-mdUS;|RHTl7jF0=~HOQm`u@4&o3WfjhdtLQ{yc>RRmj%;od)E zRcx9K*~!a?uRX|1fas~i9mpF-PWSA@QqbizLmd7dJWH*(?&)cDKf<&V_V_#UT+Wb< z05q{;TR>W+sl8?gvD_mvQqNA$J)Td`z;IFSc=CCnC8zqWRSin6)JlC%6$;OO1l}0Q zFD|4-aLMefre5Rth6hOE>65`A`8haz+pQHQ{HII1c=E{;D$<@m$Hx=wVmIH#ZvMji z9sn8?fkYA-*OK&3f{#&ajD)`v<9^C9f~e7Cfq^Dn4ik+t-hVmtR`)mZrkWKDet16# z1g=Vf!RccFxvZ#7rZ3@EpjB7ub*ll}xj6iyhChGN-8e8~lFuq1Uy4GTneM(}SKe~{ z=Wtk=p*%-63mx{)|wqLiCnS31n=o`N= z-o0V1;CzcpenyV4G5=eTJn0qu%`kpoFa9c3==!LxR<1QPo{SMWzQY)Wc9_pFL4NLh zW9RVAtN?gzh*lGfW(&vJr~PL<1p+I9@;Zz2y#56M>L*<-dhS@FTy9PoyUj`9Dn*Y^ z;c_SsNGUedWmesn$46XHA9BAa@^P|b*)*;25kZq*gKWQA)HZ<==t?|L?q zI2lPIfMqOlwdr;1!p7iv3AJrFlEXM_v&Zz%?V}pr)Cv(!NHT5Th&r^R@4@ixUrJxv z&f2Y%Jf`o!S-8`J$Xm;aEuNn}2@4FsyNkZ`=Hk8{TU(R5ef_e0&sERzvsP{b(fKU~ zXdy;T`G3mo3d%;&kll!XTPFP1UKie22YpG(=PlKq9{O zU&C*?O{o*TUYm3>$9YO6ABO!ui$;o{NS=)4dbYcw@$5Uvk;?+qkyWGSC2m%MaIhVWZl1yk(G=SSgY?OfFKKMWB< zo@$Udw&iPco;2tO2cdZMqvdO=>*iZSeV4_wt-0~1;K|9Nu|iM);xH%?mB6tE3{7tF z;&__N?s88Z`ahY#eU}N(#(--%QjeLeboMcIOFbds!L?Rl+1y?&Vz9U>x1k4{^a%+K9iL|bxf??Dqu~o4$h#gFUwc58v~>?nKtYtT(@)zB%f(MKyu{_ z_s@qMZRqb1*|2r7f!PQY-G^;DbCu>1<1B}m)t0q8Tq(gFvEbRawY4%%R8x!5!fv|( z)7e)kEaqu^{*;WEA~l&x2gos>C#_B-j&;vxR-YTKU4Gv2D6Dx^T3+5CsYDM2B!OQ1 za675aWac#A@33bIj%^?C7|15WXUhF~;^Km1)1N&VoA(OTSPBe^c=mN5tO8Nz4egiM zYOf5x)fUvKT6zvl6JGP6fjT+@Y-U%76hcdMaApE4PIES=v~JR@+F@K3Mk#d|Cu>}y zrrVM-FLy6i*mbvFSmV7Ba=hQ4O<y05}=x>EnI+ z^6-FYE^thjtk|k?TchHs4>x$BMJb1Tzv-ML9+m3xT_VT7P_Fszkccj4(0o|CTlZRqVCXAy1~GU$Rb}ke)U?+JaIfGX%sKG9PI!72-P#x`MBg?aIo@e+eE$vrpxX_8(W&D(kwVwL+ zPQ*RL?*JvlVxC0#N|JX;@n_pJ)W!gz+p0ZOT9?}CjSo8hIh*HGjS80Mx{fq4lwxe8 z@t{!*xPgLm&P%v~h?{E{3T=ZpE+T`Xk&=}vtc5h#8v?}*m_9N^d!;qe(M4xZeK#}p z2UBGi2EBCka%(hZHP{Ua0r=-MQ2Ru{8)Z*_;4A(l=K_RUxO&QL!Ph@WxVQLKIqy=v zgE624D6~T9Lz>9(n;Szva+Efp*#uN!h+@*8w{V>QT-*f>Welv^P-p;#4!))xsW+bm zZM2O|jG#B*!XA=xRx4=bN`o$|rh*Bt>|N2hTerZ+a$ZXZJ0GF3Fc_e`xnpSZOJ_mP zd+DKN`89FnQ&UrS00qz<9Ca~$d{@<`#je7HH59M_+uQ1|WRzygNJ%BVC$ra#)@9 z4ath58obWR(B!})0+g!YYubM-2FH(`pHzpwp#lXL6hdLz$BX=qObtk1pT+^15!&sO zYN>B=zeQoJe=mu+G)fI{8p4M(CPFAhBmf(8*imbl7P$b}=S;dLK%j4ikAg<Ilw!}oabaIy*iCU_``#&?aY==(Carq&F*5m?_$Ov6AHc|)O#SOhnD}40 z77e;wQ$@C%2z_Wd`SziMO*|y`=HEw1yfHP=w-N_!6Ks*FdI^s%FklPVnya^}ecs5>uV;c5wsRK!+Tk zpP=Q+CmwIAjyT6g^3|Hg$BEMz6#*YX(l}8di%h?8it%apC@gqE9aODpDDyW$GpLvt zKG;irT0!p-q4GIG)yDvAlLe+QsiKbPjVjsI1UJj;5qKE9Egd}Eq~lXVp^bSeM2}Bw zr0u_UzG00}6!IQrYany(Iv&EzbV$PrzGgP!CxLrd4D7Ypm8#`2!x{1vI`7mKb|#!Y zttQGL=u8%(PxF?M{2-aoGO3)X=98M@1KM#_y=C(R2&k~*aQJiLpm zF_B_ROQ@_kq96c9Tx*D3UimP(4%cGd?;5F3SBVi?deY=P_DCj!Qg@oWyH{&xXNSu; zK^{zpFwyhbCQ`tP#RDG#V?2~>6Ytz5PaTM&{9zr+O0hdu13KPT+C6*7!QBZM=58!_Gh(+ z?!_S|ay-#fAQ+DZr`J<)x(w05OLc|5olPvWyKiO#xcnTU`HaPUN<4qKE(t6N`3Vlr zSnS5QmMpQo27`X~vi+6Cj&6IfM8e9QRj)RGm4njHhv`IS<#P z$oS%E1svDp{t+hULr2#lDBpjOD1I?^QX1V>$*8|nIWU8@#`=jVaJzOml={gTUDoJF zvX^gkz!a}H-dfhhNreKuaW_0@5%*8U0W<>Nbu1iFiKKMbok|B!_RDL|eV-4{>H--7 zzq)FA35M|N=iT;_D4xPu%PZmB?VMHRuwwl+!pRH42tJ4km5%#&@L+T8z}^ z*Mx8-!AHV5 ze|e&fZT_sOevyl6j7exRZ%h@oiGFh}ulJmtKD`>yCdJc`mvGS8uf>k_c3mOWvAA?U z-vk(RfgBGM0U&xXY9BX(*!$9FC2LmQ7&FmdpT73*_8|q78}Ct?S{55yi*=-Rla0W*Rn1cS@`$3z^jaONtG5GiPsZWlQ`~ISL)zBfDY)q0Wz;+3^bzf! z@cj&O1i z=rm+U4GMn-!==I7yh9>89l~d03KXH$)MG`F*3gszrs&}_urCOay?~(kx}9X08usAzYPu?D`7m;r(;01vLQCCzB=JQDBDKzMRC6OCaB0!JoW?iyS~QQ-24D3!IsNC@T0 z8G!ZJ7H3lbT>Cb?2!yLg)%mDi2DieClqi<_GWUG;k{nQMOOAtIXqnAb}4};WIpMzVp9I3VEyAMu7!% z#W8x5DM-aQ%~)uS$c!aU_HzKKM$T>clGY-*gFveN2RJFo$stL|(V!z63SlO38e){COU6^mORtq$CLqipiqerzDf88B&5lu{l zP^+;1y>Yjj2qrK~1G;Dbi8V%+|HRsQK|%P+|Haf_T+6IG(T#PHL`m{6g)_MKv*XU* zBUBGWfz0%~@c?zg*VnfgNxm=YANgU#4^BY1TYw?1=VIGa2V?ZMa~dJOAhfOR{&8Gl03s4K(!_OFS{BrVKU?OGf;`sU&+!#D`)93 zi-2!>2Q&#akb58p>*w!w(lA-+o*X;-OpTi;g6#lR$V4R5;)#eB%@8$tgMZ@8KKvol z_i_XOZeW4k;dhVT)LtbiHxeCF0wmW;hHU!iDywdM12b+j7yOTPuZ9tNH@L|R$i5__ zUXNN||FxelJ}5N*)7tky$?$jHg@1=tRFIC}nHDqAhsw>OqF(eK?qN^~z@1+6>bn%J zgYzn~IRV{(T!DWU!R24lr6xi^AI*`~oG?JA8VgrP;zoLD<-5DPbxV_l@$t~(=H=vL z66NQBr4~6)3PC8}(H8WeGIrO!h4c#KfF^{I=i}BTty<^uS>W$tgSW@}&{N|#*`?Kr#U3yH z*Cv_m`gG^E){^+6kDUJ3#+a#b;xG<6gd;44+U$L-h%c#IDR=gvq4%Hfxu+DaH_+rvj^eSis#AGNU7QCa6LQCHI z8E$-I*crk+rz<$EOMe$B%`#`TZr(bsoc(8|d;`qq^(<yg`9#;m$Hv7 z$5u9Q;(^TG@(9_ij65vCU|%CB8sE8VKT{(ZT~Fb{7lAf*k;>HP&Od6d-_Zc;T< zQrp$FcVHG|uGi{&9fC_rL_o0IIJr%ELo~(*s~dpTQF#m-INWX~hzXJ?zFNGT$GNqq zpGjtqfG!l}I;DPDi_oDe7 zn@E3c{qB-O#LA!olb+ zKEGFQ_0~&_0`=eRc4+HBsEveljM8Tg${nB1C%k2ru22ie`YzI*%iga2P}sCSE|^_n zj*AP5-A~`wQ8+j^hshOhZ_5n>mo?E`EsTwgiB~<-AVZ^F2(dyHblVP9f!bTY7=TQ3 zf7yZgHu|pSMPaw^U!Hq(blPm^i1sb{V4YRMW(0K?ABv%{;sg$|N_thx!7rW(&oM2I zX)I7!Y&IyYgobc}rd!F)4;a6Lo)F`fGl@j0%w-?RkZZTkHkXTA^# z5))R(F`oSzQRmtcKupm8j;S= zH|`ed`5!vdUYX9t?uvMdnpe%nI*pY{A&XQ7#?3WYPcQhDhDA<^1yS6VeU$qm=2xmZ zXDdtd#s7oBp3sxg&;Vu8R6&nJhF<=Pu%RgaM4A0UQ@0tvOS?RHp3-qU>$jK=w`o!| zl-)Q@Kd)TB51%9^sbyVy)<@h(mL3MO+WvfN?h5TGGZu2Cd~n{4XH7F%bWY-MFB;0amT_~y7Lc& z>&x3hpK!y^xxk^>^jg?L& zU+lQ}CEgO10fSm07apluEd6` zOLn84Ad0DkAO*ks)$$pG*^Se->TV=gx->lK*B4^3EmBRanhI**d zeIH*d`oN=}%oe+retZ8y@73b>-ao}my<;Q;g_2#5T--Z)m}B3_H$w0~RD1BOMQLRm zoSk(<#d`845BN0?@Q@(_lf&krTzMKf8O;`9bv=W-z2Obk-XyBv4cye#^>n6Ub-CS) zClyakI-+YsGUK&P6-}T-PJ>tB{G+os7dKnRs$h4sprjHo;t;EZ_sXyZi`v-|rmfdh zq(IdK;%pAT5O@4F@>#b4qGDSXb?oueBj>4*8=KyvI>*;dRaJ#leFyoKT7u2`y|~n1 z+QMH7d5)duzmUpKwTYioe>v{`>3UE3kNr}}f?3U9ObukhUjY(Av}X_XJ~P9(2*0#{ zB()w+?}rIMseYAB80$DaqV-IC)Y4-1-sr*k$JCvWn5)BZ!=FjAdYe8q9+RIImdb7m z~dqxu&p$AOB@c=rG(Je>GzBV)2)- ztD3i^m#qDkA_p#+vQJ;dpXH3@{ot&sty1I_J6Y*ywmhQLOuxnPep#+w;v;D5SRppl zRf;2&MlbjTdI*6Ddr9DII>{HFx;#>@Te7fj4G&I!I z@LHD#nI(hSG1O7y0@Q4_>+|d+Ya1I`^1P7RmQaT2E#x3tU)#Z|!5r=&okIeGw9Hq( zOD+m{-f=vHd|7meu8ZpU#l^;J$5Hbh&0GNL?OwnF6YrES$WLUkWTHJDv4A`-fxtfP zPN7#UNgUaa&9o5My=if@vrMlbFa5MstnbZZ#E3yBFB2qzE4x0k>ng08dXR?mH1q21 z_xQ6#%Br=$ecY8SIGIg)VPa-gfqwAgd#x|B@4c`eovSvYwIAKNwZdgH+@7O2yKJ4= zfUz=qonC8%XZ$ako3771mX84dC}BQ+*z@(XokXtGxA!@H9W&Zhed-Hgj2BeIVgzJ^ z(H0KM_GgmzTY7|T+7Hp7{aEniIBWIJT+*v6)V5=AQk9UL>G1S|O6qm!AQZf*si3c`GV}Nqr|plbuuc4ze>V;Co(fK5pgjdN)=?RSK)u{ zN6MV>CO33hY}XBrXQ8Q|0$yXjuaOR|pJLsA;Ko(us|@!#+?l+LKg+1!A0tViAwyQL zutV2*-iIF2pK>^CcxACt*-*9EbqxxvBnP+HZROk$mV95v!l%xk_^BN?SDssC{+C?b zud<9O{E!Nmb+NEZsP}1q3wa#(7;do6t2*K|H}d|T_$(pU+$N^Yxe_(R`nso!xcJPt zF_y96PsRd;q}gyw!no*dh~ko(f0nr5U`=0z!o$o&SU%$ zDKYU>xuLf9M^L7xN_DAC&CCW~ zCN)#{TQD4kU)R){I66x1T3;S!vntc>SGeI<*oLalB)a#c?e}bnN{92p90s~3I-To6 zCsL{QSjGce9I5DS(XWPj)4HD*;=oSruJdiKuj{jTY(+#=v%hj)3H}uTsp9KvI>rlSY>f3#2(SX0WhwVC;djJKy+n@VM20l7N!{2A- zkn}pSSZK_3O-)Z1aoyG4z1C>QBgMH6w{?Aw^XciI<(9)B%rmrJv_$Ds=aYwh^{q+q44V^xw6H4(DYwE8u{uY$$Ddlo9`fNU6@9w!(*LejtRXW;4 z=E&Z~qR)Bf@H8LOArk`_i1s0~)m{S2_ARA5=EtYVZ-@mDd*{afZ~N+{UC;{;6sRoG zHLwv>nCl}X*y8Bq&xx#L9!J4P6MpBv1ZcE76X1eY$Vah8NZ@mLxaZnF)ajNNr#625 z$GVX11oEqRlN{HiX?ofx`KUlAM>!R z)1lz3=3Q@=Cg(eOnwf6pn~MxVR6!A58F^(t?d*Mjt)(F7=5Z@4FFITXSfxKG zuZ?rPY87;MjS^JA!LraQ?^}*Fvn$nWHMB+!j0GdQL+?Ex#;26`s+_C$RKg_Dv=Od% z`R3-JUOZFjp>I;{wmgu!`#uWuJDoF?B9&0*?WoL}YRmGWsZhx8<*~ZR23&VyY)sNuDW4pP(LD2EeiUpv>;Ao>1|lF`s#&w4sX=-Z z*y!+Nhb?9)T)O%iMjKd4eo9?_T}*y{-RxSSw%`-otu4#tnIers?3TR`l)mL*GrojkC1e~k$h%g25{2hLBuj;fr7BFM1zlB-WT8@Mt3 z_a&vO#RRcGD3M{wd?tYG`(NsEnyBD>uhDg{?k(4;&;U zjXSNKY)+Z0(!Y|_*heTXaRueKRD+jcC*WiQ@WawUd1U1#TK1oQiV&#ii!bR-k|UZ} zX1)l>;%@H_@&YQMy1q52Ef*mG5rAA*@aAIsA-Z&s#B*fNPa+bvj4xq*Xvp%?a|G4c z&NQDXW?OtN!OcI`_vBusbCIINcZRf}Blpd5p#Al;^wsC=WvcDa(2h}hCqwh68klAz`EJ+;T{$1&Xe;G}6 zKEM3=1_x?90J_*mTtFLaG*Y>{{ z5;eaW-}LLdp`%aYVqu9_{35kpMk)9Xak5>S?wPpF?UC|r+Zp$}6~T{5cnwuoY5j|j zn~53~lZJy~JC;8ERJDg^BoA~EUz9vBIAwhI7`Hj&}iE$=n6l>Z7ck9R*q_{&unSGGS;&M zlj!P1i@pw5>Zm3cjlVhj@FB2)@HmoN+$X>obt!~4Ez?%;{SK^~IN#81%8hmX#@3(K zluB=0Pi<N6P0wx>84~Iy$E}K{UzvEGw4qbLlVr6Evk_0q2!zsj>Ohwxb5( zJ>0!T$+cSA;`3<$5!JUQG2ub$Zdn7*P(OGqU`4v!QogQbwrEs9h zXh}JqXw-P#aSkBaln<6O?ifcXwwYdDaY?NyBGUb>5{N0YsPpiI@z}%}B}_P3Sw*Pd zJ(sMJ5I>wKRJY9xRDlx2&R09IqS4wds5H9l1ZXJ4mkbCe7BLfp1k+#`T(+ltmIFM`Ca}6p6|5Sc-+RRd>fMxN z@rDa;rf{`?d%RM0!B zg=t2XoRax_Ys*+giuE{YbT@RlT?9d)G0$jcn5u!Ey~B*e>M=%+hmMcpS)P4KvZ)FG zsx1f6du4kcjdpX`aHLdkIy5x27CP4`S|%aqgC*Bd1@)K@7jW9#+}K!rL-bf;GPVLv zzFx`MH7>F7wlTJ6z{Gr$#&PCqhE?S=?){c;d)astUOa2F`JXN?y)3!nvt}i4Ial*; zvgD$9?_C=BHE^?$@fMscgp7`x*(fZ!adGdY*?S?0qf5xEmJ`YInWmIFxd~g=8LF1P z92Q2^#ML0-mrKXiiT`P2&hrGd2+jXU@WMEGN_<%aS*O(`8&`M*xM@%Qi9s@{VqC*eE}(9TB@j(Q8O48x{uluu<6u-}J z>J5UEM*BJ(u*qT4&!|cdm|h5;t55YM=p41cBcq!q>N@iiI#8~fgFQ_wVjej#pDoU_ zZbzpVa&k{M^Zp`Tv&PU&=lX+gvaIiRJj0&adX>?1mZQ*c?fXFfk1p>mHP;rYd3dib zCPrDaNcQ4Z@LKKuoZbBIpM)Wi#c*0(3l%ZBc{I*~(8M3{-0gYiX{j$gvu#k6kwulX zG{os9U%ow2DRAk(og z_n)UF_}p~ZX_YI9#tG_;*q~n4MCmnPzP8iFO!Nz>TS`v>x2|`dWsYP2J@>4&awz}M z(+nh7&-!%nSxovv{FOa=2OBp52OE_8QB2=dL&G2AaNS5detMi#Me_+~(9HhVNm(_T z!3fY5XMTlvA%3W2l1gl9$?sBZFnj3NsF!^G?%7&*c0P?$o^dCTRy2Jykjt*@<1&HZ z3UteNUPCK~M8xIchp&$!o*V@n4gUK0kw#YSGwgme9$Avmp?K_@zfaL+gQ;c^#^Rfc z!{wXgOfCXk6LH|!@Y{AjdYvz6Bu0)w*!shYH_-aQy)HFd+gHxc$JLgjZ{gswj(Kdk zTH8q?Ms98#QE30FX0on0kiN5>_52-sA04mCb0pjQ#Ue zdkbb79{QJf==l%IA7GR=n}I7Q>b-^?2ErjjR+9vArBArbhciTcHcIr<$u-&|5|e$O z;89tAUf{XzCZjtCl1^BrNPlC^z`r1yyBN1Z_PJG~or;Tm*OfSSrF{0=#NEl#?>~4k z(Y{R;t+E#76ySP|3AU=LDlmeK zxzC?4!lvoSji}vqQw^j$lV5}vLi44x2-mk(y&}abl5&htpihg}6l{B|;tkihCqHXO z{9J{H7OF|WK&_z%hEWg{l^VAC7OXN+kqVgcpwaR{FI>0HIZ0Dfb01GHQQB;%4%rh= zcJV0OZ`)V#fP9}T&sskGnaERWFW3A;jN+C!$u^!QodRaj%d`@=Ikc_>qo6!G*S+F- zUG$g7QX}6X8$K+0GLnryO_BknjJ#^qTKZ(@8dz#XsFZ{fy%+xRi@sMFksEm`k14Td zKBtk}lKwULlr(C<@AjZtF4!w!_~uWMt5bsL1u;39KyVEW{g!Z*U%dV-3z&n zXVISyi@NiD-dw~RuPSScf|_+5Z0T^zfb5E7*Yro1GpYCL>PTA~N9hP#=4;Xy?eCaB zM?`^726hzIL26)MG|XPVq3;CN?_QB`%i)QBh@t$8v4v1 z;3(SW6rfqvbaZ2ufH$ z{-K608Z@bLJH{r=Pawr|;d7ES?=939ybFIZTv zzV}F(0oK_mGlZT?zi2&>bUG9&`UX{!O|3hti`Si(Q(v@YgDr+nO(xDs)TmP;h<4|M z&fW&lr#Ba4X6wmWgtSnM%Or$J*M$92E_4Z41^I0tJakiwD)%$jN4E>{evESjlno zO1tVEu*Xk##|OWgdUli6)XAY}3D-U0EqN^|1kE}tklb`kd@n1GLU^>hzPGx%`g@0D zdB^bkFne1Md)r(OekH0QMIjQpPUOl{lIDYLkj z->}z?E*iyJ=^}IZVIAMUr%;3X5i^(U@A03L9+srzC&j-x3|3rr&a9P@y{2=GUkuve zF9m*h(Kq+D3T3_m!i=`SWKks<9VPY*K|Rf6>u^<#%hbeTqNC*n;+gvCp)RjLy9Iz} zklYdvXg=I+F=;z16I9by5AEGxsS@4XauFIFGZ8ksi=Ln`AJnS%Zsqjr*8^|`p^U67 z4NINSCPyoHd-1Mzmo`6os6*<6_&Gk>E_hKrQx8`azOWZ*cTa)`;q5+|p*Lx(4zOc3 zQg{+F0S;OiIS_s`xqQ7O;9+}y=^-+kyH!KM@R+}DZp2^##(udSRruiYF;eg*PwLB$ z-rp5*OUQ)hinPk%wMx$vLEUL|euLN1-~*bV1`F7I9iSECN`D=?S?FuykJ;N5IZ%Z| zV#myKVEOnWa4~dkXU9$JWLvIx`EW1P+~B@lW)o|rY7ktyF#>xu#NFoCXA7elJ>{g4 zRD2oN>*a+q;Ic&v8z5OESfNwcxQZDF3?R)2eNTV2=U+m5p2~1*a5%@DXFpo`G&Z;^ z9hl2Ur(CWcO%)#--$xOIYlL`zv(Y3+xCw~1EZNEo*1iFlGK{bcw0z&6ZvSjj>d3GH zgIFqaO5F5=Fw7}3U7c^cfXi~cKZ*jw1_lr4lvz0Vbpp3{nGv;J90RzN7FCWg8Ukxu zXcpY$!Bv6yssEO$1%3jlFs4N$`0(WOiw}X8LH=un>iP4KK>q(#UJIhMmTp{XTZ;p- zx+4AqKWQv;3z*Y}AvU74hi~C+b$DJ!_v&C%0oU-dH^NeD5_4^5I9019ryt`#FIlo2lr*-=LfLxl=3#_VB~TAKa^nU>a4*h|4EJC*`Eqqm=2`qjX5Ap?r;0_lgFF zhf7om3Ea>OD2_cwCu+upC)51zm7`eUWv<{2^))ZsKfm#yYLg0(D0eQ@om3W9+u2s%hq(4fC3WI(xre%cS(15^U~ej z-QA6JcS(0QNOyOC51w=Hcm1ut&)$1x&04c(&)n&XF;-CYiOS`~Y-g5B&Y)9o-GT^c#~BjOsW9|BwF%h{#Xk-m|8>e0X&$D|q`tW0@UU z8ZGtF(b2$duRX~iw(J*(m}osAAOZh{l9g3S&+ZpFe3N)0O=GJ};%_AwI|0MhN67qC z4GIjD&rGns2TyLeU4Ojv_{El7iA~1gC4QlE#D2SAIlsYaa!#y#oBd(_@v&h&6{}$% zUws~_q~3XyJ+=P1(Z2s8i|5? zWPZqw9_)vyw8gHs=_4bL_>PD3rIStkzKXyN$w%Rc2wEL^l0Zj(s%$TzN_)3MUqq}j z?4Z0px%p=-US0$JbbPMM;ij5(%omf{&9w@pGht63pAy(v2G}({6wmCy%nH(!6!dhU z(Q@Nj)VhbcY*d5KilDo(j>Lz7|&xx~t zu3e0GESz6spoW$A2IE!cVkvC7)nAuL)#1{VPQK_`=mva(62$EB);xKup3wK{XuZb3$mG2RLL@ZL@Yv=N{)|Q!w>SxO>g4 z?DoY|zI`E|Jm6U;V<~S9lBv~cZLJ)!Jgz>eI9imSi~h=G?>P5-i$tn$ z)HUnA5|njsV$TxM)zDuRmn`|X;Bw=DJ^B?J&z^arD7e=H)mF^*wu&w@GxS>oh{3^5 z`TKj(q&V=3QEV2Qa%mOJi5dLNlbegXKo6gfCBtr-I!`&|G$+sIad0QQAw86ZE^Q14 zCwIGBDofLEKPCc!ebIEcy@d>i-QZ37_UsdKTu92!>dzq*sD z?HAXtyI0KG%J>ej=^{Z&(Q~-t zhvz@F*X!z~Zj5)!My`?&Ww;#;sUpUXBW91Gn4oCyO&m83VXfq;IXxl-%GZyxVn zU2jiZx-1wV(aQ-^wQI1@2t*3@3d=JiDO0NxK!1n|K+PHYf~ffyK2}12n8)LJyP``Z z`B#QdPRk@9H+VI+5fSJNjP`^h)Sf5*7>uUOfTkKHt;!B_7K*Q@15w_fT##_ptayZ& zzo!E=3$Sdg`4h4%7zIRzyUj`C^L0QM{R@;)X&An^BNjXkx9vD>l|D&T0yc{eON>2N zWBud&UrR!>9GP~}2<(^Z3ulmD&8Eriaaj@i?urr;ZkOxvDY@UCwJ-zx!Y1|6>9odj zoj2dOfT2$i89A@y2#Y`&!(Kywc_(?ZcYikid9F}yfzTEQEsT|Ak#{$D=A%~R-dAEe z)fN_HTvn9Zi(B3{y?&;7%N18DTErbjiwP4|0alRiWc%Z9#Ng#fj&_ndi*#24vuU1@ zlAfL__r1w8&mX}(;0p(z!woCleeTe=%gn2Ot8}2+8Mf4ir!u#*W`(f!#l)mUtUszd z5M+2wZWM2Q?GI0_MUwNTN|L(90U1Aq5>qX}vG#XWa4QTTT5uEzM!!w}^Um0GNak0t*Aj@2<$k-I9`7g*Sq~>}q|7ERyGRC_5R?tlSt@-+B^)N+7p_B1^fQ5wMj!r_ABKzyJ zscQ~*&ez8r#vB3fd~G#d1d5+4^S7{0o8Ukg640`{N#Ey-Y_83kGizaPG$vDyBW zimu`8*XZL;T4F;*ON0ME{m*ej)-MDQ|Abbk(FhC1=V!NE;tCsGTt?kLy`hPfbcy;n zq4IZB#L698QdQn!xs!$IL;6%R{YTl^f~eY=@l_d>4~&$m5=^6ZIk~HZ4pJ8$gvGkT|thghR-S)ywVU%}AnUZYw{z`VS!ibbT_`suTKd)PkBDrF^y5`djb(#eD9^Ohn0IVu z3_QkP-6DcG&&s;G z*3+{D6rJl&#dM>847&RuDd_bDEsp>$IEujQZTIh5@fxe3m-7R^?^r0r^Ogd&}qR`;CM<-%gsQpTI@Jsb-@q(fcJMaJlfWATeFy z4Aa{#``8F=B#Ms}N1>1fkrZ}=q5zH7Vc7>53^}glMF`T-(E+mEzCI9zlF4{%hBKFq z@wU4o!0X(jr6)Pw86t1Tu5YBw=t+O|hSrRt1ao?bQ5HXbmiwB8^%lPpHuUKuRg-+# zBUY`fc3tjb_aRl?ZWP`?5KAbn`)o}094ybnWL>wH*_ZG6Vk&1uxo+?+`uJ8Pq~2L| z=SEfo)%#M?qpIPbnH8Jl*o|2xYhr?bPIA^}JuYbAM6=M6&BPc~raJ)7MP$Uk_7M-k zeU|NvuR6VS(u>w=bW(eLfFQzrcsow_G*5GM@6UYV8ozsT_gK+DH!8~#HNh>IOp>9D z7Sk0~` zt};BJT>a+)ji#u;GB}1M=SRkYPKbr z7w=D)gPVE1o~aUo8Z4ec@eP9N7x(zc>ek22g@rlV1{j^|qtcq${{5=>K)6wTE$h~@ zW>Qf(%u`D!ePRE{Ax*-K-$hoae(gLP1QQA1OH8seKGO7znP_)qx}M!>2|}rq4~%^< zG0u#_Y`_V1c6!+@>Hh|8^@Y#liV(1^kj*!Aylm=4x}T0DpY4iY2oyi**0E%0>iB|8 zuo8}js)Ij1qa8h6Vm~P>2DFROetcB)2pD3~QUK% z;Wz5{uCLeF=^sv{M@8Y%4|{nS_f!m1S-)(NoQ)gZ-?0%3f|yh|4dMH!FFX)&SltCf z%&Q@@K>+9O-OZUr3n?pKYj7jfG`mYRekDd1-;dimfQ2i*9`Yl>Z%*vMPi#e<<(jlGI^8Rl9Y)CI=)TW@nPEfUt576 zU;I>`@!@$K*IyJ1eG=O}500DOf^y_n^wfGLu&_(PO4^4^mz1yAX zqNk^oI6#WB5y8vmRX43@XZk`8wdhg!vj+L#=+ty8klFOojj*)_JRu?VzoqBhH=MpD zGP0ceQozM{V5@M$_2kvHA8TMh4ziyv)H|N70S$L>N`-{AmO46KBG^x(5>kP3SyD)eyIT&Y)8qZZFAp=z zY7G@vSE^4FiRbe5Z*}I*g!WgNeyMNwcc+hkwLG@-%yp+-GGs`z>9wOGcz<%TupG2q zfI;&j+)XSszYJ`Qv=Xt5Ppd9hlS_?oCagx$lu?v(f$gNpqM7F%`ycnJbcDDPUhkwS zzSJ*4{`=CN0{?)L+CQ#9=Y&)ikcG)ZI$_u|VeK3}{Lk4xf2cJyaB$3yPEQHGd~y7g zQ*+fB`gR|_m&yLpKIVJGa2?NG_l3ou&xA-&^0!EZW_o&ZbauTi|NOmbY6uYvpH?Sf zdI|meSI$E542Ew0$4&Y9ztTm7_on8jC&@lH`YJlU;Y&zLpdcfQ76MZaG-wpk{Ee5}jwXe2gWQd@UI#T_Ei|Mzbe z@O1g8IRh`O1Q)-t2?Cl|ME=z=z8dRq8iWE2kD3r*b4cQ)0sFO0f}08;GRVOJRN^C8 zAuL;|eDvzfnp3VXC2JDD9QY4NOwtS&bBrsP1jLWVxU7n`PRsa z-Bs!w&2AQ9&~XtLk*nx$LtkXTiLZ7A$ z+cr(XO5{w*BUO5<{Sll_KxO>0Wyi~-0!WvTavpX3Wj|Dk>t-|bt@Tqj{Zciv);-Wx zd#H;N3vN4=SwkNzOaTn$;CcZtaDUfoto?(gJ|liNwtzsXCyye|+&J9S;nJ8?=W?&( zA{Veyyy`@O9G6~Bv_}a34X=765t+#ZW}IO32(cm`wd&{T43=tj@f47a=sM6giV3*P zMbd9+Mgd07pDflG@j{9=c{~hjxnB&%j&r`D0%K$)n9UJ_(U0__!GWEUcfSb9vy$Rv zm^2sD#QZoECCT-Uw9TkNXnJm#;@1V2zUQ5o-J*9)=6zk zO~fU`==a5z0?0;%o1u>$nTqlv91~Jh2Oe_J`<06^Dz2iADe9N}H_EjEU>)ynCK(xi z3_T<&o@^+0Dccxm?y0qtYo1Kd;v|ZD6t7OarQKt{s&C_~UVfy2<3`91QH@oN6?p7F zfdvGXfBS&VqTx^~fot}{Bl4)T4V%rV*j}tomhtXdDzoH0plX4Y59Qy0HhGOlfkxvT z5B~iITTZs0PQCww`hdlzUYo*yx0e^#csE*ka)OwABowY~ldi_{r$hzhCFD|SBplmr?+sov12XN@=Co1~;(zEGd4vZD|0UWfv0Y|tSh#*XtG=P09*BF_* zI=rr(o4cvqW{wZ+rIs1S@ZKa?l!5fx61@a{6PNNEV1jH+Ow~!=+qsc$mtXbXmZsh1kx0#&0>Wd(_7Q>DykD9Y5O55g zgeBwv6=N6_EA${^&I%YG?iQ}z>e24302l>U$ddt>@=jJG){nyfjpo(3;2@l@dgarG zWnW-)m_nvxm}pt&U@nxG_xHt5PEMxGV|!skaYV!}sbOL=J+|dGw=Vnq+RZX^fK{VC z%HG(U!f>+a3wO3MRFfEk+O7axt>ZUu%TTfjrWq?O79<{nsLnM7e?MvG?KEJsmYB4o z!Lw-9$R-jP=XRSiSPE)OX%V^yfCkv^!0S&z$idT7i-X$1`CcSac6QVt@9nGc^iPn3 zhE(rijf=Vz?-4>l%f);k0tkuzt`z!DkxE>s=|31*97J(T?HRd~-%j1Q+6VWpX34#Q zzjW;1?fw8@C9uxQ0Wc96OS}LHBBD5lIvhO^8q`Oam_Ca6)RdGs6Bgh{^;3V;{Xm?o zcTL0=36T&#K9*hYDd5>h1dtoLr2U_F51UZF^NB98P^61#Y&^W{T5Wa5*C}REaNDNE zdrgayP&%0v$VEi|r=P!J`E*_a|3jQ~OrU9)yc(x>d-*}_U;5HnIu=Z7$_wLV{}&P+ z>P5R-{+6&DR1KD}Fh>2>Rlw~jkaq`96yd4idv~moVAlbylq@UM13N1A3D$8k8<)or zmboiCK1w4lf46Lo{sihD(3p1$koxqPr|CZ-5Ypso4ZP}qk9CfItgP+knX=zg1!aE` z;EjsIb-ol!uMZBsC@&AQTdH0>Mu&;1E&*Wq3@~o;so!71bvs-$0 zQb<+zKvOvyzEhu1PfLp<0J=ag0}u=Rn3TtcHRHP@i(l@1^l!(L=hGs*hW<`1e!Fo0 zk%i|LVgxa^jmPXLT^PkE4Z+3LwXTXRJ5$DVQhBQ&b)6KeI`<;hlJzCINNy*7VQ})ky{?SRULZ6I`45h-tI>wAWQHW}R%FSjA zrY2sxhT6)q3t*w|6dK+=y${}-0tRc-zz zPAtfB8<+)pce={{|MBYhu4CE#nBJnze)uP%yLSnFKVIg?0EvStz$Yk9%^>_;_Yb&K zo0?S=Ik{i1E9d&CgYOeKAbNk3h7mW(o2-<9Bi?x_pky_Ebu~$wz=Ct9&bC7R_X+S_ z_MB3MYe<8KT0}0IY7D{`3bXMzQ^%*;H3|bD;`Au3+!&`}@WkG<z)x!<<8rb9?c!UlaP)4`-UKQ2)_S$`a`(Ou&(K71UNtu3iWca_uldaIq%bBA<_3Ggz6K$zWop zOn_Nu+_r{xj5tT@9M8dL;U0SnzF(+5_s!t=wWFkb{NFF&*=Sd#_=jZg%1D^8-O2cz z2zakOM;l&1`xTq^yD6aeeuIU$V&3^1%C6+nLcZ$>!05j(udu<2vKtZNU?P)-C*zvo z;yg4To5UKX)~=97YFa5Q`wDa0ZLE8^wVvr&uGWths$O~#H%sXaa zJM*TCk9jiXc%>}QN~e`->oewv|CUk_jP7lvx^ZS!t(_q|7sccVK{CrV8V%p{mw8pw}R+d)&KW5rz`4(DJk+9dd= zxw0#!gZAR6_?iDHD!^|r<0aLO2@js?e*j(h2B(yl)eAwUHh{H>`~*!|#?~&W1g*BL zJv@Bn0s=2lDe(jRE{_V!Y=)?5y3`v^;ZzAEtBSOhGfl1iSmSn2B zjb7Ooqv^fz%tY_{goFfh79el|vpZ(3fyD1SU%moKw(-2L8}N2cmTIglt1ms3ly(ky z#%9Y39&wGHR_8=OQ?2%+c$O;Kz*Gy5SoLr!b_ji8ug#2!d7|qwKo?3IfXM#^*Qi1q1PR2)m{_vO5udJ7~{ zcz67FZ2uQJwTPq}wGi}$33Hl`dDb}+2M!LXRn^94hq)nR)G3;_3#<)5O1J4CfB5fM@n?Nfp;m2UBRUl4GtQT=o#C&}MfyMnfGWLn7_{Df<)D|HP&E z?LC%kFNNbjviOZ7?A0zcOzQCiGeHpNKLsR<)Z-tD02@V+1{gT)jM6OxGtGNIBNT+LHSlY{P);ojuj7?IuFVfo!XC`6YoBwm zyC%ai1|n(dZxiJao=fkMCxD}ynGlNZs~OkEh8X&n(EpbpId9AYo>Njm8-as!X@aOE)Lp)0O*0oxS+5%aCT;Pk;b~xbm&@9Z0o- zUA$$_)mx#;<9J~L)(7vtQ$AyIRSV3ILl|U8UYe@%TcaR`&Nw<|W=Ajwm+$##R(!IzU`n1N;Z9&dqs)PIETgU7x} zS)5IR#3VKe0RE|IE(&}JxTSFA9vcJ%&wtzRcUL0ct`a*QJM3fIFc0}^ASg};H4i_D zNH-Q*p(6Q10>aFDf>kE(n7CMt1=RS{*4~hXo88vl!NJhM!NJDna+vJ)c<~zp1ECg{ zbiYN19L&-m&dY5%t=FkRKu5_*j&=gMBkz=eb|7)~Zn+85EGMlDJp~hs)>&mBr3V>2 zDxlMN9m|q(Lu0T+*>9e|&TCYDG{FjrE8OQso>tE!cZpx#_W$N`Kis`Jq=dO~-K9S9 zX~qP^3nUmTg7tD{TWX{OWaq)R9tniQfQe!}JokxjeSXd={a*s zt5~K0$%Z*_5+r7aK=2X7X7RV9ipSr#rP@C@X}er9>w9dj4Ovv7+#8D+s$0_+hP_+o ze5*25J!>_%TeV!Zo>w%Bt0BFtzgLa?N|u?3RQ{Zlnof&(DM9p(3_Sax^)%l9{q($| zBXGWTfl2l$?6UB)K$$qPeAc1(Uj@DlOmmJJQb?qLUFwoF`FU@%YTcJOiL_6`#Q3$_ zC*ivfBwR060OxXXi71#pxXh*41w;$b?8r!cr~IA}Q*m65X5)9t@qPlU zWgJ(sTvxkeTic@)1*FwD$Bj1zs^ePi;tz3R%g_pYoOsN<3Pq2R9UG>>fMetQs5beh z`Z`Def;2FJ==~lzRSOx+RZ~pl%J+Il>luCt$%wU&*)MSbFk<=-zX81yQ$|m7v2r8H z81=li??^C!M`d_tkN7VEA@BZi5wS9$tewXiwXAFzK<^P;-RX?ErN)dz>0n%(1eeu> zN@GDMJy$(NVF%JLTWgMOob8^+!In~zn$f9cYO3`eC!@2UYD%b871~wtKB!q@mcRJ% zVZ4hJXgGJumHxeWTd{a>5g8qP(_t^2=_bk4syU!38;(#fH5{>7nVXs>J`iiMMNSv0 z_&?RNAy(NRC2YBWiI+^hUfx~<2LNxKl|m5uJtGI4)?8&guLIQLYx|J!WPi9uYhL(G zt;~>pT0Cmij!n%)+seQd0s?Yrd1Io(d^Er7<`aGTV_}8+mhi<3s})u1MnYf@bb|{ z=5c^Z$A?{7a)|#zuhq`+<36eodaL;~93SdHIDT)zX4sxi>PK*hmvJ4yOinCY1PkW2 zE!;Le$F%Mr1`usI>z~$MBGyyZhj8w0H>}t2Ew~Hi;yPJZ7q%<637jya0-oy=t&iUY#Tf2URgteOPPUdg9y>q!TfPkM#AxXM#6NbuJ5!owiF154EGVlq7D^XWZK7K)X<6I5zPwlAF3u<#DWyxhEAogdRz8Rf~WtEnU*^k+sHIW2|C_p6S z&+;LlE`Nbm%;H-?IOoa6bvc_`LM)ssIetDmzg+|{Su0Lp#XIERTMjj{}` zq#Zd1JXbw+fXHOpU8GbNcIMHo?%ub?#|J|BI>O65^nf z9HPMjJkLtDJAp-QW1J)CZ8`c_B5KN)=KBdoD{~L6)#{z)uBu?W=nhx&a8k->h*kpF z#?s0$5BN4>;l8_|P&{YbO=QIut97I3Qiw?Z@k)<@u8U4TwHmF3i_BpM+=*xg5;P}N3)hpd243>(j$C|i;MFzNQAJ-`D%Bcpve7+(0hCRt=`k&a6~eRC&nMC=n&CBr;rOv}-xq$;($kL*4aqWh8Wz|ks&41YVfLP!2JjD<&$&{)3cIrV z=Y?)A)VDo+KtlbE&nF8S!+nS*WtEbYgX3HHtmoapZwn=fu%l=< z=W)v1Q_oLazC|s!Pexk(CJm+JFK+q?%u}l`^T6M4rr~OOVn(HViDYH)7mRF+`=%nT z1sfuM)^v8@mzlT5Ong=D`VGS)&1HC;;4QBx&qIe5S;$HKd+YUzKJTQ0e1_&_phTO6 z)BfoPDL#=+P~>&%YeQ(FMeRWA3{DSyn06}TQ>5ibH;6kC4g?y&h@gDCP1?{_fG$eb zQVbMn##-x4K3vo>;L#lDBPkg2xJfK{#tZhoCXlFs$I-dMkuZxeL&%DrGoMe2YYcPb zaqsK>+TF)(O-tIL6tsNcrv|GgU39Efz3C1I#UouIOzn2Nopn@*OG_kqzXcN04btw= zf{P+tyWw3vC_2V|KIj;@!>m#dlIP!wg%locf1cBxucT2?z@+sYC1BhwXMb{CaY^#x zVes0_VicoyJ7{c2p*Hs{AmZT2S@_hZ)Q&Z?Ct!#(lvueRh$u9lqA=!IP<1PR?bIN z?S3Z3^Yse%7c5cK`K;1<)?ULm%}P=y4wt;BqTUS}ALNF;@<%fbQ2K{_;UmBkfkuDt zK*V~=j*g8fIUxW5i7t3ZPSUT`53>PYEQP>(J(TEt7D9Y1J34X2&P%-8VM@m~6 zsa4AGFywz+QIanF-0WR~O?hJtSJ8vR?RgVXI~6+JG`IN%jL_3_&u*9Wg|(U-$ZZKebsY>V?w)<>$jvEHMqdJ* zI0yik^cN@t0qh6&4hi9_aSpn?d#WU1aT4>=aRf{OP>hL3tRW#N2z^-VZNjgQ%L1N* zAd1HU2M&TWM6xuk1eT z77fQ{PP&Hq4J(xw291fWTf3gGFg%3D6fLKnlqejsW~8Ux40x4R+85fY*~s@VTu=j? zO->quy_6zWEt~|FY4aQ$tGXHl^aX$MH+rI zu+HsVFMNMWzvEyuIJC`t)k^*%V;4Rrk82}-wm5D1@uYRua-*}S>v03cq?u<3f9)jb zzrn18p7pea0@$-(CW6v8bz$n*Nd?aPH%_{oYs%*!2aN^0p#)kr=|Tz8s4yz1oyFf! zF~)K?oQUsER|33ueD#|NNunwYg-u0IM%)d|Ff`i3qoA7m-U64_eKhgY+_(}z^?h^3 zBj}pUbc##ACA9LdlrU@sw5}JU0d~;@FUP?K3g5&;LlLGFJ4#IUy;nCU(zVC*d1TD7 zv)LyridoD^AH$+izP?h01bA=UMn;7Gtx`AEWSuq#)mm_bP-L5MT6wzWD!D~x<05& zAs-Wdh{27X)4W6R2_yggA6*5E>G)Ku5kG0L>1mdJ#ZSlkN(5W$or#NmHc!vlw^mgA zv_L2~sHm!b#WN81QHXpBDWhXqhGD@c__MDf+H!T`nqM-J&jR0-NgV#u?HOzY%05ua z%(mRPlN*pM0p*LHlFfm!gg_|3jHJl$>6=)!-R;1+Kxp?axO=`fXLZivAE^n#FR{EG zu(4R5!?AKip|)KA%-NdvgUFi#BPUdRVxSCvxq-)p%FXt9?D%nAm?=r}*QQaPAH@}q zhwgaa_IxI+$55t+D#QA>CoL$wLV#nDQ+35D0!Lmn%Tq=XZZhxW(p42)n9)DOPy1}ET02nVxm;H!-twMxtE*23EME5QK18XUP=4=DH zG_0lAj0}(JlA!~;RI+K+A80Due3+o``l3Bgb2LZ!`HGv?M_Z@3q)Q*;jRKy(cNtFe zepWg1vzO6u-;H&N01f34;j(yQ8#0OV{7DgTthKb8Q?^EDlVvGlZuwlhF*WL2A%%DC zn{knN6Bdc+9zf8*dHtRIkC@axuH|SEUqp%El#`bslRlhI?8oQuu`1`bvDU;`=q?zy zx0KW3Z^Er68p;;v_Kr#G_{HqblX}7Y_oX)8& zK!el5QG_zpFslAi#hp|cF_usl6B)0$s?CMxE^GzUzP>i&hOkNY;|PzrgQeDMa%jRF z>UQCk#5W4d)NB0W=|D~f>!804DSQmq8=IfRBT6Xt9zTqF;5aIWX_H=RX3%|xKEs28 z4eo0d?rUqioA&h3fUZiPbRjZsLz8!J0*Xl!y|wj`x(2Xw4)|cwg>L*md%X=g!mG%S zdVLrTfb_%FUHbdErT-65pa#T}f&!o&sgTPlR}{yG{)qGz8(XDM9+il*_H#9d!j0uB>et79K6cwrcCq*lSLB zh*^AmVeSV>pDG0P=~CCTGp*n&>s*-Kaw>-I4pj{8c^aRSUhY%%*UJciv+~V8^DsDx zZz6jxUJB%0dg}n}%TltH*Ej;pa+mYRi+}t>3!%f%%-(DBi|92e@*_CJv5nFRh`WKr zhv4oVj@u1Z8c`iW!d-Lpp#3qz!ib6<#k_KYm_VwX7O3~g1!cGF1*3a+**#)}Y_7M* z05cboAZ)r$?gflA;5b@)iKl7OC_mR1;JQra+Y8t@{L<9KT`=G0U5Nen2Z#{D6Ev59_KDTlc1rp=sKkta!$|`1n%Cs-5h-Nu2ggY z`mN#x6%%C0e=8zTFDOA6{1cQTzZ`&qIo+o%2mI3>s)6^?{3NPChEih%ULWVMnh&tnXqGIAN}*=fBzf zNGt$7L`Pz2V;HbwKLpDHM)G{z^v9vcA zTn-rLO^`?#WspvnOvFtn?m1u?`n3>7^8?Uei;Ii%nyx4Nletw5XbJ=N^P24D3;2Vv zUtjL~z!U2a#R290-9K01`3$nww)enhBkCjX zE;BzhUkx;dV9wZL7k_`6WCO2OQ`_k|WI9Zf!F;;f`t!tQzCfA^H4$12)a6%JO;pIf z4Lcl;OpX2u$k;wZ{vL-jdKjS{dNK?VCQ273!uG({~)nGCwzAo#UPZA|Bb_|5!m!Atu)aByFSj@ zh37xmrRAYu1QnPmMxDr1pUUJV{Ms}21S>^p^jyulpzpJd6`xjf7_n-JxxZ3(m}6`yk3 zIWsk$O9w=lqmN~*!Zj;i1s5A+=5xVHLU2GSqux~_H4gH1hw>+91R6x;y2#5cc|>3H$e=)f%7ZUDTSw;GIc4A-=t~AE zzz~N}AjKT_o3FNuQ+^lD`x}Ot>jBU|hsZmd2*{sxxhy&Jm1%+apWeY@6M&&u&ikF8 zK}{Es6paqJPK|Db3o>C#TQryV3<*JqTA9DUU-c)807u}uC#)433y-ZkRh{NbA3ib$1GYZg9sWbH@Ahd7w+5K&By14S06qiRi z{929bnxYA*B0<>$m1t`V?VjBgmKX=bU9>K_GdB(=Rvv+tcRaC#eilDjiT{-S@J4N3C=gp{(4gkH?q@@q8Ms z)VI>1{0l1}@%4J%wV&qV$*m~#c6-{4k=%~X4NC-#d%uL)wfu~m)>Gm-WZHF|^SjeP z+Q)|$NZz-HB=iJ*KaR~NiR4Fh{=R|2Gs_l$EBz0R7}-TQ=gbclW1wi=0`6~nmO86( z9;EQ-3YS4~rnb#t2ptN*D7pMMbGf?p9;xT8-9Q) z4}kbWlx+zlGb;&MW=C>SP~h>zmX)*N{Ln$)1s)n$Y}p~=?e#X(cyJmKJAVsY0Hpklb;{Im+ynAg$noP#U-py6EY zGQ`hDIi1lD!2rW)+=~rr7o~sc$@TC& z5bfESD=h<#%SG0-LG)v@ujd3!_k#JuU+mpXxCmq=@!<%^Gd6Hg;BXl*V#QKJi(mc_XE?Hd_XNos3n|Auo7XrtPa;(}C`KDZ9Rx=BOTa|@=3{1; zVs=e^0ZdKSRSSXIISm_C7B5_1=g7IJy)HNdm+r3=j3XxgUb~e5?YdRVx0e$i$o+({ zJq%30FQj^IJPLXxz9Q}5eZz5CI&`7%zEHos<#F+kD@^ zCHJa~V_xV;DH~JVb6_(qDeaH^0<>qv#>K@|O*+Xg{#N{$fdP=;0EODYR6t|SAp%LP z6*TilPO`r6HhM~vN_$mJ&5ZbXGQO;=JH97SWcA-JmU>MF=6x#T2Q-kGdeLI)-wxRDUfasbmQ7^P{` zcFOlSb5$ZL9*rK4$jjqs^mxe}ry5D%U}R+ll$Si9<8TypnBn3rgv$_pR6lT@;?9P` zRrJUH532>TllFm#ej!~KwY24}msG7mbIXf{7C=vIhSg#dhYzw2T)hi4a|o^IMU>|n z%DEx91`o%j4hzWE)>Yco5ns3?dPAu!s`19EL{V_?;zeC>cny5m__;qTj-+YKEBv0? zJ5OcK;WdEwCN?0`9zcPaQ?$Ln59orR2QWYFN=lui z))KegkE`?@94ICR4yP+Xr`q(C6jS6RPP1KD|0fiJpDPx?Ud|?JXMD6V2U42Y^dn9i zeJ5DNobLa~?%nZXY-Wcl>~h``rizJKtR{s1_g}jr-OkI6_`Eq39-nfdt;r{TLyR@H zaowUs^~8*sr5s;4Wkbp05{b{J>tLVDGUG6A6y6nW>q{-k!rX@I1)XSpC4cuj9$FuR0>z zq6N$KjY?XLvXTe4j3R&H&l-1X1kJv`er_~^_o`{`Hnwry@WJ_1X-^P|&Ijc915JGq{oJOJW%wVT*%<%Hbu$BWd5Ro~*HtAhkLJ zQ8Vt6_uRFjZHqLkquz&|MA4F{C44)F_@tzA4U>Pv%1Kbw_J z_lb}RYDJ4to|*r6p7(r{%G49CmOyMhAYwp=0xcaTjAI^$}yf&%23L9Gn;3Hb2%I@3>rzkUUfW=biDnA zot~aoPG@UvrZ+iN;DvPwvbQf8V)@q#3zO%y{pdqFrJ4+<(}W?|@xZKBLN%C1q_`p< z^!Ng+&PL%TxP19+=^rk3E5gzC9-uOZlO^Wp%`5SWUuj(7zzLj1M5%!HQbVENy#$id z|G9A5>5dVJCLMe+oK~#}kC#Q>&Y&U-XYNy`+&NdI$G)RIrOdVYx3OSb8Lmr|{0Ct~ zYB1P$S#=I;?0fF=40Gh7HhW|EANFYsU2h`0zrK&riR4#=p)sKd9-;*IC*l#YkF%C)cyD?yes)$!uji*_nVcBvM5E{Z zc{W=57uCfgO|OLyNCht7=yyEzNC9mE`2z7iu1m=O{(q&c-}Y5%Rc zBt$@@I~9Hieq!w|mXF-lRz zD$o3;#`-Jog~(N8-AF6wi&11dBs8TVWmN>uqqpFr5=JZWJn1wBR0c^(c4ghSnPgrUfw?Kpf9NUf?(vAr zGksM5y$Kjr$=>L)@}cRKs}#F~LPik$Bd){@o2cpG>-GrtqfAEik`Jw(AG4gfnT!Qo z;C6^%Q<6*zAN})^Z=Rp>m{R4z<@ste#KhCCVBD@0%B#=oI%xFKN~`d(-)6BCnjb-N zdt+?Pzc1G1ibcl*z-4}pRA5!b|2!&g4va!T4%}}gUA>mJoRBZ zW&w)vFkWsBtw4_(^iZ`>)jX+M&YU^>MH54$5qmHx8_k0*dy7!U{8 zVn*cwqh1$!3*k_ZBHU{VYwx*o)flXyQ*yuBjBV$&lw8IDC{!s*MqK(#66pD2CVh_(CNEScS+{ zMck0{Rx>Ms`HwDr4bO-N#}SqQr;iAO7N8CK+Ua2pV57MIkJ43BMZ?_etPP9ZG-I(} zczl75)uQv(?+_<3q(}Pi2)sRt|HYr)m};fmn!BN>Geik3Tj_WCVl>(@Z+4^^6Mvw+ z%h>My{o6<1_Ufd|f(wi^eD@q!Liu~l0FrZz{|5!CX1aF8&6BHjYMoMy7`{wO&E&%) zNiHZi_qM3PM#fbb84if?#@i8o#m3ta5T#)l%7HZIlV?{P#zy|U{EEq0O==cr5 zmW8G15=3_S@r4TXkc*g`bDMv3jv80$mm!3%R$EzH{@~Hp)}}g*VL$w)_zJ8h*sa27 zv9`Q=!VyVI1%xvKD3h`Mup60ROWeUmA5N_9tx^nZ@?846p`5hsV1TltKQ^oWu?Mv* z$;gWG;a8<0ib}@CuBb9T{%m)@<`d$npZJr@tEG!fED@c1;D#R}$sn)_sM(mtX-Tpa~2W8^~b@j+8l)0(Tu zv0EcMDxAZoJo8M52iy1+`=R!Ct>#Dnc}v|B%5z3&)Gz^9f*^z9sTqK?0#5cnpvKm= z_l!P9_#X0%4`y5dGp}X?NFE1*Oskb`Fo{u4R`yHiCr?oVwZkMQq46B+#MuiR0oS#@ z+zu)UAw?MyR&I~=9@;#h#%9CBgT`MIPD7NyKyvjH%ArRZiqA4%6Cz8 zhCWOM6{!if&@@poWK3m&Kl8}K3ulI}Fk&)3Rdf!n2F&T>4~S0VP4;U^T`;cMe1|Xg&abqJjf>I4#-*gCM2? zFoZMvEOJ|VX0vkSH^&vP6kT7`woU*%*1T!f3p3owfE&l3sf|8=#duaeM(D$UmKL;) z?+)Q3?01u*6s%tKr!jir#)WqCP@ zi(xpRhmy@Y4vqM(H~(X+*ztXRlFs1so|C;&k5}$NMPOPhPht@1kmlnl=y2Tgaw?Uv zGSM~C{{;ZHh$gLKt-YdCEp2*Lkj>I(v-7-msqbBwSUpB!M>yqRK>ouDW0^1Xaflz@ z_SJ$g9xuDvvnp=rvob^U_z#E>mu*AE%`5hOu))AvfRz<&D*$&~J2~n1qluuTkL4wM z?TovlRFJAn2^C(y0|3@eRq-V7nyWL^E+A@A-EQSSzSkRb0G}p?2y;pQGgT?gJ$Drp z`ONYN>Oe_$PEJ8iWnAF9a}3)C>v(VlpVh&pQEN(uy~zU~2j=FdUCoo!w4@-c>z?;M z4qC6O5&}r7#r9T?&>v_z0h9n*tcKYD(OZF3G`$H-D77FAXMTJ2g?5dP%rDHks2B`D zD>hG;`1~2i2R^)IP;XuEZ#j!?P9?`zZZ*C7x(nv zI{1k$p)ZlFQcD(SkD)hW2fZc&a?iwuYJZ+ty=+0?I2t z?c&>)hZLbb01d=~sNaiP4LlJ4O}a0*4kvm0RBd(0Pu@K6@d_is#{6F}!11>f_J(j| zl`8dXm^9Z;7kd~ST%GSxcB$*MI{eu{W!Hku1(hZvZlnX7XQhV% z)avkXv2mx%Lic`7mEGZC@@UXUT#+@;Wxa)t&d&V*1^udAF(Lp1n){McQ=S(l=lAX3 zQ&7J{z5a@1fyhj5WM+)<@G`9bz3hR}?92mtmh8l0wq*VMhd7obvvFft6E(m{O}-vj$#)dtHg}_z-25f4C(fFT++&o8de7{`w!R7ggPf#g`uabHhYU+ zAkpXyWkblBPC5sNX0kKMoiO&hWYgnP-QO^Zr?4Am-=-$ zwYa(Uc;N+*C^jSHfn@3(La-YM5U?c%i(6170;iJ753U||G1%WFwsv4Ob~_mG&>lnr z;eoZpnhX&4ub!(OUu`jm>+yAORA!=jjqN9D#IsZwoXV-_v!@>*@8X1HbpgHgYA`U> z_5K#w>wIxuY0UwNmK-{Jn2iRKe>!dQbKAX9)162g<}|{mK=Tj^6c0U@saPl zeZTP@ugyRBo}4etmYYtdgm2A(%1w*1Uvj}`n+E~WpL}Wn1?-pMz}E=1hj7UULoOjR zqth|0t<3XoiEJe-dO&~jw`j%h-T)SkKUvlj3aI;w77CQ;&C{Lr{(iI3AOB?%@e{L( zjLh*)25XZOtMk=~UZ?e^UVryi|6Zgn-%LuYM~`=F(L~P@0`}sH^>GRv)L<%%ju%*O z7jku96FZ2%)*;u9LCRX_um*uzq=w0y+#}kxDvlYAY-+d5wV6f9{np$IyQdsr#>R&$ zZwQoe!S6$hDEV-i00ETkv~~aEQ)k?%`la|+rg0`nKOC{U-gaJ^@A&||1Kgc~`b z$%LHAhCiJv<;lTBRU;0NQvXh>Y#ed98FpDda>uDGFaFk=RaT~eNAy90)pIZNPiw6! zW99v$d&>o$Te(ZELR+ntd+TD07T39*Vkw~os8z0o3@5_?Nmqu4#)b4zLq)-tzVWS? zdsp-;U)Jh9BbD zsUSm)By{jV^;dmnhk1#L>MDK~)L^)p(%UP^s=-#Px;nONraIyKtlXuS|E6HQHX`e< zx{F{UMnb3X``%d?7{&YHG`q1jS8*FOO1Yc`K@dQqg7+zku4_#NleA|>jWip0_o===6k2$l3 z=>oOd=m}3WwWgwP0bzo1RYaU6A5NuWrD#^s-T)uyxjPF|V%CY%QH*6;z_Gcz(I(W( z^cmYqG2f=3sQUejb%1M#HFa{iO6EvA)=;Fa&rx%&Dgv&;0DcAO`}#`4OB2s7F6KV& zNa~r4dd{*(gM*&Aq8z^+wao@{tbeN$6YUzlO6v_mMD#bSepi-W@Dq6fH$)->D-HE! zR6&9j!JAPF!PfyH33%QKc$i7e&tBv@v9{>1{Y@v~wCPZn_t=RZhk&ozgK<2*%k>De z>_H73v-I==D61Hhvo?(eTW-f*E7{cfHNkp0Hr{g_W&=&^(w6ba4J{Q+s1!1?Jw)vn z2VIhbJYIM1_Z$O1Sgn}nuV)^$(KAFumawkR(g|d!cRGKYAoUE|YjrBAJu@@& zLfgry=@r`X$&G7UW*a^7kzGAyWlOSySuURGOwi{fQDyGPbzObTVwP8045r$fo0)kt zB6$wc&T@r)4n}OVmGTZrh$hXddzr`lgJxE$zn|Z|}dAq5U2?UuM;=Y09dSnR%+J zYNUDLT>5phy|b^Sc11R!&LO_s+42!;EFBc7$f!Yr_G_iDdUl>^Kb-|luuaHu!?nH} z55Z2Gp5&B6XO82F!K!^Q-NqIASq&xU6IC8F?0LEb7A(x3IO^EJAv-z7z^>goIOrC`(${EZ zmiFV#3ruheSv?PhYYdn*tlsH&?fi~`-E_?ti)#3f6(b`fKC4bqenJkR=#+c>EVbsF zHzJB+r%s25%XDmcYc;k5pL{r~Hse?FbBIOrmh`G+eLsc?ca)j?=-%2}%JH3uO}b=d z!1*1xbhC9pRyPbGtzAa=Umunoi4Ij#8rDH!w3>-cs~PNXHqLUZZZy2F$6vA%(22Y* z)x5?ouW4?$4ik4%6SSG&R!{b6_aXC0NC|ySa~}A%?DB1Y#znQM0L90rf3ZXZ@`^Q- zKJ>}inGc}IDT1xcW0tmJNZNLtnUSwFP56{Ri(R?-`?u9X-54iLt2 z{YDK>U-Q?P6&RtZsl@b-$KqbQK+2=3Oq5?3cQJ+nJ_V-nisaaBx`*cjpN_i|kA$xq zYq&xM0B^8B$>e8Xup^K`uDt$={|A1qJCM4$`jD6443 z_!XGtV33Ub9vT7mYtbD{n9}BbX}|2eE-y1EF@zT3T>=`6e`lnri`lHEh+yd4|6ZBp zcfZ9U7ELcRs&6x~V-(JjU80vu3~if2t<6%dUC{|(%$la>dNwX+4 z4?xhXjZR(}z_)rvIyL5=ea#_m_>?Df(QC)Yv%xFAHkH%uPp_;_7lh(J;cH3tGW6Oq z-njHPlkK*B?9cubJ<0Kt+wEhKq%c-x?U+$@O64{OT>)?X zpPaljCU(24D<~*<^aiZpbqOm4wlF?ooAaj(w|W~&M)Q@ZrWaoCJ@1O1Vf*_|?Cug9 zy_dp*DBeV4MUh14{alNir-qLUr%ZvMzp;!rjbCzTaB=V$(>R*2K5l3M|D5w$&}Iea=%RJ_a+*>62(?;uvXPp;CR{u6ao12` zftgjBHoE@){PN(Y&sLW*S+05PuHnW-q2;i*^OrvKyf8O|`od@9_V50H=gnS0!5qR& z3>Nt1mW1Kqa~vRM$te`CuV1xaV+EPbF=?OaUA849EtsTQM#LRdyobmO`9*F#;${SW zhA6L29>6+-xZXy8ymS8_VlgnFq2rq-kYeN_hon*Wni zJ}ju(UkT-1>QICXic@G<4sc$stm-pZki|Sb8s2Pv?fsOyQ8ta)i&qbRpoW3-WXnTF zcgQO6DBs8xVLmkZ3l5FZrVvBP(a$hBX(Rx-mW0(tYThBrV8snBzib^njKtMcN#vfr zNFPe%ecK-_>ZM=vMiU;s4+GGsCxzra-7>CcL42?4Y~&3Mv+$YX=FMVzcXx^YdfOo2 zQP6>jJ_=tt5!+OfniXuV9i?pL6|{d}eu5Uer@y*kJk77>b$n)Gj9ftvhs>ho;v@6 zuQf;>(BC~NbQkSo3u^j8#*-F@oI>bkR_8R%G_Tad24B~YoM{%yZzsB~()>84_YX_> zd7ex-a(_2MI)qeF#t9#-N5tc;tO6dePba$P)jpR1-4ecWs%b5`Y>_N0$#j=`o}(wh zzkmAw?i32k0?s98?saoRMn*>U-gFykCk5{2YzXdTk_9^SfdWe=H9t~;k>B@neo(S`g zJAaJ~_z*EMkxfZysmJen5(BTgmGYN0v4?_uJG+}P=o1!Z7Dc6n#f61nevE2Xett_y zPDu??nBF7KT8gCmGDl37izw1wB97aLceT^JlMq?1x#Fh#yS66c80)2qfnsWC50yba ztGis)u7}Jszm%u_x2c~yHQ~EuueuU?YSJ;!|B~}1(N>f;nLG7)&d?ssDLRKCXqx~| z2OeN%A9eTsmRz;#D&dMxIV2k6Q1bF(UL(061sG_v-Pefx@&1H|z|FWZ`xj@NkrHNI zMo*I>V<#8_WM}yqKVpeSZW{2*)!WEJu-YKfO5TG!%L zRUC9w=z3cx@@`>gJ=+`Y>G)K=z)_yrOnE!Aba4DBw_%3-CRF8x>Wj9z0#m+$Ah^@F zscIX`SI3C!_#RiL+3y@2&2+v#CtFr{ZP{&|E7N>5x=OX3nSoNZS`FtDUn{h+DM$P_ z%GmShxNEfp5oNx!;|Kdqn zO>lr}_^X+o#dE(AYTU=6Pi3^WK=fR0J6Q?am1Bap`j3r+)BobC>8`_Y1fQsra(#;mSEB z{t~B)%Gq(PKO&Zto)8}4uAXZ|R1P5KGicKzxW)WFu^|5~@}TtKd=QE96Y)QD0Ds2< z7ep3oY*@LE2*9-VgG}?8BF%MPI?47SiRNIR#Tr4Wx1|)8}Wo*?2|nq;yH6*Gt?Uvky?F$20_3Z zZXiW4@fVV=Ku8-YC=hs|tufJsf;V!Fr{#Ok@e6jyvgwOv9;!KukLS9MZPGGgUQ!XlO`w3F62eD`L$3m@ZP`RIp^ z1~GO`$m=7FeKtsRONQz5W;HEM&51(wI`z^~dt%S4yT*``H8oSSGqazT=1;@4WJoQj()aw8G3@00B9@gSndeDm|7Py(@0;7cNkeWZ zwnrw}#*o+i(m)ihU^zfrlp;20lLWH$Kr%o&9Xy)3EYx`GTS9r$&EzteQs0<|~2`4j?_+j#7+EYtQPC$KLsC(>j7Sp5hJnl5&eQFT=P z9Av?Ym)-KfCsw@4O;{iG&{rGTGFFiM?h9Q*`|fBWEfM8o#_#?Y@E+8e=EwT;K~@gweeA4H~7tMvPT)Wrj=~U zd&?bk{U1gq*6&|t4e}Wrt1G-z8cO$sI_nQrSz>IsLCP zGysIb1_rc(uHpz20$7@w@VOhCRcQLkegy>y%qKC~q%Z%Y66tFxX*EnN2~W>3hZ72T z#fhk7WqVzW!PWWj$CmRti-Kovm#p`m6qNJF{hcQr&zGuEH5VF6Fu&e3GB?tGaGB}A zyh9kXNNEGOxcb`oOfSjla8BKMhE@RF-L4i@zJ<}?F-#NhA;0Y_#Y8H()K_tn9VzTQ z3>RrPYZo;45m@tsO*gc7YAkNFzY2uNklc;WRfmO=d7-WlE>t@7#Z@$ud7KG(rTH724S~n?8-^yZI zxvUn?CfTgaKU*+9wLF2_U$Iu(_={RIbANWX=XEu2(lgxJe9_(bk>AYV!?LrN!oR@& zz=6sYa~B`aIND-Ynl?~Qf|>BQ*U)R6O2Mk#HW5*fuK?0d!TD61;j0c7KG0QGq{eZv zyLARsHq8eG1+}+}iy}55Pz#zAzVNP~0!^Sv%^D6K`OJHfh*T5_^)-5YxNs0-vN|aoF_AkGDFU`^7G?gD^zq^@n@p?_pPL z&x{nnucbzTCFi50Q*^n(!Rt>KB*KF&I6dOAOD?O~KSs!E*{m=Yf|!FHoz_Wn5pwhX zl^Yy9a17F1U39pI9u0vY0WQm_FJ3{_u`~W5sysooPMMz7 zK&Qp!yTU@BHZJizn+w-zwO6pRgb6G4ELq)D6$#`j(-1Yg z64D)=D6-cMm)z1}FJ75x=1h&Nha~)FS4- z6bVShY~MV?&nL5x>S~VuKouRHV?kk$2r1wX{g|TCsx;hU@i+357cueoSbn>K&hfiFdtGXO|`~BVz zn~+R)it9x}sPG4LinXa|P0QzBn*SBW9+)IjB2ojf4tYz?o`mF7FdpOKe3dB<+HD|& zJPhMmAg^0J^K17BA?4EORnc1r;W!taD*DtbbGJ+dF$En+;-GryI7Zeqolptg7 zF6#&i|6ST4aVGMqyh^swXYD|tzs7U_I#Nbw3vw#OF?Kd?6hx^vYRPx6@8ak;twF}^lEW!B8%;>j_;piT>yVw}p` zi#Pl&sGAQ4XNP^`3o2ag#3}6Cl%)Z%BG)M>aF9gkkv_;%cw4c)c9LR=7n$({D2N&dg_vUx!cF4_0ml+U;C+))Br&9#XUw^&r(6w zqid=bEbVQ-oNv4HWxu29{jpb>COCHWs(}dNc&{a_~r?L1Gb2WECsq{1(IYk;d#aFNzF4gu`&Cy(6(9gK1 z?;N?YD`k&~$peMHP^>x2z5sP3W6*BmAEJZR=H~`-Le%5&|KLG19WEgQrH(eRMHQnB zg5CxiV25?$zVUskGLpA+pFscI2=Z1?Yo)9_LbbG_y=<=(KA5@rJQkUo^}N9F#rW^# zBRlKTfy)sr6O4f3jT9PnDkbL8=N#7;kUug)S1W9m6G%_@_auf~T(UPeaS!ScM1L?z_;zxiiK{8MhSp zOJ@mO@Lw}WQ_;|Xl#=wUfO@iOa?y~K2*!Rf(d_T1S@ zYy3S_zww*6XXVkJ+ReCS0NZI@?IzTkWvLur=X)w==K+b6_1SFx)37C!ZmYrVHu5c- zG*T7s`P9Wb=QQRhvKub1VFMizV*WC_%Z&wdiM5ZTjP*S|L<_Bd{QmrT z`y8H-m*?@ZIMwKn5DjXbLs|ix857tfEXKaU%R#{B@vTRmlObZ_5{ zd+S(Y>k`KA~b;QZN()ezp&g3{8)-JpnO zH@`(!p{qKf(1mQF6R98{(^&w@u!m*AEfBIYzEZ~}aP9N(1?Kjs)1r_x&H)m}C!TGb zJ>OP_CQAEm?q@Tlcb{qCKLqcO=$Lyk>(p9%MHL_jg{u7t8cP zhFkl3m;Bj}X>_QX+nIL1&;Mc+N<+)BjD?dV=31T*Ks|`34_1epl0MJ3s^MuGlBj#uch$)c#n7zM{gEirtDxrzdx39Cp!urkYnQ)SH{x{$Jp z>;xs!>nh1C)ALN$Qjh(xT+j0?ie>)uL?3zEMr}Y7Yj&m%Xd-fGKbi?2E+>FWHP z=s(&?D?50R+gF^IN5{mZ;+Ipf#Gz~!tPG=SmH6#aCr`)onc=bDYJ)Bi)hQ7+-yi<| zuA>%;oL5i}vV-fD^^imzWZO-CyBwp2&}0S6VN_q71D1x3MCYo13nQqQtIp zYS~*Dvb2mzxZc1BghpSQwHf|d5^yf zj3*=zWtO3Htt7sIHoZZ%?|aO05^2=BC3yNZm(CJDMYBMXJkCGlA7+7DoVGrg=7i8a zw;X=8m86&{;eu4CCdhViW2>sFD%f+5h|N&s4KvZmOEA+6Ptlg_UXtd2A0aljw#bT0 zF#N`SE7h?l$^e1tdW__U1HKJT#=J_mXxQ&`=jP`5x*YV?kHhkpi@kvPsWO~`s=%%+ zegV>{Mgt208a>)Do}CX|%s>gkhXlV^BMS5?Z|I^dzGCQ{LZEOm@e^uD%V&$vzxFQX zWBi1njLNv*NHZM4*vQ~hs#W^G!cQ=c^_}rOoXnJMx|M6ce^%iYb*>%TNk`RCJR2=p z_Sp5^PXG8G3HO;}5d6ZN<)cu-hM)#TEBsrxUs7^7?Ht^%I~)ZN5)4~|q?n|;zeh$- zu0S3F9PINHfyFK&v`~(Y*qvgZpnfDau2|Rjx1eu`N_>JAK5pPZzmE z`8~cqS|CJW(KL>o|7fH2&0{}z)S-i-+hIa<;5nM@k1v7-O(>DiwnkjHJFB=Wb@B*C zM=^*T>$w~rArJ^f>^k6e%Q3#0U70=z6dnk;RzVpG8GPG1f79-lq0vB*G$U9!`RIR1 z0s{V_@WjGrqy^GW=+^)56IDWqwbM6X98jrKw@OMo-x)`sZ0%%@ah_9AMg`Lx1=Ze?!0!_Ik}-EZo`c@u8~K&rH=9+?sR9bR9(*#tEQQA&Cwh;9U0U|_lhPq2Ci`) z+IvCcjPV3@EKbpI)cGq@;pl^DZR=)tHtkmF<;mzg5o5$1a~nb>!~zt`v6D{0;E+Qi z(xr&kDPUNT$fn5aaN*IDa`BlB#aANxC>0hca8u~r9!PdgO8rY-eo-8<_mUMx!Ji&_ zVV;Dy5EBjN6r&S`xX$K<1@F7A`mGC+4N4dzhPO!SM%T<@r3IyB7NGpOZ2L19^*Mv< zRefERg{59mw9@%9c)>ZG3M+y4t!{HTv-F`GvP}Y`B&1~qG~9u%*aX>9_wZ_47L$+1 z1Acz`<#hUyZ59RwR8^`Dgs_$_)dKx@Um4mzZv(ED9q4iCF62@)WoBP#Kh5t|jKRGl zyiN+5GpEq~^;*?g4F?oj2&w0eO-q2F1MCm%I8~*H%##N$$qIcSVmO{0z07_Ta|{ir zY`u?m3QI_0AFCn&`G5k!oIuMvE=2}eaP2dC6?;Ktu2{bc5ftpr70{zRc@yjwK|#LT zJn-nDA%IFDkcwJAOwO@45Lo?SPT9)b+oa`!SVteoj zk3su(9Ww1Rc-hql!!JS+&#tN-u214FQDLZlVw@PCA`0sfYbcY8mc#)TQy0dsx9~Qd zt;)$=UK%HneY!yeG&%2nXk~l1sRwI0wo$3)0olLLaNGb z8Rys5l*%k_jD;;7{E&MJ&JfaQj zZf5r{ZUm}4Z0Ijw^fkeq9&^ENpaHa75JAR-{|{!ii1Nl*12@D=(Kn) zlx6)6=u!;Tf+dl^GKk_i(%E7fWKwl>2t>Y1H7!tKnC9PuD=v-#y0&Kml(zC~DL}pg z)A&4eWK+Sq{545H1Ex7wdl|dHbtkg0bJ)wvv(dMhueAvHowtuSsl+?AT(3f#Zj!$j zzSGJ&GJ$$^FK-~9-kn%uxW8$lPrW@A@cKh0tn0j4?Ke>xBnJn28cVTu;1tBE4>NfR zD0?w6VoY+xaI*XQHto0U;1i1-rReqFEq>ocl!R?0Xc12+?3Jl`5+@>4BLkC%AW1Gq zNxv%&LAO&Zy86*|vfi`oayrEO(g$*Lp=t)5#nu!!fwb0HgdH$4k2~GBj8LbRH1^co zPdFXkR~<7Yc@|$mm+z;YJQ?`m*?PZXPX*vU%A>@F_7U)SO-QIBWRDB6=0^5t74z^y z4OwdYh;pN2l)ebtVydu$jzZWU`5LDFLDQ072>KO9SbI?xgrgP-A(lMEz9HS?-;bb_*brJ(um}UZz@iYJZDKc3~Yu zdvV>fF~NxKziJRRgZ5VY`||mPrMC6WpDp30t#zlHO^;>glTCF5fGl&1YM;c=9;sjz zNQxbdAd9B6MFrQ&Cd?LsI--W(_)Sn8PBUO^PA73~fy>`1O z3dmry_|V``uG9M09|cGT>7&P8Rn5Mvk`z}zlPX$SMpa*`cV@@_)WjEEuGTf=aw4>_ z=VlShqEqL5(#|P-R~}iQQ(DNFI)dB!p;Wi-cuykpZh32j#AT!L{%pvk<#Z&~?cFME z>(G~;>lT|YCrzKp9zx;6iVS97TPlmQ@$hrJZlZE|ZU0*a;G{;_MESHSl>g&BH$a$R zx0Sr4!?!h002<%~02mGgsu}|5%%C2R<;Q3KA!UlJ&wF&8SEp-R&Wro>YI<6(dS|~2 z(`KE;YP~5{!?4>_l%A?$;=h;sIUeGr%wTyVup8nOb*4TbV758YC~Q+(EoXL`C?55} zv=03q3Aw5C(8W1`?=1?~WY6e%6zCRweZhP2R!CSQ zC0f(6HxK0(J5+Ab9CN* z>aPEgIi{hbvs7(9b2=iN>b{#f3&JTfrfT){IAZslSh(co*wD2OiN{M+uO8u>OjI~R zi4qqBIrGXZx$#@tj1RctQmDla)EkMDt=(E!_ZE|au{UA5x4YHyhu1wOo*MP1%}28h zo81$oO|)|e;hLYEx&yc#!OX+b@)LY%yt@efL*%xXN2-?{MkF@V&vb388v)ui>O;Vg zIAJZhJ$3l%1~A8Xkjq5n?RlXUzLY>3`)YrY9jn66JL!J?2gJ1Svj?iZ>eF$a9 z7PtsKt7^)ucFi2IJP+AO-cZzj>4%%h`xJ#DW+WMk*;=1E(wS_}k}@=1=RB7B!sSj_ z{^q97`sTVv=+F1Auw_M;75XvSuY+ifoDx}RB6tyX_^pfzbQaJKiy5ABSt6WNY*QJ5 z#MzQ>or2vSCJ*{o0`IT3Bm5z2=5HUtgfW07fgdZa8?HoX0AKr_erL;n|LiAZ=`>|y zqKDLDd!U2VzN=l0^m!hD%v*%ruAArC)FRMk-!x-chkg-*ybG>H$vE{sHi+8TLa!BRT`;WF=YFE7}mWrUX-eFF&Reu z=GZnd(!%6R;5jqj!G>)KM_~Ai9G>P1MFp@rz$jvcbp>3`7z&i~3HEIJ-cKKBXIDVG z1t0KhN_rY85y*}zj1+Ge-+na&zZdMr08vz4RmCO<6s3*B4GU{)k;}$7Db+p@4hD~& zAC0%wtKC8XVsd&-d})_gVdOCu2-De1>`ZHi~k z2bS6=e_FHIqQrN!7fw;V0-sVwbIg6V1n>2y8nKZUMfWO457{Y%u`1Zjb3IR+@srP6T~&?QVYA?H_NDMv-=Y zOip%d>?I8lnlnZR)dq^maKsHINo1iuMHQ<4nhnMSPt zVD+=S1e`Az?1UkBCNh$B)QwCirZ|~5BQDeIxx-KciBjrQU$rCmm`C(^619!4ApVuX z`_I{JMxfdGao?r#G*b7h#@pT+B4{7f=u0wSDIKPjaMS~p(N=`sAQ<(=C}yC+B>12& zUXxA{Vm#43_e<9VKQ^c<{gc01ae*D5v-)C4yr;COmD@+g6{_<^mC%+c1oHz;=e1{ApO*IE$CzjWHn$viHW z<_K!|@NctT0&#wK_QMqtNI;B5pB>`(Ujj9NTp1D)lBIjqy}lXMdh=BJ#SS{Xtw%^N z+rtY~Qc|#GRWQj?gdG`T=Qk|Us;o4Hs1Jemy2F$gK@SD|esXPzKn6O+zL;|$CISZk zx!Bh};(1m4)@-FKT4D?1iQh@Bx;jE5w17S+jjN@L z89$s#w}jJE%p*xskKFrj{f~hT7u@bI1?iiOpthCY&yyFy19{s6c!~r{)fC->`w+ll z7_y5Ud3p)=XkX4eF&@}DMaC4`_R3MalA^C3yKLLLH45IDI8Q24zqUIYdQ*-z&xMJCV zRA2hjXXC3DE@|Cthwy>Rf#tICh!*hx!leie)Q~HaU%wJ&SHzaR*_mY#j$H{ABKX!)Wb;5r6X7 zVWfv056;8!Nah1k(&o(w1oD#9>&6!A=M&@8rLRg96s8|C@r5x}A|7y529+N47*bUqDRUw23dD z@+|YxdZG`rq=2j|rSxtQdK#1@&`){5 zSQynn8{$U(1(wM3uBR9)7l5MJ49KVfsRFX(y{I=x%}k0EOGcc)QmgCgxHvc{UxTbb zHe2e-^RwZkZgcfpuj|m-wVosAD`YPcXmfRPUb$$qX;|@COtlYCE?-!Z5tmbu+y39w zSU99cDPLo+2)(LCso;Vq(U`^-vokb+JfI)ek*Ap;3kSd1k|8Ya03~6fKxdmaC~Fq zPrZHpw;^C9D)Wi56A^XDK&Kapzuq$Spg@P!F={a%Qoi1zuajD+TkW5faY4G|ZnQO= z3^qpa?AJk0ih$dNg|)N_5D)$jV3&W&*3h95pG)_xyWKnQ2I-5U*>*fl6h7?}j&E?X za7;Y7b2~bjx5y}_md+~{VzR`OT$V|}>thN!FT@A&CBKR_b>w9j48jiIo5KTXv1>Dp z*jkDsLq)9|Ad%~y9gKKvhk)p^eT%cutU7^($_ETHHBUyj>z>sw|NBGtM${S9=yW}@ zwuW+)q%0jgk6pb84Q}k^8S2=A6Xxeivf!vj3QJjlQvbXkzm;AeX3N^kc5iiSR3DAc z1Wa}?0h;|U*uhFO+|ydQArVqa%|*!F9u5aIfEIw?0)B=CA-P8%&_Ket567%XY@Fkp z%&}u1NKn^WnCDsMhO%&D7FYSvN_t1LC8+Zu*DvhK5(V+$BTP4F@btzA)<`Vc?*zWQ zKe%hXDhq(v&L4SQ>xSm48jyQLw0Jc4bU*wKmxHemvub{?Ka;<5hPoRxRC`&t648Fu zjZpuW-~ynE6KN89P`lD8zM(e_c4R^6=$?=lR%VIK&CUHOe@i-FZZL8Qv1pENS?^lB z%duPeL5YaaCK67pU?%%lFeq9-Q?b?Iq^#~r7i*yS@*mlG_W3k6I*(_>5DAXKhULBy%5Q{a33DTQZ}ynJ-y#0J7;6%1buRHozZ%; zt5#-Y%|~xY8me;IoG*IztrV#p1??#|&07B*S^#HC%gv?OlZQ}*&^}Kl*UDC(RDOPg z8=ss;{j4%#Zn|2@I__4ti)OE^ax$cpyFwXj}b=}_Y8@4SE}4iG;2Ww_4R0CCg?T@eLG5&xpLcz zXwZiSNjM;nBUIs3oNA(w)7G8^HIO9SmZsdG2GZH)?#le<@e4-gXq-nBcFu}5$v-Mf zNMv+m8TWos_xUCFER22_iFHZ&tu`h!7h+*&EUS5$d?zs=C3h-Y-|DdMfY$90l9b%C zwlk)SlG36-$b5vapY^S9&NA6`%YxJqO+QO}b2H5kV;$w5O#N{kcELW}hBBVGu%hnSrdqbc_tIy-rG&nxcl z67O_>{dpJuYx7w@3p;w70#j(~tuR~IY5(!<)ArN$%N@@2_YoFTS}(og!sNoW7t zKbmXPIaZIE*VeH8?N;~Unb7R+P?ldXKe>{um zZ@|uK);4*oFAo<ok^*iNoInHl#s z0u$_KwDG8g#B@orm6Gg3k}Bkn0d?k6S>QXlULIj-KX2aEpUgIi68f@IL+MS}R#8*m zQX!S@b^dE&Co5(Jb?{wUEv8z>et2IB{VRbj^4L&PjP&hoKNWRm$mGuDX?8j6qa*G< z*E`Rt>91AEVVl~$U-3QTva?N0nBZwQ^=Tgx*i9yJI$9|lO$b|6;E9UZ<@i=m@cU1% zf3Bp&G#Ej2Q2m9u%!*&XA3y9J^xRjYugWWCA0MgQVsV`*vDNE+V>CMUP^or$E6C^!&wYWxMh&Ljg?fkeixb*6#o%g8dH0ewK?L(?e$vTjmhnW*CN*4Eo;;3^}@7`ORtA$dcG-KmT#9;jeKM45L?q7U3pmwLDD zpzZgUnq{b{tO<4#FwRW9fyLWUFM@8vY zT6V7~^u9%Sqm)l6#IqgkRw#d)nDukj)MfowJmqI=ri?>n%03PMJex^-%WI6G0WN=4 z++VCMHt*h5yJ@MbhZt8Cp{Nsz3-Fimk%PN_{dO!U|6{$-_;#W7LM9bPe;2KS9So1; zE+*tk;p3u)k7RTZ8O@VP_i#4GN@~&RdxZG-BO;$uQ?0@87v%ifeYi=7AC%VXN#>W z#WI^cQgOnc+e3%CLzhU6X2~eHlaz|@a6ff&c6oXxJWb@`(p8C?aX2>pwbMMhj5_e_ z*)s(~!U2nNY3;{-p)qN(brxsX`hGf!BU(>>G#Z6L^qVZsqC#6{jXB4c>&A@LlnJZW z`gN~{e<14-I9>K*1JHe$7IgUX;%z1O;xQK%DX$~+VTCrLMv{D?=ey$e^Qx~^Lw`-zbF~pOyhnc;xZ5xtfRO@^mwDbjKXmipUVp! zl7P$QWpK?s4UL&6D-1;~jh= zO2IFjdo3@x@-t^{EwkaAjJmVVRYG*BHl#tYD9Dddpt&Zf(7bhu6N zrH+Gd#sjpE%IjojjYTQ?K?) z-}9Rcrb<$J{Z3^wI{e65YdzC=mU3i#DT2hnfcc7o@%oF40uA0va|@wKl#KM(^1c4^ zZEnf&gbso;hzQWEFcLqwVp})c@MUD&kB=Y>9E`@!+qPKg!LEbRCstYUB%iB{Sh*)g zTe(t77;vZ^<&_DU{77cf>L|J5-xzr~NpVMNB+1D?P9@9x6fWVDk)w8^SK2D5gZT7Q z$W65WX;)IC?M#DGU;EkI5Cy_6&ML+0U*S0!V@%Cnlt$p~kS798s9A-c6M?E#qnHhvS75 z42SS^yrV*NQRx+Gka<|>cGPFnEDkD?(I?AvBe^(`T_emRR#%N8NL~)0*r+oQpGTE_ z2-|wjV`FnZN_oP?!JHae$;(qF=a2lw{6_*OPk4Cs16+x>g5sR6FJ7U34b<{!IOkR# z$a1rc(GD~?nxN*VSEFy6=IXS9IEbRm%|Q1k*VlX;HjYXcJ~Uu5gs#HjlsK zjH`Re1$vBTX#E*k@+^;->cFCBW(<9TG<;k-Kt}4JfKweB@|!XC+Gf4~OG-*&lxDAS z6AJCFC`xgI&Sxo0$Jv$qhhnpwQ^#a{yXdM8Pt>2p024erM&S1R()H-}-kaZ4`8`26 z@h`SnsNb2XD5)9)aZVTFjwR85OtRVYd6xnoHvwUt26f}i7-;GLp(SH9TdLfD#5!@1-S-_uC& z%4hE5!w<@{u3H#C&D#*-wwgwhnGiAYpp&vWJw5ndh(-Dv-_5wb>!U%BtY^y(|7R;^ zRV#i~Pa1i*J;v3EvM-Ob#46-#KQ8j;LbbwPa-U{VnG)jOEU$oRyaQT}aWZe;jw%=H zII0^uOaz8__>XBr>k}W_$@K`_)2B){IIwCZYtq1I0Hu=AO`9F5ni8Ht;xXRx)~Y){ zuXmZ(@S=!=Uk!)}*4INv+<2967Wdlkpk)u6wRf8BPg&iv_3scJn{Ts+Wf^b9ND@4Y z-qAez?vpK6Mqh0o?VpE%+kTxeaecZM5hm+agsr$S$mgz(5;xZ%H1Dc3vaRvSWr28A z2%hwGV;n_oq+rIxq(m}8(ucea=T_AM9?j1ie3#ZsFfsiqp0} z5@Yx@1+QdHQ>}#N0Xcw`e+a!a?3bkXLhUa=n_h;tXiGd#nK_yF@QavwDo57pg6-Y% z5}WDC(^tN)r>lt**nIOeR8)>w?Khko@^Z^?$Vg-Ao(jC6a=YeGNZNEH8;OmrJoR*_ ze;t4_iK4<2VAd2GdKh|W|4gJ;icOCiDGm)cKW~ostU4pz?<>=}B6XXJf?vuCy|y|U zn&8@eeZdqop#MpR*X>Z#wSQLDN=rOs`SlGytp}?-Vt{^ty!hB~+_yd7 zi~fLcLK1!*6V5f1aMzJ@%>W`*QBeULpe#o!b*Mj?eZQsMpXTy?G@Ij_b6ZR2lumP( z9~`o8L@M;*3@5*K27;)@d*0Hj*Wr7f6iy^0c&(%$AM<6RY3ks_B}M4Yq}lxhGjvPL zR`bzAGGB3nI{wWum!MNYRks6f%UQ;)?utL=qiyX<4YSW}Rn8NlOCKw+D$=cg6{F*r zWa1y%AwO?>5E%FbUS>kr&MCCvd6EGll`Jy4S&e8`-}{3bY@z1Q6)4zt+UIlIMSb6A zXU)ft+p$Q*^f)S~KK~3th{@V^AY2uiEBx^jT8~=Re)V0zS|dgwb`)1(fu_0)#j;a% z=AV&e8TCEt#0yrH(SNJ@0?SUMC`+ocE99yQnRb_@25#H(XNbqslyOzCfE)Gn>fnO* zN_vIShq)iVz<;Qb*;caHNzc<`V(^s1XUjhzl2m<>EtSI0aKHX^u-<2X6oiOXX3Dp- zk(j-PJer+fIiT(4QpWJ>qh(ol=lQ| zO4s=Xe4;@|iK5@^;!|{e{icY&EiSUgbkjONNbs$Six@bVsZMoww6IDD38&On1B&UAOQYPLT~)MsIO zmwcr?bsXa#Ao=d=>q`%(*Of&sk@zysMHy0~b*B!1dZKHJf8=rcDRy`D(qVmVb$!c9 z;YCWx2A1;Hn=XO&5D$r2L`SrA7r@wukB$06c|522ah>uJ+1t&(g|i?&|15z5IH>96 za?Fc?HQNm`Tu;>vn@ZOMeFrJe1wmcQxzno`#`y7%yC2uUiyw572t6TA)Fpo-;Lv9+ z)`qOl=W;s+7f3PnT6@0iV7m+*To?lL_pYlI^D$b>{)68x6Eis`Fn!q zjdJB+nq71lHAj6@9>}v%Z&H{#yp$G0V zB~$;;XKK-F(kiPP{TVP()tkP%pNsXgRcLy3j(P{CJ5ADH)zn(^`BDLHvslo$0j+y@ z+I}A8+mBzbZ@-sG2zv5cyPq^sTdjG>n$U*JB{cXWcZt1^Fs%P`(1%TNtCH}9>Z8pt z&cTv%d&P~D-gYv!GqGXPpF6?iJ&VHv{?C=Cv$NPygc&$w={>#;q$4Mm+^D?V=p^d< zw9^6Jt*8-?2DkkGiaJRUG6z|pF2U%O?o4RVpz-#CJO}+Ln102Q4Q2M5MOe}QL(>38V9wN7tS=<(ROpXCFtMXN$;GIjLr`Fq1kcRIU}2V49H&Tq7HPpJ6rC2(9uwrn6WKPrBM(EQC^O zgxA0$(6m$JE=*KQWuI73v~pT=o7UpAiiITIja*7nY{I9PDfL)TN^e|h8b@xBn!tAn zLF&7mB3>(fumykNaqNwP*!~gPO^xN)(6E}D$i=6y1|MLmso@{IMdmdy!1LaR??n*S zCz&t9sPD%w=Y&{&_NWW~oFrQ&OFEhHVnlbLWV$}3ASL*MB*9{^^gX(B&-ZZSjQdr^ zOcqaN@slAF5m&Ldv5k%3pcJo4KNJ|4uB2hv4UccQA>CI*yfxZE^79QVYMZ|gt%|d9z;*; z!v&NhC(&`nmzEbOzw$hV!sl5r5|@q{ij!acu~?Qm`(~vxSbtafb`uqCV{&QJX^+lN zuk(EIYc}dbax4W@>a6-4Sc-i>w^}Hu1X;j`IwI}Qe+n>AGrpAxud}=vSH>eY+4I`Z zWz>WGevL&sj{O5~Yk}u7B9W4jci*8LA?wrtkOi!@F?ig?neuU8Oa|Yg=D34>K*K`8 z(BK}0SEKZE`PaSG#4Uo(h4?FqPrE*3=sn!qDN)Ef9MePw*^1D=Yz2PB0EjS5aaxL% z6bJfa#bQ74X37H*5`G?xSDwX1diX{Hz{dlLAK&gLKD|pk$63zWci$KFVdC1aV`RtV z0pq&qZMO!u!otE^1iYY!P;ae?1*uL!yMy|UD@-F@CM~mWMON{LUf0<)?(!)g&x`!xD@>keo?ZP>kKf52 zFcD8IY41f5uko{M;qa>-m)Y-jKaZdR!YNA~i(wJ585wR1w}?V#tvWHUuz3~BiH&Qh24&Tw4`(>q*w+JorutSrR>zxBa4 zl0eV3L+;P0vz^1o=ZH>5vwrYkAX_%2BFk#4Sf9V{(JPJCdIpD2dbdGQ-WOYGSL02s zW6v(oT(Ros2xnY8N#~4aL;DRKRq^?cVFcIrxR7(c!sW7_1Uj!7L&gD zfefG6L|tEPt_-yI$c;ssvFX~gOKX4njWR;D+41WKG+UsxI*d{)kG{SpsXboju$wO6 zo;rz?0s`Tj?*5*ysQRUT83Z0CjGCHKq!?g1Vwo zMFiq3b@~cNLZkM#&z_97pIZMzNmtou+!F!`ay+SzYp2G3yVgCVOOWj`Hp#1t8o{o&yuBwWh<_G0Qb zVoLC`hhD4Bn&0KcV?x8hPp@STKI0kog-R+MXbF)+-)Xo|LE0d0ukkgS^k|%9e=PRC z!+Yo$r#Jg7Y0-XX#^o_lmmWOT<@^WyR5nw(X9tOThDClJ4#eG@a}?y(W!U;bNVv`( zNJw#s8ICH-dU%^Wmo4w#jf@48d`ByO?MR$_KF(Bx5&FTvp>ht* zyh0K^d?}mNgjnm1#S^MrOnw8rHyqD;v>TdAI#eF63fEdq){n+LR~H6Xomz%{Iil*j zcOQizR{hM4wN^uZXxlS!`%_fXQ`qz?bCl1MBTv)I7=uRJmX3vVVo?ACID?$e>`aC6 zQW(Zd3TR$_e-4(vk#KHcI|u@dy|48 zmK9+2biD0!)+fL9L=t8&TjAqVv6rl%vSd>o(9#;9ZFxApi(*^`@48&`~>)6j|CrpLBWg2mcIL3sl ztN!bV_(ACYGx$@+OwT(>q4XUSzhnrIk%fY5bQVO2ar((rNoO|Tu!CigC!W;uoH{aG zx?@2t`H)Tj>_Ah(unR78P`&ts57VN)<@k5{A;kBwtX&AF%Fjpn=0M*@?ucArAfiyi z&I)p5zijvbeQD9*sU!z!~+7HD*r42SHB=g5T`*?;K>9H3G1-M8sm_!J(F7VHo zHpp}Xk@$88KC)2#m=i1QF+4|%^lXUH&jCv_ZuLC7b z1c|vyI`Nu_l61-CP%5PmBYtlzht2XmFgid`w`jM#L8W11n<{I&Q5i7)97TFWRgy5DxviWA-ne1Kb&+-i&d$$Pf zosmcO$7UwRyT>EMujQqLx%NL2M{qSF*bp}#eAn10Y=zC3*%-lp_&H^6`s=H#La~B0 zf<<-foq5YR;)zCKKM~vMtOvj0)TD=Z#Hsaoq4P*M`i*TmmckljReC*1yftLqf!nYwJaQ^)06lfr+wt)wx$MGG`+v6GxTF7q{-(0G7aIin}0mD z+ul~r80n!u31$spG{!-^NWhGjdek5pzZ}~)7Me{)u6+=)oU-w0bvvzg%Q@>p<;%qY zY?M|n^R?ciFjj80Z)8OUTjUi~a+Lgm7F(?42Jg$`!;IgZdsok$)uD9f<;i}0?|3!( zvUX^B{PNhRwUa%4+<4=z*Y^9}xJKf*0KROm`x4I$OYz8EycL03TfwcH?$GHary=|c zs?DRVy`($2(j0`FyV_5dWpckI12c|W4LyD@vf5mMZqs|VuVS#FeZ-`-w7jw^NK%5j zt?FTl%0*)XjV>#*pGwi~f@I)(1jhPIMMTT%CO#;E5{r3`#|z*>CL@_Mtru;Z7B>Zz zR|NauMS%~7!wMv7^W+j>*WakEo~mG+%x*sBO<^yuBUN zrEHQr)bq(*+Ie}+Qre&HvT0&s$M0owcZcsRaq_7WeMC)C@`04Q@CpS}d^epGN}pgj+zX{69olLc7=v; zjx&`?^w?oHF`?Sdif*Dyi{d~ZaP9g*1QuBkVO#q2G3YC9Zjn52H5p0})-9WlkF3~k ziTc|KTaaJv0cGS#FX-c*!)juw%vzAO;i`=LJJAAaR5fK;W)pH$n~`++rKSD;@iVYN zEF(nw3GnD$zQ^5KD6V}H=-}DY>IZ_S&v%`{=o)>3H^@~iP5ZO(DNlrUV^wXze^=1r}KXN}M+E zvWFJ(g;#VetX3y%!kfHrB${=i6r0?a;-Q@R*@*j=cF(ncod+BTMjw=Hn5yaVhdy+D z;J1k!LkCR5gEy(vK7WSr01~R`E(S`rRw%&lj6E1};b;f1t_q64&^V}mP?flVp4uOj z48nQ$yq+zSL_lcUEp2xAlVli;!XK)g3lpc|!Y(Lq!<^XBhf z9-Y>v1w`&EF+udiiUiSGu&PjgMia|PL{N4%I+{NePeehXU#!VY1G_{;q0l3s$B#f! zsLZNho-u-Bn1K-CkqH|d!?laf0sintx3p#lwJLB64CQUW%$$;oXg+1AANPA)@G zO(#TAxmd++{$f%yzlOx=epAWLcz3f)JXGPJVfX9sK?zixHW~FGzee#r9)s`_t=lWj zuh0A3MeEg0_cdY~KZx1AZT8R#^EmTkL6{3u&7-fahX!`^>rFu&{ljs##8TNM7+*Y% z^k{QN;@vIO$-+fEZI%1qKOxDMLb%s-*08%aXWx+e&^RSs5Z`~wSt(iId|R8v^G8U% zD5%g=3r4QnAEr0(b)|n3<9VacBCSxUyzAJwoLZyGI8e^0$Did+j9sAPev=UmuY6}R zG(uzw!;Sm(iYv&jeM|i|!lSf?5C%rpbvz=8mO|~8%^N*ll}i4w!ouQCf35nIvK@5b zG4Z+of$8txpDvg1mPRO=|0X>X#w1+?ec*}3C-X6&jrjK{3LF|Qo+`kq$%yv5(m{ez zE|`XbyY5LAc2rzktX8H&j$zF2v}st4KlEt51Lg}fUOgA#5n5>d4@4i^3#sY2x`vdR zi+8zMh?(h6PUbi6h==3(u6Uc=59)C3qq-U)0>%nMYIo6A@&jW$WOG&6BnV67DqtyU zg~~zxQ}b?DKcC-X@o6u03jS$ZV7*Q&S6?_MhShXv2pV)cBY__)YtepNmcq=u6M?m^ zPp?CYFK%8o)+ffdYX(l65f`H|cz37re~E1?k)3Hw<=ehP?-E8}zmE~1R<|7wT;nb2 zYACb~)T>p5F6q^BQYY=K4hiU0$^D77CALt>Ilbh%ENu``FRAl^s3TK(ReAh1J2oL6 zEf~=NQ~z$k=ogk{v8D=DMknoitC)<0>k$~?A<>1tT@ehJ=lB7B6HJ=0AzozZ)JkB1 zf;b6rr{rIs*>P^Z)r`xk-oKuzlC$xE7|X=miPV?Wc#I+WZ2eg{4>q~8R&TnZ_sP3t zQ-y!C(4STjor79H^Uqce25h{K?ru+5#hM5eq)k95v6S@PL9?BW6%IenwG*nnH~KbM z%wkaBeC`!L4uhJm3ud+XCg&Z^xaGz&T|uYAKhB@51tU8N1sQTr>Bw7MF6v_GTy7+V z8V*)k<)ztSKm07cB3c~2fTrLX%Tp;1^;*r+v)gkydnF|r>-}?~mJdq67bYWpA>gZj z0#{bWHxx7+;Mk-e&H5O`l$^Jv7i(+=IGzz2z!x!F{v0)$8hX zPUw8RXk5Y!Hc`-KZE&(a5EN-Zp`7bKA1H)M=kmp;@YyY+gKNj;BEd2s_SDk;CwOK{ z!+`Jawk~XY^u>*gho0Hhe@{v2Ufz}uW+CtAKIZ7P6>nTCEc1jm@7>MM3f)SpU%%c# z-69p@gqW7bE5fD^8E^ds#Y|vTtSJL)?u}l{pXfUnQ^xre%{_xQkFzoemZ6v{=C zn0iDn`=>d|rkKBHw;t6}Qn(3!v0n00;*BoJ*$Vc3U~%p9r9zZe&gIa}V#)>M+pcsn zz!W;q9Shx?%ZXOOa}igAKSJl5qZyv|CYcAj3yo*%KDR=h%k#~;8q68lID>a#Cbf?; zJP#-CE?RHOgs#Uob#Jcm4Z_b};_}e3fCzJJ6dAFJtm4=o>2Ys@RvRqQbGvyVE`r?S z#*UK&0Cr)U0*iE46^K1B&}}mEtph~>KUY45hrMUY<)Fpi}F#ZW3lutyu=5%*VB z|5B35G4s-IrJw3;rzF#7F;hnBO)^I6QAuDi3s@ln`~BWXD+_~4uZWs?x4o4`RaO{V z*#G_mu=|G;lzvxU9l<+BO98e7XJxG}JN#vLJ$H^fJw6wSK7A6U#-$-g;4e>bxnX1o@Db81k>y$|{>hRqytFomiN?YLfG}xLMWWBLEWBU%eOS1Z0gz4Tc6D^g?Fg_Vv zwSNivGZ2=(fI;5WPXpQ@ELgz%mYX=R_S3zQyhlk@%%YSga7D09a4x9xkvMRE7{G?r zVS)$__-Y;IKDaTAm`&?d!@b

    T}l~a1{Z`EekZP1)YF@>2Vv##CTGB-l?5=w>0BQ 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 DM$G8e literal 7939 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 tkPY~jfF*z>Ub@?P)6WIn z`~CgR)Z0N^clP)A8#`O0u)Q%)Z0+yz-s9&dMr6dy)g(h=7dTkC!_94imL)`De2<}N zew5wf=kfFPY=D(jZH4^({odo~DoAE)fRz_FSQvk!KQ5$8gn6`>(S3l%j z1kL8GwH8VTC0IagtplZ{hn7l{u3H#6ucztN6&jF2JZlY_Yw|7vcK7Mx(K+i^B90I7m{pc6~2B&7-Is;o diff --git a/doc/4-instrument/macro-button-LFO.png b/doc/4-instrument/macro-button-LFO.png index e02e94f93e91aefb49263358054c4f0415f90344..8ad9c24b3947ad4c871301f54707447144a69e52 100644 GIT binary patch literal 518 zcmV+h0{Q)kP)Fn={o2xfdaH+My{Qdn=YJ&?J zD*ylgsIVDgXcgnyI&oo2+brmEPm$Qfq_${{Hp$_*!v@m87#fR&ww0^F3K~ zMPGT^-{c=ZU$wu=`uh9g=IU;Omu7sDrnA2)NM`%}{qyzqDMx0VtGOo$mFNHf0V_#F zK~#8N-PXl&1ThRn(PwCcVG1+z|NmT4vCB%Qr!tbA)!emDNjnScl=ef{l`a+jN|m~* zx9b&nqeWSx*;2UHsHJq~)Y*$g6{{Ag>BqdoUW^vb7Gn^x$N^ zWa~0$6`@to*rgwjTsK$5`TC-ryUt=Xnl?q_BSjxXZ%$aQ2~REs+MGXm+&OHUmaWbB z>wOOc&BHZMn}rhrA3DR*X6y}3=4irB-4SMJTH8fyvouY<57>gK37<|o!fb689s?b% z&C_A>F#vRgdHOj_{^qncOWTRVz88oz?5kUwl4#hsDdIKWk)jc+cefd66`|GOCt5OU z20xL8Je~Lhr~m$Rs)@>zuAcOZEB)F_zcfWhTmF9+wz$2}pCd(lrS$LU8vpgwvGq@>~D;jyu?WMpJ~e0()E zHBL@WP*6~(r>EuREpLKP0-QC^m>+7zru0KCN^YimQK0f;T`nQH3 zBme*aut`KgRCr$P)Yl3EF%X5}N#ADgy}bWJ%5oNmy>T)k3hIBI4-O=RzP-Ahl0IYX z=hbA0_H&JzH3nIYqHs_uw0K4(^+F)M0&?pN<+r;&ilGse9~l>Wh$t*qkCiWRl9Bi} zfWSlq)y+e0BO)lwYMeHq)$ diff --git a/doc/4-instrument/macro-button-seq.png b/doc/4-instrument/macro-button-seq.png index 916153d5c4a0aebbb5f1e6e6357aca6518800362..dd316c205779dd250e5a738783a020a0455813b4 100644 GIT binary patch literal 387 zcmV-}0et?6P)|006wk&;I}aI8<@ovM+1D}Ps(Ly?>gZi-z@}eX0X}6l^U%y{*?~0OJ8Nk* z@4zX`oi(>wcxYiY%#4r0=Sv1!cxW+riE@X^!Am3opQOFOwAY`sJV>jDw76o@+M_JZ hioSB`3p><*$rIa$jzjt=XYv35002ovPDHLkV1k%}sKo#P literal 232 zcmeAS@N?(olHy`uVBq!ia0vp^ra-L4!3-o-c0A?*QuYBpA+EZ*y8r+G_xAQaeE4u? zW~QE=-jXFt+S}Xx{r#PsoN{w>BO)S}E?xTY;lqFb{!N)O<@AP@*iT1rd>1cI;ufxt3h!GRh>fj;0VYA-D&tm>w7 zk^y6eS*f`eKR89SVah#A!{C>7WE(WDj0C`S`h&a`&8pZlDqV+3oh`zHuBBkotv z!}QLOqyeZRu>ZS945+D#c)dF%7ZEfshLCOmP>M)<2 zKFe#mC9Zd+Ilf7o(;Su|Wq{%9K)%dGV(ae_DWGvJwd|BvYAmB>z138n^no)t1O!yP ztjtyAXC)=O%Pnyf&nv2=xEu1G7Ctg0Nt-_$dCD@g*$Dx}i+S><=3IanWBkfg3rBOL zq-_b|pcaci7w(Owh1)tfI7AT(BFlf3WiO5m3JMUri-D$WkRibX3iC@w(~&;< z-VzlN8JS4uKU9+1N}Esd^h)E*frOm&qfaUj_2#9?UWEdVG@uF|hKcHaf@5o`B&sYa zwKviNGfMSC#)_K|q2Sx|wYa$Wa59rCPloR?!%!8z1q&u;8pQ!ItBK2#ivUV(@z$N9^M~n=8O`Kga9Eh6&TQ}t%~hP z%0zZXdfuO@&E)y!@02&JEtRS>X<4nc;))Ax`EP7&kctLv7~G$&s#jU&eaWk!0sngb6TZ`dKe~C1iVnI*oFE5Nx`1}DI&bIPnHP-yN0SzVN z{zuGoE>4$`g=m3Cslw^vjwx;X=0D4&o#r$6adB}YCN&Rw&w2B6uZ_|c?;7$TICvnh z1F_hM%RJ5}%E`-%ue$AzWk^QgT#jA|yViO+bRz^X0&$i mfF)GdGrSO zYrZOM*XvTVeH0{<#@dA;d)CZKgPGXHog`R2FRC$!smI##{T?~=sc zwQ8kb)}p;Pe!yIiM_Ya75)utY4m|4PA@+ILbidvk%@QPrUwB!^6FgdLdrGry56vQz zGiS!>h4E->SIiQqY`ywZZ9Lo`O}yS#hQ9F0>qfA@ z_4V zO!zaQBnP!B736VgWqa6}$e)dy!)ZrH$H_IqRGe53jlzaimo$&zcJHT5@4H3E{V{h2 zkRzZd$8rAq5d4nktKo&;hU1z1nr}W76uC4HO7Q?1^Te8uv6|zK8!8UxTTlq@PX%pI zj@Qtpl;~={Yu6uF3m&6LTk-yKEBTLo&J zCzaT=@wrwyzQQEWsZp7BYP3uX{XB{M!$fJ#pZOWPUG48 zeih~r&YAvJJYG$dW<(bJp9*N z6cPVp4~n23OE?x|_f<|#4r(I?T0l3j9i4k>28}8bGO{fI$^%?E%Ljgt)R+Rh71}K} zO}kht;d2+ax#aUqvP#ZI`4;H$$6E4n6AFYA!CKt1vv!LaCG?BEMmo%_mz}RKU&3#l z`VWzgC&qgWaB#MNTfJ?S&M>#vTv!}iX z2Bs_{NqNWmIZIrJxRFH}4{GL5tj9(-)MoY91@FJp-EFBjq0dUGku7w7q6G64`EAb2 z_11&p+Yv-UYu(DU_wT_#0?de1 zdaP5C&4TuC<02>aO5&MDzUJ!6tH_+pW2{`^x4#ZqJXe(Bk{-&!c`fS6G<>Mhi5|gR z6-B0;;1r!CNAqi&c2e7mL22(>%KJ7D*~pPDE+y^U3z2|VBptlg+uOV0QZyxVkE~ux z6^FsH-ZL*&pYjlVbK{ggsXSPi{|!MaUx2^cho4vYSq*RgE}u&FbhlKRuRf=5hM!?Q zsf?4Nu12FkY{P086*F19EEtmU-X2L-;6=4rqB6c80^n5{=^HxrJ65rK0vM;JoN zJ_IWyKO~b05R~Ug2!5DaDAIw_xnIG$3a$*}UAC}4Up=STfXod(_S^R_M@3{JvLtn) zG4SAz2RrD*#L;}p#b_?W?3Z0@xzs9CW5A-mTt+#0dd9nv5NZ1N6~%l?<3i|*CBH-9 ziaDn_pa9b*Vsfw1^sUI%fRml=i@n2 z(VHRatg=h!BV@~pht6+S_-KOX3qv((p_b~DQyJ+lSSY=QmQ^^IaoqAg(af3cj5~58 zSp&1`q8F=5PbE5$ZB(_k-VK~+V2EkZl=Hg3|2&f<1&iLMI%c~ z-F$;W7mT6dbHCc@RLGgM%#VHFoiV3H1pew3fW`f_l$A8sHFuZ_3dEng!^wsyJ^Y?` zPUmZc6`51&W?Q|XXIGb_UhTd-dbyp~{Uxc7 zwY7P07t!X}D@Z{_<#IR$l|*;vCN@QZn76Q?agyzSCLWAT=tmM{P0QY`Uo6$OyN4Ya zk=3E!cVolS(A-x?KhRR}v@pb)OU2L$VcCd-xs@Ouj-`;!CEeP2KUZV_gPyR$=q~Dc zGcDLq(#jj%(a zmvZdwCz|kGpn$%k@SB;4#R>QYYlt#eAn8f+Gr8mCPSeb+XlnT@*c^H90pQr96nlAb zq~j-YFPtahQOLJAmCyr_kAT>!$1j$R+hIrQK+5co>$rK;SLm*!JR%0FDY@QF>v)+NS?Y4T6&;?ohn=~hSJF8n6M56Gbxc(yuugZvdL zQL->gsJqSWXxbnb69eWj{T^CDO11efuxatLO$dvJPi_5f77FU75*tF`2{XJGFJ`(3 zH6smGh^M8c4Kw`aIbzL|w(OD^)c+r+QFzj}KReOV4(=(cu^-J1BG5NR;t>!i_TPGy z@B$JLxegwXb{;Ob=L}?(P|O?T{LVkb@ZX%hRlDAIDbKhP40JTD>~2PZLL)7@dbi0en*@abC56Fcw7Z@Z_blk>{)lQmoQM{v;h)x=}*6x+z( z5?MVpZ~2T^C3&Yx8XSwCl^Dk08rY#MO7pOb;=c6q>X7^EiwYqKlr7_6{YgnPe^}Q_(=@jyf81~g?7eYwM01nJ;aYiV zL{MslP>-@#$}b`rl%n8S|6|m-c}oZosF8Ar1P}hGpia>W8U*T8lLjVHq69h%0c(37 z0(fN00GB4;>EM7riJ&2~jTU)^;(E=~ITYgHf$GDn9S;YD75A5s(cQ7cc2R~Y%tI^A z20L|4h84;=qkXs4_HOUAhKX%@hut0Ga>Hpn zn3#LPW^5J%)%dPDU7e(+6h)FE)L#nKslPrBp3>7Xq**Bne&&fmF7z*uR{()xF6a*V zO{6xfSozn$;+Q86XQk(glXR{V6EFe!14`qV+H_LVHUIi&#|ae#Qk8B~-J=&!wgStr z$hgqa*}p~-SpA*uuWyLQwpUy2E z3pER0LXOo(p8AldKzQWF4oiq2P)Xi!{P7GA{+G>z9pXKAp1nuR0dqv8_)pxYfYjBd z;x$R&K;iM{cbGC$6U?;n)4Iuch(yOd_WZo| zL|l(A9P0Qd)L$~)BaYyUtLy!dGd?(DdEC3!i{jKr8xKN*_uN(%_o5t!eXE=`+j>(3 zc3Yp$o5hjo@glW7Rtbr%7Z}V@-jU)y?X3QMmMm!Bq-CpG(Yn(u?LcwMi^nG#R5Un)-J6SbP|wzJ-jVr{q=m~67j)f_x~ zlG!x{;@RFYTAfx_R@UU`!?$0^*>AAw%6~EVY^sBSaCLpv?z_u|=6;tyFS=RP^Z`f3 z;Upv;28HHAh6g|y9k=1p--gk49t`+(hx-+A*)>$l0!8kIn}_YC$c?S}Bw3V=OHW&! z-)3tGaHjus!C#SG|HiU;a^Cv2&ZF-LCEr!YJ-5VT+Sm1TZJP1Oa&fU@ab7Dak+QPm zrE=BtId1Kr9X-xua(B3kJQ|p8t2axhPm%{k^E#?h;AuZ>sQ{)0il#Y#vHj@FcI@zS zEy$kb)oLGp^KNKGaRWZ32UFqW^Oou3d~YQbEI=h-p(Cl>t7%z;JU9X zS=vnYM5%8gjRA}U68?x5x2z1e)9Xkd7Jo_*&c*pW$~H_VENzaXg_!G+S?t% zX>0!ymrau1B1I4NX*4hGJ%kUWgnPKJANM>m=I&%qmYb54{nFY{aaVIXWw>8KH6-^A z)$J@W)w-kgM-FjmzS>&cUCuWi_wBlR!N(hP?#=*~Li0qe`mG*H+YY8DKp;u05zlwD z+XGQieFg|R8g#&}0lRv|72?!+YCAbOQ50Nnw>b4Uqy%0lQHDp;&Zskm4c0JyjFd2p zQwAzET;k)mhc4anf;k0k--3MvDsNz2ocax5lKU(_W|h2AS2Z|Gizgc40c}fmAY9iy zj*(a?$FBN(6Cu)BPamzFd67M!C!ATC&|=k-+m3A)>4QPfF0TmUFHhcWUictTm7nLI zyh~A-rU28kzcT!V zERFYWeoKHMl^EsKXrqI$s0FPaD9z3OPs5dBCXp8H$y4}Gv&IAauYDRzeQ% zRHfgy`r+(T>QS%Dg!%kXvS>(+SMmOuJ z>=U3TZ~!9ld6%Ht)0wpa7&_ag_3i8y4N}Y}?hJt8)jmxvny`73)_+&1Q*b+sXB^e8z0)7f(I31E)1H=ihInSDEdRqFjk?A-HwwM`BMxH+9)x#> zbGNQGehTU>@7B+VRH#&NSjVP%f~ZrgFSnWe;nY~QshEQ+q-m#6Ldl1j={f3hh9#sC zcl-vRygJVn6mgmqV3E#I@$R5xPEg|{K%f@-`847`!^3^4VPWvsqHK6|cK_X_l~4c* zD~bai-(^qUecnG68(72Dj;%Jjo9&~T2bY*l4p)?52EU@JHlraS&Z8jC1>T=-?>hh#-640mFoL&cvcP(EgkPXx`3$`9Hi77Sq#VBTutQ zOm6SABah4eINLj69@5j&<2lC`W^1J9=2}AQnx|+Kz|gWO4#YmE0OJGH|1H(_;xLZD z3vfLeE%k+kxiI!zzCplhRfhn-Ly>Y*lO(A)@b@_ds8XVI)(>+h=W;hAlBcBdQ~;{S zfKlx3Z-u${x)Y3Yi+R%80pQf9M_vB~OJLBX{u;*>Io&@r2?f$hbb5lP{A$h-u4^yg z3k|?Rb?5^OVWp;z&PTN?)OR@n%YE5vt}(eZwAA(S>i&tgMKEgeLXW(!2tXh3J0sEM zlU7(ATVAgTK=+NavenXtjlBfZ?F3>w&Ry>Vn%vD&UXdZ<{!GqSnGWz zI*@5D!a@eNGX?MOGD??EODIf6xqNSmd#bCeM+k{r??#IEGg-DM z&{B8~%dW?W5>G!-E8Y0Ns=0;@e$5Ti_1P3-OfUhxG!q%k8DmTB0Yj)tKX~bcPLHRV zzS7#mxBeyD8Xb0Sszw$_c#Q|d^G|FAvXPE>eQ8x!N=i8bkE;Rf?1j;IN>pod3I*=w#I?BI6XyWKa%ld?#_(CT|OJQCX}Pb6ma+RX?x9Imd>CPR=SyJWIK+{kc`4CGgzP*DP%d=&$Mo8d#_n zppt~vCI$3j`$w+BB-M8uz3cNITYG0MfInMuYf3Ffp$~r>&J&@T+nDp)?Pm&={#86D zs;bG&{VXO>Zpqw{X%Dn5ifg%ptZ2L5^mnmYxN?6UYfvwrKh4f~9F$nyu>%@(BG~{> zJGHC71N%~2{I^q@_k#6GDgf<()G6N?_e<*NmU{YlR{uXWJwbw;g{oU4&6b%9#!t!e z!GEa!bRTjJjr{Xo?GrlU4px#3!GOAE+M?K3F2eomLcsBMBAtbx#Tex;T0Mld{ROrP zL|D@A+>k9JAu4RRPbDpoDpM0$ZO1eApU5x%52}@>N|pQ^It0v+E_nJ6#4SoIvG5lX z3$;7W++Gp?849h(_GIBFTSGmk1yQ)-=A=K+SQJ=oN!}+s%NO?Hj5hYNTo{Wae55*q z6rx@}Lenc#jCa7ZRmwwKl%{{H&)GgYxQxE7_jzX#f_KZq?Xb%KFX6uE*4k^K(nR!Oo?X$2Bm?iosVlj2U^)xV-9z>A%FD_t=`o?l5-Gt{&eM%&qI53t5fj z)E12BOtd4QwPTDE%#(~iB{v=Ptpt*q1ci_4xv)2ATb&q8>PaP4QKt5x&a!A&$zkw?zAP zFgBZI-29pLYVLx7{&HUO&tGgYUX|+DBuU5U-?jZe4fX#)+y7IyqKIOI@BP-ixd}^} zsoN*+mGGB~t;+OihDX(a?EX7m{-+WC?|VRW9vH&TeNn%hBecKpyu3R)@FEjf`@lkw z1rG=+hU}`2sW0|?-uG5;cwVdF%$1&VW%i=xaUiMH-n;KrQ-fqzGTpcg?i(>I&9vm{1M70GrWV|6@V z=?kRbvb?T_K2R&HI9xN9mzPhkS#dq5aX|oz+UUKGJsq-Msx5AAer(#$)NFP-Wb*BB zF+9%lxtb_ScE8`!+`KoIu{wi)<%j`699>vW2DJ7cr` zbh)AOTb)H;7-qSzH^&&{Kc=Me^k?rUI$pzBgj~X78{O?&ep@~_{1-|^FlZD>QBl#4 z$>AYUQBjY!0~(mKEY`xc4GogL&wsCw zP^8v;)aM{igLDyruzn(FKn5WziR29;nL4fnClU5R3KHJl-eLp-UX2DG7+`>Pk=^f3 zzNgU@UiBhaXSl0fc@1`|tVI8Lmt&!Gb9aZuq{F09wb5I{GAHDD2b;4quEkVSEI+Zkm=WZ4Yo1M*297{ zGKr`ZAJGI15Ju4Bc0xr(#n0@^!elziAGm^H@@X96y?+wvE1N7Pe=Kir&*w0s68c7v zcSOPvxsjxeo&mYkM0Fi=4MIvNkpJIIkzaQ0D%Crsah)SiTf5p!g&JigB^K7!+I-i? zo|WONO$QI+v!a5&2b;mfQ6Wh99C97MlpMW*$q{!ww-e6J&VDwAX6fLXA{D(z%rHdW z&@LB~SGL_P0m<^Z@^Z#iT=(rr&bhfciQe33foA*dekjFW3PAW+*l6Lr0=&GurlYBt z`yVrYDr7~dNpJjNoMb;9v~F0f2XwkU5Y5TX4ty6+AKV%wGEpOjTV7nhg!2>vf~<$9l9O9{X>nbuKCDN!S*=l!-`5PSStK?;pedIPCF^+5uD(8`+)Ebp^t2KATLF*HZsc9E=1hgUw?KBx6V;k*F!-7u9-lMLB(BI*>Sa)pgcrw#c0>uO=<4Nz{Gm~WRyJ_lI34TNcNg2{0qJ7fMQ@t>RqrbV+rkF`^}k?ouf(%KZO<(g@J|&iD@aUjD`@_=4yBn3w)GO z)}<4-AS>qGVYj~6lY26TT(sHxH;X^>_+(^tIp}Hid_6=cbNi30E+^4UVd+BxV=hx$ ziG^BeNFnsy+11y;tEE8ghn@JdjBnuso=)bPId1m1_w%LNJ!=jJd7yb(eVws-a^40@ zX(TAzV4k{?(0-JIS@BYxWO_}LJmn6Oah7T7zmJVeI7kP-O6m9c)8@@Otl55 zH@87}ckmZDqp%N6iz+5^Mow?bdy!V7L1NI&m%pT+8%REUEA3AU~lP6Wk z9pag(QnM2+?uVKB+4)u{hD19-)8S2jJkEr}B1tCI^VC)r;Rom0R@I7|lnA_^GOu%s zDfoRs9z07wCwMRSUM0mAe+u~E@9-CdkijPqm@IfMQ4nLs9kWdw-4Dl+4ft6td}?ud z$h=D9v_)dniZ0Ch#c;XEOl-<~O$v^@*67@DovoZQuDb)X3R3ic!r%FxM(xYbDZutR zzwVRF0{gwA>35f&*&pD;xuwoQ1%t{THEUyYyTdQUJ5KknS@8uQH8Shf=%qN<7ME7n zBEYeUp8vWg6I(r~Benh{<^&tbc-gwfW*YENTxovFc3Qx|+?j0AY&pR`^l|FW`5OL( zIaGy?g_wuLZsliKmUrsQR+cY+`X|q!?gVGsb(xa9qy5Al?~G2!oF@@C4(sVNxOmf5 zQ-azA8$!+TNTe;k8tZ$-3ZK|1;*;4r{!;o5+e7tWu%tIWukznStcF3xPWfS&)w)Ld zPXT@BE52eLo;VAAa36%Zx4MI@pHBEhYVqKym(jKf7#zMoExQuSMWiJ+>j(GB9L<#w zZJsaX%BG#b)X%4+$f{dMq^CX{41GRyn=x4E93;7qqYMkj<3XxwPPPBM{P%P*f3>wy zZ#LHUXZifAD0OYgul{6RhAiSyeTJt#-g}~m+Iw!#*Xk%hPYDAubU7j5l-${h(Kk>z z)@$xU%O23TXV6j4+mGeGIvsOI!Uqk-9|ru%bz8ma_6H2{a8qXy3K0osO5J`NU{@M3 zNGYUc)E@mI=6onI4yTeel{W~EVSzR2f9Z;~GEcExlk%lo7zXozCipwQ9zAEX$jYrh zIhm#Sxd&T~t}ocLr%_66H-QFiZ+mA`FEiyYbUJC^*|$%u-~@kn4r^{T@1Z3}(^DF^ zZkobT`K}8f@oza}q)5*-*d;dxhvzH&pZA!w9nZUT3hf z4h@VA24!e;E38h+`sQqeQNVcOcBik5X|;wM>+Ux$SF-#ir&Guy6Tc^Ib+_RJAS74* z7BDoSQbt|y9vYD@@38#%n?=`0nVX#ji(tsodGDDL7lC(W9=AFLZBL`xWcnjj2n10u zq(#uL0HZ_|=|q_<%JHa^#k$i{^*1Hyomw%})8XVwjRuYaQ3H_y;TYN8SOpGpD#Z&L zos$pt8?n@O`=OsjyJCT_!SZoGS%7dWzhb~d?aU-sn}o0TnujM<8pd!><$Vl!IkU7r zuoK7lqJk!lp}adU0TX-`E;6{Y*n&(TTu7yDjF=AY`#r}m$HY%0EIFz9-rvVW9(kjI zNYLG6pXHZHUCAnMowB2#YtB7n*+Mgv?YgIiRyr#Gu$$gEuJWr@%r*fdzrVqny&8TS zpSSPjm9g1~Rim^A<0UP9yfB84-p#iOTRrS0J3T{my1qf7d23JPYHLfeso$iTRQ^xj z^D?}tjnNEGX9Pd>TbLErufMz;{0=ni{2gDY=7#ZL@Tt*O?ECR6IrZlF%yj3kZ9-*) zwN}UISUExO&D9oH0}A0HIAtFQPgnMX6$$?8efyh9P&=k&gFEyVJwfItL!Qur91ZXCxe?*_A7dsAW;WK)3zAAg&+BF7R3Zh(AxNvno|-9FVr_MPHVDr9=}x;d zFCa@X<8(eZK4Nn>9Tjb(+ajyZZr9J)+;g7FqBPOOLZo$Iu3S5V{6NWa9KYebWCWzL zCjoY2D8lE7;)rT{BZ*;bNXJu_M;1my_FDhQWw1Y>``2Fhw-w*g+=hwmSbLrQ(rs$>StYcnzf12Nbg+9pL=prx!qFD|*H> zV!fj(IXLCBa`NjI{HW+g@Yu;D$*L1B=XJDFgS;^oS*N!z1R3*ib zIl~hxn2mdcc!k}uu#X43mi6$vR{qU(GYybppH`}{kzgY;a)DO?^f)h<@r81zOLC#{ z;9DtZrzm3}X7gxrs00Sl&C1~DUMP2sU~Um<_@q$yN%GavmMe3MJK%DGkhJ&(1_ejy|n^KSm zS&eK+ndmZc+gTC_SPEax?)J()V80Cp(pv7~e#kA0MszT=myp-R;V`b?tA!z7F5kYd z?d@Zd2_#3GxiRby6n6Y1yw3I{0|p8+1Ea)L7DH3&(?T@hL%g6sxq1AvSl(J2RV>W!|??*=;)GS|J`_>+KnN76O{m?YD z_( z5yg+H>kOIP{>>A!iZioC%2MNq()VcX*+gUPr}Tu(<`@-{<+~x}5mot7XOzoxvl=vT zMBfFDFGy$Qe!3zG8J0-eTEgW#dD1zE`+1*g*aXS&$^dhE)>OFIuh^%ok6oz1(1+YCaSw zJI}T@lF&E)H7rmx>X^^xel2SXA4Fq2R|IyuQ5>H_`@vL?o>oHQ?gXMtJ@;Z%*4}G> zEerKcg|15vl+m9586;7}b1qEcA-s=M_=-GPB(0}WIIcKkoj6F=HK!y4@jW_R-GV!t%8;AHu8Qw)svUDb?j_i_;HAma>0(g2q~BWh9ftb!#UW&2 zM&^|TVbzGX_^rm5u9;b_63eEGR0AHt*fQ8vMV3=lM1g_Bb8W(gm7^!#4Nd5zUF z!G(K0&?=oz51ZsjT%dh)({-uxqk)B}ZhtR1(k5iwAY84KPaYNoS#N**WH1F7Vffwe zp7XWvI_dgQ2{Vp#eSD5ipeoFcC5>6UNCF9;kWE(_DLpA}ot$|aY^67+W{>fHL7WC| zF@8Du@IZ&rQq9P3H}_-n%jUPPAd6?`Lzi?v#(qP&mkdZUJCyXYYahrOcmoJ!DeVr? z8`Vs`bRh~_7U83FBdIpgE%;Yc_?AHMFMbYMcBl8mJ1;I9z2(;mg${l2E7CQ)oa$(S ziK=2~;(4CS8(;l;!blhee(I4&V`A6a_crvjvAN$-=s~Uw^%FkTUe*5)?LMGu`KSWz zkVEP9cz1v!IQi5&w)>DlAYf0&Y!M^|O9mse2k{|`&s`!KB&0@Xuh~x4NE0IJN4Qrk zje&?%5Qfe_0k<^>+v$wvba8NJ{8P#R?*O0U*16z$w9!1*!)-~W6Hab>G+_3*SsLOI zc^Dx-;O*fTqbw8AaxDw@kLC-nfiHdTeBR?FmedVrQW?WM$v6z3 z+opeZ#+pSM^XXhr%0PrHID73oD3L5VjLO@!Has*ih&9UNkKaZ2~8XXUq{lD@Lrm(2Wc`72rGBquZ9{; zY|hhgBWwsHk@z#K?G_v|rir{!xr)7yjGlqiGMl19beOa|>fH0|u&nYn!@3~^0qo#& zZv7A*TfRuu%18)N{f&|#pm^VvMn;zAr_5TYlA`&}6?uxCmz$J!EB6goHz6J3Ssd& z2dWe~4S3+=LAZXFts566Oy6h=&i&yk)-}~f3>?&;5s`H^f7W3HIQ#!~spa_fy=f=Y zf515`#O~xT!|)w>$MklouTJQTUdZ+x>Y+vV{oFZ_}pZw(D(7&X8xXyx@?k=$VR99ORGp2Nb+- zsNXi=)(kI2O*`(hxFVa9wpthuIPET~*)@YSnmDa^VLQdr73jJ!Q(>7pVI#}(+ABWp z#X)Kh1eb~WhNrIISeWbi?ZcBpmttd|F*5PW*7VBPRSalXC)8ijGxd5XK zKUn$bQef8r1!iQF0-k&QXoycfhA1u)B3W8k$o&Vg!gEQ!_Fsrx*LQtH4aVH!_I-dJ z(XLKKfzlH7aJCh!Qcup*UaB`=TydM>iiEQ@yMwfa2??gHNrLV8;WyZ{UiqCv>{Y1V zl&o+AO)-XCD@_~$K^-)-}Bf?>jMAu|Z2p4Rz+y*{oaIhP?uE9aNh2*b1kA) zD(0s)#9Ere5P?=GB8nSV=pLxV5K542La)g1p4em18-A*0PbVk4o z)2D8D-{*(oL6JO(Pr9b?!G-sfVKn~)Wg@VadLIt;#Zdo5)6fVlF3C%H)+ibZNqU9C&>mBa^toXbHu;8yX;`zC=1&oc zTM|XjbOx?`3I>gjEX(X3zG#_nMp@gM=(SqyF8<(lUvsb7+n_t(2~xDHw%lHy17WpF zFc)QD$DP9qMIcqE(a1u#@~$r-3vihu3)TOmmdl~S&>^bUI%~pRRTEqC6Ua%#;h^!f zn+Z#AI)3@0E10z+`?yu#@#d4onh%^tftcsA9`3F-xEek@1H$K#i7m7rRtr|5Oy|_` z7A%aPkWtwq&R?S_4?#Prd<`)aN<28M{^FMrmPGF=si0E6W;2@;T3Mc$o(zR@WB#T7 z<%Zr*90qX9`7)pDyEZ?!x(`Uffj^p?TW!T)I>mO@b!`2h9ZZ8 zgoM)!izO6~vxvM!5^*q8cg$qb8I?weE-9c-tHbGA# zU1S{rwDk@o_8X&ib6!LeD&FDLEF!#F7#Lw7{k-ieX0g*1qKLu+QAN$yKmHFiuXbud z&S@=Nm`o;rBU{~J@=LxPAboUq804anzG!RlW&7G!N45;vO@-@`$q8%N?$;O((HbyR zu%q;utJ^oeo{Pv#q-vb>3z46~Yc%Xl`5^La0P?yK5z9&x3g zk~cVH#K0)1;oongKc}k7=%Drea{zTu`zy0-RY)SP@3G#bJ^XwoTtmy2Nm3(X#R#vI zL+Xcfb(04c6*6ddBzIYjheDiNaOt)LuX|$9XZCE#E?snaIWo;STBAtpuRrjR=hIeryMDFDd(j8;O*D4zdwWT&zo3 zINLjN)%S=WnmX#xzoUH=gYa;b{?;VW5Ng`S!yceknxL1&VEf(ejL6ySg)tDgi9e76 z;d&$SjD;f2%ukE9oe|-@9ATCow1wYL!pD?+u4%r3BMY8*et>Hnf(W?`q|Wh)9UEkB z)O97;1`WtLMO`BX<&mKsOWGDzvtZ)>qjaNouWuz~E=pGeJ=9N#u7lU~G((uzIiU#K zxO}?}>r6dhe7?$Ncy_f7kT$)bOBe)BX2~(PZBZClKX?@-dCG;b44!z`1?z=Bfz#a+ zIy{llgN^PmQ6GXB)}1;z$nD(wA0rutxZ5cUIrNQbo*f>&evMwiwFT&07^eQI2qa)|glC{{LUo{Cn5r;oG2vb4tPG#)+RNdAo~yqn2% zOg3e%*ZdcWXG}w)qh52FFgZ0TGUWrt2VH*2IZ7*{R8DgtVY8xH*e0?|tY$ZEf4)iX z3$y#Ea&gp@_`)%B$T;B0uK;%qnLMKKP5jkz?;w|AZXji~&t^wY_I@SGEGB#_g4($D zS7-7_1PKAU+iLfuZm%j`vq+H27rYEIUNV!>#SVj)m}zt`X@jBYH3i@h`%UTnYJ=u0 z96gOo`w2sANz7^wL_YNbR6l(OVaU^ZyQq^-#}&-I6zPv@dW)`X67CRDA5}~lDun1T z8dl6~BK__v!E3m1!6cs~T|a_8dwh{&;BvJoIL~6GY^{!4kXIzVt2ky|(Dky!gYQpt zx5b3i&4zF+D+@hF^R2|~@y*HH*xU#Wg19ybcUr;;*8;4`TV*Gh5>=70V+2S9A-Q~Q zs@@nO4)5*neC{EF3gjB)n!HN4*aG>~M`9RO^HB2D)6o@)Gy}5(EL8b+Nm^kwA@v7t z##ACA0b?S0zaLmSR69<;8}KA>r<|TLMe$mq=~<9j4tlLu{4S%1rgKAriaD()?T2v? zwhJPU#zU@jTMhW#5pY>f3}EhAtJv|om#D`6RzL*LazZCN4$ff7cjOQdaVEn`mT1W= z%vTd}b8IB#wWFhFD~98YBleHTrN$@x!H>;~$NF3h4SPlMX2MBs3Hmn(-z`yu#t;RwVZrDQW{WbCB5K|gMv0IIfkk?K+7dW{&cXP~*+myf`x9>Wisk0uG+Yb6DaX7` z?M`RJ$N+E<1`X{jpERIlTJ3s=zj&kFUKxaCK^DjZ3-bgfB5eg%CtY=R@j+M>1C#-; zYwZ?M64bijW(|jiRCn4+hFddAC*uL<9Nejs+9H<4575`YU#maQgD9h|WT7E(a2AV$ z<6sZxv3i56UX+5!@?*)sq92m-0wLrw@&cs4)saB!x&B9;R^0Kk-XIHAk`?!Q6Exg9nz~1cC@5}4o@f>i?i>Xk0u|Bz{X`iJ}>dFOf^YqeGcbvjabm1WT#Sm+*<32Gcm81E5 z+`#-kIeW~R#qX(H>Y=8<Vf?HaTt_k^j4&n2ZOdg3n?L25tMZp%0-5 zVXQ}j{*Yozo7p!Uxil%2RQqiXTlix!FIk*2A94crz0peD!o7CqP_oxnyp#qb_E?$O zmG2$Mp~W-m;6$er>v1l7t`NeLqW#gcT=f#Ue8@!d>b5^+wdCTvyn6?qT{htZ*qCBB z7=%X@GX>`V7Uc|XVNydS7{ZcB481R_aXAdv$^{GY)7UZRPu63^R;g6CVW zQ7(j_kStiHF1RoMM5a1NW=5uy#pLzY|I-`*MVnoEpUj#eH*J;^N*~onfhyCv*fXGr z#`KL|B#?ytddu%OQXod{_0JfeZ{ZQk&s#M6LMQMWB#WWa#W`e2ai2N+#^te2&S5@8 zedLdj_<$r+Wq(iyRnV)M@*sfT7IGoepBJYUPP6iBOVx(olH)9u%^A$F;P7t(S}kDe@H0;_ zO@kdaOQ`4=0#~^UJETqoSdnNnY9%wfmh+^`0$*fRn>QYvEy2;0k|APu*`Z~kp@O2Z z`TsPM($RLqL0PDl{(qkM!6;`?*B!0>oq zL1DLAfes3p#LuO;Xw_a?<#C1tk%^+^wnxPY4UPUv9dID^#s=Ljp=A#$d8F0EZD1jT z&K5Q7?uin#_GeF8zb1KmckH3~=s|&E6GLPvs6;+Ag&yR+LH%D7k(~$xANe1>mPuXS O>!rmN#41Ge{QeiGaukFB literal 11526 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 C3!KdW diff --git a/doc/4-instrument/macro.png b/doc/4-instrument/macro.png index 42a2a635e0a2ac6733e6eb1d9904ffe4f26a020b..4e03bad9275e46216d5dafcefa2b76fd73f7b266 100644 GIT binary patch literal 138231 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 z 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

    -*Qd% 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 +*C9 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 v4lJzHB=60%>2> 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 GxcPsl4M*Mp diff --git a/doc/4-instrument/macroview.png b/doc/4-instrument/macroview.png index d2bd5971819b5ee375e3a5936e31d6bd05b1cad7..faadedb2eb3486b4505e5775a4f13419c4274ef8 100644 GIT binary patch literal 4838 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 M5B1b5RBfOC8;>C@%>V!Z literal 3678 zcmZ`+cUTkI79ZsaD~eb_$}Sd)2tgMCrRJ?55PFj+p-Tuolqe;%x2zy6N)1xYf}(%~ zga8o<#Rdc^Nd z_UF_9TT0MD|DM-taqof0#nLBFIhx+E*Z_Ky5RP2>@Em;j{;ABQNS<*gP>@6!w9*3-YVk4!oubc z#V)uHdAF3+)~>e^6p-bP1WyA40V!Ds^0zJ-jQmB>^#dPnz@F~PyXy}i9bXCSEQ__9dFmB3w4bc)2v7F+yoY@c|7q?o#nqyUIzP(R6J z(kvxnbD2u^)~sgU^nSjugmU(g9J!@vL9MJ4IT+^r4=Sog>um`FsCE7e3y2 zt_0Si)2-|3>LkR)W3&1@Iy$=9qXVqP#qy_58E#;H7)zv*Og1&&oMSRWH|Ht5^=V>G zCzHvn4PfYVE}`mf!Q}WL$OLg?J>s*dQ}`0y9KJOe;I)z}V;q}(;pEAeM^OR?B>Ng7 zG%;ZP_b3WDv9XcS#1$teq6ve+FdaRfP4`f-w6xsX+G_KuY-Q4)s2>3t9TC61v9a;u z#f$4?_uFxC!jVW<<5bpAZP5Juye{cC_b+UAw^y~-ivMUxiOpFI2GjpO+G#kWldP<~ zhe#rkD3sMIPdb08%f>RZGIpG&UK!ahcAZa36r@h#BcsBqn7FmM3SS)xLLd-wX1T|| z_=Sg4O`^8frxOzscVQ7H-@bjTz5HJH-o1N9msh@i%^(nt9XnQCQ**%MF9WFvnW`m3*BC$jHde?NN30O-IKEmGEvC8jW`7&>MXNyZncw@0x7iw{1MTO{S2tm0qVpXMV-Zai`em&c#VIRk@LS5%~!V$kTUg;mjW4QmDI#CFA;zIr@m?%CY6urQ6rK2Usp zw0#*CA#wBOO+<@fxuU}h+;nH&)D^S~6=Pf*>g``dt12oobTt;s(#F@=*f={oTUfjY zjZPqxJJt^j4%XGw+t9|A z^SB&y>k*j!bBnO2_4V3va?=CV-XhJ$*S&ko2qZT*w~5I~+8x`cJxpAEeLafeM?e$y zAW3$|L`CHWKL_pXHbtND5hc=$-Cu|lf!V1LvL=@uXmI> zbf_X^>2t*9SK1xwvzi*6u;m$xu1O77H@o;id|jY9ftjPT_guBzRe(j5k zrz%IwYJXqGTy$L>-pOfnoip9hBE%n4YW=jQtqul*rFw`e*=K47FDR5#1HX*DEGaqb zSx43n_W&*RW;KI(DlI)>+4l0~-`Vy`^gQ-!Mb^YbdTy>()ONUmfr014mlxL7)>@YV zf${nAUijeNMFjc#XR3PJB9Zqe{#p+)H&2qjpOcdVV1{knl2zbsZ!QwUX62)zcmM@i zJOI?m$w@i$2a@4~VqneT1sI(!)=7jrp-`;J$zz8PclY*A&&}CeTU$FgXn*{@TZ7eG z-s_{B9jWT;<_|?BjoIlC_1&+x`f@e6SIs%aHSJk*V`?1D% zFbt1hp8=c^KL-mE5dNjTwbjtb$m&7hI|(h#$BtxXZZ36DA7CES znVV9ry*3tON3s>e1qI>P#^WL)B3LX|+$eE-dz;M;%mTWRBSNXEaeRR*rWTcyczJrJ zh%PKFR8&;t=jTto1Jv7={wI(*XPZ)f?%__@6@C2!D;fW?u(!{Bltds9($dmmVq)0C zxhfV`R;fN`;BY4|gua`anB{}{1rOZ#t38Ey5yfi#3_x9ws zgeO-F&myoLITz2JIB`Np$MMw}Sy}hVHbNUOoI82n$t||1s0jToL!L!MH#Ecr3@OYD zUuU!=ab5!PVRWO)8#YSV>55DkAX}0x%HCcv>J|=XD92n0qZ9H)9YcQm9kGs0RL;S* zC&9PRl*^DFWk`RN#!0_Ya-?SFWJ*g*tE#K3$>cP&gM&j( zcD5Vp_U+q7Hi)9zv9V`a!2tnF9F8V##sZ+m6Ukd+Bz1P0^(Rl{Q5CR1Yu=h0#5SsG zYZZVH6biD$@~d={$5eZks;cUqJ$oqBKlFE;Mo`IzueP?fpB(yN@zMw>I>RKcACEXy zEHi1`H0V!EdFg!Ii@#Vy9)_SaH#Z*|dBE$(5SMliEIUi9MF|NBoz5aPHb!OIh{sFl zzixl;_eKD?fFU*G10ebjM-aVZ5WYK_{~4TRk-uj||EfH(xIUCOIuE|dRF2&+ZM5V? zf}Vu*Z!aDJ?{-`e6t)ix-@p0hlm0QPqTI0@-1$jisaKv0?!NUn7Mk+Sb@?AyZM_wjAv zAE*1_*B0hS0{#6hifv+ANTsDyT|^>4)WL(!o(OQZ=whs56#T>JC|pBBLs3ytOKYgN z_oB4)BQlvzty1$HsB(QPh{xm6kBW;ufoP3}b4;V6;D39YjJ&+O+}v%P<#i~QbDRruHIO`J2KUgQ&?14S;^mG?dt04i$dTWKlIWwcNcBbpC4bVy8Qs!x0b;3kmV49{8qIU0I+A);)SUDdPa4 zH8nL#^771?nK2VUO~ppqmJ((NL@1jk2WSSqF>`u5=#>5|I-S#Taa3hX?C4QxdR0{w zpyqG6qdzv41YWg%CF-)SE_`i_k5&rgZEItNl^cuj9-)Q;hMPLQ*vM-L>>VD)V6nu^ z%uCMiM-4+eFnfUo-}3IvRj;kBT^$Z4N+Ux<)u)}6g8~EXYJ9TRTjhx1%9iz4t*y!K z9pZE%>l2C2!~q^3pkRs0-90^T<@rE=ivZRP4Gk?TD;uO>M=Nd!$T_Dfz+eu~{qxri z&CR>?=1qV^jK7XEjnVV$#Kbe>T13NrC zyyMLm-VAT@;z2Hf0TJ4_Pt$*_srjx1XdA-P+}vERBmVA%9mtS02NMe?LH&UbRyce1 z6A6WR;r4lK>{-~#>=R;S_RgfoB^6wqU%@3SD|`ODMWGdq2wDp;#OCTEJe2L`?mh*K z3i^Fp+bpo&s<46&9;GCby3lhWKrg_l1*6e2|EsvIot+)%E@oHDFL;y3Kn=Q4fbEU` z7zTnSiA&t;mnHylkwxkI#ns_(_`LyXq=Q2QeQ9iLZ12$1d?h{8&U*0#GMQ|WmYTYj zxvOac3Fwm^AC{P+ZfpiT%@3^oBj$JhKB9jum^uhOEYx~-9Ev{lc>^#^)0+6oq8wl! rXPf5@|NlYx0od=5h90iKckx4+_ERhFVkH;Ak`UsGnO@mt=imPeiQ@0z diff --git a/doc/8-advanced/channels.png b/doc/8-advanced/channels.png index 69fa2e99556be004caeec6711f2eee15f3bb7766..e51815ebd6101a75eba1c2e103e3f82731ac5a15 100644 GIT binary patch literal 35727 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 ZK}CWs)KzCFCINqLD&4t?x^n;7{{idPl5+q6 literal 28947 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 ND9WnI6iFHR{vRYt##sOW diff --git a/doc/8-advanced/chanosc.png b/doc/8-advanced/chanosc.png index f7a75ae9186cab1b67425f17e110f10f8c9af3bb..42c6be295837fb343988023e1348f92177cbc4b5 100644 GIT binary patch literal 121516 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�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

  1. KnEriA_5&B+c=ar{z3}u|o1KHkt+Q>&`j?;6r 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%0D9_#b4iBX8%jLB(_-N#*qk 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 literal 74086 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 diff --git a/doc/8-advanced/chip-manager-change.png b/doc/8-advanced/chip-manager-change.png index dc1561155f5bedb46ff2b292feda3c0a80741fa8..0def9180b0f99cf696ad633e9e959e79f85ce818 100644 GIT binary patch literal 459 zcmV;+0W|)JP)_S)Q!A2N4?&COr!rEEF+M3mYo~1_}`>LzAMi1Pc=J^YxUYvX!K>^7QtWrL;(5 ze2ty0N@RUYWPWCRk_8JA3mYo_{{NkVwx009e0L_t(|Ugg%uZp1JQMbSsey-jbaz5M?dCI|v? zOgOU0tb)1w19@dW+!*_(u+ECS#4nY3k=4_%!fe$9>>4E0bP`@8vEvwaNbWF#O*(AO zVFg7M!y2mU05cuT0xWc}2r$>dJit;1%K)M5V&VE}<0NpK+w~mW_C#JtcSY21<8Zem zlG1tlYPpNSyPk+8yKngtfe$ANlE3q(`v}Abu@r8F7{qEUoo5$^Sg<^QZ-F_8N0!1x zpm@`>OMw_jG$0M)S-Mn+LAYdymR$=C#49@;M9WSG(X!J)yb-;_0eKuS32uJGETCCbp-x>c3#3J{{#}NZOE5dE;9fC002ovPDHLkV1mSi B$vOZ4 literal 267 zcmV+m0rdWfP)Ccwn3!B#Tv}RM(b3UGMMYp>V0CqMot>RsU0w3> z@?KtECw1A~0001rNkl-PuK{bOxy z%Q~3{Hm%E(pI<;Q=K~PuvcDqW3mcIa-zC3g&w}^A#a0M*fCc@%osLT^_|LtRfi5i2 zKWt#}>xT?GHN1bnL`v5Ii0@NBI R)SCbR002ovPDHLkV1iBaa{B-P diff --git a/doc/8-advanced/chip-manager-move.png b/doc/8-advanced/chip-manager-move.png index 6d59cbf4399ba9d799d70df6dfd00ec99e0c5988..022eae230d6ab3a0a7cc69494a81aad8f809ffc8 100644 GIT binary patch literal 575 zcmV-F0>J%=P)+bmZ`iYvWJ6Chh*4-I7T2N?#dW@f!rnDVBT?Gpg`uh84eUgZos*$3x z0002p;^*Aq=2~%x3mPikx4!p(4lnB?f}Z-bb1 ziJW$coaO25D=G{V0003}Nkl_CwXHc=rLzqJ476&k>4uj7y zh8o3t=<%S{;-yD0WSz>TVqr)yVx2_fWkk?7ID_;FCXCAwO)?=^bXOAJlea}_ff-U+ zE!b^Nw>FzLyEe$x(D0PN55hJF+vQO8uZ!@eugaj3cwB@hD3u+m9C@fE56NNYV%tc= z(eB+rk}Q0ZXh}X8;UijmHNt@%4vY|l2FvqpJq>!h_fk6nW(XVPzbZKflH{QPI|PAu zMR-rn3}HAg!ujym{Z`a?(pYP_ZcN6t;0&o*E%=PoODzcE!wIm!gpnJwOROgV1Ud5w zh=7;8gQ(=p!DCKd9J72bv(GvmDF`0IZm>L>j?b*?EDX#{0-B|mDB*lstW)B N002ovPDHLkV1nuY3=;qV literal 399 zcmV;A0dW3_P)gwu)gM;Yk=)b?esHmu|t*xxAte~Kv z!^6X&p`qvJ=fJ?gERU$j0002eNkl>UtyY@SfRa+t_MC&D>_JfW6cNIH6rmM3^C{m7oUlhWdeWz{cVuV zfovJ5=z_sDQigju9s)ak54@iTTHyN@_n`_vHNFczFFMH$$qs=hH+J+sL2U*#L%9H2 zXJ`*#KfYT4E-bK^|4Mp~!~)QJEM6F#^d8r27y_GSt>0VM$07lch`6@`H$L^S0tXEa tivZso-Pb5+dl0le2-uU_ZrKm}_XaQF2-LohWHSH&002ovPDHLkV1i{2xflQd diff --git a/doc/8-advanced/chip-manager-remove.png b/doc/8-advanced/chip-manager-remove.png index 6ea5c5f041f8389fa8f8cf1802571616712eb393..aea34d9c426bcc6bc758d742e59b6b43da087682 100644 GIT binary patch literal 573 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 literal 71772 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 Mw2D-Hs0p;yA!Y6fig$)B6&z1EyU=gfnt4^A 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 literal 25086 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%0DQma&N1YzS= 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 Wd+rMT$#S{bC;M7SvgDP~hyMjjz@1(I literal 16055 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 diff --git a/doc/8-advanced/groove.png b/doc/8-advanced/groove.png index bc4031b0856f77d04403bee36fed4dfaf1614878..ee0877c66bfbd45d574b1f50da8d2a80884c5fef 100644 GIT binary patch literal 54776 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 z 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 F{{l*7dIsc%jB{yDRzPgE( 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 OnT+IBi5xNgyZ;3+UoqeS diff --git a/doc/8-advanced/log-viewer.png b/doc/8-advanced/log-viewer.png index 71120570404684d95193979c9f26546df9f66ae2..aa007650800611ed35ad288c17463c0b8ed7164c 100644 GIT binary patch literal 140501 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

    ;OMy2Ej$UwLTw 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ŝb`p-IqA0r%8$&wE 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νhUWCIvxcgy(|;ym?sLQND@N@SZhm07X6V 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 Eg2t!3JOBUy literal 30020 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 AumAu6 diff --git a/doc/8-advanced/mixer-mixer.png b/doc/8-advanced/mixer-mixer.png index 27574804c0495df097e3fa32cae1554f76fb93a2..249c6fbed0ebb77c119748f086c2df1c3a4ea551 100644 GIT binary patch literal 53839 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 D2;vvm literal 39651 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 J58{Ra{}%>4xOo5o diff --git a/doc/8-advanced/mixer-patchbay.png b/doc/8-advanced/mixer-patchbay.png index bd73cd832e41dd99e8820743af5d84dbb07117ae..52ca7ab3e59f033c8f9e445b6372f978ae62da3e 100644 GIT binary patch literal 45254 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 VT5tn09WpSSJ$3$M-k+91{{`m0Q>6d^ literal 37129 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 Nu*KS2(JejV{s7?{P2m6l diff --git a/doc/8-advanced/osc.png b/doc/8-advanced/osc.png index dbf48507517ffb1fc14e3bfa94aa1baf4c1b95de..4a9b728c556d7db53a7a818dfac5b99363bc4b64 100644 GIT binary patch literal 31330 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 z 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 literal 23018 zcmV*lKuW)fP)=PW5N(-*4D(@ z5Yj5EWK&U5L(nQxZ0>AIlE#8YRN$Bl0H6Wme)80>wX<{Xq3ybNd%vn*r)S^eoWFj3 ze80cvIYGu4m&;|^43EcS+6({yfFRQ*jT|}Bv}ynV09USD(Y2jvr2qf`(86gC0001_ zJpcdzkoEuo06^LU0001K4*&pwvRWQFdaH{7&~_C}XeNYiqN!voBq`)TnIv^5t1sS&CeC<^KKqdRKLI zwNo>2;K1$Mx9bZy5%c23i<>rWx_$e0!@Rh4>(+#X1Sc#$dh{qiKfkQ3%>S3%xN&1* zVxrz|S8m+6k&~0-@pw#|0ssI=d%3x}lO|0v0b8|dRa#owj~_qIo;`cv!iA)yBxS^X z`}QqbwCM8X%TAf1)zYO)>+9=JpFXYiIdkTy!FJ%lfdvZ|T)lc#1qzpY_UutN@#f8& z$BrG-3v~+BFVv!Xf$!eEQ%(2o-SsaI88YO>ix;J(r4JuIoHlKm-dI>z_~y-<^XJbS zA2w{*Fn|91r%#{m-@jkUZ|>Z=g9i^ja^#3wlKSSRIRHSHE?rDuG@$sU`ntM0(_8?M z_O@)=f@l ze*CERo)V!gQ~z(-vSk?=8G7&c@84Cdgm?1fNv)Wl3JMA;D=YO)Qc_ZO?AW0djdyL- zQy#VVzP)?*s?|4p_UzTGS1V|mrYI~bQ-1jHK|RPjckXCq=gysZd3k!5X+8j;|B;%& z=ys>8?uvgP?ExU|)zsAJ`uX!`69Bc}6wx#ft*WZBD~fj-s-~uxT~?*40u3Jay{Sym|AYqN41ItvPYxM8g|j zd3m{VTV!OUX2f5=el=e7O*9%lc<`W&diD-`{P^)%vu2s*0|0@iH$5Ta)c?BxkoJC& zf|{-x#Wsvt4<0;t_UxGs7f|O(@;K*REZ&ciZLy0Iy%a4t$d9)c>ae zAnhs7*|cXGP-44#_pVKQe#+jyeXETcN_)2K{rmUEi*{q^sz?2to}8~54T!z}YLlY< z^p`JRHu`j@)dv6oz2`s&O^_n`(=PNQ4z z&sB|%U(uct?elo@bRb@g=4 zi;e(Pr5+IM(W8g<5$lLP^Zx_@aJk%(k?x9$zf6k)=t^ zek4OjC~INDgbBt6?Fcz^=#Ul$4H~4tXME7neTsS|B_-Mj{OZ-K;^N|k3l}OxnpOuu zSXe7>+aolzPeny#QBm=_b$Q9jDW*jMq`kk{I~$;?$~2CT8*Pf43b=|&3W|i0y0RFg z)i?qQi0CS<3Tl~>8DoNmu8mOyY<{)7Mv3F9X)P1lWT0tgD4OB=je>@XNhp4n-(_Vk z^_%lFXYSma?e%hMF7G+dFz*~*4i_HY%X$Cr|9PJOLz6T{f~0o(qO{Y{zp7t^hKAbS z=HugoGK<_suUqo!Xku&EmY2?HFn{#DU|zITxXsJU%l01BTR@Yf`VpV~1>dOlNKa2k zX*n(~4*HOnmFz&3%reU?>(V7??%cdP@BF>GE?UO%zB@}?S9gNzi4&iRii-Oc9k9$Y z3+;)B3AM3kN7;(-5h|qu7Z_)I8!dNj0Tz`L;6h|mxQ)EJMT-{E*37PQ7CB{b9zAU( z+Dpa8iWMv9z+rn2y2=1Yew?(^b<$#DVx+OJGG>`&mW71$m^be=)Sr@)9#`8_3+-vr z`tL7UvXG0%A5SsN0n042&>o@Bu&^+C*Xr1g*eLoYls*g}KAct-%s{*$i9%fkB6;M- z$!$eNMQ9+SqD<2ZkxB-iB_$L3>o)N>g3F7Z9eG%_bxyNKFQ#Tu5gQ(4;P> zM=G8GN|9NXs4l;x+#|*hvh@ObkKVp!SW(L?^kb&3WnQp)US8hXlVqHaPis@H^{7#g znGNk#RUIlQSa$McEwTHEh=N8a5Ln@UVz2aGD=#mn8Lr$@TwKhjzP`TOwr!)*Ha9o7tgH;QMB${F3x!lL-Nc0Mo3jtZCDxtzW;MpM_kX$oQ#hmRZ)XU-W_n{|*S~ViJD?0s@;g z^E`B@V#}5i505*OlE#_D@rNJozjSHglTS{Ljy6R=lbt9yID`ws8I>ZyIfqnNhkJ(42isY z^@@5vTGpq}BRM&*?A^Pos_NjFG2{2_*_n}%s=U_=7p~~mEo91+l!}V-apRsEJ9fhA z)rEO^^M4Hoh$^@V+8Z-w!syXYy!F=7b?b@>3)eC;a%B9ub7vJ^Xu)>5xzCrBd>}Kd zH7owkI|U0D{!?Mc2}9j|cMG6iaPWN_Hmsd9CredNEh{J}qS{QZ7cb6x`|TCRqCF3D zE&#{D5hF%-?HW8_K%Ck_odi38dLRIA@78VG`abeV|M%a2Pdzs+ z2>|inIDNWK^+;}@)+w=?5lRmP5FXz5wbx#egbia&iohCTq9jF#qrnQpT^Na9pF4M^ zv~(j>UsP1A+F=T!nVNK0tv&+)Vua0wuwc1W&CV34_uhMjWbehq3_fzC3L4uC(1)ad z3F4W=NWTHnSTMjf{+CtqTj^RM_QCojN1H2BQ7?>#rn#|I07WQ>qyl7*t(- z#8?LmL1_pP7=-q^YG|*Tv7}^!8PFalRYqI>^2m{&(4M+ZQ$QKXxOHm@o75e5cw}T` z4jr0k614Z&V^6;E#v=0olIZAIt!LP>9Xmb|-g?lWp%kA{gJ6II7TSC2sVUvN|A`#u z3m3jrwUCVf9~YZ9f5;vK+Uwo>K@z;a_~N{J&RX0aqoAB^+qQuAhNK#EH+DAbXFD6o3EDy?TX}m+w(> zp*=l4@tR}IrArs}$tzbbqqOYj*O7D1(W8fzbll%RfKit9gAdlEq@;4fq2j)#<}OwFSik?>;OBa6Ev15Q1a^1xUBLmv&-n}Pj*wEI-)#RGjAOkA(YA+?t�> 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 diff --git a/doc/8-advanced/pattern-manager.png b/doc/8-advanced/pattern-manager.png index 4df068111139e87da43f7871f6e20539efecd45a..b64b9d291159d9a116d4200f308a310afc5458cb 100644 GIT binary patch literal 108780 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

    q5?B(Kf0$AAv&dW4vmRM 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≺SgZbhEK{8zHERo-m~i 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 literal 29471 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 diff --git a/doc/8-advanced/register.png b/doc/8-advanced/register.png index df68b667eb60fb5a1550df84a2cb9977fb1c340f..76ec9894f06e00f9f110b0dd0b2807afcf7c0583 100644 GIT binary patch literal 38988 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 literal 21075 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 F{{!GX$S42+ diff --git a/doc/8-advanced/stats.png b/doc/8-advanced/stats.png index 9c11db264a07ec9650167222e810dd2e2bcc8a91..920654e6e9ea67da752d1a73160f48030c71e8a1 100644 GIT binary patch literal 13500 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 literal 9898 zcmZ9S1ymbR)3Ad(1ZiYk}hK?tx;(y~W)rP~6@A?fZV; zIp6s?_iQfNWOrun%-m;o5~iUhkAq2u2?Bv|6cwPFAP}M?Ft0>M1dckk_f;Seqmv?3 zTFb-GbdAi$m?$y;#)T=@$qcG?f0?am4T^?F~oNuS`#_^=DbGhXbW#QlMAi2wb0Rl`*(m{0%$fjm7a)mx3L zWYev*dY&J!QA_x6b%uf=P^r$5YlUp3R>c@1L0~#lu=4k{h|PUo z=@8&^*sQw*1YER1QxWfV9TmPKM^;Td(4y1k8xmP1(?|vF>#_uaH92W72_Wbt-($Tn zfHNJl%^W#Zn&|&|6Zjv34t$->q$`L)DS=t9+PEil{Tx%j*4(5!l9V?!TmIkG@adom z86s{eJQmJ7zbHjN*`51!_Tx~AHQCNq!g8V9>(Ui(8|JFLF83JM@FD2)_<+GkC*B5m^ zQi-LJj-e9g;{G+ns$E)c*p}K`oN=0!BNO86y)~35zAfmm^1jhdpXy7}9^*()1hK>E zMz38mGmI`qS&WuEnv8!4nGMkDIPsNybgpcKY4uz9$In|sFD%;?;^?}+;=E!B*3rLz z!Ed8Q7tU?g$0rGmB;jt#P!-#rf7tAg=~GvTcRC9bhZ#|mqcZ)wkan>K?FGi{RuYGh z=UKjJeJHOCS2{P>Ni3n)z=wfYgs?LmvX&K6(fIB!%D*B7^?thUPIxLXM)>0#&fU+a zlRCuyuD6~Pq1#jaGZ3dAORpGjv;+gpaB**lf=R^nEDis-jE+Gi>>T9ZUvPD}DCzr< z3^FLuEI`Gj`0M0$bF%)f(auDwLVmJP6((JDu(8l!8$|7XyfR9HicO;N!_|6oEZS(4!K?J;Yyo#6uIE1fDmT+Z;YydA&HpOC~S-Ls!e;t8*FFkU=c50hm#9d zIyqhZh3!cUC9=&HsZ)#ASx*+my^<#*Cd$_WwD!I_PypV~`nc3owYtt&x zbUR+jFqK7)#P9{5ove4CZ;y(4UzKCf<5G!PJvjz}&kSeGwg$fyd7N%geJ@l=32^0Z z`h0)&!);$JL!|d+y*ngweS0+RJ%neF3zif8i}rPyPQ?$G9bBF-3ovAdYiTn5-%*kC zLEO2)Uz{)~MO^>Jo+5UZ8FffJVfaHOuMXx3C4GISh#cg#9QS7`78~vBBn2ZMs@K~; z-;=!JRsPP=fQL#oG2P;R34pqXzN211`&7>16yiu_|YJE`UvI%=(Y!YPz2Wj+>k|Z;n%VE$ymt zqdH0W9ahqB2fs1piC7_Rhe5EtMfbYATBBc(_YpFx{QRJQS&O*K2n18ItQO|0;O;a@ zKi}u4$N8QsMaWg5YMOvqUnJaNm50~+%1+>YyHE3Hf$fU;=D`FO!e8+un>}HKipNf( zdjt2*EPw|HAnLdKcp5(3oNluJ6sj%MF4OTzYWV6O42CGQg{ILGpyMSmsHXA(0ov2f zXFC&_8p^d2%_}o#*zU7CVqB5Tg!7e`_o>@}d9=>*clnzBr^AKdRj<2?l2d9s2D+e9 zeT@2aAONS!bk)2@3TM=^Bo5g<9`E>d;@5I8_=3QYJ(S~>wpV{=i(#)QFyh3O=*a}^ zLcgv<+7}65BK%!yKF^j8OpiyaM_V_c*uv`b<1lRXIGE$+F?=N#Nn_IYRp3Ek^f4HV zIP!U}ojiznxgit?^i&ZyR(wd>HKbVK>vW|-8k|wW+QQ@RVz->z|0@_$Y`Suo`*e%g zTu`cA=4@UHI8cpgFPXSk{V9etZ_0DHCDBp@Oq0zsLoaE00VN8tk&lDn_Xw|%-@QBb zCdG@n?mEGjq(2CYAI%Vj>(!Vtj)8%+OKh=~aN;@3D5O|;u{(L+lp!;ka1L9RdZ-50 z|Dn0)O8}(PahFpT9iLJb))zyq9!h{SoWfglN;o7_%xfOYY1Ceg4CD4B5}XjhB3H5( z4?!qT!>0MS8nW|I7c2+`q;L{p|7=twvPP0K9m$BXbPxKYjh98rRUX1;=SPyCa1pX}M6 zK~jxT6DA=;xp@?%c>8Vd*v{N9U`o0yOX|%2vUhNfkCFawzALzR!H=A2QkTeIFf*rM zF#ppgm-;%m(8b*sH0PaAS~$DNMHWQ^jR}zNTLZ6;J&FY!g!~Ln2H{f2=Q|o1gY& z$1qrl$FN(!JNcXDybDDhR!bN1$IiB2Qjo%<4t%pd$K&SpXG91ZN#lft@;AYF4mD5# zf3H`}-H9&QWk{`vIl^8~cF}{Cq$aSw+i^DDkzoGw9p-HB_U-vj|5aR7?oeQ+c5$?P z3;0f1_)x&ZH=M+iV2{L;wbFTS*swqZsq=$ir3hj(Kn{k;aac`iFhIgfXDJ0RcK$w) zuq2XdP(=gqWP+Biogoo-&Z4_{XdD~Ru^86K>iPmE(O?7!kx{FMNqg`i-}7205=A}+ zQYhio=}g7D&`H6%FA74O0jBFLhp9#(Q_8@VF>!;Yu!6ut-WdN$qQC*N$MC-gg*IRY z0LcFy{ttTebU2gzAHFgMRqOWifk0f?Uv!=ei*n@&xuj=6KMPPm2PmK`#Gi&BV@^;t zF)#&rBYbK5H=V-*&H>Z^p7Z#0m?`T-gZuMFaxaYJLDrzn? ztGDY{mjg}H>d&r;4c3MiP?H)$Z&+(*x8s3n&EGyz58o~96vfgIla09Nm%lnzpp!lL ztA0xWBr-^#GxD^Q!bLZG`T#O6BS6K%CHKq$1ax__gTOzVf4crW}+X7^N(Gullfo3ZXG9>WHbj4^ym4@xX-%?H!JizpqHlXct|Eze+vm-d`-WBS zZHB{?SND(RJo6vn8`)dV!c;La{dr<2fF8rOTC$&7G77DMTckTnWW^Al=>uv`+capw z7Y-XS!%Dw@=C=T(U#Fity0lr+AuW!&RK~j;K%yotZuxvx`p} z5duQ)e1S-YNCFN))B;K)%`%82Moj&=7V=t*NJ?DWE-b5rAiGI^}Z>wz^Sd z{9;ypk)$bIW@|tFsSG-NKO;AKoSHi9gaCZlqLRXcfp-6GpVIoZ!4KE*Tv?&=w+%MF z!s{*9nIo-b{pVOc3CnnDdpPy{?X7YP0 z#mc5Nw_Bi4XwT|`Svxe0V7bLzp4Pvu(SGs6oq&4StYRPoeEc7N6Kc8oP2B8G76GHf z=e8EevAYr>c+@}%)#UmEcB704xE02~AYH2(m>#9SnH- zH9K#8I$8?rPTxU>*`DC+a&|mSz#WW~5q6l=(v!tJYt>^}Xz1wZa<3p%TA{mo3F?6g z*paNnE4;N;0e+e3s3Squ?TOy{>d`!N+14lHs6QF{W{PZ8 znB1koCQH-ogYNpVzwe+&E%Qi`yj|f+5nQoQgEd$5liTyiAbc0P}>#36K~aQW-BQR7e0)px*aVEne}0%wH;!|qOAzT9n#iing|kmtIzU7fOPSzrbIT=+`p$8ud6i`sZ1ipJ1@@cePr1OWn zfO*aLFm%*4)$Q*ATlj>ksQvT$R$_k(%EKNd;hkx^14CNoeDzye3XOWJ#DCCmE+QR% zAUyR>;&rm(du5gQVuInfwdNRmvO5!YyN@J+@77y}M%VB}!i=3&h`)-qdtY-D{k>QQ z3f=T+=D(~+Hsr)CHDkH12E}6w0l0;Knhfm+0vNf|O^W(xz7Yb3fqAc!tU#CogpoRe z_<5xJMmv*ZmmF#+KFJRGaYE@7Swj)ADlfX|gh&S4%L7VLamdg&QWOJYSfPisrJ=n6i6`oGh z@tmDxzn0}?fpp7}v5D~u_l=Lv7Y^H8L2e8-ew!)g;iY62ka>P=R(i+@><48-P(}fX z2Q`u z(Bw!D%euu~~B~zNdW2-tCBU7cVFmcuNjgKXc9!4_5Q# zA8x`jQmy1UCv3|kXVhZ2ihor1tVWW#_177la@Nq+na@Lw^9xUSP`<JW5o2$P!^IufzKCJE{guZ=Jws$}kt<_A`x~2zeLc{0 zB9i+3u!)vuw=KP;^gUUaGa>!7^+mC-N^LYYdL~J3iD6GhiYb~1c|VOew;un3d5u2- zhSr=$EH2UDAk9QW4jCFFlJIm}T~lvtX;j4zC75vmv)q%F)N-ryeCg{Sl6Sxp8{$t}{eNZW zg!cR_sm-yM1*Nw*qA>TLp%dtGiFXCc-|MqolnHT(S<_J;OK}AvrxGo~xqt5nC^P8D z36dM8witEzwod_@8s7rdR+c7=7$2WDTifI6t})vV`n&y3W|#Fs=I;rVXnvA&ofF~P z?c!P^F~Ts@A6aV?RnElce3ejep|kgUTF7=9VZl> zZ%)cNT0?K`IAk>^hhFl9C$QMz;?_V3viw6`3vYS;6Qk`2bm3^;H8t5TX_-N5j);ov zFEvCk_IUJ8>G0t}FUtOpC<%JW6`I2d+zjgJJa}xL*8q z&ly`od9rk2RE6WeI;E1OZl>-_-s&Px>{~t}SuL3Eji@t~rfSyRTwWdq=v;_oeGaWG zLaAb%a2rr6w+`b6FZR`=k|Zw(feL4*UDaRAw%IHsIUxufTO9LB@WTz=u^IoAlKU}} zjRffSH!jDZeC|Ot$30L0O<*l>ek7|CvUaQ|GxlDpAmwWqmv2Mja+fIh zZcEmbOpZ_8u)VbUOMSnsP?P*&-hpekH>InbrT+sZR^vy-N;F2$PgNM2lx*t^-kw6k z`iZw-UgB$ie#E;5(s$a9M^Hlt*Ok5H^vi6&m1*)(zL!ZTmfq;Si-;;CW;UA+RV!Mf zwzoM@>xr`SJ#5*!<(mDYfJGtW# zEG@qd0wHv5=pZ8^1hgn$>3Z8ZxQ+f%9TjWr^8VxF=jyh+d$jv~cj-9&*k`BFw<<2Y z=fqzo7~6s-PQmrCM&$_<))|QAe&)``L=Xn08yE3r`1cxjkf=ZpOlo!M;($qBv8`D} z!%V8*)2-R_)_0@!!^Xu_VcY!*c&5o$Qqv9~8e#x+A86SGzN$d)UD5G$w`dPHIJgEL zKq_7>IQ3J0H}u+_I|dlD$h_*`hpvDWHJtA9OL*1i9EV&$1@(NlC`(5&u~3C?99r|- ziAL>nyY+oqy(r7~E{rL&N#txh&Ee_k{uoI4 zW_W(%-2D`FBRm;nYiWS8gN7dafAeBiTz-r9Q~N#e2$>IndA+kFJ_o%0CA1lNIrHu} zuGqs#_di}1+gc-37jv3a6>NC(1zqy~pbh~E6?vy27*FzHEN<2J-X7caaN#nXty0gf zrgup*2aZPNv6dZ(3n`Am02N&wulfNGi!Jhj$L_@M9T7Mp{j1vVl)`m*>WGbe#;?wQ zOTrJ$|E+|peWb+QU%_S9Nx(8fN*q}ajwY=?W0lwm8d&<9tCj}Ft892!FK8h2b z5Ak~@9_DB%hYsn_8hYDDE0o9^x1y&4eVg{g3ahVs%OhQ}39;Bzm zxuq-5cy;jQ}}At&yWB0*&1tExoP(DoW*y8 z#s!-)z+@A8cssP_zWVvP3yU*BU6lKu zxbtkz<%v3P!;V`s3!;HQx_h(YeJmb8RY=>9a{K5Be&LD8;1WXNJis@p^5*exNm1qk zVE!zhv%&2ufz3$Xg;I~{NIVLmu}_65A8HS+0FQxEa&vPz@;j#7x{mVCYQ1u>!$iuo z9JjgUJihs8FZDXlEB7|aw+@i_HDC@PI6Ox!iqby*NS%ymUg(^5s?%?dN`2#zQbxilB86+M@9{&vIB^|AE)|&o1QYJ+0}MovNoY0L zQ8k+Wodq5#}mcsp5!Ph}1- zjYRBxgjb%z33*lLl8g5##WK^H9LWZ!uzXTYbTr!Ei@o)vYw6wWdzYv$i(mB1EPrQy z+VkgG_1wvrlNYwLC}h7kCgT>Ta+`wHr%%xScsLu@RhKUqx2Oj)*3pmsN{ffemZJsl z<2Kn_SN1ba(yCuU;jeZw+%vh_8g@BcI3IG9de(|$Y%@K#PeHdBk80mk1@r^!#Mtf% zteg&fusE8Gd0o41B(f17_<(Gn6?0ncH5D54F>L-32+Ru?=Y)qgvu{v3+7E4erDf(? zA86Igr#p6Gbb4OSd2B}Eli%xM2i*?$ zqG|tBGT_xW5ncWGu;lXFB3F(JNO^H3ibPcX>25Rnc2?3K_O8npw&;#D=IrHPf%6)e z#jfzgPJZrJw%|&Jj z9c@gHUgdHv#&XGcoe)!TIrp*b^-T(;PQ$>x@VfM}ONF&M+r`gMCIi7og#iHGmqLI^cabtJdOI$=JaWN(%r=s+8f;}VN zAg9cxY+qCPwS}hJ56K)WPaR||=Aw#h#!Rlbh%6gmaRtVb+Y-jSbk~*|?e-DNfNEzHaI;0bx+wNhQ&Oso z=gn{uN+xl2dIBp9ZfKd6n@H{qGHDMHUneqQdEGA&XJY#ji#=Tnskcfx^qqHXWp9Jc zbzNoM7#CwC?gkpAA|(KaY`Z^dfo0P@%ynuOmyIa6(!l-ykd1`UtR*@0{?RWk<5meI z;LK@FuiA?Dsnudr?G!Fl0zPEsK=aEZOU4^$0z|!}>{678h}E-NZl0W3;R@Czw=pjA3at z8UFF!({;ojUFOkkv{mxmVFT5#J&u}pHmJzHAN|!fi{ejW4=)dJG%4?$WX;#t z!H+N2j!@TnS0od)Je+xARZP5*C0QSeZ99`n7&p){dB|;x`=U+aOTwenV0ooRb{e)QFNua@ z_oZ*XLy&0GJj>PfNQ_vbVuuuc*j`g+5fDciR#=t|^#UM-s+Z z7yT7V*J)z%lE5qVlh8o9>O#90GUY&S$u`cncMS@C8=csuZ+R*4@1_=mmQUOBt@>=x zRMQq5tBt(f$ z&EJU@J*uV?j%XcAQJBPSsXf4PJFM=;t;`ElU|fsH_27o|+?DkTVElqCvd>txG|Xgc z;Z8I0Ykt8F^A4buH>fv!Yv+R>mfB^FLmLte$)m)A&Au6EDqVk7N-ijwdm36D?rw0lWX4B zb!IJvo9`hP*X_yw26@(LbQf8smrFFxL;q0mGlKk#2Y&atSXcA7%{C@Aw-XEzMnjms zpro8?S&zUxZMkf#g{=C8GEis!&*|L`rMkfb*0FG$!pT{Q$~(hEP0iI+fF`PtF~);> zvXfB_v}L=jc4;enOmN4hM$SH#G~a#EZeFg{oL)(jeW{P^KM1dmMqrYQ*LC4tGPmbn z)LITx(>-8PD6P=oOk)CZ^4C)e*y+{I76*F>y3#CMrXgszrN6+t8<3}qThkxIqEO~r z&&)+r$~n+02fdd4n2*7~p{1|IKGEr__7Nttw+MI8=NUhP8J0n}%6>ci(e?#6E9z$=!ATGWQcWW*nva5X6s_ue&#lB1)PsFB<=MVs zl(vhpJ$)UNLv+C`1$uTbW!i(4Hql4$X)%Pw-GoPtEeQ6xL6)NX+g69zr%su_PVeT85?bF%(K`&}cK zk^J0LnwGZH5a+CR|}}Vv2oW zV03b2ufQ`OBIO3EWyZW2mC+9^d%zbKSQbw=(qhFYc^HU z)*z5E38>;pRb4iQ(Kw(S;fpfX|JR}XPa_lPUjDa{33M<2)5rw6mnRjTA9)b{CUt?| Ppn()+)u5FS From 952c05406ccc9b865e31a6e13b617cc2189ca323 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 24 Jun 2023 03:18:27 -0500 Subject: [PATCH 140/183] GUI: wrong sample loop end --- src/gui/sampleEdit.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 350ea373..0ce5b918 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -203,7 +203,7 @@ void FurnaceGUI::drawSampleEdit() { break; case DIV_SYSTEM_NES: if (sample->loop) { - if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples-1)) { + if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples)) { SAMPLE_WARN(warnLoopPos,"NES: loop point ignored on DPCM (may only loop entire sample)"); } } @@ -222,7 +222,7 @@ void FurnaceGUI::drawSampleEdit() { case DIV_SYSTEM_YM2608_EXT: case DIV_SYSTEM_YM2608_CSM: if (sample->loop) { - if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples-1)) { + if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples)) { SAMPLE_WARN(warnLoopPos,"YM2608: loop point ignored on ADPCM-B (may only loop entire sample)"); } } @@ -234,7 +234,7 @@ void FurnaceGUI::drawSampleEdit() { case DIV_SYSTEM_YM2610B_EXT: if (sample->loop) { SAMPLE_WARN(warnLoop,"YM2610: ADPCM-A samples can't loop"); - if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples-1)) { + if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples)) { SAMPLE_WARN(warnLoopPos,"YM2608: loop point ignored on ADPCM-B (may only loop entire sample)"); } } From ba0d6903f6b9edf33ba98a864b0f0034fb14a519 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 24 Jun 2023 16:00:15 -0500 Subject: [PATCH 141/183] YM2612: add forceIns heuristics --- src/engine/platform/genesis.cpp | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index 42d6f79e..e7f1fa15 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -1166,6 +1166,11 @@ int DivPlatformGenesis::dispatch(DivCommand c) { return 1; } +#define DRSLD2R(x) \ + if (chan[i].state.op[x].dr Date: Sat, 24 Jun 2023 14:19:46 -0700 Subject: [PATCH 142/183] Rearranged effects list (and recovered concepts doc). --- doc/1-intro/README.md | 2 +- doc/1-intro/concepts.md | 36 +++++++++ doc/3-pattern/effects.md | 158 ++++++++++++++++++++++----------------- 3 files changed, 125 insertions(+), 71 deletions(-) create mode 100644 doc/1-intro/concepts.md diff --git a/doc/1-intro/README.md b/doc/1-intro/README.md index c21ad355..34658ece 100644 --- a/doc/1-intro/README.md +++ b/doc/1-intro/README.md @@ -12,7 +12,7 @@ Furnace uses hexadecimal (abbreviated as "hex") numbers frequently. see [this gu ## interface -Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. +Furnace uses a music tracker interface. think of a table with music notes written on it. then that table scrolls up and plays the notes. even experienced tracker musicians might benefit from a quick review of [tracker concepts and terms](concepts.md) before using Furnace. due to its nature of being feature-packed, it may be technical and somewhat difficult to get around. therefore we added a basic mode, which hides several advanced features. diff --git a/doc/1-intro/concepts.md b/doc/1-intro/concepts.md new file mode 100644 index 00000000..cee6e9ad --- /dev/null +++ b/doc/1-intro/concepts.md @@ -0,0 +1,36 @@ +# concepts and terms + +- A **module** is a file for a tracker that contains at least one **song**. +- Each Furnace module involves at least one **[chip](../7-systems/README.md)**, an emulation of a specific audio processor. + +## tracking + +The **[pattern view](../3-pattern/README.md)** is like a spreadsheet that displays the following: +- Each labeled column represents a **channel** of sound provided by the chips in use. +- Each **note** starts a sound playing. Within a channel, only one note can play at a time. +- Each note is assigned an **[instrument](../4-instrument/README.md)** which describes what it will sound like. +- An **effect** is a command that changes some aspect of playback. It can alter note pitch, volume, timing, and more. +- An instrument **macro** is an automated sequence of effects that applies to every note of that instrument. + +## structure + +The **order list** is a smaller spreadsheet showing the overall song structure. +- A song is made up of a list of **orders**. +- An **order** is a set of numbered **patterns** used for each channel. +- Each channel has its own unique list of patterns. +- Each pattern contains note and effect data for that channel only. +- Patterns may be used multiple times in the order list. Changing a pattern's data in one order will affect the same pattern used in other orders. + +## time + +- Each pattern is made of the same number of **rows** as seen in the tracker view. +- During playback, Each row lasts a number of **ticks** determined by its **speed** value. +- A tick is the smallest measure of time to which all note, effect, and macro times are quantized. + +## sound + +Different chips have different capabilities. Even within the same chip, each channel may have its own ways of making sound. +- Some channels use one or more waveform **generators** (sine, square, noise...) to build up a sound. +- Of special note are **[FM (frequency modulation)](../4-instrument/fm.md)** channels, which use a number of generators called **operators** that can interact to make very complex sounds. +- Some channels use **[samples](../6-sample/README.md)** – recordings of sounds, often with defined loop points to allow a note to sustain. +- Some channels use **[wavetables](../5-wave/README.md)**, which are like very short samples of fixed length that automatically loop. \ No newline at end of file diff --git a/doc/3-pattern/effects.md b/doc/3-pattern/effects.md index c7a54fd4..518e7abf 100644 --- a/doc/3-pattern/effects.md +++ b/doc/3-pattern/effects.md @@ -1,78 +1,97 @@ # effect list -most of the effect numbers are from ProTracker/FastTracker 2. -however, effects are continuous, which means you only need to type it once and then stop it with an effect value of `00`. +Most of the effect numbers are from ProTracker / FastTracker 2. -- **`00xy`**: arpeggio. after using this effect the channel will rapidly switch between `note`, `note+x` and `note+y`. -- **`01xx`**: slide up. -- **`02xx`**: slide down. -- **`03xx`**: note portamento. - - a note must be present for this effect to work. -- **`04xy`**: vibrato. `x` is the speed, while `y` is the depth. - - maximum vibrato depth is ±1 semitone. -- **`07xy`**: tremolo. `x` is the speed, while `y` is the depth. - - maximum tremolo depth is -60 volume steps. -- **`08xy`**: set panning. `x` is the left channel and `y` is the right one. - - not all chips support this effect. -- **`80xx`**: set panning (linear). this effect behaves more like other trackers: +However, effects are continuous, which means you only need to type it once and then stop it with an effect value of `00` or no effect value at all. + +## volume + +- `0Axy`: **Volume slide.** + - If `x` is 0 then this is a slide down. + - If `y` is 0 then this is a slide up. +- `F8xx`: **Single tick volume slide up.** +- `F9xx`: **Single tick volume slide down.** +- `F3xx`: **Fine volume slide up.** 64× slower than `0Axy`. +- `F4xx`: **Fine volume slide down.** 64x slower than `0Axy`. +- `FAxy`: **Fast volume slide.** 4× faster than `0Axy`. + - If `x` is 0 then this is a slide down. + - If `y` is 0 then this is a slide up. + +- `07xy`: **Tremolo.** Changes volume to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. + - Maximum tremolo depth is -60 volume steps. + +## pitch + +- `E5xx`: **Set pitch.** `00 is -1 semitone, `80` is base pitch, `FF` is nearly +1 semitone. +- `01xx`: **Pitch slide up.** +- `02xx`: **Pitch slide down.** +- `F1xx`: **Single tick pitch slide up.** +- `F2xx`: **Single tick pitch slide down.** + +- `03xx`: **Portamento.** Slides the current note's pitch to the specified note. + - A note _must_ be present for this effect to work. +- `E1xy`: **Note slide up.** `x` is the speed, while `y` is how many semitones to slide up. +- `E2xy`: **Note slide down.** `x` is the speed, while `y` is how many semitones to slide down. +- `EAxx`: **Toggle legato.** While on, notes instantly change the pitch of the currrently playing sound instead of starting it over. +- `00xy`: **Arpeggio.** After using this effect the channel will rapidly switch between semitone values of `note`, `note + x` and `note + y`. +- `E0xx`: **Set arpeggio speed.** This sets the number of ticks between arpeggio values. + +- `04xy`: **Vibrato.** Changes pitch to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. + - Maximum vibrato depth is ±1 semitone. +- `E3xx`: **Set vibrato direction.** `xx` may be one of the following: + - `00`: Up and down. + - `01`: Up only. + - `02`: Down only. +- `E4xx`: **Set vibrato range** in 1/16th of a semitone. + +## panning + +Not all chips support these effects. + +- `08xy`: **Set panning.** Changes stereo volumes independently. `x` is the left channel and `y` is the right one. +- `88xy`: **Set rear panning.** Changes rear channel volumes independently. `x` is the rear left channel and `y` is the rear right one. + +- `80xx`: **Set panning (linear).** This effect behaves more like other trackers: - `00` is left. - `80` is center. - `FF` is right. - - not all chips support this effect. -- **`81xx`**: set volume of left channel (from `00` to `FF`). - - not all chips support this effect. -- **`82xx`**: set volume of right channel (from `00` to `FF`). - - not all chips support this effect. -- **`09xx`**: set speed 1. -- **`0Axy`**: volume slide. - - if `x` is 0 then this is a slide down. - - if `y` is 0 then this is a slide up. -- **`0Bxx`**: jump to pattern. -- **`0Cxx`**: retrigger note every `xx` ticks. - - this effect is not continuous. -- **`0Dxx`**: jump to next pattern. -- **`0Fxx`**: set speed 2. +- `81xx`: **Set volume of left channel** (from `00` to `FF`). +- `82xx`: **Set volume of right channel** (from `00` to `FF`). +- `89xx`: **Set volume of rear left channel** (from `00` to `FF`). +- `8Axx`: **Set volume of rear right channel** (from `00` to `FF`). -- **`9xxx`**: set sample position to `xxx`\*0x100. - - not all chips support this effect. +## time -- **`Cxxx`**: change song Hz. +- `09xx`: **Set speed/groove.** If no grooves are defined, this sets speed. If alternating speeds are active, this sets the first speed. +- `0Fxx`: **Set speed 2.** During alternating speeds or a groove, this sets the second speed. + +- `Cxxx`: **Set tick rate.** Changes tick rate to `xxx` Hz (ticks per second). - `xxx` may be from `000` to `3ff`. +- `F0xx`: **Set BPM.** Changes tick rate according to beats per minute. -- **`E0xx`**: set arpeggio tick. - - this sets the number of ticks between arpeggio values. -- **`E1xy`**: note slide up. `x` is the speed, while `y` is how many semitones to slide up. -- **`E2xy`**: note slide down. `x` is the speed, while `y` is how many semitones to slide down. -- **`E3xx`**: set vibrato direction. `xx` may be one of the following: - - `00`: up and down. - - `01`: up only. - - `02`: down only. -- **`E4xx`**: set vibrato range in 1/16th of a semitone. -- **`E5xx`**: set pitch. `80` is 0 cents. - - range is ±1 semitone. -- **`EAxx`**: toggle legato. -- **`EBxx`**: set sample bank. - - does not apply on Amiga. -- **`ECxx`**: note off after `xx` ticks. -- **`EDxx`**: delay note by `xx` ticks. -- **`EExx`**: send external command. - - this effect is currently incomplete. -- **`F0xx`**: change song Hz by BPM value. -- **`F1xx`**: single tick slide up. -- **`F2xx`**: single tick slide down. -- **`F3xx`**: fine volume slide up (64x slower than `0Axy`). -- **`F4xx`**: fine volume slide down (64x slower than `0Axy`). -- **`F5xx`**: disable macro. - - see macro table at the end of this document for possible values. -- **`F6xx`**: enable macro. -- **`F8xx`**: single tick volume slide up. -- **`F9xx`**: single tick volume slide down. -- **`FAxy`**: fast volume slide (4x faster than `0Axy`). - - if `x` is 0 then this is a slide down. - - if `y` is 0 then this is a slide up. -- **`FFxx`**: end of song/stop playback. +- `0Bxx`: **Jump to order.** This can be used to loop a song. +- `0Dxx`: **Jump to next pattern.** This can be used to shorten the current order. +- `FFxx`: **Stop song.** Stops playback and ends the song. -additionally each chip has its own effects. [click here for more details](../7-systems/README.md). +## note + +- `0Cxx`: **Retrigger.** Repeats current note every `xx` ticks. + - This effect is not continuous; it must be entered on every row. +- `ECxx`: **Note cut.** Ends current note after `xx` ticks. For FM instruments, it's equivalent to a "key off". +- `EDxx`: **Note delay.** Delays note by `x` ticks. + +## other + +- `9xxx`: **Set sample position.** Jumps current sample to position `xxx \* 0x100`. + - Not all chips support this effect. +- `EBxx`: **Set sample bank.** + - Does not apply on Amiga. +- `EExx`: **Send external command.** + - This effect is currently incomplete. +- `F5xx`: **Disable macro.** See macro table at the end of this document for possible values. +- `F6xx`: **Enable macro.** + +Additionally, [each chip has its own effects](../7-systems/README.md). ## macro table @@ -98,8 +117,8 @@ ID | macro 11 | extra 6 12 | extra 7 13 | extra 8 ----|----------------------------- -20 | **operator 1 macros** - AM +| | **operator 1 macros** +20 | AM 21 | AR 22 | DR 23 | MULT @@ -119,10 +138,9 @@ ID | macro 31 | VIB 32 | WS 33 | KSR ----|----------------------------- -40 | operator 2 macros -60 | operator 3 macros -80 | operator 4 macros +40 | **operator 2 macros** +60 | **operator 3 macros** +80 | **operator 4 macros** the interpretation of duty, wave and extra macros depends on chip/instrument type: From 598e8ddf03b0c609c1bf810d66cb62e34fb88e6a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 24 Jun 2023 17:45:43 -0500 Subject: [PATCH 143/183] don't handle a buffer of size 0 --- src/engine/playback.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 0021d93b..ce94b883 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -1691,6 +1691,10 @@ void DivEngine::runMidiTime(int totalCycles) { } void DivEngine::nextBuf(float** in, float** out, int inChans, int outChans, unsigned int size) { + if (!size) { + logW("nextBuf called with size 0!"); + return; + } lastLoopPos=-1; if (out!=NULL) { From ecfb0c7136f79c620c32b37de07a1f771cd440fb Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 24 Jun 2023 18:06:55 -0500 Subject: [PATCH 144/183] GUI: sample editor warnings, part 2 --- src/gui/sampleEdit.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index 0ce5b918..f68fd7a8 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -249,6 +249,15 @@ void FurnaceGUI::drawSampleEdit() { default: break; } + if (e->song.system[i]!=DIV_SYSTEM_PCM_DAC) { + if (e->song.system[i]==DIV_SYSTEM_ES5506) { + if (sample->loopMode==DIV_SAMPLE_LOOP_BACKWARD) { + SAMPLE_WARN(warnLoopMode,"ES5506: backward loop mode isn't supported"); + } + } else if (sample->loopMode!=DIV_SAMPLE_LOOP_FORWARD) { + SAMPLE_WARN(warnLoopMode,"backward/ping-pong only supported in Generic PCM DAC\nping-pong also on ES5506"); + } + } // chips grid DivDispatch* dispatch=e->getDispatch(i); @@ -514,6 +523,9 @@ void FurnaceGUI::drawSampleEdit() { } ImGui::EndCombo(); } + if (ImGui::IsItemHovered() && !warnLoopMode.empty()) { + ImGui::SetTooltip("%s",warnLoopMode.c_str()); + } popWarningColor(); pushWarningColor(!warnLoopPos.empty()); From e0de6e084779deb74286ae1c1c0e420093ed9d61 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 24 Jun 2023 18:09:46 -0500 Subject: [PATCH 145/183] update TODO.md --- TODO.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/TODO.md b/TODO.md index 4af99b6f..3df1e22b 100644 --- a/TODO.md +++ b/TODO.md @@ -7,10 +7,7 @@ - maybe reduced set of presets for the sake of simplicity - a more preferable highlight/drag system - some speed/intuitive workflow improvements that go a long way - - Had a hard time finding the docs on github and in Furnace's folder. - make .pdf manual out of doc/ - - you're going too slow; please run - break compatibility if it relieves complexity -- ins/wave/sample organization (folders and all) - multi-key binds - bug fixes From 7beb1271ae0efcde3f8dae16aa4698bdb5fb0a4e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 24 Jun 2023 18:55:55 -0500 Subject: [PATCH 146/183] GUI: add option to disable preset selector --- TODO.md | 1 - src/gui/gui.cpp | 19 ++++++++++++++++++- src/gui/gui.h | 2 ++ src/gui/settings.cpp | 11 +++++++++++ 4 files changed, 31 insertions(+), 2 deletions(-) diff --git a/TODO.md b/TODO.md index 3df1e22b..20c54eb9 100644 --- a/TODO.md +++ b/TODO.md @@ -3,7 +3,6 @@ - tutorial? - ease-of-use improvements... ideas: - preset compat flags - - setting to toggle the Choose a System screen on new project - maybe reduced set of presets for the sake of simplicity - a more preferable highlight/drag system - some speed/intuitive workflow improvements that go a long way diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 4edaeab2..eb8b9943 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -5076,7 +5076,24 @@ bool FurnaceGUI::loop() { newSongQuery=""; newSongFirstFrame=true; displayNew=false; - ImGui::OpenPopup("New Song"); + if (settings.newSongBehavior==1) { + e->createNewFromDefaults(); + undoHist.clear(); + redoHist.clear(); + curFileName=""; + modified=false; + curNibble=false; + orderNibble=false; + orderCursor=-1; + samplePos=0; + updateSampleTex=true; + selStart=SelectionPoint(); + selEnd=SelectionPoint(); + cursor=SelectionPoint(); + updateWindowTitle(); + } else { + ImGui::OpenPopup("New Song"); + } } if (displayEditString) { diff --git a/src/gui/gui.h b/src/gui/gui.h index 77199a6c..8eae6a53 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1508,6 +1508,7 @@ class FurnaceGUI { int renderClearPos; int insertBehavior; int pullDeleteRow; + int newSongBehavior; unsigned int maxUndoSteps; String mainFontPath; String patFontPath; @@ -1659,6 +1660,7 @@ class FurnaceGUI { renderClearPos(0), insertBehavior(1), pullDeleteRow(1), + newSongBehavior(0), maxUndoSteps(100), mainFontPath(""), patFontPath(""), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 33a6c5c6..3da60316 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -508,6 +508,14 @@ void FurnaceGUI::drawSettings() { settings.alwaysPlayIntro=3; } + ImGui::Text("When creating new song:"); + if (ImGui::RadioButton("Display system preset selector##NSB0",settings.newSongBehavior==0)) { + settings.newSongBehavior=0; + } + if (ImGui::RadioButton("Start with initial system##NSB1",settings.newSongBehavior==1)) { + settings.newSongBehavior=1; + } + ImGui::Separator(); if (CWSliderFloat("Double-click time (seconds)",&settings.doubleClickTime,0.02,1.0,"%.2f")) { @@ -2757,6 +2765,7 @@ void FurnaceGUI::syncSettings() { settings.renderClearPos=e->getConfInt("renderClearPos",0); settings.insertBehavior=e->getConfInt("insertBehavior",1); settings.pullDeleteRow=e->getConfInt("pullDeleteRow",1); + settings.newSongBehavior=e->getConfInt("newSongBehavior",0); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -2882,6 +2891,7 @@ void FurnaceGUI::syncSettings() { clampSetting(settings.renderClearPos,0,1); clampSetting(settings.insertBehavior,0,1); clampSetting(settings.pullDeleteRow,0,1); + clampSetting(settings.newSongBehavior,0,1); if (settings.exportLoops<0.0) settings.exportLoops=0.0; if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0; @@ -3103,6 +3113,7 @@ void FurnaceGUI::commitSettings() { e->setConf("renderClearPos",settings.renderClearPos); e->setConf("insertBehavior",settings.insertBehavior); e->setConf("pullDeleteRow",settings.pullDeleteRow); + e->setConf("newSongBehavior",settings.newSongBehavior); // colors for (int i=0; i Date: Sun, 25 Jun 2023 00:05:30 -0700 Subject: [PATCH 147/183] Lots of little cleanup. Trying for more consistency and clarity, especially for quick reference. --- doc/2-interface/basic-mode.md | 2 +- doc/3-pattern/effects.md | 44 ++++++------ doc/4-instrument/README.md | 6 +- doc/5-wave/README.md | 2 +- doc/7-systems/amiga.md | 8 +-- doc/7-systems/ay8910.md | 58 +++++++-------- doc/7-systems/ay8930.md | 78 ++++++++++---------- doc/7-systems/bubblesystem.md | 4 +- doc/7-systems/c64.md | 42 +++++------ doc/7-systems/es5506.md | 68 +++++++++--------- doc/7-systems/fds.md | 16 ++--- doc/7-systems/game-boy.md | 20 +++--- doc/7-systems/genesis.md | 42 +++++------ doc/7-systems/k007232.md | 6 +- doc/7-systems/lynx.md | 3 +- doc/7-systems/mmc5.md | 4 +- doc/7-systems/msm5232.md | 8 +-- doc/7-systems/msm6295.md | 4 +- doc/7-systems/n163.md | 37 ++++++---- doc/7-systems/namco.md | 4 +- doc/7-systems/nes.md | 43 ++++++----- doc/7-systems/opl.md | 82 ++++++++++----------- doc/7-systems/opll.md | 70 +++++++++--------- doc/7-systems/opz.md | 126 ++++++++++++++++---------------- doc/7-systems/pce.md | 16 ++--- doc/7-systems/pcspkr.md | 2 +- doc/7-systems/pet.md | 4 +- doc/7-systems/pokey.md | 6 +- doc/7-systems/qsound.md | 8 +-- doc/7-systems/ricoh.md | 2 +- doc/7-systems/saa1099.md | 8 +-- doc/7-systems/scc.md | 2 +- doc/7-systems/segapcm.md | 4 +- doc/7-systems/sm8521.md | 20 +++--- doc/7-systems/sms.md | 16 ++--- doc/7-systems/snes.md | 74 ++++++++++--------- doc/7-systems/soundunit.md | 56 +++++++-------- doc/7-systems/t6w28.md | 6 +- doc/7-systems/tia.md | 34 ++++----- doc/7-systems/vera.md | 12 ++-- doc/7-systems/vic20.md | 2 +- doc/7-systems/virtual-boy.md | 34 ++++----- doc/7-systems/vrc6.md | 4 +- doc/7-systems/wonderswan.md | 10 +-- doc/7-systems/x1-010.md | 50 ++++++------- doc/7-systems/ym2151.md | 84 +++++++++++----------- doc/7-systems/ym2203.md | 130 +++++++++++++++++----------------- doc/7-systems/ym2608.md | 114 ++++++++++++++--------------- doc/7-systems/ym2610.md | 114 ++++++++++++++--------------- doc/7-systems/ym2610b.md | 112 ++++++++++++++--------------- doc/7-systems/ym2612.md | 80 ++++++++++----------- 51 files changed, 894 insertions(+), 887 deletions(-) diff --git a/doc/2-interface/basic-mode.md b/doc/2-interface/basic-mode.md index a8b0402f..c764d9de 100644 --- a/doc/2-interface/basic-mode.md +++ b/doc/2-interface/basic-mode.md @@ -1,6 +1,6 @@ # basic mode -Furnace comes with a "basic mode" that can be toggled through the "settings" menu. it disables certain features in Furnace that may look intimidating or confusing for newcomers. if you find that a certain feature of furnace is missing, see if this setting is enabled or not. +Furnace comes with a "basic mode" that can be toggled through the "settings" menu. it disables certain features in Furnace that may look intimidating or confusing for newcomers. if you find that a certain feature of Furnace is missing, see if this setting is enabled or not. among the features that cannot be accessed in this mode are: * file menu: diff --git a/doc/3-pattern/effects.md b/doc/3-pattern/effects.md index 518e7abf..3794919d 100644 --- a/doc/3-pattern/effects.md +++ b/doc/3-pattern/effects.md @@ -12,12 +12,12 @@ However, effects are continuous, which means you only need to type it once and t - `F8xx`: **Single tick volume slide up.** - `F9xx`: **Single tick volume slide down.** - `F3xx`: **Fine volume slide up.** 64× slower than `0Axy`. -- `F4xx`: **Fine volume slide down.** 64x slower than `0Axy`. +- `F4xx`: **Fine volume slide down.** 64× slower than `0Axy`. - `FAxy`: **Fast volume slide.** 4× faster than `0Axy`. - If `x` is 0 then this is a slide down. - If `y` is 0 then this is a slide up. -- `07xy`: **Tremolo.** Changes volume to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. +- `07xy`: **Tremolo.** changes volume to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. - Maximum tremolo depth is -60 volume steps. ## pitch @@ -28,15 +28,15 @@ However, effects are continuous, which means you only need to type it once and t - `F1xx`: **Single tick pitch slide up.** - `F2xx`: **Single tick pitch slide down.** -- `03xx`: **Portamento.** Slides the current note's pitch to the specified note. +- `03xx`: **Portamento.** slides the current note's pitch to the specified note. - A note _must_ be present for this effect to work. - `E1xy`: **Note slide up.** `x` is the speed, while `y` is how many semitones to slide up. - `E2xy`: **Note slide down.** `x` is the speed, while `y` is how many semitones to slide down. -- `EAxx`: **Toggle legato.** While on, notes instantly change the pitch of the currrently playing sound instead of starting it over. -- `00xy`: **Arpeggio.** After using this effect the channel will rapidly switch between semitone values of `note`, `note + x` and `note + y`. -- `E0xx`: **Set arpeggio speed.** This sets the number of ticks between arpeggio values. +- `EAxx`: **Toggle legato.** while on, notes instantly change the pitch of the currrently playing sound instead of starting it over. +- `00xy`: **Arpeggio.** after using this effect the channel will rapidly switch between semitone values of `note`, `note + x` and `note + y`. +- `E0xx`: **Set arpeggio speed.** this sets the number of ticks between arpeggio values. -- `04xy`: **Vibrato.** Changes pitch to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. +- `04xy`: **Vibrato.** changes pitch to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. - Maximum vibrato depth is ±1 semitone. - `E3xx`: **Set vibrato direction.** `xx` may be one of the following: - `00`: Up and down. @@ -48,10 +48,10 @@ However, effects are continuous, which means you only need to type it once and t Not all chips support these effects. -- `08xy`: **Set panning.** Changes stereo volumes independently. `x` is the left channel and `y` is the right one. -- `88xy`: **Set rear panning.** Changes rear channel volumes independently. `x` is the rear left channel and `y` is the rear right one. +- `08xy`: **Set panning.** changes stereo volumes independently. `x` is the left channel and `y` is the right one. +- `88xy`: **Set rear panning.** changes rear channel volumes independently. `x` is the rear left channel and `y` is the rear right one. -- `80xx`: **Set panning (linear).** This effect behaves more like other trackers: +- `80xx`: **Set panning (linear).** this effect behaves more like other trackers: - `00` is left. - `80` is center. - `FF` is right. @@ -62,33 +62,33 @@ Not all chips support these effects. ## time -- `09xx`: **Set speed/groove.** If no grooves are defined, this sets speed. If alternating speeds are active, this sets the first speed. -- `0Fxx`: **Set speed 2.** During alternating speeds or a groove, this sets the second speed. +- `09xx`: **Set speed/groove.** if no grooves are defined, this sets speed. If alternating speeds are active, this sets the first speed. +- `0Fxx`: **Set speed 2.** during alternating speeds or a groove, this sets the second speed. -- `Cxxx`: **Set tick rate.** Changes tick rate to `xxx` Hz (ticks per second). +- `Cxxx`: **Set tick rate.** changes tick rate to `xxx` Hz (ticks per second). - `xxx` may be from `000` to `3ff`. -- `F0xx`: **Set BPM.** Changes tick rate according to beats per minute. +- `F0xx`: **Set BPM.** changes tick rate according to beats per minute. -- `0Bxx`: **Jump to order.** This can be used to loop a song. -- `0Dxx`: **Jump to next pattern.** This can be used to shorten the current order. -- `FFxx`: **Stop song.** Stops playback and ends the song. +- `0Bxx`: **Jump to order.** this can be used to loop a song. +- `0Dxx`: **Jump to next pattern.** this can be used to shorten the current order. +- `FFxx`: **Stop song.** stops playback and ends the song. ## note -- `0Cxx`: **Retrigger.** Repeats current note every `xx` ticks. +- `0Cxx`: **Retrigger.** repeats current note every `xx` ticks. - This effect is not continuous; it must be entered on every row. -- `ECxx`: **Note cut.** Ends current note after `xx` ticks. For FM instruments, it's equivalent to a "key off". -- `EDxx`: **Note delay.** Delays note by `x` ticks. +- `ECxx`: **Note cut.** ends current note after `xx` ticks. For FM instruments, it's equivalent to a "key off". +- `EDxx`: **Note delay.** delays note by `x` ticks. ## other -- `9xxx`: **Set sample position.** Jumps current sample to position `xxx \* 0x100`. +- `9xxx`: **Set sample position.** jumps current sample to position `xxx \* 0x100`. - Not all chips support this effect. - `EBxx`: **Set sample bank.** - Does not apply on Amiga. - `EExx`: **Send external command.** - This effect is currently incomplete. -- `F5xx`: **Disable macro.** See macro table at the end of this document for possible values. +- `F5xx`: **Disable macro.** see macro table at the end of this document for possible values. - `F6xx`: **Enable macro.** Additionally, [each chip has its own effects](../7-systems/README.md). diff --git a/doc/4-instrument/README.md b/doc/4-instrument/README.md index 8857cf2e..96ae8821 100644 --- a/doc/4-instrument/README.md +++ b/doc/4-instrument/README.md @@ -52,9 +52,9 @@ Each macro has two buttons on the left. Every macro can be defined though one of three methods, selectable with the leftmost button under the macro type label: -- ![](macro-button-seq.png) **Sequence:** Displayed as a bar graph, this is a sequence of numeric values. -- ![](macro-button-ADSR.png) **ADSR:** This is a traditional ADSR envelope, defined by the rate of increase and decrease of value over time. -- ![](macro-button-LFO.png) **LFO:** The Low Frequency Oscillator generates a repeating wave of values. +- ![](macro-button-seq.png) **Sequence:** displayed as a bar graph, this is a sequence of numeric values. +- ![](macro-button-ADSR.png) **ADSR:** this is a traditional ADSR envelope, defined by the rate of increase and decrease of value over time. +- ![](macro-button-LFO.png) **LFO:** the Low Frequency Oscillator generates a repeating wave of values. Some macros are "bitmap" style. They represent a number of "bits" that can be toggled individually, and the values listed represent the sum of which bits are turned on. diff --git a/doc/5-wave/README.md b/doc/5-wave/README.md index cdf344f0..e0394058 100644 --- a/doc/5-wave/README.md +++ b/doc/5-wave/README.md @@ -11,7 +11,7 @@ Furnace's wavetable editor features multiple ways of creating desired waveform s - **Exponent**: Powers the waveform in the mathematical sense of the word (^2, ^3 and so on) - **XOR Point**: Determines the point where the waveform gets negated. - _TODO:_ amplitude/phase part -- **FM** For creating the waveform with frequency modulation synthesis principles: One can set carrier/modulation levels, frquency multiplier, connection between operators and FM waveforms of these operators. +- **FM** for creating the waveform with frequency modulation synthesis principles: One can set carrier/modulation levels, frquency multiplier, connection between operators and FM waveforms of these operators. - **WaveTools**: Allows user to fine-tune the waveform: scale said waveform in both X and Y axes, smoothen, amplify, normalize, convert to signed/unisgned, invert or even randomize the wavetable. ## wavetable synthesizer diff --git a/doc/7-systems/amiga.md b/doc/7-systems/amiga.md index 907b79fe..25fc4321 100644 --- a/doc/7-systems/amiga.md +++ b/doc/7-systems/amiga.md @@ -6,10 +6,10 @@ in this very computer music trackers were born... # effects -- **`10xx`**: toggle low-pass filter. `0` turns it off and `1` turns it on. -- **`11xx`**: toggle amplitude modulation with the next channel. +- `10xx`: **toggle low-pass filter.** `0` turns it off and `1` turns it on. +- `11xx`: **toggle amplitude modulation with the next channel.** - does not work on the last channel. -- **`12xx`**: toggle period (frequency) modulation with the next channel. +- `12xx`: **toggle period (frequency) modulation with the next channel.** - does not work on the last channel. -- **`13xx`**: change wave. +- `13xx`: **change wave.** - only works when "Mode" is set to "Wavetable" in the instrument. diff --git a/doc/7-systems/ay8910.md b/doc/7-systems/ay8910.md index 4b4724e7..11fa31b3 100644 --- a/doc/7-systems/ay8910.md +++ b/doc/7-systems/ay8910.md @@ -8,39 +8,39 @@ the AY-3-8914 variant was used in Intellivision, which is pretty much an AY with # effects -- **`20xx`**: set channel mode. `xx` may be one of the following: - - `00`: square - - `01`: noise - - `02`: square and noise - - `03`: envelope - - `04`: envelope and square - - `05`: envelope and noise - - `06`: envelope and square and noise - - `07`: nothing -- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. -- **`22xy`**: set envelope mode. - - `x` sets the envelope shape, which may be one of the following: - - `0: \___` decay - - `4: /___` attack once - - `8: \\\\` saw - - `9: \___` decay - - `A: \/\/` inverse obelisco - - `B: \¯¯¯` decay once - - `C: ////` inverse saw - - `D: /¯¯¯` attack - - `E: /\/\` obelisco - - `F: /___` attack once +- `20xx`: **set channel mode.** + - `0`: square + - `1`: noise + - `2`: square and noise + - `3`: envelope + - `4`: envelope and square + - `5`: envelope and noise + - `6`: envelope and square and noise + - `7`: nothing +- `21xx`: **set noise frequency.** range is `0` to `1F`. +- `22xy`: **set envelope mode.** + - `x` sets the envelope shape: + - `0`: `\___` decay + - `4`: `/___` attack once + - `8`: `\\\\` saw + - `9`: `\___` decay + - `A`: `\/\/` inverse obelisco + - `B`: `\¯¯¯` decay once + - `C`: `////` inverse saw + - `D`: `/¯¯¯` attack + - `E`: `/\/\` obelisco + - `F`: `/___` attack once - if `y` is 1 then the envelope will affect this channel. -- **`23xx`**: set envelope period low byte. -- **`24xx`**: set envelope period high byte. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`29xy`**: enable auto-envelope mode. +- `23xx`: **set envelope period low byte.** +- `24xx`: **set envelope period high byte.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `29xy`: **enable auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- **`2Exx`**: write to I/O port A. +- `2Exx`: **write to I/O port A.** - this changes the port's mode to "write". make sure you have connected something to it. -- **`2Fxx`**: write to I/O port B. +- `2Fxx`: **write to I/O port B.** - this changes the port's mode to "write". make sure you have connected something to it. diff --git a/doc/7-systems/ay8930.md b/doc/7-systems/ay8930.md index dda2e758..6bbe0685 100644 --- a/doc/7-systems/ay8930.md +++ b/doc/7-systems/ay8930.md @@ -3,52 +3,52 @@ a backwards-compatible successor to the AY-3-8910, with increased volume resolution, duty cycle control, three envelopes and highly configurable noise generator. sadly, this soundchip has only ever observed minimal success, and has remained rather obscure since. -it is best known for being used in the Covox Sound Master, which didn't sell well either. It also observed very minimal success in Merit's CRT-250 machines, but only as a replacement for the AY-3-8910. +it is best known for being used in the Covox Sound Master, which didn't sell well either. it also observed very minimal success in Merit's CRT-250 machines, but only as a replacement for the AY-3-8910. emulation of this chip in Furnace is now complete thanks to community efforts and hardware testing, which an MSX board called Darky has permitted. # effects -- **`12xx`**: set channel duty cycle. `xx` is a value between 00 and 08. - - `00`: 3.125% - - `01`: 6.25% - - `02`: 12.5% - - `03`: 25% - - `04`: 50% - - `05`: 75% - - `06`: 87.5% - - `07`: 93.75% - - `08`: 96.875% -- **`20xx`**: set channel mode. `xx` may be one of the following: - - `00`: square - - `01`: noise - - `02`: square and noise - - `03`: envelope - - `04`: envelope and square - - `05`: envelope and noise - - `06`: envelope and square and noise - - `07`: nothing -- **`21xx`**: set noise frequency. `xx` is a value between 00 and FF. -- **`22xy`**: set envelope mode. +- `12xx`: **set channel duty cycle.** + - `0`: 3.125% + - `1`: 6.25% + - `2`: 12.5% + - `3`: 25% + - `4`: 50% + - `5`: 75% + - `6`: 87.5% + - `7`: 93.75% + - `8`: 96.875% +- `20xx`: **set channel mode.** `xx` may be one of the following: + - `0`: square + - `1`: noise + - `2`: square and noise + - `3`: envelope + - `4`: envelope and square + - `5`: envelope and noise + - `6`: envelope and square and noise + - `7`: nothing +- `21xx`: **set noise frequency.** `xx` is a value between `00` and `FF`. +- `22xy`: **set envelope mode.** - `x` sets the envelope shape, which may be one of the following: - - `0: \___` decay - - `4: /___` attack once - - `8: \\\\` saw - - `9: \___` decay - - `A: \/\/` inverse obelisco - - `B: \¯¯¯` decay once - - `C: ////` inverse saw - - `D: /¯¯¯` attack - - `E: /\/\` obelisco - - `F: /___` attack once + - `0`: `\___` decay + - `4`: `/___` attack once + - `8`: `\\\\` saw + - `9`: `\___` decay + - `A`: `\/\/` inverse obelisco + - `B`: `\¯¯¯` decay once + - `C`: `////` inverse saw + - `D`: `/¯¯¯` attack + - `E`: `/\/\` obelisco + - `F`: `/___` attack once - if `y` is 1 then the envelope will affect this channel. -- **`23xx`**: set envelope period low byte. -- **`24xx`**: set envelope period high byte. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`27xx`**: set noise AND mask. -- **`28xx`**: set noise OR mask. -- **`29xy`**: enable auto-envelope mode. +- `23xx`: **set envelope period low byte.** +- `24xx`: **set envelope period high byte.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `27xx`: **set noise AND mask.** +- `28xx`: **set noise OR mask.** +- `29xy`: **enable auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. diff --git a/doc/7-systems/bubblesystem.md b/doc/7-systems/bubblesystem.md index 1a904b9d..c04aa098 100644 --- a/doc/7-systems/bubblesystem.md +++ b/doc/7-systems/bubblesystem.md @@ -6,8 +6,8 @@ however, the K005289 is just part of the logic used for pitch and wavetable ROM waveform select and volume control are tied with single AY-3-8910 IO for both channels. another AY-3-8910 IO is used for reading sound hardware status. -Furnace emulates this configuration as a "chip" with 32x16 wavetables. +Furnace emulates this configuration as a "chip" with 32×16 wavetables. # effects -- **`10xx`**: change wave. +- `10xx`: **change wave.** diff --git a/doc/7-systems/c64.md b/doc/7-systems/c64.md index 4b0f26f1..7627f3d9 100644 --- a/doc/7-systems/c64.md +++ b/doc/7-systems/c64.md @@ -8,7 +8,7 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro # effects -- **`10xx`**: change wave. the following values are accepted: +- `10xx`: **change wave.** the following values are accepted: - `00`: nothing - `01`: triangle - `02`: saw @@ -18,14 +18,14 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro - `06`: pulse and saw - `07`: pulse and triangle and saw - `08`: noise -- **`11xx`**: set coarse cutoff. `xx` may be a value between 00 to 64. - - **this effect only exists for compatibility reasons, and its use is discouraged.** +- `11xx`: **set coarse cutoff.** `xx` may be a value between `00` and `64`. + - _this effect only exists for compatibility reasons, and its use is discouraged._ - use effect `4xxx` instead. -- **`12xx`**: set coarse duty cycle. `xx` may be a value between 00 to 64. - - **this effect only exists for compatibility reasons, and its use is discouraged.** +- `12xx`: **set coarse duty cycle.** `xx` may be a value between `00` and `64`. + - _this effect only exists for compatibility reasons, and its use is discouraged._ - use effect `3xxx` instead. -- **`13xx`**: set resonance. `xx` may be a value between 00 and 0F. -- **`14xx`**: set filter mode. the following values are accepted: +- `13xx`: **set resonance.** `xx` may be a value between `00` and `0F`. +- `14xx`: **set filter mode.** the following values are accepted: - `00`: filter off - `01`: low pass - `02`: band pass @@ -34,26 +34,26 @@ two versions of aforementioned chip exist - 6581 (original chip) and 8580 (impro - `05`: band reject/stop/notch - `06`: high+band pass - `07`: all pass -- **`15xx`**: set envelope reset time. +- `15xx`: **set envelope reset time.** - this is the amount of ticks the channel turns off before a note occurs in order to reset the envelope safely. - if `xx` is 0 or higher than the song speed, the envelope will not reset. -- **`1Axx`**: disable envelope reset for this channel. -- **`1Bxy`**: reset cutoff: +- `1Axx`: **disable envelope reset for this channel.** +- `1Bxy`: **reset cutoff**: - if `x` is not 0: on new note - if `y` is not 0: now - this effect is not necessary if the instrument's cutoff macro is absolute. -- **`1Cxy`**: reset duty cycle: +- `1Cxy`: **reset duty cycle**: - if `x` is not 0: on new note - if `y` is not 0: now - this effect is not necessary if the instrument's duty macro is absolute. -- **`1Exy`**: change additional parameters. +- `1Exy`: **change additional parameters.** - `x` may be one of the following: - - `0`: attack (`y` from 0 to F) - - `1`: decay (`y` from 0 to F) - - `2`: sustain (`y` from 0 to F) - - `3`: release (`y` from 0 to F) - - `4`: ring modulation (`y` is 0 or 1) - - `5`: oscillator sync (`y` is 0 or 1) - - `6`: disable channel 3 (`y` is 0 or 1) -- **`3xxx`**: set duty cycle. `xxx` range is 000-FFF -- **`4xxx`**: set cutoff. `xxx` range is 000-7FF. + - `0`: attack (`y` from `0` to `F`) + - `1`: decay (`y` from `0` to `F`) + - `2`: sustain (`y` from `0` to `F`) + - `3`: release (`y` from `0` to `F`) + - `4`: ring modulation (`y` is `0` or `1`) + - `5`: oscillator sync (`y` is `0` or `1`) + - `6`: disable channel 3 (`y` is `0` or `1`) +- `3xxx`: **set duty cycle.** `xxx` range is `000` to `FFF`. +- `4xxx`: **set cutoff.** `xxx` range is `000` to `7FF`. diff --git a/doc/7-systems/es5506.md b/doc/7-systems/es5506.md index 759fdde5..436aca0c 100644 --- a/doc/7-systems/es5506.md +++ b/doc/7-systems/es5506.md @@ -1,41 +1,41 @@ # Ensoniq ES5506 (OTTO) -Sample-based synthesis chip used in a bunch of Taito arcade machines and PC sound cards like Soundscape Elite. A variant of it was the heart of the well-known Gravis Ultrasound. +sample-based synthesis chip used in a bunch of Taito arcade machines and PC sound cards like Soundscape Elite. a variant of it was the heart of the well-known Gravis Ultrasound. -it supports a whooping 32 channels of 16-bit PCM and: +it supports a whopping 32 channels of 16-bit PCM and: -- Real time digital filters -- Frequency interpolation -- Loop start and stop positions for each voice (bidirectional and reverse looping) -- Internal volume multiplication and stereo panning -- Hardware support for envelopes +- real time digital filters +- frequency interpolation +- loop start and stop positions for each voice (bidirectional and reverse looping) +- internal volume multiplication and stereo panning +- hardware support for envelopes # effects -- **`10xx`**: set waveform. -- **`11xx`**: set filter mode (0-3) -- **`120x`**: set pause (bit 0). Pauses the sample until the bit is unset, where it will then resume where it left off. -- **`14xx`**: set filter coefficient K1 low byte. -- **`15xx`**: set filter coefficient K1 high byte. -- **`16xx`**: set filter coefficient K2 low byte. -- **`17xx`**: set filter coefficient K2 high byte. -- **`18xx`**: set filter coefficient K1 slide up. -- **`19xx`**: set filter coefficient K1 slide down. -- **`1Axx`**: set filter coefficient K2 slide up. -- **`1Bxx`**: set filter coefficient K2 slide down. -- **`20xx`**: set envelope count. -- **`22xx`**: set envelope left volume ramp. -- **`23xx`**: set envelope right volume ramp. -- **`24xx`**: set envelope filter coefficient K1 ramp. -- **`25xx`**: set envelope filter coefficient K1 ramp (slower). -- **`26xx`**: set envelope filter coefficient K2 ramp. -- **`27xx`**: set envelope filter coefficient K2 ramp (slower). -- **`3xxx`**: set coarse filter coefficient K1. -- **`4xxx`**: set coarse filter coefficient K2. -- **`81xx`**: set panning (left channel). -- **`82xx`**: set panning (right channel). -- **`88xx`**: set panning (rear channels). -- **`89xx`**: set panning (rear left channel). -- **`8Axx`**: set panning (rear right channel). -- **`9xxx`**: set sample offset (x256). -- **`DFxx`**: set sample playback direction. +- `10xx`: **set waveform.** +- `11xx`: **set filter mode.** values are `0` through `3`. +- `120x`: **set pause (bit 0).** pauses the sample until the bit is unset; it will then resume where it left off. +- `14xx`: **set filter coefficient K1 low byte.** +- `15xx`: **set filter coefficient K1 high byte.** +- `16xx`: **set filter coefficient K2 low byte.** +- `17xx`: **set filter coefficient K2 high byte.** +- `18xx`: **set filter coefficient K1 slide up.** +- `19xx`: **set filter coefficient K1 slide down.** +- `1Axx`: **set filter coefficient K2 slide up.** +- `1Bxx`: **set filter coefficient K2 slide down.** +- `20xx`: **set envelope count.** +- `22xx`: **set envelope left volume ramp.** +- `23xx`: **set envelope right volume ramp.** +- `24xx`: **set envelope filter coefficient K1 ramp.** +- `25xx`: **set envelope filter coefficient K1 ramp (slower).** +- `26xx`: **set envelope filter coefficient K2 ramp.** +- `27xx`: **set envelope filter coefficient K2 ramp (slower).** +- `3xxx`: **set coarse filter coefficient K1.** +- `4xxx`: **set coarse filter coefficient K2.** +- `81xx`: **set panning (left channel).** +- `82xx`: **set panning (right channel).** +- `88xx`: **set panning (rear channels).** +- `89xx`: **set panning (rear left channel).** +- `8Axx`: **set panning (rear right channel).** +- `9xxx`: **set sample offset.** resets sample position to `xxx * 0x100`. +- `DFxx`: **set sample playback direction.** diff --git a/doc/7-systems/fds.md b/doc/7-systems/fds.md index 83e8538b..8105d107 100644 --- a/doc/7-systems/fds.md +++ b/doc/7-systems/fds.md @@ -1,20 +1,20 @@ # Famicom Disk System -the Famicom Disk System is an expansion device for the Famicom (known as NES outside Japan), a popular console from the '80's. +the Famicom Disk System is an expansion device for the Famicom (known as NES outside Japan), a popular console from the '80s. as it name implies, it allowed people to play games on specialized floppy disks that could be rewritten on vending machines, therefore reducing the cost of ownership and manufacturing. it also offers an additional 6-bit, 64-byte wavetable sound channel with (somewhat limited) FM capabilities, which is what Furnace supports. # effects -- **`10xx`**: change wave. -- **`11xx`**: set modulation depth. -- **`12xy`**: set modulation speed high byte and toggle on/off. - - `x` is the toggle. a value of 1 turns on the modulator. +- `10xx`: **change wave.** +- `11xx`: **set modulation depth.** +- `12xy`: **set modulation speed high byte and toggle on/off.** + - `x` is the toggle. a value of `1` turns on the modulator. - `y` is the speed. -- **`13xx`**: set modulation speed low byte. -- **`14xx`**: set modulator position. -- **`15xx`**: set modulator wave. +- `13xx`: **set modulation speed low byte.** +- `14xx`: **set modulator position.** +- `15xx`: **set modulator wave.** - `xx` points to a wavetable. it should (preferably) have a height of 7 with the values mapping to: - 0: +0 - 1: +1 diff --git a/doc/7-systems/game-boy.md b/doc/7-systems/game-boy.md index 16b6c149..505de282 100644 --- a/doc/7-systems/game-boy.md +++ b/doc/7-systems/game-boy.md @@ -6,13 +6,17 @@ with stereo sound, two pulse channels, a wave channel and a noise one it packed # effects -- **`10xx`**: change wave. -- **`11xx`**: set noise length. `xx` may be one of: - - 0: long - - 1: short -- **`12xx`**: set duty cycle (from 0 to 3). -- **`13xy`**: setup sweep (pulse channels only). +- `10xx`: **change wave.** +- `11xx`: **set noise length.** + - `0`: long + - `1`: short +- `12xx`: **set duty cycle.** + - `0`: 12.5% + - `1`: 25% + - `2`: 50% + - `3`: 75% +- `13xy`: **setup sweep.** pulse channels only. - `x` is the time. - `y` is the shift. - - set to 0 to disable it. -- **`14xx`**: set sweep direction. 0 is up and 1 is down. + - set to `0` to disable it. +- `14xx`: **set sweep direction.** `0` is up and `1` is down. diff --git a/doc/7-systems/genesis.md b/doc/7-systems/genesis.md index fd7fc56d..f0b81522 100644 --- a/doc/7-systems/genesis.md +++ b/doc/7-systems/genesis.md @@ -6,32 +6,32 @@ this console is powered by two sound chips: the [Yamaha YM2612](ym2612.md) and [ # effects -- **`10xy`**: set LFO parameters. +- `10xy`: **set LFO parameters.** - `x` toggles the LFO. - `y` sets its speed. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`17xx`**: enable PCM channel. +- `17xx`: **enable PCM channel.** - this only works on channel 6. - - **this effect is there for compatibility reasons** - it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). -- **`18xx`**: toggle extended channel 3 mode. - - 0 disables it and 1 enables it. + - _this effect is here for compatibility reasons!_ it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). +- `18xx`: **toggle extended channel 3 mode.** + - `0` disables it and `1` enables it. - only in extended channel 3 chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`20xy`**: set PSG noise mode. +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `20xy`: **set PSG noise mode.** - `x` controls whether to inherit frequency from PSG channel 3. - - 0: use one of 3 preset frequencies (C: A-2; C#: A-3; D: A-4). - - 1: use frequency of PSG channel 3. + - `0`: use one of 3 preset frequencies (C: A-2; C#: A-3; D: A-4). + - `1`: use frequency of PSG channel 3. - `y` controls whether to select noise or thin pulse. - - 0: thin pulse. - - 1: noise. + - `0`: thin pulse. + - `1`: noise. diff --git a/doc/7-systems/k007232.md b/doc/7-systems/k007232.md index adf7d95f..f5571e1e 100644 --- a/doc/7-systems/k007232.md +++ b/doc/7-systems/k007232.md @@ -2,10 +2,10 @@ a 2-channel PCM sound chip from Konami which was used in some of their 1986-1990 arcade boards. -Its sample format is unique; the topmost bit is the end marker, and the low 7 bits are used for generating sound (unsigned format). +its sample format is unique; the topmost bit is the end marker, and the low 7 bits are used for generating sound (unsigned format). -It has 7 bit digital output per each channel and no volume register on chip, so it needs external logic to control channel volume. +it has 7 bit digital output per each channel and no volume register on chip, so it needs external logic to control channel volume. # effects -- Nothing for now +- nothing for now. diff --git a/doc/7-systems/lynx.md b/doc/7-systems/lynx.md index 7c46ec44..24f32634 100644 --- a/doc/7-systems/lynx.md +++ b/doc/7-systems/lynx.md @@ -15,6 +15,5 @@ the Atari Lynx has a 6502-based CPU with a sound part (this chip is known as MIK # effects -- **`3xxx`**: Load LFSR (0 to FFF). - - this is a bitmask. +- `3xxx`: **load LFSR.** this is a bitmask with values ranging from `000` to `FFF`. - for it to work, duty macro in instrument editor must be set to some value. without it LFSR will not be fed with any bits. diff --git a/doc/7-systems/mmc5.md b/doc/7-systems/mmc5.md index ef3e3140..a838dfe8 100644 --- a/doc/7-systems/mmc5.md +++ b/doc/7-systems/mmc5.md @@ -8,5 +8,5 @@ additionally, it offers an 8-bit DAC which can be used to play samples. only one # effects -- **`12xx`**: set duty cycle or noise mode of channel. - - may be 0-3 for the pulse channels. +- `12xx`: **set duty cycle or noise mode of channel.** + - may be `0` through `3` for the pulse channels. diff --git a/doc/7-systems/msm5232.md b/doc/7-systems/msm5232.md index 7c5ffa6b..0f28cb78 100644 --- a/doc/7-systems/msm5232.md +++ b/doc/7-systems/msm5232.md @@ -16,11 +16,11 @@ Furnace implements this chip in a way that allows the following features: # effects -- **`10xy`**: set group control. +- `10xy`: **set group control.** - `x` sets sustain mode. - `y` is a 4-bit mask which toggles overtones. -- **`11xx`**: set noise mode. -- **`12xx`**: set group attack (0 to 5). +- `11xx`: **set noise mode.** +- `12xx`: **set group attack.** range is `0` to `5`. - only in internal (capacitor-based) envelope mode. -- **`13xx`**: set group decay (0 to 11). +- `13xx`: **set group decay.** range is `0` to `11`. - only in internal (capacitor-based) envelope mode. diff --git a/doc/7-systems/msm6295.md b/doc/7-systems/msm6295.md index 1faf1566..3785cc62 100644 --- a/doc/7-systems/msm6295.md +++ b/doc/7-systems/msm6295.md @@ -1,7 +1,7 @@ # OKI MSM6295 -an upgrade from 6258 - it provides 4 ADPCM channels, at max 32 KHz (still no variable pitch though). between late 80s and late 90s, it was one of the most common, if not THE most common soundchip used in arcade machines (Capcom, Toaplan, Kaneko, Atari, Tecmo, the list can go on and on...) +an upgrade from 6258 - it provides 4 ADPCM channels, at max 32 KHz (still no variable pitch though). between late '80s and late '90s, it was one of the most common, if not _the_ most common soundchip used in arcade machines (Capcom, Toaplan, Kaneko, Atari, Tecmo, the list can go on and on...) # effects -- **`20xx`**: set chip output rate. +- `20xx`: **set chip output rate.** diff --git a/doc/7-systems/n163.md b/doc/7-systems/n163.md index 50b2bbd1..cb5ff530 100644 --- a/doc/7-systems/n163.md +++ b/doc/7-systems/n163.md @@ -13,20 +13,29 @@ Furnace supports loading waveforms into RAM and waveform playback simultaneously you must load waveform to RAM first for playback, as its load behavior auto-updates when every waveform changes. both waveform playback and load command work independently per each channel columns. -(Global) commands don't care about the channel columns for work commands and its load behavior is independent with per-channel column load commands. +global commands don't care about the channel columns for work commands and its load behavior is independent with per-channel column load commands. # effects -- **`10xx`**: set waveform for playback. -- **`11xx`**: set waveform position in RAM for playback (single nibble unit). -- **`12xx`**: set waveform length in RAM for playback (04 to FC, 4 nibble unit). -- **`130x`**: set playback waveform update behavior (0: off, bit 0: update now, bit 1: update when every waveform is changed). -- **`14xx`**: set waveform for load to RAM. -- **`15xx`**: set waveform position for load to RAM (single nibble unit). -- **`16xx`**: set waveform length for load to RAM (04 to FC, 4 nibble unit). -- **`170x`**: set waveform load behavior (0: off, bit 0: load now, bit 1: load when every waveform is changed). -- **`180x`**: set channel limit (0 to 7, x + 1). -- **`20xx`**: (Global) set waveform for load to RAM. -- **`21xx`**: (Global) set waveform position for load to RAM (single nibble unit). -- **`22xx`**: (Global) set waveform length for load to RAM (04 to FC, 4 nibble unit). -- **`230x`**: (Global) set waveform load behavior (0: off, bit 0: load now, bit 1: load when every waveform is changed). +- `10xx`: **set waveform for playback.** +- `11xx`: **set waveform position in RAM for playback.** single nibble unit. +- `12xx`: **set waveform length in RAM for playback.** `04` to `FC`, 4 nibble unit. +- `130x`: **set playback waveform update behavior.** + - `0`: off. + - bit 0: update now. + - bit 1: update when every waveform is changed. +- `14xx`: **set waveform for load to RAM.** +- `15xx`: **set waveform position for load to RAM.** single nibble unit. +- `16xx`: **set waveform length for load to RAM.** `04` to `FC`, 4 nibble unit. +- `170x`: **set waveform load behavior.** + - `0`: off. + - bit 0: load now. + - bit 1: load when every waveform is changed. +- `180x`: **set channel limit.** range is `0` to `7`; 1 is added to get results of 1 through 8. +- `20xx`: **globally set waveform for load to RAM.** +- `21xx`: **globally set waveform position for load to RAM.** single nibble unit. +- `22xx`: **globally set waveform length for load to RAM.** `04` to `FC`, 4 nibble unit. +- `230x`: **globally set waveform load behavior.** + - `0`: off. + - bit 0: load now. + - bit 1: load when every waveform is changed. diff --git a/doc/7-systems/namco.md b/doc/7-systems/namco.md index 12d9ec9e..54d8b964 100644 --- a/doc/7-systems/namco.md +++ b/doc/7-systems/namco.md @@ -6,5 +6,5 @@ everything starts with Namco WSG, which is a simple 3-channel wavetable with no # effects -- **`10xx`**: change waveform. -- **`11xx`**: toggle noise mode (WARNING: only on C30). +- `10xx`: **change waveform.** +- `11xx`: **toggle noise mode.** _warning:_ only on C30. diff --git a/doc/7-systems/nes.md b/doc/7-systems/nes.md index 9292a1de..0a92628e 100644 --- a/doc/7-systems/nes.md +++ b/doc/7-systems/nes.md @@ -6,30 +6,29 @@ also known as Famicom. it is a five-channel sound generator: first two channels # effects -- **`11xx`**: write to delta modulation counter. - - this may be used to attenuate the triangle and noise channels. +- `11xx`: **write to delta modulation counter.** this may be used to attenuate the triangle and noise channels. - will not work if a sample is playing. -- **`12xx`**: set duty cycle or noise mode of channel. - - may be 0-3 for the pulse channels and 0-1 for the noise channel. -- **`13xy`**: setup sweep up. +- `12xx`: **set duty cycle or noise mode of channel.** + - may be `0` to `3` for the pulse channels and `0` or `1` for the noise channel. +- `13xy`: **setup sweep up.** - `x` is the time. - `y` is the shift. - - set to 0 to disable it. -- **`14xy`**: setup sweep down. + - set to `0` to disable it. +- `14xy`: **setup sweep down.** - `x` is the time. - `y` is the shift. - - set to 0 to disable it. -- **`15xx`**: set envelope mode. - - `0`: envelope + length counter (volume represents envelope duration). - - `1`: length counter (volume represents output volume). - - `2`: looping envelope (volume represents envelope duration). - - `3`: constant volume (default; volume represents output volume). - - pulse and noise channels only. + - set to `0` to disable it. +- `15xx`: **set envelope mode.** + - `0`: envelope + length counter. volume represents envelope duration. + - `1`: length counter. volume represents output volume. + - `2`: looping envelope. volume represents envelope duration. + - `3`: constant volume. default value. volume represents output volume. + - Pulse and noise channels only. - you may need to apply a phase reset (using the macro) to make the envelope effective. -- **`16xx`**: set length counter. +- `16xx`: **set length counter.** - see table below for possible values. - this will trigger phase reset. -- **`17xx`**: set frame counter mode. +- `17xx`: **set frame counter mode.** - `0`: 4-step. - NTSC: 120Hz sweeps and lengths; 240Hz envelope. - PAL: 100Hz sweeps and lengths; 200Hz envelope. @@ -38,21 +37,21 @@ also known as Famicom. it is a five-channel sound generator: first two channels - NTSC: 96Hz sweeps and lengths; 192Hz envelope. - PAL: 80Hz sweeps and lengths; 160Hz envelope. - Dendy: 95.1Hz sweeps and lengths; 190.2Hz envelope. -- **`18xx`**: set PCM channel mode. +- `18xx`: **set PCM channel mode.** - `00`: PCM (software). - `01`: DPCM (hardware). - - when in DPCM mode, samples will sound muffled (due to its nature), availables pitches are limited and loop point is ignored. -- **`19xx`**: set triangle linear counter. + - when in DPCM mode, samples will sound muffled (due to its nature), availables pitches are limited, and loop point is ignored. +- `19xx`: **set triangle linear counter.** - `00` to `7F` set the counter. - `80` and higher halt it. -- **`20xx`**: set DPCM frequency. +- `20xx`: **set DPCM frequency.** - only works in DPCM mode. - see table below for possible values. # DPCM frequency table val | NTSC | PAL -----|-----------|----------- +----|----------:|----------: 00 | 4181.7Hz | 4177.4Hz 01 | 4709.9Hz | 4696.6Hz 02 | 5264.0Hz | 5261.4Hz @@ -73,7 +72,7 @@ val | NTSC | PAL # length counter table val | raw | NTSC | PAL | Dendy | NTSC 5-step | PAL 5-step | Dendy 5-step -----|-----|-------|-------|-------|-------------|------------|-------------- +----|----:|------:|------:|------:|------------:|-----------:|-------------: 00 | 10 | 83ms | 100ms | 84ms | 104ms | 125ms | 105ms 01 | 254 | 2.1s | 2.5s | 2.1s | 2.6s | 3.2s | 2.7s 02 | 20 | 166ms | 200ms | 168ms | 208ms | 250ms | 210ms diff --git a/doc/7-systems/opl.md b/doc/7-systems/opl.md index 3f9e9c0c..5f7034cb 100644 --- a/doc/7-systems/opl.md +++ b/doc/7-systems/opl.md @@ -16,65 +16,65 @@ afterwards everyone moved to Windows and software mixed PCM streaming... # effects -- 10xx: set AM depth. the following values are accepted: - - 0: 1dB (shallow) - - 1: 4.8dB (deep) +- `10xx`: **set AM depth.** the following values are accepted: + - `0`: 1dB (shallow) + - `1`: 4.8dB (deep) - this effect applies to all channels. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** - only in 4-op mode (OPL3). -- **`15xx`**: set operator 4 level. +- `15xx`: **set operator 4 level.** - only in 4-op mode (OPL3). -- **`16xy`**: set multiplier of operator. +- `16xy`: **sSet multiplier of operator.** - `x` is the operator (1-4; last 2 operators only in 4-op mode). - `y` is the multiplier. -- 17xx: set vibrato depth. the following values are accepted: - - 0: normal - - 1: double +- `17xx`: **set vibrato depth.** + - `0`: normal + - `1`: double - this effect applies to all channels. -- **`18xx`**: toggle drums mode. - - 0 disables it and 1 enables it. +- `18xx`: **toggle drums mode.** + - `0` disables it and `1` enables it. - only in drums chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** - only in 4-op mode (OPL3). -- **`1Dxx`**: set attack of operator 4. +- `1Dxx`: **set attack of operator 4.** - only in 4-op mode (OPL3). -- **`2Axy`**: set waveform of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `2Axy`: **set waveform of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` is the value. - only in OPL2 or higher. -- **`30xx`**: enable envelope hard reset. +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `50xy`: **set AM of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `51xy`: **set SL of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `52xy`: **set RR of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` is the value. -- **`53xy`**: set VIB of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `53xy`: **set VIB of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` determines whether VIB is on. -- **`54xy`**: set KSL of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `54xy`: **set KSL of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` is the value. -- **`55xy`**: set SUS of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `55xy`: **set SUS of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` determines whether SUS is on. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** - only in 4-op mode (OPL3). -- **`5Axx`**: set DR of operator 4. +- `5Axx`: **set DR of operator 4.** - only in 4-op mode (OPL3). -- **`5Bxy`**: set KSR of operator. - - `x` is the operator (1-4; last 2 operators only in 4-op mode). a value of 0 means "all operators". +- `5Bxy`: **set KSR of operator.** + - `x` is the operator from 1 to 4; the last 2 operators only work in 4-op mode. a value of `0` means "all operators". - `y` determines whether KSR is on. diff --git a/doc/7-systems/opll.md b/doc/7-systems/opll.md index e4dc3ae3..c5dd4ff6 100644 --- a/doc/7-systems/opll.md +++ b/doc/7-systems/opll.md @@ -12,56 +12,56 @@ OPLL also spawned a few derivative chips, the best known of these is: the YM2413 is equipped with the following features: - 9 channels of 2 operator FM synthesis -- A drum/percussion mode, replacing the last 3 voices with 5 rhythm channels, with drum mode tones hard-defined in the chip itself, like FM instruments. Only pitch might be altered. +- a drum/percussion mode, replacing the last 3 voices with 5 rhythm channels, with drum mode tones hard-defined in the chip itself, like FM instruments. only pitch might be altered. - - Drum mode works like following: FM channel 7 is for Kick Drum, which is a normal FM channel but routed through mxier twice for 2x volume, like all drum sounds. FM channel 8 splits to Snare Drum and Hi-Hat. Snare Drum is the carrier and it works with a special 1 bit noise generator combined with a square wave, all possible by overriding phase-generator with some different synthesis method. Hi-Hat is the modulator and it works with the noise generator and also the special synthesis. CH9 splits to Top-Cymbal and Tom-Tom, Top-Cymbal is the carrier and only has the special synthesis, while Tom-Tom is basically a 1op wave. - - Special syntheis mentioned already is: 5 square waves are gathered from 4x, 64x and 128x the pitch of channel 8 and 16x and 64x the pitch of channel 9 and they go through a process where 2 HH bits OR'd together, then 1 HH and 1 TC bit OR'd, then the two TC bits OR'd together, and those 3 results get XOR'd. + - drum mode works like following: FM channel 7 is for Kick Drum, which is a normal FM channel but routed through mixer twice for 2× volume, like all drum sounds. FM channel 8 splits to Snare, Drum, and Hi-Hat. Snare Drum is the carrier and it works with a special 1 bit noise generator combined with a square wave, all possible by overriding phase-generator with some different synthesis method. Hi-Hat is the modulator and it works with the noise generator and also the special synthesis. CH9 splits to Top-Cymbal and Tom-Tom, Top-Cymbal is the carrier and only has the special synthesis, while Tom-Tom is basically a 1op wave. + - special synthesis mentioned already is: 5 square waves are gathered from 4×, 64× and 128× the pitch of channel 8 and 16× and 64× the pitch of channel 9 and they go through a process where 2 HH bits OR'd together, then 1 HH and 1 TC bit OR'd, then the two TC bits OR'd together, and those 3 results get XOR'd. - 1 user-definable patch (this patch can be changed throughout the course of the song) - 15 pre-defined patches which can all be used at the same time -- Support for ADSR on both the modulator and the carrier -- Sine and half-sine based FM synthesis +- support for ADSR on both the modulator and the carrier +- sine and half-sine based FM synthesis - 9 octave note control - 4096 different frequencies for channels -- 16 unique volume levels (NOTE: Volume 0 is NOT silent.) -- Modulator and carrier key scaling -- Built-in hardware vibrato support +- 16 unique volume levels (NOTE: volume 0 is NOT silent.) +- modulator and carrier key scaling +- built-in hardware vibrato support # effects -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`16xy`**: set multiplier of operator. - - `x` is the operator (1 or 2). +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `16xy`: **set multiplier of operator.** + - `x` is the operator, either 1 or 2. - `y` is the multiplier. -- **`18xx`**: toggle drums mode. - - 0 disables it and 1 enables it. +- `18xx`: **toggle drums mode.** + - `0` disables it and `1` enables it. - only in drums chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`50xy`**: set AM of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `50xy`: **set AM of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `51xy`: **set SL of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `52xy`: **set RR of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` is the value. -- **`53xy`**: set VIB of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `53xy`: **set VIB of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` determines whether VIB is on. -- **`54xy`**: set KSL of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `54xy`: **set KSL of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` is the value. -- **`55xy`**: set EGT of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `55xy`: **set EGT of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` determines whether EGT is on. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`5Bxy`**: set KSR of operator. - - `x` is the operator (1-2). a value of 0 means "all operators". +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `5Bxy`: **set KSR of operator.** + - `x` is the operator, either 1 or 2. a value of `0` means "all operators". - `y` determines whether KSR is on. diff --git a/doc/7-systems/opz.md b/doc/7-systems/opz.md index f5b79d4c..1abef5c4 100644 --- a/doc/7-systems/opz.md +++ b/doc/7-systems/opz.md @@ -25,91 +25,91 @@ no plans have been made for TX81Z MIDI passthrough, because: # effects -- **`10xx`**: set noise frequency of channel 8 operator 4. 00 disables noise while 01 to 20 enables it. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `10xx`: **set noise frequency of channel 8 operator 4.** `00` disables noise while `01` to `20` enable it. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`17xx`**: set LFO speed. -- **`18xx`**: set LFO waveform. `xx` may be one of the following: +- `17xx`: **set LFO speed.** +- `18xx`: **set LFO waveform.** `xx` may be one of the following: - `00`: saw - `01`: square - `02`: triangle - `03`: noise -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`1Exx`**: set LFO AM depth. -- **`1Fxx`**: set LFO PM depth. -- **`24xx`**: set LFO 2 speed. -- **`25xx`**: set LFO 2 waveform. `xx` may be one of the following: +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `1Exx`: **set LFO AM depth.** +- `1Fxx`: **set LFO PM depth.** +- `24xx`: **set LFO 2 speed.** +- `25xx`: **set LFO 2 waveform.** `xx` may be one of the following: - `00`: saw - `01`: square - `02`: triangle - `03`: noise -- **`26xx`**: set LFO 2 AM depth. -- **`27xx`**: set LFO 2 PM depth. -- **`28xy`**: set reverb of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `26xx`: **set LFO 2 AM depth.** +- `27xx`: **set LFO 2 PM depth.** +- `28xy`: **set reverb of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`2Axy`**: set waveform of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `2Axy`: **set waveform of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`2Bxy`**: set EG shift of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `2Bxy`: **set EG shift of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`2Cxy`**: set fine multiplier of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `2Cxy`: **set fine multiplier of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`2Fxx`**: enable envelope hard reset. +- `2Fxx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`3xyy`**: set fixed frequency of operator 1/2. - - `x` is the block (0-7 for operator 1; 8-F for operator 2). +- `3xyy`: **set fixed frequency of operator 1/2.** + - `x` is the block (`0-7` for operator 1; `8-F` for operator 2). - `y` is the frequency. fixed frequency mode will be disabled if this is less than 8. - the actual frequency is: `y*(2^x)`. -- **`4xyy`**: set fixed frequency of operator 3/4. - - `x` is the block (0-7 for operator 3; 8-F for operator 4). +- `4xyy`: **set fixed frequency of operator 3/4.** + - `x` is the block (`0-7` for operator 3; `8-F` for operator 4). - `y` is the frequency. fixed frequency mode will be disabled if this is less than 8. - the actual frequency is: `y*(2^x)`. -- **`50xy`**: set AM of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `50xy`: **set AM of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `51xy`: **set SL of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `52xy`: **set RR of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `53xy`: **set DT of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value: - - 0: +0 - - 1: +1 - - 2: +2 - - 3: +3 - - 4: -0 - - 5: -3 - - 6: -2 - - 7: -1 -- **`54xy`**: set RS of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". + - `0`: +0 + - `1`: +1 + - `2`: +2 + - `3`: +3 + - `4`: -0 + - `5`: -3 + - `6`: -2 + - `7`: -1 +- `54xy`: **set RS of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`55xy`**: set DT2 of operator. - - `x` is the operator (1-4). a value of 0 means "all operators". +- `55xy`: **set DT2 of operator.** + - `x` is the operator (1-4). a value of `0` means "all operators". - `y` is the value. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** diff --git a/doc/7-systems/pce.md b/doc/7-systems/pce.md index ea7b0a23..cfa71a53 100644 --- a/doc/7-systems/pce.md +++ b/doc/7-systems/pce.md @@ -1,22 +1,22 @@ # PC Engine/TurboGrafx-16 a console from NEC that, depending on a region: - attempted to enter the fierce battle between Nintendo and Sega, but because its capabilities are a mix of third and fourth generation, it failed to last long. (US and Europe) - was Nintendo's most fearsome rival, completely defeating Sega Mega Drive and defending itself against Super Famicom (Japan) +- attempted to enter the fierce battle between Nintendo and Sega, but because its capabilities are a mix of third and fourth generation, it failed to last long. (US and Europe) +- was Nintendo's most fearsome rival, completely defeating Sega Mega Drive and defending itself against Super Famicom (Japan) it has 6 wavetable channels and the last two ones also double as noise channels. furthermore, it has some PCM and LFO! # effects -- **`10xx`**: change wave. -- **`11xx`**: toggle noise mode. only available in the last two channels. -- **`12xx`**: setup LFO. the following values are accepted: +- `10xx`: **change wave.** +- `11xx`: **toggle noise mode.** only available in the last two channels. +- `12xx`: **setup LFO.** the following values are accepted: - `00`: LFO disabled. - `01`: LFO enabled, shift 0. - `02`: LFO enabled, shift 4. - `03`: LFO enabled, shift 8. - when LFO is enabled, channel 2 is muted and its output is passed to channel 1's frequency. -- **`13xx`**: set LFO speed. -- **`17xx`**: toggle PCM mode. - - **this effect is there for compatibility reasons** - it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). +- `13xx`: **set LFO speed.** +- `17xx`: **toggle PCM mode.** + - _this effect is here for compatibility reasons;_ it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). diff --git a/doc/7-systems/pcspkr.md b/doc/7-systems/pcspkr.md index a6a55ba6..42330b06 100644 --- a/doc/7-systems/pcspkr.md +++ b/doc/7-systems/pcspkr.md @@ -1,6 +1,6 @@ # PC Speaker -40 years of one square beep - and still going! Single channel, no volume control... +40 years of one square beep – and still going! Single channel, no volume control... # real output diff --git a/doc/7-systems/pet.md b/doc/7-systems/pet.md index 8d5406db..f3e51bca 100644 --- a/doc/7-systems/pet.md +++ b/doc/7-systems/pet.md @@ -2,10 +2,10 @@ a computer from 1977 which was leader on US schools back then. subsequently the Apple II took its throne. -maybe no better than a computer terminal, but somebody discovered a way to update the screen at turbo rate - and eventually its sound "chip" (it was nothing more than an 8-bit shift register) was abused as well. +maybe no better than a computer terminal, but somebody discovered a way to update the screen at turbo rate – and eventually its sound "chip" (it was nothing more than an 8-bit shift register) was abused as well. some of these didn't even have sound... # effects -- **`10xx`**: set waveform. `xx` is a bitmask. +- `10xx`: **set waveform.** `xx` is a bitmask. diff --git a/doc/7-systems/pokey.md b/doc/7-systems/pokey.md index cd94652f..8b08335d 100644 --- a/doc/7-systems/pokey.md +++ b/doc/7-systems/pokey.md @@ -4,7 +4,7 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, # effects -- **`10xx`**: set waveform. +- **`10xx`**: set waveform.** - 0: harsh noise (poly5+17) - 1: square buzz (poly5) - 2: weird noise (poly4+5) @@ -13,7 +13,7 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, - 5: square - 6: bass (poly4) - 7: buzz (poly4) -- **`11xx`**: set AUDCTL. `xx` is a bitmask. +- **`11xx`**: set AUDCTL.** `xx` is a bitmask. - bit 7: 9-bit poly mode. shortens noise. - bit 6: high channel 1 clock (~1.79MHz on NTSC). - overrides 15KHz mode. @@ -32,6 +32,6 @@ a sound and input chip developed by Atari for their 8-bit computers (Atari 400, - filtered output on channel 2 (I suggest you to set channel 4 volume to 0). - use for PWM effects (not automatic!). - bit 0: 15KHz mode. -- **`12xx`**: toggle two-tone mode. +- **`12xx`**: toggle two-tone mode.** - when enabled, channel 2 modulates channel 1. I don't know how, but it does. - only on ASAP core. diff --git a/doc/7-systems/qsound.md b/doc/7-systems/qsound.md index 95bd6124..07651a72 100644 --- a/doc/7-systems/qsound.md +++ b/doc/7-systems/qsound.md @@ -12,8 +12,8 @@ there are also 3 ADPCM channels. ADPCM samples are fixed to 8012 Hz. # effects -- **`10xx`**: set echo feedback level. +- `10xx`: **set echo feedback level.** - this effect will apply to all channels. -- **`11xx`**: set echo level. -- **`12xx`**: toggle QSound algorithm (on by default). -- **`3xxx`**: set the length of the echo delay buffer. +- `11xx`: **set echo level.** +- `12xx`: **toggle QSound algorithm.** on by default. +- `3xxx`: **set echo delay buffer length.** diff --git a/doc/7-systems/ricoh.md b/doc/7-systems/ricoh.md index 51832602..e84a5db3 100644 --- a/doc/7-systems/ricoh.md +++ b/doc/7-systems/ricoh.md @@ -1,6 +1,6 @@ # Ricoh RF5C68 -YM2612's sidekick - poor man's SNES DSP. 8-channel PCM sample-based synthesizer used in Sega CD, Fujitsu FM Towns and some of Sega's arcade machines. supports up to 64KB of external PCM data. +YM2612's sidekick – poor man's SNES DSP. 8-channel PCM sample-based synthesizer used in Sega CD, Fujitsu FM Towns and some of Sega's arcade machines. supports up to 64KB of external PCM data. # effects diff --git a/doc/7-systems/saa1099.md b/doc/7-systems/saa1099.md index 55073716..6b2624e4 100644 --- a/doc/7-systems/saa1099.md +++ b/doc/7-systems/saa1099.md @@ -1,18 +1,18 @@ # Philips SAA1099 -this was used by the Game Blaster and SAM Coupé. it's pretty similar to the AY-3-8910, but has stereo sound, twice the channels and two envelopes, both of which are highly flexible. The envelopes work like this: +this was used by the Game Blaster and SAM Coupé. it's pretty similar to the AY-3-8910, but has stereo sound, twice the channels and two envelopes, both of which are highly flexible. the envelopes work like this: - an instrument with envelope settings is placed on channel 2 or channel 5 - an instrument that is used as an "envelope output" is placed on channel 3 or channel 6 (you may want to disable wave output on the output channel) # effects -- **`10xy`**: set channel mode. +- `10xy`: **set channel mode.** - `x` toggles noise. - `y` toggles square. - this effect affects either the first 3 or last 3 channels, depending on where it is placed. -- **`11xx`**: set noise frequency. +- `11xx`: **set noise frequency.** - this effect affects either the first 3 or last 3 channels, depending on where it is placed. -- **`12xx`**: setup envelope. this is a bitmask. +- `12xx`: **setup envelope.** this is a bitmask. - bit 7 toggles the envelope. - bit 5 toggles whether to use a fixed frequency or lock to the frequency of channel 2 or 5. - bit 4 sets the envelope resolution. diff --git a/doc/7-systems/scc.md b/doc/7-systems/scc.md index 413d240f..19a0736c 100644 --- a/doc/7-systems/scc.md +++ b/doc/7-systems/scc.md @@ -8,4 +8,4 @@ the SCC+ fixes this issue though (while being compatible with SCC games). # effects -- **`10xx`**: change wave. +- `10xx`: **change wave.** diff --git a/doc/7-systems/segapcm.md b/doc/7-systems/segapcm.md index b44ca250..3272699d 100644 --- a/doc/7-systems/segapcm.md +++ b/doc/7-systems/segapcm.md @@ -12,6 +12,6 @@ Furnace also has a five channel version of this chip, but it only exists for Def # effects -- **`20xx`**: set PCM frequency. +- `20xx`: **set PCM frequency.** - `xx` is a 256th fraction of 31250Hz. - - this effect exists for mostly DefleMask compatibility - it is otherwise recommended to use Sample type instruments. + - this effect exists mostly for DefleMask compatibility; it is otherwise recommended to use Sample type instruments. diff --git a/doc/7-systems/sm8521.md b/doc/7-systems/sm8521.md index 563aa35c..a5a6e024 100644 --- a/doc/7-systems/sm8521.md +++ b/doc/7-systems/sm8521.md @@ -1,23 +1,23 @@ # Sharp SM8521 -The SM8521 is the CPU and sound chip of the Game.com, a handheld console released in 1997 as a competitor to the infamous Nintendo Virtual Boy. +the SM8521 is the CPU and sound chip of the Game.com, a handheld console released in 1997 as a competitor to the infamous Nintendo Virtual Boy. -Ultimately, most of the games for the Game.com ended up being failures in the eyes of reviewers, thus giving the Game.com a pretty bad reputation. This was one of the reasons that the Game.com only ended up selling at least 300,000 units. For these reasons and more, the Game.com ended up being discontinued in 2000. +ultimately, most of the games for the Game.com ended up being failures in the eyes of reviewers, thus giving the Game.com a pretty bad reputation. this was one of the reasons that the Game.com only ended up selling at least 300,000 units. for these reasons and more, the Game.com ended up being discontinued in 2000. -However, for its time, it was a pretty competitively priced system. The Gameboy Color was to be released in a year for $79.95, while the Game.com was released for $69.99, and its later model, the Pocket Pro, was released in mid-1999 for $29.99 due to the Game.com's apparent significant decrease in value. +however, for its time, it was a pretty competitively priced system. the Gameboy Color was to be released in a year for $79.95, while the Game.com was released for $69.99, and its later model, the Pocket Pro, was released in mid-1999 for $29.99 due to the Game.com's apparent significant decrease in value. -In fact, most games never used the wavetable/noise mode of the chip. Sonic Jam, for example, uses a sine wave with a software-controlled volume envelope on the DAC channel (see below for more information on the DAC channel). +in fact, most games never used the wavetable/noise mode of the chip. sonic Jam, for example, uses a sine wave with a software-controlled volume envelope on the DAC channel (see below for more information on the DAC channel). -The sound-related features and quirks of the SM8521 are as follows: +the sound-related features and quirks of the SM8521 are as follows: - 2 4-bit wavetable channels - a noise channel (which can go up to a very high pitch, creating an almost periodic noise sound) - 5-bit volume -- A low bit-depth output (which means it distorts a lot). -- It phase resets when you switch waves +- a low bit-depth output (which means it distorts a lot). +- it phase resets when you switch waves - 12-bit pitch with a wide frequency range -- A software-controlled D/A register that (potentially) requires all other registers to be stopped to play. Due to this, it is currently, it is not implemented in Furnace as of version 0.6pre4. +- a software-controlled D/A register that (potentially) requires all other registers to be stopped to play. due to this, it is currently, it is not implemented in Furnace as of version 0.6pre4. ## effect commands -- **`10xx`**: Set waveform - - `xx` is a value between 0 and 255, that sets the waveform of the channel you place it on. +- `10xx`: **set waveform.** + - `xx` is a value between 0 and 255 that sets the waveform of the channel you place it on. diff --git a/doc/7-systems/sms.md b/doc/7-systems/sms.md index a17f8d22..a560ce06 100644 --- a/doc/7-systems/sms.md +++ b/doc/7-systems/sms.md @@ -1,17 +1,15 @@ -# TI SN76489 (e.g. Sega Master System) +# TI SN76489 (e.g. sega Master System) a relatively simple sound chip made by Texas Instruments. a derivative of it is used in Sega's Master System, the predecessor to Genesis. -the original iteration of the SN76489 used in the TI-99/4A computers was clocked at 447 KHz, being able to play as low as 13.670 Hz (A -1). consequently, pitch accuracy for higher notes is compromised. - -on the other hand, the chip was clocked at a much higher speed on Master System and Genesis, which makes it rather poor in the bass range. +the original iteration of the SN76489 used in the TI-99/4A computer, the SN94624, could only produce tones as low as 100Hz, and was clocked at 447 KHz. all later versions (such as the one in the Master System and Genesis) had a clock divider but ran on a faster clock... except for the SN76494, which can play notes as low as 13.670 Hz (A -1). consequently, its pitch accuracy for higher notes is compromised. # effects -- **`20xy`**: set noise mode. +- `20xy`: **set noise mode.** - `x` controls whether to inherit frequency from channel 3. - - 0: use one of 3 preset frequencies (C: A-2; C#: A-3; D: A-4). - - 1: use frequency of channel 3. + - `0`: use one of 3 preset frequencies (C: A-2; C#: A-3; D: A-4). + - `1`: use frequency of channel 3. - `y` controls whether to select noise or thin pulse. - - 0: thin pulse. - - 1: noise. + - `0`: thin pulse. + - `1`: noise. diff --git a/doc/7-systems/snes.md b/doc/7-systems/snes.md index a9a98b89..e5546d4c 100644 --- a/doc/7-systems/snes.md +++ b/doc/7-systems/snes.md @@ -22,60 +22,58 @@ Furnace also allows the SNES to use wavetables (and the wavetable synthesizer) i # effects -- **`10xx`**: set waveform. -- **`11xx`**: toggle noise mode. -- **`12xx`**: toggle echo on this channel. -- **`13xx`**: toggle pitch modulation. -- **`14xy`**: toggle inverting the left or right channels (x: left, y: right). -- **`15xx`**: set envelope mode. +- `10xx`: **set waveform.** +- `11xx`: **toggle noise mode.** +- `12xx`: **toggle echo on this channel.** +- `13xx`: **toggle pitch modulation.** +- `14xy`: **toggle inverting the left or right channels.** (x: left, y: right). +- `15xx`: **set envelope mode.** - 0: ADSR. - 1: gain (direct). - 2: linear decrement. - 3: exponential decrement. - 4: linear increment. - 5: bent line (inverse log) increment. -- **`16xx`**: set gain (00 to 7F if direct, 00 to 1F otherwise). -- **`18xx`**: enable echo buffer. -- **`19xx`**: set echo delay - - goes from 0 to F. -- **`1Axx`**: set left echo channel volume. +- `16xx`: **set gain.** `00` to `7F` if direct, `00` to `1F` otherwise. +- `18xx`: **enable echo buffer.** +- `19xx`: **set echo delay.** range is `0` to `F`. +- `1Axx`: **set left echo channel volume.** - this is a signed number. - - 00 to 7F for 0 to 127. - - 80 to FF for -128 to -1. + - `00` to `7F` for 0 to 127. + - `80` to `FF` for -128 to -1. - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- **`1Bxx`**: set right echo channel volume. +- `1Bxx`: **set right echo channel volume.** - this is a signed number. - - 00 to 7F for 0 to 127. - - 80 to FF for -128 to -1. + - `00` to `7F` for 0 to 127. + - `80` to `FF` for -128 to -1. - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- **`1Cxx`**: set echo feedback. +- `1Cxx`: **set echo feedback.** - this is a signed number. - - 00 to 7F for 0 to 127. - - 80 to FF for -128 to -1. + - `00` to `7F` for 0 to 127. + - `80` to `FF` for -128 to -1. - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- **`1Dxx`**: set noise generator frequency (00 to 1F). -- **`1Exx`**: set left dry/global volume. +- `1Dxx`: **set noise generator frequency.** range is `00` to `1F`. +- `1Exx`: **set left dry / global volume.** - this does not affect echo. -- **`1Fxx`**: set right dry/global volume. +- `1Fxx`: **set right dry / global volume.** - this does not affect echo. -- **`20xx`**: set attack (0 to F). +- `20xx`: **set attack.** range is `0` to `F`. - only in ADSR envelope mode. -- **`21xx`**: set decay (0 to 7). +- `21xx`: **set decay.** range is `0` to `7`. - only in ADSR envelope mode. -- **`22xx`**: set sustain (0 to 7). +- `22xx`: **set sustain.** range is `0` to `7`. - only in ADSR envelope mode. -- **`23xx`**: set release (00 to 1F). +- `23xx`: **set release.** range is `00` to `1F`. - only in ADSR envelope mode. -- **`30xx`**: set echo filter coefficient 0. -- **`31xx`**: set echo filter coefficient 1. -- **`32xx`**: set echo filter coefficient 2. -- **`33xx`**: set echo filter coefficient 3. -- **`34xx`**: set echo filter coefficient 4. -- **`35xx`**: set echo filter coefficient 5. -- **`36xx`**: set echo filter coefficient 6. -- **`37xx`**: set echo filter coefficient 7. +- `30xx`: **set echo filter coefficient 0.** +- `31xx`: **set echo filter coefficient 1.** +- `32xx`: **set echo filter coefficient 2.** +- `33xx`: **set echo filter coefficient 3.** +- `34xx`: **set echo filter coefficient 4.** +- `35xx`: **set echo filter coefficient 5.** +- `36xx`: **set echo filter coefficient 6.** +- `37xx`: **set echo filter coefficient 7.** - all of these are signed numbers. - - 00 to 7F for 0 to 127. - - 80 to FF for -128 to -1. - - make sure the sum of these is between -128 or 127. - - failure to comply may result in overflow and therefore clicking. + - `00` to `7F` for 0 to 127. + - `80` to `FF` for -128 to -1. + - _Note:_ Be sure the sum of all coefficients is between -128 and 127. sums outside that may result in overflow and therefore clicking. diff --git a/doc/7-systems/soundunit.md b/doc/7-systems/soundunit.md index 6bc43d18..5b483813 100644 --- a/doc/7-systems/soundunit.md +++ b/doc/7-systems/soundunit.md @@ -14,43 +14,43 @@ it has the following capabilities: # effects -- **`10xx`**: set waveform - - 0: pulse wave - - 1: sawtooth - - 2: sine wave - - 3: triangle wave - - 4: noise - - 5: periodic noise - - 6: XOR sine - - 7: XOR triangle -- **`12xx`**: set pulse width (0 to 7F) -- **`13xx`**: set resonance of filter (0 to FF) - - despite what the internal effects list says (0 to F), you can use a resonance value from 0 to FF (255) -- **`14xx`**: set filter mode and ringmod +- `10xx`: **set waveform.** + - `0`: pulse wave + - `1`: sawtooth + - `2`: sine wave + - `3`: triangle wave + - `4`: noise + - `5`: periodic noise + - `6`: XOR sine + - `7`: XOR triangle +- `12xx`: **set pulse width.** range is `0` to `7F`. +- `13xx`: **set resonance of filter.** range is `0` to `FF`. + - despite what the internal effects list says (`0` to `F`), you can use a resonance value from `0` to `FF` (255). +- `14xx`: **set filter mode and ringmod.** - bit 0: ring mod - bit 1: low pass - bit 2: high pass - bit 3: band pass -- **`15xx`**: set frequency sweep period low byte -- **`16xx`**: set frequency sweep period high byte -- **`17xx`**: set volume sweep period low byte -- **`18xx`**: set volume sweep period high byte -- **`19xx`**: set cutoff sweep period low byte -- **`1Axx`**: set cutoff sweep period high byte -- **`1Bxx`**: set frequency sweep boundary -- **`1Cxx`**: set volume sweep boundary -- **`1Dxx`**: set cutoff sweep boundary -- **`1Exx`**: set phase reset period low byte -- **`1Fxx`**: set phase reset period high byte -- **`20xx`**: toggle frequency sweep +- `15xx`: **set frequency sweep period low byte.** +- `16xx`: **set frequency sweep period high byte.** +- `17xx`: **set volume sweep period low byte.** +- `18xx`: **set volume sweep period high byte.** +- `19xx`: **set cutoff sweep period low byte.** +- `1Axx`: **set cutoff sweep period high byte.** +- `1Bxx`: **set frequency sweep boundary.** +- `1Cxx`: **set volume sweep boundary.** +- `1Dxx`: **set cutoff sweep boundary.** +- `1Exx`: **set phase reset period low byte.** +- `1Fxx`: **set phase reset period high byte.** +- `20xx`: **toggle frequency sweep.** - bit 0-6: speed - bit 7: up direction -- **`21xx`**: toggle volume sweep +- `21xx`: **toggle volume sweep.** - bit 0-4: speed - bit 5: up direction - bit 6: loop - bit 7: alternate -- **`22xx`**: toggle cutoff sweep +- `22xx`: **toggle cutoff sweep.** - bit 0-6: speed - bit 7: up direction -- **`4xxx`**: set cutoff (0 to FFF) +- `4xxx`: **set cutoff.** range is `0` to `FFF`. diff --git a/doc/7-systems/t6w28.md b/doc/7-systems/t6w28.md index 346100f0..886ea63b 100644 --- a/doc/7-systems/t6w28.md +++ b/doc/7-systems/t6w28.md @@ -6,6 +6,6 @@ this chip was used in Neo Geo Pocket. # effects -- **`20xx`**: set noise mode. - - 0: thin pulse. - - 1: noise. +- `20xx`: **set noise mode.** + - `0`: thin pulse. + - `1`: noise. diff --git a/doc/7-systems/tia.md b/doc/7-systems/tia.md index fbfd2edb..b39d31db 100644 --- a/doc/7-systems/tia.md +++ b/doc/7-systems/tia.md @@ -9,20 +9,20 @@ Furnace isn't complete without this one... # effects -- **`10xx`**: select shape. `xx` may be one of: - - 0: nothing - - 1: buzzy - - 2: low buzzy - - 3: flangy - - 4: square - - 5: square - - 6: pure buzzy - - 7: reedy - - 8: noise - - 9: reedy - - 10: pure buzzy - - 11: nothing - - 12: low square - - 13: low square - - 14: low pure buzzy - - 15: low reedy \ No newline at end of file +- `10xx`: **select shape.** + - `0`: nothing + - `1`: buzzy + - `2`: low buzzy + - `3`: flangy + - `4`: square + - `5`: square + - `6`: pure buzzy + - `7`: reedy + - `8`: noise + - `9`: reedy + - `A`: pure buzzy + - `B`: nothing + - `C`: low square + - `D`: low square + - `E`: low pure buzzy + - `F`: low reedy \ No newline at end of file diff --git a/doc/7-systems/vera.md b/doc/7-systems/vera.md index 8d630129..8f50e0e7 100644 --- a/doc/7-systems/vera.md +++ b/doc/7-systems/vera.md @@ -7,9 +7,9 @@ currently Furnace does not support the PCM channel's stereo mode, though (except # effects -- **`20xx`**: set waveform. the following values are accepted: - - 0: pulse - - 1: saw - - 2: triangle - - 3: noise -- **`22xx`**: set duty cycle. `xx` may go from 0 to 3F. +- `20xx`: **set waveform.** + - `0`: pulse + - `1`: saw + - `2`: triangle + - `3`: noise +- `22xx`: **set duty cycle.** range is `0` to `3F`. diff --git a/doc/7-systems/vic20.md b/doc/7-systems/vic20.md index 4d445936..e5126c18 100644 --- a/doc/7-systems/vic20.md +++ b/doc/7-systems/vic20.md @@ -15,4 +15,4 @@ these channels are not referred as "square" wave channels since a technique to p ## effect commands -- **`10xx`**: Switch waveform (`xx` from `00` to `0F`) +- `10xx`: **switch waveform.** range is `00` to `0F`. diff --git a/doc/7-systems/virtual-boy.md b/doc/7-systems/virtual-boy.md index 9079d1c7..9ef6c909 100644 --- a/doc/7-systems/virtual-boy.md +++ b/doc/7-systems/virtual-boy.md @@ -10,34 +10,34 @@ additionally, channel 5 offers a modulation/sweep unit. the former is similar to # effects -- **`10xx`**: set waveform. -- **`11xx`**: set noise length (0 to 7). +- `10xx`: **set waveform.** +- `11xx`: **set noise length.** range is `0` to `7`. - only in the noise channel. -- **`12xy`**: setup envelope. +- `12xy`: **setup envelope.** - `x` determines whether envelope is enabled or not. - - 0: disabled - - 1: enabled - - 3: enabled and loop - - yeah, the value 2 isn't useful. + - `0`: disabled + - `1`: enabled + - `3`: enabled and loop + - yeah, the value `2` isn't useful. - `y` sets the speed and direction. - - 0-7: down - - 8-F: up -- **`13xy`**: setup sweep. + - `0-7`: down + - `8-F`: up +- `13xy`: **setup sweep.** - `x` sets the speed. - - 0 and 8 are "speed 0" - sweep is ineffective. - - `y` sets the shift (0 to 7). - - 8 and higher will mute the channel. + - `0` and `8` are "speed 0" - sweep is ineffective. + - `y` sets the shift (`0` to `7`). + - `8` and higher will mute the channel. - only in channel 5. -- **`14xy`**: setup modulation. +- `14xy`: **setup modulation.** - `x` determines whether it's enabled or not. - 0: disabled - 1: enabled - 3: enabled and loop - 2 isn't useful here either. - `y` sets the speed. - - 0 and 8 are "speed 0" - modulation is ineffective. + - `0` and `8` are "speed 0" - modulation is ineffective. - no, you can't really do Yamaha FM using this. - only in channel 5. -- **`15xx`**: set modulation wave. - - `xx` points to a wavetable. it should have a height of 255. +- `15xx`: **set modulation wave.** + - `xx` points to a wavetable. range is `0` to `FF`. - this is an alternative to setting the modulation wave through the instrument. diff --git a/doc/7-systems/vrc6.md b/doc/7-systems/vrc6.md index e761f90d..d652cc26 100644 --- a/doc/7-systems/vrc6.md +++ b/doc/7-systems/vrc6.md @@ -14,5 +14,5 @@ Furnace supports this routine for PCM playback, but it consumes a lot of CPU tim these effects only are effective in the pulse channels. -- **`12xx`**: set duty cycle (0 to 7). -- **`17xx`**: toggle PCM mode. +- `12xx`: **set duty cycle.** range is `0` to `7`. +- `17xx`: **toggle PCM mode.** diff --git a/doc/7-systems/wonderswan.md b/doc/7-systems/wonderswan.md index eb3b47cd..d4bff7c1 100644 --- a/doc/7-systems/wonderswan.md +++ b/doc/7-systems/wonderswan.md @@ -10,12 +10,12 @@ it has 4 wavetable channels. some of them have additional capabilities: # effects -- **`10xx`**: change wave. -- **`11xx`**: setup noise mode (channel 4 only). +- `10xx`: **change wave**. +- `11xx`: **setup noise mode.** channel 4 only. - 0: disable. - 1-8: enable and set tap preset. -- **`12xx`**: setup sweep period (channel 3 only). +- `12xx`: **setup sweep period.** channel 3 only. - 0: disable. - 1-32: enable and set period. -- **`13xx`**: setup sweep amount (channel 3 only). -- **`17xx`**: toggle PCM mode (channel 2 only). +- `13xx`: **setup sweep amount.** channel 3 only. +- `17xx`: **toggle PCM mode.** channel 2 only. diff --git a/doc/7-systems/x1-010.md b/doc/7-systems/x1-010.md index deae16e7..dc46f465 100644 --- a/doc/7-systems/x1-010.md +++ b/doc/7-systems/x1-010.md @@ -1,47 +1,47 @@ # Seta/Allumer X1-010 -A sound chip designed by Seta, mainly used in their own arcade hardware from the late 80s to the early 2000s. -It has 2 output channels, but there is no known hardware taking advantage of stereo sound capabilities. -Later hardware paired this with external bankswitching logic, but this isn't emulated yet. +a sound chip designed by Seta, mainly used in their own arcade hardware from the late 80s to the early 2000s. +it has 2 output channels, but there is no known hardware taking advantage of stereo sound capabilities. +later hardware paired this with external bankswitching logic, but this isn't emulated yet. Allumer rebadged it for their own arcade hardware. -It has 16 channels, which can all be switched between PCM sample or wavetable playback mode. -Wavetable playback needs to paired with envelope, similar to AY PSG, but shapes are stored in RAM and as such are user-definable. +it has 16 channels, which can all be switched between PCM sample or wavetable playback mode. +wavetable playback needs to paired with envelope, similar to AY PSG, but shapes are stored in RAM and as such are user-definable. -In Furnace, this chip can be configured for original arcade mono output or stereo output - it simulates early 'incorrect' emulation on some mono hardware, but it is also based on the assumption that each channel is connected to each output. +in Furnace, this chip can be configured for original arcade mono output or stereo output – it simulates early 'incorrect' emulation on some mono hardware, but it is also based on the assumption that each channel is connected to each output. -# Waveform types +# waveform types -This chip supports 2 types of waveforms, needs to be paired to external 8 KB RAM to access these features: +this chip supports 2 types of waveforms, needs to be paired to external 8 KB RAM to access these features: -One is a signed 8 bit mono waveform, operated like other wavetable based sound systems. -These are stored at the lower half of RAM at common case. +one is a signed 8 bit mono waveform, operated like other wavetable based sound systems. +these are stored at the lower half of RAM at common case. -The other one ("Envelope") is a 4 bit stereo waveform, multiplied with the above and calculates final output, each nibble is used for each output channel. -These are stored at the upper half of RAM at common case. +the other one ("Envelope") is a 4 bit stereo waveform, multiplied with the above and calculates final output, each nibble is used for each output channel. +these are stored at the upper half of RAM at common case. -Both waveforms are 128 bytes (fixed size), freely allocated at each half of RAM except the channel register area: each half can store total 32/31 waveforms at once. -In furnace, you can enable the envelope shape split mode. When it is set, its waveform will be split to the left and right halves for each output. Each max size is 128 bytes, total 256 bytes. +both waveforms are 128 bytes (fixed size), freely allocated at each half of RAM except the channel register area: each half can store total 32/31 waveforms at once. +in Furnace, you can enable the envelope shape split mode. when it is set, its waveform will be split to the left and right halves for each output. each max size is 128 bytes, total 256 bytes. # effects -- **`10xx`**: change wave. -- **`11xx`**: change envelope shape (also wavetable). -- **`17xx`**: toggle PCM mode. -- **`20xx`**: set PCM frequency (1 to FF). -- **`22xx`**: set envelope mode. +- `10xx`: **change wave.** +- `11xx`: **change envelope shape.** also wavetable. +- `17xx`: **toggle PCM mode.** +- `20xx`: **set PCM frequency.** range is `1` to `FF`. + - PCM frequency formula: `step * (clock / 8192)`. + - range is 1.95KHz to 498KHz if the chip clock is 16MHz. +- `22xx`: **set envelope mode.** - bit 0 sets whether envelope will affect this channel. - bit 1 toggles the envelope one-shot mode. when it is set, channel is halted after envelope cycle is finished. - bit 2 toggles the envelope shape split mode. when it is set, envelope shape will be split to left half and right half. - bit 3/5 sets whether the right/left shape will mirror the original one. - bit 4/6 sets whether the right/left output will mirror the original one. -- **`23xx`**: set envelope period. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`29xy`**: enable auto-envelope mode. +- `23xx`: **set envelope period.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `29xy`: **enable auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. - -* PCM frequency: 255 step, formula: `step * (Chip clock / 8192)`; 1.95KHz to 498KHz if Chip clock is 16MHz. diff --git a/doc/7-systems/ym2151.md b/doc/7-systems/ym2151.md index affb8c3a..f9bd8751 100644 --- a/doc/7-systems/ym2151.md +++ b/doc/7-systems/ym2151.md @@ -1,6 +1,6 @@ # Yamaha YM2151 -the sound chip powering several arcade boards, the Sharp X1/X68000 and the Commander X16. Eight 4-op FM channels, with overpowered LFO and almost unused noise generator. +the sound chip powering several arcade boards, the Sharp X1/X68000 and the Commander X16. eight 4-op FM channels, with overpowered LFO and almost unused noise generator. it also was present on several pinball machines and synthesizers of the era, and later surpassed by the YM2414 (OPZ) present in the world-famous TX81Z. @@ -8,63 +8,63 @@ in most arcade boards the chip was used in combination with a PCM chip, like [Se # effects -- **`10xx`**: set noise frequency of channel 8 operator 4. 00 disables noise while 01 to 20 enables it. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `10xx`: **set noise frequency of channel 8 operator 4.** `00` disables noise while `01` to `20` enables it. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`17xx`**: set LFO speed. -- **`18xx`**: set LFO waveform. `xx` may be one of the following: +- `17xx`: **set LFO speed.** +- `18xx`: **set LFO waveform.** - `00`: saw - `01`: square - `02`: triangle - `03`: noise -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`1Exx`**: set LFO AM depth. -- **`1Fxx`**: set LFO PM depth. -- **`30xx`**: enable envelope hard reset. +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `1Exx`: **set LFO AM depth.** +- `1Fxx`: **set LFO PM depth.** +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. +- `50xy`: **set AM of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. +- `51xy`: **set SL of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. +- `52xy`: **set RR of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. +- `53xy`: **set DT of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - - 0: +0 - - 1: +1 - - 2: +2 - - 3: +3 - - 4: -0 - - 5: -3 - - 6: -2 - - 7: -1 -- **`54xy`**: set RS of operator. + - `0`: +0 + - `1`: +1 + - `2`: +2 + - `3`: +3 + - `4`: -0 + - `5`: -3 + - `6`: -2 + - `7`: -1 +- `54xy`: **set RS of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`55xy`**: set DT2 of operator. +- `55xy`: **set DT2 of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** diff --git a/doc/7-systems/ym2203.md b/doc/7-systems/ym2203.md index 984d32f9..03950444 100644 --- a/doc/7-systems/ym2203.md +++ b/doc/7-systems/ym2203.md @@ -11,91 +11,91 @@ several variants of this chip were released as well, with more features. # effects -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. - - `x` is the operator (1-4). +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** + - `x` is the operator from 1 to 4. - `y` is the multiplier. -- **`18xx`**: toggle extended channel 3 mode. - - 0 disables it and 1 enables it. +- `18xx`: **toggle extended channel 3 mode.** + - `0` disables it and `1` enables it. - only in extended channel 3 chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`20xx`**: set SSG channel mode. `xx` may be one of the following: - - `00`: square - - `01`: noise - - `02`: square and noise - - `03`: nothing (apparently) - - `04`: envelope and square - - `05`: envelope and noise - - `06`: envelope and square and noise - - `07`: nothing -- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. -- **`22xy`**: set envelope mode. +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `20xx`: **set SSG channel mode.** `xx` may be one of the following: + - `0`: square + - `1`: noise + - `2`: square and noise + - `3`: nothing (apparently) + - `4`: envelope and square + - `5`: envelope and noise + - `6`: envelope and square and noise + - `7`: nothing +- `21xx`: **set noise frequency.** `xx` is a value between 00 and 1F. +- `22xy`: **set envelope mode.** - `x` sets the envelope shape, which may be one of the following: - - `0: \___` decay - - `4: /___` attack once - - `8: \\\\` saw - - `9: \___` decay - - `A: \/\/` inverse obelisco - - `B: \¯¯¯` decay once - - `C: ////` inverse saw - - `D: /¯¯¯` attack - - `E: /\/\` obelisco - - `F: /___` attack once + - `0`: `\___` decay + - `4`: `/___` attack once + - `8`: `\\\\` saw + - `9`: `\___` decay + - `A`: `\/\/` inverse obelisco + - `B`: `\¯¯¯` decay once + - `C`: `////` inverse saw + - `D`: `/¯¯¯` attack + - `E`: `/\/\` obelisco + - `F`: `/___` attack once - if `y` is 1 then the envelope will affect this channel. -- **`23xx`**: set envelope period low byte. -- **`24xx`**: set envelope period high byte. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`29xy`**: enable SSG auto-envelope mode. +- `23xx`: **set envelope period low byte.** +- `24xx`: **set envelope period high byte.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `29xy`: **enable SSG auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- **`30xx`**: enable envelope hard reset. +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. +- `50xy`: **set AM of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. +- `51xy`: **set SL of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. +- `52xy`: **set RR of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. +- `53xy`: **set DT of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - - 0: +0 - - 1: +1 - - 2: +2 - - 3: +3 - - 4: -0 - - 5: -3 - - 6: -2 - - 7: -1 -- **`54xy`**: set RS of operator. + - `0`: +0 + - `1`: +1 + - `2`: +2 + - `3`: +3 + - `4`: -0 + - `5`: -3 + - `6`: -2 + - `7`: -1 +- `54xy`: **set RS of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`55xy`**: set SSG-EG of operator. +- `55xy`: **set SSG-EG of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** diff --git a/doc/7-systems/ym2608.md b/doc/7-systems/ym2608.md index 5f57e5f6..700ec9d5 100644 --- a/doc/7-systems/ym2608.md +++ b/doc/7-systems/ym2608.md @@ -8,26 +8,26 @@ the YM2610 (OPNB) and YM2610B chips are very similar to this one, but the built- # effects -- **`10xy`**: set LFO parameters. +- `10xy`: **set LFO parameters.** - `x` toggles the LFO. - `y` sets its speed. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`18xx`**: toggle extended channel 3 mode. - - 0 disables it and 1 enables it. +- `18xx`: **toggle extended channel 3 mode.** + - `0` disables it and `1` enables it. - only in extended channel 3 chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`20xx`**: set SSG channel mode. `xx` may be one of the following: +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `20xx`: **set SSG channel mode.** - `00`: square - `01`: noise - `02`: square and noise @@ -36,66 +36,66 @@ the YM2610 (OPNB) and YM2610B chips are very similar to this one, but the built- - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. -- **`22xy`**: set envelope mode. +- `21xx`: **set noise frequency.** range is `0` to `1F`. +- `22xy`: **set envelope mode.** - `x` sets the envelope shape, which may be one of the following: - - `0: \___` decay - - `4: /___` attack once - - `8: \\\\` saw - - `9: \___` decay - - `A: \/\/` inverse obelisco - - `B: \¯¯¯` decay once - - `C: ////` inverse saw - - `D: /¯¯¯` attack - - `E: /\/\` obelisco - - `F: /___` attack once + - `0`: `\___` decay + - `4`: `/___` attack once + - `8`: `\\\\` saw + - `9`: `\___` decay + - `A`: `\/\/` inverse obelisco + - `B`: `\¯¯¯` decay once + - `C`: `////` inverse saw + - `D`: `/¯¯¯` attack + - `E`: `/\/\` obelisco + - `F`: `/___` attack once - if `y` is 1 then the envelope will affect this channel. -- **`23xx`**: set envelope period low byte. -- **`24xx`**: set envelope period high byte. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`29xy`**: enable SSG auto-envelope mode. +- `23xx`: **set envelope period low byte.** +- `24xx`: **set envelope period high byte.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `29xy`: **enable SSG auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- **`30xx`**: enable envelope hard reset. +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. +- `50xy`: **set AM of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. +- `51xy`: **set SL of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. +- `52xy`: **set RR of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. +- `53xy`: **set DT of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - - 0: +0 - - 1: +1 - - 2: +2 - - 3: +3 - - 4: -0 - - 5: -3 - - 6: -2 - - 7: -1 -- **`54xy`**: set RS of operator. + - `0`: +0 + - `1`: +1 + - `2`: +2 + - `3`: +3 + - `4`: -0 + - `5`: -3 + - `6`: -2 + - `7`: -1 +- `54xy`: **set RS of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`55xy`**: set SSG-EG of operator. +- `55xy`: **set SSG-EG of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** diff --git a/doc/7-systems/ym2610.md b/doc/7-systems/ym2610.md index 022b82e9..9d714acc 100644 --- a/doc/7-systems/ym2610.md +++ b/doc/7-systems/ym2610.md @@ -6,69 +6,69 @@ its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different # effects -- **`10xy`**: set LFO parameters. +- `10xy`: **set LFO parameters.** - `x` toggles the LFO. - `y` sets its speed. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`18xx`**: toggle extended channel 2 mode. +- `18xx`: **toggle extended channel 2 mode.** - 0 disables it and 1 enables it. - only in extended channel 2 chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`20xx`**: set SSG channel mode. `xx` may be one of the following: - - `00`: square - - `01`: noise - - `02`: square and noise - - `03`: nothing (apparently) - - `04`: envelope and square - - `05`: envelope and noise - - `06`: envelope and square and noise - - `07`: nothing -- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. -- **`22xy`**: set envelope mode. - - `x` sets the envelope shape, which may be one of the following: - - `0: \___` decay - - `4: /___` attack once - - `8: \\\\` saw - - `9: \___` decay - - `A: \/\/` inverse obelisco - - `B: \¯¯¯` decay once - - `C: ////` inverse saw - - `D: /¯¯¯` attack - - `E: /\/\` obelisco - - `F: /___` attack once +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `20xx`: **set SSG channel mode.** + - `0`: square + - `1`: noise + - `2`: square and noise + - `3`: nothing (apparently) + - `4`: envelope and square + - `5`: envelope and noise + - `6`: envelope and square and noise + - `7`: nothing +- `21xx`: **set noise frequency.** range is `00` to `1F`. +- `22xy`: **set envelope mode.** + - `x` sets the envelope shape: + - `0`: `\___` decay + - `4`: `/___` attack once + - `8`: `\\\\` saw + - `9`: `\___` decay + - `A`: `\/\/` inverse obelisco + - `B`: `\¯¯¯` decay once + - `C`: `////` inverse saw + - `D`: `/¯¯¯` attack + - `E`: `/\/\` obelisco + - `F`: `/___` attack once - if `y` is 1 then the envelope will affect this channel. -- **`23xx`**: set envelope period low byte. -- **`24xx`**: set envelope period high byte. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`29xy`**: enable SSG auto-envelope mode. +- `23xx`: **set envelope period low byte.** +- `24xx`: **set envelope period high byte.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `29xy`: **enable SSG auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- **`30xx`**: enable envelope hard reset. +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. +- `50xy`: **set AM of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. +- `51xy`: **set SL of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. +- `52xy`: **set RR of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. +- `53xy`: **set DT of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - 0: +0 @@ -79,21 +79,21 @@ its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different - 5: -3 - 6: -2 - 7: -1 -- **`54xy`**: set RS of operator. +- `54xy`: **set RS of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`55xy`**: set SSG-EG of operator. +- `55xy`: **set SSG-EG of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** diff --git a/doc/7-systems/ym2610b.md b/doc/7-systems/ym2610b.md index feeea9f1..7428f6fb 100644 --- a/doc/7-systems/ym2610b.md +++ b/doc/7-systems/ym2610b.md @@ -5,26 +5,26 @@ it is backward compatible with the original chip. # effects -- **`10xy`**: set LFO parameters. +- `10xy`: **set LFO parameters.** - `x` toggles the LFO. - `y` sets its speed. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`18xx`**: toggle extended channel 3 mode. +- `18xx`: **toggle extended channel 3 mode.** - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`20xx`**: set SSG channel mode. `xx` may be one of the following: +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `20xx`: **set SSG channel mode.** - `00`: square - `01`: noise - `02`: square and noise @@ -33,66 +33,66 @@ it is backward compatible with the original chip. - `05`: envelope and noise - `06`: envelope and square and noise - `07`: nothing -- **`21xx`**: set noise frequency. `xx` is a value between 00 and 1F. -- **`22xy`**: set envelope mode. +- `21xx`: **set noise frequency.** range is `00` to `1F`. +- `22xy`: **set envelope mode.** - `x` sets the envelope shape, which may be one of the following: - - `0: \___` decay - - `4: /___` attack once - - `8: \\\\` saw - - `9: \___` decay - - `A: \/\/` inverse obelisco - - `B: \¯¯¯` decay once - - `C: ////` inverse saw - - `D: /¯¯¯` attack - - `E: /\/\` obelisco - - `F: /___` attack once + - `0`:` \___` decay + - `4`:` /___` attack once + - `8`:` \\\\` saw + - `9`:` \___` decay + - `A`:` \/\/` inverse obelisco + - `B`:` \¯¯¯` decay once + - `C`:` ////` inverse saw + - `D`:` /¯¯¯` attack + - `E`:` /\/\` obelisco + - `F`:` /___` attack once - if `y` is 1 then the envelope will affect this channel. -- **`23xx`**: set envelope period low byte. -- **`24xx`**: set envelope period high byte. -- **`25xx`**: slide envelope period up. -- **`26xx`**: slide envelope period down. -- **`29xy`**: enable SSG auto-envelope mode. +- `23xx`: **set envelope period low byte.** +- `24xx`: **set envelope period high byte.** +- `25xx`: **slide envelope period up.** +- `26xx`: **slide envelope period down.** +- `29xy`: **enable SSG auto-envelope mode.** - in this mode the envelope period is set to the channel's notes, multiplied by a fraction. - `x` is the numerator. - `y` is the denominator. - if `x` or `y` are 0 this will disable auto-envelope mode. -- **`30xx`**: enable envelope hard reset. +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. +- `50xy`: **set AM of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. +- `51xy`: **set SL of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. +- `52xy`: **set RR of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. +- `53xy`: **set DT of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - - 0: +0 - - 1: +1 - - 2: +2 - - 3: +3 - - 4: -0 - - 5: -3 - - 6: -2 - - 7: -1 -- **`54xy`**: set RS of operator. + - `0`: +0 + - `1`: +1 + - `2`: +2 + - `3`: +3 + - `4`: -0 + - `5`: -3 + - `6`: -2 + - `7`: -1 +- `54xy`: **set RS of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`55xy`**: set SSG-EG of operator. +- `55xy`: **set SSG-EG of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** diff --git a/doc/7-systems/ym2612.md b/doc/7-systems/ym2612.md index afdb98f3..61df5579 100644 --- a/doc/7-systems/ym2612.md +++ b/doc/7-systems/ym2612.md @@ -1,67 +1,67 @@ # Yamaha YM2612 -one of two chips that powered the Sega Genesis. It is a six-channel, four-operator FM synthesizer. Channel #6 can be turned into 8-bit PCM player, that via software mixing, thanks to Z80 sound CPU, can play more than one channel of straight-shot samples at once. As of Furnace 0.6pre5, Furnace offers DualPCM, which allows 2 channels of software-mixed 8-bit PCM samples at 13750 Hz. +one of two chips that powered the Sega Genesis. it is a six-channel, four-operator FM synthesizer. channel #6 can be turned into 8-bit PCM player, that via software mixing, thanks to Z80 sound CPU, can play more than one channel of straight-shot samples at once. as of Furnace 0.6pre5, Furnace offers DualPCM, which allows 2 channels of software-mixed 8-bit PCM samples at 13750 Hz. # effects -- **`10xy`**: set LFO parameters. +- `10xy`: **set LFO parameters.** - `x` toggles the LFO. - `y` sets its speed. -- **`11xx`**: set feedback of channel. -- **`12xx`**: set operator 1 level. -- **`13xx`**: set operator 2 level. -- **`14xx`**: set operator 3 level. -- **`15xx`**: set operator 4 level. -- **`16xy`**: set multiplier of operator. +- `11xx`: **set feedback of channel.** +- `12xx`: **set operator 1 level.** +- `13xx`: **set operator 2 level.** +- `14xx`: **set operator 3 level.** +- `15xx`: **set operator 4 level.** +- `16xy`: **set multiplier of operator.** - `x` is the operator (1-4). - `y` is the multiplier. -- **`17xx`**: enable PCM channel. +- `17xx`: **enable PCM channel.** - this only works on channel 6. -- **`18xx`**: toggle extended channel 3 mode. +- `18xx`: **toggle extended channel 3 mode.** - 0 disables it and 1 enables it. - only in extended channel 3 chip. -- **`19xx`**: set attack of all operators. -- **`1Axx`**: set attack of operator 1. -- **`1Bxx`**: set attack of operator 2. -- **`1Cxx`**: set attack of operator 3. -- **`1Dxx`**: set attack of operator 4. -- **`30xx`**: enable envelope hard reset. +- `19xx`: **set attack of all operators.** +- `1Axx`: **set attack of operator 1.** +- `1Bxx`: **set attack of operator 2.** +- `1Cxx`: **set attack of operator 3.** +- `1Dxx`: **set attack of operator 4.** +- `30xx`: **enable envelope hard reset.** - this works by inserting a quick release and tiny delay before a new note. -- **`50xy`**: set AM of operator. +- `50xy`: **set AM of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` determines whether AM is on. -- **`51xy`**: set SL of operator. +- `51xy`: **set SL of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`52xy`**: set RR of operator. +- `52xy`: **set RR of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`53xy`**: set DT of operator. +- `53xy`: **set DT of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value: - - 0: -3 - - 1: -2 - - 2: -1 - - 3: 0 - - 4: 1 - - 5: 2 - - 6: 3 - - 7: -0 -- **`54xy`**: set RS of operator. + - `0`: -3 + - `1`: -2 + - `2`: -1 + - `3`: 0 + - `4`: 1 + - `5`: 2 + - `6`: 3 + - `7`: -0 +- `54xy`: **set RS of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value. -- **`55xy`**: set SSG-EG of operator. +- `55xy`: **set SSG-EG of operator.** - `x` is the operator (1-4). a value of 0 means "all operators". - `y` is the value (0-8). - values between 0 and 7 set SSG-EG. - value 8 disables it. -- **`56xx`**: set DR of all operators. -- **`57xx`**: set DR of operator 1. -- **`58xx`**: set DR of operator 2. -- **`59xx`**: set DR of operator 3. -- **`5Axx`**: set DR of operator 4. -- **`5Bxx`**: set D2R/SR of all operators. -- **`5Cxx`**: set D2R/SR of operator 1. -- **`5Dxx`**: set D2R/SR of operator 2. -- **`5Exx`**: set D2R/SR of operator 3. -- **`5Fxx`**: set D2R/SR of operator 4. +- `56xx`: **set DR of all operators.** +- `57xx`: **set DR of operator 1.** +- `58xx`: **set DR of operator 2.** +- `59xx`: **set DR of operator 3.** +- `5Axx`: **set DR of operator 4.** +- `5Bxx`: **set D2R/SR of all operators.** +- `5Cxx`: **set D2R/SR of operator 1.** +- `5Dxx`: **set D2R/SR of operator 2.** +- `5Exx`: **set D2R/SR of operator 3.** +- `5Fxx`: **set D2R/SR of operator 4.** From feef9234b656fa76ca31d251e1673a23d4438718 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 25 Jun 2023 04:57:04 -0500 Subject: [PATCH 148/183] MIDI output: don't spam logs on error --- src/audio/rtmidi.cpp | 6 ++++++ src/audio/rtmidi.h | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/audio/rtmidi.cpp b/src/audio/rtmidi.cpp index cbf4dca4..ea1903c3 100644 --- a/src/audio/rtmidi.cpp +++ b/src/audio/rtmidi.cpp @@ -160,6 +160,7 @@ bool TAMidiInRtMidi::quit() { bool TAMidiOutRtMidi::send(const TAMidiMessage& what) { if (!isOpen) return false; + if (!isWorking) return false; if (what.type<0x80) return false; size_t len=0; switch (what.type&0xf0) { @@ -190,6 +191,7 @@ bool TAMidiOutRtMidi::send(const TAMidiMessage& what) { port->sendMessage(what.sysExData.get(),len); } catch (RtMidiError& e) { logE("MIDI output error! %s",e.what()); + isWorking=false; return false; } return true; @@ -209,6 +211,7 @@ bool TAMidiOutRtMidi::send(const TAMidiMessage& what) { port->sendMessage((const unsigned char*)&what.type,len); } catch (RtMidiError& e) { logE("MIDI output error! %s",e.what()); + isWorking=false; return false; } return true; @@ -237,17 +240,20 @@ bool TAMidiOutRtMidi::openDevice(String name) { } isOpen=portOpen; if (!portOpen) logW("could not find MIDI out device..."); + isWorking=true; return portOpen; } catch (RtMidiError& e) { logW("could not open MIDI out device! %s",e.what()); return false; } + isWorking=true; return true; } bool TAMidiOutRtMidi::closeDevice() { if (port==NULL) return false; if (!isOpen) return false; + isWorking=false; try { port->closePort(); } catch (RtMidiError& e) { diff --git a/src/audio/rtmidi.h b/src/audio/rtmidi.h index 5a8e06e0..33a71af5 100644 --- a/src/audio/rtmidi.h +++ b/src/audio/rtmidi.h @@ -38,7 +38,7 @@ class TAMidiInRtMidi: public TAMidiIn { class TAMidiOutRtMidi: public TAMidiOut { RtMidiOut* port; - bool isOpen; + bool isOpen, isWorking; public: bool send(const TAMidiMessage& what); bool isDeviceOpen(); @@ -49,5 +49,6 @@ class TAMidiOutRtMidi: public TAMidiOut { bool init(); TAMidiOutRtMidi(): port(NULL), - isOpen(false) {} + isOpen(false), + isWorking(false) {} }; \ No newline at end of file From 0ec451726c7ceff43ea80a37a320c97f6bef61ef Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Sun, 25 Jun 2023 09:43:24 -0700 Subject: [PATCH 149/183] The teeniest adjustment. --- doc/3-pattern/effects.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/doc/3-pattern/effects.md b/doc/3-pattern/effects.md index 3794919d..6becb6c8 100644 --- a/doc/3-pattern/effects.md +++ b/doc/3-pattern/effects.md @@ -1,8 +1,8 @@ # effect list -Most of the effect numbers are from ProTracker / FastTracker 2. +most of the effect numbers are from ProTracker / FastTracker 2. -However, effects are continuous, which means you only need to type it once and then stop it with an effect value of `00` or no effect value at all. +however, effects are continuous, which means you only need to type it once and then stop it with an effect value of `00` or no effect value at all. ## volume @@ -18,11 +18,12 @@ However, effects are continuous, which means you only need to type it once and t - If `y` is 0 then this is a slide up. - `07xy`: **Tremolo.** changes volume to be "wavy" with a sine LFO. `x` is the speed, while `y` is the depth. + - Tremolo is downward only. - Maximum tremolo depth is -60 volume steps. ## pitch -- `E5xx`: **Set pitch.** `00 is -1 semitone, `80` is base pitch, `FF` is nearly +1 semitone. +- `E5xx`: **Set pitch.** `00` is -1 semitone, `80` is base pitch, `FF` is nearly +1 semitone. - `01xx`: **Pitch slide up.** - `02xx`: **Pitch slide down.** - `F1xx`: **Single tick pitch slide up.** @@ -46,7 +47,7 @@ However, effects are continuous, which means you only need to type it once and t ## panning -Not all chips support these effects. +not all chips support these effects. - `08xy`: **Set panning.** changes stereo volumes independently. `x` is the left channel and `y` is the right one. - `88xy`: **Set rear panning.** changes rear channel volumes independently. `x` is the rear left channel and `y` is the rear right one. @@ -91,7 +92,7 @@ Not all chips support these effects. - `F5xx`: **Disable macro.** see macro table at the end of this document for possible values. - `F6xx`: **Enable macro.** -Additionally, [each chip has its own effects](../7-systems/README.md). +additionally, [each chip has its own effects](../7-systems/README.md). ## macro table From a5b4baf1b3f24d75efef919a8d97f9371aba0a02 Mon Sep 17 00:00:00 2001 From: brickblock369 <59150779+brickblock369@users.noreply.github.com> Date: Tue, 27 Jun 2023 17:25:10 +0900 Subject: [PATCH 150/183] Adding a power snare for OPM --- instruments/FM/drums/OPM Power Snare.fui | Bin 0 -> 101 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 instruments/FM/drums/OPM Power Snare.fui diff --git a/instruments/FM/drums/OPM Power Snare.fui b/instruments/FM/drums/OPM Power Snare.fui new file mode 100644 index 0000000000000000000000000000000000000000..58846582388a31779f43be37a651b94256138787 GIT binary patch literal 101 zcmZ?s^b4NHpvd6o$ionjU!Gc|5S*7-l*-`dtHSU_jGe()T%N(<7lVYApuB*CH3Ng8 xj4*@4PX+-)26^59PX-2GM@0q>21dsJ{}~Q4Fd8s0I530Qj0}v->`=z~{{Wl-7j6Im literal 0 HcmV?d00001 From 6ede173d2cba7ea47ad5b3db161fdd6e531706f4 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Tue, 27 Jun 2023 14:06:23 -0700 Subject: [PATCH 151/183] SNES docs (and other tweaks) --- doc/4-instrument/README.md | 4 +- doc/4-instrument/amiga.md | 4 +- doc/4-instrument/snes.md | 46 +++++++++ doc/4-instrument/x1_010.md | 6 +- doc/7-systems/amiga.md | 2 + doc/7-systems/nes.md | 183 +++++++++++++++++++++++++----------- doc/7-systems/snes.md | 188 ++++++++++++++++++++++++++++--------- 7 files changed, 325 insertions(+), 108 deletions(-) create mode 100644 doc/4-instrument/snes.md diff --git a/doc/4-instrument/README.md b/doc/4-instrument/README.md index 96ae8821..2f424c53 100644 --- a/doc/4-instrument/README.md +++ b/doc/4-instrument/README.md @@ -10,7 +10,7 @@ double-click to open the instrument editor. every instrument can be renamed and have its type changed. -depending on the instrument type, there are currently 13 different types of an instrument editor: +depending on the instrument type, there are many different types of instrument editor: - [FM synthesis](fm.md) - for use with YM2612, YM2151 and FM block portion of YM2610. - [Standard](standard.md) - for use with NES and Sega Master System's PSG sound source and its derivatives. @@ -29,7 +29,7 @@ depending on the instrument type, there are currently 13 different types of an i - [Konami SCC / Bubble System WSG](scc.md) - for use with Konami SCC and Wavetable portion in Bubble System's sound hardware. - [Namco 163](n163.md) - for use with Namco 163. - [Konami VRC6](vrc6.md) - for use with VRC6's PSG sound source. - +- [SNES](snes.md) - for use with SNES S-APU. # macros diff --git a/doc/4-instrument/amiga.md b/doc/4-instrument/amiga.md index fc76c866..3d7a606f 100644 --- a/doc/4-instrument/amiga.md +++ b/doc/4-instrument/amiga.md @@ -1,4 +1,4 @@ -# Amiga/PCM sound sourceinstrument editor +# Amiga/PCM sound source instrument editor The PCM instrument editor consists of a sample selector and several macros: @@ -8,7 +8,7 @@ The PCM instrument editor consists of a sample selector and several macros: # Macros -- **Volume**: volume sequence WARNING: it works only on Amiga system, as of version 0.5.5!! +- **Volume**: volume sequence. _warning:_ it works only on Amiga system, as of version 0.5.5! - **Arpeggio**: pitch sequence - **Waveform**: sample sequence - **Panning (left)**: output level for left channel diff --git a/doc/4-instrument/snes.md b/doc/4-instrument/snes.md new file mode 100644 index 00000000..bdd4812c --- /dev/null +++ b/doc/4-instrument/snes.md @@ -0,0 +1,46 @@ +# SNES instrument editor + +these tabs are unique to the editor for SNES instruments. + + + +# SNES + +**Use envelope** enables the ADSR volume envelope. if it's on: + +- **A**: attack rate. +- **D**: decay rate. +- **S**: sustain level. +- **D2**: decay rate during sustain. +- **R**: release rate. +- **Sustain/release mode**: + - **Direct**: note release acts as note cut. + - **Effective (linear decrease)**: after release, volume lowers by subtractions of 1/64 steps. + - **Effective (exponential decrease)**: after release, volume decays exponentially. see [gain chart](../7-systems/snes.md). + - **Delayed (write R on release)**: after release, waits until A and D have completed before starting exponential decrease. + +if envelope is off, select gain mode as described below. + + + +# Macros + +- **Volume**: volume. +- **Arpeggio**: pitch in half-steps. +- **Noise Freq**: preset frequency of noise generator. +- **Waveform**: waveform. +- **Panning (left)**: output level of left channel. +- **Panning (right)**: output level of right channel. +- **Pitch**: fine pitch. +- **Special**: bitmap of flags. + - invert left: inverts output of left channel. + - invert right: inverts output of right channel. + - pitch mod: modulates pitch using previous channel's output. + - echo: enables echo. + - noise: enables noise generator. +- **Gain**: sets mode and value of gain. + - 0 – 127: direct gain from 0 to 127 + - 128 – 159: linear gain from -0 to -31 + - 160 – 191: exponential gain from -0 to -31 + - 192 – 223: linear gain from +0 to +31 + - 224 – 255: exponential gain from +0 to +31 diff --git a/doc/4-instrument/x1_010.md b/doc/4-instrument/x1_010.md index 2311f74d..8be27f05 100644 --- a/doc/4-instrument/x1_010.md +++ b/doc/4-instrument/x1_010.md @@ -1,11 +1,11 @@ # X1-010 instrument editor -X1-010 instrument editor consists of 7 macros. +X1-010 instrument editor consists of these macros. - **Volume**: volume levels sequence - **Arpeggio**: pitch sequence -- **Waveform**: spicifies wavetables sequence +- **Waveform**: specifies wavetables sequence - **Envelope Mode**: allows shaping an envelope -- **Envelope**: spicifies envelope shape sequence, it's also wavetable. +- **Envelope**: specifies envelope shape sequence, it's also wavetable. - **Auto envelope numerator**: sets the envelope to the channel's frequency multiplied by numerator - **Auto envelope denominator**: sets the envelope to the channel's frequency divided by denominator diff --git a/doc/7-systems/amiga.md b/doc/7-systems/amiga.md index 25fc4321..8f49bd12 100644 --- a/doc/7-systems/amiga.md +++ b/doc/7-systems/amiga.md @@ -4,6 +4,8 @@ a computer with a desktop OS, lifelike graphics and 4 channels of PCM sound in 1 in this very computer music trackers were born... +imported MOD files use this chip, and will set A-4 tuning to 436. + # effects - `10xx`: **toggle low-pass filter.** `0` turns it off and `1` turns it on. diff --git a/doc/7-systems/nes.md b/doc/7-systems/nes.md index 0a92628e..40963c1c 100644 --- a/doc/7-systems/nes.md +++ b/doc/7-systems/nes.md @@ -6,10 +6,17 @@ also known as Famicom. it is a five-channel sound generator: first two channels # effects -- `11xx`: **write to delta modulation counter.** this may be used to attenuate the triangle and noise channels. +- `11xx`: **write to delta modulation counter.** range is `00` to `7F`. this may be used to attenuate the triangle and noise channels down to about half normal volume. - will not work if a sample is playing. - `12xx`: **set duty cycle or noise mode of channel.** - - may be `0` to `3` for the pulse channels and `0` or `1` for the noise channel. + - may be `0` to `3` for the pulse channels: + - `0`: 12.5% + - `1`: 25% + - `2`: 50% + - `3`: 75% (inverted) + - may be `0` or `1` for the noise channel: + - `0`: long (15-bit LFSR, 32767-step) + - `1`: short (9-bit LFSR, 93-step) - `13xy`: **setup sweep up.** - `x` is the time. - `y` is the shift. @@ -48,62 +55,126 @@ also known as Famicom. it is a five-channel sound generator: first two channels - only works in DPCM mode. - see table below for possible values. -# DPCM frequency table +# tables -val | NTSC | PAL -----|----------:|----------: - 00 | 4181.7Hz | 4177.4Hz - 01 | 4709.9Hz | 4696.6Hz - 02 | 5264.0Hz | 5261.4Hz - 03 | 5593.0Hz | 5579.2Hz - 04 | 6257.9Hz | 6023.9Hz - 05 | 7046.3Hz | 7044.9Hz - 06 | 7919.3Hz | 7917.2Hz - 07 | 8363.4Hz | 8397.0Hz - 08 | 9419.9Hz | 9446.6Hz - 09 | 11186.1Hz | 11233.8Hz - 0A | 12604.0Hz | 12595.5Hz - 0B | 13982.6Hz | 14089.9Hz - 0C | 16884.6Hz | 16965.4Hz - 0D | 21306.8Hz | 21315.5Hz - 0E | 24858.0Hz | 25191.0Hz - 0F | 33143.9Hz | 33252.1Hz +## short noise frequencies (NTSC) -# length counter table +note | arpeggio | fundamental | MIDI note | pitch +:---- | -------: | ----------: | --------: | :---------- +`C-0` | @0 | 4.7 Hz | -9.47 | `d_1` + 53¢ +`C#0` | @1 | 9.5 Hz | 2.53 | `D-0` + 53¢ +`D-0` | @2 | 18.9 Hz | 14.55 | `D-1` + 55¢ +`D#0` | @3 | 25.3 Hz | 19.53 | `G-1` + 53¢ +`E-0` | @4 | 37.9 Hz | 26.55 | `D-2` + 55¢ +`F-0` | @5 | 50.6 Hz | 31.57 | `G-2` + 57¢ +`F#0` | @6 | 75.8 Hz | 38.55 | `D-3` + 55¢ +`G-0` | @7 | 95.3 Hz | 42.51 | `F#3` + 51¢ +`G#0` | @8 | 120.3 Hz | 46.55 | `A#3` + 55¢ +`A-0` | @9 | 150.4 Hz | 50.41 | `D-4` + 41¢ +`A#0` | @10 | 200.5 Hz | 55.39 | `G-4` + 39¢ +`B-0` | @11 | 300.7 Hz | 62.41 | `D-5` + 41¢ +`C-1` | @12 | 601.4 Hz | 74.41 | `D-6` + 41¢ +`C#1` | @13 | 1202.8 Hz | 86.41 | `D-7` + 41¢ +`D-1` | @14 | 2405.6 Hz | 98.41 | `D-8` + 41¢ +`D#1` | @15 | 4811.2 Hz | 110.41 | `D-9` + 41¢ -val | raw | NTSC | PAL | Dendy | NTSC 5-step | PAL 5-step | Dendy 5-step -----|----:|------:|------:|------:|------------:|-----------:|-------------: - 00 | 10 | 83ms | 100ms | 84ms | 104ms | 125ms | 105ms - 01 | 254 | 2.1s | 2.5s | 2.1s | 2.6s | 3.2s | 2.7s - 02 | 20 | 166ms | 200ms | 168ms | 208ms | 250ms | 210ms - 03 | 2 | 17ms | 20ms | 17ms | 21ms | 25ms | 21ms - 04 | 40 | 333ms | 400ms | 336ms | 417ms | 500ms | 421ms - 05 | 4 | 33ms | 40ms | 34ms | 42ms | 50ms | 42ms - 06 | 80 | 667ms | 800ms | 673ms | 833ms | 1.0s | 841ms - 07 | 6 | 50ms | 60ms | 50ms | 63ms | 75ms | 63ms - 08 | 160 | 1.3s | 1.6s | 1.3s | 1.7s | 2.0s | 1.7s - 09 | 8 | 67ms | 80ms | 67ms | 83ms | 100ms | 84ms - 0A | 60 | 500ms | 600ms | 505ms | 625ms | 750ms | 631ms - 0B | 10 | 83ms | 100ms | 84ms | 104ms | 125ms | 105ms - 0C | 14 | 117ms | 140ms | 118ms | 146ms | 175ms | 147ms - 0D | 12 | 100ms | 120ms | 101ms | 125ms | 150ms | 126ms - 0E | 26 | 217ms | 260ms | 219ms | 271ms | 325ms | 273ms - 0F | 14 | 117ms | 140ms | 118ms | 145ms | 175ms | 147ms - 10 | 12 | 100ms | 120ms | 101ms | 125ms | 150ms | 126ms - 11 | 16 | 133ms | 160ms | 135ms | 167ms | 200ms | 168ms - 12 | 24 | 200ms | 240ms | 202ms | 250ms | 300ms | 252ms - 13 | 18 | 150ms | 180ms | 151ms | 188ms | 225ms | 189ms - 14 | 48 | 400ms | 480ms | 404ms | 500ms | 600ms | 505ms - 15 | 20 | 167ms | 200ms | 168ms | 208ms | 250ms | 210ms - 16 | 96 | 800ms | 960ms | 807ms | 1.0s | 1.2s | 1.0s - 17 | 22 | 183ms | 220ms | 185ms | 229ms | 275ms | 231ms - 18 | 192 | 1.6s | 1.9s | 1.6s | 2.0s | 2.4s | 2.0s - 19 | 24 | 200ms | 240ms | 202ms | 250ms | 300ms | 252ms - 1A | 72 | 600ms | 720ms | 606ms | 750ms | 900ms | 757ms - 1B | 26 | 217ms | 260ms | 219ms | 271ms | 325ms | 273ms - 1C | 16 | 133ms | 160ms | 135ms | 167ms | 200ms | 168ms - 1D | 28 | 233ms | 280ms | 235ms | 292ms | 350ms | 294ms - 1E | 32 | 267ms | 320ms | 269ms | 333ms | 400ms | 336ms - 1F | 30 | 250ms | 300ms | 252ms | 313ms | 375ms | 315ms +reference: [NESdev](https://www.nesdev.org/wiki/APU_Noise) + +## length counter table + + + + + +value | raw | NTSC | PAL | Dendy | NTSC 5-step | PAL 5-step | Dendy 5-step +-----:|----:|------:|------:|------:|------------:|-----------:|-------------: + `03` | 2 | 17ms | 20ms | 17ms | 21ms | 25ms | 21ms + `05` | 4 | 33ms | 40ms | 34ms | 42ms | 50ms | 42ms + `07` | 6 | 50ms | 60ms | 50ms | 63ms | 75ms | 63ms + `09` | 8 | 67ms | 80ms | 67ms | 83ms | 100ms | 84ms + `00` | 10 | 83ms | 100ms | 84ms | 104ms | 125ms | 105ms + `0B` | 10 | 83ms | 100ms | 84ms | 104ms | 125ms | 105ms + `0D` | 12 | 100ms | 120ms | 101ms | 125ms | 150ms | 126ms + `10` | 12 | 100ms | 120ms | 101ms | 125ms | 150ms | 126ms + `0C` | 14 | 117ms | 140ms | 118ms | 146ms | 175ms | 147ms + `0F` | 14 | 117ms | 140ms | 118ms | 145ms | 175ms | 147ms + `1C` | 16 | 133ms | 160ms | 135ms | 167ms | 200ms | 168ms + `11` | 16 | 133ms | 160ms | 135ms | 167ms | 200ms | 168ms + `13` | 18 | 150ms | 180ms | 151ms | 188ms | 225ms | 189ms + `02` | 20 | 166ms | 200ms | 168ms | 208ms | 250ms | 210ms + `15` | 20 | 167ms | 200ms | 168ms | 208ms | 250ms | 210ms + `17` | 22 | 183ms | 220ms | 185ms | 229ms | 275ms | 231ms + `12` | 24 | 200ms | 240ms | 202ms | 250ms | 300ms | 252ms + `19` | 24 | 200ms | 240ms | 202ms | 250ms | 300ms | 252ms + `0E` | 26 | 217ms | 260ms | 219ms | 271ms | 325ms | 273ms + `1B` | 26 | 217ms | 260ms | 219ms | 271ms | 325ms | 273ms + `1D` | 28 | 233ms | 280ms | 235ms | 292ms | 350ms | 294ms + `1F` | 30 | 250ms | 300ms | 252ms | 313ms | 375ms | 315ms + `1E` | 32 | 267ms | 320ms | 269ms | 333ms | 400ms | 336ms + `04` | 40 | 333ms | 400ms | 336ms | 417ms | 500ms | 421ms + `14` | 48 | 400ms | 480ms | 404ms | 500ms | 600ms | 505ms + `0A` | 60 | 500ms | 600ms | 505ms | 625ms | 750ms | 631ms + `1A` | 72 | 600ms | 720ms | 606ms | 750ms | 900ms | 757ms + `06` | 80 | 667ms | 800ms | 673ms | 833ms | 1.0s | 841ms + `16` | 96 | 800ms | 960ms | 807ms | 1.0s | 1.2s | 1.0s + `08` | 160 | 1.3s | 1.6s | 1.3s | 1.7s | 2.0s | 1.7s + `18` | 192 | 1.6s | 1.9s | 1.6s | 2.0s | 2.4s | 2.0s + `01` | 254 | 2.1s | 2.5s | 2.1s | 2.6s | 3.2s | 2.7s reference: [NESdev](https://www.nesdev.org/wiki/APU_Length_Counter) + +## DPCM frequency table + +value | NTSC | PAL +------|----------:|----------: + `00` | 4181.7Hz | 4177.4Hz + `01` | 4709.9Hz | 4696.6Hz + `02` | 5264.0Hz | 5261.4Hz + `03` | 5593.0Hz | 5579.2Hz + `04` | 6257.9Hz | 6023.9Hz + `05` | 7046.3Hz | 7044.9Hz + `06` | 7919.3Hz | 7917.2Hz + `07` | 8363.4Hz | 8397.0Hz + `08` | 9419.9Hz | 9446.6Hz + `09` | 11186.1Hz | 11233.8Hz + `0A` | 12604.0Hz | 12595.5Hz + `0B` | 13982.6Hz | 14089.9Hz + `0C` | 16884.6Hz | 16965.4Hz + `0D` | 21306.8Hz | 21315.5Hz + `0E` | 24858.0Hz | 25191.0Hz + `0F` | 33143.9Hz | 33252.1Hz diff --git a/doc/7-systems/snes.md b/doc/7-systems/snes.md index e5546d4c..9595511b 100644 --- a/doc/7-systems/snes.md +++ b/doc/7-systems/snes.md @@ -1,8 +1,8 @@ -# Super Nintendo Entertainment System (SNES)/Super Famicom +# Super Nintendo Entertainment System (SNES) / Super Famicom the successor to NES to compete with Genesis, packing superior graphics and sample-based audio. -its audio system, developed by Sony, features a DSP chip, SPC700 CPU and 64KB of dedicated SRAM used by both. +its Sony-developed audio system features a DSP chip, SPC700 CPU, and 64KB of dedicated SRAM used by both. this whole system itself is pretty much a separate computer that the main CPU needs to upload its program and samples to. Furnace communicates with the DSP directly and provides a full 64KB of memory. this memory might be reduced excessively on ROM export to make up for playback engine and pattern data. you can go to window > statistics to see how much memory your samples are using. @@ -25,55 +25,153 @@ Furnace also allows the SNES to use wavetables (and the wavetable synthesizer) i - `10xx`: **set waveform.** - `11xx`: **toggle noise mode.** - `12xx`: **toggle echo on this channel.** -- `13xx`: **toggle pitch modulation.** -- `14xy`: **toggle inverting the left or right channels.** (x: left, y: right). -- `15xx`: **set envelope mode.** - - 0: ADSR. - - 1: gain (direct). - - 2: linear decrement. - - 3: exponential decrement. - - 4: linear increment. - - 5: bent line (inverse log) increment. +- `13xx`: **toggle pitch modulation.** frequency modulation by the previous channel's output. no effect on channel 1. +- `14xy`: **toggle inverting the left or right channels.** `x` is left, `y` is right. +- `15xx`: **set envelope mode.** see gain chart below for `1` through `5`. + - `0`: ADSR mode. + - `1`: gain (direct). volume holds at one level. + - `2`: linear decrement. volume lowers by subtractions of 1/64. + - `3`: exponential decrement. volume lowers by multiplications of 255/256. + - `4`: linear increment. volume rises by additions of 1/64. + - `5`: bent line (inverse log) increment. volume rises by additions of 1/64 until 3/4, then additions of 1/256. - `16xx`: **set gain.** `00` to `7F` if direct, `00` to `1F` otherwise. - `18xx`: **enable echo buffer.** - `19xx`: **set echo delay.** range is `0` to `F`. -- `1Axx`: **set left echo channel volume.** - - this is a signed number. +- `1Axx`: **set left echo channel volume.**\ + `1Bxx`: **set right echo channel volume.**\ + `1Cxx`: **set echo feedback.** + - all of these are signed numbers. - `00` to `7F` for 0 to 127. - `80` to `FF` for -128 to -1. - - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- `1Bxx`: **set right echo channel volume.** - - this is a signed number. - - `00` to `7F` for 0 to 127. - - `80` to `FF` for -128 to -1. - - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- `1Cxx`: **set echo feedback.** - - this is a signed number. - - `00` to `7F` for 0 to 127. - - `80` to `FF` for -128 to -1. - - setting this to -128 is not recommended as it may cause echo output to overflow and therefore click. -- `1Dxx`: **set noise generator frequency.** range is `00` to `1F`. -- `1Exx`: **set left dry / global volume.** - - this does not affect echo. -- `1Fxx`: **set right dry / global volume.** - - this does not affect echo. -- `20xx`: **set attack.** range is `0` to `F`. - - only in ADSR envelope mode. -- `21xx`: **set decay.** range is `0` to `7`. - - only in ADSR envelope mode. -- `22xx`: **set sustain.** range is `0` to `7`. - - only in ADSR envelope mode. -- `23xx`: **set release.** range is `00` to `1F`. - - only in ADSR envelope mode. -- `30xx`: **set echo filter coefficient 0.** -- `31xx`: **set echo filter coefficient 1.** -- `32xx`: **set echo filter coefficient 2.** -- `33xx`: **set echo filter coefficient 3.** -- `34xx`: **set echo filter coefficient 4.** -- `35xx`: **set echo filter coefficient 5.** -- `36xx`: **set echo filter coefficient 6.** -- `37xx`: **set echo filter coefficient 7.** + - setting these to -128 is not recommended as it may cause echo output to overflow and therefore click. +- `1Dxx`: **set noise generator frequency.** range is `00` to `1F`. see noise frequencies chart below. +- `1Exx`: **set left dry / global volume.**\ + `1Fxx`: **set right dry / global volume.** + - these do not affect echo. +- `20xx`: **set attack.** range is `0` to `F`.\ + `21xx`: **set decay.** range is `0` to `7`.\ + `22xx`: **set sustain.** range is `0` to `7`.\ + `23xx`: **set release.** range is `00` to `1F`. + - these four are only used in ADSR envelope mode. see ADSR chart below. +- `30xx`: **set echo filter coefficient 0.**\ + `31xx`: **set echo filter coefficient 1.**\ + `32xx`: **set echo filter coefficient 2.**\ + `33xx`: **set echo filter coefficient 3.**\ + `34xx`: **set echo filter coefficient 4.**\ + `35xx`: **set echo filter coefficient 5.**\ + `36xx`: **set echo filter coefficient 6.**\ + `37xx`: **set echo filter coefficient 7.** - all of these are signed numbers. - `00` to `7F` for 0 to 127. - `80` to `FF` for -128 to -1. - _Note:_ Be sure the sum of all coefficients is between -128 and 127. sums outside that may result in overflow and therefore clicking. + - see [SnesLab](https://sneslab.net/wiki/FIR_Filter) for a full explanation and examples. + +# tables + +## ADSR + +| attack | 0→1 time | decay | 1→S time | sustain | ratio | release | S→0 time +| -----: | -------: | ----: | -------: | ------: | :---: | ------: | -------: +| `00` | 4.1 sec | `00` | 1.2 sec | `00` | 1/8 | `00` | ∞ +| `01` | 2.5 sec | `01` | 740 msec | `01` | 2/8 | `01` | 38 sec +| `02` | 1.5 sec | `02` | 440 msec | `02` | 3/8 | `02` | 28 sec +| `03` | 1.0 sec | `03` | 290 msec | `03` | 4/8 | `03` | 24 sec +| `04` | 640 msec | `04` | 180 msec | `04` | 5/8 | `04` | 19 sec +| `05` | 380 msec | `05` | 110 msec | `05` | 6/8 | `05` | 14 sec +| `06` | 260 msec | `06` | 74 msec | `06` | 7/8 | `06` | 12 sec +| `07` | 160 msec | `07` | 37 msec | `07` | 1 | `07` | 9.4 sec +| `08` | 96 msec | | | | | `08` | 7.1 sec +| `09` | 64 msec | | | | | `09` | 5.9 sec +| `0A` | 40 msec | | | | | `0A` | 4.7 sec +| `0B` | 24 msec | | | | | `0B` | 3.5 sec +| `0C` | 16 msec | | | | | `0C` | 2.9 sec +| `0D` | 10 msec | | | | | `0D` | 2.4 sec +| `0E` | 6 msec | | | | | `0E` | 1.8 sec +| `0F` | 0 msec | | | | | `0F` | 1.5 sec +| | | | | | | `10` | 1.2 sec +| | | | | | | `11` | 880 msec +| | | | | | | `12` | 740 msec +| | | | | | | `13` | 590 msec +| | | | | | | `14` | 440 msec +| | | | | | | `15` | 370 msec +| | | | | | | `16` | 290 msec +| | | | | | | `17` | 220 msec +| | | | | | | `18` | 180 msec +| | | | | | | `19` | 150 msec +| | | | | | | `1A` | 110 msec +| | | | | | | `1B` | 92 msec +| | | | | | | `1C` | 74 msec +| | | | | | | `1D` | 55 msec +| | | | | | | `1E` | 37 msec +| | | | | | | `1F` | 18 msec + +reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-voice-register:-adsr-1097) + +## gain + +value | linear inc. | bent line inc. | linear dec. | exponent dec. +----: | ----------: | -------------: | ----------: | ------------: + `00` | ∞ | ∞ | ∞ | ∞ + `01` | 4.1 sec | 7.2 sec | 4.1 sec | 38 sec + `02` | 3.1 sec | 5.4 sec | 3.1 sec | 28 sec + `03` | 2.6 sec | 4.6 sec | 2.6 sec | 24 sec + `04` | 2.0 sec | 3.5 sec | 2.0 sec | 19 sec + `05` | 1.5 sec | 2.6 sec | 1.5 sec | 14 sec + `06` | 1.3 sec | 2.3 sec | 1.3 sec | 12 sec + `07` | 1.0 sec | 1.8 sec | 1.0 sec | 9.4 sec + `08` | 770 msec | 1.3 sec | 770 msec | 7.1 sec + `09` | 640 msec | 1.1 sec | 640 msec | 5.9 sec + `0A` | 510 msec | 900 msec | 510 msec | 4.7 sec + `0B` | 380 msec | 670 msec | 380 msec | 3.5 sec + `0C` | 320 msec | 560 msec | 320 msec | 2.9 sec + `0D` | 260 msec | 450 msec | 260 msec | 2.4 sec + `0E` | 190 msec | 340 msec | 190 msec | 1.8 sec + `0F` | 160 msec | 280 msec | 160 msec | 1.5 sec + `10` | 130 msec | 220 msec | 130 msec | 1.2 sec + `11` | 96 msec | 170 msec | 96 msec | 880 msec + `12` | 80 msec | 140 msec | 80 msec | 740 msec + `13` | 64 msec | 110 msec | 64 msec | 590 msec + `14` | 48 msec | 84 msec | 48 msec | 440 msec + `15` | 40 msec | 70 msec | 40 msec | 370 msec + `16` | 32 msec | 56 msec | 32 msec | 290 msec + `17` | 24 msec | 42 msec | 24 msec | 220 msec + `18` | 20 msec | 35 msec | 20 msec | 180 msec + `19` | 16 msec | 28 msec | 16 msec | 150 msec + `1A` | 12 msec | 21 msec | 12 msec | 110 msec + `1B` | 10 msec | 18 msec | 10 msec | 92 msec + `1C` | 8 msec | 14 msec | 8 msec | 74 msec + `1D` | 6 msec | 11 msec | 6 msec | 55 msec + `1E` | 4 msec | 7 msec | 4 msec | 37 msec + `1F` | 2 msec | 3.5 msec | 2 msec | 18 msec + +reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-voice-register:-gain-1156) + +## noise frequencies + +value | freq. | value | freq. +----: | -----: | ----: | -------: +`00` | 0 Hz | `10` | 500 Hz +`01` | 16 Hz | `11` | 667 Hz +`02` | 21 Hz | `12` | 800 Hz +`03` | 25 Hz | `13` | 1.0 KHz +`04` | 31 Hz | `14` | 1.3 KHz +`05` | 42 Hz | `15` | 1.6 KHz +`06` | 50 Hz | `16` | 2.0 KHz +`07` | 63 Hz | `17` | 2.7 KHz +`08` | 83 Hz | `18` | 3.2 KHz +`09` | 100 Hz | `19` | 4.0 KHz +`0A` | 125 Hz | `1A` | 5.3 KHz +`0B` | 167 Hz | `1B` | 6.4 KHz +`0C` | 200 Hz | `1C` | 8.0 KHz +`0D` | 250 Hz | `1D` | 10.7 KHz +`0E` | 333 Hz | `1E` | 16 KHz +`0F` | 400 Hz | `1F` | 32 KHz + +reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-register:-flg-1318) + + + +# resources + +- [SNES-format BRR samples](https://www.smwcentral.net/?p=section&s=brrsamples) at SMW Central From 55fc4bd695f7b862b3ccf2c1573804a5ffbadca0 Mon Sep 17 00:00:00 2001 From: brickblock369 <59150779+brickblock369@users.noreply.github.com> Date: Thu, 29 Jun 2023 15:24:46 +0900 Subject: [PATCH 152/183] Adding AY drums --- instruments/other/AY Heavy Kick and Snare.fui | Bin 0 -> 155 bytes instruments/other/AY Heavy Kick.fui | Bin 0 -> 147 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 instruments/other/AY Heavy Kick and Snare.fui create mode 100644 instruments/other/AY Heavy Kick.fui diff --git a/instruments/other/AY Heavy Kick and Snare.fui b/instruments/other/AY Heavy Kick and Snare.fui new file mode 100644 index 0000000000000000000000000000000000000000..2bcb7d954979e8821f43257a0671c21e23d1fbbb GIT binary patch literal 155 zcmZ?s^b4NHz{cR`D9qrInpjq;;GLPAt)Q(CoR?UX%HZo*z`()4Aol-110w??KM3&g z@$&F+b8&L8v$3);GXaG;dH*vUWMI^1U~td{Vl5z62VxZ=>AeI4QDIjLzfS4p8 eC?qT*Dkjd%4dF8~FflTL0ptH*Uls-+kOu&R3>ZlO literal 0 HcmV?d00001 diff --git a/instruments/other/AY Heavy Kick.fui b/instruments/other/AY Heavy Kick.fui new file mode 100644 index 0000000000000000000000000000000000000000..3f3de6fca61d6cb004eb6a3177a3874309dea96f GIT binary patch literal 147 zcmZ?s^b4NHz{cR`$j#u9npjq;;GLPA&EV@;z`()4Aol-110w??KM3&g@$&F+b8&L8 zv$3);GXaG;dH*vUWMI^1U~td{Vl5z62VxZ=>AeI4QDIjLzfS4p8C;&2wmzf*F UXJlYtU;+ci|G~a2KpulU02UY(w*UYD literal 0 HcmV?d00001 From 379b19a102c4a54f728c2c728405f4d12b7276f8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 29 Jun 2023 02:27:11 -0500 Subject: [PATCH 153/183] GUI: sample editor warnings, part 3 --- src/gui/sampleEdit.cpp | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/src/gui/sampleEdit.cpp b/src/gui/sampleEdit.cpp index f68fd7a8..c88562c4 100644 --- a/src/gui/sampleEdit.cpp +++ b/src/gui/sampleEdit.cpp @@ -200,6 +200,9 @@ void FurnaceGUI::drawSampleEdit() { SAMPLE_WARN(warnLoopPos,"QSound: loop cannot be longer than 32767 samples"); } } + if (sample->samples>65535) { + SAMPLE_WARN(warnLength,"QSound: maximum sample length is 65535"); + } break; case DIV_SYSTEM_NES: if (sample->loop) { @@ -207,11 +210,17 @@ void FurnaceGUI::drawSampleEdit() { SAMPLE_WARN(warnLoopPos,"NES: loop point ignored on DPCM (may only loop entire sample)"); } } + if (sample->samples>32648) { + SAMPLE_WARN(warnLength,"NES: maximum DPCM sample length is 32648"); + } break; case DIV_SYSTEM_X1_010: if (sample->loop) { SAMPLE_WARN(warnLoop,"X1-010: samples can't loop"); } + if (sample->samples>131072) { + SAMPLE_WARN(warnLength,"X1-010: maximum sample length is 131072"); + } break; case DIV_SYSTEM_GA20: if (sample->loop) { @@ -235,9 +244,12 @@ void FurnaceGUI::drawSampleEdit() { if (sample->loop) { SAMPLE_WARN(warnLoop,"YM2610: ADPCM-A samples can't loop"); if (sample->loopStart!=0 || sample->loopEnd!=(int)(sample->samples)) { - SAMPLE_WARN(warnLoopPos,"YM2608: loop point ignored on ADPCM-B (may only loop entire sample)"); + SAMPLE_WARN(warnLoopPos,"YM2610: loop point ignored on ADPCM-B (may only loop entire sample)"); } } + if (sample->samples>2097152) { + SAMPLE_WARN(warnLength,"YM2610: maximum ADPCM-A sample length is 2097152"); + } break; case DIV_SYSTEM_AMIGA: if (sample->loop) { @@ -245,6 +257,15 @@ void FurnaceGUI::drawSampleEdit() { SAMPLE_WARN(warnLoopPos,"Amiga: loop must be a multiple of 2"); } } + if (sample->samples>131070) { + SAMPLE_WARN(warnLength,"Amiga: maximum sample length is 131070"); + } + break; + case DIV_SYSTEM_SEGAPCM: + case DIV_SYSTEM_SEGAPCM_COMPAT: + if (sample->samples>65280) { + SAMPLE_WARN(warnLength,"SegaPCM: maximum sample length is 65280"); + } break; default: break; @@ -1714,7 +1735,16 @@ void FurnaceGUI::drawSampleEdit() { ImGui::TableNextColumn(); ImGui::TextUnformatted(statusBar2.c_str()); ImGui::TableNextColumn(); - ImGui::TextUnformatted(statusBar3.c_str()); + if (!warnLength.empty()) { + ImGui::PushStyleColor(ImGuiCol_Text,uiColors[GUI_COLOR_WARNING]); + ImGui::TextUnformatted(statusBar3.c_str()); + ImGui::PopStyleColor(); + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("%s",warnLength.c_str()); + } + } else { + ImGui::TextUnformatted(statusBar3.c_str()); + } ImGui::EndTable(); } From bbcf4c34ed8fdc28348c116629563fc964af8ae8 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Thu, 29 Jun 2023 12:42:36 -0700 Subject: [PATCH 154/183] Making requested fixes. Fixed those dashes and that pesky semicolon. --- doc/1-intro/concepts.md | 2 +- doc/2-interface/song-info.md | 2 +- doc/4-instrument/README.md | 2 +- doc/7-systems/pce.md | 2 +- doc/7-systems/pcspkr.md | 2 +- doc/7-systems/pet.md | 2 +- doc/7-systems/ricoh.md | 2 +- doc/7-systems/x1-010.md | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/1-intro/concepts.md b/doc/1-intro/concepts.md index cee6e9ad..130e2ae8 100644 --- a/doc/1-intro/concepts.md +++ b/doc/1-intro/concepts.md @@ -32,5 +32,5 @@ The **order list** is a smaller spreadsheet showing the overall song structure. Different chips have different capabilities. Even within the same chip, each channel may have its own ways of making sound. - Some channels use one or more waveform **generators** (sine, square, noise...) to build up a sound. - Of special note are **[FM (frequency modulation)](../4-instrument/fm.md)** channels, which use a number of generators called **operators** that can interact to make very complex sounds. -- Some channels use **[samples](../6-sample/README.md)** – recordings of sounds, often with defined loop points to allow a note to sustain. +- Some channels use **[samples](../6-sample/README.md)** - recordings of sounds, often with defined loop points to allow a note to sustain. - Some channels use **[wavetables](../5-wave/README.md)**, which are like very short samples of fixed length that automatically loop. \ No newline at end of file diff --git a/doc/2-interface/song-info.md b/doc/2-interface/song-info.md index 5ba682a2..7919e7be 100644 --- a/doc/2-interface/song-info.md +++ b/doc/2-interface/song-info.md @@ -11,7 +11,7 @@ All of this metadata will be included in a VGM export. This isn't the case for a # subsongs -This window allows one to create **subsongs** – multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. +This window allows one to create **subsongs** - multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. - The drop-down box selects the current subsong. - The **`+`** button adds a new subsong. diff --git a/doc/4-instrument/README.md b/doc/4-instrument/README.md index 96ae8821..564f5aff 100644 --- a/doc/4-instrument/README.md +++ b/doc/4-instrument/README.md @@ -94,6 +94,6 @@ Finally, the sequence of values can be directly edited in the text box at the bo ![LFO macro editor](macro-LFO.png) - **Bottom** and **Top** determine the range of values generated by the macro. (Bottom can be larger than Top to invert the waveform!) -- **Speed** is how quickly the values change – the frequency of the oscillator. +- **Speed** is how quickly the values change - the frequency of the oscillator. - **Phase** is which part of the waveform the macro will start at, measured in 1/1024 increments. - **Shape** is the waveform used. Triangle is the default, and Saw and Square are exactly as they say. diff --git a/doc/7-systems/pce.md b/doc/7-systems/pce.md index cfa71a53..80f4af10 100644 --- a/doc/7-systems/pce.md +++ b/doc/7-systems/pce.md @@ -19,4 +19,4 @@ furthermore, it has some PCM and LFO! - when LFO is enabled, channel 2 is muted and its output is passed to channel 1's frequency. - `13xx`: **set LFO speed.** - `17xx`: **toggle PCM mode.** - - _this effect is here for compatibility reasons;_ it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). + - _this effect is here for compatibility reasons_; it is otherwise recommended to use Sample type instruments (which automatically enable PCM mode when used). diff --git a/doc/7-systems/pcspkr.md b/doc/7-systems/pcspkr.md index 42330b06..a6a55ba6 100644 --- a/doc/7-systems/pcspkr.md +++ b/doc/7-systems/pcspkr.md @@ -1,6 +1,6 @@ # PC Speaker -40 years of one square beep – and still going! Single channel, no volume control... +40 years of one square beep - and still going! Single channel, no volume control... # real output diff --git a/doc/7-systems/pet.md b/doc/7-systems/pet.md index f3e51bca..9b7e3b5b 100644 --- a/doc/7-systems/pet.md +++ b/doc/7-systems/pet.md @@ -2,7 +2,7 @@ a computer from 1977 which was leader on US schools back then. subsequently the Apple II took its throne. -maybe no better than a computer terminal, but somebody discovered a way to update the screen at turbo rate – and eventually its sound "chip" (it was nothing more than an 8-bit shift register) was abused as well. +maybe no better than a computer terminal, but somebody discovered a way to update the screen at turbo rate - and eventually its sound "chip" (it was nothing more than an 8-bit shift register) was abused as well. some of these didn't even have sound... diff --git a/doc/7-systems/ricoh.md b/doc/7-systems/ricoh.md index e84a5db3..51832602 100644 --- a/doc/7-systems/ricoh.md +++ b/doc/7-systems/ricoh.md @@ -1,6 +1,6 @@ # Ricoh RF5C68 -YM2612's sidekick – poor man's SNES DSP. 8-channel PCM sample-based synthesizer used in Sega CD, Fujitsu FM Towns and some of Sega's arcade machines. supports up to 64KB of external PCM data. +YM2612's sidekick - poor man's SNES DSP. 8-channel PCM sample-based synthesizer used in Sega CD, Fujitsu FM Towns and some of Sega's arcade machines. supports up to 64KB of external PCM data. # effects diff --git a/doc/7-systems/x1-010.md b/doc/7-systems/x1-010.md index dc46f465..5f110aba 100644 --- a/doc/7-systems/x1-010.md +++ b/doc/7-systems/x1-010.md @@ -8,7 +8,7 @@ Allumer rebadged it for their own arcade hardware. it has 16 channels, which can all be switched between PCM sample or wavetable playback mode. wavetable playback needs to paired with envelope, similar to AY PSG, but shapes are stored in RAM and as such are user-definable. -in Furnace, this chip can be configured for original arcade mono output or stereo output – it simulates early 'incorrect' emulation on some mono hardware, but it is also based on the assumption that each channel is connected to each output. +in Furnace, this chip can be configured for original arcade mono output or stereo output - it simulates early 'incorrect' emulation on some mono hardware, but it is also based on the assumption that each channel is connected to each output. # waveform types From 69e351575732afe074e659f498f3ec16e11a861a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 30 Jun 2023 06:09:42 -0500 Subject: [PATCH 155/183] SegaPCM: real limit is 2MB --- src/engine/platform/segapcm.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/engine/platform/segapcm.cpp b/src/engine/platform/segapcm.cpp index 47411496..9376bb0c 100644 --- a/src/engine/platform/segapcm.cpp +++ b/src/engine/platform/segapcm.cpp @@ -423,7 +423,7 @@ const void* DivPlatformSegaPCM::getSampleMem(int index) { } size_t DivPlatformSegaPCM::getSampleMemCapacity(int index) { - return index == 0 ? 16777216 : 0; + return index == 0 ? 2097152 : 0; } size_t DivPlatformSegaPCM::getSampleMemUsage(int index) { @@ -465,7 +465,7 @@ void DivPlatformSegaPCM::reset() { void DivPlatformSegaPCM::renderSamples(int sysID) { size_t memPos=0; - memset(sampleMem,0,16777216); + memset(sampleMem,0,2097152); memset(sampleLoaded,0,256*sizeof(bool)); memset(sampleOffSegaPCM,0,256*sizeof(unsigned int)); memset(sampleEndSegaPCM,0,256); @@ -482,7 +482,7 @@ void DivPlatformSegaPCM::renderSamples(int sysID) { } logV("- sample %d will be at %x with length %x",i,memPos,alignedSize); sampleLoaded[i]=true; - if (memPos>=16777216) break; + if (memPos>=2097152) break; sampleOffSegaPCM[i]=memPos; for (unsigned int j=0; j=sample->samples) { @@ -491,10 +491,10 @@ void DivPlatformSegaPCM::renderSamples(int sysID) { sampleMem[memPos++]=((unsigned char)sample->data8[j]+0x80); } sampleEndSegaPCM[i]=((memPos+0xff)>>8)-1; - if (memPos>=16777216) break; + if (memPos>=2097152) break; } logV(" and it ends in %d",sampleEndSegaPCM[i]); - if (memPos>=16777216) break; + if (memPos>=2097152) break; } sampleMemLen=memPos; } @@ -522,10 +522,10 @@ int DivPlatformSegaPCM::init(DivEngine* p, int channels, int sugRate, const DivC isMuted[i]=false; oscBuf[i]=new DivDispatchOscBuffer; } - sampleMem=new unsigned char[16777216]; + sampleMem=new unsigned char[2097152]; pcm.set_bank(segapcm_device::BANK_12M|segapcm_device::BANK_MASKF8); pcm.set_read([this](unsigned int addr) -> unsigned char { - return sampleMem[addr&0xffffff]; + return sampleMem[addr&0x1fffff]; }); setFlags(flags); reset(); From 7c328cfeed2720f8324355ca8eaaabe5747e7b09 Mon Sep 17 00:00:00 2001 From: Waverider <33787286+liaminventions@users.noreply.github.com> Date: Fri, 30 Jun 2023 16:13:56 -0400 Subject: [PATCH 156/183] add 2 songs and fix 010 editor (#1179) * add 1 song and fix 010 editor * add song * fix key 19 --- demos/gameboy/finger.fur | Bin 0 -> 2872 bytes demos/x16/Cafe - 010 Editor 2.0kg.fur | Bin 12873 -> 10728 bytes demos/x16/her11.fur | Bin 8604 -> 7287 bytes demos/x16/keygen19.fur | Bin 0 -> 23395 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 demos/gameboy/finger.fur create mode 100644 demos/x16/keygen19.fur diff --git a/demos/gameboy/finger.fur b/demos/gameboy/finger.fur new file mode 100644 index 0000000000000000000000000000000000000000..eb1917a3490fd89f27cacb9ba6620902845bb41b GIT binary patch literal 2872 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 aZ(p=MxnSgWgY^dH^aRTcU;JNWRRr>VGh2)R literal 12873 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 diff --git a/demos/x16/her11.fur b/demos/x16/her11.fur index 1cfabac199e79e68e92f72f3e175116dfc6c582e..06c4870f82590831f385a795895182da54b7742b 100644 GIT binary patch literal 7287 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 Z7xNcdSs<4 Date: Fri, 30 Jun 2023 16:31:34 -0500 Subject: [PATCH 157/183] GUI: compact sample editor automatic button layout depending on available width --- src/gui/gui.cpp | 9 +++++++++ src/gui/gui.h | 2 ++ src/gui/sampleEdit.cpp | 44 +++++++++++++++++++++--------------------- 3 files changed, 33 insertions(+), 22 deletions(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index eb8b9943..d6788805 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -497,6 +497,15 @@ bool FurnaceGUI::InvCheckbox(const char* label, bool* value) { return false; } +void FurnaceGUI::sameLineMaybe(float width) { + if (width<0.0f) width=ImGui::GetFrameHeight(); + + logV("sameLineMaybe: %f %f",ImGui::GetContentRegionAvail().x,width); + + ImGui::SameLine(); + if (ImGui::GetContentRegionAvail().xdepth!=DIV_SAMPLE_DEPTH_8BIT && sample->depth!=DIV_SAMPLE_DEPTH_16BIT); - ImGui::SameLine(); + sameLineMaybe(); ImGui::Dummy(ImVec2(4.0*dpiScale,dpiScale)); - ImGui::SameLine(); + sameLineMaybe(); ImGui::Button(ICON_FA_ARROWS_H "##SResize"); if (ImGui::IsItemClicked()) { resizeSize=sample->samples; @@ -762,7 +762,7 @@ void FurnaceGUI::drawSampleEdit() { } else { resizeSize=sample->samples; } - ImGui::SameLine(); + sameLineMaybe(); ImGui::Button(ICON_FA_EXPAND "##SResample"); if (ImGui::IsItemClicked()) { resampleTarget=targetRate; @@ -819,14 +819,14 @@ void FurnaceGUI::drawSampleEdit() { } ImGui::SameLine(); ImGui::Dummy(ImVec2(4.0*dpiScale,dpiScale)); - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_UNDO "##SUndo")) { doUndoSample(); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Undo"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_REPEAT "##SRedo")) { doRedoSample(); } @@ -835,7 +835,7 @@ void FurnaceGUI::drawSampleEdit() { } ImGui::SameLine(); ImGui::Dummy(ImVec2(4.0*dpiScale,dpiScale)); - ImGui::SameLine(); + sameLineMaybe(); ImGui::Button(ICON_FA_VOLUME_UP "##SAmplify"); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Amplify"); @@ -883,28 +883,28 @@ void FurnaceGUI::drawSampleEdit() { } ImGui::EndPopup(); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_ARROWS_V "##SNormalize")) { doAction(GUI_ACTION_SAMPLE_NORMALIZE); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Normalize"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_ARROW_UP "##SFadeIn")) { doAction(GUI_ACTION_SAMPLE_FADE_IN); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Fade in"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_ARROW_DOWN "##SFadeOut")) { doAction(GUI_ACTION_SAMPLE_FADE_OUT); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Fade out"); } - ImGui::SameLine(); + sameLineMaybe(); ImGui::Button(ICON_FA_ADJUST "##SInsertSilence"); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Insert silence"); @@ -935,21 +935,21 @@ void FurnaceGUI::drawSampleEdit() { } ImGui::EndPopup(); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_ERASER "##SSilence")) { doAction(GUI_ACTION_SAMPLE_SILENCE); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Apply silence"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_TIMES "##SDelete")) { doAction(GUI_ACTION_SAMPLE_DELETE); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Delete"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_CROP "##STrim")) { doAction(GUI_ACTION_SAMPLE_TRIM); } @@ -958,28 +958,28 @@ void FurnaceGUI::drawSampleEdit() { } ImGui::SameLine(); ImGui::Dummy(ImVec2(4.0*dpiScale,dpiScale)); - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_BACKWARD "##SReverse")) { doAction(GUI_ACTION_SAMPLE_REVERSE); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Reverse"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_SORT_AMOUNT_ASC "##SInvert")) { doAction(GUI_ACTION_SAMPLE_INVERT); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Invert"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_LEVEL_DOWN "##SSign")) { doAction(GUI_ACTION_SAMPLE_SIGN); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Signed/unsigned exchange"); } - ImGui::SameLine(); + sameLineMaybe(); ImGui::Button(ICON_FA_INDUSTRY "##SFilter"); if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Apply filter"); @@ -1095,21 +1095,21 @@ void FurnaceGUI::drawSampleEdit() { ImGui::EndDisabled(); ImGui::SameLine(); ImGui::Dummy(ImVec2(4.0*dpiScale,dpiScale)); - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_PLAY "##PreviewSample")) { e->previewSample(curSample); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Preview sample"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_STOP "##StopSample")) { e->stopSamplePreview(); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip("Stop sample preview"); } - ImGui::SameLine(); + sameLineMaybe(); if (ImGui::Button(ICON_FA_UPLOAD "##MakeIns")) { doAction(GUI_ACTION_SAMPLE_MAKE_INS); } @@ -1117,7 +1117,7 @@ void FurnaceGUI::drawSampleEdit() { ImGui::SetTooltip("Create instrument from sample"); } - ImGui::SameLine(); + sameLineMaybe(ImGui::CalcTextSize("Zoom").x+150.0f*dpiScale+ImGui::CalcTextSize("100%").x); double zoomPercent=100.0/sampleZoom; bool checkZoomLimit=false; ImGui::Text("Zoom"); From a69b02f525af6aa7fd1c982f08413634923fcb6d Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 30 Jun 2023 17:31:23 -0500 Subject: [PATCH 158/183] GUI: add patch number to OPLL patches --- src/gui/insEdit.cpp | 120 ++++++++++++++++++++++---------------------- 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/src/gui/insEdit.cpp b/src/gui/insEdit.cpp index ca254d2c..f0de1c61 100644 --- a/src/gui/insEdit.cpp +++ b/src/gui/insEdit.cpp @@ -59,79 +59,79 @@ const char* opllVariants[4]={ const char* opllInsNames[4][17]={ /* YM2413 */ { "User", - "Violin", - "Guitar", - "Piano", - "Flute", - "Clarinet", - "Oboe", - "Trumpet", - "Organ", - "Horn", - "Synth", - "Harpsichord", - "Vibraphone", - "Synth Bass", - "Acoustic Bass", - "Electric Guitar", + "1. Violin", + "2. Guitar", + "3. Piano", + "4. Flute", + "5. Clarinet", + "6. Oboe", + "7. Trumpet", + "8. Organ", + "9. Horn", + "10. Synth", + "11. Harpsichord", + "12. Vibraphone", + "13. Synth Bass", + "14. Acoustic Bass", + "15. Electric Guitar", "Drums" }, /* YMF281 */ { "User", - "Electric String", - "Bow wow", - "Electric Guitar", - "Organ", - "Clarinet", - "Saxophone", - "Trumpet", - "Street Organ", - "Synth Brass", - "Electric Piano", - "Bass", - "Vibraphone", - "Chime", - "Tom Tom II", - "Noise", + "1. Electric String", + "2. Bow wow", + "3. Electric Guitar", + "4. Organ", + "5. Clarinet", + "6. Saxophone", + "7. Trumpet", + "8. Street Organ", + "9. Synth Brass", + "10. Electric Piano", + "11. Bass", + "12. Vibraphone", + "13. Chime", + "14. Tom Tom II", + "15. Noise", "Drums" }, /* YM2423 */ { "User", - "Strings", - "Guitar", - "Electric Guitar", - "Electric Piano", - "Flute", - "Marimba", - "Trumpet", - "Harmonica", - "Tuba", - "Synth Brass", - "Short Saw", - "Vibraphone", - "Electric Guitar 2", - "Synth Bass", - "Sitar", + "1. Strings", + "2. Guitar", + "3. Electric Guitar", + "4. Electric Piano", + "5. Flute", + "6. Marimba", + "7. Trumpet", + "8. Harmonica", + "9. Tuba", + "10. Synth Brass", + "11. Short Saw", + "12. Vibraphone", + "13. Electric Guitar 2", + "14. Synth Bass", + "15. Sitar", "Drums" }, // stolen from FamiTracker /* VRC7 */ { "User", - "Bell", - "Guitar", - "Piano", - "Flute", - "Clarinet", - "Rattling Bell", - "Trumpet", - "Reed Organ", - "Soft Bell", - "Xylophone", - "Vibraphone", - "Brass", - "Bass Guitar", - "Synth", - "Chorus", + "1. Bell", + "2. Guitar", + "3. Piano", + "4. Flute", + "5. Clarinet", + "6. Rattling Bell", + "7. Trumpet", + "8. Reed Organ", + "9. Soft Bell", + "10. Xylophone", + "11. Vibraphone", + "12. Brass", + "13. Bass Guitar", + "14. Synth", + "15. Chorus", "Drums" } }; From 0d43a1a572421f8b55b92e593dabf6540735d189 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 30 Jun 2023 20:25:12 -0700 Subject: [PATCH 159/183] More little stuff. --- doc/1-intro/concepts.md | 2 +- doc/2-interface/song-info.md | 2 +- doc/4-instrument/README.md | 2 +- doc/4-instrument/snes.md | 10 +++++----- doc/7-systems/nes.md | 2 +- doc/7-systems/pcspkr.md | 2 +- doc/7-systems/pet.md | 2 +- doc/7-systems/ricoh.md | 2 +- doc/7-systems/x1-010.md | 2 +- 9 files changed, 13 insertions(+), 13 deletions(-) diff --git a/doc/1-intro/concepts.md b/doc/1-intro/concepts.md index cee6e9ad..130e2ae8 100644 --- a/doc/1-intro/concepts.md +++ b/doc/1-intro/concepts.md @@ -32,5 +32,5 @@ The **order list** is a smaller spreadsheet showing the overall song structure. Different chips have different capabilities. Even within the same chip, each channel may have its own ways of making sound. - Some channels use one or more waveform **generators** (sine, square, noise...) to build up a sound. - Of special note are **[FM (frequency modulation)](../4-instrument/fm.md)** channels, which use a number of generators called **operators** that can interact to make very complex sounds. -- Some channels use **[samples](../6-sample/README.md)** – recordings of sounds, often with defined loop points to allow a note to sustain. +- Some channels use **[samples](../6-sample/README.md)** - recordings of sounds, often with defined loop points to allow a note to sustain. - Some channels use **[wavetables](../5-wave/README.md)**, which are like very short samples of fixed length that automatically loop. \ No newline at end of file diff --git a/doc/2-interface/song-info.md b/doc/2-interface/song-info.md index 5ba682a2..7919e7be 100644 --- a/doc/2-interface/song-info.md +++ b/doc/2-interface/song-info.md @@ -11,7 +11,7 @@ All of this metadata will be included in a VGM export. This isn't the case for a # subsongs -This window allows one to create **subsongs** – multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. +This window allows one to create **subsongs** - multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. - The drop-down box selects the current subsong. - The **`+`** button adds a new subsong. diff --git a/doc/4-instrument/README.md b/doc/4-instrument/README.md index 2f424c53..4afd2a07 100644 --- a/doc/4-instrument/README.md +++ b/doc/4-instrument/README.md @@ -94,6 +94,6 @@ Finally, the sequence of values can be directly edited in the text box at the bo ![LFO macro editor](macro-LFO.png) - **Bottom** and **Top** determine the range of values generated by the macro. (Bottom can be larger than Top to invert the waveform!) -- **Speed** is how quickly the values change – the frequency of the oscillator. +- **Speed** is how quickly the values change - the frequency of the oscillator. - **Phase** is which part of the waveform the macro will start at, measured in 1/1024 increments. - **Shape** is the waveform used. Triangle is the default, and Saw and Square are exactly as they say. diff --git a/doc/4-instrument/snes.md b/doc/4-instrument/snes.md index bdd4812c..0887e9a6 100644 --- a/doc/4-instrument/snes.md +++ b/doc/4-instrument/snes.md @@ -39,8 +39,8 @@ if envelope is off, select gain mode as described below. - echo: enables echo. - noise: enables noise generator. - **Gain**: sets mode and value of gain. - - 0 – 127: direct gain from 0 to 127 - - 128 – 159: linear gain from -0 to -31 - - 160 – 191: exponential gain from -0 to -31 - - 192 – 223: linear gain from +0 to +31 - - 224 – 255: exponential gain from +0 to +31 + - 0 - 127: direct gain from 0 to 127 + - 128 - 159: linear gain from -0 to -31 + - 160 - 191: exponential gain from -0 to -31 + - 192 - 223: linear gain from +0 to +31 + - 224 - 255: exponential gain from +0 to +31 diff --git a/doc/7-systems/nes.md b/doc/7-systems/nes.md index 40963c1c..4837df48 100644 --- a/doc/7-systems/nes.md +++ b/doc/7-systems/nes.md @@ -13,7 +13,7 @@ also known as Famicom. it is a five-channel sound generator: first two channels - `0`: 12.5% - `1`: 25% - `2`: 50% - - `3`: 75% (inverted) + - `3`: 75% - may be `0` or `1` for the noise channel: - `0`: long (15-bit LFSR, 32767-step) - `1`: short (9-bit LFSR, 93-step) diff --git a/doc/7-systems/pcspkr.md b/doc/7-systems/pcspkr.md index 42330b06..a6a55ba6 100644 --- a/doc/7-systems/pcspkr.md +++ b/doc/7-systems/pcspkr.md @@ -1,6 +1,6 @@ # PC Speaker -40 years of one square beep – and still going! Single channel, no volume control... +40 years of one square beep - and still going! Single channel, no volume control... # real output diff --git a/doc/7-systems/pet.md b/doc/7-systems/pet.md index f3e51bca..9b7e3b5b 100644 --- a/doc/7-systems/pet.md +++ b/doc/7-systems/pet.md @@ -2,7 +2,7 @@ a computer from 1977 which was leader on US schools back then. subsequently the Apple II took its throne. -maybe no better than a computer terminal, but somebody discovered a way to update the screen at turbo rate – and eventually its sound "chip" (it was nothing more than an 8-bit shift register) was abused as well. +maybe no better than a computer terminal, but somebody discovered a way to update the screen at turbo rate - and eventually its sound "chip" (it was nothing more than an 8-bit shift register) was abused as well. some of these didn't even have sound... diff --git a/doc/7-systems/ricoh.md b/doc/7-systems/ricoh.md index e84a5db3..51832602 100644 --- a/doc/7-systems/ricoh.md +++ b/doc/7-systems/ricoh.md @@ -1,6 +1,6 @@ # Ricoh RF5C68 -YM2612's sidekick – poor man's SNES DSP. 8-channel PCM sample-based synthesizer used in Sega CD, Fujitsu FM Towns and some of Sega's arcade machines. supports up to 64KB of external PCM data. +YM2612's sidekick - poor man's SNES DSP. 8-channel PCM sample-based synthesizer used in Sega CD, Fujitsu FM Towns and some of Sega's arcade machines. supports up to 64KB of external PCM data. # effects diff --git a/doc/7-systems/x1-010.md b/doc/7-systems/x1-010.md index dc46f465..5f110aba 100644 --- a/doc/7-systems/x1-010.md +++ b/doc/7-systems/x1-010.md @@ -8,7 +8,7 @@ Allumer rebadged it for their own arcade hardware. it has 16 channels, which can all be switched between PCM sample or wavetable playback mode. wavetable playback needs to paired with envelope, similar to AY PSG, but shapes are stored in RAM and as such are user-definable. -in Furnace, this chip can be configured for original arcade mono output or stereo output – it simulates early 'incorrect' emulation on some mono hardware, but it is also based on the assumption that each channel is connected to each output. +in Furnace, this chip can be configured for original arcade mono output or stereo output - it simulates early 'incorrect' emulation on some mono hardware, but it is also based on the assumption that each channel is connected to each output. # waveform types From a9d4bf1fdcb09abfba0786d20ef9e619ae54bd98 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 30 Jun 2023 20:41:16 -0700 Subject: [PATCH 160/183] Accurate number! Well, accurate enough. --- doc/7-systems/nes.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/7-systems/nes.md b/doc/7-systems/nes.md index 4837df48..c3ccb706 100644 --- a/doc/7-systems/nes.md +++ b/doc/7-systems/nes.md @@ -6,7 +6,8 @@ also known as Famicom. it is a five-channel sound generator: first two channels # effects -- `11xx`: **write to delta modulation counter.** range is `00` to `7F`. this may be used to attenuate the triangle and noise channels down to about half normal volume. +- `11xx`: **write to delta modulation counter.** range is `00` to `7F`. + - this may be used to attenuate the triangle and noise channels; at `7F`, they will be at about 57% volume. - will not work if a sample is playing. - `12xx`: **set duty cycle or noise mode of channel.** - may be `0` to `3` for the pulse channels: From e5a5bb01548cffa148403ef475a95f1334a77a7a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 30 Jun 2023 22:44:08 -0500 Subject: [PATCH 161/183] GUI: add setting to see mem usage in bytes --- src/gui/gui.h | 2 ++ src/gui/settings.cpp | 13 +++++++++++++ src/gui/stats.cpp | 7 ++++++- 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/gui/gui.h b/src/gui/gui.h index 8bce5fa4..8a3aab68 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1509,6 +1509,7 @@ class FurnaceGUI { int insertBehavior; int pullDeleteRow; int newSongBehavior; + int memUsageUnit; unsigned int maxUndoSteps; String mainFontPath; String patFontPath; @@ -1661,6 +1662,7 @@ class FurnaceGUI { insertBehavior(1), pullDeleteRow(1), newSongBehavior(0), + memUsageUnit(1), maxUndoSteps(100), mainFontPath(""), patFontPath(""), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 3da60316..882bc807 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -1602,6 +1602,16 @@ void FurnaceGUI::drawSettings() { ImGui::Separator(); + ImGui::Text("Chip memory usage unit:"); + if (ImGui::RadioButton("Bytes##MUU0",settings.memUsageUnit==0)) { + settings.memUsageUnit=0; + } + if (ImGui::RadioButton("Kilobytes##MUU1",settings.memUsageUnit==1)) { + settings.memUsageUnit=1; + } + + ImGui::Separator(); + ImGui::Text("Namco 163 chip name"); ImGui::SameLine(); ImGui::InputTextWithHint("##C163Name",DIV_C163_DEFAULT_NAME,&settings.c163Name); @@ -2766,6 +2776,7 @@ void FurnaceGUI::syncSettings() { settings.insertBehavior=e->getConfInt("insertBehavior",1); settings.pullDeleteRow=e->getConfInt("pullDeleteRow",1); settings.newSongBehavior=e->getConfInt("newSongBehavior",0); + settings.memUsageUnit=e->getConfInt("memUsageUnit",1); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -2892,6 +2903,7 @@ void FurnaceGUI::syncSettings() { clampSetting(settings.insertBehavior,0,1); clampSetting(settings.pullDeleteRow,0,1); clampSetting(settings.newSongBehavior,0,1); + clampSetting(settings.memUsageUnit,0,1); if (settings.exportLoops<0.0) settings.exportLoops=0.0; if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0; @@ -3114,6 +3126,7 @@ void FurnaceGUI::commitSettings() { e->setConf("insertBehavior",settings.insertBehavior); e->setConf("pullDeleteRow",settings.pullDeleteRow); e->setConf("newSongBehavior",settings.newSongBehavior); + e->setConf("memUsageUnit",settings.memUsageUnit); // colors for (int i=0; igetSampleMemCapacity(j)>0; j++) { size_t capacity=dispatch->getSampleMemCapacity(j); size_t usage=dispatch->getSampleMemUsage(j); - String usageStr=fmt::sprintf("%d/%dKB",usage/1024,capacity/1024); + String usageStr; + if (settings.memUsageUnit==1) { + usageStr=fmt::sprintf("%d/%dKB",usage/1024,capacity/1024); + } else { + usageStr=fmt::sprintf("%d/%d",usage,capacity); + } ImGui::Text("%s [%d]", e->getSystemName(e->song.system[i]), j); ImGui::SameLine(); ImGui::ProgressBar(((float)usage)/((float)capacity),ImVec2(-FLT_MIN,0),usageStr.c_str()); From f64aeda9ec013626f03a9fd067e9d726f4203699 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 30 Jun 2023 21:23:55 -0700 Subject: [PATCH 162/183] Abbreviating the abbreviations. Shortening to `msec` and `sec` to `ms` and `s` respectively. --- doc/7-systems/snes.md | 128 +++++++++++++++++++++--------------------- 1 file changed, 64 insertions(+), 64 deletions(-) diff --git a/doc/7-systems/snes.md b/doc/7-systems/snes.md index 9595511b..9284c5a0 100644 --- a/doc/7-systems/snes.md +++ b/doc/7-systems/snes.md @@ -73,38 +73,38 @@ Furnace also allows the SNES to use wavetables (and the wavetable synthesizer) i | attack | 0→1 time | decay | 1→S time | sustain | ratio | release | S→0 time | -----: | -------: | ----: | -------: | ------: | :---: | ------: | -------: -| `00` | 4.1 sec | `00` | 1.2 sec | `00` | 1/8 | `00` | ∞ -| `01` | 2.5 sec | `01` | 740 msec | `01` | 2/8 | `01` | 38 sec -| `02` | 1.5 sec | `02` | 440 msec | `02` | 3/8 | `02` | 28 sec -| `03` | 1.0 sec | `03` | 290 msec | `03` | 4/8 | `03` | 24 sec -| `04` | 640 msec | `04` | 180 msec | `04` | 5/8 | `04` | 19 sec -| `05` | 380 msec | `05` | 110 msec | `05` | 6/8 | `05` | 14 sec -| `06` | 260 msec | `06` | 74 msec | `06` | 7/8 | `06` | 12 sec -| `07` | 160 msec | `07` | 37 msec | `07` | 1 | `07` | 9.4 sec -| `08` | 96 msec | | | | | `08` | 7.1 sec -| `09` | 64 msec | | | | | `09` | 5.9 sec -| `0A` | 40 msec | | | | | `0A` | 4.7 sec -| `0B` | 24 msec | | | | | `0B` | 3.5 sec -| `0C` | 16 msec | | | | | `0C` | 2.9 sec -| `0D` | 10 msec | | | | | `0D` | 2.4 sec -| `0E` | 6 msec | | | | | `0E` | 1.8 sec -| `0F` | 0 msec | | | | | `0F` | 1.5 sec -| | | | | | | `10` | 1.2 sec -| | | | | | | `11` | 880 msec -| | | | | | | `12` | 740 msec -| | | | | | | `13` | 590 msec -| | | | | | | `14` | 440 msec -| | | | | | | `15` | 370 msec -| | | | | | | `16` | 290 msec -| | | | | | | `17` | 220 msec -| | | | | | | `18` | 180 msec -| | | | | | | `19` | 150 msec -| | | | | | | `1A` | 110 msec -| | | | | | | `1B` | 92 msec -| | | | | | | `1C` | 74 msec -| | | | | | | `1D` | 55 msec -| | | | | | | `1E` | 37 msec -| | | | | | | `1F` | 18 msec +| `00` | 4.1 s | `00` | 1.2 s | `00` | 1/8 | `00` | ∞ +| `01` | 2.5 s | `01` | 740 ms | `01` | 2/8 | `01` | 38 s +| `02` | 1.5 s | `02` | 440 ms | `02` | 3/8 | `02` | 28 s +| `03` | 1.0 s | `03` | 290 ms | `03` | 4/8 | `03` | 24 s +| `04` | 640 ms | `04` | 180 ms | `04` | 5/8 | `04` | 19 s +| `05` | 380 ms | `05` | 110 ms | `05` | 6/8 | `05` | 14 s +| `06` | 260 ms | `06` | 74 ms | `06` | 7/8 | `06` | 12 s +| `07` | 160 ms | `07` | 37 ms | `07` | 1 | `07` | 9.4 s +| `08` | 96 ms | | | | | `08` | 7.1 s +| `09` | 64 ms | | | | | `09` | 5.9 s +| `0A` | 40 ms | | | | | `0A` | 4.7 s +| `0B` | 24 ms | | | | | `0B` | 3.5 s +| `0C` | 16 ms | | | | | `0C` | 2.9 s +| `0D` | 10 ms | | | | | `0D` | 2.4 s +| `0E` | 6 ms | | | | | `0E` | 1.8 s +| `0F` | 0 ms | | | | | `0F` | 1.5 s +| | | | | | | `10` | 1.2 s +| | | | | | | `11` | 880 ms +| | | | | | | `12` | 740 ms +| | | | | | | `13` | 590 ms +| | | | | | | `14` | 440 ms +| | | | | | | `15` | 370 ms +| | | | | | | `16` | 290 ms +| | | | | | | `17` | 220 ms +| | | | | | | `18` | 180 ms +| | | | | | | `19` | 150 ms +| | | | | | | `1A` | 110 ms +| | | | | | | `1B` | 92 ms +| | | | | | | `1C` | 74 ms +| | | | | | | `1D` | 55 ms +| | | | | | | `1E` | 37 ms +| | | | | | | `1F` | 18 ms reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-voice-register:-adsr-1097) @@ -113,37 +113,37 @@ reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700 value | linear inc. | bent line inc. | linear dec. | exponent dec. ----: | ----------: | -------------: | ----------: | ------------: `00` | ∞ | ∞ | ∞ | ∞ - `01` | 4.1 sec | 7.2 sec | 4.1 sec | 38 sec - `02` | 3.1 sec | 5.4 sec | 3.1 sec | 28 sec - `03` | 2.6 sec | 4.6 sec | 2.6 sec | 24 sec - `04` | 2.0 sec | 3.5 sec | 2.0 sec | 19 sec - `05` | 1.5 sec | 2.6 sec | 1.5 sec | 14 sec - `06` | 1.3 sec | 2.3 sec | 1.3 sec | 12 sec - `07` | 1.0 sec | 1.8 sec | 1.0 sec | 9.4 sec - `08` | 770 msec | 1.3 sec | 770 msec | 7.1 sec - `09` | 640 msec | 1.1 sec | 640 msec | 5.9 sec - `0A` | 510 msec | 900 msec | 510 msec | 4.7 sec - `0B` | 380 msec | 670 msec | 380 msec | 3.5 sec - `0C` | 320 msec | 560 msec | 320 msec | 2.9 sec - `0D` | 260 msec | 450 msec | 260 msec | 2.4 sec - `0E` | 190 msec | 340 msec | 190 msec | 1.8 sec - `0F` | 160 msec | 280 msec | 160 msec | 1.5 sec - `10` | 130 msec | 220 msec | 130 msec | 1.2 sec - `11` | 96 msec | 170 msec | 96 msec | 880 msec - `12` | 80 msec | 140 msec | 80 msec | 740 msec - `13` | 64 msec | 110 msec | 64 msec | 590 msec - `14` | 48 msec | 84 msec | 48 msec | 440 msec - `15` | 40 msec | 70 msec | 40 msec | 370 msec - `16` | 32 msec | 56 msec | 32 msec | 290 msec - `17` | 24 msec | 42 msec | 24 msec | 220 msec - `18` | 20 msec | 35 msec | 20 msec | 180 msec - `19` | 16 msec | 28 msec | 16 msec | 150 msec - `1A` | 12 msec | 21 msec | 12 msec | 110 msec - `1B` | 10 msec | 18 msec | 10 msec | 92 msec - `1C` | 8 msec | 14 msec | 8 msec | 74 msec - `1D` | 6 msec | 11 msec | 6 msec | 55 msec - `1E` | 4 msec | 7 msec | 4 msec | 37 msec - `1F` | 2 msec | 3.5 msec | 2 msec | 18 msec + `01` | 4.1 s | 7.2 s | 4.1 s | 38 s + `02` | 3.1 s | 5.4 s | 3.1 s | 28 s + `03` | 2.6 s | 4.6 s | 2.6 s | 24 s + `04` | 2.0 s | 3.5 s | 2.0 s | 19 s + `05` | 1.5 s | 2.6 s | 1.5 s | 14 s + `06` | 1.3 s | 2.3 s | 1.3 s | 12 s + `07` | 1.0 s | 1.8 s | 1.0 s | 9.4 s + `08` | 770 ms | 1.3 s | 770 ms | 7.1 s + `09` | 640 ms | 1.1 s | 640 ms | 5.9 s + `0A` | 510 ms | 900 ms | 510 ms | 4.7 s + `0B` | 380 ms | 670 ms | 380 ms | 3.5 s + `0C` | 320 ms | 560 ms | 320 ms | 2.9 s + `0D` | 260 ms | 450 ms | 260 ms | 2.4 s + `0E` | 190 ms | 340 ms | 190 ms | 1.8 s + `0F` | 160 ms | 280 ms | 160 ms | 1.5 s + `10` | 130 ms | 220 ms | 130 ms | 1.2 s + `11` | 96 ms | 170 ms | 96 ms | 880 ms + `12` | 80 ms | 140 ms | 80 ms | 740 ms + `13` | 64 ms | 110 ms | 64 ms | 590 ms + `14` | 48 ms | 84 ms | 48 ms | 440 ms + `15` | 40 ms | 70 ms | 40 ms | 370 ms + `16` | 32 ms | 56 ms | 32 ms | 290 ms + `17` | 24 ms | 42 ms | 24 ms | 220 ms + `18` | 20 ms | 35 ms | 20 ms | 180 ms + `19` | 16 ms | 28 ms | 16 ms | 150 ms + `1A` | 12 ms | 21 ms | 12 ms | 110 ms + `1B` | 10 ms | 18 ms | 10 ms | 92 ms + `1C` | 8 ms | 14 ms | 8 ms | 74 ms + `1D` | 6 ms | 11 ms | 6 ms | 55 ms + `1E` | 4 ms | 7 ms | 4 ms | 37 ms + `1F` | 2 ms | 3.5 ms | 2 ms | 18 ms reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-voice-register:-gain-1156) @@ -174,4 +174,4 @@ reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700 # resources -- [SNES-format BRR samples](https://www.smwcentral.net/?p=section&s=brrsamples) at SMW Central +- [SNES-format BRR samples](https://www.smwcentral.net/?p=stion&s=brrsamples) at SMW Central From 51facaff8ede95ff2fd8c52811de01d4dd373bd5 Mon Sep 17 00:00:00 2001 From: Electric Keet Date: Fri, 30 Jun 2023 21:27:46 -0700 Subject: [PATCH 163/183] Trying again, no spaces this time. --- doc/7-systems/snes.md | 126 +++++++++++++++++++++--------------------- 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/doc/7-systems/snes.md b/doc/7-systems/snes.md index 9284c5a0..9888291c 100644 --- a/doc/7-systems/snes.md +++ b/doc/7-systems/snes.md @@ -73,38 +73,38 @@ Furnace also allows the SNES to use wavetables (and the wavetable synthesizer) i | attack | 0→1 time | decay | 1→S time | sustain | ratio | release | S→0 time | -----: | -------: | ----: | -------: | ------: | :---: | ------: | -------: -| `00` | 4.1 s | `00` | 1.2 s | `00` | 1/8 | `00` | ∞ -| `01` | 2.5 s | `01` | 740 ms | `01` | 2/8 | `01` | 38 s -| `02` | 1.5 s | `02` | 440 ms | `02` | 3/8 | `02` | 28 s -| `03` | 1.0 s | `03` | 290 ms | `03` | 4/8 | `03` | 24 s -| `04` | 640 ms | `04` | 180 ms | `04` | 5/8 | `04` | 19 s -| `05` | 380 ms | `05` | 110 ms | `05` | 6/8 | `05` | 14 s -| `06` | 260 ms | `06` | 74 ms | `06` | 7/8 | `06` | 12 s -| `07` | 160 ms | `07` | 37 ms | `07` | 1 | `07` | 9.4 s -| `08` | 96 ms | | | | | `08` | 7.1 s -| `09` | 64 ms | | | | | `09` | 5.9 s -| `0A` | 40 ms | | | | | `0A` | 4.7 s -| `0B` | 24 ms | | | | | `0B` | 3.5 s -| `0C` | 16 ms | | | | | `0C` | 2.9 s -| `0D` | 10 ms | | | | | `0D` | 2.4 s -| `0E` | 6 ms | | | | | `0E` | 1.8 s -| `0F` | 0 ms | | | | | `0F` | 1.5 s -| | | | | | | `10` | 1.2 s -| | | | | | | `11` | 880 ms -| | | | | | | `12` | 740 ms -| | | | | | | `13` | 590 ms -| | | | | | | `14` | 440 ms -| | | | | | | `15` | 370 ms -| | | | | | | `16` | 290 ms -| | | | | | | `17` | 220 ms -| | | | | | | `18` | 180 ms -| | | | | | | `19` | 150 ms -| | | | | | | `1A` | 110 ms -| | | | | | | `1B` | 92 ms -| | | | | | | `1C` | 74 ms -| | | | | | | `1D` | 55 ms -| | | | | | | `1E` | 37 ms -| | | | | | | `1F` | 18 ms +| `00` | 4.1s | `00` | 1.2s | `00` | 1/8 | `00` | ∞ +| `01` | 2.5s | `01` | 740ms | `01` | 2/8 | `01` | 38s +| `02` | 1.5s | `02` | 440ms | `02` | 3/8 | `02` | 28s +| `03` | 1.0s | `03` | 290ms | `03` | 4/8 | `03` | 24s +| `04` | 640ms | `04` | 180ms | `04` | 5/8 | `04` | 19s +| `05` | 380ms | `05` | 110ms | `05` | 6/8 | `05` | 14s +| `06` | 260ms | `06` | 74ms | `06` | 7/8 | `06` | 12s +| `07` | 160ms | `07` | 37ms | `07` | 1 | `07` | 9.4s +| `08` | 96ms | | | | | `08` | 7.1s +| `09` | 64ms | | | | | `09` | 5.9s +| `0A` | 40ms | | | | | `0A` | 4.7s +| `0B` | 24ms | | | | | `0B` | 3.5s +| `0C` | 16ms | | | | | `0C` | 2.9s +| `0D` | 10ms | | | | | `0D` | 2.4s +| `0E` | 6ms | | | | | `0E` | 1.8s +| `0F` | 0ms | | | | | `0F` | 1.5s +| | | | | | | `10` | 1.2s +| | | | | | | `11` | 880ms +| | | | | | | `12` | 740ms +| | | | | | | `13` | 590ms +| | | | | | | `14` | 440ms +| | | | | | | `15` | 370ms +| | | | | | | `16` | 290ms +| | | | | | | `17` | 220ms +| | | | | | | `18` | 180ms +| | | | | | | `19` | 150ms +| | | | | | | `1A` | 110ms +| | | | | | | `1B` | 92ms +| | | | | | | `1C` | 74ms +| | | | | | | `1D` | 55ms +| | | | | | | `1E` | 37ms +| | | | | | | `1F` | 18ms reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-voice-register:-adsr-1097) @@ -113,37 +113,37 @@ reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700 value | linear inc. | bent line inc. | linear dec. | exponent dec. ----: | ----------: | -------------: | ----------: | ------------: `00` | ∞ | ∞ | ∞ | ∞ - `01` | 4.1 s | 7.2 s | 4.1 s | 38 s - `02` | 3.1 s | 5.4 s | 3.1 s | 28 s - `03` | 2.6 s | 4.6 s | 2.6 s | 24 s - `04` | 2.0 s | 3.5 s | 2.0 s | 19 s - `05` | 1.5 s | 2.6 s | 1.5 s | 14 s - `06` | 1.3 s | 2.3 s | 1.3 s | 12 s - `07` | 1.0 s | 1.8 s | 1.0 s | 9.4 s - `08` | 770 ms | 1.3 s | 770 ms | 7.1 s - `09` | 640 ms | 1.1 s | 640 ms | 5.9 s - `0A` | 510 ms | 900 ms | 510 ms | 4.7 s - `0B` | 380 ms | 670 ms | 380 ms | 3.5 s - `0C` | 320 ms | 560 ms | 320 ms | 2.9 s - `0D` | 260 ms | 450 ms | 260 ms | 2.4 s - `0E` | 190 ms | 340 ms | 190 ms | 1.8 s - `0F` | 160 ms | 280 ms | 160 ms | 1.5 s - `10` | 130 ms | 220 ms | 130 ms | 1.2 s - `11` | 96 ms | 170 ms | 96 ms | 880 ms - `12` | 80 ms | 140 ms | 80 ms | 740 ms - `13` | 64 ms | 110 ms | 64 ms | 590 ms - `14` | 48 ms | 84 ms | 48 ms | 440 ms - `15` | 40 ms | 70 ms | 40 ms | 370 ms - `16` | 32 ms | 56 ms | 32 ms | 290 ms - `17` | 24 ms | 42 ms | 24 ms | 220 ms - `18` | 20 ms | 35 ms | 20 ms | 180 ms - `19` | 16 ms | 28 ms | 16 ms | 150 ms - `1A` | 12 ms | 21 ms | 12 ms | 110 ms - `1B` | 10 ms | 18 ms | 10 ms | 92 ms - `1C` | 8 ms | 14 ms | 8 ms | 74 ms - `1D` | 6 ms | 11 ms | 6 ms | 55 ms - `1E` | 4 ms | 7 ms | 4 ms | 37 ms - `1F` | 2 ms | 3.5 ms | 2 ms | 18 ms + `01` | 4.1s | 7.2s | 4.1s | 38s + `02` | 3.1s | 5.4s | 3.1s | 28s + `03` | 2.6s | 4.6s | 2.6s | 24s + `04` | 2.0s | 3.5s | 2.0s | 19s + `05` | 1.5s | 2.6s | 1.5s | 14s + `06` | 1.3s | 2.3s | 1.3s | 12s + `07` | 1.0s | 1.8s | 1.0s | 9.4s + `08` | 770ms | 1.3s | 770ms | 7.1s + `09` | 640ms | 1.1s | 640ms | 5.9s + `0A` | 510ms | 900ms | 510ms | 4.7s + `0B` | 380ms | 670ms | 380ms | 3.5s + `0C` | 320ms | 560ms | 320ms | 2.9s + `0D` | 260ms | 450ms | 260ms | 2.4s + `0E` | 190ms | 340ms | 190ms | 1.8s + `0F` | 160ms | 280ms | 160ms | 1.5s + `10` | 130ms | 220ms | 130ms | 1.2s + `11` | 96ms | 170ms | 96ms | 880ms + `12` | 80ms | 140ms | 80ms | 740ms + `13` | 64ms | 110ms | 64ms | 590ms + `14` | 48ms | 84ms | 48ms | 440ms + `15` | 40ms | 70ms | 40ms | 370ms + `16` | 32ms | 56ms | 32ms | 290ms + `17` | 24ms | 42ms | 24ms | 220ms + `18` | 20ms | 35ms | 20ms | 180ms + `19` | 16ms | 28ms | 16ms | 150ms + `1A` | 12ms | 21ms | 12ms | 110ms + `1B` | 10ms | 18ms | 10ms | 92ms + `1C` | 8ms | 14ms | 8ms | 74ms + `1D` | 6ms | 11ms | 6ms | 55ms + `1E` | 4ms | 7ms | 4ms | 37ms + `1F` | 2ms | 3.5ms | 2ms | 18ms reference: [Super Famicom Development Wiki](https://wiki.superfamicom.org/spc700-reference#dsp-voice-register:-gain-1156) From 3f8430b0d6f0ad5f97f8b38294d7837bfa8ef9d7 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 30 Jun 2023 23:37:22 -0500 Subject: [PATCH 164/183] add ability to duplicate sub-songs --- src/engine/engine.cpp | 45 +++++++++++++++++++++++++++++++++++++++++++ src/engine/engine.h | 3 +++ src/gui/subSongs.cpp | 24 ++++++++++++++++++++++- 3 files changed, 71 insertions(+), 1 deletion(-) diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 5afc5407..1aa8188e 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -1678,6 +1678,51 @@ int DivEngine::addSubSong() { return song.subsong.size()-1; } +int DivEngine::duplicateSubSong(int index) { + if (song.subsong.size()>=127) return -1; + BUSY_BEGIN; + saveLock.lock(); + DivSubSong* theCopy=new DivSubSong; + DivSubSong* theOrig=song.subsong[index]; + + theCopy->name=theOrig->name; + theCopy->notes=theOrig->notes; + theCopy->hilightA=theOrig->hilightA; + theCopy->hilightB=theOrig->hilightB; + theCopy->timeBase=theOrig->timeBase; + theCopy->arpLen=theOrig->arpLen; + theCopy->speeds=theOrig->speeds; + theCopy->virtualTempoN=theOrig->virtualTempoN; + theCopy->virtualTempoD=theOrig->virtualTempoD; + theCopy->hz=theOrig->hz; + theCopy->patLen=theOrig->patLen; + theCopy->ordersLen=theOrig->ordersLen; + theCopy->orders=theOrig->orders; + + memcpy(theCopy->chanShow,theOrig->chanShow,DIV_MAX_CHANS*sizeof(bool)); + memcpy(theCopy->chanCollapse,theOrig->chanCollapse,DIV_MAX_CHANS); + + for (int i=0; ichanName[i]=theOrig->chanName[i]; + theCopy->chanShortName[i]=theOrig->chanShortName[i]; + + theCopy->pat[i].effectCols=theOrig->pat[i].effectCols; + + for (int j=0; jpat[i].data[j]==NULL) continue; + DivPattern* origPat=theOrig->pat[i].getPattern(j,false); + DivPattern* copyPat=theCopy->pat[i].getPattern(j,true); + origPat->copyOn(copyPat); + } + } + + song.subsong.push_back(theCopy); + + saveLock.unlock(); + BUSY_END; + return song.subsong.size()-1; +} + bool DivEngine::removeSubSong(int index) { if (song.subsong.size()<=1) return false; stop(); diff --git a/src/engine/engine.h b/src/engine/engine.h index 85e8f641..21e15b56 100644 --- a/src/engine/engine.h +++ b/src/engine/engine.h @@ -1052,6 +1052,9 @@ class DivEngine { // add subsong int addSubSong(); + // duplicate subsong + int duplicateSubSong(int index); + // remove subsong bool removeSubSong(int index); diff --git a/src/gui/subSongs.cpp b/src/gui/subSongs.cpp index 86fb2cb3..5d34c23f 100644 --- a/src/gui/subSongs.cpp +++ b/src/gui/subSongs.cpp @@ -17,7 +17,7 @@ void FurnaceGUI::drawSubSongs(bool asChild) { bool began=asChild?ImGui::BeginChild("Subsongs"):ImGui::Begin("Subsongs",&subSongsOpen,globalWinFlags); if (began) { char id[1024]; - ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::GetFrameHeightWithSpacing()*2.0f-ImGui::GetStyle().ItemSpacing.x); + ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::GetFrameHeightWithSpacing()*3.0f-ImGui::GetStyle().ItemSpacing.x*2.0f); if (e->curSubSong->name.empty()) { snprintf(id,1023,"%d. ",(int)e->getCurrentSubSong()+1); } else { @@ -92,6 +92,28 @@ void FurnaceGUI::drawSubSongs(bool asChild) { ImGui::SetTooltip("Add"); } ImGui::SameLine(); + if (ImGui::Button(ICON_FA_FILES_O "##SubSongDuplicate")) { + if (!e->duplicateSubSong(e->getCurrentSubSong())) { + showError("too many subsongs!"); + } else { + e->changeSongP(e->song.subsong.size()-1); + updateScroll(0); + oldOrder=0; + oldOrder1=0; + oldRow=0; + cursor.xCoarse=0; + cursor.xFine=0; + cursor.y=0; + selStart=cursor; + selEnd=cursor; + curOrder=0; + MARK_MODIFIED; + } + } + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("Duplicate"); + } + ImGui::SameLine(); pushDestColor(); if (ImGui::Button(ICON_FA_MINUS "##SubSongDel")) { if (e->song.subsong.size()<=1) { From 8a23d39cdd217f14e21f2f5251caaec0d923dc85 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 1 Jul 2023 17:07:45 -0500 Subject: [PATCH 165/183] several new demo songs Some Creatures by TheDuccinator Shovel Knight Title by Bernie Fly to the Leaden Sky by SuperJet Spade --- demos/arcade/Some_Creatures_SegaPCM.fur | Bin 0 -> 374081 bytes demos/genesis/Shovel_Knight_Title.fur | Bin 0 -> 119820 bytes demos/opl/Fly_to_the_Leaden_Sky_OPL3.fur | Bin 0 -> 4257 bytes src/gui/about.cpp | 1 + 4 files changed, 1 insertion(+) create mode 100644 demos/arcade/Some_Creatures_SegaPCM.fur create mode 100644 demos/genesis/Shovel_Knight_Title.fur create mode 100644 demos/opl/Fly_to_the_Leaden_Sky_OPL3.fur diff --git a/demos/arcade/Some_Creatures_SegaPCM.fur b/demos/arcade/Some_Creatures_SegaPCM.fur new file mode 100644 index 0000000000000000000000000000000000000000..5578b877562f7aa24003ee24c713d67a9e3a3e54 GIT binary patch literal 374081 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%0D#O=h=~@8=zrs5Rfz*89u;O$Yln z4YX_?Ms>&cwAEC8o)f60^Hqf1}iv_jrtta2jySTCD#JZTf zp@A<|cb-Bhko`Mzt*5IlSN2_7&zV}FDqKgNJ>K>z;6Z+qjbo-^)BjeTiw1=^z#>Ub3S+Pd#j7=w7cF$C7G!2$t zd}-gI?CwC(iKWzu>`%~hH+MI+d3uW19ICvTVIi`PKilEGUf9z_dBcTyXB};ipFExJ zk~cbr1oF969fKP$weHL!BwvMC(NXty?@H&*+}8TVzpvx|!W>8X8f zh0|3{C+r2EEZy5!GOq4eY#8i<}+1 z+6w%LC~tLSz31s)#gordwbP%15?tf43c2h68eoZ`@?sDuV@hTqg z9)A1Gcwf_{?#unHw>@>)?zeKEE&IZKG?4$!$639V_4%6{SDY$7>g=fN+PCGKX5WqD z`_gJg%7+`fD_3+AEgqELR$g8BQ%}vm)e5_h7x_KQo@>jmwr@O?Rv#!FJV18m z`0gW}V$<2CkuwL+_8;x+1h3nAaRZgHo7(?sdr@v_QAQD4<8-wCs)lRI7Y_fF<#nYS+RMzD9d6W59Qgb*UKkOM3^$+u4B4`ZrpgDKHk>V* zUeW1lsaqy2s`1vD*LFAN1r~2;U)AfY@7guEyQL+4;D4>-17@%Ivz7*-f7o;S&_`MK zEMUY1ch5(To|fVDE$+G##LaC-ayOlRw!u-D{l_$CpQE>NZw^(?c(&JH$>SS29&M

    |C{{}`M%PY%);7@t!=BXc{+|C=-fNf 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

    KUGO0Jd)sz|uniznC}< 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

    htZwN;=Jk>P+NBDmPm2mC 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

    $HUB}*v|L7bD{$sgmBuP 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%0A9;ma?` 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 z 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 DsZM|Q literal 0 HcmV?d00001 diff --git a/src/gui/about.cpp b/src/gui/about.cpp index 4076dbc6..8131d3c3 100644 --- a/src/gui/about.cpp +++ b/src/gui/about.cpp @@ -67,6 +67,7 @@ const char* aboutLine[]={ "AmigaX", "AURORA*FIELDS", "battybeats", + "Bernie", "BlueElectric05", "breakthetargets", "brickblock369", From c83948209ae7e0f444debaec6fb9c284d2e385ba Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 1 Jul 2023 18:10:32 -0500 Subject: [PATCH 166/183] one additional demo song by SuperJet Spade --- demos/msx/Striking_Towards_Opposition.fur | Bin 0 -> 31882 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 demos/msx/Striking_Towards_Opposition.fur diff --git a/demos/msx/Striking_Towards_Opposition.fur b/demos/msx/Striking_Towards_Opposition.fur new file mode 100644 index 0000000000000000000000000000000000000000..40dee3801082f5c1a1a5fc917ef8f11430acf378 GIT binary patch literal 31882 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 V*+@9OT>87V!*OuG|36~TZ&aN?y(a(w literal 0 HcmV?d00001 From ecff10b4078f997fff840ae115458195a9b73d59 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 1 Jul 2023 18:10:58 -0500 Subject: [PATCH 167/183] GUI: prepare for handling render backend deaths --- src/gui/gui.h | 1 + src/gui/render/abstract.cpp | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/gui/gui.h b/src/gui/gui.h index 8a3aab68..1c46f262 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1266,6 +1266,7 @@ class FurnaceGUIRender { virtual void initGUI(SDL_Window* win); virtual void quitGUI(); virtual bool quit(); + virtual bool isDead(); virtual ~FurnaceGUIRender(); }; diff --git a/src/gui/render/abstract.cpp b/src/gui/render/abstract.cpp index a45c4ecd..2b2e419e 100644 --- a/src/gui/render/abstract.cpp +++ b/src/gui/render/abstract.cpp @@ -99,5 +99,9 @@ bool FurnaceGUIRender::quit() { void FurnaceGUIRender::quitGUI() { } +bool FurnaceGUIRender::isDead() { + return false; +} + FurnaceGUIRender::~FurnaceGUIRender() { } From 87f80cae1d65ec1f59d477002e581600c4f1be11 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 1 Jul 2023 18:19:57 -0500 Subject: [PATCH 168/183] Cosmic Warehouse by SuperJet Spade --- demos/snes/Cosmic_Warehouse.fur | Bin 0 -> 50573 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 demos/snes/Cosmic_Warehouse.fur diff --git a/demos/snes/Cosmic_Warehouse.fur b/demos/snes/Cosmic_Warehouse.fur new file mode 100644 index 0000000000000000000000000000000000000000..f5c277d64ccf9d2d48d9cf90b5962b3c179e0d92 GIT binary patch literal 50573 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 C*5HQ# literal 0 HcmV?d00001 From 5fde2e7e3047aa50895885b4e6cd70ccb3ca77ef Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 00:09:39 -0500 Subject: [PATCH 169/183] GUI: render backend recovery, part 1 --- src/gui/debugWindow.cpp | 3 ++ src/gui/gui.cpp | 78 ++++++++++++++++++++++++++++++++++- src/gui/gui.h | 26 +++++++----- src/gui/image.cpp | 2 +- src/gui/intro.cpp | 2 +- src/gui/render/abstract.cpp | 14 +++---- src/gui/render/renderDX11.cpp | 41 +++++++++--------- src/gui/render/renderDX11.h | 22 +++++----- src/gui/render/renderGL.cpp | 20 ++++----- src/gui/render/renderGL.h | 14 +++---- src/gui/render/renderSDL.cpp | 57 ++++++++++++++++--------- src/gui/render/renderSDL.h | 14 +++---- 12 files changed, 195 insertions(+), 98 deletions(-) diff --git a/src/gui/debugWindow.cpp b/src/gui/debugWindow.cpp index e440b589..b9dc6c42 100644 --- a/src/gui/debugWindow.cpp +++ b/src/gui/debugWindow.cpp @@ -536,6 +536,9 @@ void FurnaceGUI::drawDebug() { if (ImGui::Button("Spoiler")) { spoilerOpen=!spoilerOpen; } + if (ImGui::Button("Kill Graphics")) { + killGraphics=true; + } ImGui::TreePop(); } if (ImGui::TreeNode("Performance")) { diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index d6788805..56ae0345 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3776,6 +3776,79 @@ bool FurnaceGUI::loop() { }); } + // recover from dead graphics + if (rend->isDead() || killGraphics) { + killGraphics=false; + + logW("graphics are dead! restarting..."); + + if (sampleTex!=NULL) { + rend->destroyTexture(sampleTex); + sampleTex=NULL; + } + + if (chanOscGradTex!=NULL) { + rend->destroyTexture(chanOscGradTex); + chanOscGradTex=NULL; + } + + for (auto& i: images) { + if (i.second->tex!=NULL) { + rend->destroyTexture(i.second->tex); + i.second->tex=NULL; + } + } + + commitState(); + rend->quitGUI(); + rend->quit(); + ImGui_ImplSDL2_Shutdown(); + + int initAttempts=0; + + SDL_Delay(500); + + logD("starting render backend..."); + while (++initAttempts<=5) { + if (rend->init(sdlWin)) { + break; + } + SDL_Delay(1000); + logV("trying again..."); + } + + if (initAttempts>5) { + reportError("can't keep going without graphics! Furnace will quit now."); + quit=true; + break; + } + + rend->clear(ImVec4(0.0,0.0,0.0,1.0)); + rend->present(); + + logD("preparing user interface..."); + rend->initGUI(sdlWin); + + logD("building font..."); + if (!ImGui::GetIO().Fonts->Build()) { + logE("error while building font atlas!"); + showError("error while loading fonts! please check your settings."); + ImGui::GetIO().Fonts->Clear(); + mainFont=ImGui::GetIO().Fonts->AddFontDefault(); + patFont=mainFont; + if (rend) rend->destroyFontsTexture(); + if (!ImGui::GetIO().Fonts->Build()) { + logE("error again while building font atlas!"); + } + } + + firstFrame=true; + mustClear=2; + initialScreenWipe=1.0f; + + continue; + } + bool fontsFailed=false; layoutTimeBegin=SDL_GetPerformanceCounter(); @@ -6319,6 +6392,8 @@ bool FurnaceGUI::init() { rend->present(); logD("preparing user interface..."); + IMGUI_CHECKVERSION(); + ImGui::CreateContext(); rend->initGUI(sdlWin); applyUISettings(); @@ -6556,8 +6631,8 @@ bool FurnaceGUI::finish() { commitState(); rend->quitGUI(); ImGui_ImplSDL2_Shutdown(); - ImGui::DestroyContext(); quitRender(); + ImGui::DestroyContext(); SDL_DestroyWindow(sdlWin); if (vibrator) { @@ -6617,6 +6692,7 @@ FurnaceGUI::FurnaceGUI(): modTableHex(false), displayEditString(false), mobileEdit(false), + killGraphics(false), vgmExportVersion(0x171), vgmExportTrailingTicks(-1), drawHalt(10), diff --git a/src/gui/gui.h b/src/gui/gui.h index 1c46f262..a8befff2 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1210,9 +1210,12 @@ struct FurnaceGUIQueryResult { } }; +class FurnaceGUITexture { +}; + struct FurnaceGUIImage { unsigned char* data; - void* tex; + FurnaceGUITexture* tex; int width, height, ch; FurnaceGUIImage(): @@ -1243,13 +1246,13 @@ enum FurnaceGUIBlendMode { class FurnaceGUIRender { public: - virtual ImTextureID getTextureID(void* which); - virtual bool lockTexture(void* which, void** data, int* pitch); - virtual bool unlockTexture(void* which); - virtual bool updateTexture(void* which, void* data, int pitch); - virtual void* createTexture(bool dynamic, int width, int height); - virtual bool destroyTexture(void* which); - virtual void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + virtual ImTextureID getTextureID(FurnaceGUITexture* which); + virtual bool lockTexture(FurnaceGUITexture* which, void** data, int* pitch); + virtual bool unlockTexture(FurnaceGUITexture* which); + virtual bool updateTexture(FurnaceGUITexture* which, void* data, int pitch); + virtual FurnaceGUITexture* createTexture(bool dynamic, int width, int height); + virtual bool destroyTexture(FurnaceGUITexture* which); + virtual void setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode); virtual void setBlendMode(FurnaceGUIBlendMode mode); virtual void resized(const SDL_Event& ev); virtual void clear(ImVec4 color); @@ -1280,7 +1283,7 @@ class FurnaceGUI { SDL_Haptic* vibrator; bool vibratorAvailable; - void* sampleTex; + FurnaceGUITexture* sampleTex; int sampleTexW, sampleTexH; bool updateSampleTex; @@ -1305,6 +1308,7 @@ class FurnaceGUI { bool displayNew, fullScreen, preserveChanPos, wantScrollList, noteInputPoly; bool displayPendingIns, pendingInsSingle, displayPendingRawSample, snesFilterHex, modTableHex, displayEditString; bool mobileEdit; + bool killGraphics; bool willExport[DIV_MAX_CHIPS]; int vgmExportVersion; int vgmExportTrailingTicks; @@ -1960,7 +1964,7 @@ class FurnaceGUI { String chanOscTextFormat; ImVec4 chanOscColor, chanOscTextColor; Gradient2D chanOscGrad; - void* chanOscGradTex; + FurnaceGUITexture* chanOscGradTex; float chanOscLP0[DIV_MAX_CHANS]; float chanOscLP1[DIV_MAX_CHANS]; float chanOscVol[DIV_MAX_CHANS]; @@ -2121,7 +2125,7 @@ class FurnaceGUI { void highlightWindow(const char* winName); FurnaceGUIImage* getImage(FurnaceGUIImages image); - void* getTexture(FurnaceGUIImages image, FurnaceGUIBlendMode blendMode=GUI_BLEND_MODE_BLEND); + FurnaceGUITexture* getTexture(FurnaceGUIImages image, FurnaceGUIBlendMode blendMode=GUI_BLEND_MODE_BLEND); void drawImage(ImDrawList* dl, FurnaceGUIImages image, const ImVec2& pos, const ImVec2& scale, double rotate, const ImVec2& uvMin, const ImVec2& uvMax, const ImVec4& imgColor); void drawMobileControls(); diff --git a/src/gui/image.cpp b/src/gui/image.cpp index c4528445..493b5a57 100644 --- a/src/gui/image.cpp +++ b/src/gui/image.cpp @@ -46,7 +46,7 @@ const unsigned int imageLen[GUI_IMAGE_MAX]={ image_pat_size }; -void* FurnaceGUI::getTexture(FurnaceGUIImages image, FurnaceGUIBlendMode blendMode) { +FurnaceGUITexture* FurnaceGUI::getTexture(FurnaceGUIImages image, FurnaceGUIBlendMode blendMode) { FurnaceGUIImage* img=getImage(image); if (img==NULL) return NULL; diff --git a/src/gui/intro.cpp b/src/gui/intro.cpp index 8ebbe020..bace1439 100644 --- a/src/gui/intro.cpp +++ b/src/gui/intro.cpp @@ -25,7 +25,7 @@ void FurnaceGUI::drawImage(ImDrawList* dl, FurnaceGUIImages image, const ImVec2& pos, const ImVec2& scale, double rotate, const ImVec2& uvMin, const ImVec2& uvMax, const ImVec4& imgColor) { FurnaceGUIImage* imgI=getImage(image); - void* img=getTexture(image); + FurnaceGUITexture* img=getTexture(image); float squareSize=MAX(introMax.x-introMin.x,introMax.y-introMin.y); float uDiff=uvMax.x-uvMin.x; diff --git a/src/gui/render/abstract.cpp b/src/gui/render/abstract.cpp index 2b2e419e..cf76ebbb 100644 --- a/src/gui/render/abstract.cpp +++ b/src/gui/render/abstract.cpp @@ -19,31 +19,31 @@ #include "../gui.h" -ImTextureID FurnaceGUIRender::getTextureID(void* which) { +ImTextureID FurnaceGUIRender::getTextureID(FurnaceGUITexture* which) { return NULL; } -bool FurnaceGUIRender::lockTexture(void* which, void** data, int* pitch) { +bool FurnaceGUIRender::lockTexture(FurnaceGUITexture* which, void** data, int* pitch) { return false; } -bool FurnaceGUIRender::unlockTexture(void* which) { +bool FurnaceGUIRender::unlockTexture(FurnaceGUITexture* which) { return false; } -bool FurnaceGUIRender::updateTexture(void* which, void* data, int pitch) { +bool FurnaceGUIRender::updateTexture(FurnaceGUITexture* which, void* data, int pitch) { return false; } -void* FurnaceGUIRender::createTexture(bool dynamic, int width, int height) { +FurnaceGUITexture* FurnaceGUIRender::createTexture(bool dynamic, int width, int height) { return NULL; } -bool FurnaceGUIRender::destroyTexture(void* which) { +bool FurnaceGUIRender::destroyTexture(FurnaceGUITexture* which) { return false; } -void FurnaceGUIRender::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +void FurnaceGUIRender::setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode) { } void FurnaceGUIRender::setBlendMode(FurnaceGUIBlendMode mode) { diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 18cbcbae..53893acc 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -69,7 +69,8 @@ const D3D_FEATURE_LEVEL possibleFeatureLevels[2]={ D3D_FEATURE_LEVEL_10_0 }; -struct FurnaceDXTexture { +class FurnaceDXTexture: public FurnaceGUITexture { + public: ID3D11Texture2D* tex; ID3D11ShaderResourceView* view; int width, height; @@ -244,7 +245,6 @@ void* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { ret->tex=tex; ret->view=view; ret->dynamic=dynamic; - textures.push_back(ret); return ret; } @@ -253,13 +253,6 @@ bool FurnaceGUIRenderDX11::destroyTexture(void* which) { t->view->Release(); t->tex->Release(); delete t; - - for (size_t i=0; iResizeBuffers(0,(unsigned int)ev.window.data1,(unsigned int)ev.window.data2,DXGI_FORMAT_UNKNOWN,DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH); if (result!=S_OK) { + if (result==DXGI_ERROR_DEVICE_REMOVED || result==DXGI_ERROR_DEVICE_RESET) { + dead=true; + } logW("error while resizing swapchain buffers! %.8x",result); } - createRenderTarget(); + if (!dead) { + createRenderTarget(); + } } void FurnaceGUIRenderDX11::clear(ImVec4 color) { @@ -348,7 +346,12 @@ void FurnaceGUIRenderDX11::wipe(float alpha) { } void FurnaceGUIRenderDX11::present() { - swapchain->Present(1,0); + HRESULT result=swapchain->Present(1,0); + if (result==DXGI_ERROR_DEVICE_REMOVED || result==DXGI_ERROR_DEVICE_RESET) { + dead=true; + } else { + logE("DX11: present failed! %.8x",result) + } } bool FurnaceGUIRenderDX11::getOutputSize(int& w, int& h) { @@ -534,9 +537,6 @@ bool FurnaceGUIRenderDX11::init(SDL_Window* win) { } void FurnaceGUIRenderDX11::initGUI(SDL_Window* win) { - IMGUI_CHECKVERSION(); - ImGui::CreateContext(); - ImGui_ImplSDL2_InitForD3D(win); ImGui_ImplDX11_Init(device,context); } @@ -544,13 +544,6 @@ void FurnaceGUIRenderDX11::initGUI(SDL_Window* win) { bool FurnaceGUIRenderDX11::quit() { destroyRenderTarget(); - for (FurnaceDXTexture* i: textures) { - i->view->Release(); - i->tex->Release(); - delete i; - } - textures.clear(); - if (swapchain!=NULL) { swapchain->Release(); swapchain=NULL; @@ -563,9 +556,15 @@ bool FurnaceGUIRenderDX11::quit() { device->Release(); device=NULL; } + + dead=false; return true; } void FurnaceGUIRenderDX11::quitGUI() { ImGui_ImplDX11_Shutdown(); } + +void FurnaceGUIRenderDX11::isDead() { + return dead; +} diff --git a/src/gui/render/renderDX11.h b/src/gui/render/renderDX11.h index 18d8673d..39cc32df 100644 --- a/src/gui/render/renderDX11.h +++ b/src/gui/render/renderDX11.h @@ -32,8 +32,6 @@ typedef void ID3D11InputLayout; typedef void IDXGISwapChain; #endif -struct FurnaceDXTexture; - class FurnaceGUIRenderDX11: public FurnaceGUIRender { ID3D11Device* device; ID3D11DeviceContext* context; @@ -45,6 +43,8 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { ID3D11Buffer* quadVertex; int outW, outH; + bool dead; + // SHADERS // // -> wipe ID3D11VertexShader* sh_wipe_vertex; @@ -59,16 +59,14 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { bool destroyRenderTarget(); bool createRenderTarget(); - std::vector textures; - public: - ImTextureID getTextureID(void* which); - bool lockTexture(void* which, void** data, int* pitch); - bool unlockTexture(void* which); - bool updateTexture(void* which, void* data, int pitch); - void* createTexture(bool dynamic, int width, int height); - bool destroyTexture(void* which); - void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + ImTextureID getTextureID(FurnaceGUITexture* which); + bool lockTexture(FurnaceGUITexture* which, void** data, int* pitch); + bool unlockTexture(FurnaceGUITexture* which); + bool updateTexture(FurnaceGUITexture* which, void* data, int pitch); + FurnaceGUITexture* createTexture(bool dynamic, int width, int height); + bool destroyTexture(FurnaceGUITexture* which); + void setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode); void setBlendMode(FurnaceGUIBlendMode mode); void resized(const SDL_Event& ev); void clear(ImVec4 color); @@ -85,6 +83,7 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { void initGUI(SDL_Window* win); void quitGUI(); bool quit(); + bool isDead(); FurnaceGUIRenderDX11(): device(NULL), context(NULL), @@ -95,6 +94,7 @@ class FurnaceGUIRenderDX11: public FurnaceGUIRender { quadVertex(NULL), outW(0), outH(0), + dead(false), sh_wipe_vertex(NULL), sh_wipe_fragment(NULL), sh_wipe_inputLayout(NULL), diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index 06a057cb..c51ab7df 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -51,7 +51,8 @@ PFNGLGETUNIFORMLOCATIONPROC furGetUniformLocation=NULL; PFNGLUNIFORM1FPROC furUniform1f=NULL; PFNGLGETSHADERINFOLOGPROC furGetShaderInfoLog=NULL; -struct FurnaceGLTexture { +class FurnaceGLTexture: public FurnaceGUITexture { + public: GLuint id; int width, height; unsigned char* lockedData; @@ -138,12 +139,12 @@ bool FurnaceGUIRenderGL::createShader(const char* vertexS, const char* fragmentS return true; } -ImTextureID FurnaceGUIRenderGL::getTextureID(void* which) { +ImTextureID FurnaceGUIRenderGL::getTextureID(FurnaceGUITexture* which) { intptr_t ret=((FurnaceGLTexture*)which)->id; return (ImTextureID)ret; } -bool FurnaceGUIRenderGL::lockTexture(void* which, void** data, int* pitch) { +bool FurnaceGUIRenderGL::lockTexture(FurnaceGUITexture* which, void** data, int* pitch) { FurnaceGLTexture* t=(FurnaceGLTexture*)which; if (t->lockedData!=NULL) return false; t->lockedData=new unsigned char[t->width*t->height*4]; @@ -153,7 +154,7 @@ bool FurnaceGUIRenderGL::lockTexture(void* which, void** data, int* pitch) { return true; } -bool FurnaceGUIRenderGL::unlockTexture(void* which) { +bool FurnaceGUIRenderGL::unlockTexture(FurnaceGUITexture* which) { FurnaceGLTexture* t=(FurnaceGLTexture*)which; if (t->lockedData==NULL) return false; @@ -167,7 +168,7 @@ bool FurnaceGUIRenderGL::unlockTexture(void* which) { return true; } -bool FurnaceGUIRenderGL::updateTexture(void* which, void* data, int pitch) { +bool FurnaceGUIRenderGL::updateTexture(FurnaceGUITexture* which, void* data, int pitch) { FurnaceGLTexture* t=(FurnaceGLTexture*)which; if (t->width*4!=pitch) return false; @@ -177,7 +178,7 @@ bool FurnaceGUIRenderGL::updateTexture(void* which, void* data, int pitch) { return true; } -void* FurnaceGUIRenderGL::createTexture(bool dynamic, int width, int height) { +FurnaceGUITexture* FurnaceGUIRenderGL::createTexture(bool dynamic, int width, int height) { FurnaceGLTexture* t=new FurnaceGLTexture; C(glGenTextures(1,&t->id)); C(glBindTexture(GL_TEXTURE_2D,t->id)); @@ -190,14 +191,14 @@ void* FurnaceGUIRenderGL::createTexture(bool dynamic, int width, int height) { return t; } -bool FurnaceGUIRenderGL::destroyTexture(void* which) { +bool FurnaceGUIRenderGL::destroyTexture(FurnaceGUITexture* which) { FurnaceGLTexture* t=(FurnaceGLTexture*)which; C(glDeleteTextures(1,&t->id)); delete t; return true; } -void FurnaceGUIRenderGL::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +void FurnaceGUIRenderGL::setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode) { } void FurnaceGUIRenderGL::setBlendMode(FurnaceGUIBlendMode mode) { @@ -368,9 +369,6 @@ bool FurnaceGUIRenderGL::init(SDL_Window* win) { } void FurnaceGUIRenderGL::initGUI(SDL_Window* win) { - IMGUI_CHECKVERSION(); - ImGui::CreateContext(); - ImGui_ImplSDL2_InitForOpenGL(win,context); ImGui_ImplOpenGL3_Init(); } diff --git a/src/gui/render/renderGL.h b/src/gui/render/renderGL.h index 6f824a03..541ee3cb 100644 --- a/src/gui/render/renderGL.h +++ b/src/gui/render/renderGL.h @@ -35,13 +35,13 @@ class FurnaceGUIRenderGL: public FurnaceGUIRender { bool createShader(const char* vertexS, const char* fragmentS, int& vertex, int& fragment, int& program); public: - ImTextureID getTextureID(void* which); - bool lockTexture(void* which, void** data, int* pitch); - bool unlockTexture(void* which); - bool updateTexture(void* which, void* data, int pitch); - void* createTexture(bool dynamic, int width, int height); - bool destroyTexture(void* which); - void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + ImTextureID getTextureID(FurnaceGUITexture* which); + bool lockTexture(FurnaceGUITexture* which, void** data, int* pitch); + bool unlockTexture(FurnaceGUITexture* which); + bool updateTexture(FurnaceGUITexture* which, void* data, int pitch); + FurnaceGUITexture* createTexture(bool dynamic, int width, int height); + bool destroyTexture(FurnaceGUITexture* which); + void setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode); void setBlendMode(FurnaceGUIBlendMode mode); void clear(ImVec4 color); bool newFrame(); diff --git a/src/gui/render/renderSDL.cpp b/src/gui/render/renderSDL.cpp index a58f1673..0fe6b988 100644 --- a/src/gui/render/renderSDL.cpp +++ b/src/gui/render/renderSDL.cpp @@ -20,45 +20,65 @@ #include "renderSDL.h" #include "backends/imgui_impl_sdlrenderer2.h" -ImTextureID FurnaceGUIRenderSDL::getTextureID(void* which) { - return which; +class FurnaceSDLTexture: public FurnaceGUITexture { + public: + SDL_Texture* tex; + FurnaceSDLTexture(): + tex(NULL) {} +}; + +ImTextureID FurnaceGUIRenderSDL::getTextureID(FurnaceGUITexture* which) { + FurnaceSDLTexture* t=(FurnaceSDLTexture*)which; + return t->tex; } -bool FurnaceGUIRenderSDL::lockTexture(void* which, void** data, int* pitch) { - return SDL_LockTexture((SDL_Texture*)which,NULL,data,pitch)==0; +bool FurnaceGUIRenderSDL::lockTexture(FurnaceGUITexture* which, void** data, int* pitch) { + FurnaceSDLTexture* t=(FurnaceSDLTexture*)which; + return SDL_LockTexture(t->tex,NULL,data,pitch)==0; } -bool FurnaceGUIRenderSDL::unlockTexture(void* which) { - SDL_UnlockTexture((SDL_Texture*)which); +bool FurnaceGUIRenderSDL::unlockTexture(FurnaceGUITexture* which) { + FurnaceSDLTexture* t=(FurnaceSDLTexture*)which; + SDL_UnlockTexture(t->tex); return true; } -bool FurnaceGUIRenderSDL::updateTexture(void* which, void* data, int pitch) { - return SDL_UpdateTexture((SDL_Texture*)which,NULL,data,pitch)==0; +bool FurnaceGUIRenderSDL::updateTexture(FurnaceGUITexture* which, void* data, int pitch) { + FurnaceSDLTexture* t=(FurnaceSDLTexture*)which; + return SDL_UpdateTexture(t->tex,NULL,data,pitch)==0; } -void* FurnaceGUIRenderSDL::createTexture(bool dynamic, int width, int height) { - return SDL_CreateTexture(sdlRend,SDL_PIXELFORMAT_ABGR8888,dynamic?SDL_TEXTUREACCESS_STREAMING:SDL_TEXTUREACCESS_STATIC,width,height); +FurnaceGUITexture* FurnaceGUIRenderSDL::createTexture(bool dynamic, int width, int height) { + SDL_Texture* t=SDL_CreateTexture(sdlRend,SDL_PIXELFORMAT_ABGR8888,dynamic?SDL_TEXTUREACCESS_STREAMING:SDL_TEXTUREACCESS_STATIC,width,height); + + if (t==NULL) return NULL; + FurnaceSDLTexture* ret=new FurnaceSDLTexture; + ret->tex=t; + return ret; } -bool FurnaceGUIRenderSDL::destroyTexture(void* which) { - SDL_DestroyTexture((SDL_Texture*)which); +bool FurnaceGUIRenderSDL::destroyTexture(FurnaceGUITexture* which) { + FurnaceSDLTexture* t=(FurnaceSDLTexture*)which; + + SDL_DestroyTexture(t->tex); + delete t; return true; } -void FurnaceGUIRenderSDL::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +void FurnaceGUIRenderSDL::setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode) { + FurnaceSDLTexture* t=(FurnaceSDLTexture*)which; switch (mode) { case GUI_BLEND_MODE_NONE: - SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_NONE); + SDL_SetTextureBlendMode(t->tex,SDL_BLENDMODE_NONE); break; case GUI_BLEND_MODE_BLEND: - SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_BLEND); + SDL_SetTextureBlendMode(t->tex,SDL_BLENDMODE_BLEND); break; case GUI_BLEND_MODE_ADD: - SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_ADD); + SDL_SetTextureBlendMode(t->tex,SDL_BLENDMODE_ADD); break; case GUI_BLEND_MODE_MULTIPLY: - SDL_SetTextureBlendMode((SDL_Texture*)which,SDL_BLENDMODE_MOD); + SDL_SetTextureBlendMode(t->tex,SDL_BLENDMODE_MOD); break; } } @@ -128,9 +148,6 @@ bool FurnaceGUIRenderSDL::init(SDL_Window* win) { } void FurnaceGUIRenderSDL::initGUI(SDL_Window* win) { - IMGUI_CHECKVERSION(); - ImGui::CreateContext(); - ImGui_ImplSDL2_InitForSDLRenderer(win,sdlRend); ImGui_ImplSDLRenderer2_Init(sdlRend); } diff --git a/src/gui/render/renderSDL.h b/src/gui/render/renderSDL.h index afae3b3c..f1913584 100644 --- a/src/gui/render/renderSDL.h +++ b/src/gui/render/renderSDL.h @@ -22,13 +22,13 @@ class FurnaceGUIRenderSDL: public FurnaceGUIRender { SDL_Renderer* sdlRend; public: - ImTextureID getTextureID(void* which); - bool lockTexture(void* which, void** data, int* pitch); - bool unlockTexture(void* which); - bool updateTexture(void* which, void* data, int pitch); - void* createTexture(bool dynamic, int width, int height); - bool destroyTexture(void* which); - void setTextureBlendMode(void* which, FurnaceGUIBlendMode mode); + ImTextureID getTextureID(FurnaceGUITexture* which); + bool lockTexture(FurnaceGUITexture* which, void** data, int* pitch); + bool unlockTexture(FurnaceGUITexture* which); + bool updateTexture(FurnaceGUITexture* which, void* data, int pitch); + FurnaceGUITexture* createTexture(bool dynamic, int width, int height); + bool destroyTexture(FurnaceGUITexture* which); + void setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode); void setBlendMode(FurnaceGUIBlendMode mode); void clear(ImVec4 color); bool newFrame(); From f67faf9f23787b3ce733e5cd9f43badc5672e1dc Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 00:09:49 -0500 Subject: [PATCH 170/183] GUI: get rid of debug message --- src/gui/gui.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 56ae0345..d701d224 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -500,8 +500,6 @@ bool FurnaceGUI::InvCheckbox(const char* label, bool* value) { void FurnaceGUI::sameLineMaybe(float width) { if (width<0.0f) width=ImGui::GetFrameHeight(); - logV("sameLineMaybe: %f %f",ImGui::GetContentRegionAvail().x,width); - ImGui::SameLine(); if (ImGui::GetContentRegionAvail().x Date: Sun, 2 Jul 2023 00:26:57 -0500 Subject: [PATCH 171/183] VERA: fix custom clock --- src/engine/platform/vera.cpp | 16 ++++++++++------ src/engine/platform/vera.h | 1 + 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/engine/platform/vera.cpp b/src/engine/platform/vera.cpp index 8357f756..0db7660d 100644 --- a/src/engine/platform/vera.cpp +++ b/src/engine/platform/vera.cpp @@ -441,6 +441,15 @@ void DivPlatformVERA::poke(std::vector& wlist) { for (auto &i: wlist) poke(i.addr,i.val); } +void DivPlatformVERA::setFlags(const DivConfig& flags) { + chipClock=25000000; + CHECK_CUSTOM_CLOCK; + rate=chipClock/512; + for (int i=0; i<17; i++) { + oscBuf[i]->rate=rate; + } +} + int DivPlatformVERA::init(DivEngine* p, int channels, int sugRate, const DivConfig& flags) { for (int i=0; i<17; i++) { isMuted[i]=false; @@ -451,12 +460,7 @@ int DivPlatformVERA::init(DivEngine* p, int channels, int sugRate, const DivConf pcm=new struct VERA_PCM; dumpWrites=false; skipRegisterWrites=false; - chipClock=25000000; - CHECK_CUSTOM_CLOCK; - rate=chipClock/512; - for (int i=0; i<17; i++) { - oscBuf[i]->rate=rate; - } + setFlags(flags); reset(); return 17; } diff --git a/src/engine/platform/vera.h b/src/engine/platform/vera.h index 8781dc95..7476a316 100644 --- a/src/engine/platform/vera.h +++ b/src/engine/platform/vera.h @@ -70,6 +70,7 @@ class DivPlatformVERA: public DivDispatch { void reset(); void tick(bool sysTick=true); void muteChannel(int ch, bool mute); + void setFlags(const DivConfig& flags); void notifyInsDeletion(void* ins); float getPostAmp(); int getOutputCount(); From 2a4eb1e2be8878a9976715b2df058de7a08b81eb Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 00:27:47 -0500 Subject: [PATCH 172/183] GUI: render backend recovery, part 2 --- src/gui/render/renderDX11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 53893acc..0cf0e4f5 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -565,6 +565,6 @@ void FurnaceGUIRenderDX11::quitGUI() { ImGui_ImplDX11_Shutdown(); } -void FurnaceGUIRenderDX11::isDead() { +bool FurnaceGUIRenderDX11::isDead() { return dead; } From 8d21948431b18140701e947dbb3208465a47f8ff Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 00:39:50 -0500 Subject: [PATCH 173/183] Game Boy: fix custom clock --- src/engine/platform/gb.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/gb.cpp b/src/engine/platform/gb.cpp index 9a5d6d7d..d187b8c7 100644 --- a/src/engine/platform/gb.cpp +++ b/src/engine/platform/gb.cpp @@ -664,9 +664,7 @@ void DivPlatformGB::setFlags(const DivConfig& flags) { } invertWave=flags.getBool("invertWave",true); enoughAlready=flags.getBool("enoughAlready",false); -} -int DivPlatformGB::init(DivEngine* p, int channels, int sugRate, const DivConfig& flags) { chipClock=4194304; CHECK_CUSTOM_CLOCK; rate=chipClock/16; @@ -675,6 +673,9 @@ int DivPlatformGB::init(DivEngine* p, int channels, int sugRate, const DivConfig oscBuf[i]=new DivDispatchOscBuffer; oscBuf[i]->rate=rate; } +} + +int DivPlatformGB::init(DivEngine* p, int channels, int sugRate, const DivConfig& flags) { parent=p; dumpWrites=false; skipRegisterWrites=false; From 4c59aab17900a01328ade8be59b2dfd880b3c266 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 00:46:16 -0500 Subject: [PATCH 174/183] GUI: render backend recovery, part 3 --- src/gui/render/renderDX11.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 0cf0e4f5..f3e673cf 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -141,12 +141,12 @@ bool FurnaceGUIRenderDX11::createRenderTarget() { return true; } -ImTextureID FurnaceGUIRenderDX11::getTextureID(void* which) { +ImTextureID FurnaceGUIRenderDX11::getTextureID(FurnaceGUITexture* which) { FurnaceDXTexture* t=(FurnaceDXTexture*)which; return (ImTextureID)t->view; } -bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { +bool FurnaceGUIRenderDX11::lockTexture(FurnaceGUITexture* which, void** data, int* pitch) { FurnaceDXTexture* t=(FurnaceDXTexture*)which; if (t->lockedData!=NULL) return false; @@ -166,7 +166,7 @@ bool FurnaceGUIRenderDX11::lockTexture(void* which, void** data, int* pitch) { return true; } -bool FurnaceGUIRenderDX11::unlockTexture(void* which) { +bool FurnaceGUIRenderDX11::unlockTexture(FurnaceGUITexture* which) { FurnaceDXTexture* t=(FurnaceDXTexture*)which; if (t->lockedData==NULL) return false; context->Unmap(t->tex,D3D11CalcSubresource(0,0,1)); @@ -174,7 +174,7 @@ bool FurnaceGUIRenderDX11::unlockTexture(void* which) { return true; } -bool FurnaceGUIRenderDX11::updateTexture(void* which, void* data, int pitch) { +bool FurnaceGUIRenderDX11::updateTexture(FurnaceGUITexture* which, void* data, int pitch) { FurnaceDXTexture* t=(FurnaceDXTexture*)which; if (t->dynamic) { unsigned char* d=NULL; @@ -199,7 +199,7 @@ bool FurnaceGUIRenderDX11::updateTexture(void* which, void* data, int pitch) { return true; } -void* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { +FurnaceGUITexture* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { D3D11_TEXTURE2D_DESC texDesc; D3D11_SHADER_RESOURCE_VIEW_DESC viewDesc; ID3D11Texture2D* tex=NULL; @@ -248,7 +248,7 @@ void* FurnaceGUIRenderDX11::createTexture(bool dynamic, int width, int height) { return ret; } -bool FurnaceGUIRenderDX11::destroyTexture(void* which) { +bool FurnaceGUIRenderDX11::destroyTexture(FurnaceGUITexture* which) { FurnaceDXTexture* t=(FurnaceDXTexture*)which; t->view->Release(); t->tex->Release(); @@ -256,7 +256,7 @@ bool FurnaceGUIRenderDX11::destroyTexture(void* which) { return true; } -void FurnaceGUIRenderDX11::setTextureBlendMode(void* which, FurnaceGUIBlendMode mode) { +void FurnaceGUIRenderDX11::setTextureBlendMode(FurnaceGUITexture* which, FurnaceGUIBlendMode mode) { } void FurnaceGUIRenderDX11::setBlendMode(FurnaceGUIBlendMode mode) { From dc28284cce266a1e21b6f2cd0d6d7ac970d2751a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 01:08:57 -0500 Subject: [PATCH 175/183] GUI: render backend recovery, part 4 confirmed to work --- src/gui/render/renderDX11.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index f3e673cf..04d8dfb8 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -349,8 +349,8 @@ void FurnaceGUIRenderDX11::present() { HRESULT result=swapchain->Present(1,0); if (result==DXGI_ERROR_DEVICE_REMOVED || result==DXGI_ERROR_DEVICE_RESET) { dead=true; - } else { - logE("DX11: present failed! %.8x",result) + } else if (result!=S_OK) { + logE("DX11: present failed! %.8x",result); } } @@ -368,10 +368,10 @@ void FurnaceGUIRenderDX11::preInit() { } const float wipeVertices[4][4]={ - -1.0, -1.0, 0.0, 1.0, - 1.0, -1.0, 0.0, 1.0, - -1.0, 1.0, 0.0, 1.0, - 1.0, 1.0, 0.0, 1.0 + {-1.0, -1.0, 0.0, 1.0}, + { 1.0, -1.0, 0.0, 1.0}, + {-1.0, 1.0, 0.0, 1.0}, + { 1.0, 1.0, 0.0, 1.0} }; bool FurnaceGUIRenderDX11::init(SDL_Window* win) { From c40cc8283fab237bf363c91924e7bffb52e0b483 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 02:12:26 -0500 Subject: [PATCH 176/183] IGFD: fix files with non-ASCII chars not have type on Windows --- extern/igfd/ImGuiFileDialog.cpp | 44 +++++++++++++++++++++++++++++---- extern/igfd/ImGuiFileDialog.h | 2 +- extern/igfd/dirent/dirent.h | 17 +++++++++++++ 3 files changed, 57 insertions(+), 6 deletions(-) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index 752f4100..b3d0212c 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -46,11 +46,11 @@ SOFTWARE. #include #endif // EMSCRIPTEN #ifdef WIN32 - #define stat _stat #define stricmp _stricmp #include #include "dirent/dirent.h" // directly open the dirent file attached to this lib #define PATH_SEP '\\' + #define PATH_SEP_STR "\\" #ifndef PATH_MAX #define PATH_MAX 260 #endif // PATH_MAX @@ -60,6 +60,7 @@ SOFTWARE. #include #include #define PATH_SEP '/' + #define PATH_SEP_STR "/" #endif // defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) #include "imgui.h" @@ -1440,10 +1441,12 @@ namespace IGFD return fileNameExt; } - void IGFD::FileManager::AddFile(const FileDialogInternal& vFileDialogInternal, const std::string& vPath, const std::string& vFileName, const char& vFileType) + void IGFD::FileManager::AddFile(const FileDialogInternal& vFileDialogInternal, const std::string& vPath, const std::string& vFileName, const char& vFileType, void* ent) { auto infos = std::make_shared(); + struct dirent* dent=(struct dirent*)ent; + infos->filePath = vPath; infos->fileNameExt = vFileName; infos->fileNameExt_optimized = prOptimizeFilenameForSearchOperations(infos->fileNameExt); @@ -1473,6 +1476,24 @@ namespace IGFD } } +#ifdef _WIN32 + SYSTEMTIME systemTime; + SYSTEMTIME localTime; + char timebuf[100]; + + infos->fileSize=dent->dwin_size; + if (FileTimeToSystemTime(&dent->dwin_mtime,&systemTime)==TRUE) { + if (SystemTimeToTzSpecificLocalTime(NULL,&systemTime,&localTime)==TRUE) { + snprintf(timebuf,99,"%d/%.2d/%.2d %.2d:%.2d",localTime.wYear,localTime.wMonth,localTime.wDay,localTime.wHour,localTime.wMinute); + } else { + snprintf(timebuf,99,"%d/%.2d/%.2d %.2d:%.2d",systemTime.wYear,systemTime.wMonth,systemTime.wDay,systemTime.wHour,systemTime.wMinute); + } + infos->fileModifDate=timebuf; + } else { + infos->fileModifDate="???"; + } +#endif + vFileDialogInternal.puFilterManager.prFillFileStyle(infos); prCompleteFileInfos(infos); @@ -1510,9 +1531,9 @@ namespace IGFD for (i = 0; i < n; i++) { struct dirent* ent = files[i]; - std::string where = path + std::string("/") + std::string(ent->d_name); + std::string where = path + std::string(PATH_SEP_STR) + std::string(ent->d_name); char fileType = 0; -#ifdef HAVE_DIRENT_TYPE +#if defined(HAVE_DIRENT_TYPE) || defined(_WIN32) if (ent->d_type != DT_UNKNOWN) { switch (ent->d_type) @@ -1522,6 +1543,9 @@ namespace IGFD case DT_DIR: fileType = 'd'; break; case DT_LNK: +#ifdef _WIN32 + fileType = 'f'; +#else DIR* dirTest = opendir(where.c_str()); if (dirTest == NULL) { @@ -1539,12 +1563,14 @@ namespace IGFD fileType = 'd'; closedir(dirTest); } +#endif break; } } else #endif // HAVE_DIRENT_TYPE { +#ifndef _WIN32 struct stat filestat; if (stat(where.c_str(), &filestat) == 0) { @@ -1557,11 +1583,12 @@ namespace IGFD fileType = 'f'; } } +#endif } auto fileNameExt = ent->d_name; - AddFile(vFileDialogInternal, path, fileNameExt, fileType); + AddFile(vFileDialogInternal, path, fileNameExt, fileType, ent); } for (i = 0; i < n; i++) @@ -1744,6 +1771,12 @@ namespace IGFD //time_t st_mtime; /* time of last modification - not sure out of ntfs */ //time_t st_ctime; /* time of last status change - not sure out of ntfs */ +#ifdef _WIN32 + if (vInfos->fileType != 'd') + { + vInfos->formatedFileSize = prFormatFileSize(vInfos->fileSize); + } +#else std::string fpn; if (vInfos->fileType == 'f' || vInfos->fileType == 'l' || vInfos->fileType == 'd') // file @@ -1778,6 +1811,7 @@ namespace IGFD vInfos->formatedFileSize = prFormatFileSize(vInfos->fileSize); vInfos->fileModifDate="???"; } +#endif } } diff --git a/extern/igfd/ImGuiFileDialog.h b/extern/igfd/ImGuiFileDialog.h index 5ab7f6c8..93db26e9 100644 --- a/extern/igfd/ImGuiFileDialog.h +++ b/extern/igfd/ImGuiFileDialog.h @@ -883,7 +883,7 @@ namespace IGFD void prRemoveFileNameInSelection(const std::string& vFileName); // selection : remove a file name void prAddFileNameInSelection(const std::string& vFileName, bool vSetLastSelectionFileName); // selection : add a file name void AddFile(const FileDialogInternal& vFileDialogInternal, - const std::string& vPath, const std::string& vFileName, const char& vFileType); // add file called by scandir + const std::string& vPath, const std::string& vFileName, const char& vFileType, void* ent); // add file called by scandir public: FileManager(); diff --git a/extern/igfd/dirent/dirent.h b/extern/igfd/dirent/dirent.h index 0549aa27..35d948a6 100644 --- a/extern/igfd/dirent/dirent.h +++ b/extern/igfd/dirent/dirent.h @@ -237,6 +237,10 @@ struct _wdirent { /* File name */ wchar_t d_name[PATH_MAX+1]; + + /* Windows extensions */ + size_t dwin_size; + FILETIME dwin_mtime; }; typedef struct _wdirent _wdirent; @@ -277,6 +281,10 @@ struct dirent { /* File name */ char d_name[PATH_MAX+1]; + + /* Windows extensions */ + size_t dwin_size; + FILETIME dwin_mtime; }; typedef struct dirent dirent; @@ -516,6 +524,9 @@ _wreaddir_r( entry->d_off = 0; entry->d_reclen = sizeof (struct _wdirent); + entry->dwin_size = ((size_t)datap->nFileSizeHigh<<32) | datap->nFileSizeLow; + entry->dwin_mtime = datap->ftLastWriteTime; + /* Set result address */ *result = entry; @@ -806,6 +817,9 @@ readdir_r( entry->d_off = 0; entry->d_reclen = sizeof (struct dirent); + entry->dwin_size = ((size_t)datap->nFileSizeHigh<<32) | datap->nFileSizeLow; + entry->dwin_mtime = datap->ftLastWriteTime; + } else { /* @@ -821,6 +835,9 @@ readdir_r( entry->d_ino = 0; entry->d_off = -1; entry->d_reclen = 0; + entry->dwin_size = 0; + entry->dwin_mtime.dwHighDateTime = 0; + entry->dwin_mtime.dwLowDateTime = 0; } From d4c136c525d91daff5351ec7201b474b8d9ed123 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 02:13:50 -0500 Subject: [PATCH 177/183] renderDX11: don't error on DXGI_STATUS_OCCLUDED --- src/gui/render/renderDX11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/render/renderDX11.cpp b/src/gui/render/renderDX11.cpp index 04d8dfb8..d3bd1306 100644 --- a/src/gui/render/renderDX11.cpp +++ b/src/gui/render/renderDX11.cpp @@ -349,7 +349,7 @@ void FurnaceGUIRenderDX11::present() { HRESULT result=swapchain->Present(1,0); if (result==DXGI_ERROR_DEVICE_REMOVED || result==DXGI_ERROR_DEVICE_RESET) { dead=true; - } else if (result!=S_OK) { + } else if (result!=S_OK && result!=DXGI_STATUS_OCCLUDED) { logE("DX11: present failed! %.8x",result); } } From 8da3f56de6e30c62d21ff3b49fdcebc23c2e8d5b Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 02:17:52 -0500 Subject: [PATCH 178/183] and of course. fix Windows, and Linux breaks. --- extern/igfd/ImGuiFileDialog.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/extern/igfd/ImGuiFileDialog.cpp b/extern/igfd/ImGuiFileDialog.cpp index b3d0212c..2ccc3e9c 100644 --- a/extern/igfd/ImGuiFileDialog.cpp +++ b/extern/igfd/ImGuiFileDialog.cpp @@ -1445,7 +1445,9 @@ namespace IGFD { auto infos = std::make_shared(); +#ifdef _WIN32 struct dirent* dent=(struct dirent*)ent; +#endif infos->filePath = vPath; infos->fileNameExt = vFileName; From 7eadc465c25ed031ff3f578c5c3c79f52b462cb8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 03:12:42 -0500 Subject: [PATCH 179/183] one more demo song by SuperJet Spade --- demos/arcade/Destiny_Islands_Irem_M92.fur | Bin 0 -> 118113 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 demos/arcade/Destiny_Islands_Irem_M92.fur diff --git a/demos/arcade/Destiny_Islands_Irem_M92.fur b/demos/arcade/Destiny_Islands_Irem_M92.fur new file mode 100644 index 0000000000000000000000000000000000000000..36d158ecfbbddc78b0a3037147656d41e8777928 GIT binary patch literal 118113 zcmeFZ4RjONwJVcmA4njyx7beFB)#t~2yI`|`>pQ*PH!RU z{rZmVkpA4)o~9!CNzP=Inj;`P;MiKKoGqjTd%oTfbo=`+Uo@FKpdd{zDAI zSOj-d!(-og{3?N-v|9YR=VHqsMq+u?ER4!vl~%^{&6{`(crn3;ZwiUcTbZTmPCN*Fl-%y9t5`$d|QuU z#}RyhKv#faixIRSh$0wApuGpf79sc^f(U}2BESkU%wWK`O;u!NL zjy;2*sSn2*2XHKe;2#k@a0bWjJ%?jE5&R5+WeCTX2_HMkaypGKQEV`e`1>N^Za|1?wO|8$2Qr*U)nf4cj! zB+A1O<-dHJD~C@dwD|riO_%-me;amee4btDtYnwB{QbrqY|C?hJ$c#ZcA%-fYtu${ zYsC9b2E>nL}vai8y6n*!CH>`hQ z=SK2wH#F~H5q~>dH*VO~{P*ZRBGUHI-=p3^PtQ)Vg_`|Ei=S)R!9KHoXY+>jTer3$ z>A7=Pj$MS&yo21@{2ap0HGS8nmKVOa39*L|r?^4f?nKPCusfeehzr;!cD;aFjJl+C zig?;pi=>h-C zfo8w8v3hySvxpGaz&_jjY_5;du#!7-Lyx*@!wWliHn(hJTi5SGjOQA#b80GmQ4yLx z+h5qYZNtW$mIds}KXnoNjg>i+4V%!^dJ)Y7a>I^|>vv7F`^=8!4O^bs+OlCw)z_R0 z*ri*yvVZfamMpZPsO%1a6 z>Yepy`8>BCar@j0TXUqo=&_s}_@dXQxY>o4&z7BNnz8?WD*ww58A&$eRs_-(nxAXV zH95Dmb|UG)u4kV?45P|hcA!<3t9fUxLwB|!?P5W$Ej!U#m~QBoJ^lRp%`H2~^)Ecz zoNG5C`5fx(+M-VK1wBcLDsN_^} zq~6{A#u21WUvN($WiS@yilC02O1XRU-QuRNEIw=Yz4y^f!(&fW)}w+y#LU=ZOLf>2 zyEbmz%09Z|h3BzvtelU1nuoF9vCai`lNh$aOz9et+A`ytR6*Sx46DHAl6AkwuoaKy zV;DPQ)r=wh>yP~_dW}zfcUANHZ7mN^)0>5{8_b9v!mGT08bAM$>1#!PDE}+zed|m9 zW@BI9iiAHBLF_ls;z!eX+4`M3rzxXCRdeSS)}daipbdFOk3vyS)XS|<4ch~N6o!=6(UoSH`n+W>a>5= z@INQ_H!aObYhShg*}LR0P%?LJ9Z~@|6;EGx8>g?}i|fB4_w6sayAS)49Lqi0{CxAa z=AD~1K5O}sHkqT1hGBD#c0LC7ayIwC}-|?LeK#K9T#Xwrraw`E?B2 zZ8S`g*!9H~fN7F>UtIqcN$V8J1!x-4*cV#(v=UyPn@(F>T3RcxCsyWWsAlf;MEQ>~ zDyJ}zzV@HSsG7pi{1-45O<`#N3m6YiVd%cZuzcC_`~Irs-+ZBY*ApAJPd7a8KaVio z?iv4igz09_{1Ud#u(TX0f6q=cmH%HsnPv<8S5T%IBmOHW(*r_&i9(>S#1FCD z#QN**y*shcc>D@|P_%RH*dPD+-y8Ip9etnd==)?x-zPizLfJ6`0waQ4{wxHu5#;jj zzGu+=-S_|9+yC$L|Mkb7Sh=dQ>p|?VCiUHkP=RGvVA%UVmkOjNZ>D0{`Y?H zD}`2_GsE#GU6{XSfn$!v%@sHV-Ddp$Mw9lytYHc8D>bob{MRFL*f7vmjloYRWvqY( zrnQpyz1T3ou~g|F_9(N3)UQl}^NOv`4f#odk6Fe_c8kS%lNS7z-`YT~(|n|8qI%Qf zb+WFB^9D>Mn_bq;P@B|s?UdqI${M7l7lU}_yvn~7^xbjv;TPG&lNJ|QFGV%iU~Ens zP&9q2hrj7jOmJ58JtcZRh=qRJfRWYqn;!YZn&^_!iwjuDXUOOlYq_!a!D!fb4Opxa z=oa?HPFNd)Z!T3%`89pvwTH$4EtlZ_&|P8?HzPgmcuH_#3oQWij0ID{ z#y}fEGuZwyOb$181{k4{yJec4EW_qBQYI0;dP-$h>UQTh=Sg5RYX23NaBf}+i` z(xJ{8QC}SfP;~o>pQmLS@?wF5ezMFVos!>+Mu}REV6@leXi#qnmX+S%r64i-IKvUg z6yPx#-giRBI~aYl+z~UqnvOaNXY|ndThNc|>h+C=k6@>&t6OQch`f9-nRM1V%cu)c zx~~{lYK>VJxUwcD6W0X;)%y}=!H2t!CJB`(Qtl* zk(SW72;}72_}G=AjOHo80LC^W^%0-s3ZLYAJ;cAXfYnkyzkIgTUj_6Ll~JoP;gxrIjDCOIQk%j zdr^`6Bt#t4Is$dEiBTC?Yg{h$<`%$Uhc5u$R@gCy16u&l+1q_!(tixSL@Yxv387F} z<0y2*R0q0;H2~&kvUxW}oV3;dg&Y8dJ~#^7|CCwC7Syr|i1$NziWCGnYOuqB&~i6h za`Zb~!YVjAKh#l`s6Ww91TM4YiY^~9bYKsi~(D|5!^^<#7a5h7t%+Ti^6<0d2#bwTq z8)U-9Bo_rvpT}N}k+ktzoSz(%RqwlDoZv%OEglnC70@v@`;WRqeYUw4e;Y=u<2#}E zR>0|vjmht-axm1hpvmPFXt9|wZDoiRZi~&rGXxX0m~ZNv@$u045dmO=RXU^wCo_uZ zUT4qrI;9n0k0wPf$(xKugJO47V#iC?dQ@-dmS{Ph;G|e_=k)*;*z4rtXwFV3ChhyK zr*MfUt&R6PO%}Rj52dW&NC0GfjPF`H`nwc3t znD5qbVs*&x+FIj)@)FuJ0%7JrP4!|YL%oDc2UCzQ!O)Bw;?eL0e}Fz5a_6Ti1Ok-~ zmK=(ThG@-`m^GNzIl%8CYzDZ%+p+?VhpuRn%n}*^P12WjyAJFvcgS%+3p@7O942}J zCCdQ&jY{CTSpi`-54N|J(P+h9tUv2=?_KG#qZa}uY!);LG*u@e?rsLW7mESlnwg0p z4DgEmfa|S3G~EGo`TDZC>5ZnW9@gCo#?bpM+P9McEqnNiqc7{;cOACd{Tj5?1Z=N% zXoV|R94!u)<2)*Y(*8cg=Jcd3bWEz{bQyJ2=ewZ9(guCETL=dY|~#A96*Me+1)X_Q=TBK=2W0ADGV zl#VCN|kkV zp~+Ptr%F8Ug1Ud!eCbM!8kKuFlD=K6I{!fvKItJsE_u&J&T0XJ{RL>Z6 zdFC`=LCF){D`;+oiqrL%{qA|Qqx_C{sGhA1zYnOMgnzDvhHv=|Oj$4xJ&tvYIB~VR z9}0rn8V0xsM;{=Qhv$U)%$lJ`J9+tmc?=!1$vo)7qhdhZRu+ zyUY*NeS(4HvTD=ZD=@5`0VqFlUjiPsJ=0^iT)M`?g&}rMh^WXC7j*B>H}Ozf(oVEO z0uR%Edm9O35A~kZ`r8!qLqeA7k`9LKS0LkGy}9?Wp>o1&{4oJNzB3P`NxN4dv|@huEQFZ|I3DT3a@0dSWi-8x-s8!JpyO zXfULZx9iqI{|M$E+#a?VVJz{8|CKmVl%0sa?T%&t%AMY z-T2Ub!hmd74;W#`IE$MI*fHYM&};o+*uf6Of=9n8FcCh3#8ZdSGKS!L3q z`;u_^s<~t~ zy#?hFfl=0ls`VVEH0nQvBD?>b{p9v=P%@<6Ij$WJ%mfLO_th?|!FPb+BLyOAU|=i2 zsn;vO+&m0vfINRqH@o|=fyTz~hjcpLoG=TPhWG*h?r5-)@6B|~@}3CVW?h~|IBx1K zgj~9ZNi-BxdrBJg8ljOog$^GRuDI>6W6R0ypq)zKpzjI)#2!ccIF#dC$y`6Sy_ z^^hNW)RbkEB=$0@+wAKfqF{!V}3L3)VPj105& zk;~f&q(-d$Si{g#vaWdSEof0>&11M6E_VG21eS*1SzAO(otv^fi=4_exF_iotjrbd z95(K^9thD6v;^+2hc($vSkku4{26q>)G=7G=XN;ovID)y1bRXyB;t?Lhpvgy27Jlh{|JOmaXtL5?{v-D2Q`hgH5a4+;0DEGXrR; z>GFNJQYV%~icM;29|1ktJ^b&n22 zitR`r+BFE+{^DQamI*_V{mvDdk&8B)0OVdbt|-Jj^G+aTFHrGyMN}yDnnPpzKg@=- z>SxdS9>Dy=%HixYe8dNPb&q)73?f-(o%ivF%<3r}>kqTh07nhV1Xr$4uYz#aJ%@wy zprC0zG0Z~$o2B#!RjRvu$8H4Ly<~4FOrF*gG_D+U3$|FBuc>A z?K`MnV(lKN+4&kEcvACnm-;eV!!IXaQ)o~eRYeEY*E;A%k5)1TE>ElMKko4LId!Whyi_b2psirAPJ6ns955-G2KaJdiu zj4~;epzdF38d4fio1p?!Hl zBB!Y4*NQ*`!9MV##ImZ(0Q+rr`648uP|^KK#13K~c6_WwxB&i>&yE5l0LZSXx}%on zsC8V!IiM}j!HdgLtN!@i-zklq3S4zM<-aS)QB;0Qb(Uiyl13(e|_;}6n8FU#PBMQ_lV${Pnhr2kn@hgeYe5@J0wfJOnAd+fmM;$YGn0@ zrAVy$ZQTIAmiLQ+-CETaI~3+CM{k4z_PlIKIMQm`hB%er}& z@=zanz~NdARba@J0No=u8ZjYyObjxvi}WyqEc^TyxxP}mrz5n3>aVM^zv z3RCeZtB$_Eh(2H{FO|so@0XosECsYC>?Djsfi@Gh1h^7)T!G)Z887qA#Vm?tZGyhX zU~+pUf9kmDfo!``cW+2I!XI9x$r5uq8Lgr(uGT%vUm+nSXnS>hze{^+$WJ{Kt=3Nt zJSg|6sXqSYXi9_!UACEnoW<0vGFl1zN@a>hBi7R4tx(YYT8cez5tuC0O>R>JoF_0) zPPb!qnp!`gD;vc#;rsH`NUwotC1zhX3jK{xm3i@?nz+<`FSH!#Q|gM2_dtnwwEL2n z32vezuTu@x8oq14Zj_5Ezdg!T^Ii51r@{5iZ3bW@4c=J7Rnt9$Bfhf$@F%v1iP!}= z>^owJ1?f19d21oO?Xk>C|F(XNqnWV7y1Fb2t~fA3e|@+iH8RVdc#5EF4V`LF#%Ca3 z&*=A{1t88JLcSLgI_@-?We6wW461hl05bwmH`r#@x%x8o`FiaTtXm>tf<^~#cXQTc zwpH`85;o=5d|{1lQ3o)`(R!Q!GcwrK>)Cx!jQ!I10C0;Q?cN~LIcg?jy{m?;<#MSo z6S2rvz+oMTG&QL~b7#Ko%9fR<|jvzz|#hTp-68a#@oH*-(kM<#p9~3^QgYc6z z5WGg?28h%O!st(-aIQQc3=5n!7eFG-Xb-8J>!L-t#)Hp*aX$el=H{?8(4miX^ z34?Mx4Rw`c;*-_d(c}_bv2ErFLrx{cev#3iYh3 zIixb7z7(!+>{LxhGojbFaOpDJT5%nql!gQAXqi{B>f;GtQVvG;7_X12bm)4IBT88J zcrFYVJFUfgT^62f6g>Ah=Q@J2oIVy!W2g8@g~vun#yi>LwAG7C+{R%DYbo)uMqX!@ z&#U0?I009Jp%LBelv?hlg6Cz$LaxI{_~=3#wQ^sAq2*f2gq@nhb*C_*1U8nKe+R>h z9mVY~npv7`F@$SPHtm9*Q`3l=)DnTv{X>wA4Eow0^)-xQA$tA_Z66u|n@M-{@vSP!+c?S?s4 zN3766h!t-oXsh>9gC%C@XbhU3GBrXIaE3wS0_Pz=#xw$$sikF8#I@?})OjJOYZC|@ z98^t!-%_%b?g-x3*nlG-cVyjJXHiR+Lc#WX`pEI`vUJKWRIXzTYgxM6Vp z2;nVe<{s)!(tOxtntj+(Zq=L@0yAX29Y*S6Ppyp#CdZSKX`Ln|fUA|U)UCM4cw)D? z{b_wQ1-ST4an_irI+HNR{?E*as;TLt4p81`*Gj|T2CTrt>1r7l?l?G1M(dr4J>982 zP`?)P3oIs#KA5Ei!5Kb{O^i8%Vqo=Y)z+vqVWCWF?yD+cwH%UUsCYKhI#b0*vNUdb z%O=jdT<1a^zw?xMs@!`%J`xH!9FZdroPHwa= zI}CcRo1jVdm92Pi#I&l%zh(l+3_*EbPc6G85sneLzKoo|5CB|lRLIj-h(;n444iw~ z6LvGuwCZCF9;y1Fm5meLU?M;B7|)QQVn5q~Qwd$Z(y1LX#?NZ)-zOmaMc5+g*3!T{ z1ovlIH3rbC#*o*mZ9yKhJ~(Lt6NS|_ih`*87OcIn z6vhVYhBB=^e#iD=&;&T$ls_6Cu>a&3h1RPtxxxVmlzO zrR`qfT(u@gcB0u;;)!7wK|zhKje?n+r+wN(m2;`rPfLQj_M8Af+4t1Sh*xhv%Eog3 zcsCM-NLJ``zsO0A+}cw&u%@sGX!Nc&C6|N#AqiUt>vHlZKiT0xq7T*QxV(H6y_rIt z{<%FR1OGgyFuNT7#4#m05vnVPg(2DgXE?cA)J-qv8dk{uiFOD4^J0I7argH3FOK{$ zx?9pyYmz1hx8lUZYW(sOeqy*)mE%IR+}0K(W8Y^>e15jaAWNd~{dvRj19d|Tzt~n3 zmEc(3D^~7k#OSa5*ksUI)*frGVFm7*EFUhymh9yTPj|(yODz-C<*ZYAAu99^S*p2#e^GcMH{NoLDT@W(Q^ISZB}}YBYMtNY*XGgTQtj|%L$CGR8F(&DRL`MotDLhm zrB=tmdy4ADg)vc$P{LDNEX{doPhVFh|BdmXLmK*%|CvWbk{*oxijL!_WfD98u6o zu>t=3vN0%p+q+0Dt@w=4fcI~JUOn=`oUEw2;%%fpt2LAz)=UsQZY{a~;xSa(&U zRjRNTB2=Z)3*2wKNx-n`I0W&!hA0)D$K*Ex{h@RG%DT@f(O+T; zdF3_Suf~Mr5A(iF!_^u;F@IB5AWmHEF&znO4w#qod6&#Kz(dc6sfX54J+sVngY$ZS z3WDI$a^^O{)bk_8-m9A46LV>t_@)`d>3P=BBV9jvLlTcDl>Cmp>gf-Puwc==?E?0+ zP?T2;Kg3`Ekuvzp-b+QrolED>uXtn?O;dnWF#jI`5l);5e8%G<#f6mo@32L)>R8sp zpL<97z<)%NF8K{+R^4Hg?=!O0ym`9&mPUrpVjVrgfinZ?1m@Xk(0<2IN0^tQJxTe0 z^#C9QtKpp}K3Ap^py(m`DvQCq2TjC4=o1pi@(-o^5WjWsQeNcJhr&tXWuus0g;Pb_ zEo#0%NK)jN*vpbAeWLtWz$IC_&+gqp84UA{`b6Ll13-+t!@N0QpV!FGm=}3?p24Hr zHIFlwkUt#={&28;@cmw|S-Nkjx$+UJSeefxA1-Ns1F6I~R0>5i{5S$aOSL=dV}^ZN z!f5(m3iKzUj>Gb^w9Z2Tf7PxdLhpE3^EC)*JkR<8P(N_6^KL*YF>{gYO$A(jhc3H> zf2)f6nwc=n{~G8Ce0ZBsK)5F-C6Ix(zY?iev~=I2G|m^l*$cXUG$dRKQ@q}@eEEiX z^C}eZw1GTR3qO&F!6RMdk+l8I0saZiVDW@`k_@AyOs_u}_rkX}j&PgrA#B>XKrHx%K%ZD1%i+vj`w6%~kwJ^P8C*_Z_V zZ(NdAISd@yoBdlO@;zkE{!`@SZxb}yMq1P%KWaw)Ip)$LGf;)P%Xu~D-WeE3=(PIV zfP18}a?w)cD|3BzM)zhIfPXyWq27O*1HGC?a^52VJW-|bvxQfnsD5yEuva(ugWuco zyN;8%6s}9lvZwU(y18u6{A6))k+_v6-X<~Aah+_O5Q7jqtT7};bVu6~Yh^Bxnyn>7Zh=E*o3OGlm1&aMK*EWFq2$*06oJ^p|TGU)C8+O@?uG=KUBQ zJhSX3*0ly$^yc2WBfEoQf263(P<*^kic~1E!0wB63g#(0GzK|Q(1bpAV6_At6`B=& zMd#~gNhG}5a}9ic!suGFgcE|~k;Onsy>8));n#=|v4g1h7`-LN=s$%!UxR+_PkF-6 zI6qm(hQ9$~MMjsjRQeeRXs!f;$)S~4%v;1&cDCV-@AL8myuy`1D^ccog@IKIx zLMMg>9@Zc9P)2b($z}}Ib>HspQB~SFZC{6zf3dBAgGJTp`Q_l zKU4_u%m8_gpJkwY-&|^*m$SAs{y&C$FAZK2&I-I7+EGes5EnlHxCay(Ko`(|@)HU6#@R*ssuwHGrE5gR zV151L$iUg2$d6C(=J~Busf;h1Rk?IKF78A78Yj>G@(lUo55l}q^l*h^=KM<3c{GR* z{!8L=&j}GG?|cwZK)xB6A2C*%zedS8<^MzEh(9ZfLnrYd+_2g}g9k`9Pzd2eEFr-+ z!YDfBGuTdg=j{f0IP1_}{!I0<+4hbz*h3X?{?bwo=+6!If=?8{o=bX4HOREiCpK@&ePh3$w+C|#s%NH#I@Cjd)eGRCC2hI*&&i<^Yw-*We{hDQu7(L5M zk#BJD>|jpxf02+r2;hFC5dTR7&4sAdq4>+M4uYKyUWZFCEC=A<2~o?@X}ss(qEm&< zDw(E{qch{*p#vs6Zi-=02;u`T)zma`-G^77sc6uSLhTi#!pQ!0aM*JIOD07eJLMyL89X+hs{>I&a9tz_`!fC zSYy$s27enMYW!=1LhPDkvQeqY0!#3{1Q3>3Dak9L{j?ya&S}zKaxR8U6ecWlT%I@R zvSRFryVfcM$D@jAF>*E@P1+iCj3ew`QQc$?jSA#u-uHe(XaR+%OB|kI$TT(|O;9F} z=6qx`n_YTlQDjyOCr;Vi6@a~fEphnXOV4q0CgIU|w`e2HWSRH3q z!wHFejE(gxgh7&vPHqZKM1cj=M_rENeS)bCFm}27m}1ba(`16TP|%RcY86h6lSbo;p{xGXXQBP?(X4iMIF`FJiSkpoxe&^!^$3y zUz0B3$hDbcsbc4`u&Ie*@_v<$DWJHxksH?Zjg_FV5`Vt}Nh>{>Ah|c4u`r6!LYsFN z-6b4#OSCR=b0D}cX<94exj^1o zEiwY%O2=SE@3LR<_K%QmhRfOH+Z;J#-^w-B_jz=#M-ubksFk&~fjld0gWf=!)tiA< zSmOYD-P#$~W2!f>28rHWOkCzX+Eow=T_|`*v7-2r8jv@dgrmsQhoW1Mr40b-9jpP9 z7j-T;@gv6>)E&3ALp2DkW-*P-exVuxOk-!GxPX%YG8DQIhBA++yH+F|Q? z2~aWJUUwt#CTr^TGt)7DvuVnKiQ?aoED|Os0&cXap{qe&Q4}5o!42E_%n&?4#nb~e zAl|MWYIh;gb!SaddujHtEK;|KxJO-xq7V=nKU-7MN2+>bm7qZxgTt3KQ0vR`y-uO~49 zX(r%GZ8aF}8*&Mt09DdnQ=q-XKoEGGO2R;UO|8jV*p}8mUd?pJ73L`mBv#CmYg_}glx4#BW`iKq(ji?Ylvs&}mxbSzh3JT-u3I4cg08BivmT3bt3;Zz^j&l<`fP!f z#Bk;@I+RJ9jsYn&fn6k91qfnlt<%yyBKX~^8^2X-qTn2FpUuQ1_Y=iiIhYoy_ay3o zb+OefS()R}VOel#<$(#qX`b$#6MT2P7)2mOii`gFf`WYE6dty+@(KO=OgG=P7(|`M z)*eoMvO6Bibl^wTvO3i&)>K}Ql_lC?A*RXhyHXufN)H&3=joV`^MOW1#_>@wT=YI> zGi_2$_7gL%NA*uxxlp=ijY`wQW#-`;8-410CbG_h+;E_8RH(Ihqy^PfJVkDC`MMmw ziA->aesw$;+2TU(OBB3WF`VJDdpCQcDqmvko(Mn2LC6b1|NiqR#?@bj#z!e$N7zTi zvZ4_wV=}$1GM-G=W^Nql>dBQBVA7l)7HG6Y9XFXJNan=Q&bPpH6Y5K>SlnQ^#R#DI zRVm!q9cZ#JVE+)VXvaZNTnxP7x>3JD$JgS{kMge2f)!9wzX~wZLU%(j9*y5$^CX8! zd@SmDOO;&ARxW-jB{tejjieopms8!Nu>5&Kj$p{Nq?`M?&NJ#{qEWMxyfCs}w(5}(wnp|?}W zv@Kp6N84iQ@JbgOA2yXcL>f<_xXI%afz5O*Gg4+XkA>GL$nAE<+8;WPLOpaZRnq`1 z$H(yECtcM5tzlj=IZlrNP-2z@O~SR;n)g-;ET*x}lyES)*y!g`{2mOc;*(9<5wv+P zZN+7Ymx_%E-Ck$+uT=tBaA;%opH&neoLk-iJciFeRFs3r)1fCdO%-0k+q4SgyopL+VaVvT7A z>rrjLQLt_$=K-7|l|&SBDd#BsO(w!3>lsyWT?Lx!s%{I14`VhR^4e_y@RjB%w;}j> zUy5viussT^h0-rU3f>ph4B97Pgm=AiwH($mhpf6gGD z|CIi>zp5fvsE|b%9a}iWPk%Z`4*psa0O+fw(c(oN7_UhbZq+eJA_YCM_|FfGlPs0N z8yJF1L?ZI-UhAtu6f-%;lXt>_#3cfD15mlWg4OQREWeL&aCzGI*Pt_gt}Rw(A%9X> zQdYd!Mk@!e0T@)sY7j4;v7`BIFxFga^TeOaklVHTJf5sF-$WI$i098LIYb~JXlE=szK zQS5AJGI}b}h=SZQD{Px-EQm2tTc;92hXL?2%`z-(q5<@btGw|e0Z)3fHLjQH6^4t} zG~xa&wsoGEaP)js0)U{>{s#WSnaxyOE!OV4u^1hwip^=H<&Nqh9g z&X|s6O*B?4#52Dejfp0wH4d=-*OMz68CY%sz;Dnu)yG0f_wgu{bR6aBZB-l>5+WT` zok@p&ugm(lBa1%nHSR_W5Dfj%Q1AZa!9LaGwsC^V@+9E#Tgc+!YhA=16vIqf>q9B> zcTpx@$l(&&90=48Aaz1Hlpq-A%Y(a%tNC^g@Ur!2*q1umhqkN|QPy$WJ43lGZ#;SW2<+VRGr61y%wW-~y(zPhl`uvF3uJ2fGP? zNlV<6Ni!Bomg$<<%9|%VG$I_Vt$OYF2rD0}S&L&sStV?hBpSls7{7 zEk$p^bS*mS6gn05r08+AvMc{1k@3p>SSXs^O9dyQvghKH)r=wQa-4W*h$$;`IkjU6 z`xrFeEat=}hEE^sOK_*sQDg@kZ{K2}8M4NSWoY?+ZGt!4IyjmpjW<2IMpKi8=7H2E zM}0|jIBHB}sx>g9EW`=Jr%;$f$>J7cs(sC=jAW}OoClNEI2`IP!PAP(#WjVLlg-8E z$8FWHGaX?fPhUVENlQr+B^c6S{$Pp(dp#bNyXnEw_+%nD*HVM0N~$fPE)?z1d2Af* zF6a$V-BMl6sWo6pqqP|+6BgOs_^yKCYT2wl1uw^~(Au9-{*DVqX{B=^%@jL5XySF$ zps-TM$8NRZLKMZ?HrZ%LrtcEaoTgH;x%tSgAYlla} zv~{Z!9iRcnGm6W$lC}a}YYKhWW!36MW`(PsJL&di^D+f%(H!!0kNDY7W3ix0sq7Hi zYC{XHUqKS-U=lm1cUw##h>R2HUV&C{j;rQwB@bzIoeBe?_a>qCJVM8|214-$SG99SFgE$JGXF3TbZu^|Ns4e zvj;kE_+j#@O}Sh{ewuj7?Rt_u6T_a zir=<@;7DXfSCc0md)y!p-VrK(ziqZ80WV?9B(%->7~LPPXYhgD9&&cqg8?tJnmA1y zpd*o*o6NZPeOyWxSmZI-eZ)A}FzzQT1Fc~OMjjI4$tFBOYi-RWzj zSmNmt3BK>7+iZF}Oc=t}m6lFITnlicSReGaCJsp$|FD7?AqrP|d~FCc~ z;Yu#nhHJ(+&pc?`y9&A;e5%dF@m)=nc+kWni{N=i6Ahb4H+LfM#|#5M?ZQO4t8i_Y z0e<8JQr{hDj3jIN6!}fjb4MDzWPNogm_Umv@j7UjYw#qhC8y`a?yePF&#RJWn5dz= zry~utCh?%KJ0$Z)A2hq3_F>o>+&sUJYcpu9OJ&DtS$h*>JpR0hznnS|5Ay_TmYn#LNV6ZmSahz*33m8@OBrxm571F zIX56siySu-PcZ~P1Z@($Qls-tB!cKz4&7}rs~5WWc~p}_XWu&`une3 zk>fDaj@~AbbutT!HFK{A*3z;SRkyb#Vz*UzompxeDm&vZAJA0U%eb#}LLg5~C zD(igqamIwjRG4(#_B)19_{H_i5UOu7P?JN*on&mc=hUb3nf7{g_OQTZpFRS)7qyz< z;sUxtSAAXvv_i^@dSw5qq{EG>+=3#;fKP9Sd)+?mO@>QMiR4Lmz*SR^=w64TS&(qK z5i80TbP~*+$-*Xpg4sHd)Qu%TNA;CjrkGO$C^|2eoJ55Sd`aIKF4vSXYmEaDcB4*! z`2abq-G){YEhA?ca*Evq$fqaF$YiIqFmF<5Ds(KM zkUQ{vpvmgU4ArA3;GC|RJ6yM2$kRK(DhN0AA&(adIN7^OK-7|rG(9~>;$OQ}{^Yw1II6DssW?ai2q=7kRNR#OO3)TD@u~Y)|$Bos%n#FWp{c)XbZ?JRifUmwBZg_m;T! zFib7hCDoLRE6Z@za}5Z1xXej<^hHnEHGx*32?mo`ao>&e-AM*}E9s4OM}g2aCZ%qO z!J9f4c07uQNUE8pi&wC(t)pUsb>0W-Fql{jj8|;yxO7iUmESNYm6}7)GwfV9KYgI# z$tjys^XgcP&tyj8bEj=e!o;hmPizwSls2pGS8AG&Q*CC%AXZ&vKzy{Mf5LB_vMJM| zyTn>k?U|HLCES!)9bZwl4%w7|k!+n}_bom}oot4}TsK3bwS zSGYBiEeJa<^!Md#N)r`DF^Z?pG-L5-@j=hk#V8gnHfJ4!9ZeK-LBccKD7hX;e%HxM zq;dFuV@grvX}B?@sG%+YP=R#ShR`2J#KO} zHVB>x{(?$a%2;pKH_Z6nP4J-+wEMAcUwT9cU6(J6qyKOqqXs?KQ7l35l!7ynJ?<6A z1Vc7utk%%u2EGnwadoW)FqrTjI!P9G6^$|dk|5W*kaj8SRM;2V=9&{w0QiE{IQjW zxDY>6V~`gDK8j9|3WCc<5p>?~hD|Q3X)6r~lcuN1J{pfWe}SxTWXEXkStDU_wU-U_ zm*LRA#VM{Vy~5DNT&>F?tM&^LoKuuN-WM%yG|{lEkuX{E#~7QH-fFe3K;!^{!U2g> zX@;*w8&58#$Tcwr%XsN{N@A*K4y;8RCjqCmKg~c!qK>8xCFuJtGm@r8??-4RrI^{7 z-pXYAqOq8cscFQZ4WQ_^VGtDJqk2%g7MEix(h>X9CJcGmk)4qQleEI-&*6*$iBKBhteSIZfO)A=$vuaK<|*@uNqR;$ep zW=zInu?Yp9mQ2X6GwOoZGgIfmcWckKp{U403*M({a^DFg0g+HzfsX1rk!$I@@T};G;WaY5JBbeP-y#gM z((#2o7;zzcuv0mJ#7o@Q3og5#4r(tFSZy$9jNOfu_&J1;532Y0hEt;fKHw>5Fuu(!26HFgH^?$SX z?$J?PXTIpJYRR-7-L~$0gfc>MBqn+z%jNF76{wKNJ4<)2U53MIFrFrKT2Yf*hpPfEjbh0sH^VR z&Y5-3x@X<9?jPsRTd|2((_OV|*WTav{T_Q)Z}!P6$Gcm*j{N-bA{g5_>&<=Ht^bvL z1Dh63UOm@linknlxMW*VHgG9FM90YsKP)*g(3bw=1D##Rt#ohUA6kL2>Fe0C2BW~6-%U^L06O?cS6kmFPYnLH?`Uz!W4Mj$&ESu> zRk!SK-nO3n*ha>yPoBHHHs^=k=Z@W*gF5aQXu0|t;K8oezTERQMaA?$c6xE~4?s;@ z9K815nm_G4M<3k)vv*xh^^eoG632aZ+jYng1Z+kCYEcgE8~FKpcCh-;vpvMkuADU+ zs(iiQ?e6Os*pj*ISn>W9Tvr$JwPyNKw*CYJz?ROOlAjcwIQzRUb7v2E3RVNHPiIT3 zT9V`O`E}{$O;FAFUQ3QU^8?km&<9kC46D0f^#9;wSJ&SWovl7yt8FDFNU|5U4x&G#1FZZo16t^V zH8bD-W&q{~Ig?Iy`~Y9QKn^%ROeY6AQhW#FIp)5MXOlxdnY)w6PjO%SI@s6&h?-9a z&tLs^z$X>4tLM!yn+`e6&jbCFWN^TB3V(~>|DY{}eKE9oJ|MM@t{o4Qk$N%Xb_z%;6OE*&k#QV>7fS!HqkLhL~W{}u+FVWl9HP>$b zMX&Dwd8zYo+goj)o$aKHQ~#w$Oi#(?1bSZz+jgjWzv);ZAKS1l-QMycC_6As&b{Hh zKAD}}-uvQ>10VEk%Py{}s(y?;a=dg~PElue{(Z&7n!+Qm_Z}R|-nL?E_VLm+rnA2G zAFf|hTl`*YT6T6DePQD^)5oSae{DY3w~0M>KiLZ!SGbIGfv9v#$F$&%%=ODcE-CwN=L?rx zE)*W`YJZ%x6s9}dnInI>e)Ol@@w965rsATSs_s)Q#Sc_9!)`UDg>6MSxQAKjtSLO- z+I`&oTs*Dh;WXQqz38{cdy)CXzn@#Vlj!X3_@OzC`OQy?fS)St`o-l8h(53!5S@fo zbs9?lyQ*~4v63w>UV#;4|N4hsb8&a>%KO%RG&p!_C%6c5U+W%7-?@PsrEm7ajy&n> z2G7mjpYh|O?&H3;!t}?oTRv^Wt@tPqdnfu%{Oi?I8>^b%>1|$%VIk}5y(_Bh8w$-` zC)=xwUO0cQHJknLcq^Xme(Pc1zg#w_tv}M5+tPhs(ucJn)3?+o@NMYp07*FbhFdib@gUA;G+?FQ7jA-ind`N2~gvs;d5tjlSA z{ljye=8T=ih2%{3!OLkrbIYm0oHw5^cm27?my@@yD?Nwq+S;>vGA##fc&F93c5789 zK!&sp&3$bg6mV%i;I#9YffriWiWfHKJ_{fF3g7rKeIXab-7BygQ%-lzyFD+S+5mYx z^Iji$`NdQ4NUZeH*D_44U-rUM2lHTUFe`3uEgbA#3+_Dj4dyZ#Ps_pJWBYwiv#-1B zW^XZZYRf?GN5Ab^TLq$d^I*qAeMP^3jR+2W3X*d5!A}P^}>gT@al#AYqoTqc=r@6?!~PqI`(hHJ9Dy+l~tKD z?>%`gr?~jQyE8dC*+fsq50X0sRp0Y5(e^l;p}8x)@Pl4oaffGM^rt`wpDIj0FbMFt z!`Bq=N{57;)7*vZ?1{m_?#Z3Zp={^#>v|7d=zboIAOld86@qA5yy1?spv9WTym6p2 zd!7yV`m^hx zQ$Ri%-B7*t!+{*&HMW|}pCAv^xFGw69xk zl(cqVxkkRV|HP4VKLJscxLo*NtNE9m>4h)0u_p$eLtw`G;MBU3t(Iqrbk4H;XiL{N z+}ue3-;};Bcijg)zAJr4b8>nY?M2P+448ZFFQ$7B_T*=GwdC}cZDW4Ju5316Io_U~ zmQTNm&4=-!_4f5`Et8$CIT??wZ~m}1w^i(RbFp_`%uSZG`~jdeUC>b#UGG zVtnDdZ`x+ptif$7$QOdoUGGh=>d8ra@BGyZ#cLln!@fH`UAe6*oD0{xI<|HlJ#gif zLi4|#Dk*CHZ4c3T;70M|>zaF;kFC%CmCJXvbHxMT;p$C#xR}GW@0MvG4=#_xBzG5;?b7LH61_B_I=RPnVXBjwBnOj;Hk&K!*#a$wX2si z*QfpZD3RWr?aTgs+eW%$=XwOUoQB@*JKMhPp{}kj`exVB$FM0_w4(N0&i$+py^~(e zc71r5NNIg4-PRaFT zL$b3kCw1_A-+;-oZp+O#o;$X+xVQ`QL38grnZ+fhYp`k88-*DkcAhG3TX`?kSs$<2 zn%jM|gXrD3!AyJ%I0vRz>cwT}PM!sK(MRW6d)6Jg?*-W92&kh!_q+g>tXABXa>~5r zJ;+(FcbW^$*)O!=l&fH0GViRe@csMo^eS^s;nuCN;g;`?3$>&7nvuOQ;~_X%QVO)J z`xI8)!U5bA2!tC>j8^-8KLF4E>gbCX2+&%dHxFjkwDfj#oft@d$85fNVQYFJ2#~Nq z3OGXRLpg=!Lf_764}^l9<%7UwtusIAgVj(ww?HERA#T`OT{#IhvZTlWL2b*{gJ6g_ zkOYXpB%VKH-umr-3@jeF}-)LFuCq4r^QSHwT4?$ z&9$TM(Ss1h3sY{Mf}+=C{s1a%0G;3_d+xHY6%G25J~rRtLWb|TnXY7IJ?eYj++zkW z+s`-p`eu5Hp$32U$|2AP&v&)vd7HXww`M%{-}%mRndxSp)aop zJY3Cf#dPy;&eQKT=Nwwm^5vEEb>`;xb9wM^rP1y9z#GM^?_%z*!CyBY+h{&lwC;&x zg>8R(vb($c=h+9&mevjY)x*_UL-wX0Y5CZuRd@H;DEcf)e?2X?a4Pj< zv|+`woo4n;X7Tu;pA=;uIrrv2_GF{8YnTf^%*`Hrcd%opY48HuywKP7y+YKw;=b(e z<7wNfe{nRM1P|8*(8U4lt*=HcAiaq*eMP7CKYZZIDI%Rb^6$s~wh&woY29tV96X9& zIJEI+=T7#dRp-`TJzA1_rKh{31a$D0!9(}4an!ypV`ouXb;_rg;TPc7n#ryyUbCey zlkUuAujCy43EP@+FSC%-mXrH>=h1sl9NJn`-2BUr=^k4=ySt~P)zr%`c5vy(|CXp) zJRldfRyUh-Uq9EDU0ict^?|_?pLXm74_8liU-yaM_jVQ+KVEd?o!&NB+f@Y1F3*8% z_`&hKtw2E?t-}9$Dkp7y_B&@cAm5to7kfMQ<0I|gS)biKco?>BG&iTW_||M~`TYP$ z{|DMm?Psr^$k?B4?(S(ma&olzh4X{Y-+SborRs&wBUjGSpKQG^W$>+ks%kz7#)Z^{ zRx@gb+A-&cL@#l^Z?UZ;yX4^D@7hat(!HkY- zT)on>@`prUZ_b)^M{!A-@3EZcE@#3*->$(mC9dEK=OoVQd!M}7XWlZoW>fL{b)WXY z77{0FpvmCP@)e${-tz9bK9tY4nsIMQ_5PH>Uh==g_<%fpYCqnHe3?Hua<*+}bq+it zqN`(nQFf>AZ?j>#ti1Q+;IXY$@AedTp?7=I_XDfaYBnvtv331x=X~uV%=Z%zZs3a` z=)>$U17`oom6iDQUh@&~pRI-J*PNtq;CP@KcAG2w>#m9e2Zx-ksf%aR{|P?$wuJB< zym>ZRN+iFTJd%j=*JmNwn%7nX+P;!BoFsJ#IQGBSlm3wJBzyt2!Z&{kR<3u?`C29c zQTskR*ZxpjRr?Q;#RwQ87QtDNJbpF_p%1K2Cwr0v)u*P>R=C2smdPVsz2pEu;pFkt zY7DfaIpf)!_J`mqW?#y;MHl>MvMm|Ub|p{sE!~uC1jw$i;63@%KSDnzKlxt{_=*o` zfHn*&Ff{es#xA>=bWwbJ{FRUb@794Cpzh(T|BnL*g#Y~NU;hRg_}6Rv>>_YvP;L6! ze+D_-dbtNEc=P_WU#9;F`1NMa>`Gf>ZaekX>C86hg%6i!npd>Hn)d#0Ud~wKd#*2= zEnp5jfj#8C&JEQ+<~r_e8O_^C9%}iZXJc`C^?^@%kDiaODBhX-%Yp18omKA~X!}87 z?)rnh_ou-WXf3(Fs@eS9@#gLm_OwlFs^mpkdJLy+!z-$MFCN{t-Zb0S*^_;uw`b$OytIBBcO04jZE)azAjLMI zwbj+&Dj)3K`uKYCxY?IpQdG35q$sUq%io^(T|0BQy6W9tbM~80Ts_|W+vC8&r2X>T z%KKmvt#}B6$BJ!*U=#guOLyPP>;9<_ut3)brsU&|=UboQ8TZE5bsW*ZoyF6BIy@%Z}gJZ$dn*w1!f&)CwJUfBG? zOSTsldYTVET-4qDL0{&&F7(Fo>%D1ZMa{m>=FF`SO30782Ajc*`P!+p0}Ce>x{t5r zPLbD}Pn>J3VLPEcpPnKXP+NER8?^_ncKo=6K+oU5p{RsyGt(XS7rr?7I{@$*=yiw? zMX$h30k;&a-hz((qzX0nz1Me&?R@WpzH?CGLyjiS`f_USYyAk^W9?8O_+Gf$gVGKj zyLZLbhdb)txor0Ry0?T_u`;Xoz0Q_X#VuEEo*y{b)%@<2w3dNtmfBi%0Pi}R(_imCi(og>mglz>9T?30JMbA@Id?Lcot|?a)MGvE_iif8 zsKOt#Zd-TajmOtluRza%{<>unrJZQa?Re}3-^mUWR88N*nd?rRBYN(AxXZlNDK|d{ zD^z_yugchR{^|#`Xe*`{lV)-@SUG>k6c*me4zf0X=teuxAsPoY0{kqx2&3sQn?Z1~bqRJ>-EwpZVY3 zfhkqWT+UeEMpy`7Pcp&8bTy}JV__F+zc+{J`#m7*`?`H?g^-fE`p&^*h48TAE^ySq z-n$TVdf4_Kw1HyPR{Yz}_IppZnrn)PuItTRU9eI>8ry$wb2pIxxofIgPA$6v*0A2> z3^srD<7TMSplI7rz3g0jvZ!e%2Nz*!(3gkUBWI7Ko1g7kH~Lud){>3uyN<#Jp2xP9 zRBst9t%4=5eMvI>@Uv}IzS8O{KyK~sr`FCa?8QGE5S>y`&0p= zm1kWWGoLVhna}>wQd@&8qbVz+&_NXY6+5oK1NY^K6PoCt0#q2`v`S2jo9%Xzk4BGP2&R z_J0vaan0a8%Nk8Qs`Q|8E`cnU5~KRCYMsCa;jZ;cjz(0D^ek4ZkvD0V_lZr`89YTS zT~evjDn;E=G|V(GQexR|Lhu+UQ=N~ZsVJooHvFhm&N~_irYsi6fu*oIKas`n$d9_l zHT>+{b1$Qrc2D6fr)F7`ld0fm9)ui@aMj7?xLMDt3Co{b*T~ zoR$;tjk&O@Cl1Ld%PTb5ER`4wsQS1P3u_eVX!4YobBx3yg5fix`Dc)I z^)76uVrt?oMTv|@&~1NMc6)b-l&O)a_liiF3aCbSBo>Adl-1;MH%UT0i&31hhN*r{ z{bM~#P@w?25mv&(;dthmkZSYZE!hcy-|Q7xJ@krV%!k7x&~&0gEsKiC+@ep*qhKN;eX|u$a^DzG5bts^T9h0R_U)`tRc*W=-E6j3RA`1(ekck>vojnN3Y z1?}Yd^nkkLACExOHR=n$N@VR5G0j8MJ*<6xNL9mOe<+I3;@!NvUKAR6m{2hN0@3kd zQgm?nuPVBKIvgGjsDyqxLeNin;gv4DW3$NNrJ+b{K0K|&GzyhV<@J(O&+`Q02zDu& zcqN`CdD!tlaC$Brn+_=&8jBdjJ#LPs8R2e8bXhJ!fBOBB2+j+?79Ad%ASjm5 zsj=}H7rz_FVsnwHuzx=6NBP5%X>EsBgkMYF7kNH^-0zQsV#A7RXtcMYKyXW5j)qtL z;B=H2(rBTQMOIy(f(PUGj}o_(u)4fS5E;(&pd{@=*70z}9}0!7daAb9RmVS)!a>Bk zWuQcvJehc+b{Xr`h=s&_8d8b)V(GQ`r1eQDs;vx8Y9?uK{MC8uT#O!wBO#^9wVC0( z6(qwdNDE(#jX*#^Huut%{FRBtuMs2 zIea&t+)2oeJaW5Qr^`(4AuTp)b9e;~YsgxyqCstcZIWi4e71p@MBH}7z2QfQ$8hm;Gd9!Z1) zaqM`CXGF2U1H&6JRyl2WJ{F2{$b%3^y`5zx-GpX+Wqw>u^$0Lrtx>ho8vh&uR79D- z1i{VAOOn*o);NJl*{aL8i&&H~#J3Xe}1 zAp@z7CP9GP<}08H@YY1?dFxm>q9DOat_?3|<9kIHV>zrJ(v>WaAb3~GbrdhootYm| z6CqjGAUa8Pf~(TQOQKz?n^F@)p-4=l5tk`vQ7QEvvd(JEsW&1iUT0IC0Yfs&H6QB; zDbSgAI95D=MGSPON8~8Qgl_K5 zA5(^)?RppqkHRU-MO#yo$a4rroBmmNKBkaxhqLy{dn9RjZ6a=mIW}eR3f)^`!@u zz7-pS`wq)!RTF1(@WO*aInOb6Jre2nPlaPD{8~d=z4R1R07#LEH={(>4iOVn)P~Eg z-;DVKN;sgasczop=E}Y9Cg^-@Rp&=y{h*(wGW|!b5Y=?GPm}w$A(r9;7v4M=8`{)#2U4BBUbQOnt`C z?O4S4TqU#=#>qNYySXN4y9=RjqGaB9_!2=88&}AA^Y!eAVL5~7%(-yTyO${=rLxVE z)xPExbuOUkab9xR@iGVFW_L6aymMY&8rSBMA~K=dMFu7rEM{YSR;p zUA2F$khO$0q#siJ69gTv*QBG)r!mmP&5Dq{=k_i)`sgV{uGK^AuD-fq- zAtOMuI9*0dXU4-bcCCVA1Y~*?!&VCJMjj_ZVfl6_f)cXV2@hytpGZ?3GS0F`#uNez z4>l6eB?Ph`9v=3`!YbjRwD_G~xAZhTb`c7z`Pj7I9|}hZ91Ex^6@t*@#Dd2reiI8M zWOwF_p0Wl48#R0_fRF|`m?6pC_%2D<=ayJ%J`#?7qM}5UWC+nB?<1RBihr?*9iPzs z26|dxpwQ6B{NeW@(S>7iC#7hs%7yy7CCMvE914%jkAwqIIw3{THLrBH*F}>;Bg0bT zFn397y#7`!YQ)RhBbu(og$5e4S&qi~dbf8sizr=<4aq1Lg5W4{vS52kbl!kys%ToQ zLtXB6K^W2Tl6-Aw8iHdSTNPub$y2|l-Yr6=#*{if9f^#=nH5#hB;g*fheMpmd!1i| zLqWls>WTddf*l@GeJAYL7L}eQh8O zrv(VFP|w@pB}aL~UkoYpP}J$FF1y9MHkXT1Ba|q#9vcd)W09ynqUsup-TT}$%@KUP zM1|g0;dOv~-cT&OV4u?UL?oy3J*sk4Q2QZ4JuAUm6s!u*B))4NIXBG z5sgcJBc)LiC2L4ql0P4ZqEe$2bx!7t<@HUlMFdpM95TiO>U3D~`(rU#r0%GYc#&Z6 zDv7f~@o1z7`4HDMq^Q)A;-3+a_d7vL#(!xNHbcNfFx*=m475+TWusX zfg1BCB67J`Y{WX1kiQr)#zKY>PK?W#BKGZYd!Y7XpyQVO(eW_ceb_HU5xd7*&oH!> z<>oo%u%gU($|isvVl+&&n;c|*KF?9z;I5)*EEuO6z zmD&FuT>d?n>v@%Aut{@KE>e3^3tm*T%xLNJC?CmQ*<{$CHkETySt_Iq_N@iGYJ0#k zJwe$m48`4;G0kkceJfrUzXuwfVv7UjTRLRq2Zi}gcspbh8_y&jVF6%SFDKik zr&SazXXnCUwhTGkYo{GfN**6!o*>FuYn&A95u_XoK#<6viY(X{pJEh^hFMb2C8Fg7 zn!lzKd8Q|ku9$dQX!uTOww8(=n$~#jF2SynqR5#(2popTseTbs@~q`z{`_JkFEmJ) zD&Pow%O9kI6>KP^5o9Wi>`@1R!H>g?Yx!=Lil(?WVf6Jdz!Q|wKM|)=+$@C(3K+>N zW|D5iSq@Dg2+Gt@jDSs^%84<8MR;yp6BhQ=A!R134rBZ0XW}p^{IAMXyqv>o94=li zlo?(YfA3aEvuaY=oL`mLI)^khYD0_YTGWBFc0*AUhrXdQURIISo_I?|lx-J8P={A4 zcW`owfar|VGNmrM5>pB(@WP(8{XiR_+;P&0_J~N;ybXXxK0kxtnD2+^Snfg^31QtW z+2wMUvA^#}#-xC!6j`csdK;ExsJK?%7!~t{y{w_8I50I6Ym?#EiPJJN;LZ_I-zbWW zPGo}HS~{ds00ou)sL5-~a<2@S;APXH!zSnKgQ8WBmpjX>&Nm~7A`%}5kX3_%&scu9 zzz80+AQ3KW4?I&@K+}P^TjE!K;Duu-+uL&ks9 zE%1$;#&9IQ0mZt4Y9TW@Jd&wtWrU$ve0s!&O{-m0bfMfu$>>59X`1Ct1zC~XMWNN@ z0tbyC>u7rAp#WT*qx>Uexj?#|fp{4 z7n-mp&?NW%2wWWU(YWC*r%8_`$PsA!*aSe7JuW@6xLZuj z6B_LVRH*nuKsVsx^Wp2OysWJ*CNo+pz7gaw`6z2un0i-iGG|zaZqMvcG@WpBD88fK z1DhIY3{Nv(oK_80!`5jzrQSuj^K}xFjcE~r)yh367If580s2PRFl2n=ux7|MHzo>p zxH-Xt34!5DTf>H;64d;qxWmiY;8JwF{(D0+P*CmWVER4CCdkY)h9;9=CvTE~j79IO zuVcJ4VmOZZ{1sJKG}aoBmpAc{=naN2?U^4TFy-)AM|7LJB+B+jtcJn12Q*c6I{=?O z<>4GIJ1MX!8K)zL0`m~+m-;4Fw1!b;Zyg%a1U}W~u#cdsivxl39*&mvuT84o|3aevNRK3r;FzkPC&ff(c|WRUkrbx`plq-(~FP?YpA&h#mb;Hfy&8^X$<>%y=O zObT7@;e;l@K$xp{3EXr)R0wKpTrpA}O>#N1#AS(4B4Lr>^I8>T0Kg%cOuzqH*snyh z_DF)rf8Rw2Wty$*`qR`9;1`GiwD7bfLZJtl{S3-H9H(Jw4v!+Dk~Tep(f1HZo(6JD zh42Iq`$^vI5~Uq3fx6*W=A)_-&Cn}7KVgc58CExLsp!@Si4qZigor^0N=Z@!m9Km&r0ND! z&mui#kI0KcrO4azUk>OI1@LF>v&@FXZh1L98b*i(1|t!!122pCyI zGe9axZU;09WnK)&Vgbz>_i#yyl1JrYs+Tp;oDmDm`-f);vJqST3h8uy-meifa7Q-# zs(P03P^%h{roRF+4H0fH&+LHyWi86=XOs0S`(xvgWK4{IUt%0A0Z5Ykq(2fxkaMQw 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 literal 0 HcmV?d00001 From c49c052ca05e534cf5b45772454344a2d8925e7e Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 05:41:51 -0500 Subject: [PATCH 180/183] GUI: render backend recovery, part 5 --- src/gui/gui.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index d701d224..62608960 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3462,6 +3462,11 @@ bool FurnaceGUI::loop() { break; } break; +#if SDL_VERSION_ATLEAST(2,0,4) + case SDL_RENDER_DEVICE_RESET: + killGraphics=true; + break; +#endif #if SDL_VERSION_ATLEAST(2,0,17) case SDL_DISPLAYEVENT: { switch (ev.display.event) { From 7505915479ac75a67d437277e2043a422d3bafd9 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 15:10:26 -0500 Subject: [PATCH 181/183] GUI: render backend recovery, part 6 untested OpenGL implementation --- src/gui/render/renderGL.cpp | 17 +++++++++++++++++ src/gui/render/renderGL.h | 3 ++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/gui/render/renderGL.cpp b/src/gui/render/renderGL.cpp index c51ab7df..b16f0497 100644 --- a/src/gui/render/renderGL.cpp +++ b/src/gui/render/renderGL.cpp @@ -51,6 +51,10 @@ PFNGLGETUNIFORMLOCATIONPROC furGetUniformLocation=NULL; PFNGLUNIFORM1FPROC furUniform1f=NULL; PFNGLGETSHADERINFOLOGPROC furGetShaderInfoLog=NULL; +#ifndef USE_GLES +PFNGLGETGRAPHICSRESETSTATUSARBPROC furGetGraphicsResetStatusARB=NULL; +#endif + class FurnaceGLTexture: public FurnaceGUITexture { public: GLuint id; @@ -359,6 +363,9 @@ bool FurnaceGUIRenderGL::init(SDL_Window* win) { LOAD_PROC_OPTIONAL(furUniform1f,PFNGLUNIFORM1FPROC,"glUniform1f"); LOAD_PROC_OPTIONAL(furGetShaderInfoLog,PFNGLGETSHADERINFOLOGPROC,"glGetShaderInfoLog"); +#ifndef USE_GLES + LOAD_PROC_OPTIONAL(furGetGraphicsResetStatusARB,PFNGLGETGRAPHICSRESETSTATUSARBPROC,"glGetGraphicsResetStatusARB"); +#endif if (createShader(sh_wipe_srcV,sh_wipe_srcF,sh_wipe_vertex,sh_wipe_fragment,sh_wipe_program)) { sh_wipe_uAlpha=furGetUniformLocation(sh_wipe_program,"uAlpha"); @@ -383,3 +390,13 @@ bool FurnaceGUIRenderGL::quit() { void FurnaceGUIRenderGL::quitGUI() { ImGui_ImplOpenGL3_Shutdown(); } + +bool FurnaceGUIRenderGL::isDead() { +#ifndef USE_GLES + if (furGetGraphicsResetStatusARB==NULL) return false; + return (furGetGraphicsResetStatusARB()!=GL_NO_ERROR); +#else + // handled by SDL... I think + return false; +#endif +} diff --git a/src/gui/render/renderGL.h b/src/gui/render/renderGL.h index 541ee3cb..55d39973 100644 --- a/src/gui/render/renderGL.h +++ b/src/gui/render/renderGL.h @@ -57,9 +57,10 @@ class FurnaceGUIRenderGL: public FurnaceGUIRender { void initGUI(SDL_Window* win); void quitGUI(); bool quit(); + bool isDead(); FurnaceGUIRenderGL(): context(NULL), sdlWin(NULL) { memset(quadVertex,0,4*3*sizeof(float)); } -}; \ No newline at end of file +}; From d7d4038c51561afeb097441e85ea7846306e8208 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 2 Jul 2023 22:06:52 -0500 Subject: [PATCH 182/183] use rate instead of compat rate when saving sample --- src/engine/sample.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/engine/sample.cpp b/src/engine/sample.cpp index 5f9b2554..d88bf4bc 100644 --- a/src/engine/sample.cpp +++ b/src/engine/sample.cpp @@ -392,7 +392,7 @@ bool DivSample::save(const char* path) { if (length16<1) return false; si.channels=1; - si.samplerate=rate; + si.samplerate=centerRate; switch (depth) { case DIV_SAMPLE_DEPTH_8BIT: // 8-bit si.format=SF_FORMAT_PCM_U8|SF_FORMAT_WAV; @@ -412,7 +412,8 @@ bool DivSample::save(const char* path) { SF_INSTRUMENT inst; memset(&inst, 0, sizeof(inst)); inst.gain = 1; - short pitch = (0x3c * 100) + 50 - (log2((double)centerRate/rate) * 12.0 * 100.0); + // TODO: fix + short pitch = (0x3c * 100) + 50 - (log2((double)centerRate/8363.0) * 12.0 * 100.0); inst.basenote = pitch / 100; inst.detune = 50 - (pitch % 100); inst.velocity_hi = 0x7f; From b0c683fee53c4578171c3d950a199ae2a7f4e4e1 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Mon, 3 Jul 2023 04:06:42 -0500 Subject: [PATCH 183/183] Game Boy: fix wave corruption I think --- src/engine/platform/gb.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/engine/platform/gb.cpp b/src/engine/platform/gb.cpp index d187b8c7..683f9721 100644 --- a/src/engine/platform/gb.cpp +++ b/src/engine/platform/gb.cpp @@ -19,6 +19,7 @@ #include "gb.h" #include "../engine.h" +#include "../../ta-log.h" #include #define rWrite(a,v) if (!skipRegisterWrites) {writes.emplace(a,v); regPool[(a)&0x7f]=v; if (dumpWrites) {addWrite(a,v);} } @@ -80,6 +81,7 @@ void DivPlatformGB::acquire(short** buf, size_t len) { } void DivPlatformGB::updateWave() { + logV("WAVE UPDATE"); rWrite(0x1a,0); for (int i=0; i<16; i++) { int nibble1=ws.output[((i<<1)+antiClickWavePos)&31]; @@ -299,6 +301,7 @@ void DivPlatformGB::tick(bool sysTick) { } if (chan[i].keyOn) { if (i==2) { // wave + rWrite(16+i*5,0x00); rWrite(16+i*5,0x80); rWrite(16+i*5+2,gbVolMap[chan[i].outVol]); } else {

    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

  2. 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

    JWw|av2BbY>Nj_S#UE%99dLITADOX@} z-04)n7E5uE!%6JF@7Do)pi}nV{a`6HV19S5>GJIC>I7+9yI>kuRV9$2P}fX0n82Bw z#U)v3HI~E=({1v(1}C){=Kla|frL}{%P9xgc`4`Uv#Bx^_{UnsWPSw{d_27E$#V0b zo*m(2#d1-!!;c*;4p;gUYEj6z^d&J{+uHQ1YzjFBz|j$z&(^zl3EAr0-K+>4QU~b> zQ_JC_UL#_BMPAK#Cg62u=T7F9^*a7(2yAUo;`Z&g=gg&wcl%a^`kR1x;{SO5ZT|R# zhAQTC8_Bxe2t)FROR5^{X^2lxPlv$3yzDj*s>b!sD7vhb{e$IRIljQ*tT(~I!Qmw0 zUT4w5&Q@FMbOQ(p!?AVU5Vfp(X2vwkL{bI|wIV@|10=&OV2iBkx0EjDb> zy6WnuhV|sPTT_*9#P}5@;N|bThcjfubJcSqsRW7)8$6nBZ|cU;#_}}tl~RQ>XvDoQ zj<%6ir$|;?5K8f7N}|F-w;+#7eC(H z^Gk0qX~VpKK9;Yo-JbsZ!-L`bcz6c&Zl!T?>Qy!~KNCVV^R*O+7w$9|f_&Va<1@ea zoB0zBGxYNEQtuHGoYQ5dT+|+M*JlzW5Lu}KAcaPiR+_ngS`M@dbz7`&ug=RG8bEy@ z8Moovc=mXbuRz=b9$$^-svorDJbHSz+?xp2A|xm%|1m@*UyJi6Zpy?jReu74JISQM z2pur~5lJILnJ6EOPs0S|)+qyk8zk(!5s*$N;e#%CY%Bsa0GyrNK;^(m+6&8v3$}BO z2D6G>C52qS?h~^-7G+{$GHDG^du;Wr_7xngk1iQhuQ5a^12H5*##k)0hdzXNMo^jS zGayu7qgU_>^ETaFY`%mI^GUuXgTtUud^+*Z(WxS?um5P8*4fRs+PTlwyPH~D=PQ-V zgg$(H5l+TE{8J&b8ScS6;jr8jIx?6hR`&&~6djtYmNgpcx;smg{Pz#5a+>~x0<%(z z+r`oP#&B1PFB#^Dd5YL77`;62dmX6nkGSwLN>LUhlQF4z(OobelLLS2D zJv}|o8cj@0ICU#P_AXm7nPF+XP*39as$97LGX-y>=P5p07f&t@QX!U!Xd6#9jD(1O zvh2g^wL3V-;&X(89sS^D7{-2 zhgP2&nIswfmTc%9UKGV-ozr?ODpF92hsYYp=>|tFP*-S@gm0thv>jBM*Q}2)b8@UV zPf%DmP1yPM=F~d4P@pz7Nqp8U-i_*O7ss13wa#x6xl%=Srz$Lg^K$U@$B!Qy9WsUJ zNWY^`7&t!**c0^Fj2cD1->i?YRxd&XY2gVR+BV>HoJ;uI4sHEGqpSF`^F3IgqX+Q-#?ijmM72t8WBXvXBFT?c(c+E zY9DTHZXjQ&7zn8NKW{IA&9%E!Xk@;^Urkx(5YT*Qj6p{o8=i z%A&l#!F74E-J2>>C7k*TLe&$`LFUIf7A)>_Rc$>{L@Va;&Wal4&gQ$8aC(gZV}~QY zPQ>sy$qSI1gYo7gF#J8>`TKkfsB>W%{4HFvp$|61_q z?$5jC&h`DT{YRM?;Quiv5OuhF`XA}}e-o+y&G!E}>9$~gdnmCvkh|cwXQ7e_xL~uu zdyJ7>1J@QD5O9_C5Y=@H@e%te^S_zl^-vg$PSkA=&>gQc!XdX?&>!q2kPq0kCfw-Y zV60t<|9X}vr3ji}!=q?K9!dCk&3^hPa4-cRWxa$@z%M*@rfbTNdqze^Iy#trZ?3dF z%Yb2^;5B=Dez0u%RbEmiz&-d;DQV4P={Qw#WhpGCEJ>taBg! zqwY{c0MT^mPvTRZZ|1Z3^SuRFz0OD)y&o?z zsHmvel&;S9-y}R0vY8fy=Bei>eL}zQl$9W857|N%8#U>aoBfy$Bjw0;u1)g!w@_eE z5f3heg@l&-zNrtgeK*tu%xbdFTP)HbZy{cwftVRwqqA;5GJxq7?#m!S`t&wl+|&TFW4zLuf{4H11( zaLH46BDYZ_?%SjnxxTkIz(SD~;`|Etn-;K{M$|a2{%!FGw{@^K#2B*$%n8Z5prD}F z+1|Zmzh)ptpp)B3wxT@s9l9$g^B2-1eyg^&ww9~|iN_)1l0jF|dA|ZoYtz+1xTpg# zS)csE?v;gR0Wfd-X&&=ZEHk zm1=I_f`OR`w$s+ucF!05<-5Ni8vt}vFAc8{0SF?;v#V{SfQkh0SQrRBdl~-P-}rEEzKt}-zA>XkLJf*UBHL-G`A#?ytsdn^kv-Xbm>KOWf@WJu~8Y@lefGq#bphW%wryK($B{M5Jj#W9#ax=bC zAth;=Q_B=NKCb1Y(Uv@sGzeB`!XawBPb?>QVy9ndp5x3^Lx}{S^r{Q6jXOa8hZ}Gh zvgb!gI*$f@i6Gqbcq0o3DdMsfZAwK1`~*@J6>0tg3CwUr~|vOCKu7~l&Th>DU$1j*o>vPNr? zCn1C>T+nbxI*)14nUMKF3aHlpEcd^`&*8oC9IPQ0Q@cvPK{ZgZlV3k(S^*`p>G}lO zo5)S{uGY!2uui|)PRb`l${&;7Q^0n1wDu(YBf`bek(hVF5V&Z`xH=jC~BBUPE7I2?9%zZWnA|f4x3vPC-_8AN) zm(5(`Op~u~VR-pJ3MJw3Es{<`oTWqzfai55AAo+aQ2ISUCk|wrfbSPZ(tawvJmCi5 z$_jc%y`L%v{j?hWMZbWSE*J<-<}vTVw}n68V}umW7^C-pHj}WafqT23K~?rTDL+5| z9iif^U^+muQjgEY#oV@v|7^Bicr(>JW70`}>On^nDDEEqWC1)+0E8INZD;G*vTN@A zpM6-xM>H(R2mpb51^@`z>UArvhCeLVIs4!{?{ z^6qQ{TAG-sC~iA{j~uRxw9xlzR8-XVBl{thAI|hn!2W{p$xX5}kkOz{%Py?WBkVfH z7$L`%$1U;%R_st|J*PMRC^szfpxW z$n`^QJ^st6?|A9Kc=~afZql>9|9gjul;x-><#;De^!0~vzw>O>0Q4LOZoS+)6)Ek8 zGko`b1e^&zvgAzu+<0ugd9Ox2>Swo}PAT7;p;|6)?u3?k!+-x|@=jrJp z|GEZgxuw_ER6dz2rVOQKndM~pw)*^9gH1u|o1>wy`*+)f>M_Gf`?O3we{@n1HMSpm z&8jI9p+2!OJV2q}t5mE+&eT`n-3R+Za0ctOXzf>=UU6LsJt#yirN=$F)<*nLU>liUF zop(fWf<-EJ&|YfwH?iaAG@p!TMTxO&YbXCQd7QtT=gJC7ZonBwsw2jGpa$N^em!Mj z_&NuC;M>D5Tt@LP+&R#STIb=MD*bCXq22^%4I@k<$MP3fnpt+9!I78an2cU$-z%-4 z%9NF|)>hy~O8Ner#)z{0la!F{ccI%p-ig>`I!y`)c=5DJ4}!*-3Xc@67YR@I5q?J9 zSRf5Ezba7mZO(0e7NC(ghFrs$tUiB7O%wpGJ4^JR8x<)$FMtUaEC&iv>&r_s7uEhOWQ3eEcNmWWlC zM|*|q+7rx++(M0bC4<_&S1(q@!>#zJzw{%dT>i;Jrxq0JLOkpt{4l|)*6Bnxfco@S ztJaDvpu$3otrg9O^U3p(V-%l(G>5ZO(fA0;7Q=G{i()Z9wMQY*isFc*_q3fa8o;|W%;X!gy{3}uGpenDs5GoD`RAauEe}PW2RrR-<)$es|EKQP zwsZVf^7Crp;wu@XQz-MS0>PwQbCeQtxF>Ddq>kJuoN>%pG%R*T>p$ir~mZmR?3OKfEMh@HKQC`7=9Y;oFb*VtDRst!M| z5`6}NW>NP(e)JuKL$l#uoc+3rYeU}RdE8H2zKr?#^q%bjAOo;AF2IC0%Y*qF?{ny(V@Of$L2$a_pYMdw==;HIr`Bi3|y0#}@q#+wM zA0w86$G!ccxCpql8|ugzCW?0-vOSaA4+79qeAt+pS)D1$JJPxPsNsO(!HtN>K+PZn zI)lT7m*z5TWrz4AgPd7_(sDuaNkWjKTsN;u{`~ijv{e!xq5qKc#J2=5c$gc)=P-1Q z%Sz?Ls;@BgR?O+IRsV}ZckPHamr9Ro*~7}(eVuo6vy`JSy&DbR3&b_JOi6<`tP>Wq z?@*DZK`=GjPZEVXvEE~E&O0^A$nuK^LE!=n?k~fl48QhKSV077q?8T;X%XpCN~OC)K$@XD1?iTQ?(P~I6zP8dlxru2haPoGRBFuL|u7BUUzB3{}1EFUk}R6SC>K zeX3&U?R?P9?c{>@8obgVBfXn6vAa+IE3cv2@2$d~LYMSd)9ecDHq`Y`o^p4Alm2tA zc+zBQfnfyW=7g!Nr>EM1F)tuT<&~s!#lOuI`Vl zg_xo6{D=9*JT7;Wn9zn7_%x#p12JE>=Or~|k^QsgM~edD_07~-+`9b8j92>>N&dQR zY`T_%oZ)^5QgX!&q8{;{?d|IUw0J9K^m07NqJMGJW8eKVH^w+rLdmQjNQ7UDmi&pF z@Ih9jUsS4hBrm~fH{m{e;^vU^fXlw8_-Hu67Z7`m4oQp{j<~xR)>)G-3yJ(jNs_t? zASt8UsO-bZpf^ggmyUNX?rqlTlFck;o2ml#n}O3l+MaZ=UyaGY>o$8E^kn zGx4ufpqWR(2=ZwsUXFj=4fQj_wANv0scv@IG+_H)uXVDguVL3J7?Nd2c~Y1YICm3b=;+C>Y}v^@;WhQ{x9$VQXie{3bw$jezi$`bpJI~w z#W$JVDzkNJ9u!36&(tm5w#_MB^}0xK@;pyBbz#xY2`TMFWb1e?Q(oZeg#>l8Pb-@r zt6p;9m49q&UJ zyGwqY2LAN4u2~`s?zDcT$rSELMWMu2JB9Lfk|l~kry@lkH#|@pEa)Gih`7F%Zzdrs zOct4jQyM>skosy~lfd*(R61zKn5k%W7JB8<{ZZ68H?Vv|$uo|>gv2;K#mD4!8)f6Te^?ktF8{H&+JwUWb>8@}#3EXCbKFl8QVSXvmDwV6o7Qs;1Nd|E5SZ*_O_o~P^_K;{8%&c7+Y-!Tw}3I) zaP&9WFgKOfy-BB_Hz`coEezU?gFNfxKBB9;7r5e&18dY*rDt6vI1UnQT<>OTZ7sgm zxJ|a;+#DZfJTNSD#21)7xifVp%sPYbyGPElbXqHLyZ&s=>$dYygl`!x%+{9mkh{nc z)w^`Pgf^H(^S3#`4!LIW{-aHLOWN`VQ!UHWBkF{rLJhOXkLmzNA__sGcoukRU zf;yOnms}GLaP|3Q^fc@09Y_M!na7pzbugacGU2Gb-j!P3>DU@dbeCgFVkkskTIa`u9t0VCnW?TU zjyR7;ut>{MF>OwlF*?yC$Suo{13?EF#+@= z=D-vz{15CywEr~*_loR$AoH&=fTMmO%>IWI?i+*uY9apno%f3De^u_k-U)9?n z-=JDfo*|j2mKh?iZ`T;xht;fow@5hblDllZjjDWC6MkVEw>T;TZ@Dar5(LCvX@>1i zU|dmWdyZosteE${R6cwYl1D1`#(7@sNcojASrqL>&F7`Ul*9;t7D zJ;w$Iw}h-LdX1Xf6(791D!aH9t5TFM-z0<(7KgUFcYs;Bg(h=VUT;E4=jncd1s#Tl zgPGkkPUbW2lWkUd95twO$;vGyim6JT>YF3EpDpthVY-nq3$v0pd_yMkt*n?%pCGS< z;|93tG4p=2evBSUt0u%bEp}gGUz1C2hf24J(xCEWOQ#Gc(~XzlZ=o(ULP`2m0o&g0 zxbq2G+Oj(nn-Xqu?OU=(edBdWuLrj7f$EYq;;Uir(cAH|Z-b%o51%}J5z}V(nI7c@ z^=wXbqkeo$kC*P2r!af&+?n2KKhmW`A{ku;1P9(ToYRk|* ztQcn{YRe+||Jr3yNvHCRV^Y{%U4P|^*Q+`4he?@nL5h1I$l@s@r!wmTiE{89V`|Sf zwyA>g7sYUGPM3xLNI^bfa20WjB#BJSdj*Dtrr(!_4++d&obEQ)kNEgFiOJ;uJZaK8 zLj&E4?B}DS&Oov~OzD8F4b!m!_7>NEoDfn%MxkwnD0YIYdp0Q7jpG~ve!DPrq;Sy?EDMePv=~6lN8ky~>1tF`Ny8WZ`2J#4dd)^pkgBE=Dp>DL* zvGwwtJvzLxNk2%y>oC!ymRW+jy(-CgZJg2iEMm@j3{5M8BlbarZc#xSii#Q#iizfI z`;{hJ*k&*jYy^*75{VRs=FF#1i_RV?D9?CaG=tcT`U;f(aE0qk0i2QB5{&E~+wT38 zOPOce%Y9B5@Do`4lQU*@<8xci-lXZ}9o2*!Vw>z^Un8kBM4>Au#|Rljjw#kJh31Zj z-GcMqRM3E6APkkcUH*rd_R%oS&uM|WQ)Viw6#PI4NmNssP$L_xIHGPTgjj`PI};H=>P6)LtV*>j(ShjkaNg~$prlgMKA67f$NZWsMW2`1sy<=llq*7_=dDsgD@zolGrEWnujGgyd2~~CEg)-V~WhL zmLjWdX|@)}9LwBqudJZK((3H%Na|}vHRdPKZ?Y~cRleg7(qKS>svWjVO)R)Js3Ds2 zTwqGv47E$Z@NmJY%sE_I045cKU}wzeIxF<~E|F_XLw>1gP419e{i5z6d>EJRW)Q#o6WV!*7QBwUrl#pDT|Y5q$Z%V%2B|;_{n)KfAp!*iBI*HES&^(Pr&i_ zBAexaVr2uE!I)7=!01A4Nw|=CaV{dUs;EQ>2x*iAKE3#c&vJLzXzRz8T=(Lwsc`Bk z|7}{~x1@EUivd?3yx4xA3M~beC6uVAHEC|!bgt#e%~$$=a{J|DzWx)s9m(;*>}`Ak z?N7&%7p+E>1Msc*Zc?23dQ3J9QmeNu?X#-`;UF|$|IVzygTBopi+;tbQ(ig4-(_)Q zJo^A%tSca~M7vEd!F)NO*;zv_Xp{YD~AU0 zEJ;5cX&bdPr~}2FStoCXH({JweMZTm3LY?7j(p7QtZz;FJ(t$jSY>zVEK|=q9EUh@ z@umpSC#;H$QvOl)B}xz8g7eLuJ4A_Ip3Ltooh>rr`{i$QkxuYZZ_raSqnlv=1?hRN zwXE9A?Dn826br&0RUPw3Y(z5ie~GiEPE*}qB~I;)*d8zF(wuqx0mZ)zTB@xX?#-O) z*nU0bNWR8O)RQ!}m(f=kYb6dROf9;Ire8?CxNm&YaOrmU-srfSx*fIgZF&y*{&45n zjj;G#?0_mKMu(_Rp}gBGqfyI}?5Z|*M`Slewp}TT^`5%JkrtLrN3CMHKj!XBRr!6{ z(8!`ul*xs&a9{Y>douVm6pWd^%;F-KjD6jO$Cb5LnkK0Icsi9PvY1-ec@wf8&q^}{ zHnxc3PTUw^(GN4G68YS~vC%y5ZB!K`MBGz4(?YnJDqZ=#ejK-drP8Y4geja!Wae%R6{s2T~gzK`vS2^o=2;|B)w&Zc1L z<{6o`+}Kp(6IoR7Fq0q)PpD)(^GN?{zru$%l-hz{@O~(ahMpJdTipo zi)j8e`Z`(aVYdse6L`{^sb>|e^^&6(YX6OB3*li#BVSm&R|`;~gGv!Dy&9*{H|_x& z>ARWyT(B-PMMJ=V+#RNAC`S23ee`+L@waLOPRz*$y}MEGB@`>Asv;^ucXey|%6D`8 z9V4k9y>69JV`R$*BL%NoK;d7)X>O*5u#k;AWvE>#_J$gHA6STSx|-)o@;D{arX2bs zP2x=rf?D>c&}#B?;Ou*3^A28fqfXAT`i^{d%@(UO54Bu1Y5G?kWd(GYT9k2)U3Z6~ z{Nl(@|LsoyMyinMzU+agLaeioMyv+n1E1*|Ug-$(g*RfSn!WbRSvut8hJQ^mPe+-{S#%jV#g+X;hA5+*0v|fw}`8N;zWl*5Z*Su`YCn3Pi{*F z0@po0jzBmk<^$?88SEH8oRun`Q3qx*B@=ZX|2zxf z4f{UgFZrP#6)OGw)PgB27>bcah91VBZl^j~yXlHO$HV{ScFnTI^*Ba(I_WL+VCzMR zH%Dd@l{$ABrYSnP`cS#U&#mx{qIvhhiEx>~OKg|7HD0zu&Iw$(C5aG+aav*PO8H zH3Dtq@J~)hx_d22uhbL^7!<-Ks{a%xuW{ibNHDH6aQdf9>G$0QcG(G_SKu}>c)ug_ zPnVlePD&b}xo7roU}K1BAp+Df@`jv_@-NyH?nN$kpZLJ|8t7iQlBWZitjPXzJ@+Ys zULePz1Wa>DW7WMPxYvEkUm-`r(8@};M1zB)q)4SCSUND>TsN*zup{DbbSNmgk_3M9 zxcZt3K>P%z`$_b|z=1(M=a*Bc_yl)~$rg>b>GrE#mnnVp-5>%$beU2i5bAb?@t0NF zd!n2|j0m`N5|yqK7wnq1J`ml@e2W8KCiq7J=$F0R6|#_bv#RL5M3%+b6+)<6!2ycj zoJJUi#vRV8;L=@*OS51T+CS-|e*YfKb8GX*e)?gR}@0XzfxCI~FQ1uhEm< zK3)wosZ*f6Yt}m%Bi`_$ z3*mt3PbHTRiK~-QenpOEg0`YoWt}w*YuyU3T6$MN@H9DtSehuFGW(<|tHjL^?$U!5a)6Yr2c+t1|p%_!tG7z+tlEtBEw30%BQ9D9x(#XoJ8)MQEVD7E$@#iLK; z8fQAaU&_TS-?hH@SSm1d;6*fHmr8XDZeAuFu^5_+Y=7{UmdjOJ_H(ovS*oD)`Z5yZ z3Tv9#{n!(RZ6q7Z4*J0b#c3I$YE-%Q+%>X1&l?&Vgg$~YhgqRVlmlDG!A4{ZQ$*AZ7 zt(GZbDc$SFV=`mX2%yICRITyJc*}C!e?L+~qwOtNsrK|{cc<*smf*-;UfR>n5JD_# ze9T(VhKX-HyxP;fA=>PJhW~&}atTzU*{VaNHf`Q|M#lpA45UMJqsiha2~<%}0IR(J zf|eO{7Ef_IVy9W0GMWslK6e|;e1^vY5N2u8QTm1yFTAiY9@2W?330h<_(J8$SvZZq z$27aAkHoNS+(R`kV~Ht(^2x|P4pd%$YMJ7wbR%?%@xuI-n?V7=_LGYd>~8 zQJNGsihzYngY?S_ zXa?P1+c{Pe%Sfhg14G2ru62BGNWnGvyDY^}zcvggRQ>LxJ@Dp8%suSQA<6k+-)by8 zu=4q>NlP-#SiyMd&I_YBSU1B%>t%Cgv$;9brls)1vexWk`3ggnMjHMOC+kvJ+Kz*_*ag;>LsmJP)4oPG}VT#EMJr5dT)UFnvW7tJ- zx1=7zMJ{bu`RS}yH*Mkp{ zt|G*b&3riznU*V&H2?lsJgiP7TeKQS(MN3c2khm z@Vn*%5Zf|7;yily7EccEA(~HcFcO-65Rn+Q%1(2L4+f5y=nj~#Pd)f4nk62l{d@Ms zdhSAdb&{Fun~KF7&wzTM5T5(BWKFS^*LubyOXdXh;*NIQ``5-s#>CaaN6QL>q@VY& zPZ7MBP$<8o=Cq5`nZ&=G_Ee1ev;5pGvJyN~F~#@|*C@&S zG1==-l2;3Xm)yK#Z?hgLn@wic^3MqyI9UJUd+E4%G)k5LeP|idToO%HVR!x@`Rw|q zE2R@h^85TjvAaIXd7#v6Y&U?~^%Awj^gxxf^^j-8njD=8^T)&SSr`BY=~ay1K?<#nmxJB&8; zVNNL~Q@7jI5`Po74{7S+WA68b2O>lJ?DATw(6~=STfH#W@2QQJ+DAE`^BF z)w@n*dQTt6r?VMh`x4EgCh6$A#7;MVezB_yrME>Wz)S|xKgP747*vR+EQ>&Jh4Xjw zNZN}nS#&^@EF-G3q{M2k$Gmxnce~ZH@AsOyzeZM!`VpaBRxxuCkt(?)nt8@<=WU6D z5q8y5l(FGQ?a|>mIy2eC1Mk6)*7-eavqJJlN1Z95MNwHIVa$DlL9vQltO7}I49dQ5 zVo>+y)e9g%sGA6yspIW#r&2sIcAu<1=lJwr)4GUl~wfU%u44n@fw4sQH6jL&8)1OV7`g2`er12C>vjfK^3s85FFWj zKE83KH%y{eK{K@Qh|I5#HrgA{+8sM5`4+x7RO^@?7}fDr0SRWM^7mahyA(G=h@qR=zSCdBt2mFb9E^P~!i%%w21|Pn{yFz0`A1+oz|Ubc)O@wB z;I(_qfifzHuOe6M`KQS^Zz|YaQ)*Fli1-V%<1Jr}GzdCVOVXKCPAZIy)AOG_nd~G) zxFK2E1C4p3DQgJwjV}wsjS)La55C5Knw%dmW4!#e5jxsZ=V~xQe^K=QLFRmN=vf70 z158v*o`8t)qP&`nKxUxH`5fw0Qu*~Hkz*?`J`8i8uxyIM>6-RHxGLC$IDne8R@={_lalL8^msj|D!SvB-@x>mwfR!#9rCz5|!!O24GBafd1Q z|E>!l-e~;rIX`zs%ICxHA9w>(WDOd=Ic0V;II54jFrTCL4+czdO^P6^ZXPtgbNBt_ zf%aXDQ&iSLh0Esj!c}DVJpaNSTXtrK@N7Akz0(J!rxLgc^06^ zp^Brvd<6Cy%EU+4IV`C^K*Ni*In|J+W=E`dxp!>N-IU*cU=4NWuzfca{;Q1C<0YQj zI-htKhJ-?EkCOZE^1w|F?c1oR-{LqU#N%?@%j-V7T(Y}2maAVbCNcJ2>@OHReXToq zv9fcU_IGpoU}5O{g$oyt*B`D53Vx+9&MyD#=sNcE)>j-Vjk!A)Ut9OoY!d#RF%}d% zO^y)Tg1wAzrX}C|mW$;|`k~#2`xi z_qR7)N1?TOto;i+6B9|6UM`Q!W{zG^C?%l?F9LfS{S zBdGh>8;T|^#gW2kzMC_*|Ni6G~7f0v=KexJz z9}9K6{!J~R*uwdc%#Knsj_%FPmd+fTtKm1_T3JPhX{`0nCMQwJ;!ay$3xguh>0%$K z8YAwMlx}CGX8joi;g(4fHaND@WU|#55c0WO)3k0j4)d{#A=QEYTE|adXYC}jTR=fN zaToaa31f9iXOZjGx{S_&KQ5&vu;L|itAd8&49lif9ah7rKxR(j$1&+=Zc92#7IJ}I zcF>)cdfxoaJ#);~k&x_8;^!Z4wfvC7pC<#qArQ5cAZ_@9o5%o34F2C>kKx}3T=C5yRy1BBl!ibpkVKoK*ZivvkAHRV%z7beO zT9qgcfK9RcN2BO{*}5JpRzErd_Q80amh)w_&nssU@TIu_d20x1hZ@Q*(= zSO*GLe-mJO>dVc|y+(ZszgcoRa*yM0lry(W0pt@vSg*obq*?~-GG@R0F)pM_ip$)9 z)lJ8F3CYgRZXN@^#*lasn7YYpam(@s(;;l z%}+V=7|1&FOc`X}zI|)+1n!5Kg99GfQYbN}g_@2c(HzH(stGX(uYKS{C#0Vk=%}cu zPo69lBf!5wwo_DIcJ{Nq51%#&mRjR8}Z94GDQ~zF8Aeb2jgWFMc! zhPhUUhezyV&y*7w&T|Im;I5+G_V)JumMct!gg2%mK>wYgK*`=Mj+2c^!u=N<^Y;08 z9aqz_e0jvj=wB`tH9p_M7H<7tYL)B;;nL}}dTPJKSWg8C@hP-;ucHC34*{+?X4H%G z<$7Q1u+ltE6WpIq+L{vgw%ToA7TSX+g8L2!*4tS?s^|qnT%Btlex2;_m213(gyQCJ_ zA^CwJc5F<^=3-fpeI1S_Vtc^ZlTf5~RBpQN%7=VrWMYbOr;Xt>?8Tefju5&95AjDe9+^3hLV=2K`$NO(RQWY4W! z=u%(ZY&1ZWoh;y{l8U=z<>`4Fh(nznGgD)Jce!0wZUF?|YdrF@O6g!rE^BtTwl2q2 zb(d6rOdL)%*sOE{P4YXWIA+b<3C=y^Jeibi(J*mDmynh);EX$p_XCMXl?a4OPQh?j z*T!89G=s&#%Dbdw7o3~Wr16Wn0&;S4^d@T;JQpL3@adjJ#c3{tPPQ{5Rd+!L^#%66qeE-aVB`<)`;tK8R># z3HP$CX2uW#j+eW`KGr~}YOxv{(0y{48wEmvYyFJSRC94_3spAjnrp#b5uI#1xjgJ| z12CP^)6?h4rV%tFQQgKx)D_k2uB|x$D-pQW!NJaXur2Va2oW*@?f@FkS&(;b?9Cei z7eMs@f9SQknp*msZ2Rqrfgd3wS-aWUFLoMi*Mcc$JnwGKzVXn~c3MOF4h{~~n_W4G zNPvN@Xn7dILll+^yi?0sJv}|H)ev)YMx()aPL^=-2dBUiqbdO}AD~K7XZiMe{61wf zy8^x;-i0rfUU!}`55j`(1YT}{!uug8BxF=Q=2FzP8n^+i4;+U<-p)TuOi1YALPJCQ z=CVCe608X9SAlFsH!}oCEx<0FGmsZO3X1FU@-mjtwOj<$`;Rs-lm|CF0w;x}^bcA3 zzf1or@$F@X+Z4ROuZp?ta)_kD$T%&&Q<2JVo-KGqXalQi>{Fb5sjedh5!#u-j#HwaW%cM4q+*z~lz?+gG6QLIl(fizTu3M3OBtsDxzSFf-${W>Q~ zwHd8w{tTbm-MOUiRSgN6j~B+q{Mp`i+nwPcsj*rR+%(4_CJw<1War^gFT}D<74p&v zWs{r%1Uf-TzQt@Ej(%J)zO3nr1gzSWS|Rcs({EZYeT;yn%dMghULaSWm;;CMWf<4| z+d*J}Jo_^&QjD;@xyj?SH*3{;L$IO1Pb~hg+eJl24yc`XEgD&v3DWNyI|U9nU|d3) zc0XSV_&pB1{vB_2gl^9bK!pju2G23T=__A+xeDB$6itjW@v*Tve`Y7j!1FoyhPN@3 zT0r4*adFA~Y`r-`bFn@4NpV<~<#HT{Yh~=b3pj<^qZSWM8g*Me^ON%LfD2@?5A36^ zMv=0aG6kOaiU?EvCT~Hm29Qa{UK@{)5Ey9G z=S}{d6GfEcFDAtbh#i60^iHeF!aPnmhbIV8IUi}ug-Z?EFaC~fk($@m2`LJl@9(qi2R20I= zR&o>p8Cm#aZ)dxp2X`_bKFEz>ClwR`_uSR9I4QBnh5D_X{lcwtI@9%fa8je}ECzeb_by^N6a?*yT7057h3caM1d3&HNwU z2Wa^pn1=;-EA|N9lt%z$?T2z!so{{iuPO#bhMe8@cz z{|DfO?_c;oLH4_OD2k&DDsh}mSnyler6aXtAAqhA4w7F&4*!msoennL1N~h(1Xd>@ zw6IvJ;gL38^8wq2|GQpMy%r`~Z0 z8Y{^q>3U0|6Klhjs3#ie735$M1Jlv|xmt|QD2(K@=i&AB;>J*oy_3qxWi{9%*fDIIHiKZf zdlD(QilVb~j014&7Qb5%ABpkJ3HOdORvDStyb*N26~j*sa9>}FhM$&@=IaKWLS^K3 zK%0%0yYuX3xh+t|1CTcOWu1G+R9YJLwZPU)b1gPo(MEkHuS_j7#^e3~b7t?ndmaF~shR&8-eiGBCZS4kbx_3|HeInEm2ee&NdAei z*hsa8=;<#X>ax{2F^Sgv1N>qU!0-a@>8(8SM5_R#z4umtcFErO?9Mkvn-Q&Ja}_^4 ztz3QVsC}=DPrID(6l=~F4mM@Lhny8J8))gA8c7G_kwTfJhO}%mPGU`(6H~v}mzea&dg7`D2HT$8)aa0m3ZX`hI;nb0Fr{7V73M<NrW)#Rq$DfxN|%~Z`>zq3j7l4SIV`nFwKbm4Xj%;0|=cg7N!N= zV}#eEr7;)faWarb-pStSW5E%{jdhdTDuOVtIU~OdEI5HU{8MacF2iG`boGY5H7Bpi zlHTUBr z`Z3TYPs*{8)M%OSb<;nLyqil#6L!eIxtxA?2<}gT9TOURQ^O|>5zwM(z7YK7306VM zG)~<_X#8L=!MnT4Iz+bST&!(AI_iu5*rvvOk$sk|V-w;*vN5;L8lPpf08cE8;6-vC z&=ux_89XGC8`!np=*4Y?Tk1bnAN>NI;;1{5x^}y3AnqJMI66Hh6n3yX7)j8xkkU6D zKmduUv8Xm6NmjI|C1}(!=)&Bbphat3{G$K6_PANW0nhUA(d(k@-<%S#R9AV;fH6rZ zC*~nQ?4(b}GG5+!&ooBb>wV;9&`N~5IgqI<{e9qrWi=n|wRF#caEimg!M~Ewmu9;T zrMOZUOv&`oXOrP~`R@4F4Mf&TCgg*R33188l;`?cxaGB!e*tY z8yfA{1@q;#yTFfY{`@Uir`e!!x4rD2owb^$+W~vk|I%)*cyJDVasf3vC&#;Ia%hW)(ojL0gov;G9 zrwRO6fKik8WW%h0R&vO}xUZ)MS%(*~&AX2SpAEMD%Sv~||6^hh?DS{j-MO=7 zHHO(Xt;RQ~!q$2m=6!{o<6R?d8YYbuUgjy!+b!x=)z$s&+mJ77uyY(Do~gWptW>dW zDoMxBxFprw;DYKhX7yUxoR7O)+odL~A5fi^)7gF9505&m-9 z!8GGiaM?$GiMZjB)q8R5>wsclXx3;H#;a;ugSdOrL`j?~pAm(xgpvukw9Jm&a(UB$$0Ch(2#%nCAH$e=YhFsk@JtM=#<#OLS8bd*;j z9eNzBt>0YUT%;SHDf``OHoe2R(lcL^?}K)X+Eosi)k(R=QMB@uL~8`RMLfY5IN! zP?+-Yi5QgBndt~^X@|aok)Z_|gf~d0b_X?KYpPzUf{&wY?A@`g8DBRlonfyN;MRe7 z4;RVy^Z}ecC{_3Y$2;8DGxEEuWh;%h>R=22lD;Yf?=!iU>OBe5kfhTf5^5cCPryc- zEL%wPu%$5bg%=5l#t~Z+%Ik*t@V``}VTHJ71z9^2?I{ zFMgj&i(tS9jA{&Ar6&`ng$+2G7PN-HL<({f;FJvV?1Gu$vL6k-4RTlr)H^AJP~UJz zA{p9Ooh_}H2<<4<-W1dSr1OR~ZiokuVD`j|>Rh23qObpy%Mvl1*J+W^lt$?u_wL$$ zGS$O~Ai&2f3mo!8y34Hkq4tlyZ(Dxsj@S>zQzFD-zKR2T{NCWrFrE4Nmc(hoc_mQ{|ABpKa8^x|6hu;R|vn|Gwo{0 z%~IT&CA;23vLX@@fqJ>QGj6LU`;`JGPb(=8EteN^E4MxwKnQ1EQgQN9dJ2oDbq}}H zAWAFa+_jpUYk;xkdr*9HJZ80l&P>c-i{QSQk8v zVo-KF(()P&KCie+uy!;xfN8@zwEFAAnoXa$C>MSQkoavW)#Ai=&1c%kByP0Z$T3x5 z8qdydM?Y8VxLDAsu!^51A+acn!M()?br<$zJi&z%0Q;D5AWha9sbGI8=}Luot|HDP7p%H z@lGAtNnz_xd}E(McPRMHV9S~FcLK%$1>WBJGR-*MkFxrPLlY%X7kNECU;b{fsiT{S zQ@&_?3m>R3975fdSRf#4O*LHeE3j<*Hw@N;cPhIUq!kITHz+t&+cyex%u%rCbE3en zFp6iXGIIwv+pKVQ_eGeD6VB+owoCIi_NMQ6`_^bCcEl)8@=Y;eV)Q}FvOmf6A(q#I z(V@jshJf5UV`GajO#kXIAk?E6zWGQ`hmH6X>AYLkC3c>e{(%# zz?6EV+`KEek5=52c#lx{qzooy?C%?tG(O-1L@hc(m)IHQF`2rZ_aM1v;nK!*C<_gY zF9|KK9`RI7wD52m*>p|Z&|*kWS8eeE8PK^Hi`Yk4RaY^rcHIi}jKs5U>tH}GiPod8 zc_X{SciG`5hJ;122nN;s3#RRVyhE%}SZT%>d>G zaJCc)NUjrt)^};ZO@_GQ>GMcinte-vuWotaJ-@LkjKb!U#ad0jg+Ev5%FX@N` z4*TKd(GPD;NKUKeH)mmm?ff^;ewizs#q5h2mOHs^iCvJm`R>?tS&6!WaA0OCK1aMC z(aHbssd~_BWd4_`hwnxH*GLi#L|%4^M7+7dL!+O*l#<`LGwm9Y!@{c-B)0Iuc$VTEPPUR-A8Vo>n$c=Qe=1NJHG0Nyf#WRVb? z^L0?Nj0>;;dLw>w1wVbt?~WrMi(C_4&WB2&ID^4#N~WjIjRei@?N&Gu!OfdTXraU~ zO8^l>sy%qOJ7!d}n(IYjTs%d(}fx<2d3*=jKL_aoXtG3bt zLuUL05Q;qgYt8rTxh4M1&~t3k1-yaHG?(bsABA%e)RUw#LrS! zNW>-31}%RrG&4?fNXnmZv_Jc}_3Qm{T7b5u;$T*D=Iz@leJO7tYPM76V9 zKzMof{RM&WJL^z2f`+F@sXkk^O<+rsfYKziC_;@J$+-A`X@xo?Wt^YAaoE#aZH=+( znxE*YW8kow-OM3P`&f%GE~06CSiS~M{9|*sNDWvV!33*4X`|J^g1sP@RUOpt`-xZh z?se3E?%_eWjorba{SiKSx9w)}&g;DFC+XG)FGc|Q#nfLTnMFZ{Ze>fh8sIa%4dmC6n0Lf`mU^ zXbL$xl=_JR&_al1KFLeU^T|_;!P<7H_GPwt%c%=h>CZrg zv$5V!08M>;etMl)^kAo{CVE2FBQ~M80T~z*j#6ctQ#D3Qeb-O!6WN~<-~XWuO08X^ zUYPNwBEvVMpYl|^DU7hi;gTV)%=@oapkvHLD2+B)`w+Q$wLhsE|6({*?$}f{vd)HB zjw$o=N;R`t4bbGB@KMcM#bw@npqZ^y{yMfa;%#E=I<-|Hb`E}!1Uk3g+qSkB_$TJ`;E#hkSxot*R4P1 zK_0zQ?pBF8R!;9j+tXf$X)M^PpnVXaPz|!3;S6=0lnh( z1ZI>B*WU}%Nz~wP^NoEkUDgXZPxVhvB>4o*=j)=C9s(%ir|1+&@D>!q3raFe!MrNZ zw|*;h78C5^;p>6!{KSG`%0A0RI zIsS>9JJKvr(0Lnf6y;@38)|`~s$Z&+igyc$yuuf!xFN6^?!fo^>9ArBtMrq|xJcxE zP%jjk)^$nhUJqaVyRUeGgUt6=o3Ncg^tD>M=x%sX$D%ppHBSV(z>Ubxs&?P8}R<)Js3&ZTgf7U@5XI~07dzP49uG|X1eZ-?xu&hJs% zIXfb3;O8j*^E4^H)q94(KH^!hghYJAy3BI5HirAx3sN}EAPVzFkDyZ1!bw9zyA?C` zM#!iIU<|{3i)iqubo>=lT@e63Cts>b0BiiVm0-=xEPZ#R(lq{3Q2L}Pu&RlhZvq|D zf^czCi^x8oqK;*j<)pIUp7h?HQZC7L#(jJ*aQUZ<`42M>?<)T9%4pyp_`gf*-`#bL zRR_lci5}uTl>OKRmK}28cNE|WL_IZ$&Fog-KS8by`q4KxBy5oLp}M+!P~)icBxWS9hWEMUh@T z{T~0h(5de7|L8yPy>pvO6#tLu`MbAaowoDY%$XQCX0Qi0r;62JJsFZ8R>*JLPP4m+iA8Z{%c2mi2wg=M>Oac9#kE>Ty$Flg*H%(xxC(g zb^nRbgHWRKx4zw%LQznUCIk@g7NjE>QJqGBeho$q#&P7rKY+Fx2Dp19^H!xO*6dM3fnSK1tADGl#e`Y|*0<{qLy6A$Q;F|9t{7Uy=;4@B-)j~?v{>}<5-|&0h=T2lkE&^1g z_$@Nc__X)EVBB)klte*Octe4+GBeGq&u%#Q&Z0DMNLg|cd+}D1CTj-ekAsm~&Em_` z&M+7S>%v%d?|M!drN{7CihnW|4+Hj$72RO5xnTqAgAo&^pD?d3PQ5;R6)LS-ks7g0|3(LG-27+jAWjl^lrvKSq zFjfm>5ABrDZ-~kM0xbP|EUoPKFqEI)kT=1I2v3MI%PZm|fZPj}J2ikf3%*8$z?4g9 z8w7L)uSteooK3JE&FZ7h1Dd|Xr}1zIE?`iEiJK9>kXi6+AFJoFHgv)&tFt88X|?A6v%mJv zCpT1k1hC8YHm|xG^tkxQ;^(Pho*BP^{lCB*VAPwgsy_97)z;o$I=#31j{pY??qpY- zHg?}CU-I>Y?bdC}k1SIXJj)a<&8~Uz)}~i`JfkPh1NQuCvg9BGjh0(@Ti>9q^5^-E z)E|(ZCVI;)+abLTIGA^_TE~=ojZQAG%f%|%0X*GWq`TgG^26>=@@FKr-a4|OH0n#n zZ(tj))b8ohYrtj4ZNTBx&3`U51*WuJysmGz@WQs$#cP2bf*9bMX1R>@Pvh1D2N`}= zmvudjw*Y1h@H|FKGjLZ$3m@Lmd(}+oJZG+1e86Gd+nZli0o!W81`cp^3pk+KJuf|C zPw{L<(JR0voTL>nWO$FpS^xS_bWZ-=x_htw7`tm92bC9&|A0023my6JmOmW3dw0(V zS5231$(d_-E;%E&8+g1B*PWTuCbXaRJ-K{ir-M!P+OpcB%op3C?SEiTM?KSePo;mL zYDV-#$*(s9H@(tYRJ@UI^~GC#@60YbXXPcKY@i@xyo(VW;&J} zN>`ab(ZuXY>&-=z^h>UORGPfu!MdcR=`#$!b8MMw;cNY2f7Zc3=B>I%*8DF9j)*>f z#swa231O7nv9rQ46M3z_-n=#^os7hFu~MvxJIb`KJ>v(?c3@lWKld28>gjIJ2Q8O> zzCQ4-FzchsYD<1Ez6f04-BXllo%l%1@Z`JJb;;hpOI{naK&OGOH6FX;v?g$s`)%NS zIk1d6I(ysa?R9Tn#c+52D|LS0w*V z-Z=#{xKlA_m-7woSC^WkS~`y=dQ~r4b7|{c;QX~#a~0c(lP4gul1Bav#g>+w@vnr7TN!?K=A?4`a8r>rSkWgtc=(trk$Dhf?B+=ac^oGmd}H U^gP!3n*j(sUHx3vIVCg!0Q|oLO#lD@ literal 50247 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 z z0awIy=2)NfNm*m&L>i2r3;|E;)z#Avl3xT4Zf$O(41Dj1(LcB7aWkH+j5K|UB5H~4 z#5%sA9q&)#DR_syXHuBzJnH@YC`NGo+?CpdT$TlgHL>;EEoJt|({6GHE61r1=FaMS z^0Y(EVzYH#;!xNSw1x-kNSmadJZh56m!yKrG=?&f*|t^o8w{30myPV;KKSH>X=uV^ zkDBZKNiRl>!I4qtnGq*@+{R>14epH)FAPL^9|tgQo^t|)9K8H`uj}z5#)>xYPOpz5 z9dHYg@Ay`I z+)M^kf5$vXHk%0a_wT$LjI7ffntbdTDgc2cmfZ~;&vQ*JzDjgd6!1euC$SytjK7Ny zW}LOitaOdM7*ZaC+oWLeoRUh&G1bTCYN&NtRxz3~`9vcVEG?E!M9e$B960;#9a^Tp zEU75j>1~5132y`1(LKx8FtF1axb33BAIwFJ_8wOY;zBUQIk`S&Hx#10)q1#BX{jF&zrL7bp4%VI>;c;Tm)UA; zZ^;I9sbo^S$$W1xQv$-oS9@c+W{1IK-~2p*x(C#rXht_ww^A0Sz}VaRL{t~IV{zWHkpy+ZtR?0vwo9z6$rmd8$Y7l^f)+Kq=zld4pgxO z9b_YCuEfH#3@C{{i2>)Woj;)n4$>Y0p48-5d&Ljs~EuI}X zr>oFx>K~o&y&v*Bf37Cd4Zg{ZMk87g=Mg{nTt>9-_PqXqQb^rBPdt8W;KF@3&uI77 z9&j*XeDsZ+)arZrZVGyWuuutHuk1z?VKkb(a(`O7daeh$dfCa4q)TZph(x;jCji;4 z>*eM3m3o19%-sVt64QWMP)<|dG~vmzvqShjUBCBC(L}ygEf{NJTU0Mj;z>iMd`wNC z4hExN)AtvKsv6f_E*un-&Av4MYk2g&ee%GE@kb{LunH=UMeg&@md?htH$(SNCV-%} zuGa^RX?rA#6v@}p7z3*JZ2YDLj`u!S8AZFEN3{nbc_N?%7S~A77$Gl^?{c@R^T%~B z4D|#*$Y}nA#y~BgpG>A$^QrZAdswZVXfTwts{6KS-EFHE_R1K@`Bi9c1y;P=+~st) z(Ww<-!uFfcQdz=9GMu3zEI04g--;Fcq#N6G`+=SMB+zBKTJW=p{Ld3$jd1Dm(pfO` zQ4l^_`^mX&`WWmRzn~((ppj5NOK+8y!7I9$$kwqDg#T<)jeMsMuFsd+K~58hk$r z_=h&n7fQyw;3xuWC$W#@vz!B9!x4kx-!p$vc}$9xWn}u;>bSX=-h4QpV{T z-=mo&7s-BJ*)<}XITgz^TMZhRoKJ3vvp_3PwPz1{ydKMgA4F7bEGX>R!e}jvKl-Hn@N(2s} zZy+Trr?e)!_u--`6gErI%Vx{{P6zLh2V1OFZOScUvo0mH^@eh>^_eGGU%JJ+M`|kmdEsX0DL< z^bp(8xSK}fl&Va(5+d}a6=yV59Yg)WVE_xK`G<=19MXwVqEbiurCvl0?q3&|9QxOE zNj7niJ&isn@Cdf_hH3OYHu?*3xr8wM2)7qzDsf*l!h^^~YqH8U^CZJq^v`~UyKkEw zL=hpIJGwS+4=M%izMUr&{541epX-Z2{1lY&fr}w5(#SRTDJ%kkbt$*a+P$w@8Ofmz zgb~AlS86E-!lB?B-Zi1O&aBqE1q>{Xc=Evcbusd@ulqj%kCkz-h`Trh)Y%+EdJ=-p z#46Q)N1G!WA{Q5YfJUR&lGt~{eduZb!vYcrgQ zZTBl|RdFG5;4Bog9Q#I1O|7sw*Xr3c)6Q_?JfOIn*P1BJ-KQ}gEw64=j@g?Qdp{nv zs^3G!8RK`%L=qX8`B1ro*BR7b$hhjy!LiPSZY1hw7dxiK^|<9tYHD{ieBgtj3I*M8 zf4YX)Sm*#;)(!XK?Qf%p*;#tdrmX+M$BGtLY(5ZCiT6#fAvPca|7R`tzasqz?S$|g zEaAgULS7%mt_O<9z7Kbe#k}aHy&s1)FSp#= ziVp* zIT|dTK0(kfw%Ze42t|CJM$WToJ=aLk7JCA3vQYFY_a}nbEk%&UBEerN&l%_!vZ`k&yUgnvg)7+Pa`vZPSyigE@;4AnF$2m2>a2987q^hSU`9!qHoV(zQJN z6Rz%m2gD6bhU5L=M=pO(PfO~Vx`%d5FMSE4h{=;3hvh@j1Fa%tWOOaE;B^vFqO;l= z3|K3!8oit$_Klq^d72nLy1+s^r^>gwr1R(J(Q0s3jW~+c+Kphwl8byWs#XvzQUmW* zWQ;z}m$`ox=B(v(FstVIpNDvGRZWfAZ*8pKo+>QWkLbYgi8bG*33L|zk%Uc3KCVLIxES&QmOTuj zeXO%RpUUuh4aT#r2>8>6*dln(n#F^R650UoRwJ`*X8b=iA<}#jyNf{hIn5=5=Yk~o z=<86n-9ZV~MR(BMPw#7EI{b{rnw#oX@+;I`j%=d=C|h94k>L%mDPpu%ckwk5aXEuAsouMjEo z{;Witg6smR5nYA>(MSTeETHQ%>m z+FYASM5+rxBV_S3Mz5hcHI92k{cgH@WZComk@!9H{P)ykbMB?~Quj}H51O9H`O+>$ z^ii~q2@XZo0p|Om9RsoX3?r(34B1hdvmGxejn)qGI3(kb+x&3$P8Ef5y-)bXl53M>AcgG) z+3!})y6&5aG#5?`?#-&$Kr1=E4y4IsdCOFUJWap`icR&vQXMQIE7*?Y%v~OfX0eXm zjP^`8RDBLBm#MM|r!-92)$V9rwL?z_xTehz_I46+KJ2j;0(*ma#by^+QN+7u;X(z* z4K%f2GW2L_yfrB!lGDbAJ;JA9eOrl4GWfoJcO+L|wxZ>qgs^q}`<9a}o?M_f(`K`K zAzWNagG0Bk@`TYr?@?c>!ciMY&oj9f!}<;j`izHIrPfoJ3-kLCwD0sBPlHe0HeFN2 zTH{j-T-=tGp_<)}YE6zXrA%wFj2BNv(s*W9h-v%n5zv1&RUI(UiQ-Nccl>xx&)*u= zby|Nci~Zzu;h4mprdO9N-~EddiJBC1+9=EkPwiE`7QwqK(jRl%ZJ>E${PwzE`pHU1 zcEn!mwUc)Akf@`%HV6!=Wq`2a6}g2&&TK>-r(LG+*ce9yZtv_6IUM!)7EL3A@lOQX zI!GByxe9N1z9~&NdmW5SP(kI2#jCo*fnanE;+SQQd>3$;Hw08l+`bt0b)dV<@LqUb zE-S1=S=j>)!5Y?bvGq7GL72YdTI{H`X|)3^%X61ajPo=Zi3os;nXN(n4NHWhm#(Ou zZ>sIRaqQ|ISyCpOMM@9{Yz>IDx;y4=<>S3=zFxP@BoRCR8o#(Z>+y0n(#e8U$6cnA z-NjmEHl(0|xln^L^YOupY7h;SP7}Mg3_ZL1R*AiG;!n;=AgutUK7UrAGfkQeFm4p1 zf1l#?aD(4QtIDqlb}pd7{`G|T0r!23vhh%~!5vB|Lv`a9^l!X`y-D-~gE8&HNvxdq zfovxkvzBN~iAeb)G)22%gfJg9RcGpoWXmAK5u3KP>^P+qIZ3 z*oRP2UV6&U88up5KjO3io2=mgUj3{%-f|GaIZmEa5>)eR^E_OinLqRF-0g1j`iTmN z?xx)}B1=g>4U)*;Gpj1n+XR`Yp$p6Wo~Jr=fQRUqBwxLmqeh(dQdIzxHE-Cnl=?nI zT4&T(;5e436t~`wn~V-?pBMvg>ujnC8HrCt^!E2L=HtHTH+Y(X8g~!gTjjTQJ=88~ zr7P=xQkz5aTDh!7SG#2wo+j1HvAJ{kZE816BzuQ@$%fvT^fBe_pZCcXBd zv%URyf4ts^0JTbll_!E;qT4B=)uLgK{_ayb!Jdw~RyldM1Jc-UajU*pv5IUiWShh7 z=Js%3I=N4d;=1@X0XhO8lCA)v3o6QTBk%RDq+tJzNe&>VTnaP8z}Kobe*kgpKZZz+ z$si61(UyHL|9V}+y*<5j`-OnXQc4qfo`SAc9Mz$vyKM8r@X3q$iy8e=CAuxtbke?p z<ad3xgSGM* zLD@fqzaOK~A~}GUNwh6t@lhQZp-M0e>JAI)jJF4xee>XaWIYqty=EvsA>c0dU-UpQ z>O*jj{Rz6TJc>xB%yx0(7LARX31$J_v52YrNP8k(*lRt9=g( zHEB>qE>rpSvLsbuqV1pVfOb4G_nl$6A5iq4r+Vy|kFTMnt^BidJXGysdd1|-xNoP( zk>~y5gblZy#-gW5Acj7bhYt9!3M!8P&-g;R<-8xnMrZQAGF9JZ$GGFR>}Kh@zPMpR zl@;J)`=?JzRhp2>b4U2q_PZ${U~+?Glh*BQ8x;mipww#ZsyCM6iA@C0gNHkbxpqr& z=H={s?M~D&mU3?2aZe`B?LWgD2DL0ok#LF>c37e;0+83KRBRmw(gVdv6q#Y~iPoyF z5qa}x_G2ZfHg?-nH*nn?^9!r($IygbV}zNI@INz8I0mizCj=_PUzE^cH$V@Jm5l6WFZYx@kb^>S6r1&YRGhknM88CX4X} zH1Id_q`aIjJZ=)kgJ^pX&MBjVlnc~d*uP!fB8KlwXUnFFo32zs0!*m9Kb7H!3s+6d z8}=GvP{`l;GGb^nXqqx(gv zJgKy_6efk?x7dZ{hnh@Wy3-cmMbmRk31NltMS*y3#>OCpQzl-|Qv1dDrtY00&Rj$! zt8QOd&rjClWD)T9Cm5Hi4UXaXQk1NZ9o?3ZLnXQs-|0;VnHDyaKVK+CXjB+6Q#3(< zw6b->8#ldfFTwZtf_}>-hoLX>l1$#bH(uRRn*CWy2zqPX8w(1_PzT^pq1NQqo7x>`qo9tK*Is66_&pSW4~1 zvkaVTDd5VXdLK~yTi}4k%7fwSqM)qV=1Zw(%}aep*Vt-eZN6`EIt`7faSAG-V>-W=sGUH)Hq^Z)z50sn9?ulla# z-|40WCc{7J=KP!B!PWg)qQ4s3a3Cu6>B;vbrvr+hdG3wPRt}m&WiMiIua4Wq3Io5<~8tIKdcW_4o4>~$w8BW&)HT4;? z;u%pnfW7|d>M5d`|C4Fj#Ei_&jy4*}<{?^z21+lvBb9fM9se&yF!TRU5o`^aJX|GY z?p#~NR&El{U>N}-(PP_&#SpX#Xp^t~W73ueCo1l@#Gn%(&=+fS?n2MOo|xIOsfJw%jwUiBVy zpxyvUghM5+X+m3e$ZP8%NMpL#1k0)P-9<p>t)O)6_aT#W^7PasWmfZv2Mu)M+8)KeSrB=eP6Az~gkRJ^~hM!GICl{Q0n< z@~bOicLhNx42x{;JWOe#hW()3htVaiIcI;d;$QlJ!Sqv+(0Kr$epgyAY}>rC8U~H! z!o*{RL))uc?T4aG;=95k)URoBjjvb>+@=>6uN;nN2G`ny5hWtWVeuoa*nv3}K{WBJ z_;T^lsi%bcl(v63ka_?``-_wZQ%R5)+9R66{kJ-RCj%}|FIcUW$cM11_V+<$Q-#0N z@aqS(WjSWj)Ihzj+blXF;KwFi>Va$+E2|hcRrK=IZhP||B?ZLySJ=(BhSp3J0b;hwYH(Iy^0J2QA@LX>2;N+ z@B3bulHaYz&0zD-_A5CGL|=|K-6S`54^aG0MPZLsP`Y zb$dPw3#zlyR`+2C(vUfh8+>U*RyoW4K-Wu4qM_(SwoD}*700ud!GNb$YWv8E+O5!0 zF5vr65p9yq<>^A52mAtHmT~l88otS_w^^^$6vwwtvcK3}a29A9o6O(+d(-o3K3e>@ zHYE8L{E5!T`$yZDx!-qECaJ7=laQ#)2tO^OyrkN%c)0{)_UIghc1T zm9D%9s#rU=HNC($W(=u0;ck{n{dA$b@4n>eV)-;W4-n#mZ}{5{amY36om8-FHZNyN z%R-}U7GNl6mmE#}y}*3oQh={b5!Ezx2MUZxn-A%oEg!c{cv@kvT>sZn26P_aJBq7B zb!UTqlC$Za_d<)l)mTD&&y64&OUcxyT;8JKN6+{jyU;1q_tN|NA=k6<9$(VjSsF+L z_wIuQy#nkQ9ppl8yrlu)mHDk?6)jbU_xD&^`+5jWn?qBK5hc8+F;?lm@9=ZuaD0Z)y|)4 z0!v&#*MLEzVhbF&{qb!tvv8#QuX!DP$;!H5b3C2&nFW^Q-HuRpLZPo5T5qtt#bVng z6N4&q{&YVnS~(Y$q+G z4@j6q9!Di?z#ahNaI4q$NWbFlyI)T}fYYoW)ww$YT;vmd5zZS%bAucr+4UD z74(b$Q?eF%3KM;@EjGGWv$iV_Fn*~~-8?9>og|k7mrl3YnE=|5t{b#j z83^Uq4{Gx)jB*_F=|zNCNJ^IMv2~Azkm@Ao!OrLCN>&-@2-!ecwc zJW3DMRWfAq)Fmhk@;8hV7!%ck*Te{>Y2&UPtI6)Za|JLsWw1jc;i~Wto;PrqnS-Zo zxxx4+?&H4kz(JFh*!XQPRrNB?PV)6g5>l#k!qXC4TXI%Id=g29evmY0Ezs!=}>2CIK^kvaAp@^ydpu8i+Ls*_E}y{**i9gXJTwRYWf zRfmL_t@mt0zv#o8_!!Km;~dj^gcpil%-@u&`Z~nNQ>cZqiVyD60aNwSgb|B-U24B@ zT#fF?b#lo|p5HN$S{+&@a7OZ0dF(d;_Nv)I9PlZAnfwoMB4fueOZE-OkSDIDE8;Vd z#1{aQRB=-0v20PdVo4qWnB113fXQtZ<%|yeMjJxH^ujY{%EnAWqopj{AU)uTpe6&X zMUdwtlQ7NKmok_Vka~y8h!7Qr7ZItuVkkDc2LQ8Of~8aah8A2$14>3l4922Ts>&^b zc=uRq*szuzWr_tpEr>v~1RGdr6(nxc-u2Z`GYWX}FB}#dDz<4qFOgpMbb1~gaCz9l zlZ%doBw$T$CDqw=KPnQBJIeXK7rQheM$VY4zxZ=52>VgL8rZ`_JNA-(5O=T@sCV`) z1r4hd`?6dP44ajdW51dXomlh*SW)pAs;~{BN~Iga1v(;afziE(emiX{l1$el2Vu{y zf*97WFdOx73zOF?yD!5TCYQhM1#Mu`^?}PUgYLFmq~HHJ>vI1@80G!7|8Hyz3=B#; zV0oRUc~t1f2Dt#FAcNi_0$iJrM*F%|53I26*{ohW=|9!sxysfRYLy3{P z3Ni_OeYF1?9|19Pk@i0yk0%v4cCkf$zh_`A%-a9w|Aqpoz-cE|+(t)-2l~*B-9cw` z4A)POm4Lc=9iE3N6hjdHA1Tt$miGV?*vLKDgj}AkDXe-$1JM5*P9^M5U!^Q9Ruun* z`IRWnAVPaNcZq?+wK)$`gyLE2Y4CY$PdJ);<5S5^Zp=67s^EmfFFHfqqGR zxUfh*kJxQ70Y9})Q83*%pH)?s2U_W(;r=!Zn1lSg@gPpC##7&{Jy>@{%66k$KAPBS z>GsYJyK1L*&YgpY*9rtvA7rLo)vKQ z*uA`Vjs>VT`o!7m7t_vr4$v5B9M=}2Ez87<UO7l55mp}W zVIEB#|1KIC{DC$waeY7^AKh35+?ts!$KTBAn=2-Lwl-b1`34O6ceG8B_04V<>(4nj z_>tBQCRWPpnfsIrOu*GJyMc2n9rfAL=?WU4Ed-ToDb)frLG8`iq)4F@UEp=hT>aF8 zb@*8%{VD*MK(4aA>pdgSaE2WpK2KEs;C~Q__s3UB)0uZ;cj=}#-98wVH2t642m#(~ z?nd2*dA(q@$~tQ@`z?Ot(nRj?=5K4EGyXLgMi@k3p1$6k=YB}Wi_Bcyb9y)wS-k;{ zQos)6WbEO=kYWcr-(3Ly<&-p(C%305L9z}Hz4@}?}25f*>KA7!TWV~r zr0v3`gZb7kD)Tdb#Srw8LxMl6`Yw*6Wpjsf%_1GKpRVcQr)%Rq!|1&oD5|l6`*oui z01#%D-`k$b%j^k=OFiqJ=G~f!g~b4+W1#%Y^xvj&qK~|7V`8zn-8LORcIfcUk{g3Y z?&4^S_@ev_^#LW)Vt+C|t=;DN8G+K$sO)NUSS^aU&UWO98Sz^q_(c0Vv3q_qK=h1r zqfx^M?6)3#S&K8$1OAdnq?0JIkJl&^R*rV&Cq(X=^+~Lp+Sgg!D($OzFV{j5eW!E^ z03rf7igH$`NGzs7I&LO@V^)A3smGH{D}{ayz7>o90`3CEQPm@#4n1&}1NssJ|A2?t zAK0}&Zgln4wYCzVK$)rk-h0~T=z9+vMzk&aha(hssoC9!I`cI@x^Yi5F_6f-c;P<)0Duo~WJsm2WhzLmsh)L&s7hmML6;oaZWcI{>GLb<}>f<&q*3UE>FUSh5wL z#NdhJmuA}k1OcGU*1U}~zEE$ozn)evs7ESG_^P;I3W3k%s9oi?1f-az)!%iSkJKnF&a@K<1}}Pk z(zt)3uk536yG`-n%tru**mZ=k02H`6fLv69s|Co#Sh=^iZzz5Mj(#1+5)d9GZ-8cj zeQuaoq=*Vl(g3lEzEKEGw8A6(sT^k(ycbmj>=>V~gPAT;94Ph(ZrmLlq?w$0$+Npv zIJmV%ohb745%5uNiaJT<)C+?)C+WP)f_$le9eFXhzk>@1!_T z?{60+!Cbapi8J#(b_x$hUF*<88(5^@7r@>{?#Sg-3$WqF^Cvx`daC6o{-D5Go7fi# z{rhqvGGV?WV~6t_ktxN2&S|_OFv20@Q{_%N{48?pVS3Bb@d#(;(mXt1b?X2yrueM% z@2O9>@z^tmVM{z-PR@rVqaKjx+<()Xp?g-A!P;Myy0c3_G9pIwfx)Kv;t%B*`@8bP zp=i-$pK)DlAu3RJuQWw*px~&P_L|kUchI~6s0G<*V(2spse#P zU+}>eP9NYJaU1#|Mm7T{m)@)}my)$D(E>dSMG8$0#Y?m3;4Zm*iA;QkW$y)b>yd4; zAl7^-fVoY?(tGKl(@;beF!uq#`Oc`R@KR0-U|57X7mdn;fM9BoDPyD-Z^hoe%cK|*w|fCdV1%j2JfrsgHMA$suPiIkp1NMSDQU|1l|{A zLjZ6-qs{QJ6#OhZ3i@~eCWHPuak*Am1DsFjY@|a4O?fT+4wd!nWHLG71s2K7E<^e6 zkJ`AQ31zEapJII}OMOB;w|BXdctpK*k*3c5S{A|zNVo#(j-94!=4kJKprhF1g^wl> zyFzl{gsfV3m^~PX$uWd87oW(r(Pe(f;ttdVM8d$wcj%M|Gq^t<+49~31S~ti%QN*$ zU;MscRUS&BE%^gMS_ z7Ls7Gz_hwZZi0V;IvR&^>f(^ISYft#mc(4FI37|&riG!X#`G3rg+R6Xr3V>2Y1GVq zW;jv~$ebsyQ{{%I%WFaMzcTVP(JN05vDRX`y)yhXOji?U&J{|e1R4`X;ok}pXG%tk zUYg>FTI7qR5_}f7gBko!#92ShCdZJZatm4bnNJ`BxU)c`8_@*ja5!GHQty37US%-< z4gN|{d&_6Fh*3`?Is&yk2~=OvM=xp_eU213WUIO{w!*B_UwxrCC)FKQCSH{)m3nI# zGJp`9Uaym<4&1{_8dLs!df5P7cHDE&t9HfO1^MH9_-=JlNDcLNdR4^>;3+Byc3?_& zM%MBL+%arhR2ebm@$vC`2BW{_10W^eshIxsE(t2hTrXz!E0ztQ6e1M=b{L@uQ&%CB z$>-pgc~8g(sza9SfEzW@=E8E`E{sa22Wq{n`{~8N78huf=TCxc_5m6Ta2)B`kW?Ss zmK)t)%OQ4Gsl6(nDKO#IuNVkC_WJ*=jiv6+)Pb1VhvS&B+SZJ?IY9$nP~*IA*3I3k|PXzzO~ z3{3LTpj}|`)BdDUW6!^IFB$w_-7D*gT&mVEZ+krW;k9=7ON$2mQH`x?xv~AH|92o` zGha0L@*1)+7Ud(RHaNi0+9Z%N1Q>z=Jo8B9u|hsHx;g#nmSQv)5og@}3~*dU(~EQ} zS`1E{V&{zI;OU?oGPJS;xl1=aGM!?@Q>Lee13ed|jiBikD!g_yhV4p(7r?u%0x$6z zu6dI}`-pawh9Q@p3sQP`=$7nuZopj%W0@0-Ii597kGtt0H(@jA3+&$N#v6D4j81xc z$pE1=P8h7#WS1Jn|24u91Wsi#;@zuexc(vOIc5*-M-X3O=i=1;^`g{bHA3n!t!!_S<0(jlEj@uQ%c3pYO90RYZ@sk;LqGb1KAh1r-DCdL7Mb+i~Tq<{d5BuiO$^cNvY3UpIB(EB_(X0xRBS7B8BW4~Y} zRm*Uik2xWu;@$!wD=vE(1M*WA_cqqdPC9+T!@Z_`4eLR|p&N&}`H)tt8`y0zOrU@j zKxIE`=|JWmcNNPI@T=!7mTxHJ--x1r3}qia%$)^)b2n467*N2??)2nwKLZArd2_I2 zfyBD=!FyKLlTHtG#dJ}x{cU)%%93TEicSqj5`qjNyab<`jmL<~>%AOaGyvXyQ*i zG5*T-EaP1aP-q6vg^p!O$VZtE4!dWQoT8??ydSCs(f+{5wZQ(S{1}`>ce)Ou|K|T~ zA|sAeFeK>ItDiur+u*)M=nW-OEPpO`>=gL#1%UKd``3OHY5VXO9IKpOeUJ1_YySiQ z=7ESF_!w~Azq)Why7u~y|GXCRpO5@M{~Oqev1M2ro{~-R_Y2W+f`;+zb#54?ugRyb zc^~8dc~F3?G3p8>Og|jye@)C_|9fIav-6)4GrdRgu=x})NE00_V9-V4 z{Q3j|AFD;lu^NA}ahwqQkQ9?s>GzTBil@tn)P<5~XuZ3J(WLJ6*#DsT2LM8{s^#lL z-v-#_w!3BL6kFLUXos^FbG+qBrHskx z$B-Z2fy=x@(qLNJz2oHpyJQn;;4@XQ-n6%D?zg!D6Ad zBw(h)r6iE;6?>5Z6{8w3g;Jf_B3W${=yfmXN6mlbav2-!)cFXDA^K4fKqyD2!6~s{ zB(%))o(-n=ztj$`|5NRd);2pA723K`w$)!3&18160SE;$XUBF*aVzzzHvmrr5Q?g- zR~D~mRFYT>yX%>+;(%F1^1SKTheV)U?REX&aIn$?s*@@b{avt}+cK1SW5O*Z6wxjGrA|N@wV|%gzBf|h-?Ww zb%e3lW#DfEm8;*-Aj!Oiv`dt*hzm1rd3YK^7|9WheAG`T%{aY;9i! zrjSa_uqwrMFtn7Zj&&8HqQ*}TR8p(xT`?Vh6Y8Xjl)f^|Eb(b*T=&`JxY}icgd)>z z+537u>)w_`LPsz!Qcy5(Nes=m;!N8w@h{;MLhtIzd(1TW4wbM`E{EUVZOJP0>f&Ko zfZ#RFgXX!BClSY~+;N!K!vJciomG4#InKx2jVUlcRP!c`w$-H1yo+r#z`E-fpCV1# z10$_(@KiyhAHz|}CqdYZcipm(5KkLu!GhS@ZC>NTA8U$G{!o__>boSa02^#-ROL!N z1Dq)9wSQ86CYy(g{;s&@r$@A@cIVpW{{4X+d*7XK7%0TfS_SCu{zN5}=)^O7Mtb!< zyu^9D+?=PM&=4~`1(A3C%1@v(+@`?4CLgBlBVa#b3Q?Eo0F_1j28u2R41cDj6V2>s z22UwTj`MA5VUiAd!#BE_-aouck}6SHOO0h_lgZgU@d4E3^h@A;?FJ5y9_=^rDx+b0 zmk}Icu({FAQ(BfR<7_+~W;@6@^~|l!vu*3rgzlKjhSmo2=zf}W!f5<*K(f^X&g#Px z&7FOG60^ZZE4mgyo8oIdICc2tOx44wFJY~M4@v;gq%6bM@MfZ*dHJ-;=J!^-6M5>+ zDlCy-{CAez_KmVUX?CIHzDC8xY0!)o&hQPK8J$GDMq~hOAE}TXXx3CKvcS>bt8q z-#C>m>@F|eP;$L*vJ`_0d>{Wzfhpej;32W6tyX+>2}x#*++r-Xx8^fyZckp|XJP2#BZ%MXodl zV}80LmtAB@XSyRC^Yj6=uOpS6g)z*B)vn1)-X|ho2|hCy^fX(P;Ael%pC*P6NhEzw5bV z=|lV_v54WKSL{wiA1h(Uhv7_*el~&UmkJ#<2>}tIMsAQ&1xz`yX zNJICe3;;+G@x5Pbj$&OIeP^RTLDnmGz(%IAxX9|$xoW-A6eSFl$_2FNLiwdNO)l0Z)ffJp z{XV)sVq&f`dPGJCSaT9{VR;@T)%)wC&>2^NzC+z{Dn99m2izCXP}@OettbmpB7$iZ zNc-=WX2Cabi!RcGVmC4R@EK@a2o7f>C07EwN#P_-fRRwi)AEXsrm z?%Tp4p9ExHtnXPN8VA+8RxtrKGU*gy_-cjA9G#39TskdYU#|+VntL>|p!jKNg_5#A z!UA$Y+Z*^ElgFI}-HAwG8-mO2<@M0)*w3U{fqTpNx7I7bA~73uZDBJqGVjm8l2%6D zDgi*h@AiWKL%zSw0OMHAJHc1~46`#p&?g$IDJDIpS341w5bE6-0cv@6iHIZ*GizHT@B;;kNey|38PX*z%t? zWH9=_NzKLrfH3sY zHTh=Cm)Ns>*RIZk?_o)Rmg_hGlU_XllvKZ>DEQsO-q8S0vT}vO=O2>@*35{M_=vcR zK?R>j_g-s|mzRywOF2X#1+xOoH8LxV9gL=VHPwSZ^mm+2Cpcf-9T-Avm*XeVr}sP_ zZhf*tY{GAV<%~szmwS^BKp=D%LHWHsr*K+`L_4Gx#0ykhy3Ks_I3!NKjX0ve%PsA1 zV<5NwKe?_R61h? zwt~8`X{C%>&>~zd4ggjX%ZQT#ZuqNVOTcF~2{pwh!ovEXPainl3lfNf;IE{o_J6)k z_*Xk$X3Dy#Ox+(`fJQGyw_1QGeb3gqLof~3@8bAWJfIQGM;v1W2lr+j-sFGmHKy=X zxh}5^{eQ)sWmuKl+P0Mv0R@GrgoKnxr*wm)h;&Oy2~yG_A<`g7w{!_ehqMwRAkrY+ z2m&Gv^4$~H+Iy}2?)@HL9^d+9EuBo}^E_jW`?}6EJ85OA^P>Iq3tsMv8Rv#(WNf7m8+YZQm4)g=tpmn!Gi-wtn?gC4)kG2*<^2xOlRmAi7@dSmtb-m8+4F zQ}K;s%rH}V-1_`!Bm-F*fmxauuAYTqVW7QRj|LwhOI;ABDRUhlF!@(kz^X9hH(Wkag{BPW^d^e^9bcW5AI_N=@%1l8NWj&K_{NLx)J4VJz++1n_Uc# z?2u7p=kup(}nAN3jB z{YiCIS`LoG${98#566ZL%vmY@`IK-1ABM}~&zU-bwL@}ZvYPV&1wpVD;a9@YwfJpH zZ{9M3&kg8}A}f?!=JqjJx>}#whs_o1QLStQ8^R<%M>&RE=N3|3e^3Y6lgA4JoEn8g zMJtLy1dqFdNaCIH$mkrRWe0P@qGF=6rtxXzKR(G5Mu9S#*C9UzYNh)sZxHE?-|5g# zym{o8T+03!bQ3C>Q?AaWTbLnkvmjIze{t#NGr|Buj9s;Zf=OU%s$u)}q|~Mrs|>>M z=>WaD9bTYhizYf#9t_~s(5vQ0VWEP% zYM^UEiVOK_G?-f3oQP!j|-Z_d{(LmZ?qcrKRpV&+SRPHXz8Zd zp`oGM^PStNkGSmSJFXZfv!BlM5u4RGZaw>Ta0?7rt5ffTuNRAWqktas^2)j>&Xq$_ zPp4mj;T@oE*epAIl-C@`ZLN3rg=bZ>OyV7;Db6VJ&=)C>7f9IjB-xN(q9nVWVP3!W z+n!F~ZQD}-CS2SbR7_hx7Ua0Oxj~-*F!Bq}-tVoC?}1qfK>dv#N4r3&zXcM_1?TlO z@QLJIE7pAj3KLLZZ2tWD4v62vex81yU3hhG=f{s)_XBov50C+YHNd=d7<@~Ux!x#! zsL~0Z{`2|~7g~RioA#!7?5rZln+#RLk%aHjg0_Ir| z@qV~cF}L>O5=nqAxG2iNWn1L63-$tGX~)YaB%s8CD`BuPPpg8S+bchr*WTn)99x1u zxDPEs+NC4gUnA~+SyM|Z-4VHN!T^65%m?3&_BPC0K_*fm!V0%c`UK=n7Qv`p8M0Kt?)B_Tp69cd=S|AY@T|?X zNfP7ZZ<>R3gi)*9?5&8IS)D{AxAG~*6|D5p5UK5vkHP!m8^(*~(@lWv;Ec!Nhdc57 zVdi;os)`ay^uncaF$CEDU}rNN3p{uOVrP73^F)6pjgmCDj-Tt$qXnSD|8l(2e`^+w z6tu=nfjkSIq1reS-IIgUChTV;{+) zTfT`8ia;#}>DWt#s~$+XTPlbX{6{71J|R zx6bjVI!K+=Zi-Lh%AtD`&t^7>sJ#uVVVBll^cnw)*z(kvmC*|}HZako1>(8IG@t`^x2q$hQVi{Zvza8dt6aJ=tKhk;8L(uf*PesI_7 zQ(GvBZ3OEh$%e4_TX$yzo95c35h%5%WIp`EgVsRZQsQ_S@R1vjcokQSq0_rRyp!ae z`{d*#+9iow89v@S3Mbb!I(gOdlxTi_MkB?NtIqaUe3QZjzd$>@DW>G}N$R@aPF z%F61S9r)>YrPV>HmaRZg;z4@yZC3l$1Z&yK-?a7kRR z7GGwjSZ3WXI1ANtm_nG!Jo%fx7rf6EC}qjMFu-a!fWvxaN;JREN!SU^H>JBrLAHU$ z&3T!aQ#yRyMniwls3%X%4~v$THo*aprvFiR7iEDNQ*4Vsy4bl}HytmkT!J_#Q%WFv z=LI{`okZlG2qBLtae}GAl<9*<6H8Ngh7D%kdlD;6Zlp?&?suRuhUvf7|;Hw zg{GGt#V#(P>FM{cql&vW!K@g*xU zF1KYmrA*8Mk3jT3bwRuIO*D*4-DCbkc5aaO+E>!iw2w`bXQXXy_NKjAWQMrrvgS9Y zpU+3+x~Ity8Zh)m`?@*j@nHtagGN|@E^AU=m8Q32ZGSE7=$WZ=u~z5iD}kS#9y44N z=dc$1X*Uf$uC}3N2dnJgd@PmLN~|XVf*M;~B?&v0D8KX4v{gYA2KU}y^>N2=I(*>Z z!;T-vBYm~>j+~!Ah&1hSRjL*HE+KE;5=AO!5m7sY^2M1D2OQ!)TzHth)xuLYf4;w-{-OQN7KgL;XM(@}DQ=(Mp zz*9P!(l=uwJG;V-4qhe9fL1H=6L;cA6a44c;9xX1d zh5jfg&a^AaNn%5?Y<(|FA--=ZG&a;j@F{l2v==kSduC)$zz*@qHrfjQFjY>)sE0FD z1ga>}=@p3IHIL98Bs#I&;@<-bc`xu+__x*XbLgR+ohBu7#UKu*pUwa>fSQ_{s2wAKp z%hrVC*|xwON~y2aTiXltdS&TZ<~`}Jb-L+Z+d`^vAxM+@UZj%Wg-LdU&wT5ub)^-D zEV78a&JGA=&%VFZu5Q0vrF0ZvP=C$LIt2bv%u+!k|Hc1f_6PtohXhG8lE+B-Dl~~+ zav7!c-RS}boIfuIAK(-r?lT%@{R2{(2#m@#ZRhRpevq*}oo6cWB(^$?g%-N#QVf-< zF?^$6F6XOBc9lFv#Hp9RH(+}-qISdgsinQH`^=aD8f=4w(2QfPZ#&m7smY=;b2lYYFVs3R^D(Kx+o@uPOX) z21~a7WslfZ4W=QR`1PQFiHzRTa)dX>*thy#-O}mt!7D5dD3;Vap9CPOs5L>1)F&;i z|CT{{BMk*>o;iMmZq&5#{@<7)!iHCnBOa>PovT&~Lw7!y_xHbv_RTIVud5CTQ7}* zjLpG=s8|^%nGh9UV!6gUn~t319Kw`prQevr%0xj5#v$8@Q4~j2d&|V9=k5tdO~v-Q zU9S5K@JV*p?AS?tQNmN4y6)#&hrziIl%?wZv0tbNMR@h{*kU0tsslVlPj=yLfawe? zxo~~ms%OyM7v-ZD9Xj$44n0K(11$fglJ(wClP2F}IhmlxrqL`RUF} z-yD1R>|Gk!ryce6ueUeFiaO-JN)$5sq->A@rTLKIha*3YatT3?!B>7*F;r%Kxn}nl~xBniSNP0cZkGY-$8WP%f?hASF=DjD{H)`I|AGcD2nKNs!{pLLF z4VOPMj@?iw=dgl5`5Y63iF0q)V2<0gtGRO~f6BFrbHm2=1m?H2dA@$y zGZ(uA18TtKY^2%V6WVW37DlQgBN+akAG8%LF$<)+R?WTPj`^&1AL2$_z2}_@qaZ9%sH=Gb+5n_1i$A zQ*qRJ!f#ts&kla@cI-Rb&W5j4U46sn=5pF(8(QJ6A9r@gv4C8kacw}5nRrMX+g5}+ z%dn2$xq<+`k(l8zzwPL%Z!7Y~_MPj5Gbn!@p0&f{6%P2q-lFqSXsSFa%<%Kw92hrbgsUE%X^;w zE6ViBjtCL!S$FI7Uyu{Il+B;I|5n~=wtpyzNn78*FZGCEq!mZ=rDs0p+hn%y5{Z2d zP%BrxlCJTZzA&$L(UUkawZ8jDm@oZ1_Y=mDu|NTT+aBCEwGJDUZn~AZ{YQ(**a^zQ zK5)fA@eN&mw|{(t@12q#4!)#{wO9evyHsdYAMw zz(~PV;9NfX)yWw%iYmvGT_VJT&-r=SM-HS~ej^bpbai??)ZYi5dC!}5y)*m}kk!%z zAtrv@y!mo75!l;X)%CCgC=)&caNeTy_C~f-+F~u%d5i0B{|cl4=1kjV|C}dK{IZ^E zRJ!tEE`mf9TkgrLe^kFp%D5-*EJXaRWcYUtdKWH&J!cFl&Usol${=(6Z^HY zeSw%z>BjYu=_KP%pTBSaL~cznK}{c+UPbb8kUR$Qb9XD#SnuT$OSslq#4aLA{I9%3 z>DZaL|1eiD(N1M`7Ia7v@^F3FP>ufG{$wyyjk{ILkII!LMfm$m&0knk6)0m*<9y=K z)jabc*bgE}-NH!*A-Vl-q&Eb}=7GQTguWbktUo6->n)7Eiv@ z?>g^5k~DM>9s;fibG=@xfi#ci>;m-j=N+p8Z`IY!mN!LAv}*x6uHG>eLd5&pc|{y#2<6?r^|TO2k2+N(}7Y5E=zn4I60H_JC{S)R02nyr=^tg$knqA3mz2} zm64H=N!e_B`2C#XVipcn=b;CA%Ss%I$n)x#G$1|?Brrg(XEIIx6WjjJKwDOMZILBi zVft@RAfnFscW|v&&x+P85&xGg{3UQQ&PZg}9-K%aeanrywD|(doykZ1xzKITdx(5R z&~%I0hNxs=vWLf-NGu`SFPb*cT{%`1uunZAsKYL8FZ%B{7jp7%kLv!(uwStOhW#jp z9`fKHkoW&+t2u`Ke{8EA`I4zKPXw^!npYyXFoV{w{sm;X$aULf__1iAhOL6`*Rs=n z*Pc6tqql+KKyUXxltlPp(JU8(R>C49@y9_Wn)?sms`$eE`cZeB)QKXb|M?6)*M1)| z;tKCfg%6vUw`^L<&*@-`i0)m{GmNq1$e~Pt!;iMaxEfZy_V*Q#V8iNoR{W# zkQ;|JyV4sSj<)&E2hT?t5f30H%vYFW-+~tCaKGIw#}UL;Y8Y{gjI*DuAHfc(wlt;Q zPJi|*8BAzYo)N(Mu@b}_j4;59t+5}r~hKg&i>UHzXz2p-^nyjCXtiXA^DR8UIiXHUJ9I<)9% zJQ6Ikx<6GM-annc9h_u2(I}C3&b4WyYiVxD>2pVPeOggeA;ug+saagXoP{Y_dLc}J z_fsSx&0Ol??H5GXethOLUyjc0aR1Rpp@*;}KBho6FXvaU|JdrUEBKychWC*I=QmEi z2|sD<+CO;m)Kn-XWJK%LE_*1d96uGXO#dV@B(M)|M3u<~6Tm225#ycvPDn-(O~*KN zw~lo6vgKnG(2blo{2;2e=-}Skjzq(%tm$sK9}L*<x^*ui`-FXkwH|CPt$xvdJ`oDuRa4@v71%&z(>H>}4Fqg0z?J9Dy4YtBiAzbKEl_&CgS3{<)4s107 zOw^9$6;c$GW0{kR$0qIW+CUBIFmNQ&BHFm?@sR&){=!iEa3X2E(m!WmMCKU zHayBxRTxvH~M!aX= z7#lJqW`LooRc(T!mBq`BS;JRB={v{Ec08mXq0!LWEOGQ#_B zHVR#cGK$+(uEF@P1M_71eghh+j8>O?Rn~Y)i~-9I_k-=%S;0dVdR5#rVOY0>X2Q`g zeb|p5MumkfC*TUxozfFPDU=Q*j=KmM_~NK*i8;#pff-oq!F=~q+KtQ<>K~1rMiajndShoaZSEWTnvLY40MfYRWVr(@y)rI` z{K|#39$yBb!v=N80~Jr(tLPJqWb}%mFRj>zL+$ucZ&I;J#A+9}!a#be@HKePY%vV+ zt5PRDhi9VcjqmR0%I?sXV_nxdWxFKsP@t(zuw)x2Eb{||oAUk{_z^t>^;1^z;QLZQ zA4+1Yv{-CybZihx4JmvGkU3374z~$MA0W#zxiw_6bgf#se^g~a=JmTOGjb!FaqSf7 zgaA_~tBKg8l9r9+shRBjGEo>WZ~pb!Q(r1I5vjWFvKzaI4qaIy#Y_?OtQvviQ=iXg zw;I{-w_-|#5X4h?65+mU#~!ZA7d`27vU=Hf8R2HGr zoZd*i%Il*QKiM2{ecmL?ktuIoyVY?>TBbrlP!`9%JN@%PT?l@TVl$m`d5l$TJi%gG z=$Zj*Ul;A$n1X_64_{)^i}R(Ky^@h-#xtuwxr+v^^ka#PDGp|x`Epm~OmCMZ=-e`@ zO)4iza9XwGrH{9zcjQ=^c%lRn1upR*0Gwvhsg}d{`XZNy7rYcY5%*mU%ZfhB6gc?GY6!4dp2^%Q@ z3#-SUlHw{Du*{Rc=u-dcVVXnZRmNnpQB#?h&IG*34#U)KgTpy-(m%TveDrHqKK~_X za<66oE@(#drLNAiMx9XC_=Cs~4MB}u@-aj(OduDxJHEH7{@;+cYo6ZORqaDwH85Yh zB(WIATjCaPT6_n8WJcyh3+@SjU3ZR)zHPox46wGsB*)i(rEMpw{GGP_c4I00f7+i^ zR`jm~IFkG?|6wxPPOf9UdI*gC&xf=87?$4Pbf3fK<4#Y zU=eBBn-s3eiJ*s9@GncuOVrKz4c)*`0a{tj(Pvo+!~a!Gm?|bk5i0-vV&#enKoF5Q zbZ^56^v*5hK%`IgO;C)%FgKrHNO%E&oEEF75S9{krkcL__G6p^lax`47)z?Xda7%N%@_D-Z4d z!k(U~`xsQ#TG=I!K?egLG|~SM=uhI5k;S==<@}0f&;*Y_ivm*T>{yTj$&I;%{O<;tP#%_W;)UruC8|uBhw9@*Sl$q)R z8GU{*9Z}>G-^jFiaa1pd!W14oNWYL3wt!er{mV-x z8;&dQ0K6?5y(fgQRY)3;HA4rPlE<=b^Jg1Q{rtD>>$ zx^LFDeCbeglSiuR=gwazXRfyVsL3pOPZAC|U%1xT7S%a6*LS7R$i}@le}5T+CDC<= zTKnb%M@#f@Z^K)I?@UD{)_&?7!6}*As@2F1Yz-y*p9@GWW@f#2XurUAlyHvrTZ4XuW)kG&DG`>-eg*nDi zf#d6|rY$Phy!#5cC-IkdacHaqQ&Z@qJaDP09oKlk(Y58gob5y=RN;sCEM)D|W+A0u z-Iq=&l8>8A{pH8~6wXlF*?EkvKC-FZ>f`wu|H;-Y7+gxkz+NKVY4ti0M*)7B*Nc8F zuCA*2_W3H0<27c%+_kOkIx>L<8BFa`n@c-LY-M3x%Zr|;5m+4m7CR=oRtl@yEwu)L z4}S*cPu3Pbq4M3AvZn3%ws7)MSrRi`>It|C78s_x9@bkOZrSs9cIn#jx5=UV;z<$N z?9J>{ZFqF-%=kmoBh7*D)3R}{;3u&Nf)CVUQt4 z(+8f1UxZvgF_cs5{oxN9yf4zb@|Lg$GO$v;mg5dKF2+T7U=#8_FyypTeX?N+OIUbn zd-(FYKzZZ8@nO@~t?4|sU{{aj^NYPU928X!`QXk!Zo$g5AzUVJuYPKM9;g@LBUWzQ|?~e{r67F`XW{o5DhdcMWGvz&9gj*rWRe z9vjj|^!m(3Bm*|01+$n&6zs$RvBK3o>=^2hW_Cv6NuiVk9Y1v1N!m~AY(^{7s|yJ` zmK?9&3lGXB3^p~tZb7Z|#920r&afvxCf1^m9vQ3boG$4^Tx@&HBddYxH91!a4R{F1 z?%)4l7dLr6(F@Bvr&mw|8)+{qm^2ai_8{+y$2H}M7?%Wa6yblR3s`o)+UufYBZI?; zQ#je3&>7X{L5Y*atSdZbUy=rl5UT*O>4$_uSzLlkMPw?c=q8Ob_16}ARmJum zSx(mJ&wa1KG?=ikQsrU0D8KOF*s0)~p`dx7cCxX#M%Lkh$2HXH{Pu~Wvz126nSZzc z+NIpDlm}}Ij?^cg5m<++O#NsT`VaaHd?Ka2_Po(Z*|0kAs=OpSYrY#~ZN@Vc{Vb^; zitj2C)q_#h7rR9DCuBKN+GuTjI<&7iMX?k>+|!|_#yqh(^)2cik6yK_gdhHs#F2n6 zWVPxq@jly*#7Jn2v|>~UTu#!spW(T)i@qJz7i%#?pBa`ORfSw9(sLq}L|HM~+o!wt zh(stPzcvxX2KQ$vnQ(m${7ZH}M-tUWu>6T}orCvfy>xMOTf^=T66U%*}Tf zbv0PzRi4+qb{Y@-bh8gvUbdUu$qWuPraXoot3OsLU`UiN<*W`~SoXsYSEV03*E$J} z0iI~4SGUy}9u|fzzAjl|r2$mc7@({6HhAtO>VpE2K$X>u)nDqKYYc92oU7-L&-dg= z?<>EeyzA9MN3Ky-#WfRKsTNY0SNT1Ns2Z@?45%h7D~f^2kACkVi)q!=}|j0x2TyktNE-93yFd+SbgOP*GW3OqNsJT z*PzJK4@6c7Mw9f9Opj{@_C&abyB#^o=jJ-}*Wbi^*Jhnr4vxKVQPp)rN6I#o`_6`# zj&!GJt4m?Loc|5sDyov>cY}0^S%f?|Egyd|aNpOwvw%})gMP|`mgh2|w-7Y=nixOD z`MK$8%dfJvJqs>&+FnzI$A{OJ++glKI3<^jmdWH3Ir-{z+)>>;{m*qgkOSom#w6Dp5<=`s>J@9lgFm3iD#G}7FY=U) z14#LqcU-7Awz9iS+sb)aFIYU;$Mm&Nmf`ogLm-E|xM}PV2F`J`913rUHvhswM!E8T zt=9eJHhIyXr{n*qbvp(bHsb6&Mn2^wib{<;NLilvOphCvAkW5c>F}nY1)YBm3n1-#rLyzh%{A|ra{ZT_#?)?Vxk)_XlPn7$|1pkN^?Pv{lyUKsN z>uXk`ZVkbkDk+0j9n;tcfA+d(fGG%#{e1YFVShw7ME~stYGd7uahI#dzrc`f7Zxv$ z)sHDKCRHJAh44btWeaYIeW9mQelMV%{SIbI3093P4j)5=tlwF#eS57AJ>2g+Oo=rNVp{Y!wckD4 z`f4^p`Io?r%V)d!f_OojPPfRgO*VqjN<^dy*iN4%*B$11Tz2Nngi9kx!AUx+gl)hkpJQ{3ZxarqGjO*aYP;uhqD0v;a^ozM1}Iov~qtvGvqJ z^;BaLuXquh_Ewi;Jqr*&J3XgM{coVg@dG>vdbxqY=E}mxMqxpbT&JcFQYRE~@yHYx z{KMJ*HY)R%9g>t-Dj_{3P}7jw9ZqO~{{x#QlS->?&SC%N7PKYDy7Bahigb!TbIQOu zS-CugC|N9LG#Gy z(YfG)RW&Oq&QU83E~T`DanG?5t2k8Ofqe2or#zWTv5`Yklc%nyTU;npMJv-`Om`j4 zc~?JWc|b}^T^Io`J@Ahsa-X&ry7nwJq*C-2>XnPmOUkoruA9WcgfG!xJclIqVd0nt+a~Szg##ShRjRCS117PE+ zGZE=u6E*|A^9u~U04)nooN)N^PLB}tVt&FNois*dkRqtx{QA!?-#5!`5!wCZ!mDR5 zT!37xb9Jz)ac5-QPnn>S=^(aPj|ME7=_Ic0anAi@UBBz_R>)u=p$o8mNT(dbqcV|q zpC9bvQom`lbr^BEa-qTzC{tUpMy1vBjv)tRXWNI_n@TmF-^vd!E(Xz<}2bKD1y$sqjzC2f_#8=sG|KAkLrW^ z8tul}{@|bHQM|i2zt7g$&=yg8z6(^(W>}-;n8yA5vXqO%hP8GR2TQUu*VJ3*k$fzw z_08H{BN@Y}BqkM3{&Xxs%qW3VP6TK6i8BFv# zy3x(qe((QW@B4l`AI@ACvuE#TKhJ*JTK9dgwIeju6^RLH3GdvwL#(Xy=G~n;_u_#+ zk_Y#IGa>4J1b6NvZ7IKz(eXj-WZ)Y-R%8mxy~j0E`RP61bIgL~V}Ja{aANLf&t}Nz zyt*P8gut(~tRi@5g+^y`)&yy-c7!nHGoY1A9;+$O(_PUmh712J-+&L^PR{VTmZPlH zjO+d%WU>#K`$8(>wG1HwHp*EA9^LPT1g4J%#$0g6sWM$?KDuTP*=4ikJ_DQ@9zA? zw|Mvu*7>-0`x7F+I`z@QT+@gE+eF5X=|>g#;Iv^I6%+R(sewdIZ?Kta6JsHy`Fgg7 zJmH}4wREl8#oMOKmo!-qj~xz;mQG$nw%MSW0y@A|PH5(sUmC>i@k&`(-&qJz==7rm z{%IW8wY{p2y?1eV-&tanjv#b89(drU6QBy0wtXW@fi=IMaOqDYe*9gSqLlq8t8b8CnTc#bGsy6Mt>=HispBsuG?BKKrgiQ{dLJ5iOru&~Csf7^W z=)d!+@wM~&c)G)(xlcB9X@xca-hLvQc!EwRplr#?FMBO8mUu0J>s4bQqgoqC+l zteqUfYhs*x{gmYhKid4`)k#yB7Bb5ayeUFr3%~sP5^P*hf8acq&Jae*ZUsr%5bg56 zIz{M|Z$B)KLI~gJ8E1b9s{Kc!M55bV<4~np3Ymlc8jek|+hGw9)!W`bpD!53y5qFY zO69K6reb>|j(VjXx88y2`sQtqD>nxy%Vt}A&?K#+N5$|>XZ=~hRL00kYdTk(+Fhx) z5Dulk^tQ7c&JgdkN~3iQ{>U{y!Q8(Ir+3vq*>wGfa@ggIXCxouch*Dgevb?9mT75? zC23a-Xrd7c^NMfeD_R1s;luvBg@z~#bjBsQjc1T+Ichxj^g9@h_YTQE>Q!x)`!%!a zXER7%!gq?zjuv)(POKcI>)<O}M#juDH-3SV^f*|X~3kQ?iBF_UVd1v2#$5we6bkA#~Ss)jrE5X-aae&r0 zrCvSEL)0CS!7`2!UiP4Wvr#FcByn+CJtJnBumJ6ic330H^~u>L(Te~k8k+Qnv7|7D zWhFNjoDI?1m>|6oNX6B;2K^TXEGSKgVE#2ENEo3Y?sEK?5Zi%4?Yt_%U|sK(sGB#1 z23^0x$X;E)T;kL_VQT$|$cM{|2VBvUvKqeW_2wJj{kmx8nb? ze3-jDF02me5jj^g*MM-3lQv@2TM(HoA0!EbPS#9y1$~^R)gN@aVi{h#lB=KgGkH5K zbCHMZgK6IDou&j@breAo?C7Qkk=}bQWcfTdGPa?v?)tD}x*oercc>HcwS%t&vb*&$ zM1NDP1l{ZGaGV;2UAGfPNZR#9Px^B}8%s=kYiH@gHs*}J=I1skRD7=tSpOUohBvri zQnD9tnV*|TQyJ$(p~ob}^Tj+&-J}f@M~g9MwRJhk2xjAzs_x1%q>J%D3)aGe>dvbD zob7pTCIdayT73<4>(}3|wl~}*s??0G?%0hsy%=aZ!PmS~0H;Wrjr9IL7KB-=m%f_v zzPNan87lt03Yx{a{mp$&q_u_?{=&TE03k6$+fvi_v+FDfuE63-_D#(3q-8f@YQ>3P zFI7+@%C(n<41Ul?QFPbkCNy~Iqs|Uv{@~g_DFm=xvQgKOxsijSPrcM+2NjWJSKUOH z#qGIM&>ls3<-?LWt~=6Q4z;^QQZqsAvPHpb7$~IH`#?cTip7@Cq#0s)ww2joyIL|U zUq3b4MP!bUa*5Z@a1xJNK?IUbHPmcYls~W8+@lk)U5MmaUJpWb2g$Y}Om%5~Tz*CK zzk0iI^e?NRikubgBR+Hg@OzcVb?ItaCDlbSg9?PIe0m;acQLmYNG}XE3@-2R{Q6I@ z6rDrt=SBU}_b>-mo#L#(Jg~LpK}K--g-_lSeACY}gDQqxAoUO4QXfh(i?E!Ts3}L%A5C?cr$YzY}AwI2Mez}BB=3PrA5!7eAU?k~qCLF9-y_MTzXH^G3`BkJUU>*c+dbMa+i z&I>^~FEZ`knzdYq!)xd;%IGSxVz z@1lz%*M>U^c)|j6B{l1R#G1CC!v#3%uK(E+soD52l<+S2+~LMT50ba+!olB^&ajug z&(U{N8{A^k3((=KA~~d=A34HHPdx-jy%v6CpcI&l_n5ODQhgr#CG$1gd>JdUry}>f z-}hM8<}7f)?1c%;I(ELG{pM(*>-nT>3$`$9X_01b;-Ah7Qi4mp^)hs4J+}eU{;$qz zhU;u-MqCyn8g$BnIA*B0+Bq>k^)SgQ;N@ziO^TRyUf>dJf?kr;YU!{a+cz%%;dEXI zJdDf0k9|^v>hOVdFy-`|E~m8kOIzG*(d!}{vYtix9KMASwK9tDmY$0XPI&coH+K~= zk;CVDo!e+qf7{I;rBozdUhZCBCQ0v3(H{S;5;P!^!P78}l;{uU6nE8Jp2hYkuX?&2 z?aJw_=^)S7!pv`CoL;xHK`$3rR`t#6U2FAvo-V_PPj1|=%eMj`3n%`}Y8k&LV+?Ule)Z4OVU)Xagb0{Hw=3tWkm>ucmyHc6Qh?~v7G`KxTk_?*j6R$T&5v+D^ zH zGMTwZRLdalD?cZ&E9Iv*;~vlT0{CvYkBagMZQd5OVI%oc*#8fIPtdna51HaD)hTl0 zx<)ID=2s1pIvHV@o%_m|D?dDzQIM?{(%d0sIT=?y-F0_Ue9=EHTeh}RQ6n$y1gmZ? zznXj5Ik`wjn%T%+bRU&Tt+CxzCjIWrX1F#jiO2#Z=4e!l7Ac~7KNw&g8dR>@)9HLH z;Txenzgxg-($$`@Uh(IGjPV!mMQe8Vg{idE-{|)b3br=-h>Q%Eq{0*2wih~NJ*DQ( z4jX-=;`&Y*r7|y08is=lLZQ_MH@O^3H(z~pZg$#*kkfmjE>ah3KGzuN6%&C)N&4Nk z)ESa3dT7s}+#l%fp{J|OK~M%Fv)++q3t#%?qE)N9MXnvMiZ5rt{K@Y2IA(A)&BZ#W zkX!f~;lGmpDS>kFES%4@5fVfq&l(d>aT0tQ7uOgh{k4*@5$* zitI{|2^aruM}2pe*&rCm$v*^q;k{g@0L47Dt8dKux`M%fFv z&%1S`pf|r|rY+8TSGQ|jyR$LUH&T3X9CxZBlxYb%21L5}40~NsefDkwC%N>}(4=HW zCqrE>dQ^DJJ%_MvJtzpUakQ>jKK!o{Dji)VwS*IgdT^LYJ@d6$rFZyFBPnqQ>B`yc zz|uDDDfL0BniH2u1cwgNrzr=0eRd=JI+4hOsfR@w_K=8}FKmu*ixj2}#quVoScvl{M<-!6fL84&*0k{b*V7 z1@0Q~)W_FiN`VC#d!e4*f45qsgfQqLt5N(CuBF?4SgpUeYA0+oYtyo{F0DnUsh9S) z1U)+-lAB%^1byt1;q(oE*E^@a0vqy0YqVAsq-LVqP*gEi7n{}c=UTt$*_#o4=Y=Qa z#Z8sbji>}$zMr=GLm$}PTQA8|Tj%Rk%>?`~gs!b}&np}^GHK=+@02_#zf`vJKkF|8 z9)SEe)6FHlhuPF}0^XJ{H$0s7qluO#n6CB^&or!v(dE%{j>Qx;%yisge_O=ati=yK z>K`r8dHnD@?)5SyYHZKy#RKK28AQ1o$lBVjrzN+4D^AP->G0=+tHt|im+t1^e1}Vc zM94Dol%e_ZX*=xtwJud1b(3C|ymT2{Yx~_A-&AFaU1o&OMZk1+>*2)4uTngMqS(}G z*%C;)tI1419{QbHfPC{&fn?Bghlk>@j1oV^3H8cqtMyVH-ik5t{V^fVe_B&i{tt;e zwAwPc=$2$c8rC{NcRK zgW41Q4ci4gPC-jUt5A4XA-aIi41nPBsPOF>@FfzhsCzCygfks7z44@fbw<0hXN+{` zpS`aI`N&`V*sNB6rdhi`&n8oncV0cw0v&d2b3s@>4o_YsWI7h=ACv#QQULpVdL-bG zq@<3-uT4rnUhO1SZ-IIc{0L=p2t;s5@HEsqKX0h&f;_0@n9L{3aM+W1@S#cw_iw-P z%1Enn3So|Il3~SMUDO_U7oI)>$b2`SrJ$Y>OJ&WC zr4QG0UUXOje^M-ucj6yZkGeUnv~$uhKW<^5eTo$Um-w0EdYd*(@u5Z4FwsNQ3><|! z`J9k^)ah#VryjDf01V>9Q;)}cpVR%*k!!jLy(pM$!EAX!uRAF@t4&!JCO4hYYS0iFE`U<>FS!Y#aDR3$-02CHdNE=ba!%6t{zQ0F z$7#lXkhDeXlzjhLV24WXDWe!Z$H8%zL!B#kPa87}80UPh;kiP$yv#RW&zL8&5@D8( z$jdMR389}5sIo_7u9Cu6*1cDDV4YW!2#m;2$eV;`ycHD=-Qz#|qN=t47UIUSd%=Jo z(yJzb$75luT(T+Tb28Q3&wsbBdo7@mrl<3JEYW;1LU5%8qPs>3?Orl!_qJc3F|1T+ zsJ01t->gbnttcW^XZZidG z=s-ZQwBxN4PzGX`ra_M|*hw-m1$PMf%&0f*KF=uoW8JZ za`)nMy_PbVu}Nog(@Dxb9t+)N+T;~O(;ciA5$U^*bB>qBg6|mptJ^1)L>1&|k6X>W zh0=MHPGy%intP6XQkws48%`pWPQu;o%~6;82U?sLqT zs}?oAOEy2)FS4~TzQW}s#hKebx(kxD z8jqaVTO7-86=lhprz0=pNAON|o}Q$Mh{Jd?@g%&@8{!ZO2v1EgYg(;k)LjV6TdI_v zkn<9lE#+i5^7L6EF~<|5GgQ#A!NZX&zag)YkIMZEY$VF6IdLlrUT!_vsvv?Io*acd zcpSjL0OVR^;zqwgG`*)`TF(Kn9Ge0(oWi^%utXavDLY+Q!@vloe|Yroz}>1w(#L71 zhNqbPG?$6=^6z`;5W_9xDO6=hJ{wx3GVS(a5TCs6|6XuL+ z?s)R9)Pir)i>sFK^{>FaMXSm8ZlAVXsmM*9F~);j_oTvKzs*m#_YABFwi1PsYeY|Y z1&TQ9s6Fkfjl`$;5IqggjhY_XsM42v57Nvej%wZKYiu$TEZ_@&#xJ9UqKo5rL-k{FW({A=uQJqjB4T6J%h1j z@UA<9JdIcmkwrUL47cI&j~=pW9#rWLh-^AKAhl4KN@pD~efYS{3HJei72-a(##NivX91Trv0Dh``3ynHYr>yj-ijn`lCLzMCnVP?Z)&mZGd6%oTk z{H5act#=<@vSlJX)bTAhM7W+MLCKbw1S7 z*NziGTJ3iJX~z_%m)i%wCWIZiPN*`QELVEbxYKZfC))rgjhz1`va4NOZ~e9ef-7ff zpcm0CMU;D41|mt%>Bj+fJX)D(%C7nAaSv+!O#&=;fWxnR-ZgxtP6c`2!MhoXC4c76 zuS3U}lzH!gd08`>@#Zq!>tAfkFAZefJhp@e!W!@MbIJ#j;xx71Cs;%-&nRA?jm-OT zCd)A+GpQroUC>{455R;pwe8^?BRUC@tUXlTjNyT1SY%9N2)V1HtAE>p{iMF6Ct`8K zp^p`DBX}{YxcbJ~2m)~C$IW|q7ZDFR3L54Whb~C;$-P=*us-TeKRm|Es5e%=x~ITX z?Tm{So#Bk?WDpH(V1*B>QQ)zmx-m(*Ix9qkriQvU6iJ#{ye67}zrmIVmq#2ldZ@OK zzAQO~WJP59(_5VO9qGF`CTV0uvVOMdOaT~Lc}AvuAa?`?*6AsJe|tjs(eA%7JG8U# zn)gwQ=N|KJ6E6h6FcaPmMGs$x--9)5?T`tXA?bp|LRQnf7{@SWk+c!&5Yq2;N|#S? zICvgu`QPuNP%(lmuiZSA-MXhQwfe;B92SGSB(?|0Kttxp!ko<#v!BWA`MRIVJL9{y ze{q9RixecfNQdH&>lDVw991RICq&vtsDd@c*I{P+G_RX-zkY7Gt=^4V**rX};*s*0 z;g|*+y!}-&=nwXd< z8g)GT1u&s4AIfW`kwNhYPM<=JD4(!e`<^H5P#|D>wC#!>{$YYt&DneUK<1}%r#RxF zX_yl6rnDoLnE9UNRD0I&OTCLA4YJkJg|>a1_m-?j!@)f@8RMdv4|YtRQ1}Y(O1V|8ZSsW`o5|`2=h&7C+CsdE zG7pwk9q4PvBHNW&b=BpaVU4pvH_Dtn^+ zGg0T&w~Yy}o=@7Haw~}QLoWD6m`dg0CJexng>9WqgH|v&b=r{ZabNSaCNeNkv z7sKQuLx7+QIE8ulvlsjsG&dQ)?J|UMatcrPSmZ;OZTU)8!aOkXk1Lo!P=dHxw@mPd zzzPmTH}oiL+nWp?7+!uu*I&Nn-P4oR>_hXC*CbGY(Ax`F{27_IJ<=S+Q=*4lvNr-y zfMFP*lL7F)9*T{Vf>>QL3$`XTBALGv9O*AVRT{^8_`P%xdueW4gP_D&s|uLC$T**G zT6OKsyqi#|_&oY5F+(-&=7B<$B2g<=dA2b&-5^}<*Ab^c^_bUo%W~Em>2GepB<{*} zB(hL8UxY0*ooWs~;p>@_%YP9O8Ccm^Z~2Xu%c78LK5{s{5D|EMHv1zB!|}jl(C+_-jxd16qaUH zg!IUC9N6<{REqWKX3QPzj0r0sGrG$IuCAWMQ!n9uijeMl3)njNHr@-ej$U#?Kx?7| z<9wsI;WJGvC||ocu3BDeQ_U-2#a@o3I$&suAe;4Du*=m?i5z_M3#Zd;j*HW|RF5j+ zOq$3)EUuxtLRR$m-duTX47O2Vnc)Il|$ zd2?vJeB;G(0iT}ZLK!$WlS*>2@GQ}b_pxh`Nu6JsPsk3U%pZxl`DENm?GsHbydiF~ zKA`0Sea{mwF-cI&;8H1Z_kjeVMMuVi%6mCXCGx+{UM>~QHF4H3yz)I*Y#mv|G@S0E zF0rDVnV0RK+82tz%-XHV<@7szEsv2pjFimP;RPe)`7Co()nBbx0K}>Z&&M!|DSEv6 zXZ{>KnJk%7KA&uR@s?6}L*avBbm>(4n!lWAp02O@DGGbCQFl$uzO;K<>YOpA9ANu#W*sN|&e$w3=u5 z#;baUX!WSSe?`PEGhmwXC_F;==!aRb$c-DBx5$-4fp1wtp)6YbIOUVQ0-y?$xhwZq zaGYCQIuH59jEN0`cG6-jpZ})b=B_9n4g5y^gzb+hb@88+XN*6Z0|cK*%qi<4b_Kys zn>J9F>f|iV&j`g3o@rsf6sN5ym5A@=@$Elg`z zJU$`Zkqpi1{gkTelYO*^Pyzui?RtTo2fV7AI<&I>dIUy)Z3F( z6tXQgv2`9oXhEC{Bn-rZqf9Ixq>nsGfK_8a#klVU+u09L3?Bc zU2nj1*W13N4s*~C(G?CM!xlf`*X;k4XvNCD(|l!B?9<}tkl~)}oZgq=9-Zmwuze-K zF%#weS9&L1*sF$85WQNYw7f?CM86T<%;@&E5b;OPH7`@c{A-`AVej(~tF z2y(o|MZX5|DB;>0o=2u&rl*)`=r!*u38_Q@{}MAP&*AB>CM{? zIb6?upIJsFCF$nBO{J%&C!~B~@cTob8v(BH7h=om8PS%{Jz1+FBZmnef@7?za8E;q zL-;Ju)eHhNA9Sqr#^svCf8<*_ust6tyJGcyZ;>zyw?qGWjMqY9-hY@@d?i6HUImBq zn$)?}v*MbE@vYt#&Awti$DJjSS9|ub2)?12xGG`+JVoLR5}6`Mezvs&y<+gaX1zR2 zSb1!lrbm5H%JutdE)JJdT6V#Woh_5UwlB7oEvUDz{)$!1q8M&y%|bfhOtMKNO|CpA zTwV=Jm&Q#->8x_}75GZ@^}J@=`9qkT1&V*Vs_~oOF5;DJ3~)V*WuoN)Fgj_mFPHXT z%F*}lX-<~NOfLe6l2+Wai0i(F>DI0wVsHREoBp7hs}&d_v1(=#jW5to(jStg?+$3h zQxriMhStGy7LOWlBh?u|?AScmhcwj&zKV5J52;U**3N&smJ4|tdV2>aaEC6D@9@$= zy%fD^Q@_Y*#e~2e0<6qax{9@o^ezh66|fzof)0%8&Sg3i2Bw`$#-dWj5cf+01+os; zfq)ymnV7B}IcnK4o}q7Vtqc)It!?NneaV%ntR0AtA0}!HS4ra9-Q8s*+~=U|_6>gi z_7V2m5cb029H^UBEN-;OFP-n}m>Lw&vdf~iEu>yVAK__z@8oVBn|(hsk%y1~kur7^ ze<`U=l{*Kv)ommPP`VMAkNOp;Qk3gYrEA8B<7$n4icu+-u>t)GY>Z?qqjXxU8&P7` z%qpKj<@>qENIiFlG`Q*Hl~z{owC!)cp`Zls>0S5m zg^&D#M(6~J8owD6aY6-AAH0gI$@sWhu`9NJl2#j<^H?;eqA)98$Cz1c(g zxU4O~;?)8k!LD308$AGt@**-u*ERF{6=zWITF`anRfK6^e0umu7r)2WJ9L>!0ZEKT zgjS%~aA-9*{FsUdHzFI2`vUtFsu*)%_;;l%;&?z~hT>r0?&hEJg@)R910Mleo0BsE za@##T0YmV^;Rir~J~M(bsB&=~2Z(55*U-imyN_a^k1DQQo&K7^z)3CD!Md&sj_+>% zXSf@$LJ-2a=288#2JtUycz)noen7*o`;?GCkgx~Ky!Je%)^!EVRiY8ni}LLC7~Ll; z`JRUODhK}SDH`t!CQWHGx8>zfYR@kO2x(doJPEQ42qjTp_`!5=AS}5vQ8B$Jjd*3X zc_FYH2=upX#={LgC7JQ%u|4K+2#D0Km(7Y9I)I$k^5M(hycjNslzpEKav9CTPh*3Y ziG?i(N!YgzYAcq+_ybPPgPaCU;G?5m1AjiEfOH1{^+^TZoQf6K6u|q|D}Z9gcf#=C^2MHh-hP+P(h9 zsVafP-nWUlRs>|bkB0{ZTnqs4F4<2|RX|V{yO&Ne8#)-%xHFv{)yPd^CcN6gm+eVu zIWtrh3j)X%iy3YyY21LhnpJ%<vlwuQLr9q5WK|5keMu^b#^cG&!gfK&0AmF|7F(sdif zbnZ{~$1iIfO?Z7WS^y-t2&Be8i%#v^2KPjSP1ZH&PD|3Usm4!ixeu5GV-f6GWpL*O z-=BNabTl-c|2B&5Wl0e}w9RVvP9ta{RRQl>DFy{8F$$B`Fr6rZ z&||WK5`!&Kw@5iF!weM(NQ&pFpxfSB#azz(#OFz5&1gLVjAwaq zkr_jTjlfRDze9?r5wO9>mBhfe1z-*{QLtKJal-jDUfq98pS)gm~b5t3-yQRBHg^^t_fBM0MI z;RPYPhTjJ$N7(hsEYU=NZ~-q`)FslbFk?|iI2n=|Q2_a6G6`y@#8W{65OKAb`i z*~%c9x2FQyU*8m!ewaM7iULH=I*?QO_$Fvbw#yKcO>%|ciOiH9j~_a#H1HW*w-+; z4E(gHm+_}=ST}uUwE~gfdcgCp*U@QJL~8A8a5VrwE~_WuS9Q}BVPCmX4b8sOdq5k2 z!qtD*4oGV-K4qvlN?KINcWM)KYxK&2$4m=*T&@kJonZ+p$u%@I-2Va^WXh+ww0j?3 zzGMowx1~v|@(AX~mvG#~J9^Q|zxEY^6a`?5s{Pn!A%Z-JRVJ6R0HpCUTG#~95tKC^ z*`|X~V92ox&NLvIRyV7`9E?*PNHZ+2m)*7n_xZa$nyZL^>~g#jX1{X41oho_Wnp@# zdJhu9=8n#ma$Uw;Q_CvW)FphFyxc(~qGG@jcTOB6;jg~Dr;T)ZUrED##0Z;*hqxy?@@ z%GmOfc3TSgtdqUa1l^uu?$tqbkKQ80Gb(46>VQADx@Q^TgmFv2x#%fmd09cdBOW(q zu-lvmke0p|VD5GEy)-$z;|^Jw7Ac4vE@&@=#J^-Q9J~T#Kp13Y9tGsGTw*f9M(hq= z9etA4;0Uj-IskIUeiS={6q7K36!jP>;Jk3s2z{af24x5KZhLn+DWzl>0-0ogV(*m< zVu;^&iyDI{h+t}k5cg@}ne$GuFcE-Zi#=U5Sx34go18Xi?c z%}*kS8VaKLM+_IDW2=|PjnrXU$O$+>O|$(v^8pVKmw2PVKDfiJsGcrzcwWW&7ak{> zUwoxpiVh=X+Dd&U@>{RWsQ0Dwf&^5Nt|Vmo1jZ}jcl>-4#!$L#>+rD6=A~F+OP?XC z#lPT3I;@o3U4R{WP7JyPBtU;sCJv=RHK4sdT_m8NjGppt0m%a2tKp0K2Osr-#Q`vP zbuwG?M$Za^4l^484qvxX_@}VoG!bW~LApN@5)u#76IrMJv)C+|-RHXWfb=RP2jR%o z&wfaFZG?K_d3nP!jR^)TX?&3!^CrZjySBMo9D`5~M6~!FmGgT)1NNiO9FavQ%yo#{J$9F01)q?=$v&iYYe0q+9G~G;Wg&asMquJY{b(XS;rBPV1@+TcvMD5 z(4ZbNFYN+IFZntw3hGWZ*l!aU3IMEmg?SW^v2@_eQfeQBwppl+d8MtNtL-UyN4|?wL+P4{t)6C;o zad$D9N5a5rb-D#FsSd{9jbClb4dOMFzu%>+WeQh*6cc340hk*O&m6e)07VsKFD?X1 zx`}}*#w#G5Q7x1Dq4{cQ&pNzO&;mXjJ!ZKCcC}+`pVQq8u_kAbA@*B>{rOR&Z|x!7 zo{mUp1WVlASs=e*&4YV|#c-f5ZA9b#7v6I*!^jRh~H9TJp2>3oqNZFk5dY3FcoACf3xzRzOx<#F``9HXP zL2aM!d(u80LnB}gD2>h8YTG0(-4%)Of=lopSuq@eWtQTHGcSb8k5sj&Z@wAc{CWZ4 z;hB{ePEz`Ggb5#3V-MJH@kD)ZBGn-r*5}e`6c+5O-YzcBZH0fnykf4tQZ@vDtrBG0 z?tjVy_>I6F$jMVf1-!Tzi_Y5~xH?^Mph(76i;>&ByLp=`kQxjBKbrdW`?qjb3Go+; z^LiF`PJq!Qo!ilUStR|ms?iT{tts_ggTWWHUi48_S99bP$DT@_J`M)hlJq9P zUTEO*4r!Qoa(4{^-IdJGBA%PnRoZ97+}jWPb4&FAE(XxQ8lW%0Pq~YBjSv_NW)J({ z*XxCnK#zqCOTNl!C8I)C*CRA7ot>SzY?n(CP7l0SP7-#2M$88@I%6cx8gNS)e*^51 z;GXOPs}oPpbeG_;@cBXQ%E?iEVis#hC8!8bk9F)XL2?$yGa04dy}^rP@ew#LA0Ifb-l_M}($fBYN_y|J;e zvtv^4wt8{0-KZFh{ipGwlM9>%l;kIZAQ6a$y1F_#T$*n&2zKE1w?z;R4i4{J8JquA zBnED^>IhvE&Yf3H705GvRjLNucs^JIad6mX%v5k0`&|83WXic0AXoYcIO*=LkA_U zf#&0j;0z25^UI&y9P8~dzYMA@3pBEBrtOB)#k8AzT+Qy@mdS-@WMnMoLIUOz5l(Y; z2f2!|HBN!pn`^Y)J`)-d9v;rF_GACqQ=tDlHKst%&+O=!L{j0Vrl#gC0Y%6BkEMJM zSGaVG4GavzC6beq0e7YA)q{WFYKDJXe+qn6Om_)S%83@TK9qJkRc8D%+$x`&t8+Eadw>-fFV-yqj1HiAyfbIi5&c#GY?dZ70_G3|WnB*) zg&ke7acf}ni+|pG3n#ntpl*#krMUK<9!16vB*GBHhhmETY4f1$J8^MwXk_hl%6b@6 z;OoqK_w}5WrVqEZsFx$WJUx>@W#q3(8N?@gN!x?k+S>Yg_i2T|-!+l{vVv}^V6Z$m zP&ObF5!wNFoPAc}eY!heb>Z}30p^f$bx>wp`{PZdEHdYioR(GvLIKR91T1Fe`21+y z?Z^iPp0sTI0!*Nyf2pi{x9RUeuL`wZTAd0 z<{Q0ZkqY}V=N6S;h^W}1+%=_;tDwV`zBBCVK#HJs|KnV^c7ZyNH`=_x!+vL`Dm)Wd z_1xWg4vl?Z;9Ar5&`Zqm<~X@+g>kLAUf_I#r|vn2dU`mz$^X>pV5!T@%nZonOf+WK zD>Y!2Cer}+D?*rXHP`&?q7H(~ln86K=)fBXgN)&hB2IIEvNUa?5xal0aa00Nwk82r zFo4g%dwP8QX5!{>b%5{*mmLgxb#?&YvjHMB8eN4uK*}UlI_DGdhz;0-Cre#KA|fKb z%mT0M{@yVT9p0WS>0u(hH4#;>J@AN{nwyv5alEDty$G}4A0q5w#0_5PNa-x;AQD&F zzg`!|n*d9Uir)@E_|Mh3_F~61q&aW93Bv~ue&;v1SsS8LRaNz62EV*efMYMVD-2GM z&aIqB!1Bt5TfGNH=Qmt2hW1Hq%)j76h4+o3RP1u052HM?oj-n;f*2bb0_&Yr74D4U zRn;#+zspl$UV$EO#03Wjd!+%R9X7f*-%mN51ptwq&Rzun#42YS$>{0+!>dk6gBwsu&FznSt)>>r>P++4I~|d=mO^ zBA%ec$%EYE1anX7zX~rM#XEQlqOu}l?GT4zrz&* z_|J)7z!MuAM`1$8@>HYPfQ=J$vh}3+zG#tCTvJdjVRYkG50LwrzDW16c#ysGIAedRP~fKt!qsot5Kt0bHimY5onirn$LU4@pcX+!LLSAzZ)(AK#L?$ZfA>-3eg^tV=i{8OTm!MT{_@UZ5*UQ8 zTqhuppVx$X^raWG^Fk8>GF56waZX;rjZ(90g1bK7ovY71vT(Y)Zon2o1_pfv=3hZ9 zf$D>>&;EOy5q6od-k<4)JDcML)&t2xlLUVY&=om!CFK0MKER&Tw5J0-XY8Z}d6izB%@3iwm*Kh$N08ox8F>i6;$-y8Sqgp4P))s9S%+744q(1_Q zt`>jqDlH~D;WF?rb2VMIlh0zAl~ z-CVQ3h<>?=>y#HzPgjTo5#@_-$VFE$-7CBOvxDW{-d4e|*QZq`rt@Hw`?9DLX z5CN`KB>aRM5)5?D3S@AzG0O4=LnrJ=)-m_ZxAz;fBL~NA-^?aT^fe?-KCpiKCMKca zXn_2w7|SSIB96MVwzlSVb>>>H@VQ|C5M&9dcuVKi9bv@j>FG}$>!psb&W{*CUT0@# z-@){Em_xpeC?cN;X9zhY?z-I6PlYXfIzuJ#i1TC(P)v{j*bxZVM zzke^0{%7BD*?|d`k&(eCWz>O10*=U%Sr4!Qu^gGVxCTOr&cTQp2K; zN4{EZtm*T|!Ly_qiQ%z{{qZAKWU?(15GrQ_JDCYZnq`dyJCIuFggkiN`PJYgca!o- z<|@7FOrDbc2GP4;N^wG2kozN#Anmj@-*pOV6yu`B#(G+*+rs?cPlMTixV7MN)o_2c z61{oX`esW(2KL(IQ-I26pciQhNHR=mfm{-uB5h48w@JBRP`?f*a>SvuUmAPeD}G(_ zzfh$nGNKS2ua>^nME{jIG<_c;S=M5VQkmDQ0aB%KRX<~=I}pNU7at7rw|-CHIIOqO zEY{{huYZEoWWgje^K24atP%pa2jc&YFEBeGtr|!i!t$cyspF8h706mY&x)YY{uIy3 zx1{Jqhlvvf7X<`P{rwlrd~f5P$#-N=TI~8dE3UkNX#6+w;7g)0VOg`h>}smPbR`7u zbOW`p(8m7)s~V?q@qy6FO%7x#3MO-FKtItJhoUQVY_*wk;$zsaTrJIv>~S z=-eag)OR$`*|Zb6d}e5s2XR2wAONdMpZSQHxU`yl#h#6R~lkM8z~($HId|Z1ZE04>bZB4HEP&axFE5X|5&Vzp9lr+ zn=TN3oe39(&RpZk6=#R6A}KYph7?kH667wnBnMzWj7IVtXaXue5nHk(i6_44Dja<| zZFxeJKlGg)j!?Ic6VUL**Uvh9u8a;$%EL)Rv{(KrIei{Bm;_4tJ(Ma_0-*;d;x-nI zEX_bmCw<$1RSL`sz1-0B?#LZaLh!x=VRzO$5-&mTHK;OLI#VK_o2SaEpSANM29xc1 zkVD{*M_htd-Zce9Z;5P6e|R(psSG530)aS>MtsE{PKm5NI7N<(d) z?KRU8Xt2nE>A10IhISS?Datj>pPUmyJCXaGenZYVgAuRJr#|MK5K&h^eDq;_N-Q^r zuFvzA4YFG%19v%aNIP<6w@3<$$ApJB3$>y998Kj%Pv7HL!57|BE%X9rpa|__ks!w7 z)H$P*N!Y-WO+u7rSvGP3KaBUoDNzx*SZ?-Q>w!w_xV{uf)S19}V_rw5%vGY(ZP$2m zd_hrxcj0tcDm`4qb#Shg~ny>VA)5aczb+Ki-`StGA{7x^k_MZF@=yDYNyH}9QI@>Pnirdp{i~sUV4PSL8DUX4q2<9=}DYbc{*Xz|!mrY-i z3Kkd=r7k%dQ^hl$a7kL~j*mL!Nk;x-DTIW_mjo1PAjQ(F)mp?}N1rP)Jh+FMpK;oC zC|VFcQg&H1I-lU-Hsiu8&R{x-1>?P& zMs9d$vlJ5zc#%|l5TyInepR|#a*bda-2L$oCFAwvg;P=GkH>6GJM4V+LNLbUr{&^8-GcU24tA-P85CykW- zZGJO~d(JD99m1V;w)K{z z0puY6_=}6C*}X7j*GUbt1{fp>JYg^W!A>GaVJ?!jX5Pt*g&`aJIbXK?Z>GULs%Oz@ z2hSfcXK=Z@3RZu!(Pps>)Z({or z;!{!#@Olqr@hWkc9+l_4fG9U#z`WyQr-(}~95IP`QT@309NtWR0k3F5I1;SzMw>=m z3_Lp!3PN@ZNb;Gl7?X~c4(!gCcAf2ms^4E+OlmCbyj2{{g;6B*_ut*T#|ClY5nA>4Px*T2a;mkn%s9{uvx^Lf#5gq|h-r z@_W4^onl~dbZ*tHP|r8Igy&*ybAqYnr0SZ@v2g zkHx3r`sh*2h9Hw%xw^TCpaSv)ugmo+?k=EY*nX*Fa#&sO>Us-#$t$Z2d1PAs+t9Qj zxh*SK{e;tmJ4@Jod-FuME$=P_rzl871q}O|28Rd~WE_F()FG;Jci#~81fh&`z3=n8 z4ECw@IKk7{OrJ1wK#3h1drr%K^|}6K&I1l3ax3%_Gk)akbbnT z)S$w!`rI_e%@SFk8|XhM;%vZJ(MKx%XVJd*{Xpp@_LRF&&dV6snU)_f(zaDqAtwhX(JSHx%Q1pj}Tjn-?A}-h@4F*`X4na8W z6O4~iI!yAi>*YM+YoLi)5qe5{yT{dl+QP)Pek>IJ7>>r-coTZzi+o*iAS>8PS{rJqvUPS{n`b|A+cG{(5k0?~(|R(MP!|Fj9aAR8@p|UWC5hP9NzU=2Z1L zZYmIqv{7||6pYxg;3cHEVP9THQBN(nY6)7wUwjZgR?^r&eZK;t&EmoMOdH9#i1M-e z8tM_}mG_Ro%N>9bB?7&$D?VZw^VuuZk_+6s$@VcUm4^=Z@l+fj6!IYb88T<@%LT@E z;1FAt6o+m56JPAJ|1ip1WTyMCT?>?2rjeMnn-X6>8@acI%#Y)uMRofJ9`3g2DOx=J zo|e}!uDr2-y_#ioPi7y;_Zx1>`I`7AQB~J%%q4|TH@XI2{ zTqMxnY7#l0%8xpv;Ubb1x)ej-wg^2{>z?RNG%0{@lO{9587mv3G6#N=PxUp%YRT|# z9i0D%vbO+>>g(5rEkHp)x&&0DOF%$cK)Q!!2&HQPNohstlJ4%78k&*r?ioTl2c#Rm zJ^Y{Nyyv{U0!*X8AA_RQ>Ad&T{`@B6pb+K&r!l@Pvj2O0Xl%OQQF{y4XRpM5A% z;-eWZc?EYV(p*Rr&IS!+O9dT9yC}1@r)dSKAK<^{7)4CvHQIj?Yhn=VW;v4d=D6_3C3{ zU~irHi*mDOmF=IinLO!(G8H<+R>el;-1jqLKbzW79ia=Zo<5b;r~Q6ACEo9wXZ>SH zpP{d@1_Z{sN}=<#tc(2`Dc?w*4=gIM|J#&*|Irl-^2_xLMRVE5)z>o$HkS4Pm&H0q zXhsvetbB8CG83X^x^bk|lv|hTt!AU6AkY7|f_^X@Eg)t^@rHkhAlfujAh4&$Bm{MYXbh!qnCjH%35$LuX>p%V-m9B?U;wvu zmvYrP{+*K2{+cUOK?3m{>E(2x$?+F&hvdx@f4#j}g{j!>N_Xw)8nosM-Y22l*X%(NzG`&717R_d@_u)PLPwsH#H=NF|S|Q|qOcGz2-%tRlVN}9hb<;DWR5C*k z{*sD5?KqV01=WL{3%y`M#xH+>Xc!d(eNuhB`jbxFGS0@N=#+)`r17myx^&8wAl+TU z1fXcq)@YnVUVOTaGiMNsGLHeiJ83ABxvbS%Dq%k7*D~SC5Yhq+j;=Gfg5)H_LT>zE zpzU3${z+9Ng%`wmZ@Y#1$5;fe<7&> z+9CHen3t*jPzq&h{Odai-Rik7A41DXu2zrKG4)CBF6uDhjQHhenDiTZRf;#`A6|ktroG|z#34lJ;csv1x{Am;VWyO8Xbdbr* z*ECtxQfJOr$A*gr6qJV@B0gQ2ilc7x++z5q)UK{MTuU1a2&HH)49cC@7oNyFD+bVB z5btB;sz0rUNWiWht(G^!JJGUaVqaBRF}f)M-Qanj8w2qYOIX*pmOt5KokWJc^+J*ELrcmA|+ZkJ&4a@)Ssu#+X$RXuMgKPVLb_uXC zD&2ld-j&`?tU-2p(UXwnv3UOi0`R!6sl~?}_A94c`OL z7+1%}0d8Yvt96!2t4jYqGQpC+aIM%Z?I}gOBtQG-DIALDRb|YRnUN7a9Nz)8 zuDXZanuc=ZxU%~!=ggwazKnOVcieU*Z*O01p7z51j$;f$`-P^e6q6XSZRJr;sZ2E_ zim#;BWxXK%l5g|hRslK>eijr@H;D4NcY(p3H$d_7PkYg~<|M&wT<33If2iU?RsDH2 zm#-BEBI(E4nZIdquN6~s((s>R+P-?ub!cICQ&<lBussb8r=yz0uqFyIM+LuX#;f= zX&_yS*M=Sek!=6DMzGx-aSa5=C9vT7Te18(Q_1ftd6zFJFcScDj)4kz&RHLk!FG#u zGJbRi3N9U}PCf*Zgurx0c!;6)Lh_;&xjB2Q&|!72zOX>#2k z3Mixkc#dO;1U}r)^jQ{j+&wX^r$t+W z@^N{D{BKHM+*A){mGQjTECSwonY1S6UNELjmWABJMPFx%5+~ci;TzZ6S^GMt7fl!#JTtx+)u~x#|>5@W?k-OSs)c#@}+5eh?FQ3*Zp|(PKh5n zy-j~H;>^k=H=g$JO{u#Kh<%)vc1%gnl|@W9hnCcHzq=5Wjj%!f?gf^^IAKlL|7gur z{A#Phrj)?6`e&j36OmwvU@G9SsoS6f6d;voE?hacu2KU5&^oY{Y$|setD)!fA09Cd zg;tsgqi;z;*ite?kgVRE-oSd_+6Qu5n_!g34S2G8y-fieaLHfs?eIyy$i`n_;huJt zm*-5L%8LKi>unB3L#G`&;rrDckzx~ve<}$|A8jOy=brjGckjTOzRM!sG&#ebB^i1< zF)8FhDX?ACS%(bx=wpZ61zx$-Jug(JTDA;sb~OrH9~N2zXiG1S~_xkv-sJm5#V~`wza^AqI9f2 z=>mXLE%VeZZeVM)`svMcr$Qyb&8kWOE0wYHcLPR9K5sXgzs(s(TCD|w&H)bai0yIc zTf+BMb{iM^=|k7p2@~vW6ZMnOE!Oc@rVK@Ra1fUpl)4ezs1(56OCZ zUu1ip9ToElR1n&Sh@gXMqQOiq@!;WlEyV5AAW*t!V#W@;H)?dzpts3>l*r?kL6imp zo&CVT0~V+i;6LML+S&j4&dU8H_)~o~CFQfCDoDa)gK9vK!HHy*tC+~_PP0eF!!V9>z_{qh=GPK9dtdW< z*m*T9r~PmJt3(%boG@Y0POAoISa0SOO(*?6iUL(b!r&*#G)}lQ@ngM=QQ~eKtTLsX zCje`4`(C(p$QBe`IqrW@d&0zS`gx?TfG~|J9gwe|nhRVoW{hPhj7+uvL%enxY|&G7 zD?We(I}p}ZMnPL&`lV2mp;8s?9Z{84O@k*-QG@}KR1JN}#gRQTuPt<#PddtSj7@R% z$_Q2KoK{}o5t^UPSjwz)DN*h&3kPA-$>0x%_m1oiZ8il2Re?}4J2H0 zTOS#AmTn34798Y3%Vnd4tCK&NygKt1N`K_~vY2swNaMv}h`;F1=SKua|4V8zTgmZZ z7E>y_4i+s=2NVh!Y?X&aCRPMbursjB$4!vq5Qk}YPSTPK40sFJPgZ8Ui)2*IiFU!D z!24D!9=O8br#VlAkNxn8-3d@BD(7ZMKU z%YOP6U)@6nuD(0H_`B?UvY28x<2QHbSIq~ZZ zhqq))razJ@;3{VTyl~H8@dCs9Oj6I^)*^yp-;vnaMMZEci;5P2Nb?|zbBWDFAF|nCQtb{l zMib9#04cH}2h1UTy*ZGyk6vSxKUk;ewfZ#f$%E&~Fnh&1J@}X6V%8MPm4U_Nf%r{P zPCiq+Qt)pcP01`vri3vd8x+hWfhlD4sEVcsnOyOQhM!(rj+}E%Iy~zejm4*!H*vP; zmyYk|l68_%U?vA4XhS7n5BRJazO;$S#6Al@V7k*$aJq3GTy&I>xy$pSRMit7AVEl+ z;pEhO6M2`Xy-V5tOFaGmPy7Ox__y++=Yp6GfuHp-m2m&3T<;`Iy2Fb1zvg;V)ZmIh zGIIN;1zE++{v+U5?+pIX3v6*e6?a9GZkr(od6ZV;F@Oj(Os04vQ@Uvqk~mxpLDeNL zQ8zS)F(ui$@iQDQ%fIoC-EgaZRV}@I1w>wO8T4g{1^sT|Q&Yp;x0_sq1sV-1uuu9K zixUDzj*e^*uS{ego~!C;Mdy#zdZnd@sghKa@)X!_D?)MV`cEE^H+~kuu}?|;*6Zub z)Zn)elIVOOe3Am=K$XzR3en2s^mp=>G39z>ReBHOK%7tP-@9R5*RKt^9bYRxJIV%)FSsL{5M!A@69E;k9`TtATWaPKao z*YTHk*oN02W{J24B|knXB$*_GsGmC!vvMzoR5@Q1U_2h6IKjrzt+cv1J~bpEzraO} z`ycQd`6|5}g>^LEtRoA=uR5#K$IqPm4Vo>*i10IRkH&Dz6&7+RRJC<_`zTZ70!*(o zX!5-5=~!5$cCN7cFl>c?vN>qDy2d8EKG57FGDq%tdu~upC)utHj-vlR&&&ZLSpZ4J2Ow=%$-Py5moFRuugwOlyku@ zn0zf`Ot#*BGNU$v6rfWbv=TCc2%SF{O$-<`Fm@|F+8qI3W)G^AyI$r#ltPfO7^c7G zOOadB;v;0sEmKc74|VIX;+BU*?M8{^%51CUpnHU{mrORhmm21%i2YNPFBTMRn}-8* zG$|!-U2yU;b!Pk*0_4-U-LK>VKm+INL_AuVHUueTSD87xe4k1=z?HwM$ld=mY9JKV zt%AJ1rBmaQk*45mzCsKmr9e#ZEt6!uZL#uYTs@GbfaX4@5w5;6<#V9otFQM_BMX=< zHtd{3tnb%QUHiKMT4mG&_Cv){B?dC4OUIqo*ozg@I-zXM zy{oH9)kK##n@k9Vx^Y$Cw~wB?6TEe@(G#UeLC?U#EXs(Qe1}J+Gul}WdljMJ6YUck zrngJMYQQ?PyZJ}H(7F1P(C<*}?A=2Rubd+8cN#CENiqi_nac*B4xonyhDG9%S61gf z6#MDA8#CpMhRGb)mM&~?`^Ivppb*kPIxkj+X7vj#{N?h*1QvoNDts={<6rc? zZLclp533Uo*N@vGIMnQ@6IQAJh5>!!wm{bR)xfCF^x|P1;lme20-QVQDn%_4y9*QLw zPLAiwNR@tqAa}3-89f6Mh*6`D``hz_iS)1ygvPOCUll1;Q1$iHO`$DT0c7;}+?4B} zU+}cOr-StdqeMApYjJ8p>1x?B(Q&f_e=4lWZsS4ot@a=d_Sf*#$pJe{E;qj`V9^}l zlZ`_It0}!`I8$w@%Vn)ttMq<>oPhj~8SCwvD+Lms1WsIC7zx=&VNY-XYpliSt4PTL zVZnECoU31{Po!zq5sn(B;#aIb_EU<&7a#zxLhkws4+%t$(`t?})i?RzRL?pO)Q7`A zg%bo#k^1`xStx%JW*9s6#J_AKiH6n&fC2I(B>yG&#{|%2Xnv)-E$LqSx$##F`2Y3Wq8m3F1#fbQeO8iCM8Tx@>f` za(Hs31LDn6y_t9>_>B_>1%Fk?Kf|`9u1AJbEiQ=vU81>Rt|>BAfjoa_*iw?u7iTc| zj$%>xOR-iwoNg|9+2!NzugdW9SvpnIn^9EowK2Zwn(E{U9?EoDy4D*dJx)@2W0<0U zUCpy@hrs-AO5=mTr@5dek;Iit}~TmeW0Xn)1TY`0B~S!p~WdqkaE$|Dl3i{hEX zxT5DpHeYycMcOyoyl=QV`E*sYxXt|5`oTjs$#a`YOn;LqYFo?wP^_&uI*fUW#{a@+r4MWYii(WM~s-648TA2?4oH4pBM3_g^W|L*V62xlBft2I5>C%JM+tv+!Qi7Iz9~C zCJC8x4Lq(zX%y$*i$VP%d~{Uef0_0=l?4d zqY$dfBUR3?oiB<2PNXA+C!q;r0pqa@62o%lV0ydDo@^qm!$5b zt!BtB{(i2+WX(NKc>Cb~y?gLxKe_RIh~{l9N7D`o#A@4$&kru4`6$<^9i1ilkDNbiK z*<%~#9>;qp;E7P1{90cY#6=x1?404K8K^HC?U)6|%Z$GTo+@`xeQx)%00hhFm=Ma^+gbD}iZ% zCIui)Zw%7tjQn`}4)@g4ST`35PY0{!nBSu+A9C6ZWn5jQfKPv#Rv10`kzKB)eqBSG z2yYb_OYNC0tuG7aM%QyGw{Buxp8W9`r0>S(;w~6NUqGR=>CzyyMZQIJS&;!jRaOS% z$w8_@Rv{=ctDUhz9_(-!KC4^@Zp>m*uj>rSZAE&kfnDSEP8WOL(hb_D)H6+wf3A(J z!R4k9n_{XM_wMV!ETk_U_SXlI#^b6yeLCDhCeR^j_4h?b!^W*emcx%G`FUhI7E#rg zCE)&G=Tzv#7ll?yC&kzl2kTby)dg!>X~WdR0kjf#Q1i?qpH} zX;CKfxAo9u8uOXIRf8Il{z{SG#1X2h7hXfQvBx%Rb;Q-R-4o=9rD0J?p0S6=1aIco*rOtip;)-EfU79FYWx)E;=rmbkx()T zjOXoJZ_r|q1AnRA`h-Vwzi~)}Jw#RMRVmMpQgNVLP}pL5Ee=+t!23O)fxXLQt-_BJ zH)WkBJretbqi0+czSrHq_lG(Yl9B;mF_O><cY0xjdM3pH4_4|{t!sb*Swl%zhBQO13`SzR_4-Si#?=N zID0|^n1-~NVa0j+keG|V$o^WALYPtN>x5d@z|pla!+{Od;0dmGV{eUHu419DY& zW5#o^o_LeL!d5P{Z2YGJ+A4`qjO?-6?vP3*@+%qvoLy7ZYmWyKQp*tuXZynVou^Yx zfjEwRq2^~O!HY$7V4My+?^z|`e^9TQJA797d@Fufmn>VOQm@q8RTJZVK90x;_ z*rUmGu!*8^`%khf5npnDaY0l?zLP603b`j68@0n@Ev%q7ohfB2T;?=Eo&^U3BBjbx zYF#2az>Q!-PAi~D&l0r}o*Kdi2S@BGAywTqk>u$MIW&t2+vdxABRs1Mj?UN%ta0Nf z8!sqMKE7k)+cnNi)pY+W}!IN8&1?Zw@0}f`V;~k*@`k7O}cP+5|5o8r7kJliK z($l1h?pOvXS+Wo^m#)tR=XIm0#fV)A2-rQ*#W53kVJo`@W3{N$QY_$^*i8MCoe8az zumO$Dp>Z(%Ccibme{YzlYOW7XmCbC#)kFC}QkJ;e<0}{xQ%$211K*+3u7G=}#k)kcefFh!vzE$54r5b`DSTV~c8Urtxk|w6i)#nrO=G7Z>ZWb4M~4@Q3}v+qxHE_fhRYX2 zXso^i_wM)^`BLZ140txou(N?xk`N8;>1M)GUbaeax7UmI-Z`~&rJln6WT{^V8E8@H zwb1izXqO~^)vdk)w~{nDA_qFbJwB5)1!>CBbp3?GhXQ6^6~t^K>v@#8e98|cs!#(0 z*#;)zZVggBJyoGnp6q?y0$-1gy06(6(l)Z^G32q`2cLo)F>;|3;}fO}e4$~ri;j!K z+ZZ*pBwx#^-}kw4N(e?kmRP2U_KeBGIa~ju^RAY;4&|&0d9zOIe5%0mrfJF!t&%JE z^_gSF?%!XrZOn>0;K%2xc34gj>w_5=zZ`qa{P$B-=0jq6<>+y8!Tg;jw4J&PeJ;Hj zPWoPU);aks<_9zEfkcg*Qhyn$@J`wi2VkgJ7*15d0?)}Z@eow^ROKfv-AlQswa2zXLi zN5{7=>e;>A=-i>MW4O#)Fh-TvWxPs=AMQQ`PO8%Ne;NbN)`7)>l_&}eJr z(gZVMP21J~6fsoV3oS_OzlE@&?aWF~{b{6w`zXo;~r4p6L*PNfc8C zI<_kq5Hou5_jh-G+&wunb+w^X71Fi?^(`bSAwT6QVRyR=hw?Mj)?nYeR|AD!($yNw z?{H*4x6f9Mr_^rjYu!rR>cnY#E{=RIZr$V1>m<=xon$<7D3yluHXp-i8)C6;l=E`z zHw<{75x^PLP;vD)vIr8Fui{A@8Qu-V>U-%xh(vWg)c*h;0PF%79;g@pyaD%v0s{sZ z)TmScya5sa*N0K3?%w!%_nCYD`f?Re+J9Ye!wDiKA#vP3b9B-?1}$%U6C_&C>EQ*u zZ=(dcytp{|fbjD2^2|d*yi2p~0;zn5a8V^JfB?&1Qq7a*aqceZnGIoPE<(Nb!m<*` zwX{b@OkfB{n1ts)1KK4x;mT@qca!l(4 zHGAgvPMnifz#H@Z50;P_cPzWpNB7IiL{#UvO;s0S2z$-@CAzup~x1?b}s=ZvD z^g&u$T52pSln4z>xY@0tI>b>N^a(3#35QXqeDXUELBV8OD>oSm3lgG@ou*+P|NoH( z(%Mdu6*irG@w%j*u=#AHQqVS14r5{;%S+8ZJoJYd^N&H<*kDIaIz0j{0L${s80WsTzlk1S^rW3wY`p>V0sO_%khy0dO8! z%rS{vVU4T$VMgYwf{3Lj-#s8jR)q*RFhCK)zyxBDs7=R>2d@Mc_W_xIS3@FzJ+64krPYmZ?OR@#1qAA;O;o;T&T z({C>}svIBx@fWWO%>~{dDv#GOZx-Qf>b@lBgf(VI&QPvKz>Q-?$M{Zn)hL@&Ltequ$ssjIqOfB8aOa$|x@Tee|icGE|h{v)8nSV{V3${Rs?f14iOtDUPZ z;ZjTTD1O}cnGPVEfOw)j5T}?Sl_rjd^2hf@p7xVi=MiKihrCAOJ0N$W&B6aO@5RTZ z^l^GYN?b}89S#yAJ8fqi;bDw*lnApuFVJl)l?Nes^ohrxj#4b_tA&G;X(q%)uW?t` zNmX{_Ao;UtTt{X5-eS2lNzK9`I5mrE_q|V=r82pQ*6Ilf%CBYtg$x#pJ%47eFuc#33HXKsd01M0pB) z@x#&InuEdVRLaFE{$91v*T4En!7Y@^K0Rof$?C?W{#i;l5NaD>V|giyJ)@?an%HHM zcIgmpF7UDCktNsasm)kt00m6}(kG77oF=Dn>0tGexZ?8z+9$jz9l2#en;#_6bg-Ps zbhda67_!Kvf%*Foh2z3od&sj8e=cf&qO-qwSZ^S<@AMcNZfXpH&d8g}iqC?X4$Gf3 zVA^OO=)}YrB0Bd3x=XVgiVWNv<)IBIG*1HY-$>ff!P#S?Q^S5y=T1)p_kj2}D>v3Q zGJ~JQFU~p_1hu-KyzA)G{;qplS1hioM#-s;ONuYyn@HZ%}S>*bTJf36a)tdV-@fLx!qQH77K3&d3fG~Z_ zg}56qt5-E`RnlImg#g36eS4qI*Q5sew;Z&5yZB$RYXuDG6qY12%j%K_P z+(AjIwL%jw9>ZLBcT($XIWTKmkVVWz!o7H~lvhr2Z{2sXnXP$yBK1K!ESp~@st1I- zeB!tW8}NDUmudNwvZaG&_*zp>csvaXM_g|K29b_zo;RPq5$rH}*d$G=mJcJbgq@RE;F((y^~^cp-_V<>KrkgB_vQoC5E}R7zfz zWv{u?6>Z8%H5Vupe4mb#P_lP<#<`cqRsaF=H|{`WRqMO z3;$*<=!Hjg>)UgUggJ1Hw5K*yR}Fw<+;1a#6lSZ6kLj_F6wr$@AzjbFy?HVxYDyo& z%*;k+Hqh`iDOy*@($<(<8*Fn0n0JKdHt8$`wiiFp!q@yht!UpUkF}hg+z0s1LkYx( z6p#99m-?fDxyZR$2g&6rU;RpH9|G{%hX>u>oAv1-$;k>S_eRm1bg%l0McpcFs`6~B z<~*811|E-b59?pMQc>E>i$7U%H8zA$Xj4=ftmOt<;f`$0qn##jrIIVxn>90u{4(7% z?PWW&6KI>CaJB{#&Ds}Y_1Vy_E`bWCmBL%h=P2^!nSo3w;h0)`A845s9U(98UNT#D z{imwy={g$*AZvZ{xvB&Vw<#cpQ;_gbNAp{~W^{fF>o|CBam_jXZdh$e%@I=>8wo_< zEPSU{S6njs%89!L;pAso8U6x*w$Gnh+G{9Ap_*IO)L$dUomcEd;NYVRU3r;@sG5*N zsTfybv#r-22j*9a%5e34QRq?w3YdE3&}qv`L^PGjWh1lVCJFk_m+Ltx6PV5oVdhEr zy)!O~Msj(6`XaTgb@y025!F(|0bC=2mAaaZQ6_@D(mhW`bMnvQ-FdJ)+YQa~oZ1Ix zsLI~(Q~J26snwo^%4bw^kCON^iXC|Mpbte8(u^kDmHm z-D%q_fEvLy)lf$70e3dmy>qLUNz5p{Gm1@GNVZ-OE8&j5#m6vuZzEe1vDc=S>z!P_ zJNxV|-PFUB8h_g8BrsUw(`9L8cOl`ws3#puqu;)7-L4qOj`~OHxOAtHKzBa~Q#!U} zah;vp0Kv@=GG+#Z95VNx4TipNX`2BWPy$mMCVFOud@!3QP~C@+=VqQ&sz?Svy_9bz z8b*#79dIo2c=OfWe#^iYz#_A8sb3fo@bCrW3!MCr+xfYe7CI1)oDYXICHNg_T^!V$BcpIW;6r!f}JaNeriLm;%&tqL@@FOI=jbih9gj zr7^n$hU`g0aiPh7PjS;`^P$|;Z-GEvf$O%tr|w%e_z73b1kCx#fE^<}OJkXu-`FyoR9xFR34xW1ZWINc8G~i$`9ELOjVV%5Sq)^A7qk za<_5DS^!$|hiAfh;n8Vdl8|3>drySoCuigR`6fbR-3FQ1!eYbv>Ytn4fH#TsD1K`^ zcjcZbCqy?L%THZ+rVlpgYw>=)+R`N40tT?%b9bEjV%<{`<(pC$q14!)lL;tbAPZxu zr)vK%E%lGc0^F7VuG)a_{9A~j98Z)3EfZpw9P<9fv&Zca(qWzl-+(^>DjbSB^9Yay zG{E5jpzZL0!#9*e3LM_Q0FoVd2PF7CA}phlp?~hx{`t$hk5X;G=TBDC2)!I+|9$E| zzI`c+=u{LX8wj7dXkUIPdG`}S!__HOYc@>E4X3pwdyXER|NIa}Db#Z`2(DycYVyv3 zW<6F)Z6tTa=`<`HJiW(Sp8784LVcVxct2h(04Qlq4O9w^j+gT48xiS?HRw@5>f55P zA7ZMJn;T1RaU1eRc^`Ws=>}WwCzy!NOr&(g|4Ep$kvz6a8<_~uE3aF)T}y5qtx3K3 zPHyy_iU_!~*+D=AVi&m`zgU>@P6GRm*cUw+Y4Y-vnFfd5u$U{I2UAD&b@(z~&f4#g ze7+>Y(;K~aS5;NlxFgP!P`#8VWqrvAcBAtP+`+^U?9Gng?X-n?R`YsbRKear%{XSpm|l)LQ7+eSd6E#_x6(1Z+_bR5sGv2TBuLvfzB8 zL|agZ@6e@g{n7xG@FXzUeY+R51v@`HR5QDQ&2u_EQMYyp95ik_tK=17`qBs7Ct^^4 z?(d=|?{d^XtpKNDfIEjKOcgqQsjD2Z$KUd4NL3+}p8Mi$t2gs!hrICD{vTY^e;5#U`6EfF-D+!H|LRCe&y9Jd!Rr!EXFAcA{Y z-0X4H-_OqseN^fpp< z=C%+xZHZG8>}?-6QA^z_@Hqck?qF9_tspjc(BWi6ls!RK?Gk9#DBzb<0{6@o_fnP^ zHaY6kV&mZOvVJ_1$i}#Lps%3s9A_xWO}2&EKgOO8Hwj^U%~E28;?0{|MA-wkpo)E_~xPmx2fNBdc->=uODx`ai^SD zOQkm&~l`SUm!>3 zgW^P1ZRPVV@tq*=2`pevI-yD(@`kz0aKHr|3O; zMr+k6wc~DAnq@0FR~ZlLp^oOV(M_s{LRP5G!#sP=14&jtO|SI;M&DRz1&J`{A~sAw$}~Pea+zfI*jvqh zHAzbH?~!iRc8XQoJ+{_QU%$Gp?lj(k)mNzdOSk5yEOuUXOz>Q`2j0t9I5u;xh@J&T zhm`pG{#n-1QJO@zd;PV*Q{yg82~RVj1G;UA;dbJ)HmW26eX26>3Hu|%xbPRW*beIl zGvS?sFN4ZGdA_919|g3_+s`6UaAw{>k_Ft7^i`p``+xxbIfW2DF>NWFH~}W=k=H13 zlV3ey>p2n(cYc~ueY`^3yLr7H3t|_2h9@^wowh`U+$D@<<0JEORPLQ-bYRE~+Io~l z2yGrKI25Ir%VTeS@a7JLZA+nbCLbI3=WQOj+hMLZ+HK}&Z-xq(+io6G7rtZn+{~Ii zDxF-0X)7he!EgWz)0g{W*vkBr+&FIa&srPOa@uv?B$|`LxYl}zri!P<`@c`sl%^xO zBi(0ylxZL17HB0Y>EMl>oYn5kk3v0vhd`HM1+{8(*1BJi^UJf3TO6n#$L6T;vkjj} zmre7WS2&3jm~8*+n%+27CLa&sX_;;S5^%SwyqmXKkL&LI*`+Xmzf+Mw$SdZSa$0#H zdSCz`mYW>H*xFL*G5%tx+tyIkd~Rd18-;MCFRa-Q$L8j$F-Iyo{Yvfpxzj(xSPFvC&&&=#9vlc5X(r7Nh?zSHV=7!GfhIm1NENTx&ng3ACt*SnR0B_@+)kMo zP3zcwgF-x)l7ufKphF8MRlb*m&Jf7B3ccXC6*M+QrWzIB>uKJK`EIo!&|&j1N)(6&^bFJqux~`Aw<`jw zQ+BJN88j82PS)B)Xv-SnL}p4>HzZt5Ju;5!a1U;ei7%T}wy@>P=6k8>!`Uo8`e%{H z3f-8VG!3buD@_9NFS{|hckHCf&!1>DPu==cXdc!3)jkY{Jo-<(&(Bi(L){So$G8u{ zZBN&AoiQro!s8?<^*mMcPzRf>0-a3YyRo!{4>)85s_GiG4Op!za@J)|Q((htR7vH;8ewYTe`~ONZ{~)3fLJzs^2q`xvsRH~`p-IHxVts!TC> zkkY{V8pYj)Pgws&)octPs^oC9m#G+G|8P3bhkuO3|1-P05BT&b()IrRzYqV72mV(& z2<$rmP{%)=-~O*0f7|;I3Sdd;)6tQRb--~1T)KZTM7E5Pvn${PkiNXjBS21Lfc(^W zq$T;0RQ#WZDE11$b%aQ<7o|U7HV{d-wGJ9W8TnO0cGXBi(s{2fTn#@iUV9t9o5~79 ztfG=R!OJFEH$Tbovdm8N&8=g(hsh6GH#Vrsx&CV2N98rN5p67zJRS$E%x~WJmk51W z7!is70BmbP^TIR3H>xPHzMjceO;weq<)_|k7D0X_6;IaA`RRt`BNMjGQy3pX!w6XE zMlp1R+Gds=TRMOCz0^>%6}_IJ2O7%C@EU`zy(p88tO=*HBKx2{w97Vk@H~Z8&2ghn^$Ylz=ms=dv%yv)o$T<^$jT)nv zDLT_s^w`fOxA<4)Pu~)0oz4d?(m>pcgzlX2JEMd(WlkqdUu|h;P_j=Ze=`Znh$+vk zJqHd=e#0HeRD8PvR$zs+unk%CR2A*Q46L4#zn;#?%_Y{X_d{HcXqslFxbJ6*-ZeLz z>KS};f>*0@-8^oPczqUVHVFZPiSI~mZ;#1O1Bafy4@?pMNG$VHFp^8eEe92pe~^dqA-&_A{vVFw+Nn`!m48!o&3U0B*{q>31ZFDP3YIbi=H^K~BZ2{V`B? zi)*U-N&9abi=jD>G^W58PeSHM7(7jF<0{8u%#%Wg z6kKBt!0q&sp}9-BTMC+k~TJ_(Cy;3eKWQ zhb$O(W~X+q#RTU|Gob{`ydYIZSel+UiJp8fU614r$QUa4o0s=Iq?Cdvw=g%R_(UNg zsoDu6>66qg5$-0lW76$3kYb)_IXu`X1_D$n|05<#_kfWAculxn&G~|mVuFxKTY;6% zG=@~utCp`nPM&!}!_ol}M278xVZs(>P!7HF^#o{K&GV*rmZ0?a2v=NT&8roPaqrBh zsTGh40V@d5@3*FI@sjx8aW<%`ODHu`rK)}~fh%5hhOKT;`|RNXFjG9%C07-e2;LtJ@ge z>3TdeAVln-%?gaw;HtkSF)@)`4*`ve%g5#DWY;S9v{p9mTf}0l9=Q5sX4#f|Z4e~& zIA4sXFI@45fmgTP@|LEsXt@t>`P=QW2N|h$Y<2JNaovi0?pI8-5kagv^={Gi5nObN zX&r=ew`HVZbZC*U$H&JT=3dJ{*qirm&1p<>mJVneoX6ODrOpfTW*F$5MlkxK!KsV32Ckf)VZZ50875JvFiSpMIvF~Jk zN6%(&*90b5z;~%3r@fqSYP#R4S1IT{>L3O{dv0;^ad1AS>W&KyM+&-$d zG3XR}4O&-8AR20>nU~PRkgcxkxeq+hf!K;yX_Vf@yQRIjPi|yJ-d?tN=8b^&tHtq5 za(KnrjoIt2kGXMWZP|`M&zc*8@1AqMaaS@xS?~ixj}DBUl>QZu?1{ZyK(GjC?(H5E zStX6mOcKCUsP@Q-x!}Cg&!QqZ;j8vJH$Q555@LB)bJvVIL65RopM`)nD3U6`FdnLT ze7FXL?)>QBc-C`Y>XycaqQfVwYx<0jxqouJWX3@)W@b*7_-l^s&d-IsTFr81t8E;3 zWMiRBAyaWDHTTMxUk=tKE;9zZh7)u0xv1}wK;=FCnm)0{tZH<0w8ps3i+%mtm$|N=f z;eO$q+$@idJ)k4$={qP^{vybJc9Px8^iH0rjXeWvDMZY8z}_Q>6-#%drrk0j8jyWe zTPBO7rFou|R)taL9^lo4GbVEG*B&8|7Y4Y40%Df)*S6+`^Y{92ScY38!5Hmn#S?>l zlWjt9r?1j#$l1)Pj@$Q+Re#dZ^sAVvfgw-#e26$#A8VJF%IAW5An*gIu(CW__IT1k zHR=(3lG3s}wxr=lha(ulfu^qJXK$lE7^c^B5e`#X)wPjEkR7{>#2(cP&|>t|iHMvN zto_qCY4El6mN}y}xP}ehUr(iA*f6$y{|sqGOmKr?R>5}~_ZNZgjy|BQ-=0>!nT(d9CuJ8A_k1n&f2RJ`{dOBTt|LIkIc(WlhtYbolzoA@Lw+`C0 z1gbMzZv6bK4~hqLvx@uPJw^0dIq!Sk z`SZ;m`RA8&&pr2dzu)Ki-20r|mq?jtKGUPit=5(?EHH}rS;MT;Ik%mTwPq>dKCWqA z>TNlhzX^9oWV(lv#-XSwY$P0h#RggN+amI;%fNf+bUgJT))H&Hd;_$aS;Oc%BkB%` z^o?uw$INfSghn)NfQo9Sfd2II#QRUzM!(l|Fo4EHwD$NsZR)%Zfn0Gtos;9uj=HD` zXwy`UQR(Lddu34fRblhTX2n8QYb6I1OMtrqU9F*uWgR%vyio8RywjsQP0nOho_T3v z+$>&-`NU4{nObsr&4+z?De*4+#$!|ObGw8-cX5Mx8HmfsgAWUhKAXhmhrSv5Vm9IR zuZ;Iw*Fj|Pq;g4|(`xo1+~OOAFlRmIeO9l7hEWth-OB_**;ENJP_awTdl%H1MZPcT zC_kG%Xq@^q!Ap0D)VV(1+FwVn@kRTmzK?+7#KiE*!_rGr*%C&J`VLAWE2?kpcmDwq z*|XGF@+_oktT#Y%>bx{$P{ZG=j!_UW$1fPNb+vZsZNewoSV<629n8D7dBC*IGS&m8 zkG-0XgNI-L{hqgkK;5b>57DwKe%E87`CQ{4_|WLWQM0?N!TaesJcG@sWu+B8iEIcd zL*M>($nt{1SD*E$^gVTK8T!NhFqB`2-g~r!SBxFY1NrhKe1SpFJ@@&gnsq ze&?{yvYL~nWWkX2-K((XvN>^5$YwRgLdv_vMzYmTgD{v^Zsc#Ec0dA5_`MVA+PO;* z65C%7{zf_>DDK+1i1>#DnDFU8#K&stK;@n~yB8eae-e%$#K3?rOLk&}ZuE92>=|}v zFmR&)az?-c152~88~he<3Y|(OAmFj76|&t>-4^cy!Wqca4uy#w2ryaMr}CO4rB`!m z%gG6N%mM!_C^^V->u~XK@YTxNEeQv>C)z843&LgH)H~FBP7nM(PoNy#ZV^$qpBu>d zv!egP-mo-XI}cGr>V$>{YKni+1b9jRnP_fgMxN988y9IOrjB2uK2p9GGVc(_D^rZ& z{($TEk2|#a94sb9weNpParsPMPLAq5_5DK*l^7_^86E^way$)^yRqz9C;CLVO1G$6 zqC>XqZVqXI{*LByK6hYFueiL3mB>4FOokmbdrUv7vm{%-U;ArjN5&}sr`{Y{G$d3# zgmf;i!89cq}Y<~=d=X0uAH?GXwe54t4TS>$PjWi>GR zt*kes4rP(`gKOq{lG-HLs!yF+8k-MhqFzvYxpOI{s?97Rk1-5trGuNf_p85eDP4Q(t^kCmOBLCncXdZSXC*D6fP&8HQ zbtQzySl9Nvt&bz5)7Pw!hrn)VD@kuUdi254!K8$!(|=8&*cSzZVHczAN~Zl9Xq^@Y ziJqf@AKR10T8#ouR~N5*uDG0oi754mRR}6#IuGW5aQE=xP0K1D{gobX0UU(=m>x`E z&scXMN8kPs9oys0x9+kf^yx}_cC5&W1L#njKCCgVJZZFC|J#xN`n3ca86vE!?yztQ zFEc5BJ&o$o*APtvmkLDf8(~aTp|?h<8Aq9G>y>oL5rzw%i>&M@E*&vsGo5`*R_>Ld z57MS65@B-~K}@4;05X>c7#AQP2{+oCOzTkU@A8Yh1xqJGv?kW1w)!4k+2V)}RYwU< zD_>+q4z)f4YVxA~nuh3h!J<(L*nP|nZag*Bd|*I2E{`e&S7uVM9-eYeZdcoUBh%^& zI!dGcd&AP~5>d|$`ZT8I6dfC4UO_$m2{3o?7n#d@Ca2eVy1z4KCLJc+A(+o^GUZJC zfkptLSf8`vQ{S*o>V|SAeh}6&AdvSv1VSX^_hV9Hi)bFZ`Jekk=Vg$tOt^T}M>&(^ z)hOe=uPB-Hutf72_3V_Iz%5qe>-Z{FN3}VuqPk8re?ucNIj-rT_(qYDw0Ajtb33QH z?YC1s-SV`znP76odDtSX~%*3@OWBxZsEIGHC zfzXfhF<%KgAi8d=x>I!zm&M}&^E1n#CTtvU`wDDFpMbHKt_XWk6lWxAeQ->d4@IzN z($jS+qOEa7=NhT-tdU7Xam3=Dopl-vdqYw&T3<;9@Nlr(|4wEEy-z^{{NAria@Oqdvj{a}Jaxen?x${td$EE7YU)Iz zvQ{uwrRLU5LqQ9zGB!aE_ca~Z(Fq(l&I2s)F$=piRKQr_p1H{WHqpAdu72E}HJ@?? zxJ}jAs;Y`IeQsXlPSslpZFW{>LT7|}u{XDE6lSR>s!-$JS&e(0`5=ZXl>v^&4O4Tf z9AYF$)UKZ}2L07AFG(9Ha+64FC-7BdoPFJV-$yK*(%~p+INxl3Zs1D1O0nO=-EMc= j3MCYs|HJ3m<5j$P6!UOmeR;XD|k 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≪HimYZKjU?r;tR4^r@fO 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%0DT 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 z zkFKgO)(tMAF4jK%U*MI*f5NX`^uG~ve&7nsCfIYWC*RQ4ti$YdN|ZwJ6h%l!4<;L) zJ;rhd!U}ommn5G>g4h3r{y}?m!3;pN^85Mttsdp$29x(T3tN7gQg2o_d)oYyjc?W# zG>)imzKE^IL*o$-zTu2_)fH^u{sagr=<#=kJL2TcA99&|9KAXHd3y?ag;B-i#}{Cg zda?7(Gpv0ebThT@p8^g3yAV)ze-67&4e4!XEKbagEZpra`;S0+*HHk_T6W)ffGn67 zK|ls+JqhZ(Q2zQ5?2^nQhi+LcZu|`@Zv6Y&YheF<@1ywlO{VB}1K1wa^!9%{^Ix*X z1m#lF_jf>ur&rKymnpzqOCcLwK5@ZQC3b)C+JD=n_EDdCXS_akeWT?z|9o40UG6_C zzGBo}u)hZawGk@{DA=g|9?pfzLgFJ6D~c@>C{C&b`WpXw*V!1a;J}A z;d)1TNp}J`hm@sp*Mm4{xJW-ATzKyN^DzW4<}(m)1;kaO>Oi{;bU#n)Eo9?6PPI1x zq#zBPu|cEF<&*-lQSPCeU=aZM*t^RDLt=Rh;jsE{> zbn}03Yh`|+6oLgC^(T-H17XZyx`JHki;{@a^Q{2khpb<7@_JPs{lM0R5UF zk*Z%RV}1fXzMJl$=tc7P)}K~ZpoRVGHuHM1D_q#E@a&h{Ta!hgGX8zm>{VT^PF9Y% zd$ICvD1F)dNvqFZat+ffF?*+J?erf_FV4!<^M~*_wp|27g4Kh-mO&$VOB;eNGjkg05n>QLF0{la+ z$6v8UKJ08;{d$mAJ(`BmmB4|F{)y}{AT%5*5=s9EQ~}oDLkRGs7YFa|S`J8+4T8CZ z|7iX#379C0O{B2CShf$od*-<{KlbuTMZ)9PcIE1eVJKskzs%x$8I$MLc^6*EXR)Q~ z^$}bHH*eSfi+ZX8GX&so;pfk?Y`EH67L9xIV1o(z7m=NCM1-jZJ7XXsyeed{V@qJ_y$oF1Rbb3tR_Qs zc^T_>yKB$NbR~~rf%`IRKfziPCSp<{4I{7F)E|53%UT*D8BLDm94`~8z zkB(oDk(T4!SgqLup#I%YnEwl4#-XrEq*R=*$>)28LuD5lI{P;NY==k$LJd9$#3-Vm zbE{ zCq|H26`=ycvg}B|t&hps+^bFvg@68a(8A8fD*vV7HN{e;;rFgMMKD z7Y2Q=?xhibV;plW)Ymkv)f6=7D3J|R|3mn{IAk=no`DHZ#Pl&7pfXIQ%0AQ|i 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

    Kmi$4AY;D-uquuGnGfBjP$@j2n4>*P3G~qU*%?r z87Cqd#nhpj0uG(K9(rP8fzg#=Gyel-_DfQxIrl&{)o)1jDwy$UJAP1K4VN7MVRMqt zysOb#b@<{lWKxjSbl*`Ta5f=RTIyO9l#0GJg5PA==PKVll5U_Na(!}kQqNK-&CXc# zsa^q>^OraiUyL!;us!wgde?^-O)|`5Y3+Ta&_ffug1j-csnDsZmr!lK>)WLFcm7}T z@iK#0L+YJP&X((Ri@pK^zgI~Qh(UyTvjn{!Ym}{kiuU1DPPfB$-;dYsimXn@-&rkZ7{|#_YhiMl7Bq=vZ7Z2M^{ox;WDOCP=psmazK{EQX&t26iPGh?XNBRkQ zeFO`F`v$lKiIF66uYMe%EG&t$fl+73y^uZ^nr*&uX&!4DJYz}dmq5iNbQ+!9uhj?p z=l5AzC5Ez8_F$o|x}{l-tFDb4Z`@0(EWG?E;i>i;AFi~GLowG&S3`Ug#oe-$QiFgt zb4?_GcjBcuU^M;}PcAjE_CIIphd_oMlQj0{D|ygD%)&}j_72(Np9bUVxM>u_+a>>cc1mGz2fiR~7CJs?wCW3svRU_AF5E03+n7Qzqt8n) z40Rzo$ElUuS=IWzy2PI`Iw9{j_l!>hDK^&6q;&?Ed?g7uxV~19Rg)EC(2}px>uJou4k(`J90`& zb-E0#r~a75o4z#byrZZbUs@`}AV`gkVKY>sQi1`qd-u!VPyG8t0zS2y?QjA$u2Qu3 zD{r6X$@TJuA{mb@J&GDBwR){Z=uuIQ{?B!TYeABNywS+kh~TFXTN5EdMx}Jy2Ya_D zgu7&hsxs|%8UzPfI)Rjq#rY<$-G#>;+Co*TMAX}V)C2x=kjUBx1q*0pqdCFpWTSN? z;Vj?jjBDN~)eb-wc*97ohMsz$GNDbMjE?&cy%hbvubA3ySzNXPCol~!%r_{VM%794 zOH=rtcLRPZkCk#N?VTz5v+ds`ZT+H=VQ3~#R*%_TUcva{*N-N1eD;W_LHnoRcRXz5 zwQ+u2lYnPGSBK{E($Po~T?}nXb*+SxiQ?W&)u*WI+0xf8*OZE7i^x!L??HmC|MM|t zOHJ|+CXZfJtoE;x?m_2$U#(jO*!gJ>$joOZG1xpPLK$SDlC<07OB}qb!)87yQ(F>i zM}MfyzTWhid^iM>xp|C5eX=S*8DFq3_4JW}bE+3N5KRYR{TOR1bD@nj9%wndy}gO`_veFzi|2QB2`0-lHZ=*l zUkSfr7tR6Uk+qc-pvGah(Q*9JMeTR!0WbxUlatTS&+nlJo&TY)ywWukQFX5LfL}7p z{zvL~{r@j@j0NK9R)NNX0tM>s!-R)87R=X6dldf-v=WmZtSf*7B7kXYyr332B>@`c zY!Mxwe5oWlEEz&XRx!539GyWIC0_iXyl&ox1zsn}cUl}cRL?KZb9+Y4_<{uH`yLNF88oFye@{sJN6eNFQgCriv zPF?@lS3~t+jLfVjwK6-zuCSXrxi6e;#Um2LM8;vORsm58@p1@YQcNPyt2It?*=bi|rrpQuClu1O3I2>cQZdt{4+h5^TsxyFS0 zhW{V@*<$A4EK5%~zW&J?wlf6a2lIY%C!g78>WCc>pN(0l>F-|(K660X216)KV_VQz zzrKG^hCMIRFGo=H<@$c;VT*D0-TeZYZL{EB zkI3%MVDakiOx1~;r8^-_Cxt|V_xm$c(mJ!sOLDWuGnIW&Wj(n%tzbf$t~Rm0CSjJG zJbe{n^u$PtWaoD`Cj;NP()GUWnwLv)GSnM1xL}0-$FW*XS?!>X5!PmLexl+9@t;a= zsTgETe~14$zt!^x!r5DYM|m#X_agAJT=U;-N4R$g-=PEoX}kUzRKL!a5O28lxd&vk zq*J#-w`p?Ye`f?zz+Oaj@30H9O06~zdtMd>@DCb_Lq{*g5y4QeGVWDPx^YG#FUskp z9bKQ?-8hurnOOQ8xY>8}FOnvzX!1O@k4LUg%-jmR1sK(qBqb=8FMeU@Z~{b+omvUl z#;d;ZGHmV*vQJnw(&nj`o7QVt$x$WN+Ukh5>Ne3wuKe9!u%WBHLqz$?x9>BAyYS#fv@V?Zgu0M-eK(u9VqpJq*X+qpF3-Ob=3&^t#I zZt^iFfQ>uw??WuY9JpM+u#*F}$7oyBeDOE(Jf?mX5*WS64z9AFt4oweS|X@CX%o{n z-}rGq&Gsq^tsG420qxb3aUb&>B@C%i`nh;-(=J^b4eLK_@`ui9i^i4q5AD0dx)>4} zMfZA!_V6(uVS66grdqS?G5xFzrdoK$Hi~L$V}JKDKc+G>A;P5`K>j2yfbG3_3t{r# zN8F9cWsF!kZ9jL6(3Iz77UMKxL{EoDu{84_N5l`ZxxU;wSg2At_I_H1G)Y`x8L+yt zAPP2e&|jGuZo_qhsyO z(uNcIC^MAiTje?ph3ZjMcw9eeN7Fj}c9hO`I+=a`)}6EZV%r{tEGIXyzW%AeB0Bov zizRTmxy6U(G}9N<<^ zAbxFyI#T=kagu6wBP%IIQ=!jCBP-w9CWD<1zZb7<_fcDWn_T2w%0Il#zql<9la=9h zmyloYCk$jhrG_1dI(_275@mOb&F`g4ebHNOXh?JBzOYSe^ja4Ee8l5&aKyFF8p4hc zNS-Bd`0+Xn;jj9mrlVhF3wgE1apZ0P5oMU=Uy}UadE*yh_0mrG_O>ia&R0?IyLsSZ zogyu7+z-&jVlUrIR0xtOl9h6;%F3wZvefx3Z%j(X^N6!|+PS=FQTM+8cUt6DXnCeNbb3rdqR4za8r5dxx{{mrpNvhc*^3;%MwbrE4f^i2X^h zQIX2weFKWItl#W~IqXfn(M~Uo|F5?w@Hc?U1X=AutX}K;RWx-3)N}pvd-*AsPugOC zt*cADXJQirbiz7bhI=)Bv6U=}uNZKSjgB>f(m-(#s}3#nL%oc)&}Q@R_5S-LtR{z& z)-#aEFUif^FF7ro=7elst>3MEX zW(lEJ)hky$uV*ml2Qrb74Yfjx6(72Gysx+#mH!Q`*oC_XL=meIyqjRl3*@X(JC4E5pbhhZYNS;PT5|#QOeySDVd+lXfnG)b$uygugEs z=)Fb7Fmax{I|pBG;8cYg>%Dyi{*Nc5xCdEb`tgG0&mq=dW~yeFjiG-Q+`rsUJzLMS zrRha%j){0tUF6|B1^w?l>fkaM9Yl`Y4|%}p)#xp-CtMS3vL48&>(oCDzD_VnUk zcGs_Tjw!A=%p>1>by^?7H*%;X2oUhCYP9}#-1~$J6&03@7AWM?Up;4^`VV&>AQ)qO z7VZ7X`vwjitQgIgzMTnwU-$D}ZvTjDJ7JF5)&G<2e8KbGo&qNSf$0>?260I(BQiN@ zMmJh6^Jns43R3h$+K~3kcEPz_5<(aprwxn_ZZA{~BpL)GRUT;OKvC643N0z<&J<$3 zM65RS<=vWHwCBZzSNEgS(PtxpcyI2{oM}QryWqI_8S~FXFR_HCM_3E|9dMR*&29yx%L2axw`Y32RN~$!lu_ z`(z*>%sf2D&zNY)abY18LMz>!Rb-zfPFSG0X~*DCPxb0Fwr555$y(QU+Q&ncCjY%= z*)LBQH=gZoSUl_-Eri{VG_T_vJlK zS)pHKB1}!q&FP@i)6?NEJs`T>_uzs>1#=WAE9>eix36kbQrK?jRIaDz=9ZS+xd{ZT zbb(!QXm}X?TkrrlZcO3?HZ+uPJzZU@%-J~??bxD#ENG0&*uP@iz==GXekI|WExnd} ze-7DrC+%mJqwANMV(vJYySp45H{~wd@KQG-pml_Ch})>)if2{<+O1>m@75Y z`Xo=FffUgD347xf#^-uue&zXTzFcEvwR^eyt_>9`%Ims6RMy7apbu5cGk=z<4y{ zD4J_8UHGvdKBLOBGsUt{N4?F`Y-GsVJ&ToqRhp6%7YU4@#=IyjOisLvoR&mL2x#k+ zY8z67{hptucCQAnMh6F84NH zyx;h&!iR>61Uydwym-kDAd!x;1!(s+G_X%~WOjmQ3EhoOvnib1oOB<20yt%E`UX2w z9%GnJz6s=2d|75IE$dBtel*!#nR&PGLL|_ zR3#2NI=bhBWW0!xPCq-N$q8Kg$jh@jJUMGODZrOU5>{0uTNh^NFNx%Mb$9h_o)}=I8UN zy^1V*jB*J*dLNm5(&}?wHWm*J21#fnv-^R|c=f$lXF{_!-WVvb*zzTiz(6se$1pWE zR#sW5Mwcl|e0g*SYG!1OC^7bX=y01KptIQ=46`QZ;om?RmsTvL2w}S z*U*nYATNIbCS4IV!BECPx^p+8WXZp7itk33{C;IE@0?zK@N46R(y+7=iXsy9(nJ5c-hcbk(BiSINrBPQ*9mF|+TK z{@BX7k`HEi2PK>MXwM&*^W1(?9TZE%rJ-R_Lt` z_0Ze9+Pz7Zjd>2~N3y}F-GJlR1+Z-C^}7h@5CDqt^Fd~c@laI2>FH9o+3u#GFolOl77wt=y}df7Z3n`( zTQchF*)A*S;@WB*wv7nBoh=a|kC>FqQ?;n^gAqZ*#(o~Zgt~$bK*XB^Ao|2bC12Z{ z+)enY#-Tku+l%Bfy*}Ph`0;WGJfMG>0IZ*2ENJML3=W~;qa6>dO@s~t_Iz=q7)KGV zW*LF+--ao6O|^7%#_5jP?bb?EietDLmGU9v2M&&pX}$?-;Wnt2DEjY19)Q;S^Yp&$ zax#CB4Us7q$u140Ujfnx6nyxr3Mw)<=jg74>?q9c-r&OQW$^ITK?o{tO6o@`B zj}xd4#52bzta}=uLP&-kE237j${r3sLd>=# zLE`(p$R*4VO^@_VQXSff8w>I>h01h{oToGhZn~=y8zO&uSCrKGsKXsj_-g32XHpcF z7-Q9Y{NssSa#PrFS9f}@te|#fN9{iH*Id$`Cks#daRmqt9v#E^So%s*Qv*|GhQk8` z9oj%NJ}S_*u$?Km20Cw02sk5feu*mSt5 zo(qlE4}eLBFc`|Sl(_i)C2?GG@_gO?BG5t>KMIax=x{!~tT&%Z_O%COvfNJQMmae- zcX0NA`!$)gpTirSo*FwI2zcx@=2I5|4cBiEn?TFl_((2OG}z8TBv(qe z)d@3kq1}yX4Sx?aD7e998SjtE+S(fP6b;SP>uUzNjCf0EI$JR?0IR)U# z^Cg_Ac8+I@(Wzej9I&atR3b8ejg4I_)v5^hfIM<(3I%Yn84uA@;B?T=7 zzqq(q!mjDi78i$@G|J(I$V-KPxg-5+*7EnS0(`Y*Q94*`7qGZ-ha_o#y7`V9(tlnD zNq_-wICNzWSoEhmWae~Q!_y?O)oWxxK6Ulq8&-eik! z!X`Z=5eB$I!BEefA>*t=)Sg!j1$I5!4B8%&?`07fCw0FxR?*JxJ3hD1k5XTD0C%}3q zb|T-2DBPJ7BmQ@R_~#eU_??MU4OvOu*TfJX^kV4uGDQ*vu|n2SxjAOmgZmH^-ME|} z&_nQRd~QTXLT+oZqwo!ItZ;Ph8e<4bhcLL!uI=FqyL$)j6*pu?Bc#w8);E+6R0;_D zFsQc{V}rAD_x1%#B32E z@_ym8wk`+6L4lbgrzZ`mg$f`Fx8D}4-XJ-lVr{SP?=zSUcYsmhF(nb1BAdwx$sxGK z{`!2XP8tMGDTJcp4_<=b?smByEgdMVJ^-ve{QPC)L&mF3=dw~H6yTP`NJvPck*%#y zZkvey1K2p+FU^}x*OJso)HHw|4Jgk0yRD(+)qR_b^==3;zqD{Ztil2Jw8sqe@MU#1Hjc$gtqr52jnv-MtDI%L7|a}cD5;n-WotWA>v+6IP(L=_AnL8@Uz zNUl@?+zKwCcOn-Q=R=>jLagvFIM?FWU&N$<8WxfAze zu90sb1kw(J!q#JI|1<+PLnk#-C{X~HB!cBavw7z$)SG*1a6Fm^ehpXln&f(n?UhbY zoL|{QnMIXZ&MqLsPZ`YU7_75c@zsC-iZ{pd+WP>OlwlpU=>(l zRPL?7isUCp*09T9vxcJ$KujsZ0E7#+RhYPSU@v)9tn=xDZBmHkQVl5FMa{$CsXy?h z`&g?O6!W1lQjFvuG*}c}_Tt{kyQHJ$>Wnh}Y`9&EjHXQXlbC?l>0CsVm5w5z98?#M zQjpU7b=6&?YLDb1$_@wnr?KvRuVYQ~kSa533oie=r)Qg5-R100f8FD&KUF=ApPo1( zA9tAT^D}F$7FXJ%eol11q+Lx@##cV>3!BV=Gw4~&O3v2|YvO3v$=3|4Cx!NrB{ggX zB%~BYmm9Y3K>gP80S}GQo7WXf`FC#uo^urrVK#(ShmPyxq2Pj*EsZQ}Y%DA)6sZl2 zN6rulI)xI60M`#Wrqt+6g^l){2IFyVs$dADfMUZif|#1!#JGM`)a2Z+*BJUtsW}0> zUwon|pJTGa8%G4y^}2s`byz1G|5<77N9x}|@!jh7edC8f67crEO+a$;@0T_`*(eC? z(|lrnb~;-I=bgeKRctre?i&QSniBW@RbPQPrS&IIZonwF_cH(R)!rLE@hef!-H+Ca4qmD=eeKRzRcGd><$T(o?xq2*i-Y1k#+VKU~i@ zV9ixSiR$R+aBw(Vy5_gf1)@Y|c|~z3QCMv>bYdg@VtGO@mFX*v!LczkM=BIPpy5ha ztuuAYPcbkskbeL}hX6>Zr+F>oM@7cONIFPI;}L1Y6J%#|B*{<;lJsuG;U|5P{}I&V zPl6ua6Q7)%m6SwZA22Dl)k9Dh@b5tRV6zYOV*}j=c^`NYEb&yp+r0QaZEd|k7^>O} zhcKDom2f#{j9Nva>!oM#!0$U0MBs;51u`VyKy7qzR;dgB$ZQ}Qf@nD@PLHq=D<`Ia z`0YXw8-I7CS_^_%LT3Tl6tDC|&rIh?nhM+=^fI5>c_;AG;P_09{G;fMQ5MVy@o?)5 z%65yw6jTeerXZdj2}38Lq>#J#jWgxn6a2eMbtFUB=bFKhaiMgBx`>se2V~)}V{NhV zGW&t$$6ikK^lY6y9aU>jQLBxmxRKmxz5mWpBMk+of~KRuI-pXaYS?Hqbnv+!YKxYl z`;PFQ28k4xoQ>yf*4@#ibkhI$BZ{2>r*y((CBmohd!;OWMUGIL+wGm5ozD>g80KdH zuL@Re3sjsc3>+r%y`G$w6u|;d?I9stcs2DXC@BkziVhZ5n70|I@r;a(5kG-Ib6EQ@ zF00Z~Qov$Ri&UZ%k+)1f98DXOK7biwwtxZ}c-^3YU^fme471y}Z(DDGo=s+ayuS({ zfx!=`B-|)z+W0785L9RNGi;x&*38E z{Eha^9~rlzEKg#lDp9GSTl6{yiEHQAwB;>W`?e{jS5}24uW*xmgFbT$Mip#k=qf&* zFf@I#E&dC6NnrSYrz=U=BQR*5-ZLDvQ&kQI*1Av*T`>QgZ%s~M1+Gt->N zAvnlc#!XM#CL!OioztZ`HaOpdI|NTwd6%RNGYUMBhlHGfMO@$7S1bRVI24LZZ1|*D zYXoT`KUb}fjEnhwrHT{69)rFqBt0X8EE5!5?gw}Fer#42;VkNvM2&*9GztU~h1V98 z;(Z|rmmf*oXku{;u@IJ;0RVpvKy=2(#tuDU2G-V*u`y9%k?bBJk#PfJ0_jh>WQHp{ zdwUc~neqMO%MP_6pGqyZd^uG@|K5~@7YzvHtvtwJ$Z$e#$GOL7>YnSaojUuykIQJR z*V)%xB3%L+?$&GMg`Y$A27|vgTlbd3g7`<-z=|09I2sq29=);lzfH`rA$R(5_QD~v zBUuo`JjGR@Pry?tK(5WqVBAAhFDVPl%0<`q)yg!VBN+Sr@3)bb{g7&`qC69Y5Z`8K zb7!YQ#sJKhK5o|NpNdGK+1aA8r4CfAyN-^fV4`5qwT8E&I?d=!_P82-q707QA+hjp zyCZ)ds9d8SC#&_RzRSkMF|#?d$sE!mMA!U|&-ELDyZ;Od*^^hsr0Vx;u3+yG=QEZl zZfu)-{=i60LveToHz}|oDk_3I4FN%upwBDBIQ$VI5XA@0#-*gVUhn8nPjh($$FQ0b z=rmYNM))tb_N3`_em_tAq@XFN+xb2E7)F&76`sIBZcDT0MW@^6=WpsyWMrb;l8vdr zULB3cA)cNFhe->>KwBB0px}z|W?Mb>t+nxqiT&@!4#>;0I(79NS@5-?nYaNpqW=ag zBea>1Vtv#``$+G$di6d2oom__iz}I{_`$(BkfFQesNC+mpJ*MnbUR3*s(PcO{PE8> zl2AhYT>>6ljz%~tA(39iL-xncqx%BpP|ilT|Mz}7oiZMoo0#C^mtTFwFU5xw3-0P# z+7L#rZSW^&2xU<`!ab%Tb=bQW_ry+2|puNsNk$PL`o}6RXtN?qB_)MVh{{8fq!AuQ#1WT&M+m%38HxN}HzX zlahQ-zcXT=a6)UgP*_Ru^~2}w#PE(XG9iX@5|e>YcMfa8^vsF2U}Zp`H#sqV@*6ZN zT3rVqx&~AifZ+9VBRX+WR-^{vEc)u|N+d8OOojbquJo%c81z^?AfuPW_?4HQ{%odj zyaKRrL!<56+PXjI3n;w;vZPPNtiJD0hd^`<@3RU7(Y+zYKrr59yLxv#i!T^jUTzIY zA>tA9yZ5lsqRhpoJ?8CG@XKEaP%ztuM@9~3r%uNAuL3!^5_%}=zj=v=1o_BY_}n3G zw+(ljwE~XM!WX%Tt!Se8F%MNHoy*9w&Ni;G+f}dI1rcPl1P*F2V8i~U%43?}{kz6` zDtOZwy3^?olD(sA-C)a~E-x->pQvO$0?Xs{SuH#}W>iJ4+TZd+d*JyuA&JT};pnkkx?#5i0p;5Z!V9@Ij zSdjL=0XQdI)7N zyur-Q%BqTU>=+F*Udx=zHTf9l?m}Q=U@*{G%2lnmfyDR9{JcY_MI;RS;-qLWlg+QJ zv(m<41ON5p&p3g%7wg>z47a>a(K5^{6!f0e)tOg_HqErm4j}z36diF#uBoIiiW*=hfun9lQh5A2*gr zz{%B>7NCDXATijH@bEygh0JDhSg+KX!ZSKhP*4~l8TR*hi(G~8VT9?YnX8-Rx)?HH zJK}NL#Cal1pmOiDz~qadgvWM&%EA4|eHO6bZR;t3or%Cvq*la5-++<@yTH22)~Mbb zgsL?@`Slyp`DOREW6zw2jm^|>eE!en?9$pA1a$j@9*&^d{CdkUHx?A6B3aFL3iDA7 zX(g4y8GZG3fOu%lmF7KajmPORX88m85fU=pBl_@1+MsyFs{6OGD8+Cg(5w{-Y;}mL z%`p1~r!hd&aPXvmwL(A^m`YF+RMPU|UQ~CEjoK3sCMyutKgd4BklgXTvJ8-&A}P$W z`Mtr<`=zRbB>W4(ZY9qgax*^PF8IS-&gFM)ml$qd1zOfOkwDyOoxqO$wtBjY{2`3c3x--!%KzBK72Y(zCWo)g5o9VC zN+y%&k%d|Iw&%_*o`ENP7rK`i+dad!l>QOCx1%{RTveCa@ff)>1NG9q*+F}`dNw^l zm+Dr{)9JcUI?smolhI62fm5}VZo%5Lg44JyaH-y$X)K;ZBo83O-ALnh>SDl^76coF z@4TGf19`mT?^j&#NneZYLt?yF;s(V$Eccl?@gDAKzFA4PGl z=vZ}k$U@aQT?04wQa_kK1!=0W`yMdx5i@QN`yKpb=$t%_@6Uv7+~F%MdRpW8umF|! zus1(Jr?Vx;B8Kg4-~4>U3lw!Y^xmB5&CQ%@N~*wrC#XZY#ifBg!xK%l?XVV*(<;K{ zuF^^fKS_{7YnqgcW~%#Tb#b}qLH6k@on43Y#1Iy((8)p zX(e+-GRd%ln1}BXGB1`=C5#a(b;#0>)$o0sO#ID`8>7jy)r3oT&-3Fq8`0(7^Acpa zB{G`E_DW^4bJv8^#jZkMqQvGv$0|CceZIL|wrObL4p9}!b99*m$p?q$<}Sm8mH;ZC z1^s{;+HfZq`3rFPX}i z67fUhr9nOi;XFr6r1h2LT!t6%}A^7?Z_uD3_REtO-#W zuC=fLN+>j1Gbwb|`aVyC0g$&!Ay6C^P4=6;|C!3^xo7A5WR?Uxt{fWFx%A~9h}t0e zc#l)w?GM4^7tS`R{NOzbKxKGACBwa{syq;VN*(j;TOnR}uurLlE+P$m_UsWW;Wd>-wlS9oWiQ zQAbuC8k(Kl>JLvs2*mU5ku<+u>Lq}2s31f?GKC>v^f6^dWLMmVcniP#q(c%TfE(-1 z2|v9|SjSd-YV)+Ms6F$Op5*_QD{bl#q+|H=^z&ura`?Cu*vqE zKf*h~1p;hr&J!8>KrJ0$-DepOBk6ZMVk=XUKmdWw_Z~lg>W-a*1J|7ar627kqsm2m zfHt4`q&S%b3Ojs|?ZD8+_vbsyMk_U2Tia>S6cAZ3b)1UIN9-2Y(`f$7Vz`;`DiSWUYu{>MHTPJIYH-TS`mA zaVNs0Q}?Vl&O7!Wxi4y%FS+eB>) zC*KTw&w0N^q%YbHn49eNfExruH*#Wyo}oHnkO&_gl2svxy#(O}II>XB98dm;6vcqH zDwPiM6O*d;MgW68@ZaRTZ*gwz@fVE4e_WI4V-ueKgBnHGq5msQm$;X3?5D`h7tr2$ z=H>*U!z26}9OG?o!>llLalgmqCpz$BraDru+&DUPf1Idkbj~_aR)H%GRsY^FeoL|2 zfL^QKqmdI~(#-Grs`08DS`Bv~vmE~&j!8Y&ynI>S!YEI@81{{fihXYggqRAX(p$d; zmFGbgg7q#Oze`dP#Bd1tZk}wq7-n)*jd9;>MdRj0rd&wmBb*fUtP2-FBVmNV>1t{? zVLkS+;<$>6SsCdL)fZchPYKd#;DUu}()S7;+d&{8Q|(IJ7@s8l*-_H+}QYHzI3N=kr26p1YuEV`Pr zh#us{$y)1e_iLRzy;p9nem4jVB8QcGORHL6h$M!|a_j8_Fx0l22D?U1=B=yryFvYb z>bBPL50LTj;Ld+0>D}^4V-)s+2}%aK`qzBDmG6HRDLd*02E;#4g@sAa#Q@6qkYzo& zBDcdJJ|8WU!SLIG(8!{4DL~`%unDmU^#J-tTT}1fJS(op{|t@_OcZJkku;WcYU)W8 z6zScCfEQ9bC;_)3&IU#x<_l~x)7`ts4gpNy0WBE9Mdc%VnC8-ElRmv*xW zN1$tpasY=1s=c>ujvoZ#LUG_;)Bz8ardmM()D8OL0Y-YpP=JbC0bS{Q=->4#f% z*ndMv;CY=ElUNhaaHWqSI=0Xq4whigff^y&5rzhohrpH(vhwMvJ$oIGC7OiN1xV3K z$jkjej9_fVVEw^EsZoOHoNfcWpGiW=dETiYkQ&uKQ;~fl|7vRYhn0?vxbqZq9Pzqm z2oAi~bX?tr-Zu_pxi8KpDV=3SUJc; zFw|p##5_0zz*c)iCMG5}HmZI5#(qK3ojsmf-7{qJD_Z~>Kd~2Fy2en{;X~07D1t^x zBrN_I@O^L9@Ntp_lJeybsJ|0X@eQNZOSiI&O&qROkHk+h=3R*7&~KR3LIZT~JCR+*$XE=z*@O)E@|!-0-dQO0;h@tDpMqe}HP?RLc6J2Dr6|Qo z%rrQ1lseZxLHL?3S-bCAq_z;Aip54kBKh@kS#$lMKMO$B_%YpK;1KF{2Sn}|&!voT z#KFl%_U7r2%*oz2|J$|5@wvu8UlFz0aWppFeQ^yMP9D02sQ~mUBeWoPFed zhmOc;#SCgSD#?%`Z)hkc?Y2)-ThUI*&*#e@pP~?xWh&J(%jG7LWRgWmgSt+LjNyH~ z6V<<$rCe^xcJ&s;dXsW_yI6~rGZvXjeF@=gZsdCTg#>LGd&!2XV7Dnu>sPAwS>;q& z`OC=fk%dOQewx^w^eTTcmA)A?HB#9*D|O~y699I0oldW(T1R7zPMzx)>asM~y{}ha0i9HXo|1nLw_H>@g$^5VtO)#zcOfL6%k)3lcP0kw^ zXB_26uq{blukZscNr?g+db%H6fI=4nj)jPJT<2Us-I#hYtqt#VuH>qAx+>qI@(iVI zb@zS`#}B$YRs4nDo1wF-{oC0-QX=Pfu@O-jbBBdMr}7HP0{&4SqBU zujW=cA6p^gVCvWqBXtWoJk4HG=Dojt1@W28h3m>xgdCO~f5BCACH`l}NBh-b0}*rl zVfe7%EN-HDA7<#51{w2y36kQ*IB9fl=a0%AH>5@T-Pq=&$C)X+{d=X;MV5IcWLqLj zAj**JklYZrX~nh6=Tk8IB~TBS@#lx&(D}P@2_9Ws%Esr6wh)olNW}x#jP1^l-hmI& z{R>461&s@mqeYGK+eIOJtgk;_EFCXG9rC%}u8e_KUW|)6y3|9R`rHqGhcRJ%{rYZw za6)O@zB~)U>Np;d$V##`P_)^PgpB;+B{)*7TpAu8E=Oq)twEbC?gL=GluIq(dh#h# z$3>`eredR`8JL)?Y5!Aj8CfXKu;qnz<+M30@q;*{mer3(BxYQH7_$B}`GZhLyUeaE zpG&cpGI2C2CdLZsY?mLy7L-SnTCsfI%nUmrJggFPa~3oPELhag%S+eP1MHyx?b@9{ zUK&I6#GRi=F4}^fHo0Ls4HOz)N&;zBsU{p!jpSQSK3tHczfanaAG+EJv5Ndx!q1V_ zvD+qnNd3u+Mfy{s5TsYY;MOL?a zE9EfM!WWWPs94iI3j6f(WqA8wZM!%`GW(c_7o)S;_uRGdbrew0lvuU1;j%q)#!R)H zY+XFXd{U$?xGC7;biqbm7ykK{J+ozAmvE{0$Tj{5UZ#|*en+}1EAyWOr=7KMCY zx627ds!^n=$gnqjw;xBFyXiJ-q?{uij(JJNXV;V7CpMls#R31D*B^Xryg%EG)9+?w zSZhfrVW@M9^-efot}4UG!g3$L!19H1Q~Od&$in>e;Lv8p;pj#|SX8)l8eNRPm^Y8Q zNPb(qQ{qh-G;MeZ_I0$g0W@hH=^yKyQbZFtfnE0lEZ=>9%qUcDV8$=7#rOz?T4H6mS6VXGYlVSDX!Hsfk5a=hu^zlmyIx zRMk42&JE2^T{L5e=H#>ZWs4Iz$XV^8q!6{zQ!(Fk=%0{n)3dXSK)2f(AhBuEbPeq6 zCfV2DJriUK3CK@Jz~=}Yq{!m^L@|7S{g(T>sBQ&$FpH=5us0aaMG8j`2@9nrC3&C(iE7-ul4oLVI2l__^cn_eGrT-uZ5BjbtK>+)1^5us-oG`i-!b(`z57F-a_kF zExLw&(;f#w+y6(_S3t$FZ0!bjf(IGgU4sO7cY?bGf@^Sh0>RzgEx5ZA+}$O(JFk;- z?)~ptuR~@Hit$PfcwPSLOGR=In-c}73ghmS`S?esB@@%G4K94$ zWuTct27Psb=82K{<>57tb9gpOLqjfFH!3+IlQ-{?nzv^PqsNQy_9BB|Jwe01sLWsb z;n$ym6&I(t*JLz!9P7etj2W@U{PEJk= z5LMlNC+k5(M4Xa@2Hx4j^!>fCEMb3VJFmK;E3r8g7YQl^ISQBi=3e^VNEQ5|C+B7B zNrjo!``Y>&v3^RO`aUMa%Q^-t!GKvvPWPq<1ovu}Gzn6x*jrQ)thOvT?%fvpQr!#dej-O<)r?8| zN^0|oC?@osd3MpetOO`f4>zX~`Qi1aLUybELv6ZauuNjbKr5||#TLR1s$tg1?Xy#Q zNd`fIJj9QXunS;N!b>!e)yNW*!;U_jnvn5gB9`==p;jjjqcio;;hYJouej+` zk?%?ZaRPH_d}yFmW>6*AFi^k+scm(K6`cHdXCp)9%dL(&Hn*l`-pu{Fp*q$f@3ZNSfj2Z6|N42Yg|@o_Ogbc@p7u= zd#SNX0&Ul=Ug}vevOH<7v=fdkJveoO-_|+3tltyllrvSf{+#FCcTPU8qg3$=#tf2< zf%lM{ViAop%#i=Lh(I$Cv0=s&W*%2VX%|NX2X$=hIVmyiSecoD!q zxJEcT>uBLx54`pqShiz=Bneoh9U-C5y$3E3d{WlM|@pi?cmjj;=wQS|qJeN$=qbA7P3Nd?q6$Ze#?p?CUBRCXSc_H=qT zUmXdA-0U&15YyPQi;N8wf1Gmt;se#>49}fpmLUJbr9#;b(Ki^|x$9f2{pI5JfH1zk$Wg5Nqm922Eil(i zAa6n%vfW9GU6tAA$|1$4Z2v?KhOA-UHyL2$!Xo^vhI~TETJzh#8Pdxp$XI@LU)&H{ z{0DB%)`rJ@#j2BAg|S+AWMLlrpY!?Hc|Ap(Q+(wK)&GqhoUf$jJWl-uyimAHALcuY ziK*$X<4MBqxMKQWe&s}%uzG??COUjzPD9RN+Q5eng-<8Jflv=eY1XUHO^Lc58yy3m zmw&JEYFY1#gMCF$g~%e%_1^ATNNm%p5A(m;Y~d>cl*UTGy1Tlz#Yt59{TZt7up_U7 zn3gOqFtFq&>Edfr=Be0aOepdkNxwt#HpqR@{HH^Xb!S%GsGdpqkYXcBxorc>e7*wu zeI;rLZ%o3XLv6KRUVM#C{V`rH+nw%5D$%A!vcOLiS{76J`W{m~Vunai;js6%dW0uE9^UIfWxHnzwiAEqBjTYwO0`5o}cT z-EW=seQ&?NT)r$*@$0m#KkdVxw#Gvz06B~5uCGWV6MR)!TUFP_X03Vc!_Qb_34JP3 zt+AndwH}>7VEnzPjPfTyogq3rqO3W0!(Uc6TqN)w_fr}=ifkmV`joFD<4Z*MubhTP zm2~`Y9(lI)+1|9P!oPFWhn*+$Wt!j=G#G8T80FgU&lD>^{sQoTB}NC+lzMf4=n)|g z=z!|>!{fYjK)yGx6LCL*)|}8 zk>K|H`RlIEA%2I7;?9`nOC^1cm6@4BMFa!xOqftxsiTMPy0l7M`bYQQzu(is5ShQ( zfCD5?F>+wk(PiX(yH-6L%&p1U2NV(Q#{uK)3Dn*WtsSs5Fr-eiDqWx|sM zBua<(-m)!}iH&z*@=xgAxjBw6)?P$+`}vZihu?k}k1kyr4riX%!C|d&9bwq*OP}ul zJX(2+(OPBoR4x9cACW=pA&gJLP;hPHr7jre`V5~Snd940ij!7bg4DxtsFLYLhl$Bg zN-3Wni|Fw*FRRgwZqeT=VgF`L);8iChLB}vCJY(3NMhsVdY%SHT^`XhtzvCgyVjm& z<8{r;Drj)^RuOsbf!n6-y1v zL&KBfk7OM};*WpF*kJ_h{t4-5H z(#X1eZP}vZDaJ_@W%%aY?`iBDANJ>j?}AXil`kPc*$U0&+6K$jhe%_h zKK?t=s04B^*MFIx0t}h*nHu>ZW8d$d?yqZ?Q1(Ms64KE7o>&Z;r94v+D8`?XXY8_9 zqahZ~Lu!B9W`xv+C|JQwk%+=mQ1o1^)en%Lk`jkv9f@3`Usm+3h;I>nj*O(vfEOcF z%@7{xB61D-MH654BZC+7Z$J>qHO&lAaH^My$Mg%e+(;ki2dnZy5;h`~KZ0~Ko;EWc z4-9rEZM<2{4~OU5i)<9qVg6jtgoYr)=^6ttL z1?H@Bbs>|75;fybTxH0CgQ&*McNVv&Ws4uYSb7kkBb%%jICRPruY*QhcL!M%ubUPM z=Sr!JY?5;2*?n*43GBs;cM3p=Z;-RlJAKjfRe?X99Zv00G<3yT(3xN8ubU)@+w^|Q z^K1Y3fK13~-YxNxz;%UgU*t09K%J~kraTzh+F+FpvbsuGRbtx2rJ@^5^qa)IL2Akm zq=EW-$W`J#^AcVJ#+BHd-M$+D7?Uj2MQI*eNj zS*tb@!cTaFzK%Fdbsx(7AVZJKd@wiFx9seJMR1qrp?aY+?M2j3LdmYmTP^4c_Rg!L zBQI|UP_PC(8?3Df;(7jr?FEsnbn`fuh;*t=00w!*n3NzxZ}sRDd5T)FVA?KXPjaBi zyNnNts{nDE9(Ci0Dn?N4h~>0JGm&(Suadu?fkQj(UP`p+wI|)F7tCD1NB>9E0Oip>woe&}rspo_xpZ@9?{Qn8FP7 zPp)>HLyA1sNud2+wZgb>KI4h2xdR~?ypEG5p0n3&)8Y`I$9#>%f8lYnV#$7KvvGOWYKnq1} zE`b{#DXque4&oaM0kPFEX!ejTKGlUR588Jky{MRFPzpVRCEX8dfk ziD-_LXoqrnxR1mclB6P8y944s3Q7XTV;C>vu4#uznI@8Ih|_GjpKP%&dO3u$v!Z(Y zeO^8H#?nbL(=)wFERU1AGgt58%yD&^jZ^rP3;vm4@;5@TU(CBy;A{g1!o{@NFOPhe z*VYPo+-mKmWHPp!cJJhhjx zp9t0PSt^+t=T36e&kn!&7{uTtUxf1zRRUl-CO67>mN}qTkNt2jbAld%OlI9 z{wCX~T62)+<@&5*69S-6k@j!^z4ghS$NPuoB^P__tW5z5X%iFtX-s{tHPWigxiPJ5 zJL{s-5^7p%b{+P4l_h64$ZOG`Ryw~ow`VC;lD1PdESsn1ipaY4L&Cp5e>X9~#QcDO z@MCt)w6Qtz{5tLE2$%QkOz6)qg>$p3QMV3hU(Ywv`S_}t)~KlNznPo!jL@vE4m7v? zI9vBl*FMdNsgXM8KBD=K!wP*Av9zSQ6FQpmQMz1perAS=*B{vJH!(4ZkBc)lHfHkv z7u^Qgi!@>2QNMj~ng0_tm{`P%GXctS-4!tdi?b?Mgv>uTvEyEQWt|`?q?EhybP1`& zHuI!$n1yHizIqcS{5hEd1k=GyE3zr%aK4{fCeU@>&A(;q)Vh3YgBe1sf9#76zeW&w zH&k%Qs;RoIVVbC&FQQS_uKDtcmiymuPH+1 zv2*lDH(bU06&bwXxp?Mn>y6x)U+Inf0pxq5eF#(V<@V^Wh7E|W6&A>Atmx=Wp| zH#Rn6U}5Pt*+XG2NT&07rW`{4yDaIa1;K~HA+WWvm4nYgp}llIJ(O2dQ$i?D_QEf! zC?MkZ-Vyp9G3cnVchip78gv3;ol-dre?|!`OZxs?U#xl^m*{-y|bmSH6vZP}RyEqOW z;JB;>Egi)iTVOtDe3IAu_J)!ywN1zzX7W(09Bg^3tsF{?5C7i0T4`H1O1I4UDj)*p z(?nk_RJVR(rU~ZxnuLUljAmtVlh_D*ji5E685)(nU|2cBa9H(suL$-whU1UOEVdw@EJ)fm(%N=ipZ$H-V& zC&#n;`to$vxQ*;_)_%Vg4nyGLb6ECIYbg{-!AP=w(*2#KY5`b7Cn5VCGccqMWustH+D=5+*pKo?@-G8Eu7l7Upw^!8GqCD| zW6v^KvaD z{mCAfPXYvZ#(&DueX@C}1&t43N{wzp{oEeOG#v*qKSi2V8~oByw9s4A`)plO^`U2SL7yCQz=QOw?R(U>oxC)oC2+80s2Q{* z3{3o=%RWpP=?tUO4#Ra8sR8hN3qB~$GqZ~iCn_q>rtBZ6FxITCa~&Kyu)@ANWp?@V z3t!GOIaEJ91n0fr$^sPlH{Tv{so`l+(E(AgfsHQilG17KN9rlVVpB_4cuh=DD+T43 zN?QqT-*xDIKq=cGpp2NDoScmfBLf78UDjE>K3|O^K|`nlOw_pw9d5vY5cXq++Yz-H zV^y<3541{#`zcolStNnzy9ha+bHMkx3DCZkp@>ySy+LnOu(T|zP0GmNvsr5e0CZX( zxBK}X4{`yYIrZ5;nu-qlau%5L!tVv0z@UO^lQJ{kON!gsRjUi;{Bfck9v=4d^J9`q z{XnOF4m6~Boo2OPE9Ri!T)9>-+%)OGEM;w-RaVx@bvJ&&14p-l)PFJj!05(;PSUSZ zd$V982Mt`b(h*Z%MJ@-2-%Pwho8eRqJ8D@|^N9N7uhLp7xY(#K+VIqwS~$xUE9EPd z)=A~3Bn~arm`{w5*ozh`mCk4eDm5J~j+cF+kViZlmC9Kft{Evr*22XrJ2GiX-aCSq z*}=tku(%Ht-*$@IHBrT^qyHF$;>mJc!tAq{Mr(z>hy0kDiue0BLOJr#uQhWPD zs=|E%0M*hef~5c{a50r{Z*A3l87COzB$^bkm9(-dcbpvbQF_50MUdaKfs!RHXT{U!9-WPy6_QtR5 zHJ_#J)o<&4it`o3XKC)6fgjpmZnZWMc~SlWF9_u;H56wOx#;#gO8?ni{`+(AV`B@_ zKdwWLW)jVy%b>R8{lPv2zVM&g&R~c`OuzS>i1rCdBvZgEd+tExD^j-$XQa4ys$66` z3|KVU7exz)D_Uod2f~?rwc{{X5;u9hCe2_;C&~8O3=iXP-FMt$ALCVDSOS+wtN7Ug zkD+m^mtUw=!)DBU=0%l^STs?}jm<(RJ?j|GJE2xn!lR}$P-*&;U_T;K320DkF*NYO zt3{=Ty+5l`P{(^gz<5#ZWn3TrL}RA<_;DT$jllO(_}IpbYUI~iAS+&k^l_k@jB@e! zs&~{3d|kD8u=rVu_YeD-*>WgQpanTtUI0RBq6sF4S2f_13tfu~@b7K=s#q!jDSMn6 z6Zf;KPNKiHB(+yEi2q3}$0e~aGI9KR%uN)|F6r)MI-TUno@I4oh z1s6xrc6+$ob*TmXd)at+((GVQVW!X_YdT>eBS|??a8U=PP|o~DHYXvMV+dgX!AeXb z(=!TYG_U@*>0oQtQ69p3lr7(ael0#y9MrZyWk??0m6}ukdm|@ZQMGRw#iy zgub05T=xS7vr=OW#}+b5CO#usqu6dt=|~sva@dj)loXT|abDHLvx=L`1(h2G|NMbE zuBWW4ofiMA7FDSDc=ocbd|+bhg2{3?t~Dv?Co^-QVn-9?=itNx&pZWve;3hgFvJLmyBV7f8U+yuDL05=Ix1*nXc zFl>Qe>;>kg{CL21m^jA-7&SQzkZvL31g?;$_zEh(5i*w4^8&uEJxG^#_YMY35GWy?NsuhaiiLOE zKlp{H{ou&x-~;^*CI2ll{|mnXp2*D!Vt^+(q2Y9(cj{XxgSpweguzO0Qe&T+iirhF z%%jD!5U=_K2{Wyk?Gx;9=~5&X=9xkC`iUYU?%=7Hw zzw8Tk&n&u9k@{|zq1z6Rj29O0MVu@FsrlQTojFdx~`d%rzQ zeOlpLSrOx4i`&~dJ`K6Ho(F7;H0ZE)vL$}|Ep+=1^}-N(DCp^}FC76AA9+y4)i8z% zB6kQ$9s&^2QBm)PLOweHJH3X6Bx{()I8&{d-xC@2>fM`k+uXYBxA)EzE0v0I@$jIu zP@{*3rSgjO!DHVSIO%UNdp*0z{IR-iflozA<02x`@ALtak^dLj|KG|0c;csQX#&bY z5dY!`i<*x(#>>Sc8bIkkft6CW!w^cXaiV4u(%I?1e;+5kIF<8LcXh_NOZRxxI-iaa z548dO)4Oba^PTZz+r2c*4Edsyf2@WDa3*%hDOhHYe)iAVQ@id7i+-)t2pnUi#r zWZvRTQ`G5Zv82aj86(gxP>gepjV;BF;8lOt@R^X!%zt2EH#W8Qb?lkHTSFy%9jm!~ zeil}%Z0}kqTr^(VI^pfn50RE%hy9J5eRS60V-nBB<$iQjlkAL+hlc<1|U3Z5RJ2lPDP3W0s>&Y@D!vMKKlZarPpWcdSw8f z6paD|tU`z{z>82C;#1T3RSD0;ZDbJ7_(&N6Jg_O3#Li9uK|XLN*y&G=!h#5fcZ&u% zezC%xla+cMz_?-Ih5Ap*|Gxy%Es0^ZFrs94MAqQK!dKV6_I=}Bmx9l}NkJJ&LDN7$ zVF)^!?LttYe$|s3XTmmThDrJ-rV$v*+7ct>dRWd+H@`~g84YZoK$R0_s6ktV%;5aV z3>ki$K6bDf3n=WMSie%qo4Q#b(gDY45+v%XK?mqRxz0wDC8wY><`Jx7gyETnjoq@N z(qAz7V#)_ET2*;^;X{OCVlo^Z@N!iifsj*@@%X_{!v_Wql$0=7)OqsqQ0(sFn>7`M z{}|`xgnUFRAPor*N6(RoLNu&{WDZa&4uBf~SfNRgS=rfwgOaFFAVEPvY|4htT5z%t zThBlh9Kz^Z2I=>HG;k}5SeOE^oT_Y^q0a@F!2ll)#g=Fv>K9>%hG6vm17I0)==iC( zT|eF&zZHdezO|%e*cu{@he@cj>l*w2;`pD)O0*F7vGW8TvZaN|^V(l)8%b|KjMz)X zOXW_|#+RHDWK7Y0cB+M5@99w%aSflPH3S=Q+Te3GOt%#)HB@#`rfl#Nlp9{GTx)xf z&!KF($3|~|>$XFQ4wuiGYg2QGC8ylwxe6xAT0n_W*s*79$-sgSwJ%&}pfdS7b7_qtQ)G~ApHw|C)(r9NS{`UGiqCXfCEVytVBYrr9 zDq(7hRi@?Q;sS>QFcs;?I=*$x@)0hnKq;q#)Qe#3ct%5qQG!$Kyto`;C(O|XQFQMM%_A!nGP|k35b!`+eFxc!3MQ>|ujq<7i>Y!sw z@mKOj=7C?l-AYbQ;|j9>S!?+}<~WKf7Bo8nD9H&rO>@H~GI2;fA@DmG>43p6!*ch) zLWxP+Ubaia<3GZJZEhF zJ?(*m;|*o~Rrsg!IG4+~*XAU)#c()nxI;2Oq@r3PgfPNAbnz^hGZcvCvq1PvCmBXB zR{+L$UUjTwvNj^TlJc<{ozJCDh@eKCH5yk}7*CH=cqGrZvg7@*FvtSTnx7r8$hzC7 zUa4Z}+R6@NX4(NcL)X-!LP^f7-%hn7w<~npngI@a%VnfI--9ube1lKD96WNo03swntoK*XNrt)Wy8$#j*FE@Tw0Rjn2mu}BV498PuGl1@(s1V2h6z)2>{ ze8{7t%x$hkv6=cQU*yjo5e{?wsS0W2>h<0TEg}LF3ToZR&kU{Q>v!F@Q%gm-V=O?1 z1tulsh%E)>%YN7GYb}5J{>?-n#)r%*u2dG5OXUTdBpEG6?WDxSyL6d79+z|HjQKii z)o9=4ZP)TH+f1?P_ow(bH-Sw}daU?hD<7Fi40iNx7n+@DA>j>2rBW4&RqFeI`xt>v zKvK~0<$l`@4ihkRE&m-FpanGr z&&G5Bet+3Sh~)flQN6XKEm<2K21}^e_l*%E!fP#eQ&>=)i72k>p8SuuFTpKOjl;un z(uo;?fntVRMz)6&ze$CK*KMQ7xtGKlr+BcLyQ}?FJKiQBhI(MEC1_TQ!*-y?XYAfYC1}P8{jm z+8K&fE7!aM+@OTD!7m0LuJ%#Cch`1HGqynn4s7*>1A0%Z+DSh>*ly^Q>SvgiMVyIZ-pWVY<5IVY!Xz&ZoBOwB&b{Y8rWC9}R;HeKUqzUSw6nq(MSC_hPFw!Rp9%&b@n zX2G#2sH;+|7!)!a4>BYf19bt#G<#{Oi<=xgyrxn03_uD@J1Ufyz>Cw?6U@i(QUH=Apa<6t- zk2J&>0v288m@p~YYB!LIJv}|SB7cTigocIr?esE(Lg2*7=YfxC+fJO#GkT!dk%Ol;lw>Z-3dm`=50if(0$DquVVV;8Ml`0Vy{ zjmKiRWKc_Lu}YHT>+-sO+*~^ERxg5heNp0H&#IT+|>;l8uGyD)85>@ z-fabcUIZ(mIPamM1X4x`Sh`tlg;`lnSaTnZra$sQTBL@f=1S0~w{)n*C?p+fM+m!A zv0{?pm0=aNfM~3O`eNJ<2qa3A{pL#b3sN6*z8dBn6L*oxejko>E?MtE?RfH9d7`)@ zSlNF%Zv`lc07`kVELG_q1_JIiDhefUpBMqmA-ERY3VLT-SxHGj#DCGj8iXUMrKe`! zgnD@BonJWaH$;rZ*w^a_Xd9HO#3UzIo+QvQtUS%X~@EPHQwP2=^^X=Z$R8&6UuHxR_5%C@>j>hJ ze%(-83kd~vl8~`@aC!>el>>;}R94EjBY2QjiS6z0)6&qO@YC)4yjM8$Y1-N{OqPLO zuL5<5nV67^Dt`X_IX5@AEEX30pJPC6Z2JlM_+Y`jzI*@5ZfWjfK&>vlexUV;3xbx+ zRIV(3XU90D0F~Go=FjgT@o$W#5~EQ`#LU8FDE}Nxm4d$VEgjz%@j~JJ5+m=`+|zbz z(p~+sV}6M6H^isDubp(*3M*6>OuyWsHuaGJOHLpp@8Eb*u-3q|8gM@)04Q?x*#z(op_^hI0Jjc~J*PT-J z4cS*fK|w*^s}*oOkV!#-5jFY%92WV$rk(HV z+I%3Evd+DRPoRVeyVk%!&$da3fDuebVP0Ls_4@vzZg&^8Wl<ckgOUP7jf@C=binAt00CJH zbY|R$U^aawY$+)zO)afHL*`zl35bv30JIlaJVspnwX(DX&YjoMK`3lMku*|Scp zJ4+oewLH|*(?jGD7a#9CYtZ7~w-!HU+Cvi7O$22a32EjI+({e#fM*FlS;LGW2>CK& zaB+3zubANABg?|fJh`&+-Fr0!-~Sw%6GY_gGu8EJlIWkq)?=2Z;H)z;GF_8aQc@BL z2}%EerAo+fuU6d`HdD7!oCS@W0^gsWDHO+W*QFOR6bFqJ=p>l?|9OA4#R7TPU_x_~ zbE2Rt_dI69XKaQ?mSt19zw9)(c0UU+R>o$L_I_m5j?BEQW9=7cQ{OoNQuEG}bqi_o zM(a zea$)rH9}6)Q79m9M@15Y*=U$FgOeWIAi(#T6vq)@yGS#1INnvrdwVzHyZ1z^U2F)J zsSHCr2vdY7O7TwG8r!^UwAafV=?NYpa$P|3ttO5oKaRBKY=Sbt=$k!cLqPauI}8F8 z(-?e;1BPE&0k;jNvHAJ=?lo9gSb_JqJ5P)=U+apJg{IlCF@>^Gkcw1&+N$@r-^D;O zjOLrnoMs~Z6eI4a7^yHLV1^zFsOpp}TSG<=+l zxfhq0@mf@qdeWw*l+sdMi6=aLgU=U#alqODQ(F!O!f@qAxX&}#%X{rxz1v^+b)l@t z+cvH4sl&CO;jHWBZVDr_rL^k7Ud-_@QH{Z0RRl%!pCCTzYtdq4!zxf=z}&~Om?Zhrl*sbpNWzwknHz4GqLQyYZ@S)n+nI9RtzC=R7v^mLX6~|Pksv{LiU#;G~DqC)@wvwVN4-d z;sD5JG;NpnL=z1Ynx*e?`L-q&s@fLXHlfvQc>^}7PfwA~ep+svqi1Xx7g@3(PRH@T zdgP02?1VDDf?jq98(?}LeVwYpN18I*X`A@Ye-BQ7!P+6h{k1^+d5|CU!fWU5(kGQX zx%Bvhzx>Vky;!N5nz94yw+h|oCq<8lx7&h#2)!J2ZI{+G$*{ZkHDtAOR8@CDyGDuO zmh9Xd9KrA5bOXh}Kz++e>FM;=u~8$tVafPj0wCyS_^>wctE;QCqn{l$EU9wqgZr%A zga^%4WgStLIZlGDgtwn!4iJ7-eyu|1O&#SCM6J$V@UnKztgkOQ2EhGEO0ghV` z&7byx!xHixb_kjlXoD>c^jlD`Rh_tr%rj7X!HvLQ7Mg3@3f|77ufM(vOJY_jMzBxRine;v$NK#rh{g`e(fBK%9OudeSUl$ z#H{uuQ!c&^|4=t+hV`47(5yT-C}?6g!U;+hfzMs!@$u2HTAd_pG@SaX8CKgUuq{PKx zrj#b4d_7sJ82W0kG z#_AK4rAa3MWXjxJnUKr#E{@y;Cel^6P=f8NMuE3fmOXq{osQC_%>FM= zWqO{-#KiHB`5G1KzkzbU-f|HD5ARb-N(nFJaz;+)OMfV@E8b=Syq5uW)e#p!Q4m-V zI0Y0YFLy`$iJ~~8&z_W$dz^G)2V!%9P2ebB_`f*1KXAZz-Can+BWe^9_9U>+w|W&U zZ7gLjCh_oa;7t$j8MPmFw#);opB?)GToKeBd>IEEid^BrB5nD$uYUJ0)Z<4qx5qgY z@$qj}083yiR}0<6G{Wqyuk|x)obDC<5pEUxTyi25Im41Z-q#0bIg_XDddfPUJ3B*a zzmNEooAg(kodEOL)jEsB;aWgoQ{$&;8(=;S=!TunS7u`D9|KV9UQV(G;L1Yz$!BL~ zipUP3X>?S?0M#Kt9~CGvxfZW@iW`V2rMo0uqXCab8*8_}IJ&>rcC9p7tP}Jd_vz;n z!iSo3%9R8YcU@hteelJg_4K*N_ZCu#Z(dg?4e>>JC)^`C9F@{#3XyuIW6FrZd(`Hd zT9N1%t#W%alo`+4{qx`WpTcpzt?*?<1af#?pNCgkJqDj}W~A=#I@#+0e1TzE0hIe- zWZqo+D3w;T`GD0mvRTC0+1X06VyyoQw__}Gq|8Ku30FP3hzCEc44dGH+Edhi4Ze8& z=9dXgWKj}Dj_9K0_Ny!<-?^nwkzLefXJe1#kMhi*l)~rn=P0g?Vjix6DOHV!YSeEp zjvGF@{As+-&kNZ~N%{GoIaDjwn(d~olbu+8=2TFcXB92yJp6^e{|(4HfyMyeiNgU_ zA&V1E)cKLvq5vhq>BT4+zVs7LO|1{Sab=^ZWN2`UDPf2ezmwmI!&qe)I+yQG@a!7m zL>A4}G?*x>xo01DR^zODdp$yoBN5K&mDqVWZ8)`6oV?cg>b09yNA!rxSuN`V$hiR< zE5`7F@l>uj8Jot*B1-q=`mvq=Yo2#mpX(4s+zMHfi$X-`maUV7CQfi9P!mi>*gbmd ztxlQ~Odi?^$!KjC60B&P9nDW7&kRVu&UR+u#I|C>X z&r2I5OyR@$_4C7!UbA(_B%dsxE;d_dgj(mB>W2ScGrY^1c2CDOjx$+IsQ2sF2&0?9 zfMZ>Zl$cSXF*}#4z3(XC@Vh3`j_E;!wJlN@$H32!V=<#Br(d31s8e3q} z*d8c+&%OCM9A{ijH&TrcXE5^=>J}|=@6~3*0y0f?Gqlp6=pa^0_BJ)j!Rt<2cK+W} z(l7hi^5qWgQA2WeKYX{nikqW!lffpn1t&fCj|&RLO()}~eZZtyi*f&-clm@uvy}pa z7a2Xa(fBG3an7{bUm-yZIZ#)i<$qo_!6RCVc<{}rTB-T@WgA|@CIfA6f+zpxjdGOe z+yA`oAem)*ZF4lGq=AxBv+oV@Tkg?&KQm=4R0ATeB52-=|g1c%XXEL-o_P% zzDa0ucd}E%RC28cz7l%N9Vq4`q1=Qf_J6+3L`fZ4TDA3Tnx7xfEaZ?DPqY4tJb}jY zd5j_{Ow!E-u)|7kLvVk0!CGP-+y5RnhR#o)LDJoQJiEi1o;7jb>nbkGuEhV{0C{Sm zSvn9|7Scj_Ja)SkqGW?i_X6rcgKm&kJ%Nk$VL~MT+uskiZS^xN6R*t**0TM~rfTf2 zqjC%Br6W6*oLd4XDqJXP$VaZ*nw`9x>tN z6(6<h2+HDWfkgUcYHJx%fY+z{+5KOX?K!$!7(H&WykZnV}Z}!|F_c%Y~D0r z-r`vIN1aP$tW+H3#?bJss9ucY(+vFmJCk{LRw|5MWy)suVs61ogUTh=h?i3bd~$}i zKxRvoVtl0N)qvEc@JIi$>~*dj<0H?G_;xI==rsw18yRM9aL}elP}96i){#zfk`RaLO!=8a!}7;NsRX@{-EZN$h4tw*SIbc;B@W_z z_Mg$kR;L;cq}xa<3YQiOFG^T1t}^?_Q_HD?X(kg|8FjzyZLBl&%9pJCJ)HmwNS z?)62u-FTJH_r8Q>QD0&4@6jzdC05}$~yA?hUUQA=!OMo+oHpo@pZ+rn~eb zc!>>+gnk|vm%f7oF$_19U@;RuUtJl*i}o8TVp7&VzE(X(#g=!Sc87(0_!U! zY^pS}DlXV~sZ<#KA9B&e_#RPbq3b?jF)USC?#jje?tCYN$G0X&HRJ1fE;cVHAdhIB zK|*fxG^RXQHKuIqK9-ItkC-i?1$(HhZqa`OZsz5z6$Wm$0XgYy@v`kp`cM_bwF@%pyjdkIg8qFbU8fB^bRG` zv6#nC;xk(87R6gnd21^?``(+kjO}5!r0yV?s80ufQNy}~H|^^2YAJcn?#GdrQy>s-pn4;~!QgWqj-!Txf&%2Y%S%df_Sg)2VP$rJT34&yGP+<+NLaYMyd2nRR8>_K z`(|Wl$l|akLrV)-G0gQ148#)r6aO+^LP0GQs}rPJS;0EEmjme1q9T!x$Q+bfbc#nO z+8E+}IR=L_93+zeX@u&zS1Yrf#-MN9HQHLmF^! zsExs=#E8z7C5JSM)-I--{exfc*_g8MRxkF-Cf4gSo6b@TRX8lJFrw2^3nj9J5RPhR zB+zbfnK(Sg&7n@k$*uL3jiW|K=|)HCQ3a>m)l*W46OFBN(5$Zyl6E!?-tOjF)?+LB zGWm?mvvaT%6H@0I5mUnTIx>1FN!k>3wOxLT&D#^EJqmW=MPr zkg+{oggK1ZYE7FN`BDK|NDa%9g-sE=W-QnJ%p1CsHga>tBFC(zB!oy{Izs9Oo z79{GD5N5V~iN}C*v7AOlF z009m}_|Oi(gS*eHOaZ1z?^z0uD~qIyyZaenP1O^G1Z<6x2||E_uJ*=y_8VJT{?n2e zG_)3#`cndI#H8FE8Q0J~Tl%3@3VFWyJ>W_s{~19Pt1li^;GlxV2l9xumof@6))Hu> zb1ZQNQA$H`t%Z4ZMFT>R0Rj&OrxH9l7a)8iLqVxiJwHWH$E~iek*cM>B`Z#16e*%h zp<~nW)YBXhT&-yG)zmbyn*dAIMIClL;U3F>!IqJV3Wwbd>?_p-e!7n3WY{jBMFxqi zP003E>6pZ%Zb~6GQQKtY4{pu0gIV7Pc#hIgrA9kUcpeO3zd$Z`PEWP`!G8)P{=O1? zn06STP%Oo!YTa*hI2+}F83d=n*1*af%$Z&Y+P`L#KODvTmwu#GpEJ@Jzk}LvWT0_IhYI8c} zHTKEZ|Mf|xZo!9fm6hFTM{M^uB`uh4FY6lH?g z9`qZGkP0g;@p|2zh!S_3!Vi_iq3w9l$wyPd9rWAqKQ|qMBN9>4(ACvc)znl_c)TdY z^M2k#YBt(oS|3qUMul$VpTe86u|Sm8-Gv8jLG`Fza36wwl#ST?B=OSvvi76V4wYq! z?X_BD6A45b9voWsJ}c17wU_Ij|dhkUl+8bhWaBi1-LR!PUG<1U=u zl(x`Pm?~r-f~26RYVS30SCr{XgKOvpF~LK^b;JnDDhi4>`Vw>CV-rY7CwdZri!R;b zR?(U#;UWLC8{D(quD6||6(73YS zVCyuz-(J262mlIk{t6}mDSxIbU?AmxrmS`yUK|Mx5ms))PJl%S-0jW@MJNjXcS=*Y zIQFWy7%b*lS-p6^(Sk)`bGt+5|9xaAjpq75F1BX{^aGX)ruc7mk*o-W)k*$A^g_vUsmcYh zI?giIiatzEW0pf-8Bjtb2b3ZF$4}QpH_GbjK_MvJB8{cBvTi=Oy|9Uj1_Au=&qR^y zuHIw!1CNrwJFkEL_Bt9}2S{TyBeIkcsW?YF*JsxLKTfp7i$b4;2f^6R`G@ zleDPE=p}_JnED-b#o)c79OE%Rm=^YOxji-rAYjU%O!pd-PunaXA0G@54lSr3q+LG# z9-KfaQx{xqo_u|o`B{i^n8X&ES5}Uyf$~^xYz#~Osk_^3f$3{5AWJF!gFv=<0?YVf zs}G$*=Kdh}he7};7ng<%*Sk7pW@ct%qJQF^tj@KCv+74nQ;Mrz9Bq*O%%f9fmV5+m z0A?}p&qy*V`{>NST&b%Y$-#Q1%!<%^NGlufI9{T|y?j{6b{>Ci7W7rp3ENy5pR7ks zHX1oUB7$79SG$RNhh0WxDdI*m{NtdHF|3G+>Sx{7I24`*wH03R2;^kcI`+0bYNrqT z8}OhdS{i}_owNVP)jLPmwRQi)jcqixZ8f&lSdALnwi{cGZ8o;k*tV_4`0d_%pYJ=y zyHCdX=Oj7jtUcFSbI$ca(edJ9AX)6gle-A`1yk-`h;lGqTq>&tQCd-FWNohoF1fVa zZ-h22m3(or1F{e4UJrY?OiL7%$O)={O)j^`xT2p?U;01gb}WXN!d&yuXJby1lnolu3~==z!IWk zQoy&i%;TiyZ1)ALd*0<71d7wx+uL&iI3WsT{m~vkbI{(wfdm1t-2-$leQri50ZBqE zz`(8_D+&>xCzj!LxY>S}e?~9^)tLWe(j+%y1XyA|ZnHmRfAajv;;G+~&GNq2EKqm{ zQ11K>YmR&#cgS^72!2hus8SjlsqZ6!<>jXUJfsUC`~ZmO$LHq_b_)|58-AxFMYbHx zR;ObCYWMc`hMOwy=;+u7iipJ|`0)m4Kf6&=QH7Ctd3iBmVPSIrm5?~~ zABE=WO7}@`@_|K`GBAZ36Jm=S_B|kGo1Tl(Evapzd0?Gobd~3=PEDsf-%X6ZWu~Cj z`#OFX8EH#t>HyI6&nMgX`-KDJDsK5r zMUK*s+cM3GJBg*|r*q+;pwNhTIa;|(A=Qk*Av1N~3;rx~^7vs)k0G zsX5{nfc_DT)Ccl%Tn?-5Zq`ZOz!LEFT>KzF2t141QM|nmK&QMdn`Q&nuW^t&5EhL% zgnt0Gh^m@eJOlde5@0s4)e|@n2S}8@4g#X7v+IDhmoSnOBj&X~nWHwZ0m2hIERcwR7%{JMOcvd$6pVixAh#R?U1PSMU-m%LR?icVj*B_@ zvt$%Q|E=>Ch%}&%wST04ZUPl9e^mN{|xzS)g`{lA74I4ZBHPmSx z@bjY5344JDw!Zt`1{6XDw-B;4*|4xPM14^ zkbVCJ)Yw&9_Idu*VBdQ11huDpe|U?3KtcVS#(aUge?GJ4SzY=cnyXkr4-vh~V(GS~ zt?@@;)ROLNB2ERAkrwv|mjR_DG0yHdI?ZZ!v4eAYi0!XLK<_hf3P&YlDE($?+|SNL2ZlZc3&Af)UiZLD315R>Yiyo+NFApDpGP3;&a2hZan(s6O@Bz?JQ9}@LUCx$jqc!%$pBB5` z8y)tg3pgi!etEd`{lGOqN1qpL1>IH2pv?BV0YFk*hnv11_~8fz4DW!sqbM^nNsqa{ z#T-0fUyFhbz*@DN?T9Dr1|l#3(bZn=E!kL#+=YK{{25Q`x+NS2qMiP9iNXJ^E$JiFpB4HgQwxd{U%}tGF2bKg4MuTs9D=0$HhV9DyucoGZR@!rGk>x`2 zO@ikvdc2o-3xg-6ul0e*s1{OQKP{#^o5vKx(II=K2A z$y9qz5;Cp$i~%Txt#$kmsr*2brr>lqRgq<3Qcg`B9xmvm*Z6so?9G~0R(^MA{{7PM z@W9%NL}aV1y?I#U`^k4oPs3Qxu9d)G)vs zG(mlR&1MvGby^UgaNM|PcBAtjs9tW-|)Xodf~Y(JA@hy zd2g|?3fT|vxI>(?kSK&eypVIzlalwbm-ms zmPeP!Zy)C)n~yRRo9p69jL?z*L@%rZm)kQ&$(iB(n^wt0!QjbEp{24i=)9cwIg^%N zTuFz@R(EH+OX161E*d2?=fUypu(sK^8Av!u3QOf(^2T&MH-8e6qiKn0FbD+Aph*do z&>chKJo{73aHZ;u+whydUDuTPn|0v!u%J>Apx?>FBeDE< z1wLNUAXrOkfp1Nd^v(CJF?J)iy9pqEKZ_y63r>9E(=2Fu1GqZ?F(}|j1dysYjj?-r zdD+z;ipD341L&myvBZKdv!Joj*~f=Jj|`~1A|fJ?r?FT~;OlV6m@OCRoaDK^9+}FV zV!@027$`p;hXj!8yDgwGq~TA16sKIRGQLXN!-Ged(sHp%tP7)`OMa`!;J@4Zzq<8( zT|p`T)bX|b)L1w7W8!Dq4iPzdPdh0hd=8Li8d#uX2krj5wy`$IxXZZ8vuKY$J+sEQbZBKWk)I~MGP#ha#wIVH)Nb;+6r20T{^v3$840w z#uCL-Mr4@eYSZ+7GrO*|Od@|msG3zwOT+TybKs1&)@}Rpa3qKNvmNvcmkR^^Set|0 zX(g_bq^*8UdjlCM|ABP>FW{63)8%KT=RI*??}!m>Ds)jGkYLVr&K;SdAQKgE5;4W1 z!=f5wY|JI5L#y(|4tCSWpu+d`+^xGl%HD|xiTj`AdCyNPQMEJMWX8S@kD`JS1_v8c z{rdH5yR{RrQLL$95=EQ3*-cW{Gnf7rLnH@l@^XK!f>!jg4j_Cbp-fVeQc@&Zr+$D> z0zIN~0rKS3)RM|RgKl5dDH@2$p%_95TFjZGTqRP`fVm&Pn8K&NiZ23?cl-Df=$U#` z1(pT?opf{KFw+RAlVoP%p;O?nnIZpIoc?bq#ru!%9-VZlSD6BTAx`YeTxj@~~wnCA%V;R`JkH0a>qARHos%a}vK<$94xVPPco z2k`9q4WvNG*x}L9fNVG`PPM3*7;%rFoSz}tih_+~J%gxT12vkH0}Kodfb7EXN0N|` z02+4yPZhJJ$u=KzI0y!9ZGFA;{BPN{1UDPv>g?xj2uEK(+V9H9L!gJczBLLRP@dxAzqy7`3S1YD#G|sw}*S|w<4e_^gnU&4MYaAvZwYCX@_WY~CzkOZje2A2sy%<032BgFo$RaIzoa6;cS z!IHE!^G#`F2S8h~8lR#F6|{PK=2}=AF@~*k{3K*39)ZMe0bnu%sT;sMdk07WSZC{P z4-pu&Q&qt@fA?M-_=JH(dmO+~J594mx1?>RF5<_J@c-XzW_JV$?%$KO*Vp%DEK^Tm zxCd5uZJqj0p|M+vczizlSJP&oQX#uX*>D?Pd=0+ekW^NP5c=7#==GirrwjPB54W}B zv3Q3mX`f#9mcF<7W_;#ZyX>*bB8eBc8viN?Il@^VS3(r-ZX3zG6`c02!xS+X+h4_J zYOlQ+`h-w1*tc6Wx$IFXF$_MlyMw!THVXwstwh=1v$IyABbSvw*`GE@!#WcTNh_3K zvYSKp?Pmh21Z1HK4FJLqg~#66*%3wnEY?=Le0|S;YHMgHf^D(n{uZ&bt0^v~bTA%w zHGEe78jORrbs+xSe_cSv0`2Ph{A?*)W^k%Dmfrao018^-Q*SaI1mkp$!xIjq3AUX* z{iSk}GBUH`P`tdnT1;^XodD?tSYII_Aw4`jNoV{;2LQemfa*Km$UTP1n!XFd$pJ9H z%u3Kv_<&J~^E%+X?7ZkeYSue*hoiQWHZ(Le%l9{NS^B7V4XKvuH^B4dWxTMF-)H!2 z5W!=@!JP0t0R$4(nzI|EjLShXh%~}*4zDB93|tWzL#!wEUYg8~K$hK`McbH&Y*9Ui5dSN7&)DBO@*JwHrpB0J?_2UnyOoz zHeGw%?m+tVpCD9hFSRs|?s}SDeR-SZ6@!`09{-w{=OO;FrG)*98O0%cJPTZvYSO>O z%O3WZf9Qx6n>Kv@qW{I^3ruQUIJM7IX1gYQA>;WjxEX0`LH>=o`!%BcqRDRGX)#ih zJm}KvW1ZV)Lb8|PyQ<}_d^BTD+!p;zETw$oTvi_ zZY6XBPL1SolX^gs#IV+l7m?2o#>a~sHQbm5yLz#FhDntTN09+6UN!(Vx^D+YP@4SF z+l>Gg;%pRzmX_%YoTa5c2OyYzc7=5K$VJB}QVwx@%fuPl!K?3qlbrmXbkBB~F;2n% zI)h-RUhSM+Y0;QIc}SZSF>NMGhI(S5c$FnzJgrsuhBxGVKlG$rK7Z8%XgBJ5y5{Ru z@8Un~Vg3+X&Vy(LEZnH<+SYsYYqH_E{$cAF>K7W|lONJSw8u@=3 zw2}b8qeoPCeq<3EMZ9MYPjBxVaEY}gpkOLvRZ&s+hpQ+RJxPm56i&ithwMy!>9Z7* z>=+@`s!U2`SM3qo36oPiA~ZNKag(usAETW26W~-4tUq=)r`B1AOAB_w7bz@{tIXC= zc^BAAN-Uiq)V}W5(nR1yeh&v>2amZCUKG|f_>M+j7Z5;^rvx4-p$L;$(o7IoQbL}B zYtIcHWHb6DC8Sl5gXX5}0K?pfWdT;0s&)q6+ z6U%52orwaAy{?N_LrF7VgTLG@`ZIVVNAXs@>hu_0ma0l$H!1y_i`c-&WY_&|shaIy z4%jK1LYz7sp56{(@&0Gtq@l&oN7-9~Q6Fq%*xVm6LUyyiY`LRD;oI?lDY{?h9rsgw zw0(}gwOEy+B@K}OXt>HwdF`5j=D#&wIpE^5V_R6vT5B&M`yfaF;gh&evt>%SAoOju z^EFW%?J~WTf2V6Y7C9%FfCpxK&?R0F-RSzL5j!BHv*XC*yw-%TD>f$vu7L zJu6c17wBej)IUJQAMZX}mc8!Je0r*N-9ULMCL?d`(Pm^*IrEQC=o1#+TIf!uGYAeo z3q;azdo2Hf{+k(^KPP^(Hn6a;_KT~A9aDq^Z%i?z<%i%@Y;3GwcY#zwB5dIKYEv=5 zdou1`fkr}#0f=AJ1Kt=I7|>ycKNcMCj+DS5;jx$`w-Z5=LX?f{x4J>VF&XtLbY%Jv z_W+R*fbeKQ4_XVMReQw?XwA3%{4TkBjUNUWgA5Y=nSt)zyp8|}&_IDyiM?a$jni*qkcPlsrHBGL5Z)Kw)>em4X z#qXOGB{j=-OMQ|4)b-s;-I2eG({m@WM-6*KRapN%5(oZuCCQy>3t%L?#1~_%Z(Vie}MXW7JWMC(g8_Tbi47$4;i zf|P4sa6CNa`g;lQ@mpIpIhnPFtK&W^4g2O+giCHSGK!MgPWcSfuEX8Ug8~9}$*H*| zJE!rAzMf7l@bA`_GeBG9WB7Xg;<2THh;#c#T4+Ff2F{75cEZn}2$mq=KrRC*19s0- zR$hL&*%hO-&3y;(C$C2JhJbAxVD}>n4n?gt*=BGvIZDZ!xVz^u4+g_kC=hn!$vL%$ zMH=g0>V@z+fNvK@?G})5M*hCOF)UZx2EBI57E&T|wuOO4PQru3tVv@{!c3g9?hg0= zZcd8eT}(zsy1>)6J#RVt*czm;y!-sLepDK_N3F(nn#*<3=_L1J4nL#F2&vIgeWNNr zLfz=eYOs4x)2FJEo|cjG<)+l+$T6f&gC7OJm;#UQ|H$n08oEG|tc~oI-?-fod~CuW z<=zyF5wY1g) zeq}RcWP29#7jjSGv;3KW08s$UD>&5j+yr6FtL7D(HRLBBZ5jELB`8uGxe>fn@%w&? zRUah9P>+z+_dF|8knCZPG#|*9?hcVWZB8YJT($ZrTupJv*}w~W6cjotNw4uy!X_uao8L7 zd3zS>#Q+$cy21QCzzgctdVJ0&b2m3PwCYu|04o+7WHI0xFx*9!Pl{DrYjK292mda< z+35|?!d=c+0O=3^V`#`v*ib6K!6CO+B?lv;?NW^aFd>s)dEt4569xOwad2SgAu5U$ zviT9t#cXVqpiC1ICiIs}2Io9k|hW(tGONS{h$}aNvp-J~& zz6Js{WS`N5pT_$8E1`IK;$;_{{Nu&RF=0cJYU70bFSl;K^~F9Sp_zw8G9%D^O?SPi zB^SSy0QUN&X1LEYb&H`BcNwhF*p!SP#}|CzaY|BLzeJ!sqd%vo<1q6FCZlL%k>*3p z;of{h=&k!82Z1vA_LT7oWn!RM2dZd^>D_8tqYVgjJ>!t2Ua+EPpbxh{*93=9(=Ry- zI zcIFQ>Mn=XFW(YYxqB2Qg)AV1vfaV$izyOZ+k!2%i{E5hLz5wm-@a04h<{_Z;nu0}F zj$B;%LP<%v+X}Sbfnp>ede=-1R7ngt_D^Fqjl}Nj&IbCVy#QTI1S)wH5Nrt<1l5B5 zIwk;AElh=gKmh{-gSWFj=(P00>S_kI>3BMO4M!TgC1!Md5Rn}SaCS$%5#I3WAC;C? zsKIW!l!502t2ep>%CgFG%X5GzblS+G2rbnLdp+qg=K@-dlAeM74ay!qV^my#>9$Ve z;=e^saa<8|L94`s>UYM!YH&{U`&^whC2R-!C+%I4-&u-YT8)ebmvMaHpJUWVsgV!e z8!L;_j^DRm;rN$341N=53n0AMHE2tidQMK;#G8>ac45gwefFKp;&Km8sQAK$zqR47 zG`~2%a|T-|=BQoHxhKH(TX|&14;&A65h016E=C)NY}c(;9uTQ%r>K?*`}Vd?2>DCD zrbi3u6Mc6k}Kg2aJva|_x$l^rke0{IYGB;LRu!Og(XZ6rxMhZ z0}>tAZjOnFQo`wyX>j02g&a=It1gr!Ld}BPcV00GI6dmvuQ}SVnPkX$c#jbf-BUZ_FNB-NQ9jX~iI&XxffA1vbKe7U-i5XcyBj$HtRB%BLQs`8SjpcGhc zIGc&iwC{2o+7;DF8`4(SdfM_j8D6c9VchWcI7+Q_LnRcE1Vn(E8?}C1lcCH$T?8g? zH|Q^Ac08@b6p@@Q%>+L!Z&gGkK`U|x=s*5;WkeFt;KQ}`m#!`wXZ2~sBNr676x%N& z#;j@UKc6n&Lk~d?+PbpmH~{?`Cr#k zm6VYN9J?KI?#Is5m3E*L4r0#BkEwf{vsW_OvToe4j5ndvUi%QI6tX2KyG;&7Hc_ZwXd*Oayf@?tg^F(qh-M-R?cwuCqp`oU}Nl82sG6)^&V*;fg{xMV@5g`Yn>ngRk zv&kC_g7{l@(F}l8sH&-obd%)ZhG$*JFpQ0DJnj|vtG>o!uM|akx^2+Ps8g2(ki|`= z`0)^Og_FOB{k_yW1lCdMIy;8?6|Z)lu=}PH>e`o}E`)FN4>Hdpmo+uw9MfKxa+pb9 z4Al?UV3KP|Uq~$cx=_{02mRk-@RMw~WA{(KVD5dI`i>Tw!D79fM@}deB|&ZtEcbvFl_`G-Qwn^iYmdYhdKB}~%wgXm6(4LmWS44|h+tW>Yn6eG!s~7Ju{B`!T z{w;dK=mGTtC}TQB{82#tg>$y|df}nbvA2yVHDW)PAwartl*e3w{y8j=Z{EYt-zn;~ zo7jJ`|4RJ#HVPwdoi9>u=Q$USz=)EBARc=x`k9xA>$h0WL(SG^OImPmX-KNTdlHfU zD#L|4j2hS`VZ`@8y;hLNF~)XmHwgN0`xDdLxYrW5(QQrEmnGopHeVm7M zg{z)i^#?-Uh!rS;Y6Vr&)>iy6<7RZRc~yEpqoY;==pazMEyUi*y5&!Ha;XiEXUnXu z7egH|FyT^vaB}E`c{7T^@s@Z83hLY=AmRnYgP;XeRFx9*@_I2Yed0Q9ZWEK`W;|Ux z*&m5}BTh$Blk&c4KBLgQK`MxnYdH5EUSk#NC*J8A=+(ot!CyewCW`~(BZ zHY4V&d@J3Q)}W{|ekju)&>fmrqQt(bhz`M-Y$ZyCs=trwYHo|6t6l?D&mY=c*5NMQ ztrgYRzG$E#!J$z4bQi*h7nCY?6avis6Q#rakE4f=0z-WlHF*7-nWcVa13Y=R3lXqlf1mzI;uqymvyd5Z6OJ>gd zwqu4!$#>#=*wGy?i1~g(uT|Bn53wogek>U5u^WOP=$0P&P!1R^NkyDjnox5aC8N{y z*Empi&kZXtT`J5GdtU!e3sF&%VEF3KC^ zY%zH>ZfawpKem{;2tpG5{IN@6KM!v8U|Lmo-icFH8LZQFe+vEn>uUCOyiU_1^-Z*= z)GU)Ky$EA>jh>o%Fd&4_LvYh~i)uoD>~zI>m983wGGVz3%Fe{7XE_Q&o1x?g5@mXn z$esY05>hRSx}s#bb!t{inF+Y9_c8iV1b$i6&5ckHid-Ozm6QS;K-W}JZeZr;nYb~r z6ST@V(R)yZ+RscH4SOQIGBkm(2={l8h;eDwc!*$w^1?=gZg%}X-m`Y1o?71<)4qgf zI2LinmJBb)(OKUtqGv`$RkV%tf%DQD66vy*e>$~m0{%1J^p3b7=13ouIrG{*N z+j)2aYbA*FtHpN3T4h(gO*KHYstA`2pWKIW3xt6)LRJ;1s$3E$YT)+z0(e!JbD0*R zt1r2P?!};!dKJ8Xv}gwuHe;a_Yz36EcarP#YmK4tpl@{7Us=Bgc-mdMGjJ!nxki5141hgsF)3ynpBT-^-I8jEq}F4(@1cF{*rHiGhKW zY70?s3zP2pkYmfRm0TG4i_B!=R73|C6c`?{$#T?G1UvV3&1_S{rM%#SXXI-fLHFka zm7yr^d4`15s7vLD@sBfX+%t?UO-(w5JOY&#)w< zk}4X?L}5f*8`4AAh;1yl;24D0RUos%_&jG4krE!ei-B!Rp%Jc(@xF*-zQAyh7`Ypv zp(V&?jeW-Lr$EMMIwbLOKsoEy-T8!=trnz2BEYkuj1Danh4$N+Phi)_({S+Vf1#lx z^hgaG4_{VG0+IsWHFhK}S6*eba*LhBu3+HT$Fg~UK#j;B7^M-yT|L;eC9y0jeZ_Gn zk{SB<@1eK-pieQ0g8jyV$l(n*E(J9MZf0=rwa}Z+Gi}4EbEqNjb*^)5FPW#|sQ`{& zlCTsd9v#XMA-NY7yS~1L z(Ed}X0<8z>3MRc+>{609k;tx=Tq1wDr zy)A0iL*wNc)bm0u;zi}8JIF|%ni#&by4#FPa@l-wIhqRxLn$O8EPwxSFfK1GW_Wm_ zmExSns1A%D{rG?1=kGNSd=!d50Tx;ROa#&9JwnwM#C~?gd!hrrZd#ej@4U)i8X~Ta zhV9OlJ*h$#A73N4lY5EhGd2W|;XE@*Ztfrl18;DXy*`C_Uk}j3!pcig$4HbnL@aydO zvijraRyYE#9@+P18t=j|b`2H;vvXp^tv&N7dIx{z)$$OcK4NF+|K3zdaB*NcwlA!} z9oB}}OAK%FJobS4Kw9UYmzDJN{6)<#JNpd34u}RT^$|_bJ^7uCvTa#-4;&+e!;ji( zh-Wl9kY;72YAED2n4Dv-60HJb?5Z`cs3cowwQoA31X5V_&jt+4P2r{7{%<4`MW?Og zeFmp#s5PN{!n9VosIb-=>b+m_=NZmJICjWDyn>hC|1>>OPKMS0^C@!Y#Tw80k6e@j zIS$XN?q{IG;M(7w3t(q(<0xls-`v|ALzvjc(Y)Dz=$ua2nqOuz&`e}6lqDw!g%u$F zZ)b+&0uB-J2)C|`GJm0>fXGDVujS#x+bzxF7BypTYIK?faV>S{GU7zJXGZ-U?_s(u zA?TcnXMG-vPz^2r$P6aN5MUn;+J<##TUS+B>idV16*_g_q-PrdmJ70Wt# zsmD%IHMzrr;oW}by4n^eJ%;F1u}_W`a{^aePwod$2$)o^HM^{Hl&0s3wCbZI+@-KU z+G+j#mLqlo{m*6qJmrs6mz99XEk+%IVcKugs)2Yxl)Im;`tDtPq<3EJ*FO3(t!=p4 zHoXUC3puZv(b`d!MW95KR{^~HQs+wd2x>)It&$`8iD&)z6=%YwU8Ko*OQ+f(YJSh> zAHMB(+h-DQ17i0Aql->Y-zP&&7HrpadiT7WI4wtO)))cDuYZQHLuN2qnvkd9^r^M= z<2CYy_Cm7mYM*&=la1k0)L*p1;I;a}XskqR#Jmz4$Q?|pmWUb&|C^vFsHkOS?%ptE z2QV@M&1LbMQ(&#pu<#)}FA`(s&YJbwJ}&h9Gq>Z(Egim3hn1@j60E#R=&DMpi901m z<6mVhbj`C2KR@oxp10~14)U6y72N|16{ESC5`0we(p|BN3 zWOgRoaHNfFS}UEAybHX@AdLNHhi)xlecWv#`EM3I4TDYuy=+G6(oRNVDLfc!MIW9! zl+4Ffey`n1sX*k=cp|ZRNd64>Ck0>ow{@h~FSov(t51cA7Ar;Tm3`UW4L)^O$Id_A z@lMj}-Y+K$@39viYTb2x1pWw|Zg3~~%905FlVNqqkaiHu2iy&wG-`(+ObUjG^a9%z z5>9Ewld)yc8-Fbt8^U%&maCId+ix-tuUX9MH7e)N{{_Pi%CIE(*-uWx&!6Tmd$Qmr zvo_j3LNP9_P8<&rNF2`R>9aiAKSa>JMdhMN66q`0`q6jve3CGOwI1NmVNcw!3&%~U zE=w;uZY7x(95dbcfmHNxVO7N0dIv~$e~+mUmxMK2&L2zpetezMC{?yRC8SX?}X% z?zsDM=8gVmx1Gc4ad8h)-hue~nW5;>xH=Co6m&V&-*uP&)3EY|S>=>cGPIn<9 z3R*Cy6Mv!5t9&EdMrE#?zmH(J+rBoy1Y6_zk5mE^oE{FoMFDCc^=z_2Rx3R1(I&P9 zl=&Nb(Ci5lR?D1xw(WW!9q50kZ>}5uaco?`*}efTrj#$ez-AU(vokKi(;yR<^9|9<q9*yXeKEFD{d9 zlaZ(y9Upq0H=(wtoGk@lT+dDhADa zJKoPfm9#_ujDdlf$$vYQ|6@agLrApdW4}5Qm&y2-HnWV~97~GMEgEa9z1yN1%U zjD4GBAJqPUkljmua!NkE3{lbPW@0K8=SEm$K!X)^2FHkL_DD27#?N(vn7cFTMLk;U zm0=`-;l*#i%T()pyXH`_Try6p+T^WZVPXH`!Cf!)WMcEA5-66Jm!ojlJ$Aw=-|vbA zq#9dyB4`0G6^Em#TtJm(;7hmt5WcHyD${ml(*`V(osRo{(q+d3ff^(dLA%$}jU*@@ zKwGe#&Km$+8PtqGq5&Yevg$klZ&H`>3k0kqcp-G5>5rq-)ZZbS) z96Cqo8KJT>*MK()R6fc3;dA%)u<4+Mj~FZx^zY6a7DhtdpF>qv7xB>Gyz82 z#rpRH*_IO;nLD8(`J}_FguFbh>v&IMSfYI{ug9wrrF=lw+?iTcSsAEjYXk25I#@!7 zb~T%9@Cis8zZw`2qXve>>JlvjyLXgaB>*U8rJuiw?grGW$3>kiWMNv&KWiV1VAH%ouEnqO}tXBV8 zE2UqlaW6uViS%g)T~^=WHu1ObGaOx%wr-RIj;;Kw>U0_?jN|Lp1x00*O~L}-aUKQ4 zkZ;Xdzg5-_BQ*_=w{)IpAmm7%Se|*Ed%f3P+}Sdzx%o_fsM7_VT&x7%bDW@l}9k_%lp<~|MIxoNZnlH@y7yY7C>mu&8e()-mh4u=y@F1Px8|W z0oYgt85zsvy8Y)rr-gJ4_&vKyd4JD-|B^X%1x}#XdcMFrnDuqOOQGRJ2o>)Pe$!Of`ufCnEz7AcX(9s18K^ zS93H#@mdM&+8B?3VyOu%y_l;vhEb~Xpo~za^vspRJRR!o>)4$*#-xCegx+THsjFlu z?RZP+JX z>V5H5MXp!JS-Y#;wrka@K-ufQK{ODDJstv1bk_Jnr{&$l{fIb?RU!nQnFaeO(teyh z;FCx*B!cm=asg)~0WH0jD>3IZOZseyXVkxUa1Ivd#z( zix>uoL2=vA3fzF%N)fPvp5y^bFL6fRH!S?W-kVsWUfb)?oEQHcr%9T=t}!d(wZEh(SG#wWTdC-2P4H;%Z{n5OZzRLSJhbX zl8UXp@r{8*!l5gfYI>_@=MPRJr+6f?E)wI2{u;#bvG_1)fv<1N9;#4?!JQemlcey? z?f$@L2rvHQ1v!gGfOs$PXYQ*;DR3|ipy&&Q(~F1&$Uox%vy0_Lr=Jj~bP0|rCoZB; zGEny*A}YBR5in2^BU(@ax$icQqUfHcyBBA=r;{)ECw73R;oxe-bL9d$-Nk(KEYup6 zUFh}SpCrJ?zm5?`-vby(dzC12f+62R0Z5~Q?_*_}GeoMjw6YlbQtHBxutC8>v~5t)q*PC#Q?o@&d9FyWE_Y zS#C1MX@0OXjH6;kQZah6n@!+c4jYSA$f*vz6zFHKMF!Rw@N-(OTAt}-mn13~cz)qR zy(9a;#D-?|=JD_Flu9_WDqs=3Lrz8w5U~Ej~0!HC#j4YRZ88`1_ywm7HMRO?nSsPtmP1f{+urU1>N{F=(b7*zCHi> zTB_0|wiJc~?hFqQ?*5$2(`z*l1^l{^NJJC&pVV9%;WYN&ym zP3UETP(%;moA40$)$ z%dW!PkYdpj@XbU&`$vi6CZn37V0!3B^NhvNy; zQIwRGeI@Xx*XqUq%%{FM9TB-=AmMQ_dETF;44Z?rn$(%kQqbWf%RjpTP-aDo{NU+) ziOaPXG)|xo3&=pH&}-jctbYNu*fjije*?lvOl$%G0ZNGj$dhD5?U1OiW>n3yzzM3; z<%X_Kw^F{ifeqk9MhLKTMxA(EFX($-OjF3{Ej|2<`;TnaNvVNwIIU%Wh*InBg z6bbAPXNXI)s7-1vR`|=R`5R*|6A+01`{{0~spTMi_=z?`#o$wP`&BTXwNQ&6k;`8s zo}++Me5S_h6;0yn0W$|?;*aO^o9T8UX{i(L;ll0lyk1MwEX?ZFGr%GDQyO`V0 z?>N^YOLK%qy%9D#-F&UGn(*G_oNwK}(l;Z58e7QjcVXzmL-y(XL}_^vNTBZSWTu<^ z5mCV;f~!sWK4J{Cin8#HHgY2)=-5)I`}=H;6ntJ(&7>$O?4$8^-c)E)1jryWIh#pM z7W2}t9`6_HZ3V$=YdVs+01DD@OBuKV(t+`mITWPxllnyeH&1|`_iM1f*^_#0*6#@b zkVpxT+uPfc(;Bsg1Aw}Jb(x6#N|UYc(G>9r=`^Gvv7wi{MKo`%CUqCsJm#lxzM-623Y_mjYc{dGI2>s!Q9zg_Mn4<0CRk1 zcGf^&kfevr&awb*jn08z-&Q}j22q22m;tb&A@FC&UhylmzuFR7!ksd#0Zr8a^ndsX zkdghq(Yv$SNicltj7$psCd^_d48#$$pK)BYVwADd$=pb9ZyvCX=YG$5vj8YY09_EE z5%@=w@)Ji#M*~sXLu^6z_tvJzL6Y)yu}i|G3QQ*85R8}wvF1{fkl|~T(KGZ)A{fIB zaDgKxWkltY1azI5Y{wBr1vaT>Ga>a1GJ#jzN=B_kA61SNaQ-hy{{G9c&-DDO?KT01 zSC8T41z@GDVjlVMhx+~^!jbE-8&rLiIR5*$GL41_FI=lwrMVt`!}B9r^~1%T1Qdnt zb2Z#}LrhnNN%+S?l%}q$Jw~(}N#BPg;{BPdS5Zq!a!e;B!Fj|kH^OL%;<9~{3cnSxw-<~Re!Hp6oy$ukY{S!q$}55#X~6?OEPpNR#PHON49kVYEdrEW zkQeY^idgkneSZ_oh6I4Mw595x*5JRB1Xxg@^=zdb9~^`@F9B2~z^Zo&A}|&n?YJe8 z8?%OrXo`pe{I-Wy4TA>K!y?E24q$g@C$VtLmphu&6p(>gvp0_e^spdDcwx>M_)Kc? zR4Sb58X>G8?7(PT(HealGtVBbc1$EBq<^C$tVl7kTgES02#^wqtBABqMGHpC^1=%h z(T;;XsPR0^mim&KThxbwx<>(n&7+CElV55XR2hC~JwNN+b8>8JYX(awfcJYrKq%;c z`_kVH>giXp>dCg?YSn?XKk0e;&Z;}TPe|1bIwlwTkEQ0(uLTH$*`FDIONRVBzbxsj zt$#{4Zg*3H^v~z-(<#F^nD!NOtY<9ch|EZJvOA0MPl@><^*KAE5g!LD_%W(H)aYF| zR>C;|jcZFPEG9fZU*F2uG+}PhU&NwT&~*Y~3~8E~%R{AvU&#*#{o6N>w{%|K{@D_B z#)2<7^biptitTwL*Slf+e$pfjO<^O@1_qB8I;k5og@5jKNaGFM$)7e@WdD|9%Xa4(_Z~mi=?y?9xzuR5`VwDS3|c;qQ9ZUHW$v6W znNI3-5cYJmLSUs!#@{9A%R{0J4twrS*Rp0?%4zs1`DcQDesUCXKn=+65qHinpIuvZ zad2=-@zPOvB%^MQLZS^csdpm@^2-ap{b>D#u3!CYa`+BH4*><`J^-Ir;#S>4h93s4YavK;3mIMWwgLF`6Y#IiSgmh#ZMGVD)o!Dgj&(+!06(9}p z4_qnVv90T5{(^c_EaM*<^NOsXy5=|2Jq;vk89a+%e1~U?)xAbs@5%BF@ptMmCk4 zt7cYG+K&S*j%A~(5zW9HL;M5>cxJGDRS}mK1XlC+hjx|5qzy9TU#mOs5<_B~#Y ztz(T}cF^GWlZ&lz`eh=?g+I;5fmlsM$kiXdL1_Mfe%sOKQ=x;Ma<`-s$n9m_O9!ri zZD~{rnQJ^&-&SnY=AOn@?`f#p&OP7ut8Jtgo0w_?1tQ#-?i8`{OtN4X?*6&T2C;%ku~N@2%jrh{?erGyrj>tjrV#J5b!osXqKuWLHW` z%H_kIXD8sK0)sflLrK{e{zWrylSSC2y_9Bbh8$bWxi?sbG@Zg^YchR!F+Cj89s3Js zjo8IQi;S~#cpHxqSm0mz0DS0q%vB503Ll|*iOc{y?fIys@YR~Q=E-Mc2??;-||ES85kowo89eezKV zDy#wV{e9n%^8|pV;Zay#P8UfSon%!cPL4lSSu<`{6l5$pFh-ivi_YYoK#N<$OkCv7 zM+l2LCH#*7;Jh0i3i$<`2Q(r~CMU}pWzV7lLiU^9nsO@Q;vsS~Phfz|;-?VSM$V>I zL1ssE>gHi*>;fjF6k*q~2;7k!`}|tBb9??9-=g*M3%$VJ_-k62Led#Fhen?httG5vhE| z7`hntV$5GGZq%%7Tilhf`egeUSLv5oD?TCbviM_sJTKbOU*{*ow<3AE9Jaox@f5Qa z!vV+epCK!CuEn#uD6jJX9qAK^yx&6 zU{M$Cu-Nv-k*ay+8zH^M{>^!x79`uL1XzKX&HRSjIK3NG%d5UTG|tUTjc7*@f$v(XS;Mp{a64~%8$hPRMlhs_%znRnaF%}3CF{l>1b9jf6Tw0 zq;d?mu>Y$9^lkJSryS9aUf&OHb`Fp?bW3Wvj6kgj>O~@rH1R;ivhp%=x~LNfeCooK z84xiNYNjd!$xh*Eu#u51UQ~jn-GxfDO-x-bTDq^+2mAZ!?8x41=THU4!OC_mSoZnk z$XFI#W{X|G)Xx_v7!X%dLU9akYT_`ZUd*p4+LY)KjuZnY#|4fj+15Y|bDx;0NQn$H z4kH4j`KoJQ5*`9<^)bf7(eKX(z7^`-_im3GEaU9k;x!J& z;9jAl4RUa}5U5T&5Ocmlk7e2)faPKvQ<;@MW&&-qeFeCC_Ap77M zqvz=or~qy^=Ng~^hCZWm7xCv#Zn~s-ZyxKY9?@FcWxJU*`L9r90?UbbHRGwm*+xls z)#AnS)n3;U7EQ{xYI^O9Z|BoAlWe|fU3W2BIR)h`xnCxQTDey{JXA`O!E)gMaR082 z*;6;*gDDB&UoSej28Pvaw;|wlTk#Zn5M&I_N7!^o_BlR#G?bWIYw;!S3`iI(&evg9%P}@0#ac=0I$s5-PE+SH^;lT^Q~@}UmAx~L@0O)zU==_q1(RJR2r#ZeAaC+!tEd9Q#QFD$G;i( z`NeUFfF;dQo9#gKv$-0HhzAVR%$4V=M{s2&qr;(3Y3bphC#4Kab#QTnU~} zep|`duhK?fk|UCU_5HbfWnGjG@NyD!(v#iG3uut ziZJmc#mx`y2`A_0=f{Ru*U%URn8EB9kA^t11Aw&3i2Y`K;AMn{zeM7e6ed#|Hvd~7 z5v(18IwRL?BAqJk>dyfNK5VyF&K8S z^-h$uT@BACcr1fLhsv!S_Z)dqVMQfqmx$CfFb?rbxtzW^W3yq$r5DSxgu2iQ%L=EV zaAN0z7e$no@)PnGyAQ=|m=wbeQat(cxhP%L{_(MmC_~e}I_0gFoaFw4@SVG1Ks<5$ zGq6|~vvK4K$Ya2g7MdX=*t)n8l~?Cwr~e|aG4Rq`{e)DW<#>TBT|K5+Ns+fP@&9*A(^52vT?3@W4+=Wt>tNo*QC3g}f{O z%XjX4pL{^KJ|N@aQkL5}{16R?Q$gTifE5l`N5uaW6>WN2BoQnIhf3jGyVXaB5LWzi z7AIOa$UI0Rka1B%;{fSggIeQHmI>dU#X_Rs zuw{Y!Kt3W+uz-FIsP6kvNR`(uLl*gTrhwlVlh?8Uo>R>YZx1FQXf*+_A&=kJ7#r8Zh>aUdh(9Ga8{DAun^^+{r!~f{@&0w?J4mtiBKMV_n;7;wVP26#U1h?&o;B*c@*QPP zvlm%OEJWv0{8U00S3)lqs2LjSF0+)<;P0JudUZ{>`~6wH{PO_jEq()OK)>awBJ&eY z?hXwYt-bpVD<6*v{Uv(ezNj@vot9%77FFjftFIx|X*AwkRt$dZjNjYdc$OO;%s-)f z_XBasyq3Jgwyp9pFHdbys``*n)Tb@)nOVWXJ{?=RDB-0Bm;g~q`NR&s`Y>jfGBF9% zL*gIvaAk6UR8E+v>uK`A3<`awYGiWCAY5^w2n(yURebY$;-Y3mM8e%hS_2!S4Dzt# zeZC-WSpPZEx`(8|bNu$NVIo=S2ncRyP=GpTY6wrj!^X;*#D?f#^l-W3j!|zmPI@d1 z1}Y(vC*U(*rDuiu9X<_uNhEU;h(?s69{^-@XXk4mcslrr9zhPy!F;93hD;)QvvA*r zxfBWTJ063)5(<&oHqQn^^gzs2huaTWMdmsK*p1tGCem|qfHbw7d}yP z|8ZYM4gj?|L#*!}1?pzGehVceqMcC)Ibmf-Ut3_;7; zXCEY5*9aw^A&Epg(n_R~eygZ%+A~Ts3wX4Rs=#NpX1;_hb1v6A$-qG2yB$ z*FWHZ%BM{ZMjp;rk}*lptIL9nm3SsW%@tx+i6Fq*VC3)=h)K!7#(k<#&)`ym$1&WN za6n)tW!l~p{>%0+2+4Fygd~lGO_k56+p7CtzVPK~dtg7473ORE^m<@3iPv4BKk_z- zpEIMHIS8G`pGndZ#Zj-bh~D{17JK3<7~HVyBT2bp2=EwZXQOXG1|z~dJUcrZa3fNR zotOZ6gbew6NlB4UNG;w;p)2lwLK0cCUqjzo93s9W&l)gP)>c7IX{36vMRFjYW_5OS-1`dC0 zF_}gM$Rx|^L+>!MW#NM9%E-X7hT0jiJVysOWV{nEfxQmMsEx22^(^9b=t8VfjeehC z5|IEvyK=h-6g22vEgWUa+ksI1zGepyN6PR06S%l_zPdDkB_Z*O9njCdTUJ%2{?Tp! z>%yHU?>jyS>-onggr{c>PXA2=9qL6JYYx1#=_jq+LKytdrF?^Y?(?vjiZ&;m0iu3S z(*?!M>-dO%Co#QRJ85OdMq6eXKObhJ%x&Sl7PVDvqXV-OvgwCojbwk_94Twj%*{cV zObL+)oeU*X{3Yxp4s~HNN6fl6o+eFX9oP)P`ob_^o0g5=$NC+#4ha_4be&H?=3A-v zZ3bI>rc59h0wXk$vc_EwdSZg`Y%q|0N5}jf3>Cr1HF6vaP&#Nx8U7J-EY zwGN_hf!&>~3`1mUYe*e$f(>(TIRo;K#-SsVLOLUplY)-_!dpa-U~BQCBUggYdrK}s zSOft>O)mCI&g**QH4@?I_Z=27tbjv6WZ~b{#HdtcOIIC>}fzqk;qHa)(htG@b%$ZWn_|*v1BkR;yS*CYpE_I8BrI3tVUS95_O&tQ_7>Y zMPy`jEF+zW#Voqxg##4+azJ=Foz)ys8be|jYE!PIDbn!Uru`QOmT)@sUMT?a!!!Y^ zg^tPv5Z2XHR753VEc=cW;Jb}>ey5bD%ilpq0;wq$+Aqw|C+?a;qo7q*Ge6`3DR)2t z8(1a*M_O{>fBVx#e-V=5F1djS8Q}dza0XGn4am&{FpkmDQ7f5ysG?5K8(KXk3sOLt zjNDQe(DMNt!^X1QgGQpGqJR-XP=K40ZU3PM$kxBvslKvlL+oK+vM-0?w%9**PC@ol zG!W^1O}yB!9j0}|;__A1)1y%2wzPY`vC#k6T0P0%yp5Q6@&D_W|9)bU-22nQ{NX%> zqW#_bh3h`3xfdKjHh4tBtg!0l8izKD=*s%|(4`95tiA2Nm|dlw_>D|F4*ukPiX{4? zJI<(mvf>As@hg@Dm5>kzTy|-*xI1UprhRmT%)u!|az)aRT&7Cn-UyOtHGDl)24FJfbW)Dv**)5CwdUqM84E zj$i+x$KC(o{sZy_zlHiMVb5~kwZw%Q7(RhzZXx5^fx5HaWCWLlfk;8B&v<2JgnZUf ziQsu+K-F5qrJKeZfcRgL?^8QG6cuA5J+c zkw-)Sa-=mr{I2ff{MwtxNn=g9KKcSgB8TN?n>l^fgl4Uy({`>;2nD>g5;NfM5u3#8 zP&e9ow3f&`q=d5VQDEA_o}!w;oO126aach9;^I%Hkf~(*IC{f3c_X3^K)kZgIt-e| zH$&&hyc(ZBY8Ui+=G3lJs>e0ug8lF9_%1h7wucGx_&c}ka-ZC{GGo~k3&14fd4AAU%AeNtx}{=C9?6MC4vEjh03_@EaeGK4`7t!r8c4uj4pV8xCB6 zW%9nafA25aJwMN&nIZ(`(%IDNJAL1qZM)~wk`q&|^{l%nJX>G0!Qb)}Z(d2hclta- z#4 z`R`*BX5Bx4#^!qmZgZsoge_pC7YAj-qs*vhq@toz);=)DGH7$YUjzs;+k&&6o7PEa zM3Pwt@0~OY{(mjkqn#z!q`i@bPa{}-L>e1jd2SHs#in==fBAa-so4yx3h%?wk7+2l z-)Ka$sl)c~_ppteCkPzG|E{2RUh(16R&+s-73RygoNb5&y0+kegTLb{hF8k?99{}n z=q`9=T-f`8N$afJ0!Q&okGFvM8{pml`z?ww6!$ve}Bjj^LfE>&8 z4Nqo`PrSR0_Pqk){;j93aEs6)tNAUa*liuU{c~68!S}y_82;K6xLfzQxUU^P5{vx~ zv#t32FYb-WZM|-Y|0$~6&bwp3JPym3BBl2Tpsi4G&MC1#pUP+D?Leot3%plA+>a6= zCgw5%KU_7mn|XLYu_phAdFtekeA53lk&8x*&vgOajfeP1AF1En0+y7H*|=}JBN)EK zCAWgGXVJdpNDrimFalx@f&3ijd!7F9k_*Shb>$8Q@-A{b@NIf+-~Oz9EC5WVU*tJD zm0USQX@kB|;N`zzofDM-6Q|jN8-e z=xf~a;Ftb5$*JxU{uFBn-cIvg2E==V$nO;9&sWW(Ba)QfB=9zwD|F2)KW$atB6=iz z#Sd_+ z+wj-H2AXvUklMSf$QJ# z$xhb2E~^Dbec}{^_cp*m+_)3}-hmTq`ollCvF>_w+(d!k@g{c2^mkfN&|c;=6@q?; zV^QN0!g1((d5{`X+|77zG%7)F_wGTW4d1^{dwIEf8Lk^qXFgw6Znx1HRn^o8Vg`#@ z+$BY?&@)RGJG>=FS_{sL?>1IH7{SYpQ^sCcdD?E zUgR#k7*9l?F=Sl+ikj5((`KnPpv8WFUl#lXDKS+oR{SMIVjVX&+oi6jili{_wn7C& z#5VCZr8YfoyhVhMacNk2qe3&X*OqI7FNqIqcm&B9Rxg2IXhU;n$d2E`x81AEqo*@e zA**HC6$3C@uHFBwK= z$#r?D=TlKiVu4Nx9`zd9dtnfD=`IWU(>8q$CHwFSQ%$^RUzQAdz)x9ZOOq{Ef0itd zxoR(jma1X%lTMLn*0{>=W)wEXTJg~~RY=^9md#X2_OOdvmAj@ZNo@WdI|7q=hRkO3 zC(Mx&k61N0eLSb}%Ew#){{Q|~{>(!o-*mMBj^^L*IA;?+bptrDFIlhXhx}vZgxGA# zI6jw~0Y2sIV@gx9fCYfIm*@;$oA`XB42SJpWs=Ot;Pi*&Vly$qFF^xEq~icmIu8*8 zzQfGGiY>*azJonuhJt9ax+z0(eraWcuJHZ4;Ty~1v9v;2zsv~Ewm#oUsg&AHhdEK% z#(fG_tdx%POG`cD)X1{TLdh=U*1dr>{tt$*kZr+?9YS3TQR`!oPWRKer=dzowowjkD&s>Hz^Cn6`dez zYQxcK6f~2(-CjB$$b&kB{en2eE`~1GnmVx3FCfk-5Er z`EA7+Z+$XMQO@yMzxCo84N@PlwX7`)&0%UV*w9z|kw}PuJv>dML1gc2_hDhKsmd?s8k`w?ki>uOzf|n-DB2GW) z$K<8TNb~DK?(L{q%T_ogYsJ}F<(mYH$n-rkRc@_~yiK7;b@=hxLu0J|u1zoB`w##z z&xw}L;w*zQ?2gkH?n^2jC6eY=aBg~zS^ z*NC;i=%Kh=%&*Q?yY)mPxI{}@dziW6*Iwb-v$-2eFuCErn|q?8TnU5X&{?COi2q(I zplpE}5l*WTDk=)&W%)+M^Di5iN4+Y^Iqg~3$iD*m@G_kfB0uJL&!EOL{ZeMlJg$kz zmQ=|fyjC=wn&*eQn^M)^+DFtTu4lHX@a}q*9K+XBv| z4Y1547L`ph^FJZ|Cg*;fg(oZpMI5n@h8gyhDj_CJbDB(nK{H)s0*;su`(#>;Wu5kl zY_uvrejSvI#*@_9WL4;Y?tbgEULuu@+Kv-^t*DaPw!JEev8Yy zm{*_T zuHAY)68p(A!^RJfI|VBnj;EQLuWROSPiIte=^b13NKI9`^nP1Ur9Lq?j{Ei_6qkqP z%4!q=L@!daeIbrZU+bJo(CzVCw;(gvWn=l(9oacY;TV4fA<2+Bs6PKn8_VU_K{N&; zg>D-@cXZVqq>^%gxiw&HQsj{^7=@KaE~)l9Fa}ss0O9FQk1I2p&p;z!n`CGAr8m+Y zQYvI#oUT&IW^YZU2NG7^9DR5E=u41cm(DL-^s$;&F(x7fHE4Y8`%G3*Gk99DEJHWC zlWyKgyJiBqNa1N$(LbFJ5E=|PDcw5hC%PU}3(Vy-+bv%A?7HX)rrNq&i%XU8N`s5k zNE786I$rNTf8tknmZQ)H*6w)G;4IrjgBKYQ60J7X-O03@qp#2I8En!+F-dnDii#XI ziMnoU6pDhMhknHpu-N5#Uq(dZB*pq)A5qQxkR~T}Tc?qX0`fwi;4r0P0d#pZA;0!8 z-~wc^xmjA0%i|aT7)b2S&CkaY@N#6x$+)?_Gq8Zr>vF?4#iKQq_xsED8xqA~;;~w5 z4?V5Jk7XGIBv;A8vmbl=sSD#M+(eht-E#WkT7s7X9$)hMiZtP;ui2D{xZ(}80Fl1$ zG=iiI$jN*Rjn`H3A!ra|hs_T&mi5OyFYDnpRdTc^_6(Gh>GHBO=0BKvlU?$NpB`^h z()1I*NcldDI-mF5iSs{IL}Mo)nn&YO;2Ng$sMUGir9u%Rn=}|p@;oFU5bjfT+-B-} zmacl1cia~Op)q`n!=obrT221|SWuL<#*|mJ9o7yL&XD2*dX~wj??e3Ko`>hor~A57 z75Fdk2owupt_mO5Vht+~7XGr;&rJE0Ws!q743Y53y;Yo3rjClbOWJ0=GP_fovWTIL zVZFTCRpFtR|BdkfE%*5!)d9Ao?Na!>y2oyY zvw#0pgTEy5CYN?40R7w@%fQ{7VxW3A)47@yWRw)*Bjg;C8k`zWW&rNrfqgu0#5PUf z|IV13rsx&UZNb704v53p8u$)++&u~K=^gTn%zyBfB0lS;Ucy|eyiKkXg!SPJIe@&` z$nT*lV-lxs#@3jas&E}0BL23-XxJAU3=oMB{FEZ|ERMyKxlGQjlcYi+j=`a;QL0*% zQrWaT9enGves~<{vyz+H|aI`)G_IFC!lfo;Nc5Of`oPzsTUhuVksDb-l%j* z)px)e!_WD9ZYRX!<}++vAJ*T9V1xYU2U&DP^$lG;y+0d<+Mj!8(IZGWf4>SyldI~< z$Htq8mlVyYI0ksrsnZFIL2!%ogh`Nfw54Ry&eEp*8oBgJLTc2uK*f_a_Vra&C7-3F zO1iVQvm+uTER0W1Cdc(RaCPNC4J5`0S11`BAIEqNQ6gtyQ7)SPx3{;UDkdpeu1X7G z15iAZ)6(2rT?_HCv45(UI}|IIqPqoWxw*NK#mJhN6p0iNyPXSUnq=QL(Cg{xVQY$u zivyT??w(Thasooas`B!v$jHJK3UYE)b#+7pgqz!2V`~6ENgmj~7L6k~a((UWo!#5p z3vdKBHw_(;0i-p*f~A#JR8*7$ZPLgT@;^sz?tTt++b+$s4`;P)Y{UpL(i9n#5u>=R z``a}MdoTDfT}*j_p8xqRFz*^&qT5$=?s@B)-1#K%g-}&l33pJ0A^CU;^1jlpoD?kV zzT7`%gx6d^Do|NEb>nME33(Ce=jAQ+B@qtOUXEyq)%{gc-x_?Fj5~wBt~OHQW?(=( zngK{7|1$FP^OKX&>3_-=D* zBkSc`BDfr6(nv#VD>nzn{GUH8EG%_Ee6p)6H$7cy0*FXPOKcAeK;!}-Lpo9s0ARkm zw^wWK;^!v_D>ZG5)T*hgJCHInGxHCGQ;?gxcl_z`ad~A0a877$Y68#^16P39JJh%p zprG5}U~kXF#N^*pUth0Yj`4|91RJ7_OF&@A5KtE!8XgAv8OR1n4{U4@^`e>8dzhL1 zC@KP9iKk~|)S*wUt7CBtm4b7&WWt_;Ao4RehnmI<-|FF|CKCy%Qj(J!>+1{DuWpu% znO#^YB4J}=TRn-wcy}4VenU9k>S@8M9pzUaU@4cUu6^V;I>cM9EupTs%cd3!g@ zt8J%J6yAzk1ScX_G-7xf3g1rjKEwjV(F?_}Lod=O8jDC@K|P(xzFhO=r*96f)GXR4 z-Ll<5chDo}@9Mi$GZ3dwq2|j_pjs>Q2!;BCqu|vt!%n3~%L&d~b5{swZ35Ui_ z#(4+|5*ZRcZ#}s zin8t69`j1DVq?wgFS`FXa31Drw@y9*V=Tad01@HbSdEH`T)LrK(L%hiY^d8Addb?^ zTTV*9q{P|Tw5q$UZ}QpMRieE;d1R_LAc8dDii?k2k4l^w_Jx-lA29&YBJ0A}6vV1#U z;!3a~U@w%bn9^K13XEy8=r>QmZHs1HFgIt{g`}G}x1Ar`^;X4M0T7FN&ETo#L9U{Ib6Hvzu5V6#*7S@>etF=~KL%*Ml4lncduC zS6mOaBzI+>{ zqbR7iv82P3^?Lre)2|)CaRvPkD)Z5lelO3#9$aX-sTer z?k6;+RWwXYctbAuOmS)Q7O<@NuYCMny1_+{#Kho9aPQ_oSH$Mx55{RBdae6|FL57pp zEz#dOnc{r^BwX!Z@@XaDU*KBYa{u?48_%2u%2wUjRniQ(p*tTrc4VW?Fkx_OZkb|K zJGvAZE+<$wC6>7SMInxWQb+^Ax(a(eHw2tfX8YM+dsjP-tuqIkj=e$3rgPsty{MOm2ul@B_na0lSyvIFU4Gg2AS{e= zZ6CkPNZ;lPR|+4FzuGB*+=t_@?;)ds??d_Rzb$p%U)S>sX;iz#(5+o>fX+fpGkjbK zIEW*ALdNnl$B0lUdh*>B?i9Z@p9$!9v8;q`{|!-H1z>kWJ@mgMj0X@M=S*8E8(|L_#ajbx#4mR`S(J&VgxF220HVecj1M!2J{%} zi3eNx1qCs5(nyIwx^|Mvg4LEH7Y0C&MaTOR4UbLMSI$IG|9xTJJon%`^Xlp(gdoZ- znYP%3?E&rfz-tf8W5!2ZIcd5|@9F3r?Jr!ij+G!oy#Ji-*oAj>)FZ6dmSdWqzt|%V zb_Zv#A1KsgQy63feu}PKon@UYClM$-V)oT#&fU7@;O?talDd3kB$=wFPLgiy2@7hB zg5;{T5KQ9S51alM?EE_G@GNs4|Al+cUBS|6KCo(nR5DIMtfPo_nXP*G-;O-{GZsB62 zf5GsOWaO}zZiNDRLBXI!q|Fet%jU|QDEp$cFqAm5z81D%ojSC|RzuQ8>Q{%U_e;rH zbLFLDWEAK!@IvCMJU)In+kM!9Idvv`RP%^ z=>GJ{W(bwH@8c$+p9a`Mm45d{=|k7sh1e_kjVD1I1mE4`OV{wQWT~piPE1?i7nlnW zjUg|8i=kdaCc?NEw%xR13M(TI597Gnx-(Vt(UqUMx#Bzdxdl>Re4NH}2)KC?uY~Ywx)|{Auf5_QA$ zg&5aTn=6&7LL+A|Z0ZGol12T*8G!VFD5Wm=LX8;(+=MNwlU7o7pJE0k5C0;zh8F5Y zgn;^G$mG7u7mlz*htH(sR7R}s4l@pci8UjhNfrDFV^DU0mm^0ZOf$)pCE|yeb=w+) zC>_VWvLic~@c^DRJt7g7wKW&MnF(A-U<*JX2hy0`;7_)4Z3P&8(E;f!&iQ2YFUR9L^l5iU)Zn zHG?aVtS{n!6wD@guXeqe&hMY6uikZE+M{5DV)ytZ z&F(Sn^tbExSUhGO&tmyD(Uh~Nmf{Ec6(r!vn@MEvH-m6qL68bcDtzxjzkaRJPROFe zI=gqlpTS!m35T}uyh$Ydgt2!24-J4CL|^$2{Eexrzj!>7k`eh<>M1J?!@{x|O5bK0 zQ3f6nB`OCmM_HjCW3@09^8IO`U|*!}88tWlXD|dK&+a$UW1Us^(gioicTF21+pd)TKF*+of$QsQVWo1V@TnAHU$SJ5~%j(|5;TVS#V6$M45W-Tc#txQ|Rn|)exxd@htm?&WX znJRMQ+5$Ks>~FOJBlhECiRFyitGZD3Pj~*002Le^j$wL{(b34=%E=9o+ zJQBQVxY`O{R3Lhj_R@9fs20cU$%cxW4aFrU7p*OO|Fk{MnUDm2_x#M{#liMx9R)Qo zG}Ig|KJg;sGzeNd52}OmWv<=zM7zVimg7YX_A>w=p|qg`0UWldW~8SOzI%z5xBnU& zb7oyEmb9zz0-9XRlqKW3j`Lxw zn@Tpe&EmB96bi*TkuEAHHBvINFq!Xz8HQf;#RYVKC}v6&4H_&G$ngNyE#MgthiKX* z&H0Ioysf}RcG;Q(1~`M5P|0Wh>m7Rh&@1xd8Z)cMZ)6&tD|_544f~(&1{Yt5+&RMS zPy_Elj6>Yd;!ne|!sL{FKi%w7QjwqTc!M!Elb51tREV>Ouph65^>aO|$3y>_V%%V} zL3`cx83)iMQJJi8@cBl69X+4mwXp2Nv-=rA`!@rE3&i3|Ai6@G&VPAX+x;^SkG3Th zfR}Op_X~x}1%0iks_OJ$ri7&wICX4%Ly$mP);xRHRdPs;guhAB@^zdwD}6rd6@^~F ziLEse$^W0y-rsXTXQgKy`$UV%%Ou>%U(Kk3)g)gE@Wcf0~7e ziU-1aknr|3oDzFmIkL{z)V{A;7$(p6Wcu#HdA^mnj9t&Dq`W#YTGNxm!{xitcHM)A zbNee;nY}>?iGh=X8cNZ-X6#ghy$#>)_sRG?gLg(RHUl_1Kb>`kHF2asXK+q(`ReR& z48^Eu#VZPi>>gEr)oc7Y{zIT94lqdu0EW$eZ?6D0YBY^;A(NIKa}=OuQ>>sMBNJ~c zOymh7#k~v3{VZ~&0^qPahQ!E;5**B>S_USc3r%6e*ch6lc+Ko6e2!A=*0K_Pyxh=1rTv> zFf91*GYfbOY|-%7_W6S%-VWu@bTW&fPK3t{#^BL@R?-N|;#5m4Duvnb1{V}OUXQ8N zDe!tkmrdPlKbz%CX6))=>=r_WGoLI=jSU2w>nVugO~}9|K*0M!iq+{!!mrn<>2{pn z7QR#wi#UgRwP(@`*3j^?N7Aaii)Y=BXrX$05Q~DWaDCrIr^y=bgo7C0S*#dAc zfWyvxx>Qd^OIuc0C=!VHmJ*5_Cr!NtkcUxcTm0U90alj)Q}OrjVpWu#SWrlW6;)MD zOV*b`(OftzroR9P;8!4n(rAT;hX>dnOcl$>$`*eU^_A=fFoOV)2=FBW7W@(Ol`fxl zHdAs63cW6G9R2tcFk%g>CRr&de@MqT8^Cj#h~KlJs}=zPVR=Zu#a?)0agXqQ*0BDs z?Zi$_La!wj)Ue}mx(3$MC#d4WzXy;}LTYIpa#<$x&5o<+l(XQkH1+n{b(4^QMq!rH z58hvd$IjE?+ut(@ylNH;;Y-1q4nSkvNXa^NgmKypSygYPXvF7LYx6Wz3@z5)AG4;* z9a?Hs7Zw@#rTB--_>Sd7sg>85KzSbk{irNf3uuC+&}qnIlLGM+Ar%!BSJx&nWI|cb zVpiMrj*QGqS~6K+6QpuL=+qOHl?7mwRFsslwMnd03fb|-@G#yLI?W2}#*NzYb;5cw zBB+262>`vT7~tyb?-vyn1&!E!u5W4KqN3UZJlxL}^!4=t$9Hd>z`d;uh2ldLkx8S>4xUoLC+n&@jT9*z}lcn+`{*v{&{r zRmU<`<%cKsU-V*ngj$sKV|`yXJ9Aw93=zY{V9BdUv>>FFq@YFHn6n{YZkJk-kWOoY z0(lU@rVK44dU-s#h1Lo{P*5;CC?W?&7EXg3hL?O^RRwWKfj5l~h!= z8(u_|3972jHF&WBl&)Jw4kzBx$8L1I#gsMfINOJ>QGU4nT332(x577K50Agd>7d|z z{mYIElJ!+BnIt-78o>s=r=pP96ABEKN_ zVnTkiD!a$b=0c^65;GcX{Zb>R8VNotzK2|)QiNAn7`dbgCXPM-jT(@P#e!WPv6uP= z|K-V*=5s?sr&k{gCuc>ozBN)O&XP?LRaMQCi3s+P?WM1si%J_zp-}DY>}=syFoJ;G$E}ly z{)t%u0ZlRR@mg#6OK|405N6VE6_VBL?Rcm6;FyqqAU{e}K73g$=yei<6q#DVJ~SU( zX!z;|*}=M*19}z>0iX#CAJ5S>cTfxLqSKfEL#cq|yfoXr8C7oW|ELkN;`P+;1RX!m z3OcgQ6Oa}``M79!#RC7JE@sd9e)y07x9CQA-j;4Lp){bI%^0Nd*Ov*2{D<3sS2PNS z^)VT%8 zP(qsUfl2A1Y{}*G4K49U#J`UDFO9ZkA71bzfIqacuE{6hHT`?TX6g?D|9~Ji$~X1Q z^xYo^dSCicn(F@x?VsO&GeRz#!$Y^9;v9O`!1}miz=QAb$&yRoYa9IKib%ZybX>7@0qQ(-3NMm8!__bG^mfH$rLdqF)Gjm5&uy zgXeaJ+9%ZiTBm`D$qEf$>CY&3?%&pPwXXZ!kL;sAwPf~MigBFm0a2Q@Tk$e}Eov;! z1Y2WkTw^ZZwCkmN)|2~FM$(`1hMLXO_Di25ZlKF<(A=%N7kh6PO}&nZy>#owQOHna zuy$0ls-$MzY~-mXIOZDiz9m*!Bx=OTc6(ZfI+Sx;HEFM)Xd49BES_&w(G)ymq$9mw zyoHe=OvV-sx_ytEj11%dHRV8DI<6p#2C2X82+|ap$9IR7`@EbOgEtk=IJ=urTJ6g^ zb?kc>zTuY8#=IhfW1$ji6D3!dR_e^}yRAjXFdGfBxf`UNfz`y&AMKO1nY)RfD*_6& zkGCD}@YQs~P*+34dsfv;?%BQ=UKTIst8N~bs*>AvJj4eg>akrJO;T?|&>`Kys#Y^m zcS0=f>X}=6EREglew{HkeB^NT^Udilk6XP1hbQM@=!<{A!Ofd*_neQMr>L#M54)$B zOFbw#_*L)TChE+RA7%1f9p9`#B`thD!N5o(AdD1T|KF##?|p_rk^N~CsL~_6feo|Q z#f%w6;n$nAFwrsDvi60o^Ps=-Ps%@(jQYH_T^T~l)l~kgthfzrvX2qxe?M9>V30ty zSBwyw=ROy=%*zuqz9uSZbzOLsm^{+mIQPZo$ab%vNwlU8Z8E(5$ zqL8uTUej^WO(Y$+^MDQ{vg?Oed&aSXqY6tcLBlvt;-6qc5%7Gk_Y>luVaGmzg4TgL zB6eumV2Gh5VnQ3~BpFFmW7HN^)wN4cR&m})RNuc2kQYlCzPEqR zsmz>@l^sf}tu~Up^nFKN*`a14Fr zc>B1KI$_DXMi2VFQuyDasJK`JHXrqL1Q#{=S*jT^xl`|TFC}+Ep;hX=s9~J! zMQjW(AZYubJodM(pogGg?6@E%3XxkP-v16#z{?l%G1{ayuqC69h6b$~iiU30;8s>9 z!nxlIi@TgY5dBAdG(GsK-70yx5N`VXVg_?XaR%1$u) zW!Y*_1WMtBH$OHqMP)v0aW7ff4_L{2-lq`tX?V+>9N$gcV-aTv6H`CUg zQ4T6fyaE+C>~3J|sCMfRdQVtJdA>aqk0WeEjJ#LTqj(1DiIg7NqlNxo&%3uRLY%c@ zLe^-0f>(SHTo|Lq=DDTX@NOzHUO56IMmHlI92fv1_b@Cy{-EI3I}JF$&UMUZZgP&zM-h;*sM zrI9Y_c$@FtG;~Ci$*$bL+KxL+3@>SPo;cJZZkWq%lXf@Qe^WzfQQZzyIx+C*ToZ zmt!&}Qjr7o-rR2vGi6>tamct$Gmy==^<+wc>V=?-G0DRE-&ePwQ#c82l)b{6pE zCi`HBiWBLS{6j&={}KdH-@RYiT=tu@MuW+X)wOe;b_xME`MU8pZs$M0x)=NISS{&Ks519t99<=LKpWb*N#?l>eCjB4t{I*QJrKYYlK9K*Wtm;;3~a31|RfZ-TR7c}0c&T$K)<({pG%Uj@i9ruw&EqhR~BE(m;)v8n_w`dZPSy19{8 zmg~LW=zbVxJud_C&OvMQmT3R*$CXO$7m>vsD@4G?_?(_@b#Dd@1EO%bK#Ubwz`wII zfirJ1WTvyH9-Xdg;W>PFSvWd6+&|U0Scc;;-!Z_NAzi_hA~1Oi4gG zqq0=k>}>2GcAB*xoIQZ}L4bQ$OY=w?Vx+6P{p!j5f6U?Egp%RW-h)7NET&t+5-X;^ z&_qxK$gLzKG-b*8lb_6Lsr?nr&CGl$UR<{eh`?0A*A`YI8rZNfkHafB5skQm?)O(5 z#C35iI?nh97TkN&@i?jNzoaHr3EG*gTOvx*QLs#w3zgQx0cXM|~!wTcTEmg*e zSuape)pT&=za&n6Mfl|yjX1At6*~@4ypHddud+Lq?#`=A-kSg7dNUgG(CW*UW$)4S^39P9JTLh8NwTNr>t@lBAvuVf$Qfc*Ty zEuZQgxoxJ`<$h#Do!MDHzJy6n&-cg@$q|fzFkH0nADM|J#^IOgq5nY1cyR%|;F%U; zbIQI~L%KS$?&mBmEW)%Ko14otnJ2En`4%v$smaT_uN2PD39vq}lqV*o`J8NTSF~l% zFI0Z{!dGf#znkQ$&L^rIEw!=1Cu~qvdPWVz*|tqy0^t(&AMIYI0C3)Uj(`jr5Sr%4 zaJTs+l$1w%d+QM?->r8k;bER!->9j1e$R}Hivv_2P=1HLg_2|bcnHk?vqVot|4GTW z^y=%cgJfwbVc+zF-B{y{9nr+Wz^ap2kAQ#x7#7&=qGnB1;CVMRG&D7(0sVWT7zlcO zw-{<8D-uGJ&@x@Z*RHOdYJ7SW)=@dPo)$CE8P=$Bg3-We`W^IY4-xIPWSeM z{$dj_eGQDpDJm=s)0U-89S*VOKDoo}rzX4?U|wr?DZtc9S4y?f;LxiI^YGgHapdw> zZ464i+|bSXxorH6p;7UmoWG>+OYKGG?tiaaxVgB@4Rj0D^-WAl@8TUkEv=5WUx22+ z=i0|-jTm?sl4#ub^32q&DWj*Srz0bZUS9m*t|9y<@1uV;|1{i$f0e07C{ZoYUv@L{ z^--s^Y81^-?z1wEZdKgy#+G9FP_qq3(uP|>uj+f2y@(obEg257NP-~we&hlrL>9sj zm++ij-rMEK`2S%01cfOQ93eBjC|I5A%pby}(A34YOpnRon_F7c)YOEbTdJa>q9x%m z*ylH59YE(G<(fbnGcxFi)THazFLv9vTLvD7>qW48b zQ7QHfJcg5BA@<)G(Ed2_f{Bm-8;df#7Yx60PT37Nm8XbjcR*cv+oHo}KA=oVnHbsO!#{oRQhWx6;?0Lz(CjnLJk@A?TbVOZ6oyz_y@0gD24`s! zD3Ln@F6sI9&+8DVY?bQAB@zfz(CvjrE`ljDXyy(3Jhxx#$wIfRQu=k(?IWB~#a>=! z@fFy`k0ibj)t!=iluXo~s6ZC79fu80SIQqVxR2hYs{^fX$F{L>DMG0_eUwbJO zIDF6KK|%e9BF`zNbNo+mt+lnav9S^0`2HRI(h3Z7RG1Z`twGSkc)rF~A-@NJo}h`+ zCTQGMXNA6m9CIWdeUb>S`SPXI6B?WmeS1r-fEvu+8>5K~8}xYZ_m-`^xeUpf8(Hit z2P~!ROpe9{SHt&SxtY5rE}ZvY!o)^MlV8F7(->oNe(d-zJF}U1HN{u#iv+Zrz$Ftd z8cDuVC8%;rpfM4Q1Ft1E$p2{XqLlDx5Ln2?_&Mb4=d&Qm?i8K&pSiiYbvP!0Bnn~a zfLX#=VdIsSzBOuk`p6Cq06|0xwmb^6ebIz4@&iA=)fcy1D(vk_vud5biWlJp>{qAk zjLgDwoRHlq87xWyrqGWh-+y}PtB!8{n4C!a#PWe72-nTpcA8PF>v~Cgl&+)%TGVS4 z&a+k!kM@TAWOT1A4-v(@D;O;_PoY0GBct*C;Ut&KQY#3kNBcjqpc5&zhp*cZc7;VL zMk3V@MCMbO3%o*uVieR~zt*5CR-cW9IhZH=`ST|T&M48AZ9uF2PFmdy1}1D9DZF;$ zi(fK#>sZDt+6nhOzoAKD_7zBuxQ=#u_FIGx`3gPF-H>#;z2vKSnUrzxzHW$=lsJDbK>ns@9 zgLQ!9WR6(l4vBo-2+sg^tOG#QS&|JC%34pU2up%+TR8#e)ph)yE_$Hxm`8LT{ODGX$QN zt&1EyhVJY?X>_yyw_-3bUR5h7*ILl^{;9;jKgI=t{O=%y6UsHHg;6lkqf2kW$ZsBki(z^?nQ*B$Z?FtuQCvsuo*UUtu}MkMf1>HV{j3O} z7F?d&Dg*dHB1|l*KPfIw3a0nrZ6j8@A)KWsFE9QM28TC`kD*wM$1yc2w6M;&E&Kz# z6JIy($pigdJRz$#uVN627sGd)SPb>}ij07V+a`Vl`iJq)qJD&1y>a-ATt3;LpajCQ zr)!X2IA;Y_pw5V}j`u($28U&T2MXipm>AwUFwrnL1n6kY8MR)$S?rR={w+;mZv+_8 z=%Of03-Z%fQe=IPiO(!<6bglp80fg6KIbDTZQE$obt|GJuJF^1uqjR zJPxSi@KFH)2ogEyc~~Q2A!-#|TCeHH=*dY!DGPX@s2nvl2&}j(-*y0rBv}j=G$MPj zq$sc|{*9}|zVQ4AOgdKBUpW_LibXBbY@aYf&Ch&}mS}k6x=nkc7aOV{o^qgXE1;?l{doHr^kOP6i!?1+-# z!!b#gDNJCnBRyZ+uI7IRq__Ykm4@~=X-hLB;SO2tRI&W%+TLCiu0;^NNMWD?E@DB!MfC0LO8C{8Yl z0_D@vnImW?@=z~Y-a8CpX@J4~VoD?e6f2 zjd)l=NEghfw)*->kq8%f8n_}@1pGfOu0D;!Jg}9>)37A=fz)g|$fNLLgucgMZZ`LN z6HfiQao9T?J_9Yc^Fpxw-QVySdOS?ib%+MVyTjj2A7voL<>lq9({K%l)0lZYXr{y& zxVTRRMz^kxj+%|_FVynH0A7O=Etiq{Z>l;|6Y>yc1yO}(Awy*-F=90S0lg_T9u64! z4wu45;CQQiUSl5%QxHg@ytsssLEpzfr_ZQB{z#J1<3%|`02f9dPQv^T<`RR%seo96 zjNl!{g=Q}NGs zCJ=Zh_oRJGZ4LVoRbJ{eR1vN;yq_kzQ9~DBR^hW$X1HUd53VsP3IXLN-X5kghkn8w zeBs#Ws5Dct-uppc`7M$`b++U8rd|GP`Mp~*t|&ef#RVslm+n8kN$HEuFD6ICIXZ0?rI&`Z2?XeJU-_lGaH8b2XI1z&tKlF8)`-L<{#zM`{?^xSS5gekId3!iUOwe4tD{mm{-YOhW&ydxM?$DTyT1=unF z{%w9&IrRz`sRn+2W{SrDqJFL4gc+WZW<0FPRMZVPBYQ--Zf)xS$l5NKg0I2y32nGA zmeG&#hJ}yCdQ3#fI_Y}MNU0A$Y7q>bd)q?&ejaBE6|Tgk{zMHf?3-YxB}(wSH*b=@ z35uaaN*>c{gr=aPBljUI|6|MkwtF-YVKJ9`NfextkWs%_|EMa4>PN1jWvYL`n2>hY zM*fOdPz3ZpHM%p8+&~rU#3OT22Z#j}?M@Fcp@&PHP1Gvbdb;b9)>7^e z_rh`bfPRT?3Zesj8wz3GGuUr^4x|m#I$I#9t@T=m*QFd$elaE{Nbn;FZhd-NOQXB# zxm4Y%?$TH9acte?dx_*Gy{&SR#>BUFgHsYFMlf~u1HN*yp0aRyu;47w>oWQYZFz*} zv^CW6Cdu0MdWS2OW<TXxLL4B^?lFV<$sJ~fz;sbn^Vf(Gp~J<@?|WzxRblrSvR@= zArNq&CV#S#@(S)Hx%4xjv1rL?^O7@4#!pKVZu_5>H4wPxGingRic z#W@g}(YMQWSUWBa50E|4ubODxas!Uqw7q;qO{C!ekuG8reX8(=3r1Q;%#$rx4F6+B z!j=ca10UW*rX5^w{}aiCQkUPJ1JnMOIs7qf4D}*;I}k@Ul+!;;=5(7p?IjDD-QR3% zMQ=2j%$D|rXOQ*x7kMDFr^vz~!D}VsFfC%3$o-04i3V5iM_;w`-X9_+&A6MN3+&kpxL8Q@zJZ0xeRCQt>vv<- zwP^J{{uLJLf2&u6Qc*zYZvynI;5|8WuOb#I1#UW@xhq0#=!zQ<3=pI&0n9*(pJJ@1X4|uKI21M( z(H9kgSN~_BTog5I3)9hI=T?@{B4h=!R{sgi*5!!?Q-6iC&d1{FD3Pds;-d*F)Il8Y zhiVhSZDJ5hNLtEj>+}iJZc6GqjTD)OiM?UMX%X-}F~?(LQ28jyh_XY!9*z?8>6&k8 z+qq>~KI=PZd1+vFZl;~2bVG~OJMHpPQ+tuf&|nFLVJjj|lVJDse9tbbzB2lrOh`N( z&|`lP4ukd;+xACU%!)KtoSe9J{nJJ2<7Gi1wurbu7kpWTj!!p_h&=o$5S_9(2SXTE zh)|B#So1z^6MGFJa~Axk@1(bamT1gLIu0<>??#g{yFjUt2_*UB-^SI4!DTe|fKF9W3!Lw5yr zj=HsX!obciM%bQ>Pwjo@7Bvt8rXe98y`ND6I$Pql8fGLWlBwOT@IVBYAfg9H8P!0-_cd;>J zz74|<1BNl^WfsVBF|{~KDoZK2Onu2^=7V_Qtk@yF7r$F4Ka^{NTh;#0CRM8*&yH z!usppUjL-4*f}Gh;Svbl8fQ=~vNJ3xZR_v!a#2!K+^EN;s}QJ1fUH36gvpBoeC7|> zi8jqTZ&`v^1>6eog=&lh-~P^EA^P*RGz&2)fwP-rI9wA|lL|!-65xiu*@U=1PXy3>7Wg~ES)qz_VMqOv8*p7ANS_mODWPr0fo{C$#5y@0~11&|EjqKe|oVRPu zr*D{kOSaX^-T)Uf)N>{_wu8B9V*ZyOOuR|E;dYRb?18vhoVaI8Z@(-~+y>D#_E3ts z?f~<@g4KbWmx&p3q$Sbn;k@86gZ79>SbwQ|jcM0!ug~-_@)}Kh${&#~rT}B|&s#av zXZJgV=&~cXE#}(P@^$!+v^|Vf(WPjpD$kiC~)=CgKR?lUA7;wr;RGy9Jj+n)n4y!l{6NV`c^r zJi^`n*?(U@S8WjAOv-yOqvkxEBt(cO;9cXjC(99j_}eA|iImMWvB10uK_Upb3ZV#w zh5~?-+#i^aJI~)p8YprdLTlnN@Mm$*VU_~~9nzd4VvWo2AtHC|rNAWqqv!a@K(@yMy#E9&2V%1`)@L#D<|J6m!CA`_ zAfT24fSj4#*vBHP z>f`r930ZY9NO>Y1guz)uesf&(c$3I<&`F74Ectv~G#MSMayBC?%htvQ=%^QqWGkqK zTP#h^l1A=wIgpCV55GZ;#HpTl`YhI9=2jjR@#!A+%A1=?jfhPU_s(68U{8XltloZR zL08q@{PaWp!HOp|Q%~aSe?hMMWm!o?dmzs-N}1m^YrAXnn9QtvWSAyZHvi$jU&ydX z(R5)HVEGdHZRDLrU3;9H5{$Ctq2}aabPbOL9=L2UJF-yflC@PPE}CZ9aatUJ z23BOc7e#D3g0vk!82w|&mU<|{5I@4+M`8K3fdOgwASiHzDf2htS!=nfRlA~j&o6-A zNnOw5E!RZu5#f=DG*r?bmDQl>=$IkV_aT|;7;2xBWs15b?*7|XV?DY%zbHMaO`l+9mfyny zkCbwh2K!WW-+J@z{!rLW=gE9&+9=^H&X$9NU9%S=ZY8k2Ol0A-wzX z&jP_>xMTwFDh`+58W_l1%TNegJO-}g92|A93lg7)auCuY)Oh>te`#5SU{gDUR$=+G z?s7LcO8-#I%ed zzFz-o`;*M46HyYDW)e=y0(euf=-JmA8N&-E^}wzh&s`+ap z8)>{^%W@QH6lrQAfk&g&H-c}V37Dpa%hX?aX4r3@(_Rkm!@87nE#-Gc*hd>t<|V}c zw?7vx5gX#1N(iK(W|p_UzlMt$)f!DN5tEAzc}SRr4d9O(dTbF9U?bazJkN3$K36F?w}XV0}I21 zD4a8;T&^{2G5e)fZUH2D>DiP-{p#6Wf&pLS;G3;o=7D(XD4~7J`|DG_L23k`Bu?=v zaB=+%jB;^#!bEUrXx(xa$q97K;n}K4@LcfI;h8r_S?dDNzBB$D24b6_4WH20NB4En z+{#Vh9h#+BtKozfn5v3$0QWmGXE(%f(-CFPu8dEg_6~bL_8M4N0U=06HstL!*K|g; zZM6K5N53k4u?CoBYrsE0pix3_@BNYM3;aSq!Z4wCCb(a?+=L-hnlowO*HaxJj8HYs zxm5v+Di84$8=t+|xEAE$&qn_#(NTks5}b$W|erjz#rBZ zQ=IWj-z4PN0I9{zgcmCiYg=MMnCaAMsWsIIEPowzk(4)~djqa$anxhA6~#B#8_5B} z6tS;Bclc9uEfUNJm^3N8B3?zdeTGd% zUVTbRT*3z@78o!@IR^R7%vv?k^|dDYu`}kpw)*Z3ekq>Z0Rjmf_ix#ahLorad=Xg_ z`*VpcyCsc;kZ$d>RzsHiQHC=<33cQ_Us!nR63T0w6Uxf?wl8G@| zkam}pY-Zc#(Nq=I*Pk>kn0{k{EC@rgPw_lFJjRBLlVADIs0wCgWo>V5(WLqk%Qzx( zGK&N8)*OkG2+_V|i+;;*U~dE#NP$4sv&edu|+Xjjic|SAGKyu4n990_q#;S-e}o$oar2$;8w}`L(oaVhT2SEXa{1;390_m3 zT%yv(-cXxH75e0%=?z{mpbX<7%Ej>!$iFwEy8A}^e~VMcy4ryM{weEs@$`YUuYeNe zH~A_0=@V^0{}qp=kEV(-jUse+G4(6nV-pekwPn(8Yzc4-mkOJsU`r`eH7IOxn4$d> z#i06izxG?R^I@i*;$KP8dTLg^-?NpovF2eoDe8J~$YG?mB@q;*bp2Hm4OYV_5)c9N z&wsYu%ni+z&G91ZJPLZ?xx-tiRg86{z=pfOwMY|5igPcCs%U8VX%(ApCsh4C7Pq4ttB<3{NKQ1 z7kwL^FqC&Sei3xA|a2SjEl{%XVi*R zgSd(M!B)x?B_2tGi7)vhwo_tn1Tru=7Js;y`TO@T$7{In(c<)W)Z7Sl2=JkL=2{v_20J zxBk$jVZ)Ba)t_B@%`{MIuH5LdOg6I)R+PMsRA)VmsLzo#3!bCL-C>JoL}*#W_pn^4 zB=m2zRSbQ`a@{m>2(A(0io!w^pj(N(?aVd&v1?3o)aRO`J^3ZtIOcg6KF_)?`u{tM zkj)#Gl*!LW;2~K4?|AYkuXOTqUVilZfjX{~1l?rzdXOHRg7so_Kxzp%=^d=PcKKVF zr$$OmMK=@$?WX9UXJzK_f2(lY)_*pnG79A3vG1r4x~n-d#8u=!Irw(XPeoKv$|;7h z0GkeT3MU*o8D5cw;2k~~trIfeiHbKeG9rm~v!1}2f^DoW6^y7$ipR4~Zt<`** zSzX6lFO;<%funQecBK4Mk#lLyPi-mI?71^CS1g)POtO z2_xXM+M+3u1hwS*e<;{Jhelunu>8&4aSt}L8%#FG5_9sxUpgr++uZgrQ9PcxjlJr+ z?K7}r^cSB*ml-6kS`08mXI|ji-relv_W+Z;OKsBC^--UXCtwU*Udoj9UG@=KPM8Q& z&jLTPB&C2OKG_2Z!<^o~HoB1r@PU7!<5v!QFM*Gtgo3&{Ysj5}7%v$&psZj*%#wE7Ta%pgY77eM?MF{h#sGIGajcunHj!+2HwZUP5~!4C6~X; zGJM_SXHm~TAz7&xJhA>&$2Lqg0K@N^X4zw3>4(PZX8%)5|5vhDzQ`?Ly9{VCs1fy0 z$?;4s%5`E_qU#{`&JL^6E2TI{zLQC$ZVEkOuQ&-~q25J|$n=enmenszzJRCGq^m7N zK?rAC$Jz^D6jxu8e4SiD)mBg-iSW{HzLoQ5cs=51I~2Mm!^P6RM!DBvUL(&(;zoqC zkWwX;jo)_b7NkyxKxmKSp&3U-_smz3m5p2)y8MzbJ)=pF@Js@;4D9cdxQvd%RN%(? zapuR}-Mh^kZ>G}VhlX2tHCmy;)JR>er)-QPV*hN7`9fd)u@HD3T83-m5;uO7D$dq3 z^&1S@V$~*XV2zFZ5m+xoQsuJbwP1omuG84Aj{Qvdz{Mq0eNkL4`24J5*Qn#G{3!$DjkNTCoTeYax*AwHrKbJ_;67T^EzSvOm6Xzm%`#krl%4Ve zX}{UN4phdT++&y)iR6oJ6##WK;EMeA!ECITN+3dw3Z9ewjZ=ht<|)64HH7`s_3tuo z>)-3J2!-T@ysB5ePBYtGi&-dzaNfGM`P*MI_S`9kUtuSXlcwiKoEPo4Eq2V!QB}P1 zhe8`ZcVIbJEwOT!*L55$dNJMS?Hz~rjL@Z@^&J&c&HUksu}*B02pBk#A|dQ@)rGg( zIqGj>e6!Y8&&EV!X z?;yfA&fck>U+;)s@$lJtN<2rIyilN}pcodmghtiv1W0SK`Q-`;Zva_>jymk6RJg)$}Z6B4&;;?<8@ z^A8Khc}5qkANJLfRc<+k(iS(RP`9>9qwvt=v4)ag)%IbSI8!+z{07-zo$ZszZ(PpF z;}O-TkXnT-I6<4GPsLu!gYPNRVRK&^`@?)A$R*}YnIT(X&mH(l#ORhB^J|RhJ1-isi)CtFp;Abikrke-{*u+ zjJ6t;R~vh^l>EHB4sxTn@Xe@8EnF)?j2e<$>;2+&o%*L_qF{ksXuQ(f3QW}G+T)M& zjCTRkn;Ux)xljA$cuIzKIlM=$<$u`WMM```&)t7kev(mGUG~12mUECHfl4AKxy6p= zC>mV_Le!y?Bj1=+yU8$E_iPq-J-SxT;S$l$X7J4T~rC zYdrIBVpad8^4AglnZgvr*?_>4Vu{fg;^1-*#|3bE;2m8JZ^C9`Y;!Vkvj3s@_RUI- z9_EuRT&cWQo1$ukTd$QcM7PH~UDdl$nP4`%1 z093904$c|_Mi*yfSueXK54*DeK)2fcz zZRW2&lzDQ!G|Rsm$jyz3Pj^*JrDlAK^>7(g*>rrICM)xtFn5vSjXr)kI$mvA@ zQCMt8`IV};%5!%2tKhuMAmT za}CN9cedS5=)RB~IvGGm!fu&-#>5IGd_7!NSfLgrO}0Iqc#-@=+r2p{!;YF4~ruRQnul$=&U0wb8H6 z3Mrh<&c-&8q}H4FW7t4!dlU2Dzs#*dNpBODrMvYoJ|fy#DRLf#bNUdxOH2H-s6MkyZ8=nJOv$k=6s~?)pllkujq$Tgo zs~+Lbe+wvXicG*zgE+ApANdMln!I@;iK61yx$gV}_6ADjvWu9{9%mZLbDlamcUS0y zDSWSh{$b6)Y@`96$lfb?Hp(;yb{`*)rV~;8;1H4g9jSsNy)}K`2L3R$zIhzKCFvsc6mr+CX#-WZp>1M-Y9*UJP~M{85!z2YN^5~XQMX$dnkgzonfZ8pK3O;oel(- z`*ZuQnRw>Vq*i7Uhwm-FtZg4hDrACnF)qB%1l zP$?XRPdSh2_qhGYuM^VJ|0s*$;HCy+%e{gZ^cNJg0X_c+bp6cXE(kS$tk0UgQ02y< zzcr2^SxxW0Pi-5=tufB1F^v%Ub+_A3(W_6P%oInBCO>>azOfUxhn4&!Y=QI3m9Ih3Cvuc^`=& zCH(e7Q)OyoADqUw?TxbV`5 zSQnZOG|9lXKd z3m2|8M@v$8!ec5+$&LqclAf`->FCStUc}gdCr%4!;t7BL{51F-t-i6vc!f8~+p(#M?g4|jgItuW>5(R zTupYy#2SO1pKO<52W3_a1^*tY#Ya!jMMrVS{jvE!WUgF%{4(xo(KU|=FB|5U!FOQKjLEO1EqwHZWV}XeEV|s=hD$vziqke?{v~n|) zxF@(k84^pXEimrbj}^D*+P`Rr@JH8)Ol^HuCQ7F*3PJ!VT`Q1)G>vqB=n&aP| z1m7LUAJF0aG(3f7$cujyEMWtjY{+5A!HiZGDlPh#qdU6MEibI)xNs*!5h4rn z=x_|gyxxUxtMiHzZPCv**u&==+vNOrV=G&N;euUp;6xu*tOLrd=7y+M5|5n*375LZ zpCa5IGtgYBhx^Y-CjRTxTfAqSCfCwkGPQ@C{+I~yu+l9i@ zV6fY`cArh%Z8IgZI(A-^>c6jP-sP6fqVAnKiJ~uvAMKi6`k{iB1COes(T#!ymK~ikMjrZ2iWzEs ztF0DHsg4#eZpWrDcP5mIp3(7!VAonPxL=H^7I0ybdf{=byPJY7cbR@-!u!M(Sf(!W^SJpO9g5BCo`l5GQ$fi9=F(B4;N#_Q8l#3AM^Z_ z5QXqM;1P4mcYlN1g2x;qU#0oNDpDTkdW$~ZuzTgRyYzyb4lV!TvXxN-`QPCO+q|0} z`4PzbDH`c#%DN0q%E3M|q>mS)TXpoX&)+e#w!+ufGSAcl{x7B&oQ_BpHl@rUx>JS6 zmNS+GNo1n&^+Rx+@ix>bGBy^kFlzK3aZAx@S1_vWCH7j_3oLCaIn}cEc7GN4gPTyC zHb-Bd-PG59c-AVxSn{dv&h>9SX_dhKBAXSf))@uTED}7$T28q>u7KLw$MX&0QqQa4 z)f-0CjeYoIi04M;4^iE5^dz4p;nT{_%7nqM&6y8>^8QIE@1nl}A7b20dIyzmRMi+1 zXbh+Dr5?jw^0gVR?SH$VXCc!GoE_zg;_LH>|A~aNv>jv0%4!=n3wtV3HBHuLNQ1P`t!u7zlW``R{6)+L1+AT=x~SPC~@V@N4DyvMucRC^WQ$_9^7K`%O19dz$|Pd z?!Jp?wN?APJ@ZgH*;oD3Rqm~-u9JmNcE>8AMM~pBkG*3M4380%SYtX8J`G*<;-abd zz61IOrF^FQQYG{JZwFPyzP8H^R4@J39`z8fQZa7QRgH^kkuR<#OD81cBkPoNoAQN) zV`+gO+cZ08sk6fhCiAJ?ufM8Yz~=bx_2#Yf(U zPm;AF|1P))ru=m>YabJGKMbq2v#_8`Whi`pyO2H0;_K%(I5gzFJGlm`P9XM7OGxs5 z2sEna7Z!H5wg4(U6>m`=)ImFd<`WnKn0!`NbU&~?84=*Z3P62IqN=T@*OK|6SaP8F z{PeWQx#@)2=J9c>tS0Azr-RQ(y= zj2UF8tzF`Qk;v`r;K2N=KLq2zg5;rU#*CGDX7kPa@d82lCiLWD+Y@e*lWH<{B1MRk zKsp*Uj}ngpV@nGNd1x5CM&rsVnz9!mdGEnYQO29}zU=|v>;1Hm+ePYw0-i!cN8{tc zoZ6s97YWrZgZD|(`lJ^Klt!2T)%B8+>h2EytXh`EGJ^9+?kSgA+OQ&Lrn`GEPDaQm zER!RrpzyZIkO?wt@YY;w_=ibpdL%*Rel;g*KMV#E7rpvyHV~-+NZhqAuq!We-F8n5 zG-G;tLIAC%;5+F>qG=tY7YPQEN9a{YoYZ)(W`)!0X>vxT%pqL|M4aGIwSnVUjRK>* zh+#GQa=VD5si_ITv)5W?iAYFdk@~5*F>FDWI9lzQxU~PRl%v5Rmoc4%g90ADr0gn= zkiV;t+80_1A?qiMUna$WZ8T#Fsya!Kg=O})mi1kSUjK@?R}kb(dr|z#V8Q3!iQe?r zUCh<7*`s{%Tq-Y4W3kO4M}#w!o|)MJ)DHSg^dHP0z~+Wnoh5WURXluo_~&&TP+wB{ zETZG60>)cF?}{vjY6w2;%xaLp9YB<)5gyqsE_SDY;T3={Pp8r;9NZ07XcU`EK;%^N zUZa|stpYxX)fZm1O!5 zB6_v4x%!h7zB=(Xk=!gun3(GIgB$ymJwVziRE<#5COx6eOxZCmHFncntCV@pl&55{iU;>P&y&K%guhIFeZnuc}E1@3}Z7&%`cn-F_bAxAoc>fT}lo#}2JO9N0|mn;Wp0WgPMn`(8>!7V*G zwgJ&jje}A{Kez-v7^ZRC%3n+2Ew!PHVr&Yc2zS=s`f<6?MvJolXvKW0G#Z`$_m^$? zaQRapCCOBjA;B2-Rvs=HS(R;=5H)qE6Ev9L;fH&UF~Yoy&;yrEU~Du_DegnmE_@Lc ze;q=jY!5xz>Ot5X(kNN54XTU!4mFHJzHB*l%JSGydk2bxS7zKm;U%3=M9!%tQicU>hyw)H{`ApL| z0#j5AQYdcqNPTNQRf4&Tc`1r)ENy$X+2D7LR;E9mT6^7Ar)N>!B?vT_KE* zaa>%YEy26HU10)#P}g7aULb(!Au^V}IWmXeUMKb!yC(?HDXp#kc+RZUIQm=oxy@MN z#|*DiAJgknVZd$vmHLg%?LBg z;BJgb3N8GHgMmKUNFt17hEM&JQG~WZOBIjwcpu|7z*+$k&;au8OJ92GGC={wIO@`` zhb6A7-Mfgy9LAEIZcg-Wo)$?nbRnqSW~a(-*ugME{=Un6zj7lFldpxATvqaEFb`gy z*!0e1^S>nuf55?AhyR%?{0)%up3x+LSJj-XRSo|Z6K`!J1#g9MV3_(a>fMpZS2&(} z>S*Lwj|?|dDCYfdr7Haw3-plha&(fy(9zJ$ThixHj=8zKeOEhtk~1XlF@!ey3c{(f z^j>I|bMF0OY`)j*4v$AciA701Il17<**`}=^CCjGbcFzg#H*O>j}%-B3meNZ^(#UO zCtR7*6;(9@*04l~2$W2Ei;APBO0Qp|Hn;sK1P@A5u3QJ;#$m|M_`HYDNFVEjf5=54teieFo4x<0)cOchCheiq(b7D}(QlAhQdFH5S` z`qE1uvbEPjBF$IMTR4`AozQ|bBI1MY!QiFuOdU-Tkr#&Ndjbt3^NJ*4+=My)M~Wou z`6;@X^myfiI9J1;3+C6V^2sMaT#iSVLM(A^7O{cx%Y3&OeKaY)iwp%KQrv4nUWrcv zQ?|0q_W{|@=?;MwCFYJMtsDgzOVkQ!6$BpA`47$&-c(+J(u?9__!@?#?jUm0KWh1} zbcA_j@70!)2Q9~lv}=tlT11+YA)Baor03XHc4$+&v@bL`rkINYWaDJ%;%@PStVI13 zS7}mUbnrei>@3mvAn`gz8b`-rk=L0Bxj{qR!k0c?G5d#lJasZ*VXmGgsmk(xPvO$Aqskvp>V5o0%-v76!yPh z%DCAVx}|m*0GfA&^90|DsCBq%aJjxy$El?wYy#8Fh%QVCo!ghL>?b195G z^f!J%oOu+B+p+z@pI(84)jN-#i3^Wy_&pLK?UE>KT7m}h3WCn@0|DS#c^L7Nt$fnQXLe@JyD>iD$8E1d zOs^f2UbV5bJPpezfN22Lb3!m#TJu$X-T77c2*hi$ap7zUHO{ zXFi7^Mz=Sd(AP)*hqxleh3_G^wsxG7U{+&MS@3dq03^8M z;kPK@QOe^Q-(gYfy~YT21|VRJL^DDiS+^ezQonZnfI&QcKl-?F5rB&25?lbo%gnSI zWo~>Xlb;>Q;NqQS5fQf)iH;*}t%lb(m-E*tlS!B}`_a()`mz1pzHAk2 z;AhzmrG-YQjv_GA9r_Hp0O8OpsmpK#L180gZ&#*HIb#Vewlsbe9X; zeP$oD17!84ZKTFWBrY)}R@=0UpYrzi#r?)SGT*IwtmvU51_QFj#i?%t4XD&MwOB>_ z;mHVc%_aBqDimmRhA9`3xZ`+5(x`_cM$TtQr)5qGSwNO`3bKg;GVFxJEK}Tgh3t~< zk-VuEcpN`(Y1;R{|5%ACEmQVl&hgre6{ri&`DuwBOfog-jF<~o-Eo~srq*Q>WDk}K z*d6&o8)n<7VFG~CcHTrPq{2Sx^(DmMSZE>-{RFrW$R&yGu)Z>PGb{kUzcVGnsi_vfVa5FG%}{-Ww4&Nk3?RAs5$XN536i(CIVf z1PYDd?jEf;G1&0XQX+H*8P)4{0q;Q##Gjq?@wr!m!nU26C18H1DWUd-a`ddXpT>r)x!fq z5-hsU4TWVEE^K&YL-h6Sv3hgY-)d|4|C@oe=Z_*QZwxI_gj(Dp@Lm<0}y+wzB~rF zgJGnfn#}-()*`uBDG$(Fiek$O-S5I~d+IA4$4!4#h4<+q;Vx29uAo+VoMuvhWzvV) z3fX8G#33|tVYhrZqL8Lf%bA=S?Bt0QJM7Kr86c30iX!QHHbDLE+)7eT%1xd$WmJG8 z2GoIo>Wic8sP3NvQ;!Viy6^3JI6VmwOVw|(N!Z9xz^N(8qXof%sw7@e3%5UhuljSVGd5y4S;QAq` zW+IOL%7YT4lPjJZ`CZLshoBay3hKC-n`}4U?t}t0ZzoeyOXoA>nI;4KwfZkuBrSw5&8>? z_1yF9wVNXksq5Oe4BCeSAdU`;b@cKy$QH7kV+C-}kGm2A4u4W2aM_1%Ck(3!>+_rU z3Zre!M(DvA*urY#;h2;wK%L1mE~-VQU8WwG>@<%9>s^{X!0`tFr{EI06e3AUd#1C+ z^Zm;9i<>W%Y2UCcDHMhE)V@BP$8^TTRHG=s3l_ZXrF`x}X@s^g3Oobgsi_};e6wp9 zqn;VW8L`t~Ngm^L1DAHF2H;P*8UG70AAJ8KOke0`p+dPzk}jZNnt!JY07pc9m7#`2 z5x#ECiQ3;GM1@gCu-j!H>FK>t;F3d^N=;658(}zvZsi= z)K6wf|BINfcW!8@pfza$I=<^#1b%K|0HVj1et5UKs*KmV=gC8L?_}f>BR3ZuQk)Wv zYwdTumbaGgBC2uU9Siv`(bh3jtz~drM3$~c*!2jjTXOP~_|j?Ng0uPaQHDNX)b^ZT zXbq>b$n(RqeuI~+V0Uxui%0-wih#%g@l<+p_~0qf-~oaGMeDy=z4uptYheQSLmt`> ztJ(mtSW)a*H-P#gk2N9zr>;gIwVbgTHUau0=73HHyO$8a=)lrxH|s?dRvW3OgCm!u zDn$Q*d4Z4snIKj~7VnQ;GXgq|-AI)1U#@^WS8Ae1^FeKan8$j8#u)~7T(Y|YaaqY` zG&3{mRli1(={R2eUg4OLi1!y+YNTL3I=|xz8JU`l zY{C;jCa8snjv*TV)>0GeAES*ImFkzeOHL2emJ*c=p9WJ>l3~fU$;VT?_q$4MGV(p| zhm?M46RYVxmP|lulaXWHYK5=yfAVJTV|znbv&@(rK|goc>i=d5p+y!FNhk2zujBdt zkh*24!EV~1@dG_F-^mYH*GAPQV%|M&HP+)|H%2do zGE_hxhj=$to&J)s`TEbt7C#1oLANP~5*!H%l(lTvG3sFAP>6bj)7e@#Bp6Zba)jsS zPc2IB)_~``-H#MVCDn`)4cO;>xN4&3bB2!2Xj}+1ALpw&{!J-A5o|1=l%vE-*ISQb zCFTp|ODMwO?ZN$y6|p*=mg3?ec`kAUM9?xbpsbsKTtU6fxb>bVV~d$2tI3Bp@2i6p zfh565OkNs}_A`(a3knps31DJw@r(q21Ufk>0#daA&GvloV%5A>Jv`6lAzlTa@8iz>BBgjG8`kjnY7ebh}E03v9-h4utNA`2S0 z*HLQy@A9Md?ci<@jp@c+aT)Na_+Q}9@a}zLX{JSWU322r@^@tuT3`ZmWup2dF84!+9h~vj;)gh{&nHEv{{hI{Z zAm0ocqrj32u4rf5PGx`^9RdLu=#l)bN4iik4Vsi3oP^HEEChOQ=6I|?4!b!16nxni zjo~=v>{ASAj3)%eVP~+IjzjrCkBsxOPB4Ef;_&QDj}~gNswRfA_#LFkd%l#aeCZKd zOw@MXb@!HZG*ea>k?tVf%XIyl;2 zZ0!#xZB9c=tQ&Ai@64Lb%Kh}v(|vXnW=JJGC*+zh0jyq;Xg(fwR=J|S?>$P91fCt&1*lbCs zUPb+PSl4buil|`9HjmRC>%^EEjMny=VeO9YThmTR0nKFdSr1w{ueA|bnJOp{xs_55 zs>THxLFhqCVNnymqq{(Mlfokfp;aKHlMqDrfhuE!vjrR}OtAI;6;c+~gCP){ zBXQbb5|mvcYuEy~A7OKWR5 zQg!TRFiO}N?7AQi5oE~=u1@ZbB zMf*+FA1(usj(EqeQ*ci`!-&^d#8_2BP?h2!G@nH)W5&%KWqw7rZ`XaGfs^^*X~(1` zMj7`WULk-35#hc(%R`8AHJbHIl)p8C)%`0x&9>}X&b%T6v^7jZu37R3v=lJ%h{rgR zzk}g@8-&KL{wZtq=0T#5atoG%kQhm&9*>`@KT-$^J1a`)Up<~z(Yo-{PefEKjBEq; zgxD21g&?8i?A+<@nHU*0a6Jq*6eX;u7@Hg4{c+JIPqqgnjlR8qdBV;qA!!YJ{y5+H ztYb*kQj3&v2zwq_491beGPC_rU`MUhnA3pF4xf11ianv0`cX3ZBkj|`ES!JNgRCyd zkYf?vh%fSu{@Z-?e1AF^Uu-Ou3EZ5LKHFVLq$R=u*+If|A?cc&)If3$Y~I^Kq%DEQ zQUfXWaB^Ti9G=)tWr>YBL+vKQ%iqVN1lq#m-KYT^@-ltPIuWJ`Q3VR@6H+;ABB*P; z)Q6DMI2r8)*8xHIg!hjC?*oTY>DPdpYk^E+ZvIGq<*o4TM^p&h2cqF5ZEP_iO*(Gd z{6}mr^_8D*kOH`6mdH^l$lgn(31y>3;)H&$psEV$2UpPc@n&Puhrc(-hW(1BL4rYJnTC~F<06#W*`=X9F-EpNQcyaK#UqBL*(-K&TX-F0Li>#)mni1V#`lTd zSRb1{eQcC83HqoLcq{x823E4GzmjdiL~-7|=)r?oolnP(I8ddD=CW!ji`mUGuFnVB zTZDt+ZUh^!#(0>xkFt!*>P(tlcsMLlp`V~FMVEtX>VlDQD(}k_$C9)1WOcu5qR@UE z5>nXfI)$A_QpD~JYjR(rbyxbuIpSkYe}zSIAmSrRT@H5>m!3;m=l(P{w)|$hzUkL% z<>JYK?FjKkh(DyEzO6l1=$(N*msc1rUuC>NMda2Ba!m>F|9`0xq*v=PM{tL1r)&Ly zC(6q+s+&x3jk2+<`T~zMOE%?Z{)gnd=C=cZaG&Q$C%)4(%BbR(qboDj!O{qqw6UP4 z4yrlX(sb~Cf^5Mi_R^5cf|ZC|JANEQ8f}Pbw2}#}*$iQ+w`YpOTpkGYX!Sg_-Z42v zskc0;XK^CD?(hkre1{A7OsPu+M<^Vi!mROg{uGP>u3Q$ZOj6+i213e# z*v-=B2ZV`H$;J&|EG6D9Eg1})i6Y4fCH`(AbAliYXoYW(l{9q$pq3~}1LGQCRD>G6feH=yMj-T%;JOqeimA1tO#owO95av&%;oPHJ3*fwJI3 z2vx)g2xr0$V}P1b?Jj^Ow3{N#ub85n7?RnQ$BIj!s#1z8V*t5Al>7<_}TI*k5EmhJ3}^q*i|V@S^E&FXG_&wqRQHKngP!&Ah|H3xye{)&q}!wX(_6GGKl zJ4nqI`Xjb0lc+_81h#~8j4~QkY$q7(d%IGK7$xb@<|)5LacakdBMz}F@fgE)j^TBW z{uYE!X!k~bU7~>9%t|)pVNAcPfPkcX5DpI|VVlS<#D5pV7?r6Fpc7$rR(|6wK&(hk zV1;SLc9%%O%g+`=-@922;DDU~wSD{MRdX4^c^mN{?FxEFrK>^Lwfbfc2Jh!f)pAl;rEL0{c7;#dm!gfstEjz?VWrlR070lY+;@?p{|&G?gD;PSvHvx#j-@5 zk+)p$T7By~o}B2ES4L$Bv=~Rcnp%!3r@iuzOq=NBe@xzZ{a5SdPi_8& z!ThlON3WA#_^S#o7+fwieRj5nUS6S)m$}F>qt-64Gxnb84gqc`{%ah2hO2|h|LJ?6 zBciDd`TVcD6CRi5^d0LRQ{8*ZnaM8LD(@bx!`2n{`lyjQ1eC-t=7brXI1Gws;ZdTK(IlnoApZy3u$i;Af^aI;N8_h3a+=i7$pXV@a;1yHkJE!g zCcKvP&nP+{LsTyan@2@V92P!Pp|z_mC;{8u2nigqRUAb0E1CJL9<)GV$Oz3_1mg8k zC5~LzH<4RLPg_sJ%L@InlXyRD_ z7D+gQJ_D+6Q}ZZyTrkQ(njW*9!@C0o_>-a+v*1Q?$%1W-B*p zcXRdjH?^9+y#Xl4rPN9x6t&=p)u=01<#kKQaW#zLa zKHZ3O8=|7^;hc27Jj=zBV2}x_J5V^SIbCX{bj+>ZE3?}EM1gfczWNlu22j%l5F9Vbk{Yn{*HugWjwb3y0U|+CB&L4~v92S%12hkv>;l zuPgEH8}%fW>|UJ6iK+YGkEz_VHzM#qL&l^hHNX79^)QBM6dcBhXbmq$8R9dQIq(xC z#l1jLV~r!E8Py=wQZyre94_S^TvQX626#kUn2^u_A7NZ4Nb|^iggO zEJd!-(#`kcvS6%J9bi}z3;JA9^0IVy?vu&6L{)BX(Jn=7QKEa+x1{ze+psAW4*$6l zY1H*ntolDaU{g+g�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

    C}T&{ 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 diff --git a/demos/genesis/Stereotactics_Rewritten.fur b/demos/genesis/Stereotactics_Rewritten.fur index 6e0787241883d467cf86bc3ce767453fa91137be..f2190c8c6ba4387a5c369e422a2d69faee91c1d0 100644 GIT binary patch literal 13393 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 literal 33973 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