From f35844b0737d1817a6dbf7ce1cf64194967530ac Mon Sep 17 00:00:00 2001 From: Robert Klep Date: Fri, 15 Feb 2013 08:52:45 +0100 Subject: [PATCH] Added new icons --- ToggleProxy.py | 25 ++++++++++++++++++++----- resources/active.png | Bin 294 -> 0 bytes resources/icon-0-0-0.png | Bin 0 -> 308 bytes resources/icon-0-0-1.png | Bin 0 -> 315 bytes resources/icon-0-1-0.png | Bin 0 -> 312 bytes resources/icon-0-1-1.png | Bin 0 -> 316 bytes resources/icon-1-0-0.png | Bin 0 -> 314 bytes resources/icon-1-0-1.png | Bin 0 -> 318 bytes resources/icon-1-1-0.png | Bin 0 -> 316 bytes resources/icon-1-1-1.png | Bin 0 -> 320 bytes resources/inactive.png | Bin 272 -> 0 bytes resources/menuicon.psd | Bin 29998 -> 32842 bytes setup.py | 5 +---- 13 files changed, 21 insertions(+), 9 deletions(-) delete mode 100644 resources/active.png create mode 100644 resources/icon-0-0-0.png create mode 100644 resources/icon-0-0-1.png create mode 100644 resources/icon-0-1-0.png create mode 100644 resources/icon-0-1-1.png create mode 100644 resources/icon-1-0-0.png create mode 100644 resources/icon-1-0-1.png create mode 100644 resources/icon-1-1-0.png create mode 100644 resources/icon-1-1-1.png delete mode 100644 resources/inactive.png diff --git a/ToggleProxy.py b/ToggleProxy.py index 54c4804..5465fbe 100644 --- a/ToggleProxy.py +++ b/ToggleProxy.py @@ -8,17 +8,23 @@ import commands, re class ToggleProxy(NSObject): def applicationDidFinishLaunching_(self, notification): - # find image files - self.active_image = NSImage.imageNamed_("active") - self.inactive_image = NSImage.imageNamed_("inactive") + # load icon files + self.icons = { + '0-0-0' : NSImage.imageNamed_("icon-0-0-0"), + '1-0-0' : NSImage.imageNamed_("icon-1-0-0"), + '0-1-0' : NSImage.imageNamed_("icon-0-1-0"), + '0-0-1' : NSImage.imageNamed_("icon-0-0-1"), + '1-1-0' : NSImage.imageNamed_("icon-1-1-0"), + '1-0-1' : NSImage.imageNamed_("icon-1-0-1"), + '1-1-1' : NSImage.imageNamed_("icon-1-1-1") + } # make status bar item self.statusitem = NSStatusBar.systemStatusBar().statusItemWithLength_(NSVariableStatusItemLength) self.statusitem.retain() -# self.statusitem.setTarget_(self) self.statusitem.setHighlightMode_(False) self.statusitem.setEnabled_(True) - self.statusitem.setImage_(self.inactive_image) + self.statusitem.setImage_(self.icons['0-0-0']) # insert a menu into the status bar item self.menu = NSMenu.alloc().init() @@ -88,6 +94,15 @@ class ToggleProxy(NSObject): self.httpsMenuItem.setState_( status.get('HTTPSEnable', False) and NSOnState or NSOffState ) self.socksMenuItem.setState_( status.get('SOCKSEnable', False) and NSOnState or NSOffState ) + # update icon + self.statusitem.setImage_( + self.icons['%d-%d-%d' % ( + status.get('HTTPEnable', False) and 1 or 0, + status.get('HTTPSEnable', False) and 1 or 0, + status.get('SOCKSEnable', False) and 1 or 0 + )] + ) + def quitApp_(self, sender): NSApp.terminate_(self) diff --git a/resources/active.png b/resources/active.png deleted file mode 100644 index b31be71a26a94311405b86451842fa398deaab89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 294 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn1|+R>-G2co$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GCp=voLn>}1{rLaio>`S)$^6a+sZs?yo~0jWw=mCO{HQ%a zNTH7VY4Y{{!vg9G|9DIp+U%W=b{eV3bkr}BWH@ZU@KXivNtQ?U0lW(~+~7;iZ~ye) z`KfWCg#rTg?w_BPulNyT@|8y?gKKx= z4j%uMf2@y06zbZwyJl|8aQen)mC*Jwo#m4G#6vBNz5h8oDi>Zn-R`X`%xucgxTpEN pwaataMF$=jwlqpT<#cFZWH`c?+24_}bQ;i444$rjF6*2UngH{=Z~6cL diff --git a/resources/icon-0-0-0.png b/resources/icon-0-0-0.png new file mode 100644 index 0000000000000000000000000000000000000000..3563feabf63a33a2d1c1f747c72fe0d49b1aaddf GIT binary patch literal 308 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%xd!-zxB}^@sHjVqF5S3sZwzw z0s{lTfB(K>#R_|Sdp0(<{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB}^@s3;c~mrIu}-MDe%&!0c1PMs1J6=h>%Td`ur z)TvW>czCL+s`l*JV{dPtoSYmO82J7BcP1t#Z*OlOA0K9BW;;8(|Ns9RoZD;!G)tl+ z$S)Yk#ReG83hTWBs!8>9aSW-rHRqhWP=kU1>qRj~1Epm<|NHXJ2%on1hw0a_<~@)1 zd|5JoQe;lq^j$2ceoeZw@!2QmuD)gI84}$ZQnw~dXc7COrg`s#Qj$&Pl&qPdE~_-$ p`~-_@cXZbXFTKKFY0hoH5dBx^$IG*lSAZ5Wc)I$ztaD0e0s!cPhCToQ literal 0 HcmV?d00001 diff --git a/resources/icon-0-1-0.png b/resources/icon-0-1-0.png new file mode 100644 index 0000000000000000000000000000000000000000..e5fc4a13053e18e3f57abe95ad650740411046ec GIT binary patch literal 312 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB}^@s3;c~mrIu}-MDe%&!0c1PMs1J6=h>%Td`ur z)TvW>czCL+s`l*JV{dPtoSYmO82J7BcP1t#Z*OlOA0K9BW;;8(|Ns9RoZD;!G)tl+ z$S)Yk#ReG83hTWBs!8&6aSW-rwdb5WUxR@F%fVweBqo3U^M84RPaQ*T)YNAiUPxb0 z75_c$%;U|=uc!uG+ukx~ug#nw9uwu@!!a%!FMQ?nyx-`0Y{rypnZi4#nRspGEuXkb m!*BYDyYh02?4RU_CNS_g3jK(`;5ZLx8-u5-pUXO@geCyzU4{t& literal 0 HcmV?d00001 diff --git a/resources/icon-0-1-1.png b/resources/icon-0-1-1.png new file mode 100644 index 0000000000000000000000000000000000000000..d4637cf3efc4c4b8d52b6b4aeb5cb0bacced70ad GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB}^@s3;c~mrIu}-MDe%&!0c1PMs1J6`eYDYI1Ti z8ynl6J$ra~cvh@fQB_rCZ*LzM82J7BcV=d0CMG5yA0InAJ8y6A|NsA=SafcCGa=yQJr%>nwJ}>AJg1ExVXxa#E4HevxJ2gk$=7N~Vr; o{3h{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB}^@s3;c~mrIu}-MDe%&!0c1PMs1J6=h>%Td`ur z)TvW>czCL+s`l*JV{dPtoSYmO82J7BcP1t#Z*OlOA0K9BW;;8(|Ns9RoZD;!G)tl+ z$S)Yk#ReG83hTWBs!8#5aSW-rwdb5WUxR@F%fVwep3Hgn-<~yRLj(JT_KU0hy7wt2 z_w0X@c7M{-CpUv{Nv(+1-?!<(8jbvwYP)7GOC)(Fwu&y)N}9?&=+2*i$C-<3-D)4xoJup00i_>zopr0A<69E&u=k literal 0 HcmV?d00001 diff --git a/resources/icon-1-0-1.png b/resources/icon-1-0-1.png new file mode 100644 index 0000000000000000000000000000000000000000..4240a062f02a4d9f27524e1432a879ae46842362 GIT binary patch literal 318 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB}^@s3;c~mrIu}-MDe%&!0c1PMs1J6`eYDYI1Ti z8ynl6J$ra~cvh@fQB_rCZ*LzM82J7BcV=d0CMG5yA0InAJ8y6A|NsA=Safd<_OXtQQqk-u(XdzCKuiktM{SHFfVPxAzka zkL8zb^Y;w8^h7U}HDsxHeC&qsE6Y=q-yXVRl;WsUQtNW1JYnyVCw{X}JU!w#EBB3( sspA~IiH~=E6{wy3d42t-JkbP(8B9XfovQ_NfOax?y85}Sb4q9e0IlbT*Z=?k literal 0 HcmV?d00001 diff --git a/resources/icon-1-1-0.png b/resources/icon-1-1-0.png new file mode 100644 index 0000000000000000000000000000000000000000..d6fc99b9355974c5082d8057aa21c4e8cd208312 GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB}^@s3;c~mrIu}-MDe%&!0c1PMs1J6`eYDYI1Ti z8ynl6J$ra~cvh@fQB_rCZ*LzM82J7BcV=d0CMG5yA0InAJ8y6A|NsA=Saf{KV^$!rhG( qT~}BOyOiAjd=>huSiYNqnZd(N$hzS1=S@Hx89ZJ6T-G@yGywpzUWXX~ literal 0 HcmV?d00001 diff --git a/resources/icon-1-1-1.png b/resources/icon-1-1-1.png new file mode 100644 index 0000000000000000000000000000000000000000..4636536ec8fe1187fb43cad4e7c846693f56bb86 GIT binary patch literal 320 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%c?9@`xB_Vx7ni80s7seF{rU6f#*G`NPMxZ%s$yefOHNMy z{{6eCsAynd;GR8u?CtG&czC8xow{Ph3LhUIW@ct4CMG*OJ8y6A|NsAI9)5ZpXqH4t zkY6y6iw!WG71nzNRFmcD;uunKYsz^~z6J#W){9ODE9d?Do4=|_s&whrS9?mV8ty43 z_sqZZX5OSJQ%=Ud63fWe-)EPs|Jwhh+N{=viEo-LR&;f&SaIN|wc*aIYMU$zCzM3r uarJ7Bh*diM^_ue+-*feUCzr2gU}jME5G-G2co$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1Gn><|{Ln>}1{rLaio>`S)$^6a+sZs?yo~0jWw=mCO{HQ%a zNTH7VY4Y{{!vg9G|9DIp+U%W=b{eV3bkr}BWH@ZU@KXivNtQ?U0lW(~+~7;iZ~ye) z`KfWCg#rTg?w_BPulNyT@|8y?gKKx= z4j%uMf2@y06zbZwyJl|8aQen)m2m9Y-2EzQVLPhS*t8k~ojpz;b$QLsVZiXiBep=- SlsgpYdInEdKbLh*2~7Y%?_?nW diff --git a/resources/menuicon.psd b/resources/menuicon.psd index e9da114de4898b7b761f9f727a3bc0588be1d79b..2a6170d49d40a1e662c67a93385c8bd23e3370f5 100644 GIT binary patch delta 6436 zcmeHLeN0=|6+iFUfD=q{lR`*KfJsn7gHs!@Ax;|z&=dp|5@><2WCLTs#Q1r}EK8!q zk+x{f(nU$1qE1>=61Cl;O=6ndk1frXWKlIO-P*0oCMvOMUs6@lZEQ43NNnGobL|H< z*kIB$f9;z0?!D)od+z!8y>kz5Y*M&-SUi!J*=w$-u5VJSfm&|1uoF~|6g+)$V}ADU ze>K|hJIz0uYdaJ=`%rl!e8p}*(v#~g@#9%CW+<<>( zy|K(+ z^06&@y#VPhH?p+2C8@8~<{5D{_Y7LmJT0_<8zlVoK_0Y%4LmRcF0vd}x@Ng?CJ?FG z;c?oWBSSdU_Kesa9=nr^#Q6%&UDMRr0Ni_XuyX z12$ZXI@z85J(A=g_6O*}4x80eEqOfBkVA6z6B(OUdD3X>^F+|o6#5Q(|3Kt}ROLaN zrs5U9G55xi?Om?RXEj$8-&ElI zbsXUd$fma`1eTEYIE@6$rm{t@L>2V!xsYI9q}FCpPyYNdO!AAt{fVB`Rt1m zAKjR^Fmdvk+{SY+o&WA>>44GmCWEI&FW$CXe1(Der$0Y>1|vt}p9dMMaarKOGCoQ^VAojk~83;QED-iSd6AT<#_PD z+c~4n2FR+y>mlYxA5fz}kUv&IlAJw|Rm_4o`7JrkDY=IjWZ_h^9&ZofMQv_@M*h~& z#^j`Kw_DmP9~yXGRMp8E`!4T~Hva&ou1FBsi_lQ~2Tqyai*WS4w_*D2-UYn~yPj|3 zPv-X`q(5;IUe5X1f*#j6a8cdi5BcKAKC}^0Xv4@pq}&V4z?F>bMQ#XD$e_p`&mqK; zAYZOuEq}?L{C}gBh~LLZd+$f2=~ZxyIPD01I(d_z8|xUVWcFhG<$*zGrizlbNPN~I z2c5mxR9d-l+uHO8B)7ePTgMJtUyFnlh@8{^u(!^=-`OjT^i&aFxIO3gSc#_0sc+op zt`DELNjOb&bnmmdv819pW;lGxuZTK`!8zif@`l%)HfMJal{=L1R(=&r9m(C)J-nw` zh4q+xVjxr9+&9b>dW;kbZ^T!UGT}L{g_Y6z*CwdHhDr%4PQt1RB$A2>QW+J{mA%$aYOl!%%^2Fd1yRSXH@72FO@+z+e z`@ZI;T1{6)PorBJPAQ;-L^Y@x!#))+x)VK>*MX^X>6^+-wN^f{$558k+FaAn8Y(!W z0No1BPy-EEl=JN!`|Jd0fZm>@ro%tbj*0r^@C@=e$i8(M4%4VXUgI5mpUq!YZzdC=KWz z3^jzY%IR}iG?U|0yoD_Dae5{mPMa3Xq9|y#Mc_0OiLr5-ScC{`QJit3PKR_Z1 zaUjesegrC5TRP7X))tqgU~D!I$JLAeVU4mNuC4U1q_S&bSer(y<;Z%esP}T=9q@zN zG|47Seh7e2GaY2YbWH$)Ahgf;nK08H1P0o{0K4=$^Ic;8LHsxcg^Z19USqFm#uzKa zxt^U?0nR~nn(1kN1l6TE2uFP9rL}@=lnU<4Zt{7l#vA^Sgnp`xExJR8Ul-Hyz6yUj(D0uYXre;jH2f@F_wooLYi#CzM)L zGwp!MCp9v)1V9^|T2PWUI=OI4M0&w5(Ln~P0En1xa5L2{KJr7THz F{{RLl-zfk9 delta 3605 zcmcIn3v8R!6+ZuO$8j7t30b19qh&!9veBfqoyK_*^1^LOLe!?D4^hBLoYboQJNS_Y z0sb;nl@=(A?f^|%g?Me*)B&lfppA-(B0zwkv=vnX3&pB82``hK0r=;H(Wc7SeUfWhpkH&zq@7Ozx)T3^Pjz0 z@rNU42JaH{OKJL+ABOw(vNN>jzkilPFG$!uC-wyZFf6`M_!rDc^S zb1+-lDCL-o&G@yfHn&Bsi@7 zK%1Db)sHXbEo8|3V@U^DCB^;)9*M1~c_?4=9pR7# zz`5uFbV+QyrX*;*)hzv17sG@Hljv(CNdhr07GoVqDD`Y>ZB@EeAR{c)kgw{g-|qD( zE|1cKUD5)FV(;kicwE%aPy+6HN4Ll8NYc+MYTVsJZ^)?Rz3(?1y3 zT7>QlZu>wIT7ZxR8`Qg$mbhBFpj|?!tR<4y8K|E^GNapTcRSkrj$StE&1bcK?HZ!$ z@Y?;J1g$(Y%j|L}9;9*^mNz0CGhb)-JGwl9j@lYpK|ET&)9pyOES=+$bmnoX?+W1J zPLGnXE=#pu*gLx zb=B#-YY)9J`VZFEu=Dij$hD`g|F-|Y$>M zGkaGL?Rf6tciy+$RkPtuI@?dMLt_uU zJLZg}PxNzmBs$m=X*?6LefPHqt(KFgbazfyEqZe8b5H)Te~bHzJwq<_;J42|GgGtk zT;I~ayw>DXUw!kSdJdiM&r|<-ys4E{v|lG}VjJ6Umhzds{nwcV&;V^v3d_OF{@VT& z-VY1%0PjC@C4DUgiJLBX&xQ-erF1meFW^Cdq<7mDXVW^{Ivj)vuTvT+NS|ZbELs9} zwzfn>NgZt7CMAB%Qanl1iV$q1u$La||2n4B=!&I*=Cl~M`4h1bMyj~gZN8WlY0y(= z^Sa~7BgQtL&6`*%+57AyBg*SMF1l#MMMS1zdoKzni{0H`C-!7)m$IrE2eI^mjP00< zjXZ(~J%mz%>k z55snNc8)|F6^(B07!$_HGPV#Qv|zG~kyF0P6(p0TEH*+2Z7507;kW_{ojBc`dT@dQ zcIX5@q&cAv9PHDriVjxeoWx%3txiAj%8r({%s;cWfqdp%mARJgX*xKn+bl>EK@fL0 z7(@^ZA_xW^#d$*_6e0K(4y8BnMXS#8LE%Z)#e&1mc0K%?I6X=RU7VU=Ca4cOyAY@J zOlL3OcXtZYfw!eovzVfuV0z7eVJZral4epQ%`B#ud|WM4eG1bXPQ0>fbNM%?L>Y7s zczbb$oFlo9J%9Sp^2ca3eAtqqWnJTi7al8n04MPN^`g2h(ovV*P6r>Fo!d$wr zAqpIf&M+T;oxeWL!x-2sDCB%J<0bx5#wh27I4Qe`4cb3_!RGsf{bH)?`Hdk z8d%HyCslcxPjd{R4DvKgQ>D$jEGXF+k2IRu=!Wp<2FLEmPc#*61qT=IKP8DxRs&cCO ztl4Ew$m~K#M7mt+n%(#>0c%VX5w(wRyvF$?mgb}ZzUSY=46(hU G48c$E@Vu`8 diff --git a/setup.py b/setup.py index 1cf7b35..df62e33 100644 --- a/setup.py +++ b/setup.py @@ -4,10 +4,7 @@ import py2app, sys, os, commands setup( app = [ 'ToggleProxy.py' ], - data_files = [ - 'resources/active.png', - 'resources/inactive.png' - ], + data_files = glob('resources/icon-*.png'), options = dict(py2app = dict( plist = dict( LSBackgroundOnly = True