From b84e7a42af61a07bf20e84fbe204ad39ee2198b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20Cer=C3=B3n?= Date: Mon, 23 Jun 2008 00:10:44 +0000 Subject: [PATCH] * Model/Tools/ElementCreationTool.cs: Added * Model/Tools/PolyLineCreationTool.cs: Removed CheckDoubleClick() * Model/Tools/PathCreationTool.cs: Rewriteen * Model/Tools/ShapeCreationTool.cs: Now Iherits from ElementCreationTool * Model/Tools/AbstractTool.cs: Added CheckDoubleClick() * View/MainWindow.cs: Added PathToolHandlers svn path=/trunk/lunareclipse/; revision=106381 --- ChangeLog | 4 + Icons/ChangeLog | 4 + Icons/circle-tool.png | Bin 950 -> 950 bytes Icons/ellipse-tool.png | Bin 780 -> 739 bytes Icons/icons.svg | 346 ++++++++++++++---------- Icons/image-tool.png | Bin 1916 -> 1745 bytes Icons/line-tool.png | Bin 525 -> 447 bytes Icons/path-tool.png | Bin 831 -> 968 bytes Icons/pen-tool.png | Bin 0 -> 831 bytes Icons/polyline-tool.png | Bin 789 -> 726 bytes Icons/rectangle-tool.png | Bin 411 -> 325 bytes Icons/selection-tool.png | Bin 1102 -> 774 bytes Icons/square-tool.png | Bin 497 -> 429 bytes Icons/text-tool.png | Bin 1021 -> 1021 bytes LunarEclipse.mdp | 24 +- Model/Tools/AbstractTool.cs | 17 ++ Model/Tools/ChangeLog | 8 + Model/Tools/ElementCreationTool.cs | 66 +++++ Model/Tools/PathCreationTool.cs | 75 ++++- Model/Tools/PolyLineCreationTool.cs | 5 +- Model/Tools/ShapeCreationTool.cs | 23 +- View/ChangeLog | 4 + View/MainWindow.cs | 7 +- gtk-gui/ChangeLog | 4 + gtk-gui/LunarEclipse.View.MainWindow.cs | 17 +- gtk-gui/generated.cs | 32 ++- gtk-gui/gui.stetic | 56 ++-- 27 files changed, 476 insertions(+), 216 deletions(-) create mode 100644 Icons/ChangeLog create mode 100644 Icons/pen-tool.png create mode 100644 Model/Tools/ElementCreationTool.cs diff --git a/ChangeLog b/ChangeLog index f638848..7e7cc8a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,10 @@ +2008-06-22 Manuel Cerón + + + 2008-06-21 Manuel Cerón diff --git a/Icons/ChangeLog b/Icons/ChangeLog new file mode 100644 index 0000000..b2d2f43 --- /dev/null +++ b/Icons/ChangeLog @@ -0,0 +1,4 @@ +2008-06-22 Manuel Cerón + + + diff --git a/Icons/circle-tool.png b/Icons/circle-tool.png index 4516a946b4d3d499708efd50623c56a5d7ed3c16..a36b5ce4a5b82e79ed8ea74c46b7c64b303c4736 100644 GIT binary patch delta 19 acmdnSzKwlC0*9EGJcDeNMC`^4KV|?o8wE4~ delta 19 acmdnSzKwlC0tY{gV1E`C9}@1vX%zqf0%J);K~z}7?UYSOltCEBpZVB*HQaJnS93Al zHpH|nBqgJ-LlI%HYIrOnx*2qd#A~-G>!w}mRCLKGH3$!01dD=5Y{lBP^`qQ%-E_YK z(|2Z`4neq!>+Va(-X9Fi%riXCf1Y9f0463TCjUDm&vW}2Wq)lNvmPXbxD;ZUP{Jvc zuyM+hjIbynB!Z|y>r$UosD=Pw>R$!aY0P>R2sy8DtL12Q%i>;VO`@!*^k;>wJXKX( znc8V9Plb|U9$c9#{GM1S2qhN_r=x!RhlR;nT?v7RFN6~P05EMt0OOS3;FR}tHhAZ~ zb!S6Om5o0DK!0o)dY1X$^@xAeIp7h#5K&|# zGxYXZVnQe(5dgRBz?xjU-S_4}H6j{n^H#S909`66p81B`q>}fx6o812W@2-R(+@jN zevSq-18vSGN*@i36*u>tx*7kK-~jMA?{CN`?QX3-<7=;P^&j7TWYORgh$j;R70;($ zHcy0o=YJ6KZoc0z&4?_NcM(E5EX=|hT?hO%C7y`0s5I`{UJ={laId)SRmra_GuBT_ zUy5d9^R{p*Vhbz>U4i9blTcCt;-Exz->4C7YQ>aLuZ8gj0)MPnqAXKN?Vyy#DWOXQ pAc6p4p@a_+^R{9W6B84Y-+kqHD7h*$D%PDHLkV1i{oFVg@3 delta 696 zcmV;p0!RJh1&jueV1Ew<8Y+m#Ao2hJ0*pySK~z}7?Uipx6LA>FpZl}h*7UZ_)wG#1 zMq?R+41*xD7rxmm4a|&;UP!OfBq-?5tKRh@5F`-$0~Hhm`bK@>8^9CNd61ira1d|uq$bHDHRp5O8O0CefnrGIOOMdeUiZZ+{2j4W44 zkW>Irg$9~s5dacuB0-QuDT518I)60)O*3_MUjKIhh@~N(B$g$A z>#v`@GDcD0PxWI{Zy+KjUzYP}ccywoB+0d5+bu9KtkY`ZUA~gamQ_vbtE>E$8Q$zL-OP`z{ zLld=C&ZZ$MpwUj+-suz - - + + + y2="181.55862" /> + inkscape:export-ydpi="90" + inkscape:export-filename="/home/ceronman/svn/lunareclipse/Icons/square-tool.png" /> - - - - + inkscape:export-ydpi="90" + inkscape:export-filename="/home/ceronman/svn/lunareclipse/Icons/circle-tool.png" /> + id="g3305" + inkscape:export-filename="/home/ceronman/svn/lunareclipse/Icons/pen-tool.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> - - + id="path3207" + d="M 226.25,160.57647 C 226.88542,160.57647 231.27783,162.15011 233.03571,162.54075 C 234.43986,162.85278 231.1958,166.44062 231.07143,166.6479 C 230.89286,166.94551 230.71429,167.24313 230.53571,167.54075 C 229.70692,168.92207 229.49021,170.13484 230.35714,171.29075 C 232.51023,174.16153 237.06341,174.67037 240.35714,175.21932 C 242.74779,175.61776 241.70687,177.51987 240.89286,179.1479 C 239.07739,182.77883 243.17998,182.70217 246.07143,184.1479 C 246.29094,184.25765 246.54762,184.26694 246.78571,184.32647 C 247.74642,184.56664 248.84819,185.20325 249.82143,185.3979" + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> + + inkscape:export-ydpi="90" + inkscape:export-filename="/home/ceronman/svn/lunareclipse/Icons/selection-tool.png" /> + inkscape:export-ydpi="90" + inkscape:export-filename="/home/ceronman/svn/lunareclipse/Icons/text-tool.png"> + + + + + + + + style="fill:url(#linearGradient3248);fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:2, 1;stroke-dashoffset:0;stroke-opacity:1" /> - - - - + + + + + y="167.15288" + x="387.33038" + height="3.661803" + width="3.9143412" + id="rect3274" + style="fill:#ffff00;fill-opacity:0.62121211;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + y="158.69286" + x="398.31577" + height="3.661803" + width="3.9143412" + id="rect3276" + style="fill:#ffff00;fill-opacity:0.62121211;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + y="181.54756" + x="394.1489" + height="3.661803" + width="3.9143412" + id="rect3278" + style="fill:#ffff00;fill-opacity:0.62121211;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + y="175.86545" + x="409.55374" + height="3.661803" + width="3.9143412" + id="rect3280" + style="fill:#ffff00;fill-opacity:0.62121211;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + + + + + + + + + diff --git a/Icons/image-tool.png b/Icons/image-tool.png index b87e6c7340fec4ef8332cb0f31a4b240766c4aaa..4e285a0e948d44eab7f432e5fb44994ce0a34f31 100644 GIT binary patch delta 1668 zcmV-~27CGZ4$%#eV1E`CA1krO;T-?~22n{wK~z}7?U!9_T*Vc~|1)>*e)?R_NL#TG)T4HTLxN>ro@+Nvl`3kXqF@K7lz2vH#(D)pfil&a+cscllF3Mn)#RcRF{ zic$;Okl>J#1dKzRG&qi9$KLgNvAy^1oipe3!Mm{&U6ZVeRDY?;kw$kknmgw==VRs! za7F$PL>9M51ZO_2g)3{xMeV{lp+ti10C3_25?x(bOZ4dgxh^7ugZO=CCp-X93J+d9 zM~D45HHEsDUQ`=jdkyz$%8N>sN80w~{l?V8(^QaJ$SJ34y0M9}i;tGIV$M7J0NCrq~rGtgs?;fOaI z?QkU-Z2z5?e6(lt)_{quSi@|Hn8~swV=Y;>WG#__HDrlMh}be2F~nlY5R(;4mWkdT z+qdI^2h?O>>^12$hMs*ET^BP%Ld?4L`R9>bmTYkAqJMRIWkc)irC!RP7OIrv4);7f(w{E`u;oSif<>vCyH%{-pRcVGmgoRl|SVV+T z?Xw8LEX)EC5n*QGxMcdWO;;bbVvS)#utKM%hts)Ip$|amvVs~wZdodGGGHQRrfI*B zoG6{`dVlIE9b6Fl3t3s&o?MVMe|%ZoV}~OjS+NJJFaaCNd(+PV_%?vUmkTt0ZS!Z| zXJ)bz7|U#vDMgPw?D+El0;T4^00h;(Qlb{dFfbs=4-T_k3=?Q3t@KeVb~a40UIOUz z`-k88DlNo}6#;x-&Nt5&`2ONC!1n~6kMrZ!0)HaHi(#0UVs2~)fbr0?Y6+l;=4ASq z6>BV8vMeT_7w77%X;|bV`NX5OV#z4r2W&_xFqSNNW$$SK->JoAx%T?DW7TYGuWuc{ zuY1!I#6(tzthL50kxf)>LZ)gN(M;tE3~P@RRKGwzuEk}aJ32ma_xaS8c_mhe$O;+D z#D8KaU&^OKVHo83CAV0faW94;>>;J9|AieEh z_*oU^RAIQYJXg4jIq24cdH}FWihy%4a3i}i@#XJOK&EWVPXoBW7MD$Dl8yfkgBi*X ztsI;=zB#gjQ+g^oP=z@;dAwJ==`BBX>wnCh(YkWGaz0jojIq^kaPXxc1T*UjX6%Vr zyz#F9-ULvr#buv8o;z{RVi@20{ExAJetlr}*pu1kL|^k`HOJss)lJ4P-v4s6$=?`B zc^G4sEgSj+lkiW`80>M4Bil z2Nco1@f?TT1sDQw5Ws_BS>`MOluXAPS1+$`IX7Q&h{+_HhTG%qyR9b&a{K+}v2An% zM4=_MY+H>m1YiY#ePLEoA@$I&9S2t_(LJen;)qzM(ACoYn`$-|@|27}v#*Tz?lW%*ZN*b3`Z^gYR9kVto8@yjz;nZA?z-w>xa}Ev-G@ zS_~7|fJ8F|R?OwX0H8zyV-G!q5zoWwbQ&kaD#p;OacT;?Uiq^c|J5&5F_}>Lh|-6& z(nr^1yKmG=A5lv6uUfY1dIj|_rPQ0t8vid>QZR{jGyb}fohw9c;p O00004g3y}V1Ez<91{O05)=Rc2K-4xK~z}7?U!3@oJSSM|MOjT{n_hl*6TPo zCyq(%I&PZ;!3#=@parF%N`+FXydWW=M(P8XiWf?S#6u-$DB>anQB%StYD!f|)GBS2 zC`m&wZPFH6Dsbvc9LGtVT|2w>UcUY2TzJ@B$GPH2c|tkTr++y!`ZV*KIsZAD1KhU% z1LGhtxgapPc-$1~0<-&8OS9Znl^@czUw^t?kb?j>ckW z1kelMUI0r0+)?#Y05(+pB!D}sej9+ht9}cBO;x`s<|DQJ*~Zc7TZ3dj0prnUJ${}y*m zw;8|I+E)RI!2Rpds4<)IFGdB|PsBa`QtuZ>NM(qGNPpz6_etbk7N$EpHw=>4H%XZK zQoU~w6Oj`2Ea`rkK$eAgRdd%a)`&=$a(rf_P{6Xm!E)!wu!%(A{!bv+#fe8A&IKNP zKM_yZR6KQ_RHy=DiA0En$ubj(wIoceLNyp+A*+@|nJo!P6^2zw*&llDH(?uzpbDr%iT(ZU z{V$LZS+QhUX=G-ke=eMR4Zy^rGz6fuzP)EpBt)!CB9<=Zi^-#hW4X!}<{7Fjv^H+$ z`-zMhEUzUF<1ywITd5HI;=28 z4clWJ!pXi7T43mubeUzz7Km zhs2i2Gv2FK?dUbNa=nnHi!-08!LSlt3+AKDNcTb*s(vAbI&pDw-T1|^%{eN>sxX!< z6B|onBoDyeRLIt}cKvD|Mu=F6RGBObWq(T3!HJo79k5|%FmI16BGu|VE*ai))zj?`e7*;*EQf9hZT zW5rY38t+wOk2!@J%*o8~#zZOiofqm_N(0851)!!P^zxLj^Q~y^;Uja?EeKklaDQCq zC1xJJnUKYD;p{y%7-FS-x#S!?d+2N9X6*5vKbdId(@s%DW3@0zDYx~9e!>nI&n|$0 zf$CDn;hpiOVyN;!=!68Gzom-?Dy(T+xxEH+GCjQFjmZN~J6j5y2L9p9Hr<1=+W=8k zkA#SnEPL@ce?di4sN~3bm})}MXMdd1D6MQ=wQp#8v~g`Q{nd6jvc>b!VjOdrA{thTyK0V> zg7~(EoKFD$0AT25fMSKH_$gBQ^YX@y<0YriG4W(^bN+2e=M%6&KdjpTRex3=Vr?Xr z)DcRyu6mA%e?3!9Cx0K7?smjBisKCWLH&pDyr?1PQwA9VPzS)jX1=-JtFfzPMYuGP zoU4yF&MXg>A8U@ayq@_WkI9|o{_K9ZUI(0+ml1D`w>)oL*fI$*F^N+m4?(sLbsxIE z|BlA=yytn=zXU@7o&qoeV1IbAKtY-8cUQG_{ga3+E0gbdh4vu%UNWA1F?*_%zOXOq zlTcfmg2Zn{-BJZch%AUAvXO}>bV71nmlnV@0B8gdRkO4J$lvh!QD1Kk#p9-)SvS?i zVxtb#|Glqm!;7`s1VJSWi?tK8lLJk4EgyLB@)Z~&a)_dGWIZRO(tqVJR9|m?=f`kg zEM{B-l+$TRs$MRet2D%nkMDV@`S?u648Qj-$9L`syRU?aI3l=8?TL=#mrmx!FaXH+ z;r{ezO+#H>&YIP$-Ld}O>AF%$Z(JD!fyox5j=lR{Z7n?c{RU}m_753jMgf#Nn>#lf zm@@#%%Nm!h2XFyEIe%H7>;#Yl5O$!W0YC^K3m{ST&jV<#uQ&YE4;sSJ)5&8qv#I?- zV6uz4Wxfx-@BY|%{55SzuoeKf11z^t3oecr31Yk17OjxZ#%oL`=YPF#N z$_stp$6vBp?S1<#%K#dfuU_9=r!LD^AN-zius1B}qqm|iiz>&><3WJW)%sx>HZ18w fw@cyMb}Q|_F)30OX_Ae`00000NkvXXu0mjfdJc}3 diff --git a/Icons/line-tool.png b/Icons/line-tool.png index 41f36f736dd211529fc67fb8a5792fef64b424c8..8a9a00e92c833b4a016f1115f354207a37c0ca11 100644 GIT binary patch delta 360 zcmV-u0hj)b1iu52V1E`CA2~vQkW~Nx0Y6DZK~z}7?bppJgi#m=@Shp4k0eBjL@7xr z$^t2~u(43Gv0!0k;}YC}JFv0fCZt(RDW#M|NO1w!N{P3b*XB(=7s|}Bn17wcIh*tA zIp@@KsOFy~c|S5459Qvl_KP5~1Gl&8dV9^6O63J)zFRC5On=Sf0Ru`*{rMjdIu;$94p4L)gK#@KX12cJufeN?Cy4rWMji*x%d1G zc--4_n$NpQ65DCFU6CVr%gBh!C<=5T(|<+sX;f3qhr9xVGEC=B(@p^Z0000M5m8WCje&>} z5{-h0f`Un7Wu<7L|6nCn`Uke+PgvX8*!V{95lJH=X(Ulld_Z38!@^a9ZY(sLNs$9v z%w=HC+`X5XfjTvY;qyr^rJt&j2Ugu$P$?bweA3%%R@*I&t$!@Pg*P{{uI*TM3YsQz zCT+G?Bjt)yP}eOvnbe00g@$Xl1spTr@ksh)Og*}}F(SpH)m*g<6be?;*vRAHSHR*a zoi=-bKDPv?0UPiEL1c6InRHQ`6mKYW(5e5=KRHQ`ImI#ZK z7`A^$NTkH5Eq@UdDKTNUXh5Vy95@5IL`qBnr$C2DiD}>jXcH+h0~`Xaf4&d=lWjl+ zc7Qb?=P>8E+-X=zwlqzi_jk)F!1@ecCG=j?#N%cLKDn5kYm6-{dRt?0&#|Il0JJnc zbmnr_?>C}K;q^+-e!qNouwNWE4Cl3Ew<|KzucS0h&M@3(%(iM3;SUC)%B_fYTvb)_ h-yb^gQ44iyhIeuwWmLL25$*s0002ovPDHLkV1mS8!r=e_ diff --git a/Icons/path-tool.png b/Icons/path-tool.png index 7906404c5eccc7ecc0ac4e6c2dcce59af72c2473..7fb1450ad149f9869b929654aca7a75d11d89ef4 100644 GIT binary patch delta 885 zcmV-*1B(2=2FM4HV1E`CAQHA6Ln#0N14v0kK~z}7?U!9>6jv0-f4g&cW_A*d-Lw{I z0+mJ~EukMSX_5^n_*Bye3!xtpQToz8r4%ZZw1m)yzO;&zyj4v70zr`owuqaOrI74y z*f5nwgNlj$uxT2)8*4J%kICG=q(wtacCIB*@DJzZa{lN1&wn}h&b;MN+apLDKtUEx%TISaU!m$mzf3|scvW~i2z+3-S@IX0EVZvXm53S$3 zWy2OTJ(Ip$qErhM%Ajrs!b{dJ`W66CUtiy5n&wNkZ65;W%W9p@ueG%lbR8F9e4IKz zIqyR%mFgWH9)Et(563i_vhBbb#}TKcqz{lweS$vXwR@g7?N@lQXl*!mj@PABto$FO z)9I*Rj%hNrb7yFJ*DllDy_?I+bwHGv{58+>qCm!vfP9{h5(#gglnZm7M|?S-vPK}K zYytjMXx!22>gs2DdU|Go!;9v>1Eo^wQ%%!UX1Few%YQu)i^bB)vmYEB6sc6|S|*bT zDbQaLLVPEsd|;AL>&!yLaalgZ>8OO~}2C=I}8z>k%cm0L5J%;PJ?U$q0C=QT+wuLB!_cYq7P9bf^t z3;YJ$1b;3AH-Pg%5ojG47?7^(4y_bltaAK9lPxVRxBYUZl=SuYS2&k0RoSM=ltSgf*4EZ{ySuw@1G+)F delta 747 zcmV4Q_K~z}7?U!3fR8bU$zZvJu*=M{b;+UdX zc|l6aC>1Oe$|!piuPI1K5s?*M@KRRq(MvBu5d;=Ng%l+sm6r!gf-YJ_kd+pNRO$?s z#}IZeN072SGmg%SKO7F6z1Cj;X07$FeP9L4hise8Hfgij%76S3JVg^?ysWrXI-{c8 z4u|9N?1FWUQ48=0XazO_79Ry)ErjSPDl7_5PD~;-B~_79#?3AU%rP7QhJiGo5oiWd z0UPiU_~k|LP$9&?o?Qho$%#ppXM@jYdir`_Pw7*6zzhqVave}$Jn29jFzrEbRTEnO zww$f&voo{oZ-3qn%Ny-CKj^x?5g7O66w!doc$AQcL!cMPFhuCTP!#20`i68zRFsqM zzMko!mwzvYbX_k7qPukflA zMVV1m^{d5VDO`#vW&vt}Pe3Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01ejw01ejxLMWSf00007bV*G`2iOJ{ z79b{p6v`-j6R#;q zND+}0Uhq;@@6k&yK@kKNL4_10B9)g1OM)(1M39vhg;eScmB$cvFGrBFJTs2Yi$5F= zoW0gw|7NZAuYF(z%ZF^6%{FPX*~Y^TIK$I)lw7M7!d!Lp^44T0vCYKW}|DGc5zL@ znw7kb|hICyo2IOKT^bT-+ zfeuiFs(z^~uaMDBr(4ss2OgwtVI>2u01u6hn6L1v6h)a)RrRaIVkumTDP{p`floj; zP+>^41+ZAH)>oPkmw=F^9;XUW0<;68z@#xb+ko=rAn+$5ft|+0ylo7Z5`W%ys*R%c z7*-z<$N&cYb$S7O0}}j2AQ$NO*4Y;+NClqylYnZ}fL96_-~$2!Kqhd;(1Uk?+aI;C z88{D209`xK~z}7?bkbKR6!I5;4fkKuGy>`gUhN2 z7UBydqFA^VVrL@(3u6>5EUdJ%5yVOav9Qy|CO$y%K|qZNL9~Kog20owgMZb=2?_#VqR6>0biT9G z&16y{E`ivAeSI2xdo9O{>7+9jfiM)DI;FXx!P{a{em3hr7gvM8=XBaoeZ7~NjP6v* z`Pl$pkLNgz6ds{4TQfg^e(WeKT?yHl25!JLJjBwn_EmUO4S@1RxNnSa5%%LY_TYP& zuL(WXCeXHJ%YQFH85)v*{Mh^-KeV8IoVX_9i_b(Bef#EOM~ByE&KL*+gOl{VGET;( zuY}2@;e`vmFBIHII7!@^YGq)Q5N+CIBa}*VQ6!omCW&QuT5STmyShgCzD^Lc0`F1$ zSEu1lbX04wIHzG%cfda<5a%>pgA-GpVXdRJwSOf$41Yyo=F_=HA$nd0ST zpt)IJHv3CS+uE#)f&0hSR(b&m0t20$?)CR;k0Na&*SOegppyEp#4$8HduGGnpv-uk zDow@l5z%g2jO53(6X0wLs>wUU&M=v(dsuC_(V6e4Sdp_?~P0iFaplT%;`xHy1-2VSU bt(N@+o2H-ce!+b^00000NkvXXu0mjfCHFJm delta 705 zcmV;y0zUoL1(gPnV1Ez<8!%-C#Ww%|0+mTbK~z}7?U&n26j2<l}_WAV{@?)f`sEOWK z$3(L7QKC22p{l3_O#onQ+%Y9Z|GJ%C7b&zS8GEn{-hJqSF= zVOI-u2T|hLV<@Gt&tEXUHZ*GM>vt+rN?!gWI6w`M2s8l?;cU~C{ngd-tq@oX*acRB z*%sKgt2G_|y#-)s(5Y}7J}zJvSOrAZ|FL;<13)f-DS!9o48ZvxWVi=-6_hhSTo73Q z{U#7t|M7`rwLsf4*T?4RI&y8orOFRrhsOnrN^!Ah->^|`Eh`h#057^Sn_PG90<+u- ztOdfrm!%p=NvP#q^jG6vHCa_92czL(Go5yQx1a{-0o*05-3%PJZFYVC=8&9r-vzM; zY8Tmnm4CodpcycMn^Mv}Ffe1p;~6U+&#ZGCSIH-VnjA;a@a_rCKs|8BW6vjmlS*;w z#ws8Oe0L4i}K~z}7?NmV$!XOZf$^L=ot1s09Wr128 zOC5V~GsB@Y+l1^EAP@)y{vDUW{^M7AHez0HcbE)j2ARQ3FtfVU?>R@-^A=7@X;X(I z1EfF^6d@9#AQCJ~1SNki9BQd^ZsrVi#s+F}F+$3XxS5rpn`ZTzT({eRnv?gZuEwen zHSemZ$ow76Cg3gjEPiz+n*`@tpclb5er?3xwrHK!{uUe@JU1#rnwWua3?3WvlYhan n!OJ!8TX6bK7zhLcfz$B>w{{6-x%)Ydk;eoqe-2mNGIjGX6V)SLX9sd2_Y+ z00Dr6Q2jz9ng@{7=-U8i!^PI$C|B_|CC>bwCtkU}T)e+M-hVwwiVDP9DoSjnssVc( zv^(GF#q&eCiW*G73{zlz&<1;K-1y9}ZVA3605SzO?V`PzNIUVhukuMH6F(+k1`1jq zb>gnQ=MbX|7<3r;lM+;I2{e*`sdEQ@!9z&N2M|+s!2t{~NeN)I z3w#?=9nVDT3q7-!xc4Y7itxEy7O(Q-7GX%Lr5~}qBiD>}Jn!OO(s}*^W@Kb!czgk& WcUICux zTd&`^S(j2%jj64zD-=bkgpfG^sRI#USoX5t9}p@lD+_$SGfu9MYmjBRm1WtA_4V}y z0AI5zkZ-k~@_N0;Z8jTNhDB*v8SM`Q4wauQ_iCDUK~a=ulgUISlgU{CTNxM7G|hGN zXsKT~BIMCDjeqpRIUK01tt+_L*vNZ49^cy9>Q#nes^jtaCje2S0@PjsLdZ-cvJ~HK z++wjH5C~X?ho6aqgM;U6Hrp6QQI|3%0AL{;4kz{s$+C>DuC8TqeHkL>v(0|g>9G7Le0)VvNCN%O3plPbK zv9Yo9D#_1BTib2g>2%)vn`LN7KvmTbQAyg~m>3&-tES(Znwko#s;bW0?e=R~5s1ZN z6Otrt0zfnx#hs4!#lF72*W=^wlys)2r`IluVlPe8C$h0+d+Y0c%blHflRVE)0yqr7 z>~gs#M}MBb&}U|5^)iQ_j)iG z(!)zj`snB@&ExS*{g%rJ4LcQCmaVR-IW46HR#sN^fq{XfAPA2$)&oCzxl>V5lsEJ9 za}WCa`{iHL#V~mQiVyVO;C8!59t{nV?(XimC@YFjjhr)?hUGYJRuF{yxocdG9RC$R Y0Feaj0%Mlq4*&oF07*qoM6N<$g7=k1!vFvP delta 1020 zcmV^#1?=1I|fAK~z}7?U!FnTU8v#zqj|^_V%>5Ev|_M zJ30{yCSu}1!ETalq}oN+IzgY*Wcb90qQ1@Old&)E)hKKYGu4Fg?@b=aVz%s6c^Ir4 zMq2G!xUhoswwLyDFFih(8l2K@PZTUI|U2|Lyi#g zoTh0>0LgtP6U=7m%a_ALW~*&OWb>~wc`zag}?w%QF0(;-RH zfZ1$rS5Pd z<4_Lb?^$W%95prk^z?L{(P(^3*YzI(q<30`E0-Rl(U`iovf?>hcer9I^Z7g?k%)fr z;!vJadR0}`PXXMjG_NcG!!S{4St<)4%QD8tM%9s#5tU(>FDKL}^>bf3HCX;1%b8qjv%u5{|f+&ii-Sh!Nh4_3b zmDIO8D5V(u`m3U%D5WwX6bf0~Zg&qMK(C4|5kLP&| z4i1S9hvPiY^KVuYKxG(aBbWPgtvh#aV{&pLt$%6S)6wXyo8#kST1jZL*$|0*D_X7A zO8~sp0sznRF-cm2EX%lX;fsu-C|v+D*=#l#4u>9rvt`PM{I0tWQdsvGcz+?s;UkH(02_0Kr9xE zCkur_CxFd=0BYI|S(g1A$JVyAw6G+9QWYHG^bY_`D% q%yL!j5kU|Z2_YXG{Pi5zgV-O<*L0a4#k5WU0000HK~z}7?U&0Ef-nq4bMN>i^8Y*a_jCb6 zNt)26FzSNtOh->1rxir5_2UKe`TcF?&F(&)FCi%eg@lk4kaNt$%N~|E>-hQ|$~4`p zY*+<05FCYrn?1Pgs1w-0so+o@iQ#bK^Y8T~5W=a)fdH>|O!Xw#C)oU?GNEn&Ecl4sF zvB1+E=#>rTwzKfO0}0vs;7B@5>GZ|i{NKS*d<#8-yFR`2{W>xl8xqh0-(Tm(39|-c^5cBc;oN*EI4)_ ok-H?!$~L#W4gZVxf@@vt1K)WMq;Xq%WdHyG07*qoM6N<$f(k*TbN~PV delta 411 zcmV;M0c8HI1MvfpV1Ew<8!ncy)v5ph0dYx0K~z}7?UylD#4rp*7aq6cTGX6^E6`JL z4lcrsM3HPF%d#S;0E)QDbDYh0eZ!@3#>g)5%8-$<`P%Kv=C;)`t z+nTIvx~;YM&3t)=`1tyK_q<1cBY|TYt~(q8MB(T*FoM%Uw0{PtTPtl~-*JDv!ztru zmd&C4&AMKU!04-X_%`=Z(moP)v*ja*;BaubjYRNfu0;)?2&aug0e&I^G-BIc%dUTjiqD9C9IXb~LJ$#&g)3pFeJ(z`KJ`3_<-|%49?S9a;%Bg zyhiXO3-XZKDt81I70FuUq$SH-uk8uW!vDqpf@@sk2NeA;7Dw9oBsl;8002ovPDHLk FV1jJ%$VdPH diff --git a/Icons/text-tool.png b/Icons/text-tool.png index 0384a9147773ec0e4aa55e24ebfad1a96700da26..6054df1fde734d84871ca5925f10e04704dcd2da 100644 GIT binary patch delta 19 bcmey%{+E410*9EGlA`r*hrJs!rZNKnN;3yk delta 19 bcmey%{+E410*3&LG~22@0qZtqOl1ZDNx%n7 diff --git a/LunarEclipse.mdp b/LunarEclipse.mdp index d954da6..5272900 100644 --- a/LunarEclipse.mdp +++ b/LunarEclipse.mdp @@ -89,23 +89,23 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -133,6 +133,8 @@ + + diff --git a/Model/Tools/AbstractTool.cs b/Model/Tools/AbstractTool.cs index 33b6ce7..5e9b943 100644 --- a/Model/Tools/AbstractTool.cs +++ b/Model/Tools/AbstractTool.cs @@ -25,6 +25,7 @@ // // +using System; using System.Windows.Input; using LunarEclipse.Controller; @@ -85,9 +86,25 @@ namespace LunarEclipse.Model { get { return dragging; } set { dragging = value; } } + + + protected bool CheckDoubleClick() + { + bool result = false; + // Trick to detect double click + // http://hackingsilverlight.blogspot.com/2008/02/silverlight-20-double-click-support.html + if ((DateTime.Now.Ticks - last_ticks) < 2310000) { + result = true; + } + last_ticks = DateTime.Now.Ticks; + return result; + } private bool activated; private MoonlightController controller; private bool dragging = false; + + // trick to support double click; + private long last_ticks = 0; } } diff --git a/Model/Tools/ChangeLog b/Model/Tools/ChangeLog index 9293561..613ba6e 100644 --- a/Model/Tools/ChangeLog +++ b/Model/Tools/ChangeLog @@ -1,3 +1,11 @@ +2008-06-22 Manuel Cerón + + * ElementCreationTool.cs: Added + * PolyLineCreationTool.cs: Removed CheckDoubleClick() + * PathCreationTool.cs: Rewriteen + * ShapeCreationTool.cs: Now Iherits from ElementCreationTool + * AbstractTool.cs: Added CheckDoubleClick() + 2008-06-21 Manuel Cerón * SelectionTool.cs: Updated to use Frames. diff --git a/Model/Tools/ElementCreationTool.cs b/Model/Tools/ElementCreationTool.cs new file mode 100644 index 0000000..ecf79eb --- /dev/null +++ b/Model/Tools/ElementCreationTool.cs @@ -0,0 +1,66 @@ +// ElementCreationTool.cs +// +// Author: +// Manuel Cerón +// +// Copyright (c) 2008 Manuel Cerón +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. +// +// + +using System.Windows; +using System.Windows.Media; +using System.Windows.Shapes; +using LunarEclipse.Controller; + +namespace LunarEclipse.Model { + + public abstract class ElementCreationTool: AbstractTool { + + public ElementCreationTool(MoonlightController controller): + base (controller) + { + } + + protected UIElement CreatedShape { + get { return created_shape; } + set { created_shape = value; } + } + + protected virtual void SetupShapeProperties() + { + CreatedShape.SetValue(Shape.StrokeProperty, new SolidColorBrush(Colors.Black)); + CreatedShape.SetValue(Visual.NameProperty, + NameGenerator.GetName(Controller.Canvas, CreatedShape)); + CreatedShape.SetValue(UIElement.RenderTransformOriginProperty, new Point(0.5, 0.5)); + } + + protected abstract UIElement CreateShape(); + + protected virtual void SetupElement() + { + CreatedShape = CreateShape(); + SetupShapeProperties(); + Controller.Canvas.Children.Add(CreatedShape); + } + + private UIElement created_shape; + } +} diff --git a/Model/Tools/PathCreationTool.cs b/Model/Tools/PathCreationTool.cs index f0abd9a..85f5628 100644 --- a/Model/Tools/PathCreationTool.cs +++ b/Model/Tools/PathCreationTool.cs @@ -25,15 +25,88 @@ // // +using System; +using System.Collections.Generic; +using System.Windows; +using System.Windows.Shapes; +using System.Windows.Input; +using System.Windows.Media; using LunarEclipse.Controller; namespace LunarEclipse.Model { - public class PathCreationTool: PenCreationTool{ + public class PathCreationTool: ShapeCreationTool{ public PathCreationTool(MoonlightController controller): base (controller) { } + + public override void MouseDown (MouseEventArgs ev) + { + if (CheckDoubleClick() ) { + create_new = true; + return; + } + + Point position = ev.GetPosition(Controller.Canvas); + + if (create_new) { + SetupElement(); + ShapeStart = position; + ShapeEnd = position; + create_new = false; + return; + } + else { + AddSegment(); + } + UpdateShape(); + } + + public override void MouseMove (MouseEventArgs ev) + { + if (create_new) + return; + + Point position = ev.GetPosition(Controller.Canvas); + ShapeEnd = position; + UpdateShape(); + } + + + protected override UIElement CreateShape () + { + Path path = new Path(); + PathGeometry geometry = new PathGeometry(); + path.Data = geometry; + geometry.Figures = new PathFigureCollection(); + figure = new PathFigure(); + geometry.Figures.Add(figure); + figure.Segments = new PathSegmentCollection(); + AddSegment(); + + return path; + } + + protected override void UpdateShape () + { + figure.StartPoint = ShapeStart; + current_segment.Point1 = ShapeEnd; + current_segment.Point2 = ShapeEnd; + current_segment.Point3 = ShapeEnd; + } + + private void AddSegment() + { + current_segment = new BezierSegment(); + figure.Segments.Add(current_segment); + } + + private PathFigure figure; + private BezierSegment current_segment; + private Point start_point; + private Point current_point; + private bool create_new = true; } } diff --git a/Model/Tools/PolyLineCreationTool.cs b/Model/Tools/PolyLineCreationTool.cs index 1ca42ce..725f016 100644 --- a/Model/Tools/PolyLineCreationTool.cs +++ b/Model/Tools/PolyLineCreationTool.cs @@ -44,13 +44,10 @@ namespace LunarEclipse.Model { public override void MouseDown (MouseEventArgs ev) { - // Trick to detect double click - // http://hackingsilverlight.blogspot.com/2008/02/silverlight-20-double-click-support.html - if ((DateTime.Now.Ticks - last_ticks) < 2310000) { + if (CheckDoubleClick()) { create_new = true; return; } - last_ticks = DateTime.Now.Ticks; if (create_new) { base.MouseDown (ev); diff --git a/Model/Tools/ShapeCreationTool.cs b/Model/Tools/ShapeCreationTool.cs index fe86c7d..64eaca2 100644 --- a/Model/Tools/ShapeCreationTool.cs +++ b/Model/Tools/ShapeCreationTool.cs @@ -34,7 +34,7 @@ using LunarEclipse.Controller; namespace LunarEclipse.Model { - public abstract class ShapeCreationTool: AbstractTool { + public abstract class ShapeCreationTool: ElementCreationTool { public ShapeCreationTool(MoonlightController controller): base (controller) @@ -45,9 +45,7 @@ namespace LunarEclipse.Model { { base.MouseDown (ev); - CreatedShape = CreateShape(); - SetupShapeProperties(); - Controller.Canvas.Children.Add(CreatedShape); + SetupElement(); Point position = ev.GetPosition(Controller.Canvas); @@ -68,9 +66,6 @@ namespace LunarEclipse.Model { ShapeEnd = position; UpdateShape(); } - - - protected abstract UIElement CreateShape(); protected virtual void UpdateShape() { @@ -94,19 +89,6 @@ namespace LunarEclipse.Model { Toolbox.NormalizeRect(ref x, ref y, ref width, ref height); } - protected virtual void SetupShapeProperties() - { - CreatedShape.SetValue(Shape.StrokeProperty, new SolidColorBrush(Colors.Black)); - CreatedShape.SetValue(Visual.NameProperty, - NameGenerator.GetName(Controller.Canvas, CreatedShape)); - CreatedShape.SetValue(UIElement.RenderTransformOriginProperty, new Point(0.5, 0.5)); - } - - protected UIElement CreatedShape { - get { return created_shape; } - set { created_shape = value; } - } - protected Point ShapeStart { get { return shape_start; @@ -125,7 +107,6 @@ namespace LunarEclipse.Model { } } - private UIElement created_shape; private Point shape_start; private Point shape_end; } diff --git a/View/ChangeLog b/View/ChangeLog index 8f326de..f3a35c4 100644 --- a/View/ChangeLog +++ b/View/ChangeLog @@ -1,3 +1,7 @@ +2008-06-22 Manuel Cerón + + * MainWindow.cs: Added PathToolHandlers + 2008-06-22 Manuel Cerón * MoonlightWidget.cs: Updated Test diff --git a/View/MainWindow.cs b/View/MainWindow.cs index bcd3199..4b1e3c7 100644 --- a/View/MainWindow.cs +++ b/View/MainWindow.cs @@ -83,7 +83,7 @@ namespace LunarEclipse.View protected virtual void OnPathToolActionActivated (object sender, System.EventArgs e) { - controller.CurrentTool = new PenCreationTool(controller); + controller.CurrentTool = new PathCreationTool(controller); } protected virtual void OnLineToolActionActivated (object sender, System.EventArgs e) @@ -115,6 +115,11 @@ namespace LunarEclipse.View { controller.CurrentTool = new ImageCreationTool(controller); } + + protected virtual void OnPenToolActionActivated (object sender, System.EventArgs e) + { + controller.CurrentTool = new PenCreationTool(controller); + } private MoonlightController controller; } diff --git a/gtk-gui/ChangeLog b/gtk-gui/ChangeLog index 4e6b2fe..90ae4f3 100644 --- a/gtk-gui/ChangeLog +++ b/gtk-gui/ChangeLog @@ -6,6 +6,10 @@ +2008-06-22 Manuel Cerón + + + 2008-06-21 Manuel Cerón diff --git a/gtk-gui/LunarEclipse.View.MainWindow.cs b/gtk-gui/LunarEclipse.View.MainWindow.cs index 0b57e08..c9bf992 100644 --- a/gtk-gui/LunarEclipse.View.MainWindow.cs +++ b/gtk-gui/LunarEclipse.View.MainWindow.cs @@ -77,6 +77,8 @@ namespace LunarEclipse.View { private Gtk.RadioAction PolylineToolAction; + private Gtk.RadioAction PenToolAction; + private Gtk.VBox vbox1; private Gtk.MenuBar menubar1; @@ -173,7 +175,7 @@ namespace LunarEclipse.View { this.SquareToolAction.ShortLabel = Mono.Unix.Catalog.GetString("S_quare Tool"); w2.Add(this.SquareToolAction, null); this.EllipseToolAction = new Gtk.RadioAction("EllipseToolAction", Mono.Unix.Catalog.GetString("_Ellipse Tool"), null, "ellipse-tool", 0); - this.EllipseToolAction.Group = this.SquareToolAction.Group; + this.EllipseToolAction.Group = this.RectangleToolAction.Group; this.EllipseToolAction.ShortLabel = Mono.Unix.Catalog.GetString("_Ellipse Tool"); w2.Add(this.EllipseToolAction, null); this.CircleToolAction = new Gtk.RadioAction("CircleToolAction", Mono.Unix.Catalog.GetString("_Circle Tool"), null, "circle-tool", 0); @@ -215,9 +217,13 @@ namespace LunarEclipse.View { this.LimpiarAction.ShortLabel = Mono.Unix.Catalog.GetString("_Limpiar"); w2.Add(this.LimpiarAction, null); this.PolylineToolAction = new Gtk.RadioAction("PolylineToolAction", Mono.Unix.Catalog.GetString("Polyline Tool"), null, "polyline-tool", 0); - this.PolylineToolAction.Group = this.LineToolAction.Group; + this.PolylineToolAction.Group = this.EllipseToolAction.Group; this.PolylineToolAction.ShortLabel = Mono.Unix.Catalog.GetString("Polyline Tool"); w2.Add(this.PolylineToolAction, null); + this.PenToolAction = new Gtk.RadioAction("PenToolAction", Mono.Unix.Catalog.GetString("P_en Tool"), null, "pen-tool", 0); + this.PenToolAction.Group = this.EllipseToolAction.Group; + this.PenToolAction.ShortLabel = Mono.Unix.Catalog.GetString("P_en Tool"); + w2.Add(this.PenToolAction, null); w1.InsertActionGroup(w2, 0); this.AddAccelGroup(w1.AccelGroup); this.Name = "LunarEclipse.View.MainWindow"; @@ -228,7 +234,7 @@ namespace LunarEclipse.View { this.vbox1.Name = "vbox1"; this.vbox1.Spacing = 6; // Container child vbox1.Gtk.Box+BoxChild - w1.AddUiFromString(""); + w1.AddUiFromString(""); this.menubar1 = ((Gtk.MenuBar)(w1.GetWidget("/menubar1"))); this.menubar1.Name = "menubar1"; this.vbox1.Add(this.menubar1); @@ -258,7 +264,7 @@ namespace LunarEclipse.View { this.hbox2.Name = "hbox2"; this.hbox2.Spacing = 6; // Container child hbox2.Gtk.Box+BoxChild - w1.AddUiFromString(""); + w1.AddUiFromString(""); this.toolbar2 = ((Gtk.Toolbar)(w1.GetWidget("/toolbar2"))); this.toolbar2.Name = "toolbar2"; this.toolbar2.Orientation = ((Gtk.Orientation)(1)); @@ -354,7 +360,7 @@ namespace LunarEclipse.View { this.Child.ShowAll(); } this.DefaultWidth = 650; - this.DefaultHeight = 610; + this.DefaultHeight = 646; this.Show(); this.DeleteEvent += new Gtk.DeleteEventHandler(this.OnDeleteEvent); this.SelectionToolAction.Activated += new System.EventHandler(this.OnSelectionToolActionActivated); @@ -368,6 +374,7 @@ namespace LunarEclipse.View { this.LineToolAction.Activated += new System.EventHandler(this.OnLineToolActionActivated); this.LimpiarAction.Activated += new System.EventHandler(this.OnLimpiarActionActivated); this.PolylineToolAction.Activated += new System.EventHandler(this.OnPolylineToolActionActivated); + this.PenToolAction.Activated += new System.EventHandler(this.OnPenToolActionActivated); this.notebook.SwitchPage += new Gtk.SwitchPageHandler(this.OnNotebookSwitchPage); } } diff --git a/gtk-gui/generated.cs b/gtk-gui/generated.cs index fef20c4..e947d7f 100644 --- a/gtk-gui/generated.cs +++ b/gtk-gui/generated.cs @@ -19,26 +19,28 @@ namespace Stetic { if ((Stetic.Gui.initialized == false)) { Stetic.Gui.initialized = true; Gtk.IconFactory w1 = new Gtk.IconFactory(); - Gtk.IconSet w2 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/circle-tool.png"))); - w1.Add("circle-tool", w2); - Gtk.IconSet w3 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/ellipse-tool.png"))); - w1.Add("ellipse-tool", w3); - Gtk.IconSet w4 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/line-tool.png"))); - w1.Add("line-tool", w4); - Gtk.IconSet w5 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/path-tool.png"))); + Gtk.IconSet w2 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("selection-tool.png")); + w1.Add("selection-tool", w2); + Gtk.IconSet w3 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("circle-tool.png")); + w1.Add("circle-tool", w3); + Gtk.IconSet w4 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("ellipse-tool.png")); + w1.Add("ellipse-tool", w4); + Gtk.IconSet w5 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("path-tool.png")); w1.Add("path-tool", w5); - Gtk.IconSet w6 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/rectangle-tool.png"))); + Gtk.IconSet w6 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("rectangle-tool.png")); w1.Add("rectangle-tool", w6); - Gtk.IconSet w7 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/selection-tool.png"))); - w1.Add("selection-tool", w7); - Gtk.IconSet w8 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/square-tool.png"))); - w1.Add("square-tool", w8); - Gtk.IconSet w9 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/image-tool.png"))); + Gtk.IconSet w7 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("square-tool.png")); + w1.Add("square-tool", w7); + Gtk.IconSet w8 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("line-tool.png")); + w1.Add("line-tool", w8); + Gtk.IconSet w9 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("image-tool.png")); w1.Add("image-tool", w9); - Gtk.IconSet w10 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/polyline-tool.png"))); + Gtk.IconSet w10 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("polyline-tool.png")); w1.Add("polyline-tool", w10); - Gtk.IconSet w11 = new Gtk.IconSet(new Gdk.Pixbuf(System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "./Icons/text-tool.png"))); + Gtk.IconSet w11 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("text-tool.png")); w1.Add("text-tool", w11); + Gtk.IconSet w12 = new Gtk.IconSet(Gdk.Pixbuf.LoadFromResource("pen-tool.png")); + w1.Add("pen-tool", w12); w1.AddDefault(); } } diff --git a/gtk-gui/gui.stetic b/gtk-gui/gui.stetic index 372063b..796c5d1 100644 --- a/gtk-gui/gui.stetic +++ b/gtk-gui/gui.stetic @@ -9,58 +9,63 @@ + + + resource:selection-tool.png + + - file:./Icons/circle-tool.png + resource:circle-tool.png - file:./Icons/ellipse-tool.png - - - - - file:./Icons/line-tool.png + resource:ellipse-tool.png - file:./Icons/path-tool.png + resource:path-tool.png - file:./Icons/rectangle-tool.png - - - - - file:./Icons/selection-tool.png + resource:rectangle-tool.png - file:./Icons/square-tool.png + resource:square-tool.png + + + + + resource:line-tool.png - file:./Icons/image-tool.png + resource:image-tool.png - file:./Icons/polyline-tool.png + resource:polyline-tool.png - file:./Icons/text-tool.png + resource:text-tool.png + + + + + resource:pen-tool.png - + Action @@ -299,6 +304,17 @@ group1 + + Radio + P_en Tool + P_en Tool + pen-tool + False + False + 0 + group1 + + Lunar Eclipse @@ -340,6 +356,7 @@ + @@ -415,6 +432,7 @@ +