From f1911638ba188b269d083a141a2519176a2f057d Mon Sep 17 00:00:00 2001 From: leomo Date: Tue, 27 Sep 2022 11:50:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E7=90=86=E6=97=A0=E7=94=A8=E6=8E=A7?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AIMS/AIMS.csproj | 17 - AIMS/Clear.Bat | 3 +- ...oft.ReportViewer.ProcessingObjectModel.dll | Bin 92056 -> 0 bytes .../oldSystemCode/frmGoodsBillRecord.cs | 13 +- AIMS/OperationFront/ButtonCustomItem.cs | 798 ------------------ .../DrawGraphManagement.csproj | 1 - 6 files changed, 3 insertions(+), 829 deletions(-) delete mode 100644 AIMS/Extensions/Microsoft.ReportViewer.ProcessingObjectModel.dll delete mode 100644 AIMS/OperationFront/ButtonCustomItem.cs diff --git a/AIMS/AIMS.csproj b/AIMS/AIMS.csproj index f84957d..060e965 100644 --- a/AIMS/AIMS.csproj +++ b/AIMS/AIMS.csproj @@ -46,10 +46,6 @@ False DLL\DCSoft.Writer.dll - - False - Extensions\DevComponents.DotNetBar.Schedule.dll - False Extensions\DevComponents.DotNetBar.SuperGrid.dll @@ -58,19 +54,10 @@ False ..\..\..\..\..\..\..\Program Files (x86)\DotNetBar for Windows Forms\DevComponents.DotNetBar2.dll - - False - True - Extensions\Microsoft.Office.Interop.Excel.dll - False DLL\Microsoft.ReportViewer.Common.dll - - False - DLL\Microsoft.ReportViewer.ProcessingObjectModel.dll - False DLL\Microsoft.ReportViewer.WinForms.dll @@ -409,9 +396,6 @@ PrescriptionDocument.cs - - Component - Form @@ -1334,7 +1318,6 @@ - diff --git a/AIMS/Clear.Bat b/AIMS/Clear.Bat index 129a5da..eaaca49 100644 --- a/AIMS/Clear.Bat +++ b/AIMS/Clear.Bat @@ -1,5 +1,4 @@ attrib -h -s -r /s *.* -del /s *.~* *.pdb *.vshost.exe.manifest *.vshost.exe.config *.vshost.exe AutoUpdateTool.exe -rd/s/q zh-TW zh-cn en +del /s *.~* *.pdb *.vshost.exe.manifest *.vshost.exe.config *.vshost.exe AutoUpdateTool.exe del %0 pause diff --git a/AIMS/Extensions/Microsoft.ReportViewer.ProcessingObjectModel.dll b/AIMS/Extensions/Microsoft.ReportViewer.ProcessingObjectModel.dll deleted file mode 100644 index 80fafae1871aac4d19e0f0839048a1b5f930c03e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92056 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�BH|8-M-{fxOywZg8&oxC5$ufUMHe}NjY}q z2J*Zrsm$|=(_7<~BfVGBi{l@t%(LilWiyLH=*4zlRQAoKb4?Dz)6d>)D7=7BYD;Rny_aeOIvxqRcc|Wwxb7?Q+54^N5nAIsA z3?83rJ!27vYw^Y8Xd(2Wrv#p+Jvh@_gGXlgpT)EgPegq*?O69 zQO^xXuNUs>c{|ekg@=1?L)!G{zFvorPVCLK@9KRVaX#<;1=7<}{y_RnO6ABf8q=pi zB(70?+9JItwHNqqD%bM4(8QV6Zzy~o>z4)o*{=lb(0@6Y)&Dl|w*EY}kN4k(vWNTM zi=3`$k0EXPSTFrglsLs$o{Sgih zpMrc7&2VAnG=EO;8QeE|u0P*9=31oZjJW{}oNM0<;lB800?!j%*~V`6mo+g>DKlHl zIPmP^wY(diJDNWV?gxD_$BusvIaiH80%usBef(U~KL{-^M~e}*7J7tf!b!rp!fScqY6Jpc%acnK4(#U#Hzl*v$d`)EI5Qi$ov+e3|j^a>FRUE~kcvT$5p#)VM zBU?gsQ+0o20@MIiPegj4MyYxsvMbaSqv)N;-cYkteH7V`_hf#R4z*I$sfbU}mQcD$ z)%d8tpf;&`CCUj2rMpZyjM-V(c8WR_aZU7W*dBD*9#h-q=moGn5o8OaXGASSlrp?t zzai=~Yftp*kV^Efs(sPxL&E7Jqarp(ZwjeQ->7;9wkq_KdLE9xGbED!P<1r=o{%WA z8}sOXX1yDI)~QAjsy>X~6;h3&Rec`4CnTC085MChx?jj8)JoN_(fgpJCvKsCrz~NmZ|lI<4v}QJ<;$ zThy1TYG1-Ne66azsBcyE7xjax$)bK%RU+zFRVzjPq3Ui?f2-Or%4*8}I~4J@s1Q|W zMO9K2S%ceBSycy7k*bD>idK~`s)nj%qH3$URaC61`$g4PwO>>tRj-L^tm;Ei%~bs? zs->z*HMwPNR5cKlpsJ0ij;eZz@~Fxbm8@!-sIICOiRz(hji}zL?huu#>S0m+RUHzQ zuIe38gH@doHB8l?qDHE!S&REHN)%tE&N?;tl;Gc?$fP=Kn;^Eb@EhxV3AIeiy(zY9 zRh<;IQq}jOR;w~mZWQIK;Wn4L)33rpYtX+$l~GFUS*Io)7Ii3MO6=^An)Ir%g|CXO z8CsLhsrop!HB?+PZgp9>r*3bkbX5!Lj)p2ywZCp2)J9cQ?<%P0RCN>ejjAi_-3nXn z<|gL8dJjPLQuS-S=b)ym>QnzcsI{tA*8dLb302S4uM}33POCa!KMtyD3lp<*gDy~s zs!AG+gqo=8-UeQ%siF==>}|w-&lP1xuqMq`8($S`Qi;p9P;F_NZ+|TwB=Qca{4@J)`2;^K+N&TeX?C{Gh74c>e72{7Y0>_>}le)X=;o zkA$yB38D@~?2&RERXs1tBdRR?e0(v=O;FpA#@v?4stQD9tK#{I5ftUCp+Hm_g*Uks zQRazS7G9&t?2uY?wXuaaXtJeJEm|qcyyn!R)vCIR=Z&IF%vyAt%X71;E#i5H%ky5f zJt?;PMU{o0Xi|*&j=DVGciBQ)1xBeBMT$BUVWLEfDhuZ`R*Sm0JX6$@N1_(>b$RBi z;x%21Zg!Qs-KDm>)B~apMev%gMGv`bkGs@CmwL&i-f*eoE_F&&S$I*i|Ea4i0V^7G8@IMfvLM;j&Ft^-#-J@LcWkyv48j!?xWh>{~~M*QN(VnSE<*+AYfL zTlvjz{%7{B0mVDcfZ`ozZQ85lN+TyC=0UB2_pLGXsw&>M#?T2>93_UnP{mPV=x0^D zZ;c_lE!Tc^IPY6ysG2I?x5iL?RlIMFp;oH?Z0QY;p(LYZ7aK!;Rq-yi4vqAybg0Rq zPDNC1b8i?F{RK5k)o-nwkXV{8>QL{z*0Z7bH>G@YH(jrCl09uhdQKJZX&cdD_2fNmJiV!k_q2`a zxGLV$HldTMcu(7eK3Bzi+NSi2QL?AS3tT(y-)9lLr)^G-Q5NrMo6`YNW>4FK)+C6h z#e3Qov{RJnQ489qwms2v!&}lbs`f=M3U5U(8HFBQ6W)g2SM>~RZRxana*q<|D^*9M zSBAHz?^SV+I?%7GK8#)$-hs}m`aJr!@QxJL-t>WY>76KA75AtU)i4S@S{L4lUKeG0 zs-XbPqkFig)QAdR`Up(mnK|D&D1g=&&l@rF-aARlH00 z&>O0Fm+qmXs(6>~p?6gAF5N@#sp4I_hdxlnyL1noRK>e=51m%UyL1nIriypz9{N%h z@6tW=wJP4Fd+1wLyi51c52|>V?xCMm@h;s%zpCP0x`+Ny^?n;xf2;aNl+}^P^H2ou z;5`(gig)lHs-%i{@E)qHig)lHid4lrcn?LZ;vKw)YN+BJyoYM5;vKw)VpZ`D-b3|O z@ebZYja2at-b0O5@ebZY%~bIY-a{=_@ebZYZB+3N-a`qhcn9yHj;eSE?;(#W-obk) zSrzZ#J=9ed@8CVuLly7fJ=9wj@8CU@sw%84tNyBDMWw4s6g5~?x~O5I%c%2AIH3&q~&-&;h`z2c<1jSuPWa8duX~U-X(ZwrYK(x#eNkQ>Y?SL%w9i{ zHfcHD>nG9{W5ZtmWOyRoqw3?>AE6#p<*6GMkw}lJT2MC@>S$Zh@LDaKVPPFX> z^_tqK-ax2#RCN>ek*X`}O@QrlRr~7Ag8Ej~ul35H&Z+vb?aff|9&T~)lhPoxH-%qS&NGqv%KI+0qsY#r3byZc1y0%l@lpdJ$ZMZNd48eB5o0ELtW)Yt0(X76KR~wmZdh+mK;^QyHBKPF3&mRI~L}y%{KdLA9D2aYiPd-OU^ta11tP{^HUt2iME46yUAMiB) z4n;Ofu&M+UuiJoXn@|b1D2Z|^Vvdxnt?HzdYp5!{J(p{)YF~RUmmtbldy-4_6m=-# zjgH)h6qhYsZG0_AqQNd(rb}J!QaPe{zsqgObJT2-x1T;GkVI*MAaYM7{7MVaeo65XLT zzD6d|Hc`Iuyk9-1d4^)F_qc5Pw49ksPpPMwA%|3%^Zu$TbEe-`^@3+6Vty#fSKntY zbyhvY60d>hFD~2PY8#VyCv0Kz5>XbuF7Z*QC{?c|z6e!YRjs5GPz_a$NjeMFT-Dkn zt19M_s6!EllXxULsyZpkqsmHVTe7NHQC&s(`q0Ov2C8Sz&RlMYsu7}wtI83Tp=zF} z(V~1YC#vm?*s@gdl`n~MRGIZYO%?B0l4yn~Uz8%3xnJ9OwGEwdo@+^_r@8M7^o%Gf~G>nYHq+C|}D?s?D6E)2hrl`po5dR&5=-^2mR$ zs-LKzT%Lcb%|tn`YJqs#_^t@PhFmKuRMjR?*ouhlK~YsyJtHbgl&{sb)z+vRwi|MQJ1SS{hOrfSFue|72Shd=2d0p z#B^1rw=-3lnN=Xl*Rr{y%EFiQD8{wtN>xwvSO&FB%l#rXT&t>5Pp)sJs)nLgtGZOw zjjGIfU#}`pY`3a9A!?&4)9Tw*nO1LAWm0sRTh4z_lM{$$)@E{L|6*98XvNiHC9(tm?&TEQ7%yu5y#rW=1z#)l~7E>hdfQRTh3-pT?+Ru6n*Ko(ohR7qw8; z*P<4S^0jlh+RS;sPL(#g;GL?> zS-D%3uVuT`woc0JR&|%CJuc6EYBMc+O4U!|c~DiQzTB4QRMipnf~sUuFRL0M>WC`S zqt{iL)&G_%(}%Z3`C9#LpQURed4qdr`i&{HC@KhH?#ms`^IMc~v39*k*S&uQGK+g{o>L zDqK|$QB_n87Zs&yvZ(5+W{aw+YPqNwQNETnQd_&>Tzg|xX0|p{Wk#u`t6T@Q@w3V# z>g2L@Q`<0!*;AF-9j2%4 z+|H@0%qw%Qs%~P-Q)OCKsA{m-id0P!HAhvksQIc^h$>aJNz|399uT!u)d5jgt2!oX zxvDQjT_?)dzZ=zd=Sc3udR4nb-Re_vzp_!)6Jonv)r+FGs(MG%U8+78b&slFMcpUL zSNp?iGxt@GsxtRgdsUhHs(q@=e&Q)nz9@&(Hadg*@RF)xQLm_4De5&<+eN*p>SMK#cR{x;3<)b*}&#Kmo`c;*= zmj9v3%$~nhnO%w1#jNRjrCf+Avq!0<>PfLxR`sr^NL6PSHit@GdKDC)^)-IRr zQMH+;cY8(oM&f|lOw4CpN>U&i;i~32`Zc*n{9T4@qC|?bBS6(^3zE@V2H2w*k+e<_p zir~*dBvCC@{5gmus-ucO2Z7b0%AC!Hs*1<6EnbxwiKeQ|NVHI8MxwPUGZO85o)V>l zszahWsWLnNBvo&Vt&6HJMRiwYUB+$crRowMLrfs)?dT zsG2J(Q`K5gV^r-BHC~lD4--^9C$`C|%nmSH)yHC+s_GX}xvHvM&OORgBMp3?)x2cUk|B^(T zRq^Lv@VwmRd9SFl@HG=pVGizA&u1pG=N?tZMEy(Em!ck5bzandRW&AYxu;b%7xj#) z&Z3?dr@Na+PhS$OAT?U%UvqhrRKZT zGMC!mQadLHx9pM0{eoKdoXhk0tUA^391kFsP;kS0=CW3ec+iKWb5TG$0N~;dR1uS`g&1X zkgd1B+~(-v)q2ygAX|#xwjON>sJlgtsnBzC^h9`03bOU_NBIcl0_vQoX%%|%XT|zZ zVTHEM(Rqk6FUXeauYvoXN{cJBZH~U8S}H9Mvi0?si_Kn9tuL*v(6%}HCfIHXvi0+q z`yCJoh>y46jrqO1# zam+NjOBKgVqwVU+G1KS)Q6^>@y|13!&H?xnAyR|1a{x^@%Ho&d7$&(hZ_a%z@~tMNdr+@O4QWzAfqZg}(?n$EHBq zB9rrn-)gDV_;6X9tXz(7a!g%SCFj3c@Bg`8)Revik6V4o`F}?qPcy3gyJDQaIK%MW z1rhj;qzHVEPz1g`D1u_~9Z+qlA$~g0e(D5UC)hf{)(JKbU4oz5_^FGZSW2dMDUIq_ z195x+-#qmIHNekidXPrqrvZL8({AMNMtV2W4R=7d9Rk%a=knnNgLGUxrOOk#AJnI~n z^eIVyDg0h?egnVrL|A+kije&3NN-52F6nrr&v>qu?+9px^jW8)^?CG`L$v~ z-;MNbSUFv+eN5!c4%sBXF}O*7S8$X3-ry$U-y}?t2%8Z3&XBvL>`w9ADZkyfQ#^OV z^S$Jq;*&1^k04zZvS0X|@D<@v;rqf*gkKAP68l9s=}JW`ogBdwnC4vyRfft zurO12xiCjK0^E?8XYn^Clvw;*ktG)YK4gjYTmI8sN-XYU34HDhSt!5@98Le(JJPBCHgjn=BsNP2#gj;%pM1P4J27x=DO8<@dld<@dld z<@dldiGOpuJNkas=_?#8yvyR>?!L?7-x$BkVxPM#{_XC|#hN3`6P5@U3Zp25ZpL~D zr#em)R!bK!ng)V3C0&P(BK;k$suV>fHgkH&ozv2qNbr$n?zB|&_}?wp*J;+q7I>5n?;c)^lPwl=!)i1 z)IGFkizxiHtslU?p^vnTq5+|Kt)ggfXv5Y~G(7Y}Ff(*Tnu?$4QQGn<-d@ON9r8pWt`yPI;_Qu?m+84+>8SQ^U9=Sz+vx zt>m0C$uEd<5s5s={0v$&8N@AK@usd^O1tZZ+v>&N(PN zCA6wbSz(HBsc@_CpzxH?xVI`ZUsgyT;dG|0Xr0*OJbb^ioNe zNqU>`pyZsEv{jQ!IW@Uds&J{~Y?Jh9VSFu#T#J2DB)wJmY_039Q=Zd8r#7dX2vdbw zwYgNbq?by1tMHW2ieYPtFiW^pxK(&icuHv1Vb7(p%&o$MbvYehkC`RhDom*_Il`sF zt-^!CQ^J%65=VGY7~ha{QiKN^ae8T-_z10dP9GGeH0E@c@RaaC@gVg2q%f|8)4hdD zgm(x}3Tcj5g_DJM2oDHpE?eV-lZ8u!2ZSeuaq}dCaEb5^;YlIQXKN*@MRz1t!Y+r| zKseUs^yR`F;dEi1aF(z{IA6F>xI}ohaD{NC@FwA{!cD?Egm($=6*hCY##X|1U>MDI zZtwhj@=M8Ql3(xgahK4p9lC~Kj~9wvGQQ&k-#;0RSElON$z6hdTP>93wylTxSkbbH#nD?(mZO8 z??7xp3#cXG8bu57&7)W08h17Jir3(mbCy#AT}$ohI_w-*VHdXn-#B?2u6`S_Q@ouL zX)8W-^CotTZ{a&6-=!|}1-?D_tDI#Xq9Ozfm9hn^LiX z?Mt@RpF*rO3b)d!Dt4QZ))0!ahTcNtCe3m9 z&cgB3-MXB5TN5b7nutHsIEe;YlkxX0vuLC>1>ZQBO_Qx0nqhfqt~HhBThs78pVR3o z+;EgxGijNXN2{!Sy3s12^;RL>V$GtB)@-`lDx!O=654Iep*_}Iddiwd2dw#Y$XY-z zSXba%@=EE1wU9os7SUPjO8VZyw~<;)=r?OA{cc@FmFzOAW?xM;>}#lzy$s(vw;bO! zw}KMvYpJV!9d)y>ryll7e2?5J>TBOXY4&P-Z`>NnwAa!C`$oFbUWadayNOoV>uHsJ zGrraB7P{HK72k`wfwtSX(LMG?y5HVJ58IpRQTulKm%W7^v+tn2_Evh_zLWOZ+i1Ui z7d>U)O;6j~>41F?zPIgOddA*C&)WCVbM^!Dy!{}(VDF}v?1$*E{V*M|_t0xL{tRd2 z4-V0fmGNad6keqo7+s|n_*&%*@WT9BRmLH|ZIwx2auqK)pvp|JTQ!cbvl>UJ8_f~c zMb81ZM_(yC0%li#3(T$l4%ns^Te}H|33G(=gsX&`g%1f236BfE6`mK?sLgR&3cCqM z2))83!Y#tR!lS}3h3AA}F&v?Wu(7b6u(xoiaI$cQ@CxDe!rO#9h5Ljr2#*Or75*T! z>u@dAgiVCQgjVdI$Zr@cy$~h}jrHpWoPWN-{4k>W4VQvl8(s%yG+YPfHrxc3HM|?V zS@=N12atZQ;bY*t4G)0dHGBz-Z1g4=*XRV8*yvL*z0tSeghs!CC5@a)M8_I&UFNKX z#BuudxE{#=MAE;-^+&oze84AN(znHXkzdxB^VbS@Hoh7;uS@zHq3K;t6ZVFXMR|t)Db5J_D1zS^v!-SKB zbA)?^FAE#DU%-rp zct#qh}$kJri#Q`zJT7N|cq{5?q*kDYz-QJNQI$fADDX zaPVw0*LYqS)tS?cg%1dy6uu%nA^cq!e5EpTzDE}>J5YF;(Bxbz>GeT5#^=KPpT*}d zVOUp=R$W+6*j#8vAh-?VBtKVZTJ^T1KNfy3q;4Fon(%4ii^BJXKM1Ki`$P#%98+UM z$uXs7N_vj)YN4^V>cM4Av?NKV2~Er~lAb9v?KhE4?|$fcFU~^MUJrvUdT|_&Fiki{ zXxcwh(({EE#yQdJHAMJDtfnQV_MF}vbDr>ep{e&~Nt>1g*ZZX8w@vvT(b7}6>^R}S zGj3)ywu}F6Q%V@z-{yU4L=vU+;mCu9rp7BIeZEg3to2jb+CrFQ($X(8G8a2{v&3_$ zF!xJ8e`-NuQf=9SUKlX1dY%jbb?Eu=jA?;=GxwNC;2WcOI zKcsyDh7aJi-)sPvN)`?fW)AoP);W?kugE(jZCdL|XaC;9kwVjknUXfVS<;&Z;Xx1` z9FzopJcvvEE;MmW+0en9-$2+-m?9i6ED$aiZV>JiJ|{FY?S!Py2s;fOi@JsiO)XQ0 za{N-^O~Nh0ox&G{8-}sZ-NL=X7lp@!p9+5x(s1^S6gCp}76zXMv-5mK^34i0))SKR zweT-tjS(Ep`1~npGkYUOa=s~5Thh%;jZ;4NnaS|bx*-B&Rg1nLqOO=#KvMR`E3V4)vyrL>R>e~^ z8@dJa`6p8c)k`3*2J?j8@Ua@+SCZFL-Al;YJ%r=arhfOHgcKG@l?&mPb;tu z{3G9I9Xf|{*cqyKt*~sk%;+s3bL_9sS@suqEOvaNl8&BH$ zfnD$(t&OK`>0md!`(WdV+Yqn^4Fh}PFQ?cjnF02uQD6#<0sG)dp^Ye)fqiKL*bmPN zZ9GTJ0@ElP96(+$ou+{UDHj|>Gr__5dnh*QCRt@;U$?RGq_PYghbN0Ro>ndgFT>MCn=Z%Sn6c4d_HlB9g0~X>hzu0){ zc|SOtc7a8B|Jp{o9|G~551dDjf(z&|@CteyEX8|3Hd_BAxEO!S#ik{65WI?>1+S*( z!E5LRa2fu7i;bQf23OD#@LGBeTuE<$tMFXZrW@!OxSHMp*V1wDMmhoBL?3|b=_BwK zIt6Z^)8K9NDY%I~2RGA~;O%&xYUA(Xd;{*lGgTXZz2tlF0X$Q+(Vw5ehv*!*2TxdS zdW8M}AEm#*f6;mHG5oa{oA#0eK0%@2KB@#hNfF@FR0TYMC$KjDR!ueVS*i{mq8i{! zR116=e?h@UKV!ioR1bU=PibxRwh{O`#e;9)d997-!Og(8s0DbGT7k!?4S1Z|f$vd! z@C0=PKg3_7vFRiwf}c{dWzlD#jVH%lz;CD<_!IR&{?DL|UiAY1#8Y29vb0h`%jyT( zRvPG7>0pR82n@A`fMM1!u#znCL^T2x60mjhawFm5BJqq@; z9s_$>kAuCfePD|9B-qD#8cekgf_<%L!G6~BV1MfcFwJ@i9AF&=)2$=mKa*Zbpp(^J^)8sAAw`7Q{Xu3GDF&xuJs2v)A|d{v(AGBmSyA0U^(DyD-?&a`QYPLA^3zf8{BUdgHKv>K)iDT z9xfh>ss&?>w55rwF-RIS`EH#tp(q( z)`4$X>%pVeE#TYM2JjtgBlxbh89Z)n0pGK>f+wtP;0M;-;D^>d;78UD@T7G=c*@!Z zer!Dmp0*wWKe6_JpIVQCpIeWCUs#WWUt0UXudFA*GuG4KH`YP$to1DTt@S+ko%I6v zz4a3KgLN4E(K-VDWW5IdY`p>gV!Z|aY8?ZAv)%!Jw~m8oiFAr=Vqj4%+sYpkto_L+x+CF#B6D-2NVnuzv(A+dqR<>~mmM`!_Js{sWA%{{pMo z=fUbWraoO_J77&a6s&Dm0%Pn5u#Q~?tY=4p_3dh41G_rd(5?YCvTK2Hb_^JA$AV4l zdSFw#0ocrL1U9$h!4`HCu$A2mY;Csy+t{tZc6J*u!EOh3u-k(j?T+B3b|Ca=*wsz}yV0%&0w*;1uU_*f^+O`;9UD|aGre+ zIN#m@F0k(hudsK4rS^m1Li-_bk-Z1J(tZ?NVm}5hwI2tsviE^y_LJb%_S4`s_Cau& z{VcfLejZ$5zW`omzXV=y9|l+2N5EC~Yv2v`8{lgDEpUx}3|wo!1Kx ze*oTWe+1rQp8_}7r@@W(r{E_0b8xf$C3w4i2HawQ1KweO3vRW)2e;Wjf_K|LgWK(M z;63(l;Jx-A;12sQ@IL!Ic)xAoj$o(F--5r(4h0{uD}fK%5#VmS3iyy63GT70fsfeL z!AI>H;J@rz;A3_SxYv#aAGi7Y^PjLAfcx!6;FESd_>|oQeA;dX9<*D4&)BWNXYDrN zb9OuMdAmJ$$nFTfV0Qvvv=hOX>}2p|y9;>O?gqYM_W)nDdx5XnDd6jND)@%o4}8;3 z1K+aK!K3yd@R&UWeA^xdzGII7kJ}mGd-f>sggpj)-yR2kXkP}Nv?qY4>`CCqb{2Tr z&IUiRz2K+zH1IP!7yR6w34UScgJ0T(;8*r+@Qhsyeq;09*0=UN@H=|}_=8;v{%9`( zf3g>YKif;eU+gmQoP7=Wo4p+T!@d^$)4m@3%U%VZw^xJYtOYG+9cVl2LC3iT3~@Gq zq0UCIlCv2Mcea2L&Q`Fpvkk1`+znQB?g68m9bh%*elXhE1y*++1TS$O0&6&Xz?#mZ zU@hk{u(tC!7~|{%>o`w>vCh+AUFRTJ&v_QC?>rASa9#i#Ixm5ZoWo$8a|DccUIQCD zZ-7mlx4@>(F|e8Q4%pl|4z_SkfGwR5z*f#jU~A_T*v2^xwsk%Q+c}?u3C@>bd*=+; z!TAR4=zI%a>U?zk!{dKftceUtl-qJlMm*riXeu4%o{H1$#S{ zz!WC}?Bi4cQ=Le#uTu?7bE<;_oEl)dQwtpE#DIgGSa66_4;<<=0Ean^z~N3jIKpWH zj&z!V8BPl@(`f~cb=rXAop#`5PJ8fjrz1GQ=>$%662VDMGC0}k0%kegz$s1-Fx%+` z<~S*!*GUDZI{m*gTOpz2w30@0}GuI;4CKtob8MPi=8oGi8BtI<6H*L zbtZuGoJrt(CktHQWP_!S7hLE}0~a~D;9_ScxYWr9%bY^+8fP}R+$jcEICH@3oO$3% zX92j%DFs(Mi@>$cVi13C4P5V(fwwr%m$MOk+}RB7cea2}J6l7;@Ohrfc+$}t&ojdCxtqX$SvOmqusd?_tl>{E4XgDlI}PjfYw#EQEcmPa9X>bGwNeW1HoI3!1$$QN z2llRn-%&w4>%)|XvJcY?SRbZYus%#hubPM)_X4av<~@DRoY9Nnw5}LZX`a3;JXgd;ckhwk*)3gnsj96%8mXE(vNIrJME# zWl8YE8iC#&k%FG^SwEKJ<^+BSmI47D#}_grYLLH zEN{`|j+9ZdAkXV}NgthCoI52qFSlgDfZUuMZ-L)ps!lKQ2I8Bnavts`q-N!1_s{j_ z1sc&et0XI%qCjfo}9& zP>_|Mn=OU>C5B|-uddJk2b143Giyqo*Iih${0_s$q^3^KDhgESRzv3GmE^j!L{(U~ zv7pDp3v&y~Ma;}C37R1(^K*;+P2e#aos~ByFua_T>dkWx;|1eprgQ~Us{C>eT8arH zb0jJ+Yb;$^L?&H+DVcdb1nbsYRBpDr$CFQ=zc1;gz)&n}3M74ItQ78=yS$8=@%8x; zpQGIQNNi5GVGYhIw8PShAAuc1_Ki<<5|K<1KP$W|ZKXoyg62tHgR`cTAC(HSw9)RE8QEDu(|vGmfj6tjU3F$|_RJw!MKj%(PVw=X0!zdM zC|{GwbyqcXPQJG&Hyc;&-0ZB9!k`OaZh^b;8Vx7G-}I4LIk{PR?sl5I@>QE$ch#b# zjzGgDZ+LFt>L(c^vkHPQrgDNWXmI9qZ&7|>zBl+PE^9?DB|Q85?Uro5rns*%l0Dcv z&0COjQA4>HMcyoTPN%+j1;vY8Nv=20D+$btONJ%Az|`R`Xr|C`OoNgVZ)#y)(5VP& z7YuXq1EX_+Wq>y;C+Jly*e?4Ap6;$CFCIe+hZN5B_RTHAriCwa?w0k-^X7XCN`@B} z=d#sp%*e-!fqSAz$PB#V%;E{>b~imYeRVB8Db%O12(8bU8Fc^pkWXcCP&%+VES6WW3@>)Pd5+lo`>^xR^< z@Fhlir&4}#c41Lo?i9*cP>f+9(|*DvES{c~*JlBIG%HhG60nN%bg3nzc?os@aqwC zvhs4L=Hle){Rgk*f@wZAz?(MP5glxQUQ2wMMIU~X6Z<@Dck~tkX zz3BzHB|OpcG^qym37TgteKU;HGRrV+jCc9qI*9}In3>4he}7U;EOqt;37vxJ1sU16 zV$)#nTyNfgwy1o|G^kYx|IRH{0yikA&;QXh|Nm5}Z)E>_HOl$>?^O3+AJPBrXv#?P z%<=C%aXHi5AerJk_eqdHDT{Bo&CU3*sW{?VT|&huEOx$Gnd?m{p_H5)O3lM&llV?F zE4QE+iCGIW3ngGGcH|`{bn!^+EQS^2Ex=Wt%la=oy!0=;E+qtAxNwOp(aRV+yOqxm z7F^&=h3SFHxVvUo;NKESdxG)?d#B3%RQddoxznasXu#b7uc7k(eF{tPfTf(pzuOM- zmb?mTmHdio6~l$KN_K^{j>*j_kv%|At&&$kt&(3+tzx*aR>>}3tN-?^+$j6=(~7Xw z$0m?pQ36ABfw^Bn&c!0g9hrN+2JZUAI3#^Yzl+4j#owD1IGO!1S7r44P2rsWc<_<8 zz?GGedqtqR>@&veniahL3yRCH|9!o9InVNKbmatac1m9EG}(qp4qg~baKDu2&UJTv zcvemhUN&8)O!M5QOEZH{m1dPYO}tqg;O;y zub;ro39N|=mfVFV*K!M(%PqBX2G=qR*n*ardwG>xT4MAqt8z;!XgO7|l-$ec!X*?K zgz`)0f@M=~$y~Tx$}N@PW#V2U<(G$Rc9&lkt|d{?a;RV_$P0D_&$p?fhu&nKD)X~N zP4csUk@|eVJX~17S!OF+LB2eSOj$_3Gk zfSX3RAb&V6?iuC|GZ3PDW^kBU&94Fu`IGYab%|X9nIlm-US#r2zRVR=52(^V+Yn18-%T=WVMyvzf^F1}DJSbi5B0CvtP-rlOe7Fy9ZWmX{-wDX+k6@bBu)J9x6IlM)pfWEK?`6yVxq zo_~ou?vl&p$P=i*WDUr``OKe$r)haP<>nw)Fk+6k2%iba=jWb$!lVw#^uNHEKA3l> zgR9|ptII{?dMe1~=LWu;1k-b0%nKV;VS|Dy4|Ix~A9&9^XhbW_Wba}5xu%2u1kW&h zyur6Vbpr!tV~1TW=SQ7Z_s%#ZwdRWbn%4)#$$s zF)i?YT7ea@9rx@eJ!gv8e4?bVBr8t@I^!#47Bp_4@aCX9Pp-A_tmtk-n?&Lx#Y`O0 zCfGj}^IfuyCpQV7YVv>n!?YJ~)#hfS`k>1(pZ45rQz$4~UMTqWP~LAd(fFiQkRKRc zypHqU!(A+3mUnTbA*pz4Yg%E^0)7`xGGx~Jm3doI48!vZOH%OmohkND(YbZ}ek(uZ z@xAj;7i6#(w@+N8R+;ktEP3o8l?77f4a|V{I|s_k&}7Z>Kc~Xm^8WOYtQmzx{&yE8 z_K@6y@>v{#2LL8%kzZ%Yrh*-39iGG zHSswe9J}JUTDpSTcu-_K{1S49?o+;Sy2 z-?uE?@m;y)tN4G~`x5Y`imu_C?kp|Pf+7|udr>Gi=^80Z+oTpOP-#JgDx_@+ku)ty z3k6Y8M&fWph7g%=SO5Rpwq)K_0c0TDz6RQS)Cxifc3((3bJ<^TR4 zp58n6%$YN1&YU?jb7o0^NFQo)I*h`FKXoP?A|ui=_=!+aknvHpZ0)qxy^DW(!_>83 zDEpH;wf=m@e`n&(QEd8959{A{_lQfsBH45ssBb7<`gl-HCQ-XYd!h1b8#`LddF zgA1`|1x|~@1)V?i;Lu&s4LLLdhw7!JFg4(oQ+A~0SSpLhsMay^$5=|rC#XqK*r3u< zSd$|}RJr@jnM@GmTm$8(&CMq#){bQhMhbL@31YLy(SVO%07h*7z=%(_ zgOLq_#0tqaq-^A9+;QkHis$V&vw##aJMbRDE*&aDIY?sIZW&p3`Ztj#k?lL7?4`c?QPIv+S zmaKRQ%SO7GaQ>EzYIRQkEjb3PGw`L6ZNLS-Re#MHk*o5Wljc=-%_-M!T?MQsY`-*8 z9>0_62K2SCsgSf#pLiHu;Z_Og6I}8D9Vy|+i4O8{wTJHJC41den?4Cqj>>HXLI@r) z%C2F&U(rO|9VkMz(yd9918d%a(&d&<2owbqHM&!sbPpPuu=E%x-2kgao>6F$4Y0zF zVL28@_Zr#LxsO^*WEQHGs8UjzT&R>ZKrSH-oJ&UoXOhu?WvOT)m_#&SE)5?zmxNjh zq*uX?Qr>5d(oig}NF8awc+y`6j79o>2L3RWW)law%l3mul9xMS)1se9T+j;;l@%xg z38G(H+VD=AovN_ly9*SFX%(B$ebeH$6={dMHWJg4^;*U5cP&oYNQY*BycPqg5Jwi@ zL9fMtj!(5=T^o-SXpP}gls1;twZAx?k~EiBhqw5m|PdeCkF}rIDvM z622N2bEh*SxgVt8)UYe#lyFSPcHCf?Z_~jK&BiIUe20@$i(K6DDMW$MopGfEq-5M_X++6RR0*a|!B z<>m=t$0zUuCP_-EB&;E-AxM0?GBGV7WPwak+1|0m3@>KLuqZ>sP*8rjl-05&f(Y8v)urGBQdQH8w^0L50_GI`Di$4QaPr~R_qVP&Y;2BkZN05 zRT+1{fK$(*24Jp(;Xs1ZB?+6&lOg(rm+C>*`}YPggI9Hk?bEoHzyi5TVLQX?)M zFmw%aFryb(+O(HfZvyW&o37Y{ZzCJ7&VWy2Z);vLDL+s47~loE8alzoX(b zBvAk!L9!#*AR5yXs{-wKv|{N9rauY@6=(nw+T`k_?36DzQtE1l<5bew zDK2+NArGo#Yz?Lg3rj(Vn|^f!_N0-CgWpI@n`aweUMY`G$R{0~)IwE}NRdDi60pZh zJkV+_v0LRbX}@Le14x+hA0V2gucC|L_(|$S?sf=hg4J3fgJ{75P{c@ynub!onhMEU z?!pxei~&!Cql6kIQniX6mZIhRpdhu}ayYmwol7N#jJ6>{0_+_jNF=L5R3H(CWm^nP z$RAuZ@>mZ+fTITVbC8Y)dOlX2ss#fnn((4t2asZznQ+Omge^H2RhG46=Rd2!*V}byML6H?xlMp|7BEJcc67{Y@L8W$#m7|*Q!+s@jzXe1<8gy3x;PE5C z0nuTp^H1S%vbg&1YZS>w1AkFOICxuyZ<DP?oN$I4rP)3dEdsh- zYKb0Lj=rY>uyn!Jb)?f0aL}6D9O;G*#qai8D7YFkag@1TT zSc;VzL`L{HOE2M@>o5m3SWU=04o;ZcC*}hsYYC|ru3Ru}K>?^rh{}K$62Oj4t7}X- zz1B$}^^WO?o)HDCtGbm)eyd7>psFTC6$PpuZPoaz77a`mibm{28XA}nvZ5N)vL>n3 zAUSaW(QC!-U*tq{_(nQE{T&R%q+NDCk(ibYt1_y6;>t#j$8*enVlWl>s7E`r1_vWp zS-_)Gf@!g7a7D_ha>9Bu|HOE_rHunfRTI)UGg8$y((VV_yq&leP!&TGB`R)sk#)}} z0gVbQkU+xlTik#}RTNWI#9E5y!zq^u9TUsW9oSld*Vw_>TII0N9_@|B~l#CCt}b>u9}-mo*MOtOY-KZfpk=q zKe4Q++#WbaF`%RNhbktqe>`KKOnox+pP3S>$cPk8x_^Y%BrX?%$(Q}W#3iC;oO(&r zN1SN^HPro;nzS6esfcF@ek_Gg0=c56Z#6*l?Q1~fG_L}N%yVg}N}?%+wgf)hYdKeQ zt>)N=TMegLF0q6|!Wnqd)BpU8E5Q6q{d>DTJaB zmjWt_N&%D$t^mp+l7KRnAJO<1i+_>$7l%p|SY3SZCwZ=6_ANWA5P^(;U{t}|tP)6P zJE|yhU71`g#FjxEQ_hxz>-2SlC^8x-P=lQ4eL*`^3123E(5Gh?%Q6;-qL~-RB(Q)~HIr53#RN`lrJk z@Y|@M(h$q$QbCnRK~xd2atnKID0Nyr3cfU%`ex{xncs|jGU4?oEyM=&EWqhL&1H4k zS|&`@MTQ8R-QS>^XDN4CajwvFMBJ9DfiOnHf+sDrVh5L!1mVVia(_vYB)K*Z?K#&N z!UuQ?EwGFX3y);VsGbKR2G|nVAOaV!4k{%iD@O+(Dqt# z^PiJ47i|ut1n8$BjU5Z8tv1{sBwd!MjiQC)>nwiO|G;2sm;R(gV_g~c36_a)bO*as za|yjclNd~Cd5w2M@@&x$NN)Z}7*^}Zq6kL>0AIF41XOT^6CXiv9WFa}ho5k3+;|wJ z5l_Y#xLHm<@2H4@eXa6jO@b4$8dsGRbr;-5hdu(%7U>&F0@ZMz6af!wxul7_PuBu9 z?Biphd1^|91ywIt;66Sg9HLd+Ua|f5m?P^KIG==Q?NC)?P~mH2;U|u#C9N@_3Mxjr z*jxM89HrK1G)DfEwMC^VN-fc7h(bFQ^`9?mh62j9B7jEt(}n<=Kx@;V7HBoVr}lko zK42BAs)SU!3c{;L1yxk5A2?5gx{Q-cxE~aCO|^tl=@(A4A0|7v+etA^BI9%oEXU%2 z)!oq=D6zkpR_KW2sXu{bl)`jeR%+PcBM%8lt^gqyED{|5T;t3^k)M_;UyiigXgI+u z3S=(uOXfg2!wjM$1`(CMs)9?Fo=3(=O$1!F0DdKKe9+4xv1I+=042HepAdo@gT_@^ zaach<*p0bX&78!a?xEXckLLTveHyj1+rR)sVQ@H{o1KXTz_eQN<6wIgWeYN%`U zeQ^k-11=Ak`3-T>{3$FOoYMR*TvGW+P|8G+ftse4o{APS4#Om8KNI1G-9$nz-31u` zMm)s@5(Ig$bpq@{f*rcb2xZtW0#d@^8r|#(n@8W~IDREp&JcSlJOKq~iReqUOHhT$` zBJ^AW`Giggj#rdB5THd8%*ACE`MO)x7rpXU1NI|oX9Et0Vx50F+OzQ z9%U?&e|p+TU%FZhLLW9CYKZzkC?y{-Nj^Y*Nio*5bZaLD2RSXpb}MW{1-l@DVY@!u z^g!+#h8lnc^kSFv31$(`qmn}c&_hVjyKIgU802BYW{AVe6xZp>!r-TgIEXUt3#WpG zv9lHK$u8pP0yt$gAW4Wma7uxc0`$M4+yMn7zsiE8&Tu$zBMK-J;}|x^mfA*F!Qvw7 zD=obW2KT6fwE(RlB*9l~FQ14WM-FhoS_S(c*Qvvu186bG&$>vdoR$gb34*PlGA@Nl zDb0AWzQSp9u|vO%zX28p*cC;FbWLBb1*vY(Eo-scCXsS5TkCY?ms={NEZ}mmDzFg~ z`6po!%q;$ZjRd^Q%I>s=P(~3WY^?;Zh zro|pm4nGycbQ3V)=ThM2ax(ak4rj{z4+h7fEFD1Rbs_01PF>_9)i8a9mC5|dsuEkd zf2c~$hxSKJgzeqnwRD1e5Bq?O{Jcz@?ZELEn6t_{tA=NTBtbJ2dF0b#0tMaYX6zU;>#Flvi+xLj#oD12XZf+i}gETo^9tzVdt+rP$%OlHd#m{B{s1k`Lj5)+&gw!`5+{gbfyC zqO2??tKBj&AMB8C6pYD`YdL~3Ld`#1LSI$^@lIa9QoR#_R!TqTB&TLMs?4bzEfMEt ziA>r+9r2zZ`@{k#_${p^=xm13g(8(?#pLrOiuxk@=YSt7khHF#T#=Aoq;IlWMmu2Y zgq@qoT2wW9H14;M(I^ZI2=*B`X2Bv8qdFJ_S55m48J)MeKk>6*thKNbC%`IY8BQdK z6@=e}a*W1-WIvp!fytC(PP8vC~5`O7Rcaj30~tbDbI7|X=asP@6FQ{*?% z4vr;K?`JN<}chY zLt6q~dY~?~AMyK>)wO4W2@iivFgT9iQ823F5F-Wt3LDm*g*ClNv^@E_sGR~Dqe{|3m_3>XH0WPJ|6L4Yz zyez;l5eUK&F9jgT5AtpRe3VBfq{O%^$j=CQpviLkgLh)jf^Bu$3DRQS`w{}T8T1q;9}LQ|A=g5u9T zvzrhn3>B>KE2b{NCX@>fp%)}lVaB0bo1b_=;k4D0tDg&T}V6xLgC9>LY{W=tOx}# zK=5fN&x$Zi>n$MB!^pFeJSUT=TR#OZ>ffNTT=BBDaVFagpSMxK@AIhj1&? zV}s*`Sip~s2#JRW=F>Vx2nmA+@EZX(C@u(J@DW1@>mslm1P}x^31R^?0w@Jxsai+G z2`!@AVSGF$0P6S`1f?#3zr4_}*3s^j4G;-znR{gfv2+NEXCPok7Yn#efr;o?LJv@5 z!zpGgLem&DO@gK&v@e79m7skQYGP261T`Tvo%K~XE(3b^FED+BEA`1*-fkGA-#R4TPP|2&;%|r8eXeJNM z=An(C0dXj$bS9;ANlNJm&0)|S37W&QN@sx_#4BKU1rlBXi!Q+ETo#=xMdz~U+=fGm z1*n2{P8(k}X=K&dtg1=#sRkD9@K*tU7>^2)MV=Qp_WzK<2#jNGaw6 zJOW1**v{b%pE#x<*yIa_4J{+End6(}+zv6q;t3vR^E>0mn+Mm^m2c-&IEkI~U~AET4neTvx>@ErHB9QSb0 zGzLO@=0S_)*@cf9PInIvP2;Inuv9B}YT0&0=$JoX&ws8!!XC7`F zJ)0TEW{!b2#L+NIn z2)vrY;e}MD(Jy%6*KGO)FZ^0Wzu<*mpqH56G8o{(pm{|om>us55(DiRV^&5)C8?$v zqXv*!ffMEfF8C{jc|(FQ7)A^g@a2TBp%8BsCcvK)V)Ecw4zma=VB@R=wjT(CUYZzecx!3=0N7D!5`I0=BAK@!G6tPRMIfjAdHadP8= zKc_Gro+Xe$OL;bgGjE(b8Ud^q8p@wRdLbw*BIM?01e}B66x9N=u44GZ2^~(&l7N~B z(>SBhm-z+)zm+q5U#vKE1r&i06UlTm1@bC^Fiu{r@J<%~c}GMhaDh`>oYbQ;0L6xr z_!M}eGXb3iD5XTG1)O^0^cZD>CBo@1brn$gW&#dQf^iCt(|U}V31VF3E*x-mgKx@2e>m_)KkiIIP#WCGqygdXyTllm;6jd572 zWcW)YG_h1>2&01q9XQlkfU%ew-5coSL8>VbkNSWv6m$ZigwY+53b9xph=XBtpP)ko zONjEyhA-q9T_Q;khwhvV_{)TNbVj7Y7djxQQv%_bAAX}|V~t?y44@R3N?LC*fRjNv zQ$bx}VGQ2r7fOThKd+)`z$!M+EZ~WX3I&V;p=yYQ!f-Ye55Rx z&G4V{g8oO8GUkGm&}WF$P|va=m{)_PSpz1Mv0=|ukw1~`*9`T*NH4OHBE;q*6T%LE0hvT5C(#Gw+!kOhfBqv zpVx^DH>$ZD3|ykt*$A(6j9CV493eQ0yiT}&Rn7HXgu4>pa{@><0c;r#TG2jTC;UF8 z=64wIMt%O*fxSGS<_%j>85!{73I*zda<;&%X$HhNh+fE(g8Gs+_FuIP-`yJRz!EuN zxR28mTz!!_t}pGVeNoB%rf&`S=Qly<2PMJ24cCn7PlM{{8^_m)R5z=6G?TW3^O|qbL!To_PbsuHbgV_ybI)7e{=OZbXqg}pu8o3f1wC8lHVF z*H>Rx=lF8Hx+OBMO`xS{IRihsK@7-WsR8|!lfRi|F8_Rp)j53jFYrcTK&QG2yA zK^I*0rnz;>a=q_jaROO|c0s-47&IShzY5l_(6(JCt!@8b;W zGr_mvVj~DNUHC`1f72iLtbRw> zI+zmEE@)mOXZj`glT&tmIicyJyTd08>Uz=;_4xOpr@ubguI7caC(o4><~Dv}$EwBg z_Y`$|#oDd)=>krJD5F8Of$pGBU*M40EARTpZ z0EUo>j-{_O`szzxCi;q}FOj~6(N`gTjiRp-`l^(Ox~2C#={-|=&!%YU^p!(j1@x6G z;VhBf>!kN;&yAq{(`waz=|r}l!=Kkw=iPI31w*F%HBPeameJRgiBP2I5}FEFgYLah zlenjq1OVWz;gyUbgzVxF3}K=J@Fs~cfGB%73WfkePFlc@Sl9}W8|3MRcsu~=#SEzu zkq|lG86(8#n&^aviVKrai9wB%b%Llp(uy~tTb&8gwI6WGmY&8YH>4z#z&$5IE1l4S zr;3A1Vc;M+y&Xm9suMcOQSpPj#?cEa;^_SuaR@PhIT3_Josh8eh5Za(93W9FHs{#j>!&TJMd3d-|67KBK zdCGNy$Hw_oALEB3&t>Hfg*EQ=|LyGm%+3lzgigS|o&+LDKzi(p9ytJm7`q7mVoP*F zY_<-D1g893J;Ccj%64bDV^+L&_WtQ3&_>hxca&5VmR1+KoW+IoGA&SP@r&I(`2^~u-F^| z85mftwD|$b)lNVQOw9kQ|8%7AEd{}?mH;toFwFLaBVG>t4Rh;+uVMJe{(T*i1i_&& zC>{w>z@=J>={a9CU(_fhX>Kr|&)zAtXt)Rsz7w1b;f9 zieABN7;vK}6L*A^!lW4gb;NNjoEpZpcl0Zx|B$Vo5CmaehzU@1z!R>nQ16^Cr8t5k z@0?G9Njk_tm<&5_bi~h4##eD&0QWa7xR$3AkoR2S2A+2XDc?kpCa$(vG1?CgfetSS z!fa9wR&F|Nl&3J%8}FaywLNu#d87-GP%g%cdOsM(%hOc(xCEY_z<<+7IZy-WsxGcR z*%eZ$k9u*#G*kz*gC1+l9lcN$uo8yaMURCD!rynegw-YPp2hr7qmc_HPr4q58d4v! zunV0)7S#V%0`3%aSJkDX@n9jkg7L)@Jj?|XN7^Uzp2i6b2lsxXKH$H;L~qo2X|<;| z-ANZ30IwO4Cwi63poQC^*0gsSDD{sz8%XB=8y=%z><8s&n*6_^F#o>{e^mmDZiEy; zL4xSLab{S9Tc+ns|20w<9<e1?hD9Mq-1o&|9N|gIa|O;+U|8w}$CLbl%h; zUC6TG;xI8$0cj$33f2kB;+D5@$AU@6|9IdI59?tkjpn&G{ukRRXofWJ-gEK8-x!UF zsp;)fe(rb7G`?~2>1Ez%z32@YC3=H%mjwsuf`S?*tZH^V?`q*Q@7J)@t%0Ko{jFlx zu;3vfjbhsK>*C_#i@V0@jmA{XL?}VuMvSG%{-;{{c4AwM4~}Wc$E9(D%gZa{;Pz_x z*%P=POl)&wq?jtE8Q>rIa}2|8jMN+8GZ}#JZ@4&-hzy8?#RLt>*T;y>kYYqk!@Df5 zF)&K5EO+Reicts*j|m@aErF>{31h5bOaR6@i0vq2tz^dVHpDo*QVyub-lBhMs{fXVMfQx zMTz3YY2p51kZt5>?@y!g6ZH)F|f zThefqQR#FwrsX_OK6^9_T+k$T3}5Q8VN7{2)+I-SeKyqUTpJ z2E^IAQ%Ga6VORv{bZBUJaIolEj!<2Q=PA*%(A{*zfr_&>=h6;$KG=NyfVo%Sf6iI| z`sQsS><}JFPoLTB!`{CXpZ>hB*aUfu(dn*+go?rN5?do6D&&Tc=6hT3A1_plSbOf1 zT?3!G)0FVMsrW~+5k@x&34vxbUD0$vHFU!Lt6qJuf9Lc2w+*aZKCDaSEma$)|FJ4} zezh>*yZ27DJZ^hCYWd`!g0gnMH)HR`{JlG$-9EJZ$70jVCgFz#d!9NRySdS`H$~1r z`bnELT^~4m=0(@)M^6~%_F8n`wzRT?GuL+b7lshk+*Ccd?DkDd&RFFkGIX(QSqOjURt%^o#`AO z1vX|9*q9>8##nS8^d>g6iLxDqf}QyXTQwRSBiNW!1NfQ^Ml?8jF_C|Yo~eI}#fc<} z19mlJz@WUr%s>SPFi>^cp6%kS-^|XH`D2&P8YFb6dGk=~Ua#HVH|;0aW8Ti+EQl8J zKaTZArSEUOb^EWGa~2-@J+0N(|GM5nYIZ!P=iNY#MC?3d5n`{Tj?*haK+eZL`g zPRPElre!5}_h_@|9>+VYS{l99T`z50RWYtr!MGa@#o+LoO%betV=>e8X+TfX>x-}ft8NVeyq==s^d?U7q? zT6L&v&&`IXM?OA%$l6(3b}xRdaxUpGS~tN~4-GloP5PayhNiDN1&D{kx2qu6OrD6XDTX-AMv~ z#2jWFb-Ivr@isAyeTzZUyGaBmOqk%0Alz{;Q>xT7C}Mr$gQu>Fi9C0uS$XF8V_B;< z@6Np3(VFyX)w*%w+y!q;z3lw@%D&WZZ>v~zXI#{laU0*gaQN$oPsUfc4xjmQ=lwsN z8=5rS?LF1>s5AKc=z*s{i=2JGX;5QJ)gO)};h*ilb$H82u0B&{NUs?XMwk+)Ra%4=T-hw{`26-|lR*zD?a;$Sa)$!ZfJ(>N-wcN8mr+0qM1XFoy!GtVcif*($qh=K|8vdKh@ox9+`jMQn(>7_ z9(bcu$i|@~?u#wH>Ykkb!{Lxl1B??Y!|&Nycx-xVx2kuezHeh}FnRoyXY7tiU!3m! z=)$GrqDI~_sAbV8!_tFO2j1GgaE$qp6FsIi&0Bxz^;UE2KXiIJ=HmNJk3JN2!8_iS zvir$N%lD27I~}@idg7*w^G8g}m^SR8`HppMyXEXHUy}93eJ7`Mo;#M>8?P=NEOSSH z7ANBWj?qrjum;kUqlFHKFoI&ZQ+{$_pN0QQT6M?tN4G8ces#}`tlbC1n|OleK_QLX zGz2#SUMUC{EviRCKEo)*$QgQkVxZ;^Xr|veId5yTxzAa`by2e`%yZ7V3byxY5Ze9f z<~#Eriald|Y}4~Y8=aW_M$el+{B8A1?{0eS&UQDKN7x=58@#-I_8I%evdQf?XMZ&9 zr#VgD41YLf$EgRutGLJf?BfUb?*D9V&6jW8vTyR~cV9Iep7F2ui+81b*s|SQ<4^Q_ zYQxR0rR`=O+qf~hVD^P2JFWenitoH+)Wc1Bz7u1u&e{6GnyI%9T30meg!tWe#@1iW zI{%5$b1A0X>=JizSjd9&PX%T5xIcU5ma9P@TQBuL@kwyy6B|MujrTrtJl--n=iH4; znzc&{ik-1K?Ck}H&HwGYJHOZVmuHyaOZ7DoTl|1egOmZ3K*!z z+3+ZIIrY0lXiZc74Uc>b0S=GSU^J8rrb(|)MjM5LBly(gr|8*GAH$9#=c8edzRy72AW~|Kyk<^zB>c^?hUM;cnCIo8FHxJTPbXgRkD$ z!|;3Q*4FFHLoTkl+hbMjZ zbb@N6SPew|Wu8LyIH5n-}N|pYNH98FV_%EzR(*TLJitICCX!!_y~EX#3fz8`p22{MDt!=Np=H)->O0>vq2P=%Rx2KTPS; z>~Z7i{U6U5IP=$0w|BU|ON+h{&%PC@5AhyLexvac;iE@hskXfR`pk@HdZ!#8wxY|^ zw|%lb?4IT?u5XgNV{ZB*=Zh9!EIo7hr`Y&)hELzqH`w-D`!U(Mmp^i~|F-Mg_QG#N z-wJ!xv#iCIq)YL0+x9OCeQwszp4-2Rd@SPVu%3^$8QZ}2a!tKYCg|w_CVSD== z>+#kgSA$-EY`OQsJEv23mRObzIMl0R?}&9Vo*jpt*SFeUa%925Nque^k)7WleP8gU zK6eXyXXRV;-jJPOvEBr?mFSuA4^G*F8Y(7|vioeA=M45vlAEnTu)eXvc@_emDcQN! zNFOCCV_SgL;0Z(YFxB_W?|9x7^4i*(d+#uH-4K0adCwzlM9*vmjmG*1#mUQx+@t<( zxBqi61(Bu#s(FP{N5K~r;?)V0f2!wPY3`jzxh`!MIH zFTXzV@WI{hEvo50W#%h6RcE@}`rVhY*4(bmy<^Yo!+$Y8xb>B^D|3vGm3pz=YHB(#q*+hzBOTKI7}KM1$thRYM&~>C>$3Ru6Duy19T1PS_&qK?FX_;N)vde_ z{^x-rY<$y7V(@nsIBM?x>>Hw zFugaZF@PfKU2C;HDQKtv|D3Gqu9U>}MhF*V6B z+(%;%jvLtjtIrm$Y1hr2@IylUq6sfNt#VhwpbJ&x;ZbM4OnCq{+Ku?+=Si6ZjL+^m z)ogmoBcJ^AV4uPRI&bxI@y%OCcj!Fgc+tf!@yRcI5G;0hZSI<%Zf@6R)pIrCyfp(` z-Efz|mhs;g91H(D=OK6dtKUB`<$~ke{DsG2kH6NbMd-dqrmhRGSz2W)-Ii?5J>KB8 zyN};JuW#;n;i?dv>a70UHt=AZuG3Go*>c0>uXU}hDZiY1dT8FpxAlGPfvIOZ4b*o_n&mq7T;Hyzcf9rbHy@vSa=rb{ JT`A~)`ag=p4$J@m diff --git a/AIMS/OperationDoing/oldSystemCode/frmGoodsBillRecord.cs b/AIMS/OperationDoing/oldSystemCode/frmGoodsBillRecord.cs index 2f1840c..49eca3c 100644 --- a/AIMS/OperationDoing/oldSystemCode/frmGoodsBillRecord.cs +++ b/AIMS/OperationDoing/oldSystemCode/frmGoodsBillRecord.cs @@ -8,8 +8,7 @@ using System.Collections.Generic; using System.Data; using System.Drawing; using System.IO; -using System.Windows.Forms; -using Excel = Microsoft.Office.Interop.Excel; +using System.Windows.Forms; namespace AIMS.OperationDoing.AnasRecordBill { @@ -362,15 +361,7 @@ namespace AIMS.OperationDoing.AnasRecordBill public void toolStripButton2_Click(object sender, EventArgs e) { SaveReport(false); - } - public void setLine(Excel.Range m_objRange) - { - //m_objRange.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlDiagonalUp].LineStyle = Excel.XlLineStyle.xlLineStyleNone; - //m_objRange.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlDiagonalDown].LineStyle = Excel.XlLineStyle.xlContinuous;//xlDash ; - //m_objRange.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlDiagonalDown].ColorIndex = Excel.XlColorIndex.xlColorIndexAutomatic;//xlColorIndexNone; - //m_objRange.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlDiagonalDown].Color = Color.Gray;//xlColorIndexNone; - //m_objRange.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlDiagonalDown].Weight = Excel.XlBorderWeight.xlHairline;//xlThick - } + } #endregion #region 打印并保存 diff --git a/AIMS/OperationFront/ButtonCustomItem.cs b/AIMS/OperationFront/ButtonCustomItem.cs deleted file mode 100644 index a08cfd7..0000000 --- a/AIMS/OperationFront/ButtonCustomItem.cs +++ /dev/null @@ -1,798 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using DevComponents.DotNetBar.Schedule; -using DevComponents.DotNetBar; -using System.Drawing.Drawing2D; -using System.Drawing; -using System.Windows.Forms; -using DevComponents.Schedule.Model; -using System.Diagnostics; - -namespace ScheduleTestProject -{ - public class ButtonCustomItem : CustomCalendarItem - { - #region Constants - - private const int _Radius = 20; // Corner radius - private const int _ResizeArea = 5; // Resize area size - - #endregion - - #region Private variables - - private ButtonItem _Button; // Added Button - private CalendarView _CalendarView; // Associated CalendarView - - private bool _BoundsChanged; // Item was moved flag - - #endregion - - /// - /// Constructor - /// - public ButtonCustomItem() - : this(null) - { - } - - /// - /// Constructor - /// - /// Associated CalendarView - public ButtonCustomItem(CalendarView CalendarView) - { - _CalendarView = CalendarView; - - // Lets add a simple Buttons to our item - - _Button = new ButtonItem(); - - _Button.Text = "Goto CalendarItem"; - _Button.ColorTable = eButtonColor.BlueOrb; - _Button.AutoExpandOnClick = false; - _Button.Displayed = true; - - // Add a subItem placeholder so that the user has visual indication - // that there are items present - though we will not actually load - // the items until the "PopupOpen" event activation is fired - - _Button.SubItems.Add(new ButtonItem("", "")); - - SubItems.Add(_Button); - - // Hook onto our required events - - HookEvents(true); - } - - #region Public properties - - #region Bounds - - /// - /// Item Bounding rectangle - /// - public override Rectangle Bounds - { - get { return (base.Bounds); } - - set - { - if (Bounds.Equals(value) == false) - { - base.Bounds = value; - - // Keep our SubItems in-sync with the new - // item Bounds - - UpdateSubBounds(); - - // Flag the fact that the item's bounds changed - // so that we don't present the SubItem popup - // on Bounds change - - _BoundsChanged = true; - } - } - } - - /// - /// Updates our SubItem bounds - /// - private void UpdateSubBounds() - { - for (int i = 0; i < SubItems.Count; i++) - SubItems[i].Bounds = Bounds; - } - - #endregion - - #region Tooltip - - /// - /// Gets or sets the control tooltip - /// - /// We are overriding this property so that we can - /// automatically keep our included Button's tooltip - /// in-sync with our custom calendar item - /// - public override string Tooltip - { - get { return (base.Tooltip); } - - set - { - if (base.Tooltip.Equals(value) == false) - { - base.Tooltip = value; - - _Button.Tooltip = value; - } - } - } - - #endregion - - #endregion - - #region HookEvents - - /// - /// Hooks or unhooks system events - /// - /// true to hook, false to unhook - private void HookEvents(bool hook) - { - if (hook == true) - { - _Button.PopupOpen += new DotNetBarManager.PopupOpenEventHandler(Button_PopupOpen); - - _Button.MouseDown += new MouseEventHandler(Button_MouseDown); - _Button.MouseUp += new MouseEventHandler(Button_MouseUp); - } - else - { - _Button.PopupOpen -= new DotNetBarManager.PopupOpenEventHandler(Button_PopupOpen); - - _Button.MouseDown -= new MouseEventHandler(Button_MouseDown); - _Button.MouseUp -= new MouseEventHandler(Button_MouseUp); - } - } - - #endregion - - #region Event processing - - #region Button_PopupOpen - - /// - /// Processes Button PopupOpen events - /// - /// - /// - void Button_PopupOpen(object sender, PopupOpenEventArgs e) - { - // If the user has moved the item on the calendar, then - // don't permit the associated popup to be displayed - - if (_BoundsChanged == false) - { - // Reload the popup with the current list - // of Appointments and CustomItems - - if (_CalendarView != null) - { - _Button.SubItems.Clear(); - - AddAppointments(); - AddCustomItems(); - } - } - } - - #region AddAppointments - - /// - /// Adds CalendarView Appointments to our list - /// - private void AddAppointments() - { - // Get the current list of Appointments - - AppointmentCollection apc = - _CalendarView.CalendarModel.Appointments; - - // Loop through each appointment - - bool itemsAdded = false; - - for (int i = 0; i < apc.Count; i++) - { - // Check to see if the given appointment - // is a valid one for this Owner - - if (_CalendarView.SelectedOwner == "" || - apc[i].OwnerKey.Equals(_CalendarView.SelectedOwner)) - { - ButtonItem bi = new ButtonItem(); - - // If we haven't already done so, add a heading - - if (itemsAdded == false) - { - itemsAdded = true; - - bi.Text = "Appointments"; - bi.ColorTable = eButtonColor.BlueOrb; - bi.Displayed = true; - - _Button.SubItems.Add(bi); - - bi = new ButtonItem(); - } - - // Add the appointment to the list - - string s = String.Format( - "{0}
{1}
", - apc[i].Subject, apc[i].StartTime); - - bi.Text = s; - bi.BeginGroup = true; - - bi.ColorTable = eButtonColor.Orange; - bi.Displayed = true; - bi.Tag = apc[i]; - - bi.Click += new EventHandler(App_Click); - - _Button.SubItems.Add(bi); - } - } - } - - #endregion - - #region AddCustomItems - - /// - /// Adds CalendarView CustomItems to our list - /// - private void AddCustomItems() - { - // Get the current list of CustomItems - - CustomCalendarItemCollection cic = _CalendarView.CustomItems; - - // Loop through each appointment - - bool itemAdded = false; - - for (int i = 0; i < cic.Count; i++) - { - // Check to see if the given item - // is a valid one for this Owner - - if (_CalendarView.SelectedOwner == "" || - cic[i].OwnerKey.Equals(_CalendarView.SelectedOwner)) - { - ButtonItem bi = new ButtonItem(); - - // If we haven't already done so, add a heading - - if (itemAdded == false) - { - itemAdded = true; - - bi.Displayed = true; - bi.Text = "CustomItems"; - bi.ColorTable = eButtonColor.BlueOrb; - - _Button.SubItems.Add(bi); - - bi = new ButtonItem(); - } - - // Add the item to the list - - string s = String.Format( - "{0}
{1}
", - cic[i].Text, cic[i].StartTime); - - bi.Text = s; - bi.BeginGroup = true; - - bi.Displayed = true; - bi.ColorTable = eButtonColor.Orange; - bi.Tag = cic[i]; - - bi.Click += new EventHandler(User_Click); - - _Button.SubItems.Add(bi); - } - } - } - - #endregion - - #endregion - - #region Button_MouseUp - - /// - /// Processes Button MouseUp events - /// - /// - /// - void Button_MouseUp(object sender, MouseEventArgs e) - { - // If the left button is presses and the user hasn't moved - // the item, then present the associated subItem popup - - if (e.Button == MouseButtons.Left && _BoundsChanged == false) - { - Control c = (Control)_CalendarView.GetContainerControl(); - - if (c != null) - { - Point pt = new - Point(_Button.Bounds.Left, _Button.Bounds.Bottom); - - _Button.Popup(c.PointToScreen(pt)); - } - } - } - - #endregion - - #region Button_MouseDown - - /// - /// Processes Button MouseDown events - /// - /// - /// - void Button_MouseDown(object sender, MouseEventArgs e) - { - // Clear our _BoundsChanged state flag - - _BoundsChanged = (_Button.PopupControl != null); - } - - #endregion - - #endregion - - #region App_Click / User_Click - - /// - /// Processes SubItem Appointment selection - /// - /// ButtonItem - /// EventArgs - void App_Click(object sender, EventArgs e) - { - ButtonItem bi = sender as ButtonItem; - - if (bi != null) - { - Appointment app = bi.Tag as Appointment; - - // Move this item to the selected appointment StartTime - - if (app != null) - MoveItem(app.StartTime); - } - - _Button.ClosePopup(); - } - - /// - /// Processes SubItem CustomItem selection - /// - /// ButtonItem - /// EventArgs - void User_Click(object sender, EventArgs e) - { - ButtonItem bi = sender as ButtonItem; - - if (bi != null) - { - CustomCalendarItem item = bi.Tag as CustomCalendarItem; - - // If the user selected a non-ButtonCustomItem, then - // move this item to the selected appointment StartTime. - // - // If they selected another ButtonCustomItem then just - // ensure it is visible - - if (item != null) - { - if (item is ButtonCustomItem == false) - MoveItem(item.StartTime); - else - _CalendarView.EnsureVisible(item); - } - } - - _Button.ClosePopup(); - } - - /// - /// Moves the given item to the specified startTime - /// - /// StartTime to move the item to - private void MoveItem(DateTime startTime) - { - TimeSpan ts = EndTime - StartTime; - DateTime endTime = startTime.Add(ts); - - // Don't let our item cross day boundaries - - if (startTime.Day != endTime.Day) - { - startTime = startTime.Date; - endTime = startTime.Add(ts); - } - - _CalendarView.CustomItems.BeginUpdate(); - - StartTime = startTime; - EndTime = endTime; - - _CalendarView.CustomItems.EndUpdate(); - - _CalendarView.EnsureVisible(this); - } - - #endregion - - #region RecalcSize - - /// - /// Recalculates the size of the item - /// - public override void RecalcSize() - { - base.RecalcSize(); - - for (int i = 0; i < this.SubItems.Count; i++) - { - this.SubItems[i].WidthInternal = WidthInternal; - this.SubItems[i].HeightInternal = HeightInternal; - - this.SubItems[i].RecalcSize(); - - SubItems[i].Bounds = Bounds; - } - } - - #endregion - - #region Paint processing - - /// - /// Initiates the Painting of the item - /// - /// - public override void Paint(ItemPaintArgs e) - { - Graphics g = e.Graphics; - - // Lets have it draw as best it can - - CompositingQuality comp = g.CompositingQuality; - g.CompositingQuality = CompositingQuality.HighQuality; - - DrawBorder(e); - DrawContent(e); - - // Set our CompostingQuality back - - g.CompositingQuality = comp; - } - - #region DrawBorder - - /// - /// Draws the item border - /// - /// ItemPaintArgs - private void DrawBorder(ItemPaintArgs e) - { - Graphics g = e.Graphics; - - using (GraphicsPath path = GetItemPath(g, 0)) - { - g.DrawPath(Pens.Black, path); - } - } - - #endregion - - #region DrawContent - - /// - /// Draws the content area of the item - /// - /// - /// - private void DrawContent(ItemPaintArgs e) - { - Graphics g = e.Graphics; - - // Grab a path slightly inset from the border - - using (GraphicsPath gPath = GetItemPath(g, -1)) - { - // Set up a new clip region for the item - - Region rgnSave = g.Clip; - - using (Region rgn = new Region(rgnSave.GetRegionData())) - { - rgn.Intersect(gPath); - g.Clip = rgn; - - // Now let all our added SubItems draw themselves - - for (int i = 0; i < this.SubItems.Count; i++) - { - if (SubItems[i].Displayed == true) - SubItems[i].Paint(e); - } - } - - // Restore our original clip region - - g.Clip = rgnSave; - - // Draw a contrast border around the item - - g.DrawPath(Pens.White, gPath); - } - } - - #endregion - - #region GetItemPath - - /// - /// Gets a path defining the item - /// - /// Graphics - /// Inset amount - /// - private GraphicsPath GetItemPath(Graphics g, int inset) - { - GraphicsPath path = new GraphicsPath(); - - Rectangle r = Bounds; - r.Inflate(inset, inset); - - Rectangle ar = new - Rectangle(r.Right - _Radius, r.Bottom - _Radius, _Radius, _Radius); - - path.AddArc(ar, 0, 90); - - ar.X = r.X; - path.AddArc(ar, 90, 90); - - ar.Y = r.Y; - path.AddArc(ar, 180, 90); - - ar.X = r.Right - _Radius; - path.AddArc(ar, 270, 90); - - path.CloseAllFigures(); - - return (path); - } - - #endregion - - #endregion - - #region Mouse support - - #region MouseMove - - /// - /// Process MouseMove events - /// - /// - public override void InternalMouseMove(MouseEventArgs objArg) - { - // Tell the system what area the mouse - // just passed over - - this.HitArea = GetHitArea(objArg); - - // And pass the event on - - base.InternalMouseMove(objArg); - } - - #region GetHitArea - - /// - /// Gets the 'HitArea' for the item - /// - /// - /// eHitArea (move, resize, etc) - private eHitArea GetHitArea(MouseEventArgs objArg) - { - // WeekDayView item - - WeekDayView wv = this.Parent as WeekDayView; - - if (wv != null) - return (GetWeekDayHitArea(objArg)); - - // MonthView item - - MonthView mv = this.Parent as MonthView; - - if (mv != null) - return (GetMonthHitArea(mv, objArg)); - - // TimeLineView item - - TimeLineView tv = this.Parent as TimeLineView; - - if (tv != null) - return (GetTimeLineHitArea(objArg)); - - // Nowhere we recognize - - return (eHitArea.None); - } - - #region GetWeekDayHitArea - - /// - /// Gets the HitArea for WeekDayView items - /// - /// - /// eHitArea - private eHitArea GetWeekDayHitArea(MouseEventArgs objArg) - { - // See if we are in the top resize area - - if (objArg.Location.Y < Bounds.Y + _ResizeArea) - return (eHitArea.TopResize); - - // See if we are in the bottom resize area - - if (objArg.Location.Y > Bounds.Bottom - _ResizeArea) - return (eHitArea.BottomResize); - - // Don't permit move when over the expand arrow - - if (_Button.IsMouseOverExpand == true) - return (eHitArea.None); - - // By default we are in the move area - - return (eHitArea.Move); - } - - #endregion - - #region GetMonthHitArea - - /// - /// Gets the HitArea for MonthView items - /// - /// - /// - /// eHitArea - private eHitArea GetMonthHitArea(MonthView mv, MouseEventArgs objArg) - { - // Get what week this item is in, so we can - // determine whether the item extends into either - // the next or previous weeks - - MonthWeek monthWeek = mv.GetItemWeek(this); - - DateTime start = monthWeek.FirstDayOfWeek; - DateTime end = start.AddDays(7); - - // See if we are in the left resize area - - if (StartTime >= start && objArg.Location.X < Bounds.X + _ResizeArea) - return (eHitArea.LeftResize); - - // See if we are in the right resize area - - if (EndTime <= end && objArg.Location.X > Bounds.Right - _ResizeArea) - return (eHitArea.RightResize); - - // By default we are in the move area - - return (eHitArea.Move); - } - - #endregion - - #region GetTimeLineHitArea - - /// - /// Gets the HitArea for TimeLineView items - /// - /// - /// eHitArea - private eHitArea GetTimeLineHitArea(MouseEventArgs objArg) - { - // See if we are in the left resize area - - if (objArg.Location.X < Bounds.X + _ResizeArea) - return (eHitArea.LeftResize); - - // See if we are in the right resize area - - if (objArg.Location.X > Bounds.Right - _ResizeArea) - return (eHitArea.RightResize); - - // By default we are in the move area - - return (eHitArea.Move); - } - - #endregion - - #endregion - - #endregion - - #endregion - - #region Copy Object - - /// - /// Returns copy of the item. - /// - /// This routine is called to propagate the item - /// within each view (both in the same view as well as - /// across multiple views in multi-user displays) - /// - public override BaseItem Copy() - { - ButtonCustomItem objCopy = new ButtonCustomItem(); - CopyToItem(objCopy); - - return (objCopy); - } - - /// - /// Copies the CustomCalendarItem specific properties - /// to new instance of the item - /// - /// New CustomCalendarItem instance - protected override void CopyToItem(BaseItem copy) - { - ButtonCustomItem objCopy = copy as ButtonCustomItem; - base.CopyToItem(objCopy); - - objCopy._CalendarView = _CalendarView; - } - - #endregion - - #region Dispose - - /// - /// Disposes of the item - /// - protected override void Dispose(bool disposing) - { - HookEvents(false); - - base.Dispose(disposing); - } - - #endregion - } -} diff --git a/DrawGraphManagement/DrawGraphManagement.csproj b/DrawGraphManagement/DrawGraphManagement.csproj index 84bf080..e2a9654 100644 --- a/DrawGraphManagement/DrawGraphManagement.csproj +++ b/DrawGraphManagement/DrawGraphManagement.csproj @@ -64,7 +64,6 @@ - False ..\AIMS\Extensions\Newtonsoft.Json.dll