From e400285730447169fbdb13c8eaf02cea85153a26 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 29 Apr 2014 17:46:27 -0400 Subject: [PATCH 01/37] Added aliases to resources --- mapmap.qrc | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/mapmap.qrc b/mapmap.qrc index 5ac21c9..951ffa8 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -1,14 +1,14 @@ - images/document-new-4.png - images/document-open-3.png - images/document-save-2.png - images/document-save-as-2.png - images/document-import-2.png - images/draw-rectangle-2.png - images/draw-triangle.png - images/draw-ellipse-2.png - images/colorize.png + images/document-new-4.png + images/document-open-3.png + images/document-save-2.png + images/document-save-as-2.png + images/document-import-2.png + images/colorize.png + images/draw-rectangle-2.png + images/draw-triangle.png + images/draw-ellipse-2.png From 3f4dd9979cb668191453ac0b87eb5dc3e8f18bf2 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 29 Apr 2014 17:48:03 -0400 Subject: [PATCH 02/37] Added stylesheet --- main.cpp | 8 ++++++++ mapmap.qss | 12 ++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 mapmap.qss diff --git a/main.cpp b/main.cpp index 28e7acc..c33c2af 100644 --- a/main.cpp +++ b/main.cpp @@ -18,14 +18,22 @@ int main(int argc, char *argv[]) return 1; } + // Load translation. QTranslator translator; translator.load("mapmap_fr"); app.installTranslator(&translator); + // Create main window. MainWindow win; + // Load stylesheet. + QFile stylesheet("mapmap.qss"); + stylesheet.open(QFile::ReadOnly); + app.setStyleSheet(QLatin1String(stylesheet.readAll())); + //win.setLocale(QLocale("fr")); + // Launch program. win.show(); return app.exec(); diff --git a/mapmap.qss b/mapmap.qss new file mode 100644 index 0000000..1134e62 --- /dev/null +++ b/mapmap.qss @@ -0,0 +1,12 @@ +/* +Colors: +White: #f6f5f5 +Dark gray: #323541 +Darker gray: #272a36 +*/ + +QMainWindow +{ + background-color: #f6f5f5; +} + From ec12abdb79dd4490461e21c0dd093b6d8baf53b0 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 29 Apr 2014 18:08:45 -0400 Subject: [PATCH 03/37] Included all possible icons by Mike Latona into the interface (missing icons were replaced by default). --- images/document-import-2.png | Bin 8583 -> 0 bytes images/document-import.png | Bin 13912 -> 0 bytes images/document-new-2.png | Bin 1985 -> 0 bytes images/document-new-3.png | Bin 9497 -> 0 bytes images/document-new-4.png | Bin 7548 -> 0 bytes images/document-new-6.png | Bin 10342 -> 0 bytes images/document-new-7.png | Bin 2362 -> 0 bytes images/document-new-8.png | Bin 6060 -> 0 bytes images/document-new.png | Bin 5060 -> 0 bytes images/document-open-3.png | Bin 8492 -> 0 bytes images/document-save-2.png | Bin 14995 -> 0 bytes images/document-save-3.png | Bin 13117 -> 0 bytes images/document-save-5.png | Bin 9528 -> 0 bytes images/document-save-as-2.png | Bin 15590 -> 0 bytes images/document-save-as-3.png | Bin 12393 -> 0 bytes images/document-save-as-4.png | Bin 12638 -> 0 bytes images/document-save-as-5.png | Bin 17064 -> 0 bytes images/document-save-as-6.png | Bin 4893 -> 0 bytes images/draw-circle-2.png | Bin 1642 -> 0 bytes images/draw-ellipse-2.png | Bin 1490 -> 0 bytes images/draw-polygon-2.png | Bin 1717 -> 0 bytes images/draw-rectangle-2.png | Bin 1087 -> 0 bytes images/draw-star-2.png | Bin 1829 -> 0 bytes images/draw-triangle.png | Bin 1355 -> 0 bytes images/draw-triangle1.png | Bin 1548 -> 0 bytes images/draw-triangle2.png | Bin 1551 -> 0 bytes images/draw-triangle3.png | Bin 1458 -> 0 bytes images/draw-triangle4.png | Bin 1513 -> 0 bytes mapmap.pro.orig | 155 ++++++++++++++++++++++ mapmap.qrc | 29 ++-- resources/fonts/HelveticaNeueLTPro-Bd.otf | Bin 0 -> 35688 bytes resources/images/box/box.png | Bin 0 -> 1327 bytes resources/images/box/box2.png | Bin 0 -> 1227 bytes resources/images/box/box3.png | Bin 0 -> 1288 bytes {images => resources/images}/colorize.png | Bin resources/images/ctrl/pause.png | Bin 0 -> 1047 bytes resources/images/ctrl/play.png | Bin 0 -> 1666 bytes resources/images/ctrl/stop.png | Bin 0 -> 1040 bytes resources/images/logo/logo_m_big_map.png | Bin 0 -> 2216 bytes resources/images/logo/logo_m_mapmap.png | Bin 0 -> 1217 bytes resources/images/logo/logomapmap.png | Bin 0 -> 2663 bytes resources/images/media/photo.png | Bin 0 -> 1678 bytes resources/images/media/video.png | Bin 0 -> 1403 bytes resources/images/media/webcam.png | Bin 0 -> 2104 bytes resources/images/menu/add_cam.png | Bin 0 -> 1437 bytes resources/images/menu/add_color.png | Bin 0 -> 1538 bytes resources/images/menu/fullscreen.png | Bin 0 -> 1460 bytes resources/images/menu/midi.png | Bin 0 -> 1461 bytes resources/images/menu/preferences.png | Bin 0 -> 2093 bytes resources/images/menu/record.png | Bin 0 -> 1446 bytes resources/images/menu/reseaux.png | Bin 0 -> 1558 bytes resources/images/menu/save.png | Bin 0 -> 1407 bytes resources/images/menu/sound.png | Bin 0 -> 1856 bytes resources/images/menu/webcam.png | Bin 0 -> 2147 bytes resources/images/shapes/add_circle.png | Bin 0 -> 1687 bytes resources/images/shapes/add_line.png | Bin 0 -> 1524 bytes resources/images/shapes/add_quad.png | Bin 0 -> 1334 bytes resources/images/shapes/add_triangle.png | Bin 0 -> 1623 bytes resources/images/shapes/mask.png | Bin 0 -> 2509 bytes resources/images/shapes/timeline.png | Bin 0 -> 1221 bytes resources/images/shapes/warping.png | Bin 0 -> 1310 bytes 61 files changed, 175 insertions(+), 9 deletions(-) delete mode 100644 images/document-import-2.png delete mode 100644 images/document-import.png delete mode 100644 images/document-new-2.png delete mode 100644 images/document-new-3.png delete mode 100644 images/document-new-4.png delete mode 100644 images/document-new-6.png delete mode 100644 images/document-new-7.png delete mode 100644 images/document-new-8.png delete mode 100644 images/document-new.png delete mode 100644 images/document-open-3.png delete mode 100644 images/document-save-2.png delete mode 100644 images/document-save-3.png delete mode 100644 images/document-save-5.png delete mode 100644 images/document-save-as-2.png delete mode 100644 images/document-save-as-3.png delete mode 100644 images/document-save-as-4.png delete mode 100644 images/document-save-as-5.png delete mode 100644 images/document-save-as-6.png delete mode 100644 images/draw-circle-2.png delete mode 100644 images/draw-ellipse-2.png delete mode 100644 images/draw-polygon-2.png delete mode 100644 images/draw-rectangle-2.png delete mode 100644 images/draw-star-2.png delete mode 100644 images/draw-triangle.png delete mode 100644 images/draw-triangle1.png delete mode 100644 images/draw-triangle2.png delete mode 100644 images/draw-triangle3.png delete mode 100644 images/draw-triangle4.png create mode 100644 mapmap.pro.orig create mode 100644 resources/fonts/HelveticaNeueLTPro-Bd.otf create mode 100644 resources/images/box/box.png create mode 100644 resources/images/box/box2.png create mode 100644 resources/images/box/box3.png rename {images => resources/images}/colorize.png (100%) create mode 100644 resources/images/ctrl/pause.png create mode 100644 resources/images/ctrl/play.png create mode 100644 resources/images/ctrl/stop.png create mode 100644 resources/images/logo/logo_m_big_map.png create mode 100644 resources/images/logo/logo_m_mapmap.png create mode 100644 resources/images/logo/logomapmap.png create mode 100644 resources/images/media/photo.png create mode 100644 resources/images/media/video.png create mode 100644 resources/images/media/webcam.png create mode 100644 resources/images/menu/add_cam.png create mode 100644 resources/images/menu/add_color.png create mode 100644 resources/images/menu/fullscreen.png create mode 100644 resources/images/menu/midi.png create mode 100644 resources/images/menu/preferences.png create mode 100644 resources/images/menu/record.png create mode 100644 resources/images/menu/reseaux.png create mode 100644 resources/images/menu/save.png create mode 100644 resources/images/menu/sound.png create mode 100644 resources/images/menu/webcam.png create mode 100644 resources/images/shapes/add_circle.png create mode 100644 resources/images/shapes/add_line.png create mode 100644 resources/images/shapes/add_quad.png create mode 100644 resources/images/shapes/add_triangle.png create mode 100644 resources/images/shapes/mask.png create mode 100644 resources/images/shapes/timeline.png create mode 100644 resources/images/shapes/warping.png diff --git a/images/document-import-2.png b/images/document-import-2.png deleted file mode 100644 index 7d4373dc4f4bc862a8926e9c22747b63aa27afc3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8583 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 Gu>S?-a!gJD diff --git a/images/document-import.png b/images/document-import.png deleted file mode 100644 index 4443d14d2d2b8dd3e2df4462b4ffc9a18aec8081..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13912 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 F{vQwxh*AIm diff --git a/images/document-new-2.png b/images/document-new-2.png deleted file mode 100644 index 528dd513a0d35946cbccde5c922865cd67126da9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1985 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 diff --git a/images/document-new-3.png b/images/document-new-3.png deleted file mode 100644 index f8f179b20a710fa2c4e5c5f3dcd466f0d88648b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9497 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 F{|8UcsFMHy diff --git a/images/document-new-4.png b/images/document-new-4.png deleted file mode 100644 index 9487647c28ea0d52ad41bb32fdb14148abbc96d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7548 zcmaiZcQjmK_wJb)#$bjSB}5%HM9HYpjb4)Ii7un}P6WXqK@dGk2!kLAQKCd57!oZ6 zA-cp6Li7^7UHQJ>Z{2nOy6;;1-Rqq7JkQ>HopsLI?>>(W^t2FEEK~phAau0VjV?U? zpTVFP`zIya-U|n{yP>6i;V;&qT2sV@qx8`>_Xhx-p??N?sS$th@8&%p73T|&|Bqp2 z#hw8GYoLz0ipl-SHR~J6yj{L$+$-OHNXV<{PCu%bZcA68d;#J(kzKGksulbNW_u)Aozrj{1o2X6+HS`S9`!}kt)m5)9ppEEwQ!wTXVaWDghMoMN?XQ1bT@<3%`elr(@?L{0+4CIscMimZDI--?- z{1nX>&OEFlRsh9p2M$$IemjHgO5T<@g!j@~K1 zTUtKeDJ4;nQDN*iO6u_zt%zda@eEWp+aKx1i|uHl&OuhcL-2&&y^5F&`gwNM=469h z>2#GEGrZx^&|}Kft2#yfVv+iQp)vhyXG>*6$2b=n>O%wgvhmz9o-zqenwpyGjHxOQ zFZrItH>0(@?@m!Oqu9Grx3YU3Jqc{|-3EVzi;2rRPaJY~q zj~`{tj7upM%rF|XC>Dsf0fIoSH=gf(fEOWP*A3>sEB{cP9X)N0DMG|eBe9m2q@;}K zl!>4EkI3_>%0zBr;Bf*~pzKEgD#HS-3(-#DmCd9^$d?l&kk6yJ+&Do8_bMW<0>4a> zuO8@z(j`iR)v!&{mCUyb4ewKtt~nrYk%(91&!%1#fKv#Pf1{lJCM{Me+eas8 zi$sh*>m+rw<4Kah68z3>vBp=6#xw>_%^BU1J9$-=DopgQ_!fjxU{wLfeLvI@INp!8 zWo^VtInpHKMS zy`1t5ca`nnJtV?B4gZcmuvGhO$mG{wJGvXOrhg{9UeO}D^LisdMdWzL%j}s9k-7@qh}nv@ z#ScVI<5l8JlzsSBo z8!ZQfwCwB6deh!u9q2cjBJvdZ&8+IeRJ3*+T1Ft43w_|qH36Wz_rmR%RQSm;$gb{JEIp%M}E3pdAk$j-eZaD zmc6eXp8_fhq-?l&fy%|LfmcE_W|`lylwe)0eg&Ow`B-Lk!88Zz61e$@YJ!{hVn|gG zfhW?LQv<7z2LwhO<&iic2i5uYjca{9(X?DDFDa??!6tDyTTn)n38sdgGWPJQ_3c;!X_1Q%GqhDt#y5bsMH+9xDjs(N1Mm;Lm zqM7fb`8KqpV_FpNr@Xy?=e5b7!jPax0$^$sVcAh!nWzNrb0zCvVCQ9;<6}f(vHT4r zQ*Cr0jMsCcz5=-9Lgq|??|-hT?Qw^hDr@+a!ofXlpJ2jSK8MKngsyya)BJvm7Uv(Sh}=OjbH<68h%3DC2bJB|K&XWJaah+b78aXxwR$u=i^f z9tL}RiWbdL^$)apy4&a^m7i`3rSWe;5(A;TTP*#a6b3$jamL79uampo1~!zfbLBCy zV>EUGqM#4}4Ze@yUfWhstG-R5AdvnjNI`r)?Z!NHbT$#f*K^0{SlU?AzYGHu*D_LG ze;qwp165HPoVG^AwuahsC1>%FIZ9U*Ck_9Mz5H}oUJvrO=dCL%)rarw+h>LT6e~XO zU9wPne4xr#+6!*^@JANyteKOgPq^OoG|i6&69kyZ4;@l}Ot-~YvHcA5zoyx;?x04r z(j;xgMtz{VQWgH{?X#vr4E|^p1YLcuI~jZ5(U;cPp)9om$BtzU?O&w5)U^K+`3blk zqy1a^0Esw8jPw50i3Mb1Bp!wV(;8P&tJG*b(hNKqU7UjN-ae=Jav9V_&_j;B6AfV< zsWnz4XSRPHD2{M=*AHPmAScTAyqF9olk(uee@>A#(~Gg@kBYXt9FW09pg!>bN)-a~ zK38*5*r1qlq%d|_gV6QvKZ=Hlkevu@ZZ5n$0LjFX&!iHsWI@$Q;_n#-SAPz^e8DPD zcn?0(%L#)qgO|nHW)$@SAs+&{0+B&>lUL4JBv8|VU4reYe~@4KdqD`PsEUDt^vN~u zbIanVwtgl&0%+<>4qmBEoG8hT_Q&`&vMHO(t;6H4sh%L%t34O{ZRGfsCQKPGHNy|tTn>TaT8)?8Ka0ax@+I4>ujioZnlsS&1UOd&&IoV4`B6#F{`DDltI&N7k2YW-t&ld}1ur!ldNk;O3z1#BIT%3M? zu>qMIe5on=P6MKBWY)lk(GUtr$-88FE4)UPLDYjZ4p+~a27AW@@!&)TIu5A!$7`UL z#ike5{cMq{kTmN%)x6Ok3IR(@!@UvI)R+aU%dI}E3BebSVSHRy$;qeb6S;{kW7e$4 z3~Ft&I}cyaD3QquUGyhl8N0tFULMzh)j8yf!CTVgtHRaYjQjHK>7O?cT%WMA3@I)U z4?zZ{aP|j%ziVQi}B~0_a{2u-deeuoZl(Y#B(OGkM+U+RS3gAnHueLjdOQX5j6TpfGpel2<-#-+Lw|lad2@tDirMjo1+<7;T zp*c|Q4B_WL=*OJ{2fw3}3+Or<7KiEhHjDN;-g#3J=>WRTi3LThtd>6f2DfJ{`4;TX zbYDFl1%Z?Q{_GTCKP!oi`kIMV@5Fc+dQtmR|DM8C5ss>>YiL!%DQe8iBCCWBMt1rK z)7dSoH?&IjYjbBlbuLZ3k2Bwv{OpY@i(jbbGAF9!hM3mvBHvDN;>{blZl*4XNwbod zj5B|7Cr+Dfo+_zuftD=_whs5qVc^|AO1_iPc_Wq8;icqpnZOl2h=4$c2Yd=qn5}lJ+G`N({ypSe z0L%uyJKvGObpPnDU>q!&Q@L}>yY&Y(-gpXhhYq-bk<6gppS)?E#r>NOI=+aMsn;Jh zcL?=aXUhHlL{oD-e2#(YdRz*-iz)7N_YT?06V(^v%uiUWhXHYTh89=b8-HDlL5G{P zGJxXh6;}w|g9ARkzLCNgg9Jl{TkDj0LAu)2&}{MqT%PGQ4}e060>qoSW=&_p6a3cD z#JDKdZ@Aq6qK<1QkI%Mu2#$ZkgDpISI#fPK-Cv1`&Skkg+P|;7#%~zNN_foR%l2z~ zn=Y9{QI)Oh;-rA-l=Pw)*3etzjVGFAawt}>>9@QF*MOVixD4l}dn)&hXFVR{0VUzP zhXLBy_zs>wO1Z9-DI-8`eN;RyKFSO5M_~7;K2D5~eJnoG;I9R#qQrT1qPmhfc?SIR z3JU&3V`5@DShyDPewd^t)$Y4R#sM| zlM}Ywubs5y{(z!$#^C6U8utqGgc&(EUI*bjt=3;|hk(>}?@prNG8|@fK8^Zl`L$?9 zX4JMq$C{ifLz{>HH=xefKD^pkKpJTD9A47#z&9YcGmPSjE^^=+@OOD*xe;n=)wvc( zcm0QP$+uWopB}^jyb_7%Izzwd?V@haAp;5)ES=Dgp*Z2TBGC4u5rE36)^N<=H`OyM z(Hs}R!xwl!($2>^#WXZsu9IH32DO%_$JO|0;vFa_fV3yme4?&u;z7b7=E<1opgkA^ ztmsxKr@^K~#~qy~9iN5LFy!rwP)wwsRMVOO*! z2F>8|;GouoX+}?<#{8&VRO6;t6FG;{!5#fCH8$##J%?GXs(_ywexCh9GXdKzUJk-{ zD};szBS=qgY?H!9&y;fdpv<+RINkkC!8?rRkDt$GLLajQ^M#n{tn5JveWhQxh)wAz z(bf9$_{$DbM7bET)Wdh@CvS2iPHJ0wB2J1UeEd(sRo+if4t^(ak*u)_dj^9G4|X)D z!h>bXenPA5BO3Lq?*pv&sDr2tWi|!g4g*A4W^ATNjZGK8;QcN&c%^)$O_}}r1izti zk3sK=q;Y##5qhevC$9jEAUf(fNo5kfjIni0V+xE^FfoRn(Oy{X8a6G<)&XMAJ zQ8ha@_DW*@!(ryr>o$?%xiTt&eKYLfj|k$IHD0Sqm{XZ~_6=IMiQk|6#rOls9=SCS zyxj_WBEPVSnLkxqJkpVArk=cZz$$z#GoUDDF?D#@Wu|xnu*S;=oS97$R-8vxIKhq) zGz(|W96Rm;)(+D8xZ$kJJY7Rj>w+Md%EE)@pM?*;gwK&$Gh7 zBsqztgHw$oj~61lT?%8X=54VmY#dBmg z-@l^ab?>~Ot#LO4Zl(u^diLf}EiiXEZ<^M}L(5?5G^r4gv}OH4ucU0%LyMN8mx<*= zgU{6h;`BWtlEQpS%0Cr1lt&cgaPy#*clt=U@w{bN>HTl!U&-)eY-w4qm;G$AvnDpyC&rLxv76B6Miw(v zKQ=&lz~Hq|GcX=dCCb~FK1>YLDYV8frPDWVwAfd&hkQjw{}p{7zT%hh#xC~D3IP%G z;Erj11l;ar&Gl>^PF!4{r_fDTiq)Of`sVAV$29!dG4(+ugmji}fqN+?R&6Ewk28^d zf|HQYr}%UK{XN*@sC9n)w5q%k+TFep|yFE2!6VyDA7g$ENZh{|M;FXQM^<=PX>stfItXV^Q%gS-e z$3OD#n)B6?(ij!)l(KM?=E=eX>7Ivtu*&+T24D(!T-a@hHCDq=2vj(QKee{lUMR(ecS0``)`GUp0cI8;O&+FP7h3V ziTo&Ax6T-Ar$6|hlfB;H?H}7P)|Jsir>eKhSIUy!_2742;ih~p-91y-;C@bQ9&6}E zLrB>uw5mgx#PCFt?4=r6Q^IqHJp}jUi?2z{EZb|ffj`DQ*Pm5#+OHKvEu}X`EsQ&Q zH-!y#oyv`6xOMO7tDG5s!GTXUW0gObn^rMM3^T|^cG;bqsoqqH5`65C*yi`1ZJI+3 zMgTsmXDCISJ$O~0^gFRO$dw@Gkn?(sa|rL*xeZetydV#8o{%WEKTN%8JO@?T0s{lbZ3`=bh|GTz^( zejN8!*pkJ*$cLv`RI$*zSkF3Wb%kqSuwEpDE>1f4$w@_H3?KG@=MjbXy*L0IPRF2+ zFA~V?%od0*GKbd+s&EL!hCC=3Shl~$zJ$3tutUD;-RqvAEKzDeS6E*|iz3j3KZ12; zlS`Bzsa-8e;qCd^nJOs`gikS-FeHi<`~B|Z_e!*83|KnJX8aafSy&`sG=8`IJO14D zt$~HkpeBCPl=@dp8nZo}6F)F$VT$#fLI|_*XBa(a!u}kocvdN{F()W-(YhQKJP|8O zrCbtG*xI4O1|IOk&KF%jF@KLhT5sa2oNu5EX%xmSY<>ATBz}DYC z#z<7%=v^;qR!9OxF&mWIB=+HE(6Z1_2QR2eZ&=vrO!>%im6x|S)6DtV{?<;x zIorkjTI3IkiSv7B@1`br>_ZPSml`HSz(^^^i8Pti9+nt+l49KY0) ze&yWH*LUmJh}$kxLHLoNV#L|W_qD(7B6imng3pGX2l7w5nR)C_T86?~GySPb+Omo| zm>--RZ2bzF3EQ`Hc6OdI(QS^Tq`$RZ!rj+*eQIrQM)~aES8K%fe9tulz0>xz5u1&A z5X~!?80H?fioLkQuI9nP=4^3qZ*P@g$)&yu03T-t?+CrjukH}njqwln_urYjXp_(V zFV>UgY2_}_%i?UC6l~zqb&7Ei$3g{K@=|X>a|36%K7Q8d-EyFhuv>}V!*Ah0jc_i9 zYSRj}i8BTGfed__9+&OokwGukpxp= z986%SiDz~11o_~#HP5HE=DHh8gD6-3&4(pH$4P5XRb!9`AsZW#oXuJB56NEALISxH zmreYE;qS*AC9RwJWBV3=ZA#P6DHw%OpR@egLofcs@dap@1=#yJ+6Fj^I9zOiI0hpt zA|@_^kuedIkQ0-Vladm_T$jUOm@7q^|CjI&DfeI21wjlWf)N)H$C!vq$cal|aQ;hx z%3DSLKLk&22Un-y{~?Hph>4kCWaOk|cyU+PZovpDqvlZ@B+P`u`N9#cBEY zf^hj?IAd?8fFN5xM<6IDNYvHK-QV8U$MIjF+;s(({|gHAvv&kcY`vVl(K`0tUg(>y zc7C>g!6pN1Q5PV&|0?|h-Mwve^M7*>_=gvD@^f@_aP)T%@b>vn0sm3C`%mTW|EPTI SelvQZ0_bSysaLAvqW%x7n6Li; diff --git a/images/document-new-6.png b/images/document-new-6.png deleted file mode 100644 index 00f91d5c45020bed279ca7ac95da2eba0b3fda85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10342 zcma)iWl&r})9xAz1PD&h;1US1xNGp>Aq1D;uEAx2pur`$1Pvirkl?#Okl+@auy`Q2 zE`G`T-mh-mU-wQ`PgkAkXU@}eYGzJ%b+o3sBHkm)M*si-PgzM$`$5D12^RFB@0K(l zd{EH0FBRn;^h3LR(Hi`quw9k(Jpcfz>VE<>p-iIw_t48##^yo8|0A#!o-6=><%P1G zjE>LzUaoJfWnbX3)a!#kdHxA=a~~Mqq%vzUS@FDQ`XTdNrG^gDNII9iiW5Q8U2~^K zf|Pb-jIyBMSr@J)rHYc*j_EhvVR}|=$HDMSg<*qPO`GAF_Bz)y_vY5R3lSUIgZ3{2 zwACiw?fWwl5)w;%b%MchU1HZXXSc>@6{f$4+hoGZ#DHO#j+nng`w-HujG^D@XXDJE z5`{N~>B4~{f;Cu!+;8)m1IPaD1u zU-C01D+vFib%*8pG|?HE;?bK7MBTyULl%fmfI|rassb50(Z#(d>*S_u z!u}~tbO^Bf;QCSc<=XRxx}g{l?n~Ps2({cXfYhXyam9P)9DU0R*IT=<_ENDrO+WGx z5<(pvj0fO$HYkaU_mgIF=WP-815B>~OrrGDJSyelhZJb%aa-Izo&dbzCF&Kdd_{T! ze*JQr9ZYF+(?QnJ(fgeKLu~7&JX85&L#!ZBwCz+(-DyBV?F6}h--UbkI^OQnrD03h zPaRl~B@7!W+lCAfAARUE2Poo)Xji6=pMCs0_*qV%Q^Qf2qSMR=Z+J^&BFlL{$=&(U!zr zp-MDBV8Ju+u}e2!nqWIB+$ZE!+AHcjsiDay`J3T`+%-mq&b-ojgl|cfiw5pd<{iVB zQRstq#E5+eu{3rD^tWZYIqgids9hE>qW^lfkDH*Th<-bSQ&Kfv-Tm)r<;_r4{>o;h z5FeqcS&k_;Q_k|+w*G|8pdXAjPggQOjMiux!!xXZlG8g$+)xNeDk4GmCEwo|aJmwa z1J6M&+-WK^zda|_CS?eGsN#le`pLss#noBM!qyHX?y8&OgQFEQz>*ND)61XR`Rh-X zPd_Ze-hr(Ui;w-j&kNRzh4W{A`Zy)b8~na{G$?nATT+9FnIOpqqK5Hvi!dNY$Su#* zt8&A77GKJnonjcrF}nC7|g z$}~=~p&X_zjU|Vaowx6Tf|k!f3|JtMhsN{J%wq#PgSc6Dvnj_HnYhXSs)0Ix_M`;t z%xN6$)h#=JxlWuSfV%E|bhs?}8x)=WeK9sQIi`w){{Yv3BUP8Yvh__^qEB9As!1g1xk-(1TX5SsH zr6skLXbjo)dluL}wl0yuC?hxaT$=n5754b0TI+4~<&Smt+kg#m#C-yyFR=P|ZrscyfVK_4G+dpPdvNg^Sj9>t^|H-z_u-OcK%HM&qGQ!R%bEeWT-P2@oc zq3+@cqM4wuU2yk~0WTHkQh*NLKiZ`Re;8*7zS=EozHhibL8VV_bd(1M+{`D`*?8iU zzWQmbft5H7A}@+wi?VM}p_WhW!6MpT%z;Xg^S?av?Q-vrBBv*y$C|TUuv=>j4Uw?$ zN2A}-Zkf1o_iZL@6!8&)dJsiJ@^^44Iy?dVNMO#J1Hicf#V5TMG39p}6Ti2cc$ie& zMh7vQw)!P(KP@2hGc#7YX96;E8O6#oDOr9Q$4Q&=9olHGDB0`me0cw5sQNdWN;Tq@ z6DKIdj6Q1%hdc1&#yp4@hH`kHN?w6cUmHFpLaI>XVaZC{vDqCU9~^#?Gpb06_cUhN z8b`4?4zaGaU_$;F?D^4ernDO3l|5h@-g037^ca7RFaTFP=$s(}Q`t$0Cl*a(=pgIXs_dTWwM?e*KJtb{URz z2uXhQ)4#f_+E{rVr(D}kC1=4{?Sm>tIkxbr}R)^Y$Y?r-& zT#)9$JN5Yjx39>2TY+4g^wFbC+MtNZ!LpObrr2`Iu7l@>O+l-EUrJSmr#@#>)^bL_ z($V#dlY1SV{7B1aZ-&QsTV+cO5OBndnzBK(+eD1;bgz>x+tCPz8rn?SRW)+(+$v%S8>j8UX*^i^D3; z0|t6}K{rO0s=W!}mr5lsv){|TiC%rAJ@}NoK*5onNmR}OIHA!B`3lu6)n9Z9K^YtV z?s2sG`07fhgO=VnSSsZP+KT2InK+cg+yS40f`n=?KkZ-hfXgMq8PoASP-$Q$CZ}Nu z?$ajo9caL4nf(_mLtkfn=R1~6d1cKOg`BCwRE;t+_${WJHX}=#UmWDd8leg8Fdhws z&jl@?G(W&brbi0v?f2x4lWxcm-9ncnQbW$dFz6p^(EQB8cd;*L0-)vLbD2>c#2t2EtK>)%V+&PrqPuZ1R->qIW)}oL+b(rkh zL#di98eKz)EH;jvkBV3;qahvx&_?Y^zBgM&OODKplnuLoPhq!;GDVe%Ac@6s`afmB zO_&2;(^V(Y$HZHW4>BpEH=|v6Tg4Zqo5S$eR)h_^E2mWPqLueb?M!qsSinl-Lt6yo zut!ezpNrLr6d&AViqjrb(BM?R$ zQtK4l>MX~Yih}%n1sxl(hjXbHbQUCI?fv3uc{~lF({7l^diIe=)*5Q02BT1Akcd9_ z%qxFoirU*Ik-9CD%5Ir9;F@tT69cS=hcqTHs<2xp4d3WDf@;prd9ZE&Z@K&47JQT!W2C()KV zsd<75nZd)t%hWm8Yycm5e}wK`Viic6R4aH^y%YvMpR6|*)fvvSluZg#kd zmcjE;cq(1J6(lKiMR^cHp$URf7QKSPl)n{1m69R3a=KtF*f-zyA?&F}@+bkOc~CV* zZ3Hu^+qa;IjHXM;juU4}@|7~Q&@Lqb*ix(GuG18!zXJF)YsZwMXS}CqNY{FS0_jyt ziJQLqfz8;;yC(OUNKA482HRhJ+iemXLu}YPHJxf=MM9IsB4{F^R;7y0Bo-rQ6M0fWO2!Hp*V${?{v$7ns4gY_(9+fRRTGDlw_dol{S}u-H`7A1719m9k9q={xiY9h<>IiPub^cS=9}sKXeJ0`{#n`@}t!(ohnoKYTB3 z5cy{FX*Ypw1{VKr=$2Z0SZ%b}*v3O+h9Bj+(mWFfGb3Wjv zAcmD|4`|2YvySi&zNYhU+?A&?MyvL;6WI0mOxP@-7m@IeNeDV;%rO=Y%TdplNauRkFpc~8L)e~w{q|57>?^nP!4|kG4m-;2cK2d- zKtNjKK-&+CnRRC`7rVc&X|Q}JEUew%EZ@%jyL$i@ykHX_sX&yO9Y8$6ZaD=@Enq`5`ObAE0gCu-#yusyQBaGN*z4Z*4=J&6zNr7Qk31aa;W$kxctdVlh?bfLA_ zKo5YV9@G92(w42}L%qH5zgZ1@@i#l$hd;k&W7( z04H)Q7EH`dtF@O2J#8Vs;&{+#)&6L&Z7=>1LNjp!dfUngmXE0z!^rb1=WYc*N80?( zl%Aa8`qhbvOa9!7bQKpnXx_tupOZ4E=Fiou1UC--7BIIHmXv;3;zEwbxXz;JB8W+> z{5>suAeBC+4{{;mnjSql8V!7pJRehDA&E%`Nr!1?8K?L+uMuNrW-c1*xumC$oJ223 zbP;Sq@kZW>kGHGp|`gX~$BvPV{8S+jt#~Isr!D-Wd!@uPyEQKs2s) zkIqrp_~GDKLpzXahVB$7e5c<#S%H-FsLf=fkiC`HkYG*gf+uQp@1^~oPNeLf zob#|N=#zXr4&{x}f?qy* zK!o+|sQAYTQ|s;0ZmO964|9MJ+JZ)gS=!%D3XwGZ^Z0A-J3m7CM(12knH}jEfF*ti z({`CW#EwUXa*WW~q{&!lK=Q*N|g?`usU9andgIQOaEu}2}yg{ECLf&lakqODTQ zI=AYyqTp+BC!P-6<*itJPQ^N&$kytq@-;WezaoqHdC^x`b}|7xpI2A4HEXnL$!}C4 zBGI0!q0sp3#pFtR|I4=ik`O**jK!%xu<>)?vi!zHJ@H15QCY}%ao3zB% z&UHeI)4w?2nuVmYW4v1M=~5xJZ9A1r0*h^vqou5m2ly__kS=x8lL303sa7`>nv*tO@=yMa2v3BW6AH@aH2p zzlnJct0=5(e($!462T>KsKE1l0v&q{Ccy{=s2}nxHety*@Bn@93_jJBO?na5RA3-d zC~VtJt)aZMbXcG+m}Rkem%k7Gr0NsQaNE!?kEVihgmFoN;;h+or~157eu{}w2pyi7O?%mUIwIu6z_fhF3} zHPr68!88Z)zl}3U*BOc%z(K3Ccg4uNJ~Do%+>597hJ&g447oO?S$}bwF4VQ5v6Z(j z9#`K~hJJ66YaEeRr$pfGP*GwP{_!DQh-riaI_{GB+(#aOPzSKTo% zR!^ihSZIFB>+ZRGJmw`A;mcym0?GQvBhHV_`__!%#scUBhQcD!T=!O*=aq$TX_RjtxKWIIc zH2K=mzjD;=HJfk(AK`cH?Oi7n#OZTT2@vLo03V0|Mc z$T^a~G@W>1Y|sb9LXjw!yEjU;poWxvcffKvEv zpwVhCYkr2h@FMF5>}W7j1+O>JVt09OL~!t+pYcBe9od?)b7|SpfwrMTxR$suNlEnv z?TyX(;ef*lOp&H*x>{OqN3z0W)q)1bTi!j2)M9!wys5ZVqYYfFXr7jhW~ME6o6l5f zS2&MU7kME@LbpKq55q1Pl7=jD;+Up@xoay=e{YBsh<=phY|2d|0w8A3PQ z2LQj=e;K4LR4w*~4?gj6+~iReyfBpInG4C92c?wX%M}}UPuM5cHJsdBy`b%UV&dP; zN;Rt`mGDhDThvVfAZCmdNjm@?4B1Hw{`~VnymL=H=IwYWLe>7>LK^Qk#FL7y*1)>o z3m^MN!2y{SQd`So-$2=55cm1%(Mfu6o_uhUjhFbOvxT9=(ConRErfi{KsB@1$f$yyF7fC=iPYeH1hZfRXX66?-x#VC}k0A3%H0{)x!uo+gIhNK@`R7%;1)#|n@qfz71rrsG zY2=HvuN*h9*u5cS!tHhJsi z4*9FcKdfS1vf!PJLN6S#&ncHh!(Y{OOUi!KUUP9G(i? z><>HmMhlaMx*7s0%;ti;Td4{vXa0IQBTyF;?1ydqK6xSe!2BNEfaN~JV>Bug|2Y2T z0qWYnV-%;=)XdqFYZPn$;x2}~;4FLz-OeOcn_~P#wx;A;xOZLrphtcKYb*C|AHPFxL_#L=ujf5vR9v>^F5{8UfYf9kx>+{-^ zv)o0$9bJ?8BO>lSzvz>-t?1CtBJ{5W`O?=&KqOwj>%RoIKK+uIc}d|c9?U3Y+!Wn@ zWI~iiuHi>m9+=OFai45#+S_}*4UojGpqN#g_qPRlf}LhjHmM_AQh7_X%RzC%!PCPF#Aw*AF5tBKs+EQ+bl7y;$C`*YpY8*-HC%^1O~LMzRgO@L zL?Bd!(Y|=RURCj2kb;h;CYemb&nIYdnJrBvZm8tnecjuek&!_c!$2Hi{&7)@x%%9{ zuu}nKPPcdOtd8;vJILFzCbB{`VKYBaH>iBbHpr_cVx${nXJmT)%;1>hojc=$x@J}x zR8lTq)Ez`r*&ckbmF5eN=?YxBfp?ue8ZoXsY0SF+dOlyN{wZ7cBam2Ls~ciDsIZmX z4Zu?aIAt-nT5md7KDKGhv%>(4o-9H)zt{yD06jn6$t>KOhaEWE5dF1(@7}za==B7R zd*e)rw1PkXjj|8h)$?jIsb+kySML3Z123TQuyK#HFqo#gRvCHlORAq-#zBn$g7?h( zn#7>f+eXJN5I4Q{+q>^g7rTltTKH2t;3nPe5@I0|OJ28~E)v{e7I0&O)Tf4elcEMo zKD+5jlNt`L{QNzlYjgbtRdn^bpYvYDU5v@`ko3^tr|9r$tFJ5bH1g%Kz=5s+E+tdxsFAaYsx=T`&ppYz+l&J2KttGEauj0uy8YU@?_|L7d0ujoIKEXEj7n)tb0Y6`vhv zy`;L?`I!7)r!u_WD*RQ-+us#fXlH|hClR)RWMSrU^R(o$)Mk~#$Ofsdt1Bp1186x8 z*pj=jt-n}82&$Z^0t>$8bFG{}{O$;ODPPd?H&?dvmIwYrDP+PAZ%O(Yo=fSN^Oh3< z9{5HVzI4lxHho`xsybZKo5+hac!zXVfS#?~R7Rdwqi+J?%h*cai9f%J)EvKWk$9sH z#><4;KRcV!)1ccv&F^GS7E_j>hL-NDcBUDwV>K@)vScui2B90YFvcq2}BE2M%ph=!k;`VBz5?2IS6 zBK<#{{d&w1vOEA$DOV8HOXh)VvsI3(6scX&tm)vahlzy-xJOCx#vHy#wof~d^8M4S zaeowitxnzd1pcAeZiOn9WS&a9=P$>dlLwkWe#B4+MO7fQNvWv|X41XlB(}ZgT-&|c zZ+*e2CQh9#9bvWe@}%u>kuUNdjemc5H#ax8hEzsTZ)?`P4qotF>V-ajaa)~!dhsYo zcjEond!}d)+{Dk2G|P#69{30!ytXLZb`vv#xF~gixv+%e2ED<^dbc`yf79{AG+>+5 z>|-jhDzP-er3Sx7xyaAqlltB@1Bx#?VKsv(o|D)zw!l5J6VDXM3wNHq-&Ev$h(#O& zLTit-3I`Zi)u|Ea@cZj<|9qdD=&he&re*lsk?%4XKmWZVup^jQepWMyedFo;iJw$l zJ&Rba`PE4M6&P>(`^8UqeomIk1;~En}<$My}b5w%pE;r*}l}( z)F7Krws!C(PREuH5dQa!NH-M8HiRJXWst%P9E@txytq?5co#~Q5Nw&8Km43bew&wy zjk3?p{yOd3xs()d|49G~E6Z$y1FM+#zNMohZVAcY;NWvEF4wy*-*`{oLn+j>GF!VHuk|MDA0;LvU|j?_7sO+BuDwmnM5S zQ*@zjg;u$ao{T~M^b(cMs1=3Gk$34Hn)+^Rq#txR+;1gNOCF1t&zq)vUyhDgrkHY9*O;Ls zn*6GJ)!KueWHBYa5mt{X$`Fo;a;kF)2*|0e)wyc8&CodUdsN~{k5)|R5WH@vUh?mI zr6F<4{{lig?GYL!W9*+Rpppc&{Tx(*@r}harw5SCznWhDaHembiG~H={HVoQM)wNs z`=CF$NGN zizk}xE!FvJm6dDB$;rvMzn&QPQ@h7f)S{jjcdh5k6{%Sz*g>XsL0=;x&VRuS|2jLJ zLwXhLBh%ckvi5?Pur?acub!pZN7s(?G^(nZ$L>G6E1zVo(2%^GlDIyYzwcp-(HPUY zet}6l-3#cUFr%3s2Eb`pJiexGuVulflX=2alIs&p9U3)U%5>QEBmQ6o-C{1^cfPq; z4n$RLYz(+fQv{GVLR~+<`Ewwn=)wXQ|OeE$!Z zj=zi88foV6sICK|y8X5w=h78VndZ7{8)6UL>H?@(kbC%=mw~;uEUc_^B79-m%8J?d z>nR#b9;ki){TBC)fxpFk0aapXm?c!n|2wAQ-)&mYb4*8W6CiQ%PwLQif3H_u>5sZw zSv5wu9#-j3)vY%z`XMEGj4enIKn?;o6;zjr%~Wr?j&2Lau$}=ICx&+3ZQXFB5AObM z&t}pJ-@7@Gy!x~C&%X*Si7czI&Pe*Q_fBLx@8mRv?itH~My0UE^wDBFBR)Q{jEo%H z)179*4#keMJ+Xa}!ybf|O0Fd_96x&ub5?1m7os+{ARu>TgY}Z$|6*UBBR63WaW^0B z60ml^Gd)!xrta zxj0x3?n}8xPfa2z1S!yCQsA$Pdf%TO{Zf(Nl*Zahlk>=D4QzB;?(MhD3=j9^G7`=g zKiTC=Sa!S4H5GPW-`JXapPWBV#R4B`M9liu7rj$zmQhJK{=u|RT2`*}QN;Vs==P|O z_I}#t{_31NSKOC(a6Qw4I27LnCLPxDPIp6bOZNQs4LxKd`dOpnLPU&xj--d*_DUpe z5NbqB%KLC&gG2xEGIcgd0J%H0S)C@g8+^A-J@w1|4Q$WVF*K>XGODTTh`5h?G5G%W z;s9}t?A9WoSz`y#R((@KY32)nm)ExrT|RCOEoozgCh@3Pr1UopjMF0AZ*aVq&Kkmk zJr3PakT=-qhe+s99KS@TFS>C0IBm3H!oD=(Ctu~Si;uwKEqV#sU`t$z_`;NoZtk1I zL(`y5?hd~{V{20D>|omI5ddCpX5gju}C_eu5J{gCHx=(E;v=F zByoSsntz=lbya=Qemb$jSd7YNxYa#)4V3&E2UMl*^D{R$*TSM7QYgN}jjE?wVcffX z)mz}0V`>+t9ijJ(s6^k$q)Pkr%+934JJi;dm&0 zS$Zga5eua|6ugqZD*ecF87Hj4_$Xt)K}IT;r_`WQq0dyx?~`st?n9Ks|Aro2;|C>> z#!>~lfV^h+Dtcz9AQTfKzGNXdNMG&4Ys!4Y_!PdYBn+eqD)PF{X9Q2#237KHvO{RE z!0KZ+10xNPYZV|b5AQy%ZCoY3xkPp^6+xPgmrlML}5IlyuzF?AyF8tbx!p6{{a43 zivAb%0N{af!gx7(VLH5gqP&8lJOcj(K*fwg{x5)&i=~~l@BaqyaPsizz(hp(_(b`5 z{tK{>lt4WIZ2nPFwX?8t_OJrjdV0Ewa&!OZU3Okp7A{UsF3uiYF77tmj{i0B;C}1N z>0!>z#|7i2b8)Bp|3RoKYN~Sca`A8*CWu@756Az~`+uy$x~=NY1AyWm$5$@ap5Er} zRse5rZ!SA$2M-H#SF3;2viHR)AB>3qYxK_D!U~|_<7;E(Os8z|zd(V4>;D-x neXXtfKd%0p%;i7UoOb`L|Ksa{(3gLOg8*fDb-5~8v(WzqO}MBN diff --git a/images/document-new-7.png b/images/document-new-7.png deleted file mode 100644 index 55cccac70d8602d4086dc5033c60a1f06cc8005b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2362 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 diff --git a/images/document-new.png b/images/document-new.png deleted file mode 100644 index bd92c433fbcf5c367bb52772cb9eada3bb3fbe23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5060 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 diff --git a/images/document-open-3.png b/images/document-open-3.png deleted file mode 100644 index 42a014f560adc614e2b4ac3cbd8e9c33fc8750f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8492 zcmaiZbyQSc+y2Z@Gvv@A3NthkLnAp19RebqLnGZt4@e9lpdclsfRvwQuXliNrLL@Shj-Vxd~@g>K-^V~yzWrtKcO_>B=gTrUw1kCJH-4a5Q_qt005Jj zs)C&E^WWQM&*Ito%x4ffIZ~@5!G1SCdX|S;yvcvl;$EhZQ@evP?~7&83N_ z7vF{??e;DH`nxr4>KPp0%9LjAJ=iiiYX}Wwv@F(kI-48QY5wIXoM}HYGw@Y8arP&% z9;I+SncH0QbF#t3Ke^8tE$QBySNf}O7dEBTz;Nq=Mr0Q!uJpK8N}*Q2l0CniUO$c9 z(B**2Jp_lA86Dm#3doN+z@H}qR>8M7F&uea(2&-hy6NqvBL#Wr9owQB+5(Rh-?+Rf zUGsma6HBcXz`Nm3qBYpGrm7{d*sG6uxefI@^TE}azy87-a#dz_)c0~x8k7zXT8b$m z=Z;jGJ^lSn-wZs;{62NyJDPzew8qkLk03)mB^-ILh=M6#~$Hx!; zw)IT?ajE_LKp2C>844=qt+ilzAQ`={-*sz!_CxlT=;~VbhBD-QEmV__pMRq8hyj(y zRw%VI;aH}FrKYgbgO*=}u+|i&Jj_W^A4`7BWotH=@`A(@kDQLrljJ)%TN*4JkqG#B?#unA>HQO>z=ttkv_|y)83CVL0w#L?N1Gb~0PqPhC zpBCi=5I-??Ag`UGQSwkGg3C;R%=u7}05QIyBh%5n;{Y?lQC7LfT7#51Yn6BPj&V=~ zdyE~n=znt4D^$+ijC6mBx9;?9$p^xroMf$URCQhfHegT~j!=GG_690L! z-%;{n?;87uKtj=Gl$ZjA{Q~-8Ap++@kkVuV%>9qm(W|16{mrigWLIaSEYVJFyNM!I zCpZY4yN9Gr1gv|@Ga8jHwj~oRoKuA1UvTH#6U=gcEP|3L9F$oN_}1_W7rmFSUcO2; z>#^nVSdCu#MKE^HMuyn=1Y~NqYaN*9{(PVhr--cUkQI~w9ieyC%vBtXY2p6N%i8g< zvNcMnHK7x|*FUBcIK|xFkDMmU%c!0r^6)QD++psi#_`FL8IMW=$&(!MBoHLIdui@? z{pK4zw$14XVFzH`S1v^S`$nz%HtRA)9?kht^IV)jDq`iUW4SrYTTTTz8rjz@f&CEFh}5OqI|5!GaJvVMr0f+{g=xaCa& z_&Q`;#fJ{ENCv$Qu-tTX+eRP+s|I zCKJ1`KW}HQAeeaG!%Yb0}tg(TSv7BuWlzSxkr{q>w=4Znqh< z816I{RV1bb>Xycmrpc^!zm^s>8+A1*75aqfpO{p zrL5sV#=>svHAKG_DK%tKfyry|oOGBYgL#E5YWPHP z2@R?4C%L!Fh47qwt1}Ix>`LH5dd2<>@8ye+!-wtOQo@JDaxZfL6if}+D|?BAqq+Js zenPNE@7Rz1$@{^k%r!2E0mgjN&qy^Wd}o5*$6Dqk?&L%x1{OYMpKjda^O2jf^WE+(1lgs6Zbn(&a3mSas7qr&AO`71HjlL1jVX8-#eY6@>h;ZVn=6w zVaF&6;pT@uMnn(!O}DS<&Np8tB50C*t8e%{_?;!uj68fmhbW!j&# zcRcMLRfd1hhRUIu*_ki`73Owo2`{0y=1vp0BQek#*Opue^J9WER;g7aI2jry?MnI6 zGf4{&<~)Y~rA8J4Dtw%L=``Nx;jSxXf1|oZ)q7_DsR}pG=!FlJ=Y705U3g9c-Xl>z zF9!0zQ?Iw5lp|9=9bP+SlS7{PH41xB@G{`sHE||+?~?}Z_s-)H=$6+@5~xdc$0`q< z@0OeP!<&(>gTm?$$ns;=7)Pv$d3b=V1GMUWdLDQjB@4500tujLA_TeYuz7ruLCSs| zA5PTeBRzgyv=D1`Y;63Ul_X76k%TuYLQ|ew!;YXpylNKN_xa)Ci8DRY=4vCwkdS+o zlH~_oJazBqe|*b3)p5vmw6aI2N`p9{DZDsw&1zlU?re$-lOD4YedRo#4VLkDtXY!i zzjKq~>($to9X+y^gxy%Prdw{VvrulUh9q$$Vd-bG;m(l7=M+`aNx?3-nG(&dS_C7p zP|qn-Npc&r$Kq{6XHP3O*Hpk|CHIYHPQP|1UrCy%xe=ZM4kEN`6Wlq_LcT_Oeder7 z#W-GS_U{AOM8bPY2p65#J#cx1feO`_$v2r+g8l3f+)j{(#}LYRIb)bJNY)pq62{k{ z*fhp%@QjKK-2^t!Lu)P+e8D{8y zHam(J3DynY%E2+8EjZc>BSf8@+7~i$A95v(wE)itW$KDq&BrPDzb zciVwY?teEkLBZ_r@bmyw${Mb8U7_RiS_JPKtl)U3Q%Q$&nuYnn>KYnQ!QLLg_bQq*OE~DZ<)rK$6uP>iH2wf9BTW=f7r)E zSu8Cf9a~LxV3Qu*$kDG~9vQ84s|GXm`G*Cq4x1|@w<5x_R+hPGZnF$;lchi2t^Vfi^8%U`Ioz^gFVj&=N~!>PtY88OgfL5HJmBO7S=_dPZ$I4gsN z>^&;0W!hw$Qz(KYyA}c8F;FyWj}7;F2SN5ZWpOCp@=V~TB*5Als3H(K>a~Ld;J^k6 zY=)Of?^NVFs>=kW@08$Hq;+7idVHj#mdl;#p?8DACsyib&%(z?6W$Ml2~Q%qib-Oo zSDB*hdIPjzJcbftG2^Cp-MF+=3TTTAT0-J4}90G%qPQO)ko2-6)@p<(x@;}&j?X*ve<7PB3`9jg!;>lFUgp=9xn z$-&Sva%QAdruuFn?UbNVkX?-*_dgm>i+xC5$H5TFM_8sS5pT1PC9$hqm4v%jEqnE+pPy!_)3-S|v}}qe_~BVgCzVI$ zYhncq%BcMjKN&wR*a&KCdl?LI%-%4qg< z!tvc|+pbD9%>|?!4`bd3s>(V10%y-bkJ;u`cY1JCem6y;>YG)-RDbmOHPljz}*Y?5}71VyzEDEt{2Swa%6(mztjT)UlJL_cUd9R87{)76snjA|=VCAUC9gKLF3)EmqoK6Anx0ossB5Dqe( z(k%|ea0se*Go~oMdS}^hxEV>8&TY}4P>|GY2Gen|h-@V9z&V{G0*JfsF}u!u_BdG| zWjU?gW1hW!53rVYnMj7nP+% zs9gG7=tFqNce?Zv^0SWCQ}$^8@%iIdyZBDQ1?FX!*7Kc0ELCwLFPM=~+{n^mZYWR$ zSA553kw98Fc#$q3CU>M`TzgSpOi3n*A+A4=a>MZHJ*zQt&1`_6O3@i~wU~0$U3>;0 zj-VV28P0?f_mM@*E0a87tY+C7!XDvO)z?RUuvcr-p@&AqAG>0YD^Ph$YMdO0xlN>v z(7Jt)r+LrWTD?7Y$CBf{;sr_D#6@>;(chABwXP@IxhKJqP$&u$sbW?oAQ>zECpw1S z&~)U9RS}b;cXUSSoWeKSQ;Vahnk-3epsympIw?o-^Y!eb^z*9mErZT&VQ{Dan%in; z<|XurRhHnG7}lmwPt@)bh`@P)P+KEKz0@wWLsQ@ne;`i2jU@t`Udt--=K(hIKQm$# zg2~Cj09}@`kH>O$yd3m>t`OK%SWf`aBqtO;mYTB`hJA0)%T3*0Pz_ImqaMqCH{9eV zelu*ws{u4oGXJ2~!-l#f(xU`gL-O7`FbynLL35-h9P4!Hq9p4T+1VoC09a?&XCOIU!L+5JT@Ekmo-cWD6S#k`o#`;8d+CUcJ)Myr0DuTo& z{lWbyuW;OF41zG_OYt;;jYP{ zl5~vG@od>7?n5MtAH#!VybkIzsQ@k6EZbOg2(NI0tgoChU?fHlx&v%trU z<7|Y!#1H5A89uMvb%6&Bv=K}#X%%hv%XP96ir=))sPIHTam`x{c?N*Au??ZfEpKBw^uWqU1mY*M+0- z7HX!op#lx1NH$7-IjhmCj~_;(_1L94Ukp(Ix&xlD>GY_lPy!K|fY^#6Tz~=vS`+cG z;H@duH3+)}2 zKJxEkZO$xxzip~??QJ7ut*zZ=8A)L55M=uk$fAP>!vHZMSC14F7+3Z4AGK=0p{jN? z{$Cxgx^rlw?H`1$T)s^YWoX1j98}Hc4y774{KDZmY0#Wry#jOAwGm-ECUNBz6wqKf zn4%fYlu-|@8Rf@1=J$+W_)te~R9mc6L&yt0OhL|wG5GcQyj-zM_7~;-uGdHAf6xV& zZ>k~AK1pn#X=JT@zoJgZxobS~(}g`b`LxHdeOeVK^PH@bA>^O{uD_4mG1rf4TZJjA`R@ zI2DAd&?qufO#Vx$T4|G~YPv0>T}(&Tr(c+F8@AQqXUQFzw5~7VRi{{v9#vV**04cU zrr}dOK;|R5sFqe~?Fq?XpOxPFrVuB|AY15q#iTk2Kp1m3cYIs`6OzP#7r+Sv**%Wy zI)6Hg1*L);zR0dvOY4q>*+s|~HqX9mo7>ndYpCxo+jWiH^$u`sW?Fxo@bj+(d?r3} zRu^wNmfboNK*uC1I`6ZLH$-Nq7UT=)f4ySMq8*RWo!P{{=(W=_YyG9SYdTLnw{i4S zpMSyS+t5Co1&)Mr0`>^um(Dy}Q2=5%8%6@7bhXi4ccAPks|Zdn!A*~@jj5BCQY{fM zfL?wlrgq#p#R<;;VPN3q676O&Ph9C6Q2K-9sD2!+My?6}JMNGs(=ih6{vdwuc>bni z(qr4#5=(ym7(f81g_5IqcbZl3KIh^Np+G}k85tP}a%Q$iJNb6w@03EJ>u)pWl7jBY3xpkP}CS^BBx- zk^W%~Mgl~ESF~7jpuAZzHVEzJ0+@bCuP2vsX|o#pm5y6x%Lqii)jCVm`##-Yi1^p^ zy|=9fe5O+eq-9YTN1JbH`6|hp!d8(zKIDji8DE0(qRi#%A7Cb6E&jqYco6+i(4wEL z_~@Qr8Hn!5hbl7ky^={WAoE-3N4e%(12am5TSWypGehi+&MqOxoI^i#n<`Kw{@X5OCL*nkT7o7_$nni~PZ@#9ryWd=$ zi;c)$ZuK6HNQ><`i3o3sQ1mf5KcHacf?uq+0wb=tE5che<>JZ!ImHvlg)6pU{|NaB zU$rIyd_R0&Ch9u-gl9lPrHF68gSSN?jNt_sWSkRC&+e3^wO#z89m$sT+n=$Q`SIv< z{&w~>DA%|=buTzq^W#T_ICDb}W?Z&`>?b`rCA$w7t||e~jh%dK5qs|YWWG^B=xAJR z3MfNIIZRunP7mjm@ZE;Nd~&pWg@nC!Ps=!G1MoYR=WcsT(B2&G_qoZOOj_Aub!6m+hGhn>t^cJY39|}$|_dnDioQ} zv0_Ikyu)>Gl(t~V%<_MUDN6T=j_5FuIpJ;2*{aY*%DwOBdr|kB*-d1GGRE9@&KeJMiqUtRQ{!TjKJTIAZ@b)S-VIu2Ve-F~CzC!RAxKNpQsvqN6s-BH>kQ7u`(VL~Zh$i; zzzFC$@KyReD3A2Mgz%`TI+pn@khhkAkvb{m7({Q4=>V&cs-_WZ>&R;VhZmAkOvM$t<&a&-Yj{I$OJCt1nvf3{oMFLGIF@wxw2BI z{2=&9naTfbQTg|_uU-ihK8S4vE=a)(+5rnLfcqNQJ;FobURMBZVWYUp>kBa@^c*O@ z?b(s)vFxTr@M2{5?Zv|v$Cpg#%&yXsk}XO@G;?MwET2@v<=qnk3e1TV|DF{8^Ud;x zpZDBa-U0i!w_U>b+HRb7ZZeg38rOntanaBl8n}WiQ)nA~?z~7>-_VbtUqd7K$&Bim zY!t{(CL6B`NRDXmX1!ikN*zby7gq|%n0Qu(a;r*P$lJ)=VyD1 z&mNb9YfAI5m3SXLuPIoP06SRp<$l@lvPIU#=scF(>y+%8WE`2`oxx=utwEoe|zWN`9OA|!%@G}k>rlpIhY z0qDrtKYz?tZL+3?yO&AlD&xPrpBs|QCNAY2TND$7#y9yw^EuY&&v)FY*wTAkpzn#- z{baJo(z0ixMQtaYr+;vmp6f~<^mqSwaG|-H{sxx|k*-=yb*`B~8}`eG+&5R|ct7{^ zWEyZ2r-(w#!MLBm?z4eA5Jrb1U_$aHE>( zU7Q@v-%*99f*-Z`>?`F@-B?l1-nO2sq_ufZgkA+Tc%2$mwF`SKEZ%V^| z^}TdTdv_75l_MVIz5yQTntb@;6pS9!t~vh@*3;H#rneMWwXhd@k`3nk+a2C{_s5;h zThY+l+SAt3+m_enZU6`(5RZ5T1bGqSx&nd{!lDww2wsGk1Om}HIE4H!;h#*2e_3|~ zfx8SrUO|Meppb;1sDyyXzXW_q)3ESS&^EddWbwt_-8FcEyJjJ{ySwY+F2M;FWRVacNO0HSf#B{E+#SCCy>ESW z>;7@;Zq=Nr+S9$=bLLF<)6dMtsH@6hppu{h000aHd1)}Lhy2%oNU&?)N7GSQhh(NC zCk^Xip9iV7U|5IZBCqQX04PlV*Wk)!V(6-2&Rm zc3Qs%wjsNOIU?P2Z7@UCrL{lmt1L41zhBp+0!jK@bi7$_q%VKKo?i}H!|sMxRAk=E zc@h*1<^;=!gMcMSc<}M-k8Q72z{3YpX%+-@>1KFUCa7T3EzOZgC6HS2f+)yoc~S%( z@GTmqg+=LmE>Ig02f~Sw2BL*Xqq4rRM@WAYlfrkgz1NU@--)V71rjfZf882Zt8aAY zUc0(ly+wcrkR0?%qOu~D{?-Wf*=2l+>9QvpEMVygQ|SIzS#|wnWb2O%x1|=bHGPiQ z+GFW(NaOl5Jb|8!ZIepo)}IW+r~1lr@DrzOteG>45!2GCDduO2&ebH}zsva&0C}xa zGsfoMOZW5+pLz*6GF*N_qrm^_w3qTF z0pZg#qSP-m3@?&)x{z>sd3JQv4(-9A`XC$-BajNz%Y${6-Pi=8LQMG02iWGF0$jhX z-m08wfH;FZ-*4YP*!rWwg`@Q9WZ_EExv1X7k$n+J?p|R<{cy%TUC_`G20+?LeV+s1 zRztbW1g7dm$4t2WFyU;3-AI-T4To2T{1Hc@2J1p94kQ#6>N;ogd!src0BzM<%4d`0 zT8pTJLXez!{KPZ*gZeU1H=r4W)GQNA=*LZ19>!D`Yxp?P6MRP1Lm>&tZO?yEWDhip z%}pK#2w|APce12n8_mNTJ+bQ_A}y*NzY~)F4cbx6=vGcx5MdRw^~Z$c`IWe`AFgad z6YVNm^OEfm`hgkom>41Jw38aKi0keP?Y%M>qEJO$gMXaYXbln<&;X4E<LrUUF65+G7#0!c7(#jRYrR| z9~U!%>J^bPl)?Yo2{QuMSYY<1EMADQ;De&%x7s&Pf^$7*+1vu#f9$c5rM5(unpCDJ z8f|J5ZM{NbNseb!07Oa0OV=;D?=%3VT0OQGfX5w&Bt_aj4={iO88E=~Dw_oy$E6q0x=uQvs_Q+J6 zT(%e8XrvL(-8zA*H}FrfL|{`hU{p5CGd|fXJ4F7i3xD;xam{PWfq1WfK~$9V+{xO~ zNB~E=vNv)*$2(X1c=>dC??v5nVg>hp<6ZX`i>Qe!0jftkmBW<|yNU{2sZZs6tINq7 zyssc*L3ZDM(R?`ssH8e7vjYnh2~`F!f*^FaGH`)Tf7s^i-K#bqeKY%s7i~Ag`B?}u zgr(c)@K3v8W3zWxo!gWNXiDvVxRU21drGm!wW+^S_&F#G(!V#=EkECiXlp>c01clKy~xeix$cByhg@ z9=yKSzb};-lvPdhNF9v~={w5PCVC9SWM2t0_t)v&tb2p6+}=NsIl3;wK$=2&u}KYC zVo;~G(4+64_*iSEXtJARip^3myAjTT?fw}^r7n&BIm*c=MzvYE_Hz}n*2=bEUH_l6 zi}bR$tTN+QRknr8_cHfb;(0I6jA6?kPP!-Mk?!->Uru)HiOc)%es#-_tiua@$I7n= ze7xh&BgA~V#u9s&7O2P|d7cjJk{q^k`Ef~shppf9(7cyKH+)AZNg|u4Ts=u2xl)pW zg)^^GnB|V?-tbJJsP#^a?DFm7oo>G10|pKLX8A}3@!P@K>io-cSncs~@YC5IM-l{3 zrFsjY?hby!dTZ0i%+Vi#NAEsEeq}k2>!xn#H%3~qO>ML6n)#^vAn8jr?{dO(=DQs{ zp?~%Y$oP2}X`g!#9AVT#9pDo6Nr@A-yVf&xcIH5pK@W^s<}7 zA)T+IJ}YgUF+nK+w{U0&B*6(=rRo@*4nj_v)q3Ir*-Yw~@jh3McckC_t-C8!7Y*Fg4|u2$Gvzwn zlJ&&ISeqQXcake4`I|44ABSkt1=@n!$P9@Ju?|5y3tacVAIa?UQrhsS)a}mee#4=K z+jYy9Ee_fDUC2miDAiX(3~d`&JvI+Hb9&MD>vQb9+zI}+#oz3`Yif1;vZCvU%ow#! zqh7543~UpKD55(eWADn*eWC*TZ1!#kJPeB!3ak`v@%c79aNk~O@gQj6GVC(N0z;EG zUF5B;qc&|00B4ewvB9K17g`_s*d-u7H)tEU{oTg8Mw^{aXJtl})KF=8g*D#HhOvyd z(u0H{l zRa@7|I;xgS6=uA>?Gprx6t7+n5VCap#a=GkFuUSt^lt?@B7eO&|&OBHQkyCUw9|#06(`7cQT@4J0 zjsKeyayYzP2uZq}kfQ9XRg!1snirmM z%F?xXQaTDiI(y?fKY|4AoMU5>3nKsn)~yA}xNe8yhiC`4xwkKf#9qmghT;RoK7M3C zHCby(9q*Chz%n*#YZ|n2PM1P+{`QZ*Lhq_|$G#z757qe>I@M1>b-yers9Y^{)anc; z__a8=uOe=eDq=_FigH6tl4{OsxewfW~m%bCQ1{Z1wU)Qwo|yv5@X$A);b ztozP6g3YCpNgU;#RlGuzr8f92s3eUEf9lMe82vF`R_d7uC9)5$Zz_4p=C=)BtXLE} zQsCSi=hXVGZ^=U?S@lQwZZyLD4JEa}*i#!^{nq2VwXt@0LJji9rf=;2ckU(E{0@gx z33BnW!)MriJ&@OLY9)A*^0!sT z#o&r>X>|~+LhQ}bCjAHiYd5VT^U?`FFE1}$r5I3>Y`)J`)S*nea<+8Q!E|`I@Y*lX zuYVRCxi&B#4@%XvTbyn`D1naha{m;=h8+c{cLE62ge$9RgSmXlZrmf{1ttB zM)PR>fJrGFug$_uhUviw-^*oTZ?8lfzpY;J+4l3EZaLYef`z@>V}kzF1|W;oGU{`}P$FV>lE{&OuT-Y>lb ztNI8)Xg6c5WG~lNcgV}wL}PSOG`K>!^0T$IH5#;z@FP0XJK1gS#FLHI7!rDQrbIr9 z&DE!%RL;DYGLIqB=Ut6p=~?^p(syS?R^zTwcUBXL`Bd#F{O}P)H2P$f?NOz_LTR?L z>(_Vf)!quw2S3HY~e)2$MsQL+CeV#u4VKlHn5JB{)qG+ckr48hzHfs?itl7U0k=foCiBL85I=f?Z{`;$;Hwd8? zr5w;kXY|-T$vkcvR(^qtp z^59_H`)J4It$g#Lth~Hgz=>x}5to*y1&K~s5ffs789YgXoI$Hc3>DCZ?;jt@4LaQ? zGOkhtG$^e!%Z}umZ)>p%hg05G_X@XOI-+7-2tC>3CK7zL6q34N?{@ViXYCfb9BSMZ zsn{+IJiX&^E*SbkzsB<>;Op~RLmfdbCiQBFkYNd({90Op_R}#(w!X)~J~DfeSg(rU z#?Mfrb%AHEg`Q0*Y=12KZ@B3OL=Y|D!D<9fAO~I((!>mvuFx!6&6iSYgfmU{4kj?a z9nbAFY8o;Tq>H6#2ctl#V$;^rXkuv+lov!-UP;Lc9sn6Gf=xjwldtE&`)>Q_V4a3M zDK#j}L@NhDzRP;B$TJt++GE*;tTX@!w#G!iKY54(b? zRGBy(tcX1*>CEFrW%!~y-plr5ES?pu4*XwWe*=xucT^MLCdK{nd)0t8{n7R`30 zz%nx%TPP^}Q}o$W&9qb`!Lo>mM=N@OoYrn5&fbC2@(??yFca7$QhK) z8c17k_HrE;a2C-;2YhF>BI5IOT*GTmNf+OnHA4!KQ;Gk~3=9Q{0fBwtdKQzSo=S)c zG9bH_3UC#Vm{>vl6Cq?^o(8@h?&QrnC@4Qg8=mi>z$tACi&Q3dc6LgpR6y~Nqh_`-PP)iCd^4e=_aOizPCq=G#m4d8UK$>L z%fz8bZU*+ca>|DFv#YH*M&H+dl*YzJIEi0c+Y@c4I}0C%%sR{Jl*)o*;KWhW!l1?* zn|n3j#;@11%K@)3Z()=LPYgh&Q3Ce~L&4s^ADCnm_yzTXl5XjN16TXOzqJbU1d(6A>q(5Tdo0eCEP}*2T_i`cME8{Buh=ltxO)vn3 z(u+9TELZX^KQ-Q6|6 ze-`JWNK%hfF#v|d(r_5I_Gj~26D7(v=MRmH@C>c{bC-qMqz2cRK%Z(ndJ`n6?!q?OUMrBCm{oC)HqYfL7Ca#!F&fAQviZi&qc652=xw zRHP>$1fOkm^dH~KE@SAzW8hp%Y;>i8_2kYzj$BUje2G2q5Jm{8srNS9sHv)Q_jSyZ zXC8s#AY-lc^n^u~Yq5wI;?-pT%Hb&O^^Tv7j6o+s*;^GMmR|nxRJM3rRX6uxXf@8c zXm5NYmL%~UBw4rE@tZK{9yz!3S`@6aq7f*7CGdtOT3H0gXn`(@Eq7xBLCu!t8OWC8 ziF3el?bq;Pdu6wD*wv_YDF;faoUo1ZfON$)hFMJ)`HL^2d9788(^%ldkb+!_wR&hXNJ5TnE zUhwB0b1fUW5xu$gkF?O()eZKlB)8^g0)$ZO$>1chrztT@|K<#a6pyH!fWzV7 zq2V|&IE1KC=glv3auo|0CD0H{T^>yH`Ykovl_4@~IPQ`Qwn1lV#0*Dsk;cYn#E)Tx zm{i;q3V1TL1W=tU{cm8^Flh>zvYBY?3bkO#n`|9z zuesC@*adgT>96l!WOgZ5@%0(|pP%ufKL(r(1&`EQcVQ{IS|4GrwcYD$&gR~Z;LAVZ z3#1C~+!CjWf2}xJ;-m^U5u7PB|Aa?f((nG>0Y8=s=wg@zbLF`gepzH0NKGMG8D{My z0KbAohNPpTQ=)k(UZ~Pi`yDrux^I&SBOo`Y09L#7hw6jd;nIGpOF|)u%HJ3vNeLX1 zOc>AiS(>SlM5A@(v;Qx;fgV-AO_JYo13;4o@lTDG8kZgjX=hK@t%k>?d3F*K z-x3rOkLsF#{#N45L&$TuDkYVH9A&_vzrHm=jJ?RBkSPQw#>Uu8iRwD)(-kiyzCGkR zE{}~hlxtNA&D%1J+1gRNXE$j~eA%mIThbybY1XUa7Hg6(o|=C3R+_#fu<`dkpPt+H z7(8kZco3Q}_!vU@IF^oeDUkSbx3U_9usrqg$?lgd)F4Ksz3}!_H^WLKBbV;&FF&g} zY3YW|95asORZzGI9~m|RwWQrz!Ed4bBj{RBrfP>Y2%#FZWw}u)K!d!(gjkNN|Mq>B z#Qmhv>lNXnsl(um)2AG;g2{3QQYQ$vQ84?f4LyqjV$$%_%x4Ov=?9fc-Nfxb`G(z| zs|$qOMaxIiXLl9ocNdL|Nmsv=-a@OpFvZ86t{StGG>DJ4x1d*=ET8|q&+Fb2^c0=k zp5FaD_{uaPX8~`^NcUa4iG1Dqfn^u98a4;mK^x|a{0XwD zvb1HGjm;r6xB{^N%sXcRP zmXi6iDaz|ZFOjiv_CI!wKTlA{WmCti#zXbKw)`qfeW3fu6xe(3YT3j7ZC?Ua0tzmj zKf^{xzV0_D_ zmClKUlGbLmHaZ3{lkhdMkZ%#IsgAC zY449>MoD=Ii=>TM8WveCl<8HOE%KwGp$R5R5k)#~U~gQkKdi2IR?|(B76LH!Uff}& zo>H8WE1&bX)h^WWp%F`m(ZmGu7=0ZQcT0{4+jOBi4GTLzjSEyoEwEM2{5mct*~}4! z!}6R0154b;y7cjo!9Zg8FVfeL2DTBSY`1jnDe}h*V20!|Y~OTsKHL};V~I_n zgn|sq!v~UtpC$cwL-Nch#mQ4X%DQ@E4~l6Z=!lzBp1|G& zKV0l6_lUwoTU<%?D$Os`G+=Dg172!)wVlP(`tz^RMM;)O1rD!_c`ABt^I)G};DIZ} zaEWB!OK|wGR&5&2kgE$h;j&jU7$<@{hzO@&a|g9}Vy+DoU1UyW>8jkqbHrOnRy@Uo zS$a|H7{>&L@i2<{a=*aPRj0ovUJ};WoPhnHIiL%fAmC?nbGY`U`WFfxk{8-&L}o%U zB3=><)FgYKhzM@DP!CIM6#~INkC8718Le@+N!0yF}nq%1|7OL!C}jJa1; zA>69i#`LMHU`VpUkn|_%nq{Tc1BLt$BZGInT+*n+u-u)$AL7+-=$-cG1`J`Sebla* zx1F4T6Ta`eyXi(;ismK5sL--cQ?zs#>bZL%o3mXG4&`uTu}%2Y8;wR~Xi(SvX$+N2 zQl1SBHrNoTu#p;+N19+bXKCHsK0hXU_(cV6ZRR4|KS7Fz-f=`QgE=(Ygz4Ze>W8z# z1~Odr5fwY@jc525f}bC1`eBjw#xL*JulHs`-%uRhet=`125!$i37U*{vP{^0G&A$fcj<)tk&voo%BVPwZyp4VIttX1O? zSAiF8vlHOYAZMkz#|PPXdZruI#HFR^RVC7INAD56MHN%u_@yeg^lok8WO5p-&h$ui zYs{nmwl{-|sN-~RbgXYEc}MUW55`6TxA8Lsr5|5{zFuk9%$g4+!5Ca)Kb9Rv3tsLr z8s$*?`^D_zQMw^!#hnMar83t}AxL{fZMWChl&YnFw zIR!aoMt^lhil;#9(Qox^tcD@0PEo3IsjrGq#o{StUTb$i5@lnv9wQ_l)tCXt5=fUN z%boH%HrqssKl1K*wnDwI##XaDI*kWcr;lsn0hdwG{gw?D`w0lL3koI&@P9AN7plYP zQv`MAne2ibwT(+IuHet0b_oO@-k-)0;<7;(!T1iX5>?{AWgU&3gC>9EfD*-PB~vy~ zOdPLwe%QGcyiC{=u_>Oib7i#2OjOBSpaa?RWNK-i;X#l_G7iSVf1G^;p`h<29T*7X zi<*zBMc!AY`Cf9GZ+h@i6sGmMdp^soV1A2pS|>r^3KPTs{?C_QOY3$3fC;0JYF}$s ze}c1wT!lYwz|tO!w#G3`(|XS=1Bs39NNY^?pAVy$8f^m)5eyh36FoAX5L|CWsMQm z*%uC#srihS1-BL%DqBB%tW5gb?SU4WENL=isxth{5IW@|XmWEYL$H_0lsTeV`JQa3 z@b3v12_`zes=E3CPo>EU!>(((7}aItUBJiRv)7r1)=LNIM=DmA13C(3bzNiPC1<1v z)b{rFxx${Y3F8=Swo`UZf&n{RH+~;F^t5>d9^>Dc7jyMfCS4e0E@s0LH|-SCS}X^> z`>f}24L;l{{OM=K+V*y3C>RN^Z;I=^0g(BZ1q-_Gf;h~%-~axxHdyb&AX{_w&~bd9 ziQu>S6FU*ffKNOX8uh4S=PsrY@#KF#^H?r*mhAEMpG(^r%AzX|Ij!KnfRB$o1ieqm zU@Oq-7-l^wJDcF?_N3T=W9Y;14|7vLyyBS=A(EtWFbp*QY;PEYDrH8;DN{%fp&5N{ zV7km!~d3QDG2iZf_iU93<%!lLab34J^I9 z68(x}%teTaCx*vqXxn&rmy{Q<%_-OhJW}!#={E;U1CrC+M{lyq?b_<|+E-G}uo}G2 zo*%BBuLlShS62G#*hp@WqAoPGc^UL5sUoi4I=7ZE_kQ@t z*}4$>LI8ckBO`0NB1-^52<27q%U6OSFR+qcB*NldI4_JphC!OJkVfbE@1AU$q*(#Ukxj1JQQ)j2W`z1mbA@SpL{?NGAk z;{l`HQo{G<+@Iefi?RDQqnW@u8Mmb|=vx}efUplh*p|x?sr~g+;MW9(T{pzhx(ZDP z7{D-Jx8@_`B1te)Gorv__>P|%i7o@@#uF-WFP*QOHF!WqSk&vLep7P@|J#BfbSA3ReG7}7G~$e2$bhWFVD-L;{x+z zXemO?iUWcVNaqWNC1u7~8aVTZl(IZQHP#JH<4?Qy`ZWsDZGUFqvOa45tL!8X26N~ zgnIu2Csx%jL9*lDOKpK4b2=Et?7KQ3iva~a|G^mc%Rd9qF4y-xMcPVm)4d41RoTtw zwDB+4s513aCF^Hp-#2VT2eAT1Xbs6%JXi7dzQh8zM~EMEIt9N+F=e<7!MxV7&*Yo@ zF$cr&KKX=d)p?P=*_OJYf>fW&j4W}}ZIO^P@@#0JHz+tdjd@G&V{Hvv$#P$3PR)%8 z`%uj;BrSQ86g8)MdF2MbGs@PbF`!_}={&&bKpFCZborv@Q?r_N=uUc;eN)A(9gHQT z`)5La&`x4fLjacuKa>V$tNB4UfJ&5L7N4&qyV2V~Q)u+Gu&{)zarBR(Fe)G3FK?&YeL8K^b zjV$jGqTk6P8O|uosv}F7a>atg44h>)CfSgrx=HyYTJREN4|b-(awwXNiwKhl9qE4C z^>{=}x>m6K7jr>go}-n%Bg-rc41)itsi6&*5B1D%p+;aT37TxJ9_>sIlvl#Jmmq6Q zD+j|*y1Q;=Jvud2(mzmDzll&xIW^U?lgbJDUE(bE#GgVT2uOfp!R)&EGn#pJhvmdY z36%Mp>%C@M8MjmmV>PAI8tpb!Pqb(5AP|TSvFe5U6A`hv0IIAs%kDnz0Q>ZJny<%< z+sK9*w$|2hMm2Jv$irUw>6sKh-iV^Vi`3{+Wb>xJw%Pk?qDf#oiW5?wy;)cSii9so z@A^LbeM0?n$rP_bfT8S2cO$#qFOunLjtMICg_S>?Lk0#q{V4?bN3eYs6jZ2|+jMI! z3GQ<6zmqs#D?f=$qngT_pzIwKyB!xpP8o!}p|VO>dp8cSDVyRB$lOxaH71h^{k?un zuR&FjXc67B=vR1?^ps;VM6P5hJ%U{~;-N;AP{{Z=28?W+{v*sxpLk>;QNe;?I(vFM z1tQP>CE210E8ALXh41AKys=k7@IL@pEKnUIy+W-@xYm^Yg*%OJZPiL0bFtbva~hs( z`oAY8FeQlUIy+@yrNHdho^*=F?JeXEqW%~{4y|Lbxb-vF1KncIh&K)XqD;G+CpMDU z-|~d3F}|8C-F*t5-gtKOBno)y*gB;zWjV)eEI*#vjJONE=xd}~G-a6=7FJ9G&1omT z!_WW4Q$haG+T0lDsE`n{F%-lJ87j}!yO{nelFcLZU11ay;K_(wS*zy-nSG_q9$ z&QvRb5U!tAo9|PLG+F+ZH~AdSFi+%lbsNB-!cgL;%2^@*Q}p7gWL3F>u9lXb<6}0k zoru?r1HR?}!k>ZJu4QL8@d@Hj@qsM`zO*v2E*drOcLqFm8BKQ%N22&N4J$Oql_vx$ zWSxvx5<5>N2?}_C2Zq0`g7yqt=EBvS2T^G zl!>ozcD?l^BoWkl){5Qz;~AR9l0J$L+joA)_i%RW=i2}M_N73`JL4?iP6Vq6wyhl;yKWH?4~QD%0aUR?DIl|E(p+yDNZ`|*>(&GAtX@@PQJR^T6+g!7 z!Hu8oW2Tm_q`~~|`DWO+Xr(r#31h)g7d~ZHv*?9mzt?A94x@JY38hTo1S;CA?0N>; z<=%}^V(~aSQ7O7FZEGHUYL~lX{MgWlvXrxjOOLi;0MSm+{7v;`H*%GhRmr;2te%n{ zUk=8c0Dtm@Qgu!OlBC_{Y#p5h=+B{7R>9wgY&014QB(77W$Mtw-g~9?YzceAyz9|^ zOW<{)X1MM2I|jABi6rprI0I|~gje&L{bc0%(EolX@0+5^iPuPKV~2J zq)nYcza35*=u|vaGCMP)s{v&6wesA2Mtll>K6z6(=1*G%iNjAM1zpp@XprS`t2|!o z376MiUrY)?`TD7%0PhG@YsTs$F-7QH0GT+_pX}`9pc=|i3>hlx^((rL4KXGlgeI6v z{|1pF54T&hw^AjgK!>{iv)buG$wo$P>`sz`e)Y->M^`u~ZPe0Hh~2IavC&eO0JhkF z=@k>ti-ROxF1A<=nqA}~(ZcsDcXB5$Sk4dON3u+PZjUh}-smTh9pTJ_T|c+hK^jP{mFv; zob^W}QqrUQpl)|Y)zjsbmFi+#Sv(B~_`e|W!6(O|Mpo-d!z@^-?s8q-_oKS{GD7T4 z6h_AncHFHgRlYA~)n1rOx43rr1C-|W`p57qC(J;G#X}>?XMDREj8@DQc(m|1C_Gu< zlbFhATtaD&U8Y*Fd;EaLn|MUWd8BoasktA@dd%$In5x2jOa&ZBDi8_*g^FNNeuM1< z?Pw%jJzq_Js`{L5JFZ@(rBS(5J^76R;pULh@Y82r)tqKo6)}rvb?sy8e~J3jPJ@QM zR3>HheYdx&&m^6nNJ0Yt?bbi^<(~mze6?hQk>u zwQ^^UbpoCkyZj6)zuk;DvBj!4+tR_+M-Aah-FdtTr7o5rv}GGUD?W<9haL-yhZ{*R z*Hz}V4puafh)CBFq~l(j6j93rz~ff#2P-}j_tO=`iGr@^?fyC`cngYCt2t}NAxFM!?CjGHd|QN{=|7@m+mZ3; zx(;_}(1OiSRaF!R4SCYFO1I}jcuF;xjyRKhT)!_h~yl@fxJ6wg?yLZoYqzgoOLPM#;DZT(@Uc|EQ%;C|Jars4bY&<+O z)Zd4>-EN6PveG>G;PILo@UgpB=b3O4ejkADfTE=%0TsCD2Aijhz4Ei`z%ZS$zsFU571I*Q>!2L z`kjVUI$mgYc6RgDSJ`T}7UlZc60rj{whV217X6C>$541>svbU67n%2;V^D$~?A(H0 z1M1z%H!1P5+jQ_0elEIR-q=9}&AFT$I<*vCPgjIE44S_wElf_9eUeomS$S~Z7joZY z+f~f=YD=*8JwA50N-Yq5r+CqQvCXHi5+JtGAA<|4oG{5me?RxOb6`+*DLU~{Ts&Vr zCKL|$>47i1-wnZt!2^w(voZX>iGn@M#(Mtu84v?hRx^F*=2yT^_+p z19;25X&K3;)Ymy5mh0;m5-~S1`?&rJrJ1ddpjKJ&;zM4#%hqgM)&n0A*T=1-GJC&- znhzyn%V7WVQ;{Qy;YueC2a$d7;~T$I%dcH@I9QTKa=UNQJ}b9yW871n$B%tqEbkc6 zlfJ(2*#eFMhY3I8qvDOSoHEDA&Foi6-W2;k!{h&!bZ-*j5xEQ-BLsVoY+KXDA*y9k zZ68LDkI{=(Rd1Z3MVbQ|OjcHU4OUju(FI)S%$Z7Q+FDzfzo?iZV4#IrC4C+nth>+z z3WY*tFcv~@(>grBJY<-QOKTH!fnchg9WHWrIMXbGKL&S!!J6SmPC#{0g#_8+ppv31 zg3D;dWDb?!Ib1Qr@2Ww@IRwc{5vmd5*+FW3O*lMhE1b9m+pCcfy*~xse^JxGxxu^m zy-X$8gqdTj^XE_2i6uMvF+*HQNAPubB>f~9$%CY&o94FR#Obul0? zDefYM|AEV+QF>%6hj5pGgKCNdm-rvp(+X2MW0BOe#F^<$L9qP9a%6vW_pd}9aApn?>rJs zG#94%G2nWA;xzFRkYCp39fuy0L1qlV>(K(wBI!^21(BedPymuT&Y9LLB3kwoBch~V zhoU1~%xNx>eW@P0x9$ske3O5)&vf6hCE@UQR$xv{*BYCce!OH|iSk27giLt~I*nud z@Wl_-vCrJw%w=yw5VStnF&&PM&cqjB-?^N9Wn~g$6vhHWnh87{7lg8i9C_}6x2(&1 z|3ms@OZ6Q$G>zy9PK(IWd4MBcPzkOL6@lxg&LGkV8@tjs!>CUaYZxpl4ZlePY23VX zylPN(;zKB9q$ODkOHU*eQTFWZ6K2I?01qZ}CDrQS(~pYv=_!Qr1QoM~C4c zAenu?j#Dv_r^|{n;-AWmCKx$eFsWAL>3Pj zgq*mt$eKRdB_9va-X_TdZZ;PJ66UjT-{yX~ESv?ujVUp9g&K{2Br)3C7hDT4&l#!r zmIB}#^NsU~I+j-DRaH@HA0<#OWO)8?8Gm!8a*xxq`wjs1oq)=fcbgl-ETJKytAIEs98Xe3*tuK zEPWJ1K&cHA3;cS#utG9b%j=C-prZf+5KUhaPFZ>({g}|%g*{B6yeA#v97%494!iHD z;^K(+t^CaRMy1-?L?OK5K^I*_@i8b5-XNHF`#lcsDIZHR;G^|k$5$`fcA-LGTh*&Y z+nz+n8sre~TQor95)n7ncw_HxE0Ppe8qu@Oy4yE^c-%0bwq# zZYW06|5f-;Quu$hU<%w^>@Xp2ZcQ#BVVDjV@Bb>auS(edzZ4vuEo`lP|GyQ+ArG@K z1-}1WQnod>baJ-@*m!uj2y=4&k1bm-OLJ#OM`tH@4re!OPKW;$ap#m%SLWp5;NozuvL%>M2C)${B#v6|`%IGE&^AP@*gNl_LIl;Qs_bX4HpFJUnT6sVRe3bH^6 zeC}jA!hiz9UD3b`1X7y$cOg{B#ohk<(%1d19Z-h<=i=Gq%>jXU1(jsq>i91ocLsc7 zfQGE!1qA3UOwa3v6!6c^&WbBci6gxy#Y0otqy>G}w?wDLXXTQ+FC@$$r09Un%a7DO z3_}R9jgr>f_5VWpn-@IoUE*KFWbPTVOXJag0!1M33fuBzA$eV?PED`P>a7L*czgx3 zv9rRA99@$UFIDTD)E1<`4DSzlYE|#o#%dk252) z-Du_@he9gSDpyuogn@AU@5mg8E#Xe{kBA$l_tU4rbG7GY*daTh3O>q0oJG`N#9M~% zB#VgF;ldIujfZ;(f*T;44Z$-ycT|5WeU!-+V z7kUDF8LVBtFD^yZ(0WEmWSPKvRtcXQRa7GgmhV^AHKdz#v12z0p#X2G!^USFyD-HaoU0#H&yjy52BSQT?h|hW! z13yD)e2y2JDnjz2HxmbZ|7!h`q4^kGM@8(#xJT@1-0@~Az0$yyoA5go32Tb9`^#Is z`C}QW-$;EXh*Ify#An!Nei5(0%KbdvODoyF!}9k(ra8sso5f29tx$7N5w&JT%#PTV zY6m3H5v0+>s!d_7Tv#e{OttHK{i8;zYhUbm&E%Dh>4b6MZav)yp51?FTZ=*HiT9x! zE#cjaj8yGhe~wl4{+^OgCMRD7R7Tn;eN>6nn*B}=x^=#Ji+3MMPD|P@1r=zl>eOV@ zYkkw%^FUH2>=%$@T=X7qCxQmFj;7wr4Jq;;2H{ygS!~>dn|;PF?ws(%Jt5B*Z?%J2 z1{w98m8c3sR9o{i<*RUsv^WrqNBCr6Z3G(MD*YKXsNBSsao_Z&D=t4%&J;W~ACN zwRs;460OLg|3-LH*m&M0nNyrQ9gvY34@15k#;0BoC`!ck-J=e2-`d*jT(QMJCxtNM zK+~gPO8u85bsPv)3liakj^&u)Y@xh=xd?k7DjM%AL*%idG7$+h^-m5hwa~%o=uDnk zeXEW+ubKKbk}i_E^)O9CSc=s5N?;q{QwY!c%0n}wSvMO+(^$!2j;BV)2eL~(;`{^t zGVfV?r7YjA6t6xKm0Ug6bK)UJe#T1)0cj|+HLFx^(T8U_e41#SUY}L3)3*(+GglgY zyhSJz3I!T>0HO0fBfwL-8-T5#>2y0A4%E;(O=v|4LRl=~i?^>34-ua9Sl?tQXNkF+udGao)!(4> zzh=>;G=WAssmRvpt50$6p%D{bQeDOm&PhWmxcA2TnyHGg#b$pws2EzWq0x?l1iv zb`I7b^gBLMph~fnJ&R)$v{;J7_~CXwuUer!Ta}4xv88KoB*#(?ydH-ZOg5px8bo`EewnIIy`w1{+H`jt65+p|BnRQex zh+86O>H>UzL}7u@!2+TqBws|dQfsu4R)`be%b0wz-OX=^muHnqBIAxfv%hnPn@jmX z3cDE24nxrDS>sPsDd{%)$AoSh3VuvkLO7x}aKqOTj*_bh7qLOk2v3Y>OA#mDckCLJ z@XU31Ur3mbha=>sRESF~aBD7Iqo9K?wXIWs;PQtY-N0B+7|0Y6vaPX%>T!ox!4cea zLAFudQ(ls0U;*Ga)sxCz9BrCs{}q$k#}41SY`YaQ zRxK$x?Br(Fm+Fans|%N!9tIPAqW~2dbUw=~KRq;Cb6hSx`2Dz&d_HD=S{kfu%a^>H zV(xyr@6bCb$T5BGGR%(EYlawx4o7*iH*1oSF<0CUBI$l1##x$Rvy3kmyiQ86Eo0v< zU%JIxz`ZSOT9d2ae>U`43W_Wv?y!u{bcyvQ^ma>B^>>yG`Z?m6kNN#Jdbm#z0-(Sk zrttL{f$658pwqearwgR#U|ut2_^f2ev8ZIo!^NYJZKk)zPgc5H@eRL-mhhjYG>_^k z3)k>Ak}Sy^M4$n-TYmqr7dnx64=O~WZ+x60T5V=lmXa*&!wa1|aI$DH$hAbP|Fq-l zDFXu;^~aVWG0tyK+zymMoJ4X9q3nF`gHR~KXVueEy3_SLNiaXu|0Y=;P1NnFU-GHi zENpvj{uNeRJ>L5Qq;3Q_#wWM*b1h7SB6K*RFngr1eqG)P#VnTf3`V=iENOf6z7h@c zcWIPwSA-d^_J?%X}B@8&;d}X@`qbjh-<-0LOi9q|2jQd`JtvNN%h=XS}vy_u;_*W#& zy^l=|a-j#QflGdx4rQh{z5FU4uTO7GD*qw`%Dq8JBg0x)bJ<0DR+u((1amYBJlhzV zdOCfE|Lu3{3UhI*JQ9{Z8|+9GS`;Jot@H< zsIMk3-|I!J57CtR4R}H%w704=!e|+H8!}xzJUq!ufS|*JQ&S|$QaVsf%>sYCGbUTP zRvh3QQV8Vr#@Ptn*jTff$}1N@ptZg`txkH9_ET^?7!=|_-NOk7Ey-k{ii2vP5-3Y-$>ezz8%r7$rW{42xphUZsz^jyJyzIf_HU@q z@#WWw;jZSn5U1Um$EDQ+TsK?S@jX?#EVL(#GlEu8iA#YXQXDsR`X{=N2cx-I#@zyF z;LqQ&U(>y}PN@(%L)4(7WV}j`*!Caa{pp|2kg8ti@?HCJXM6tUc~Nt$Xan!CMfdS6 z4zKTiW2W&Wpq>GldlSu{+;)LdGL#a&DD&ml>ht}9WFeNGx@hOA3B)<5PQSkUVsi)E z2(^P38)@H$@*BtBMJiD4yjbo# z-}a-=9vZ6k`XqVVi+j?utv6%1kH}F-BHLE}ijmu_!0SS;g9AA;LJ|e@I?K!^7*q0m zYqm%6`XO3-#<+5}bjp8V=dVh-%f;bDKwYCwVKKkV>Wl%~>+eraSsD`_XC|Y@(@bPS z2M5Zj3Ay9kZA&k<|4Qn6uhhE8ufQ~4_>6T<%aN42N$1*AttG?u2{So4DwQ(84~jd%rdLb$~K~3Ng0~rA#P1_-Xe

Jr$xl1S^mul%Xju9YQAGh#dblow_}UX?j(aIrI&jhhHbkx;n*uKN2zMo{EH z7#cpeD_MF}DH!71;ej9&uIF$By8(rTPX%wC3$LxMUH$!wA3vC3K&t%57>Ckl3M;}# zZht^7*Qh}y!S#~I8^?qoO;`Lam3*xj6Ow=?$C7`(!YbdviTyTwheMz0Xl3PXA2yV$ zW~NzpQiavSBy(xWpsc(+YFoHi`s3-gM$%*a_Hgn#Z~Av)40A*!Iu?Y|rKrBIXB4;m z<`RJ(_E%v9{_m7WM@G=6#BV5r{vOd$Cl@;`-)EWZ|A1hGUZr~dxJ-VM+#|+XY*rhO zvmzz0F9G3YfF`oIk=%Mb7|*lR^%QaoNnl2t7<*38_o{-@Qt7shfSDfdpU!)yxQOeYz~sQ11V5~- z+pc$oRP!|xUE_7i6TDw54k<|`zEqL>X+yzIJ^ZW5X06LIsgU=Q@w4Y(sj){e$XZ*! z>}{Pje}NyV1_L7K+tALtE+mFjrF{P_jFL3?2AX7#$CtbwX!v@kHrQMj*qZKGx6%wT z4a50UyEB|ja?Hdhg|pcKVc#QC0s?~2GKh;d2l4rj>x1dQJZ9v9*O^Iwg@tUr2vvxd z`OWX&e)+|qi8Wq(2pYa-Nps;l5I(L%_82SFtiN-=VCsloaW}3lZEo^ZoqY}LbF_u~ z(IW5f;7hg1eDU})2eTf(+FI8yYwVS}7=;|a`9fW~qHv?xf4N@`M@*@(ZXX{Xi=Fi# z+2=%W3y)7tX|tv4AlRixz=W!F?UrqFosAOMp(b&=n2NCu_PqkiEoc_zOUT%|es#_d zs!7=*qy7m|#<98lSUa9=8K7Tmv>?i1y42B6qt?Q~w>%_V#!|{{SnFQ*+kj>?EP>5A zBWTeI?sgA-6Ge(8Ww(0(JTo*jwAk*$4ps*I?XD*o!k_knqXRooy!ouaOUh)|c1V#^ zmq$57Z~t4CI+M+2Ag~Q@r8Vh^1@C_x4kSY(@9>|=SI(uBy-k>1$y)OVJUR=HH+^qi zl7FZ)b+RYV|7H#cS4O(5fR5I?3zCvvl%x@dqWD;9zcDL)#~5DXd$oV=bf$+KBE9vD zVLrlxokT6J%$GgjV-hz=uQ+;S8S9nmg)?w>I8*pLBnjpbG+i*_k$3oqu*t^iT0Z3X z-0;9$k3i$vG4yNNXDlf3?SUxNz0>{V+*4yTJ+Wq`=&%*J`EM!NA7w4BOkTCrt}Y4R z)87;9wLjkDZCSuk_|=_>w~1;7(RJ{9`dXecbBuEbr&gx}0|SNKH^QGm!$sgqoy*6~ zDYNbov(6BoS$a0G^x%2Cq%)MJP5Pszl7W{D&qw@dd{q-DmQFgv0exezz-%+Ur53?6 z1P4c#F9^&hn6@iaAh`qOSr&xA03RUi{RfX({Y#-S*9{h3KB~HNGr2wyC^Pg*^e5hx zeg+~+u+;0X4`(VpZ`?OPot>SEtgPwEt&n&K%-a?p4lP)p8kbHXI9-<_cpqu=DPcH6 zK{s!@(Q+rAjizdT$7AeD_ajq=M$Am_;WEgFE%6gF8=}-K@{;$LrxS01cbgRXi4`fY zUPaQF>9gH>;XInKhVG88C15wcitO<*abA&!`T$BnN>0Aj7lnmRmyhto+O^Xe1o{}> zgAf;YhcnO}EqUKCYW=xbA=#1?HECOugIETe(D~S9U#Q!YX8n1);QV)#!&XLbNKnkd z>2Xi$#=A8RP9DO?he$&a+Si{mrXHXJoJa>F=*}z_4MK>3zySYPsY6d3p8{w*uuvr2 zrpSwEV#siF{?Z;pnckno_IuqpNE(W)OMrfFZ*NDOmt#|cOrRc=F?E|9-Ph^G!Ov!o z372~N!akc!Yk9}sJ~nmLbgSkF=vtgqxKgx;W!0ZA!dZ3QKYn^yL0S*Sf2~AWiKq!h zajCSXbxa{12 zk*a3&rBke5^wg|KpW~~;dx+}$W?7D3`(p;3*JVDLQ`MHAcxHbbGRYjDW2wVRQ@A@E zBfAJdT)&v#9?@DHP?Ez+YhT6g2mA;NjnmUGEpZkV^EUtF7V7$5r*BH1PmTZAV^uQ9 zd1a{C1sKe7Q~c9YsMyqO_|&!?s~e^ZCJ69=O6Ii0@g7%yv^d84F2&Ywl0WSSv_g#f zIl|5E2hi8=w%+1r^a9zU=lv1GE||=O;L4hy1b;8?4V+v`vF##Dp=alNC`5_m72jK( z{p{%k`j&fa4Q1o0T0=pf#K&TB?3T-2DM(MwmX>`%&yP1k1054O z2nB^X0zrR%(TRwPewa3Mn_(8i!9b-=tZZDQ(=Ek&u5 zU~c)ax=zXd+l&_=*9nfZEhifH5ZllEP8rGv+AmlynTUi_!Syy{ z#PSLX^G(SJD?%R}C^A60=e0=Ptfj%idFo#9TaWvPhdP(s!9h7=Xbr`0BI!9E3HPNl zmHwNAt557Y{-=GMw)>ZjjM#j~td?bOSNTRVDV>LLPActa<@-CoAC*pKY?Q<)JgOnJh-IX+~5$*=!&H{jqJS2)ZkWAd+Xw+9?=_%H5!g6Hn? z0tKN~JqOn8YasA^kq9AYwL$IH+`R_0K#(3qPzBK$g<G)$j{>dHFN3+M(O(;ow1k zHKQeLR>sQ6UcUnIka)ttrY7~;CK$IG}eZc0af{7?3QPQO=qijjC9Tv6U zHdr7hxRpGMX?%8Qxc%*=;D0sp4xoDjF6S7aZsWA#$=-ZJ?i%C`h6MWCFY)*`KuwJa z+kt89p?&+okntnwl%+xX_`A4n?}QfeF{kYH^w`VTwa1cFUbg0mSU+ymuBXd_wLyN| z6RBC*4-ZZcCDiD1QlG&yOG{)sIvXTalxr*?!4kx(Av642nv%2!AjP=7$m~`P3KC6M zE`^+z!vZ&MAisMh__Z-o#aG%}y{#e|^jsT0v48qV#*pgqEi1ypo?~ZB$GJtMO8ltG z;vEF?;vI+Rj*6g46lU9JwYnos5BTo3HB7A5A~c9?s4f;EP!tSMFMvziYx3jTY^5%E zo_i5`ebC9k;T7dWV-w2$Xm0S1$NqP~K9%!I5*FQFIE{v?>d19f#DxAUd+yLY+K0c# z#kIBEAK|QKW-0i06Q+&7yY`h(+qL0&`^guNGgJQia8ArpEK0T|Z0xH-J?774ww}VS z#}&9Mpj#Y#>$GiWES;tXpuMbd+l5h*j6i-Xp8mT zH8+)|ky%dLApPl=w!YO>#CE2|g#ue^+7De3SM~FXP~;$m_Qf}I5lkCHS1zWZ+msDh za=xyk7ed{w1rZPih|zim*euuY|UZuy*#W-}YX{nMk7Tx4F;r2=^kXs_T=Ne;@Spjg9+$y_QGg zb3WE^V;TPb5(7arMs%^GlfnerD&8`n;`YVL5pY{4gzJxeroPxswf+TxQpwb~{F0c+ z6#}S1fq{#iK`rg4Zv{1*esB?K5? z$@kdYFK$xxy*7zmc0Pb_G5|pPD*O9L*|v^z=3uamHUiJg`eaDQ{l{T!&o)Hv&U1u) zX1hPCM({-LlierrM*$0~`6v0gKRMrTaY=qwj1)TDNACumcE)TAE71*bZg4LYqYBa^ z$cIl=jmB+mTIeijEZ*qxhhEDD=?vG(k%Pp7%|DriIN}~yCyY{D{s_6}8oVoud>sVz{?3AWUeT+2p=z%G6-DXD*Hf4?6f=DW@_C9%Wo(^{SIWcw;ufQXc7 zrTGIwv)`#{{SpWGr*Ic<>)zb?HR1-S3t=Pz3GL6}Vb$n;r42ZwPOrB3Frp~mx+0+K ziXQZ90d?eAQ2-$~&MqOzxB=I>8Kp(G`%FRS_tv1*i1A_txUDnVj?VPVK?N_@Dd zM`~gqnSS=Q-Vftys#%d@I1I zYz7Y%0!gWe59ZY6%h?#Jz3L!4gz>hg z7y_h?j`2PPpjg@u_mzt;-172w;DfAU&|>D?oe_VUgOau?hF=1`zmMkwLJ(TY_Wkb? zy~f8$7I_yZg$hW^TdWu_p@-A2MTk#iSZ#Q;tCHR%5vbxFFV@M}U`0HeEd@gR#xoeD zO1Adh9CB7$SBP9L2{w~gce}9fTkjWyrgFzu zoA+a6XWl5>TE#7=f4g(Q>K>Cx+1$xYG-fy`Hd~}EI708Y*zllJ%V_i9?Y&(KKkw&3 z7xOGZZM*BEO!w~`?L5)TdXFR%^z1<_Q zy7FUamFOHW%M%_uI!3`Z;o+Sb9B5Xrcaga4;15N)tn^C#;c#!DVXVmGUV+JDqnLS|C~>qALLIl+PayUBNt8{3Jo-O9XJYv zMkaR2(nr|bv0uo}I}xHQV_G*D{5`_x11Z?^`ULB8(>Atl-;|^!+cg+;U6pcAudS(- zf-O8e>NYE|%R{T@Z2Nf}6MEzmYH#{#sH^>4zl$mb_3e!BAPTwdvl1#}|Fu?R+G5}& z_@t_?cDV(!YwOh6>aj;#5A;kpai;91Z4!u`AMtgthDJ`o+SU28v9rwB(h;wh$C<#D z+wG9c-$AEZl{y@B1NfXJNiA#$sNu||X$i^64L0!wJEU@UuTa@UdoO=%FcQSd&K?!Y zbFU>JBu;A0SK`u8Zro|OF=N6T@otj8W3fp|YKygE>Uuo*AXmnd4#r=ng^$VK2ES?w;$gG3JN-H9$o} z`w&|o4};e%yi|5mV*Q|FM<;8}AP+-1jD^3$u8B^-d%~m_jo}~X%4iMf7|Enwnw-UT z?*HW^7p%XdFc{Y0H9f(D4fuM14)hl@)uy&x5o|Mt46QlYiU|Vo21)N>u2Ne#DHTt8 zwM^;o))Ajp#iy?Pc%`KQNTj4x1@NI-LjsPieDqYq7>67Ec{TtZIVdW5A80F1^y}lH zN$v7nw$j-Iv!9pyw-_KV_^v9>vic3{iwLb-BhA7&8(x`gh_L264q_w+@)v;uo-q{H zO>r21+9#V`R!9M=Vztc+UD5|0hQB|~OeX4>BxSWICrGLvpm&E$~Q zLJ&XbDE|Xoq@tqowvYo(k%*cErm0et6=zq)biWJE2b4ZS^5Z&^`T{>HOga3QrN)#Z zYeQaM9zcale%DN|085f4U9eiml*;PR&&{r}nU~0iaS&sP$R(DXF{Ew_M?`*PvWg5V z)`}6#i9rvOuT7j>sQk-X7Ne_A7!1Bw*~w5YCI8SubPmz6VN0*VsH~PUF48<>?yDLq zbjUgS-I<$d7Mk7G)|Pb!CBFB&g^5C5gtOsjnH)LXoU8#RF@JkmCDZrxBk-los+>xH z&ICM4R4G>8hA}3Q5e2pBHZqN`fWSBbN@mn-RFaLbw58LD=RBUmm;)?#~vpqgdQ#P4jTg?7vauIeW3xb z(89BE_xJu**6}qQy*k>mPO(y_@AZT^mL3872J1l~i`X@#Nfd(^4i%~lsksGel&RI0dWKs6*Vg-M;g73sQYsVBWR!kB0E1jD+6eT zsf02F24*32lnrfsTkUgZ$g*6iOdlmGek3Q$c`u*g%l;-tIWN*B-oD2{K)yK;^85Uc zy_;_>1U9hkv31@mvf6(k`G{V@3Mxs9h@xq#FP0?zJDWRg`@ZP6SD$M99_zQJkcqN3 zBdWFBLHK+=QI|aWTekGC`W*G&zZa?p%&}&>@k45dJj0=46XE+|#%eC_Pa%g?8-UvgFp z`7K_h0h_*~2r(7j5fc&`PNWcezny45KT1mnXH@lSqm=$=KFH=Gj^TOpCke2K@ySWg z&AzCd-2jT|Dv+i~6S$H`Kmb7KwMxfTejyE~6G=iM#EHz`vFb1G$NyNg|OQxUOr@}x0^8>5Mu_@Ogcx{kul{Ed9{LE!v* z%(fxRI`c^yIN8YGzkg}H+KstV)yo~6E=g)~va^eH*enc)U0hrMqNGv>v;MJNnBX@rjU<4J6TZAVb=z(4uyKd%=S<8T*GQC? z`kxqTlA!e1c8}W{L38hpx?SgfJ~UGPGE-BHx)GuP`5o>Wb%qr~&g6A^16Q6>6hY>? z7{B6_+l&yhJA9^We|Il6p0IYxbK|2(E#5lXj=M005Nh=#BdS)52WhYNyb}wzH<#JH zR;Uhx=78!9I|TWL2!LSxF@i-dxgNw=`*P2b5%UjJL}yl z39#t7m21!4J;_r;PksiP(OQ&?4=r9k!~`}j4b(_4f} zG19%pm=L`tX)%%5)OkT17O;?K9lEph)tJi(VDGBi1TjJ9O|>CvLARSRiL&%`eYn_? zjoDhI2|cp(FO7}dW?yrDOpNKpGhz5@TEYv@P3)=99%b}HlFB7RtGIapE2oU@Caga{ zu0zje`x)mDrF6PsrQp$Tp=MAOR;2HyU%HmMz%Q$oZef&VKGp zh;$ePf7SiaqNO0z0r?%u9)gYR#PW?m`0GzSq=I#PccNke_#nNvl%I)SCKyv6B8bDx z@cI?hCp$0CW$~bzw|hw-vCLhsqg;3BTe{ekm8~tR+U$Ez-|%3GDZszDn+UPE_?cwp z3b~<%lw`zaXJ@~K`d~&$yFUYOE==%sv_q^`1huub!_Al%7lio}hEUX>+2WfdAq ztuL4sL3D#8a1&Eqr-QG^&R?~G#Mv14U|FYsRV9`&uQ7$rD+%fa4h9D=e^9hTXuf1; zWBkfiFaJO!P5!7bp2+9dK-x*Ibf(o9P=jBw)U-LT6K;Nu2b#Jp+uPgwNhg6N6;B=k z+8RovkQ?@xq=-J>0Wz#NUVGTXNmTu>)dGWpU{Bly*WO2llDR&f{EzL+j}!URKgDal zI4wZlMa+IvJJi>gGwlpamo5s&LtJT|8Xq4|lO87tx3@kD0GL*8ql{~TmF5mp|4kJ9 zSmX}hW6TU^18#n!fOC2I8N;kKWxLv&fa>E~6m$wIvFl|Z4b-bO-389v903K%&krr4 zE=K9%;yGJG(mrl!YGR}b*hzWjN>L2fQ?4upvjRsU2QV1c0!kHg(t_n}jh>y`9>37G z!S$reoVug8bCaD88xb)vacjV3nW1j!m#O{dr{pmB_H(}nCB=HPc5bn3FYu=S(Bh*0 z^T}Gr^NK#lUpYG2ufGw27vgJ4qO7=e`%j-m0xotW+d?1j#WwIPCCu5m4(IsHj$r_E zwiFv1J3M=E)zA((C6q3ykc@H1ed$+l7>ll;+_ob;c`!IQ820>k#qD_z4iBc5JR{)A z|AZXAEcJv=llnQ zPD~1u?#JPtNK!-V_wVjLzP^7Kj*gDrr_J=+wJ-P4y7!MeA|r}lRcceb20yT6-~kbG zSqyw0^l~}#7J({x_Y6XDcM>T_1s50iTNFy`-RrgT2b@us925uWa;baL0e|HMQ$M-#nV#NoF zx?GmtSTTvkAlmw{WWmh$4y(UzSU}_vg(qwlH9X1(H$0aV2Twux8c zv?=(qZNOhC7`^56y{$ZLEWB+vt$`bekB8?CCodl-kFX9ezX-2@h=2emkB|rt4=IGR z^M3{Y)fD-!6d=IM!^y+P$;YF^$1lPs2*~_b09DjD;{OqFakF-?4fr1cUQS+K9Ufs3 z0bvndq5ldbqwi+`0(}35r0QU0gk^kRHKAu)KARP-=J2zS-D>qkKRR>E?3(o+ZspI!RC6WKO^skbcE?D({ x$L{^FK9{Yhjg7U9my@@f`+p|zpH|HNwPN-^t^63NSpZrADaonJLZr>#{~wtUdT9Uv diff --git a/images/document-save-5.png b/images/document-save-5.png deleted file mode 100644 index 862d44dcf8df17cbde43e54c9c49412566a9ae4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9528 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 HEc|}~&+QMw diff --git a/images/document-save-as-2.png b/images/document-save-as-2.png deleted file mode 100644 index a80a9c63c5707709573f14295caff1dc4b63911b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15590 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 o5i!t!DE;5L8#%jjSlBz*{mkl?8usCr`7Ov zE79D`aL6(RY~cp2RT6A?Gy7HhkMQbui%Ro_WQO6wSCDqDPaq{6*r+kL4prCV)O37a zHzqegN~!o%!*F_PNGE0X&Y+8L}z>i@S1z)$_E9{7~TfGit? zqXF6pW_LzxhPDb^g#iL4 zXK^9lr({{#49AgM7vV(hL=nR_K>CbD&0cat0U+pSgS}d3gY5?4ChmXxhQlK*TZA0# zo!U5yI^>YcVYkj>ahjeFi-fovsCK z+LuSM`mOS73j3r6hnetXWZJV50DCkrI;Y*J{qBrTS zJ}iKxq}1lyp>5()Z|KVSWNB);eLTy?r-;I!x7sVYY}evSC($2qfMGbtkT3ivpn>2(^hX`)8%>mM2c);gGdF;)SC0%VHd;_A9l!Q=zXw>) zpmEddSmKDVAF0+*p?64tj3Z7|V7>+tNR^=cTL`3vD5ivWu8gnU>zcKUOD$z212+U| zy$$9SWOh0wfbT>G0FJJqJQAK_KnfcgiLY0W5c&MP9LF0QW%(6`qbx?Ej)ZX)3Ne61 zBHod_)c0)3##6*Uh0wdjb>{Hhp;FTZn^WvLDj#w;_M(+I4YEq?7g4*HU~34^TvVEL znjI8GSlllr>qd&+iqJ6L`MEs5%ix-ehyJGJxG@5 z4i%0`0(OZg=kHo^e{qahbaEz<;u)eAV9>bBp{i=)8)}A?evQ$93Y``)6PT%KSUgH$ zU345tsds0f$KrK+lB1^)ODXC^5Ad(*@qTF+;)Yfwydy-Ha~$86hKVsCO*_TONSX8zV z*Apx|T-@=NZhr#HTgNN-oWfB1l7|+CvOuR^!56UDQ1z!-!z0>NUI38i$w~P(4i~b} zRP@pzlX(1O6g{iRV^ptazoc2cqUhA>@8EfPe&s%wc0gk0%c)RfZ=&}qfsW!6W0gWR z+6I_W70NA5n(M%U>G0S5;B8Doqi}0!AuGDvbg6DF>#r}g1pY}~%xGU`Ii2S&Mg@2NhwL^TVck zz&YiDff9Q639t(x)2jks7aL#?duRdLQS;P$!?A)Or5F2 zH9*_7WB%O)`>X!JbQ$tkxgt}tT;4NTQInL|W=n$AkB|J-ogN4Z!#S`yXGA%#5>{P4 z0I<$CP!;@asmz~xJJYfB;qf8x?kv#n`LDs>!~o~Zk?Ib&{nd);_bc_ElW`tNP9I>2 z&I%7PT>O9t;VQ2)HkcMc;CS*40TY<(A24GaXa^N-x> zp#us4kNCn2Ve|TemE(5PBzR}26h|)n&~BGv44`fyFx?kDc8DHtE)R7dJ?V#<7@;L+ z9c--SGqOA21x5FE5RsZXohfKnx|LLvdp2Hq>jF%h=0@vX%(P%ABJMa;@tm&)IzB??yP-S~J0D*{j zY#{G4l}UjMO|T5LNLxeU0m|Rt9z*qAaAu`z?rD_by5?6(`7+Kj$zl5DtuS6V9g_^s}LUN1=^M*!;xxUJ-37O3IIRc-dc*r$oZ!jY@N3 zN2m6XV*ueT^63&RP}u+0`OY)s3kv}BGms3A$=-T<)SpL(_vlBE9gL0t`brCS@`pFy zSy;u&ipkK>Fig5Yju077L_@51I@v$H5Q&qr#X^aE$egsW?YTPW)tql$QkI6&4;WkcpgcabwzWCYIBj z?LQQGfXbad<$vBe3VeRa9NFPfP5Fc?KaFobh4@wj$Ufk|?}wPqfflJPvZ%LApQaeX z_4H?#c+auVWh>@pDQctP00Kr22Ud4Ii>y7Y-el(ItE1CA6FOFIwjB�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 diff --git a/images/document-save-as-4.png b/images/document-save-as-4.png deleted file mode 100644 index 0fc60309bdfce703cf542512901396f53b2c57f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12638 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 diff --git a/images/document-save-as-5.png b/images/document-save-as-5.png deleted file mode 100644 index 520ed7e3e20f812005be6e96ef7b02511db9cea2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17064 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 a*3AT|2K)8B`6|%S6AYfNelF{r5}E)S3@%{+ diff --git a/images/document-save-as-6.png b/images/document-save-as-6.png deleted file mode 100644 index 45543c34afbe191f5c947510bd1a79ed5f2f74d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4893 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 SJ=ZSSfTo(BYK^jWMn2{+ok;)R2Br4U2 z+Gdv;6_s92v`vwrqjr}+N-qz z0J?q@5(KNsLPKi6eSfmY6fEj2VgM0;cwcz?jS5$TuLY(KDvFOsd=qG zBV1S%aEUBf7lQzyzpNb2u-1=645l<54p#0lC7XSYiLpo#UZZa*Tv>tAE-%ZPd{MM1 z+-AbsHtETuyh8}5DLQh{lTJ<1c9=tiAqUHD-pFd`p!Im8t#b3zTJyZM*zw_y&v%3b znTZtnF@ofB&He2gLuneBrKQtz_c-_Z7|33%k+B7W9$&X^_G?}7SlGd9tplZQABnaP z#>U7Y;i)}j}5Wf?G8H7(RLV)xw=&jji((|`D9Iosbf zbD!Pmb-YW015E&6t7qI}2Im*-q)b2}qgHzi{|EiKKH2H|y+Zq=PX z(vB2UF1LEV;hiptGRcE7&#R?Fb*^h9n~~|f>9<`2F%zbse)|T@tLv;lH4qXR+pX>G zJ$mrO^OytARDC1(0KB@j-_wTZfwwI!C(^;GWk97}D-X1AFLK)* z8i7hv)0a7fYfdBIgZoJlSl^ac@#a<%f1NUcRt$@EJ)1NubUK40sFCLpFJe0~E+IB= zcp3k$R*;&IfHpM{o=tWs@KfnNLY5->Y5gs!>hM1)g<^{}l+*!_W)Cx`V*ThB)%om( zkarYz(b+;0+1v11MSltIXoy{*(L?jERwCEbu414f%maAA#F;#(rUUC+#`ZV#O3c!h z=93g2&Os}wm0WYl+SSEvcO+E5iZooJkV_9*4* zC-u!+;)Yhp1kRUhkvdB~~C@{3{ zuF;YG%D-tybQA9X#n(F&y`v}PZfH?S$@;_U5`8XOZglMG<2c39Im!i6P<3SAzM+s^ zyD+u#{f?G;$HZ|%Jv*{VAwH5Z!x8DmTcOv7sGDJ#T9Awv9}k{jE3ecU?x* zYrUy^5~;xtf28SWkgTf4yP)Ga;_0yYd9}h-FBwM($9BMPhjpS)NFsyBj7nspcEcU8 z$6{SkI2;P+7>si!VC@NbXA~A5V6*h3xnF<Eg#lbJ)|FuIL~z6}0lOWt z1^)u#IlI|0qW=a~vT;vgfVB|GpUq$<@R=YsF_BBaU>46}3z!T}d^{(CkLK`Ln7vCD zJ|?(6FK~-1Dn6McWs0GzuY1@IT_7abfee{ W?!{}2I$u%32=Mcvk>p;H8Giw36Q>3M diff --git a/images/draw-ellipse-2.png b/images/draw-ellipse-2.png deleted file mode 100644 index cee3c4f824c3f78245802c1a2d54355e513f66f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1490 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

^zbFCZR{7RSi` zH<12^fe`qo$wWelAYz(VJ{zt&}?{Ih!pZoC^si~pF diff --git a/images/draw-triangle.png b/images/draw-triangle.png deleted file mode 100644 index 65e0c7619c2d767ceb8b8a37dc87a1074221c7f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1355 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkEPx?S@jg1THY;?W*JK9KcqJj;2?3E#3ahkSy;idt`_K!Ir+lGu-|t3XWop}{V=cDO*%W&T@`<^Op-f|as2YVQp4 zdRnwIW@n7iazE2_b+tp+!ou( zwmm$wI{ebj8$V>LZ6_Np*vg=wv2?-KwjeLV&1y;vC)RAuoR(TB@FQ|_Xg^^ z&o2VyPM^O1ok>O_*+sK8@gtAYCZ$P{*~Usz^~z^@40v+(+I=ltX|nOcOP9Ir{Po9f z-TJkg@%YKZ61H9mQ-h|>)HP1euiiXE((%FRCn;-VwOG5w^=d9!mA^B#src~vcH_m0 zZF$oKH(eFH*ZO0h`qrqWvMm3$e}Dh~(z~y}BI55$FjwgqPQ2E2?~U<>xBcu4k<;GF zF&f8gS76v$z4v){pYYjq$-3LDKk6prX`?e4gdHS1pIiAy8r(FUq`#2&#F8w;n6Z7b#Zdn48}C>140)!aHp{zFYJ&k zoOGl)R#wF`X{(v-dF`f*kgFT6Bp!Y2b^OPQ-4C}rbvzb1(^GTr;D53I3|qeFNjQle ze+$e&swJ)wCCNppi6yDJDL{h3$iTo-*U(Vc&@{x*+{(bn%Gg}j0LUvn(|^KQ}i&uUId?C|y4XqNG?qsZzH%QQuh4KwlxhNP!p~KJEcN z`bK(&`qBM1$uKuUoQD(&24=cOCLx9fR>o#lCcscI1BODVnAsno21$?`gY(l$$`gxH z8OqDc^)mCai<1)zQbA6e{mw=Ts7M&1sI(|KmBGKFGCegEamTaeVFMyZ$nv636C$pEL7r+_%W@YFboy#}gVZ#M{;s2)-KA?Uj& zE2t-zljYK}784!UW3dzF9(s4Ka&JQU?f@;n8wWo2bs&xdm#Ug2c7|E=nz!Ui$MC;hw<(!a&p7A7Yvzf}^_-+lL3!oq+I zJ(03Dh9!&+f8sxX{OB38|DSqU*|z!oEKKsOO#k$6-HsNHTYq!g&Yh9pY=hX7lkYdo z6zDchtgKYMa{2PT$KS7iX?6N4doW?|?YCvGS6z z(rll(@QR{rPhVW){r89e{?;yi{CM*FE7yLVJNkHIU&4mC@|`7VX$HoeiUDVuyPjo< zFW_VA>8WY+IKqFs?#0G6XQX|7dz~+4T+UYaJK}TLAVTwK-(v;_K|zKEEP-B{N=(Ll zY%#k`I8R4SWr*Ws`O{fpQ@3iV>N{SRS1ud(#XPa#V_tB{+*q5TtD{5m#^1gC56TXU za$V(ZJ$&$CU!Qo=L=TS_yUw{Xzp076#JFzzn%@5D)856+nEUtf^`AeF>fYYwnwg~~F1S%3sek7bp&+|i zb8Ul73@&gp?5L@wxE_WVTxq8~ve-Ey$-Fg1~otg1*v9ZN7B!BOo7&I;UipkIW z;=By!=DlTR(9w@~jh_8JPi^wgl4|Sk-fEL2Ioh4`fzc6lc}?4tqVpwh-M)x4Owx;! zVPNp_shM8BvuC!pHosU|*(dv`uwOMgVzss+TvBZhpY3gMR-VmQQ?Om^qj?THIL96?MR_&?wtv;kEzwFRn1Y;WB9wcPFU7BQt+?_XKXtX6CAI(z0%%&vwPudFy3eu#fgJn%}{#Df`F z0;ra_MwBEMr6!i7>ZSk*1|tIlOI<@lT|?6lLvt$wBP(NbT>~J)pq+n8KTHEir4>XM zP=ld?t^rVkVTggHm64g1u_;8u!S1c6Q8eV{r(~v8;?}U?8gDsJLpsPwKAFj>dBv#= z86_nJR{Hv2yE4mClk;H{0cwy0xiL6Dt)x7$D3zhS zyj(9cFS|H7u^<)XwAt@$q=1TqA&N?il2aM{D=O1d^AtRjfv$fevF-&>S{)%B9~$HX g^D4-&e6VWWOpt1@U*DUr0)-`mr>mdKI;Vst03~OU2mk;8 diff --git a/images/draw-triangle2.png b/images/draw-triangle2.png deleted file mode 100644 index 59d6013172468b31531b999667ce4fc0e1bf34d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1551 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkEEamTaeVDme;=7tiDUD>|4zG+Dqhx} zyHtYXlIq@&Tz{1%j~24)UAxk@L?To5>X8|8RVE*=1naA*RegA{vXdjWnd@l1t;A(- z%PS$CS41w)xUuWz-NgT!HlNvKZ2ft!Ttb+@$}L}PYiH(v`g8Aj?ff$WX4!TBvJH%D z;vc@bXTUmnaL@%+5MO^wT$J!cyQn4CB~G+UQtI$bX<{P2LWw%|iSypiRH zvheUfhc8}yxcyb>_mzEpk9Sm+KKn1rz#zC)FLUvcXU1u19-4dS&C5%a*!bMn*gisI zikt51>Hf2P-(R~DvTD_oL#^D;%d9@svM$|m_3tuat_3bEOQ*0qa4HJ$wTIT%$NxAn z@kv4c`^)c-KfZXH!B1eKnepehe(chkOiQK&c(M9PFkH6Z7IMLX!K`P;ix(Zogg75x zEwTFSv@^!{XWiRmhI9KFr0;rbHs@{c<2tjZqoY}X#gluMqEcGh`89vmDrPb+nKB{B z>9UE&(g(lmxHoBv?Z~tZ_Dak>8+LO|WOU@o`pX$RioGuS_a57{U0b0*K*!P}TtSY* zT&nNHQy=T;(L00JhAodN|2u8j*6R!p9v#)TmVL3SWlGZPriZ`njEyyy&X^g=!FauN zWrR-U%aUi;v$lS#+?rK?_4@U29g#~j=G5eVpW&ssy_3E8?i|D4`_4c8wCdDTpUn|E zarq{*in+P(|E+s z`L--bu9(+evv0ws$j@;bBW9J$q}$DuIbk+iPp8|!&~Tgj$J~Z(W^+3fw5EohOWAa^ zXy=}U$n4EKV@h`}S6|jATb*})(SJ?@9_OoBWxw9tt=^t{d)}rsS8qQoIP&sc-@`92 zr^|WQNGphBMJGQy{dL!0ccqIvy_N`cwip^2eY)}JHUmS9(k|te0~an_*ypnS+WoZ^ z|CVxn%Z~&W0;(mh5hck*sfi`2x+y?{!N|bCQrFN>*U&V?(A>(v$jaDU*8s>cXy>2O z57PirX$8>*)L>|!YXH<>7-C>)Wn^Y$YzonEuzTxi6b-rgDVb@NxHW9J##;{5kPdQ^ zPiAszUU4czMoCG5mA*dMuFSI32yq@#C>WUO8kvL`8dw>dS(yMs!3-D*p<-r#fEpx0ZVb*( zD=AMbN@XZ7FW1Y=%Pvk%EJy`8ZT34GDWD=@h@#S>FVdQ&MBb@0Hn;I`~Uy| diff --git a/images/draw-triangle3.png b/images/draw-triangle3.png deleted file mode 100644 index decc29891279b0c7fcb20c3dc99394f2167ed904..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1458 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkESRhTs=msg>s+TL^0>dafaf>vKWmz$F_ zmnR|lu{2M6J^R*KQMRS4?!W*3e0Oi#_En`bWA^VW6q1bi^!M1#yzRAyr-S@1Pdokj zkMQ}==c8Z8W&Xd!zCHi_0n3?33b)vqU+;xWVTrHTxoz9n^7(Gu{>_{C zqJGx%n>W*p#je(hv|h0fTc8moAXHL}BKisRpVOM<4H1E!j zUq2cSAGTLu**`n=rq{HyT4`l2E#y(ayka%?(CN=PtsV9?UtWAyX8g3m`@Vm( z3g`Y8U#(*Ae`j#;(iA3d94a)XaJQ zv(@JOlqo@+iXwu73_H@3)^0W9VfLEz?59ST-krVG|DUSvDu2&zQyaA{JuPkBm*4rS zUYZBb@El+=IA_UxAY|9Is+1l{QCG2F`@a92tbTas!3VqlvstjOoDvfk@nUZ8q6>l( zm6f7dSI06f=wq>|_@LaeVaBqTS-WE^&g68SVAvqs z!J4pkYt^LA>UFDQW^D`Ed^1Mv(bBhX5AJ6?{4jCvO&E*HO<*&TF09s z8*BHau73L4E-n4?QMbeUW2POeX56rQcejP#xh0v|mghge?4K(UzO;y8+5d+>&9C0e z+G^3YsN2z?I4%A8KW<5r<^%EXzwVkT;B#*0OR3v_-j1QG!-8HicxZaMPE6hRKA!o) zoPW%USDYgIZdF(RuD4>(UfXKOb}S+yJ9ABTMsCI&md2SeQ%`IT+E{$9Fmjr0TAlO( ze<6k$Kc_z|*s^c`f9-xZsi^51r-f22%W`@euSrEo8yGK{qQY{(M`h`pIjl=UCIn3k zIwW-QaVFcjok1LS9gjJpZhLO2S~UCRO$qKrg-4t?48jlhI~++6Q%K@)6nJz(vGCI; z{$&^9FI|}T^D!`=s+PD$lq46WCYGe?rT_^BBLf3VT|+}%L(>pLb1MTQD`RtA10cho zoqtL{Oan-z6+{<>rnaQbn#i{Vs2|;LlMHhs#Cb@eU|^(yEr+qAQj}a+3#$mfQp16ib{);QyKg#D$`T*6g-oGu74x3 r?gda<9U&bb8sr1>D#);Wuxi~*kZQ1B- diff --git a/images/draw-triangle4.png b/images/draw-triangle4.png deleted file mode 100644 index 11221f2edecf34592c1e89aadb0d45520ed96152..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1513 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkEEamTaeV7k-+qx$k+%EA@7^+|xhWKO zXbT%v$NmtG5%3UkS9fe{Xyp9E{9W%4t6t1T13pE`Ugo-^Ev-KUg+&iLC3{RbQ1iv7 zywpFmJp8MBY3SYR{_a(;zHl(h3i}lWZ=YoKKKQ-m@;t`#mK+Ru_y0*Ai;zf8$gMp4 z{hF0Ta(6YmQp3!HJ_PbJ^1|M$d46JG*r5@aZXmJdN>=H8OLZ^JKrc>XZb42# z&$x26r6SpDr(TQFT-q`7sAc+`;%k=b`{aLkPFly1(aWIjx2G>o|Cchyt@yX^*!0%t zN2aGuW!GLhV`gWE#`-lD*=sjmlVZ5^vgOj-vi;J0kME0#iyORSXy=oaa0~pg^Lgd} zBZWS#7KX+Q9vkO8`C6#-sB42ui_Yl_SzG15{XUtsw8%iO)V(2ixnHBlyWe#iu4TMY zV_2avQJad*XnZ>BMK1y4YYn40hA*;ikEn_IU({)~11vppGk zFWtBbRXm&A7FS-E*sP{>bH^jO11~S*nUG7j`&khJIsOny~YeAiK@_ zi@lG37_Tk;`sQZ&27Lwwzj-!|WxM}2KR4YkpZ{aWd>69$I)!pW_QAJ#`InQqGbG(PtGi?P8B=)dmKV4sS zclX1}vpV+0-*z!HC}ecL|9!t>#_p-7c+}W*boX*ANvU=2{P^PHue}z1l`;p;cubnI z`s&=@g*JbhIQ~9;`dy8k;lR$~{KYqOY%;c6uYUb{wk?Cid-t_r{nm3oq=~rJ$L}bp zv!D5wk-@;+yxo9j|JtzfcPx&lrwWU@#;&~jsvhW@tutpzR?a#W%;@di-SK#fEX!Jd zbF*!Sbc|J$Zrr;k$>R7rO6L1)as7G6|FbbTEM271$G$%=C#UvqhRK}w>|3^OEnaceS3dQy!I<$ZCJg%Z@Yc$&P{*L-05UsDERuSbm`WZ zFfae*FF!m!Jzam<pZ<(L@O-qdRK@2WrG^5_7It;XX^OH~;>7(M&s=FT>G`}6qz zL)<}e`tdh`d7eSF#5JNMxhOTUBvm&BNH7=~7+C5W8tNLFh8UV#85mg^o9h|?83yhA zQ~F^VKq{>ux_}xC4Rj5F8Vo}WEUk>ptc*<|8V+`EJ&mFvH$NpatrE9}4cB(pauaIA) zK#UF__W&P#BRxa?=zg1Im>VI^Lka~0GhHK-5JLkiV>2rgU?`XYLm^bm><>_bB*=}y z`DrEPiAAXl<>lpinR(g8$%zH2Ag9fKXCnnvBn(khT9lm1;9pUho|>oNnGAIO8;Nx< qfYRy+>G;qfADCA`hUJ4*>t=#fgZ=v6d=)4x89ZJ6T-G@yGywqL&1HW8 diff --git a/mapmap.pro.orig b/mapmap.pro.orig new file mode 100644 index 0000000..9f39567 --- /dev/null +++ b/mapmap.pro.orig @@ -0,0 +1,155 @@ +TEMPLATE = app +TARGET = mapmap +QT += gui opengl xml +CONFIG += qt debug +DEFINES += UNICODE QT_THREAD_SUPPORT QT_CORE_LIB QT_GUI_LIB + +HEADERS = \ + DestinationGLCanvas.h \ + MainApplication.h \ + MainWindow.h \ + Mapper.h \ + MapperGLCanvas.h \ + Mapping.h \ + MappingManager.h \ + Maths.h \ + OscInterface.h \ + OscReceiver.h \ + OutputGLWindow.h \ + Paint.h \ + ProjectReader.h \ + ProjectWriter.h \ + Shape.h \ + SourceGLCanvas.h \ + UidAllocator.h \ + Util.h \ + unused.h \ + VideoImpl.h + +SOURCES = \ + DestinationGLCanvas.cpp \ + MainWindow.cpp \ + MainApplication.cpp \ + Mapper.cpp \ + MapperGLCanvas.cpp \ + Mapping.cpp \ + MappingManager.cpp \ + OscInterface.cpp \ + OscReceiver.cpp \ + OutputGLWindow.cpp \ + ProjectReader.h \ + Paint.cpp \ + ProjectReader.cpp \ + ProjectWriter.cpp \ + Shape.cpp \ + SourceGLCanvas.cpp \ + UidAllocator.cpp \ + Util.cpp \ + VideoImpl.cpp \ + main.cpp + +QT += gui opengl xml +RESOURCES = mapmap.qrc +TRANSLATIONS = mapmap_fr.ts +include(contrib/qtpropertybrowser/src/qtpropertybrowser.pri) +docs.depends = $(HEADERS) $(SOURCES) +docs.commands = (cat Doxyfile; echo "INPUT = $?") | doxygen - +QMAKE_EXTRA_TARGETS += docs + +# Linux-specific: +unix:!mac { + DEFINES += UNIX + CONFIG += link_pkgconfig + PKGCONFIG += gstreamer-0.10 gstreamer-base-0.10 glib-2.0 libxml-2.0 + + # stricter build flags: + QMAKE_CXXFLAGS += -Wno-unused-result -Wfatal-errors + QMAKE_CXXFLAGS += -DHAVE_OSC + + QMAKE_LFLAGS_RPATH+=-Wl,-rpath=/opt/gstreamer-sdk/lib + #INCLUDEPATH += \ + # /usr/include/gstreamer-0.10 \ + # /usr/local/include/gstreamer-0.10 \ + # /usr/include/glib-2.0 \ + # /usr/lib/x86_64-linux-gnu/glib-2.0/include \ + # /usr/include/libxml2 + LIBS += \ + # -lgstreamer-0.10 \ + # -lgstinterfaces-0.10 \ + # -lglib-2.0 \ + -lglut \ + -llo -lpthread \ + # -lgmodule-2.0 \ + # -lgobject-2.0 \ + -lgthread-2.0 \ + -lGLU \ +<<<<<<< HEAD +======= + -llo \ + -lpthread + LIBS += -lgstreamer-0.10 \ + -lgstinterfaces-0.10 \ + -lglib-2.0 \ + -lglut \ + -llo -lpthread \ + -lgmodule-2.0 \ + -lgobject-2.0 \ + -lgthread-2.0 \ + -lGLU \ +>>>>>>> gst-osx + -lGL \ + -lX11 \ + -lGLEW +} + +# Mac OS X-specific: +mac { + DEFINES += MACOSX + INCLUDEPATH += \ + /opt/local/include/ \ + /opt/local/include/libxml2 + LIBS += \ + -framework OpenGL \ + -framework GLUT + QMAKE_CXXFLAGS += -D__MACOSX_CORE__ + QMAKE_CXXFLAGS += -stdlib=libstdc++ + + INCLUDEPATH += /Library/Frameworks/GStreamer.framework/Headers + # LIBS+=-lavformat -lavcodec -lavutil -lswscale -lz + LIBS += -F /Library/Frameworks/ -framework GStreamer + # QMAKE_LFLAGS+=-read_only_relocs suppress + + # LIBS += -lgstreamer-0.10 \ + # -lgstapp-0.10 \ + # -lgstvideo-0.10 \ + # -lglib-2.0 \ + # -lgobject-2.0 + LIBS += -framework OpenGL -framework GLUT + QMAKE_CXXFLAGS += -D__MACOSX_CORE__ +} + +# Windows-specific: +win32 { + DEFINES += WIN32 + INCLUDEPATH += \ + C:/gstreamer/include \ + C:/gstreamer/include/libxml2 \ + C:/gstreamer/include/glib-2.0 \ + C:/gstreamer/lib/glib-2.0/include \ + C:/gstreamer/include/gstreamer-0.10 + LIBS += -L"C:/gstreamer/lib" \ + -L"C:/gstreamer/bin" \ + -lgstreamer-0.10 \ + -lglib-2.0 \ + -lgmodule-2.0 \ + -lgobject-2.0 \ + -lgthread-2.0 \ + -lgstinterfaces-0.10 \ + -lopengl32 \ + -lglu32 \ + -lglew32 + # Add console to the CONFIG to see debug messages printed in + # the console on Windows + CONFIG += console +} + diff --git a/mapmap.qrc b/mapmap.qrc index 951ffa8..a8907e3 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -1,14 +1,25 @@ - images/document-new-4.png - images/document-open-3.png - images/document-save-2.png - images/document-save-as-2.png - images/document-import-2.png - images/colorize.png - images/draw-rectangle-2.png - images/draw-triangle.png - images/draw-ellipse-2.png + resources/images/menu/save.png + resources/images/menu/save.png + resources/images/menu/save.png + resources/images/menu/save.png + + resources/images/menu/fullscreen.png + + resources/images/media/video.png + resources/images/menu/add_color.png + + resources/images/shapes/add_quad.png + resources/images/shapes/add_triangle.png + resources/images/shapes/add_circle.png + + resources/images/shapes/add_quad.png + resources/images/shapes/add_triangle.png + resources/images/shapes/add_circle.png + + resources/images/shapes/add_circle.png + diff --git a/resources/fonts/HelveticaNeueLTPro-Bd.otf b/resources/fonts/HelveticaNeueLTPro-Bd.otf new file mode 100644 index 0000000000000000000000000000000000000000..0712e4db4c7eb360894958403ee2c5910e5a50ed GIT binary patch literal 35688 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 literal 0 HcmV?d00001 diff --git a/resources/images/box/box3.png b/resources/images/box/box3.png new file mode 100644 index 0000000000000000000000000000000000000000..a2bb6d1b69cd1b25208a24aea839ea64f1d1f485 GIT binary patch literal 1288 zcmeAS@N?(olHy`uVBq!ia0vp^5kPFj!3HF6{F31SQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS=07?_nZLn2Bde0{8v^Ko2Tt~skz|cV7z)0WFNY~KZ%Gk)tz(4^Clz_GsrKDK}xwt{?0`hE?GD=Dctn~HE z%ggo3jrH=2()A53EiFN27#ZmTRp=I1=9MH?=;jqG!%T2VElw`VEGWs$&r<-In3$Ab zT4JjNbScCOxdm`z^NOLt1Pn0!io^naLp=kKmtYEgeeo;J&4sHjE(uCSxEHIz#UYgi zsro^w#rdU0$-sz9QwCX8VC7ttnpl!w6q28x0}I7~jQo=P;*9(P1?ON>1>eNv%sdbu ztlrnx$}_LHBrz{J)zigR321^|W@d_&iG{O)rIWF-v$>n8p`oj>laZsNql>Yri?Okb ztC5*2Os`9Ra%paAUI|QZ3PP_5PQ9R{kXrz>*(J3ovn(~mttdZN0qkX~Ox$iU#AzN> zZwhX=7~#~b4|I$^C}NQ!8YToxJs>7L*#bH6grAxROzlO$WbO3-?_LH5#u`r-$B>F! zZ|)f89WoF(R(PC;$D>14NLlvgt+mP3OtYjfNPl7LnEiz<)6e0W-`QgxR)+%&6>d~) zo1?WzaLJWvR)6eYo)k>__3~t;$Bl`*Ce+!~O-fbzs$d#)WXY6MOE|7&o8bLn zQ|g`2xiRk_h{WhiT6)j+d)xZ0sn`BVp8h|ZH)gI^4;uUIIX=rR@0{;Pj!7=N(o58?iaDXMDf%5i<%pG#y z<6ho7e%VlWqSl6=#a!u`msiU1?LNEjcK7|KALFt*E??bo{?gw2i}l+N+U9YudT3yA xU9w_^*p>Ws#u*LIochv2E^idqe`3L9z_2zfY+Aqi)(lYD>40%yIw# literal 0 HcmV?d00001 diff --git a/images/colorize.png b/resources/images/colorize.png similarity index 100% rename from images/colorize.png rename to resources/images/colorize.png diff --git a/resources/images/ctrl/pause.png b/resources/images/ctrl/pause.png new file mode 100644 index 0000000000000000000000000000000000000000..505033e2c2e54aef7aa6d778eae510fbcfdfe7c7 GIT binary patch literal 1047 zcmaJ=O=#0l91jeq3v)@`K^KBoW%?kfim?n-6hM$+xU|Jhb6}ch zcyTJ5%}xS=<2jZSSYAl;SxFQmjswX@6K{cCmx|hA;)_@^-N4wFShm$_F)fin!3xXg za=BPT5YhyZ4%;3!qqG;MdI}m0t-$fIgFFx`nl;qKGEE{qNWt~{vR;^!i4=^DOrPZ$ zE>5WjG>rd4UAK=8aSwJm_^ByH6%|d*E@pT>FD?j*qG)196GbgA zOy_%C4OvYWdbr2654rh)+_)87pLo__;A}v9F+eWprYt#wV_6uemvHUDv8V&NED45< zFZReq_qIs)#LIr$5~JVv&?DU*khYeZd%wt&xTR}KIr{kZ!};+|?&SQt`@`?Yu3b%! zzq-Cv-7Hlue%pSwU-+ZdpT9oVeL_cvozkZ(lMnEn)Ly-FZX!9^(f!#|Pxphn8$*38 rx4V7s%~)c7zVUP7c>gF_-2QU9O1*vbWcT-M?MJ+)=L_27h3eK{w5&gI literal 0 HcmV?d00001 diff --git a/resources/images/ctrl/play.png b/resources/images/ctrl/play.png new file mode 100644 index 0000000000000000000000000000000000000000..3b01edbc560ee9e6326bd5f4042836a2607bf471 GIT binary patch literal 1666 zcmaJ?c~BEq9DV`BiqbMgM6lu#6hvh=ha|8NA!GqLf*4Xu)mlQbkQ9;)$p!+JHgY?i zmVkJmf&uMN94o0>u^urZijEdgX)Ee5fQ&MViuX{ec7uTZL%KV=@BQ9<-}gIb-sZ%F zXlEx+CjfwR%t}l|t>L!s14rt=Uy;>AEgocKGMPlAkvS3#4)`)66^CM!l5|{zOJuoO z7x7R4?CA<|GMOxlN2P=kme??`Ua6+o0EC9=)e>n2PC}`8xVJo0eJxU2EaZ&>5m6<9ns^`(ibWv(=J4Wcx7=+B= z(ccD@EKGz1ga(HKVMc(I!C^ogCd_0n=W@BrAQpqkKo~59$qHa{Q8o)@Fre{=PI=SF z(ohi=HSUYDcyu{Qs!;^V$;p9p*f609B;w4_8O#bYoYol<}m3K_~`2Q&EG2$p~w706^pvLjf0J|ANTVr(`R$>Ky#a4|xv zQ{pOef-8H+Wlzbqje=55dB$*!A{&=QX$U1WmNKfCIu^#1dgEN#)Uhz94P77+fP!e5V_Xaife_h{F zQM9;1Kh4ztPmpzIT6~33PcyZQxYRTim=~_=_UZLDo5Qfu>1zPEvTjNG3A%sxki}V) zo&P}Iq!k5h%WOWgXbW@Zt)|Alipn2dr}aK;h_CyyrRLbQb025NI{z@+O|<=;H&%;_IldV>R?Fzb#d*Jh)lci`@-_llPOj91umQO z>Rh*Y?|B}P9wn`EfBk$8xZd{5j^FMr0_3qx4WUDAS<#z99_GL3oK3?)ySBqC))jDQ z!!;XUn3=ScS2IT}oQt$`$iT+B`808fD&+FZ1%0blcqj{B&c8Ei8Q|!w`!9{2IEd_h zLrRMgOJV)(>Tsi*u&*g;hDIlm@-6d5Ol(hqG|5+>Ml4Ah*R+$P*P0NWW3W>^2+7AYCT4C0k6cD*TdPmYM#!k z`Y`I!xVuYbulpuX-jU;&@=+1XZ02V7I2m{@Pr&XDWlghV?^3_c>Q}FC;i zn3hQEN7lFRJKh%CkQbE^a&g#V9X?++9eicAI$a&8@$O3h literal 0 HcmV?d00001 diff --git a/resources/images/ctrl/stop.png b/resources/images/ctrl/stop.png new file mode 100644 index 0000000000000000000000000000000000000000..83489c20ecef0d6c42a5d9c1b9baa97aa57c46c7 GIT binary patch literal 1040 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 a6BuGYJ(`^n{qQBIQ1Nv2b6Mw<&;$UDgPK_Y literal 0 HcmV?d00001 diff --git a/resources/images/logo/logomapmap.png b/resources/images/logo/logomapmap.png new file mode 100644 index 0000000000000000000000000000000000000000..a09bc6d90024b8ec59e85b4dc636eac31be603d6 GIT binary patch literal 2663 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 I1w>~22RWgA`2YX_ literal 0 HcmV?d00001 diff --git a/resources/images/media/photo.png b/resources/images/media/photo.png new file mode 100644 index 0000000000000000000000000000000000000000..a3a82fd39f67009edf3363142d994702061152f9 GIT binary patch literal 1678 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 JeqB=De*r1>M05ZE literal 0 HcmV?d00001 diff --git a/resources/images/menu/add_cam.png b/resources/images/menu/add_cam.png new file mode 100644 index 0000000000000000000000000000000000000000..dde351189b0d6461d7eb8b7c91e8c49a9ff863c9 GIT binary patch literal 1437 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=QiIcITk&(Hxxtochp{uczk)xxdi?OMTv9XJ* zk(nz@uSMv>2~2MaLazl*y`ZF!TL84#CABECEH%ZgC_h&L>}9J=EN-zhG%~Ps zHZs9!9#n4%Znv1>)TknMZjb|{nf(n3=B+y zo-U3d6}R5Z4)kkw5NJF2A?F(V{G;yoU+~_N{=&9a-N4rIE6X>wN4#%1*QifW|J}9z zo8ueS0=Mf&1QzUm>lFEIeu~rV+=jn1X3m|tv~J$>d8dmWS?Zl*{*b%-;pNY(JNUkf z9^U*mZSIPB-FNLbd|1eNDe9$qZl9M*PHR`CeT zUR8qm-3D{1?(-=0xYB>q;L}NAN3?IQ`_5YOsbR~?liv5!4s<>`lJ9B%^6}xm2HmRXOrKVs zk3GlYe7W<&Cg<1tu9qc=O?a>SVu!{~g)YV0XMZn9TH(@`BI$dLebH-%J?oBhePL!; zu$-Y{bMuw-rR&SrMLWDQVc66(gYWt>hX_e#38t4zzu%VVoXgu}WVXR{&ct(EVG~#6 zO!>A*QR(!T`BUP`Hn+agE7WHYNl-br!(p;x!PSYsPy6UsyMD~h`tU*GsHfv3wc7=M o+B*9G^D2Q#SP*E~{7Lr!gXGRxK@z(}4uM2GUHx3vIVCg!03J;dv;Y7A literal 0 HcmV?d00001 diff --git a/resources/images/menu/add_color.png b/resources/images/menu/add_color.png new file mode 100644 index 0000000000000000000000000000000000000000..69a3904f2d83de5524687013c0d1adbc5668e2eb GIT binary patch literal 1538 zcmaJF?VGqOylGP7L~aDV9DJvC1k(||9-dwhDh89 zznkSi9E^qVlXI$AVnJ1&+gDZU)8p{$Y{(GC1ObZRy-=7c3vgK22oLLG!a9DegrQ*w zUuuM(nDRKBkcDOmC`*B4_z(>OX;1~K&eUqPvmh0MB1%N1L{%B67E`M*1c62dEJS1R zV$5Z=jl>dmM%d5u45n0uLLo&+t)STwC92o!;~FYehJeW6Dg(SXoDtxrjw)CQ&c~7r zPtpM>uIMeIgS-(IoIZI1#f-@YxREpo2~&o>j1pBK@h6P}9ghEpQq&ll<6Xp4zt0rr z+?5QWbP*gKWPL*6il@dyF_?uVygbdiX}WAQi%vhy)104XAj^U*$l>*of%twH?{HxD z0LOa+KEiG_!h(W=BymiSst~;eHCeQ_Occ#kn^h*0$*Rt>s@2w9l_qzTYo&cbiU{zd zT>L55{9JCl6(~lCY$aH-g1~JoO+mv?#>i)Q(VF!-y)D=FT)h!4{tPcqxHjauT%}+} z887UA3O#xxbWeOa*0#cCtnrC}(Cw_y*6$5HXaGP|VYiyx;hsC&O%^O7RKsdAr^HEcTA2H5uN=$nJLcHRe~cp46UyS{hfi39cRb#q_Z`@?NEs!;En zxNi7zt{u;cl(lWXE?p|>yxVk6ESvPsZCK)am@! zcUj~c28Pm>&+FPSsIJ=b#^FsDJmW9UfBWYH_|V>-Q1Mp7E}I$LR>vg>C~xN+s!jHYEVB&Dyv_Sb9b zcQ*etQIn8dli3{-h=_$T=la5;7{bJ{>?KM;mJH_!UDxp39L>t!=N literal 0 HcmV?d00001 diff --git a/resources/images/menu/fullscreen.png b/resources/images/menu/fullscreen.png new file mode 100644 index 0000000000000000000000000000000000000000..812fa90970b4bb90a6d6cb6d879a80f95fed3539 GIT binary patch literal 1460 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=ip^<^5v!ScAxtochp{uczk)xxdi?OMTv9XJ* zk(nz@uSMv>2~2MaLa!T6y`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-`BkX&zK> z3U0T!;MA)Rbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+3%^q5Pf`Nfa!_&nvq~g|_ z*}h?i3Kc7yS-WMbeypeXR~k`8-7<@A{k?LuDs zW1f8PKVOqi5C4K$5?}sEG59$@Sl0G&MR*>=v9`wku@lQ z<>{tnxBo6r3y@oQBxTP&fmu!;y=_#MWi#%1eu2y3sJMyho0D~nPA;1pmHH(PeRY|y z`QYbN-G<8Mz56^*o>F*QzNkHJ@<-`pXI+L53z=tS-C7}RV6u6agS?q(LOKRjLm+&vO1n=aHXnh(J6k3wUtcQ zOBtjhOZOaEK0{#VJ^`!e7A!uZ=38aA`7+e;K5k!kk9&i09Qy_1jNeCo=3P)>vnlBM zr)KWFc-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=og`1g~p^<^JxvR6Gp{uczk)xxdi?OMTv9XJ* zk(nz@uSMv>2~2MaP_Ma@rG=%NtC_R8n+aCEprnvn0JPa9wJ5VJHN~wcKUV?l zWvfh_ZZUMl?G}jM6fACm_`}c*r(S)aWAs50ixkl?Az=@xcV5c2EM=a>sUUnIZ-QULj0JC5N?OX8 zHZkrid^^|s2-8E`CtM;iSFHN%r~IG1#$#jh^S_U5Zl6D27<)Z%zUswFjlReB-`f^@ zdQES-B)e2|>6Hi7)23*7%|74%Jt)-SyYn$Celx}ipVoX>ow(Hh$Sd~l)Ai`6RI7mj{W^|DE%WhP?{x)rP9p9 zO)oe_R!>t{r(toE+Nlb5hpL8U>YJ8Nx&Jkz=&-ZK!R)OsE`8#NjlKUV=*!VYc?VTh z#}hf#En)LC{=e;CFfZVS9P6=plAo`bF`Qur6)LFU7l%W|vi1$U3GXL<+EW^Li*3U+ z-rou`mSK^s3equEm%d*2>rrsLaVhm-#Lqovujkuxd2sA$uHLZ5X8Y{G-)nE13Td1) zlJUI}S|?xn+937u?qJP#CP7!&3&k|0c9m>0_t<}Uj$Z$=SC8k;U%=pDZE!dWZ2vDV zhl;4_vJ56UZ+ZOs%@_V-+S#c3Ic%NzA!dc-awFe#*5>Lk**+uPYuA{J)MhAKhAg*V z^y2xH&I^%`Uae!b;-8%TrQ^R}J%{+iA_+D|pqUG TkK}lkgY5Hk^>bP0l+XkK-ct!K literal 0 HcmV?d00001 diff --git a/resources/images/menu/preferences.png b/resources/images/menu/preferences.png new file mode 100644 index 0000000000000000000000000000000000000000..3a07a4d922742a2615ee99f8df48d03350c412e7 GIT binary patch literal 2093 zcmaJ?c~leE9v(;lSp+MKAXUboP?oGffCvZ@HceQggjI)R2obWFMHaE*LRlUKd=21& zVL71aW09ylJysf^r68!#BAXSo1hL99pwucY`X*Lv|9HHaGjs3np6~m9>p8a|JTz#v z!FmG#09J5vEp{Mdpd7!2V-95@n&*qQr# zVJ`qcVYm#Ygh{7SSOOjn(qM2IJR!mc0IzKsLWq?LOTZ+U!{vKp)HlAtfLyjWCfbco zpbP!s6mD>q2#(4MWw5eRS)OdnHXqO{gMtX~UW%p`C?-7|^cRR=&<#hxvIt}XNG9TlF0StG?#>{IKqTM^Bs`IXCAw2wNE8AA{P189 zZz6UwC6XHW!53nAV^Sm%Aq9_5Pfy3CyWj*O4xZ@g>8a5mk+28?E6(IgpbRWuY`d&L zg~copS192M_@G7+N)kvV-WVj(KU3fdKg#mOAIgLj44(lB@kAU!lhQJfPXGT<9`7Ss zEQy5wiuZpCiy4_h7#|6X1yT_UX2yj6Uo3(6EI5SfjX@M}TrQj9NhA?G{YfN$_dr)7F~DUz$f%Oq zaiIo~$N|e-s(>Zs!Fnk3k4(D=8Eei|*eL)&*Mw007#ZWUaXUrh zzH7{7Bl?N#4a{WoH)socLM7mF!|KOga)nwZa6m{2U-bjNJ~H1F9VoZ2UQ{Ur;t*M}Y^#TVu*oi?w! z+y>k1iMii;_cvX2+T8u<#dwRNM0%mgSe17w>iOWKk-KW!vU2o8OA;;Pg_Uj2u0;_siX zRkT`sI*RUhOAVWi>B;Muu#%Znv+e4#SIv-Hls(3E&Z%nR1n6FZxPSB$@U;h7eK{sy zj6plzXH17Y_L3g>54t6xacyeUFm7z$uMH=DQ3N`z+xldi#~D-hlf}_@sDF$U^gF*i z$auusU0y6(lqWY1zOnHAUe@1e*uJAMOnQrDq&P}+uFv;U>f4pEj|Iogd~vG<`~B#= zT>`sE%sCdO`%M9_ERXid1nrL9X=w%^Tw_NbQYB){?O z7u)hdy=V)<%EofnFE(95drdM}Pw z>jJyy7WdiYEZuN(yCBbwLKey{Qw{eLY_~%DgUCnpjQ+ z6FR=yGN{UDbkKt2F-=vn_HR8q*Vm;vTiX7fs7Cjuwbs_;%$(OL_#u4m^S7X_*>@am zLvg;O^=wrXzvwuMd8TCH+UQ~YDyTwHyxG`wtMOsQ^=q4JCQsFdnuw^>V412x;WpUR zG#lC3&OR4iumE$D^&?8HryiDF zGvKID2C5OqTA4~&um)Q1bod9zL$0{RNtdpBf}f8CGYub>oQ^svZ=SoP8?)nPxxS6g zx$C?7b}u-t>oV2`RXa}mrrUN0fG2Ut3LO5<)XR3Ljppn&D-}L{VxJi BOAr76 literal 0 HcmV?d00001 diff --git a/resources/images/menu/record.png b/resources/images/menu/record.png new file mode 100644 index 0000000000000000000000000000000000000000..24ab1bc0746c0c763be2555512f2c237f90a41d9 GIT binary patch literal 1446 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=QiIcITk&%Mv>2~2MaLa#GUy`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-|YNX&zK> z3U0SJ;?%1Tbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+3UHm%YBm)DJl&6bhNX4x; zvmJw)4Mf_QA4lDMac$R?UYUh^8Rt0IHooPYBD}@caj#=_a}jgl;@j&=o8uVbk6oX* zk|(HE)AQ&5nLejgR4U^+_J}uyi?qJl1k8dE&=Aj6InT<*j{oI**`*oE)gL~7o3xI9 zMa<4aQ$DdR-BZ2p@$sEgt}maT>iU`6i*xGfZKmrwbL%E|-T0B(`f>M!yyBC!0@Lqr zm?O7!!BOqd?SDN4*4<_jh%`z~za&uebe@ai4h{#Arqv8b6n5}9ur$49_{ZzWtm*5j~}Objp_HX3MtRoG4gXDE#h0j9n?WV}@ygwv>gSHkhsWlh*&r+=QBv%h)cR?; mX_B<+_ehWnF61)IXX0Tfzr1@_D0gQ%NXXOG&t;ucLK6VGi~`yK literal 0 HcmV?d00001 diff --git a/resources/images/menu/reseaux.png b/resources/images/menu/reseaux.png new file mode 100644 index 0000000000000000000000000000000000000000..668997f21907318086c1625486d7ece39c27a8a7 GIT binary patch literal 1558 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 MSQsLx2#Cx62M)~6s{jB1 literal 0 HcmV?d00001 diff --git a/resources/images/menu/webcam.png b/resources/images/menu/webcam.png new file mode 100644 index 0000000000000000000000000000000000000000..6ce6e4fc85422b3f79318bf1b7f62c452b048316 GIT binary patch literal 2147 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 RzgjZ@fv2mV%Q~loCICyKBrgB} literal 0 HcmV?d00001 diff --git a/resources/images/shapes/add_quad.png b/resources/images/shapes/add_quad.png new file mode 100644 index 0000000000000000000000000000000000000000..e2dc2667f41e27367e05fd8a2fcacc61609ffc56 GIT binary patch literal 1334 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=Yp^=N5xuc`Axtochp{uczk)xxdi?OMTv9XJ* zk(nz@uSMv>2~2MaLa!4}y`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-|YJX&zK> z3U0Sp;?%1Tbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+3?R~O}iGhJ}m8XkiNX4x; zvo?Akc91yw{>V~I-|~xB9q;Vw=zgiRW7iLL3$C(j6Lv)%43wD@8^axIBVPDYjc;Ao zZqdtz_riNZu3UR^Dt7k!y{fI&Mc@CP*t^HuU(Hj=BHPbE9GvIC#D}Xjznr}^AN{a> z5VYg@RMDjm^ci;j$gWLfcDTO!%Tl{NEKF(s^$h$B4T{2Bmd3sJm2pvj^z!FZ_uH2q zHCb?dZ+#!$#htKTu(Qnl@5NiP47)7s_1+0pTxFfL!;<;o>(;1c|0eH|_YpvHP(m0($Z?f}tB!7FRC)cJ*)MwGhsCE(FbkQb z?vb38Dp@bm$}YmwkQBE2S6b7&@O7K*w0>u{<;-ik^5-EV!k7bL@=QDo^X+=BIviuX P1`_vl^>bP0l+XkK$cWB_ literal 0 HcmV?d00001 diff --git a/resources/images/shapes/add_triangle.png b/resources/images/shapes/add_triangle.png new file mode 100644 index 0000000000000000000000000000000000000000..fbb7a136998315cf1d1934cdce835e73199eb37f GIT binary patch literal 1623 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 H2;coTAKD2z literal 0 HcmV?d00001 diff --git a/resources/images/shapes/timeline.png b/resources/images/shapes/timeline.png new file mode 100644 index 0000000000000000000000000000000000000000..719370b7feff970fc4bc6aea2bbdd9d89811dd4b GIT binary patch literal 1221 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=Iqobv%iGicDxtochp{uczk)xxdi?OMTv9XJ* zk(nz@uSMv>2~2MaLa!4}y`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-|YJX&zK> z3U0Sp;?%1Tbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+39miy&%fP^B>FMGaQgQ3e z&C|S14gw8{25|?vWf#Z>G)-|}-P+BeR~wOnJBQyVL@gH@mtw^W9wjvNslH8klZ-&HC@> z-TfIiw=bP#ar8c)`X#uw4-OgZV4devbVwn~&AY{tII| z$@0nn*BZu!&p1vRx96!I&_i(tkaNJ~vEBg&uSLFVU))x+2FZH5`njxgN@xNAr`(o` literal 0 HcmV?d00001 diff --git a/resources/images/shapes/warping.png b/resources/images/shapes/warping.png new file mode 100644 index 0000000000000000000000000000000000000000..ed60e3c721b607b550e80ea238172ce85e36032e GIT binary patch literal 1310 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=Iqobv%iJ_6Rxtochp{uczk)xxdi?OMTv9XJ* zk(nz@uSMv>2~2MaP_L`8sfC%NlQT}eprnvn0JPa9wJ5VJHN~wcKUV?lWvfiw zZZW`V9#n4%7PmnCVTe<&KF~4xpom3^XqXT%^?;c0WDDfL6MkwQFtrx}lePH-egg&u z#z~$ojv*Dd-psm~+iW1vw(ynr3vY9dyA8av`X+GR618%C$r7tLS3z0jZiC}R*}{J!}?OqDE~ZNBR@a#xG5mwC)yeYdk-yX01domKFz_{rBB zxL0p_^ROa!L*~C-wALBQHu1WBJQlL; z;1nT_049Cr?m+WsJJ)b6pizrUx3Tc+G(lX{P;mRf>P?5M#bPB5=Jn_Ks;_v%;y#z{ zXua%X*}u1bP4JUG@BV#-9sdl;g0sHUuNFTydGpe1X6`l6%iZ&P$wawtSxxRgSq9tYCS?@oD{X y6Q|oVomb@Y)nzyQ%|0o-78v|!Ktb=fcmhM+(nVLdu4di@lJs=-b6Mw<&;$Ure8Cz3 literal 0 HcmV?d00001 From 85ee38f9af7a139d94dd0d47765d859fdcf3a93a Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 29 Apr 2014 23:00:13 -0400 Subject: [PATCH 04/37] Include Mike's icon paths in QActions --- MainWindow.cpp | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index 1b02ca6..5017683 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -836,40 +836,40 @@ void MainWindow::createActions() { // New. newAction = new QAction(tr("&New"), this); - newAction->setIcon(QIcon(":/images/document-new-4.png")); + newAction->setIcon(QIcon(":/new")); newAction->setShortcut(QKeySequence::New); newAction->setStatusTip(tr("Create a new project")); connect(newAction, SIGNAL(triggered()), this, SLOT(newFile())); // Open. openAction = new QAction(tr("&Open..."), this); - openAction->setIcon(QIcon(":/images/document-open-3.png")); + openAction->setIcon(QIcon(":/open")); openAction->setShortcut(QKeySequence::Open); openAction->setStatusTip(tr("Open an existing project")); connect(openAction, SIGNAL(triggered()), this, SLOT(open())); // Save. saveAction = new QAction(tr("&Save"), this); - saveAction->setIcon(QIcon(":/images/document-save-2.png")); + saveAction->setIcon(QIcon(":/save")); saveAction->setShortcut(QKeySequence::Save); saveAction->setStatusTip(tr("Save the project")); connect(saveAction, SIGNAL(triggered()), this, SLOT(save())); // Save as. saveAsAction = new QAction(tr("Save &As..."), this); - saveAsAction->setIcon(QIcon(":/images/document-save-as-2.png")); + saveAsAction->setIcon(QIcon(":/save-as")); saveAsAction->setStatusTip(tr("Save the project as...")); connect(saveAsAction, SIGNAL(triggered()), this, SLOT(saveAs())); // Import media. importAction = new QAction(tr("&Import media source file..."), this); - importAction->setIcon(QIcon(":/images/document-import-2.png")); + importAction->setIcon(QIcon(":/add-media")); importAction->setStatusTip(tr("Import a media source file...")); connect(importAction, SIGNAL(triggered()), this, SLOT(import())); // Add color. addColorAction = new QAction(tr("Add &Color paint..."), this); - addColorAction->setIcon(QIcon(":/images/colorize.png")); + addColorAction->setIcon(QIcon(":/add-color")); addColorAction->setStatusTip(tr("Add a color paint...")); connect(addColorAction, SIGNAL(triggered()), this, SLOT(addColor())); @@ -916,7 +916,7 @@ void MainWindow::createActions() // Add quad/mesh. addMeshAction = new QAction(tr("Add Quad/&Mesh"), this); addMeshAction->setShortcut(tr("CTRL+M")); - addMeshAction->setIcon(QIcon(":/images/draw-rectangle-2.png")); + addMeshAction->setIcon(QIcon(":/add-mesh")); addMeshAction->setStatusTip(tr("Add quad/mesh")); connect(addMeshAction, SIGNAL(triggered()), this, SLOT(addMesh())); addMeshAction->setEnabled(false); @@ -924,7 +924,7 @@ void MainWindow::createActions() // Add triangle. addTriangleAction = new QAction(tr("Add &Triangle"), this); addTriangleAction->setShortcut(tr("CTRL+T")); - addTriangleAction->setIcon(QIcon(":/images/draw-triangle.png")); + addTriangleAction->setIcon(QIcon(":/add-triangle")); addTriangleAction->setStatusTip(tr("Add triangle")); connect(addTriangleAction, SIGNAL(triggered()), this, SLOT(addTriangle())); addTriangleAction->setEnabled(false); @@ -932,7 +932,7 @@ void MainWindow::createActions() // Add ellipse. addEllipseAction = new QAction(tr("Add &Ellipse"), this); addEllipseAction->setShortcut(tr("CTRL+E")); - addEllipseAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + addEllipseAction->setIcon(QIcon(":/add-ellipse")); addEllipseAction->setStatusTip(tr("Add ellipse")); connect(addEllipseAction, SIGNAL(triggered()), this, SLOT(addEllipse())); addEllipseAction->setEnabled(false); @@ -950,6 +950,7 @@ void MainWindow::createActions() // Toggle display of output window. outputWindowFullScreen = new QAction(tr("&Full screen"), this); + outputWindowFullScreen->setIcon(QIcon(":/fullscreen")); outputWindowFullScreen->setShortcut(tr("Ctrl+F")); outputWindowFullScreen->setStatusTip(tr("Full screen")); outputWindowFullScreen->setCheckable(true); @@ -1292,7 +1293,7 @@ void MainWindow::addMappingItem(uid mappingId) if (shapeType == "triangle") { label = QString("Triangle %1").arg(mappingId); - icon = QIcon(":/images/draw-triangle.png"); + icon = QIcon(":/shape-triangle"); if (paintType == "color") mapper = Mapper::ptr(new PolygonColorMapper(mapping)); @@ -1303,7 +1304,7 @@ void MainWindow::addMappingItem(uid mappingId) else if (shapeType == "mesh" || shapeType == "quad") { label = QString(shapeType == "mesh" ? "Mesh %1" : "Quad %1").arg(mappingId); - icon = QIcon(":/images/draw-rectangle-2.png"); + icon = QIcon(":/shape-mesh"); if (paintType == "color") mapper = Mapper::ptr(new PolygonColorMapper(mapping)); else @@ -1312,7 +1313,7 @@ void MainWindow::addMappingItem(uid mappingId) else if (shapeType == "ellipse") { label = QString("Ellipse %1").arg(mappingId); - icon = QIcon(":/images/draw-ellipse-2.png"); + icon = QIcon(":/shape-ellipse"); if (paintType == "color") mapper = Mapper::ptr(new EllipseColorMapper(mapping)); else @@ -1321,7 +1322,7 @@ void MainWindow::addMappingItem(uid mappingId) else { label = QString("Polygon %1").arg(mappingId); - icon = QIcon(":/images/draw-polygon-2.png"); + icon = QIcon(":/shape-polygon"); } // Add to list of mappers. From 996b408ba480e7782571df100e99c0fd8d4f5ed9 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 29 Apr 2014 23:00:41 -0400 Subject: [PATCH 05/37] Remove text under buttons in toolbar --- MainWindow.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index 5017683..7215190 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -1036,7 +1036,6 @@ void MainWindow::createContextMenu() void MainWindow::createToolBars() { fileToolBar = addToolBar(tr("&File")); - fileToolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); fileToolBar->addAction(importAction); fileToolBar->addAction(addColorAction); fileToolBar->addAction(newAction); From 3698abaf306f3656715f03fc40234ea987b07df6 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 29 Apr 2014 23:01:04 -0400 Subject: [PATCH 06/37] Set font to Helvetica Neue LTP (bold) --- main.cpp | 4 ++++ mapmap.qrc | 1 + 2 files changed, 5 insertions(+) diff --git a/main.cpp b/main.cpp index c33c2af..2f92f9e 100644 --- a/main.cpp +++ b/main.cpp @@ -26,6 +26,10 @@ int main(int argc, char *argv[]) // Create main window. MainWindow win; + QFontDatabase db; + Q_ASSERT( QFontDatabase::addApplicationFont(":/base-font") != -1); + app.setFont(QFont(":/base-font", 10, QFont::Bold)); + // Load stylesheet. QFile stylesheet("mapmap.qss"); stylesheet.open(QFile::ReadOnly); diff --git a/mapmap.qrc b/mapmap.qrc index a8907e3..2167fbc 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -20,6 +20,7 @@ resources/images/shapes/add_circle.png + resources/fonts/HelveticaNeueLTPro-Bd.otf From 62ed1d290d1e924ccaf25d9aef5e989e86f9252f Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 30 Apr 2014 12:54:50 -0400 Subject: [PATCH 07/37] Partial integration of dark background --- mapmap.qss | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/mapmap.qss b/mapmap.qss index 1134e62..70ed94e 100644 --- a/mapmap.qss +++ b/mapmap.qss @@ -7,6 +7,43 @@ Darker gray: #272a36 QMainWindow { - background-color: #f6f5f5; +/* background-color: #f6f5f5;*/ + background-color: #272a36; } +QToolButton { + color: #f6f5f5; +} + +QListView { + background-color: #323541; + border: 1px solid #323541; +} + +QListView::item { + color: #f6f5f5; +} + +QListView::item:alternate { + background: #EEEEEE; + } + + QListView::item:selected { + background: #272a36; + } + +/* + QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, + stop: 0 #ABAFE5, stop: 1 #8588B2); + } + + QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, + stop: 0 #6a6ea9, stop: 1 #888dd9); + } + + QListView::item:hover { + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, + stop: 0 #FAFBFE, stop: 1 #DCDEF1); + }*/ \ No newline at end of file From 64889af9a970610b765b06ddc0b1021a8cf144f5 Mon Sep 17 00:00:00 2001 From: Alexandre Quessy Date: Mon, 23 Jun 2014 12:27:54 -0400 Subject: [PATCH 08/37] Fixed OSX-related runtime errors that were making the application crash --- MainWindow.cpp | 23 +++++++++++++++-------- MapperGLCanvas.cpp | 6 +----- build.sh | 33 ++++++++++++++++++++++++++++----- mapmap.pro | 8 +++----- 4 files changed, 47 insertions(+), 23 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index b0ce053..d10d3dd 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -827,7 +827,6 @@ void MainWindow::createLayout() propertyPanel->setMinimumWidth(PROPERTY_PANEL_MINIMUM_WIDTH); // Create canvases. - sourceCanvas = new SourceGLCanvas(this); sourceCanvas->setFocusPolicy(Qt::ClickFocus); sourceCanvas->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); @@ -858,7 +857,6 @@ void MainWindow::createLayout() destinationCanvas, SLOT(updateCanvas())); // Create layout. - resourceSplitter = new QSplitter(Qt::Horizontal); resourceSplitter->addWidget(paintList); resourceSplitter->addWidget(mappingList); @@ -1026,7 +1024,7 @@ void MainWindow::createActions() // Toggle display of canvas controls. displayCanvasControls = new QAction(tr("&Display canvas controls"), this); -// displayCanvasControls->setShortcut(tr("Ctrl+E")); + // displayCanvasControls->setShortcut(tr("Ctrl+E")); displayCanvasControls->setStatusTip(tr("Display canvas controls")); displayCanvasControls->setCheckable(true); displayCanvasControls->setChecked(true); @@ -1038,8 +1036,17 @@ void MainWindow::createActions() void MainWindow::createMenus() { - // File. - fileMenu = menuBar()->addMenu(tr("&File")); + QMenuBar *menuBar = NULL; + +#ifdef __MACOSX_CORE__ + menuBar = new QMenuBar(0); + //this->setMenuBar(menuBar); +#else + menuBar = this->menuBar(); +#endif + + // File + fileMenu = menuBar->addMenu(tr("&File")); fileMenu->addAction(newAction); fileMenu->addAction(openAction); fileMenu->addAction(saveAction); @@ -1051,14 +1058,14 @@ void MainWindow::createMenus() fileMenu->addAction(exitAction); // Edit. - editMenu = menuBar()->addMenu(tr("&Edit")); + editMenu = menuBar->addMenu(tr("&Edit")); // editMenu->addAction(cutAction); // editMenu->addAction(copyAction); // editMenu->addAction(pasteAction); editMenu->addAction(deleteAction); // View. - viewMenu = menuBar()->addMenu(tr("&View")); + viewMenu = menuBar->addMenu(tr("&View")); viewMenu->addAction(displayOutputWindow); viewMenu->addAction(outputWindowFullScreen); viewMenu->addAction(displayCanvasControls); @@ -1081,7 +1088,7 @@ void MainWindow::createMenus() // optionsMenu->addAction(autoRecalcAction); // Help. - helpMenu = menuBar()->addMenu(tr("&Help")); + helpMenu = menuBar->addMenu(tr("&Help")); helpMenu->addAction(aboutAction); // helpMenu->addAction(aboutQtAction); } diff --git a/MapperGLCanvas.cpp b/MapperGLCanvas.cpp index c51f409..2616323 100644 --- a/MapperGLCanvas.cpp +++ b/MapperGLCanvas.cpp @@ -23,7 +23,7 @@ #include "MainWindow.h" MapperGLCanvas::MapperGLCanvas(MainWindow* mainWindow, QWidget* parent, const QGLWidget * shareWidget) - : QGLWidget(parent, shareWidget), _mainWindow(mainWindow), _mousepressed(false), _activeVertex(NO_VERTEX), _displayControls(true) + : QGLWidget(QGLFormat(QGL::SampleBuffers), parent, shareWidget), _mainWindow(mainWindow), _mousepressed(false), _activeVertex(NO_VERTEX), _displayControls(true) { } @@ -31,14 +31,10 @@ void MapperGLCanvas::initializeGL() { // Clear to black. qglClearColor(Qt::black); - - // Antialiasing options. - QGLWidget::setFormat(QGLFormat(QGL::SampleBuffers)); } void MapperGLCanvas::resizeGL(int width, int height) { - //qDebug() << "Resize to " << width << "x" << height << endl; glViewport(0, 0, width, height); glMatrixMode (GL_PROJECTION); glLoadIdentity (); diff --git a/build.sh b/build.sh index 1e368b1..fb22d21 100755 --- a/build.sh +++ b/build.sh @@ -1,6 +1,22 @@ #!/bin/bash # Install qt4-default qt4-qmake # On Mac, install it from http://qt-project.org/downloads +# set -o verbose + +do_fix_qt_plugins_in_app() { + appdir=./MapMap.app + qtdir=~/Qt/5.3/clang_64 + # install libqcocoa library + mkdir -p $appdir/Contents/PlugIns/platforms + cp $qtdir/plugins/platforms/libqcocoa.dylib $appdir/Contents/PlugIns/platforms + # fix its identity and references to others + install_name_tool -id @executable_path/../PlugIns/platforms/libqcocoa.dylib $appdir/Contents/PlugIns/platforms/libqcocoa.dylib + install_name_tool -change $qtdir/lib/QtWidgets.framework/Versions/5/QtWidgets @executable_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets $appdir/Contents/PlugIns/platforms/libqcocoa.dylib + install_name_tool -change $qtdir/lib/QtGui.framework/Versions/5/QtGui @executable_path/../Frameworks/QtGui.framework/Versions/5/QtGui $appdir/Contents/PlugIns/platforms/libqcocoa.dylib + install_name_tool -change $qtdir/lib/QtCore.framework/Versions/5/QtCore @executable_path/../Frameworks/QtCore.framework/Versions/5/QtCore $appdir/Contents/PlugIns/platforms/libqcocoa.dylib + install_name_tool -change $qtdir/lib/QtXml.framework/Versions/5/QtXml @executable_path/../Frameworks/QtXml.framework/Versions/5/QtXml $appdir/Contents/PlugIns/platforms/libqcocoa.dylib + install_name_tool -change $qtdir/lib/QtOpenGL.framework/Versions/5/QtOpenGL @executable_path/../Frameworks/QtOpenGL.framework/Versions/5/QtOpenGL $appdir/Contents/PlugIns/platforms/libqcocoa.dylib +} unamestr=$(uname) @@ -11,17 +27,24 @@ if [[ $unamestr == "Darwin" ]]; then #export QMAKE_CFLAGS_PPC_64 export QMAKESPEC=macx-g++ #export QMAKESPEC=macx-xcode - PATH=$PATH:~/Qt5.2.1/5.2.1/clang_64/bin - qmake5=~/Qt5.2.1/5.2.1/clang_64/bin/qmake + PATH=$PATH:~/Qt5.3/5.3/clang_64/bin + qmake5=~/Qt/5.3/clang_64/bin/qmake # $qmake5 -spec macx-llvm - $qmake5 -config release -spec macx-llvm - macdeployqt MapMap.app + + # XXX + #$qmake5 -config release -spec macx-llvm + #$qmake5 -config debug -spec macx-llvm + #$qmake5 -config release -spec macx-llvm + #$qmake5 -config debug -spec macx-g++ + $qmake5 -config release -spec macx-g++ + make + macdeployqt MapMap.app lrelease mapmap_fr.ts + # do_fix_qt_plugins_in_app elif [[ $unamestr == "Linux" ]]; then qmake-qt4 make lrelease mapmap_fr.ts fi - diff --git a/mapmap.pro b/mapmap.pro index 675d623..b591c14 100644 --- a/mapmap.pro +++ b/mapmap.pro @@ -2,8 +2,7 @@ CONFIG += qt debug TEMPLATE = app VERSION = 0.1.1 TARGET = mapmap -QT += gui opengl xml -CONFIG += qt debug +QT += gui opengl xml widgets DEFINES += UNICODE QT_THREAD_SUPPORT QT_CORE_LIB QT_GUI_LIB HEADERS = \ @@ -49,7 +48,6 @@ SOURCES = \ Util.cpp \ main.cpp -QT += gui opengl xml RESOURCES = mapmap.qrc TRANSLATIONS = mapmap_fr.ts mapmap_ar.ts include(contrib/qtpropertybrowser/src/qtpropertybrowser.pri) @@ -81,9 +79,9 @@ mac { LIBS += -F /Library/Frameworks/ -framework GStreamer LIBS += -framework OpenGL -framework GLUT # With Xcode Tools > 1.5, to reduce the size of your binary even more: - LIBS += -dead_strip - QMAKE_CXXFLAGS += -D__MACOSX_CORE__ + # LIBS += -dead_strip # This tells qmake not to put the executable inside a bundle. + # just for reference. Do not uncomment. # CONFIG-=app_bundle } From b02dc5e62217a149af62d3787f4bb8a73b369617 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 16:20:52 -0400 Subject: [PATCH 09/37] Bug fix: in Qt5 the layoutChanged() did not work anymore for the layer reordering --- MainWindow.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index d10d3dd..091b2e6 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -1539,7 +1539,10 @@ void MainWindow::connectProjectWidgets() connect(mappingList, SIGNAL(itemActivated(QListWidgetItem*)), this, SLOT(handleItemSelected(QListWidgetItem*))); - connect(mappingList->model(), SIGNAL(layoutChanged()), + connect(mappingList, SIGNAL(indexesMoved(const QModelIndexList&)), + this, SLOT(handleMappingIndexesMoved())); + + connect(mappingList->model(), SIGNAL(rowsMoved(const QModelIndex&, int, int, const QModelIndex &, int)), this, SLOT(handleMappingIndexesMoved())); } @@ -1566,7 +1569,7 @@ void MainWindow::disconnectProjectWidgets() disconnect(mappingList, SIGNAL(itemActivated(QListWidgetItem*)), this, SLOT(handleItemSelected(QListWidgetItem*))); - disconnect(mappingList->model(), SIGNAL(layoutChanged()), + disconnect(mappingList->model(), SIGNAL(rowsMoved(const QModelIndex&, int, int, const QModelIndex &, int)), this, SLOT(handleMappingIndexesMoved())); } From cb0deae5f159044a7231e038381a4e7dba2e696e Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 16:54:44 -0400 Subject: [PATCH 10/37] Base implementation of play/pause/rewind (working, still adjustments to do in the GUI) --- MainWindow.cpp | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++ MainWindow.h | 11 ++++++++++- MediaImpl.cpp | 47 +++++++++++++++++++++------------------------ MediaImpl.h | 5 +++-- Paint.cpp | 15 +++++++++++++++ Paint.h | 17 +++++++++++++++++ 6 files changed, 119 insertions(+), 28 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index 091b2e6..2a49b92 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -420,6 +420,27 @@ void MainWindow::addEllipse() addMappingItem(mappingId); } +void MainWindow::play() +{ + // Start all paints. + for (int i=0; inPaints(); i++) + mappingManager->getPaint(i)->play(); +} + +void MainWindow::pause() +{ + // Pause all paints. + for (int i=0; inPaints(); i++) + mappingManager->getPaint(i)->pause(); +} + +void MainWindow::rewind() +{ + // Rewind all paints. + for (int i=0; inPaints(); i++) + mappingManager->getPaint(i)->rewind(); +} + void MainWindow::about() { // Stop video playback to avoid lags. XXX Hack @@ -997,6 +1018,27 @@ void MainWindow::createActions() connect(addEllipseAction, SIGNAL(triggered()), this, SLOT(addEllipse())); addEllipseAction->setEnabled(false); + // Play. + playAction = new QAction(tr("Play"), this); + playAction->setShortcut(tr("CTRL+P")); + playAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + playAction->setStatusTip(tr("Play")); + connect(playAction, SIGNAL(triggered()), this, SLOT(play())); + + // Pause. + pauseAction = new QAction(tr("Pause"), this); + pauseAction->setShortcut(tr("CTRL+P")); + pauseAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + pauseAction->setStatusTip(tr("Pause")); + connect(pauseAction, SIGNAL(triggered()), this, SLOT(pause())); + + // Pause. + rewindAction = new QAction(tr("Rewind"), this); + rewindAction->setShortcut(tr("CTRL+R")); + rewindAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + rewindAction->setStatusTip(tr("Rewind")); + connect(rewindAction, SIGNAL(triggered()), this, SLOT(rewind())); + // Toggle display of output window. displayOutputWindow = new QAction(tr("&Display output window"), this); displayOutputWindow->setShortcut(tr("Ctrl+D")); @@ -1070,6 +1112,12 @@ void MainWindow::createMenus() viewMenu->addAction(outputWindowFullScreen); viewMenu->addAction(displayCanvasControls); + // Run. + runMenu = menuBar->addMenu(tr("&Run")); + runMenu->addAction(playAction); + runMenu->addAction(pauseAction); + runMenu->addAction(rewindAction); + // selectSubMenu = editMenu->addMenu(tr("&Select")); // selectSubMenu->addAction(selectRowAction); // selectSubMenu->addAction(selectColumnAction); @@ -1114,6 +1162,10 @@ void MainWindow::createToolBars() fileToolBar->addAction(addMeshAction); fileToolBar->addAction(addTriangleAction); fileToolBar->addAction(addEllipseAction); + fileToolBar->addSeparator(); + fileToolBar->addAction(playAction); + fileToolBar->addAction(pauseAction); + fileToolBar->addAction(rewindAction); // editToolBar = addToolBar(tr("&Edit")); // editToolBar->addAction(cutAction); diff --git a/MainWindow.h b/MainWindow.h index 0e81e98..9e9617f 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -97,6 +97,10 @@ private slots: void addTriangle(); void addEllipse(); + void play(); + void pause(); + void rewind(); + // Other. void windowModified(); void pollOscInterface(); @@ -211,8 +215,9 @@ private: // QMenu *selectSubMenu; // QMenu *toolsMenu; // QMenu *optionsMenu; - QMenu *viewMenu; QMenu *editMenu; + QMenu *viewMenu; + QMenu *runMenu; QMenu *helpMenu; // Toolbar. @@ -237,6 +242,10 @@ private: QAction *addTriangleAction; QAction *addEllipseAction; + QAction *playAction; + QAction *pauseAction; + QAction *rewindAction; + QAction *displayOutputWindow; QAction *outputWindowFullScreen; QAction *displayCanvasControls; diff --git a/MediaImpl.cpp b/MediaImpl.cpp index 784fa58..e2d3dcc 100644 --- a/MediaImpl.cpp +++ b/MediaImpl.cpp @@ -422,7 +422,7 @@ bool MediaImpl::loadMovie(QString filename) _bus = gst_element_get_bus (_pipeline); // Start playing. - if (!_setPlayState(true)) + if (!setPlayState(true)) return false; qDebug() << "Pipeline started."; @@ -431,7 +431,6 @@ bool MediaImpl::loadMovie(QString filename) return true; } - bool MediaImpl::runVideo() { // if (!_VIDEO_OUT->connected()) @@ -475,6 +474,25 @@ bool MediaImpl::runVideo() { return bitsChanged; } +bool MediaImpl::setPlayState(bool play) +{ + if (_pipeline == NULL) + return false; + + GstStateChangeReturn ret = gst_element_set_state (_pipeline, (play ? GST_STATE_PLAYING : GST_STATE_PAUSED)); + if (ret == GST_STATE_CHANGE_FAILURE) + { + qDebug() << "Unable to set the pipeline to the playing state."; + unloadMovie(); + return false; + } + else + { + _setReady(play); + + return true; + } +} //void VideoImpl::runAudio() { // @@ -618,27 +636,6 @@ void MediaImpl::_postRun() } } - -bool MediaImpl::_setPlayState(bool play) -{ - if (_pipeline == NULL) - return false; - - GstStateChangeReturn ret = gst_element_set_state (_pipeline, (play ? GST_STATE_PLAYING : GST_STATE_PAUSED)); - if (ret == GST_STATE_CHANGE_FAILURE) - { - qDebug() << "Unable to set the pipeline to the playing state."; - unloadMovie(); - return false; - } - else - { - _setReady(play); - - return true; - } -} - void MediaImpl::_setReady(bool ready) { _movieReady = ready; @@ -762,12 +759,12 @@ exit: void MediaImpl::internalPrePlay() { // Start/resume playback. - _setPlayState(true); + setPlayState(true); } void MediaImpl::internalPostPlay() { // Pause playback. - _setPlayState(false); + setPlayState(false); } diff --git a/MediaImpl.h b/MediaImpl.h index 3de0edc..f35336f 100644 --- a/MediaImpl.h +++ b/MediaImpl.h @@ -60,10 +60,12 @@ public: // void runAudio(); bool loadMovie(QString filename); + bool setPlayState(bool play); + void resetMovie(); + protected: void unloadMovie(); void freeResources(); - void resetMovie(); void internalPrePlay(); void internalPostPlay(); @@ -76,7 +78,6 @@ private: bool _preRun(); void _postRun(); - bool _setPlayState(bool play); void _setReady(bool ready); void _setFinished(bool finished); diff --git a/Paint.cpp b/Paint.cpp index b201781..8ea95c8 100644 --- a/Paint.cpp +++ b/Paint.cpp @@ -80,6 +80,21 @@ void Media::update() { bitsChanged = true; } +void Media::play() +{ + impl_->setPlayState(true); +} + +void Media::pause() +{ + impl_->setPlayState(false); +} + +void Media::rewind() +{ + impl_->resetMovie(); +} + const uchar* Media::_getBits() const { return this->impl_->getBits(); diff --git a/Paint.h b/Paint.h index 19579cb..4c97681 100644 --- a/Paint.h +++ b/Paint.h @@ -67,6 +67,15 @@ public: /// This method should be called at each call of draw(). virtual void update() {} + /// Starts playback. + virtual void play() {} + + /// Pauses playback. + virtual void pause() {} + + /// Rewinds. + virtual void rewind() {} + void setName(const QString& name) { _name = name; } QString getName() const { return _name; } uid getId() const { return _id; } @@ -192,6 +201,14 @@ public: bool setUri(const QString &uri); virtual void build(); virtual void update(); + + /// Starts playback. + virtual void play(); + /// Pauses playback. + virtual void pause(); + /// Rewinds. + virtual void rewind(); + virtual QString getType() const { return "media"; From 96ae61cea84dfed9bbe4fc3dabf056155a894b20 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 17:09:29 -0400 Subject: [PATCH 11/37] Play disables pause and vice-versa --- MainWindow.cpp | 26 ++++++++++++++++++++++++++ MainWindow.h | 1 + 2 files changed, 27 insertions(+) diff --git a/MainWindow.cpp b/MainWindow.cpp index 2a49b92..ee4a0e2 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -43,6 +43,9 @@ MainWindow::MainWindow() _hasCurrentMapping = false; currentSelectedItem = NULL; + // Play state. + _isPlaying = false; + // Create everything. videoTimer = new QTimer(this); videoTimer->setInterval(1000/30); @@ -425,6 +428,11 @@ void MainWindow::play() // Start all paints. for (int i=0; inPaints(); i++) mappingManager->getPaint(i)->play(); + + // Update buttons. + _isPlaying = true; + playAction->setEnabled(!_isPlaying); + pauseAction->setEnabled(_isPlaying); } void MainWindow::pause() @@ -432,6 +440,11 @@ void MainWindow::pause() // Pause all paints. for (int i=0; inPaints(); i++) mappingManager->getPaint(i)->pause(); + + // Update buttons. + _isPlaying = false; + playAction->setEnabled(!_isPlaying); + pauseAction->setEnabled(_isPlaying); } void MainWindow::rewind() @@ -1024,6 +1037,7 @@ void MainWindow::createActions() playAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); playAction->setStatusTip(tr("Play")); connect(playAction, SIGNAL(triggered()), this, SLOT(play())); + playAction->setEnabled(!_isPlaying); // Pause. pauseAction = new QAction(tr("Pause"), this); @@ -1031,6 +1045,7 @@ void MainWindow::createActions() pauseAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); pauseAction->setStatusTip(tr("Pause")); connect(pauseAction, SIGNAL(triggered()), this, SLOT(pause())); + pauseAction->setEnabled(_isPlaying); // Pause. rewindAction = new QAction(tr("Rewind"), this); @@ -1337,6 +1352,11 @@ bool MainWindow::importMediaFile(const QString &fileName, Paint::ptr oldPaint) std::tr1::shared_ptr media = std::tr1::static_pointer_cast(mappingManager->getPaintById(mediaId)); Q_CHECK_PTR(media); + if (_isPlaying) + media->play(); + else + media->pause(); + media->setPosition((sourceCanvas->width() - media->getWidth() ) / 2.0f, (sourceCanvas->height() - media->getHeight()) / 2.0f ); @@ -1358,6 +1378,12 @@ bool MainWindow::addColorPaint(const QColor& color, Paint::ptr oldPaint) std::tr1::shared_ptr colorPaint = std::tr1::static_pointer_cast(mappingManager->getPaintById(colorId)); Q_CHECK_PTR(colorPaint); + // Does not do anything... + if (_isPlaying) + colorPaint->play(); + else + colorPaint->pause(); + QApplication::restoreOverrideCursor(); statusBar()->showMessage(tr("Color paint added"), 2000); diff --git a/MainWindow.h b/MainWindow.h index 9e9617f..b111c5b 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -289,6 +289,7 @@ private: uid currentMappingId; bool _hasCurrentMapping; bool _hasCurrentPaint; + bool _isPlaying; // Keeps track of the current selected item, wether it's a paint or mapping. QListWidgetItem* currentSelectedItem; From 0748eda05106e3985f6e6274b6588b8d212ee192 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 17:26:20 -0400 Subject: [PATCH 12/37] Added output window actions to toolbar + dummy buttons --- MainWindow.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/MainWindow.cpp b/MainWindow.cpp index ee4a0e2..b3d84e2 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -1057,6 +1057,7 @@ void MainWindow::createActions() // Toggle display of output window. displayOutputWindow = new QAction(tr("&Display output window"), this); displayOutputWindow->setShortcut(tr("Ctrl+D")); + displayOutputWindow->setIcon(QIcon(":/images/draw-ellipse-2.png")); displayOutputWindow->setStatusTip(tr("Display output window")); displayOutputWindow->setCheckable(true); displayOutputWindow->setChecked(true); @@ -1068,6 +1069,7 @@ void MainWindow::createActions() // Toggle display of output window. outputWindowFullScreen = new QAction(tr("&Full screen"), this); outputWindowFullScreen->setShortcut(tr("Ctrl+F")); + outputWindowFullScreen->setIcon(QIcon(":/images/draw-ellipse-2.png")); outputWindowFullScreen->setStatusTip(tr("Full screen")); outputWindowFullScreen->setCheckable(true); outputWindowFullScreen->setChecked(false); @@ -1082,6 +1084,7 @@ void MainWindow::createActions() // Toggle display of canvas controls. displayCanvasControls = new QAction(tr("&Display canvas controls"), this); // displayCanvasControls->setShortcut(tr("Ctrl+E")); + displayCanvasControls->setIcon(QIcon(":/images/draw-ellipse-2.png")); displayCanvasControls->setStatusTip(tr("Display canvas controls")); displayCanvasControls->setCheckable(true); displayCanvasControls->setChecked(true); @@ -1181,6 +1184,10 @@ void MainWindow::createToolBars() fileToolBar->addAction(playAction); fileToolBar->addAction(pauseAction); fileToolBar->addAction(rewindAction); + fileToolBar->addSeparator(); + fileToolBar->addAction(displayOutputWindow); + fileToolBar->addAction(outputWindowFullScreen); + fileToolBar->addAction(displayCanvasControls); // editToolBar = addToolBar(tr("&Edit")); // editToolBar->addAction(cutAction); From 4a4b1f05b28d2e2dabdb211db2dd9aa715b861e6 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 18:30:49 -0400 Subject: [PATCH 13/37] Cosmetic refactoring and variable inits --- Mapper.cpp | 3 ++- MapperGLCanvas.cpp | 24 +++++++++++++++--------- MapperGLCanvas.h | 4 ++-- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/Mapper.cpp b/Mapper.cpp index 0d33a38..594e77e 100644 --- a/Mapper.cpp +++ b/Mapper.cpp @@ -223,7 +223,8 @@ void EllipseColorMapper::drawControls(QPainter* painter) TextureMapper::TextureMapper(std::tr1::shared_ptr mapping) - : Mapper(mapping) + : Mapper(mapping), + _meshItem(NULL) { // Assign members pointers. textureMapping = std::tr1::static_pointer_cast(_mapping); diff --git a/MapperGLCanvas.cpp b/MapperGLCanvas.cpp index 2616323..6b09fa3 100644 --- a/MapperGLCanvas.cpp +++ b/MapperGLCanvas.cpp @@ -23,7 +23,13 @@ #include "MainWindow.h" MapperGLCanvas::MapperGLCanvas(MainWindow* mainWindow, QWidget* parent, const QGLWidget * shareWidget) - : QGLWidget(QGLFormat(QGL::SampleBuffers), parent, shareWidget), _mainWindow(mainWindow), _mousepressed(false), _activeVertex(NO_VERTEX), _displayControls(true) + : QGLWidget(QGLFormat(QGL::SampleBuffers), parent, shareWidget), + _mainWindow(mainWindow), + _mousepressed(false), + _activeVertex(NO_VERTEX), + _shapeGrabbed(false), + _shapeFirstGrab(false), + _displayControls(true) { } @@ -110,8 +116,8 @@ void MapperGLCanvas::mousePressEvent(QMouseEvent* event) Shape* shape = getCurrentShape(); if (shape && shape->includesPoint(xmouse, ymouse)) { - _shapegrabbed = true; - _shapefirstgrab = true; + _shapeGrabbed = true; + _shapeFirstGrab = true; } } } @@ -121,7 +127,7 @@ void MapperGLCanvas::mouseReleaseEvent(QMouseEvent* event) Q_UNUSED(event); // std::cout << "Mouse Release event " << std::endl; _mousepressed = false; - _shapegrabbed = false; + _shapeGrabbed = false; } void MapperGLCanvas::mouseMoveEvent(QMouseEvent* event) @@ -146,21 +152,21 @@ void MapperGLCanvas::mouseMoveEvent(QMouseEvent* event) emit shapeChanged(getCurrentShape()); } } - else if (_shapegrabbed) + else if (_shapeGrabbed) { // std::cout << "Move event " << std::endl; Shape* shape = getCurrentShape(); static QPointF prevMousePosition(0,0); // point that keeps track of last position of the mouse if (shape) { - if (!_shapefirstgrab) + if (!_shapeFirstGrab) { shape->translate(event->x() - prevMousePosition.x(), event->y() - prevMousePosition.y()); update(); emit shapeChanged(getCurrentShape()); } else - _shapefirstgrab = false; + _shapeFirstGrab = false; } // Update previous mouse position. prevMousePosition.setX( event->x() ); @@ -268,7 +274,7 @@ void MapperGLCanvas::glueVertex(Shape *orig, QPointF *p) void MapperGLCanvas::deselectAll() { _activeVertex = NO_VERTEX; - _shapegrabbed = false; - _shapefirstgrab = false; + _shapeGrabbed = false; + _shapeFirstGrab = false; _mousepressed = false; } diff --git a/MapperGLCanvas.h b/MapperGLCanvas.h index 7635f35..ddd3538 100644 --- a/MapperGLCanvas.h +++ b/MapperGLCanvas.h @@ -73,8 +73,8 @@ private: MainWindow* _mainWindow; bool _mousepressed; int _activeVertex; - bool _shapegrabbed; - bool _shapefirstgrab; + bool _shapeGrabbed; + bool _shapeFirstGrab; bool _displayControls; signals: From 7fc4f711c59de76ffd33fecf8249ae9faf52eb34 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 21:47:29 -0400 Subject: [PATCH 14/37] Integration of new icons --- MainWindow.cpp | 12 +++++----- mapmap.qrc | 26 ++++++++++++++++------ resources/images/icons/ad_cer.png | Bin 0 -> 1841 bytes resources/images/icons/ad_cerl_2.png | Bin 0 -> 1872 bytes resources/images/icons/ad_cerl_w.png | Bin 0 -> 1765 bytes resources/images/icons/ad_quad.png | Bin 0 -> 915 bytes resources/images/icons/ad_quad_2.png | Bin 0 -> 937 bytes resources/images/icons/ad_quad_w.png | Bin 0 -> 912 bytes resources/images/icons/ad_tri_.png | 0 resources/images/icons/ad_tri_2.png | Bin 0 -> 1565 bytes resources/images/icons/ad_tri_w.png | Bin 0 -> 1512 bytes resources/images/icons/add_color.png | Bin 0 -> 4755 bytes resources/images/icons/add_color_w.png | Bin 0 -> 4446 bytes resources/images/icons/add_img.png | Bin 0 -> 2039 bytes resources/images/icons/add_img_w.png | Bin 0 -> 1983 bytes resources/images/icons/add_movie.png | Bin 0 -> 1234 bytes resources/images/icons/add_movie_w.png | Bin 0 -> 1203 bytes resources/images/icons/color.png | Bin 0 -> 2945 bytes resources/images/icons/color2.png | Bin 0 -> 2989 bytes resources/images/icons/color2_w.png | Bin 0 -> 2258 bytes resources/images/icons/color3.png | Bin 0 -> 3025 bytes resources/images/icons/color3_W.png | Bin 0 -> 2216 bytes resources/images/icons/color_p.png | Bin 0 -> 962 bytes resources/images/icons/color_w.png | Bin 0 -> 2393 bytes resources/images/icons/ctrl.png | Bin 0 -> 1894 bytes resources/images/icons/ctrl2.png | Bin 0 -> 2170 bytes resources/images/icons/ctrl2_w.png | Bin 0 -> 1999 bytes resources/images/icons/ctrl3_w.png | Bin 0 -> 1797 bytes resources/images/icons/ctrl_w.png | Bin 0 -> 2377 bytes resources/images/icons/fullscreen.png | Bin 0 -> 1325 bytes resources/images/icons/fullscreen2.png | Bin 0 -> 1522 bytes resources/images/icons/fullscreen3_w.png | Bin 0 -> 1167 bytes resources/images/icons/fullscreen_w.png | Bin 0 -> 1277 bytes resources/images/icons/grill_W.png | Bin 0 -> 26413 bytes resources/images/icons/grille.png | Bin 0 -> 29446 bytes resources/images/icons/newdoc.png | Bin 0 -> 1029 bytes resources/images/icons/newdoc_w.png | Bin 0 -> 969 bytes resources/images/icons/nofullscreen.png | Bin 0 -> 936 bytes resources/images/icons/nofullscreen_w.png | Bin 0 -> 907 bytes resources/images/icons/open.png | Bin 0 -> 1170 bytes resources/images/icons/open_w.png | Bin 0 -> 1121 bytes resources/images/icons/pause.png | Bin 0 -> 1521 bytes resources/images/icons/pause_w.png | Bin 0 -> 1520 bytes resources/images/icons/pause_w2.png | Bin 0 -> 1481 bytes resources/images/icons/play.png | Bin 0 -> 1814 bytes resources/images/icons/play_w.png | Bin 0 -> 1748 bytes resources/images/icons/rewind.png | Bin 0 -> 1993 bytes resources/images/icons/rewind_w.png | Bin 0 -> 1858 bytes resources/images/icons/save.png | Bin 0 -> 1242 bytes resources/images/icons/save_w.png | Bin 0 -> 1230 bytes 50 files changed, 24 insertions(+), 14 deletions(-) create mode 100644 resources/images/icons/ad_cer.png create mode 100644 resources/images/icons/ad_cerl_2.png create mode 100644 resources/images/icons/ad_cerl_w.png create mode 100644 resources/images/icons/ad_quad.png create mode 100644 resources/images/icons/ad_quad_2.png create mode 100644 resources/images/icons/ad_quad_w.png create mode 100644 resources/images/icons/ad_tri_.png create mode 100644 resources/images/icons/ad_tri_2.png create mode 100644 resources/images/icons/ad_tri_w.png create mode 100644 resources/images/icons/add_color.png create mode 100644 resources/images/icons/add_color_w.png create mode 100644 resources/images/icons/add_img.png create mode 100644 resources/images/icons/add_img_w.png create mode 100644 resources/images/icons/add_movie.png create mode 100644 resources/images/icons/add_movie_w.png create mode 100644 resources/images/icons/color.png create mode 100644 resources/images/icons/color2.png create mode 100644 resources/images/icons/color2_w.png create mode 100644 resources/images/icons/color3.png create mode 100644 resources/images/icons/color3_W.png create mode 100644 resources/images/icons/color_p.png create mode 100644 resources/images/icons/color_w.png create mode 100644 resources/images/icons/ctrl.png create mode 100644 resources/images/icons/ctrl2.png create mode 100644 resources/images/icons/ctrl2_w.png create mode 100644 resources/images/icons/ctrl3_w.png create mode 100644 resources/images/icons/ctrl_w.png create mode 100644 resources/images/icons/fullscreen.png create mode 100644 resources/images/icons/fullscreen2.png create mode 100644 resources/images/icons/fullscreen3_w.png create mode 100644 resources/images/icons/fullscreen_w.png create mode 100644 resources/images/icons/grill_W.png create mode 100644 resources/images/icons/grille.png create mode 100644 resources/images/icons/newdoc.png create mode 100644 resources/images/icons/newdoc_w.png create mode 100644 resources/images/icons/nofullscreen.png create mode 100644 resources/images/icons/nofullscreen_w.png create mode 100644 resources/images/icons/open.png create mode 100644 resources/images/icons/open_w.png create mode 100644 resources/images/icons/pause.png create mode 100644 resources/images/icons/pause_w.png create mode 100644 resources/images/icons/pause_w2.png create mode 100644 resources/images/icons/play.png create mode 100644 resources/images/icons/play_w.png create mode 100644 resources/images/icons/rewind.png create mode 100644 resources/images/icons/rewind_w.png create mode 100644 resources/images/icons/save.png create mode 100644 resources/images/icons/save_w.png diff --git a/MainWindow.cpp b/MainWindow.cpp index aed01bb..26428c1 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -1034,7 +1034,7 @@ void MainWindow::createActions() // Play. playAction = new QAction(tr("Play"), this); playAction->setShortcut(tr("CTRL+P")); - playAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + playAction->setIcon(QIcon(":/play")); playAction->setStatusTip(tr("Play")); connect(playAction, SIGNAL(triggered()), this, SLOT(play())); playAction->setEnabled(!_isPlaying); @@ -1042,7 +1042,7 @@ void MainWindow::createActions() // Pause. pauseAction = new QAction(tr("Pause"), this); pauseAction->setShortcut(tr("CTRL+P")); - pauseAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + pauseAction->setIcon(QIcon(":/pause")); pauseAction->setStatusTip(tr("Pause")); connect(pauseAction, SIGNAL(triggered()), this, SLOT(pause())); pauseAction->setEnabled(_isPlaying); @@ -1050,14 +1050,14 @@ void MainWindow::createActions() // Pause. rewindAction = new QAction(tr("Rewind"), this); rewindAction->setShortcut(tr("CTRL+R")); - rewindAction->setIcon(QIcon(":/images/draw-ellipse-2.png")); + rewindAction->setIcon(QIcon(":/rewind")); rewindAction->setStatusTip(tr("Rewind")); connect(rewindAction, SIGNAL(triggered()), this, SLOT(rewind())); // Toggle display of output window. displayOutputWindow = new QAction(tr("&Display output window"), this); displayOutputWindow->setShortcut(tr("Ctrl+D")); - displayOutputWindow->setIcon(QIcon(":/images/draw-ellipse-2.png")); + displayOutputWindow->setIcon(QIcon(":/output-window")); displayOutputWindow->setStatusTip(tr("Display output window")); displayOutputWindow->setCheckable(true); displayOutputWindow->setChecked(true); @@ -1070,7 +1070,6 @@ void MainWindow::createActions() outputWindowFullScreen = new QAction(tr("&Full screen"), this); outputWindowFullScreen->setIcon(QIcon(":/fullscreen")); outputWindowFullScreen->setShortcut(tr("Ctrl+F")); - outputWindowFullScreen->setIcon(QIcon(":/images/draw-ellipse-2.png")); outputWindowFullScreen->setStatusTip(tr("Full screen")); outputWindowFullScreen->setCheckable(true); outputWindowFullScreen->setChecked(false); @@ -1081,11 +1080,10 @@ void MainWindow::createActions() // Output window should be displayed for full screen option to be available. connect(displayOutputWindow, SIGNAL(toggled(bool)), outputWindowFullScreen, SLOT(setEnabled(bool))); - // Toggle display of canvas controls. displayCanvasControls = new QAction(tr("&Display canvas controls"), this); // displayCanvasControls->setShortcut(tr("Ctrl+E")); - displayCanvasControls->setIcon(QIcon(":/images/draw-ellipse-2.png")); + displayCanvasControls->setIcon(QIcon(":/control-points")); displayCanvasControls->setStatusTip(tr("Display canvas controls")); displayCanvasControls->setCheckable(true); displayCanvasControls->setChecked(true); diff --git a/mapmap.qrc b/mapmap.qrc index 2167fbc..4522db7 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -1,18 +1,30 @@ - resources/images/menu/save.png - resources/images/menu/save.png - resources/images/menu/save.png - resources/images/menu/save.png + resources/images/icons/newdoc_w.png + resources/images/icons/open_w.png + resources/images/icons/save_w.png + resources/images/icons/save_w.png - resources/images/menu/fullscreen.png + resources/images/icons/fullscreen_w.png + resources/images/icons/nofullscreen_w.png + resources/images/icons/ctrl_w.png - resources/images/media/video.png - resources/images/menu/add_color.png + resources/images/icons/add_movie_w.png + resources/images/icons/color_w.png + resources/images/icons/ad_quad_w.png + resources/images/icons/ad_tri_w.png + resources/images/icons/ad_cerl_w.png + + + + resources/images/icons/play_w.png + resources/images/icons/pause_w.png + resources/images/icons/rewind_w.png resources/images/shapes/add_quad.png resources/images/shapes/add_triangle.png diff --git a/resources/images/icons/ad_cer.png b/resources/images/icons/ad_cer.png new file mode 100644 index 0000000000000000000000000000000000000000..92025b93c83d849f7903447ff2b1b24cd550ce18 GIT binary patch literal 1841 zcmV-12hRA3P)$^LF3e)US}<)lri-R4HD%get1e?bjt%ujSt?lZaRsi@l{CJ&h=B19sAqZlfKf%uTTG!%#2x8v{ z*hXG!;Qs)iQYHdG04M@L5dew+Py~P?02BeB2mnO@C;~tc0LpJ=e1E|H{sXH2V4uq6 z4oBZ#>+cJ{A87j9+V30ckJ>}Ex%rn`TdRiOAF5hyg8)cU?yYRp*(1?sc8~w~zrTMJ z!ceKKsI}Dxs$Bjd`t(V=GJ<-#2aDmyC(<6`?Xl758Vj%ey)S9~zW_wJ{G+=2?x)bWK2lWP1#-l_Y#d1G14T`4*5 zGsFQ9vkE}Rf4WdqKd&r1*ZC0c3HOG3v}KXJTn3^s&tEv}Y{xeP;g|c%>dfRR0+579 z|K0aXk;#`NKs!BKP`B=s)X?xD0?>{y>Ti8hicG)QC26>1;`(E4^El~k7_7fgIeq!~0p8WmiWoIn_%q2|zo;Pp=2tdOcxaJ@R zE_MEG;U>RTz+LhS0+%{p(({&$V>|R1h%%00~-(P%O+2vgJRaspfCymOukKX=ep(>F8d9@yyZ|S z;`MK4^Q!OFY}4!Lk&{te-=;r+7>JhuAhHMZZ%dah&Z())HB42$Uv0MZgVTu{M~FA$g*{XR$d zwE0ZAtP!iJ9f0?^=5JdjHixtV0D^r??l2`-Pu~--jhPljRZcYd0eS$S`A;5# zgMD%UKph@R#-PgRp*4APwHQ_5*fP@CC=S(0P5=f#(yJg{gGvto3EwP|G)!jdAZY~2 zBb^A<#*&PJ>KIhorhp_J7IcQqG_7`3+Cu`0O*vm7L~2>KdU?6ze1I$gpacNG4WN_* z(97dq=>`BxC@ReWcwStY02tPY;J8BX{^X`ZU8QK92Vi*UkjP`?*b7P0Azod3AP0aX zmu^wf#hHSr&c{7}@#UO|d)2ZPy!j|ubA^3%gqUl!_8rXQ@3g)xi;+7$+x}5D9aih7 zdn8r= zX;Cigu4DkpoCZ3!qM`x7{3S7=(-q;Rl)9xo8fdfTo^79{#sF}^3P?&SF*W*)0RUb4c+P5kpw*<3odgtnWo?rrh0Esa=pmegG%4e+kH`CTSv#<~Fiq+P!20Xsr#>h$RQwdv zk7?4h0viwdkzq3@L8sp@SQ!{r(!#O5$vDC8dEZvx%-XpCyupJTL_71o&33SQFa&d6 znnT7WoIa-kz?}E)vB^|I;6mqH2OzBwxYGGf0MH0Q8q&yI>U?Jas6&9Ikk5`G9N#I& zmcY)P4n_mv@@caO&vHDpa4s%=oje{6E8vS?fb$V=9L_tNChu&00CYZH(g+sp=#f(*b~^(J4T|^yMiS;xmqEb2;U3|`NI4;GJRF>a z5ZA|>HC+iS*JB$Jj>E;n!6E^uD@x!vk++h>ff0`65}12Q^$@%Qpiy{5UHzrYx+;ml zF~vz;bh^|PinjnX3IG5EScswF!M1Alz;j1sE|j}L!3%V_50y{i0A!Sh+Q~xRXzDxc znnH#KcSd$Y`4!aSNmE=Rqf(@}lg1hbLY9FP0iXx~MF1!QKoJ0n08j*gA^;Qtpa=j( z04M@LB?G{9Hi_4|{!9S2wyW#m$7!~cm-;Qd&c*-O)$Er&-Gc++#{}EV8?A?fo7SD8 fD2i&-KLQK@%Wt)XR_DQ600000NkvXXu0mjfCD&hk literal 0 HcmV?d00001 diff --git a/resources/images/icons/ad_cerl_2.png b/resources/images/icons/ad_cerl_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d1b5fc853a4e48d8badb6a9e2b153b5b9fd16e58 GIT binary patch literal 1872 zcmV-W2e0^vP)f5kHp-t+#>`@Z*l3PDj6MNw1|HPHRW*>mSd z`G2(Xu=)FWtNIL-#*YJwE&+jUPKr%Hx)-+^-)BfcyXq{~XIJwz__l2bg3T z#oiMf83L#Ti2x7)iU3dqfFb}C0iXx~MF1!QKoJ0n08j*ginoHe-{5Y0FFdxJyPelN zo!7mT4pJhWNr{xK7MX0i^EyZo0H4%qwnJmL8aTI4?jlnIBAX9HCYKiZLJ)#M031_u zYezIU+u?a{@1fG~#`lHaFOT|q2Z($jBl5){JQDzmu6?805{-?Pa-$yw#FqR`90(7E zQdSg)vmqD+z>wkV>)W9L+_;uzcoc@RqBNTGE@ud6cr}W=0zeoZ%X{MyoCg3dceBi_#J$p5a zUAmusHY?u$U`CY7rN@5e)TuG?@+;F~K>jT(+_iF@C?||E($!qNwtD{)DP~snWaqB{y6vW=@Q06nDCm~0cg~B zXw5#gS#9|Z00@rD$Q~QoGBD>sD*#)p{Ynx-ZvoJK@eBhF0|58WHTer3HYtVgSDU>SOWdh1ZPLHjEgWy>jWq-!b?3*9i>)3NID~ zY0~)WJl0!YT&MF3+B`dT*2|bZEW_1{3P%>{dK7dXfT^ixm;w6a0oVYPZ~z{1x>vFR zi2K^Q1b_e#0Fzo+_}SaStyb&m45ewJi1Pp}E-s0h!h$pG{Ek?%&jsBj|9vf_?jQwjofv|cm*g&E7~Xa`v|i?FUpOwCOGj|KI8@%r!Taz6$O*91sPAhI<)qO^Ej99Z z6#}{i0LD)biPC7^+gcBokKD%Prf=t`@1Se6Fq8?sfiD|S!Goda(}(49yqLd*f<#Ti zGW6I`(Nz%O?qPVJrp0+Rfe!^cHW4@n0v=z7%2_YxLwY%bGXen#BK9U~7}#I0msi5D zZGn`dwy;HAG}uJf%G&rnz*i_`V$*UNn>pNY!%<5j00{Tq-QE*z z=_TMP{;!8X<{lb+Fp%fYJjXb$ff&n4{Qr(Z9y<7b_g+R(8^iwEJn+cyNl~I!ap+Fc zxQK-Z3q?`{fFb}C0iXx~MF1!QKoJ0n08j*gA^;Qtpa=k^4uG31l345Jp#Uu1yR$4$ z7gpTp$RU0?o2G=4lr`k*(W>cj0-!BZ6Z0gbcJ15R+=1AVw4o7 za4KXZBc;Q~ACUPjpupuI$KB4%do$m!v|8Wkgm-5?^XARGH#5di6h%=Km7=;Dzo^$Y z-?F#s_L^kzM59%ET`ZM)9<>6%ANKY>%PdNrY=j_dsQgJ*e$=|&_(j(6d5~okwFdtW z04gyN00KY}0Ez%m1b`v{6akO0zeS}iU3e?t2_1=Tw8l>uXVHZ>+-J8ubcjM zV4y$0di#3JdqYR*SF#}=DfXK*7g!l9{-YGkL~qlqwe(o0uW;sgyY+nHkC>}T~Po4Gk)vlJ+ru2 zbzbTF3EjgNXU5IB@|QUn1i(|pSFSFY#rsuJ&jk>sFO|jn3~B+8TJg<5xbp3^Sc}jI zfcRk`%sVRn!{Kr9l@H+=KNuM|w-)Yl9-s)1{?kt;%(bgGRXJLKc5bF(PM<8Bl^1^z zfOdpdfBHmu-!Z$2A*mgPp0W@~wp^LS)`OO#t<@j&K3`v$&#zFU6*U0BT*BlZega3n zUX0hctK6HFe=~ z+yG1ko(}!y(s}dSa@DN=z1;MA`s`jF&JF1gAO_-7-tqwu*+XzAl&*X?ZO)Y^TKX+2 zA!IB9kh)4N36>8qH*+nhd2O}wp^uIY2loe}>H^^O(d$2)qYR4~4FJCTwHQ?K)CFZe zT7S$DK376W+=tb44!}=~9P_s;ACp5)0RX`#0L_1~BLZ~*V0kuGjFxH&0pQGE!WO{SG-fI~Xjc=F04#Cr?*M{z zJpj=A*VCxFwE%!{Zl9+$_t+c?$s?V-f6=2LSB=UI0I!NQS2uo`_nN7LWDM-~(dpkP zGO0wB4^ZU8?(D;(P1rX`gT(I;qIFxge0#Y9GmBge1;qn^{rMcSf^6sGIGp?6zLETIT{W-0iejSd%o%7 zY(-V&D4Jae?BscodcjXtvj^J)_?LbndT)QfL1_e>-PqL1S_B^ zsl-?7_XYqI`aIoMlS;Nu{S3FQZ4t}T4kNFJM`ObypZnnMXNeH59yqc$d3Ej8Rti_h z2>P5M?A;zhrAOu0tg{;?9I zVFXDF$Mh!S1beMwsK8mUbpbfRgA+ts{eH-D2)Zx?eO}5TV;@eRXaLaX{rqqtNeCoV zesBO%g+NN>ivVCZ1SzDENveD?0PH}3p-{|@AspWu!iK=&RtKYiVw)_&yI_h};?P&* z@^DyzSo{K{bpQUmDt4WO*!=-e`8dk8lN~!lw|ba-tV)(_&BSjIfzT+9Qq{E31QzV+ zv%4y0J2MRhiueIqQXVQ53<91F&j=qz%U(&|!@)%e=Mms!O(|jJJhpLuLdAN>;Q0VW zDo^0JUk#GPv6Ec#`I*mD?Ti)`0K0`F>heREtyOTflL#DBtkgxtYaO9P3&3sxfSt2< zS5{uOwPz1J_o3|yM`h!RVGqPc0J=?t+A`1mO?`*GUC7Jrmi_OJCVjo7q~a1$S^%nb z3y`r$(iQ&}4yluA9T_I8%# z6s7*O*Tu#!yPEy7Uf&$Fw@H>+G+MQdo7SD8D2m#xe*_o+g6G?ceti>W00000NkvXX Hu0mjfm~JlT literal 0 HcmV?d00001 diff --git a/resources/images/icons/ad_quad.png b/resources/images/icons/ad_quad.png new file mode 100644 index 0000000000000000000000000000000000000000..1ad663337e2e2e80060c5c3bda1f866ecdc33603 GIT binary patch literal 915 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m`y!h978H@y}7$LTR4&7z{BuDldFN;t$w08?MV&+;@h>N z0%ZQoDA~Z*6t!hXW}&dA>%pabYrAhbYO{3ugN>ZhM~;R_c?WXW6AzJ^L%K-(c9)U()(d`g(7f*VMQ@Tz|LcndgZY zZ2i6{&~M`p7TtF*b7B};4}~p$qaeTtG}l4yKKqRocJ-^;ra%2?U}$Li-bh#XY~uZY zNfwo>q8TEKo(9!R)CNTznl$xR5p#Llp$~@}FWkGBCcfd~(WyJPO#OfT&7187KQH+n zXNcTzL9KpcY#X{uQJgL9{YtI%m}QOj++(5VmxubiwJO|`e)eCV#p54Y@&0e47(Pe* zdUN-y;m38G+P;TzKK)ctVIRundz-6_vG}OxjLfK?y&qmbfBzxj#m3}@sz=k!J}ro; z(*?3({@8fjE-7ZLknDgs;J<%x@WERriWy{OcNZBx$gI}3FlBu5FooyhKW10PE5$E9 z9K6DNZr1x}+eEYEIXDyK4l6Uy>{ZD7_5R-L@0kyh&QDmL?3`US|D*EVsdcNq|8-YQ znLE8Pjul&EK)u+&yJT-|>gBVSON7`N*BsiqZ(gduWxuw)--9#FXZ}AvvBPM7FK_F` zi$QNyL_W@O{OBY5^@!xj!tTOwA9TgxZawJ%C+gE+M(y=sR ztCg&lyq(#*)CUJ1{JqsI(mi)!<#Rsec}kD-@3md(4)3j(SFk(bCC70bSBinh!vQN+ zgCq~5+?0b1tK!wtC#^0%raAeMxm(rqdplO%n*>a=+tk9-dn41%sQBkamoxnP>fXS} Y(0Ollk<7>0Jq$qL>FVdQ&MBb@04}|LW&i*H literal 0 HcmV?d00001 diff --git a/resources/images/icons/ad_quad_2.png b/resources/images/icons/ad_quad_2.png new file mode 100644 index 0000000000000000000000000000000000000000..47bca58dec01b68429bac36bf76b6747b18200e3 GIT binary patch literal 937 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 K<5}tv6#p+>56=An literal 0 HcmV?d00001 diff --git a/resources/images/icons/ad_tri_w.png b/resources/images/icons/ad_tri_w.png new file mode 100644 index 0000000000000000000000000000000000000000..b1b6f42861a100fd0a6d6d513c7941cfdf097940 GIT binary patch literal 1512 zcma)6X;jjA6#b!+hKZy$j^wzEN~7k!P}vxyl`tYqmStov2`)gUQE6JCrp;eYku)t* zs?m6$nyZ65H&V?vpTTBpW1OUK< z5E8sqhn#O^v_#iC0%ITOz>2+TCp$ca&ORKQMg#cxlsK9lffbuT+e(X#&q$Ti)&l@9 zAOz#Lr9Yn(wvo+azwhR89k#DB5A_UPb3aDU{h(JD-q29VUT!$F8WnHu*kyvIPn5V9 zU^bhDvf0^q`*kBF=Gg`bZpS&=-HP(HFZQUVnJR6@mHA_5MfJ}0()smj-ec)u16Yoo zQH~w02lo-8|Mf1O-Go+R#2NkZ9+HOJ$DfX5PfWBI5PkZ=PetXo$lUv;l@ zbUD-EsTDyVI7jLn;Q-JBsBcaUfE@rZVDz66Zf|4bp&Z%CgMiYt@TG4VecA*57+sfR z+uR0lL$_|dG(sYgqs0{r9>5iCTtPmk`g+F(1_MNX*b3EeoWus*!qn@EfWPN77fTuq zfbU6{mfmNxi&)pemrIAMSpd|OA}WaLbF#c69~gksPN9Y8X?=da>`vH0L4(AKtu*Z= zvh9X$z7e=?^|uFY-!p<)k{UsTf$iSg>*X9xtp)EfOUe1p7J#?s&8yb zKMb|9g_OC(qv}@!aQf|nyY;cGP&|Z*fO8&PP2c4!MuY1=M%i=^ltJ6UnH^d|Gi*+< z6ArdPt&XSIq}4W{5?2{qtoDdB=NfW?;KXO0Ww4R7&AfP0R_KRE6$MnU^@XFKAfl(g z|MNNZ^rC;|_<2n0kts8<-`f;Rxm7=E+e3zHMf)nkoRcC7R~Yaq(M{ObTD)b9mq^l7 zEF|BE=+1rXaeHD9B-m*UGT7?7;@ehx0+MHK6u#m$!0~duJ;9u-*WNJw&A zPddJj!^6-U?8+}pv)sn-r-fjP#0Q3unpSGco1CKBjl)y(tKF*&)WcYSb4`*osbtoh z^1sV}BcGXhKl0}oHA)Ex?gJ`_WqC%Fc{Jsxvro$SA7mPvsO;mU9zBk)@&&^ojoh%V z@Hy#sG;os)_&T;^CC8~jPyc!1fvDkWWpNt|^;r~sRwrxk%u_^uVB0KPUi+}vANjEq zlEQGE7o_hO>jGx&{%8TX@`Okir@NO1m0yaIaFe^tPi_slkeJG~=h7ud19#lP>yGrh!eY<`Jdw&|=P`{-a1lywxoJ5o@ihf49y_EjW5l_F{&Qb*osiDEL@SV- ze(u^30>jUX3Q97g*l=0H%{)DzoOonnaSbxo2a*9+ff+LoW{20>Oxn`*1epa-I_+1X zr+6jv)NLCB7N>=4mq+1;Be2>W)Mu0>rk3k{Oyf*_3XKGxtU8jyVsTe?$49>7??&Sp^la}_PbxUhhNREO0~r0w!ZQS(wMv| zY+~5v+?`{(77A+-n-{t#Dq~JW|DO;7y{7HPOtYsMz2+REk!VEm&C-po>PumE(HL0L@CBe~ZffLB|0Io5F%?H^$`r3oRy{9{>OV literal 0 HcmV?d00001 diff --git a/resources/images/icons/add_color.png b/resources/images/icons/add_color.png new file mode 100644 index 0000000000000000000000000000000000000000..045713d849fbc65a8230b61bbc3a16134379a183 GIT binary patch literal 4755 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/add_color_w.png b/resources/images/icons/add_color_w.png new file mode 100644 index 0000000000000000000000000000000000000000..7d6fc6a7b75bde39287a86c6f57d135612862b3e GIT binary patch literal 4446 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/add_img.png b/resources/images/icons/add_img.png new file mode 100644 index 0000000000000000000000000000000000000000..5ab52a5cd36c9be131543420f19c3d6fed3fdc1c GIT binary patch literal 2039 zcmV?~AyDiRA&Ao>U0ec%lL9E6NGDNdLq}zwKuA}h_&U0nYk(?FfkbnX z4M<3*E12iJCC2g2%&z}tcE3+rIf}izGxNTA^WK}8H$(sc00000000000000000000 z0000$3X$`nkk38)a$bE@)U~Oug5$;Qsq3M-+JFD^TOS0NUidZj(NtI7v(ClBuPYJ+ zAi#9OKk{75?zl{XoWsH|s*lr@47GO@3A!#8Y{lV5Yo^H7YC;3V>-{D5ags8FyR5W8 z2O7W*+bQ(8wxI#+dOy2)XDM~N*OeCNK?CT~p!A{v4Upa5@1z!RO#>WJ`r%X^uQ}BF zxnU|9AVA^9^;?4{Papq;A%Omi^Ru5^qii9di%@YtlLQc7e@l9OfwBp<1={MmzpNNR z&Qe$v@nczNc>-JpYZNBau_9G_DgualZi(Ol|G-43>V}z|LHHbwEutO022Vnjqeu|x z1t?4PYxVIC+RuBupsr_>*YUtw17sv1lQm2XKt%a7n$sz05+03T7LD zjm#tRFn;1A0lFsRNMkgW#A?ouxqc*`Lg*%T<1Ex*BC2O|xmx7exiD`^xyyKS<@@Jv*5lDQ2Q;;y<*)w51Sd)N#K z&6o z1n5}`zbIqyJOec)(FpshJbM--m?}sk_wHuh2B=yHzebkp?bp_xr#Iewoi;XJ`QQJ~ z&wr=yzx$B}gFkH^(@^i+(h+ln1Ws>pcbx!rlL01Uy_G85*m#wGc<_xP!Oe-^4+ekH zyKjF?j~@MEYa_62uoG2A{y%FAa(KI&%SK>FHQ>RlgwJ^I{kI~8f1w?24u2EVP&|>j zf~etOZ&pTO)(B8H2!EH{*i4caV@)^K?|=aD5a?9DxJNE!-6-m85UEQ50@!2U;Oey; zEOSM)QtUc`09Si|PiKLXyD|4h)KDOG3P1oejy1i%FmJzj2KGQRN!>tz3-k<|Bz?#p zQj78mq;5SBAR28$@2`;`xSOPoAb?&)`XYQ&S&u=0$>jNUxJA8~u&xV*OOrwUIE`tV*hz{{KmTNS*+MgcR7zM^3;{Ok zl!Y{F;U@u?A&M}XNg@mZ(<0`q-LlG3aJ?O!@&X9RE&*IUP+?AW?SKGR$IDVy2;fp( zksty?fET!8AMgTBSD-0N7X+|}E^zYm_&>h-;@;2)UpBZ5T$V|s)vRWACa~pFASfRv zM!nW7}gb&?9})DCbTOb&&uyk2hQHXnH@_sRjbr!LflhY@8g~ZR|!zl z*#ff7s_K%@uge%Bb*X^>@u1!PE4|HyZP#6kax`6SWS0q0R6S?UK!P9+2`*B=L{A{` zcQI!fIX0oqUnF&Kc2#puQ)pMltg>kZjUDFdy@>ONt@}KgMC>M6eeRbHYf{cB%OPAMm;_heBClxr8ntfeaaOalE5lmtQd%a zsNyhRaLMvrtU=iBxF07YxsRu<`j#x38`2fg{P0 z?hDFPnt1|{G%#y|dXj@8Mu^jyRe>Z^X_GuWFTmGj;X{jGHGIp)E|?ei-CPFp^soq@ z2@rzE_A^t!XimcCcb<{w$Lyxz*tp^Oc}gHW)ylc}+DXRn7)D-2VkCtWv|Xxp1{FjV zvqm@)qij}!FOD5RQAkUprSafM?xk#$@r+{V&V?t3c5MYtmnVmo(j@RK5MW#@)Z}8p zhCY5z^ZNp22w6NlI&(tKiVXmO000O8fB*mp08B}MHku}Nm?+a+)UWxtRB~t=GcXnS z1h#VAA%GV=B6pwv=#%CIww&(HIIC>|XN6zZg}|@r?tb$0@gFy?-};s=SI_|dAW+u_ zO8CF(ew2&z#4IIq^cgN?A_V{d00000000000000000000000000001Bk@#1D0RZLD V))B9|cWD3s002ovPDHLkV1fjxsf7Rl literal 0 HcmV?d00001 diff --git a/resources/images/icons/add_img_w.png b/resources/images/icons/add_img_w.png new file mode 100644 index 0000000000000000000000000000000000000000..ab462f1a04acc6b75ca5ddeef6c489591e2c9698 GIT binary patch literal 1983 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/color.png b/resources/images/icons/color.png new file mode 100644 index 0000000000000000000000000000000000000000..dab38293f21e9d28d835aefbf6e956c8b30be32b GIT binary patch literal 2945 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/color2.png b/resources/images/icons/color2.png new file mode 100644 index 0000000000000000000000000000000000000000..7b9a4af11032b7fda9fd9c67d343dfb7ff567ec8 GIT binary patch literal 2989 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 z-wy55o700000 LNkvXXu0mjf#`#mg literal 0 HcmV?d00001 diff --git a/resources/images/icons/ctrl.png b/resources/images/icons/ctrl.png new file mode 100644 index 0000000000000000000000000000000000000000..48a80d8ae3cd7066e65c28523db6ae4598a4e893 GIT binary patch literal 1894 zcmV-s2buVZP)zJ zE4}Jc%n2-?Aj&c;TPJXIg48FleFDk5?xLJP^a;!^vttergarbm39{&n`>|zNd4?R$ zaQ@x{2nm)*lYDQ!_kHt`RFVKu;{d0?eSH7jFZ0%)%1@u)l@LJKq^IoVHCq;JneO>Y z!Io<#gbf4`9{FeN9%becp0^fEC0k}u_yg_*C%DzDWkr567m?1oC5kB>0-!Tys7U9*W&+mRj1kg|T zoQR$|KEk)K0KJ6QBYc$6OWAuiVEqdSK&=MPED@fw<(9v)&|T2J>=Z??QfUz%L`wMF zPz^3Z*&w{&gbVhsuLzc^ZQ%nDJ__M^pV3MC%&!G_)!~0|@^e%H`)lxQM8XSNdJ`@< z7TzCtsLRK%3Ob5@9>C(HOVJwPm4W|JNk)GXod6m&_$)xeN5{k?!pEL;X_B2=I{Y*` z0Z)WJ@RKG2t*p zcph^N?({r><{G>J;r-C}1`n46fJqlUNF@Ap zB7lYnp7qEHva#ych;S_UtTZZs+78%q!rmT{x65ujT7a|BpiKbMi6F}A@9TOt%4Y(i zPwVdio?CzbZzVR6;gpV21=tY)YF*cN#}ycQs{ffP0nxByuA z*-Em|bDY*;kPM>Ab_9S8*i8Tn7X)x4+IhOI83;57sCxz?8+eXW8?XQf*MiT^=&m3@ z4RgU~r7HrEUHAbTFoX9_2!N)D3)n!s79g{M1v-Sv_`w$ezy{1fG!KwFBLKRCMvI5fGb=S06K&b=Kytw5H=9200l1KHj)E_4GfzDD4Z4mI)ujYhwBjl zHV}CZAhQ9EGn{rIj6WaPr~uF*G@1k!K12WxbOA1Onhw z!@HJcY{#+%O0;T%XEeHl>R28)GNL~A43|7AT+$W9&R?wO9~2D>7FwL)pc z5B@|&1P#BQHAweq-l1g2eH4lXaH#wc(*0B_BU31XhF{kq+y%d`1`2K!j0I5Wy&G^s zu9yH;4*PXU(Td;Lk@NSI{HjDfjtyIX8Ik~0Pel79yWrPFgX}`~Gw%w=u9bXO1n@EO z%YSR+EwT&6-432gEQ2S#+DqaC%jENLy>p!Ciip0gN4V}Xl?sz7N! zJhHt5PaZ%0k_@}JflrIR{QB*~pP;ip4sGuM{qpFL1Z)W!Jr)4rMWS}|<1*IlJtzT? zcc1i#1Qn6L0fnCD05!OWv*m{61iUktvgM}-i2sc(FER21sR9JmL7KE0JRlta00000 g0001BDE<;)07Zhg`qHqr)&Kwi07*qoM6N<$g2RJPdjJ3c literal 0 HcmV?d00001 diff --git a/resources/images/icons/ctrl2.png b/resources/images/icons/ctrl2.png new file mode 100644 index 0000000000000000000000000000000000000000..390bbe63f6b679a1858e706cbe7f7c33953b8956 GIT binary patch literal 2170 zcmV-=2!;2FP)gwA4$QVWco<;ar^E2=S&DNF2i5wW9jj4 zK!i(8gj5JHY~#a>ztKn3@F#!-AA|tIH2xBe-xe!Pf>R;DG>z{?0wDko z!l@>~N(jK801pn8-xeEv>}e8gTz{}5!{58{6C&d)^eF$9{ecjmf1LFB`w{~B_W)lB zV*fT4u0oM`fd0i_)WN9|2?0D2^?jaQu|aRb?~qXZ)rJtD8-vH{bx~&@KiNPCKx6O- zXSbQ+o5&_TC{0 zY8ijD1hB*#Rf=Z2^^D-!?-~*n$an1Hd1fOry6x6O&+^=w<>s2GQZ#d4IfL+Z;vhq5p5KZ9D43w7=&a@d!$4iujXw>= z8&!&Cp0fGq`*1}^L;#Oa*fp%LcNUxg=u+<*&a4b$Q67N(wrlS^MPnA?9zqjf*OzTI z0ft-a-#PFJ3tRPd$`q~BaK#xj0^@JbvQiQd*Vpr{S-u&np~^gfdTssATN40X?wY^| z3p4l~)Yr*UGzKL2;rQyHsczX00e1w~{gT(}i_fT2G`qeo@FW1b{+Q@INk9=dDDgHJ z0${4g6|7UV4v{-1X`)J+J}L=-ahX$tL$Lb#L%5L6eR@w5^8<0c@!xc z1H22N0lJ#yrVu0It(g`o^49aA5a4p+BCai-L;s*W8#r<7SgN}#buS1%e)F~j=)x^; zMBN9`07Zye5daNCEy|=!%Qyr8Zi&xzE5ps309S-DIu-RF1WqrF%f-zJfQ6WIBH?l_ zwrdZH+R4t=30C@J75E(IBL0RE0t^XG1CrpBqCr$ph&TuVED~I{OU?*@1@p-QVK%uuP zNeL6NT@VCauL<1|bSqw9x*9;?ieKvZ`Usyt5DVVj00z=NK1B^+F}ExwlrZ3jAo~UNu}he=kJIXah&usRA_gZK0<4tK zMFMFbA3FgM(l|;N0`}PxK-$NH;CaX%K)k@jLx8l8(;*&;2PpFb(mq~|bPNQL_VKBP z01N}tK0ajvAf$b~8C?3wYunfvhda?146j6WU9@a6_4`=GI5EoJpl;r}c3ZVaGZzBD z&A8rLy26bsr*3!<#{Vh*RZ}2HMc=8u$i#&=Qu&)hCi`E60A6C00U_s zcN_mfwR^Q6jNwhuYAYuX02leBikCBU&ECC<#{0Dj`-b&n`z70KJb<*17ve6k@fCW4 zm}3Yi3j=_YiOqf>JVm!O5bAbVPqGJE$5O_(iIlee@^6ld&{9@wM z9I^BOHQ0Zw-Zn($V=5Nu`~RTm*Fs))7w1XPUaDDcS zh0pgmn|qtZEs$~402f392@jks>%7O%a@EGDrq4c6<3h?x1K_|v5uW1bg3^}YdS?l* zSWO2nRaH(NfV%$=7L>jYz*Xn!SGyOL*GY{q=0t$Q4$i^F_$huqqDTc}Z0u~MVtKqR zF4?7l`i6gu$h{h)!c6{R&Fajjvk61hLuljUYk`FT0aUax^fS)tP3W3Kz?ul)O@E~j zpxRY~kw00pxbualKqM$^uAMpoe!6Cy#U>V~+?d#+G1S=*Iz}u%!o} z=&=m+bEkEdfrS9$B!L)zs02U~00H2cc;6MV9Nm5__fUX w5fPxER*)2U1eo!uY$YQQ2m}H_ZTv6505)zaO+?n7xc~qF07*qoM6N<$g5Fx|k^lez literal 0 HcmV?d00001 diff --git a/resources/images/icons/ctrl2_w.png b/resources/images/icons/ctrl2_w.png new file mode 100644 index 0000000000000000000000000000000000000000..f1bd7c9b0b7dc23263d3c83cdb48047bc99bde74 GIT binary patch literal 1999 zcmV;=2Qc`FP)?nMc-X`gFO?Neb z0mvvkAn(q+e5CbVVF0{@PEBY(!X5@7g@H4K1{yk%bQN)yJ`_kBcw4&*H# z*15g>IlX?Q*S+9pe1j&NDSbk1Ry%>onH~N1U(`C{5N@%NYM^7{(d+2 zqEJkHVk3|(6qbO`n!J&hM?zk18a3xl`||{P0;bURd*RMWITCa35q0zg4DT63`3&TZ z6cPz_+N`Kudo1+sn-0bpo~zPBB3K(q^48VM8+^~S!4MTwglqh6euEdviXNw|{>7v; zHVMa3eO)R=%f4&hGf6eyc~d|VO`d-xNtosh!st$F{K=8GM?v!Ts5OL^bqz~~)VPB% zM;z8)u{5eHd0UcTN1k$!KI|9(Q;&Mwlq8XtPc5Wq&aI`hW&q3!6e^8?K5Q;X-Xfdi ztq%iWi(nLTC6o}HNYR$ArDzI_pa`vb%kgB;QsBLfbsA-FiLG-hW}h+klnpW{VQdSc_1F~ycsO$s*A=ha zKZvz~XO4>;>$b)20e<<7yBdIvuzUc!XW;;+5OgvCQj9byLz!0b5Mb~m{H!O4TQO)Z zUSf9cZH5jKX3^1zdq(hg1fW99Oo+J5puX;qsGVFKJz$aE7R=9>f&94_YPi;_O(9Ko z-Pn;ewP|(gzk|9&3}D5%OZY{}cw>I>Q->PC7zY`+l?I+N0y9fzjKC~B_*znkD8em7 zd>&zGC*H9NRPnPFdjx2Jhm!w+2=d~mwIQHEe!B3ACn_)uxXJ+=bi7wC&=`BI zX?so$Vw8uKdlZDVb`INHbgWXWOxw)Y4^`#3DOFeQv39Tqv>X^sG883EeIn}KD&pgs&> zQSv{`5)Ls9JdqL>83EeIhi(7_G>*y*0oUpcfVPWW7yNsIl&}_FU5)^V0%tx1WGjmI zMKuBR3be+^l?YH41<*cTjWve>^a`|(caj~;L6W^j0JM(-Rr?BHi`jN^3tjsdtSD}# z_^K1sW75g6aK&&V(md&{1Y3i~1i8ea$IpN#}bwJ9G2fueS z+Q$pWd+swFCYnF^5j&5+lgCEj@Qzq5u|`VxP8QQd4w2>$Uvh4OY*W^Wo85P8u~Sc*ruO)#qfT4 zk2Uv?E+)qC$xyS!A?S!cvplL36T@C+@=U(@}CNUBlB zA)l=f-`EMg^MkrHP<>^pdFHVtPyU(n>MeCb*RBnuH||-`2RarQ2GEs7=M?=)UVY%M zIWX2l3>NA8{hR;8r3X}nYNO;IIWM+4@nkX=@{NdF`G^3y&`e&Ojm2wimPkdWWs6M3 z81Sr43f#K^SipvA?#?!r&`jy3=IrRaYEn#71lV};CDX5|C(MR0Hc{OqJP{EN`83a^ z4|=o^0kGCkaRe~lFL}nW8QcGY%HKmxKLCX+N%Hj#>efFDghHVo2Ua>{1akoc2q9Uw zj38oE{uB~DUn79>9XEn$%kJPE4xt#15d_2wb~P(~@Ol^P01avdhR_`|`n~t7`n88j h0RR91pceiUU;t}@NTM+K%J~2Q002ovPDHLkV1lMXp?UxS literal 0 HcmV?d00001 diff --git a/resources/images/icons/ctrl3_w.png b/resources/images/icons/ctrl3_w.png new file mode 100644 index 0000000000000000000000000000000000000000..806d6eec957f239ee147fad46b0d85bca2535279 GIT binary patch literal 1797 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/fullscreen2.png b/resources/images/icons/fullscreen2.png new file mode 100644 index 0000000000000000000000000000000000000000..b8ee1e2840a81ac4a21bfb94b10bb6ac45eb596e GIT binary patch literal 1522 zcmVZTJ~e1KvwD50x# zT-ffS;Iee47HUfuo_{hEhhZM~bgJGSr6Ja~9(B}xXM;B%XI)gaD>$^f;|e}O)98p+)E+hu`n8DNV3 zO9XF(odRB=?-D_-mdyhTFizhkhL*AH_py}l#qhqp-gnxS1>vbw{;AHzmCBt!?;9H0<&BN)5Bzzv zYMMm=ix?W(=^Z)xTvdXgT)pz66#_5?MC7&C^VI@aH)CT5r~zz6My80M6J13%0>s3^ z`8jQ)bTb3&M*!RFfp33UtQL4W7-b4@LxP3#vwDu5-H8CUbM?wk-pLd5T8=$AIe`E+ z^J!txn|}43z~=;dSpae#ASOawmvE#S}mdU{SGWdh{be0G>RUH!|OwTmdiz1VH!2 zo?fJX1PH*}Gsk)&!7v%X9^^*M$)_g}Ak8dY`b6txU#0-dkt=?msZ5~jvaiX}j{qT& zn=_WaDa0hyF7L?E=XX2;E_!?6{f>s9dnusDN zlsX{~nusK(p0(s!K+G!xxlG)u*xSq!{%-9SNlXbq2GG1RXfF2rBAEaI9A6oeo(BLD1V*)hpsMRb%*x)09!>fS01hVB?l;9(Q0|K<0 z^F@M_ADoLd%OHV;0+`%d4GA2X0+0X!v`Zk{xq<}({C?g1NUT4K4OSF^cZ>&Lwp-El zEn5g+F$CX20m?ov0ulVA)&K^UfdoIrQvktFu>b_$0Rc*ymVpF6#mhi~pYka{wqqms zDHhBYf;k=yD=Hf%)?dXP)(A+ECK@7}vv z3|a)PtM*Kw|D3@mfglj;VWxm(`YjP`sL{U>Mt~xHmk2Jld!et>yB<8eRo=0EcTW8} zP9Hi;S+!{u%YVbJ0?yP90&eoLO8@0h8K5Bx+*iN8NME{F_^IGeclv`qKSxm#tT7ch znfjlV0UTL?ngq*8;7--A+DmHmcfBXSFUV1A5>%KDtY$?T*-XqPj5%PR0IbO!(c000000002A=05=j Y00$W{mH`&%Q2+n{07*qoM6N<$f~wD~mH+?% literal 0 HcmV?d00001 diff --git a/resources/images/icons/fullscreen3_w.png b/resources/images/icons/fullscreen3_w.png new file mode 100644 index 0000000000000000000000000000000000000000..d7d28335d685f4e7b0aa571b03ed0c59ca56e8c7 GIT binary patch literal 1167 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+SPVT~978H@y_wrvc*{V>eQg}u0^uWb7nCrkH%;P{Qq%AW zuyUNuxj?wZN5F{j9)l5M36qwp*JEY2+5G=iBj4XG^o!{Jpq(9puA)2A zH{bkosr_B2{O5?zwZcoUOp5yM-LS51t(j5E7lwIW3;2s07umg%OZfY%oj+u+dh*7g zopxWO_0nQ_{pZ_0Y@kSD@S z6(%<~>)MOzOcQlbnY_0-j3I_+67T((Z?ZcyqBA9!?tFINe~s_d+_%5jStjJRrpd@z zX;gJG{PQrl*gpTzQMYZ5-tBX_{Qt;u_{>eaXD`WGx8ADutfmdo_*c9!LN z9I-cry`OD%Q~m$XLHD=5PRqHz><=&(woS_fy_a*vV>ot8ePT-6!wu4AArSkK5*0 z>l zugLJA`#h^={g`R`E|=wDo!Qzwk8Cqv|GRE_?XdYqllM~3f4Q!||9g{a&dejt;pty) z2uoOUGyoGHWpL{YfmUffo1eCIH`=4uM#tTc462phv8R_wXY$|e_Qu;M?p|zbr~GS* z|4PLKw{=@*ZVPOPE?Rp%U`f81u2Ms7*0(7&+7s(mY z85k~zy;Ua>k}8a{cz>1x{_mY z_vbRNCgwx^p9BjPxhIG+X-|D{;=@D*2gZAz1xY_V1R5CjPC778)gt(Z$Ag^=i)9Cue;YIzMRci+4`%eWetwHX)~Kl(Q?GS~>OV1D1a?GZ@C M)78&qol`;+0N6teLjV8( literal 0 HcmV?d00001 diff --git a/resources/images/icons/fullscreen_w.png b/resources/images/icons/fullscreen_w.png new file mode 100644 index 0000000000000000000000000000000000000000..7f39b058b6614e7af17732e74bf3a741e8bb81ca GIT binary patch literal 1277 zcmV2`t4P_fJq~6%bwl>>inx<=S0+_&G%XUc|f+3S_ zDk99C3LwG1GQsaN=0UQOZ7d>e8W%u<|G=z|W;Ga>Ned~#Z*`4udTb@=SuFbmKQ1&y zFOU6EuSD>-1s}x6P~vw}D+RFhw>uT|O3Z$OAAc&is+s~W7{6BVy{Z7;7`s+5Fsr$> z07J&EJq4llf8=(&7Fh<(qs6&pd~PZq2Pny{RGJx~@q>)@q>24BDFDHbkRC(OZB7`1 zT6tJ|?1#ku%%~oed8x4M-ylF(d3YldEQ|!UR5`}dxB#Sp`V!2v0QT@vYZp63fMz7n znK^U(F&P4c&D7N_HM}4|;Prs~7?}c(6wqM_rjB;ML4fevLaprY9LcppfUtwF=iHwX zH&;t%uD&#L>^Ake^XFT8Yp+Wgtoj!6O4gRepVnfSS8B13@iiankA15Y1` z039jzymkQ80O1vTUS~f7*ahELzV|8sDWE)$pY*xU2oM00hwl^jXZ%cgFMf5C0G^|d*iZ?b5%)XUtR=Y1#sUPd@T0L?rV+! z@plIQ6?>sU3UJgJ=uM-(W-%*3m=erm_?`&RaS#9j00962009620096200962009CZ z&+|*!ew+L8p-Td2@RRpv@h*{|Ljvpse+v?HMSwlQM}n9I(ASli2P)MGJ`zN{0-T$m z^=k$n2_jAb!$T5S1Rn_^6kvErf(pS$g2)8u7p(*}f{z3dcL7@ou4)D!2|^d(K;fss zYVyh2ND$}>;4>gd5J?I^0t9d_!4u)_UJBTfB=9T31g zFPCMRE&#e9z<}ZGwgA`CiXnj~WUQOGqv~i4pjCL^Vg-1WFSc9JgBym4{aMz%C(qI& zmMu+x4e@g-MR{hM0v3#0E6DZ*zl;F1aP8o+QW0pZnK6D*qxIN*oi5;(qAqHF9C~eC zTC(NP2RYm^meH}+_ZA*pSG{^oglD8*;>fy-&aqvFdb*3-4 nz5)OM000000001r`6Ivphr|&v>xn6M00000NkvXXu0mjf=5s2F literal 0 HcmV?d00001 diff --git a/resources/images/icons/grill_W.png b/resources/images/icons/grill_W.png new file mode 100644 index 0000000000000000000000000000000000000000..2823368c919c9a155432eff5c57857ea9070c497 GIT binary patch literal 26413 zcmZX730zax*1cNfp@s@hB;W*z7Og|VAkJ36NKjj$%16~&ATlYUC{`S?f-&kvn}|wV ztB-=M6K$yzb*dDMvlN_gej2S}eN`+f#p%EHJ{Pp_|NY+YYu_cgx%ZrX)?RzrxcL&v0Dx_@>2to(jon!*jf8wH?nt671 z$Xx8=(rWQ{6Fxrk_3h;u`M=#*y>nN@)tc0K^BzwqeYUgxt5*;I(|4u)fB$2+^VeU0 z)!rHM%gg6?s`sS-x9UN9!SB)9xIP<{QnRcd{`xga`>S$Q`pdtD8}0wfD6Ty+XO#cx zB^AYYqqIteeo4#Djv2c1%E5jr>5HuKdqy}m&M1!3N*_5I-?vZF`YLbRc7@EWGWqDB>!w=32hh{9oCzYE_x)V{QKJV-M8D|;CXb!kL;G@M(G0Kw)eUFld z@tN9QgC2iBOS9{3o%q5Q`3t5Y>c!>#v-QE&%iZyfs9>EU&QZPAvzO8{Fma4#S06WGh4U{Ys{;DW^eG7}pj@UaYlv;95qs3obb39lX)>SG0f_Qc_bRTPWDKH1o2|h}%W%OQBV$k+s-l~@hPg|5$jMqpHL(jlt z-tjabVI^_^DEudztYN34@B_9UrlE)EtG#k5=r1^9e$2-GA};Q_hGGhI=e3xXNHG>I zluu1o#Jv>2Arqa78MFoJ4c>TNTb=xV9vFP3t3j1J36C~Uxk`jFLgZOUsG>{I>f$Kn zmm)r-O<7k)`!rE0^gU_TX`wl)w_93=>N{r?=N#5zv?EP!PQFU1N;*5*=QoP#s5tF6 z?)3M~$@!Vq>QX#C4d1!x;}1t^zf|rCJeEfBhcURHgx|4!Yuh#2Cy4^>hZLH==_Uk7 z(&P!vyOfwPYUh2${2`P+%bJ;6lgzJV6>F7V^2h4w|5bLNFsH}q=A7|GanTtU16|l0 zjm2nkF>2TP^cq&NRE%V2@zsIWuM3yxx?8V_iO{&yFchwduJsL6V%7^@46QpO=GLVo zCsrGyLa0Vd=W{hyJZgsPMS7k4vE~+f^JsThgNX7lT0Z7jEU-+cO=HznSNR6?0Lq&& z3jhWM?uJ1Mfd}30Ou{SWN^U8I8^Q);2Z#TBWA}23k}w6{z#Qw8(^!9MbSp!l^P8W) zp=j)TXmi`pCS7;`^W)}xQ?4dTDNr)}^f5egpz7fGS%-@PvP+xV`C+IFr29h-_#Rg&^2Dm` zno;;u^@XWp-}hDlV)s_ZF?^`YX`~$d!h??SZ|i~ejN^H^mR6zsyBrxD5q^D=msFHZ zdlf)1bX_bs%M60>So=8d$L9Pz#CE37HD^X(2c06_HrgJJKWO%hB|H!_Jf!k8p`y1-oL2dvd$-(4__KmQ zE7)Ip&oQICw5V;Utu;pK`2$K~lrAbui`t26H6lv_h!r-QZBsp_(1TQ#5i}gK{XBZE zj*!OKuVG0`|FM|Kbm_xl)oOJ2^v4rj?tzVI!(Q*pL zBFaIxl7jenTEKDDK1PlwL+c)&=u`W5L!=v>iEik|Ev%O(W)N;FC2uh}Qp=K!uAbRzSLA(r&Ox>S0bUXOCneA`zcdy^0tHy4Yjp$sQ&@~WDhrvbRgd?2`0MseTx9x3C;whA>3 zkuTB|DPwE0@=HhiJSPan?^A5qyz@>>9h;0G#bSFsP_gzOE^h_R0H}zCHER`zg!F2# zb&!8HWrC}HMe-9wjxYq_>{=>gg^`BtXAq6SuM=@}w(qCD-!G}y_6G4#5i1nPfkZ@% z3v+V%>%1Ff%BkyHYz)VduU43>>`Lq4urs~^6G}hxQ zmrl?kYFAB)M-=JX1Rd%TW6sZ^umwOdP)%yz+hyX>zHXsCU#|PelD+VnK!|$0Z+xaa zWX_H4i#|F*NYhzHG0DDr>kjZx2Z{2>x-8>}5~jwcknREFOx7YwamLSOM79?d+*5|$ zj2Tig8)HoT0%P3Da<)6o55o9-fOwJ~9bySd+ z&Aa5SFQ#XDD6l}fPb#gLDsO!-vZ5-p{+8ds37@AO!P=z00X$7%ho8Cm980QZD@gByLGxcPq!l$Gu zxswJG(qN!>`zb~_W`KPvh$Uf+ZKs)!BqJ(@Ga;dn)}ku;I%`Vr4gR#EkZur};K}qm z4os{SL^Am9_&q@*Y$?1TSK`gXj!-OopOGb&7^qn()i0+g3IwW1+G`B;DM^XSmr{cM zkI{86GHR;I(%%;eYcYX1qW-wbHEV5d%^>T-zkdX1D)cTC03c=WH1_#bRS>vkHWO?7 zK_g}d+&bJli}NMDAMnh+9zSAUF)Qm*?#>vBa7*`B@H5f=^V?%PpLxjuB= z>=|Wq-xX*eaxH41jy%gjhZKI3Gp&o3p{OB_SO244-O9Y1b!og~j~uO!>CZ8$j>k5% zMwn=NJ?SH=7qyiL$55$@x|{knuzaJO#t4hJFa?LlfIv$f&MN{LUn#@7emH_p%oB{q55P<&NxcoxId~qwL}5 zEgX$4?UR_^7$3WAYg?ZK1TdGMNvP8tawqyRf6sB?#ANxM1F2y7pIYbaUnw6jqRg^i zWFGsDNCy4h1e%*F1{y%hG6ou&lG+_Z5xtR@jyh8nLjWmor^mEgnS?O+qtmAGn9yps zsnp0QSnOdZxQ?-LT_UA>fOk0fD5Z}C4_77tOUBtFyjAosUB!s3A|{h_5!8eJg_5Lx zObPLvQCTAdme__k6OD;cQ6-cx86lFvrO?MzpO|A&_&D1Cx^ao=NQwHQN^;IxjVIJn z7LD3Il^Fp2R#%;Tg=Q1jNOfHM|AClhxvBE(Gvvgm-obBdjz<&-X1bvwGh>@ab`E%d&YYSgp-1NE#VtvB( zM2^n-^6`!lRGSNVfyOhkkM-co!zgW^t3+vTQ4pKTj9k6(>(+=|QNkMocxEE?>q3q< zLn;J=eN9!`+JEmk7QFDbLdK#x(-4nI+Qs^CTtqxTdqoRL_K+AlQ^g@}!GlSNf~` zkWf(_os@M-0+n)gRn=d|H`aXIq6^cVNh~ok-r!GLiL8Lb_qrB*LVCABsDU(m51qmimX8Iux7EeYA%K2%V+==CD*5WlN~D=v=q z5!D0!>nMW89F4Wtl8SOcZaB(Qr1-q`p4NNr1wqFIRi#0mhBR2lhPCAws&I zaM5~o3kI!0D9dHKE$U>VlhWch@J-mEXl{=+UH0n!owg`n>>CKH=E|zcYrxpBHVdKC zN>+7fJ)QNB+gEU}?VPd_uWr7eOgOevT$jpxZkbG`#t zNcK}=l=ua0$`eBxYe|*KTiURum0pRPA*FVjl4@{x5~ZjHF#20jveDD}r{DKWh}qAQD?ZEJ^hHZJ|2>c1ep&o{qyb-ctD>Yk#JpvN8&xriorN%qIf1 zF(y9KN2VCdJ*~mv=li)CdTzM(_zcb4!{}4A`iI&Knq~R!xv6bowtwu9Y zWBNjxx1*Alg$xdPbAC?=5=pHu(Sqnon&Oagr;FYJv(&eyGKzDt)?uVMq`MOYG0#%0 z5dIB(ZU7P!CWaMYk`HjH!rQqER!R}~1ibB6N%-_KXl|3Ff@Nfsxd4cTdamZc^8ESg zfb9CZ^#L*HnZv^WyW=oRYVvTzIdmLOPSPK55ii$B2-u{c31*Ex zHV;Tba&O_k>%}^+W#xwuA0ju0o-W6$1*#B=QxkVK?;@yU7!9>cjMp-qCVSz_Cp#9- zKmY3VY9SX^*hPP1l*ak*7sDzRjjroxNEeF>RU?xfj74+T(2v!kal@tZySAh~W4Apw z-1PB`fQ~}6O}o1fUeq`sNb};^`oV7d3--PPp+>{ixa3Sv5E3vrxWdIaLDLp_w0nS1 z80dEMJWwMk-KZL}3YtPI%QI^2{(|n#sGJIAHeqk?jEFllGV1vsySGAoSrQ_b1BX!x zVjN0AeN&22DZLgR;xK5wY9!fuq2^O?H&e)^$`EJj5D5_i80X@4SqbV}>zkRwZI$sV zpb?~xB}~s*U`M%_QusA0BT5Wc1y6J(Fjy8=T-4?tLQKlQW}`K_?kaR^1cw(y?i+&0Rgz^i*rokg=D7p*l``7YYJgEHOJ3N z3XeKFMKE92QWt~NJ$KB!EBkxR7~iE-*&w5|$MAZYD!N;4l{uCTUtbzc)wmJ^&lgolEV2pnp-Ac>t zvq~)zuPLOJ+W^%rQf=#-Dd0Sj0!$cy&Ii2R)0q|*zI#{T2@y=R-AEMe;8hhgA&FHK zq1c9%kS;>3Av$|c?Te-(r|0?6JkUb^)r0#n8tb*DBL^bm;IjSEoB+Z)Tj3_o_KB^6 zG;NhXGwv{ZB0Tx>$iu5!0}&e(whLZE!m|91w#!>R*SZsm6doi(BO}7{IK{pKP!w(w zVdx%!FL^C1JQvgpaY6#iWJq140&(;z6Zee05Xb`X4!(l^QOQP&@yhe$a}a2MBkcr_ zA1Y-~l9Sp>kn9s!iNUH1_C=W9D7%|T!9t=h>T`7t;uS5Ly@Ix5)fFD_?1g`%_{xF} z+JYuq7=XeN`EXa!`97kvRGkdG)hTEmXS$=k!@5ldG1kDOKK6uK-#`D3mRXDRm<4Fa z6Ek$bKXr3k;nDLAIx{lKtVt={QQkdU#4dHPo@26OF1z;(ta{qAVz>Yt8e?<*t(k4K zI_Xkw&9kLf&TM@3{1GQUj>5s02V1X}^b8K41$p-I%7)TtKETxG5~PV$dUd;sPR{}L zmUZ&t=W5EU+up)kQ_l^`-8otFH`lvS!CX4HXv?!oDlB7MLcN6IL}CbnzvJ4K`6rPi zZ`+R5OV3CmUdvps)wZ8Leylt4>i6;wSTVH0t<-x{o)EY|c=Tmafv*~?9z@)R>?q45 z`RfDF+RXNi>obF5Tr_m=PXgsCt(1`ktU@kIN-J$4+>RDtGeEV$!P}~oz9KmQ0=vK# zpa^4&G(*-{^Zu;F+0)=gZDY^ta2k-TBxmR|?a!mlW z4;VvG;^m_2Cx|3RxAL}BmGvcv3&DR;vho9}A<)AyfRR8U^P}nvk`Qr)RLzSQJ61U_ zOfT73egzamw2P{3ENm95w;X;jt=6|LID9Dennfp#TDW&Z>QcuaPUt|&Y^^W)pWNql zR0om>wKFSUqRQ&v_*g6oA`g*+t%I*dOr4UQDeE)bCE6Dp-qPMV>ZVFS$pw;kWo&3} zH0RF%m|(7q+ht_|byIMwlBr|2Slqd-L{1H?Z6~Fz&z`Z!HgazqOB<c@VmSiS&hEngtQ?b{b1Ii}ADo%UNInMSyy`Iq2gDW;) zzwRBM=^s9^?-c48@t?f5Joy^|Wyw09J4tZH811KhIu5JQqV01fb|*{#+{pIhAojGL z?u3&3%2aR@A%;}z-%x*EokYA$ zU36pjy$#4io5Cz-FV*LE3^h1YM&YNLSX0GTlsRdAUPA(Y;EKz;&Rr~RE{o0*EHb7c z#AzFE68e8n z#RD4!1}PcgqVLJN0iM7(TYY=Uj;9-b_~d?J^?Lr<&FbBCyrQ+B?+34a-G|LlB; zkh>@hgUPnx=Rc09N-AEL?@Rbrc_N{0=r%SZsn_0U+=g)hcXT6jQT{+mpf{ByLz+7p zJ{j_iAnm`<@*$q7@H&=whK#wIb1z?jI_3qTM5QMtCZU_g^0PZB_VELW_EV?HtJ~+m z^>6+Dgkp~_Ap9(NXN4sd+T(30QN5+JEXxp1xfooL(93&K=_8CqK*eGg?Ev^4f{338 zMV=Pp%@{WjnuOPA0vIs2Fcq;{i*;Ev|9#>Nf*~ZXcNjVHO(?0dt>8Ks^28B@20%?Y zMV2ROeUUMY)h;8N(Pg*>5LV<-qJbGaq|*?$Uu0A%T>2Um6#7M%x1#L>{2_$AJI&kz zqjEnvv#4Ni8+NyB=BB*s5n{K+QJQNJU$@xQlKR$&8xD`A0S6bJUcuGM``upUE}e3O zAm%F%8ua9}qla^@U&j-;3#LMth=Ke%fNJ6_F}GOvu2<9A8G@ju6z-y~sH0I5k7!A~ zhS;yXL=7R%Av48Xn)3-2ou)zBWlX8_=y>dOR82sz)y3E&t^sMtYY=n@$*&#CW0q}< zqeyV{jLOU@s{9ogBWfjHCHUA`{eMS`Is)U5*LBgJ@$e6l=|V7=qfXf*t{Jdo!K=@o zUA&P|BlHZgGXV53DZX**GbobvNDZPzsXyLt8I9-2sI<=>4q{3|<)TvH@qw(zYKSNi zS^2XYbW5s@`f#xW-^`WyyPj*6*7AQ+7*Mqx4mhine9htV3on3WCxg(AJ;2q_WXP$F=#qpbiJ@sF>>XNyTq z(^@IEx5uPiVnLM_jwKd#F||g8rigD&Wor_`{Fv#%G%o%D4K3VTURa4RR|M2I6CI6< z=!v)@^kS>T>m119LgmH2&`A!?Orf49y(Tl9lQFQCJh}E4i6^edA2w=ERD)M=-|V@; z6(3;qoMPp5zN_|y^C(B74!xdP%ZOD%wjs^M#Xwv>6U3F4sP;FE%SzN+SO8O$J&Cf^ zB?37FZH=NLJk@9N(h48TExlA+c{ZRdbzDDVucNE}ItdbN=Mu!JyPWpWjZKk_8zS zm~i3&M6d)?Ux;s6?OHBF#KYxQt+PpJgDlSVu%u(*D{RRZl7^Wt&A=UvhtW~{fAmXC!^lL5eNk_ z!2yuJ+UAWFvJ1@`X^XIsz>_2w$zr~8$lO}5!VIMv%-F;pHsQVz_SSkChQ?F63*HiU zw)v)wzr47UKL6#NbXAQ|1f6VQfGvCt)M7N$*?%Z8Av9fgkpTj%%>%bg(Ja_Y5*Z1Z z-c~ALn*?dDdVt)5+k6`!ackYI0l3%JG`aE6GXjNUe*2I4*+6OGAM4W}=dH6$f$pMud-=kSvl5C;#Yk(QuEH=sXh`;^`pRX*)Q3|1!J z=6qB_(GF;NmcwT-_YZB8Au|7wV!eRH^q1V+noH6DJ|I+J7D7o5U8^O*1d{-0@w9&G zca4z8nS73{okP1pWo#(t3_Iy8HKiAVQOgl%iB3D(G^4zHGby{=JgO3<0sa5yC2Vqp z#)9RnLr09l4z=JObcUPdyr9J$60owTGcW$Gx@)N2&QhKs2MjIqQV>^?QfhtsQ^Q9z zttEeagG&Mf07B}jPox3~P+|Mk#CDpX3HOshPzZ8r33DdFGsXEor*!)GU4=5h0B!sg zj0*_kspu@@c_$3!DgwQ^-#G18p!@rFvhYSr>_EQSSLChWiUVXP!)(yNc~xz#S25d4 z<7LN8%YR3qalGSdM8TtXmSL5HpYhShl8TdxF?@c=JULGmp)w%> zfdmWAQ^%$wHDld$asI(es9MTbgqO!*sa;T7d6h6N7D}z+PG^yuT0;ac|hI z`XeK$D0a&)z~^ki0zk2lXC)7NgN@poBo0X`TsBvia~bn8Obe|Dvn#xpEM+J3vd^$Ns6$~z*TYmqb1Q3kzkAO;zQkoiGVRvd7? zew`kIlmGau5u3=UE9^All8Or+o*r%t2|<>Cy5U>y>!>EG(Y{a00un#9GlMB2;BSjO zM7bYgz~tIz9yA?c#c4&U1U{6G_!&R-$Jp?)KkQXC&CZIP{%2Z&L|o3V5L#8rcb2+e zKLWl!obd_q5vm6&ZIDTR0eYyjDXhH`9qlNs30UAeaG(D{eb(1lzflsjDm#P@@~Zmd z&LHGVLMN1=By*zuV(b7IdAytnOnWx9H7==LMN;Mp<*p#m6|zN^`Y?k{nnsH4C(zLf z+K~MbLykO#5h5}&myJrd$$JQY!i_Ri>X(V5r(A_{Vrj#cyMcD<`3Nobdp&fMW=eWf zQrF4eyq?QnYf&XRfiVUI4eg1`bb_5ta2ehChapc=Y)b(JrCOxR5qVHy(@o?I{KLa5 z@ydf~z_BWbv7RtH&8RPyo@n1kI|vn~2aG>3)w2l?r0VI^uW+M$kKrkWdmx-(d&XPd zc)UDp0m00mR*3pt8%`Ci*5(eBL!)odG#c7cm^t7xK&@O&AS&qwUh#Ut5_ibBQ{uCxT+zfqwhp(zTw2XKIu9tT~hpjL=g3r6`~C!(Z1>^aZgq6L_9 ziWLShwdXXdyQ$;jjAnM>>gpb(>vB^Yx(XYCNl>6L|JE1&$7&+Sul%^pz^P#wkc5(H z@m(ZAge87ZKMX;{-KO&E)5pgmBFnP^kVRHQdaDN=a#1>x&tojqH-;U`S-3cs@kJJC z&iic`M(G+P?jo>5u!~^U<8>>5q{9(3D30bm5dtr-)MH1co`WGn6?%Qht%)Abzfm`+ ziFBVQ4xi0R*)v^Z~oIt(p~&Rv73vgUU%NbU?igB5+jYG0vNjmzI$8! z<5GMoLN`$)E@aRG(2|>rZ=g(zMDzPjRy@UijI=;P*>fBoOLSe8`}7b9fUZVgc;09Z zFk-=0@+(1?@gSot9(FGwLzAw1Nn)k_C(VeE;1U=e(XVpRtv2U}(uN(v7@J%*@a&m; zQnMJp4F!foL)WWZllYy4t)LS}1=S6%hthQT>S$ZycP{gwvjON01ipAC`wtuA@oOp4 z^gUxK4V_G2;SkjakJ_*nI$9-Alkx2L2*F*Cq&@FJ3ki$0Ps!>=SfGXb=p8yp*>0!Z z$*$)H30-Dd9}C~FFA@RsCbB^MC3;X4H`34C^>LS33+F+Q%ANWZqkV{i8^7k%5fiVY?1%Ep$7D&545J9PPMh5Q?R?&MAdIgTXF%_2WWbU;I%> zH9cCRDz14^QuiIVUisG{xokm{Y;pxTua}jTu&K2&WMv(xpiM`ExV|uJSPF^&_v`?_ z63e|z44_%Up2;A0xx|SPAkun@S3hybGC=pK*g$hC!U%-4+JH=42cuhfe<>6d54Q-yRt3fdVhe|G+{43Y|R(w{60E=H_7bxE3z z2vQpqyf12|JJAyY&sdghekzkGd>s>#OrL?)1yVK90002XFd!vd z44Gri`MO_z!C%nqFiv4%9;+oG8jw+R{W{AgX#DtQvk-i8GCs{Y86W9Uoe$uK z%r`8j#+&n(lcUX_MJP(_jp*HPDlZRe_7I5&mpN(MzM&y2_4)N`1T6zk(y0o+;$4NK zZ71Rn!9E5E$;^=vz3`{7)bXxMHcHMqUlGMLEBhv<>H^$GJu-Y zR`DfT`#_V`jW7?eIllf>gdcUX*2q*y=q{y)FA?JqH|H%&-T@9HC)hXnk?rNdtLmq( z^0GjZ3g>AK)Z5g}`2(^@U&W(TKWO=LyI+10m=F#qI6euoN9)iN z!z!-xmWpqNQ*ObE(HK_@|LHqw6WyXduUR8+P-?F}ITcP>+JY3tl7od#L-w+j_hp@<3DQ<^1>fb`g>j|fhI8CQ{Adf$wh$C!~)EOt;8?y8<% zh2BCjJeBZwaVbe%JS;qfCfWPJPT1FiP$E(axrm5k(HY!r)Gr%hP0UmhG>^)fP1=g~ z&j6B3w7$V&*A2@w<5lnrfPr(EqKQrEhDzK8q}%<3U1&yWBPFThTy80WCI?^^)GJ^` zdqLTrNR?#Bf|_cjf(4aXAN(oC5GTUY|D?>qw{* z1~3!dGTPo~TdXf2blL_cgbsu`-&eoXHO&tn98L10f*Lv`z+m`{<{LNK6$%lBL{wKV zbajHmc_*1@N#iHO$k1juM6Fqkj?f>K(+GDMtcjNcmCGfee*y`NlTq%#U&Q7AO0fok z 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 HQH%c{FmmDS literal 0 HcmV?d00001 diff --git a/resources/images/icons/grille.png b/resources/images/icons/grille.png new file mode 100644 index 0000000000000000000000000000000000000000..5bc7e32b631367818e31d00a8517522b6911b6fb GIT binary patch literal 29446 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/newdoc.png b/resources/images/icons/newdoc.png new file mode 100644 index 0000000000000000000000000000000000000000..cb90a3ed8c9b4d5162b9a533f058d8e1b8850c2b GIT binary patch literal 1029 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n3sFHIEGZ*dNbG8BP39y;r$QyHml7A;#c0R>Ak5GF6rhd zz-2r;h|4f5baSW1La}en+e|#0!aVI?3uaA!IAv{2=j@`Z5?e&lf{c#1KIeO^=JIi` z`QG36e%kG@5&t~z^Sht#YSU*Fzn5SJI*5T`mj_Gb#%a&`rpWAC@>T2g@k76k6*;bD z5c;u2#%(FDww#Y@=HyHBx_DGgnLIui7gcEL9&L$QsG+MZq;o8;A?w5EBQ?iwKJXDy z@%X{9Pxj+|$)6XeEjV|4r!Y%>c+UMZCmmjPt!9u+lBwmi;Z!ica{5JoJ4@*i_w6hk z3u2g90`wS}G^R5!PVsJFIHl^q@Ki{lp@>t!VJDH&j?Qzk_P?fIY5YI07k{LQmfr{>d5=Hj=%8a$WXO0vK7#`fEscV?Os>%JYXxiJ0zmYrLp zI<6=$*!($S%Bl6tho`OHZF0L+tzquBtx3~YtrUMS#iu>$X7*gA`AiIq2&j<9RP%Gs zf^C=I*15c5?KmK&V|qBxt(C!uIb+I!Jg29Z{8AP^V`vsHHj=Vi#ksFLp1nPaKS1xl zQSSdX3=iBqgZ%_Kn{k&bvy7=ptlJ`4Rdt+CnHSgc@CG_g!b&BuIBO)79t}FIUygh-1 ziHQLY6&PY0fSC#tT5s65F=oN*IZ0|gk_ofw%9|GPoH%O0QlYWd<$wFRwE;y88`r(~ zKEFACnJS-gonFBE=TFYAy?S)nv2UV3jh%IzIR9O}V9$DD_J*AYI5Sn+{=b~5uPg2H zLAO)kex!G?`z|Z#B^|-Jn`-Sj;nK4}*;6>qkOM+|GkUJYD@<);T3K0RWtQ Bu2TR2 literal 0 HcmV?d00001 diff --git a/resources/images/icons/newdoc_w.png b/resources/images/icons/newdoc_w.png new file mode 100644 index 0000000000000000000000000000000000000000..7f1325f5288de12e81e7a2994583ee06f5325b0e GIT binary patch literal 969 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n6o`y978H@y}4_cAsi@i;N$nE$pN!tFZ9gy+HE1Z^2IWz zJhP--UgGQ%uQ^&rtmM-Qx$d^IV{&U);Rch4<$g;Q%8a?rsfoor{_e!>=+s?4{a*F= zzyAwTK8C#e`|j@4eY+)`T|i*hrp$k-bN!ZU$R}^|)v)g4&CYe!Wsv+aspihqwab2_ zWS#sLvQ52d;Zn8+o;p`Mu~coNg=N{N#5kMQ-eJBW{bzem<^7uvYB)G@nhuty|1m%J zXM>=K(3{^g4%!=(=UjX0B6<2X&j)UXhv!*ZXEfU%eDFM3O~b%$mmq_KB@=^&I|IX0 z4u%CXj0{th85)XM7y|kj7)}u-S)lXY{mt?3^V3RG&u+QBpZ`zs;lt`@o@$GqS$SFA z*>S=tr^^wmo4$*+uKQgx<<{F+RNrk7s+ZtA>&SYhn(67aCA(oSY zg@K8Iv4O#XL4iSlfdid;MfdV^rf<{p)~~Dik|!HC$#v=9B5vQ+S5NrdpUHHfZhQXO znc?16`|=MlmfwhOy0`o}pV4lXoc#AIB>&vIQ_OC6wrnP2h5F@v*X}INdc~NNle3Do z;6`!R9}#5xp7J{EtZ{qmSpHr)i2uPG%e@SDPOq53n8K!^?eZYb>FMR!Cye&8SNwf8 za}KZgRi1xWvr^K2loq_-THqnT^QQ8|RyS2C39nRe0x^v@q zTsMP2)#v`SB-`=_(^mf8R#H9T>9^O9?@s#sT|TZX-u3g(%g+|BUsA}wDrV9_d0AP* zS*PAkch}Co7FFHvjVIK=b~#j=z3Y?hJpA1E@wHoP7tdpSB~z}Sbxiip5{9(Y?7~0B z@6*)2Gb~y+^NalQBUe*prWx;Kf3Z`1#mVDJ$rDdL@K5^}-0(;J&fWt%a(ItD$yoPu zlWQhVotE(d`^}D?c3PW6C6_mDne(KrzXJ$X+>U2tW6(S!b6GpkG98#V89ZJ6T-G@y GGywp6QIf9! literal 0 HcmV?d00001 diff --git a/resources/images/icons/nofullscreen.png b/resources/images/icons/nofullscreen.png new file mode 100644 index 0000000000000000000000000000000000000000..3a1d642f822a1114ff52645a38c8e37b54cbc0e7 GIT binary patch literal 936 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+n7uq*978H@y}4tbC+sNE_ObMzf@0tj5677y0cz$3>Ix+# zD((+h6x9{?F_x6vl%6n6>lwpDjR_MLc^GhO3wFG{`?c?}d?qC*Pu5@X^RLBBbmQWFjga62|L(3-_^SCJ;`8E7!PiY@n;!7Cjn47i zZWOV{#E>s}$@=}3!pGvK&sw&R?Z?eWslRjISFN@BdiUb$W!GD)c#C%P%=wyXvfo|T zY)bB4MFvI(1_1^ZqNoYVbIaJ5OPmc;@6eg;cQHrPFeCCwqT;Nzyr~zJX5}8V?>HuV zwY;32U+SKZ$?cjmJ!#&a4ZUs8;xqomgqZGLkv-$BQh-Uc{W7=Bs`?IlH(dI|A*8a& zBX>WC$XT(u)faPCu4n8swb%N-=w{G-CYQ}e)o;$q^Nj@hN>5I0*4r&dv(HV7IeZSR zZc=C3YpeOX&6SI8ZrZ_r;RD-aChb7(dbYKeED8)93``9Sc&P)QJZnFvzS=q?JNX22 zUeS-38%t$oYn^&#Fx~jT(mLI3%T{t5Tv~thnn@<(s|`zo&Myl5C!a9&u+oRM`*hb$ zJIO83v-a5<;k~cVdd8mqqsM%h-Co`C{j>S$wek!8F|}V~x%=$TsHh`-0KW8 hV6IF3?A^e~z{B(XfkM%HYhc!6@O1TaS?83{1OP{Ah;je` literal 0 HcmV?d00001 diff --git a/resources/images/icons/nofullscreen_w.png b/resources/images/icons/nofullscreen_w.png new file mode 100644 index 0000000000000000000000000000000000000000..36d8f46cfd9aa56b8cb6bf75ade99c34683cef29 GIT binary patch literal 907 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m~}l}978H@y}8rxd)q;xt8>at(DWtX*c6bwwwv`M7@1oo%GJ_teO5t?&PKxrIdZ|PyRLBwLOzzj(+Z1{(Vtv z^)9^);@v;b=hZrwOJ}?MC=+5@a;%*9|GahFdu==NRCahN z>8uuAApfp@$?Ls!e2*++=Wp}n&SgFOe%8Os6XH|6e#}s*xcBGbk|y^3m;WgF{EoV2 z%=G2+zsdJRQ@8Du>#$>rd3}9{X|ElVjpV=6>sc>x7_4?}2z|!&T`_k5`8^xuXMOG7 zxYv5Aii7O!|DkgC*#51(p6YinYZg``Q3bYKu*U?GYMP=3$%v*1X^ zwl6;M%{E?TCebRl&M2LizL;aFGrK2a+r<3>?6Q2h-~Vh{_i)iozUNmnwrQ~loGml4 zUVQTqx5BKoFQ$A@nx#95VRsqhqMN4-a<{o`ZjEEfr-Xa}IG7T$WG0{%23K$^U@AI~ipBe4jJPZOOhf%T4@2;QnK4 zGhb*fsFzzl_4LO_Q;K-I547&<4L|*XNhNu=T(7=o z{AK@ORit{pV)42BYn83tTKAdvY%-X${PuITh@9LFYwsodC1p-!a#{Rr*3a|{Go2Zj z8WK>2yjX&BOQrIx-1}kr+Ov2W7#^(sseFLJ4fw_yp)78&q Iol`;+01gOs&Hw-a literal 0 HcmV?d00001 diff --git a/resources/images/icons/open.png b/resources/images/icons/open.png new file mode 100644 index 0000000000000000000000000000000000000000..3bbae78716c594fb3e33507260a771b24d6fa5a3 GIT binary patch literal 1170 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+SWG-!978H@y_xIpArdHYVE*IzA~AQHw=3-38Fxf)o>7;T z){C7QyHCYg?UG&8+{qc4AQCI2xkRsu%gV+3p3O{wr<&m(G%5sGK3=Ha?IyHsm+@}v z_p{%BZ$ADeF+KfT?f&ogzMp-w!Vu^j28IRQZCP~@)zSI4^4M~AFIyx3`8WIQ%B@T{ z4t&3H*7^1^QT}DNx98pdcIMQER#m( z#5S?;3O2oW`=jr+FNd><T$WX=5x)%bo99_hQw*K*FzCB$rqB{W1(x-3{<9Y@ zJXoLBG9|L=zf+W-K|6z}(Zs#K@0;E~%aNxhaHL{Nq{CbWy${CzYNz)d_k57X;n-5= zwc7BEpYGXMTek=InF>7b9eNae`Bv4#nD?dr=hm%T=lLV+K3{*?=Q9kc1t;&$@A<#S z$L@re7Jnqusj1aVpXh~t+?S^*5F)2^Ao6LP#GNw}LpX)>4`e=#dur@)YR{JW$}4PK z7~I!&W$!rfDPTL$a=p&gd7_HzY_4cFM6b^lU2&0~X}dBRGVM69Tg5wU(X0P= zodubGguDwq_2C5X`t!CQ>P3ErziXYjwJryKNTM`@mXiRb|@S+`YEPH#^R+ literal 0 HcmV?d00001 diff --git a/resources/images/icons/open_w.png b/resources/images/icons/open_w.png new file mode 100644 index 0000000000000000000000000000000000000000..9bf7c8ad5546074bb9143e6952f12eb7b722b7e1 GIT binary patch literal 1121 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 W-&57mZmM?x0000F7j?Y@2c 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 Ef>H=zA^-pY literal 0 HcmV?d00001 diff --git a/resources/images/icons/play_w.png b/resources/images/icons/play_w.png new file mode 100644 index 0000000000000000000000000000000000000000..21a274deedddef9f6bd56dc32a9d0afbee0a2765 GIT binary patch literal 1748 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/save.png b/resources/images/icons/save.png new file mode 100644 index 0000000000000000000000000000000000000000..2947ecb9c9a5daf63022161c21a2b2b603415f44 GIT binary patch literal 1242 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+SZX|7978H@y_tK~J0wt|ef|6di8F`n6UsOnZ!8OK3ltD( z%o8zBoUJisMXT4=6=E+hF%{4DTq`_9L1WIWx!Tg=ue5lhxauY<=vl3Qd_iHN<@c)d z$A8-t%n&%qz#d?=kEQQebSQAZ+@2Ft(Mo zmx6;ti9$o(CJqK7-~zeq?`)^`){5)R<6mWLUo&UTkG~aV+i%>HzN9pNez9A{ z@^j1{%g^}K^X>Z4dMN11<)`N!=gzSfR1xw}Z?$P4pHtAYz zk3F}J)g%3D$#>S^8c!>|M_-Zx{=J^_{o{qNCBbi<+57r^t0HSWP1bS0Ia;(~&7_}Y zeGZd)_!mz%zs}6V+fyOTA3OJBwXTDv z+}ZM(chN^q{q>wBhH_p(9}5jvFPmh3^}1>5S?~2{dE*U)ohq-@&St(Y>hhe7oTyHw8m(n&rl3x9NdpWb>q#&(L!qsu+^9*iuSPPc?Sgf!JA`L6%1 z$HBOSqx`JLgfyEky6;$l&XGIi;czEd%fYj0a$mbLpO1~;gANa~A}9O%YV&Ik+4HtD ztUKl$ANE~f!5@pc^S#&n$ULhrpm1_#Re1dypwk!4FfbE5aJ)jJP}k2!XI^py&$j-i zdWR$PH zp2lB`*}T~Kf)9DMV6bNDp;X>z@Ozqy^4f~bit|VayRbY?7p}E@>a&5Z+04ATzfmX z(tEN}++{o3GXyroTh29BwfnioaMFo z>AO|4XYDFFFU{EZD%Jk<;h(L$!kJdr%G`-G{OsLyj_diB@cWT#87A43UOV$wgMaJv z>U*3MrnE=RoAop9U8SajQsXmg?UO%1;#>=M+I+G7agSrcR+}q7O7tTbC-F^B@jhKH zIe&-D&%W~AO{zDwcG+CnF!S;nhPlhzdk>vD{IOHp(RTBPPcaQ^HkMCXU!yuhp)(FM*|6%}DZCp?tW#dHMj{AR4Gt*Y2^%%Fo| zpHlXhOqCaJp2Qjn|4Cr=c=jPr*dmwRTu`A|$nV;_|KIONao2rdl41S!=d>CW^CF$qVu@+M6>Kj;0e5V3>j zQ&@f^n@AK*_q=}U$V&Y+UnhM47Xn*;>Ks8sND^>bP0l+XkK Date: Mon, 23 Jun 2014 21:47:41 -0400 Subject: [PATCH 15/37] Minor adjustments to style sheet --- mapmap.qss | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/mapmap.qss b/mapmap.qss index 70ed94e..b8b911a 100644 --- a/mapmap.qss +++ b/mapmap.qss @@ -11,6 +11,10 @@ QMainWindow background-color: #272a36; } +QToolButton::hover { + background-color: #0c0927; +} + QToolButton { color: #f6f5f5; } @@ -26,11 +30,11 @@ QListView::item { QListView::item:alternate { background: #EEEEEE; - } +} - QListView::item:selected { - background: #272a36; - } +QListView::item:selected { + background: #272a36; +} /* QListView::item:selected:!active { @@ -44,6 +48,6 @@ QListView::item:alternate { } QListView::item:hover { - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #FAFBFE, stop: 1 #DCDEF1); - }*/ \ No newline at end of file + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, + }*/ From 7c37c0ede9ecf303a753a966b8c6efd7f1739cd2 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 21:48:05 -0400 Subject: [PATCH 16/37] Added new toolbars and their appropriate placement --- MM.h | 2 ++ MainWindow.cpp | 48 ++++++++++++++++++++++++++++++++++++------------ MainWindow.h | 3 +++ 3 files changed, 41 insertions(+), 12 deletions(-) diff --git a/MM.h b/MM.h index a26abc4..a9bd9d7 100644 --- a/MM.h +++ b/MM.h @@ -31,6 +31,8 @@ public: // GUI. static const int DEFAULT_WINDOW_WIDTH = 640; static const int DEFAULT_WINDOW_HEIGHT = 480; + static const int TOP_TOOLBAR_ICON_SIZE = 64; + static const int BOTTOM_TOOLBAR_ICON_SIZE = 32; // Style. static const QColor WHITE; diff --git a/MainWindow.cpp b/MainWindow.cpp index 26428c1..4bc35ec 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -1169,23 +1169,47 @@ void MainWindow::createContextMenu() void MainWindow::createToolBars() { fileToolBar = addToolBar(tr("&File")); + fileToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); + fileToolBar->setMovable(false); fileToolBar->addAction(importAction); fileToolBar->addAction(addColorAction); fileToolBar->addAction(newAction); fileToolBar->addAction(openAction); fileToolBar->addAction(saveAction); - fileToolBar->addSeparator(); - fileToolBar->addAction(addMeshAction); - fileToolBar->addAction(addTriangleAction); - fileToolBar->addAction(addEllipseAction); - fileToolBar->addSeparator(); - fileToolBar->addAction(playAction); - fileToolBar->addAction(pauseAction); - fileToolBar->addAction(rewindAction); - fileToolBar->addSeparator(); - fileToolBar->addAction(displayOutputWindow); - fileToolBar->addAction(outputWindowFullScreen); - fileToolBar->addAction(displayCanvasControls); + + shapeToolBar = addToolBar(tr("&Shapes")); + shapeToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); + shapeToolBar->setStyleSheet("background-color: #f6f5f5;"); + shapeToolBar->setMovable(false); + shapeToolBar->addAction(addMeshAction); + shapeToolBar->addAction(addTriangleAction); + shapeToolBar->addAction(addEllipseAction); + + viewToolBar = addToolBar(tr("&View")); + viewToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); + viewToolBar->setMovable(false); + viewToolBar->addAction(displayOutputWindow); + viewToolBar->addAction(outputWindowFullScreen); + viewToolBar->addAction(displayCanvasControls); + + runToolBar = addToolBar(tr("&Run")); + runToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); + runToolBar->setMovable(false); + // XXX: style hack: dummy expanding widget allows the placement of toolbar at the top right + // From: http://www.qtcentre.org/threads/9102-QToolbar-setContentsMargins + QWidget* spacer = new QWidget(runToolBar); + spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); + runToolBar->addWidget(spacer); + // Add player actions. + runToolBar->addAction(playAction); + runToolBar->addAction(pauseAction); + runToolBar->addAction(rewindAction); + + // Add toolbars. + addToolBar(Qt::TopToolBarArea, fileToolBar); + addToolBar(Qt::TopToolBarArea, shapeToolBar); + addToolBar(Qt::TopToolBarArea, viewToolBar); + addToolBar(Qt::TopToolBarArea, runToolBar); // editToolBar = addToolBar(tr("&Edit")); // editToolBar->addAction(cutAction); diff --git a/MainWindow.h b/MainWindow.h index b111c5b..8b8784e 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -222,6 +222,9 @@ private: // Toolbar. QToolBar *fileToolBar; + QToolBar *shapeToolBar; + QToolBar *viewToolBar; + QToolBar *runToolBar; // Actions. QAction *separatorAction; From d9d42eb556e133acc68eb264c50d7f4fbfe4c88b Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 21:48:32 -0400 Subject: [PATCH 17/37] Deleted unused image --- resources/images/colorize.png | Bin 6760 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 resources/images/colorize.png diff --git a/resources/images/colorize.png b/resources/images/colorize.png deleted file mode 100644 index f48e18299dc5649ffc260c0dd98c01b6c5359aba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6760 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 From ad96d87cf0b120b45de4812b261c6cc6ba96b912 Mon Sep 17 00:00:00 2001 From: Tats Date: Mon, 23 Jun 2014 21:50:18 -0400 Subject: [PATCH 18/37] Removed useless waiting for splash screen --- main.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/main.cpp b/main.cpp index bf9556a..7f1d6fd 100644 --- a/main.cpp +++ b/main.cpp @@ -83,7 +83,6 @@ int main(int argc, char *argv[]) // Terminate splash. splash.showMessage(" " + QObject::tr("Done."), Qt::AlignLeft | Qt::AlignTop, MM::WHITE); - I::msleep(500); splash.finish(&win); splash.raise(); From f5c05a2e15d61a868db09ad0a4ee6f72b7a47d44 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 24 Jun 2014 00:38:02 -0400 Subject: [PATCH 19/37] Play button replaces pause, pause replaces play --- MainWindow.cpp | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index 4bc35ec..aca26ec 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -425,26 +425,26 @@ void MainWindow::addEllipse() void MainWindow::play() { + // Update buttons. + playAction->setVisible(false); + pauseAction->setVisible(true); + _isPlaying = true; + // Start all paints. for (int i=0; inPaints(); i++) mappingManager->getPaint(i)->play(); - - // Update buttons. - _isPlaying = true; - playAction->setEnabled(!_isPlaying); - pauseAction->setEnabled(_isPlaying); } void MainWindow::pause() { + // Update buttons. + playAction->setVisible(true); + pauseAction->setVisible(false); + _isPlaying = false; + // Pause all paints. for (int i=0; inPaints(); i++) mappingManager->getPaint(i)->pause(); - - // Update buttons. - _isPlaying = false; - playAction->setEnabled(!_isPlaying); - pauseAction->setEnabled(_isPlaying); } void MainWindow::rewind() @@ -1037,7 +1037,7 @@ void MainWindow::createActions() playAction->setIcon(QIcon(":/play")); playAction->setStatusTip(tr("Play")); connect(playAction, SIGNAL(triggered()), this, SLOT(play())); - playAction->setEnabled(!_isPlaying); + playAction->setVisible(true); // Pause. pauseAction = new QAction(tr("Pause"), this); @@ -1045,7 +1045,7 @@ void MainWindow::createActions() pauseAction->setIcon(QIcon(":/pause")); pauseAction->setStatusTip(tr("Pause")); connect(pauseAction, SIGNAL(triggered()), this, SLOT(pause())); - pauseAction->setEnabled(_isPlaying); + pauseAction->setVisible(false); // Pause. rewindAction = new QAction(tr("Rewind"), this); From 00a437864d9f41c6b90ded7125377860af0efa66 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 24 Jun 2014 00:39:38 -0400 Subject: [PATCH 20/37] Integration of toolbars in a single mainToolBar, with runToolBar at the top-right end --- MainWindow.cpp | 44 +++++++++++++++++++------------------------- MainWindow.h | 4 +--- 2 files changed, 20 insertions(+), 28 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index aca26ec..5ba69ec 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -1168,29 +1168,26 @@ void MainWindow::createContextMenu() void MainWindow::createToolBars() { - fileToolBar = addToolBar(tr("&File")); - fileToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); - fileToolBar->setMovable(false); - fileToolBar->addAction(importAction); - fileToolBar->addAction(addColorAction); - fileToolBar->addAction(newAction); - fileToolBar->addAction(openAction); - fileToolBar->addAction(saveAction); + mainToolBar = addToolBar(tr("&File")); + mainToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); + mainToolBar->setMovable(false); + mainToolBar->addAction(importAction); + mainToolBar->addAction(addColorAction); + mainToolBar->addAction(newAction); + mainToolBar->addAction(openAction); + mainToolBar->addAction(saveAction); - shapeToolBar = addToolBar(tr("&Shapes")); - shapeToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); - shapeToolBar->setStyleSheet("background-color: #f6f5f5;"); - shapeToolBar->setMovable(false); - shapeToolBar->addAction(addMeshAction); - shapeToolBar->addAction(addTriangleAction); - shapeToolBar->addAction(addEllipseAction); + mainToolBar->addSeparator(); - viewToolBar = addToolBar(tr("&View")); - viewToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); - viewToolBar->setMovable(false); - viewToolBar->addAction(displayOutputWindow); - viewToolBar->addAction(outputWindowFullScreen); - viewToolBar->addAction(displayCanvasControls); + mainToolBar->addAction(addMeshAction); + mainToolBar->addAction(addTriangleAction); + mainToolBar->addAction(addEllipseAction); + + mainToolBar->addSeparator(); + + mainToolBar->addAction(displayOutputWindow); + mainToolBar->addAction(outputWindowFullScreen); + mainToolBar->addAction(displayCanvasControls); runToolBar = addToolBar(tr("&Run")); runToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); @@ -1200,15 +1197,12 @@ void MainWindow::createToolBars() QWidget* spacer = new QWidget(runToolBar); spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); runToolBar->addWidget(spacer); - // Add player actions. runToolBar->addAction(playAction); runToolBar->addAction(pauseAction); runToolBar->addAction(rewindAction); // Add toolbars. - addToolBar(Qt::TopToolBarArea, fileToolBar); - addToolBar(Qt::TopToolBarArea, shapeToolBar); - addToolBar(Qt::TopToolBarArea, viewToolBar); + addToolBar(Qt::TopToolBarArea, mainToolBar); addToolBar(Qt::TopToolBarArea, runToolBar); // editToolBar = addToolBar(tr("&Edit")); diff --git a/MainWindow.h b/MainWindow.h index 8b8784e..df70c2c 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -221,9 +221,7 @@ private: QMenu *helpMenu; // Toolbar. - QToolBar *fileToolBar; - QToolBar *shapeToolBar; - QToolBar *viewToolBar; + QToolBar *mainToolBar; QToolBar *runToolBar; // Actions. From 1e1b7ae22152292ba8ac0abfef30297ef8c39d3f Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 24 Jun 2014 00:43:00 -0400 Subject: [PATCH 21/37] Integrated new set of icons --- mapmap.qrc | 14 +++++++++----- .../images/icons/{ad_cer.png => add_circ.png} | Bin .../icons/{ad_cerl_2.png => add_circ_2.png} | Bin .../icons/{ad_cerl_w.png => add_circ_w.png} | Bin .../icons/{color_w.png => add_color2_w.png} | Bin .../images/icons/{ad_quad.png => add_quad.png} | Bin .../icons/{ad_quad_2.png => add_quad_2.png} | Bin .../icons/{ad_quad_w.png => add_quad_w.png} | Bin .../images/icons/{ad_tri_.png => add_tri.png} | 0 .../images/icons/{ad_tri_2.png => add_tri_2.png} | Bin .../images/icons/{ad_tri_w.png => add_tri_w.png} | Bin .../images/icons/{grill_W.png => grille_w.png} | Bin 12 files changed, 9 insertions(+), 5 deletions(-) rename resources/images/icons/{ad_cer.png => add_circ.png} (100%) rename resources/images/icons/{ad_cerl_2.png => add_circ_2.png} (100%) rename resources/images/icons/{ad_cerl_w.png => add_circ_w.png} (100%) rename resources/images/icons/{color_w.png => add_color2_w.png} (100%) rename resources/images/icons/{ad_quad.png => add_quad.png} (100%) rename resources/images/icons/{ad_quad_2.png => add_quad_2.png} (100%) rename resources/images/icons/{ad_quad_w.png => add_quad_w.png} (100%) rename resources/images/icons/{ad_tri_.png => add_tri.png} (100%) rename resources/images/icons/{ad_tri_2.png => add_tri_2.png} (100%) rename resources/images/icons/{ad_tri_w.png => add_tri_w.png} (100%) rename resources/images/icons/{grill_W.png => grille_w.png} (100%) diff --git a/mapmap.qrc b/mapmap.qrc index 4522db7..f8ba78a 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -10,16 +10,20 @@ resources/images/icons/ctrl_w.png resources/images/icons/add_movie_w.png - resources/images/icons/color_w.png + resources/images/icons/add_color2_w.png + resources/images/shapes/add_quad.png + resources/images/shapes/add_triangle.png + resources/images/shapes/add_circle.png + + resources/images/icons/play_w.png diff --git a/resources/images/icons/ad_cer.png b/resources/images/icons/add_circ.png similarity index 100% rename from resources/images/icons/ad_cer.png rename to resources/images/icons/add_circ.png diff --git a/resources/images/icons/ad_cerl_2.png b/resources/images/icons/add_circ_2.png similarity index 100% rename from resources/images/icons/ad_cerl_2.png rename to resources/images/icons/add_circ_2.png diff --git a/resources/images/icons/ad_cerl_w.png b/resources/images/icons/add_circ_w.png similarity index 100% rename from resources/images/icons/ad_cerl_w.png rename to resources/images/icons/add_circ_w.png diff --git a/resources/images/icons/color_w.png b/resources/images/icons/add_color2_w.png similarity index 100% rename from resources/images/icons/color_w.png rename to resources/images/icons/add_color2_w.png diff --git a/resources/images/icons/ad_quad.png b/resources/images/icons/add_quad.png similarity index 100% rename from resources/images/icons/ad_quad.png rename to resources/images/icons/add_quad.png diff --git a/resources/images/icons/ad_quad_2.png b/resources/images/icons/add_quad_2.png similarity index 100% rename from resources/images/icons/ad_quad_2.png rename to resources/images/icons/add_quad_2.png diff --git a/resources/images/icons/ad_quad_w.png b/resources/images/icons/add_quad_w.png similarity index 100% rename from resources/images/icons/ad_quad_w.png rename to resources/images/icons/add_quad_w.png diff --git a/resources/images/icons/ad_tri_.png b/resources/images/icons/add_tri.png similarity index 100% rename from resources/images/icons/ad_tri_.png rename to resources/images/icons/add_tri.png diff --git a/resources/images/icons/ad_tri_2.png b/resources/images/icons/add_tri_2.png similarity index 100% rename from resources/images/icons/ad_tri_2.png rename to resources/images/icons/add_tri_2.png diff --git a/resources/images/icons/ad_tri_w.png b/resources/images/icons/add_tri_w.png similarity index 100% rename from resources/images/icons/ad_tri_w.png rename to resources/images/icons/add_tri_w.png diff --git a/resources/images/icons/grill_W.png b/resources/images/icons/grille_w.png similarity index 100% rename from resources/images/icons/grill_W.png rename to resources/images/icons/grille_w.png From a6868a2713df78704a2d6d609cd882d0abedf953 Mon Sep 17 00:00:00 2001 From: Tats Date: Tue, 24 Jun 2014 00:43:40 -0400 Subject: [PATCH 22/37] Added custom style (round edges, gradients) --- mapmap.qss | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/mapmap.qss b/mapmap.qss index b8b911a..614a161 100644 --- a/mapmap.qss +++ b/mapmap.qss @@ -1,7 +1,7 @@ /* Colors: White: #f6f5f5 -Dark gray: #323541 +Dark gray: #323541 (darker: #00020E lighter: #4C4F5B) Darker gray: #272a36 */ @@ -9,15 +9,33 @@ QMainWindow { /* background-color: #f6f5f5;*/ background-color: #272a36; + border-radius: 10px; } -QToolButton::hover { - background-color: #0c0927; -} - -QToolButton { +/*QToolButton { color: #f6f5f5; } +*/ + +QToolButton::hover, QToolButton::checked { + background-color: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 1, + stop: 0 #0c0927, stop: 1 #00020E); + border-radius: 10px; +} + +QToolButton::checked:hover { + background-color: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 1, + stop: 0 #0c0927, stop: 1 #191C28); + border-radius: 10px; +} + +QToolBar::separator:horizontal { +/* background-color: #272a36; + width: 3px; + color: #f6f5f5; +/* image: url(:/separator); */ + width: 64; +} QListView { background-color: #323541; From 19de5e235578a2e48a84e599e7f363fc0b4f709c Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 14:22:04 -0400 Subject: [PATCH 23/37] Update icon base --- resources/images/icons/add_circ.png | Bin 1841 -> 1765 bytes .../icons/{add_circ_2.png => add_circ2.png} | Bin resources/images/icons/add_circ_w.png | Bin 1765 -> 1841 bytes resources/images/icons/add_color3.png | Bin 0 -> 998 bytes resources/images/icons/add_color3_sof_w.png | Bin 0 -> 1272 bytes resources/images/icons/add_color3_w.png | Bin 0 -> 916 bytes resources/images/icons/add_paint.png | Bin 0 -> 1149 bytes resources/images/icons/add_paint_w.png | Bin 0 -> 1070 bytes resources/images/icons/add_quad.png | Bin 915 -> 912 bytes resources/images/icons/add_quad_w.png | Bin 912 -> 0 bytes .../icons/{add_quad_2.png => add_quadd_2.png} | Bin resources/images/icons/add_tri.png | Bin 0 -> 1512 bytes resources/images/icons/add_tri_w.png | Bin 1512 -> 0 bytes 13 files changed, 0 insertions(+), 0 deletions(-) rename resources/images/icons/{add_circ_2.png => add_circ2.png} (100%) create mode 100644 resources/images/icons/add_color3.png create mode 100644 resources/images/icons/add_color3_sof_w.png create mode 100644 resources/images/icons/add_color3_w.png create mode 100644 resources/images/icons/add_paint.png create mode 100644 resources/images/icons/add_paint_w.png delete mode 100644 resources/images/icons/add_quad_w.png rename resources/images/icons/{add_quad_2.png => add_quadd_2.png} (100%) delete mode 100644 resources/images/icons/add_tri_w.png diff --git a/resources/images/icons/add_circ.png b/resources/images/icons/add_circ.png index 92025b93c83d849f7903447ff2b1b24cd550ce18..8cca0f5d61eb4dea39a6d308e399d0716b036cdd 100644 GIT binary patch delta 1695 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 eifYt90t^7lZ?%P1=fPV50000+{{Wy;CIUbJ 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/add_paint_w.png b/resources/images/icons/add_paint_w.png new file mode 100644 index 0000000000000000000000000000000000000000..850a54696571854310d1db8dd888dd08bc707c17 GIT binary patch literal 1070 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m@jy`IEGZ*dNa4T@Ros$`%)QZgQl4aas)Or-fi%^@S3HO zbCREfwc{qoIh+fGugp~_VG7q$Qp__nQn&n7@&4TN)2)vW?@#})8o8|%WWUTr=Nga8 zCjD8Vt5TOwTO0Y`;#ahXruHL`cm`=cC7YRF9cQeal;WO}C&~I_?x}0PB91{&=R#vKUgh}Z+YyY+}DyZedb)D6z?Ywr#C19*@y4noH{cGDEsZjiI3J#jf{mZ zgr=P`PJMQPuXEcOg#)P~X_i;{Dqr5)cG@T7ZmgGsMe4Jq<;E#9A94uf&5YC(oVIWO z5mC!0yi5uV2$*s-fZ1_Q+gty$YCy*`#8+6$-Z42Fu{Q6>zct|}m+kBDdh=ZP&d*t^ z)NEVVJ6|tmIF|BajkxJ&#YTNbvqj0@^kT|P0+`M;i640LSNhYZLr1>mD9S50Ua77Z zS$F?JJHwT~9S>p{m~g`z!5bs@3Z9*^A^qSUhU+h?*?p5V8Rwrk{d3-b!&znxMqeG* zeqnK2$5|2_l)mqs{fob5h0lI5q;bS=Q@%KliJ?MQ{nxt1zCUbcy;eS?Z#-h$f=yS)2TxO2_`$rz{|6AwRj=W&U-+S0?&12INtvzorm+@>)N8=#j~Ms1h^UA9 zRX*>P{;+(nIdndvq59DI=mz(0Z%c@nA&0w_@C(bJrS{@Xi6WdH9Dd%t;0MgMLIy~F3+ z7>rx0-#=LEmH1uZRrbdH+L|muOs5*_ojrRJIRjdLC7(4}ua}rtG>dmisPcs=YO{C# zeLZL0&(DeuD|k1xK7C#CqnKsKoU8};1ETl6bLL9b`4QJJFL*iMLhZ{|_Qyl!?3bsfM)a#a1qN&jaCTNI!V* zm)u?Q-ZcaOpomKCcQl(TyOPDjGlY=wXOVd zD?isBw%@U>?dw5flxu_C0-#_7ld%C5lRyIme}Meip7tA-mX^btS09XA#vD9!AdJ+8 zw>E&+uil5Nm#2+(Mva{t4Ue9rTR*8b0XJ_vFv=MgpP(}{b6Xd{?_W)$Y$p%_AOHkF z5#I;s=i}sB?L;_syt?LNmVPdW*<>#|?oA6IN8+(@JVx$nsM>nm)b)CpxG)tK=6~1( z8uYts*Dq~s<*!ny>t^pU5Km!JU&|fk)DKyUE>vbAeCx;I9 zKDF!ZyT+#d9dX9-gL{qE+0_DA!-i+?{wG62)lK|i)ljPqhoeVEGj)z-W;OwF5@wcG z{#MwrvmEO6^Y#Hci6?CoK`$3^C`17JDtihMK-Q+4XC{Ek{=Ig|9R?x*1b_f2S^zFU zRqz0ca4vpHl(n~lGZVo4{P#ixF!No&^&jxwEJ{hgn|i%_9teT- znw0l`xw|B9t|0&bd9-Qn4Q;#kZcnZTlgnAdlNmF~rMLQJ@_+f0xYK0ENO4@h~wlHSaPlEzM!y{$e*w$AVCb=9fO_JWHu9icel37{;#~YZ zNZWLC0eBgR01yBIKmh+wQ&Yj($a4T49lLTd;AwkED>yX)w!y^NkjUaCN@80Y8Y2aedkf&oqYkHsYBi)sLs`vdzC1jnKfnEh5 zlYjyme}E07y?tfV&C_%e2LY_YwZ5KZPdSe(KThDxgUtWq$hb0}jSYp-(NgUs6!Dxv z@k|}{#2LwPi*f$K>D0~M6~HPZINx)ocELd)0zd!=009VKISW5}^3;f>ShYGGDjz;J z?q%S>;QiWz6pNjqdFKuzo+9IK-iFePSB-xk3?M$pN*)Nu00;m9Ad`Rs97@1C1u$Yr zGHqnR0IFXmXOgRP#wnBHH%5Br-ngmWl5M;9wkB6+jag>QBu{QzcL4tNM}PqUiQcPn T9Pyis00000NkvXXu0mjf`UGxy diff --git a/resources/images/icons/add_quad_w.png b/resources/images/icons/add_quad_w.png deleted file mode 100644 index 67f8c4fabba9398f40bd0a7f3da5d43dffc21d90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 912 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 literal 0 HcmV?d00001 diff --git a/resources/images/icons/add_tri_w.png b/resources/images/icons/add_tri_w.png deleted file mode 100644 index b1b6f42861a100fd0a6d6d513c7941cfdf097940..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1512 zcma)6X;jjA6#b!+hKZy$j^wzEN~7k!P}vxyl`tYqmStov2`)gUQE6JCrp;eYku)t* zs?m6$nyZ65H&V?vpTTBpW1OUK< z5E8sqhn#O^v_#iC0%ITOz>2+TCp$ca&ORKQMg#cxlsK9lffbuT+e(X#&q$Ti)&l@9 zAOz#Lr9Yn(wvo+azwhR89k#DB5A_UPb3aDU{h(JD-q29VUT!$F8WnHu*kyvIPn5V9 zU^bhDvf0^q`*kBF=Gg`bZpS&=-HP(HFZQUVnJR6@mHA_5MfJ}0()smj-ec)u16Yoo zQH~w02lo-8|Mf1O-Go+R#2NkZ9+HOJ$DfX5PfWBI5PkZ=PetXo$lUv;l@ zbUD-EsTDyVI7jLn;Q-JBsBcaUfE@rZVDz66Zf|4bp&Z%CgMiYt@TG4VecA*57+sfR z+uR0lL$_|dG(sYgqs0{r9>5iCTtPmk`g+F(1_MNX*b3EeoWus*!qn@EfWPN77fTuq zfbU6{mfmNxi&)pemrIAMSpd|OA}WaLbF#c69~gksPN9Y8X?=da>`vH0L4(AKtu*Z= zvh9X$z7e=?^|uFY-!p<)k{UsTf$iSg>*X9xtp)EfOUe1p7J#?s&8yb zKMb|9g_OC(qv}@!aQf|nyY;cGP&|Z*fO8&PP2c4!MuY1=M%i=^ltJ6UnH^d|Gi*+< z6ArdPt&XSIq}4W{5?2{qtoDdB=NfW?;KXO0Ww4R7&AfP0R_KRE6$MnU^@XFKAfl(g z|MNNZ^rC;|_<2n0kts8<-`f;Rxm7=E+e3zHMf)nkoRcC7R~Yaq(M{ObTD)b9mq^l7 zEF|BE=+1rXaeHD9B-m*UGT7?7;@ehx0+MHK6u#m$!0~duJ;9u-*WNJw&A zPddJj!^6-U?8+}pv)sn-r-fjP#0Q3unpSGco1CKBjl)y(tKF*&)WcYSb4`*osbtoh z^1sV}BcGXhKl0}oHA)Ex?gJ`_WqC%Fc{Jsxvro$SA7mPvsO;mU9zBk)@&&^ojoh%V z@Hy#sG;os)_&T;^CC8~jPyc!1fvDkWWpNt|^;r~sRwrxk%u_^uVB0KPUi+}vANjEq zlEQGE7o_hO>jGx&{%8TX@`Okir@NO1m0yaIaFe^tPi_slkeJG~=h7ud19#lP>yGrh!eY<`Jdw&|=P`{-a1lywxoJ5o@ihf49y_EjW5l_F{&Qb*osiDEL@SV- ze(u^30>jUX3Q97g*l=0H%{)DzoOonnaSbxo2a*9+ff+LoW{20>Oxn`*1epa-I_+1X zr+6jv)NLCB7N>=4mq+1;Be2>W)Mu0>rk3k{Oyf*_3XKGxtU8jyVsTe?$49>7??&Sp^la}_PbxUhhNREO0~r0w!ZQS(wMv| zY+~5v+?`{(77A+-n-{t#Dq~JW|DO;7y{7HPOtYsMz2+REk!VEm&C-po>PumE(HL0L@CBe~ZffLB|0Io5F%?H^$`r3oRy{9{>OV From fd54928169fda0fef4cd801f66fb98e800058bca Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 16:40:23 -0400 Subject: [PATCH 24/37] Renamed some images + added a new one --- .../icons/{add_quadd_2.png => add_quad2.png} | Bin resources/images/icons/add_quad_w.png | Bin 0 -> 915 bytes .../images/icons/{color3_W.png => color3_w.png} | Bin 3 files changed, 0 insertions(+), 0 deletions(-) rename resources/images/icons/{add_quadd_2.png => add_quad2.png} (100%) create mode 100644 resources/images/icons/add_quad_w.png rename resources/images/icons/{color3_W.png => color3_w.png} (100%) diff --git a/resources/images/icons/add_quadd_2.png b/resources/images/icons/add_quad2.png similarity index 100% rename from resources/images/icons/add_quadd_2.png rename to resources/images/icons/add_quad2.png diff --git a/resources/images/icons/add_quad_w.png b/resources/images/icons/add_quad_w.png new file mode 100644 index 0000000000000000000000000000000000000000..1ad663337e2e2e80060c5c3bda1f866ecdc33603 GIT binary patch literal 915 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m`y!h978H@y}7$LTR4&7z{BuDldFN;t$w08?MV&+;@h>N z0%ZQoDA~Z*6t!hXW}&dA>%pabYrAhbYO{3ugN>ZhM~;R_c?WXW6AzJ^L%K-(c9)U()(d`g(7f*VMQ@Tz|LcndgZY zZ2i6{&~M`p7TtF*b7B};4}~p$qaeTtG}l4yKKqRocJ-^;ra%2?U}$Li-bh#XY~uZY zNfwo>q8TEKo(9!R)CNTznl$xR5p#Llp$~@}FWkGBCcfd~(WyJPO#OfT&7187KQH+n zXNcTzL9KpcY#X{uQJgL9{YtI%m}QOj++(5VmxubiwJO|`e)eCV#p54Y@&0e47(Pe* zdUN-y;m38G+P;TzKK)ctVIRundz-6_vG}OxjLfK?y&qmbfBzxj#m3}@sz=k!J}ro; z(*?3({@8fjE-7ZLknDgs;J<%x@WERriWy{OcNZBx$gI}3FlBu5FooyhKW10PE5$E9 z9K6DNZr1x}+eEYEIXDyK4l6Uy>{ZD7_5R-L@0kyh&QDmL?3`US|D*EVsdcNq|8-YQ znLE8Pjul&EK)u+&yJT-|>gBVSON7`N*BsiqZ(gduWxuw)--9#FXZ}AvvBPM7FK_F` zi$QNyL_W@O{OBY5^@!xj!tTOwA9TgxZawJ%C+gE+M(y=sR ztCg&lyq(#*)CUJ1{JqsI(mi)!<#Rsec}kD-@3md(4)3j(SFk(bCC70bSBinh!vQN+ zgCq~5+?0b1tK!wtC#^0%raAeMxm(rqdplO%n*>a=+tk9-dn41%sQBkamoxnP>fXS} Y(0Ollk<7>0Jq$qL>FVdQ&MBb@04}|LW&i*H literal 0 HcmV?d00001 diff --git a/resources/images/icons/color3_W.png b/resources/images/icons/color3_w.png similarity index 100% rename from resources/images/icons/color3_W.png rename to resources/images/icons/color3_w.png From ab2df9a00fe44f8724248df777382324d4b822a6 Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 21:28:42 -0400 Subject: [PATCH 25/37] Make icons invisible in menus (not working on Ubuntu Unity but maybe somewhere else) --- MainWindow.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/MainWindow.cpp b/MainWindow.cpp index 5ba69ec..8abad94 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -933,6 +933,7 @@ void MainWindow::createActions() newAction->setIcon(QIcon(":/new")); newAction->setShortcut(QKeySequence::New); newAction->setStatusTip(tr("Create a new project")); + newAction->setIconVisibleInMenu(false); connect(newAction, SIGNAL(triggered()), this, SLOT(newFile())); // Open. @@ -940,6 +941,7 @@ void MainWindow::createActions() openAction->setIcon(QIcon(":/open")); openAction->setShortcut(QKeySequence::Open); openAction->setStatusTip(tr("Open an existing project")); + openAction->setIconVisibleInMenu(false); connect(openAction, SIGNAL(triggered()), this, SLOT(open())); // Save. @@ -947,30 +949,35 @@ void MainWindow::createActions() saveAction->setIcon(QIcon(":/save")); saveAction->setShortcut(QKeySequence::Save); saveAction->setStatusTip(tr("Save the project")); + saveAction->setIconVisibleInMenu(false); connect(saveAction, SIGNAL(triggered()), this, SLOT(save())); // Save as. saveAsAction = new QAction(tr("Save &As..."), this); saveAsAction->setIcon(QIcon(":/save-as")); saveAsAction->setStatusTip(tr("Save the project as...")); + saveAsAction->setIconVisibleInMenu(false); connect(saveAsAction, SIGNAL(triggered()), this, SLOT(saveAs())); // Import media. importAction = new QAction(tr("&Import media source file..."), this); importAction->setIcon(QIcon(":/add-media")); importAction->setStatusTip(tr("Import a media source file...")); + importAction->setIconVisibleInMenu(false); connect(importAction, SIGNAL(triggered()), this, SLOT(import())); // Add color. addColorAction = new QAction(tr("Add &Color paint..."), this); addColorAction->setIcon(QIcon(":/add-color")); addColorAction->setStatusTip(tr("Add a color paint...")); + addColorAction->setIconVisibleInMenu(false); connect(addColorAction, SIGNAL(triggered()), this, SLOT(addColor())); // Exit/quit. exitAction = new QAction(tr("E&xit"), this); exitAction->setShortcut(tr("Ctrl+Q")); exitAction->setStatusTip(tr("Exit the application")); + exitAction->setIconVisibleInMenu(false); connect(exitAction, SIGNAL(triggered()), this, SLOT(close())); // cutAction = new QAction(tr("Cu&t"), this); @@ -999,12 +1006,14 @@ void MainWindow::createActions() // About. aboutAction = new QAction(tr("&About"), this); aboutAction->setStatusTip(tr("Show the application's About box")); + aboutAction->setIconVisibleInMenu(false); connect(aboutAction, SIGNAL(triggered()), this, SLOT(about())); // Delete. deleteAction = new QAction(tr("Delete"), this); deleteAction->setShortcut(tr("CTRL+DEL")); deleteAction->setStatusTip(tr("Delete item")); + deleteAction->setIconVisibleInMenu(false); connect(deleteAction, SIGNAL(triggered()), this, SLOT(deleteItem())); // Add quad/mesh. @@ -1012,6 +1021,7 @@ void MainWindow::createActions() addMeshAction->setShortcut(tr("CTRL+M")); addMeshAction->setIcon(QIcon(":/add-mesh")); addMeshAction->setStatusTip(tr("Add quad/mesh")); + addMeshAction->setIconVisibleInMenu(false); connect(addMeshAction, SIGNAL(triggered()), this, SLOT(addMesh())); addMeshAction->setEnabled(false); @@ -1020,6 +1030,7 @@ void MainWindow::createActions() addTriangleAction->setShortcut(tr("CTRL+T")); addTriangleAction->setIcon(QIcon(":/add-triangle")); addTriangleAction->setStatusTip(tr("Add triangle")); + addTriangleAction->setIconVisibleInMenu(false); connect(addTriangleAction, SIGNAL(triggered()), this, SLOT(addTriangle())); addTriangleAction->setEnabled(false); @@ -1028,6 +1039,7 @@ void MainWindow::createActions() addEllipseAction->setShortcut(tr("CTRL+E")); addEllipseAction->setIcon(QIcon(":/add-ellipse")); addEllipseAction->setStatusTip(tr("Add ellipse")); + addEllipseAction->setIconVisibleInMenu(false); connect(addEllipseAction, SIGNAL(triggered()), this, SLOT(addEllipse())); addEllipseAction->setEnabled(false); @@ -1036,6 +1048,7 @@ void MainWindow::createActions() playAction->setShortcut(tr("CTRL+P")); playAction->setIcon(QIcon(":/play")); playAction->setStatusTip(tr("Play")); + playAction->setIconVisibleInMenu(false); connect(playAction, SIGNAL(triggered()), this, SLOT(play())); playAction->setVisible(true); @@ -1044,6 +1057,7 @@ void MainWindow::createActions() pauseAction->setShortcut(tr("CTRL+P")); pauseAction->setIcon(QIcon(":/pause")); pauseAction->setStatusTip(tr("Pause")); + pauseAction->setIconVisibleInMenu(false); connect(pauseAction, SIGNAL(triggered()), this, SLOT(pause())); pauseAction->setVisible(false); @@ -1052,6 +1066,7 @@ void MainWindow::createActions() rewindAction->setShortcut(tr("CTRL+R")); rewindAction->setIcon(QIcon(":/rewind")); rewindAction->setStatusTip(tr("Rewind")); + rewindAction->setIconVisibleInMenu(false); connect(rewindAction, SIGNAL(triggered()), this, SLOT(rewind())); // Toggle display of output window. @@ -1059,6 +1074,7 @@ void MainWindow::createActions() displayOutputWindow->setShortcut(tr("Ctrl+D")); displayOutputWindow->setIcon(QIcon(":/output-window")); displayOutputWindow->setStatusTip(tr("Display output window")); + displayOutputWindow->setIconVisibleInMenu(false); displayOutputWindow->setCheckable(true); displayOutputWindow->setChecked(true); // Manage show/hide of GL output window. @@ -1071,6 +1087,7 @@ void MainWindow::createActions() outputWindowFullScreen->setIcon(QIcon(":/fullscreen")); outputWindowFullScreen->setShortcut(tr("Ctrl+F")); outputWindowFullScreen->setStatusTip(tr("Full screen")); + outputWindowFullScreen->setIconVisibleInMenu(false); outputWindowFullScreen->setCheckable(true); outputWindowFullScreen->setChecked(false); // Manage fullscreen mode for output window. @@ -1085,6 +1102,7 @@ void MainWindow::createActions() // displayCanvasControls->setShortcut(tr("Ctrl+E")); displayCanvasControls->setIcon(QIcon(":/control-points")); displayCanvasControls->setStatusTip(tr("Display canvas controls")); + displayCanvasControls->setIconVisibleInMenu(false); displayCanvasControls->setCheckable(true); displayCanvasControls->setChecked(true); // Manage show/hide of canvas controls. From 8d8d29e045bf7b402ab7c6673899f7c8db48c8ad Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 21:29:25 -0400 Subject: [PATCH 26/37] Roll paint image for color adding --- mapmap.qrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mapmap.qrc b/mapmap.qrc index f8ba78a..c9fe6fd 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -10,7 +10,7 @@ resources/images/icons/ctrl_w.png resources/images/icons/add_movie_w.png - resources/images/icons/add_color2_w.png + resources/images/icons/add_paint_w.png resources/images/shapes/add_quad.png resources/images/shapes/add_triangle.png From c0683b9d98f6d948a76ef069044fc94c6fd98ff8 Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 21:31:41 -0400 Subject: [PATCH 27/37] More minimalist icon for control points --- mapmap.qrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mapmap.qrc b/mapmap.qrc index c9fe6fd..864ba7e 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -7,7 +7,7 @@ resources/images/icons/fullscreen_w.png resources/images/icons/nofullscreen_w.png - resources/images/icons/ctrl_w.png + resources/images/icons/ctrl2_w.png resources/images/icons/add_movie_w.png resources/images/icons/add_paint_w.png From bcdfed3aca29011a8c428c476531ca87f176bbd5 Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 23:00:24 -0400 Subject: [PATCH 28/37] Start timer after creating everything --- MainWindow.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index 8abad94..a336d10 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -47,11 +47,6 @@ MainWindow::MainWindow() _isPlaying = false; // Create everything. - videoTimer = new QTimer(this); - videoTimer->setInterval(1000/30); - connect(videoTimer, SIGNAL(timeout()), this, SLOT(updateCanvases())); - videoTimer->start(); - createLayout(); createActions(); createMenus(); @@ -68,6 +63,12 @@ MainWindow::MainWindow() // Defaults. //setWindowIcon(QIcon(":/images/icon.png")); setCurrentFile(""); + + // Create and start timer. + videoTimer = new QTimer(this); + videoTimer->setInterval(1000/30); + connect(videoTimer, SIGNAL(timeout()), this, SLOT(updateCanvases())); + videoTimer->start(); } MainWindow::~MainWindow() From 2cbab1bf2dc7c22b4060da84f77a3f1098728096 Mon Sep 17 00:00:00 2001 From: Tats Date: Wed, 25 Jun 2014 23:00:39 -0400 Subject: [PATCH 29/37] Some cleanup in MapperGLCanvas --- MapperGLCanvas.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/MapperGLCanvas.cpp b/MapperGLCanvas.cpp index 6b09fa3..9515452 100644 --- a/MapperGLCanvas.cpp +++ b/MapperGLCanvas.cpp @@ -64,14 +64,19 @@ void MapperGLCanvas::draw(QPainter* painter) void MapperGLCanvas::enterDraw(QPainter* painter) { + painter->beginNativePainting(); + // Clear to black. - qglClearColor(Qt::black); + glClearColor(0.0, 0.0, 0.0, 1.0); // Clear buffer. - glClear(GL_COLOR_BUFFER_BIT); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + painter->endNativePainting(); // Antialiasing. painter->setRenderHint(QPainter::Antialiasing); + //painter->setBackground(Qt::black); painter->setPen(Qt::NoPen); painter->setBrush(Qt::NoBrush); } @@ -224,16 +229,12 @@ void MapperGLCanvas::paintEvent(QPaintEvent* /* event */) { makeCurrent(); - glClearColor(0.0, 0.0, 0.0, 0.0); - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing); draw(&painter); painter.end(); -// updateGL(); } void MapperGLCanvas::updateCanvas() From bbc0eeb6ae74aef86f3c37a5bdc3bf675dc5b63e Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:08:46 -0400 Subject: [PATCH 30/37] Added option to import image files using QImage --- MainWindow.cpp | 85 +++++++++++++++++++++++++++++++++++------------ MainWindow.h | 12 ++++--- Paint.cpp | 6 ++++ Paint.h | 13 +++++--- ProjectReader.cpp | 13 +++++++- mapmap.qrc | 3 +- 6 files changed, 99 insertions(+), 33 deletions(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index a336d10..6a63740 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -178,7 +178,15 @@ void MainWindow::handleItemDoubleClicked(QListWidgetItem* item) // Restart video playback. XXX Hack videoTimer->start(); if (!fileName.isEmpty()) - importMediaFile(fileName, paint); + importMediaFile(fileName, paint, false); + } + if (paint->getType() == "image") { + QString fileName = QFileDialog::getOpenFileName(this, + tr("Import media source file"), "."); + // Restart video playback. XXX Hack + videoTimer->start(); + if (!fileName.isEmpty()) + importMediaFile(fileName, paint, true); } else if (paint->getType() == "color") { // Pop-up color-choosing dialog to choose color paint. @@ -293,7 +301,7 @@ bool MainWindow::saveAs() return saveFile(fileName); } -void MainWindow::import() +void MainWindow::importVideo() { // Stop video playback to avoid lags. XXX Hack videoTimer->stop(); @@ -307,7 +315,24 @@ void MainWindow::import() videoTimer->start(); if (!fileName.isEmpty()) - importMediaFile(fileName, std::tr1::shared_ptr(static_cast(0))); + importMediaFile(fileName, std::tr1::shared_ptr(static_cast(0)), false); +} + +void MainWindow::importImage() +{ + // Stop video playback to avoid lags. XXX Hack + videoTimer->stop(); + + // Pop-up file-choosing dialog to choose media file. + // TODO: restrict the type of files that can be imported + QString fileName = QFileDialog::getOpenFileName(this, + tr("Import media source file"), "."); + + // Restart video playback. XXX Hack + videoTimer->start(); + + if (!fileName.isEmpty()) + importMediaFile(fileName, std::tr1::shared_ptr(static_cast(0)), true); } void MainWindow::addColor() @@ -555,7 +580,7 @@ bool MainWindow::clearProject() return true; } -uid MainWindow::createMediaPaint(uid paintId, QString uri, float x, float y, Paint::ptr oldPaint) +uid MainWindow::createMediaPaint(uid paintId, QString uri, float x, float y, Paint::ptr oldPaint, bool isImage) { // Cannot create image with already existing id. if (Paint::getUidAllocator().exists(paintId)) @@ -563,14 +588,18 @@ uid MainWindow::createMediaPaint(uid paintId, QString uri, float x, float y, Pai else { - Media* img = new Media(uri, paintId); -// Image* img = new Image(uri, paintId); + qDebug() << "Is image " << isImage << endl; + Texture* tex = 0; + if (isImage) + tex = new Image(uri, paintId); + else + tex = new Media(uri, paintId); // Create new image with corresponding ID. - img->setPosition(x, y); + tex->setPosition(x, y); // Add it to the manager. - Paint::ptr paint(img); + Paint::ptr paint(tex); // Add paint to model and return its uid. uid id = mappingManager->addPaint(paint); @@ -960,12 +989,19 @@ void MainWindow::createActions() saveAsAction->setIconVisibleInMenu(false); connect(saveAsAction, SIGNAL(triggered()), this, SLOT(saveAs())); - // Import media. - importAction = new QAction(tr("&Import media source file..."), this); - importAction->setIcon(QIcon(":/add-media")); - importAction->setStatusTip(tr("Import a media source file...")); - importAction->setIconVisibleInMenu(false); - connect(importAction, SIGNAL(triggered()), this, SLOT(import())); + // Import video. + importVideoAction = new QAction(tr("&Import media source file..."), this); + importVideoAction->setIcon(QIcon(":/add-video")); + importVideoAction->setStatusTip(tr("Import a media source file...")); + importVideoAction->setIconVisibleInMenu(false); + connect(importVideoAction, SIGNAL(triggered()), this, SLOT(importVideo())); + + // Import imiage. + importImageAction = new QAction(tr("&Import media source file..."), this); + importImageAction->setIcon(QIcon(":/add-image")); + importImageAction->setStatusTip(tr("Import a media source file...")); + importImageAction->setIconVisibleInMenu(false); + connect(importImageAction, SIGNAL(triggered()), this, SLOT(importImage())); // Add color. addColorAction = new QAction(tr("Add &Color paint..."), this); @@ -1130,7 +1166,8 @@ void MainWindow::createMenus() fileMenu->addAction(saveAction); fileMenu->addAction(saveAsAction); fileMenu->addSeparator(); - fileMenu->addAction(importAction); + fileMenu->addAction(importVideoAction); + fileMenu->addAction(importImageAction); fileMenu->addAction(addColorAction); fileMenu->addSeparator(); fileMenu->addAction(exitAction); @@ -1190,7 +1227,8 @@ void MainWindow::createToolBars() mainToolBar = addToolBar(tr("&File")); mainToolBar->setIconSize(QSize(MM::TOP_TOOLBAR_ICON_SIZE, MM::TOP_TOOLBAR_ICON_SIZE)); mainToolBar->setMovable(false); - mainToolBar->addAction(importAction); + mainToolBar->addAction(importVideoAction); + mainToolBar->addAction(importImageAction); mainToolBar->addAction(addColorAction); mainToolBar->addAction(newAction); mainToolBar->addAction(openAction); @@ -1374,7 +1412,7 @@ void MainWindow::setCurrentFile(const QString &fileName) // { // } -bool MainWindow::importMediaFile(const QString &fileName, Paint::ptr oldPaint) +bool MainWindow::importMediaFile(const QString &fileName, Paint::ptr oldPaint, bool isImage) { QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) { @@ -1388,7 +1426,7 @@ bool MainWindow::importMediaFile(const QString &fileName, Paint::ptr oldPaint) QApplication::setOverrideCursor(Qt::WaitCursor); // Add media file to model. - uint mediaId = createMediaPaint(NULL_UID, fileName, 0, 0, oldPaint); + uint mediaId = createMediaPaint(NULL_UID, fileName, 0, 0, oldPaint, isImage); // Initialize position (center). std::tr1::shared_ptr media = std::tr1::static_pointer_cast(mappingManager->getPaintById(mediaId)); @@ -1468,7 +1506,7 @@ void MainWindow::addMappingItem(uid mappingId) // Add mapper. // XXX hardcoded for textures std::tr1::shared_ptr textureMapping; - if (paintType == "media") + if (paintType == "media" || paintType == "image") { textureMapping = std::tr1::static_pointer_cast(mapping); Q_CHECK_PTR(textureMapping); @@ -1811,8 +1849,13 @@ bool MainWindow::setTextureUri(int texture_id, const std::string &uri) { if (paint->getType() == "media") { - Media *media = (Media *) paint.get(); // FIXME: use sharedptr cast - success = media->setUri(QString(uri.c_str())); + Media *media = (Media *) paint.get(); // FIXME: use sharedptr cast + success = media->setUri(QString(uri.c_str())); + } + else if (paint->getType() == "image") + { + Image *media = (Image*) paint.get(); // FIXME: use sharedptr cast + success = media->setUri(QString(uri.c_str())); } else { diff --git a/MainWindow.h b/MainWindow.h index df70c2c..48db28f 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -79,7 +79,8 @@ private slots: void open(); bool save(); bool saveAs(); - void import(); + void importVideo(); + void importImage(); void addColor(); void about(); void updateStatusBar(); @@ -112,8 +113,8 @@ public slots: /// Clears all mappings and paints. bool clearProject(); - /// Create or replace an image paint. - uid createMediaPaint(uid paintId, QString uri, float x, float y, Paint::ptr oldPaint); + /// Create or replace a media paint (or image). + uid createMediaPaint(uid paintId, QString uri, float x, float y, Paint::ptr oldPaint, bool isImage); /// Create or replace a color paint. uid createColorPaint(uid paintId, QColor color, Paint::ptr oldPaint); @@ -186,7 +187,7 @@ public: bool loadFile(const QString &fileName); bool saveFile(const QString &fileName); void setCurrentFile(const QString &fileName); - bool importMediaFile(const QString &fileName, Paint::ptr oldPaint); + bool importMediaFile(const QString &fileName, Paint::ptr oldPaint, bool isImage); bool addColorPaint(const QColor& color, Paint::ptr oldPaint); void addMappingItem(uid mappingId); void removeMappingItem(uid mappingId); @@ -228,7 +229,8 @@ private: QAction *separatorAction; QAction *newAction; QAction *openAction; - QAction *importAction; + QAction *importVideoAction; + QAction *importImageAction; QAction *addColorAction; QAction *saveAction; QAction *saveAsAction; diff --git a/Paint.cpp b/Paint.cpp index 8ea95c8..eeb7682 100644 --- a/Paint.cpp +++ b/Paint.cpp @@ -42,6 +42,12 @@ Paint::~Paint() allocator.free(_id); } +bool Image::setUri(const QString &uri) +{ + this->uri = uri; + build(); + return true; +} /* Implementation of the Video class */ diff --git a/Paint.h b/Paint.h index 4c97681..25030e2 100644 --- a/Paint.h +++ b/Paint.h @@ -121,6 +121,7 @@ protected: y(0), bitsChanged(true) {} +public: virtual ~Texture() { if (textureId != 0) glDeleteTextures(1, &textureId); @@ -162,19 +163,21 @@ protected: public: Image(const QString uri_, uid id=NULL_UID) : - Texture(id), - uri(uri_) + Texture(id) { + setUri(uri_); } virtual ~Image() {} - const QString getUri() const { return uri; } - virtual void build() { - image = QGLWidget::convertToGLFormat(QImage(uri)); + image = QGLWidget::convertToGLFormat(QImage(uri)).mirrored(true, false).transformed(QTransform().rotate(180)); + bitsChanged = true; } + const QString getUri() const { return uri; } + bool setUri(const QString &uri); + virtual QString getType() const { return "image"; } virtual int getWidth() const { return image.width(); } diff --git a/ProjectReader.cpp b/ProjectReader.cpp index 5a8ce40..3cb4d4d 100644 --- a/ProjectReader.cpp +++ b/ProjectReader.cpp @@ -97,7 +97,18 @@ void ProjectReader::parsePaint(const QDomElement& paint) QString y = paint.firstChildElement("y").text(); uid id = _window->createMediaPaint(paintAttrId.toInt(), uri, x.toFloat(), y.toFloat(), - std::tr1::shared_ptr(static_cast(0))); + std::tr1::shared_ptr(static_cast(0)), false); + if (id == NULL_UID) + _xml.raiseError(QObject::tr("Cannot create media with uri %1.").arg(uri)); + } + else if (paintAttrType == "image") + { + QString uri = paint.firstChildElement("uri").text(); + QString x = paint.firstChildElement("x").text(); + QString y = paint.firstChildElement("y").text(); + + uid id = _window->createMediaPaint(paintAttrId.toInt(), uri, x.toFloat(), y.toFloat(), + std::tr1::shared_ptr(static_cast(0)), true); if (id == NULL_UID) _xml.raiseError(QObject::tr("Cannot create media with uri %1.").arg(uri)); } diff --git a/mapmap.qrc b/mapmap.qrc index 864ba7e..9229cee 100644 --- a/mapmap.qrc +++ b/mapmap.qrc @@ -9,7 +9,8 @@ resources/images/icons/nofullscreen_w.png resources/images/icons/ctrl2_w.png - resources/images/icons/add_movie_w.png + resources/images/icons/add_movie_w.png + resources/images/icons/add_img_w.png resources/images/icons/add_paint_w.png resources/images/shapes/add_quad.png From 376c7e4983db50298af4745af66ac99b5c4987a3 Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:09:11 -0400 Subject: [PATCH 31/37] Fixed major bug: all media shared the same opengl texture (!) --- Paint.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Paint.h b/Paint.h index 25030e2..98c03d5 100644 --- a/Paint.h +++ b/Paint.h @@ -120,7 +120,10 @@ protected: x(0), y(0), bitsChanged(true) - {} + { + glGenTextures(1, &textureId); + } + public: virtual ~Texture() { if (textureId != 0) @@ -129,10 +132,6 @@ public: public: GLuint getTextureId() const { return textureId; } - virtual void loadTexture() { - if (textureId == 0) - glGenTextures(1, &textureId); - } virtual int getWidth() const = 0; virtual int getHeight() const = 0; virtual const uchar* getBits() const { From 054a6d2b37b034b03bdc731a37a44534ad5b1fd5 Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:13:12 -0400 Subject: [PATCH 32/37] Save and load image paints --- ProjectReader.cpp | 15 ++------------- ProjectWriter.cpp | 23 ++++++++++++++++++++++- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/ProjectReader.cpp b/ProjectReader.cpp index 3cb4d4d..7448d4e 100644 --- a/ProjectReader.cpp +++ b/ProjectReader.cpp @@ -90,25 +90,14 @@ void ProjectReader::parsePaint(const QDomElement& paint) QString paintAttrName = paint.attribute("name", ""); QString paintAttrType = paint.attribute("type", ""); - if (paintAttrType == "media") + if (paintAttrType == "media" || paintAttrType == "image") { QString uri = paint.firstChildElement("uri").text(); QString x = paint.firstChildElement("x").text(); QString y = paint.firstChildElement("y").text(); uid id = _window->createMediaPaint(paintAttrId.toInt(), uri, x.toFloat(), y.toFloat(), - std::tr1::shared_ptr(static_cast(0)), false); - if (id == NULL_UID) - _xml.raiseError(QObject::tr("Cannot create media with uri %1.").arg(uri)); - } - else if (paintAttrType == "image") - { - QString uri = paint.firstChildElement("uri").text(); - QString x = paint.firstChildElement("x").text(); - QString y = paint.firstChildElement("y").text(); - - uid id = _window->createMediaPaint(paintAttrId.toInt(), uri, x.toFloat(), y.toFloat(), - std::tr1::shared_ptr(static_cast(0)), true); + std::tr1::shared_ptr(static_cast(0)), paintAttrType == "image"); if (id == NULL_UID) _xml.raiseError(QObject::tr("Cannot create media with uri %1.").arg(uri)); } diff --git a/ProjectWriter.cpp b/ProjectWriter.cpp index 5c4bd3d..51d29d9 100644 --- a/ProjectWriter.cpp +++ b/ProjectWriter.cpp @@ -59,7 +59,7 @@ void ProjectWriter::writeItem(Paint *item) if (item->getType() == "media") { - // FIXME: check paint type before casting to Image + // FIXME: check paint type before casting to Media Media *media = (Media *) item; _xml.writeTextElement("uri", media->getUri()); @@ -78,6 +78,27 @@ void ProjectWriter::writeItem(Paint *item) _xml.writeEndElement(); //_xml.writeEmptyElement("hello"); } + else if (item->getType() == "image") + { + // FIXME: check paint type before casting to Image + Image *media = (Image *) item; + + _xml.writeTextElement("uri", media->getUri()); + { + std::ostringstream os; + os << media->getX(); + _xml.writeTextElement("x", os.str().c_str()); + } + + { + std::ostringstream os; + os << media->getY(); + _xml.writeTextElement("y", os.str().c_str()); + } + + _xml.writeEndElement(); + //_xml.writeEmptyElement("hello"); + } else if (item->getType() == "color") { // FIXME: check paint type before casting to Image From 45535c80a112be38af508d58cc37053f34c424cc Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:13:42 -0400 Subject: [PATCH 33/37] Cleanup debug message --- MainWindow.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index 6a63740..d857803 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -588,7 +588,6 @@ uid MainWindow::createMediaPaint(uid paintId, QString uri, float x, float y, Pai else { - qDebug() << "Is image " << isImage << endl; Texture* tex = 0; if (isImage) tex = new Image(uri, paintId); From 2ede19425bb35dbbfc386ca4dfd102cb801e6564 Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:27:15 -0400 Subject: [PATCH 34/37] Fixed bug in ellipse creation: two last points of input ellipse were wrong --- MainWindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainWindow.cpp b/MainWindow.cpp index d857803..0787f51 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -728,7 +728,7 @@ uid MainWindow::createEllipseTextureMapping(uid mappingId, Paint::ptr paint = mappingManager->getPaintById(paintId); Q_ASSERT(src.size() == 5 && dst.size() == 5); - Shape::ptr inputEllipse( new Ellipse(src[0], src[1], src[2], dst[3], dst[4])); + Shape::ptr inputEllipse( new Ellipse(src[0], src[1], src[2], src[3], src[4])); Shape::ptr outputEllipse(new Ellipse(dst[0], dst[1], dst[2], dst[3], dst[4])); // Add it to the manager. From e8f7f444938870e4ccc23122e4cf9e8f733b26f7 Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:56:24 -0400 Subject: [PATCH 35/37] Moved MAPMAP_VERSION and MAPMAP_EXTENSION as part of static class MM --- MM.cpp | 2 ++ MM.h | 3 +++ MainWindow.cpp | 18 +++++++----------- MainWindow.h | 3 --- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/MM.cpp b/MM.cpp index 4871d82..18cbae4 100644 --- a/MM.cpp +++ b/MM.cpp @@ -19,6 +19,8 @@ #include "MM.h" +const QString MM::VERSION = "0.1.1"; +const QString MM::FILE_EXTENSION = "mmp"; const QColor MM::WHITE("#f6f5f5"); const QColor MM::BLUE_GRAY("#323541"); const QColor MM::DARK_GRAY("#272a36"); diff --git a/MM.h b/MM.h index a9bd9d7..e7b5abd 100644 --- a/MM.h +++ b/MM.h @@ -28,6 +28,9 @@ class MM { public: + // General. + static const QString VERSION; + static const QString FILE_EXTENSION; // GUI. static const int DEFAULT_WINDOW_WIDTH = 640; static const int DEFAULT_WINDOW_HEIGHT = 480; diff --git a/MainWindow.cpp b/MainWindow.cpp index 0787f51..d12c4ea 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -247,9 +247,8 @@ void MainWindow::open() { QString fileName = QFileDialog::getOpenFileName(this, tr("Open project"), - ".", // TODO : change this to previous used one, if any - //tr("MapMap files (*.%1)", MAPMAP_EXTENSION)); - tr("All files (*)")); + ".", + tr("MapMap files (*.%1)").arg(MM::FILE_EXTENSION)); if (! fileName.isEmpty()) loadFile(fileName); } @@ -280,8 +279,7 @@ bool MainWindow::saveAs() QString fileName = QFileDialog::getSaveFileName(this, tr("Save project"), ".", - tr("MapMap files (*.%1)", MAPMAP_EXTENSION) - ); + tr("MapMap files (*.%1)").arg(MM::FILE_EXTENSION)); // Restart video playback. XXX Hack videoTimer->start(); @@ -289,12 +287,12 @@ bool MainWindow::saveAs() if (fileName.isEmpty()) return false; - if (! fileName.endsWith(MAPMAP_EXTENSION)) + if (! fileName.endsWith(MM::FILE_EXTENSION)) { std::cout << "filename doesn't end with expected extension: " << fileName.toStdString() << std::endl; fileName.append("."); - fileName.append(MAPMAP_EXTENSION); + fileName.append(MM::FILE_EXTENSION); } // Save to filename. @@ -487,9 +485,7 @@ void MainWindow::about() // Pop-up about dialog. QMessageBox::about(this, tr("About MapMap"), - tr("

MapMap " - MAPMAP_VERSION - "

" + tr("

MapMap %1

" "

Copyright © 2013 Sofian Audry, Alexandre Quessy, Julien Keable, " "Mike Latona and Vasilis Liaskovitis." "

MapMap is a free software for video mapping. " @@ -507,7 +503,7 @@ void MainWindow::about() "This project was made possible by the support of the International Organization of " "La Francophonie." "http://www.francophonie.org/" - )); + ).arg(MM::VERSION)); // Restart video playback. XXX Hack videoTimer->start(); diff --git a/MainWindow.h b/MainWindow.h index 48db28f..b410259 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -43,9 +43,6 @@ #include "qttreepropertybrowser.h" #include "qtgroupboxpropertybrowser.h" -#define MAPMAP_VERSION "0.1.1" -#define MAPMAP_EXTENSION "mmp" - /** * This is the main window of MapMap. It acts as both a view and a controller interface. */ From 03635c4904d0fa5242caac8ae324074a11a87fc5 Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 00:56:53 -0400 Subject: [PATCH 36/37] Import video and image dialogs are now restrictive on definite file extensions (with option to select any) --- MM.cpp | 3 +++ MM.h | 3 +++ MainWindow.cpp | 5 ++--- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/MM.cpp b/MM.cpp index 18cbae4..0a17dd1 100644 --- a/MM.cpp +++ b/MM.cpp @@ -21,6 +21,9 @@ const QString MM::VERSION = "0.1.1"; const QString MM::FILE_EXTENSION = "mmp"; +const QString MM::VIDEO_FILES_FILTER = "*.mov *.mp4 *.avi *.ogg *.ogv *.mpeg *.mpeg1 *.mpeg4 *.mpg *.mpg2 *.mp2 *.mjpq *.mjp *.wmv"; +const QString MM::IMAGE_FILES_FILTER = "*.jpg *.jpeg *.gif *.png *.tiff *.tif *.bmp"; + const QColor MM::WHITE("#f6f5f5"); const QColor MM::BLUE_GRAY("#323541"); const QColor MM::DARK_GRAY("#272a36"); diff --git a/MM.h b/MM.h index e7b5abd..3f7d52e 100644 --- a/MM.h +++ b/MM.h @@ -31,6 +31,9 @@ public: // General. static const QString VERSION; static const QString FILE_EXTENSION; + static const QString VIDEO_FILES_FILTER; + static const QString IMAGE_FILES_FILTER; + // GUI. static const int DEFAULT_WINDOW_WIDTH = 640; static const int DEFAULT_WINDOW_HEIGHT = 480; diff --git a/MainWindow.cpp b/MainWindow.cpp index d12c4ea..49a30ed 100644 --- a/MainWindow.cpp +++ b/MainWindow.cpp @@ -307,8 +307,7 @@ void MainWindow::importVideo() // Pop-up file-choosing dialog to choose media file. // TODO: restrict the type of files that can be imported QString fileName = QFileDialog::getOpenFileName(this, - tr("Import media source file"), "."); - + tr("Import media source file"), ".", tr("Video files (%1);;All files (*)").arg(MM::VIDEO_FILES_FILTER)); // Restart video playback. XXX Hack videoTimer->start(); @@ -324,7 +323,7 @@ void MainWindow::importImage() // Pop-up file-choosing dialog to choose media file. // TODO: restrict the type of files that can be imported QString fileName = QFileDialog::getOpenFileName(this, - tr("Import media source file"), "."); + tr("Import media source file"), ".", tr("Image files (%1);;All files (*)").arg(MM::IMAGE_FILES_FILTER)); // Restart video playback. XXX Hack videoTimer->start(); From df3e12db0429964985f15996281fceda8580a92e Mon Sep 17 00:00:00 2001 From: Tats Date: Thu, 26 Jun 2014 01:26:59 -0400 Subject: [PATCH 37/37] Removed old remainder of singleton code --- MainWindow.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/MainWindow.h b/MainWindow.h index b410259..49f5376 100644 --- a/MainWindow.h +++ b/MainWindow.h @@ -295,8 +295,6 @@ private: QListWidgetItem* currentSelectedItem; QTimer *videoTimer; - static MainWindow* instance; - public: // Accessor/mutators for the view. /////////////////////////////////////////////////////////////////// MappingManager& getMappingManager() { return *mappingManager; }