From 79b9e42689d4f4e5e87ff270b7136a4795408d22 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Fri, 17 Mar 2023 17:19:58 +0600 Subject: [PATCH 1/4] fix --- Makefile | 2 +- README.md | 21 ++- screenshot/screenshot.png | Bin 61938 -> 60531 bytes source/main.cc | 11 +- source/ubl-settings-datetime.cc | 306 +++++++++++++++++++------------- source/ubl-settings-datetime.h | 22 +-- source/ubl-util-standard.c | 31 ++-- style.css | 103 +++++------ ubl-settings-datetime.glade | 47 ++--- ubl-settings-datetime_ru.po | 72 +++++--- 10 files changed, 335 insertions(+), 280 deletions(-) diff --git a/Makefile b/Makefile index f68f4dc..bb367fd 100644 --- a/Makefile +++ b/Makefile @@ -21,7 +21,7 @@ all: init build init: @echo "Initialize ..."; \ - sed -r "s/(version_application = ).*/\1\"$$(grep 'VERSION' VERSION.md | cut -d" " -f2)\";/" -i source/ubl-settings-datetime.h; \ + sed -r "s/(version_application = ).*/\1\"$$(grep 'VERSION' VERSION.md | cut -d" " -f2)\";/" -i source/ubl-settings-datetime.cc; \ echo "-- Build path: ${CMAKE_BUILD_DIR}" depend: diff --git a/README.md b/README.md index aa70440..38962cd 100644 --- a/README.md +++ b/README.md @@ -32,10 +32,21 @@ $ sudo make uninstall # Usage ```sh $ ubl-settings-datetime --help -Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update] +GTK settings datetime for UBLinux + +Usage: ubl-settings-datetime [OPTIONS...] Options: - --lock-timezone Disable timezone field editing - --lock-ntp Disable ntp field editing - --lock-datetime Disable datetime field editing - --lock-update Disable save changes + -h, --help Show this help + -V, --version Show package version + --lock-datetime Locking date and time changes + --lock-timezone Locking time zone change + --lock-ntp-mode Locking the NTP mode selection + --lock-ntp-edit Blocking the list of NTP servers + --lock-save Locking of local and global configuration saving + --lock-save-local Locking the local configuration save + --lock-save-global Locking the global configuration save + --lock-load-global Blocking the global configuration download + +$ ubl-settings-datetime --version +ubl-settings-datetime version: x.xx ``` diff --git a/screenshot/screenshot.png b/screenshot/screenshot.png index 083519feb1f503db56493ccf32ede53af19cd529..967227a79c0cfe76905df92eac918d10aec2ac0a 100644 GIT binary patch literal 60531 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 literal 61938 zcmaI7WmH^E6D>>#4grF@YjAgm0Kwheo#0Mz*90Bh-CY9&2p%khYp}uH;X8Tr-1Ysr z>$27`i{YH^KGjvbYIp64QdX3HheUt`1qJm^Rz^}43JO{h3hGS<0vzzkL849#@CM^5 zE~}0J{P-c5M?yi7LCH#rse5G|WqW!N&9_IaFIJ>z&QvUDda|_fptNlV*B==BptZxe zIEf>UyrUuy!;pF7QcgaX2!r9%*k>Hl+1G8dg3R17ziiuVvHMb=Ielc^B4en-yys6M zw3O{K={cFhx5u-7zZ=VG{s#s&NR$j60VY@t5A@LI=xN-%1XYeXAuAjZXl4a+R^4)L z<6nje+6a}pk}D-Cm=YvWK?n#Zg@O*E!II*Qg*ksu+yM+k6~E7sAVMYE zZ(48KDu4jv0sLP{@+aTh|w4~=sJv=P>h>#E~Nz2z~sPxe&Lr9l`XE9A9`j_#{w?*^Be5s4b{{~8Tk%viI&rtME6TZ{WSmMrQ zz$`6I&uTa>y0c9P!~ZuKOo>|=8IsPix`k)yq*~}=k-pj|e)t&ajT!-Q#YM#`@<8cK z%6|(m{uF^gA(dP<##qE&3g19&h=Xx`uxc%H7+mT@nltJzL-AAZuc4s(*r*PIe}Xcl zEYf=Jh|3-LmFl(2Mo+}LI|+4CI-S8O)XSXzo&j1dnI;k%6&JhR|Ey$($emyM0!}4O zMN08rkx1cMwn6!S;{|=sD#Vd&nE%*Z8k$)}fi+_4Bj2K6qMRCHszh+WObg{6r*KqR zZsl5>TVZ@BD2tlU$&xsio;etltWpFfqNp_G`K`QRt$_VMJCd{vJZ%2!JDm0Tz$kqS{M9OULnkf*G7T3pgXBBioWXC*S$yQt`R?C4SC zRw~?0MnN1yl((Ee(bhG8+@SVvon!4KNMR1 zNMXIM2XXnSp8E?-QIB40BxZ1$;yjQk22IJW<=9riLexLp3m+0s6wM%QDp#_G@gFSrih#K7 zp^P{3`o59y%UD=g(CX2kBbZK?I+2!SbA07_xkj_Cs2mwXW1(S`#mFE*(=u=+&Yc2{ z#UBgsFV3hXpny_r@EyZT+V^dd1V zc3C^zkHuNB^nS?vl*bo{ZZ~4I`jd|6*KH{hknaogeJbEw&eqP>>!h5PvgP$j>sC!i zrSEb|a8)*Sutd7naJ=W@gR0uBwf&XLbaC4G&eJ`kPE%c@0ww|sn=%!$_dV>&)3aWA zSrr*IwcmE&^Q|K}tw6-MywaSPj@U5UQugSCL8C0&oPX4;Sk!DEX96fKLA{}3ZTUnn znK^REvwqu!m$%xAZMDP0VF#Q2Vk+?Y>&x>4htHMu!!4uv_V3l$L({#+f$YLaU>WJG z-WbmhXk@e7`O}9MW4jaMkLJvM#&v4;7+GHSs|{fmayT3o4{lJuYYoOOiskqhKlDY# z&mR0avYFjqtmIkbC!Py*70?Dv2l^*4Fy#Jr8qQ zj1GsDX`|E-;qzWK&%tUX59P;LGAtxEbLGIE#rm|()z11Ndy%*Xu8dvk(0SYZmXcJk zp*Oyh#9JYso2{%2jtoI}g51D|5w=!o=Ph=p6aC$Z?BzvE1VxOMgM*cekmZH0&y=tC z;NG(8>U=qHP21|hxf0F~i@5`{{l!im1qB6ji#>FtushQit16>boG&JnADwT$9RQy? zzYL~rxbZJ`yV6!_1+0#w=B}78RIRLV>0wI5H3W}g(8u{T$VU$b!>p`OgR0{c<_13x zr6;M2%`tF=!k8EFCoyUUlV=!q`&?cyuy6$SLD#hJ>VAwPg8i=N)GL*6vWm~<@{POL zvU%}y>C!pZ{eB9DY2)nzazRH&N2I{LgI+K7#Ifa%GL_*K95GX`hK6)DR~#v7>Y}0| z=RapA!uNNSJp~BxjKeRGF zxV%9YenbIH450=3!P7J2272v_IlN|SFx+pfdOGuGuiVe(s(AcCc=fu*KIwerQJLam z_u5ysH1c-;(V{^3`|@}1dZZ3Z>&sd1c52{Y1GV49`SANkr^j4Ulg33aNYpT8%P>RZ zV*LkUBTBti`^^x~^*-C?p=#fR;eje-=At5LG{3kwM#Hwmd4}HKGph~Wn6EEjk>)F> zj-5xWly7GnwWmt^PwsY_mut&TZ=45i9rN?*5~WG*3_zm`@3UM_ScQBW_&tLr`c4%P;se?zaux)D`Tyxih)qzp$4>Q^kDxS3eTxV z^K+|g1=)vBu4EDBL>?e+4Q}&&)_~VX>3grqVZr-9ul06^nnb7qz20Xg;R$$)wx1?! zS}7yUqi2Zh9beUrXMh#%GzGmaw?z$Ckd@thieWC1p333PQoK1{9eV`4$H3Lff2#Y| zq+UA_6w(W>H5jnU_3O_TdB(TXsy6*uXHryBQXjCYEBtzeDV~p>X5`KVpr+sA$}}Gl z>dDJ`?&X7Bpw&_=zS{u->ZkP{AiBFAQG-Ok_?~np?BxbTFD;$Le6H=@{Ag=yd$<35 z+qMO3z`UDbu6u~fBz-0>w+D;>c&y~bnNskEti)eXm1Di3=|PS>K;gjP9{Vd z^6v2WR-FJIw+oe)p(|6u>p9xbhVf>eHOaIZ1D)$@Etn9oE<={(R>#2N`((uZoill`|L+)zj?4_HOq8^=5lMx^ z8*U|MyM(o^4NfaRqRjXHY+ZAwFNrvANoFb1lJ?v((|rO>YTTPoN&`^Vwy`CLQIW7K?5FE*oa!GinjJok=K_GP*!oIO1&>{y{?OK+b?r+KOW~| z99&-ck2c|RK;1pfDm6dTiW_k`oe=dbHYMo=I1^&v0C2qwNx!xOvpYPr)BWtaTX8*l zJ(=_8mnYuq(Qnhnl;T@ll%2A&*8QW$GI?o!CZ_R@9G1#h*5K`)4?9IXe(Em7Pwd-n z9Y(SQoeQ1#KJb{#U1tk<|9Zk9xF$-* z7fAV7SlBAFeyta|;8$$L(pRV<#q{qCEKk(~5Qz4#U&>QU^OY1W*<6l(V=oUrhF&K+ z$DNF0S!^CeK1F1{s|sSYrgP+@)FcRArcH_0`b@ow+w7T8E-$hkAnz%mJgPy z3H={#D59uDbJtgrjUed#=UHh%g9%5Wmu>l_O88;|sdc zJ@!7va}39ujTA_IBjzjEAwJcoTz6di>#&W?ZLIk|i#-l@D;K$Z9)ec!#7YJROmaBP ze=2vzOqYIXc6PcQeA3k=kQyAk^NS;5c6d)U4e6;Xi(Fwg&^cQaD9;9}KvJ3dY^*z0`JyQ2n0jl!ryRsJi!=x z-QX*KOMh0Q@HZ^TI`Y@Ba=wfMXE+Al&j-3`=Ok0HT_4FZ-npoF*`AMu$!D?V7z+7P z3Dq*+{LCnbY2ZMlMK3Y2?XD!hx;iw+nj}+H)zZpwp^2$;vcIIu?Qc;3;9Vi@9PNg8QyahDvD%Jn+^Rc)MEKvqdR!E zOMfakIW;*Ml^%X|AL|bC!v89Dw>$p+GCeCx-=)KCb3V;bQUwb&Ew#aXGYy4UI17Mo z45Tox)8p2*hX=y4%Icj)CE@8%*{YZFZvUL5?e1EBt6j#Sc+y&hjCX`=;vgC|d~QD& zC=8sQz~y5`y#`6llTrdHsWABrK^07?7#vbi#7C^WPo=~k-in!jHx(=+rqV#C4@DRu zM@>tU_V2JC&wG)HE;xRru^tW*C)K-SK9TXJjvkB_AG^oVLbCCH?5`Od;pAZs=*{)_ zy(JrC*D?we3iP`phYCj}oveFLne@f+{(g>YU8gl{G#Y7U#gWW!ujlhKKO8E-xYk&j zine-@LN`|0H|L3WJX*9_Udi}@B50+*DTI;55$GSq~>*YYWF zq9TRSs3CMY@X4%19yB>g%w)>5*8U+QBZG)fpMabUqdZM=q28Zx-F{8d#}bZXsuM~{ z^NBmPY!&Kng_p1vm=N$5&UxaRhuw5eMmQUjM89C(-%?>A95#2#Y#P@{vZxd(Tml}g z?plv$&&UnYh{Y%zyv%-EgY-pv4>XA0+!{Ml&{c&}$`Mv|Wbg2>7D+1*v$PB1PHCW& z#&dtbJAMSm(}OwQjw`^JByfJLv^yX#g1duPXfsVxb} z4Ikt9vl~mB1j&(@#O9$YwQ7GHxT&fbu93Gig~eaN3>KD^CCXwBU+(k|0(HR_b(D9~ zvbYYJO#O-F#(cx4)cJW=6Av0FQuW^(f~q4E26`oj@i0rbl3uE?NkpoN66`KACS$2i z2g|Kam1d0O_{s|!yJizFG`o8{CTL;l+L{vHI`{$*mn24vcfvg6(s%ue$Ka3^*CEx; zdp*WtUzu9rmIT3vX9exdkdEl+n7>?tMeq^Dur@8H+t+pbwuhAGU8?}`-}p`0JvUb| z&?r7O>h)m4HFTk$pV#J&K$@`E@68b<`<`Ra39uQHKl{^n&jG4xYV>rBTa^}ah+*QH zWTVG3DW2;-9Hye&s+u05DMtQ-_*QX$t6lrYo8{0cApm?o=6;5=)2uNEQY%zZQ5znw z7b~nBlG$%L3V>tqI&9=QR~fO2+Sokdfh3PKWfc^tSwwQPR_a>wIy!dd1?wR_1qFio zIMjlXJJ^33O%GI|gHmsanf2?wIIdo3cbKzLeryp$Pujm9`C!(d+&y5WlszQi^fG*v z{?NhS(9i%lk?w2K!MWrWhtA?6U4wifSZ@90d9jBJ*nrBwXz*Tn{~(@3(VpafrDp9@ zCQ$f)Or`?r5-Cj&)Y+2Uv8IEhf>wZZCan4LhbSAcTV50)X3~A) zJ|y&eA8g&-nk45cm<1-{G5<;>Tw5N)Yn2UNF(XO%gG9j>$`~OUoWh_rTPTeddn&7D zj*l3orTP18GZoG!CrzwuWJ&`01A;)ePZLoV&I@iss1bsmCTptb1D>MZy)yemd|r{S z=f%b4VuuBCb91w~xjF0eN{0Ok`VCB*s@iA%?1du_eP&!WcgI_=tiWlhu7{bJ&|ond z`JC}+3%O>0NcM6YB4)D}b;7X3M@yRG2vne)mywmt&tKdof1_5SBvP^S2LKdV*Us{) zDr--I;kSgps|%IZ1FjCh2{i_t4d&D0LrPgNq43FpT@OeAksHo18&=U%8)(&Qq59@1 z<&7UUIB0HR)fjNByX$xN2K|Pp=jKB0Z#AkYvW-H}ZHUA26dZ<(Bbn7}bz7r(ZfNPp z_v#vsN;ui%YH2;I8kHqra$(NSA(SQL;Pb;HW^i<$&5HH55UmjK78G6wbpOZe(t@rm z9-}}59&Eg9$uSgG=QDITR1$Hs!Zd)C{dEs2`lGjTnzwz%iC{yYq=UUl^Kl(3lV)9d zA+N;P@$tyc>kxRK=r<64Dzm8;~iEKQ!u1*%G8TBQHA(xlY(bCeUU5%r7 zIId474MdbzR$2gAPa7zcRvdY@X%%O>906VcTt3;Qw5w{MF?dv2vzyT?m_JA@b(kAp zG8KYZTMLaTC>9JCRl`)e7(IXo-VYC`mX29fP77p!L&7u}D5eu4aRPsEd$vRWFpNj@K^ zrVWS6ex*NI%Wi7ogxK0G)&&UtEzOKsBhBlb&x_MOFXf5-J%Ir@+Td!Z9RodKZkuxZ z-r6I8E)3K{KBh@jngP$)a=0w?G6E`=oMBx#k zzbrwkQjLF@;V+3Vudd#V3zX~_KYcowT4*+dC+%9k$pd?pt<@?E{JxV3#VkG%h>49w zDVg9++e*fm;a~@_Y6qkMYT}v!r~uzt{oB(Q2y+^^u(s9M2p3yr<{OhxnS9`cL>4QN;SBFH`7^83$<2b_RuY4=H zF`d<49;eleVJbD=#o&1od9#E-98Tu!LMF-cq6q*J*Ld9sfWOMUtU`+kxGTt zu0#409U-jjLXPg!f>0?8G;gqQQKI~2T0+y}+9XY;@(hQ=Q2S=&^OT4{cq(FS7F~#o z6+%J$u4MV+*Eq?CQneI9kkQG5=eY}5(V|Hp1=MN&6+^0)a}cuCR{zi5UQz}=YAAo67rg?5q@s%QjBBC<*%(rE6rP@Y zg@lZzvf>QbN(Kjc;A8AYbDANELePR(I=+<0wyq41=y+V-@g7}W@SOCHNs+^vgDJmgbt^{r~Bf7(rVhbOa( zVuF6m}3bJe>-FrDS($Z8}S}>GO#w*DB+s5t1=t^RXErsx#z0cGgp|?r<;h+ zrL9qcZ|D5+`DqvT)}sZ#l&atawv?b>;2W=dKKiM~e3RYupd{}HG?lc0br;@1^akpx zxu!e_j4~EJbtp}^IlhY;PW3)Uycxl>h;5oy|$HgOxdv6pnTN{?&mM{b`<*H?<^N)8{12`^OZg<cS68c4p$ za~pPS7Qn$e@I+*bMDEJ&6nEJN-#iaOrc%ls ze=VV5h6YAY`Tw34x-Tje{lEVxdWVwzcm1fVd~k)p*US&^Ls#FMTkg2EAVT*c#_Xpl z3Q6XAKbgI?zWVLiLQEV!aByUgsrX58mzxsZjkCar{~FzY_dJe+nu{?~lclq@(c%5S zw#+`(km7wzB>BGy$k2mj{xy^66aH`0Q^NeW8EPctk^d}_bZr` z1ccSD;A^Xr%%w;J0Uw z(l3P$3{2Hq)t;#?lUMIih-V5XZvJz_{V4j#r4NQs%-!aAEWKXDR)3>!ndbE{!D?s0|tPSIR$4bqwxh5u^=QUX)=Ni;irI%<%M;CP(b{MjJy zP(5{({tRES^o{1b(@8H}<$V7s=`-5e5RIXq4T;&%mD$Qd5EK!g>IBp4HLlNfci2nm z>Zp*2@B7-;D7UF2&A`UV*XGodp3~8`tqN&6NC0I>#B*Yr(LIW&z->-$H^TR5?Dgc6 zjEQw45ZZS+mcWl4R@`>r{^^(3Eoo0d zX$OZxvg_ip9+Rb5BV}bjp)hJ5*2mFx*9~LX#~b3!4#F47-Z!l?Os~2$O3!>of!$2~ zn$PQXNw0+tuLGp(rbFXKD%vh@wG5x>BG9znvU)?NM#g)xMo0OfP>HI@RyjbA0p}lH zZ|C5Pd@V0WD|4m4d5*Q31o;gc1P*?6g+2Uz`l*bha9*Lx1>gHM1iN~a&vu*`alYPm z`1R>d2MPiqpg-`&+{=2DyE%z-kf`#TcMA+SWvD(9T55Q`zHdh%xshORWC35S_B`j= zkXY`hVo~SwN6kBG)h_mh%8C>g?I}F{DP@6j9#9A@X&a8y_d9s|Emc#h==!^a6V$Ic zEaST}(&@t6iT96j4xE~VvETsAcAAr}NAC#|f1$xfp6Lf%1Q=ReHdqynl>4t19-S$j zC%m9bt9LUk1|A2_%$??V`HABkQ%ojftr3Mqiwl;NkJk);mh2`i=PQo=PE%>is;ahg zI$2;vQ?Z#lpG<%*0j$<|&UXzhg#tN=b?g751!!xF@i>{IAMkn@S@s5A2frr@9nfIJ z^<5T2?C);`NCM8_I?~*BhCN?WQWz%S|J-08jp%#aON?i9MibWLj%HY)Y@}$3>;W4K zhAe!;f-ikXx65;DH1-axusN%wbr~Vj6E?Q%=7fVSEMZ4 zcL@L4d-Gnv>+kEXFIDU~C}Pd{s;p-`lP{CcRmrDZN`BJMW(%O5--2kiNyyR$KSih9_ zsp)1prv>v}VfS%$V34S@>1>Ubrh7s zd)s^rd=8>)dy{yu-y3%Hv|9skTc3?_5}saYj=gGmh`NNllsz5W0zN9g%~OTen)ugJe}b)$2(7%_7+P)G71jf-6Lg5{`=t8L?K@^Oa!=duNhva-*_EvBjzt%5zX87 znhaBdw``prDXOX%IDtaGZrh^_G)*5~Q?%qa^5LDJHb71{=ZkxG<>fZUHx}FNx45;e zr;S|t!oGs8yER3DuN2|$juF4J1bTD*h0?!nj!J}3D{{T&JEqg*h3UQ8aJR!!^QrA$ zOuoZYHrJin%jF4wKj3=~-rL)bd!5a4jjH#hZRuBLsr0RgxP(X>?)I?V<UC@ZU_S-aL(dZ~%Y%2-@)HDyBL`()sAJz7{o<8sVq zMp#`|7PADm-MlVY6D7&o*jjzff{vhwYKlaWFf3(bbC?HdXzw6C5LgBG>;d1LO zMBQF6=)W1W@bJ-+_IQ1&AnfOYP3G5 zIeEOtUaHqJU`zTNN`X(8$PUW`6G6vmQzS~dx=4xILLVzZ+B>$$=MY{N7UVDCaJk$L z1&XaS1K}^vF<$#YgkIODm)^&u$atA#i_3fU~?R#!<+neUqMyL9Jqk#uVDdnBHpzt+_Qj?{CXu3(uv?TIui!xDsF_)Av# z_zu{X$t0b6Gcs(BduY@P7MFkj4;$gxO2?6q*$Yn|A%{YOmn#_JMBa6^_ec>xFSNyah{Lit-uv1Z zNgm?sTvP>D3zoh;SuHC=fX}Yc?al_TYyZq8^`+f>0#~h$CjIES_In^aIXSNQ(viZ;#0kRnEED{9!$;wUuN`P9Gm zVj8|z5vUZBtlR&twf5!Nm7Qaj?t?Ay0A_9c+o068WFQ3YYEP#&7Wa0~COgMCl~Oa_ zonL4ycAg?!3hRvlt3~)SD?NOxImGbz+Icc#33`lA|fyL_litf!$d6;B*-cl`EsYe!4i3`iH=7c3$hqYShz(_vN( zUL%%&@%E(Sax3)mbh-75MrF$-kj2^`Mxz8@_Vg$r8_6+K(2>GcrAySfOLk8bG2X_?b^{HAa0fB6z*PC2@ zpOJ+!?jK`XJB10oyB7?kmiHG-PY+sP=NE6Y_==;~ConEh=OlNYbfpXXBW;yfXflH) zmP+{9wmdrThSyK??ZEPXD{3Jhx3?P`L7!gkAJWEq?1|6_yUGFQ-^#3{p|)p{boy_v zq_YEFUaAA%KUzYPGfTRvZ3{CcK62I7T`Snf4v^WBfLBs z~!$LJb@jS^K}buyWeC!H$S61we^9w%@tSpArWQg z@v^cqvlH4%Uf&C4@^F~!VCxXTg}lg5%x+PE67-ZG^cW~qy6V(5bx{Pc5G!f_;)p!g zyIWAq*<;Akw=hxXD!x>Qx~i+|J9tDu_nF$JX89pS!;r++?@g!2aKgLk*+O4#&sA@3 z1DDm~W|e>9zr2CJi;7|yPtQ&neeTU1$>IaupKU9AHhO>nRPyYJd_0R!*(>}%@(FIT zDYlJR9Ua7dXR$Q*0uU|YO0eH>p9Gh>dZ?Dy#E5JmnaEca${2j1iqIxb=?FZge}^lH z@=Mnc)Yj#ZqA34#&U&SWCO zj(76VUI2zTwt%j>M=rU@KW)y8>RRuK^J@936dx^y7fu-=@b>ZfOX!4U%tCE8CH`!p z?u@k}$5!v0j}Ze%LyszI=p$(a8fi&>e$c~%&&9<>oi?Lxw+t{Ak0Uq`u1;I`glRl} z)(ISVbMFVRJX_lj^{gdM<03fq0j(1tp06N~+^0`S9-YLX2^^K*Eym;0x#70Gx@o`( zcSXeqb`Fl^6s@kOI2(e?G^(iQ$6MeAwl&agI}dPZSddEE;Gl z_X72}vm^TacjffIzR^T9vvwCzzZ4i8ETK2WFGJ zhnK8~swPfE3+jpBdts*M2G8_6{aXAjeetgHh^E z83j{L>6zDsm$k*Wel^SY%lmCN)aX>0hCOyUsDfp3^-?Le#BJ%oWe zl#bijg>mn&w51TO0Y8HN%b}(CZ3pwSLI%1GH1^-g#^Fr;rGF&_muvK-I`?ey78K@w zWJBeQa&w6;XhLd=+rhVu0V9sXhCi&^Hrwu%bK^;gOS{hut?M%Z>X!E&<--Jr9ESFB zfI|3p5P?X^@1zI4CM`Go%cz|c<;zCh>go&NSEzV?VTG?hC_1%Q7d~HErqb2_tOvry zo`XCsl@t)j*=N$SI?mnbxBRKfPCC_s5$CdeR7Sv!2T9sO!PEl@hPI1Lx6OvEjG9%Nc9nf?Ob1ej zb8-9d$e@XjWavfZel5ol2P z-^c_aL!?Klrt>Qya(eG)s~@(_Shv_g`IK(#ns>pog( z|Ju>PFG!MLBTd4fupP+3R&)zhew~|>6F+ZT3}8@rcsK%!Lc#T~)N=Ud%QTA&Q8H0) zZ$5Z5k{_GSiD_wR$^c*t5j;)2z=w#9j*bF022evhUwKY?aydD$V66b?2?J=7L=^>e zwkj$s`TXu!S3BGXjy>%9e;&!UTj$_5wqPhF-unqd4iEA9T&VEz@t1_Vl{t~}%n``1 zyMPHD9GHZ2(V!}uo733W+;M78;`%FFT3YT)DE-X-xU|f}HhTeN1~foztB&j(?7+dnJiqj_ z*_AC+i*3gA@)zbn_ugs4h=HJDZ&4Iqi~hr@1$%Bl+z5|KWDKq`a69}R_s#Ni2`*=S zNz6D*Vu0wZZ#K{!R4i4yR9v*@1~jcemv(M$E-^XT6jB|@EsA&QRd}3MbVjDGr8PX6 zEg&l^OU}ZQ0GLBT;TH%=rL`hQ=)tfz;h zbArSWer)sCB;qRJtObt&@ij6zNyES(r&l-48;7s-B-wdhR#`b<*_f1_O^ky)QJ^iPnElC} zmuTVG0|-t@{jcY6v`G#R>qWpm1Aa5XU|z2cD5fXW!kIq1`MfD0!6lET8t|O&1T&he zpZ4Q_^JU zk?4AsYP=P!NN^z~Jp9v=N%h2lO91#;URw*UdFPMc&+|_6xX~Q_@Ej&d6D=8rPFENJ zPP&P6@nk7dP-*4BZu|gvZjL?9vb7a~vj`z+7Dvo{7oUehG7(A2p`}#lB<46XV~;i+Iyzlsb+d?~7KC*!Hp6e+&H70aJq-T&i$@OxqJDSh+!ikX=RnvbU+0l-=L|(4tX@5S7zzL9F&ffN)vsO<__n5N$Q|utKH|1 zKviqG-s4|XTKW|*#JRe57uW{C$eEd$I^F6e2L9MR$xhd1-D+MUR6qn;R#7nn5z9@; zP*%QF9y8R@8Oagy1+d86%F51jgBzrP8Ea`;($bO&6r4a&%f*sRuwCTTIW5QqX^I8p zm)qw}AAAJ?00tl%7*U^D>jzZL6wlK3wXJ<-0UZ`DZp5;Yni@l2iQ;O7gSt^}1EU&n z(j^MSSJPdAwNi2hVj&>rBp@Vg?m&YJ$sFdKrah#RohfnFa7wn#eQA6kJQz&WO_-mb z&n%UFl`MYHIc-)E5_)K8@hMigJmkJ&b4sS#w6iV9Ctq;{;Jwcny%O>{-kPBrHfioD z)WFQl>~cbOLBh6KyMCXfBa%9@-=*r>1*iT&7ih^j6CqPLea*EJe$Fi2t@@6OFeH*6 zw@|I=DCi3#((487n8xvfC`+{{E~7Ae$Cnxz1>9ahae+#xyY;3ZnnH&L56QNk@8J#5 zFICpkikRKB4p2(gnf!91sHlRKND=bgphi6lRl2gldM8Quh!cst+E8AOI3vfWYQl2h zzzqWhZm~B|1W5B#JUnSY=2l>YIQ&}Q>0EU@^6(8M9*XBnB~zVM36leo(O+TgYU4|i z!#1C-{SYAi0VvC#KYy$XC>R+j*QZKQ$1T^gfgAzY@?fdCk_IErLbF$o5ywII=ia4_ z*tX9yh7|G2+aM^zTHJ_%d_>hk1P&jwii!$rTib%RHoVID3ZX%(rUANz`KezNtWcSm znLvmR+cqcX<|+YP2SCX!S+VBsvSk4C|7x8qENqk#%0G(_`6$8^Dx<+bzYiXz+gGnu z2c*x!xwZ4B)rPc5G0Bkab6r7cOH*}hNyt4=>EY7;`Sm01Wx+Za0ahWje7T>*(x`1> ziCAWWd)OdHTqW_HVZPU~A_B!5qKIG_6|6Pgo(%Z4hhR#scf>hHEz5%jxUoCFY9CD; z23GBS_apgi8|m529_qJ5C|W9qd5|fd&mVZ<8pX6zEuaHL8VWo{txZP{uPMe{?ofFs z(B^Rr4BqfR~{*d5b8e;}gGr4H@1hr>3UvAAq)|m~m|V3VcEp zwjCM^{ZWA@iJ#373^^_LF`0K$?<6E7EH5j|%g+~EUdKo?i#kJ>db#N+CXMWZyE>N6 z9#RF%SJc+R1BZcM6B!HXm~td5=c8}zL!-!`bq%o?q?&rkOd`T?3Yl)}BYLmjv#aK@p!4`8$xJsPnm$(?$0Iha(6JeLXmU`%D5LI$ zZC4lp7Q+~OpE2u^lvFaeY&S_RKA^= zZ2=nwjHQ70MmI|tkl~k?m#YMZ+~iFeks1}j1?W|40+pV0JP|oyB*)c`<_lCv6xVTO zuJ~KsDEj7}zj*?{&#f3hq78xA0`(prAK%icIo9Bacrw-T?K`-TB?UPR4Qv3tmK1`f z35x=L`<~2QQFL*`)q>XailVasSOvh7B%yStWRUk7jwwN0QXifl4Ym4G{TPuDF=&^) zf<&>I5pr7eqN&LgPv20pHD4_1tdCG2q2VrgH7UMk*h3Ey^{Yx3ZbCyd63E_K880dV zzn?X;?HHkXFIKc$4M%sldbKIQk=ZRCm+5OH!b>0|`A}V9Jk$9!0h3hho!0{3$nLIb z>+*nSQlGKBziU&l%yX?`p$;PsDiJRr0;TtVxavD_vwd5yQzg%CaQkpq05F^PNMQ?& zR%rC}^h&C@Svm%{aK*w~s1VVO3R(4#tWeAfDd_tawE=HOv$X zZAC?rmqR};x_)$cT$u_MI1rXB&t1vM$pM$ItT+prIyy1~-a# zec)>V098=BQDhvo%7?GJ!7{y(MO0zkb!%`eBni^KP@*7JG_bn49>+O4K5SBlNJBQa zlOt+{=JwW=1$2{#O}(}*tOo5;4{Wd^wq)E36w9R1#5O5YX&)HtHPkG0%w{i@zOe1^ zslKR~cPrOeT-qxv_5idxPx{W`y<{?0JiaoiL8?WDGOJ8sZT(_4Y0jjo!(2(eu0=R^ zcL}bfZU&XvJr&a=osbZ5+F0=_VkMh&{SmkMDnyS_oh9kR(A@C3ovm%twcFJrr3)KE zk~P(m;oQa2u?H$K|Br|3L!e&ywH11$<_&qZerwW13ogjdWnXQw!32y?&cwuI+I(#8 z6RAE9oiR2x2B@#xPS*_d>|{ioK_=YTmfY7>w;1?gNiVnd*4BTSP%HsgG{8zHVk&C4 zx^o`e|A|w0 zlatvQ?5SzLyCz4=_E;r$++iF)FJ+mf$%k`aUjOFd4bM>pDrw;mTG@^D;dI$sWrnGQ z6WM0Gvf(n%a>)0>K^3=Ogb8z3*C9n6Es6k<0^$iO)00Y*QHy;kEHjlru1IkiDw8a# z4EL)?K5nIDJ(J~drA_&;=izUK7zfo$g;cy~4W$a{@8ih$rz_SL90f)avZn`ZEjj?Q z7#fneySu;7iP3h?l~-R5?lTUh{kf0LK0rqkD?W787(kEQxw^(rQ*qz;LSXF#xNQC! zTz5K8YWY`M0vKA>VRdwe70>iXqt~pR^Sd=(^oLrGxij;HjiytlDq=-Wd(Wfa%< z(T1wQBs{SD@o?_i#V$~N@PtKgKu^>JXb3PcWE-_)knZq|zV$Vc``6jn zSxPde?~XWs%{Zaq;)0Da7t=KFG9=}4zn+`pl3ZETrQ+>&Vx#oMZMXv&*sryvipvp0 zb*Hd<%#Wy-;8HGTp<5*lWf!ODKc?}t2i{;gig?NkAbD?LGI96G6wGo#{y&<|GAybu zT>GH>rMo*ELO`0KLApV@LFpR0L6DGcq@<)9q@|@Bq`Rf1yU+5x@A)tv=DOy?p1s$4 z))T+`-YzLRRAxhsudZ(#KRfE?aI)#yjtx5_jQ7Mk>XlhltNB~5Bzkn#bFwQ*(;FK} zdp^@3(gHGRSwQ+As8-H7QZ5g+|i!SdMZY zST2rr#2i2JfCisRg7wAi&C#!q^+zjxPvT~8?d)ZZC%&(sF`fKynt#!Pekt>gmGS*P zq+}u@O-S;TAIIb5kd@d^*FD(fcqY0t^9Ew`jq00L=ilP0O)I#G$y7BuFILHm4%&E$ zAQi4SQ^6f|s&9pVJZxgjF@?w~)iSC^t(1kO6N2BtkyC{l>ixuM6v{BGA!3w`YdjjJ z{z-;`*Vyyla;Z0UAtt3vJ-xU9t){S2VS;e0-0oy)&|nEko8dKj^EEj_C!vD5ITW|h z@Yn3nwwjJF0`jgRpFj)LdLp8Oq}^Jqde{ba_B4dlytcK4p105GUF69xGI}-h67=4N zyaTHtbv5rH6QB6uVR2J8`po_{I|3w%w*^cpRbMSX)ow}tINdE;{YBKjgnhtTH=XH0 z^T#sq9ye{q7N$IWv4NmbdcSZcfT9Ai#FX{(pN*afug{ud4)$uqs}QllQffxmi9;Ts zwuPc{(q(mAgjuW&$Vew8LZ3Z3IC(85Qq#S!h#k1 zZ8IeLs4|Z&Yko(OR)Et$&ws|aj$?mV*3_%IIO*`Ov#WG9jLQoMw*LDd!IDV7MGE;-|bt=HzJx(cY?zc(S#S|u<$Xo znqMDti7b_yPDgoWzRVv}9$Pg;(do z9|(@GAoRtL;!1=E;Gl5u4vDS?=;KLBB>{zUXfdu5ea~K`7tdT~J5ZNV+;-&xH0-+$ z9A7GjFIqSm+D>Wz#lYCd4@oa+@$hnXiDGv@;~Ykxd630M)Akb4aI(8_NswM#EGltF z7p72i##2*mgi&ugjx;w&)7b7$yY8v)_mMfAXH7rI+?r zG39vj5vIfxI`eK@u8;ElbZ@=b>^iVsD=bv&{_ah9=M;R;oVX%=8P$H|=sOYKTC?wL z3na%&S04Neax_+HlK3U3#y6-|-Yw2F ziF|9K$8gBb@SMJ~Ch8V!zB>&mkk^W1`?Sn*6OzTUtyk+V!JC%EeL%W&t zxC^?tH{0IB20v@3+gcGZPdCzz|9w<+3=*b%Vv@9>wHDuhyO-&?9hu)<`wlP12#UJG z$SYgUu}vylzO=WUj*h1+nMZbRS@!%MUoa;7ffF{(UNgju?wWPle3~B3n58Slne9;~ z$Q`!rC#aAwiQCg_68Rh>g(YQ!dHO^;He2{Hsp8%5ahFllM!f$b$UZ1s)4I}v+=2=(k7Nz)FzkJ+Kl6y_z`d)dPnfSM02VYS+}yNpk3CYtXgfG~KwuUdmC9Mz!1#3zM1`{+Htu%FywkSe*~<7P+rx z4;F*u%Amx;(%1KCp~;pn27fBIqtrd==TAG1SQRteN$qVbLdRJR-3>(}?Un^|4PyUEv& z@i{p;MHw?|@Sn6B98uqBqEf}JJ55Z&%(T>yipiB~O@;q6tI`Jk1VLiHlaFp`=(7A! zPM=f$Pt$tY(&R0j@_iW8v(@ zgkK>dE+?PWku|k9>r0)&2>3;InQzb*448dozy1a zQaRL=_{?*g>q~8iN<5@Q9KOV+Bu*iO=7`^3i^6Zi(Nt$U!+mwVD@OQFXcy+rNmmR| z3~STHjhHuX&FER#8}&Tgo~Lqos;abjsn4q8B6$pidBTA7p1u359)Y)4S&mEd0u!Uk zRFbsDLdil5HWK>8IZtNvRxf+b0Va%_)o0^iG(VoN==<6Hm{u0Ym3w+hBcwl!1|uX; zpCx4REmjo$jkPB!C!KPhqnN?`MZz9eL{i0fsCrN2n*;~T(y5OkrA=N~SVfiP>nV@d z8{MxldUwugw$C5j$8pYX1r;w{5gvp!-CU@LIM7||f&$>*r564B3dd5I@CG+6&MXzb zG;wl>blyf7OCoN1xfPCUW*P_W2HkUX%Lxqw0|z4n`Bh+$7&WX~dwMz$BFi;B ztAda874j;83X3B0#C4Gon#CT4%srhlJ~Iz1@)mkwh?%M$F7oh*3}UDB-x|cl;gw+- zF;uIk({=h#dNm)5QRb`pJpr?69B}y#ykt|enz$&hxEp+g$M!P~5jx;K<4ifgFbH#G zWMrW^Wo!qYhyz=_VMtQrmyu>X7hXh-ha|Wwbrae@>-*4LTd;ZrD_b8aUO462^9{?CtwDuh?JxARuP`mJVyPImss7fhPhYfjDBpNY}Ak(hEA zDra|*#y!gQg^jAe8W}jf&0^8b5nA+X$Y{JPQ=8k#GlDcrCb8-eu;)ElQgry(xZ$E>XL&0~ter7mB%Ux5w!0~wgY zy`+>rWw-ODgAlvM69u;g>*y;5EChb9yPvx=B4@pblnJb57cYe=+j*ZDM)_~OJzDJE zr82uc`^P`0jfrF=L<a_u-RDXI1z_PO_&GI^K>ivbmN|1 z@$7MX`>?y)HL&FbNsy(9LjrC3%2|16vPoL5664_UpCmdKp-T(0>OR5hMlxs2XKJ`> z18??g;X6Eg<_C#$0cUW_`LDU$maI|XqHHlFP13z5$y=&UaI5*S;jRy_9hTs|IiGn% zvOjhr081P`71P2^-<+NXpb0;lqO|9T{LlUI(b4X1wcYBOvU&5>)ykd#AfLE0*V0LS z`y!rwV-z&wM!f{>l!W)+v)oO`#N`W$i;FYgS+lpdJ{lr~1Wx*SF!zzyvVwM}N2_79 zz@u23oz2c%;MIEgq@N@UJ;~joa+X7tbe4QM5Wwmvh~l@# z&$2Hubb{SQZdpSfH_$kAa=AWsEFRaCm1np}5l_AJHA`&snYO;V>0l)a??rn$_Y5mE zyd|{vJ;AONa$!wV%Fu@%e)vZgL_w_{wyQ~z4$xZRlj__Z{_YVvJx3+itg;Be{qX2v zj27I|-$35%PFE;w-1PT5xuSpG8W7R1EEm=Qkrx;yfjgs2@OJ$uBm}+WrLTxx!{W*6 z=IP0x-m&9y*3rwg7NgAJJ&`Bs0n>POew(ucx`cu1lN#2>bARcO`rl`Nf=l@8?g)|C5-=AcjRD-VH!i0f6pfd1 zVj3C?K@}T^F(S0z6jbt?vF=U@jks@+zm$NvCbNyr&J8E4v8Q)Phfvzc=}uqfcI&gx zC?$&^`5V@W-|v;5-{XBozPtou0WWWFK>4^_hwS}5e4RRggLH#_SbjC4K$m;bfEaPF z2NhTn8QIs;Ndo5tI2bn^cuzb85njN1xB0I$LSt>&CJ=k*-jGDa%Rnsc>$4p*wn>{sDV!jaMElJL!&H`JHrW=e;mrjf=>WaM zf=_Mky_`k&VCE>X~K3ivlM< zu*xKyxI7xFZM`Ma%5X)2dl|=Iq3?+s0Cz0tMY*wod2@c5Z0*=B;*ILLC#`>SkVW*W z_T+ug>ca_d67!8nu&`$!{ZUhDlGGN_7gW18T$RCuWQec#@?kfwthJcNl6%+Ih2ISc zlc8TyjcyIF~ zx{EyIb+FLWho?Jt9rq_$mO>5mkOO`RJm1LQHW5ZvI#8`yEYwF z-nFv0gV(9I4Ub{!bmHFL0?Dhl7W`iKr$3jMJbV5t^V!Vuxt-Y5ze&r2JK3tn7kt>T zscmS$jgqRn`DBP$&3qoSLtqIzJp~?$D=YqEdSz}R&)XtDT3T~W`Lq05Ba;bz!}~Tn zjwv-^jruIcRYZF(-((;GkS)|Y1GzJ5rpLo@(uljXs?4Y>4v<@9W>WAA2n_6;|3r!4 zP5h&&rDe03n>nXlJb3|?-nXBAo1rv0J^f|z(0qG172yR6->50aE1LMR9dKp=Y(kI% zGlzj-zMhy?B|rb2d9gA}vUoh?g+E+HX91yxu^F_Cviva#7HHZPdD(twm{fGxh}O&r zu)!@int_Q>%7(s?acRntx>>`q`bE3G-)rBg?;MOM>s;&bd-9(VUi#+w7*fN&D3{Ov zm-}>=#*pJ}TNTJau^j|`=`ol3Xd@m5!ocS70 z2t_t-#ILlLD0~CnGnlgfM%MQ`Ue&H@`j=m$v!p6`-MB;h!Yqu$JQzCNw@0_L7b~f= z#z^yCo9p}b2{GFoGlVy^wq}5QS6&_!pp}5P0Z(wt$tnx1on)E`_hvqaYlE*Gf@cVx zo;N<C7qgKarCBYO#@-`C*Yj;n-_Oep57`rK~Ov^_Y*t=}S2GXL3(5&8Ij z_Sw&Q&vnYjf|Bmgk%&IsnQyG+ltrku6@r7@MWSzzp{J;7{(8wnaI_Wl9rY~SRWeet zOStg{G^u?!dcrjhnco!YXDA^G*f-PKU9(}U+z)pLBSSVF-Bz5S?gnnc-!D>?lbH)y zNp>E`zVh=P6pEO(8@T5*7ba(B8e*)#EZkOo_28bK{>l$$3Z-e3YFeFAHm(}N37$+j z-=ILnN?dk}9D4QB`s>iW2_us}pcCV_>pWY-{N z`gMfRvwEHxKxcrEdD-zB7n~?6wXYQ)-wttPWMlv%qFSp-u011;)G4HT9sGg?wcKZ}M-mb#?87;pPctMN-4-eD_e zISm#I-pt;k<(S3v1x{{}Xz0VG>T6P4R7d7wLH{@g*w%F#`pwzisrx<#nxK#UOU<9J zyK5Gn$C4P_7(h{Gg1Hi73oV>S@aLdjdj2C)_e|+`ns{{&@>%+{k$6J<=W6Dfo#@4N z2c*w%@z&jp#!#)Ph&l~2zkYaA4xNqDpqY9ByTewJUr-3m1%?#fn+yzlpA&XJ?|siD7Q$;oZ{!d>TRXUP{;+{d z_f=_kBcj5|4qW%;$gxdo0?rbo%bQtm%CqFYtg6Tc;9B|~(UM7{4g;V#FUN_-+MY1r zRz)7DMsH59J#WjeLwj+Tu5W4{9_C(y^sNR_b&)YnCUyYrdR6=?y>B(sOXL7g&mr zTjM>a{ZjF7&uK@kS>UtEK?x%_=*K`zgVm>A*&b)OuVuuDYz^fD0i`W%LK>;3bq6U@ zz^^cA@=lRVZ=Lh|J*}=Q_t*KG7arVuXut5?mrV8u@mv>w{rbE<-@bAmdoOpvBLtu( zh;OkviYOKU7)YqKWaBc|LUTf?kU&BQYV$ppg%6hYw2cEhk~m=qjr!3bZCyY0=r^yC zWaMSqoz@3=0RRK3u-^A31>g-4gA)~L8iTAmv1+nt0Pr2S*f}g^Om+cyYDC2 z@U9b5e|(;T%a>zqE+`{@GV=g0nUa#wBU)F)<$>BWVqq8G{!in$6l#%b$U0-D&5S^S z;_&i~EM;uq!q1(}5n!8K-Yg zz1}dRj=SENDqW9{;l}p!Bk8#IFmKVmFQ%jkNQ@8UdrOs|`=bP|k`?jseTH|0^PP4- zYJBg+&6TXj(E^Td7GLLa62}kZX=>J$54%a2_j3RvQ8K#e6n^Y|TK?qBD^y{>brr); zYj)-%>92l$iV+cac1{qL%+DgawEp2EtZcFKW6+L)WHXu2D0h0m%{g-CbCes$Ko||- zsvF_+txp`aL5TQox@Ay|=14}!B0qm8V(7wONyPxb=wxQ!DIQ|O-N`RPRD zUt4FwSk?y_S9 z$!H?Qm03K#sPgbppjXNAI8(kEI^=P@>Sp$9Jd{$pJ5}z(Q)bSDi@bFrL__Z*jb~24 zl{|d?P2yN@bOG=EU(O49z0$xL5hL%(HKXM)gp)Z`)URA95;93h8hzSm|T_Z&)8K#Id+TY5hL?%5hL(Dz1w^L*~gCUpr4AU_1haL za;GU|*joCN9=B#iX9~M5d9e^a-4#j<$@oO`SsFdLO6rVNA<7<}Vd@fIm< z_MUev<;=U-{E1*xzfXd#@NRB zEt{bE@hTXM6x_V(gUuADS$quNl3Z~c-F?#SD$ zvB}w4o1(?(upITV#;vw|n<@B;o($^+|i9hXo)*XnXMN76%Jy0SV1iR;Sz&>3e7;F*-yor4^S}`xupWM`} z+a?UdKzf88A7xL`dzfdfX!Z&T!+)CGz{K}Ib)9W(w) z3O_K8!8a=z(XR2Ek0GRhGqbLfw(u$PTKF+NM%bu36*Pe867=TnM$2ek8^2xAtE5g< z_)UpHy5Y!+5S6}*t|H)d=W%CbZ?DGYp&(zCrVqowr*i$D&~sc_qPEN{Sv+9X69bsvCv5(V8#Lm*=^1VRrtXNTWiIU zwHzIH?&Byk%_%RY$TbS)qne8M<4tpjQ?G2FO*}fjGc;pBGtIu!LO$tqDuCzYr$M^I zF1(K!zfw+BK{(7D)>#;l?6^gK&5_O6|JN!(CQnuHazRh<>g)h6-D3_u{p>M!Aa!DI zZ;u*BV8icL$IvZKWM zOW9s#azNKkpMg<>DA@wh#r^Fv?T$kyG2w&=Z@2Pj`_kIV!jg=Ia@IPi7S1`JUiGHt=7^pvx^{|~GyztjG;u#q zXy7=JNSYt|*uyCu$-cELB&v6sC*A#3nqpR`-}AjrTsY82Xv9NC+isNzDv6+LLiY=c z;b*8nYRfZPmH59%+qHfhQht0>X!wZ}+Tv>-N2~

