From 8ecb322ecbee4ff6d88dc4301dcfa1460971686c Mon Sep 17 00:00:00 2001 From: Roman Rolinsky Date: Wed, 9 May 2007 03:24:30 +0000 Subject: [PATCH] final touch for icons - transparency handled by ArtProvider git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/wx/tools/XRCed/images.py | 704 +++++++----------- wxPython/wx/tools/XRCed/src-images/Copy.png | Bin 725 -> 733 bytes wxPython/wx/tools/XRCed/src-images/Locate.png | Bin 1017 -> 925 bytes .../wx/tools/XRCed/src-images/MoveDown.png | Bin 1189 -> 1142 bytes .../wx/tools/XRCed/src-images/MoveLeft.png | Bin 1094 -> 1020 bytes .../wx/tools/XRCed/src-images/MoveRight.png | Bin 975 -> 966 bytes wxPython/wx/tools/XRCed/src-images/MoveUp.png | Bin 1230 -> 1159 bytes wxPython/wx/tools/XRCed/src-images/Paste.png | Bin 773 -> 800 bytes wxPython/wx/tools/XRCed/src-images/Test.png | Bin 1246 -> 1244 bytes wxPython/wx/tools/XRCed/xrced.py | 101 ++- 10 files changed, 359 insertions(+), 446 deletions(-) diff --git a/wxPython/wx/tools/XRCed/images.py b/wxPython/wx/tools/XRCed/images.py index be5e3f9abe..f86f7017ee 100644 --- a/wxPython/wx/tools/XRCed/images.py +++ b/wxPython/wx/tools/XRCed/images.py @@ -75,31 +75,31 @@ def getCopyData(): return \ '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x02hIDAT8\x8d\x95\x95\xcfO\x13A\x14\xc7\xbfof\xb7\xbf\x0e\xed\xad\x7fA\xdbm\ -\xfd?\x8c!\x9e<\x99x\xf4\xcc\x01\xa2` \x9eM\x00\x0b*\x89\x12C\xe2\xd9\x8bWO&\ -\x86@\x1b"AH\x80\xd6z\xc6\x03p\xb0DL\xb7\xd3\xce\xf30\xec\xb6S\xb7K\x99K\x9b\ -\xbe\xb7\x9f\xf9\xbc7o\xa7T}\xb5\xf2\x90\xb5.\xe3\x96\x8b\x84h>\x99\x99\xfb8\ -.\xee\xa8n\xd7{6\xb7x[.^\xbfY\xf5\xe2\xe2\x8e\x10\x04\x00h\xb7\x7fO\x0c\xcdf\ -s \xa2\xd8\x1c\'.\xc8\xcc\xd4\xedv\xe5\xc8oH$\x92`f\x9e\x18\xdcj\xfd\xb4\xa0\ -\xfb\x07{\x8f\xae\xae\xfe\x14\x00\x0cA\x08Df\x83\x97\xabKQ=$"\xfal\x81K\xa5b\ -\xf8\xdd\xf7}\xf9u\xebKa\xfe\xe9\x021s|\xdd6\x15\xd5\xb5\xe5\xa9\xb1\xc6\xaa\ -\xa7pmJ\x97\x97\xedI\xb9\xc8fs\x00\xc0c\x8d;\x9d\x0evj[\x13\x03\x01\xd3\x9e`\ -E\x18\x9b\xa0R]+\xb1\xd1h\xdc\x08-\x97+\xd1\xe0b\xb1\x00\xc3bc\\\xdf\x0ec\ -\xe5r\xf4;\x14l\xce\xcc\xd1\xc6\xcc\x8cV\xab\x15\x82\x95RVb\xb3\xd9\x8c\x84\ -\x0eR\x18\x95\xca\x9d\x018\x0803\n\x85!c\xdfG}w\'L\xacT\x06e\xda\x96&\x9f\ -\x88\xe2\x8cM\x8f\x99\x19J\xf5\xfe3\x1e\x06\x9a\xcf`\xd32\x98\x81d2i\x83\xb5\ -\xd6\xa1\xb1\x01\x03\xbe\xdf\xc1\xee\xb7Z\x98\xe8y^h7jL$\xe08\x12J)h\xad\x07\ -\xe0~\xbfo\x95\xc5l\x8f\x0e3\xe3\xe4$\x98\n;/\x93\xc9 \x97\xcb\x01\x00\xf2\ -\xf9|\xc8\x1a\x02\x07\xb0\xc0\x82,\xb0\xe7\x95, \xc0\x10BBJ\t\xad5\x84\x10\ -\x08\xaa\xbf><3\x01\xe9t:l\t\x11\xc1u\xdd\x91\xc3"\x10\r\xa6\xc0u]\x10\tc\ -\xe78\xe1\xe1\xd5\xea\xdb\xd0Z\xc3q\x13\x89\x1fo7\xd6#\x87\x94\x88\xc2\xcd\ -\x86m\x85\x10 \x12\xd0Z\xe3\xfd\xe6\xbb\xa8G\x0f\x9c\xb8\x7f\x81\xa5\x95\x17\ -\x0b\xa3\xfd\x0f\xcagf\xd3\x060\xa6\xee\xde\x07\x00\x9c_\x9ca\xff\xfb\x1e\ -\x98\xb0\x11{\x1f\x8f\xf6\xdfu\x1dHi\x1e1\xd6\x04)\xcdu}\xfa\xeb\x14G\xc7\ -\x87He2\xeb3\xd3\xb3\x9b7\x82\x95RH\xa5R\xd6++\xe5\xc0\xba\xdf\xd78\xbf8\xc3\ -\xd1\xf1! \xe8\xf1\xcc\xf4\xec\x07\x00\x88\xbdg\xabk\xcb\x9fz\xbd\xde\x03\ -\xc0\x1e\xbf`1\x18\x0ch\x01\xaai\xf0\xbd\xc5\xf9\xe7\x7f\x83\xd8?\xc6\x94\ -\x9d\nm\x8c\xaf\xa9\x00\x00\x00\x00IEND\xaeB`\x82' +\x02jIDAT8\x8d\x95\x95\xcfO\x13A\x14\xc7\xbfof\xb7-=\xb4\xb7^\xb9\xb4t\xeb_\ +\xa1\x07\x13\x8dW\xff\x01\xefDK\x14\x8c\xc4\xb3\t`A1\xfe\x88\x1a\xfd3<\x99\ +\x10\x02%DR%\x01\xda\xd43\x1e\x80\x83\x10H\xba\x9dv\x9e\x87aw;u\xbb\x94\xb9\ +\xb4\xe9{\xfb\x99\xcf{\xf3vJ\xb5WK\x0fX\xeb\n\xae\xb9H\x88\xe6\xe3\xea\xec\ +\xd7QqGu\xbb\xde\xd3\xd9\xf9\xebr\xf1zu\xd9K\x8a;B\x10\x00\xe0\xf4\xf4\xef\ +\xd8\xd0\\.\x0f"J\xccq\x92\x82\xccL\xddnW\x0e\xfd\x86T*\rf\xe6\xb1\xc1\xed\ +\xf6o\x0b\xda\xf8\xb5s\xff\xe2\xe2|\x12\xc0\x00\x84@d6x\xb9\xbc\xf0(\x86ID\ +\xb4f\x81\xa7\xa6J\xe1w\xdf\xf7\xe5\xda\xfa\xf7\xc9\xb9\'\xcf\x88\x99\x93\ +\xeb\xb6\xa9\xa8\xad,\xde\x1ci\xacz\n\x97\xa6tvv:.\x17\xb9\\\x1e\x00x\xa4q\ +\xa7\xd3\xc1f}}l `\xda\x13\xac\x18c\x13T\xaak%6\x9b\xcd+\xa1\x9e\x17\xbd\x0e\ +\x16\xb8T*\xc2\xb0\xd8\x18om\x841\xcf\x8b\x1f\xdb`sf\x8e7ff\xb4\xdb\xed\x10\ +\xac\x94\xb2\x12[\xadV,4JaT*7"p\x10`f\x14\x8b\x03\xc6\xbe\x8f\xad\xed\xcd0\ +\xb1R\x89\xca\xb4-M>\x11%\x19\x9b\x1e33\x94\xea\xfdg<\x084\x9f\xc1\xa6\x1e\ +\x98\x81t:m\x83\xb5\xd6\xa1\xb1\x01\x03\xbe\xdf\xc1\xf6\x8fz\x98X.\x97C\xbba\ +c"\x01\xc7\x91PJAk\x1d\x81\xfb\xfd\xbeU\x16\xb3=:\xcc\x8c\x83\x83`*\xec\xbcl\ +6\x8b|>\x0f\x00(\x14\n!k\x00\x1c\xc0\x02\x0b\xb2\xc0\xe5\xf2\x94\x05\x04\x18\ +BHH)\xa1\xb5\x86\x10\x02A\xf5\x97\x87g&`bb"l\t\x11\xc1u\xdd\xa1\xc3"\x10ES\ +\xe0\xba.\x88\x84\xb1s\x9c\xf0\xf0\xea[\x1b\xd0Z\xc3qS\xa9\xd6\xbb\x0fob/z"\ +\n7\x1b\xb4\x15B\x80H@k\x8d\x8f\x9f\xdf\xc7=\xdat\x92\xfe\x05\x16\x96^<\x1c\ +\xee\x7fP>3\x9b6\x80q\xf7\xf6=\x00\xc0\xf1\xc9\x11\x1a?w\xc0\x84O\x89\xf7\ +\xf1p\xff]\xd7\x81\x94\xe6\x11cM\x90\xd2\\\xd7\x87\x7f\x0e\xb1\xb7\xbf\x8bL6\ +\xfb\xa5:=\xb3z%X)\x85L&c\xbd\xb2RF\xd6\xfd\xbe\xc6\xf1\xc9\x11\xf6\xf6w\x01\ +A\xd3\xd5\xe9\x99\xb7\x00\x90x\xcf\xd6V\x16\xbf\xf5z\xbd;\x80=~\xc1b0\x18\ +\xd0\x02\xd4\xd0\xe0[\xf3s\xcf\xcf\x83\xd8?*\xc0\x9c\xe7m\xfeA\x16\x00\x00\ +\x00\x00IEND\xaeB`\x82' def getCopyBitmap(): return BitmapFromImage(getCopyImage()) @@ -215,45 +215,40 @@ def getIconIcon(): #---------------------------------------------------------------------- def getLocateData(): return \ -'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ +"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x03\x8cIDAT8\x8d}\x95\xc1o\x1bE\x14\x87\xbf\x8dc\'\xee\x12\xb4\x93\xb2Q\x12\ -E\x91\x87C\x8a*D\x16U\x88\n\x1f\xda\xaa\x07N\xfc\x01\x95"\xb5G\xc4)\x11\x07N\ -\xd0\xe4X\xa9R"\xc1\x9d\x18Y\xa2\xdc*\x10\xe2\x00\x12\xdb\x83\x0f\xe1\x00\ -\x86\xaa\x02q\xe88M\x80\x14\xc7x\x9dx\xc7\xeen\xeap\xf0\xd8\xd9$N\x9f4\x87\ -\x9d\xf7\xf4\xcd\xef\xbd}\xf3\xc6\xe2\x05&\xf3\xd2w\xe7\xdc+\x83|\xba\xa6\tk\ -\xe15UR\xfe \xbfu\x06p\r\xf0\x80y\xce\xe3\x90\x19\x10T\x03"\xca@\x03XT%UN\ -\xbaSg@o\xba\x97\xdc\xd7\xecY{TG\x1a\xb6\xf1i\x02M\x1c\x9a\x14H\xe3\xe1\x80{\ -\xd1\x9d\xb4\x0e\xac\\\x1c\xc6\x97\xc5\xac\xd8\x08\xb6\x82\x9d\x81\xe0\x04\ -\xd4\xa9\xeeV\xd1\x8f\xb4O\x83\x02P\x00\xde\x04r\xc0\x12m6\xd9\xe7\x81\xd6\ -\xfajf"Cf(3y\x12\x9e:\x0b\xca&>\xb0\xa2Jj=\xd8\n*bV\xdc2\xe0\x82\xd9\xf3\x85\ -+\xac\xf8 \x1e\x08\x1fN\x08\xf6\xdc\xb7]\xa7\xbas\x0c\xea\xcb\x05S\xef\x88y:\ -@\x9aU)e\xb7\xaeE\xb5,\xf3\x92\x90\xf0\xb6=ecc{\xe1\xd3\xd0\xe9+6j\xdf\xd5\ -\x19=J\xe5\x14\xb4\x0c\xdcg\x97\xcb\xb4\x99\x04\xee0\xc2=\xe0}\xf1\x86\xa8\ -\xa8o\xd5\xbd\x9e\xf28\x8c\xe1\x00O\xcc\x8a\x8d\xa1\xa4Z:\x00<8\tUE\xe5\xa3i\ -\xd0\x02j\x94UQ\xf9\xc0\x1a\xb0(\x17\xa4\xa7Jj\x19\x80qp\xe7\\\x0fpz\xe0\xae\ -uK\xe0\xf7\x0e\x03*\xaa\xa8\x02\xf3\xbd\x08\\3\x87\xa1\x8a\xaalj\xee\x00Pg\ -\x05}\x84J\xd6\x18\x13\xb8,\xf3\x12"\xe6\xa9\xb3*\xf3\xf2T\x9f\xf6\xfb\xfcx\ -\xcc1\x1b\x04\xce\x01\xd0\x01\x0e\xf1\xcc\xbes"\xce\x03\xae\x9c\x88y!\xb8\ -\x00\xac\x03\x90f\x95s\x14hQ\xc6\xa4\x9f\xb0E\xc09\x11\x03\xf0\xe3`\xb0\xe0&\ -u*\xaa\xa4\x96\xa5\x94\r^\xa6\xac\xbe\xee\xce\x82\xc45\xef\x97%\x19#\xaf\xcb\ -CF\x8fP\xfd\x9f\xa7+\x1a\xce\x9dRuK.\xc8^\xaa\xdd\xf4MYL\xd7\xac\xf7\xb3\xc9\ -\x02\xba;\x9c\xc0\x0c!\x99\x97\x1e\xf09Sx\xb4\x81:+\xaa\xa4\x96\rt\x11\xc8\ -\x99\x0b\xe2\x90\xa6L\x8a\x86\x81\xdeWE\x15\xc8\xeb\xf2\x10\x01\x04@\x8b%`=\ -\x05\x10l\x05;bV\xdcp\xa7\xdd\x9cF\xc30W\xc5\xb8x\x89\xdf\xf9\x89\x14\xfbh\ -\x1e\xa3\x99\xe7\x19\xe3h\xbe\xa4\xc5\xf7<\xe1!\x7f\xb2/.\x89\x10\x01\xf6\ -\xb0M\x86\x0cq+\xbe\xa3J\xea\x8f\xfe\xac\x103\xe27]\xd3yw\xca\x9d\xd0hH\xf3\ -\x0e\x16C\xfc\xc5W\xd4y\xc2\x08\xef\xf1\x9c)\x9a|\xc66>-\x86x\x15\xd5\x83\ -\xa2!\xdc\r?\xc4\xe2\xbb`+h\x1f\x81\xd3"\x0b\xec\xe8=}\xd1\x9dv\xcfk4dx\x8b\ -\t\x96H\xd1\xc2b\x06\x8b\x19\x0e\xf9\x82I6\x98\xe6\x03\xc6\x12\xd0\xbf\xc3Oi\ -\xf0\x8d\xfaE=\x86\xc4t\x13BL\x13\x11a\xf1\xab\x81\xbfb\xdb6F}\x9e,3d\x01\ -\x9b\x1b\x8c\x81=j\xe3\xd8\x0e\xf1^L\xf8O\xb8\xc6\x1e?\x10\x11\x04Awl&\xdb\ -\xed\x19\x10\xb3\x8f\xc2\xe2\xe3\xea\xc3*d\xf8\xc4\xbd\xe0\xbe\x8e\xcd)\xd35\ -M\xb5R\xbdM\xc4&M\xfe%\xa6\x05D=\x7f\x12\xbc\r4\x01\x97=, \xc5\x18w\xab\xe5j\ -7\xabQ>b\x889"\xee\xf2\x9cGt\xc8\xa2\xd9"&\xa4\xfb<\xed\x02\xff\x9d\x02+\xa5\ -\xdaR\xca\xa7t_\xb3\x11\xc0f\x9f\x8a\xe9\xd0,\x93f\xc4\xc4(\x1a\xfc\x0c\xb4\ -\xccj\x02m RJuz\xbc\xff\x01C\xb9\xaf\xac*\x91E\x90\x00\x00\x00\x00IEND\xaeB`\ -\x82' +\x03+IDAT8\x8d\x85\xd4\xcfoTe\x14\xc6\xf1\xcf\x94N\x0b\x9dD\xa6\xc0\x15HL\ +\xe4\xc5\x04c\xc0t\x8c&,f\x01\x04Cwn\x8dIM\xfd\x13\x80\x85+\x7f\x90\xb8\xd7n\ +]\x18\xc1L\x0c\x1b#ac\xc0M\x17\xce\xc2\x15c\xc4D$\xe1-Qca\x18\xa6E\xeem\xa9\ +\xd0\xba\x98;\xd3\x99\xb1\xe0Inr\xdf\xfb\x9e\xf7{\xcfy\xce{N\xc13,T\xc3|r(9\ +\xb6\xd5^\xd6\xca\\\xbf|\xbd\xf0\xb4\xb3[n\x84j\x98C\x05Sv+\x1b\xdb\xc2\xa9\ +\x855\r,\xc7z<\xfe\xbf\xe0\x1c:\x9b\xbc\x9e\x94\x8d\xd2\\lr\xdb<\x0e\xe4\xcf\ +\x05\x93fM\x90\xbc\x90\xc8\x162\xe9\x9d\xb4\x11\xeb\xf1\xb5\xa7\x82\xfb\xa1\ +\xcd{Mn{\x07\xbfc\x11_\xe0\x18\x8e\xa2\x88\x92IWJ\xfbK\xb4\xfc\x07>\xfa,h\ +\xac\xc7\x8b}\xfb\xbd\x00b=\xd6\xf3o\xd3\xa9\xf4Ji\x7fII\xa9\x12\xaa\xe1Z\ +\x17\xde\x03\xa3\x92\x1cM\xcay\xea=h\x98\xc9\xf5^3e\x1dE\x9f\x87\x10\x96q:\ +\xd6\xe2\xd5ax\x176\xd2\x17\xedT\xf3\xee\x96\xd0\x06\xcei[\xb0\x84\xd4\x05\ +\x9c\xc3\xe90\x13*\xb1\x1e\xafj\x9bN\xffJ\xa5\x0fR\xa1\x1a\xae\xf5\xc0\xddh\ +\xad\xb3\x05\xf4R\xac\xc5y\x99e+hi\xc4Z\x9c\xc7\xdc\x00\x1cv\x91\x1cJ*\xfd\ +\xe0\x8e\xdd6\xdb/\r\x16b-.\xe5\xeb\xd38\x91\xffL\xac\xc5\x86\xce-)\x83\xb6i\ +\xd9\xe6\xe1~\x8d\xe1\xddP\r'\xf1\xa25S\xda>\x0b\xd5\\\xcfzl\xf4\x15rS\xf7M\ +\x9f\x01\x1b\x06\xbf\xd9{[\xc7\x86n1\xcaC~\x15\x1c\x1b\xf2\x19\xb0\x91\xa1\ +\xf5l\xac\xc7B\xac\xc7\x82\xa2\x86\tg\xfa\xd3\xef\xb3\x8e,\x83>'\x9e\x1e\xf1\ +\xa4\x0b\xf8\nl\xb3\xec9\x8dx9\xce3\xd0\xe6=YB\x08=\x9fp2l\xd8\xbeE\xc4\xd9B\ +\xc6\x04\xa1\x1aNA\xac\xc5\xe3x/\xcc\x84n\xaa\x9d\xf4sY\xf2[s\xbe\x97\xcd\ +\x0ed\x9d\xe1D\xde\xd2\xa1\x1a*\xf8\xd2~\x15\xabh\x9b\xee^\xa10\x13\xce\xe3@\ +\xde eE\r\xdb,\xe7\xd0K\xb1\x16\x97\xc2\xc9\xb0a\x12KXq&\xd6\xe3\\oVtGd3m\ +\x92\xe1\x9e\xb7\xdc\xf1\x036\xb0\xddK\xbe\xc7\x11E\x1f\xd9\xe6;k\xfetS\xcbA\ +\x8fLR\x1a-\x91\xe9\x8d\xd2\xcd\xe2\xad;\xdb\xbc\xd1\xfc9)%L`\x8f\xcb\xf68\ +\x95\xd7aT\xe6o+h\xfb\xd1/n\xb9iu\x18\x9a\xdeK\xcf\x86j(\x0f\x82\x17\xfda\ +\xd5\xfb\xcd\x1b\xcd\xeb=\xf8^\x17\x1d\xd6\xf4\xbc7\xf2\xc8Y7\xee\xa0\x96\ +\xc3\xee\x0f@\xef\xa6\x1fx\xe8\xdbX\xef4\xd4\xa6\x14!\xec\xc5\xb8]\x0e\x19\ +\xf7i\xf2r\xf2*\xf4\xa4\xe9\xb7\xed\x1d\xe0\xc4\x8e\tY+\xeb@S_{\xe8a\x8c\xb1\ +9\x0c\xde\x97\xa7]\xb0\xdbA#\xcaF}\xd2\xfd\xc1\xb0\xf5\x80O\xfcj\xc5OR\x0f\ +\xf08\xc6x\x7f\x18<\xa6#\xc0N\x9dA\xbe\xa6\xec\x88\x11;\x15\xac\x1b\xf3\xb1\ +\x82W<\xf1\xa1\x7f\xdcR\xf0X\xea7\xab\x161\x86\x07\xc8b\x8ck\x03\xe0\x1c^\ +\xc8u/b\xdf\x18q\xd4#ok\xb9\xda\x11\xc4\x08\x1e\xa1\x8d\x8d\x18\xe3\ +F\x97\xf5/\xb7arI\xda\xd1{\x91\x00\x00\x00\x00IEND\xaeB`\x82" def getLocateBitmap(): return BitmapFromImage(getLocateImage()) @@ -304,51 +299,50 @@ def getLocateArmedIcon(): #---------------------------------------------------------------------- def getMoveDownData(): return \ -'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ +"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x048IDAT8\x8d\x8d\x94O\x88\x1be\x18\xc6\x9f\xf7\x9bI&\x99\xe6_\xbbm\xedB\'\ -\xc9\xd2\xc5Z\x90\xb2\xbd\xb5\x87-nK\x03)=\x14\x11\xf4\xd0"\xe2A\x11\xa9\xd5\ -\x93\x82V\x16E=Y\x95"\nV\x91^\xaaW\x0f\xb1\x91\x85\xd5\x8b\xae\xbd\xa8T[A\ -\xdd\x99\xf9\x96$u\xbb\xec\xceL23\xc9\xfc\xf9<4\x81mvZ|\xe1\x83\x8f\x97\xe7\ -\xfb\xcd\xf3>\xbc\x0c\xd5\xebu\xbd\xd1hT1VG\x8e\x1c\xf9|jj\xea\xd4\xf6\xed\ -\xdb\xa5v\xbb\xedr\xce\xbf\xb9~\xfd\xfa\x0b\xe3\xba\xfb\x95\x9c\xd4\x9c\x99\ -\x99\xf9\xe0\xe4\xc9\x93\x8f\x9f8q\xa2(\x84@\xbb\xdd\xde\xb1\xb0\xb0\xf0$c\ -\xcc\xba}\xfb\xf6\x87\xba\xaew\xfe\x0fx[\xbd^?3j\xf8\xbe\xbf\x07\xc0l>\x9f\ -\xcf\xad\xac\xac\xc0\xf7}\xc8\xb2\x8c\xc9\xc9\xc9B\xa1P\xd8\x7f\xe7\xce\x1d\ -\xa9\xa9i\x07\xb2D\x19\x02b\x01\xac\xcd\x9a\xe6J\x128\x05\xe0\xca\xa8\x91\ -\xc9d\x00\x00\x86aD\x9e\xe7!\x9dN\xa3\xd7\xeb\x81s\x8e\xc1`\x00"\xca\x01\x98\ -\x93\x81\xfd\x8c\xe8Y\x01\xfc\xf5c\xb9\xfcr\x08\xac\xcf\x9a\xe6/\x9b\xc1\x1b\ -\x8dF\xa34\x16\xc5\xa5T*u\xd6q\x9cB&\x93\x81\xe38\xe8t:\x8em\xdb\x7f\x07A\ -\xe0\xd48\xffx(}i\xb1\\>\x97#\xfa2\x0b8?\x94\xcbO\x1c5\xcd\x9b\x89\x19W*\x95\ -T\xb7\xdb\xfd\x82s\xbe\xcb\xb2\xacc\xd9lVr]\xd7\xb3m{\xc1u\xdd\xaf\r\xc3hm\ -\xd6\x0f\x84\xf8\xb4\x0btsD\x97\x8bD\xef.\x96\xcb\xef\x0c\x84\xb8\xb5\x05l\ -\x18FP\xadV\x7f\xb5m\xfbM\xdf\xf7\xbf\x92eY\x0e\xc3\xd0\x0f\x82\xe0\xcf(\x8a\ -\x96\xc7\xf55\xce\xfbMM\xbbj\x0bQ)1\xf6*\x017j\x9c\xff\x9c\xb8\x15B\x88\x18\ -\xc0\x801\xd6O\xa5Ra\x1c\xc7>\x80\x80\x88\xe2$}\x8ds\xb7\xa9io\xad\xc5\xf1\ -\xc3;\x19;\xb3\xa0i\xa9-\xe0j\xb5*\xa7\xd3\xe9G\xf6\xee\xdd\xfb\xda\xf4\xf4t\ -\xadX,\xca\xadV\xcb\xd5u\xfd\xda\xc6\xc6\xc6GSSS7\x96\x97\x97\xc3\x04x\xd8\ -\xd4\xb4\x10@\x85\x80\x99-`]\xd7\xc3C\x87\x0e=\x7f\xfc\xf8\xf1Ssss\x858\x8e\ -\xb1\xba\xbaZZ\\\\<\xbd\xb4\xb4\xb4\xe6y\xdeE\x00\xad\xf1w\x9b\x8b\x80\x9a\ -\x0c\xa0P\xaf\xd7\xcf\x8f\x9a\x83\xc1`\x97\x10\xe2h6\x9b\xdd6Z1\xc6\x18&&&\ -\xf2\xf9|~\xdf\xda\xdaZ\xa1R\xa9\xb4\r\xc3\x10\x0f\x82\x8f\x1c_\x1c5\xd2\xe9\ -\xf4\xc8y\xe4y\x1e\x14EA\xb7\xdb\x05\xe7\x1c\xfd~\xffA,\xd0\xf0\x88!\xd8n4\ -\x1a;6\x0b\x0e\x1e\x9e\x05c\xec\x12c\xac\xbc\xb9\'\xcb\xf2\xd3\xaa\ -\xaa\n\xc6\xd8C\xc3(6\x9a\x9a\xa675\xed\xd1\x848\x133fq\x1c\xbf\x9f\xc9d\x0c\ -"z[\x92\xa4=\xaa\xaa\x8a(\x8a\x14\xcf\xf3\xf6\xbdR*Y\xd7\xeenD\t\x80\x0b\xe0\ -\xf7$\xf0\x7f\xdb\xdd\xf9?E\xff&\x94\x00\x00\x00\x00IEND\xaeB`\x82' +\x04\x15IDAT8\x8d\x8d\x94Mh\\U\x18\x86\xdfs\xe6\xde\xc9\x9d\x9b\x99\xc9\x9f\ +\xa9\x06zf&\x18\xac\x82\x84t\xd9E\x82i\xc9\xc0$]\x14\x11\x14l\x17\xe2Bq\x11+\ +t\xa1`q!\xa8\xbb\xa8\x88(\xf8\x83\xd4Eu+\xed\xe8H \xba\x91\x9a\x8dJ\xb5\x15\ +\xb4\xb9wN\xc8LM\x82\xb9s\xe7\xfed\xee\xcf\xe7\xc2\x19\x1c\x92\x9b\xe2\x07\ +\x07\x0e/\xefyx\xcfw\xbe{Y\xa5R1\xaa\xd5j\t\x07\xea\xd4\xa9S\x9fLNN\x9e\x1d\ +\x19\x19I5\x1a\rWJ\xf9\xd5\xfa\xfa\xfa\x0b\x07}G\x95\x92$\xce\xcc\xcc\xbc\ +\xbd\xb8\xb8\xf8\xf8\xc2\xc2\xc2\x10\x11\xa1\xd1h\x8c\xae\xae\xae>\xc99\xb7\ +\xee\xde\xbd\xfb\x8ea\x18\xcd\xff\x03\x1e\xacT*\xe7{\x82\xef\xfb\x0f\x00\x98\ +\xcd\xe5r\xd9\xcd\xcdM\xf8\xbe\x0fEQ011\x91\xcf\xe7\xf3'vvvR5!\x1e\xc90\xa61\ + &`w\xb6^\xdfL\x02\xab\x00\xae\xf4\x04M\xd3\x00\x00\xa6iF\x9e\xe7!\x9dN\xc3q\ +\x1cH)\xd1\xe9t\xc0\x18\xcb\x02\x98W\x80\x13\x9c\xb1g\t\xf8\xe3\x87B\xe1\xa5\ +\x10\xf8{\xb6^\xff\xa9\x1f\xbcW\xadV\x87\x0f\xb4\xe2=UU/\xd8\xb6\x9d\xd74\r\ +\xb6m\xa3\xd9l\xda\xadV\xeb\xcf \x08\xec\xb2\x94\xefw\xad/\xae\x15\n\xcbY\ +\xc6>\xcb\x00\xf6\xf7\x85\xc2\x13s\xf5\xfa\xad\xc4\x1e\x17\x8bE\xb5\xddn\x7f\ +*\xa5\x1c\xb7,\xebt&\x93I\xb9\xae\xeb\xb5Z\xadU\xd7u\xbf4Ms\xab\xdf\xdf!\xfa\ +\xb0\r\xb4\xb3\x8c}<\xc4\xd8\x9bk\x85\xc2\x1b\x1d\xa2\xdb\x87\xc0\xa6i\x06\ +\xa5R\xe9\xe7V\xab\xf5\x9a\xef\xfb_(\x8a\xa2\x84a\xe8\x07A\xf0{\x14E\x1b\x07\ +\xfde)\xf7kB\\m\x11\x15\x879\x7f\x99\x017\xcbR\xfe\x988\x15D\x14\x03\xe8p\ +\xce\xf7UU\r\xe38\xf6\x01\x04\x8c\xb18\xc9_\x96\xd2\xad\t\xf1\xfan\x1c?t\x1f\ +\xe7\xe7W\x85P\x0f\x81K\xa5\x92\x92N\xa7\x1f>~\xfc\xf8+SSS\xe5\xa1\xa1!ekk\ +\xcb5\x0c\xe3\x9b\xbd\xbd\xbdw'''onll\x84\t\xf0\xb0&D\x08\xa0\xc8\x80\x99C`\ +\xc30\xc2\x93'O>\x7f\xe6\xcc\x99\xb3\xf3\xf3\xf3\xf98\x8e\xb1\xbd\xbd=\xbc\ +\xb6\xb6v\xee\xc6\x8d\x1b\xbb\x9e\xe7\xad\x00\xd8:x\xae\xbf\x18PV\x00\xe4+\ +\x95\xca\xc5\x9e\xd8\xe9t\xc6\x89h.\x93\xc9\x0c\xf6F\x8cs\x8e\xb1\xb1\xb1\\.\ +\x97{pww7_,\x16\x1b\xa6i\xd2\xbd\xe0\xbd\xc4+=!\x9dN\xf7\x92G\x9e\xe7a``\x00\ +\xedv\x1bRJ\xec\xef\xef\xdf\x8b\x05\xd6]\xd4\x05\xb7\xaa\xd5\xeah\xbfazzz\ +\x85s\xfe\x8cm\xdbC\x03\x03\x03p\x1c\x07\xcdf\xd3\xb2,\xebv\x18\x86\xd6Qi{)\ +\t\xc9s\xac8\x8e\xf3\x91\x94r\xcc\xb2\xac\xb2\xae\xeb\x8a\xe38\xaem\xdb_{\ +\x9ew5\x8e\xe3\xed\xa3\x12\xf3nb\x9e\x046M3,\x16\x8b\xb7l\xdb~\xd5u\xdd+\xa9\ +T\x8aEQ\xd4\x89\xa2\xe8N\x1c\xc7[\xa6i\x1e\x9a\x08\x00\xa8\t\xa12@\xe9^\xc5K\ +\x9c\xe3\xeeU\xeb\xdd\x95X5!Re)\xa3\xee~X\x01\xde\xcar\xfe\x94E\x84y)\xf5$\ +\xb0\xc6\x18\xd3\x88hO\xd7ur]w\xa9\xab_\xe3\x9c\x97\x88\xa8AD\x9d\xb2\x94QM\ +\x88\xdf\x00\xcc\xa5\x19\xbb\x9ce\xec\xb9\xd4\xbf\x7f\xbbu$\xb5\x02\x80OD>\ +\x80\x1e\xf4zW_\xd24\xcd\xf0}_\x10\xd1fM\x88\x16\x07\xda\xa3\x9c_\x8e\x81e\ +\x05\x80E\xf4\xddc\xf5\xfai\x00P\x82 \x18\x06\xb0\xd8=|\xbdo\x7f\xbe\x0f\x8a\ +\xf1\xf1\xf1\xc0\xf7\xfd\x8b\x1f\x1c;v\xae\xa4\xaa\x97r\x8ceU\xc6r\nc\xcbN\ +\x1c\xc3\x03\xbe\x9d\xab\xd7\xcb=?\xe7\x9c\x07\xba\xae_\xd3u\xfd\x1a\x00\xf4\ +\xed\xb5\xfek\xd8\xb6\xddp\x1c\xe7\xd8_Q\xb4\r\x80B\x80u\x88`\xc5\xf1/6\xd1\ +\x85\xd9>(\x00\xa0R\xa9\x18G\xbc\x0f\xf5\xa5\x07c\xeci]\xd7\x89s~?\x00\xd4\ +\x84\xd8\xab\ta\xd4\x84x4\xe9pR\x8f9\x80\x18\xff}DK\x00@D\x9f\xbb\xae\xcb.\ +\x8d\x8ej\x0b\x83\x83\xa9\xb2\x94\xc3\xdd\xc7\xfb5\t\xfc\x0f\x05`\x02\xf8(\ +\x82\x9al\x00\x00\x00\x00IEND\xaeB`\x82" def getMoveDownBitmap(): return BitmapFromImage(getMoveDownImage()) @@ -365,48 +359,45 @@ def getMoveDownIcon(): #---------------------------------------------------------------------- def getMoveLeftData(): return \ -"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ +'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x03\xe9IDAT8\x8d\x9d\x95Ol\xdbT\x1c\xc7\xbf\xcf\xcf\xf6l\xafi\x9d\x86\x86\ -\x16\xda\xc5\x06&\xa0\x82rBHH\\&uZ\xca\x1f\x15\x84\xc4\xa1p\xd8\x89\xcb\x0e\ -\x1cva\x9a\xb4\x0b\x7f\x0e \x18\xe2\xb4\t\t!\x10H\x08q\x01\x14A\xa9\x04'\x10\ -TB\x1d\xe3\xcfZH\xec\xb8RRB\xb2\xc5q_\x9c\xd8~\x8f\x03IIF\xd7V\xfbJ\x96\x9f\ -\xbe~\xfa\xbc\x9f\xbe\xbf\xdf\x93I>\x9fw\n\x85\x82\x85\x9e,\xcb\xa2\xb2,\xdb\ -\x13\x13\x13gl\xdb~,\x9dN\xd3J\xa5\xc2<\xcf\xfb,\x08\x82\xb7\xc30\\/\x95J\t\ -\xf6\x91|\xbdA\x08\xc9\x8c\x8c\x8c\x9cZXXxj~~~L\x08\x81J\xa52\xbe\xb2\xb2\ -\xf2\xcc\xea\xeaj\xb3\xd3\xe9\xbc\x05\xa0z\x10\xf0\xe1|>\xffl\xdf\x08\xc3p\ -\x12\xc0\xb1T*\x95\xda\xdc\xdcD\x18\x86\x90e\x19SSS\xa3\xa3\xa3\xa3w\xd7\xeb\ -u3\x97\xcbm\xb9\xae+\xf6\x03+\x00\xde\xef\x1b\x9a\xa6\x01\x00\x1c\xc7\xe1\ -\xedv\x1b\xaa\xaab{{\x1b\x9e\xe7\xa1\xdb\xed\x82\x10\xb2_\xb1;\xe0k\x85B\xc1\ -\xec\x1b\xb6mO\x8e\x8d\x8d\x9dU\x14\xe5\xb9 \x08F5MC\xab\xd5B\xb5Zm\xf9\xbe\ -\xffg\x1c\xc7\xfe~\xd5\xf6\xc1C\xe2\x9c\xd7\x83 x\xd7\xf3\xbc\x89f\xb3yL\xd7\ -u\xca\x18k\xfb\xbe\xbf\xc2\x18\xfb\x98s\xfe\xf7A+\x1e\x92\xeb\xba\x91eYk\xbe\ -\xef\x9f\xe3\x9c\x17TU=S\xab\xd5NGQt%I\x92\x92\xeb\xba\xdd\x9b\x02\x03\x80\ -\xe38q.\x97\xbb\x92\xcdf\x1b\xb2,\x9fb\x8c}\x0e@\x0cF`Y\x96\xa2(\xca=\xba\ -\xae\x1f\x91e\x99\x84a\xd8\xeav\xbb\xeb\x9c\xf3\xadb\xb1\xc8w\x05\xf7*\x17\ -\xb3\xb3\xb3\xbc\xb7\xe6\x83\xdf,\xcbR\x0c\xc3x\xc8\xb2\xacW,\xcb\xbaO\xd34R\ -.\x97\x9b\x9e\xe7}\xe8\xfb\xfeE\xdb\xb6\xcb7\x04\xef%B\xc8\xed\xa9T\xea\xc5\ -\xc5\xc5\xc5\x87\xe7\xe6\xe6h\x14E(\x97\xcb\xe6\xf2\xf2\xf2\xc9\xb5\xb5\xb5\ -\xad0\x0c\xdf9\x088\x9b\xcf\xe7_\x184\xc20\x9cVU\xf5\x01J)u\x1c\x07q\x1c\x03\ -\x002\x99LF\xd3\xb4\xa3\x94\xd2C\xfb\x81\xb7\x01\xcc\x00xs\xd0\xec\xcf\xfa\ -\xc6\xc6\x06L\xd3\x84$I\xf0}\x1f\xd5ju\xe7\x90=\xc1\x85B\xa1\r\xe0\x7f7\xc2\ -\xb6\xed#\xa6i\x9e\xd7u\xfd\x89\xf1\xf1qJ)\x85\xef\xfb\xa8T*\x7f1\xc6~M\x92$\ -\xbc\xa9\x8c9\xe7\x95 \x08^/\x95Jf\xbd^\xbfSQ\x94\xc3A\x10\\\x0b\x82\xe0\xa3\ -N\xa7\xf3\x05\xe7|O0\xe9=b\xe0-\x80\x7fg\xdd\xb6\xed\x1fN\\\xbd\xfa\xd2#\x8d\ -\xc6V\x0c\xccl\x112\xfe\xaa$}\xc59o\xb8\xae{\xc3q#\x84\x90\x0c\xa54-IR\x9ds~\ -4\x8e\xe3\xdf\x00\xb4\xfa\xf0\x0bq,(\xd0\xd2\ti)\x84\xbc\xa7'\xc9\x1bE\xc7\ -\xd9\xb9\x95\xd2.P\x85\x10r\x17\x80\x05UU/k\x9af\xaa\xaa\xfa=!dI\x92\xa4;\ -\x00\xa8\xbd}\x8f&\xc0\xa6B\x08\x08\x90%@q\x10\xb2\x1b8\xad\xeb\xfa\xba$I\ -\xdf2\xc6\x0e\xf9\xbe_d\x8c\x11\xc30BM\xd3\xfe\x00\x90\xfdrf\xe6q\x00\x1fH\ -\xc0,\x80Oz\x19\r5Y\x8e\xa2\xc8\x04p\xa2\x97c\x03\xc0m\x9dN\xe7\x9c$I\xad$\ -\xf9\xefGa\x18\xc6\xcfa\x18>}arr\x91\x00\xa7S\x84\x8cH\x84|\x1d\x0b\x81\x04\ -\xf8Q\x00\xbf\x0f\x81%I\x8a\x0c\xc3(\x00\x00c\xec~\xc30>\x05\x80(\x8a.\x0enl\ -\xb5Z\xe9$I\xa6k\x9aV\xb5\x15E\xc4\x00!B\x80\tq\t\xc0\xf3\xc7=\xef\xd2P\x14\ -\x94\xd2m\xc6\x18a\x8c\x11\x00\x97\x19c\xd9v\xbb\xfdZ\x92$C\x8d\x8d\xa2\xe8V\ -EQ\xce\x9f\xad\xd5\xbe\x11\xc0R[\x88&\x13\xc2\x05\xb0t\xdc\xf3~\xba>\xcf\xdd\ -2\xae\x0b!^\x16B\x9c4\x0cCPJ\xef5\x0cCp\xceG\xa7\xe3\xf8\x96'S\xa9\x06\x07\ -\xbe\x03\xf0 \x00\x06\xe0\x97]\x18\xf8\x07\x82\x8c\xe0o)B\x05\xba\x00\x00\ -\x00\x00IEND\xaeB`\x82" +\x03\x9bIDAT8\x8d\x9d\x94\xefk\x1cE\x18\xc7\xbf\xb3?\xce\xdd\xad\x97n.x&\xe8\ +\xf6v\x11QB\x89\xe7\x0b\x91\x14|S\x88\xb8\xa9H\xda\xbc\xe8\x1b\x85\xfaJ,\xbe\ +\xf0\x85\xbe\xf0\xbd\xda7\xa2\x15}S\x11E\x14\x05AA\xb49\x9a\x98\x7f@\x03!\ +\x05E\x1a\xcc\xed\xde\x06\xee\xd2\xf4\xd2\xbb\xbd\xc9\xdc\xde\xed\xee\xac/\ +\xba\x176\xcd5\t>0\xcc\xccwv?\xcfw\x9f\x9d\x19b\xdb\xb6S\xa9TL\xa4a\x9a\xa6\ +\xe88N<==\xfd\x95eY/\x8f\x8e\x8e\x8a\xf5z\x9dy\x9e\xf7+\xa5\xf4\xb3 \x08nU\ +\xab\xd5\x18G\x84t\xbf\xe08N\\.\x97\xaf\xce\xce\xce^\x98\x99\x999\x99$\t\xea\ +\xf5zayy\xf9\xe2\xca\xcaJ\xbb\xd7\xeb}\n\xa0q\x1c\xf0\t\xdb\xb6_\x1d\x08A\ +\x10\x8c\x038\x9b\xcf\xe7\xf3\x9b\x9b\x9b\x08\x82\x00\x92$abbbddd\xe4\xa9f\ +\xb3\xa9\x97J\xa5-\xd7u\x93\xa3\xc02\x80o\x07\x82\xa2(\x03\xe7\xbc\xdb\xed"\ +\x97\xcbaww\x17\x9e\xe7\xa1\xdf\xef\x83\x10r\x94\xd9=p\xabR\xa9\xe8Y\xb1\\.\ +\x7f.\xcb\xf2k\x94\xd2\x11EQ\xd0\xe9t\xd0h4:\xbe\xef\xff\x1bE\x91\x7f\x94\ +\xdb\x01x_\x94J%\x99R\xfa\xb5\xe7y\x8f\xb4\xdb\xed\xb3\xaa\xaa\x8a\x8c\xb1\ +\xae\xef\xfb\xcb\x8c\xb1\x1f9\xe7w\x8e\xe3X\xb8_p]7\x8c\xa2hmuu\xf5b\xab\xd5\ +z7\x8e\xe3;\xdb\xdb\xdboRJ?\x08\xc3p\xcdu\xdd\xfeq\xc0\x07\x1c\x03\x80\xe38Q\ +\xa9T"\xc5bqA\x92\xa4\xb7\x18c\xbf\x01H\xb2%0MS\x96e\xf9iUUOI\x92D\x82 \xe8\ +\xf4\xfb\xfd[\x9c\xf3\xad\x8d\x8d\r>\x14\x9c:O&\'\'y:\xe6\xd95\xd34eM\xd3\ +\x9e7M\xf3C\xd34O+\x8aBj\xb5Z\xdb\xf3\xbc\xef}\xdf\xff\xc2\xb2\xac\xda\x03\ +\xc1\x87\x05!\xe4\xb1|>\xff\xde\xdc\xdc\xdc\x99\xa9\xa9)1\x0cC\xd4j5}ii\xe9\ +\xf5\xb5\xb5\xb5\xad \x08\xbe<\x0e\xb8h\xdb\xf6\xdbY!\x08\x82\xc7s\xb9\xdc3\ +\xa2(\x8a\x8e\xe3 \x8a"\x00\xc0\xd8\xd8\xd8\x98\xa2(O\x8a\xa2\xf8\xd0Q\xe0]\ +\x00\x06\x80O\xb2\xe2`\xaf\xaf\xaf\xafC\xd7u\x08\x82\x00\xdf\xf7\xd1h4\xf6\ +\x92\x1c\n\xaeT*]\x00\x07N\x84eY\xa7t]\xbf\xaa\xaa\xea+\x85BA\x14E\x11\xbe\ +\xef\xa3^\xaf\xdff\x8c\xfd\x1d\xc7q\xf0\xbfj\xcc9\xafSJ?\xaaV\xabz\xb3\xd9|B\ +\x96\xe5\x13\x94\xd2\x16\xa5\xf4\x87^\xafw\x9ds~(\x98\xa4-\xc9\xf4\tpo\xaf[\ +\x96\xf5\xc7Kw\xef\xbe\xff\xc2\xce\xceV\x04\x18[\x84\x14\xae\x08\xc2"\xe7|\ +\xc7u\xdd\x07o\xb7,(\xd3\x0f\x12\xe0Z\x14%"\xd0Q\t\xe9\xc8\x84|\xa3\xc6\xf1\ +\xc7\x1b\x8e\xb3w*\x0f\x9c<\xdc\xbb\x94\x00\x00\x9a\xa6\xf5\x00\\H\xdb Q.]>\ +\x17\x03\x9b2! @\x91\x00\x1bY\xc80\xc7\xe1\xc0%c\xec\x1c\x80\x85t>\x9f\x82\ +\x8d\x1b\x86\xf1,\x80\xef\x04\xe0<\x80+i\xc6}?Y\n\xc3P\x070\x9b\xce\x17\xd2\ +\xf1.\x80K\x19(\x00\xfc\x0c`\xfe\xda\xf8\xf8\x1c\x01\xde\xc9\x13\xf2\xb0@\ +\xc8\xefQ\x92 \x06\xfeL\x80\x7f\xf6\x81\x05A\x085M\xbb\x0e\x00\x8c12\x18w\ +\xbb\xdd\xcbIr\xf0v\xdc\x8e\xe3mK\x96\x93\x08 $I\xc0\x92\xe4&\x807^\xf4\xbc\ +\x9b\xfb\x1e\xb4m\xdb\x19R\x0e\xa4\x9f=\x9b\x99\x0f\xea\xfc\xe8\r\xc38\xb3h\ +\x18\xadE\xc3p\x16\r\xe3\xf4\xb0\x97\x87\xd5X\x00\xc0\x01\x10M\xd3\x12\xc6\ +\xd8|\xaa\xff\x04\x80\x9c\xcf\xe7e\x0e\xdc\x16\x81\xe7\x00\xfc\x02\xe0\xafa\ +\xe0\xff\x00\xe4(\xae\xfd\x8d\xec\xeb\xa7\x00\x00\x00\x00IEND\xaeB`\x82' def getMoveLeftBitmap(): return BitmapFromImage(getMoveLeftImage()) @@ -425,42 +416,40 @@ def getMoveRightData(): return \ '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x03\x7fIDAT8\x8d\x9d\x93Oh#U\x1c\xc7\xbfof^&\xf3\xa6M\xb7\xc9JZ\xdc1F\xac)\ -\x94\x16\x02\xd5R\xff\x1d\x03\x83\xb7\xa5\xa0\x88\'\x15\x04\x0f.x\xac\x1e\ -\xf4 \xb8\xf5 \xb8Z\xedA\x97E<\xa8x\x94@s\xe8"\x08\xdb\xa5\x07\xa1h\xa5\x982\ -\xd3\x98\xa6m\xda\xba;\x93\xbc\xc9\xf4%\x19\x0f\xdbH\x98M\xda\xe0\xf76\xef\ -\xfb\xfb}~\xef\xcd\xfb>b\x9a\xa6\x95\xcf\xe7\x1fGHSSS\xa3\xf1x\xfcV:\x9d~V\ -\xd7uR.\x97\x9d\xc3\xc3\xc3\xeb\xcdf\xf3\xd6\xc6\xc6\x86\x17\xae\x0fK\xe9gD"\ -\x91O\x16\x16\x16r\xf3\xf3\xf3j\xb3\xd9\x84m\xdb\xf1B\xa1\xf0\xc1\xce\xceN\ -\x11@a\x10\xb0n\x9a\xe6ka\xc3\xf7\xfd9\xc6Xdww\x17\xbe\xefC\x96e\x8c\x8f\x8f\ -\xc79\xe7,\x95J\x11\xdb\xb6\x83\x8b\xc0\x14\xc0\xb7aCUU\x14\x8b\xc5`tt\x14\ -\xb2,\xa3V\xab\xa1\\.\xc3\xf3<\x00\x90\x00\xb4.\x02\xdf\xcb\xe7\xf3\x97\xc2F\ -6\x9b\xbd\xc9\x18{5\x91HD(\xa5p\x1c\x07\x95J\xe5\x1f\xd7u9\x80sw\xdb\x01\xf7\ -T\xbd^\xbffY\xd6\x95\xe3\xe3\xe3\xa7\x15E\xd1\x1a\x8d\xc6\x01\xe7|E\x08q\xdb\ -\xb6\xed\xf6\xff\x06ooo;\x93\x93\x93/\xef\xed\xed\xbd\xe8\xba.2\x99\xcc\x86\ -\xe7y\xd5\xad\xad-q\x11\x14\x00`\x9a\xa6u\xd1p\xc6X\xa5\x9f\'\xcb\xb2\xce\ -\x18\xd3b\xb1\x18\xa3\x942<\xb83H\x03\xcc&\x00\xec\x1e\xeb\x12\x00UUU\x1b\ -\xc0[\x00^\xa1\x94\xd6\x01\xc4\x00D\xfa\xfe\x8an0\xe7\xfc\xa7\x87\xa8\x92\ -\x14\x8dF\xa35\xce9\xe9Z\xfe\x861\x16\xb4Z\xad\xd4 `\x891\xb6\xc49\xbf{\xf6\ -\xad\x03\xb8\xdbn\xb7\x17\x84\x10\xd7\xc2\xc5\xba\xae\xbf\r\xc0\x1d\x04\xfc_\ -\xb4\x18c\xb7\x01\x80s\x9ed\x8c}\t`[\x08\xf1Yw\xb1\xeb\xba\x00\xceIE\x97\xfc\ -\xceq\xbb\x8f\xedy\x9e\xaei\xdaC/V\x92\xa4\xe5F\xa3\xf1\xf3 \xe0\x9e\n\x82\ -\xa0\xc19\xff\x811V\xf3}\x7f\x11\x80\xa3\xaa\xeaM\xce\xf9\x08\x80\xc6 \xa9\ -\xe8\xa76\x00w\xf8\xf4\xf4\x89\xef\x92I|?6\xf6X\xb2\xd9\x1c\x7f}d\xc4_5\x0cq\ -\xee\x8egff\x1eM\xa5Rlxx\x98T*\x95\xd6\xd1\xd1Quss\xd3\xe9\xf8\xab\x86A\x01\ -\xbc$\x01\xd7\x01DW\x92I\x00\xf84W*\xf9=\xc1\xa9T\x8a\x0c\r\re\xd2\xe9\xf4\ -\xf2\xc4\xc4DV\xd34\x89RZ#\x84\xac\xcc\xcd\xcd}\xbe\xbe\xbe~\xb2j\x182\x807\ -\x01\xdc\xd0\x08\x81\x0c\xc0\t\x82\x0f\x01\xd4W\rc\xb9\'\xd8\xb6\xed`vv\xf6\ -\xfd\\.\xf7\\6\x9b\x8d\x08!ppp\x10[[[{g\xfc\xce\x9d_\x96\x0c\xe3\xcf\x16\xf0\ -B\x1b\xb8A\x00\xc8\x00\x04\x00\x02\xac\x05@\x06\x80\xa6\x00\xb8d\x9a\xe6Ga\ -\xb8\x10\xe2\x19B\x08\xb5,\x0bB\x08\x10B\x10\x8b\xc5bW\xdam\x11%dR"\xe42\x80\ -\x8f\tp5\x00\x9er\xda\xed\x02\x80w\x01\xfc\x9e+\x95\x02\xe5l\xd8b\x18L)E\xb1\ -X\x0c\xe2\xf18\x14E\x81\xe38(\x97\xcbH\xb7Z\x89S\xe0k9\x08.\x9f\x05\xbc\xd1\ -\x02~\x04\xb0\x98+\x95\xfe\xea\xf4+\x00\xea\xf9|\xfe\x910xzz\xfa\x0bEQ\xdeH$\ -\x12*\xa5\x14\xae\xebb\x7f\x7f\xbf\xfa[\x10\xfc\xfdd\x10\\%x\x10\x0b\x00\xd5\ -\x008\xce\x95J\xd5\xee\xfe\xbe\xa9\xf0}\xff=\xcb\xb2\xc6NNN\x9eWU\x95\xd4\ -\xeb\xf5\xfb\x9c\xf3\xa5_%\xe9\x8f\xafJ\xa5F\xbf\xbe\x8e\xfe\x05\x80Ho\x06O\ -\xcc-q\x00\x00\x00\x00IEND\xaeB`\x82' +\x03eIDAT8\x8d\x9d\x92Mh#u\x18\xc6\x9f\xff|\xe4\xe3\x9f&m\x92\xad\xbbY7\xc6\ +\x885\x85\xd2B\xa0Z\xea\x17x\tL{[\x8a.\x8b7=+\x08zP\x0fzs\xeb\xc1\xc3\xeaj\ +\x0f\xab,\xe2\xc9\x9b\xe2\x06\x9aCE\x10\xb6\xd2\x83P\xb4RL\x99\xe9l\x9a\xb6i\ +\xab\xce$o2\x9dd\xfe\x1eL\xa4\x0c\xc96\xecs\x1a\xe6y\x9f\xdf;<\xf32M\xd3\xf4\ +b\xb1\xf88|\x9a\x9a\x9a\x8a\'\x12\x89;\xd9l\xf6\xd9H$\xc2*\x95\x8auxxx\xa3\ +\xddn\xdf\xd9\xd8\xd8h\xfa\xe7\xfdR\x06\x19\x81@\xe0\xe3\xa5\xa5\xa5\xc2\xfc\ +\xfc|\xb0\xddn\xc30\x8cD\xa9T\xfa`gg\xa7\x0c\xa04\x0c8\xa2i\xda\xab~\xc3q\ +\x9c9\xcey`ww\x17\x8e\xe3@\x96e\xa4R\xa9\x04\x11\xf1L&\xc3\x0c\xc3\x10\xe7\ +\x81U\x00_\xfb\x8d`0\x88r\xb9,\xe2\xf18dYF\xbd^G\xa5RA\xb3\xd9\x04\x00\t@\ +\xe7<\xf0\xdf\xc5bq\xcco\xe4\xf3\xf9\xaf8\xe7\xd7\x93\xc9d@UUX\x96\x85j\xb5\ +\xfa\x97m\xdb\x04\xe0\x81_\xdb\x03\xf7U\xa3\xd1xS\xd7\xf5+\xc7\xc7\xc7O+\x8a\ +\x12n\xb5Z\x07D\xb4\xe2\xba\xee\x8f\x86ax\x0f\r\xde\xde\xde\xb6&\'\'_\xd9\ +\xdb\xdb{\xd1\xb6m\xe4r\xb9\x8df\xb3Y\xdb\xda\xdar\xcf\x83\x02\x004M\xd3\xcf\ +[\xce9\xaf\x0e\x05;#i\x88\x19\x06\xe0\xd2\x80l\x84s~\x04`\x01\xc0\x02\xe7\ +\xbc\xd7}``\x15g\xc1D\xf4N\xf7\xb97\xdf\x96$)\x14\n\x85\xeaD\xb4\x08\xe0.\ +\x00\x10\xd1"\xe7\\\x10\x11\x1b\x06,q\xce\x97\x89\xe8\x17\x00Q\x00\x8f\x00\ +\xf8\xce\xf3\xbc%"b\xbe\xd9\xbbD\xb48>>\x1e\x1f\xa6\x8a\xffO\x8bs\xfe}8\x1c\ +\xbe\xdd]\xf6\xf9\xa0\x80m\xdbC\xfd\xbc\xbeb\x8c\xf1n\xa7\x0bg^/p\xce\x85$I\ +\x8f\rSE_\t!ZD\x14\xe7\x9c\xdf\'\xa2\x97\x01\x80s\xfe\x03\x11\x8d\x02h=4\x18\ +\x80\x07\xc0\x8e\x9e\x9e>\xf1\xe5\xe5\xcb\xd7\x14\xc6\xc6\xde\xae\xd5R/\x8d\ +\x8e:\xd7b1\xf7\x81\xe0\x99\x99\x99G3\x99\x0c\x8fF\xa3\xacZ\xadv\x8e\x8e\x8e\ +j\x9b\x9b\x9bV\xcf_M\xa7U\x00\x8b\x12p\x03@h\xe5\xe2E\x00\xf8\xa4`\x9aN_p&\ +\x93a###\xb9l6{kbb"\x1f\x0e\x87%UU\xeb\x8c\xb1\x95\xb9\xb9\xb9O\xd7\xd7\xd7O\ +V\xd3i\x19\xc0\xeb\x00n\x86\x19\x83\x0c\xc0\x12\xe2C\x00\x8d\xd5t\xfaV_\xb0a\ +\x18bvv\xf6\xfdB\xa1\xf0\\>\x9f\x0f\xb8\xae\x8b\x83\x83\x83\xd8\xda\xda\xda\ +\x1b\xa9{\xf7~ZN\xa7\xff\xe8\x00/x\xc0M\x06@\x06\xe0\x02`\xc0\x9a\x00r\x00\ +\xc2\n\x801M\xd3\xae\xfb\xe1\xae\xeb>\xc3\x18Su]\x87\xeb\xba`\x8c!\x16\x8b\ +\xc5\xaex\x9e\x1bblRb\xec\x02\x80\x8f\x18pU\x00OY\x9eW\x02\xf0\x16\x80\xdf\n\ +\xa6)\x94\xee\xb2o\xfc`UUQ.\x97E"\x91\x80\xa2(\xb0,\x0b\x95J\x05\xd9N\'y\n\ +\xdc\x96\x85\xb8\xd0=\xf0V\x07\xf8\x16\xc0\xbb\x05\xd3\xfc\xb3\x97W\x004\x8a\ +\xc5\xe2\xb8\x1f<==\xfd\x99\xa2(\xaf%\x93\xc9\xa0\xaa\xaa\xb0m\x1b\xfb\xfb\ +\xfb\xb5_\x85\xb8\xff\xa4\x10W\x19\xfe;\x0b\x005\x01\x1c\x17L\xb3v6?\xf0*\ +\x1c\xc7yO\xd7\xf5K\'\'\'\xcf\x07\x83A\xd6h4\xfe!\xa2\xe5\x9f%\xe9\xf7/L\xb3\ +5(\xd7\xd3\xbf\xc3\x11a\x17\xced\xee\xd3\x00\x00\x00\x00IEND\xaeB`\x82' def getMoveRightBitmap(): return BitmapFromImage(getMoveRightImage()) @@ -479,51 +468,49 @@ def getMoveUpData(): return \ '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x04dIDAT8\x8d\x85\x92]h\x1cU\x14\xc7\xffg\xee\xec\xec\xce\xdd\x9d\xd9\xb4I\ -\xadB\xc7$\xa6mZZ\xfcx\x12,\x8d\r\xa5[\x96\x16\xf4Y\x8a>\x88X\xb0\xd2\xfa T\ -\xf1\x03\xa9>\t\x15#>\x14\x14\x1fBAPDTX\xbbP\x88\xd6\x87\x14A\n\x8a\x15i\x92\ -M\xa7]\x93&1\xbb;;\x1f\xfb1\xf7\xf8\xd0,l\x93m\ -\x9f/\xe1\xde\x12D\xd4GD\xefI)\xd9\xb6\xed\xbdRJ&\xa2S\x9a\xa6\xf5\x01\x10\ -\x05\xc7\xa1\xa2\xe3\xec*:\xce\x9fE\xc7!\xf4(\xad\xc7\xac\xdf4\xcdU"\xfa<\ -\x08\x02\xaa\xd5j\xd7\x83 \xa0d2\xe9\xa5R\xa9U\x93h\xbb\x06<\x05\xe0W\x00\ -\x12\xc0\xbe\x9e\xe08\x8e\xd3\x00N\x008\x00`?\x80\xe7\x9b\xcd\xe6\xc7B\x88f\ -\xf7\xa2eYe!\xc4\x99\xb7\x07\x06\xc6\t\xb8h\x12e3D\x83&\xd1\xc5\xa2\xe3\x9c(\ -:\xce\xfe{\xc0J\xa9\x84\x94rRJ\xf9\x0b\x80\x01)\xe5\x87\x86a\x9c\x06p\x0f\ -\xd8\xf3\xbc\xd5(\x8an\xf5\x0b\xb1\x05\x00t\x80\r"d5\xedQ\x8bh\xd2$:\xdf\r\ -\xd7\x12\x89D%\x08\x02\n\x82\x80\x00L\x05A\xf0P\x14E\x9f\xc6q\x9c\xe9\x06\ -\xb7\xdb\xed}\x89D\xe2\xeb\x97\x17\x16\xbea\xe0U\x8f\xb9^Q\xea\x9f6\xf3D\x82\ -\x08\x16\xd1\x91\x14\xd1D\xd1qv\xdd\xcf\xe3\x15\xa5\xd4\xf9T*5OD\xef\x0b!\ -\x1e\x94Rr\x1c\xc7\xc90\x0cG\x00,\x1fu\xdd\xef\x01\xbc\xa0\x80\xca\xb2R\xe7\ -\xea\xcc\x13m\x00Y\xa2\xa7\r\xa2\xc9\xa2\xe3<\xd0\x0b\xdc\x020\x1b\x86\xe1\ -\x1e\x00\xd3J\xa9F\x18\x86\xcf0\xf3ef\x9e\xeb\xb2\xe8;\x00\xc7s\xae\xbb\xdcd\ -~\xb7\xa6\xd4\x85\x18\xd0\x08x\x12\x80\xa9\xf7\xfa\xd1\xc1\xc1AM\x08\xd1J\ -\xa5Rl\x9a\xe6\x810\x0c\xa3F\xa3\xc1\xcc,fgg\xdb\x00\x90s\xdd\x18\xc0\xecZ_\ -\x01p\xf2\'\xc7\x19\xcdj\xda\xa1U\xe6\xeb\x1b\xc0CCC\xbaa\x18{v\xec\xd8\xf1\ -\xc6\xce\x9d;s\xd9lV/\x97\xcbA\xa9T\xbaT\xa9T&\x00\\\xeb%\x06\x00\x18\xf0\ -\xd7B\xbdQ1\x11\r\xa4\xd3\xe9\x93\x87\x0f\x1f>>>>n+\xa5\xb0\xb4\xb4\xd4755\ -\xf5\xec\xd5\xabWW6\x03\xc7\xc0\xdf\x0c\x1cS\x00t\x00v>\x9f?\xd39l6\x9b\xd7\ -\x98y\xcc4\xcd\xb4\xeb\xbah6\x9b\xd04\r\xfd\xfd\xfd\x96eY#\xf7\x83\xae)\xb6;\ -}G\xf1G\x9d\x81a\x18\x88\xa2\xe8\xf7R\xa9\x840\x0c\x91L&Q\xaf\xd7\xe1\xba.\ -\x1a\x8d\xc6f\\pW\xcat\x00\xb5B\xa1\xb0\xb53\x18\x1e\x1e\xdenY\xd6\xd9\x99\ -\x99\x99\x87=\xcf\xcb&\x93I\xf8\xbe\x8f\x85\x85\x85j\xb5Z\xfd\xeb\x7f\xc0\ -\x82q\x97\xbe\xc1c\xa5\xd4\x8a\xef\xfb\x9f\xb9\xae\xdb_\xadVsRJ\xdd\xf7\xfd\ -\xc0\xf3\xbc\x1f\xc30\xfcrS\xc9@f\xed\x81\xe6\x06\xf0\xfc\xfc|{hh\xe8z\xbd^\ -\x7f+\x0c\xc3I!\x84\x88\xe38\x8a\xe3xV)U\xde\x8cJ\x80\xb5\x06.\xf7\xcc13kB\ -\x08\xdb\xb2\xac\x01)\xa5\xf0}?\xf2}\x7f)\x8ec\x01\xa0\xbd~\xbf\xe88\xa6\x0e\ -\x8c\xf7iZ\xb2\xc6\x8c\x18\xf8\xb9W\x8e\x13\xc9d\xf2\xf1\x91\x91\x91\xb3\xa3\ -\xa3\xa3\x87l\xdb\xd6o\xdf\xbe\x1d\xde\xb8q\xe3\xf2\xf2\xf2\xf2\'\xc3\xc3\ -\xc3\xbf\xcd\xcd\xcd5\xbb\xa0)\x83hw\x86\xe8\x88\x00\xc6\x18\xf8\x02\xc0k\ -\xbdr\xbc-\x93\xc9\xbc866v\xe4\xe0\xc1\x83V\x1c\xc7XYY\xb1\xaf\\\xb9rlzz\xfa\ -N\x10\x04\xb7.9\x8eN\xc0\x1d\x000\x88\x1e\xcb\x10\xbd\xa2\x03\xcfU\x99\x0bM\ -\xe6wr\xae[\xd5\x01\xf4\xe5\xf3\xf9\x0f:\xe0V\xab\xb5\x95\x99\xc7t]\x97\xf3\ -\xf3\xf3h\xb5Z "\xd8\xb6\x9dN\xa7\xd3\x83B\x88\x0cZ-\xc7"\x1a\xd5\x88v3p\xb2\ -\xc5\xbc7\x04\xbe\x8a\x98O\xe7\\w\x01\xb8\x9b\x8a\x16\x807;\xe0D"\x810\x0c\ -\x7f\xeb\xce\xb1\xe7yp]\x17Q\x14\x81\x99\x01\xe0\\\x1bx\x82\x98\xcb\x0c|\x1b\ -2\x9f\x02p-\xe7\xba\xab\x1d\x8e\x0e\xc0/\x14\n\xdb\xba<\xde\x96\xc9d^\x9f\ -\x99\x99y\xc4\xf3\xbc>\xc30\xe0\xfb>\x16\x17\x17W\xab\xd5\xea\x1fq\x1c\xaf\ -\x02x)d\x8e\x004\x00\xd4s\xae\xfb\xefzK7x\xcc\xcc+A\x10\\\xb8y\xf3\xe6\x96J\ -\xa5rLJ\x99\x08\x82\xa0^\xab\xd5~h4\x1a\x17\x95R\xcbG]wq\xfd\xbd\xf5\xf5\x1f\ -I\x17\x177\xa3W\x8f\x18\x00\x00\x00\x00IEND\xaeB`\x82' +\x04&IDAT8\x8d\x85\x94Oh\x1cU\x1c\xc7\xbf\xbfy\xb3\xfffwvS\x93\xd4\x83\x1d\ +\xb2k\xda\xc6\xa2\xf8\xe7\xe4)iC\xe9\x96Mz\xf0,\xa2\x07\x11\x0b*\xd6\x83\xd2\ +\x8a\xe8\xa1x\x10A!\x9e\n\x82H(\x14\x04\x11\xb5]\xbb D{\xb0\xb9\x94\x1e\x82\ +\x15I\xd2M\x9e\x89I\xb31\xbb\x99\x9d\x99\xdd\x9d}\xf3\xf3\x90\xd9\xb0&\xdb\ +\xf8\xe01\xbfy\x8f\xf9\xfc\xbe\xef\xcbw\x1e\n\x85B\x19\xff\x1d\xa2S\x18\x86\ +\xc1\x00&\xc2\xc9\x9a\xa6\xf5\x01\x10E\xcb\xa2\x92e\x1d+Y\xd6\xef%\xcb"\xf4\ +\x18z\x8f5\x15>\xd9u\xddI\x007\xc2\xf7\xc9x<\xbe\xc5\x9e\xf7\x98\x06\xe4\x00\ +\\\x07P\x05\xf0$\x80\xb9}`\xa5T2T\x84\x10\xd2\xa9_\xea\x82\x02\xc0\r!\xc4\ +\x85K\x03\x03\xe3\x04|\x9c \xca\x08 \xa3\x80\xab%\xcb\xfa\x14\xc0\xdd\xbc\ +\x94\xbb\r\xb4 \x08"\x86a\\7\x0c\xe3zx\xfcN\xdd\xde\xab\xc2q\x9c\xc3\xfdB\ +\x1c\n\x8f\xcaQ"d4\xedi\x93h:A\xf4Y\xc9\xb2\x9e\xda\x05G"\x91\xaa\xeb\xba\ +\xe4\xba.\x01@W}\xadK=\x88\xe8\xbdx<\xfe\xfe\xebkk\xdf2\xf0\x96\xcd\\\xaf\ +\x06\xc1\xdfm\xe6\xa9\x08\x11L\xa23q\xa2\xa9\x92e\x1d\x03\x00\xad\x87\xc7\ +\xbb\xac\xd0\xc7\t\x00\x13\xcc\xfcI\xd8\xb0rV\xca\x1f\x00\xbc\x12\x00\xd5J\ +\x10\\\xae3O\xb5\x01d\x88NF\x89\xa6K\x96u\xf8 p(\x94~\x0b\xbd\xa6p\xb6\xc2\ +\xbd\xef\x01\x9c\xcbKYi1\x7f\xb4\x1d\x04W\x14\xa0\x11\xf0<\x80D\xafT`hhH\x13\ +Bd\xe3\xf1\xf8\x89D"A\x9e\xe7\xb5\x9a\xcd\xe6<3//..\xb6\x01 /\xa5\x02\xb0\ +\x18\xd6U\x00\xe7\x7f\xb1\xac\x91\x8c\xa6\x9d\xdab\xbe\xb7\x0f\x9c\xcdf\xf5h\ +4\xfa\xc4\x91#G.\x1d=z4\x9f\xc9d\xf4\xd5\xd5U\xb7\\.\xdf\xacV\xabS\x00\xee>\ +\xecx\x0c8a\xa8\xf7+&\xa2\x81d2y\xfe\xf4\xe9\xd3\xe7\xc6\xc7\xc7\xd3A\x10`cc\ +\xa3off\xe6\x85\xd9\xd9\xd9\xcd\x83\xc0\n\xf8\x93\x81\xc9\x00;?H\xbaP(\\\x08\ +\xf7"J)\xbf\xddn\x9fL$\x12I)%Z\xad\x164MC\x7f\x7f\xbfi\x9a\xe6\xf0\xc3\xa0\ +\xa1\xe2t\xa7\xee(\xfe\xbc\xb3 \x84\x80\xef\xfbs\xe5r\x19\x9e\xe7!\x16\x8b\ +\xa1^\xafCJ\x89f\xb3y\x10\x17\xdc\x952\x1d\xc0v\xb1X|\xa4\xb3\x90\xcb\xe5\ +\x1e5M\xf3\xe2\xc2\xc2\x82e\xdbv&\x16\x8b\xc1q\x1c\xac\xad\xad\xd5j\xb5\xda\ +\x1f\xff\x03\x16\x8c\x1d\xfa>\x8f\x83 \xd8t\x1c\xe7K)e\x7f\xadV\xcb\x1b\x86\ +\xa1;\x8e\xe3\xda\xb6\xfd\x93\xe7y\xd7\x0e\x94\x0c\xa4\xc2\x06\xad}\xe0\xa5\ +\xa5\xa5v6\x9b\xbdW\xaf\xd7?\xf0\xe1\x01\xdf4\x98\xdf\xceK\xb9\x06\xec\xa4\xc2\x07\xf0u\x07\x1c\ +\x89D\xe0y\xde\x9d\xee\x1c\xdb\xb6\r)%\x1a\x8d\x06\x98\x19\x00.\xb7\x81\xe7\ +\x88y\x95\x81\xef<\xe67\xb1s\xd1ou8:\x00\xa7X,\x0evy<\x98J\xa5\xde]XXx\xdc\ +\xb6\xed\xbeh4\n\xc7q\xb0\xbe\xbe\xbeU\xab\xd5\xe6\x94R[\x00^\xf3\x98\x1b\ +\x00\x9a\x00\xeay)\xff\xd9k\xe9>\x8f\x99y\xd3u\xdd+\xcb\xcb\xcb\x87\xaa\xd5\ +\xea\xa4a\x18\x11\xd7u\xeb\xdb\xdb\xdb?6\x9b\xcd\xabA\x10T\xceJ\xb9\xbe\xf7\ +\xbb\xbd\xe3_-\xa6\xf0\x8d\x16\xb2@s\x00\x00\x00\x00IEND\xaeB`\x82' def getMoveUpBitmap(): return BitmapFromImage(getMoveUpImage()) @@ -637,34 +624,34 @@ def getPasteData(): return \ '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x02\xadIDAT8\x8d\xa5\x92MHTQ\x14\x80\xbf\xfb\xe6\xa7,u\xd4qFM\x84@Pr\x17\ -\xe6\xc2MX43H\x8b\xcc\xda\x04\xb6s\x17\xb9mZ\x04R"m\xb2E\x14\x84\x06A\x82\ -\xdb\xda8\xbb\x9aEI\x90.$\x10\n\x021Cg\xc6t\xde\xf396\xe3xo\x8b\xf9\x7f\xce(\ -\xd6\x81\xc7\xbd\xef\x9e{\xbe\xf7\xdds\x9f\xe0\x88\x18\x1a\x1a\xfa\x00\xf4Y\ -\x96\xc3\xd3\xd3\xd3\x97\x0e\xab\x13\xc5/\xa3\xa3h\xcba\x9c\x00\xa9\xa6k\xe7\ -\xed\'j\xdfI\xa9<\xdd\xdd\x9d\x08\x91\xd9\xaa\x94ba\xe1\x1b\x9a&b\xe9\xe4\ -\xf6\xa03\xf2v\x1e\xe0l\x1f\xa9\xd1Q\xe4\x01\xf0\x88\xcfv[!\x9fII5\xc0\x9f\ -\xfa^\xad\xa9\xa3W\xb4\xb55\x955Z]\x8d\xb1\xfe}N\x9d\xdc\x9c\x93\n\xd0\x04\ -\xa6\x92\xda\xdd\xe7\xef\xf7\xdf\x00\xd8s\xa6[\x9f\xe4\xd3\xc1\x8b\xed\xae\ -\xc8\x9e\x97/F\x17\xbb\xc6>n\xb7\x87\xf6\xf6\x8e\xbcCF:3&\x93\xb0\xbe\xde)\ -\xaaZ\xcf\xd9zj\x97p\x11q\xcd\xce\xfd\x98\x00\n\xe0\xe50\xce\x1a;u\x0e\x87\ -\xc6\xfcf\x17\xc1\x07\x8f\xd1\xe3:\x13\x13OX\\\\*k\\SSM0x\x9f\xfa\x86z\xc6\ -\x1f\xdec\xb0y\x03\xa9D#(\xf2\xe0|_\x94\xc0L\x82\xbb\xc1\x8d\xddfcll\x8ct:]\ -\x16l\xb7\xdb\x11B\xe0r\xd5\x91H\x89\xd2\xcb\xb2\x82\xad!\x84\xc0\xe1pT\xcc+\ -\xa5\x8a^\x8e\x00\x17\xe7C\xa1\xd0!P\x08\x04\xfc\x15\xf3\x87\x1a\xf7\xf7\xf7\ -\x97\x01\xaa\xec#\x91R\x96\xa9\xaa\x04.R\xb6\x1a\x17\xa0\nP\xf8|\xbe\xff3.\ -\x18f\xc6\x1c\xdc0t\xbc\xde\xe6\xa3\xc1\x96\xfe3;\x1b\x02T\xc9\xf1\xfd~\x7f~\ -nl\x1b\x15k-\xc6\x85\xb4\x94\x92@\xc0_b(e\xa6\xaf\xb9\xb5X4V\xf1\xb4\x15[Q\ -\x0c(n\xc5\xda\xda/Ls\x87D"\x81R\xc7\xb9\xbc\xb2`\x995V\xac\xac\xfcd`\xe0F~\ -\x9f\xae\xc7\x8f\x0b\xde/\x81\xe6[\x91\xb5\xd4\xf58\x86a`\x9a\xdb\xffb\\\xb8\ -\xa4\x1d\xd3$\x1a\x8d\xa2\xb2\xff\xaea\x18D"\xebL\xbe\x9a\xe4j\xf3Bep\xee\ -\xdaN;%\xb1\x8d\x18--\xad\xf9M\xad\x96"]\x8f\x97@\xdd\xce\x9d\xa3\x8d\xdb\ -\xe4W\xc6\x1f\x05I\xa4\xb4J\x87\xc9\xc7\xcd\xd6\xcf\x9c\xb2\xa5\xca\xe6\xec\ -\x00\xaf\xc3$G\xae\xb0i\xee\xa6=\x17\xce\xe8\xf4\xa8\x8f%\x9b\xac\xff\xe8\ -\x81\x10\x107\xd3\x80\x8a\x16-e\xe2\xcee\xae\x0bM{\x81R\x1ek\xce2/\xfbM\x85\ -\xd8\x92UMc{\xcd}/\xa7\xa6fv\x0f\x14\x0c\x0f\xdf\xaa\x02\xea\x80\x06\xa0\x11\ -\xf0\x00\xde\xec\xbc\x06H\x00[\xc0\x06\x10\x03~\x03\x9b\xd9q{jjF\x02\xfc\x05\ -^a\x87\x8b\xa1\xca4\t\x00\x00\x00\x00IEND\xaeB`\x82' +\x02\xadIDAT8\x8d\xa5\x92MHTQ\x14\x80\xbf\xfb\xe6\'-m\xd4q\xfcI\x84@Pr\x17\ +\xe6\xc2MX\xe4\x88\xb4\xc8\xacM`;w\x91\xdb\xa6E0\xd4 m\xb2E\x14\x84\x13\x04\ +\tnk\xe3\xec\xcaEI\x90.$\x10\n\x021Cg\xc6t\xde\xf39\xd3\x8c\xe3\xbd-\xe6\xff\ +9\xa3X\x07\x1e\xef\xde{\xee\xf9\xdew\xcf}\x82#btt\xf4\x03\xd0oY\x9e\x9b\x9e\ +\x9e\xbetX\x9d(\x9e\xf8\xfdh+s8\x01R\xcd\xd7\xce\xdbO\x9c~\'\xa5\xf2\xf4\xf4\ +t!Df\xabR\x8a\xc5\xc5oh\x9a\x88\xa6\x93;#\xce\xf0\xdb\x05\x80\xb3\xfd\xa4\ +\xfc~\xe4\x01\xf0\xf8\x80\xed\xb6B>\x93\x92\x1a\x80?\xf5}Zsg\x9fhoo.k\xb4\ +\xb6\x16e\xe3\xfb\xbc\xaa\xda\x9a\x97\n\xd0\x04\xa6\x92\xda\xdd\xe7\xef\xf7\ +\xdf\x00\xd8s\xa6\xdb\x9f\xe4\xd3\x91\x8b\x1d\xae\xf0^\x13_\x8cn\x12\xc6>n\ +\xb7\x87\x8e\x8e\xce\xbcCF:\xf3N&ac\xa3KT\xb7\x9d\xb3\xf5\x9e^\xc6E\xd85;\ +\xffc\x12(\x80W\xe6p\xd6\xda\xa9s84\x16\xb6\xba\xf1=x\x8c\x1e\xd3\x99\x9c|\ +\xc2\xd2\xd2rY\xe3\xda\xda\x1a|\xbe\xfb\xd47\xd43\xf1\xf0\x1e#-\x9bH%\x1aA\ +\x91\x07\xe7\xfb\xa2\x04f\x12\xdc\rn\xec6\x1b\x81@\x80t:]\x16l\xb7\xdb\x11B\ +\xe0r\xd5\x11O\x89\xd2\xcb\xb2\x82\xad!\x84\xc0\xe1pT\xcc+\xa5\x8a&G\x80\x8b\ +\xf3\xa1P\xe8\x10(\x0c\x0ez+\xe6\x0f5\x1e\x1a\x1a*\x03T\xd9G"\xa5,SU\t\\\xa4\ +l5.@\x15\xa0\x18\x18\x18\xf8?\xe3\x82a\xe6\x9d\x83\x1b\x86NSS\xcb\xd1`K\xff\ +\x99\x9d\r\x01\xaa\xe4\xf8^\xaf7?6v\x8c\x8a\xb5\x16\xe3BZJ\xc9\xe0\xa0\xb7\ +\xc4P\xcaL_sk\xd1H\xb4\xe2i+\xb6\xa2\x18P\xdc\x8a\xf5\xf5_\x98\xe6.\xf1x\x1c\ +\xa5\x8esye\xc12k\xacX]\xfd\xc9\xf0\xf0\x8d\xfc>]\x8f\x1d\x17\xbc_\x02\xcd\ +\xb7"k\xa9\xeb1\x0c\xc3\xc04w\xfe\xc5\xb8pI\xbb\xa6I$\x12Ae\xff]\xc30\x08\ +\x877\x98z5\xc5\xd5\x96\xc5\xca\xe0\xdc\xb5\x9drJ\xa2\x9bQZ[\xdb\xf2\x9b\xda\ +,E\xba\x1e+\x81\xba\x9d\xbbG\x1b\xb7\xcb\xafL<\xf2\x11Oi\x95\x0e\x93\x8f\x9b\ +m\x9f9iK\x95\xcd\xd9\x01^\xcf\x91\x1c\xbf\xc2\x96\x99H{.\x9c\xd1\xe9U\x1fK6Y\ +\xff\xd1\x03! f\xa6\x01\x15)Z\xca\xc4\x9d\xcb\\\x17\x9a\xf6\x02\xa5<\xd6\x9c\ +e\\\xf6\x9b\n\xb1-\xab\x9b\x03{-\xfd/\x83\xc1\x99\xc4\x81\x82\xb1\xb1[U\x80\ +\x0b\xa8\x03\x1a\x007\xd0\x98\x1d\xd7\x00\t \x06l\x01\xbf\x81\xed\xec|\x1b0\ +\x83\xc1\x19\t\xf0\x17\\\xc1\x87\x8b\xbe\x18\xff{\x00\x00\x00\x00IEND\xaeB`\ +\x82' def getPasteBitmap(): return BitmapFromImage(getPasteImage()) @@ -856,51 +843,51 @@ def getTestData(): return \ '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x16\x08\x06\ \x00\x00\x00\xc4\xb4l;\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x04lIDAT8\x8d}\x95Ml\x15U\x14\xc7\x7f\xf7\xceL\xdf\xf7\x9biy\x0f\xd2RJ\xb5\ -\r\x16i\x01\x8d;EM$\x12\x134.\x881.\\\xb10\xc6\x95qg\x8c\t\x89!\xb2@\x8c\x0b\ -\xe3\x8a\xf8\x11\x83\x88\x86(\x89\xc1\nhD,\x9f!\x8dX\t(P\x0c\xf4\x95>\xfa\ -\xda\xf79_\xf7\xba\x98\xf7\x1em\x05nrr\'\xf7\x9e\xf9\x9d\xff9\xe7\xde\x19\ -\xc1}\x86\xd6Z\xf4\xf6\xf6v~\xb9w\xea\xa8i\xe2\x18\x06\x84\xa1F)>\xdc\xb4Y}p\ -\xbfw\xc5=\xd6\x9d\xfd_\x88K\xabV\x199\xd3\xec\xa0w\xa5\x85iHLS\xa3u\xc8\xd5\ -I\x8f\x99\x99\x80\xe3\xbf\xa9\xafv\xec\xd4\xaf\x01\xa5\xa5\x00\xf3.\xd0\xedR\ -\xca\x97\x1f\xdd(rZ\xa4\x91"\x8b\xe7\'@\x1bh\xc0\x0f\xeatu\xd6\xc8/+s\xfd:[\ -\xa4l\x1cPJ\xbd\x05\x9c_\x081\x96@_\x14B|<00\xe0\xac\x1d\xd2\x99|>\x89a,\xc3\ -0SH#\x8ea\xc6P*\x86R\xe0\xba>\'N\xa5\xe2\x93\xff\xaeH\x96\xcb\xe5\'\x95R3\ -\xc0_w\x03o\xb4,\xeb\xfd\xc1\xc1\xc1\x84eY\xdd\xb3\xb3q6=\xe1a\x18I\x0c)\x91\ -\x86\xc004\xa1R\x84\x81G\xe0\xd7\xd8\xb1\xb3\x07)e\xdaq\x1c977\xb7^)u\x06\ -\x98Z\x08v\x80s\xfd\xfd\xfd)\xcb\xb2\xba\x85\x10\xcc\x14-LC3\xb4\xa6\x8a\x94\ -!R6\x90\xb2\x8e\x1fT\xf0\xbd\n\xfb\xbfI\xf2\xc7\x9f1\x94R\x08!2\xa9T\xca(\ -\x95J\x8f\x00\xdf\x01\x8d\x16\xf8\xbcm\xdb\xbe\xe38\xab\x84\x88\xfa\xa9\xb5f\ -\xe2b\x9c\xb5\x0f\xcd\x92\xcf\xcd!e\x15CV\x08\xbc\n\xbe_\xe3\xdd\xf7zQJ\xb5}\ -M\xd3L\x0b!\xea\xd5j\xb5\x1b\x18\x95\x00B\x88t>\x9f\xef\xd4Z\xb3\xd0\x82 `\ -\xdf\xd7)\xc2\xa0\x8a\n\xcb\xa0+(Ug\xdf\x01\x1b\xa5\x14K\xfdm\xdb^)\x84x\xa1\ -u*\xb6f\xb3\xd9\xb4\x94\xd2\xd6Q\xf8E\xdd\x9c\xb8\x98\xe2\xf7\x93)\xca\xd5\ -\x0e\xe2q\xc1c\x1bK\xec\xffv\xf9\xff\xa0\x00R\n\xc74\xcd\x9a\xef\xfb[M`[<\ -\x1e/j\xadm\x01,\xc4j\xad\x11B\xf0\xc6\x9b\x01\x03\x03\xab1M\x93\x1b7$\xf1x\ -\x99d2\xd9\x06\xea\x05b\xba\xba\xba\x1a\x85Ba\x9b\x040M3\xd6rhY+\xd5\xe9\xe9\ -ir\xb9\\\xbb\x9e\xb9\\\x8ej\xb5\xda\xde_Z\x12\xd34c\xb6m#>\xf9\x88\xab==\xac\ -\xf6\xfcH\xaeh\xca\xd6D\xcf\x87\x7f\xea\xe0\xc8\xcf}\x8b\xca\xf3\xcc\xd3\x93\ -l\xd9\xecE\xd9i@\x80h\xce\x96\x05G\x8e\xf1\xa9\x0cUT\xd6\xc0\x87 \x00\xcf\ -\x03\xd7\x07\xd7\x85Z\x1d6\x8c\x84$\x13\r<\xcf\xa3R\xa9\xd0\xd1Qc\xddP@\xb9\ -\x02\xf5z\xe4\xe7y\xe0\xf9\xe0\xfb\x11K)0\xd6=\xcce\xcb\xe2\x15\xcb\x8c\x16B\ -\x15\x05\x08\x83\x96\xa3f\xe0\xc1\nc\xa7<\xe6\xe7=\x9e{\xb6\xc6\x8a\xe5>Z\ -\x83Vw@Z\x83\xd2P\x9c\x85r\x99w\xe4\xae\xdd\x1c\nB\x08\xc2\x08\x18\xf8\x91\ -\xb9^\xd3\\8{.\x058d2\x19\xce\x8f\xa7p\xddh\xdd\xf5"\xb5ASmK\xd0\xae\xdd\x1c\ -\x92\x00\xf3\xf3\x14\x84\x8c6\xfc\xa6\xd2\xf6\xec\xc3\xd8\xe9l\xbb\xbe7\xa7b\ -\\\x9b\x8c\xb5\xf7Z\xbeA\x00R@\xa3A\x19@\x02LO\xb3\xbd^\x8f\xfa\x10\x06\x91\ -\xfa\xb0\xa9\xe0\xc4Xf\xd1\x91\xd2Zs\xf0P.\xca.\xb8\x93\xa9\xd6QO\\\xd7\xda\ -\xdd\xfeV\xd4\x1a\xeb\xb5\xe3\xdcz>\x93\xd6\x8e\x10\xcd\x94\x14\\\x9b\x8c1z\ -\xacs\xd19m_y\xa0\xb7\xc7C\x080d\x14\xe0\xe0\xf7\xe9=\'\xcf\xac\xf9\xbcP(\ -\xdc\x92M\x7f\xeb\xc7#\xc3\xaf_\xba,\x8a\xb7K`\x9a\x10\x860v:\xc3\xbd\xc6\ -\xe9\xb3YB\x15\x05\xf0|\xf8\xe7\x8a\xb8=5\xfd\xc0\xa8\x10B\xb6\x15\x17\n\x85\ -[\xcb\xf3\xf9\x95\x7f_\xc9\x1f3d%\xabT0\xe8d\xe1\x87Q\xa7\x0eX\x0b\x81B\x08\ -\x84\x10h\xad\xebW\xaf\xe9\xf9\xfe>?y\xb3\x10\xfb\xf5\xe8/Co\x0b!f\xc7\xc7\ -\xc7\xcf\xc0\x92_\xd3\xf0\xf0\xf0\xe3Zk\xa7\xaf\xf7\xe6S=\xdd\xa5W\xf7~\x06\ -\x86a\xc4\xa5\x94V:\x9d\xf6\x00*\x95JL)\xe5\x05A`\x1a\x86q\xa9\xaf\xafoO"\ -\x91\x98\xbap\xe1\xc2\xe1E\x02\x96\xa6822\xb2A)\x95\x03\x96)\xa5\xd2\xae\xeb\ -\xda\xc5b\xf1\xa5z\xbd\x0e@"\x91\xc0\xb6\xed\xb3\xc9d\xf2\xb4\x94\xb2\xa4\ -\xb5.NLL\x1c_\xca\xf9\x0f\x7f\xb5v\xd2\xcd`A-\x00\x00\x00\x00IEND\xaeB`\x82'\ - +\x04iIDAT8\x8d}\x95MlTU\x14\xc7\x7f\xf7\xe3\xcdL\xe7\xcdt^\xcb\x0cHi\x85X"Pl\ +E\xe3R\x08Q\x94\x98\x10\xe3\x82D\xe3\x9a\x85\x0b7\x1a\x13\x12\x13cBb\x88,0\ +\xc6\x85\xc1\x85\xc4\xc4\x18,\x1f1\x86\x18\xb1|-\x10+\x88\x92\x06E\xd4H[>\ +\xec4\xc5v:3\x9d\xce\xfb\xb8\xd7\xc5\x9b\x19\xda\n\xdc\xe4\xe4\xbd\xdc{\xde\ +\xef\xfc\xcf9\xf7\xde\'x\xc0\xb0\xd6\x8a\xee\xee\xee\x8e/\x0eN\x9c\xd6\x1aO)\ +\x88"\x8b1|\xb8y\x9b\xf9\xe0A\xdf\x8a\xfb\xcc{\x83\x9f\x8b?{zT^\xeb\x04\xdd\ +\xab\x1c\xb4\x92hm\xb16bt\xdcgj*\xe4\xdc\xf7\xe6\xcb={\xedk\xc0\xccR\x80\xbe\ +\x07t\x97\x94\xf2\x95\'7\x89\xbc\x15\x19\xa4h\xc7\x0f\xda\xc0*,\x10\x845:;\ +\xe6(,+s\xe3\x06\xdb\xa5\x9c?b\x8cy\x0b\xb8\xbc\x10\xa2\x96@_\x12B|\xdc\xdb\ +\xdb\xebmXo\xb3\x85B\x1a\xa5\x96\xa1\xb4\x8bT)\x94NbL\x12c\xa0^\x0f8\x7f\xc1\ +M\x8d\xdf\\\x91.\x97\xcb[\x8c1S\xc0\xef\xf7\x02or\x1c\xe7\xfd\xb5k\xd7\xb69\ +\x8e\xb3rz:\xc5\xe6\xa7}\x94J\xa3\xa4D*\x81R\x96\xc8\x18\xa2\xd0\'\x0c\xe6\ +\xd8\xb3\xb7\x0b)e\xc6\xf3O\xb5Z\ +m\xad/-\x89\xd6:\x99\xcb\xe5\x10\x07>b\xb4\xab\x8b\xd5~\x10\xcb\x15\r\xd9\ +\x96\xf8\xfd\xc4\xc9\x04\xa7\xce>\xbc\xa8<\xcfn\x1dg\xfb6?\xce\xce\x02\x02D\ +\xe3\xe98p\xea\x0c\x9f\xc9\xc8\xc4e\r\x03\x08C\xf0}\xa8\x07P\xaf\xc3\\\r\x1e\ +\xef\x8fH\xb7\xcd\xe3\xfb>\x95J\x85Db\x8e\x8d\xebC\xca\x15\xa8\xd5b?\xdf\x07\ +?\x80 \x88Y\xc6\x80\xda\xd8\xc7_\x8e\xc3\xab\x8e\x8e\'"\x13\x07\x88\xc2\xa6\ +\xa3\xa5\xf7\x91\n\xc3\x17|fg}^x~\x8e\x15\xcb\x03\xac\x05k\xee\x82\xac\x05c\ +\xe1\xce4\x94\xcb\xbc#\xf7\xed\xe7x\x18A\x18\xc5\xc00\x88\xad\xee7\xac\x0e\ +\x97~v\x01\x8fl6\xcb\xe5\x11\x97z=\x9e\xaf\xfb\xb1\xda\xb0\xa1\xb6)h\xdf~\ +\x8eK\x80\xd9Y\x8aB\xc6\x0bACi\xeb\x19\xc0\xf0\xc5\xf6V}\xff\x99H26\x9el\xad\ +5}\xc3\x10\xa4\x80z\x9dY\x00\t09\xc9\xaeZ-\xeeC\x14\xc6\xea\xa3\x86\x82\xf3\ +\xc3\xd9E[\xcaZ\xcbW\xc7\xf3qv\xe1\xddL\xad\x8d{\xa2\x14{Zw\xc5\xf0\x05\xfe\ +\xd8\xd8\xc7\xcb\xaeKA\x88FJ\x06\xc6\xc6\x93\x0c\x9d\xe9X\xb4O[G\x1e\xe8\xee\ +\xf2\x11\x02\x94\x8c\x03|;\xa4\xdf8{\xae\xff\x93b\xb1\x18H\x80\x81\x81\x81\ +\xf6o\xbe\x1bx\xee\xefQn\xff;\x03ZC\x14\xc1\xf0\xc5,\xf7\x1b\x17/\xb5\x13\ +\x998\x80\x1f\xc0\xd88\x13c7\xfa\x0e[c\x9dV)\xac\xb5\x12\x10C\xa7\x07\xb6^\ +\x1f\xd5\x07\xc7\xc6\xc1\xd1p\xf3V\xa2l\x97\x1c\xf1\x05\xa7\xb2\xac\x81\x10\ -\x87\x1f\x07\xa0"\xa2v\xbc\xe6\x0f@\x15X\xac;\\\xa6\x96\xc5a2\x8d=En\x91i\ -\xab\xfd-\xd3]\x00@]\xa6\xadV\xad\x01q \x11\x81\x88@Q\xcf[\xb4\x03\xad2\xd5$\ -CO\x8a\xe5|\xb7L\x81o;\x00\x96-\xa1\x9c[\xec\x1e\r\'y6\xf9\xb7\xefepO\xaaM\ -\x0c\xb6,\xef\xba\xeb\x1c\x94\xc6\x1c\xc8\xa6h(\xd3Ri\xd7d/}\x9d\'\xf5Z\xc1V\ -\x1d67\xb8@\\Y\xdc\x13\xf4\'\xde\xd9\xbf-\x1f\x95\xdb\x82J\xbd\xd8\x18k\x00\ -\x00\x00\x00IEND\xaeB`\x82' - -def getToolMoveDownBitmap(): - return BitmapFromImage(getToolMoveDownImage()) - -def getToolMoveDownImage(): - stream = cStringIO.StringIO(getToolMoveDownData()) - return ImageFromStream(stream) - -def getToolMoveDownIcon(): - icon = EmptyIcon() - icon.CopyFromBitmap(getToolMoveDownBitmap()) - return icon - -#---------------------------------------------------------------------- -def getToolMoveLeftData(): - return \ -'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x18\x08\x06\ -\x00\x00\x00\xe0w=\xf8\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x00\xceIDATH\x89\xb5\x96\xe1\x0e\x83 \x0c\x84\xafe\xaf\xa5\xb27\xef\xb6\xe7\ -\x1a\xf8G\x17GZ-\x02\x97\x98\x184|\xbd\xf6\x8c\x10q\xc0Hq\xb9\x90\xd37\x0f\ -\x05\x00\xc02O\xdd \x8f\xab\x174G\xc4\x81\xbc\x00\xd5\x81\xb6\xe1~\x01u\x0eU\ -\x07"\x02\x00]\xda\xa4\x02b\x8c%\xac/\x00\x00^\xef\xcf\xde\xe7\xdc\x92\xac\ -\xcb!\x13\x07Z\xe6)\x8b\xc8\x9f\xb3n\x00\xe0\xe7&\x1f\xee\xfb\x024y\xe3\xeb\ -\x8a\xa9%O|\xab\x1c\xdc\x89\xaf\x1b\xb0\x0f\xbb\x80\xb5\x03\xd2\xd6k\xe6@\ -\xc5\x80]\xf1=\x05\x1c7\xd7\xd6\x9f\x8e\xd8\x9a\x80t\xa8.\x19\x95z"{;E\xa5+K\ -\xa6\x03\xe6@V\x8b\xaa\n9}\xb8ml\xb5\xc8\xa3\xcb\x14\xb5T\x0f4~\xc9\xb7\x005\ -\xbfC\x8fh\xf4\xb1e\x05\xe0\xd1V\xfd\x0e\xdbmz\x00\x00\x00\x00IEND\xaeB`\x82\ -' - -def getToolMoveLeftBitmap(): - return BitmapFromImage(getToolMoveLeftImage()) - -def getToolMoveLeftImage(): - stream = cStringIO.StringIO(getToolMoveLeftData()) - return ImageFromStream(stream) - -def getToolMoveLeftIcon(): - icon = EmptyIcon() - icon.CopyFromBitmap(getToolMoveLeftBitmap()) - return icon - -#---------------------------------------------------------------------- -def getToolMoveRightData(): - return \ -"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x18\x08\x06\ -\x00\x00\x00\xe0w=\xf8\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x00\xd3IDATH\x89\xed\x96a\x0e\xc2 \x0c\x85_\x8b\xd7\xda\x867s'\xb3n\xe7r\ -\xf5\x0f\x18F0+\x0c\xfd\xe5KH\x06\t\xfdxm\xd3\x8c\x88\x1dR\xe9\xf6TbG\xe8$.\ -\x1dN\xe3\xa0)0_\xa7\x01\xb9\x88\x1d\xc5\x95?\xe0H\x97\xd2\xa1\x88\x00@\xd5K\ -\xab\x00\xde\xfb\x1c\xd6\x17\x00\x00\x8fe\x8d\x85\xae\xce\xbb\t\x10E\xech\ -\x1a\x07\x15\x91\x9d\xb3n\x00\xe0\xedF\x93o\x94\\\x95\xda\xdb\xd4E\x9fd\xe9.\ -\x93\x83\xa8\x96\xee2; v\xa4!zM-\xcc\x0e\xb6$\xe7w\x11\x10\xcauh\x02l\x85@\n\ -\xe0jpb\x02p(b\x04\xc5=\x96\xf5\xf8\xae\x05pF_\x07\x1c\xa6(-\xe4\xdc\x00\xa8\ -\x1a\xd73;\xba\xe1?\xae\x83~>\xae\xbb\x01\xc2d\xdc\x05L\xdcT\x8b\xf2\xdf\x96\ -\xdez\x01\x15\x93n\xa3D\xe4_\xf7\x00\x00\x00\x00IEND\xaeB`\x82" - -def getToolMoveRightBitmap(): - return BitmapFromImage(getToolMoveRightImage()) - -def getToolMoveRightImage(): - stream = cStringIO.StringIO(getToolMoveRightData()) - return ImageFromStream(stream) - -def getToolMoveRightIcon(): - icon = EmptyIcon() - icon.CopyFromBitmap(getToolMoveRightBitmap()) - return icon - -#---------------------------------------------------------------------- -def getToolMoveUpData(): - return \ -"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x18\x08\x06\ -\x00\x00\x00\xe0w=\xf8\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\ -\x00\xf1IDATH\x89\xd5\x96A\x12\x83 \x0cE\x7fB\xaf\xd5\xca\xcd\x1cnf\xdbs\t]\ -\xb4Li$\x01\x1c]43\xd9(\xfe\x97\x84\x0f#\x11;\x9c\x19|\xaa\xba\x04\xa4\xb8&m\ -a\x8ck\x8a\xc6\xfb.\x00\x00L\xb7\xebF$\x0b3;\x1a\x05\\Z\x0b\xca\xaae\x07=@s\ -\x0fZ#\xe9\x19\x9b\t\x90\x152;*\xb3\xa7\x90\xa6\x8b,!fG\xa1\x01\xe9\xb2\xa95\ -\xebP@\xe6\n\xc4\x04\xa4\xb8\xa6\x9c\x04@\xa3\x84O\x01s\xad8\x0b\x00\x00\xc4\ -\x8er\x02u\x1b[\xb1\xb1\xe9\xb2,\x000|\xa0\xba\x01\xde{\t;\x16\x00\x00\xf7\ -\xc73\x8f;Y\xd7\xc7n@\x0ebG#3\x0f\x95g\xcd\xab\xa2\xe8F\r\xeb\xa0\x99\x80\ -\xdaxH9x\x01_\xbb\x96\xb1\xcb\xa6\xf2\x0e\xd2\xc4\xab\x1d\x8c\xd84\xcf\\\x13\ -\xdf\x00\xe4\xa6j6\xed\x11.E\xd5\xc4\xbb\x93\x9f\xf4\xde'\xeb\x1b\x99\x87\ -\xda\xb4\xaa\xf1\xf7\x7f\x15/\xe4\x0f\x81\xb3\xb0\xca}\xd2\x00\x00\x00\x00IE\ -ND\xaeB`\x82" - -def getToolMoveUpBitmap(): - return BitmapFromImage(getToolMoveUpImage()) - -def getToolMoveUpImage(): - stream = cStringIO.StringIO(getToolMoveUpData()) - return ImageFromStream(stream) - -def getToolMoveUpIcon(): - icon = EmptyIcon() - icon.CopyFromBitmap(getToolMoveUpBitmap()) - return icon - #---------------------------------------------------------------------- def getToolNotebookData(): return \ diff --git a/wxPython/wx/tools/XRCed/src-images/Copy.png b/wxPython/wx/tools/XRCed/src-images/Copy.png index 345b2f1d7cbc2238e895eda7f3ce236f451d12d8..db3e4f09fa3a0b715f39e409ac1e2591e0d808b8 100644 GIT binary patch delta 703 zcmV;w0zm!M1>FUZDu4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2iFA&0xT^FZKZes00L@BL_t(Ijg^(pPZL2D$G>l8w=F%iw_drlbn9QC2NR7~{{inr zOB9U6vk729G5&}e{WCn75CSDcQY8V})H5D{gAho%opzpwVSjf!b-R?gwCQ{Mna_Lk zc1pEZOAlD<3a+_Gi00$!?AK9oM|Hd2)7km!a`Ad~*-MH$LJ$Dp^z`r8&|EGLB1+70 zl7h@k-ELP7{f1O34QA%C!R_{M3)=X#bN}Mvd=kI_gg|6Ac)7grD27Qyv}S>)rb^*= z-}mL(`uEAXCx6d~nUm|bsi>_i-W+MHdJ31Obar++E*H669sqcxai`P4W_^8ZAYj@P ztQcbxRH|zwHk-{Wp`I7L4i>mnD#EbX7;kNaG0%%1+hB8MjyGmzwA<|vtdz16Tdh_s zG)iGqDmNl<5MX8$ivz~KkFD*^FtJjJ%Cs#_J`p7un|~fNGnDH6XFLcrpTVXcn1OUU zZG*Mep|Jr2zTd(2k9wF`E|){QVPhfz$B|G`~ALE7PCD%%#4GBU@GjqY&MI0 zJ`VsW6bd10035&q3$noF@{|Px7(z%$DWSE75CTEVUpWnwl+H{is1s0ZG zJRI(SP(Cx8Hh^*W_B{Z=@yQVyKX<@{Pl@;OaQ|J`ft2PEV@;6KT-S$x4zahti%d5A zr8+&cdL>vXg-j-6y|Pk9*8RT5@yQYP_ICk6(>T@XnYRFtc+b{W7Qgj+y*q$Ce!*fe l7|;UL(BND1bI;F%*gq=3oab%+K^6c2002ovPDHLkV1mlwM92UD delta 695 zcmV;o0!aPc1=R(RDu0LoiU5TPrK!~b000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2h|E16b3U1mPJ|s00Lr3L_t(I%axT)PZLoThTn7VOurU%*I&?frv49Oh$~knE?u)I zQ7{nKCV&N%M2R7B?Z&Mu6GNa4ksu^MYhB|4SXd&a)7#$T;(s#Jnc7a<*|h07^W5jY z_oGyKwf2y;b}{8cLNuO~7e0=vTdLD>o-Hg-%f;(A>rPzV5`q8#t=8{}p))gC5K(N8 z6<1_t>U27C;5Q@^NiZ`{3~n}mMxcjB2aj%U{^S9KAOs>az{~ZOVHpw;eU5;O#X|7i z^E~-==SzO^>3gyy1s5rl|KL;Y20qNu~*%hYNv!_A7X5Z zN_8TQ^?H3Q)OAb4!G%H|hQ-FXwj0!3*NwGg=HbT7jApYLfR$2_#zvzt6xwfLluCE{ zV86i3$mc`Go`>50UeH)7l}1>aejOq#_zDy>AY&Hu3$mMbY zD+Kmoz6C|Vj#G>P0frC~Qc7s8A%uWG``g7cJ0P7-2aymFY}+1KECNw~7udE9B4O+- zD_Fd0ZGRV9Ygl$7@#F2*raS7~`-6pTg%BVT&|2gD_Pb%P9$9h!0xN4TmIm|pr_anL z1~6vt-Uk3&UR~hu`vI7+WsN)k;rwmef|TYJV@;6KT-WEn&T(>jj8rDGS)QBU9t&1V zA(cu+j;xe@>t0Xe^6CO7r^kSx$K|>C59Zd6c`zy)tDm~v?t{UbtAB_Y3}^wWYVf_~ d#pi$h+CRpWoeG+LL{|U+002ovPDHLkV1guJKidER diff --git a/wxPython/wx/tools/XRCed/src-images/Locate.png b/wxPython/wx/tools/XRCed/src-images/Locate.png index e2d79f40f36624034ae71cd7cf0ec483f08186a8..2478cbd42c3de86f2f6c6a7e040f2bd8398b33c8 100644 GIT binary patch delta 854 zcmV-c1F8J^2b~9yRDS~p9>EV&FaQ7pDoI2^R5;6p)xmF6RTRhZ&kQpybP|~YParXo ziwVYn=@?B|%mN4oc5aPHP5l#qg)3AN_u8!sBbdgpF%mWg+;rhATroyWL=tX^8VkeF z7J09wLhEAQ3^PNECwa-c@16U-=lt$D_ZB?ILOskT2a+Qj{eR2and_IY7dD$)*aSF@ z8Yb*iHL`(I8>^aFij8>mf5AC)DtR-hD$$y6aoa5R<7BG08}W@z z!Tr$Iy%x8XX4dico$aei*}-QcSC3s=Pa1B zh|~p~!>KSCYOxWoT5vM`JC#02g?hNw19zjf#s<(!aVE~nELlcdGtR_WOb@_e2g!k? z)(`I3ZBzZyU@p$Y#e94U$MVI*nb^#$qzV?Cls%nX8h@&`_d`7#$IDhtSnzqM=Xy3` z^O-sy^ck>W@Y}t&HLUAyMs>)qh9g5h16CXwPsK(o#6~PAYZ`O9Km9)I$TH}2Z1af6 zUBK61izP2;#>;VbsLgw_gb;c@;dofLb%Thrxr{MFJ)Fol=O{i1lc6?{elAO1HRpTT zY(v&LoPT;P9qOTmuk2N`(%Io|35CgU9{chJsVZyQVkw7SiZgLB91rWpv4~}-Vy z)P8LT-5-G7P0xDhyV&S7)Ke)!*o{#;95Cv$(plpwC6&?1-yV|aH1X08z gEMPsxxZY*`2e)BzNp}M(l8r?q_F#rGqhDk(0R5;6hmBDWtMHGj>wPVNb610=DkrPFh zheL`gL>5(u3Lo042TuF}l_IrA#K{o{PEhw)sZt}sofui7+$s>_021!Ohj0KxRe?Bk zoH{^?W3rCDV|O=oIC$;Yj?SAXnF)7ErD<2Af1s;o-W z){Rqu8-N3>au$pDl%NLSQvsSlPL)+u;vy3``khwqh==DmI3lIE5T=#eeTMvJmJ%!&&OlN z#x!sSfF5v!6V6)`aSm{4BIbqQ08ge^Csf^#Ytk7@KP*e=n$2N0NkI3T)36E2 ztaO0SS;V2+KVel?`4E}|GT{ZWh*2R*Glbq(Mdiw?@(2OAK!A8&&Le!$0d-G18~wc9fwpoPNVo@V)rp>Htl)Ep=RBfE z5>1T&FMOW%fd5W_l~P?P<CP{@YCP2~TXP^^)ZJ-PIN~zv}_di3q VudK62qR0RM002ovPDHLkV1mK>z(4>1 diff --git a/wxPython/wx/tools/XRCed/src-images/MoveDown.png b/wxPython/wx/tools/XRCed/src-images/MoveDown.png index e0928b52cf0b076fb668a2a30d31b324e28e285a..74619ee6c4f45ee23c02fb81a87a3adbd5e3c06a 100644 GIT binary patch delta 1094 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 delta 924 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 diff --git a/wxPython/wx/tools/XRCed/src-images/Test.png b/wxPython/wx/tools/XRCed/src-images/Test.png index 6f6118352ba17e383e80047c818e02cb27ff9cea..973fb032ed2b63d4fbbcb4280b59e07854fc4751 100644 GIT binary patch delta 1176 zcmV;J1ZVr+3ET;gRDS~w5*d4>QUCx1X-PyuR5*=&l}&6^RTRg6_v6h>=go9p%M3_q zg;*j`Y(?Wz2vL-n5aWVG`|H z)JR)C>@>x8Iy0Tl`?%M|n;F^)+~nlF+jd4a9JG>XZLv0DblhiZD&*Yv=F2^M?Q6iy zQh>e(beEL!l_xieycHRwXvYuQz$z>dgf%)l<|r&HbK?fvrJO%vjCl*Vybz+6KwlC< zeB9gH>up$Xvwwv`8l{$@w2M?Jlulwy5@VoV4>*6pO^x4NkuI0ZTZ}PN!0-10Z*m;x z{k3b?wmFWoa(X(&=BIs>N~5GiDuGg#$QYu~Ck*D;v$qQ=WybS7St^wVj4?j}6AQr} z@bj8AYh1^1Rth1Qy5pdgW&NX7q>PYq9w}=CVTHi2Fn@S7&6VGh7-JAZWL?))Gcz+! z0AB<1P4MMhE*E&7*CRySPirk#ucg?qZkj^Agp^g3tPuJYf?$q!-|NO0)AH3?XM_;7 zYPGr&7?J=&h)khS=&;tZ(84g}&|#M-tYV@v*b2tfICLb3F@~l7xm<3Q5aPw=uGrDu z-ky6@O`KUP_M&W4Ib~0NVm=7`#zOQg+yYGjq5|o6{yu> zKi>yGfFOuj#(>(`$6t=atB#H*A`=IQ!lt98_mK+27kp-CeO`Eejup!TtOaZCf~*B& z;eXCFl*_y$_wDC+7(p1tz%Yod?l-Ismwt8uk8C!}kK^TVtJ8DXg^;5JRU2wq76A2gk<2(QxxtqHLEO@dc-{Ja{yHt5kx?DSvhB z#L36D07A$(rPi;hzrX(>pv_wA^sT%8Os7}fec)4pQYx*KN@X&cnzfcnrIL=Ks1`+0 zLJ09oPfyS8Y&JV1gb1XRwULpL;v#SZzQS6Yu+}=n7nCfOO6{dm>FsK@3V`dnc%FA6 qo6Vj9A|XU51i_UnzusKP`Va2HbP?LjU8|4)0000iHjnTr_pP|czO(O3adFiuBWIc&^sclp4T))Lv<|s4=`k}CaO`*W_4Xb5b)dAA zz`P6THYw#Rk8Kb+Ez(Gl#q$%O4K&~fb-FrhDXc8$$aHufu}-UiMsBr%qdz9fYB zWME*xSu>s00u~r1SZFr`DQ<76bu%zey1WRa968T|ucjd-vNYrC5r$ZF{8<;>A`~Y{_P` zX(^?xBY*dcZgb*7ia$=IC|5g(#|4jXD6#Lm<#&(*NGTlCG;6-^Z!v+b@p!zbwYCMI z7dHq(2;O`vU|`?@Ow;80bxAy4CYemO3H1UoU0q#`LZPr#0+^;5YXMr;3UzvVnp`f| z&Sx%{qgt)D&zGjeG|iZ8+lWs;=1NZw4|skgSAR5RYohlL3k4mLNM@NmdLjmOq)awz> z^T6}L_aiQ)z*zeTmn@4{Ei>8(RpcNHT0qUfLlwqOdd$yzJpWvc70Z3J2CZ%rX$?w4 zaeo%dW!{xLcX2QXAqXSFz>m!Jn&!fpvnjwKlgV&yJca8<`>q$M4Vr3Of_CoWpahto zryyi>;5U`FS0BbsW!w3^F%{$LWUPJG!Uh3I0gVP_00}TX&9-_yx`!}`)Q3$4$Hy{@ zN=j?ZfrGgyy5M%CT1R){y4J4tzoOPyr+*#i<_np$c7$k#q~PjgjM1Z=i|Vx9@<4Bo zhY(=M$iaah(z{QbUj0R(P`D|Zc&8~^|S diff --git a/wxPython/wx/tools/XRCed/xrced.py b/wxPython/wx/tools/XRCed/xrced.py index d7493cf8c6..9a062af183 100644 --- a/wxPython/wx/tools/XRCed/xrced.py +++ b/wxPython/wx/tools/XRCed/xrced.py @@ -99,13 +99,44 @@ class TaskBarIcon(wx.TaskBarIcon): # Set the image self.SetIcon(images.getIconIcon(), "XRCed") +# ArtProvider for toolbar icons +class ToolArtProvider(wx.ArtProvider): + def __init__(self): + wx.ArtProvider.__init__(self) + self.images = { + 'ART_LOCATE': images.getLocateImage(), + 'ART_TEST': images.getTestImage(), + 'ART_REFRESH': images.getRefreshImage(), + 'ART_AUTO_REFRESH': images.getAutoRefreshImage(), + 'ART_MOVEUP': images.getMoveUpImage(), + 'ART_MOVEDOWN': images.getMoveDownImage(), + 'ART_MOVELEFT': images.getMoveLeftImage(), + 'ART_MOVERIGHT': images.getMoveRightImage() + } + if wx.Platform in ['__WXMAC__', '__WXMSW__']: + self.images.update({ + wx.ART_NORMAL_FILE: images.getNewImage(), + wx.ART_FILE_OPEN: images.getOpenImage(), + wx.ART_FILE_SAVE: images.getSaveImage(), + wx.ART_UNDO: images.getUndoImage(), + wx.ART_REDO: images.getRedoImage(), + wx.ART_CUT: images.getCutImage(), + wx.ART_COPY: images.getCopyImage(), + wx.ART_PASTE: images.getPasteImage() + }) + def CreateBitmap(self, id, client, size): + bmp = wx.NullBitmap + if id in self.images: + img = self.images[id] + # Alpha not implemented completely there + if wx.Platform in ['__WXMAC__', '__WXMSW__']: + img.ConvertAlphaToMask() + bmp = wx.BitmapFromImage(img) + return bmp + class Frame(wx.Frame): def __init__(self, pos, size): - pre = wx.PreFrame() -# pre.SetExtraStyle(wx.FRAME_EX_METAL) - pre.Create(None, -1, '', pos, size) - self.PostCreate(pre) - #wx.Frame.__init__(self, None, -1, '', pos, size) + wx.Frame.__init__(self, None, -1, '', pos, size) global frame frame = g.frame = self bar = self.CreateStatusBar(2) @@ -168,6 +199,7 @@ class Frame(wx.Frame): menu.AppendSeparator() self.ID_LOCATE = wx.NewId() self.ID_TOOL_LOCATE = wx.NewId() + self.ART_LOCATE = 'ART_LOCATE' self.ID_TOOL_PASTE = wx.NewId() menu.Append(self.ID_LOCATE, '&Locate\tCtrl-L', 'Locate control in test window and select it') menuBar.Append(menu, '&Edit') @@ -181,10 +213,13 @@ class Frame(wx.Frame): menu.Check(self.ID_SHOW_TOOLS, conf.showTools) menu.AppendSeparator() self.ID_TEST = wx.NewId() + self.ART_TEST = 'ART_TEST' menu.Append(self.ID_TEST, '&Test\tF5', 'Show test window') self.ID_REFRESH = wx.NewId() + self.ART_REFRESH = 'ART_REFRESH' menu.Append(self.ID_REFRESH, '&Refresh\tCtrl-R', 'Refresh test window') self.ID_AUTO_REFRESH = wx.NewId() + self.ART_AUTO_REFRESH = 'ART_AUTO_REFRESH' menu.Append(self.ID_AUTO_REFRESH, '&Auto-refresh\tAlt-A', 'Toggle auto-refresh mode', True) menu.Check(self.ID_AUTO_REFRESH, conf.autoRefresh) @@ -194,12 +229,16 @@ class Frame(wx.Frame): menu = wx.Menu() self.ID_MOVEUP = wx.NewId() + self.ART_MOVEUP = 'ART_MOVEUP' menu.Append(self.ID_MOVEUP, '&Up', 'Move before previous sibling') self.ID_MOVEDOWN = wx.NewId() + self.ART_MOVEDOWN = 'ART_MOVEDOWN' menu.Append(self.ID_MOVEDOWN, '&Down', 'Move after next sibling') self.ID_MOVELEFT = wx.NewId() + self.ART_MOVELEFT = 'ART_MOVELEFT' menu.Append(self.ID_MOVELEFT, '&Make sibling', 'Make sibling of parent') self.ID_MOVERIGHT = wx.NewId() + self.ART_MOVERIGHT = 'ART_MOVERIGHT' menu.Append(self.ID_MOVERIGHT, '&Make child', 'Make child of previous sibling') menuBar.Append(menu, '&Move') @@ -228,24 +267,16 @@ class Frame(wx.Frame): # Use tango icons and slightly wider bitmap size on Mac if wx.Platform in ['__WXMAC__', '__WXMSW__']: tb.SetToolBitmapSize((26,26)) - new_bmp = images.getNewBitmap() - open_bmp = images.getOpenBitmap() - save_bmp = images.getSaveBitmap() - undo_bmp = images.getUndoBitmap() - redo_bmp = images.getRedoBitmap() - cut_bmp = images.getCutBitmap() - copy_bmp = images.getCopyBitmap() - paste_bmp = images.getPasteBitmap() else: tb.SetToolBitmapSize((24,24)) - new_bmp = wx.ArtProvider.GetBitmap(wx.ART_NORMAL_FILE, wx.ART_TOOLBAR) - open_bmp = wx.ArtProvider.GetBitmap(wx.ART_FILE_OPEN, wx.ART_TOOLBAR) - save_bmp = wx.ArtProvider.GetBitmap(wx.ART_FILE_SAVE, wx.ART_TOOLBAR) - undo_bmp = wx.ArtProvider.GetBitmap(wx.ART_UNDO, wx.ART_TOOLBAR) - redo_bmp = wx.ArtProvider.GetBitmap(wx.ART_REDO, wx.ART_TOOLBAR) - cut_bmp = wx.ArtProvider.GetBitmap(wx.ART_CUT, wx.ART_TOOLBAR) - copy_bmp = wx.ArtProvider.GetBitmap(wx.ART_COPY, wx.ART_TOOLBAR) - paste_bmp= wx.ArtProvider.GetBitmap(wx.ART_PASTE, wx.ART_TOOLBAR) + new_bmp = wx.ArtProvider.GetBitmap(wx.ART_NORMAL_FILE, wx.ART_TOOLBAR) + open_bmp = wx.ArtProvider.GetBitmap(wx.ART_FILE_OPEN, wx.ART_TOOLBAR) + save_bmp = wx.ArtProvider.GetBitmap(wx.ART_FILE_SAVE, wx.ART_TOOLBAR) + undo_bmp = wx.ArtProvider.GetBitmap(wx.ART_UNDO, wx.ART_TOOLBAR) + redo_bmp = wx.ArtProvider.GetBitmap(wx.ART_REDO, wx.ART_TOOLBAR) + cut_bmp = wx.ArtProvider.GetBitmap(wx.ART_CUT, wx.ART_TOOLBAR) + copy_bmp = wx.ArtProvider.GetBitmap(wx.ART_COPY, wx.ART_TOOLBAR) + paste_bmp= wx.ArtProvider.GetBitmap(wx.ART_PASTE, wx.ART_TOOLBAR) tb.AddSimpleTool(wx.ID_NEW, new_bmp, 'New', 'New file') tb.AddSimpleTool(wx.ID_OPEN, open_bmp, 'Open', 'Open file') tb.AddSimpleTool(wx.ID_SAVE, save_bmp, 'Save', 'Save file') @@ -257,22 +288,28 @@ class Frame(wx.Frame): tb.AddSimpleTool(wx.ID_COPY, copy_bmp, 'Copy', 'Copy') tb.AddSimpleTool(self.ID_TOOL_PASTE, paste_bmp, 'Paste', 'Paste') tb.AddSeparator() - tb.AddSimpleTool(self.ID_TOOL_LOCATE, - images.getLocateBitmap(), #images.getLocateArmedBitmap(), + bmp = wx.ArtProvider.GetBitmap(self.ART_LOCATE, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_TOOL_LOCATE, bmp, 'Locate', 'Locate control in test window and select it', True) - tb.AddSimpleTool(self.ID_TEST, images.getTestBitmap(), 'Test', 'Test window') - tb.AddSimpleTool(self.ID_REFRESH, images.getRefreshBitmap(), - 'Refresh', 'Refresh view') - tb.AddSimpleTool(self.ID_AUTO_REFRESH, images.getAutoRefreshBitmap(), + bmp = wx.ArtProvider.GetBitmap(self.ART_TEST, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_TEST, bmp, 'Test', 'Test window') + bmp = wx.ArtProvider.GetBitmap(self.ART_REFRESH, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_REFRESH, bmp, 'Refresh', 'Refresh view') + bmp = wx.ArtProvider.GetBitmap(self.ART_AUTO_REFRESH, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_AUTO_REFRESH, bmp, 'Auto-refresh', 'Toggle auto-refresh mode', True) tb.AddSeparator() - tb.AddSimpleTool(self.ID_MOVEUP, images.getMoveUpBitmap(), + bmp = wx.ArtProvider.GetBitmap(self.ART_MOVEUP, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_MOVEUP, bmp, 'Up', 'Move before previous sibling') - tb.AddSimpleTool(self.ID_MOVEDOWN, images.getMoveDownBitmap(), + bmp = wx.ArtProvider.GetBitmap(self.ART_MOVEDOWN, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_MOVEDOWN, bmp, 'Down', 'Move after next sibling') - tb.AddSimpleTool(self.ID_MOVELEFT, images.getMoveLeftBitmap(), + bmp = wx.ArtProvider.GetBitmap(self.ART_MOVELEFT, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_MOVELEFT, bmp, 'Make Sibling', 'Make sibling of parent') - tb.AddSimpleTool(self.ID_MOVERIGHT, images.getMoveRightBitmap(), + bmp = wx.ArtProvider.GetBitmap(self.ART_MOVERIGHT, wx.ART_TOOLBAR) + tb.AddSimpleTool(self.ID_MOVERIGHT, bmp, 'Make Child', 'Make child of previous sibling') tb.ToggleTool(self.ID_AUTO_REFRESH, conf.autoRefresh) tb.Realize() @@ -1798,6 +1835,8 @@ Please upgrade wxWidgets to %d.%d.%d or higher.''' % MinWxVersion) # Add handlers wx.FileSystem.AddHandler(wx.MemoryFSHandler()) + self.toolArtProvider = ToolArtProvider() + wx.ArtProvider.Push(self.toolArtProvider) # Create main frame frame = Frame(pos, size) # Mac does not set the correct size -- 2.45.2