E>kzdQKIUrkUieSK*wNQ1yJ`i_d@Oww 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 E53R-P>;M1& diff --git a/source/main.cc b/source/main.cc index 0052a16..05180f4 100644 --- a/source/main.cc +++ b/source/main.cc @@ -46,9 +46,9 @@ int main(int argc, char* argv[]) { } else if (str_argv.find("-") != std::string::npos || argc == 1){ int len_argv = 1; + pars_flag(1, argc, argv); auto app = Gtk::Application::create(len_argv, argv, "org.gtkmm.example.plug"); auto builder = Gtk::Builder::create_from_file(path_glade + "ubl-settings-datetime.glade"); - pars_flag(1, argc, argv); MainWindow* wnd = nullptr; builder->get_widget_derived("window", wnd); auto r = app->run(*wnd); @@ -67,7 +67,12 @@ void pars_flag(int index_start, int argc, char* argv[]){ str_argv = argv[i]; if (str_argv == "--help" || str_argv == "-h"){ help(); - exit (1); + exit(1); + } + else if (str_argv == "--version" || str_argv == "-v"){ + string version = string(gettext("ubl-settings-datetime version: ")) + version_application + "\n"; + cout << version.c_str(); + exit(1); } else if (str_argv == "--lock-datetime"){ flag_datetime = true; @@ -83,6 +88,8 @@ void pars_flag(int index_start, int argc, char* argv[]){ } else if (str_argv == "--lock-save"){ flag_save = true; + flag_save_local = true; + flag_save_global = true; } else if (str_argv == "--lock-save-local"){ flag_save_local = true; diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index b01728f..6f72a6f 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -17,6 +17,7 @@ bool flag_save_global = false; bool flag_load_global = false; int socket_ext_id_I = 0; int socket_trd_id_I = 0; +string version_application = "1.4"; CmdArgParser::CmdArgParser(const std::string& p_name, const std::string& p_description, const std::string& p_help) : Glib::OptionGroup{p_name, p_description, p_help} { @@ -53,32 +54,33 @@ MainWindow::MainWindow(Glib::RefPtr const& builder) { void MainWindow::settings() { map_error["xdg-open https://wiki.ublinux.ru/ru/home"] = string(_(": \"xdg-open\"")); - map_error["/usr/bin/ubconfig --default --source system get clock ZONE"] = string(_(": \"Time Zone\"")); + map_error["ubconfig --default --source system get clock ZONE"] = string(_(": \"Time Zone\"")); map_error["hwclock --systohc"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --default --source system get network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --default --source global get network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --default --source global get clock ZONE"] = string(_(": \"Time Zone\"")); - map_error["/usr/bin/ubconfig --default --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target system set clock ZONE="] = string(_(": \"Time Zone\"")); - map_error["/usr/bin/ubconfig --target system set network NTPSERVERS=default"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system set network NTPSERVERS=\""] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system remove network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target global set clock ZONE="] = string(_(": \"Time Zone\"")); - map_error["/usr/bin/ubconfig --target global set network NTPSERVERS=default"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global set network NTPSERVERS=\""] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global remove network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --default --source system get network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --source=default get NTPSERVERS_DEFAULT"] = string(_(": \"NTP\"")); + map_error["ubconfig --default --source system get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --default --source global get network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --default --source global get clock ZONE"] = string(_(": \"Time Zone\"")); + map_error["ubconfig --default --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target system set clock ZONE="] = string(_(": \"Time Zone\"")); + map_error["ubconfig --target system set network NTPSERVERS=default"] = string(_(": \"NTP\"")); + map_error["ubconfig --target system set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); + map_error["ubconfig --target system set network NTPSERVERS=\""] = string(_(": \"NTP\"")); + map_error["ubconfig --target system remove network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --target system set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target system set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target global set clock ZONE="] = string(_(": \"Time Zone\"")); + map_error["ubconfig --target global set network NTPSERVERS=default"] = string(_(": \"NTP\"")); + map_error["ubconfig --target global set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); + map_error["ubconfig --target global set network NTPSERVERS=\""] = string(_(": \"NTP\"")); + map_error["ubconfig --target global remove network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --target global set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target global set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --source default get [] NTPSERVERS_DEFAULT"] = string(_(": \"NTP\"")); map_error["date +%Y%m%d -s \""] = string(_(": \"Date\"")); map_error["date +%T -s \""] = string(_(": \"Date\"")); - map_error["/usr/bin/ubconfig --source default get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --source default get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); this->get_builder(); this->add_CSS(); ubl_make_plugs(boxSave,boxButton, socket_ext_id_I, socket_trd_id_I); @@ -86,7 +88,7 @@ void MainWindow::settings() { month = 0; day = 0; this->lacalization(); - if (this->check_root() == 0) { + if (geteuid() == 0) { numTimeHrs->set_range(0, 23); numTimeMin->set_range(0, 59); numTimeHrs->set_increments(1.0, 1.0); @@ -97,31 +99,15 @@ void MainWindow::settings() { this->event(); this->parse_text_date(); this->load_local_cfg(); + string cmd = "ubconfig --source default get [] NTPSERVERS_DEFAULT"; + default_get_dhcp = this->get_ubconfig_value(cmd); + this->str_remove(default_get_dhcp, "\""); } else { lblHW->set_sensitive(false); - cbHw->set_sensitive(false); + boxWidgetFunc->set_sensitive(false); boxButton->set_sensitive(false); - boxSave->set_sensitive(false); - btnLoad->set_sensitive(false); - numTimeHrs->set_sensitive(false); - numTimeMin->set_sensitive(false); - lblTime->set_sensitive(false); - lblData->set_sensitive(false); - txtDate->set_sensitive(false); - btnChooseDate->set_sensitive(false); - btnUpdateDateTime->set_sensitive(false); - btnHardwareTime->set_sensitive(false); - cbRegion->set_sensitive(false); - cbZone->set_sensitive(false); - lblReg->set_sensitive(false); - lblZone->set_sensitive(false); - lblTimeZone->set_sensitive(false); - lblSynchronizebChkGLob->set_sensitive(false); - cbDhcp->set_sensitive(false); - txtNtpServer->set_sensitive(false); - lblDateTimeSetting->set_sensitive(false); - btnBoxAboutDialog->set_visible(false); + btnSave->set_sensitive(false); this->event(); imgInfo->set_from_icon_name("ru.ublinux.ubl-settings-datetime.warning", Gtk::ICON_SIZE_MENU); info_status_app("boxInfoMessError"); @@ -129,16 +115,6 @@ void MainWindow::settings() { } } - -int MainWindow::check_root() { - if (geteuid() != 0) { - lblMessageSudo->set_text(_("The program must be run as root")); - windowMessSudo->show(); - return 1; - } - return 0; -} - void MainWindow::lacalization() { time_t now = time(0); tm *ltm = localtime(&now); @@ -153,26 +129,45 @@ void MainWindow::lacalization() { lblLoad->set_label(_("Load")); txtDate->set_tooltip_text(_("Date of\nFormat: DD.MM.YYYY")); txtNtpServer->set_tooltip_text(_("Enter the name of the ntp-server or its ip-address.\nWhen entering multiple addresses, separate them with commas.")); - lblSynchronizebChkGLob->set_text(_("Synchronize via NTP:")); + lblSynchronizebChkGLob->set_text(_("Synchronize via NTP")); cbDhcp->append(_("Default")); cbDhcp->append(_("DHCP")); cbDhcp->append(_("Manual")); cbDhcp->append(_("Disabled")); lblDateTimeSetting->set_text(_("Current date and time")); lblHead->set_text(_("Setting the date and time")); - lblTime->set_text(_("Time")); - lblData->set_text(_("Date")); + lblTime->set_text(_("Time:")); + lblData->set_text(_("Date:")); lblTimeZone->set_text(_("Time zone")); - lblReg->set_text(_("Region")); - lblZone->set_text(_("Zone")); + lblReg->set_text(_("Region:")); + lblZone->set_text(_("Zone:")); lblSynchronizeBtn->set_text(_("Sync by")); lblHeader->set_text(_("ubl-settings-datetime")); - windowMessSudo->set_title(_("Warning!")); windowMessDchp->set_title(_("Warning!")); lblTimeBios->set_text(_("Synchronize hardware time")); lblHW->set_text(_("Synchronize hardware time:")); - cbHw->append(_("Local time")); - cbHw->append(_("UTC time")); + array_hw_local[0] = _("UTC time"); + array_hw_local[1] = _("Local time"); + array_hw[0] = "utc"; + array_hw[1] = "localtime"; + this->bubble_sort(array_hw, array_hw_local, 2); + cbHw->append(array_hw_local[0]); + cbHw->append(array_hw_local[1]); +} + +void MainWindow::bubble_sort(string arr[],string arr_local[], int len_arr) { + while(len_arr--) { + bool swapped = false; + for(int i = 0; i < len_arr; i++) { + if(arr_local[i] > arr_local[i + 1]) { + swap(arr[i], arr[i + 1]); + swap(arr_local[i], arr_local[i + 1]); + swapped = true; + } + } + if(swapped == false) + break; + } } void MainWindow::flag_block_gui() { @@ -202,14 +197,19 @@ void MainWindow::flag_block_gui() { if (flag_load_global == true) { btnLoadGlob->set_sensitive(false); } + if (flag_save_local == true && flag_save_global == true) { + btnSave->set_sensitive(false); + } if (flag_save == true) { btnSave->set_sensitive(false); } if (flag_save_local == true) { btnSaveLocal->set_sensitive(false); + btnSaveLocalGlob->set_sensitive(false); } if (flag_save_global == true) { btnSaveGlob->set_sensitive(false); + btnSaveLocalGlob->set_sensitive(false); } } @@ -225,10 +225,12 @@ void MainWindow::add_CSS() { Glib::RefPtr boxButton_css = boxButton->get_style_context(); Glib::RefPtr boxSave_css = boxSave->get_style_context(); Glib::RefPtr headerBar_css = headerBar->get_style_context(); + if (socket_trd_id_I == 0 && socket_ext_id_I == 0){ + boxButton_css->add_class("bkim_no_plug"); + boxSave_css->add_class("bkim_no_plug"); + } + lblHead_css->add_class("textHead"); - boxButton_css->add_class("bkimButton"); - boxSave_css->add_class("bkimButton"); - headerBar_css->add_class("bkimHeadBar"); } @@ -266,7 +268,6 @@ void MainWindow::get_builder() { builder->get_widget("lblSynchronizeBtn", lblSynchronizeBtn); builder->get_widget("lblTimeBios", lblTimeBios); builder->get_widget("btnHardwareTime",btnHardwareTime); - builder->get_widget("windowMessSudo",windowMessSudo); builder->get_widget("lblMessageSudo", lblMessageSudo); builder->get_widget("btnMessCloseSudo",btnMessCloseSudo); builder->get_widget("lblSave", lblSave); @@ -300,19 +301,14 @@ void MainWindow::get_builder() { builder->get_widget("imgLoad", imgLoad); builder->get_widget("imgSettings", imgSettings); builder->get_widget("imgSave", imgSave); + builder->get_widget("boxWidgetFunc", boxWidgetFunc); + } void MainWindow::gui_exit() { exit(1); } -bool MainWindow::gui_exit_2(GdkEventAny* event) { - if (event != NULL) { - } - exit(1); - return true; -} - void MainWindow::event() { btnHardwareTime->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::hardware_clock)); btnMessClose->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::gui_mess_close)); @@ -323,7 +319,6 @@ void MainWindow::event() { cbDhcp->signal_changed().connect(sigc::mem_fun(*this, &MainWindow::event_entry_cbDhcp)); cbRegion->signal_changed().connect(sigc::mem_fun(*this, &MainWindow::append_zone)); cldrDate->signal_day_selected_double_click().connect(sigc::mem_fun(*this, &MainWindow::get_calendar)); - windowMessSudo->signal_delete_event().connect(sigc::mem_fun(*this, &MainWindow::gui_exit_2)); btnAbout->signal_activate().connect([&]() {aboutWindows->show();}); btnSynopsis->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::synopsis_show)); btnLoadLocal->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::load_local_cfg)); @@ -335,65 +330,81 @@ void MainWindow::event() { void MainWindow::synopsis_show() { int start_error = error_info; - wrapper_system("xdg-open https://wiki.ublinux.ru/ru/home", "&"); - //gtk_show_uri_on_window(NULL, "https://wiki.ublinux.ru/ru/home", 0, 0); + string cmd = "xdg-open " + string(_("https://wiki.ublinux.com/ru/Программное_обеспечение/Программы_и_утилиты/Все/")) + app_name; + wrapper_system(cmd, "&"); if (start_error != error_info) { error_info = start_error; } } void MainWindow::load_local_cfg() { - string cmd = "/usr/bin/ubconfig --default --source system get clock ZONE"; + string cmd = "ubconfig --default --source system get clock ZONE"; this->fill_in_reg_zone(cmd); this->update_hour_minute(); this->update_calendar(); - string cmd_get_dhcp = "/usr/bin/ubconfig --default --source system get network NTPSERVERS"; - string cmd_default_get_dhcp = "/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"; + string cmd_get_dhcp = "ubconfig --default --source system get network NTPSERVERS"; + string cmd_default_get_dhcp = "ubconfig --source default get [] NTPSERVERS_DEFAULT"; this->entry_dhcp_mess(cmd_get_dhcp, cmd_default_get_dhcp); - string hw = "/usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC"; - this->entry_hardware_clock(hw); + string hw = "ubconfig --default --source system get clock HWCLOCK_SYNC"; + this->get_hardware_clock(hw); + flag_load = false; info_warning_error(0); } void MainWindow::load_globl_cfg() { - string cmd_get_dhcp = "/usr/bin/ubconfig --default --source global get network NTPSERVERS"; - string cmd_default_get_dhcp = "/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"; + string cmd_get_dhcp = "ubconfig --default --source global get network NTPSERVERS"; + string cmd_default_get_dhcp = "ubconfig --source default get [] NTPSERVERS_DEFAULT"; this->entry_dhcp_mess(cmd_get_dhcp, cmd_default_get_dhcp); - string cmd_zone = "/usr/bin/ubconfig --default --source global get clock ZONE"; + string cmd_zone = "ubconfig --default --source global get clock ZONE"; this->fill_in_reg_zone(cmd_zone); - string hw = "/usr/bin/ubconfig --source global get clock HWCLOCK_SYNC"; - this->entry_hardware_clock(hw); + string hw = "ubconfig --source global get clock HWCLOCK_SYNC"; + this->get_hardware_clock(hw); + flag_load = true; info_warning_error(1); } void MainWindow::save_local_cfg() { - string cmd_zone = "/usr/bin/ubconfig --target system set clock ZONE="; + string cmd_zone = "ubconfig --target system set clock ZONE="; this->enter_zone(cmd_zone); - string cmd_default = "/usr/bin/ubconfig --target system set network NTPSERVERS=default"; - string cmd_dhcp = "/usr/bin/ubconfig --target system set network NTPSERVERS=dhcp"; - string cmd_set_ntp = "/usr/bin/ubconfig --target system set network NTPSERVERS=\""; - string remove_ntp = "/usr/bin/ubconfig --target system remove network NTPSERVERS"; + string cmd_default = "ubconfig --target system set network NTPSERVERS=default"; + string cmd_dhcp = "ubconfig --target system set network NTPSERVERS=dhcp"; + string cmd_set_ntp = "ubconfig --target system set network NTPSERVERS=\""; + string remove_ntp = "ubconfig --target system remove network NTPSERVERS"; this->save_Dhcp(cmd_default, cmd_dhcp, remove_ntp, cmd_set_ntp); - string local = "/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=localtime"; - string hw = "/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=utc"; - this->entry_hardware_clock(hw); + string local = "ubconfig --target system set clock HWCLOCK_SYNC=localtime"; + string hw = "ubconfig --target system set clock HWCLOCK_SYNC=utc"; + this->set_hardware_clock(local, hw); info_warning_error(2); } void MainWindow::save_global_cfg() { - string cmd = "/usr/bin/ubconfig --target global set clock ZONE="; + string cmd = "ubconfig --target global set clock ZONE="; this->enter_zone(cmd); - string cmd_default = "/usr/bin/ubconfig --target global set network NTPSERVERS=default"; - string cmd_dhcp = "/usr/bin/ubconfig --target global set network NTPSERVERS=dhcp"; - string cmd_set_ntp = "/usr/bin/ubconfig --target global set network NTPSERVERS=\""; - string remove_ntp = "/usr/bin/ubconfig --target global remove network NTPSERVERS"; + string cmd_default = "ubconfig --target global set network NTPSERVERS=default"; + string cmd_dhcp = "ubconfig --target global set network NTPSERVERS=dhcp"; + string cmd_set_ntp = "ubconfig --target global set network NTPSERVERS=\""; + string remove_ntp = "ubconfig --target global remove network NTPSERVERS"; this->save_Dhcp(cmd_default, cmd_dhcp, remove_ntp, cmd_set_ntp); - string local = "/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=localtime"; - string hw = "/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=utc"; - this->hardware_clock_global(local, hw); + string local = "ubconfig --target global set clock HWCLOCK_SYNC=localtime"; + string hw = "ubconfig --target global set clock HWCLOCK_SYNC=utc"; + this->set_hardware_clock(local, hw); info_warning_error(3); } +string MainWindow::get_ubconfig_value(string &cmd){ + struct Result obj_result = this->wrapper_call(cmd); + if (obj_result.error == 0) { + return obj_result.response; + } + else { + if (obj_result.error != 0) { + warning_info-= 1; + } + return ""; + } + +} + void MainWindow::save_global_local_cfg() { string cmd = ""; string cmd_default = ""; @@ -485,25 +496,40 @@ void MainWindow::log_mess_error(string &cmd){ } } -void MainWindow::hardware_clock_global(string &local, string &etc) { - int index = cbHw->get_active_row_number(); - if (index == 0) { - wrapper_system(local, "&"); - } - else if (index == 1) { - wrapper_system(etc, "&"); +void MainWindow::set_hardware_clock(string &local, string &etc) { + string str_hw = cbHw->get_active_text(); + for (int index = 0; index < 2; index++) { + if (array_hw_local[index] == str_hw){ + if (array_hw[index] == "utc"){ + wrapper_system(etc, "&"); + } + else{ + wrapper_system(local, "&"); + } + } } } -void MainWindow::entry_hardware_clock(string &cmd) { +void MainWindow::get_hardware_clock(string &cmd) { int error = warning_info; struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error == 0) { if (obj_result.response.find("localtime") != string::npos) { - cbHw->set_active(0); + if (array_hw[0] == "localtime"){ + cbHw->set_active(0); + } + else{ + cbHw->set_active(1); + } + } else if (obj_result.response.find("utc") != string::npos) { - cbHw->set_active(1); + if (array_hw[0] == "utc"){ + cbHw->set_active(0); + } + else{ + cbHw->set_active(1); + } } else { cbHw->set_active(-1); @@ -682,24 +708,36 @@ void MainWindow::event_entry_cbDhcp() { cbDhcp->set_active(0); } else if (activ_index == 0) { - txtNtpServer->set_text(""); - btnUpdateDateTime->set_sensitive(false); + txtNtpServer->set_text(default_get_dhcp); txtNtpServer->set_sensitive(false); } else if (activ_index == 1) { - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); txtNtpServer->set_sensitive(false); txtNtpServer->set_text(""); } else if (activ_index == 2) { + txtNtpServer->set_text(""); if (flag_ntp_edit == false) { + string cmd = ""; + if (flag_load == false) { + cmd = "ubconfig --default --source system get network NTPSERVERS"; + } + else{ + cmd = "ubconfig --default --source global get network NTPSERVERS"; + } + string response = this->get_ubconfig_value(cmd); + if (response != "dhcp" && response != "default"){ + txtNtpServer->set_text(response); + } + txtNtpServer->set_sensitive(true); } } else if (activ_index == 3) { txtNtpServer->set_text(""); txtNtpServer->set_sensitive(false); - btnUpdateDateTime->set_sensitive(true); + // btnUpdateDateTime->set_sensitive(true); } } @@ -731,7 +769,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error== 0) { string str_dhcp = obj_result.response; - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); str_dhcp = str_dhcp.substr(str_dhcp.find("=")+1,str_dhcp.length()); str_dhcp = str_dhcp.substr(0,str_dhcp.find("\n")); if (str_dhcp == "dhcp") { @@ -740,7 +778,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc txtNtpServer->set_sensitive(false); } else if (str_dhcp == "default") { - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); cbDhcp->set_active(0); cmd = cmd_default_get_dhcp; struct Result obj_result = this->wrapper_call(cmd); @@ -755,7 +793,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc } } else { - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); if (str_dhcp == "") { lblMessage->set_text(_("Enter DHCP!")); windowMessDchp->show(); @@ -777,7 +815,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc cbDhcp->set_active(3); txtNtpServer->set_text(""); txtNtpServer->set_sensitive(false); - btnUpdateDateTime->set_sensitive(true); + // btnUpdateDateTime->set_sensitive(true); warning_info -= 1; } } @@ -1056,7 +1094,7 @@ void MainWindow::update_time_date() { string str_data_entry = txtDate->get_text(); if (str_data == str_data_entry) { cmd = "date +%Y%m%d -s \"" + to_string(year)+ - str_month+str_day + "\""; + str_month + str_day + "\""; wrapper_system(cmd); txtDate->set_text(str_data); year = 0; @@ -1296,11 +1334,23 @@ SettingsPlug::SettingsPlug(::Window p_socketID, Glib::RefPtr build } void help() { - g_print(gettext("Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update]\n")); - g_print(gettext("Options:\n")); - g_print(gettext(" --lock-timezone Disable timezone field editing\n")); - g_print(gettext(" --lock-ntp Disable ntp field editing\n")); - g_print(gettext(" --lock-datetime Disable datetime field editing\n")); - g_print(gettext(" --lock-update Disable save changes\n")); + string version = string(gettext("ubl-settings-datetime version: ")) + version_application + "\n"; + cout << version.c_str(); + string help; + help = "GTK settings datetime for UBLinux\n\n" + "Usage: ubl-settings-datetime [OPTIONS...]\n" + "Options:\n" + " -h, --help Show this help\n" + " -V, --version Show package version\n" + " --lock-datetime Lock date and time changes\n" + " --lock-timezone Lock time zone changes\n" + " --lock-ntp-mode Lock NTP mode selection\n" + " --lock-ntp-edit Lock editing NTP servers\n" + " --lock-save Lock saving local and global configuration\n" + " --lock-save-local Lock save global configuration\n" + " --lock-save-global Lock load global configuration\n" + " --lock-load-global Blocking the global configuration download\n"; + cout << gettext(help.c_str()); + } diff --git a/source/ubl-settings-datetime.h b/source/ubl-settings-datetime.h index 60c1def..7fa3d20 100644 --- a/source/ubl-settings-datetime.h +++ b/source/ubl-settings-datetime.h @@ -36,8 +36,8 @@ extern bool flag_save_global; extern bool flag_load_global; extern int socket_ext_id_I; extern int socket_trd_id_I; -class CmdArgParser : public Glib::OptionGroup -{ +extern string version_application; +class CmdArgParser : public Glib::OptionGroup { public: CmdArgParser(const std::string& p_name, const std::string& p_description, const std::string& p_help); ::Window GetSocketID() const; @@ -56,12 +56,10 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::ComboBoxText *cbDhcp; Gtk::SpinButton *numTimeHrs; Gtk::SpinButton *numTimeMin; - Gtk::CheckButton *cbxSynchronizeNtpGlob; Gtk::Box *boxColor; Gtk::ComboBoxText *cbRegion; Gtk::ComboBoxText *cbZone; Gtk::Window *windowMessDchp; - Gtk::Window *windowMessSudo; Gtk::Popover *popCalendar; Gtk::Calendar *cldrDate; Gtk::Label *lblMessage; @@ -88,7 +86,7 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Button *btnSettings; Gtk::AboutDialog *aboutWindows; Gtk::ButtonBox *btnBoxAboutDialog; - + Gtk::Box *boxWidgetFunc; Gtk::Box *boxInfoError; Gtk::Label *lblWarning; Gtk::Image *imgInfo; @@ -114,11 +112,13 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Image *imgLoad; Gtk::Image *imgSave; Gtk::Image *imgSettings; - + string array_hw[2]; + string array_hw_local[2]; + bool flag_load = false; unsigned int year = 0; unsigned int month = 0; unsigned int day = 0; - string version_application = "1.4"; + string default_get_dhcp = ""; int error_info = 0; int warning_info = 0; string cmd_error = ""; @@ -140,14 +140,15 @@ class MainWindow : public Gtk::ApplicationWindow { MainWindow(Glib::RefPtr const& builder); virtual ~MainWindow() = default; void log_mess_error(string &cmd); - void hardware_clock_global(string &local, string &etc); + void set_hardware_clock(string &local, string &etc); void info_warning_error(int mess); void synopsis_show(); - void entry_hardware_clock(string &cmd); + void get_hardware_clock(string &cmd); void save_global_local_cfg(); void fill_in_reg_zone(string &cmd); void load_globl_cfg(); void save_local_cfg(); + string get_ubconfig_value(string &cmd); void save_global_cfg(); void save_Dhcp(string &cmd_default, string &cmd_dhcp, string &remove, string &cmd_set_ntp); void load_local_cfg(); @@ -172,15 +173,14 @@ class MainWindow : public Gtk::ApplicationWindow { void append_zone(); void append_zone_glob(); void update_time_date(); + void bubble_sort(string arr[],string arr_local[], int len_arr); void update_hour_minute(); void update_calendar(); void read_file(); void parse_text_date(); void hardware_clock(); void set_ntp_toggle_glob(); - int check_root(); void gui_exit(); - bool gui_exit_2(GdkEventAny* event); void wind_close_ntp(); void wrapper_system(string cmd, string thread_str); void info_status_app(string stule); diff --git a/source/ubl-util-standard.c b/source/ubl-util-standard.c index ef040bd..3b753b1 100644 --- a/source/ubl-util-standard.c +++ b/source/ubl-util-standard.c @@ -44,6 +44,14 @@ inline void ubl_make_plugs(Gtk::Widget *LeftWidget, Gtk::Widget *RightWidget, in if (left_plug_id>0&&LeftWidget){ GtkWidget *plug=gtk_plug_new(left_plug_id); GtkWidget *toplug=GTK_WIDGET(LeftWidget->gobj()); + {GdkScreen *screen = gtk_widget_get_screen(plug); + gtk_widget_set_app_paintable(plug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(plug, colormap);} + {GdkScreen *screen = gtk_widget_get_screen(toplug); + gtk_widget_set_app_paintable(toplug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(toplug, colormap);} if (gtk_widget_get_parent(GTK_WIDGET(toplug))){ g_object_ref(G_OBJECT(toplug)); GtkWidget *parent=gtk_widget_get_parent(toplug); @@ -52,16 +60,21 @@ inline void ubl_make_plugs(Gtk::Widget *LeftWidget, Gtk::Widget *RightWidget, in } else gtk_container_add(GTK_CONTAINER(plug),GTK_WIDGET(toplug)); gtk_widget_show(GTK_WIDGET(plug)); - gtk_style_context_remove_class(gtk_widget_get_style_context(plug),"bkimButton"); - gtk_style_context_remove_class(gtk_widget_get_style_context(toplug),"bkimButton"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"noborder"); - gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"button"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"button"); + gtk_style_context_add_class(gtk_widget_get_style_context(plug),"bkim"); + gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"bkim"); gtk_style_context_add_class(gtk_widget_get_style_context(plug),"primary-toolbar"); } if (right_plug_id>0&&RightWidget){ GtkWidget *plug=gtk_plug_new(right_plug_id); GtkWidget *toplug=GTK_WIDGET(RightWidget->gobj()); + {GdkScreen *screen = gtk_widget_get_screen(plug); + gtk_widget_set_app_paintable(plug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(plug, colormap);} + {GdkScreen *screen = gtk_widget_get_screen(toplug); + gtk_widget_set_app_paintable(toplug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(toplug, colormap);} if (gtk_widget_get_parent(GTK_WIDGET(toplug))){ g_object_ref(G_OBJECT(toplug)); GtkWidget *parent=gtk_widget_get_parent(toplug); @@ -70,13 +83,9 @@ inline void ubl_make_plugs(Gtk::Widget *LeftWidget, Gtk::Widget *RightWidget, in } else gtk_container_add(GTK_CONTAINER(plug),GTK_WIDGET(toplug)); gtk_widget_show(GTK_WIDGET(plug)); - gtk_style_context_remove_class(gtk_widget_get_style_context(plug),"bkimButton"); - gtk_style_context_remove_class(gtk_widget_get_style_context(toplug),"bkimButton"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"noborder"); - gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"button"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"button"); + gtk_style_context_add_class(gtk_widget_get_style_context(plug),"bkim"); + gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"bkim"); gtk_style_context_add_class(gtk_widget_get_style_context(plug),"primary-toolbar"); - } } #endif \ No newline at end of file diff --git a/style.css b/style.css index c1c8a2f..dcfb5c4 100644 --- a/style.css +++ b/style.css @@ -13,91 +13,68 @@ .textHeaderBar{ font-weight: bold; } +.menu:hover { + border-color:alpha(@theme_text_color, 0.01); +} + +.menu:hover >* { +border-color:alpha(@theme_text_color, 0.01); +} + +.menuitemtop{ +margin-bottom:0px; +} .menuitemtop *{ - margin:2px 2px 0 2px; - padding: 5px 10px 3px 5px; +margin:2px 2px 0 2px; +padding: 5px 10px 3px 5px; } .menuitemmiddle *{ - margin:0 2px 0 2px; - padding: 3px 10px 3px 5px; +margin:0 2px 0 2px; +padding: 3px 10px 3px 5px; } .menuitembottom *{ - margin:0 2px 2px 2px; - padding: 3px 10px 5px 5px; +margin:0 2px 2px 2px; +padding: 3px 10px 5px 5px; } .menuitemtop:hover { - border-radius:3px; - background:@theme_bg_color; +background:@theme_bg_color; } .menuitemmiddle:hover { - border-radius:3px; - background:@theme_bg_color; +background:@theme_bg_color; } .menuitembottom:hover { - border-radius:3px; - background:@theme_bg_color; - +background:@theme_bg_color; + } .menuitemtop:hover* { - border-radius:3px; - margin:2px 2px 0 2px; - padding: 5px 10px 3px 5px; - background:@theme_selected_bg_color; - border-color:transparent; +margin:2px 2px 0 2px; +padding: 5px 10px 3px 5px; +background:@theme_selected_bg_color; +border-radius:2px; } .menuitemmiddle:hover* { - border-radius:3px; - margin:0 2px 0 2px; - padding: 3px 10px 3px 5px; - background:@theme_selected_bg_color; - border-color:transparent; +margin:0 2px 0 2px; +padding: 3px 10px 3px 5px; +background:@theme_selected_bg_color; +border-radius:2px; } .menuitembottom:hover* { - border-radius:3px; - margin:0 2px 2px 2px; - padding: 3px 10px 5px 5px; - background:@theme_selected_bg_color; - border-color:transparent; -} -.menuitembottom{ - margin-top:0px; -} -.menuitemmiddle{ - margin-top:0px; - margin-bottom:0px; -} - -.menuitemtop{ - margin-bottom:0px; -} - -.bkimHeadBar{ - opacity:1.0; +margin:0 2px 2px 2px; +padding: 3px 10px 5px 5px; +background:@theme_selected_bg_color; +border-radius:2px; } -.bkimButton{ - background-color: transparent; - opacity:1.0; -} -.bkimButtonPlug{ - background-color: transparent; - opacity:1.0; -} .noborder{ border:none; } -.buttonPlug { - background-color: transparent; - background-repeat: no-repeat; - border: none; - outline: none; + +.bkim{ + opacity:0.99; + border:none; } -.button { - background-image: -gtk-gradient(linear, - left top, left bottom, - from(@entry_background_a), - color-stop(0.20, @entry_background_b), - color-stop(0.85, @entry_background_c), - to(@entry_background_d)); +.bkim_no_plug{ + background-color: transparent; + opacity:0.99; } \ No newline at end of file diff --git a/ubl-settings-datetime.glade b/ubl-settings-datetime.glade index d179374..45593ac 100644 --- a/ubl-settings-datetime.glade +++ b/ubl-settings-datetime.glade @@ -143,6 +143,7 @@ + 659 False @@ -314,7 +315,7 @@ - + True False vertical @@ -356,7 +357,7 @@ 5 6 6 - Time + Time: True 0 @@ -428,7 +429,7 @@ 5 6 6 - Date + Date: True 0 @@ -453,7 +454,7 @@ Format: DD.MM.YYYY 6 - False + True True 5 @@ -706,7 +707,7 @@ Format: DD.MM.YYYY True False - Synchronize via NTP: + Synchronize via NTP @@ -756,22 +757,10 @@ Format: DD.MM.YYYY 13 Synchronize hardware time: - - True - True - 0 - - - - - True - False - 55 - False True - 1 + 0 @@ -825,7 +814,7 @@ Format: DD.MM.YYYY 5 6 13 - Region + Region: 0 @@ -863,7 +852,7 @@ Format: DD.MM.YYYY 5 6 13 - Area + Area: 0 @@ -1041,6 +1030,9 @@ Format: DD.MM.YYYY 0 + 1 @@ -1126,6 +1118,9 @@ Format: DD.MM.YYYY 1 + end @@ -1144,19 +1139,9 @@ Format: DD.MM.YYYY - both - True - - - - - both - True - - - + diff --git a/ubl-settings-datetime_ru.po b/ubl-settings-datetime_ru.po index 7472b4e..7d32a25 100644 --- a/ubl-settings-datetime_ru.po +++ b/ubl-settings-datetime_ru.po @@ -16,6 +16,9 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +msgid "https://wiki.ublinux.com/ru/Программное_обеспечение/Программы_и_утилиты/Все/" +msgstr "https://wiki.ublinux.ru/ru/Программное_обеспечение/Программы_и_утилиты/Все/" + msgid "Copyright © UBSoft LLC, 2022 - " msgstr "Авторские права © ООО \"Юбисофт\", 2022 - " @@ -94,8 +97,8 @@ msgstr "Изменить параметр NTPSERVERS" msgid "ubl-settings-datetime" msgstr "Настройка даты и времени" -msgid "Time" -msgstr "Время" +msgid "Time:" +msgstr "Время:" msgid "Clock" msgstr "Часы" @@ -106,8 +109,8 @@ msgstr ":" msgid "Minutes" msgstr "Минуты" -msgid "Date" -msgstr "Дата" +msgid "Date:" +msgstr "Дата:" msgid "Date of\nFormat: DD.MM.YYYY" msgstr "Дата\nФормат: ДД.ММ.ГГГГ" @@ -118,11 +121,11 @@ msgstr "Интерактивный выбор даты" msgid "Change zone setting" msgstr "Изменить параметр зоны" -msgid "Region" -msgstr "Регион" +msgid "Region:" +msgstr "Регион:" -msgid "Zone" -msgstr "Зона" +msgid "Zone:" +msgstr "Зона:" msgid "Sync by" msgstr "Синхронизировать" @@ -130,8 +133,8 @@ msgstr "Синхронизировать" msgid "Automatic time synchronization" msgstr "Автоматическая синхронизация времени" -msgid "Synchronize via NTP:" -msgstr "Синхронизировать через NTP:" +msgid "Synchronize via NTP" +msgstr "Синхронизировать через NTP" msgid "Time zone" msgstr "Часовой пояс" @@ -1648,24 +1651,6 @@ msgstr "Введите имя ntp-сервера или его ip-адрес.\n msgid "Cape_Verde" msgstr "Кабо-Верде" -msgid "Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update]\n" -msgstr "Использование: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update]\n" - -msgid " --lock-timezone Disable timezone field editing\n" -msgstr " --lock-timezone Отключить редактирование поля часового пояса\n" - -msgid " --lock-ntp Disable ntp field editing\n" -msgstr " --lock-ntp Отключить редактирование полей ntp\n" - -msgid " --lock-datetime Disable datetime field editing\n" -msgstr " --lock-datetime Отключить редактирование полей даты и времени\n" - -msgid " --lock-update Disable save changes\n" -msgstr " --lock-update Отключить сохранение изменений\n" - -msgid "Options:\n" -msgstr "Опции:\n" - msgid "Save" msgstr "Сохранить" @@ -1807,3 +1792,34 @@ msgstr "Успешно записана глобальная конфигура msgid "Local configuration successfully written" msgstr "Успешно записана локальная конфигурация" +msgid "" +"GTK settings datetime for UBLinux\n\n" +"Usage: ubl-settings-datetime [OPTIONS...]\n" +"Options:\n" +" -h, --help Show this help\n" +" -V, --version Show package version\n" +" --lock-datetime Lock date and time changes\n" +" --lock-timezone Lock time zone changes\n" +" --lock-ntp-mode Lock NTP mode selection\n" +" --lock-ntp-edit Lock editing NTP servers\n" +" --lock-save Lock saving local and global configuration\n" +" --lock-save-local Lock save global configuration\n" +" --lock-save-global Lock load global configuration\n" +" --lock-load-global Blocking the global configuration download\n" +msgstr "" +"GTK-утилита настройки даты и времени для UBLinux\n\n" +"Использование: ubl-settings-datetime [Параметры приложения...]\n" +"Параметры приложения:\n" +" -h, --help Показать параметры справки\n" +" -V, --version Показать версию пакета\n" +" --lock-datetime Блокировка изменения даты и времени\n" +" --lock-timezone Блокировка изменения часового пояса\n" +" --lock-ntp-mode Блокировка выбора режима NTP\n" +" --lock-ntp-edit Блокировка перечня NTP серверов\n" +" --lock-save Блокировка сохранения локальной и глобальной конфигурации\n" +" --lock-save-local Блокировка сохранения локальной конфигурации\n" +" --lock-save-global Блокировка сохранения глобальной конфигурации\n" +" --lock-load-global Блокировка загрузки глобальной конфигурации\n" + +msgid "ubl-settings-datetime version: " +msgstr "ubl-settings-datetime версия: " -- 2.35.1 From 4a61e799d6d88c583391a4e015dd18e53bdc1c82 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Fri, 17 Mar 2023 17:36:53 +0600 Subject: [PATCH 2/4] fix --- Makefile | 2 +- README.md | 21 ++- screenshot/screenshot.png | Bin 61938 -> 60531 bytes source/main.cc | 11 +- source/ubl-settings-datetime.cc | 306 +++++++++++++++++++------------- source/ubl-settings-datetime.h | 22 +-- source/ubl-util-standard.c | 31 ++-- style.css | 103 +++++------ ubl-settings-datetime.glade | 47 ++--- ubl-settings-datetime_ru.po | 72 +++++--- 10 files changed, 335 insertions(+), 280 deletions(-) diff --git a/Makefile b/Makefile index f68f4dc..bb367fd 100644 --- a/Makefile +++ b/Makefile @@ -21,7 +21,7 @@ all: init build init: @echo "Initialize ..."; \ - sed -r "s/(version_application = ).*/\1\"$$(grep 'VERSION' VERSION.md | cut -d" " -f2)\";/" -i source/ubl-settings-datetime.h; \ + sed -r "s/(version_application = ).*/\1\"$$(grep 'VERSION' VERSION.md | cut -d" " -f2)\";/" -i source/ubl-settings-datetime.cc; \ echo "-- Build path: ${CMAKE_BUILD_DIR}" depend: diff --git a/README.md b/README.md index aa70440..38962cd 100644 --- a/README.md +++ b/README.md @@ -32,10 +32,21 @@ $ sudo make uninstall # Usage ```sh $ ubl-settings-datetime --help -Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update] +GTK settings datetime for UBLinux + +Usage: ubl-settings-datetime [OPTIONS...] Options: - --lock-timezone Disable timezone field editing - --lock-ntp Disable ntp field editing - --lock-datetime Disable datetime field editing - --lock-update Disable save changes + -h, --help Show this help + -V, --version Show package version + --lock-datetime Locking date and time changes + --lock-timezone Locking time zone change + --lock-ntp-mode Locking the NTP mode selection + --lock-ntp-edit Blocking the list of NTP servers + --lock-save Locking of local and global configuration saving + --lock-save-local Locking the local configuration save + --lock-save-global Locking the global configuration save + --lock-load-global Blocking the global configuration download + +$ ubl-settings-datetime --version +ubl-settings-datetime version: x.xx ``` diff --git a/screenshot/screenshot.png b/screenshot/screenshot.png index 083519feb1f503db56493ccf32ede53af19cd529..967227a79c0cfe76905df92eac918d10aec2ac0a 100644 GIT binary patch literal 60531 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 literal 61938 zcmaI7WmH^E6D>>#4grF@YjAgm0Kwheo#0Mz*90Bh-CY9&2p%khYp}uH;X8Tr-1Ysr z>$27`i{YH^KGjvbYIp64QdX3HheUt`1qJm^Rz^}43JO{h3hGS<0vzzkL849#@CM^5 zE~}0J{P-c5M?yi7LCH#rse5G|WqW!N&9_IaFIJ>z&QvUDda|_fptNlV*B==BptZxe zIEf>UyrUuy!;pF7QcgaX2!r9%*k>Hl+1G8dg3R17ziiuVvHMb=Ielc^B4en-yys6M zw3O{K={cFhx5u-7zZ=VG{s#s&NR$j60VY@t5A@LI=xN-%1XYeXAuAjZXl4a+R^4)L z<6nje+6a}pk}D-Cm=YvWK?n#Zg@O*E!II*Qg*ksu+yM+k6~E7sAVMYE zZ(48KDu4jv0sLP{@+aTh|w4~=sJv=P>h>#E~Nz2z~sPxe&Lr9l`XE9A9`j_#{w?*^Be5s4b{{~8Tk%viI&rtME6TZ{WSmMrQ zz$`6I&uTa>y0c9P!~ZuKOo>|=8IsPix`k)yq*~}=k-pj|e)t&ajT!-Q#YM#`@<8cK z%6|(m{uF^gA(dP<##qE&3g19&h=Xx`uxc%H7+mT@nltJzL-AAZuc4s(*r*PIe}Xcl zEYf=Jh|3-LmFl(2Mo+}LI|+4CI-S8O)XSXzo&j1dnI;k%6&JhR|Ey$($emyM0!}4O zMN08rkx1cMwn6!S;{|=sD#Vd&nE%*Z8k$)}fi+_4Bj2K6qMRCHszh+WObg{6r*KqR zZsl5>TVZ@BD2tlU$&xsio;etltWpFfqNp_G`K`QRt$_VMJCd{vJZ%2!JDm0Tz$kqS{M9OULnkf*G7T3pgXBBioWXC*S$yQt`R?C4SC zRw~?0MnN1yl((Ee(bhG8+@SVvon!4KNMR1 zNMXIM2XXnSp8E?-QIB40BxZ1$;yjQk22IJW<=9riLexLp3m+0s6wM%QDp#_G@gFSrih#K7 zp^P{3`o59y%UD=g(CX2kBbZK?I+2!SbA07_xkj_Cs2mwXW1(S`#mFE*(=u=+&Yc2{ z#UBgsFV3hXpny_r@EyZT+V^dd1V zc3C^zkHuNB^nS?vl*bo{ZZ~4I`jd|6*KH{hknaogeJbEw&eqP>>!h5PvgP$j>sC!i zrSEb|a8)*Sutd7naJ=W@gR0uBwf&XLbaC4G&eJ`kPE%c@0ww|sn=%!$_dV>&)3aWA zSrr*IwcmE&^Q|K}tw6-MywaSPj@U5UQugSCL8C0&oPX4;Sk!DEX96fKLA{}3ZTUnn znK^REvwqu!m$%xAZMDP0VF#Q2Vk+?Y>&x>4htHMu!!4uv_V3l$L({#+f$YLaU>WJG z-WbmhXk@e7`O}9MW4jaMkLJvM#&v4;7+GHSs|{fmayT3o4{lJuYYoOOiskqhKlDY# z&mR0avYFjqtmIkbC!Py*70?Dv2l^*4Fy#Jr8qQ zj1GsDX`|E-;qzWK&%tUX59P;LGAtxEbLGIE#rm|()z11Ndy%*Xu8dvk(0SYZmXcJk zp*Oyh#9JYso2{%2jtoI}g51D|5w=!o=Ph=p6aC$Z?BzvE1VxOMgM*cekmZH0&y=tC z;NG(8>U=qHP21|hxf0F~i@5`{{l!im1qB6ji#>FtushQit16>boG&JnADwT$9RQy? zzYL~rxbZJ`yV6!_1+0#w=B}78RIRLV>0wI5H3W}g(8u{T$VU$b!>p`OgR0{c<_13x zr6;M2%`tF=!k8EFCoyUUlV=!q`&?cyuy6$SLD#hJ>VAwPg8i=N)GL*6vWm~<@{POL zvU%}y>C!pZ{eB9DY2)nzazRH&N2I{LgI+K7#Ifa%GL_*K95GX`hK6)DR~#v7>Y}0| z=RapA!uNNSJp~BxjKeRGF zxV%9YenbIH450=3!P7J2272v_IlN|SFx+pfdOGuGuiVe(s(AcCc=fu*KIwerQJLam z_u5ysH1c-;(V{^3`|@}1dZZ3Z>&sd1c52{Y1GV49`SANkr^j4Ulg33aNYpT8%P>RZ zV*LkUBTBti`^^x~^*-C?p=#fR;eje-=At5LG{3kwM#Hwmd4}HKGph~Wn6EEjk>)F> zj-5xWly7GnwWmt^PwsY_mut&TZ=45i9rN?*5~WG*3_zm`@3UM_ScQBW_&tLr`c4%P;se?zaux)D`Tyxih)qzp$4>Q^kDxS3eTxV z^K+|g1=)vBu4EDBL>?e+4Q}&&)_~VX>3grqVZr-9ul06^nnb7qz20Xg;R$$)wx1?! zS}7yUqi2Zh9beUrXMh#%GzGmaw?z$Ckd@thieWC1p333PQoK1{9eV`4$H3Lff2#Y| zq+UA_6w(W>H5jnU_3O_TdB(TXsy6*uXHryBQXjCYEBtzeDV~p>X5`KVpr+sA$}}Gl z>dDJ`?&X7Bpw&_=zS{u->ZkP{AiBFAQG-Ok_?~np?BxbTFD;$Le6H=@{Ag=yd$<35 z+qMO3z`UDbu6u~fBz-0>w+D;>c&y~bnNskEti)eXm1Di3=|PS>K;gjP9{Vd z^6v2WR-FJIw+oe)p(|6u>p9xbhVf>eHOaIZ1D)$@Etn9oE<={(R>#2N`((uZoill`|L+)zj?4_HOq8^=5lMx^ z8*U|MyM(o^4NfaRqRjXHY+ZAwFNrvANoFb1lJ?v((|rO>YTTPoN&`^Vwy`CLQIW7K?5FE*oa!GinjJok=K_GP*!oIO1&>{y{?OK+b?r+KOW~| z99&-ck2c|RK;1pfDm6dTiW_k`oe=dbHYMo=I1^&v0C2qwNx!xOvpYPr)BWtaTX8*l zJ(=_8mnYuq(Qnhnl;T@ll%2A&*8QW$GI?o!CZ_R@9G1#h*5K`)4?9IXe(Em7Pwd-n z9Y(SQoeQ1#KJb{#U1tk<|9Zk9xF$-* z7fAV7SlBAFeyta|;8$$L(pRV<#q{qCEKk(~5Qz4#U&>QU^OY1W*<6l(V=oUrhF&K+ z$DNF0S!^CeK1F1{s|sSYrgP+@)FcRArcH_0`b@ow+w7T8E-$hkAnz%mJgPy z3H={#D59uDbJtgrjUed#=UHh%g9%5Wmu>l_O88;|sdc zJ@!7va}39ujTA_IBjzjEAwJcoTz6di>#&W?ZLIk|i#-l@D;K$Z9)ec!#7YJROmaBP ze=2vzOqYIXc6PcQeA3k=kQyAk^NS;5c6d)U4e6;Xi(Fwg&^cQaD9;9}KvJ3dY^*z0`JyQ2n0jl!ryRsJi!=x z-QX*KOMh0Q@HZ^TI`Y@Ba=wfMXE+Al&j-3`=Ok0HT_4FZ-npoF*`AMu$!D?V7z+7P z3Dq*+{LCnbY2ZMlMK3Y2?XD!hx;iw+nj}+H)zZpwp^2$;vcIIu?Qc;3;9Vi@9PNg8QyahDvD%Jn+^Rc)MEKvqdR!E zOMfakIW;*Ml^%X|AL|bC!v89Dw>$p+GCeCx-=)KCb3V;bQUwb&Ew#aXGYy4UI17Mo z45Tox)8p2*hX=y4%Icj)CE@8%*{YZFZvUL5?e1EBt6j#Sc+y&hjCX`=;vgC|d~QD& zC=8sQz~y5`y#`6llTrdHsWABrK^07?7#vbi#7C^WPo=~k-in!jHx(=+rqV#C4@DRu zM@>tU_V2JC&wG)HE;xRru^tW*C)K-SK9TXJjvkB_AG^oVLbCCH?5`Od;pAZs=*{)_ zy(JrC*D?we3iP`phYCj}oveFLne@f+{(g>YU8gl{G#Y7U#gWW!ujlhKKO8E-xYk&j zine-@LN`|0H|L3WJX*9_Udi}@B50+*DTI;55$GSq~>*YYWF zq9TRSs3CMY@X4%19yB>g%w)>5*8U+QBZG)fpMabUqdZM=q28Zx-F{8d#}bZXsuM~{ z^NBmPY!&Kng_p1vm=N$5&UxaRhuw5eMmQUjM89C(-%?>A95#2#Y#P@{vZxd(Tml}g z?plv$&&UnYh{Y%zyv%-EgY-pv4>XA0+!{Ml&{c&}$`Mv|Wbg2>7D+1*v$PB1PHCW& z#&dtbJAMSm(}OwQjw`^JByfJLv^yX#g1duPXfsVxb} z4Ikt9vl~mB1j&(@#O9$YwQ7GHxT&fbu93Gig~eaN3>KD^CCXwBU+(k|0(HR_b(D9~ zvbYYJO#O-F#(cx4)cJW=6Av0FQuW^(f~q4E26`oj@i0rbl3uE?NkpoN66`KACS$2i z2g|Kam1d0O_{s|!yJizFG`o8{CTL;l+L{vHI`{$*mn24vcfvg6(s%ue$Ka3^*CEx; zdp*WtUzu9rmIT3vX9exdkdEl+n7>?tMeq^Dur@8H+t+pbwuhAGU8?}`-}p`0JvUb| z&?r7O>h)m4HFTk$pV#J&K$@`E@68b<`<`Ra39uQHKl{^n&jG4xYV>rBTa^}ah+*QH zWTVG3DW2;-9Hye&s+u05DMtQ-_*QX$t6lrYo8{0cApm?o=6;5=)2uNEQY%zZQ5znw z7b~nBlG$%L3V>tqI&9=QR~fO2+Sokdfh3PKWfc^tSwwQPR_a>wIy!dd1?wR_1qFio zIMjlXJJ^33O%GI|gHmsanf2?wIIdo3cbKzLeryp$Pujm9`C!(d+&y5WlszQi^fG*v z{?NhS(9i%lk?w2K!MWrWhtA?6U4wifSZ@90d9jBJ*nrBwXz*Tn{~(@3(VpafrDp9@ zCQ$f)Or`?r5-Cj&)Y+2Uv8IEhf>wZZCan4LhbSAcTV50)X3~A) zJ|y&eA8g&-nk45cm<1-{G5<;>Tw5N)Yn2UNF(XO%gG9j>$`~OUoWh_rTPTeddn&7D zj*l3orTP18GZoG!CrzwuWJ&`01A;)ePZLoV&I@iss1bsmCTptb1D>MZy)yemd|r{S z=f%b4VuuBCb91w~xjF0eN{0Ok`VCB*s@iA%?1du_eP&!WcgI_=tiWlhu7{bJ&|ond z`JC}+3%O>0NcM6YB4)D}b;7X3M@yRG2vne)mywmt&tKdof1_5SBvP^S2LKdV*Us{) zDr--I;kSgps|%IZ1FjCh2{i_t4d&D0LrPgNq43FpT@OeAksHo18&=U%8)(&Qq59@1 z<&7UUIB0HR)fjNByX$xN2K|Pp=jKB0Z#AkYvW-H}ZHUA26dZ<(Bbn7}bz7r(ZfNPp z_v#vsN;ui%YH2;I8kHqra$(NSA(SQL;Pb;HW^i<$&5HH55UmjK78G6wbpOZe(t@rm z9-}}59&Eg9$uSgG=QDITR1$Hs!Zd)C{dEs2`lGjTnzwz%iC{yYq=UUl^Kl(3lV)9d zA+N;P@$tyc>kxRK=r<64Dzm8;~iEKQ!u1*%G8TBQHA(xlY(bCeUU5%r7 zIId474MdbzR$2gAPa7zcRvdY@X%%O>906VcTt3;Qw5w{MF?dv2vzyT?m_JA@b(kAp zG8KYZTMLaTC>9JCRl`)e7(IXo-VYC`mX29fP77p!L&7u}D5eu4aRPsEd$vRWFpNj@K^ zrVWS6ex*NI%Wi7ogxK0G)&&UtEzOKsBhBlb&x_MOFXf5-J%Ir@+Td!Z9RodKZkuxZ z-r6I8E)3K{KBh@jngP$)a=0w?G6E`=oMBx#k zzbrwkQjLF@;V+3Vudd#V3zX~_KYcowT4*+dC+%9k$pd?pt<@?E{JxV3#VkG%h>49w zDVg9++e*fm;a~@_Y6qkMYT}v!r~uzt{oB(Q2y+^^u(s9M2p3yr<{OhxnS9`cL>4QN;SBFH`7^83$<2b_RuY4=H zF`d<49;eleVJbD=#o&1od9#E-98Tu!LMF-cq6q*J*Ld9sfWOMUtU`+kxGTt zu0#409U-jjLXPg!f>0?8G;gqQQKI~2T0+y}+9XY;@(hQ=Q2S=&^OT4{cq(FS7F~#o z6+%J$u4MV+*Eq?CQneI9kkQG5=eY}5(V|Hp1=MN&6+^0)a}cuCR{zi5UQz}=YAAo67rg?5q@s%QjBBC<*%(rE6rP@Y zg@lZzvf>QbN(Kjc;A8AYbDANELePR(I=+<0wyq41=y+V-@g7}W@SOCHNs+^vgDJmgbt^{r~Bf7(rVhbOa( zVuF6m}3bJe>-FrDS($Z8}S}>GO#w*DB+s5t1=t^RXErsx#z0cGgp|?r<;h+ zrL9qcZ|D5+`DqvT)}sZ#l&atawv?b>;2W=dKKiM~e3RYupd{}HG?lc0br;@1^akpx zxu!e_j4~EJbtp}^IlhY;PW3)Uycxl>h;5oy|$HgOxdv6pnTN{?&mM{b`<*H?<^N)8{12`^OZg<cS68c4p$ za~pPS7Qn$e@I+*bMDEJ&6nEJN-#iaOrc%ls ze=VV5h6YAY`Tw34x-Tje{lEVxdWVwzcm1fVd~k)p*US&^Ls#FMTkg2EAVT*c#_Xpl z3Q6XAKbgI?zWVLiLQEV!aByUgsrX58mzxsZjkCar{~FzY_dJe+nu{?~lclq@(c%5S zw#+`(km7wzB>BGy$k2mj{xy^66aH`0Q^NeW8EPctk^d}_bZr` z1ccSD;A^Xr%%w;J0Uw z(l3P$3{2Hq)t;#?lUMIih-V5XZvJz_{V4j#r4NQs%-!aAEWKXDR)3>!ndbE{!D?s0|tPSIR$4bqwxh5u^=QUX)=Ni;irI%<%M;CP(b{MjJy zP(5{({tRES^o{1b(@8H}<$V7s=`-5e5RIXq4T;&%mD$Qd5EK!g>IBp4HLlNfci2nm z>Zp*2@B7-;D7UF2&A`UV*XGodp3~8`tqN&6NC0I>#B*Yr(LIW&z->-$H^TR5?Dgc6 zjEQw45ZZS+mcWl4R@`>r{^^(3Eoo0d zX$OZxvg_ip9+Rb5BV}bjp)hJ5*2mFx*9~LX#~b3!4#F47-Z!l?Os~2$O3!>of!$2~ zn$PQXNw0+tuLGp(rbFXKD%vh@wG5x>BG9znvU)?NM#g)xMo0OfP>HI@RyjbA0p}lH zZ|C5Pd@V0WD|4m4d5*Q31o;gc1P*?6g+2Uz`l*bha9*Lx1>gHM1iN~a&vu*`alYPm z`1R>d2MPiqpg-`&+{=2DyE%z-kf`#TcMA+SWvD(9T55Q`zHdh%xshORWC35S_B`j= zkXY`hVo~SwN6kBG)h_mh%8C>g?I}F{DP@6j9#9A@X&a8y_d9s|Emc#h==!^a6V$Ic zEaST}(&@t6iT96j4xE~VvETsAcAAr}NAC#|f1$xfp6Lf%1Q=ReHdqynl>4t19-S$j zC%m9bt9LUk1|A2_%$??V`HABkQ%ojftr3Mqiwl;NkJk);mh2`i=PQo=PE%>is;ahg zI$2;vQ?Z#lpG<%*0j$<|&UXzhg#tN=b?g751!!xF@i>{IAMkn@S@s5A2frr@9nfIJ z^<5T2?C);`NCM8_I?~*BhCN?WQWz%S|J-08jp%#aON?i9MibWLj%HY)Y@}$3>;W4K zhAe!;f-ikXx65;DH1-axusN%wbr~Vj6E?Q%=7fVSEMZ4 zcL@L4d-Gnv>+kEXFIDU~C}Pd{s;p-`lP{CcRmrDZN`BJMW(%O5--2kiNyyR$KSih9_ zsp)1prv>v}VfS%$V34S@>1>Ubrh7s zd)s^rd=8>)dy{yu-y3%Hv|9skTc3?_5}saYj=gGmh`NNllsz5W0zN9g%~OTen)ugJe}b)$2(7%_7+P)G71jf-6Lg5{`=t8L?K@^Oa!=duNhva-*_EvBjzt%5zX87 znhaBdw``prDXOX%IDtaGZrh^_G)*5~Q?%qa^5LDJHb71{=ZkxG<>fZUHx}FNx45;e zr;S|t!oGs8yER3DuN2|$juF4J1bTD*h0?!nj!J}3D{{T&JEqg*h3UQ8aJR!!^QrA$ zOuoZYHrJin%jF4wKj3=~-rL)bd!5a4jjH#hZRuBLsr0RgxP(X>?)I?V<UC@ZU_S-aL(dZ~%Y%2-@)HDyBL`()sAJz7{o<8sVq zMp#`|7PADm-MlVY6D7&o*jjzff{vhwYKlaWFf3(bbC?HdXzw6C5LgBG>;d1LO zMBQF6=)W1W@bJ-+_IQ1&AnfOYP3G5 zIeEOtUaHqJU`zTNN`X(8$PUW`6G6vmQzS~dx=4xILLVzZ+B>$$=MY{N7UVDCaJk$L z1&XaS1K}^vF<$#YgkIODm)^&u$atA#i_3fU~?R#!<+neUqMyL9Jqk#uVDdnBHpzt+_Qj?{CXu3(uv?TIui!xDsF_)Av# z_zu{X$t0b6Gcs(BduY@P7MFkj4;$gxO2?6q*$Yn|A%{YOmn#_JMBa6^_ec>xFSNyah{Lit-uv1Z zNgm?sTvP>D3zoh;SuHC=fX}Yc?al_TYyZq8^`+f>0#~h$CjIES_In^aIXSNQ(viZ;#0kRnEED{9!$;wUuN`P9Gm zVj8|z5vUZBtlR&twf5!Nm7Qaj?t?Ay0A_9c+o068WFQ3YYEP#&7Wa0~COgMCl~Oa_ zonL4ycAg?!3hRvlt3~)SD?NOxImGbz+Icc#33`lA|fyL_litf!$d6;B*-cl`EsYe!4i3`iH=7c3$hqYShz(_vN( zUL%%&@%E(Sax3)mbh-75MrF$-kj2^`Mxz8@_Vg$r8_6+K(2>GcrAySfOLk8bG2X_?b^{HAa0fB6z*PC2@ zpOJ+!?jK`XJB10oyB7?kmiHG-PY+sP=NE6Y_==;~ConEh=OlNYbfpXXBW;yfXflH) zmP+{9wmdrThSyK??ZEPXD{3Jhx3?P`L7!gkAJWEq?1|6_yUGFQ-^#3{p|)p{boy_v zq_YEFUaAA%KUzYPGfTRvZ3{CcK62I7T`Snf4v^WBfLBs z~!$LJb@jS^K}buyWeC!H$S61we^9w%@tSpArWQg z@v^cqvlH4%Uf&C4@^F~!VCxXTg}lg5%x+PE67-ZG^cW~qy6V(5bx{Pc5G!f_;)p!g zyIWAq*<;Akw=hxXD!x>Qx~i+|J9tDu_nF$JX89pS!;r++?@g!2aKgLk*+O4#&sA@3 z1DDm~W|e>9zr2CJi;7|yPtQ&neeTU1$>IaupKU9AHhO>nRPyYJd_0R!*(>}%@(FIT zDYlJR9Ua7dXR$Q*0uU|YO0eH>p9Gh>dZ?Dy#E5JmnaEca${2j1iqIxb=?FZge}^lH z@=Mnc)Yj#ZqA34#&U&SWCO zj(76VUI2zTwt%j>M=rU@KW)y8>RRuK^J@936dx^y7fu-=@b>ZfOX!4U%tCE8CH`!p z?u@k}$5!v0j}Ze%LyszI=p$(a8fi&>e$c~%&&9<>oi?Lxw+t{Ak0Uq`u1;I`glRl} z)(ISVbMFVRJX_lj^{gdM<03fq0j(1tp06N~+^0`S9-YLX2^^K*Eym;0x#70Gx@o`( zcSXeqb`Fl^6s@kOI2(e?G^(iQ$6MeAwl&agI}dPZSddEE;Gl z_X72}vm^TacjffIzR^T9vvwCzzZ4i8ETK2WFGJ zhnK8~swPfE3+jpBdts*M2G8_6{aXAjeetgHh^E z83j{L>6zDsm$k*Wel^SY%lmCN)aX>0hCOyUsDfp3^-?Le#BJ%oWe zl#bijg>mn&w51TO0Y8HN%b}(CZ3pwSLI%1GH1^-g#^Fr;rGF&_muvK-I`?ey78K@w zWJBeQa&w6;XhLd=+rhVu0V9sXhCi&^Hrwu%bK^;gOS{hut?M%Z>X!E&<--Jr9ESFB zfI|3p5P?X^@1zI4CM`Go%cz|c<;zCh>go&NSEzV?VTG?hC_1%Q7d~HErqb2_tOvry zo`XCsl@t)j*=N$SI?mnbxBRKfPCC_s5$CdeR7Sv!2T9sO!PEl@hPI1Lx6OvEjG9%Nc9nf?Ob1ej zb8-9d$e@XjWavfZel5ol2P z-^c_aL!?Klrt>Qya(eG)s~@(_Shv_g`IK(#ns>pog( z|Ju>PFG!MLBTd4fupP+3R&)zhew~|>6F+ZT3}8@rcsK%!Lc#T~)N=Ud%QTA&Q8H0) zZ$5Z5k{_GSiD_wR$^c*t5j;)2z=w#9j*bF022evhUwKY?aydD$V66b?2?J=7L=^>e zwkj$s`TXu!S3BGXjy>%9e;&!UTj$_5wqPhF-unqd4iEA9T&VEz@t1_Vl{t~}%n``1 zyMPHD9GHZ2(V!}uo733W+;M78;`%FFT3YT)DE-X-xU|f}HhTeN1~foztB&j(?7+dnJiqj_ z*_AC+i*3gA@)zbn_ugs4h=HJDZ&4Iqi~hr@1$%Bl+z5|KWDKq`a69}R_s#Ni2`*=S zNz6D*Vu0wZZ#K{!R4i4yR9v*@1~jcemv(M$E-^XT6jB|@EsA&QRd}3MbVjDGr8PX6 zEg&l^OU}ZQ0GLBT;TH%=rL`hQ=)tfz;h zbArSWer)sCB;qRJtObt&@ij6zNyES(r&l-48;7s-B-wdhR#`b<*_f1_O^ky)QJ^iPnElC} zmuTVG0|-t@{jcY6v`G#R>qWpm1Aa5XU|z2cD5fXW!kIq1`MfD0!6lET8t|O&1T&he zpZ4Q_^JU zk?4AsYP=P!NN^z~Jp9v=N%h2lO91#;URw*UdFPMc&+|_6xX~Q_@Ej&d6D=8rPFENJ zPP&P6@nk7dP-*4BZu|gvZjL?9vb7a~vj`z+7Dvo{7oUehG7(A2p`}#lB<46XV~;i+Iyzlsb+d?~7KC*!Hp6e+&H70aJq-T&i$@OxqJDSh+!ikX=RnvbU+0l-=L|(4tX@5S7zzL9F&ffN)vsO<__n5N$Q|utKH|1 zKviqG-s4|XTKW|*#JRe57uW{C$eEd$I^F6e2L9MR$xhd1-D+MUR6qn;R#7nn5z9@; zP*%QF9y8R@8Oagy1+d86%F51jgBzrP8Ea`;($bO&6r4a&%f*sRuwCTTIW5QqX^I8p zm)qw}AAAJ?00tl%7*U^D>jzZL6wlK3wXJ<-0UZ`DZp5;Yni@l2iQ;O7gSt^}1EU&n z(j^MSSJPdAwNi2hVj&>rBp@Vg?m&YJ$sFdKrah#RohfnFa7wn#eQA6kJQz&WO_-mb z&n%UFl`MYHIc-)E5_)K8@hMigJmkJ&b4sS#w6iV9Ctq;{;Jwcny%O>{-kPBrHfioD z)WFQl>~cbOLBh6KyMCXfBa%9@-=*r>1*iT&7ih^j6CqPLea*EJe$Fi2t@@6OFeH*6 zw@|I=DCi3#((487n8xvfC`+{{E~7Ae$Cnxz1>9ahae+#xyY;3ZnnH&L56QNk@8J#5 zFICpkikRKB4p2(gnf!91sHlRKND=bgphi6lRl2gldM8Quh!cst+E8AOI3vfWYQl2h zzzqWhZm~B|1W5B#JUnSY=2l>YIQ&}Q>0EU@^6(8M9*XBnB~zVM36leo(O+TgYU4|i z!#1C-{SYAi0VvC#KYy$XC>R+j*QZKQ$1T^gfgAzY@?fdCk_IErLbF$o5ywII=ia4_ z*tX9yh7|G2+aM^zTHJ_%d_>hk1P&jwii!$rTib%RHoVID3ZX%(rUANz`KezNtWcSm znLvmR+cqcX<|+YP2SCX!S+VBsvSk4C|7x8qENqk#%0G(_`6$8^Dx<+bzYiXz+gGnu z2c*x!xwZ4B)rPc5G0Bkab6r7cOH*}hNyt4=>EY7;`Sm01Wx+Za0ahWje7T>*(x`1> ziCAWWd)OdHTqW_HVZPU~A_B!5qKIG_6|6Pgo(%Z4hhR#scf>hHEz5%jxUoCFY9CD; z23GBS_apgi8|m529_qJ5C|W9qd5|fd&mVZ<8pX6zEuaHL8VWo{txZP{uPMe{?ofFs z(B^Rr4BqfR~{*d5b8e;}gGr4H@1hr>3UvAAq)|m~m|V3VcEp zwjCM^{ZWA@iJ#373^^_LF`0K$?<6E7EH5j|%g+~EUdKo?i#kJ>db#N+CXMWZyE>N6 z9#RF%SJc+R1BZcM6B!HXm~td5=c8}zL!-!`bq%o?q?&rkOd`T?3Yl)}BYLmjv#aK@p!4`8$xJsPnm$(?$0Iha(6JeLXmU`%D5LI$ zZC4lp7Q+~OpE2u^lvFaeY&S_RKA^= zZ2=nwjHQ70MmI|tkl~k?m#YMZ+~iFeks1}j1?W|40+pV0JP|oyB*)c`<_lCv6xVTO zuJ~KsDEj7}zj*?{&#f3hq78xA0`(prAK%icIo9Bacrw-T?K`-TB?UPR4Qv3tmK1`f z35x=L`<~2QQFL*`)q>XailVasSOvh7B%yStWRUk7jwwN0QXifl4Ym4G{TPuDF=&^) zf<&>I5pr7eqN&LgPv20pHD4_1tdCG2q2VrgH7UMk*h3Ey^{Yx3ZbCyd63E_K880dV zzn?X;?HHkXFIKc$4M%sldbKIQk=ZRCm+5OH!b>0|`A}V9Jk$9!0h3hho!0{3$nLIb z>+*nSQlGKBziU&l%yX?`p$;PsDiJRr0;TtVxavD_vwd5yQzg%CaQkpq05F^PNMQ?& zR%rC}^h&C@Svm%{aK*w~s1VVO3R(4#tWeAfDd_tawE=HOv$X zZAC?rmqR};x_)$cT$u_MI1rXB&t1vM$pM$ItT+prIyy1~-a# zec)>V098=BQDhvo%7?GJ!7{y(MO0zkb!%`eBni^KP@*7JG_bn49>+O4K5SBlNJBQa zlOt+{=JwW=1$2{#O}(}*tOo5;4{Wd^wq)E36w9R1#5O5YX&)HtHPkG0%w{i@zOe1^ zslKR~cPrOeT-qxv_5idxPx{W`y<{?0JiaoiL8?WDGOJ8sZT(_4Y0jjo!(2(eu0=R^ zcL}bfZU&XvJr&a=osbZ5+F0=_VkMh&{SmkMDnyS_oh9kR(A@C3ovm%twcFJrr3)KE zk~P(m;oQa2u?H$K|Br|3L!e&ywH11$<_&qZerwW13ogjdWnXQw!32y?&cwuI+I(#8 z6RAE9oiR2x2B@#xPS*_d>|{ioK_=YTmfY7>w;1?gNiVnd*4BTSP%HsgG{8zHVk&C4 zx^o`e|A|w0 zlatvQ?5SzLyCz4=_E;r$++iF)FJ+mf$%k`aUjOFd4bM>pDrw;mTG@^D;dI$sWrnGQ z6WM0Gvf(n%a>)0>K^3=Ogb8z3*C9n6Es6k<0^$iO)00Y*QHy;kEHjlru1IkiDw8a# z4EL)?K5nIDJ(J~drA_&;=izUK7zfo$g;cy~4W$a{@8ih$rz_SL90f)avZn`ZEjj?Q z7#fneySu;7iP3h?l~-R5?lTUh{kf0LK0rqkD?W787(kEQxw^(rQ*qz;LSXF#xNQC! zTz5K8YWY`M0vKA>VRdwe70>iXqt~pR^Sd=(^oLrGxij;HjiytlDq=-Wd(Wfa%< z(T1wQBs{SD@o?_i#V$~N@PtKgKu^>JXb3PcWE-_)knZq|zV$Vc``6jn zSxPde?~XWs%{Zaq;)0Da7t=KFG9=}4zn+`pl3ZETrQ+>&Vx#oMZMXv&*sryvipvp0 zb*Hd<%#Wy-;8HGTp<5*lWf!ODKc?}t2i{;gig?NkAbD?LGI96G6wGo#{y&<|GAybu zT>GH>rMo*ELO`0KLApV@LFpR0L6DGcq@<)9q@|@Bq`Rf1yU+5x@A)tv=DOy?p1s$4 z))T+`-YzLRRAxhsudZ(#KRfE?aI)#yjtx5_jQ7Mk>XlhltNB~5Bzkn#bFwQ*(;FK} zdp^@3(gHGRSwQ+As8-H7QZ5g+|i!SdMZY zST2rr#2i2JfCisRg7wAi&C#!q^+zjxPvT~8?d)ZZC%&(sF`fKynt#!Pekt>gmGS*P zq+}u@O-S;TAIIb5kd@d^*FD(fcqY0t^9Ew`jq00L=ilP0O)I#G$y7BuFILHm4%&E$ zAQi4SQ^6f|s&9pVJZxgjF@?w~)iSC^t(1kO6N2BtkyC{l>ixuM6v{BGA!3w`YdjjJ z{z-;`*Vyyla;Z0UAtt3vJ-xU9t){S2VS;e0-0oy)&|nEko8dKj^EEj_C!vD5ITW|h z@Yn3nwwjJF0`jgRpFj)LdLp8Oq}^Jqde{ba_B4dlytcK4p105GUF69xGI}-h67=4N zyaTHtbv5rH6QB6uVR2J8`po_{I|3w%w*^cpRbMSX)ow}tINdE;{YBKjgnhtTH=XH0 z^T#sq9ye{q7N$IWv4NmbdcSZcfT9Ai#FX{(pN*afug{ud4)$uqs}QllQffxmi9;Ts zwuPc{(q(mAgjuW&$Vew8LZ3Z3IC(85Qq#S!h#k1 zZ8IeLs4|Z&Yko(OR)Et$&ws|aj$?mV*3_%IIO*`Ov#WG9jLQoMw*LDd!IDV7MGE;-|bt=HzJx(cY?zc(S#S|u<$Xo znqMDti7b_yPDgoWzRVv}9$Pg;(do z9|(@GAoRtL;!1=E;Gl5u4vDS?=;KLBB>{zUXfdu5ea~K`7tdT~J5ZNV+;-&xH0-+$ z9A7GjFIqSm+D>Wz#lYCd4@oa+@$hnXiDGv@;~Ykxd630M)Akb4aI(8_NswM#EGltF z7p72i##2*mgi&ugjx;w&)7b7$yY8v)_mMfAXH7rI+?r zG39vj5vIfxI`eK@u8;ElbZ@=b>^iVsD=bv&{_ah9=M;R;oVX%=8P$H|=sOYKTC?wL z3na%&S04Neax_+HlK3U3#y6-|-Yw2F ziF|9K$8gBb@SMJ~Ch8V!zB>&mkk^W1`?Sn*6OzTUtyk+V!JC%EeL%W&t zxC^?tH{0IB20v@3+gcGZPdCzz|9w<+3=*b%Vv@9>wHDuhyO-&?9hu)<`wlP12#UJG z$SYgUu}vylzO=WUj*h1+nMZbRS@!%MUoa;7ffF{(UNgju?wWPle3~B3n58Slne9;~ z$Q`!rC#aAwiQCg_68Rh>g(YQ!dHO^;He2{Hsp8%5ahFllM!f$b$UZ1s)4I}v+=2=(k7Nz)FzkJ+Kl6y_z`d)dPnfSM02VYS+}yNpk3CYtXgfG~KwuUdmC9Mz!1#3zM1`{+Htu%FywkSe*~<7P+rx z4;F*u%Amx;(%1KCp~;pn27fBIqtrd==TAG1SQRteN$qVbLdRJR-3>(}?Un^|4PyUEv& z@i{p;MHw?|@Sn6B98uqBqEf}JJ55Z&%(T>yipiB~O@;q6tI`Jk1VLiHlaFp`=(7A! zPM=f$Pt$tY(&R0j@_iW8v(@ zgkK>dE+?PWku|k9>r0)&2>3;InQzb*448dozy1a zQaRL=_{?*g>q~8iN<5@Q9KOV+Bu*iO=7`^3i^6Zi(Nt$U!+mwVD@OQFXcy+rNmmR| z3~STHjhHuX&FER#8}&Tgo~Lqos;abjsn4q8B6$pidBTA7p1u359)Y)4S&mEd0u!Uk zRFbsDLdil5HWK>8IZtNvRxf+b0Va%_)o0^iG(VoN==<6Hm{u0Ym3w+hBcwl!1|uX; zpCx4REmjo$jkPB!C!KPhqnN?`MZz9eL{i0fsCrN2n*;~T(y5OkrA=N~SVfiP>nV@d z8{MxldUwugw$C5j$8pYX1r;w{5gvp!-CU@LIM7||f&$>*r564B3dd5I@CG+6&MXzb zG;wl>blyf7OCoN1xfPCUW*P_W2HkUX%Lxqw0|z4n`Bh+$7&WX~dwMz$BFi;B ztAda874j;83X3B0#C4Gon#CT4%srhlJ~Iz1@)mkwh?%M$F7oh*3}UDB-x|cl;gw+- zF;uIk({=h#dNm)5QRb`pJpr?69B}y#ykt|enz$&hxEp+g$M!P~5jx;K<4ifgFbH#G zWMrW^Wo!qYhyz=_VMtQrmyu>X7hXh-ha|Wwbrae@>-*4LTd;ZrD_b8aUO462^9{?CtwDuh?JxARuP`mJVyPImss7fhPhYfjDBpNY}Ak(hEA zDra|*#y!gQg^jAe8W}jf&0^8b5nA+X$Y{JPQ=8k#GlDcrCb8-eu;)ElQgry(xZ$E>XL&0~ter7mB%Ux5w!0~wgY zy`+>rWw-ODgAlvM69u;g>*y;5EChb9yPvx=B4@pblnJb57cYe=+j*ZDM)_~OJzDJE zr82uc`^P`0jfrF=L<a_u-RDXI1z_PO_&GI^K>ivbmN|1 z@$7MX`>?y)HL&FbNsy(9LjrC3%2|16vPoL5664_UpCmdKp-T(0>OR5hMlxs2XKJ`> z18??g;X6Eg<_C#$0cUW_`LDU$maI|XqHHlFP13z5$y=&UaI5*S;jRy_9hTs|IiGn% zvOjhr081P`71P2^-<+NXpb0;lqO|9T{LlUI(b4X1wcYBOvU&5>)ykd#AfLE0*V0LS z`y!rwV-z&wM!f{>l!W)+v)oO`#N`W$i;FYgS+lpdJ{lr~1Wx*SF!zzyvVwM}N2_79 zz@u23oz2c%;MIEgq@N@UJ;~joa+X7tbe4QM5Wwmvh~l@# z&$2Hubb{SQZdpSfH_$kAa=AWsEFRaCm1np}5l_AJHA`&snYO;V>0l)a??rn$_Y5mE zyd|{vJ;AONa$!wV%Fu@%e)vZgL_w_{wyQ~z4$xZRlj__Z{_YVvJx3+itg;Be{qX2v zj27I|-$35%PFE;w-1PT5xuSpG8W7R1EEm=Qkrx;yfjgs2@OJ$uBm}+WrLTxx!{W*6 z=IP0x-m&9y*3rwg7NgAJJ&`Bs0n>POew(ucx`cu1lN#2>bARcO`rl`Nf=l@8?g)|C5-=AcjRD-VH!i0f6pfd1 zVj3C?K@}T^F(S0z6jbt?vF=U@jks@+zm$NvCbNyr&J8E4v8Q)Phfvzc=}uqfcI&gx zC?$&^`5V@W-|v;5-{XBozPtou0WWWFK>4^_hwS}5e4RRggLH#_SbjC4K$m;bfEaPF z2NhTn8QIs;Ndo5tI2bn^cuzb85njN1xB0I$LSt>&CJ=k*-jGDa%Rnsc>$4p*wn>{sDV!jaMElJL!&H`JHrW=e;mrjf=>WaM zf=_Mky_`k&VCE>X~K3ivlM< zu*xKyxI7xFZM`Ma%5X)2dl|=Iq3?+s0Cz0tMY*wod2@c5Z0*=B;*ILLC#`>SkVW*W z_T+ug>ca_d67!8nu&`$!{ZUhDlGGN_7gW18T$RCuWQec#@?kfwthJcNl6%+Ih2ISc zlc8TyjcyIF~ zx{EyIb+FLWho?Jt9rq_$mO>5mkOO`RJm1LQHW5ZvI#8`yEYwF z-nFv0gV(9I4Ub{!bmHFL0?Dhl7W`iKr$3jMJbV5t^V!Vuxt-Y5ze&r2JK3tn7kt>T zscmS$jgqRn`DBP$&3qoSLtqIzJp~?$D=YqEdSz}R&)XtDT3T~W`Lq05Ba;bz!}~Tn zjwv-^jruIcRYZF(-((;GkS)|Y1GzJ5rpLo@(uljXs?4Y>4v<@9W>WAA2n_6;|3r!4 zP5h&&rDe03n>nXlJb3|?-nXBAo1rv0J^f|z(0qG172yR6->50aE1LMR9dKp=Y(kI% zGlzj-zMhy?B|rb2d9gA}vUoh?g+E+HX91yxu^F_Cviva#7HHZPdD(twm{fGxh}O&r zu)!@int_Q>%7(s?acRntx>>`q`bE3G-)rBg?;MOM>s;&bd-9(VUi#+w7*fN&D3{Ov zm-}>=#*pJ}TNTJau^j|`=`ol3Xd@m5!ocS70 z2t_t-#ILlLD0~CnGnlgfM%MQ`Ue&H@`j=m$v!p6`-MB;h!Yqu$JQzCNw@0_L7b~f= z#z^yCo9p}b2{GFoGlVy^wq}5QS6&_!pp}5P0Z(wt$tnx1on)E`_hvqaYlE*Gf@cVx zo;N<C7qgKarCBYO#@-`C*Yj;n-_Oep57`rK~Ov^_Y*t=}S2GXL3(5&8Ij z_Sw&Q&vnYjf|Bmgk%&IsnQyG+ltrku6@r7@MWSzzp{J;7{(8wnaI_Wl9rY~SRWeet zOStg{G^u?!dcrjhnco!YXDA^G*f-PKU9(}U+z)pLBSSVF-Bz5S?gnnc-!D>?lbH)y zNp>E`zVh=P6pEO(8@T5*7ba(B8e*)#EZkOo_28bK{>l$$3Z-e3YFeFAHm(}N37$+j z-=ILnN?dk}9D4QB`s>iW2_us}pcCV_>pWY-{N z`gMfRvwEHxKxcrEdD-zB7n~?6wXYQ)-wttPWMlv%qFSp-u011;)G4HT9sGg?wcKZ}M-mb#?87;pPctMN-4-eD_e zISm#I-pt;k<(S3v1x{{}Xz0VG>T6P4R7d7wLH{@g*w%F#`pwzisrx<#nxK#UOU<9J zyK5Gn$C4P_7(h{Gg1Hi73oV>S@aLdjdj2C)_e|+`ns{{&@>%+{k$6J<=W6Dfo#@4N z2c*w%@z&jp#!#)Ph&l~2zkYaA4xNqDpqY9ByTewJUr-3m1%?#fn+yzlpA&XJ?|siD7Q$;oZ{!d>TRXUP{;+{d z_f=_kBcj5|4qW%;$gxdo0?rbo%bQtm%CqFYtg6Tc;9B|~(UM7{4g;V#FUN_-+MY1r zRz)7DMsH59J#WjeLwj+Tu5W4{9_C(y^sNR_b&)YnCUyYrdR6=?y>B(sOXL7g&mr zTjM>a{ZjF7&uK@kS>UtEK?x%_=*K`zgVm>A*&b)OuVuuDYz^fD0i`W%LK>;3bq6U@ zz^^cA@=lRVZ=Lh|J*}=Q_t*KG7arVuXut5?mrV8u@mv>w{rbE<-@bAmdoOpvBLtu( zh;OkviYOKU7)YqKWaBc|LUTf?kU&BQYV$ppg%6hYw2cEhk~m=qjr!3bZCyY0=r^yC zWaMSqoz@3=0RRK3u-^A31>g-4gA)~L8iTAmv1+nt0Pr2S*f}g^Om+cyYDC2 z@U9b5e|(;T%a>zqE+`{@GV=g0nUa#wBU)F)<$>BWVqq8G{!in$6l#%b$U0-D&5S^S z;_&i~EM;uq!q1(}5n!8K-Yg zz1}dRj=SENDqW9{;l}p!Bk8#IFmKVmFQ%jkNQ@8UdrOs|`=bP|k`?jseTH|0^PP4- zYJBg+&6TXj(E^Td7GLLa62}kZX=>J$54%a2_j3RvQ8K#e6n^Y|TK?qBD^y{>brr); zYj)-%>92l$iV+cac1{qL%+DgawEp2EtZcFKW6+L)WHXu2D0h0m%{g-CbCes$Ko||- zsvF_+txp`aL5TQox@Ay|=14}!B0qm8V(7wONyPxb=wxQ!DIQ|O-N`RPRD zUt4FwSk?y_S9 z$!H?Qm03K#sPgbppjXNAI8(kEI^=P@>Sp$9Jd{$pJ5}z(Q)bSDi@bFrL__Z*jb~24 zl{|d?P2yN@bOG=EU(O49z0$xL5hL%(HKXM)gp)Z`)URA95;93h8hzSm|T_Z&)8K#Id+TY5hL?%5hL(Dz1w^L*~gCUpr4AU_1haL za;GU|*joCN9=B#iX9~M5d9e^a-4#j<$@oO`SsFdLO6rVNA<7<}Vd@fIm< z_MUev<;=U-{E1*xzfXd#@NRB zEt{bE@hTXM6x_V(gUuADS$quNl3Z~c-F?#SD$ zvB}w4o1(?(upITV#;vw|n<@B;o($^+|i9hXo)*XnXMN76%Jy0SV1iR;Sz&>3e7;F*-yor4^S}`xupWM`} z+a?UdKzf88A7xL`dzfdfX!Z&T!+)CGz{K}Ib)9W(w) z3O_K8!8a=z(XR2Ek0GRhGqbLfw(u$PTKF+NM%bu36*Pe867=TnM$2ek8^2xAtE5g< z_)UpHy5Y!+5S6}*t|H)d=W%CbZ?DGYp&(zCrVqowr*i$D&~sc_qPEN{Sv+9X69bsvCv5(V8#Lm*=^1VRrtXNTWiIU zwHzIH?&Byk%_%RY$TbS)qne8M<4tpjQ?G2FO*}fjGc;pBGtIu!LO$tqDuCzYr$M^I zF1(K!zfw+BK{(7D)>#;l?6^gK&5_O6|JN!(CQnuHazRh<>g)h6-D3_u{p>M!Aa!DI zZ;u*BV8icL$IvZKWM zOW9s#azNKkpMg<>DA@wh#r^Fv?T$kyG2w&=Z@2Pj`_kIV!jg=Ia@IPi7S1`JUiGHt=7^pvx^{|~GyztjG;u#q zXy7=JNSYt|*uyCu$-cELB&v6sC*A#3nqpR`-}AjrTsY82Xv9NC+isNzDv6+LLiY=c z;b*8nYRfZPmH59%+qHfhQht0>X!wZ}+Tv>-N2~

E>kzdQKIUrkUieSK*wNQ1yJ`i_d@Oww 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 E53R-P>;M1& diff --git a/source/main.cc b/source/main.cc index 0052a16..05180f4 100644 --- a/source/main.cc +++ b/source/main.cc @@ -46,9 +46,9 @@ int main(int argc, char* argv[]) { } else if (str_argv.find("-") != std::string::npos || argc == 1){ int len_argv = 1; + pars_flag(1, argc, argv); auto app = Gtk::Application::create(len_argv, argv, "org.gtkmm.example.plug"); auto builder = Gtk::Builder::create_from_file(path_glade + "ubl-settings-datetime.glade"); - pars_flag(1, argc, argv); MainWindow* wnd = nullptr; builder->get_widget_derived("window", wnd); auto r = app->run(*wnd); @@ -67,7 +67,12 @@ void pars_flag(int index_start, int argc, char* argv[]){ str_argv = argv[i]; if (str_argv == "--help" || str_argv == "-h"){ help(); - exit (1); + exit(1); + } + else if (str_argv == "--version" || str_argv == "-v"){ + string version = string(gettext("ubl-settings-datetime version: ")) + version_application + "\n"; + cout << version.c_str(); + exit(1); } else if (str_argv == "--lock-datetime"){ flag_datetime = true; @@ -83,6 +88,8 @@ void pars_flag(int index_start, int argc, char* argv[]){ } else if (str_argv == "--lock-save"){ flag_save = true; + flag_save_local = true; + flag_save_global = true; } else if (str_argv == "--lock-save-local"){ flag_save_local = true; diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index b01728f..6f72a6f 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -17,6 +17,7 @@ bool flag_save_global = false; bool flag_load_global = false; int socket_ext_id_I = 0; int socket_trd_id_I = 0; +string version_application = "1.4"; CmdArgParser::CmdArgParser(const std::string& p_name, const std::string& p_description, const std::string& p_help) : Glib::OptionGroup{p_name, p_description, p_help} { @@ -53,32 +54,33 @@ MainWindow::MainWindow(Glib::RefPtr const& builder) { void MainWindow::settings() { map_error["xdg-open https://wiki.ublinux.ru/ru/home"] = string(_(": \"xdg-open\"")); - map_error["/usr/bin/ubconfig --default --source system get clock ZONE"] = string(_(": \"Time Zone\"")); + map_error["ubconfig --default --source system get clock ZONE"] = string(_(": \"Time Zone\"")); map_error["hwclock --systohc"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --default --source system get network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --default --source global get network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --default --source global get clock ZONE"] = string(_(": \"Time Zone\"")); - map_error["/usr/bin/ubconfig --default --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target system set clock ZONE="] = string(_(": \"Time Zone\"")); - map_error["/usr/bin/ubconfig --target system set network NTPSERVERS=default"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system set network NTPSERVERS=\""] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system remove network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target global set clock ZONE="] = string(_(": \"Time Zone\"")); - map_error["/usr/bin/ubconfig --target global set network NTPSERVERS=default"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global set network NTPSERVERS=\""] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global remove network NTPSERVERS"] = string(_(": \"NTP\"")); - map_error["/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); - map_error["/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --default --source system get network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --source=default get NTPSERVERS_DEFAULT"] = string(_(": \"NTP\"")); + map_error["ubconfig --default --source system get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --default --source global get network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --default --source global get clock ZONE"] = string(_(": \"Time Zone\"")); + map_error["ubconfig --default --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --source global get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target system set clock ZONE="] = string(_(": \"Time Zone\"")); + map_error["ubconfig --target system set network NTPSERVERS=default"] = string(_(": \"NTP\"")); + map_error["ubconfig --target system set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); + map_error["ubconfig --target system set network NTPSERVERS=\""] = string(_(": \"NTP\"")); + map_error["ubconfig --target system remove network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --target system set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target system set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target global set clock ZONE="] = string(_(": \"Time Zone\"")); + map_error["ubconfig --target global set network NTPSERVERS=default"] = string(_(": \"NTP\"")); + map_error["ubconfig --target global set network NTPSERVERS=dhcp"] = string(_(": \"NTP\"")); + map_error["ubconfig --target global set network NTPSERVERS=\""] = string(_(": \"NTP\"")); + map_error["ubconfig --target global remove network NTPSERVERS"] = string(_(": \"NTP\"")); + map_error["ubconfig --target global set clock HWCLOCK_SYNC=localtime"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --target global set clock HWCLOCK_SYNC=utc"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --source default get [] NTPSERVERS_DEFAULT"] = string(_(": \"NTP\"")); map_error["date +%Y%m%d -s \""] = string(_(": \"Date\"")); map_error["date +%T -s \""] = string(_(": \"Date\"")); - map_error["/usr/bin/ubconfig --source default get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); + map_error["ubconfig --source default get clock HWCLOCK_SYNC"] = string(_(": \"Hardware time\"")); this->get_builder(); this->add_CSS(); ubl_make_plugs(boxSave,boxButton, socket_ext_id_I, socket_trd_id_I); @@ -86,7 +88,7 @@ void MainWindow::settings() { month = 0; day = 0; this->lacalization(); - if (this->check_root() == 0) { + if (geteuid() == 0) { numTimeHrs->set_range(0, 23); numTimeMin->set_range(0, 59); numTimeHrs->set_increments(1.0, 1.0); @@ -97,31 +99,15 @@ void MainWindow::settings() { this->event(); this->parse_text_date(); this->load_local_cfg(); + string cmd = "ubconfig --source default get [] NTPSERVERS_DEFAULT"; + default_get_dhcp = this->get_ubconfig_value(cmd); + this->str_remove(default_get_dhcp, "\""); } else { lblHW->set_sensitive(false); - cbHw->set_sensitive(false); + boxWidgetFunc->set_sensitive(false); boxButton->set_sensitive(false); - boxSave->set_sensitive(false); - btnLoad->set_sensitive(false); - numTimeHrs->set_sensitive(false); - numTimeMin->set_sensitive(false); - lblTime->set_sensitive(false); - lblData->set_sensitive(false); - txtDate->set_sensitive(false); - btnChooseDate->set_sensitive(false); - btnUpdateDateTime->set_sensitive(false); - btnHardwareTime->set_sensitive(false); - cbRegion->set_sensitive(false); - cbZone->set_sensitive(false); - lblReg->set_sensitive(false); - lblZone->set_sensitive(false); - lblTimeZone->set_sensitive(false); - lblSynchronizebChkGLob->set_sensitive(false); - cbDhcp->set_sensitive(false); - txtNtpServer->set_sensitive(false); - lblDateTimeSetting->set_sensitive(false); - btnBoxAboutDialog->set_visible(false); + btnSave->set_sensitive(false); this->event(); imgInfo->set_from_icon_name("ru.ublinux.ubl-settings-datetime.warning", Gtk::ICON_SIZE_MENU); info_status_app("boxInfoMessError"); @@ -129,16 +115,6 @@ void MainWindow::settings() { } } - -int MainWindow::check_root() { - if (geteuid() != 0) { - lblMessageSudo->set_text(_("The program must be run as root")); - windowMessSudo->show(); - return 1; - } - return 0; -} - void MainWindow::lacalization() { time_t now = time(0); tm *ltm = localtime(&now); @@ -153,26 +129,45 @@ void MainWindow::lacalization() { lblLoad->set_label(_("Load")); txtDate->set_tooltip_text(_("Date of\nFormat: DD.MM.YYYY")); txtNtpServer->set_tooltip_text(_("Enter the name of the ntp-server or its ip-address.\nWhen entering multiple addresses, separate them with commas.")); - lblSynchronizebChkGLob->set_text(_("Synchronize via NTP:")); + lblSynchronizebChkGLob->set_text(_("Synchronize via NTP")); cbDhcp->append(_("Default")); cbDhcp->append(_("DHCP")); cbDhcp->append(_("Manual")); cbDhcp->append(_("Disabled")); lblDateTimeSetting->set_text(_("Current date and time")); lblHead->set_text(_("Setting the date and time")); - lblTime->set_text(_("Time")); - lblData->set_text(_("Date")); + lblTime->set_text(_("Time:")); + lblData->set_text(_("Date:")); lblTimeZone->set_text(_("Time zone")); - lblReg->set_text(_("Region")); - lblZone->set_text(_("Zone")); + lblReg->set_text(_("Region:")); + lblZone->set_text(_("Zone:")); lblSynchronizeBtn->set_text(_("Sync by")); lblHeader->set_text(_("ubl-settings-datetime")); - windowMessSudo->set_title(_("Warning!")); windowMessDchp->set_title(_("Warning!")); lblTimeBios->set_text(_("Synchronize hardware time")); lblHW->set_text(_("Synchronize hardware time:")); - cbHw->append(_("Local time")); - cbHw->append(_("UTC time")); + array_hw_local[0] = _("UTC time"); + array_hw_local[1] = _("Local time"); + array_hw[0] = "utc"; + array_hw[1] = "localtime"; + this->bubble_sort(array_hw, array_hw_local, 2); + cbHw->append(array_hw_local[0]); + cbHw->append(array_hw_local[1]); +} + +void MainWindow::bubble_sort(string arr[],string arr_local[], int len_arr) { + while(len_arr--) { + bool swapped = false; + for(int i = 0; i < len_arr; i++) { + if(arr_local[i] > arr_local[i + 1]) { + swap(arr[i], arr[i + 1]); + swap(arr_local[i], arr_local[i + 1]); + swapped = true; + } + } + if(swapped == false) + break; + } } void MainWindow::flag_block_gui() { @@ -202,14 +197,19 @@ void MainWindow::flag_block_gui() { if (flag_load_global == true) { btnLoadGlob->set_sensitive(false); } + if (flag_save_local == true && flag_save_global == true) { + btnSave->set_sensitive(false); + } if (flag_save == true) { btnSave->set_sensitive(false); } if (flag_save_local == true) { btnSaveLocal->set_sensitive(false); + btnSaveLocalGlob->set_sensitive(false); } if (flag_save_global == true) { btnSaveGlob->set_sensitive(false); + btnSaveLocalGlob->set_sensitive(false); } } @@ -225,10 +225,12 @@ void MainWindow::add_CSS() { Glib::RefPtr boxButton_css = boxButton->get_style_context(); Glib::RefPtr boxSave_css = boxSave->get_style_context(); Glib::RefPtr headerBar_css = headerBar->get_style_context(); + if (socket_trd_id_I == 0 && socket_ext_id_I == 0){ + boxButton_css->add_class("bkim_no_plug"); + boxSave_css->add_class("bkim_no_plug"); + } + lblHead_css->add_class("textHead"); - boxButton_css->add_class("bkimButton"); - boxSave_css->add_class("bkimButton"); - headerBar_css->add_class("bkimHeadBar"); } @@ -266,7 +268,6 @@ void MainWindow::get_builder() { builder->get_widget("lblSynchronizeBtn", lblSynchronizeBtn); builder->get_widget("lblTimeBios", lblTimeBios); builder->get_widget("btnHardwareTime",btnHardwareTime); - builder->get_widget("windowMessSudo",windowMessSudo); builder->get_widget("lblMessageSudo", lblMessageSudo); builder->get_widget("btnMessCloseSudo",btnMessCloseSudo); builder->get_widget("lblSave", lblSave); @@ -300,19 +301,14 @@ void MainWindow::get_builder() { builder->get_widget("imgLoad", imgLoad); builder->get_widget("imgSettings", imgSettings); builder->get_widget("imgSave", imgSave); + builder->get_widget("boxWidgetFunc", boxWidgetFunc); + } void MainWindow::gui_exit() { exit(1); } -bool MainWindow::gui_exit_2(GdkEventAny* event) { - if (event != NULL) { - } - exit(1); - return true; -} - void MainWindow::event() { btnHardwareTime->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::hardware_clock)); btnMessClose->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::gui_mess_close)); @@ -323,7 +319,6 @@ void MainWindow::event() { cbDhcp->signal_changed().connect(sigc::mem_fun(*this, &MainWindow::event_entry_cbDhcp)); cbRegion->signal_changed().connect(sigc::mem_fun(*this, &MainWindow::append_zone)); cldrDate->signal_day_selected_double_click().connect(sigc::mem_fun(*this, &MainWindow::get_calendar)); - windowMessSudo->signal_delete_event().connect(sigc::mem_fun(*this, &MainWindow::gui_exit_2)); btnAbout->signal_activate().connect([&]() {aboutWindows->show();}); btnSynopsis->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::synopsis_show)); btnLoadLocal->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::load_local_cfg)); @@ -335,65 +330,81 @@ void MainWindow::event() { void MainWindow::synopsis_show() { int start_error = error_info; - wrapper_system("xdg-open https://wiki.ublinux.ru/ru/home", "&"); - //gtk_show_uri_on_window(NULL, "https://wiki.ublinux.ru/ru/home", 0, 0); + string cmd = "xdg-open " + string(_("https://wiki.ublinux.com/ru/Программное_обеспечение/Программы_и_утилиты/Все/")) + app_name; + wrapper_system(cmd, "&"); if (start_error != error_info) { error_info = start_error; } } void MainWindow::load_local_cfg() { - string cmd = "/usr/bin/ubconfig --default --source system get clock ZONE"; + string cmd = "ubconfig --default --source system get clock ZONE"; this->fill_in_reg_zone(cmd); this->update_hour_minute(); this->update_calendar(); - string cmd_get_dhcp = "/usr/bin/ubconfig --default --source system get network NTPSERVERS"; - string cmd_default_get_dhcp = "/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"; + string cmd_get_dhcp = "ubconfig --default --source system get network NTPSERVERS"; + string cmd_default_get_dhcp = "ubconfig --source default get [] NTPSERVERS_DEFAULT"; this->entry_dhcp_mess(cmd_get_dhcp, cmd_default_get_dhcp); - string hw = "/usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC"; - this->entry_hardware_clock(hw); + string hw = "ubconfig --default --source system get clock HWCLOCK_SYNC"; + this->get_hardware_clock(hw); + flag_load = false; info_warning_error(0); } void MainWindow::load_globl_cfg() { - string cmd_get_dhcp = "/usr/bin/ubconfig --default --source global get network NTPSERVERS"; - string cmd_default_get_dhcp = "/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"; + string cmd_get_dhcp = "ubconfig --default --source global get network NTPSERVERS"; + string cmd_default_get_dhcp = "ubconfig --source default get [] NTPSERVERS_DEFAULT"; this->entry_dhcp_mess(cmd_get_dhcp, cmd_default_get_dhcp); - string cmd_zone = "/usr/bin/ubconfig --default --source global get clock ZONE"; + string cmd_zone = "ubconfig --default --source global get clock ZONE"; this->fill_in_reg_zone(cmd_zone); - string hw = "/usr/bin/ubconfig --source global get clock HWCLOCK_SYNC"; - this->entry_hardware_clock(hw); + string hw = "ubconfig --source global get clock HWCLOCK_SYNC"; + this->get_hardware_clock(hw); + flag_load = true; info_warning_error(1); } void MainWindow::save_local_cfg() { - string cmd_zone = "/usr/bin/ubconfig --target system set clock ZONE="; + string cmd_zone = "ubconfig --target system set clock ZONE="; this->enter_zone(cmd_zone); - string cmd_default = "/usr/bin/ubconfig --target system set network NTPSERVERS=default"; - string cmd_dhcp = "/usr/bin/ubconfig --target system set network NTPSERVERS=dhcp"; - string cmd_set_ntp = "/usr/bin/ubconfig --target system set network NTPSERVERS=\""; - string remove_ntp = "/usr/bin/ubconfig --target system remove network NTPSERVERS"; + string cmd_default = "ubconfig --target system set network NTPSERVERS=default"; + string cmd_dhcp = "ubconfig --target system set network NTPSERVERS=dhcp"; + string cmd_set_ntp = "ubconfig --target system set network NTPSERVERS=\""; + string remove_ntp = "ubconfig --target system remove network NTPSERVERS"; this->save_Dhcp(cmd_default, cmd_dhcp, remove_ntp, cmd_set_ntp); - string local = "/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=localtime"; - string hw = "/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=utc"; - this->entry_hardware_clock(hw); + string local = "ubconfig --target system set clock HWCLOCK_SYNC=localtime"; + string hw = "ubconfig --target system set clock HWCLOCK_SYNC=utc"; + this->set_hardware_clock(local, hw); info_warning_error(2); } void MainWindow::save_global_cfg() { - string cmd = "/usr/bin/ubconfig --target global set clock ZONE="; + string cmd = "ubconfig --target global set clock ZONE="; this->enter_zone(cmd); - string cmd_default = "/usr/bin/ubconfig --target global set network NTPSERVERS=default"; - string cmd_dhcp = "/usr/bin/ubconfig --target global set network NTPSERVERS=dhcp"; - string cmd_set_ntp = "/usr/bin/ubconfig --target global set network NTPSERVERS=\""; - string remove_ntp = "/usr/bin/ubconfig --target global remove network NTPSERVERS"; + string cmd_default = "ubconfig --target global set network NTPSERVERS=default"; + string cmd_dhcp = "ubconfig --target global set network NTPSERVERS=dhcp"; + string cmd_set_ntp = "ubconfig --target global set network NTPSERVERS=\""; + string remove_ntp = "ubconfig --target global remove network NTPSERVERS"; this->save_Dhcp(cmd_default, cmd_dhcp, remove_ntp, cmd_set_ntp); - string local = "/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=localtime"; - string hw = "/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=utc"; - this->hardware_clock_global(local, hw); + string local = "ubconfig --target global set clock HWCLOCK_SYNC=localtime"; + string hw = "ubconfig --target global set clock HWCLOCK_SYNC=utc"; + this->set_hardware_clock(local, hw); info_warning_error(3); } +string MainWindow::get_ubconfig_value(string &cmd){ + struct Result obj_result = this->wrapper_call(cmd); + if (obj_result.error == 0) { + return obj_result.response; + } + else { + if (obj_result.error != 0) { + warning_info-= 1; + } + return ""; + } + +} + void MainWindow::save_global_local_cfg() { string cmd = ""; string cmd_default = ""; @@ -485,25 +496,40 @@ void MainWindow::log_mess_error(string &cmd){ } } -void MainWindow::hardware_clock_global(string &local, string &etc) { - int index = cbHw->get_active_row_number(); - if (index == 0) { - wrapper_system(local, "&"); - } - else if (index == 1) { - wrapper_system(etc, "&"); +void MainWindow::set_hardware_clock(string &local, string &etc) { + string str_hw = cbHw->get_active_text(); + for (int index = 0; index < 2; index++) { + if (array_hw_local[index] == str_hw){ + if (array_hw[index] == "utc"){ + wrapper_system(etc, "&"); + } + else{ + wrapper_system(local, "&"); + } + } } } -void MainWindow::entry_hardware_clock(string &cmd) { +void MainWindow::get_hardware_clock(string &cmd) { int error = warning_info; struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error == 0) { if (obj_result.response.find("localtime") != string::npos) { - cbHw->set_active(0); + if (array_hw[0] == "localtime"){ + cbHw->set_active(0); + } + else{ + cbHw->set_active(1); + } + } else if (obj_result.response.find("utc") != string::npos) { - cbHw->set_active(1); + if (array_hw[0] == "utc"){ + cbHw->set_active(0); + } + else{ + cbHw->set_active(1); + } } else { cbHw->set_active(-1); @@ -682,24 +708,36 @@ void MainWindow::event_entry_cbDhcp() { cbDhcp->set_active(0); } else if (activ_index == 0) { - txtNtpServer->set_text(""); - btnUpdateDateTime->set_sensitive(false); + txtNtpServer->set_text(default_get_dhcp); txtNtpServer->set_sensitive(false); } else if (activ_index == 1) { - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); txtNtpServer->set_sensitive(false); txtNtpServer->set_text(""); } else if (activ_index == 2) { + txtNtpServer->set_text(""); if (flag_ntp_edit == false) { + string cmd = ""; + if (flag_load == false) { + cmd = "ubconfig --default --source system get network NTPSERVERS"; + } + else{ + cmd = "ubconfig --default --source global get network NTPSERVERS"; + } + string response = this->get_ubconfig_value(cmd); + if (response != "dhcp" && response != "default"){ + txtNtpServer->set_text(response); + } + txtNtpServer->set_sensitive(true); } } else if (activ_index == 3) { txtNtpServer->set_text(""); txtNtpServer->set_sensitive(false); - btnUpdateDateTime->set_sensitive(true); + // btnUpdateDateTime->set_sensitive(true); } } @@ -731,7 +769,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error== 0) { string str_dhcp = obj_result.response; - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); str_dhcp = str_dhcp.substr(str_dhcp.find("=")+1,str_dhcp.length()); str_dhcp = str_dhcp.substr(0,str_dhcp.find("\n")); if (str_dhcp == "dhcp") { @@ -740,7 +778,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc txtNtpServer->set_sensitive(false); } else if (str_dhcp == "default") { - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); cbDhcp->set_active(0); cmd = cmd_default_get_dhcp; struct Result obj_result = this->wrapper_call(cmd); @@ -755,7 +793,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc } } else { - btnUpdateDateTime->set_sensitive(false); + // btnUpdateDateTime->set_sensitive(false); if (str_dhcp == "") { lblMessage->set_text(_("Enter DHCP!")); windowMessDchp->show(); @@ -777,7 +815,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc cbDhcp->set_active(3); txtNtpServer->set_text(""); txtNtpServer->set_sensitive(false); - btnUpdateDateTime->set_sensitive(true); + // btnUpdateDateTime->set_sensitive(true); warning_info -= 1; } } @@ -1056,7 +1094,7 @@ void MainWindow::update_time_date() { string str_data_entry = txtDate->get_text(); if (str_data == str_data_entry) { cmd = "date +%Y%m%d -s \"" + to_string(year)+ - str_month+str_day + "\""; + str_month + str_day + "\""; wrapper_system(cmd); txtDate->set_text(str_data); year = 0; @@ -1296,11 +1334,23 @@ SettingsPlug::SettingsPlug(::Window p_socketID, Glib::RefPtr build } void help() { - g_print(gettext("Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update]\n")); - g_print(gettext("Options:\n")); - g_print(gettext(" --lock-timezone Disable timezone field editing\n")); - g_print(gettext(" --lock-ntp Disable ntp field editing\n")); - g_print(gettext(" --lock-datetime Disable datetime field editing\n")); - g_print(gettext(" --lock-update Disable save changes\n")); + string version = string(gettext("ubl-settings-datetime version: ")) + version_application + "\n"; + cout << version.c_str(); + string help; + help = "GTK settings datetime for UBLinux\n\n" + "Usage: ubl-settings-datetime [OPTIONS...]\n" + "Options:\n" + " -h, --help Show this help\n" + " -V, --version Show package version\n" + " --lock-datetime Lock date and time changes\n" + " --lock-timezone Lock time zone changes\n" + " --lock-ntp-mode Lock NTP mode selection\n" + " --lock-ntp-edit Lock editing NTP servers\n" + " --lock-save Lock saving local and global configuration\n" + " --lock-save-local Lock save global configuration\n" + " --lock-save-global Lock load global configuration\n" + " --lock-load-global Blocking the global configuration download\n"; + cout << gettext(help.c_str()); + } diff --git a/source/ubl-settings-datetime.h b/source/ubl-settings-datetime.h index 60c1def..7fa3d20 100644 --- a/source/ubl-settings-datetime.h +++ b/source/ubl-settings-datetime.h @@ -36,8 +36,8 @@ extern bool flag_save_global; extern bool flag_load_global; extern int socket_ext_id_I; extern int socket_trd_id_I; -class CmdArgParser : public Glib::OptionGroup -{ +extern string version_application; +class CmdArgParser : public Glib::OptionGroup { public: CmdArgParser(const std::string& p_name, const std::string& p_description, const std::string& p_help); ::Window GetSocketID() const; @@ -56,12 +56,10 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::ComboBoxText *cbDhcp; Gtk::SpinButton *numTimeHrs; Gtk::SpinButton *numTimeMin; - Gtk::CheckButton *cbxSynchronizeNtpGlob; Gtk::Box *boxColor; Gtk::ComboBoxText *cbRegion; Gtk::ComboBoxText *cbZone; Gtk::Window *windowMessDchp; - Gtk::Window *windowMessSudo; Gtk::Popover *popCalendar; Gtk::Calendar *cldrDate; Gtk::Label *lblMessage; @@ -88,7 +86,7 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Button *btnSettings; Gtk::AboutDialog *aboutWindows; Gtk::ButtonBox *btnBoxAboutDialog; - + Gtk::Box *boxWidgetFunc; Gtk::Box *boxInfoError; Gtk::Label *lblWarning; Gtk::Image *imgInfo; @@ -114,11 +112,13 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Image *imgLoad; Gtk::Image *imgSave; Gtk::Image *imgSettings; - + string array_hw[2]; + string array_hw_local[2]; + bool flag_load = false; unsigned int year = 0; unsigned int month = 0; unsigned int day = 0; - string version_application = "1.4"; + string default_get_dhcp = ""; int error_info = 0; int warning_info = 0; string cmd_error = ""; @@ -140,14 +140,15 @@ class MainWindow : public Gtk::ApplicationWindow { MainWindow(Glib::RefPtr const& builder); virtual ~MainWindow() = default; void log_mess_error(string &cmd); - void hardware_clock_global(string &local, string &etc); + void set_hardware_clock(string &local, string &etc); void info_warning_error(int mess); void synopsis_show(); - void entry_hardware_clock(string &cmd); + void get_hardware_clock(string &cmd); void save_global_local_cfg(); void fill_in_reg_zone(string &cmd); void load_globl_cfg(); void save_local_cfg(); + string get_ubconfig_value(string &cmd); void save_global_cfg(); void save_Dhcp(string &cmd_default, string &cmd_dhcp, string &remove, string &cmd_set_ntp); void load_local_cfg(); @@ -172,15 +173,14 @@ class MainWindow : public Gtk::ApplicationWindow { void append_zone(); void append_zone_glob(); void update_time_date(); + void bubble_sort(string arr[],string arr_local[], int len_arr); void update_hour_minute(); void update_calendar(); void read_file(); void parse_text_date(); void hardware_clock(); void set_ntp_toggle_glob(); - int check_root(); void gui_exit(); - bool gui_exit_2(GdkEventAny* event); void wind_close_ntp(); void wrapper_system(string cmd, string thread_str); void info_status_app(string stule); diff --git a/source/ubl-util-standard.c b/source/ubl-util-standard.c index ef040bd..3b753b1 100644 --- a/source/ubl-util-standard.c +++ b/source/ubl-util-standard.c @@ -44,6 +44,14 @@ inline void ubl_make_plugs(Gtk::Widget *LeftWidget, Gtk::Widget *RightWidget, in if (left_plug_id>0&&LeftWidget){ GtkWidget *plug=gtk_plug_new(left_plug_id); GtkWidget *toplug=GTK_WIDGET(LeftWidget->gobj()); + {GdkScreen *screen = gtk_widget_get_screen(plug); + gtk_widget_set_app_paintable(plug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(plug, colormap);} + {GdkScreen *screen = gtk_widget_get_screen(toplug); + gtk_widget_set_app_paintable(toplug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(toplug, colormap);} if (gtk_widget_get_parent(GTK_WIDGET(toplug))){ g_object_ref(G_OBJECT(toplug)); GtkWidget *parent=gtk_widget_get_parent(toplug); @@ -52,16 +60,21 @@ inline void ubl_make_plugs(Gtk::Widget *LeftWidget, Gtk::Widget *RightWidget, in } else gtk_container_add(GTK_CONTAINER(plug),GTK_WIDGET(toplug)); gtk_widget_show(GTK_WIDGET(plug)); - gtk_style_context_remove_class(gtk_widget_get_style_context(plug),"bkimButton"); - gtk_style_context_remove_class(gtk_widget_get_style_context(toplug),"bkimButton"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"noborder"); - gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"button"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"button"); + gtk_style_context_add_class(gtk_widget_get_style_context(plug),"bkim"); + gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"bkim"); gtk_style_context_add_class(gtk_widget_get_style_context(plug),"primary-toolbar"); } if (right_plug_id>0&&RightWidget){ GtkWidget *plug=gtk_plug_new(right_plug_id); GtkWidget *toplug=GTK_WIDGET(RightWidget->gobj()); + {GdkScreen *screen = gtk_widget_get_screen(plug); + gtk_widget_set_app_paintable(plug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(plug, colormap);} + {GdkScreen *screen = gtk_widget_get_screen(toplug); + gtk_widget_set_app_paintable(toplug,TRUE); + GdkVisual *colormap = gdk_screen_get_rgba_visual(screen); + gtk_widget_set_visual(toplug, colormap);} if (gtk_widget_get_parent(GTK_WIDGET(toplug))){ g_object_ref(G_OBJECT(toplug)); GtkWidget *parent=gtk_widget_get_parent(toplug); @@ -70,13 +83,9 @@ inline void ubl_make_plugs(Gtk::Widget *LeftWidget, Gtk::Widget *RightWidget, in } else gtk_container_add(GTK_CONTAINER(plug),GTK_WIDGET(toplug)); gtk_widget_show(GTK_WIDGET(plug)); - gtk_style_context_remove_class(gtk_widget_get_style_context(plug),"bkimButton"); - gtk_style_context_remove_class(gtk_widget_get_style_context(toplug),"bkimButton"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"noborder"); - gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"button"); - gtk_style_context_add_class(gtk_widget_get_style_context(plug),"button"); + gtk_style_context_add_class(gtk_widget_get_style_context(plug),"bkim"); + gtk_style_context_add_class(gtk_widget_get_style_context(toplug),"bkim"); gtk_style_context_add_class(gtk_widget_get_style_context(plug),"primary-toolbar"); - } } #endif \ No newline at end of file diff --git a/style.css b/style.css index c1c8a2f..dcfb5c4 100644 --- a/style.css +++ b/style.css @@ -13,91 +13,68 @@ .textHeaderBar{ font-weight: bold; } +.menu:hover { + border-color:alpha(@theme_text_color, 0.01); +} + +.menu:hover >* { +border-color:alpha(@theme_text_color, 0.01); +} + +.menuitemtop{ +margin-bottom:0px; +} .menuitemtop *{ - margin:2px 2px 0 2px; - padding: 5px 10px 3px 5px; +margin:2px 2px 0 2px; +padding: 5px 10px 3px 5px; } .menuitemmiddle *{ - margin:0 2px 0 2px; - padding: 3px 10px 3px 5px; +margin:0 2px 0 2px; +padding: 3px 10px 3px 5px; } .menuitembottom *{ - margin:0 2px 2px 2px; - padding: 3px 10px 5px 5px; +margin:0 2px 2px 2px; +padding: 3px 10px 5px 5px; } .menuitemtop:hover { - border-radius:3px; - background:@theme_bg_color; +background:@theme_bg_color; } .menuitemmiddle:hover { - border-radius:3px; - background:@theme_bg_color; +background:@theme_bg_color; } .menuitembottom:hover { - border-radius:3px; - background:@theme_bg_color; - +background:@theme_bg_color; + } .menuitemtop:hover* { - border-radius:3px; - margin:2px 2px 0 2px; - padding: 5px 10px 3px 5px; - background:@theme_selected_bg_color; - border-color:transparent; +margin:2px 2px 0 2px; +padding: 5px 10px 3px 5px; +background:@theme_selected_bg_color; +border-radius:2px; } .menuitemmiddle:hover* { - border-radius:3px; - margin:0 2px 0 2px; - padding: 3px 10px 3px 5px; - background:@theme_selected_bg_color; - border-color:transparent; +margin:0 2px 0 2px; +padding: 3px 10px 3px 5px; +background:@theme_selected_bg_color; +border-radius:2px; } .menuitembottom:hover* { - border-radius:3px; - margin:0 2px 2px 2px; - padding: 3px 10px 5px 5px; - background:@theme_selected_bg_color; - border-color:transparent; -} -.menuitembottom{ - margin-top:0px; -} -.menuitemmiddle{ - margin-top:0px; - margin-bottom:0px; -} - -.menuitemtop{ - margin-bottom:0px; -} - -.bkimHeadBar{ - opacity:1.0; +margin:0 2px 2px 2px; +padding: 3px 10px 5px 5px; +background:@theme_selected_bg_color; +border-radius:2px; } -.bkimButton{ - background-color: transparent; - opacity:1.0; -} -.bkimButtonPlug{ - background-color: transparent; - opacity:1.0; -} .noborder{ border:none; } -.buttonPlug { - background-color: transparent; - background-repeat: no-repeat; - border: none; - outline: none; + +.bkim{ + opacity:0.99; + border:none; } -.button { - background-image: -gtk-gradient(linear, - left top, left bottom, - from(@entry_background_a), - color-stop(0.20, @entry_background_b), - color-stop(0.85, @entry_background_c), - to(@entry_background_d)); +.bkim_no_plug{ + background-color: transparent; + opacity:0.99; } \ No newline at end of file diff --git a/ubl-settings-datetime.glade b/ubl-settings-datetime.glade index d179374..45593ac 100644 --- a/ubl-settings-datetime.glade +++ b/ubl-settings-datetime.glade @@ -143,6 +143,7 @@

+ 659 False @@ -314,7 +315,7 @@ - + True False vertical @@ -356,7 +357,7 @@ 5 6 6 - Time + Time: True 0 @@ -428,7 +429,7 @@ 5 6 6 - Date + Date: True 0 @@ -453,7 +454,7 @@ Format: DD.MM.YYYY 6 - False + True True 5 @@ -706,7 +707,7 @@ Format: DD.MM.YYYY True False - Synchronize via NTP: + Synchronize via NTP @@ -756,22 +757,10 @@ Format: DD.MM.YYYY 13 Synchronize hardware time: - - True - True - 0 - - - - - True - False - 55 - False True - 1 + 0 @@ -825,7 +814,7 @@ Format: DD.MM.YYYY 5 6 13 - Region + Region: 0 @@ -863,7 +852,7 @@ Format: DD.MM.YYYY 5 6 13 - Area + Area: 0 @@ -1041,6 +1030,9 @@ Format: DD.MM.YYYY 0 + 1 @@ -1126,6 +1118,9 @@ Format: DD.MM.YYYY 1 + end @@ -1144,19 +1139,9 @@ Format: DD.MM.YYYY - both - True - - - - - both - True - - - + diff --git a/ubl-settings-datetime_ru.po b/ubl-settings-datetime_ru.po index 7472b4e..7d32a25 100644 --- a/ubl-settings-datetime_ru.po +++ b/ubl-settings-datetime_ru.po @@ -16,6 +16,9 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +msgid "https://wiki.ublinux.com/ru/Программное_обеспечение/Программы_и_утилиты/Все/" +msgstr "https://wiki.ublinux.ru/ru/Программное_обеспечение/Программы_и_утилиты/Все/" + msgid "Copyright © UBSoft LLC, 2022 - " msgstr "Авторские права © ООО \"Юбисофт\", 2022 - " @@ -94,8 +97,8 @@ msgstr "Изменить параметр NTPSERVERS" msgid "ubl-settings-datetime" msgstr "Настройка даты и времени" -msgid "Time" -msgstr "Время" +msgid "Time:" +msgstr "Время:" msgid "Clock" msgstr "Часы" @@ -106,8 +109,8 @@ msgstr ":" msgid "Minutes" msgstr "Минуты" -msgid "Date" -msgstr "Дата" +msgid "Date:" +msgstr "Дата:" msgid "Date of\nFormat: DD.MM.YYYY" msgstr "Дата\nФормат: ДД.ММ.ГГГГ" @@ -118,11 +121,11 @@ msgstr "Интерактивный выбор даты" msgid "Change zone setting" msgstr "Изменить параметр зоны" -msgid "Region" -msgstr "Регион" +msgid "Region:" +msgstr "Регион:" -msgid "Zone" -msgstr "Зона" +msgid "Zone:" +msgstr "Зона:" msgid "Sync by" msgstr "Синхронизировать" @@ -130,8 +133,8 @@ msgstr "Синхронизировать" msgid "Automatic time synchronization" msgstr "Автоматическая синхронизация времени" -msgid "Synchronize via NTP:" -msgstr "Синхронизировать через NTP:" +msgid "Synchronize via NTP" +msgstr "Синхронизировать через NTP" msgid "Time zone" msgstr "Часовой пояс" @@ -1648,24 +1651,6 @@ msgstr "Введите имя ntp-сервера или его ip-адрес.\n msgid "Cape_Verde" msgstr "Кабо-Верде" -msgid "Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update]\n" -msgstr "Использование: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update]\n" - -msgid " --lock-timezone Disable timezone field editing\n" -msgstr " --lock-timezone Отключить редактирование поля часового пояса\n" - -msgid " --lock-ntp Disable ntp field editing\n" -msgstr " --lock-ntp Отключить редактирование полей ntp\n" - -msgid " --lock-datetime Disable datetime field editing\n" -msgstr " --lock-datetime Отключить редактирование полей даты и времени\n" - -msgid " --lock-update Disable save changes\n" -msgstr " --lock-update Отключить сохранение изменений\n" - -msgid "Options:\n" -msgstr "Опции:\n" - msgid "Save" msgstr "Сохранить" @@ -1807,3 +1792,34 @@ msgstr "Успешно записана глобальная конфигура msgid "Local configuration successfully written" msgstr "Успешно записана локальная конфигурация" +msgid "" +"GTK settings datetime for UBLinux\n\n" +"Usage: ubl-settings-datetime [OPTIONS...]\n" +"Options:\n" +" -h, --help Show this help\n" +" -V, --version Show package version\n" +" --lock-datetime Lock date and time changes\n" +" --lock-timezone Lock time zone changes\n" +" --lock-ntp-mode Lock NTP mode selection\n" +" --lock-ntp-edit Lock editing NTP servers\n" +" --lock-save Lock saving local and global configuration\n" +" --lock-save-local Lock save global configuration\n" +" --lock-save-global Lock load global configuration\n" +" --lock-load-global Blocking the global configuration download\n" +msgstr "" +"GTK-утилита настройки даты и времени для UBLinux\n\n" +"Использование: ubl-settings-datetime [Параметры приложения...]\n" +"Параметры приложения:\n" +" -h, --help Показать параметры справки\n" +" -V, --version Показать версию пакета\n" +" --lock-datetime Блокировка изменения даты и времени\n" +" --lock-timezone Блокировка изменения часового пояса\n" +" --lock-ntp-mode Блокировка выбора режима NTP\n" +" --lock-ntp-edit Блокировка перечня NTP серверов\n" +" --lock-save Блокировка сохранения локальной и глобальной конфигурации\n" +" --lock-save-local Блокировка сохранения локальной конфигурации\n" +" --lock-save-global Блокировка сохранения глобальной конфигурации\n" +" --lock-load-global Блокировка загрузки глобальной конфигурации\n" + +msgid "ubl-settings-datetime version: " +msgstr "ubl-settings-datetime версия: " -- 2.35.1 From 62c60115a1ce520d79fe38027405651ece058e30 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Fri, 17 Mar 2023 17:44:46 +0600 Subject: [PATCH 3/4] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BB=D0=BE=D0=BA=D0=B0=D0=BB=D0=B8=D0=B7?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-datetime.cc | 2 +- ubl-settings-datetime_ru.po | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 6f72a6f..f212379 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -1349,7 +1349,7 @@ void help() { " --lock-save Lock saving local and global configuration\n" " --lock-save-local Lock save global configuration\n" " --lock-save-global Lock load global configuration\n" - " --lock-load-global Blocking the global configuration download\n"; + " --lock-load-global Lock load global configuration\n"; cout << gettext(help.c_str()); } diff --git a/ubl-settings-datetime_ru.po b/ubl-settings-datetime_ru.po index 7d32a25..6488c96 100644 --- a/ubl-settings-datetime_ru.po +++ b/ubl-settings-datetime_ru.po @@ -1805,7 +1805,7 @@ msgid "" " --lock-save Lock saving local and global configuration\n" " --lock-save-local Lock save global configuration\n" " --lock-save-global Lock load global configuration\n" -" --lock-load-global Blocking the global configuration download\n" +" --lock-load-global Lock load global configuration\n" msgstr "" "GTK-утилита настройки даты и времени для UBLinux\n\n" "Использование: ubl-settings-datetime [Параметры приложения...]\n" -- 2.35.1 From 83300acc1017493b13bf88e5e142efa5887361a3 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Fri, 17 Mar 2023 17:53:06 +0600 Subject: [PATCH 4/4] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 38962cd..000c257 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ Options: --lock-save Locking of local and global configuration saving --lock-save-local Locking the local configuration save --lock-save-global Locking the global configuration save - --lock-load-global Blocking the global configuration download + --lock-load-global Lock load global configuration $ ubl-settings-datetime --version ubl-settings-datetime version: x.xx -- 2.35.1