]> git.saurik.com Git - wxWidgets.git/commitdiff
Version 0.1.5-1
authorRoman Rolinsky <rolinsky@femagsoft.com>
Tue, 26 Apr 2005 18:49:44 +0000 (18:49 +0000)
committerRoman Rolinsky <rolinsky@femagsoft.com>
Tue, 26 Apr 2005 18:49:44 +0000 (18:49 +0000)
Added wxWizard, wxWizardPageSimple (only from pull-down menu).

Hide command for test window.

Replacing classes works better.

Added Locate tool.

params.py, xxx.py: some window styles were fixed
(to correspond more to the docs)

xrced.py: subclass bug fixed

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

wxPython/wx/tools/XRCed/CHANGES.txt
wxPython/wx/tools/XRCed/globals.py
wxPython/wx/tools/XRCed/images.py
wxPython/wx/tools/XRCed/params.py
wxPython/wx/tools/XRCed/src-images/Locate.png [new file with mode: 0644]
wxPython/wx/tools/XRCed/src-images/LocateArmed.png [new file with mode: 0644]
wxPython/wx/tools/XRCed/tree.py
wxPython/wx/tools/XRCed/xrced.py
wxPython/wx/tools/XRCed/xrced.xrc
wxPython/wx/tools/XRCed/xxx.py

index 430ce929820f4f0d477cc836f0f747d2f0cfe036..3a0764b63402248b235d54b940b82cef5a87af4a 100644 (file)
@@ -1,3 +1,14 @@
+0.1.5-1
+-------
+
+Added wxWizard, wxWizardPageSimple (only from pull-down menu). 
+
+Hide command for test window.
+
+Replacing classes works better.
+
+Added Locate tool.
+
 0.1.4-1
 -------
 
index 0a9ca2856a9372b3d577c28d590693493561e32f..19467981fa095f570a4d9e38dd70292906a43609 100644 (file)
@@ -6,12 +6,16 @@
 
 from wxPython.wx import *
 from wxPython.xrc import *
+try:
+    from wxPython.wizard import *
+except:
+    pass
 import sys
 
 # Global constants
 
 progname = 'XRCed'
-version = '0.1.4-1'
+version = '0.1.5-1'
 # Can be changed to set other default encoding different
 defaultEncoding = sys.getdefaultencoding()
 
index a8696676ea974eedd8181cddd5270aca13b2bea3..8049fba30c6263c3cd1aa90b58c35d1d721f69af 100644 (file)
@@ -10,7 +10,7 @@ def getAutoRefreshData():
     return \
 "\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xfaIDATx\x9c\xb5T\xbb\x0e\x830\x0c<'\x1d\xe8\x9f2\x06X*>\xa0\xea\xd2\
+\x00\xfaIDATH\x89\xb5T\xbb\x0e\x830\x0c<'\x1d\xe8\x9f2\x06X*>\xa0\xea\xd2\
 \xd6c\xff\xb4,m:\x01\xc1\x8a\x93@\x95\x932\x90\xc7\x1d\xf6\xd9&2\x165a\xaa\
 \xb2\x038\x95^|\x7f?^\xee\x9d\x8d\xa5\xdc\xbb\xa2\x08B\xf2\x17sR\xb4X`~\x1c#\
 \x0f\xff<'\x92\x8c F\xde\xf5\x03I\x91\xe7\xe3\xae\x8a\x14{\xd0:W\x94s\t\xd2\
@@ -19,7 +19,7 @@ def getAutoRefreshData():
 \xc8\x14\x01\xf1\x08\x0e\x8d\x8a0E\xd3%}\xb7\xfa,\xca6Z\xaaS\xdd\xb4\x1a|H \
 \x14\n\xbfi\xdc\xd6<7\xbc\x08JdM\x0e\xcbU\x1a\x18+e@T\x1d\x19\x9b\\\x13\xe0\
 \xe7\xa5\xed3\xb3\xd7\xdegS\x14\x1b\r\xda\xf8\x8e\xa1\xb8\x0fbf\xcb\t\xfb\
-\x97\x00\x10\x1f\xcb)\xf2\xdd\x02GP\xbd\xd1~)\x14\xa25\xfeqL\x1d\x00\x00\x00\
+\x97\x00\x10\x1f\xcb)\xf2\xdd\x02GP\xbd\xd1~)\x14\xa25\xbe/\xa7J\x00\x00\x00\
 \x00IEND\xaeB`\x82" 
 
 def getAutoRefreshBitmap():
@@ -37,9 +37,9 @@ def getAutoRefreshIcon():
 #----------------------------------------------------------------------
 def getCopyData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
+"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xdbIDATx\x9c\xed\x951\x0b\x830\x10\x85\xdf%\x19\xf2sm\xbb\xb8\x14\x04\
+\x00\xdbIDATH\x89\xed\x951\x0b\x830\x10\x85\xdf%\x19\xf2sm\xbb\xb8\x14\x04\
 \x97.m\xfd\xa9\x1do\x88^\x07\xa9T\xbd\x0b\x8a\x95.>8\x88\x07\xb9\x8f\xf7L\
 \x08\x91\xf3\xd8Sn\xd7\xe9\x07`\x89\x82\xd6\x94\xae\x15\xadO\xce\xd3O\x00\
 \x00\xc0\x89G\xdf1DH\xd7\xcaZ\xc8\xaa\x888\xb1\xe9\xce\x12i\xf7@\xbaV81b\x88\
@@ -47,8 +47,8 @@ def getCopyData():
 \xca\x12\xa7\x12\xd2]\xd5\xe8\xb2\x00N<\xaa)x\xeaB\x85\x90\xf3\xb3\x02 \x9cX\
 \x00L\xaa\x12Nl\x16PI\xd34\xf2=k\x93\x83%\xf1\x99\xf7@\xdfT\r\xe0\xa5R\x01\
 \xe4<=\x1f\xf7Y\x9eE\xf12\xe1\x16\xd4tp:_\x94c\xd7\xff\xc4\xcd\x0er\xfa\x9c\
-\x98]\x00\xe4j5\xba\xec\x9e\xe3\xc9\xfc;\xe0\r\x05\xd7\x89\x15\x89\xed\x9f\
-\xd4\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x98]\x00\xe4j5\xba\xec\x9e\xe3\xc9\xfc;\xe0\r\x05\xd7\x89\x15\xc8\xd1'\xd6\
+\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getCopyBitmap():
     return BitmapFromImage(getCopyImage())
@@ -67,15 +67,15 @@ def getCutData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xc9IDATx\x9c\xcdTA\x0e\xc3 \x0cs\xc2\x07\xf6T\xb6\x9d+M\xday[\x9e\xda\
+\x00\xc9IDATH\x89\xcdTA\x0e\xc3 \x0cs\xc2\x07\xf6T\xb6\x9d+M\xday[\x9e\xda\
 \x0f\xac\xec\xd2l\x88\x15\x02HHX\xca\xa5ml\xe2\x98\x12\xb1\xc3H\xf0P\xf6i\
 \x04\xc2\xf6\x0eC\x05\x00\xe0\xf5|\x1c\x8a\x98\xe2\xc4\xce,\x00\x01@\xc8=\
 \x17\x91\xbfwZU\x13\x10;J\xa7\xd0\x93\x8bH\xb9\xb76\xa6JH\xec(%?_\xae\x94\
 \xebkNQ\xba\x8b\x12y\x93\x80\xda\xe4\xbd\x07`[\xd3,p\x04\xeb\xf4@\xd3\x0e\
 \x96\xdd\x9a\xdb^\x00\xf1\xdd\x14h\x9e \xb6&lK\xf8\tw\n\x94HDN\xdfo\xba\x04\
 \xb4Q\x89J\xc8\xdd\xf49~v)t\xb9\xde\xaf\x00\xca\x13\x9a)\x8a\xfdU"\x8dglK.\
-\xb2U1\xad!\xca\xa1\xfa\x1e\xf4b\xce%O%\xf0\x01\x1c\x13_\xd0\xfc\xb7\xc0\x00\
-\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xb2U1\xad!\xca\xa1\xfa\x1e\xf4b\xce%O%\xf0\x01\x1c\x13_\xd0\x15\xbcWd\x00\
+\x00\x00\x00IEND\xaeB`\x82' 
 
 def getCutBitmap():
     return BitmapFromImage(getCutImage())
@@ -92,31 +92,29 @@ def getCutIcon():
 #----------------------------------------------------------------------
 def getIconData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
-\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x025ID\
-ATx\x9c\xedV\xd1\x91\xe3 \x0c}{\xb3e\x98>L!J\x1fK\xea\x08\xe9C\x14\x02}h\xfb\
-\xd0}8\xc2\x80\x1d\'\x97\x9b\x9d\xfc\xec\x9ba\x1c\x88\x90\x1f\xd2\x93\xf0\
-\x87\xaa*\xde\x88?\xef|9\x00|\x02@)\x051F\x00@\x8c\x11\xd34\x01\x00\xce\xe73\
-D\x04!\x04\xcc\xf3\x8c\xeb\xf5\x8a\x9c\xf3\xc6\x89\xf7\x1eDT\xf7\x19F{"\x02\
-\x11\xf5\x9b\xf5\x06\xef\xbd\x02\xd0\x10\x82\xaa\xaa\xc6\x18\x15\x806&JDum\
-\x1cD\xa4-\x9cs\xbbv\xe6\xdfP\xbd\xe7\x9c\x15\x80:\xe74\xe7\\\x1d\xe4\x9c7\
-\x04\x98\xb9\xae\x89\xc8\x86\xa8\x91\'\xa2\xba\xdf\xfc\x8f>\xd7]M\x14\xec9\
-\x9ej\x8f\xc0M\xc4\xbb\x91\x1a\xedl\xbd\xf5\xdb\x11hO32m\x1d\x84\x10\x94\x99\
-\x95\x99\xbb5UUf\xde\x10:\xc2\xc6\xaa\xcd\xdd\x88#\r\x88\xc8K\x04\xba2,\xa5@\
-D\xea<\xa5\xb4Q<\x00\x84\x10\xc0\xcc`fx\xef\xab\xe2_B\x1b\xfe6\xf7&\xc8\xbd\
-\x08\xb4\xb9\xb5\x13\xb7y5\xbb\x18c\xb7\x7fO[5\x02)%\xe4\x9cAD`f8\xe7 "8\x9d\
-N\xff|(\xab\xf5\x94\x12J)\x00\x96\xe8ZO`\xe6>\x02{e\xd7\x96\x8d\xe5\xf7(\x02\
-\xde\xfb\xee\xb4!\x84]\xad\x8c\x95\xf1\t\x009g\xcc\xf3\\\x07\x00\xcc\xf3\x8c\
-\x10\x02D\xa4F\xc6\xf2\xed\x9c\xab\x07\xb0.8\xe2r\xb9`\x9a\xa6\x87\x9d\xf0C\
-\xf5\xf72\xfa9|\x7f\x03\x96\x81\x9d,\xfd<\x81\x9c\x01+\xa2{\x89~{\n\xdeN\xe0\
-\xa9\x14\xa4\x04\x94\x02X\x97\xf6~\x19\xb7\x8a\x05\xb0\xe4\xfbz]m\x9c\xeb\
-\xff\xbf\x8bG\x97E\xce\xaaK\x06\xfb1ti\rak\xe3\xfd\xfa\xfb\x1e\x1e\x12h\x9d1\
-/\xc3\xd6\xac\xa5\xb7k!,\xf3\x91\xd0K\x04\xcc\xb1sK$\x0cD\xabc\xe6u>t\xe3\
-\xa7"\xf0\x94\x06D\x96\x9c?\xc2\xd7\xd7v\xbe\xf3\r\xdb\xe1)\x02G\x82j\xae\
-\x85\x97\xf0\x14\x81i\x02b\\\x9e\xc0Z\x11#\xb1R\xfa\x8ew\xbb\x89\x8fq\xa4\
-\x01\x91^\\\x06\xe7z\x11\xc6\xb8\xda\x99V\xc6\xea\xb9\x87\x87U\xb0W^\xa3S\
-\x91^p-\xe9\xff&\xa0\xba(\xbd}\xc1\xf0M\xb1Kb,\xd9{\xf8\xfd\x1ex;\x81\xbf\
-\x12\x81S\xa3\xdc\xfd\r-\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x02\x00\
+\x00\x00\xfc\x18\xed\xa3\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x01\xf9IDATH\x89\xddV\xd1\x8d\xdb0\x0c\xe5\x1dn\x0ck\x0fk\x10f\x8fc\xe6\
+\x88\xbc\x07=\x88\xb4\x07\xb3\x07\xfbA\x87\x92m\xd9\xe7\xa2\x08\x8a\xf6!\x08\
+,S\xe2#\xf9(\xc9\x1f\xaa\n\xef\xc4\xe7[\xbd\x03\xc0\x17\x00\x94RRJ\x00\x90R\
+\x1a\x86\x01\x00\xee\xf7\xbb\x88\x10\xd18\x8e\xd34\xe5\x9c\xdb51FD\xb4\x99\
+\x86v\x0e""b\x9d\xad\xaa\xaa\x1ac\x04\x00"RU#s\xd3j\xf6\x0b\x88\xa8/\x84\x10\
+6V\xf3cX\xbc\x18\x7f\x08!\xe7l\x0br\xce-\x013\xdbPDZz\x8b\x06\x11m\xbe\xe7\
+\xe1\xcb\xc1\xa9,\t\xfbo\x03\xdc\x10xS\x1cY\xed\x8d{\xa8\x04\x1eZ\xcb\xef\
+\x0b\x88\x88\x99\x99\xd9\x87\xaa\xca\xcc-Y\x17+\x9bW\xb3}\xd9\xd5@D.\x12\xd4\
+6-\xa5x\x12\xf3<\xefu\xb3\x0c\xac\x86\xd34\xedY\xfb\xf0\xfax\xf5M\xed#\r,j/\
+\xb1YSJ>\x7f\xa3\xe2\xa7\x87\x9csFDf\x0e!\x88\xc8\xedv\xbb\x12\x9f\x11\xcc\
+\xf3\\J\xb12X#y\xf5@U7\xad\xe9\xadf\x85\xeef\x10c\xf4\x90\x89h\xc3\xda6\xd5\
+\x97\xf9\x1d_\x00\x80q\x1c\x89HD,\'K\xd9\xf5\xb7m\xdc\xba{<\x1e\xc30\x1c\xed\
+\xe4\x0f\xfd\x1f\x0e\xbb?\xc7\xf3\tV\xa1\xce\x9e9\xd9#\xd7\xc1\xac\x00\xdau\
+\xf6\xf6\x12\xfdU\r\xe6\x19J\x01;>b\x84\x18a\x1c\x17\xd3\xf3\t\xd3\xb4\x98B\
+\xa8\xef;8*k\xceKY\xfd\xd7\x1c\x1fJ\xb42\xc5x\xa8\xc1!\x81\xafd\xae\x1a\xda\
+\x01\xe3C"e^\x91]%0\x17!\xa8\xdf\x0b\x88\x8b\x0b\xe6\xe5\xb99,\xce28\xd3@\
+\x04b<\xb4~\x7f\xaf\x9e\xd7\xdf\x05\x15g\x04]\xf5v7\xfc\x0f8#\x18\x06H\t\xec\
+\xeb\xc4\xda\xa9\xa5,\xa5\xee\xdbR\x8e\xbdt5\x10\xa92\x1aB\xa8"\xa7\xb4XM\
+\xa1\xb6\xdf\xae\x8a\xac\xbbFl\xd7\x8bTU=\x8e\xdf&PU\xe6\xea\xa8\xb9B\xb6\
+\x1cm\x1f\xef\xf1\xef\xdf\x07o\'\xf8\x05\x02\xba\x08\xf5X\n-\xd8\x00\x00\x00\
+\x00IEND\xaeB`\x82' 
 
 def getIconBitmap():
     return BitmapFromImage(getIconImage())
@@ -130,16 +128,82 @@ def getIconIcon():
     icon.CopyFromBitmap(getIconBitmap())
     return icon
 
+#----------------------------------------------------------------------
+def getLocateData():
+    return \
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
+\x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
+\x01\x84IDATH\x89\xb5U\xc1\x8d\x830\x10\\\'W\x07\xc2=\xe4\x83RG>i\xc2\xba\\\
+\x1d\x10\xdc\x04\x9f+$\x1fz\x00\xd1\x88\xef\x01k\xc6\xeb\x05r\xd2\xddJH\x04\
+\xdb3\xbb\xb3\xb3\x8e1\xa73\xfdg|\x1cm(\xab"\xec\xad\x8f\xaf\xc9\xec\xad\x9b\
+\xad\n\x12`\xbbqz8&:\xed\x82\xdb\x15\xdc]\xdc\x0c8,\xefb}\xab\xd2\x8c \x01_\
+\x80# \xc4\xd8M&!\xda Iz\xa0\x81\x13\x11}>\xbe\x8c\x06\x10\xbf\xdf\x8b@v\xae\
+\xae\xac\x8a\x80r%=(\xabe\xa3\x00/\xefz\xf9c\xb7\x02\xc5=\x03\x91\xbb\xb9H\
+\x1e%\xc2\xec$x\x94\x03z\xe0.\x8e\x90\x18\xc9\xfc\xb7\x8fI\xa4=\x00\xb7 \xf8\
+\xb3\xa9\x03g\x84\xebc7\xe5\xd5-\x18\xcf\xa6\x0e9\x01d\xcf\x81\xe0\xe3k2\xee\
+\x967\x9c\xc1\xb0\n\x8e\xd8\x83\xa8?x\x1b\x7fK\x9f\'\x86P\xcep\x1f\xd49\xd0\
+\x82\xb3\xfcmdW\x05J\xe0{O\x9a$DsE\xcf\xa6\x0er\x8f\xef}\xb2/#\xf0\xbd\x8fZr\
+\x03\xe5\x1c\xb0\\h\xe1-;\xa7\x12-Zb\xd3dF\xb8\xce.\xd3086\x07M\x1d"\x11ha9h\
+\\U~]\x0fDd\xd3\xec\x18\x88\x07(j~\xa1\x0c\x9c#\x9bd"\xb0\xe2\x90g\xae\r\x9a\
+\x06.M\x91\xd9T#\xd1$J\xbe\x0bpL\xe6\xcf\xfep4\xf0]\x02\xa2\xd9-xqi\x81\x92H\
+\xf0C\x02$"ZoI\xa9\xb3\x06\xbc2\x9c\xceo?\xf6j\x83\xbd\xda\xd0\xb6mx\xf7\xcc\
+\x0f\x93Y\xfb-\xb8Y\x01\xd4\x00\x00\x00\x00IEND\xaeB`\x82' 
+
+def getLocateBitmap():
+    return BitmapFromImage(getLocateImage())
+
+def getLocateImage():
+    stream = cStringIO.StringIO(getLocateData())
+    return ImageFromStream(stream)
+
+def getLocateIcon():
+    icon = EmptyIcon()
+    icon.CopyFromBitmap(getLocateBitmap())
+    return icon
+
+#----------------------------------------------------------------------
+def getLocateArmedData():
+    return \
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
+\x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
+\x01zIDATH\x89\xb5U\xc1\x8d\xc2@\x0c\x9c\xe5\xeeO\x07\x14@\x03@!H\x14\xc0?\n\
+\xd4\x91D\xfb\xa7\x00$\n\x01\x1a\xa0\x00:\xa0\x82\xe5\x81\x86L\xbc\xde \xa4\
+\xbby\xc6\xce\x8c=\xb6\x93\x10&?\xf8O\xfc~J\xd8\xccgi,~\xbc\xdd\xc3X<\x94:P\
+\xe2j\xea\xbf\x1c\x1f\x9f\x85&c\xe4\xd5\xb4\'\xbf\xac+\xc4\xc7\x8b\xf4\xb2\
+\xae`\xe3\xa5N3\x01%\'1\t\x15\xab\xf3=\xa8PId \xe0\x91\x03@\xbd\xdb\x87z\xb7\
+\xcf,\xa8w\xfb\xb0:\xbf\xac)\x89\x0cf\xb0\x99\xcf\x92G~^\xf9\xed\x93\x1c\x00\
+\x98\x13\x1f\xc0b[\x81\x05\xbd;PeKN;t\x06\x97u\x05\x15V\xb1\xeb!\xfa\x16\xe9\
+\xb6(y\xd76\xc9ZD{lw\xe4\xe8\xda&e\x02Z=\xa1\xe4\xc7\xdb=,\xb6\xf9\xc0I\xa6]\
+\x10\xd9\xa1\xb1=Zv=Dl\xe6\xb3\xc4=\xa7\x98Z\xca\x9cL\xd9\xeb\xa0\x04V\xf9-\
+\xb2\x0e\x06\x16\x9c"<K\x80\x97]]\xdb\xa4,\xe7\x14\x07y\x99\xc0\xf2\x14\xdf^\
+r\x80\xd6\x16\xb5Ks\xbcu\x1eX\xc4o\x8b\x0emi*\xd28\xb7\xcc\xe3 \x8a\x87\xe6\
+\x1d\x91\x85\xae\xb0=4v\x95\t\x00\xfd.\xabH\xd76\x89\x1b\xa6\x9e[r\xc6\xb3K\
+\x06zo\x99\xa8\x95{\x87V"Wdk\xea\x89x\x16\xe9sK\xae\xc5\xfc\xd9\x0f\xc7#\x1f\
+\x15\x00\x86\xbe\x97`\xe7a\xe3\xa3\x02*\x04\xf4\x9f\x11\xeb\xb3G\xfc\x95\x00\
+A\xdbtK>\xe1\t\xf2\xe2\x0b\rG\xef\x97\xb3\x00\x00\x00\x00IEND\xaeB`\x82' 
+
+def getLocateArmedBitmap():
+    return BitmapFromImage(getLocateArmedImage())
+
+def getLocateArmedImage():
+    stream = cStringIO.StringIO(getLocateArmedData())
+    return ImageFromStream(stream)
+
+def getLocateArmedIcon():
+    icon = EmptyIcon()
+    icon.CopyFromBitmap(getLocateArmedBitmap())
+    return icon
+
 #----------------------------------------------------------------------
 def getNewData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00uIDATx\x9c\xed\xd5\xc1\n\xc0 \x08\x06\xe0_\xeb\xe0\xcbo{]\x0f\x95;\xb5S\
+\x00uIDATH\x89\xed\xd5\xc1\n\xc0 \x08\x06\xe0_\xeb\xe0\xcbo{]\x0f\x95;\xb5S\
 \xabX\xc4\x18K\xe8\x92\xd0G\xa2E\xc4\x0e3\x83\xa7\x9e\xbe\x80\x9e\xf0\xb5\
 \xa4\xa5h\xb5<\xb1\xa3!\x00\x004hq_\xbc\xc0R\xb4\x162T"\r\xda\xbc\xe5\x10 ^\
 \x00\xd4K\xf9\x18\xd0\xa0\xd7\x02\x80c\xdf\x8a\xc8\xf7\xdbt\x01?\x00\x9aOE\
-\x1e\xa6)\x00\xb1\xa3\xbb\x01\xea\rZ_\xe6\xeb\xc0\tP=$d\x0e\x7f\xfbW\x00\x00\
+\x1e\xa6)\x00\xb1\xa3\xbb\x01\xea\rZ_\xe6\xeb\xc0\tP=$d\xfd\x92a\x0c\x00\x00\
 \x00\x00IEND\xaeB`\x82' 
 
 def getNewBitmap():
@@ -159,7 +223,7 @@ def getOpenData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xccIDATx\x9c\xed\x95A\x0e\x820\x10E_\x8b\x8b\x1e\xcc\x85\xd7Q\xcf\xa1r\
+\x00\xccIDATH\x89\xed\x95A\x0e\x820\x10E_\x8b\x8b\x1e\xcc\x85\xd7Q\xcf\xa1r\
 \x1c\x16\x1e\xac\x0bJ]\x90\x12(t\x06\t,L\xfc\t\x81\x90\xf2^g\xa6\t\xc6\xd8\
 \x8a#c\x0f\xa5\xff\x05kr\xda\xfaa\xecBL\xcf\xc6V\xa6\xb4nS\x05\xb1\x0b\xd1\
 \xd8\xca\xa4+\xc9\xc6\xd2A\xbe\xd71M\xf0\xbc\x9ab\x8b\xd6\xb6 _\x9bg\xb1\x82\
@@ -167,7 +231,7 @@ def getOpenData():
 \xf5|\x14w\xaf\x08\xdcD\xb2|\xd7#\xb4h\n\x93\xda4\x01\xae\x1dr\x0eo\xde:\xfc\
 r\xee[v\xbd\xdd\x07\x892\x03\xbe\x82\xd7u={/V\xb0\x05>\xde=\x08\x15\xec\x01\
 \x07a\xc8:\xba\x8f\x04/\n@?\xdf\xe3\x94\xe0\xa2`\xaf\xfc\xfe\x0f\xe7p\xc1\
-\x07\x0c,c\x92\xc7/.\x8c\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x07\x0c,c\x92!#\x88\xcc\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getOpenBitmap():
     return BitmapFromImage(getOpenImage())
@@ -186,7 +250,7 @@ def getPasteData():
     return \
 "\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xddIDATx\x9c\xed\x95\xbb\x0e\xc3 \x0cE\xaf\t\x03\x9f\x9b\xb6KG\x8fY\xda\
+\x00\xddIDATH\x89\xed\x95\xbb\x0e\xc3 \x0cE\xaf\t\x03\x9f\x9b\xb6KG\x8fY\xda\
 \xfejG\x06\x12:T\xa4\x04L\x83\x920T\xaa\xa5(\x18\xc1=\xc6\xe6A\xa4:\xb44\xd5\
 T\xfd\x0f\xa81];\xd0O\xa3\x8f}R\x1d\xd5\xcc\xa3\xd2.J\x05\x01\xc0\xba\xf7\
 \xdf\x08a\x95\x80\xe2\n\xfc4zf\x9e}f\x86u\x1f\xe1\xd0N\xc6x\t\xb2Z\x83 \x1e\
@@ -194,7 +258,7 @@ T\xfd\x0f\xa81];\xd0O\xa3\x8f}R\x1d\xd5\xcc\xa3\xd2.J\x05\x01\xc0\xba\xf7\
 1\x00\x00\xac\xbbf}F\x0f\x00d\xfa\x8e\xec\xe6`\xa3\x07P\xb2m6\x9dd\xa3\x87\
 \xf9\x8b\xfb\x80|'mZA\x9a\xa6\xe0\xc7\xc0]\x00IH\xaaM\x11@\xaa#f\xce\x0eM(dI\
 \xac\x1a\x10 i>\xfb\xfe)F\xbf\t\x00\x00\xa7\xf3eq\xb7\x90\x92\xaf\x83oV\xbcM\
-\x8f\xb2\xdf\x7f\xd1^\xd8\x83K\xcb \xf2\xd0I\x00\x00\x00\x00IEND\xaeB`\x82" 
+\x8f\xb2\xdf\x7f\xd1^\xd8\x83K\xcb\xd7~\xc8I\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getPasteBitmap():
     return BitmapFromImage(getPasteImage())
@@ -213,14 +277,14 @@ def getRedoData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x17\x00\x00\x00\x16\x08\x06\
 \x00\x00\x00+v\x07\x05\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xb7IDATx\x9c\xed\x941\x0e\xc20\x0cE_\xd2\x0eA\xeaE\x18;2Fbb\xac\xd4\x03\
+\x00\xb7IDAT8\x8d\xed\x941\x0e\xc20\x0cE_\xd2\x0eA\xeaE\x18;2Fbb\xac\xd4\x03\
 00p"\x06\x8e\x80\xd4+\xf4\x08\\\x86\x81%5C\x15\x86R\xd2\xb4"b\xe9\x97\xbc\
 \xfc\xc8\xcf\x8e\x15G)\x9d\x91J:\x19y\x85\xff\x1c.\x9d\x93d\xf0\x98\x02\xb3\
 \xe0\xd29\xf1q8\xee\xa8\xce6X@\xc5\xbcs\x0f\xb0u\xc9\xa60\x98\xdc\x00`\nx>\
 \xa0\xb9\xb6(\x9d\xa9\xd9p\xe9\x9c\xd8\xba\x04\xa0\xbd\xdd\xdf~u\xb2\x90Cs\
 \x19\x07\xf7t\x9d\x05\x03\x90r\xbf\x15@\x86\xfe\xd0\xfb\xc8]\x02\xf6gS\x8d\
 \x05\xc7\xe2g\xfd\xf5\xda\x13\xfa\xdf\x12-\xed8\n\xee\x0b\xc4l\xe3h\xee\xfa\
-\x9f\xaf\xf0h\xbd\x00xo@\x10\x00\xf9\x03\xbf\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x9f\xaf\xf0h\xbd\x00xo@\x10\x94\x18\xa9\r\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getRedoBitmap():
     return BitmapFromImage(getRedoImage())
@@ -239,14 +303,14 @@ def getRefreshData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xcaIDATx\x9c\xc5\x94\xc1\x0e\x83 \x10Dw\xa1\x17\xff\xd4#m\xbf\xa3\xed\
+\x00\xcaIDATH\x89\xc5\x94\xc1\x0e\x83 \x10Dw\xa1\x17\xff\xd4#m\xbf\xa3\xed\
 \x1e\xf9SOjO$Hve\x90\x10\xe7\xa6\xd1y0,\xc3\xec<\x8d\x94\x1b\xeaND\x0f\xf4\
 \xc3e[\xf7\xf2\xdd\xe4<\xd7\xfe\x83v\x90\x9bG\x91S(\x0cH?k\xe6\xf9\xcak\x90\
 \xd3\x1dh\xe6\xcf\xd7\x9bK\xc8\xef\xfb1!\xf0\x19\xcc!@\x99\x97bkL\xad\xad[\
 \xf1XpxL\xa3\x08E\x91C\x1cHL\xd5\x88\xf2\xa9I\xf9\xb7\xc8\x04L\xcesZ\xd5\x15\
 \xe3*\xa0\xd78ixU\xdc\x0bX\xb6u?\xbb\xa9]U\xd1b\x94OZ\x13\x00\xad\x03"{ \xe0\
 3\x98C8<#\xf1@\x00\xad\x1a\xac\xfa\xd6dvQ)m\xc5e\xc3v\x01\x88\xf4s\xa8]\xc6&\
-\xc0\x15\r\xbfh\x7f\xefOoHY\xd1\x18*\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xc0\x15\r\xbfh\x7f\xefOoH\x13\xe7\xb6\xfc\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getRefreshBitmap():
     return BitmapFromImage(getRefreshImage())
@@ -265,12 +329,12 @@ def getSaveData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\x8bIDATx\x9c\xed\x95\xd1\n\x80 \x0cE\xb7\xe9C\x9f\xed\x0fT~\xae\x0f\x95\
+\x00\x8bIDATH\x89\xed\x95\xd1\n\x80 \x0cE\xb7\xe9C\x9f\xed\x0fT~\xae\x0f\x95\
 =\x84 6W\x86\x12F\x17\x860\xe4\x1e\xa7S\x11IAKQS\xf7O\x004\x97\xf4\xdb\xea\
 \x9f\x98!)Ls\xd9\n\x8c9F\xb781\xe2\xb9\xf34\x9e\x16Ve\x8b\x02\x80S\x1f\x00I\
 \xfd\x03\xd86\r2\x06`\xd0\x83h \xed\xff%\xe0\x8e\xc1\x95\xaa\x00\x9atQ|\xd1$\
 \xf5\xdfE\x80\xa4\xd8\x00\x00_\x1a\xd6Z\x9f\xfad\x0f\x19I!\xf7x\x15\x17\xf0\
-\x7f\x99\xaf\x03v~a?\xc4E\xc5\x7ff\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x7f\x99\xaf\x03v~a?\xc4\xad\x0bS\xb7\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getSaveBitmap():
     return BitmapFromImage(getSaveImage())
@@ -289,7 +353,7 @@ def getTestData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x17\x08\x06\
 \x00\x00\x00\x11!\x8f-\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x01\x1eIDATx\x9c\xb5UK\x92\xc2 \x10}\r.r\x19G\x16.<N\xae0z\x8eh\x8e\x90\xe3\
+\x01\x1eIDATH\x89\xb5UK\x92\xc2 \x10}\r.r\x19G\x16.<N\xae0z\x8eh\x8e\x90\xe3\
 \xb8\x98\x05:\x97q\xe1\x0c.\xc6P|\x1a\xe8L)UTB\xa7y\x1f\x1a\x08\x91\xd2xgSoE\
 \x07\xb0\x92$\xb9\xdf\x1f\x97\xc6Hi\x92\xcc\xa5\xda\x12q\xc0K\x89X\x07\x9b\
 \x8f\xb5\x07\xb6\xd6V\t\xe6\xdc\xcb\xf5\x9b\'"\xa5\xa3n\x8cq\xb7;|\x07\xca=\
@@ -300,7 +364,7 @@ def getTestData():
 \xa2\x92\x0b\xae\xc8\\K\xd5g\x04\x12\xf0V<T\xcf\x12\x84.J \xdcwN=P\xa8\x01)M\
 \xa7\xe3\xe0v\xdb\t\x00p\xfe\xca\xaf\xec\xdd\xd6<\x81{\x1fK\xd5\x03\x8d\x1f\
 \x0e\xf0w*\xa7i\xca\xe2}_\x07\x16\x13\x84Di\xac\x06\xbc\x98\xe0\xbf\xed\x01\
-\xadi\xbd5\x87\xab\x8d\x95\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xadi\xbd5g\xc8u\x0e\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTestBitmap():
     return BitmapFromImage(getTestImage())
@@ -317,31 +381,29 @@ def getTestIcon():
 #----------------------------------------------------------------------
 def getToolBitmapButtonData():
     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\
-\x02/IDATx\x9c\xb5\x96?h\x13Q\x1c\xc7?\x91\x1b^\xc0\xe1\x1ed\xc8\x8d\x19\x1c\
-\xee:\xd9\xadE\x87\xa6\x93\xad\x8b\xedf\xc0E\xbbT\xed\x92:h\xd2-\x14\xfc\xd3\
-E\xd3\x14\xc4\xd4\xc5:X:F\xb7\xcb\x10H\x06!\x1d$9\x07\xe1\x96Bn\x10r`\xe1\
-\xdep\x10\x87p\x05\xa5\xb9\xa4\xa5\xf9\x8e\x8f\xf7\xbe\x9f\xf7\xfd\xbd\xbf\
-\x89\xc1`0`JJ$\x12h\x00]\xa7;-\x06\xd7\xa6e\\\xaf\xd7\xa7\x0b\x88\xa4M\xd2\
-\xc92\xads\xdb\')ml\x02\xcb\xb4\xce\xcc\x83?\x01\xed\xefm\xfa\xfd\xfeX\xf0D\
-\x80hp\xb3\xd1ds\xe3!\xea\xf7.f\xba\x05^\x95\xdaa\x91\xdc\x83\xe5\x89 \xb1\t\
-\x9a\x8d&FZPxj"S\xf3$\xf5\x05dJ\x92\xbde\xf0\xe6\xd9\x1c\xb9\xfb\xb9\xb1\x90\
-s\x01\xd1\x80\x9dw;\xa45\x1b\x99\xca\x82\x96\x01M\xc2\xf5%\x92\x9a@\xd7%\x85\
-5\x83\xd5{\xab\x97O\x90_[\x02!A\x18\xc3\x86PA\xa8\x08BAR\x03\x99\x12\xe8R\
-\xc4\xa6\x88\x05(54\x1cJ\x80\xa6\x13\xa8\xe1"\x07\x08\xd0\x04\x86\xaeF\x1b\
-\x8c\x02D\xdb\xaf\xf4\xf6\x08\xc2\x00P\x10\xfa\xa0\\\x08{gI\x94\xefsph_\x1c\
-\x10\xa9\xfa\xbe\x8a\n\x19B4A\xa0\\\xc0\x87P\xe1y=\xdc\x93>\xa5\x97\xe5\x7f&\
-\xf5\xbfb\x0f\x9a\x10\x02\xa1\x14\x90$8u!\xf4Q\xaaO\xcf\xf3P\xa7\x01\xa5\x8a\
-\x83]\xaf\xc6&\x18\t\xe8:]v\xf7v8n\xd9dn\xb4(o-\xe0\xfb>\xeeI\x8f\xe2+\x1b\
-\x99\xb2\xb0\xeb\xcd\xd8\xd9\xc3\x98\x12U\xf6\xf612\x16\x85\xad\xd7\xb8\xa7\
-\xf3<\xd9n\xf2\xb5\xa18\xf8lS\xfbV\x1bk\x1e\x9b\x00`\xe5\xee\x12G_j\xb4\x8f\
-\xdbl\xbe(2{s\x96\xc2\xf3\x02R\xca\x89\xaf\xf8\x91\t\x16\xb3\x8b<\xde\xc8\
-\xb3|\'K\xabac\x9a&\xd5\x8fUz^\xefB\xef\xc7H\x80\xe7y\x94\xb6\x8b\xac\xaf\
-\xe7\x99\xbb\x9d\xc5\xf9\xe1\xa0\xeb\xfa\xc4\xc6\x91F\x96\xa8\xd3\xed0c\xcd\
-\xe0\xfez\x84\x916\x98\x9f\xcbR\xae\x94\xaf\x0e\x10I)\x85\xf3\xd3\xe1\xc3\
-\xfe\xa7\x0b\x9b\x8f\x05t\xba\x9dK\x99\x9e\x0b\x88\xde\xd0\xabV\x02\x98\xda\
-\xb7\x05\xe0/\xdf\xe4\xdc!\xf6\x85\xad\xfd\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x18\x08\x02\
+\x00\x00\x00o\x15\xaa\xaf\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x01\xfdIDAT8\x8d\xcd\xd4;l\xd3P\x14\x06\xe0?\xc8\xc3\x8d\xc4\xe0+e\x88\
+\xc7\x0c\x0cv\'\xba%\x82\xa1\xeeD\xcaB\xbb\x11\x89\x05\xba\x14\xe8\x922@\xd2\
+-\xaa\xc4#\x0b\xa4\xa9\x84pY(\x03U\xc7\xc0f\x0f\x91\x9c\x01)\x1dPl\x06$/\x95\
+\xec\x01\xc9\x96\x88\xe43X\n\x83\xb7\xe8\xda\xa4\x84\x813\xde\xc7\xa7\xff\
+\xd8W\xa70\x9b\xcd\xb0t\x15\n\x05\t\x80\xe3:\xcb[W\x96\',\xcb\xfa7PZR\xce\
+\x9e\xa6js+9\x1fA\x9cHS\xb5T\x89\x7f\xc5\xe3\xaf\xe30\x0c\xb3\xe8<(=m\x0f\
+\xed\xbd\xdd\xfb\xf4\xf3P-\x8f\x10\x18\x83\xd3v\xe3\xdeF\x8e%Nd\x0fm\xa5\xcc\
+Z\x8fU^\xaa\x15\xe55^\xe2\xfa\r\xe5\xd5\x93j\xe3n#\xcb\x9a\x87\xd2C\xdd7\xdd\
+\xb2d\xf2\x92\x0e\xa9\x02\x89\xe3j\xbd(1Y\xe6\xadme\xeb\xce\xd6%\x125\xb7\
+\xeb`\x1cL\x01\x80\x84\x90P\x9c\xb0\xa2\x04^b2g\xc2Pb\x88\x88\x90\x10\x00\
+\x80A\x92c\n\x01\xc4`\x90\x98"\xd3B\x89\xd2\x1f\xdcy}\x86$\x06\x08I\x04\xf2\
+\x90\xf8i.\x8a\xa2\x93S\xf3\x12\xad\x19o\rJ\x80$\x86\xc4b\xf2\x80\x08\t\x05\
+\x81\xef]\x84\x9d\xe7=\x88\x1e\x94\xf8A2\xc6\x18\x11P\x8c\xa7\x1e\x92\x88(\
+\xf4\x83\x80\xa6q\xa7\xef\x9a\x96!\xbc"\x80\x1c\xd79<\xea\x9e\x8f\xcc\xca\
+\xb5Qo\x7f-\x8a"\xef\xc2o\xbf0yI3-[\x18\'\xb3\xb5\xfe\xd1\xb1R\xd1Z\xfb/\xbd\
+i\xed\xd1\x81\xfdyH\'\x1f\xcd\xc1\x97A\x96\x92\xd9\xda\xe6\xed\xfa\xd9\xa7\
+\xc1\xf8|\xbc\xf7\xac\xbdz}\xb5\xf5\xb4\xc59\xcf\x9f6\x82D\xeb\xfa\xfa\xc3\
+\xdd\xe6\xc6-}44UU5\xde\x1b~\xe0\xffqf\t\xa0 \x08:\x07\xed\x9d\x9df\xf5\xa6\
+\xee~seY\xce\'\xd2\x12\xb46q&+\xda\x8a\xf7\xe3\x81RVjU\xbd\xd7\xef\xfd%\x94\
+\x16\x11\xb9\xdf\xddw\xc7\x1f\x16Q2\xa1\x893Y\xf0\xfe<\x94\xce\xdd\xff\xa2~\
+\x03\xea\xc1\xda"\xef\x96\x12\xae\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolBitmapButtonBitmap():
     return BitmapFromImage(getToolBitmapButtonImage())
@@ -360,10 +422,10 @@ def getToolBoxSizerData():
     return \
 "\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00CIDATx\x9ccddbf\xa0\x040Q\xa4\x9b\x1a\x06\xb00000\xc4'\xc5\xfe'\xdb\
+\x00\x00CIDAT8\x8dcddbf\xa0\x040Q\xa4\x9b\x1a\x06\xb00000\xc4'\xc5\xfe'\xdb\
 \x04F&f\x86\x84\x94\x84\xff\x8cL\xcc\x0c\xd80!\xb9\x81\x0f\x83Q\x03\xa8`\x00\
-##\x133E\t\x89q\xe8g&\x00\xf6\x1a\x0b!\xd5\xcf\xe1\x80\x00\x00\x00\x00IEND\
-\xaeB`\x82" 
+##\x133E\t\x89q\xe8g&\x00\xf6\x1a\x0b!P\x84!\x1e\x00\x00\x00\x00IEND\xaeB`\
+\x82" 
 
 def getToolBoxSizerBitmap():
     return BitmapFromImage(getToolBoxSizerImage())
@@ -380,14 +442,14 @@ def getToolBoxSizerIcon():
 #----------------------------------------------------------------------
 def getToolButtonData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x0c$\xbf\x95\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00}IDATx\x9c\xc5\x94A\n\xc0 \x0c\x04\'\xc5\xd7\xd4\xff\x9f}E\xd2\xe7\
-\xd8\x93\x85J\x8d\x85\x1a\xba\xe0\xc1\x04wH\x0c\x91Zk%H"B\x02\xb0\xc3\xa2\
-\x18lQ\xc6\xa5\x94X@\x93\x0b\xc8{\xbe\x9d>\xe7\xdd\x9b\x92g\xae\xa6\xd3\x98\
-\x17\x87\x05-\xf2\xcc?\x03FmY\x06PS\xd4\xd4\x05\xfd;Eo\xe5U1\x9c\xa2\xa7G\
-\xdeg\x8e4\x04\xcc\x0c\xfb\\\xd8\x98\xcetU\xd0v\xc7j\t\x10\xb6\xae\x01N\xb1\
-\xaa1$iq\xe9\x8d\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x83F(\xc2\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00sIDAT8\x8d\xcd\x93A\n\xc0 \x0c\x04\x93\xe2k\xea\xff\xcfyE\xd2\xe7\xa4\
+\x87@\x11]-\xad\x16:x\xd0E\x87h\x90\xdd\x9d\xa6a\xe6DDv\xd8\xbck\x9bW\x88\
+\xc8\x1aQ\x80Ey\xcf\xd7(C8\x0f\x12\xb4\xa8io\t\x93nE\x03\xa0\xe5\xb1\xa8\xbd\
+\xd1K\x91\x9a\xaa)\xd4}\xdc\xb51\xb0(\xd0\xb5j\x1f|\xda\x16 \xea\x1d.\xc3\
+\x05\xed\xbf\xa9(\xfe\xcb/8\x01\xca5/%3\x97\xcaf\x00\x00\x00\x00IEND\xaeB`\
+\x82' 
 
 def getToolButtonBitmap():
     return BitmapFromImage(getToolButtonImage())
@@ -404,11 +466,11 @@ def getToolButtonIcon():
 #----------------------------------------------------------------------
 def getToolCheckBoxData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\n\x00\x00\x00\n\x08\x06\x00\
-\x00\x00\x8d2\xcf\xbd\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00<IDATx\x9c\xcd\x90\xb1\r\x00 \x0c\xc3\x1c\xd4\xff_\xea\x17pN\x98:\xa2v\
-\xc4S\x06+R"\xdb\xa6A\x12\x01\xb0\xcf\xee\\V\'d\xe6L\x1c7~ F\x85Z\xf7B@{8\
-\xc0\x05Y\x8e\x0c\x12no\xb5\xb1\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\n\x00\x00\x00\n\x08\x02\x00\
+\x00\x00\x02PX\xea\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\x00/\
+IDAT\x18\x95c\xfc\xff\xff?\x03\x0e\xc0\xc8\xc8\xc8\xc2\xc0\xc0p\xed\xfa5\\*\
+\x98pI\xec\xdf\xbf\x1f\x9f4\x01\xddt\x90f\x81P\x10w\x92\x0c\x00\xc5\xdf\n\
+\x13\xf9\xb1\x7f\x05\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolCheckBoxBitmap():
     return BitmapFromImage(getToolCheckBoxImage())
@@ -425,17 +487,16 @@ def getToolCheckBoxIcon():
 #----------------------------------------------------------------------
 def getToolCheckListData():
     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\xc5IDATx\x9c\xdd\x95A\x12\xc3 \x08E?\x1do\xdb\x1c\'=Z\xecq\xe8\xa2c\xc7\
-*\x1f\x89\x8d\x9b\xfe\x99,\x84\xc8\x03\x0cF\xf6\xc7\xaeX\xa8\x04\x00\xdb}[\
-\x12\\U\xdf\x80\xb2\xb8R\xf9\x99\x01\x00\xb7\xd6!"\x10\x11s\x13\xf3\xb1\xf7M\
-\x00\xc0\xab\x99\xa9\xd2\x04\x00}V^U\xaaJ\xfd\x14Po*AfD\x015\x84\x05\xaf}\
-\xac\x8a\xd4Y\x8c\x00#\x88\'\n\xb0\xb2\xab!\x0c\xda\xda\xdd3\xf0\xd6Q\x99\
-\x00\xef\x8b\x19\x01[{\xd7"/\xd3\x99*:@\xc9\xb2\xed7\xb3\x8d\xe0\xa1I\xf6\
-\xdaQ\x9e\xd3\x83v\x95\xdc9\x18)r\xe8?\x01"s\xb1\xbcE\x7fz\x06\xd6\xbd\xd3*:\
-t\x1f@\xf9\x87\x1e\xf9\xf8Z3[T\xe9L63z\x01tU\x88>h\xf3;n\x00\x00\x00\x00IEND\
-\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x18\x08\x02\
+\x00\x00\x00o\x15\xaa\xaf\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x00\xb0IDAT8\x8d\xcd\x94A\x12\x80 \x08E\xa5\xf1\xfe+;Zv\x1cZ\xd80\x04_\
+\xd2\xc6E\x7f\xa5\xa8\x8f/\x91T\xf6\x92\x96h\t\x88\x99\xb3\x8c>S\xeaYSJ\x9b\
+\x0e\x11\x11\x11\x99}>\xe8\xf7X\x10\xb46h\xd6\x82LBh\x90\x99}\x1c\x80d_;3b\
+\x07\x83\x84\xe5)\x12\xf4\xa62\x04\x89\x7f\xc8\x82G\x00\xc8\xa4\x15\x96\xe7\
+\xea\x08\xae\x11\x1c\xc7\xb2 \xf8\x99zP\x1d\xc9\xbd\x85YS\x0fPK\xae\x8b\xe2\
+\xa7=z\xd4\xd9\xf0.MC\r\xf9M\xb8\x8fz\n\n?\x07\nzj\xd9\xd5\xfe_#\xf3s\xe9\
+\xa5\xb83oP{w\x8fz\xc8\xd8Oc\xe5\xd7T\x83\xba\x00\xb8d\x87\xb5\x0f#\xbe\xe1\
+\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolCheckListBitmap():
     return BitmapFromImage(getToolCheckListImage())
@@ -452,15 +513,14 @@ def getToolCheckListIcon():
 #----------------------------------------------------------------------
 def getToolChoiceData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x0c$\xbf\x95\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\x88IDATx\x9c\xbd\x94K\n\xc0 \x0cDg\x8a\x97\xa9\xde\x7f\xed)\xb4\xc7\
-\xb1+\x8b\xbfX\x85\xa6o#\x84\x90\xc9W\xa6\x94\x12\x94 \t\x03\x00\xf1\x8aZ\
-\x1a8\xb4\x02{\xef\xe7\x02\xce\xbaO\x84\xd4*\xc8\x98\x91\xd1Y\x87\x10\xc3\
-\xf3\x96\xd8\xd3\x8a\xc1Hv\xfeC\x817v\x96\xa2kQ\x99u\xaeb\x85<\xd4\x16\xb1E_\
-Q\t\x8cz.\xd9\xa5\x8c\xa7\x02+\x90\xdc\xf2\xaf\x04F\xd9\xb7v\xc9GB\xfd\x0e\
-\xfe;\xb4\xd5\xa1\xedB\x00j\xdf5\x00\xdc\x9c\x980\xaa\x91\x97e\xe1\x00\x00\
-\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x83F(\xc2\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00\x7fIDAT8\x8d\xbd\x92K\x0e\xc0 \x08D\x9d\xc6\xcb\x14\xee\xbf\xf6\x14\xda\
+\xe3\xd8\x05\x89\xb1\xa0\xf6\xa3\xe9,L\x04\x99<\x10\xe4\x9c\xdd\xb4\x00x\xe7\
+\\:\xd2\xbc\xd76o\x11Bh\x1b1\xf1\x07\xbb\x05D"\xaf\xeeL\x1cS\x94\xb3\x04i\'[\
+\t\xa0~\xa3\x8dz\xba\xfd\x90Kk\x05D\xa0\x06e2\xe0Z\x8d\xd6\x1e2v\x8d\xd4\\l\
+\xc4R\x8c\x88\x9a\x02\xf0\x82H\xe1\xd4\x11\x9b\xb2Z\xb6G\xab\x17r<\xc8_u\x02\
+\xbeu.\xab\xa5\xf7\xcf\xc1\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolChoiceBitmap():
     return BitmapFromImage(getToolChoiceImage())
@@ -477,16 +537,16 @@ def getToolChoiceIcon():
 #----------------------------------------------------------------------
 def getToolComboBoxData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x0c$\xbf\x95\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\xbdIDATx\x9c\xb5\x94]\x0e\x83 \x10\x84g\x1a.#W\xd1\xf6"\xf5:\xf6 \
-\x8d\xef\x9cB<\x0e}h *,\x82\xa5_bLp3\xb3?\xac\x9c\xdf\xb3C\x01\xfd\xbd/\t\
-\xdbA\x12\n\x00\x86\xc7\x90\rt\xee\x9b\x83]m\xb5\x89:\x8a\xb4\xc2\x18\x03\
-\x00\xb85UM\x904 \xd9\xcc@\x9d\x87\xec\xd1\x9d\x16\xbfM\xaf\t\xe3s\xc4b\x17\
-\xd9\x80$\x9cs\xe1}\xc4\xae\x16\xba\xd3\xd1\xc0\x8d1\x918pq\x06\xdedKJ<2\xd8\
-f\xed\xab(\xc1\xdf\x98\x14Q\x05$\xc3\x93\xc3W!\xb5\xc6\x13f \xf5\\:\xf7&9\
-\xf1d\x05\xb5\xe4\xc4w\x06R\x96\xbfn\xf8\xdf7\xb9z\xd1r7F4(i\xc3\xd5\xdf\xc7\
-\x07K\xfeYY\x03\x01\n\xa0\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x83F(\xc2\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00\xb0IDAT8\x8d\xad\x93\xc1\r\xc3 \x0cE\xbf+\x96\t\xab$\xed"\xcd:\xe9 U\
+\xee\x9e"d\x1c\xf7\x80J\x89q\x91\x1b\xf5\x1f\x900\xf0\xf8\xd8\x86\xd6\xe7\
+\x8a\xef\x1a\xafcg\xb5\x88\x88\x02\x80\xe96\x99\xcb"\x02 \xed\xc9\xc3\n\xf5\
+\x99sbf\x00\x97\xd3\xe7\x954\x88\x88\xce\x81\x82gS\x1cb\x1b\\\x1e\xcb|\x9f\
+\xb7\xb4\x19 "\x12\x91<\xd6\xf1\xb4\xa78\xc4:\xeb\xcc\\S\xe0\xcfQf\x95\xa9\
+\xa2\x1c@\xc5H6\xd5\x81\xe62)\x1d\x1c\xd1[\x1dS\xed\xa3\xb2\x82\xb2\xd3\x1aT\
+,\x93\xa2\x1dydR>\xa0\xf6\xf2_{\xfdo\x9d\xedjH\xb3L\x06\xa8\xf3\n\xff\x8fy\
+\x01H\x13XZA\xc5\xd2\xce\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolComboBoxBitmap():
     return BitmapFromImage(getToolComboBoxImage())
@@ -505,11 +565,11 @@ def getToolDefaultData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\\IDATx\x9c\xc5\x92Q\n\xc00\x08C\x13\xdb\x8f\xde\xffD\x1e\xc3\x8b\x8c\
+\x00\\IDAT(\x91\xc5\x92Q\n\xc00\x08C\x13\xdb\x8f\xde\xffD\x1e\xc3\x8b\x8c\
 \xc1`\xeb\xfek\x1d\x0c\x0b\xcdg\xd0\x07&\x92R\x90\x91\xa4\xb6W\x00\xeah\x9c\
 \xd7\xd1\xa3\xe1V\x1b(\x85\x9f\x00\x0003\xe7\xa9\xea\x14\xba?\x83\xf5!\x02\
-\xf1\xbd3q|\xa4\xfe\xdca\x0b\x00\\\x0b\x0e\xf0W\xfbCL\x03^\xd7\x11\x0f:g|b\
-\x05\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xf1\xbd3q|\xa4\xfe\xdca\x0b\x00\\\x0b\x0e\xf0W\xfbCL\x03^\xd7\x11\x0f:\xa3\
+\xa1\x04w\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolDefaultBitmap():
     return BitmapFromImage(getToolDefaultImage())
@@ -526,12 +586,12 @@ def getToolDefaultIcon():
 #----------------------------------------------------------------------
 def getToolDialogData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00IIDATx\x9ccd``\xf8\xcf@\x01`\x81P?\xc8\xd4\xce\xc1\xc0D\x89\xed\x0c\
-\x0c\x0c\x94\x1b\xc0\xc8@\x8d0\xb8p\xe5\x02Y\x9a\rt\x0c\x06A\x18\x8c$\x03\
-\x0e\x1c8@\x1b\x17\xb0\x90b\x1b\xd1\x06888\x10m\x00\xc5I\x19\x00\xe6)\x0cc\
-\xbf\x9c\xcc\xa1\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x90\x91h6\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00CIDAT(\x91c` \x11020000\xfc Z=\x07\x13\xa96\x90\xac\x81d\xc0\xc8\xc0\xc0\
+p\xe1\xca\x05"U\x1b\xe8\x18\xd0\xde\x0fCO\xc3\x81\x03\x07(\xb5\x81\x85\xa0\
+\x91\x044888\x90j\'\x01\x00\x00l\xe2\t]3\x1c\x89\xf6\x00\x00\x00\x00IEND\xae\
+B`\x82' 
 
 def getToolDialogBitmap():
     return BitmapFromImage(getToolDialogImage())
@@ -548,12 +608,12 @@ def getToolDialogIcon():
 #----------------------------------------------------------------------
 def getToolFlexGridSizerData():
     return \
-"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00?IDATx\x9ccddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\
+\x00\x00?IDAT8\x8dcddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\
 \x8c\xb1\x89aS\xc3D\xb6\xcdP0\xf0\x060\x8e\x06\xe2\xa8\x01\xd40\x80\xe2\x84\
-\xc4\xc8\xc8\xc4L\x91\x0b\x00\xb7J\x13\xf6R\x88'\x0b\x00\x00\x00\x00IEND\xae\
-B`\x82" 
+\xc4\xc8\xc8\xc4L\x91\x0b\x00\xb7J\x13\xf6st\x19\xa8\x00\x00\x00\x00IEND\xae\
+B`\x82' 
 
 def getToolFlexGridSizerBitmap():
     return BitmapFromImage(getToolFlexGridSizerImage())
@@ -570,11 +630,11 @@ def getToolFlexGridSizerIcon():
 #----------------------------------------------------------------------
 def getToolFrameData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00:IDATx\x9ccd``\xf8\xcf@\x01`\x81P?\xc8\xd4\xce\xc1\xc0D\x89\xed\x0c\
-\x0c\x0c\x94\x1b\xc0\xc8@\x8d0\xb8p\xe5\x02Y\x9a\rt\x0c\x06A\x18\x8c\x1a0,\
-\x0c\xa08)\x03\x00\x90c\x07\x1f\xb3yvF\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x90\x91h6\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x004IDAT(\x91c` \x11020000\xfc Z=\x07\x13\xa96\x90\xac\x81d\xc0\xc8\xc0\xc0\
+p\xe1\xca\x05"U\x1b\xe8\x18\xd0\xde\x0f\xa3\x1ah\xa2\x81d\x00\x00*K\x04\x19\
+\xfe\xab\xe3r\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolFrameBitmap():
     return BitmapFromImage(getToolFrameImage())
@@ -591,13 +651,13 @@ def getToolFrameIcon():
 #----------------------------------------------------------------------
 def getToolGaugeData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x0e\x08\x06\
-\x00\x00\x005\xf8\xdc~\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00cIDATx\x9cc\x9c2u\xca\x7f\x06\x1a\x02\x16\x06\x06\x06\x86\x9c\xec\x1c\
-\x9a\x18\xfe\xff\xff\x7f\x88\x050\x0e.\xc0\xc8\xc8\xc8p\xf5\xdaU\xb2,aA\xe6\
-\xbc\x7f\xfd\x9e,C\xf0\x01&B\n\xb6\xed\xdeF[\x0b(\x05\xa3\x16\x0c\xbc\x05,\
-\xe8\x02\x94\xa6\x1a\x9c\x16022R\xd5`\x0c\x0b\xc8\xcd\xa9DY\x80\xaf\x98\xa0\
-\x14\x00\x00\x89\x95\x19=\n\xdaW\n\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x0e\x08\x02\
+\x00\x00\x00\xba\x9aK)\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00XIDAT(\x91c\x9c2u\n\x03U\x00U\x0c\xfa\xff\xff?\x0b\x9c\x85)\xcd\xc8\xc8x\
+\xf5\xdaU"\xcdb\x81\xb3\xde\xbf~O\x89\xa3\x98pIl\xdb\xbd\x8d:\x06\x91\nF\r"\
+\x0cX\x909\xa4\xc6\x14\x16\x83\x18\x19\x19)r\x0f\xdc \xe2S0>\x83\xfe\xff\xff\
+O\xa1)\x0c\x0c\x0c\x00U\xa6\x18\xb48\xff\xd0\x00\x00\x00\x00\x00IEND\xaeB`\
+\x82' 
 
 def getToolGaugeBitmap():
     return BitmapFromImage(getToolGaugeImage())
@@ -616,10 +676,10 @@ def getToolGridBagSizerData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00SIDATx\x9ccddbf\x88O\x8a\xfd\xcf@&`\x811\x16\xce[\xccH\xaa\xe6\xf8\
+\x00\x00SIDAT8\x8dcddbf\x88O\x8a\xfd\xcf@&`\x811\x16\xce[\xccH\xaa\xe6\xf8\
 \xa4\xd8\xffL\xe4\xda\x0c\x03\x03o\x00<\x0c\xc8\x0eHF&f\x86\x84\x94\x84\xff\
 \x8cL\xcc\x0c\xc8\x18\x9b\x1865\x03\x1f\x06\xa3\x06P\xc1\x00FJs###\x133E.\
-\x00\x00\x9f\x06\x11@\xf1\x14Nh\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x00\x00\x9f\x06\x11@\\\xf4\xbaw\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolGridBagSizerBitmap():
     return BitmapFromImage(getToolGridBagSizerImage())
@@ -638,9 +698,9 @@ def getToolGridSizerData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00=IDATx\x9ccddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\r\
+\x00\x00=IDAT8\x8dcddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\r\
 \x13\x92c"\xdbf(\x185\x80\x81\x81q4\x1a\x87\x83\x01\x14G###\x133E.\x00\x00\
-\x18\x10\x13\xf6M^\xe8\x9a\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x18\x10\x13\xf65~\x97=\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolGridSizerBitmap():
     return BitmapFromImage(getToolGridSizerImage())
@@ -657,15 +717,14 @@ def getToolGridSizerIcon():
 #----------------------------------------------------------------------
 def getToolListBoxData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x18\x08\x06\
-\x00\x00\x00\xfe\xbe\rK\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\x8bIDATx\x9c\xe5\x95K\x0e\x80 \x0cD_\r\xb7\xd5\xe3\xe8\xd5\xf48uaH\
-\x88\xa1D\xa0\xb8\xd0\xd9\xf1\xc90y\xa5\xa9\xac\xdb\xaa\x0cP\x00X\xe6\xc5\
-\xd5TU/\xe3\xb8\xf0\xd0~\xec\x00L\xa5K"\xd2\xfc@\xd1\xb8G\xa6\xb1\x88\xa0\
-\xaa\xcd\xa9\xdfM\x1c\xd3\x02\xcd\xa9\x83u\xd0S\xb8\xacq\x9a\xf6\xc9\xbe\xa5\
-\xf7\x18[\xa9j\x1b(\xcb\xf8\xce\xb7\xa5+\xcd\xe2\xa5f\xb5|a \xe3G\xdf\xed\
-\x1f(>\xc2\xd8c\x9a\x8cG\x11g\x95\xab\xb1\xd7 Mu\x02\x9e\xf7?>\xfc\xcf\xc7\
-\x06\x00\x00\x00\x00IEND\xaeB`\x82' 
+"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x18\x08\x02\
+\x00\x00\x00q\xdc\x9a\x1c\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x00\x7fIDAT8\x8d\xd5\x94A\n\xc0 \x0c\x04w\x8b\xff?\xd9\xaf\xd9\xe7\xa4\
+\x07!\x14\r\x12\xa3\x856'\x89d\xdd\x8c!\xccg\xc6b,J\x88H\xd2S\xa0\xbe\\\x05\
+\xc0a\xde\x91\xf4\x0b\xd9\x12SaH\x90\x14\x11\xbf\x91\x17\\T\x0b\x00\xfcFR\
+\x9f\x9ab\xd9J\xa8\x85A\xa6\x8f\xdd,\xfa\x07=#\xd7\xb2x\x82p\x8e\xac\x81S+= \
+\xb0\x85\xc5\xe8S\x7f\xd5\xc87Y\x04\xd6\xd7\xbeF\xea\x16\x8cK\xc4v\xaf\xc6\r\
+\xf1)>\xb5\x89Y\x88\x02\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getToolListBoxBitmap():
     return BitmapFromImage(getToolListBoxImage())
@@ -682,14 +741,14 @@ def getToolListBoxIcon():
 #----------------------------------------------------------------------
 def getToolListCtrlData():
     return \
-"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x18\x08\x06\
-\x00\x00\x00\xfe\xbe\rK\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00{IDATx\x9c\xed\x95Q\n\xc0 \x0cC\xd3\xe1m\xe7q\xdc\xd5\xdcq\xba\x8f\
-\xd11\x86et\xb6\x82\xb0\xfc)\xf2\x88\xa1\xa1T\xb6\xc2\x08P\x02\x80\xbcfW(3\
-\x9f`9x\xa8\xee\x15\x00\xb0\xb8\xd0\x1aJ\xadKR\x1e[\xfe\x14\xe6\xf8\x07\xc7\
-\x83\x9bS\xe11\xd1\xf3E\xf1\n&\xb5.\x1d`\x81~\x81\xab\xe0'\xcc\n\x1f\x9b\xb1\
-\xe6\xce\xe2ztA\xfa+2_A\xae(dW\xb9\x82\xbd\x16\xe9]\x07\x93G\x16EG\xf1\x98K\
-\x00\x00\x00\x00IEND\xaeB`\x82" 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\x18\x08\x02\
+\x00\x00\x00q\xdc\x9a\x1c\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x00nIDAT8\x8dc\x9c2u\n\x03\x85\x80B#\xfe\xff\xff\xcf\x02g\x91\xa1\xff\
+\xda\xf5k\x0c\x0c\x0cL\x948\x01\x02X\xd0\xf8\x8c\x18*\x08:\x8f\n\xae\x185\
+\x02\x01\xd0c\x84\x8c\xe418<\x82\xd3\x08F,\xa9\x8c\x14# \xfa\x894\x05\x8b\
+\x11\xc8:\x891\x85\x06a\x81i-A\x87\xd0$i\x91\x9c\xb8\x06G\xd2\x82z\x04R\n\
+\x92o\x04ye/\x1c\x00\x00\x83\x9c\x15\xbc\x94tu\xe9\x00\x00\x00\x00IEND\xaeB`\
+\x82' 
 
 def getToolListCtrlBitmap():
     return BitmapFromImage(getToolListCtrlImage())
@@ -708,11 +767,11 @@ def getToolMenuData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00bIDATx\x9ccddbf\x80\x81\xef\xbf\xbe\xfeg \x02p\xb0p002132000\xb0\xa0\
+\x00\x00bIDAT8\x8dcddbf\x80\x81\xef\xbf\xbe\xfeg \x02p\xb0p002132000\xb0\xa0\
 K\xde\xb8q\x03\xaf\xe6\x03\x07\x0e\xa0\xf01\x0c\xc0\xa6\x08\x06\x1c\x1c\x1c0\
 \xc4\x98\xf0ZG\x04\xa0\xd8\x00\xac^\xc0\xe6T\x92\x0c\x18\r\x83\xd10\xc0\xe5\
 \x7f\\\x80\x119;\xff\xff\xf7\x97\xa8\xec\xcc\xc0\xc0\x00\xcf\xce\x00\x8f\x14\
-\x1a\x83K\xe9G\x81\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x1a\x83cs\x82P\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolMenuBitmap():
     return BitmapFromImage(getToolMenuImage())
@@ -731,11 +790,11 @@ def getToolMenuBarData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00aIDATx\x9c\xed\x93\xb1\r\x800\x0c\x04\xcf!E\xc6\xca\x98\x19\xc7cx\
+\x00\x00aIDAT8\x8d\xed\x93\xb1\r\x800\x0c\x04\xcf!E\xc6\xca\x98\x19\xc7cx\
 \x94\x14HP "7)\x88\x0b(\xb8\xf2\xa5\x7f\xbdmY$mDH!\xf7\'\x02\xa4\xef\xfdX5\
 \x97\\\xc8\x00f\xf6\xd8\xac\xaa\x00W\x80\x17<\xb5\xd6\xa9~\xf3\xfe\x12\xc7\
 \x08\xbe\x96g\xa6\x8f\x80\xd6Z\xa8\x81\x00\xcbg\x04\x90\xff\x178\x01o\x9c\
-\x13?\x15\xa3\xaau\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x13?\x8d\xde\xe5M\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolMenuBarBitmap():
     return BitmapFromImage(getToolMenuBarImage())
@@ -752,13 +811,12 @@ def getToolMenuBarIcon():
 #----------------------------------------------------------------------
 def getToolMenuItemData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0c\x00\x00\x00\t\x08\x06\
-\x00\x00\x00\x06\xb8\xcdT\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00NIDATx\x9cc\xfc\xf1\xe7\xc7\x7f\x06"\x01\x07\x0b\x07\x03\x0b\x03\x03\
-\x03\xc3\x8d\x1b7\x08*>p\xe0\x00\x03\x03\x03\x03\x03\x13\xb1\xa6\xc3\x00\x0b\
-6S\xd0\x81\x83\x83\x03\x9cM\xb2\r\x949\t\xd9j\xbc\x1ap\xb9\x1d\x1b`d`` :\x1e\
-\x18\x18\x18\x18\x00h[\x0f\xdf\xbb\xf3\x12\xf4\x00\x00\x00\x00IEND\xaeB`\x82\
-' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0c\x00\x00\x00\t\x08\x02\
+\x00\x00\x00\x89\xdaZ\x03\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x00>IDAT\x18\x95c\xfc\xf1\xe7\x07\x03^\xc0\xc1\xc2\xc1\xc2\xc0\xc0p\xe3\
+\xc6\r\\*\x0e\x1c8\xc0\xc0\xc0\xc0\x84\xdf\x18\x08`A\xd3\x84\x0c\x1c\x1c\x1c\
+ \x0c\xa2L"\xd1:\xb8\xe1\xd8\x15a\xba\x86\x1c\x00\x00u\xae\r\xe0\x8b\x0b\x7f\
+\xe2\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolMenuItemBitmap():
     return BitmapFromImage(getToolMenuItemImage())
@@ -777,7 +835,7 @@ def getToolNotebookData():
     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\xd3IDATx\x9c\xed\x96a\n\x830\x0c\x85_\xaa\x97Y{\x04aW\x176\xd4\x13\xe8.\
+\x00\xd3IDATH\x89\xed\x96a\n\x830\x0c\x85_\xaa\x97Y{\x04aW\x176\xd4\x13\xe8.\
 c\x9b\xfd\x18\xbaj\xad$\x0e\xf7c\xec\x03\x91\xc6\x92\x97\xa4\x8f"\x91)\x10\
 \xfc\xc8\x10`\x8a\x92$\xfbb\xca\xe0G\x1e\x1e\x83h3\x07\xcfd\n\x95\x88\xd9\n:\
 \xeb\x92X]\xd7\x00\x80\xe0G\xde{\x92\x0e4\xd5\x00@{ow\xbf\xaf\xbbL\x04\x9cu\
@@ -785,7 +843,7 @@ c\x9b\xfd\x18\xbaj\xad$\x0e\xf7c\xec\x03\x91\xc6\x92\x97\xa4\x8f"\x91)\x10\
 ]|\xca\xe6\x88$\xc4c\xcaU\xbf\x10\xc8\xcd<\x17?4\xa23\x98\x05r\x8e\xc9\xc5\
 \xa5\x1cv\x91\xfa\x0c4\xec%\\C\xcc,\xbe\x8b\x00\xc0^\xac<9\x91\xbe\x03M1\xc0\
 \x89.\x9a.\xc7\xef\xd9\xf4/\xf0\xbb\x02%\xf0\xb6\xd4\x19\x10\x00\xd1/\xcbQ\
-\x9e|\xd6v/\xdax\xf9\x14\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x9e|\xd6v/g\xd2\x8d{\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolNotebookBitmap():
     return BitmapFromImage(getToolNotebookImage())
@@ -802,12 +860,11 @@ def getToolNotebookIcon():
 #----------------------------------------------------------------------
 def getToolPanelData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
-\x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00CIDATx\x9c\xed\xd31\x0e\x800\x0cC\xd1W\x94\xa1\xf7?Q\x8e\x91\xa3t@\x82\t\
-1\x131\xf6\xef\xfe^\xec\xb1\xceui2c\n\xa8\xaa\xcf\xe1\xcc\x04G\xb7\xfda\x0b\
-\xb6\xe0\x17A\xf0\xce\xb2\xc3@\xfbLp\x03\xeer\x0c%l\xbc\t6\x00\x00\x00\x00IE\
-ND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x02\
+\x00\x00\x00\xa9M\x0b\xdd\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x002IDAT(\x91c\xfc\xf1\xe7\x07\x03\xd1\x80\x83\x85\x83\x85\x81\x81\xe1\
+\xc6\x8d\x1b\xc4\xa8>p\xe0\x00\x03\x03\x03\x13\xf1\xc6C\xc0\xa8\x86!\xaa\x81\
+\x85\x01\x16\xe7\xb4\x02\x00vv\n&i\xb3\xa3d\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolPanelBitmap():
     return BitmapFromImage(getToolPanelImage())
@@ -826,7 +883,7 @@ def getToolRadioBoxData():
     return \
 "\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x16\x08\x06\
 \x00\x00\x00\xda}\\\x88\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x01\x0bIDATx\x9c\xc5\x94K\x0e\x820\x10@g\xda\x1e\xc0\x85\xa7!\xe1Bt\xeb\
+\x00\x01\x0bIDATH\x89\xc5\x94K\x0e\x820\x10@g\xda\x1e\xc0\x85\xa7!\xe1Bt\xeb\
 \xf7\x04\x1aw\x06\xf1B&\xde@O\xe1\x82\x03\xd0\x8e\x0b\x1dR\xa0\x14-\x18'iB\
 \xa1\xf3^\xa7\x19\x8a($\x84\x82\xac!\x14\x12\x83\x8b\x02!b\x13'\x11\xf0\xee\
 \xc9\x1a\x8a\x15\xa8<?6\x92u\xa6AH\x15<\x12k**\xce\xc5 \\g\x1a\x14?p0\xdc={\
@@ -836,7 +893,8 @@ def getToolRadioBoxData():
 \x1c\xb1\x92\xc6\x7f\xb0\xdan\xd0\x9a\x8a\x16\xab\x05\\/W\x98\xcdg\xf5\xb7\
 \xf2Q\x02\xd1\x8b;t\x95\xf4V\xe0&'i\x02\xe5\xa3\xac\xe1I\x9a|\r\xf7\n|\x92Xx\
 \xaf\xa0-\x89\x85\x07\x05.4\x16>(\x18\x0b\x07\x00\xc0Sq\x8a\xbe\x06\x86Bg\
-\x1a\x90\xb8\xf7~\x14O\xab+\x90\x81VN\rI\x00\x00\x00\x00IEND\xaeB`\x82" 
+\x1a\x90\xb8\xf7~\x14O\xab+\x90\x81!\xff\xcd\xf3\x00\x00\x00\x00IEND\xaeB`\
+\x82" 
 
 def getToolRadioBoxBitmap():
     return BitmapFromImage(getToolRadioBoxImage())
@@ -855,13 +913,13 @@ def getToolRadioButtonData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0b\x00\x00\x00\x0b\x08\x06\
 \x00\x00\x00\xa9\xacw&\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\x96IDATx\x9cm\x90\xc1\r\xc20\x10\x04\xc7g\n\xc8\x83*H\x07\x96RVD\t`\xdc\
-\x15(\xe9 T\x91\x87\x0b\x00\xcc#1\xb2\xcd\xadd\xf9t\x9a=\xad\x16#\x96\xf6\
-\x05\x1f\x92\xb6\x17\x1a\xdd.\xd7T\xfe\xa5D\x03\xc7\xf3\x88f\x10\r\\\x9e\x8b\
-j\x10\r\x04T\x83\t>\xfc\x81\xa5\xfaSO\xf0\x01\x00c\xc4\xf2y\xbf\x12\xc0\xfc\
-\x98\xe9\x8e\xdd\x0f\x8ck\xc4\rn\x8b`\x0fF\xf2\x00\xe0\x06G\\\xa3\nn\xa7\x8b\
-\x1e\xd3\xae\xe9>\xe5\xb1\xee\xdb\x88\xad2\xe6H\xd5E\xad\xe7\x12hA\x80/\x17\
-\xa5W:\xce\xb5\xf5\x84\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x00\x98IDAT\x18\x95m\x8f\xc1\r\xc20\x0cE\x9f\x1d\x06\xe8\x81)\xe8\x06\x91:V\
+\xc5\x08P\xb2\x15\xa8\xdd\xa0L\xd1C\x06\x00\xc2\xa1\xa4J\x83\xbfd\xc5N\xde\
+\xb7~\x10u\xd4\x15\x86\x90\xac{\xa5\xd2\xedrM\xe5YJ-\xb0?\xf7X\x06\xb5\xc0\
+\xf99\x9b\x06\xb5@\xc04H\x18\xc2\x1fX\xaa=\xb5\x84!\x00 \xa2\x8e\xcf\xfb\x95\
+\x00\xa6\xc7Dsl60.\x11\xdf\xf95\x82;\x88\xe6\x06\xc0w\x9e\xb8D\x13\\W\xab\
+\xdb*\xfd4\xde\xc7\xdc\xa6\xf2]D\xdd.c\x8e\xb4\xdb\x98\xe7\xfaC\x19\xa8A\x80\
+/\x17\xa5W:\x12\xac\xa3\xbe\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolRadioButtonBitmap():
     return BitmapFromImage(getToolRadioButtonImage())
@@ -878,13 +936,13 @@ def getToolRadioButtonIcon():
 #----------------------------------------------------------------------
 def getToolRootData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
+"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00aIDATx\x9c\xed\x93\xc1\n\x80@\x08Dg\xb4_\xaa\xfc\xff[\xf5M\xb5\xdd\x96m\
-\xd1\xa8\xbc6\xe0A\x19\x07\x9e )\x8a\x8c\x06oX\x8e\xbd\xb4=E\x19\x06\xcc\xd3\
-x1/\xeb\x16\x9a]Q\x14fV(\x8a/\xe5"x\x18\x11R\rhQ\xde`\xd4\x80~\xe9\xeepn@\
-\xaf\x1f\xe19\x02\xb3\xbf \xa9m\x00\'\x0f\xb3\'\x06\x9f\r?\x1f\x00\x00\x00\
-\x00IEND\xaeB`\x82' 
+\x00cIDAT(\x91\xed\x90\xc1\x0e\x800\x08C[\xf0\x97T\xfe\xff\xa6~\x93n\xb7e.`\
+\xa6\xbb\xda\x84\x03\xa4m\xf2 E1\xa2\xc9;\xa6\xebL\xf5NQ\x86\x05\xeb2\xdf\
+\xcc\xdb~\x84fW\x14\x85\x99%\x8a\xe2\xcb\xb8\x08\x1eF\x84T\nj\x947\x18\xa5\
+\xa0\r==\xce-h\xf5#\xf4#\x90\xa2\xbd^W2\x94\x06\x90\x01\x0f\xb3'\x06\xe8\x11\
+R\xf1\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getToolRootBitmap():
     return BitmapFromImage(getToolRootImage())
@@ -901,17 +959,17 @@ def getToolRootIcon():
 #----------------------------------------------------------------------
 def getToolScrollBarData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\r\x00\x00\x00\x18\x08\x06\
-\x00\x00\x00!\xf0wT\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xdcIDATx\x9c\xa5\x94A\n\x830\x10E_\x8a\x97i\x8f\x10Q\xf0<\xedVz\x86\xe2\
-V\xcf#(\xe6\x08z\x89.\xbc\xc1ta\x15\x12\x93\x90\xd2\xb7\x8cy\xcc\xe4O\xa2j^\
-\x8d\xf0#\x19@\xfd\xac\x93\x05\x11\xd9$\x80i\x98\xac\x8f\xba\xd0\x98\xd1x\
-\xc5\x8boQ\x17\x9ay\x99\xc9\xcb<M\xda\x05\x80\xb6k\xbd\xe2%$\x00TU\xe5\x153\
-\x1c\xfa\xbe\xf7\xb6\xe4\x95t\xa1QJ\x057\xe6e~\x84uHf4\xa7\x04\x93*\xc5PJ\
-\x9d+\x01V\x081\xbcsrq\xc3I\x92\\\xfe\x8b<\x16wPJ\x8d\x1b\x80\xef{\x92\x18m\
-\xd7\n \xd30\x89\x88\x885\\\xf7\xee\xc1v\xc6\xc7\xfdaub\xa5gF\xc3\xedz\xb3$W\
-8I.\xa1$O\xd2^\xcd\xd7V\xb4\xd2\xbc\xccA!(\xad\xef5:\x82\x0c\xb6?\xcc/|\x00-\
-\xe7\x88\x84\xf9\x15\x1f\xff\x00\x00\x00\x00IEND\xaeB`\x82' 
+"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\r\x00\x00\x00\x18\x08\x02\
+\x00\x00\x00\xae\x92\xe0\x03\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\
+\x00\x00\x00\xc5IDAT(\x91\x8d\x92\xcd\r\x84 \x10\x85g\x0c\xcd\xac%`\xdc\x84z\
+\xd6F6^\xb1\x1e\x13\t\x94\x80M\xec\xc1\x0e\xd8\x03\t\x8e\xccH|'~>\x86y\x0fp\
+\xfe\xce\xf0DO\xb8\x94\x92\xca#\xbf\xf9\xb2\xaaG\x1d\\\xa8\xd0\xae\x9a\xebQ\
+\xc7=\x0e\xef\xa1\xc5e\x08\x00\xecb+\xb4\xe3\x10\x00\x18c*T\xd1C\xeb\xba\xde\
+z\xc9~SJw\x80\xdf\xfc\xe97\xb8@-s\xa9\xd2\x9c\xb8\x8d\x88\xf9\xfc\xd9_1!\xaa\
+\xce\x8f\x8a\xdajqB\x7f\xbc\x80\xcc!\xe2\xa3z\xedP\x00H\xce\\v\xb1\xc0s\xa6\
+\xef\x9b{\x9d>S\xb9\xe7\xf4\x1b\\\xe8_}\x99R\x08\xeer\xe1\xc6/\\.Y\xdd(\xd7\
+\x8b{\xe4\x90\xc0\x1d\xbfC\xccHA\xf3\xf3\x15\xfd\x01\xc5\xac\x80\xf9\xbb\xd3\
+\xc3\xb7\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getToolScrollBarBitmap():
     return BitmapFromImage(getToolScrollBarImage())
@@ -928,10 +986,10 @@ def getToolScrollBarIcon():
 #----------------------------------------------------------------------
 def getToolSeparatorData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0e\x00\x00\x00\x02\x08\x06\
-\x00\x00\x00h\x8a\xed\xaa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\x19IDATx\x9cc\x9c2u\xca\x7f\x06\x12AvV6\x03\x0b\x8cA*\x00\x00\xbc\
-\xd9\x05B4OY2\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0e\x00\x00\x00\x02\x08\x02\
+\x00\x00\x00\xe7\xe8z\xfd\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x00\x17IDAT\x18\x95c\x9c2u\n\x03\x11 ;+\x9b\x05B\x11\xa3\x1a\x00\xfb\
+\x1c\x04C\xb1\x8cE\xa0\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolSeparatorBitmap():
     return BitmapFromImage(getToolSeparatorImage())
@@ -948,14 +1006,13 @@ def getToolSeparatorIcon():
 #----------------------------------------------------------------------
 def getToolSliderData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x0e\x08\x06\
-\x00\x00\x005\xf8\xdc~\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\x80IDATx\x9c\xdd\x94\xc1\t\x800\x0cE_\xc4\xa9\x04\x17\xb2gq\x06q\xa8\
-\x80\xd0\x15t\x9cx\xf0 \xa8hJ\xed\xc5\x7fL\x9b\xffB\xf9\xa9L\xe3d\x14T\r\xd0\
-\x0f}\x11s3\xdb\x01\x00q\x8e4m\xe3j\x14\x11\xe2\x1c]w\xebsaY\x17\xef\x80.UO\
-\x87\xaa\x8a\xaa^j\x9f\x01\x00B\x17\x92\x0c\x93\x01\xb9\xfa9 \xf7\xfd\xe1&\
-\xa6p$%51\xaf\x00\x11\xc96|\x04x\xb73\x19`V\xee\xbf\xdb\x008?!\xf2\x1e\xaa\
-\x9bi\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x0e\x08\x02\
+\x00\x00\x00\xba\x9aK)\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00pIDAT(\x91c\xec\xee\xecf\xa0\n\xa0\x8aA\xff\xff\xffg\x81\xb0\x8e\x1e:jek\
+\x85G)##\xe3\xd1CG\xf1(`A\xe6\\\xbb~\x8dlG1a\x15\xdd\xbf\x7f\xff\xfe\xfd\xfb\
+\x91\xb9d\x1a\xc4\xc0\xc0\x90\x9d\x95M\x05\x17\x91\x01\x86\x8aA\xa4\x06\x10\
+\x03Z\xf43\xc0"\x88\x98h\xc2i\x10###\xa9\x9a\xb1\x1b\x84?\xe1\x12e\xd0\xff\
+\xff\xff)1\x02\x02\x00G?!-\x9e\x07b\xab\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolSliderBitmap():
     return BitmapFromImage(getToolSliderImage())
@@ -974,9 +1031,9 @@ def getToolSpacerData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x000IDATx\x9ccddbf\xa0\x040Q\xa4{p\x1a\xf0\xff\xdf\xdf\xff\xc4\xd00\xc0\
-H\xf5@D\xb7\x81\x90\xfc\xa8\x0bh\xe9\x82\x81K\x07t7\x00\x00\x1cB?\xcf\xcf\
-\x93qi\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x00\x000IDAT8\x8dcddbf\xa0\x040Q\xa4{p\x1a\xf0\xff\xdf\xdf\xff\xc4\xd00\xc0\
+H\xf5@D\xb7\x81\x90\xfc\xa8\x0bh\xe9\x82\x81K\x07t7\x00\x00\x1cB?\xcf\xebM\
+\xd0P\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolSpacerBitmap():
     return BitmapFromImage(getToolSpacerImage())
@@ -995,12 +1052,12 @@ def getToolSpinButtonData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\t\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\xc4HUC\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\x87IDATx\x9c\x9d\x90\xd1\r\xc3 \x10C\xed\xa3\xd34S0O3\x0e\x99\x87-\xd2e\
+\x00\x87IDAT(\x91\x9d\x90\xd1\r\xc3 \x10C\xed\xa3\xd34S0O3\x0e\x99\x87-\xd2e\
 \x02\xee\x17\xa8@B\xabX\xe2\xe7x\xba\xb3M\x9a\xc3/Y?\xc8\xe9\xd0\x14\xca\xe9\
 \xd0\xfe\xde\xa1\x9ct\n\x15\x00\x00\xc2\x16\x1a\xd0z\x00\x00\xbc\xf7\r\xf8(\
 \x1f1\xc6K\xe3\x94$\x92\x93l\x00oUp*M\x14\xb6 \x00"\xcd\r\xe9J\x90\xf5\xb5\
 \x82\xe6X=\xf5\xe0\xf2\\@s\xbc\xf44\xd4As\xf55>\xbe\xe6C\x05\xcaI\xe5L]\xf4O\
-O\x1fX\xf8l\xb8\xe4\xd6\x98/\x00\x00\x00\x00IEND\xaeB`\x82' 
+O\x1fX\xf8l\xb8l\x11n\x9b\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolSpinButtonBitmap():
     return BitmapFromImage(getToolSpinButtonImage())
@@ -1019,7 +1076,7 @@ def getToolSpinCtrlData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x0c$\xbf\x95\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\xd7IDATx\x9c\xadT\xdb\x11\x83 \x10\xdc\x03\x9b\x89]XOtRKF\xad\xc7.\
+\x00\x00\xd7IDAT8\x8d\xadT\xdb\x11\x83 \x10\xdc\x03\x9b\x89]XOtRKF\xad\xc7.\
 \xb4\x19a\xf3\x91\xe0(\x03\xe6|\xec\xcc\xfd\x1c\xc7.\xb7\x07H\xd7w\xc4\t4\
 \xcdKT\x85?\x81CA\x92b,\xe2H\xe5\x8b D\xea\x1a\x19\xa71\x99\xf7n\xe68\x8d\
 \xa0w\x14c\x97\xee\x8c\x8a\xf5\x0f\x029\x00t}\x07z\xb7\x9c6+ \xa2\xb3xM\x0e\
@@ -1027,7 +1084,7 @@ def getToolSpinCtrlData():
 \x02Z\x18[\x88\x18\xbb_sE@u\x88+\x9b\xbd\x9b\x99\x8b\xb6}\xf3\x16\x8b\xe2[\
 \x04|\x87^?k\x88\xb1r\xd9"c\x0b)\x1f\xe5&\x17\xc8\x81\x1d\x8b\xb4/;F|eo\x19r\
 \xe8bmMX[f\x90\xfbc\x8e\x88\xc4\xff\xd0"p\xd6\x8e\x1819\x00|\x00\x82\x1a\x92\
-\x8c\xa1\x12f1\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x8c\xef\x85F5\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolSpinCtrlBitmap():
     return BitmapFromImage(getToolSpinCtrlImage())
@@ -1044,12 +1101,12 @@ def getToolSpinCtrlIcon():
 #----------------------------------------------------------------------
 def getToolSplitterWindowData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x0c$\xbf\x95\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00WIDATx\x9c\xed\x94\xb1\r\xc00\x08\x04/\x91\x17c\x9ex\x1c<\x1ad\x1cRE\
-I*\xbb\xa1\x89x\t\x89\x97N\\\xc7\xa6C\x83\xc44\x80~\xf4\x94\xe3\x11\xc1\xfe.\
-\xb3\xd1\xa1\x98\xdb\x12kn\x00\x8f +%(A\t\xfe h\xf7\xe2\xa7Oa\x11Yf?\x82\x88\
-\xbc\x8f}\x01\x1b\xc7Loc\xda\xa9\x02\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x83F(\xc2\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00JIDAT8\x8d\xed\x8e\xb1\r\x00 \x08\x04\xd1\xb8\x18;\xe2h\xe08oA\xa2\x154Z\
+\x19\xaf\x81\xe2r\xf9"]\xe8\nWB\x00\xea\xfa"\xa4\x8b\x9a&\x82\x9a\x12Q=\x9f\
+\xe3\xfc\xd0\x0f\xbd\x19j~lXd0s.\xec\x10\x80\xf3E\x13\xd4\xd0K\xe6\xddMz\xb1\
+\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolSplitterWindowBitmap():
     return BitmapFromImage(getToolSplitterWindowImage())
@@ -1066,28 +1123,28 @@ def getToolSplitterWindowIcon():
 #----------------------------------------------------------------------
 def getToolStaticBitmapData():
     return \
-"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0e\x00\x00\x00\x11\x08\x06\
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x0e\x00\x00\x00\x11\x08\x06\
 \x00\x00\x00\xed\xc8\x9d\x9f\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\
-\x00\x00\x01\xf9IDATx\x9c\x85\x931h\x13Q\x18\xc7\x7fw\xf7\x86\x17p\xb8\x83\
-\x0c\x97-\x05\x1dts\xb3N\x9et\x90\xe0\xa0-..N\x1d\xact(\xd1\xa9\xba\x05D\xa5\
-\x83Z\x1c\x84,B\xba\x14\x1d\xb4\x8e\xbd\x0e\xc5\x04\x94\xa4\x8b\xb5\xe0\xd0,\
-\x85d\x90\xe4\xd4\xc0=\xf0\xda\xcf!\xdc\xd9\xa3Q\xbf\xe9\xbd\xef}\xbf\xef{\
-\xdf\xff{\xcf\xb2l\x87\xe3vt\x98\x08\x13\xccv\x94\x95\xdb\x1f\x07R(\xfe\x19\
-\xd3\xf9\xd4a8\x1c\xfe5\xa1e\xd9N\xe6ln7y\xb3^gy\xe9,Z\x150\xa3\x98\xe6\xe7\
-\x88\xb5w;4^\xbd\xcfU\xce\xc0\xe6v\x93\x92\xafq\t\xf1\xfc\x8b\x80\x0b\xa6E\
-\x9c\x18\xa2oC\xee>\xdc\xa3\xb1\xd6\xc8`;\xad\xb6\xf2|\x05_\x85x\xc5\xcb\xa0\
-\xa6@yp\xaaBAi\\\xd7cy\xbe\xc4\xdc\xf5\xb9\xec\xaa*]T\xe7+\xa0\x01]\x1a;\x12\
-\x03@\x9ch\n\xca\xe0\x155\xae\xa7\xb3~3q\x8c1Y0hP.\xb1\x19\x8b\x13\xa3AiJnz\
-\x0ev\xdal\xed\xd9kHb\xc0@\x12\x81\xe9B\xd2\x1b'K\x0c&\x8ah\xac\x87'\xc7Q\
-\x7fY\xc7$\x8ca\xa5\x89M\x17\x88 1\xf4\xfb=\xba\x07Cj\x8fV3q\xb2\x1e\xb5\xd6\
-hc\x80\x02\xf1\xa8\x0bI\x841Cz\xfd>f\x14S{\xb1G\xb8U\xcf\x8bc;\xca\xba}\xe7\
-\x96\xec\xb4B\xa6\xce\xb4X}\x10\x10E\x11\xdd\x83\x1e\xf7\x1f\x87x\xc5s\x84[\
-\xcd\xdc\x1c\xb1l\x07\xcbv@!\xb37*\xb2\xfbeW\xda\x1f?H\xe5j \xd5\xc5\x9b\xb2\
-\xffu_RKc-\xdb\xf9\x03\xce^\xab\x88\x88H\xbb\xd3\x96`&\x90\xea\xbd\xaa\x0c\
-\x06\x83\x13@\x0e\xf4}_6\xc3M\xa9\\\td\xf5\xe9\x13YX\\\x10\xb7\xe8N\x04r  \
-\xc1\xcc\xb4l\xbc\xdd\x18W\xbc\x14H\xf9t\xf9\xff`\n\x97\xcb\xbeL_8/\xd5\xa5\
-\xea?!\xcbv\xc6\x8f\x1c@\x8e\x0e\xc5\xf7]\x8c1|\xff\xf1+\xf7\xf7&\xd9o(\xba\
-\xfe\xd4\xfd\xb4\x1c\\\x00\x00\x00\x00IEND\xaeB`\x82" 
+\x00\x00\x01\xf7IDAT(\x91\x85\x921h\x13Q\x18\xc7\x7fw\xf7\x86\x17p\xb8\x83\
+\x0c\x97-\x05\x1dts\xb3N\x9et\x90\xe0`[\\\\\x9c:X\xe9PN\xa7\xea\x16\x10\x95\
+\x0ejq\x10\xb2\x08\xe9Rt\xd0:\xf6:\x14\x13P\x92.\xd6\x82C\xb3\x14\x92A\x92S\
+\x03\xf7\xc0k?\x87pgC\xab\xfdO\xef}\xef\xfd\xbe\xef}\xff\xefY\x96\xedpT\x87\
+\x07\xa9p\x82lGYc\xfb\xa3@\x06%\xbf\x12\xda\x9f\xdb\x0c\x06\x83\x7f&\xb4,\
+\xdb\xc9\x83\x8d\xad\x06o\xd7j,-\x9eG\xab\x02f\x98\xd0\xf8\x12\xb3\xfa~\x9b\
+\xfa\xeb\x0fc\x95s\xb0\xb1\xd5\xa0\xe4k\\"<\xff2\xe0\x82i\x92\xa4\x86\xf8\
+\xfb\x80{\x8fv\xa9\xaf\xd6s\xd8\xce\xaa-\xbfX\xc6W\x11^\xf1*\xa8\tP\x1e\x9c\
+\xa9PP\x1a\xd7\xf5X\x9a+1;=\x9b?Ue\x8bp\xae\x02\x1a\xd0\xa5Q 5\x00$\xa9\xa6\
+\xa0\x0c^Q\xe3z:\xef77\xc7\x18\x93_\x06\r\xca%1#s\x124(M\xc9\xcd\xce\xc1\xce\
+\x9a\xad>\x7f\x03i\x02\x18Hc0\x1dH\xbb\xa3d\xa9\xc1\xc41\xf5\xb5\xe8\xf88j\
+\xafj\x98\x94\x11\xac4\x89\xe9\x001\xa4\x86^\xafKg\x7f@\xf5\xf1JnN\xde\xa3\
+\xd6\x1am\x0cP \x19v \x8d1f@\xb7\xd7\xc3\x0c\x13\xaa/w\x896k\xe3\xe6\xd8\x8e\
+\xb2\xee\xdc\xbd-\xdb\xcd\x88\x89sMV\x1e\x06\xc4qLg\xbf\xcb\x83\'\x11^\xf1\
+\x02\xd1fcl\x8eX\xb6\x83e;\xa0\x90\x99\x9b\x15\xd9\xf9\xba#\xadO\x1f\xa5r=\
+\x90p\xe1\x96\xec}\xdb\x93L\xd9]\xcbv\xfe\x8237*""\xd2j\xb7$\x98\n$\xbc\x1fJ\
+\xbf\xdf?\x06\x8c\x81\xbe\xef\xcbF\xb4!\x95k\x81\xac<{*\xf3\x0b\xf3\xe2\x16\
+\xdd\x13\x811\x10\x90`jR\xd6\xdf\xad\x8f*^\t\xa4|\xb6|:\x98\xc1\xe5\xb2/\x93\
+\x97.J\xb8\x18\xfe\x17\xb2lg\xf4\xc9\x01\xe4\xf0@|\xdf\xc5\x18\xc3\x8f\x9f\
+\xbf-N\xd1\x1f(\xba\xfe\xd4\xf5\xbb\xa30\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolStaticBitmapBitmap():
     return BitmapFromImage(getToolStaticBitmapImage())
@@ -1106,13 +1163,13 @@ def getToolStaticBoxData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x16\x08\x06\
 \x00\x00\x00\xda}\\\x88\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\x9aIDATx\x9c\xed\x95[\n\x031\x08E}\xad6\xae\xa6\xcc\xa4\xab\x1dc\
+\x00\x00\x9aIDATH\x89\xed\x95[\n\x031\x08E}\xad6\xae\xa6\xcc\xa4\xab\x1dc\
 \x7fj\xe9+\x99"-C!\x17\x84\x044GE\t"1\x8c\xe4\xcd\x1c\x89q\xe84\x10e\x03\xbf\
 \x02\x88\xec\xbd\x99g\x01\xb2,\xa7\x87`-\n\xc42lI\xb3\xcd\xeb\xb9\xee>\xaeEA\
 \xe2\x10\x8a\xc7\xef{\x1fU\xc4\x9dX\xb0\xd9\xf6QU\xb7\x16\x11\x0b>g\xee\xcd<\
 \xec%\xf0\xea\xdf\xb3\xa8P\xdeQ{\x93\x93\x99\xa8c\xa6\xa8\x97ef\x1f\x8e\xdd\
 \x83\t\x98\x80\t\xf8\x13\x00\xaeuM\xffV{\xd2\xa2\x80\xee\xfe3\x00\x00\xc0\
-\x05+eB\x8b\x0e<\xcdh\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x05+eB\x8b9\xd0&\xe6\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolStaticBoxBitmap():
     return BitmapFromImage(getToolStaticBoxImage())
@@ -1131,11 +1188,11 @@ def getToolStaticBoxSizerData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00iIDATx\x9c\xed\x92\xd1\n\x800\x08E\xbd\xdao\x8e\xc9\xd8w\x05\xd1w.{\
+\x00\x00iIDAT8\x8d\xed\x92\xd1\n\x800\x08E\xbd\xdao\x8e\xc9\xd8w\x05\xd1w.{\
 \xe9a\xad\xa8\xad\x05\xbdt@\x04\x85\x83\\\x04X\xa8\x07.\x07\xb6${,\xb0%\x19X\
 \xd0"\x19\x88\x88|p6\x8d3\xca\x0b|p\xf7"\xb0\x90F\xb5-\x8b]\xcfwg\xa5Q\x8d\
 \x0b\x19\xf2^\xc3!\xc4V~\xc1\x0b\x02\x80\xa5\xeea\xae\x04=|\x9f\xc1\n5\x8d!\
-\x0c\xe9\x92\xca\xdd\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x0c[3\xf5K\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolStaticBoxSizerBitmap():
     return BitmapFromImage(getToolStaticBoxSizerImage())
@@ -1152,10 +1209,10 @@ def getToolStaticBoxSizerIcon():
 #----------------------------------------------------------------------
 def getToolStaticLineData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x14\x00\x00\x00\x02\x08\x06\
-\x00\x00\x00X\x06\xfc\x8b\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\x19IDATx\x9cc\x9c2u\xca\x7f\x06*\x81\xec\xacl\x06\x16\x18\x83Z\x00\
-\x00|\xe8\x05B@2\xc8}\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x14\x00\x00\x00\x02\x08\x02\
+\x00\x00\x00\xd7dk\xdc\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00\x17IDAT\x18\x95c\x9c2u\n\x03Y ;+\x9b\x05B\x91\xa7\x1f\x00gO\x04C\xda+\
+\x0c\xd5\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolStaticLineBitmap():
     return BitmapFromImage(getToolStaticLineImage())
@@ -1174,11 +1231,11 @@ def getToolStaticTextData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x16\x00\x00\x00\r\x08\x06\
 \x00\x00\x00\xad\xa5\x9ec\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00iIDATx\x9c\xd5SA\n\xc00\x08S\xbb\xff\xffX\xb3\x93\xe0J\x1ct\xa3\x8c\
+\x00\x00iIDAT8\x8d\xd5SA\n\xc00\x08S\xbb\xff\xffX\xb3\x93\xe0J\x1ct\xa3\x8c\
 \xe5f\xb4I\x14\xaajCv\xc0\xb6\xa8~"\x8cp\xdc\xd5\x8f\x85\xdf\x82\n#\x1cjCYJ\
 \x84\x83m3sK\x89\xd3\xb0\x9a2\x8e\n\xe7\xa0\x88\xc8<\x9c|\x87\xda?\xbad+\x9b\
-0\\\x84kZf\xd4\xf5\xd9{\x9a\xb8C=\r;W5\xd5\xdf}\xe9\x13!\xebT\x08o\xae\xb7\
-\xaf\x00\x00\x00\x00IEND\xaeB`\x82' 
+0\\\x84kZf\xd4\xf5\xd9{\x9a\xb8C=\r;W5\xd5\xdf}\xe9\x13!\xebT\x08\xdd\x0f\
+\x889\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolStaticTextBitmap():
     return BitmapFromImage(getToolStaticTextImage())
@@ -1195,13 +1252,11 @@ def getToolStaticTextIcon():
 #----------------------------------------------------------------------
 def getToolTextCtrlData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x0c$\xbf\x95\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00HIDATx\x9cc\x9c2u\xca\x7f\x06\x1a\x02\x16\x06\x06\x06\x86\x9c\xec\
-\x1c\x9a\x18\xfe\xff\xff\x7f\x88\x050\x0e5\xc1\xb5\xeb\xd7\x18\x18\x18\x18\
-\x18\x98\xa8j*\x160j\xc1\xa8\x05\xa3\x16\x0c\x07\x0b\xe0e\x11\xac\xec\xa0\
-\x89\x05\xd4.\xe8\x90\x01\x00"2\x12$\xda\x8d\xe8\t\x00\x00\x00\x00IEND\xaeB`\
-\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x18\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x83F(\xc2\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x009IDAT8\x8dc\x9c2u\n\x03U\x00U\x0c\xfa\xff\xff?\x0b\x9cE\xb6)\xd7\xae_c``\
+`\xa2\xdc9\x100j\xd0\xa8A\xc3\xd3 h^\x83\xe4\x17J\r\xa2$\xc7\xc2\x01\x00\xf4\
+\x87\x11\x9b\xfda\x80c\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolTextCtrlBitmap():
     return BitmapFromImage(getToolTextCtrlImage())
@@ -1218,12 +1273,12 @@ def getToolTextCtrlIcon():
 #----------------------------------------------------------------------
 def getToolToolData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\t\x00\x00\x00\t\x08\x06\x00\
-\x00\x00\xe0\x91\x06\x10\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00LIDATx\x9c\x95\xd0\xb1\r\xc0 \x10C\xd1GD\xc1X\x8c\xce\x18\x8cB\x11)\
-\xa9\x12!qB\xc9\xaf\xae\xf0\xd9\x96\xd38\xc7eC\xc9E\x86\xde{(h\xad\x81c\xe7\
-\xf2\x90\xa3O\xa8\xb5\xbe\xf7\'\xa7\xffqs\xc4"\x9a\xbbD$lw\x82\x1b\xd7\x84\
-\x0f\xdfLT\x19\x1d\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\t\x00\x00\x00\t\x08\x02\x00\
+\x00\x00o\xf3\x91G\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\x00>\
+IDAT\x18\x95c\xfc\xf1\xe7\x07\x036\xc0\xc1\xc2\xc1\xc2\xc0\xc0p\xe3\xc6\r4\
+\x89\x03\x07\x0e0000a\xd5\x04\x01,hj\x19\x18\x18\x1c\x1c\x1c \x0c|\xfa\x883\
+\x13n\x14\x8a\x1c\xdc&\x12\x00\x00b\xc7\r\xe0\xb7\\uG\x00\x00\x00\x00IEND\
+\xaeB`\x82' 
 
 def getToolToolBitmap():
     return BitmapFromImage(getToolToolImage())
@@ -1240,13 +1295,14 @@ def getToolToolIcon():
 #----------------------------------------------------------------------
 def getToolToolBarData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x08\x08\x06\
-\x00\x00\x00\xf0v\x7f\x97\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00lIDATx\x9c\xa5\x91\xb1\r\x800\x0c\x04\x0f\x94\x82Q\\Px\x84\x8c\x98\
-\x82\xc2\xe3d\x8c\x8cB\x81\x04U\x02\x01\x89\x88p\x95\xcf/[\x96<\xac\xdb\xba\
-\xd3\xc9\xe4&\x1c@J\xe9\xf3p\x8c\x11\x8017dVd\xd6\x12\x88("\xa7\xab(z\xf1\
-\xcc\xc8O\\.l\tU`V{\xb8\xf9c\x81\xf7\xbe\nZ^\x16\x98Y\xf3\xcc7\x06\xa0\xfb\
-\x8d\x00\x07:\x91\x1c\xf1\xcb\xec\x06\xb4\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x08\x08\x02\
+\x00\x00\x00\x7f\x14\xe8\xc0\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\
+\x00\x00\x00bIDAT\x18\x95c\xfc\xf1\xe7\x07\x03\xd1\x80\x83\x85\x83\x85\x81\
+\x81\xe1\xc6\x8d\x1b\xc4\xa8>p\xe0\x00\x03\x03\x03\x13\x84\xa3\xa1c\xa0\xa1c\
+\x00\x11\xd2\xd00\xd0\xd0\x80\xb2\r4\x0c\x0c`l\x08`"\xde=\x10\xc0\x02\xa1fL\
+\x99\x00\x17\x9a1\x03\xc1\x9e\x80\xc4F\xd1\xe0\xe0\xe0\x00\x17\xc2\xc5\x86j\
+\x981c\x06\xa9\xae"\r\x00\x00T$\x1a\xf2\x8e\xbd4\xb3\x00\x00\x00\x00IEND\xae\
+B`\x82' 
 
 def getToolToolBarBitmap():
     return BitmapFromImage(getToolToolBarImage())
@@ -1263,13 +1319,13 @@ def getToolToolBarIcon():
 #----------------------------------------------------------------------
 def getToolTreeCtrlData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
+"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00aIDATx\x9c\xed\x93\xc1\n\x80@\x08Dg\xb4_\xaa\xfc\xff[\xf5M\xb5\xdd\x96m\
-\xd1\xa8\xbc6\xe0A\x19\x07\x9e )\x8a\x8c\x06oX\x8e\xbd\xb4=E\x19\x06\xcc\xd3\
-x1/\xeb\x16\x9a]Q\x14fV(\x8a/\xe5"x\x18\x11R\rhQ\xde`\xd4\x80~\xe9\xeepn@\
-\xaf\x1f\xe19\x02\xb3\xbf \xa9m\x00\'\x0f\xb3\'\x06\x9f\r?\x1f\x00\x00\x00\
-\x00IEND\xaeB`\x82' 
+\x00cIDAT(\x91\xed\x90\xc1\x0e\x800\x08C[\xf0\x97T\xfe\xff\xa6~\x93n\xb7e.`\
+\xa6\xbb\xda\x84\x03\xa4m\xf2 E1\xa2\xc9;\xa6\xebL\xf5NQ\x86\x05\xeb2\xdf\
+\xcc\xdb~\x84fW\x14\x85\x99%\x8a\xe2\xcb\xb8\x08\x1eF\x84T\nj\x947\x18\xa5\
+\xa0\r==\xce-h\xf5#\xf4#\x90\xa2\xbd^W2\x94\x06\x90\x01\x0f\xb3'\x06\xe8\x11\
+R\xf1\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getToolTreeCtrlBitmap():
     return BitmapFromImage(getToolTreeCtrlImage())
@@ -1286,13 +1342,12 @@ def getToolTreeCtrlIcon():
 #----------------------------------------------------------------------
 def getToolUnknownData():
     return \
-"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00cIDATx\x9c\xc5S\xc9\r\xc0 \x0c3\xa8\xd3\x90\xfdG\x81u\xca\x03UB\x15N\
-\x02y\xe0'\xc8\xa7 \x01x\x11\xc0\x03\x00\xb5\xd5#\xb2\x14\x19\x02\xecr\x063\
-\xc9\x1e2;\xa3\x02\xb3\xabUO\x15\xf0`\xb9\xc1\xce\xa8f\x82\xaf\xfb\xd6\x88\
-\x7fr(\x81\xe6\xee\x16\xd0@\x1f\x92\xe5\xecJ E\xcc\x1d\xeeWH\x08~\xe7\x0e*\
-\xc0\x1c\xa7 \xd7h\x05\x00\x00\x00\x00IEND\xaeB`\x82" 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x90\x91h6\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00XIDAT(\x91c` \x110200\\\xbdv\x95H\xd5\xdaZ\xda,XE\xe1lL\xb3\x98\xf0\xa8\
+\xc6\xe4b\xd1\x007\x18\x97;\xb1k\xc0\x03\xd0\xfd@0\x00p\xda\x00q=aO#\xab&\
+\xcd\x06\xac\xc6\x13\xd0\x80\x15`\x898\\f\xe3\xb3A[K\x1b\x977h\xef$\x92\x01\
+\x00\x93O\x1a\xa4(\x924\xbb\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getToolUnknownBitmap():
     return BitmapFromImage(getToolUnknownImage())
@@ -1311,11 +1366,11 @@ def getTreeDefaultData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\\IDATx\x9c\xc5\x92Q\n\xc00\x08C\x13\xdb\x8f\xde\xffD\x1e\xc3\x8b\x8c\
+\x00\\IDAT(\x91\xc5\x92Q\n\xc00\x08C\x13\xdb\x8f\xde\xffD\x1e\xc3\x8b\x8c\
 \xc1`\xeb\xfek\x1d\x0c\x0b\xcdg\xd0\x07&\x92R\x90\x91\xa4\xb6W\x00\xeah\x9c\
 \xd7\xd1\xa3\xe1V\x1b(\x85\x9f\x00\x0003\xe7\xa9\xea\x14\xba?\x83\xf5!\x02\
-\xf1\xbd3q|\xa4\xfe\xdca\x0b\x00\\\x0b\x0e\xf0W\xfbCL\x03^\xd7\x11\x0f:g|b\
-\x05\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xf1\xbd3q|\xa4\xfe\xdca\x0b\x00\\\x0b\x0e\xf0W\xfbCL\x03^\xd7\x11\x0f:\xa3\
+\xa1\x04w\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeDefaultBitmap():
     return BitmapFromImage(getTreeDefaultImage())
@@ -1332,12 +1387,12 @@ def getTreeDefaultIcon():
 #----------------------------------------------------------------------
 def getTreeDialogData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00IIDATx\x9ccd``\xf8\xcf@\x01`\x81P?\xc8\xd4\xce\xc1\xc0D\x89\xed\x0c\
-\x0c\x0c\x94\x1b\xc0\xc8@\x8d0\xb8p\xe5\x02Y\x9a\rt\x0c\x06A\x18\x8c$\x03\
-\x0e\x1c8@\x1b\x17\xb0\x90b\x1b\xd1\x06888\x10m\x00\xc5I\x19\x00\xe6)\x0cc\
-\xbf\x9c\xcc\xa1\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x90\x91h6\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x00CIDAT(\x91c` \x11020000\xfc Z=\x07\x13\xa96\x90\xac\x81d\xc0\xc8\xc0\xc0\
+p\xe1\xca\x05"U\x1b\xe8\x18\xd0\xde\x0fCO\xc3\x81\x03\x07(\xb5\x81\x85\xa0\
+\x91\x044888\x90j\'\x01\x00\x00l\xe2\t]3\x1c\x89\xf6\x00\x00\x00\x00IEND\xae\
+B`\x82' 
 
 def getTreeDialogBitmap():
     return BitmapFromImage(getTreeDialogImage())
@@ -1354,11 +1409,11 @@ def getTreeDialogIcon():
 #----------------------------------------------------------------------
 def getTreeFrameData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
-\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00:IDATx\x9ccd``\xf8\xcf@\x01`\x81P?\xc8\xd4\xce\xc1\xc0D\x89\xed\x0c\
-\x0c\x0c\x94\x1b\xc0\xc8@\x8d0\xb8p\xe5\x02Y\x9a\rt\x0c\x06A\x18\x8c\x1a0,\
-\x0c\xa08)\x03\x00\x90c\x07\x1f\xb3yvF\x00\x00\x00\x00IEND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x02\
+\x00\x00\x00\x90\x91h6\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\x00\
+\x004IDAT(\x91c` \x11020000\xfc Z=\x07\x13\xa96\x90\xac\x81d\xc0\xc8\xc0\xc0\
+p\xe1\xca\x05"U\x1b\xe8\x18\xd0\xde\x0f\xa3\x1ah\xa2\x81d\x00\x00*K\x04\x19\
+\xfe\xab\xe3r\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeFrameBitmap():
     return BitmapFromImage(getTreeFrameImage())
@@ -1377,11 +1432,11 @@ def getTreeMenuData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00bIDATx\x9ccddbf\x80\x81\xef\xbf\xbe\xfeg \x02p\xb0p002132000\xb0\xa0\
+\x00\x00bIDAT8\x8dcddbf\x80\x81\xef\xbf\xbe\xfeg \x02p\xb0p002132000\xb0\xa0\
 K\xde\xb8q\x03\xaf\xe6\x03\x07\x0e\xa0\xf01\x0c\xc0\xa6\x08\x06\x1c\x1c\x1c0\
 \xc4\x98\xf0ZG\x04\xa0\xd8\x00\xac^\xc0\xe6T\x92\x0c\x18\r\x83\xd10\xc0\xe5\
 \x7f\\\x80\x119;\xff\xff\xf7\x97\xa8\xec\xcc\xc0\xc0\x00\xcf\xce\x00\x8f\x14\
-\x1a\x83K\xe9G\x81\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x1a\x83cs\x82P\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeMenuBitmap():
     return BitmapFromImage(getTreeMenuImage())
@@ -1400,11 +1455,11 @@ def getTreeMenuBarData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00aIDATx\x9c\xed\x93\xb1\r\x800\x0c\x04\xcf!E\xc6\xca\x98\x19\xc7cx\
+\x00\x00aIDAT8\x8d\xed\x93\xb1\r\x800\x0c\x04\xcf!E\xc6\xca\x98\x19\xc7cx\
 \x94\x14HP "7)\x88\x0b(\xb8\xf2\xa5\x7f\xbdmY$mDH!\xf7\'\x02\xa4\xef\xfdX5\
 \x97\\\xc8\x00f\xf6\xd8\xac\xaa\x00W\x80\x17<\xb5\xd6\xa9~\xf3\xfe\x12\xc7\
 \x08\xbe\x96g\xa6\x8f\x80\xd6Z\xa8\x81\x00\xcbg\x04\x90\xff\x178\x01o\x9c\
-\x13?\x15\xa3\xaau\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x13?\x8d\xde\xe5M\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeMenuBarBitmap():
     return BitmapFromImage(getTreeMenuBarImage())
@@ -1423,11 +1478,11 @@ def getTreeMenuItemData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00gIDATx\x9c\xc5RA\n\x800\x0cK\xbb\x1d\xf6\xac>}\xcf\xe8GD\x10t\x9e*\x0cu\
+\x00gIDAT(\x91\xc5RA\n\x800\x0cK\xbb\x1d\xf6\xac>}\xcf\xe8GD\x10t\x9e*\x0cu\
 \x16\xaa\x98S[H\x9a@\x888!\x02\x0e\xb1\x01d\x1b\xe6ej^R\xc9\x05\xc4\x89:\x01\
 \x00P\xd5Gr\xad\xb5\xdb\xdf\x8b0\xfab\x10\x91\xd3-\xec\xe0\x9b\x08WV]\x02w\
-\xd9G kb\xdbVw\x0f\x00\x1c=\xa0\xdf\xab\x1c\x16\xd8\x01n\xd6\x12\xfe\x01\x8c\
-\x8ep\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xd9G kb\xdbVw\x0f\x00\x1c=\xa0\xdf\xab\x1c\x16\xd8\x01n\xd6\x12\xfe`\x9f\
+\xfe\xd6\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeMenuItemBitmap():
     return BitmapFromImage(getTreeMenuItemImage())
@@ -1444,12 +1499,11 @@ def getTreeMenuItemIcon():
 #----------------------------------------------------------------------
 def getTreePanelData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
-\x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00CIDATx\x9c\xed\xd31\x0e\x800\x0cC\xd1W\x94\xa1\xf7?Q\x8e\x91\xa3t@\x82\t\
-1\x131\xf6\xef\xfe^\xec\xb1\xceui2c\n\xa8\xaa\xcf\xe1\xcc\x04G\xb7\xfda\x0b\
-\xb6\xe0\x17A\xf0\xce\xb2\xc3@\xfbLp\x03\xeer\x0c%l\xbc\t6\x00\x00\x00\x00IE\
-ND\xaeB`\x82' 
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x02\
+\x00\x00\x00\xa9M\x0b\xdd\x00\x00\x00\x03sBIT\x08\x08\x08\xdb\xe1O\xe0\x00\
+\x00\x002IDAT(\x91c\xfc\xf1\xe7\x07\x03\xd1\x80\x83\x85\x83\x85\x81\x81\xe1\
+\xc6\x8d\x1b\xc4\xa8>p\xe0\x00\x03\x03\x03\x13\xf1\xc6C\xc0\xa8\x86!\xaa\x81\
+\x85\x01\x16\xe7\xb4\x02\x00vv\n&i\xb3\xa3d\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreePanelBitmap():
     return BitmapFromImage(getTreePanelImage())
@@ -1466,13 +1520,13 @@ def getTreePanelIcon():
 #----------------------------------------------------------------------
 def getTreeRootData():
     return \
-'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
+"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00aIDATx\x9c\xed\x93\xc1\n\x80@\x08Dg\xb4_\xaa\xfc\xff[\xf5M\xb5\xdd\x96m\
-\xd1\xa8\xbc6\xe0A\x19\x07\x9e )\x8a\x8c\x06oX\x8e\xbd\xb4=E\x19\x06\xcc\xd3\
-x1/\xeb\x16\x9a]Q\x14fV(\x8a/\xe5"x\x18\x11R\rhQ\xde`\xd4\x80~\xe9\xeepn@\
-\xaf\x1f\xe19\x02\xb3\xbf \xa9m\x00\'\x0f\xb3\'\x06\x9f\r?\x1f\x00\x00\x00\
-\x00IEND\xaeB`\x82' 
+\x00cIDAT(\x91\xed\x90\xc1\x0e\x800\x08C[\xf0\x97T\xfe\xff\xa6~\x93n\xb7e.`\
+\xa6\xbb\xda\x84\x03\xa4m\xf2 E1\xa2\xc9;\xa6\xebL\xf5NQ\x86\x05\xeb2\xdf\
+\xcc\xdb~\x84fW\x14\x85\x99%\x8a\xe2\xcb\xb8\x08\x1eF\x84T\nj\x947\x18\xa5\
+\xa0\r==\xce-h\xf5#\xf4#\x90\xa2\xbd^W2\x94\x06\x90\x01\x0f\xb3'\x06\xe8\x11\
+R\xf1\x00\x00\x00\x00IEND\xaeB`\x82" 
 
 def getTreeRootBitmap():
     return BitmapFromImage(getTreeRootImage())
@@ -1491,9 +1545,9 @@ def getTreeSeparatorData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x007IDATx\x9ccddbf\xa0\x040Q\xa4{\xd4\x00\x06\x06\x06\x06\x06\x16\x18c\xf2\
+\x007IDAT(\x91cddbf\xa0\x040Q\xa4{\xd4\x00\x06\x06\x06\x06\x06\x16\x18c\xf2\
 \xe4\x89\xff\x89\xd5\x94\x9d\x95\xcd\xc0\xc4\xcc\xc2\x88b\x00L\x82T\xc08\x9a\
-\x0e\x06\x81\x01\x00>\xbc\x05k\xf5\xfc\x18M\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x0e\x06\x81\x01\x00>\xbc\x05k_\x9b\x88\x1d\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeSeparatorBitmap():
     return BitmapFromImage(getTreeSeparatorImage())
@@ -1510,12 +1564,12 @@ def getTreeSeparatorIcon():
 #----------------------------------------------------------------------
 def getTreeSizerFlexGridData():
     return \
-"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00?IDATx\x9ccddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\
+\x00\x00?IDAT8\x8dcddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\
 \x8c\xb1\x89aS\xc3D\xb6\xcdP0\xf0\x060\x8e\x06\xe2\xa8\x01\xd40\x80\xe2\x84\
-\xc4\xc8\xc8\xc4L\x91\x0b\x00\xb7J\x13\xf6R\x88'\x0b\x00\x00\x00\x00IEND\xae\
-B`\x82" 
+\xc4\xc8\xc8\xc4L\x91\x0b\x00\xb7J\x13\xf6st\x19\xa8\x00\x00\x00\x00IEND\xae\
+B`\x82' 
 
 def getTreeSizerFlexGridBitmap():
     return BitmapFromImage(getTreeSizerFlexGridImage())
@@ -1534,9 +1588,9 @@ def getTreeSizerGridData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00=IDATx\x9ccddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\r\
+\x00\x00=IDAT8\x8dcddbf\x88O\x8a\xfd\xcf@.`dbfHHI\xf8\xcf\xc8\xc4\xcc\x80\r\
 \x13\x92c"\xdbf(\x185\x80\x81\x81q4\x1a\x87\x83\x01\x14G###\x133E.\x00\x00\
-\x18\x10\x13\xf6M^\xe8\x9a\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x18\x10\x13\xf65~\x97=\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeSizerGridBitmap():
     return BitmapFromImage(getTreeSizerGridImage())
@@ -1555,10 +1609,10 @@ def getTreeSizerGridBagData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00SIDATx\x9ccddbf\x88O\x8a\xfd\xcf@&`\x811\x16\xce[\xccH\xaa\xe6\xf8\
+\x00\x00SIDAT8\x8dcddbf\x88O\x8a\xfd\xcf@&`\x811\x16\xce[\xccH\xaa\xe6\xf8\
 \xa4\xd8\xffL\xe4\xda\x0c\x03\x03o\x00<\x0c\xc8\x0eHF&f\x86\x84\x94\x84\xff\
 \x8cL\xcc\x0c\xc8\x18\x9b\x1865\x03\x1f\x06\xa3\x06P\xc1\x00FJs###\x133E.\
-\x00\x00\x9f\x06\x11@\xf1\x14Nh\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x00\x00\x9f\x06\x11@\\\xf4\xbaw\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeSizerGridBagBitmap():
     return BitmapFromImage(getTreeSizerGridBagImage())
@@ -1577,10 +1631,10 @@ def getTreeSizerHData():
     return \
 "\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00CIDATx\x9ccddbf\xa0\x040Q\xa4\x9b\x1a\x06\xb00000\xc4'\xc5\xfe'\xdb\
+\x00\x00CIDAT8\x8dcddbf\xa0\x040Q\xa4\x9b\x1a\x06\xb00000\xc4'\xc5\xfe'\xdb\
 \x04F&f\x86\x84\x94\x84\xff\x8cL\xcc\x0c\xd80!\xb9\x81\x0f\x83Q\x03\xa8`\x00\
-##\x133E\t\x89q\xe8g&\x00\xf6\x1a\x0b!\xd5\xcf\xe1\x80\x00\x00\x00\x00IEND\
-\xaeB`\x82" 
+##\x133E\t\x89q\xe8g&\x00\xf6\x1a\x0b!P\x84!\x1e\x00\x00\x00\x00IEND\xaeB`\
+\x82" 
 
 def getTreeSizerHBitmap():
     return BitmapFromImage(getTreeSizerHImage())
@@ -1599,10 +1653,10 @@ def getTreeSizerVData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00?IDATx\x9ccddbf@\x06\xf1I\xb1\xff\x19\x08\x80\x85\xf3\x163\xc2\xd8,\
+\x00\x00?IDAT8\x8dcddbf@\x06\xf1I\xb1\xff\x19\x08\x80\x85\xf3\x163\xc2\xd8,\
 \x84\x14\xa0\x03t\x0b\x98\x08\xd9F\x08\x8c\x1a\x80#\x16\x88\x89J\xbc\x06\x8c\
-F#\x9d\r\xa08\x1a\x19\xd1\xb33\xa9\x00\x00\xdc)\x10m8\xd9\x85\x8e\x00\x00\
-\x00\x00IEND\xaeB`\x82' 
+F#\x9d\r\xa08\x1a\x19\xd1\xb33\xa9\x00\x00\xdc)\x10m\x19%\xbb-\x00\x00\x00\
+\x00IEND\xaeB`\x82' 
 
 def getTreeSizerVBitmap():
     return BitmapFromImage(getTreeSizerVImage())
@@ -1621,11 +1675,11 @@ def getTreeStaticBoxSizerHData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00iIDATx\x9c\xed\x92\xd1\n\x800\x08E\xbd\xdao\x8e\xc9\xd8w\x05\xd1w.{\
+\x00\x00iIDAT8\x8d\xed\x92\xd1\n\x800\x08E\xbd\xdao\x8e\xc9\xd8w\x05\xd1w.{\
 \xe9a\xad\xa8\xad\x05\xbdt@\x04\x85\x83\\\x04X\xa8\x07.\x07\xb6${,\xb0%\x19X\
 \xd0"\x19\x88\x88|p6\x8d3\xca\x0b|p\xf7"\xb0\x90F\xb5-\x8b]\xcfwg\xa5Q\x8d\
 \x0b\x19\xf2^\xc3!\xc4V~\xc1\x0b\x02\x80\xa5\xeea\xae\x04=|\x9f\xc1\n5\x8d!\
-\x0c\xe9\x92\xca\xdd\x00\x00\x00\x00IEND\xaeB`\x82' 
+\x0c[3\xf5K\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeStaticBoxSizerHBitmap():
     return BitmapFromImage(getTreeStaticBoxSizerHImage())
@@ -1644,11 +1698,11 @@ def getTreeStaticBoxSizerVData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00gIDATx\x9c\xdd\x91A\n\xc0 \x0c\x047\xb1\xdf\x14\xc1\x87\t\xe2;5=)\
+\x00\x00gIDAT8\x8d\xdd\x91A\n\xc0 \x0c\x047\xb1\xdf\x14\xc1\x87\t\xe2;5=)\
 \xd2\x1a\xaa\xedAh \x97\x90\x1d\x92]"6\xd0JJ\x16bC\xea\x02\x00~\x12K\xc9\xb2\
 \x04p\xde6A/v\xdeJ\xed\xa9\x0b\x00\xa0??\x86D1\xa4\xdb;*\xa0\x8a_{0[?\x00\
-\x1c\xa3\xe15\xaae\xc0(.\r\xbe\xdf\x83\xfd\x80\xcf)\x9cv)$\xa7EIx_\x00\x00\
-\x00\x00IEND\xaeB`\x82' 
+\x1c\xa3\xe15\xaae\xc0(.\r\xbe\xdf\x83\xfd\x80\xcf)\x9cv)$\xa7\x1d\x96\xa3\
+\x0e\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeStaticBoxSizerVBitmap():
     return BitmapFromImage(getTreeStaticBoxSizerVImage())
@@ -1667,11 +1721,11 @@ def getTreeToolData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x0e\x08\x06\
 \x00\x00\x00&/\x9c\x8a\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00fIDATx\x9ccddbf\xa0\x040Q\xa4\x9b\x1a\x06\xb0\xa0\x0b|\xff\xf5\xf5?>\r\
+\x00fIDAT(\x91cddbf\xa0\x040Q\xa4\x9b\x1a\x06\xb0\xa0\x0b|\xff\xf5\xf5?>\r\
 \x1c,\x1c\x0c\x8cL\xcc\x8c8\r````\xb8q\xe3\x06V\xcd\x07\x0e\x1c\xc0\x10\xa3\
 \xbe\x17p\xd9\xe8\xe0\xe0\x80U\xcd \x8c\x05d\x80\xcb\xd9\x04\r\xc0\x16\xda\
 \xb8\x00#zR\xfe\xff\xef/\xdet\xc0\xc0\xc0\x80\x92\x0e0\x0c \x15P\x1c\x88\x00\
-4\x07\x12\xfe0\x81\xfe\x92\x00\x00\x00\x00IEND\xaeB`\x82' 
+4\x07\x12\xfeH\x0e\x8bL\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeToolBitmap():
     return BitmapFromImage(getTreeToolImage())
@@ -1690,12 +1744,12 @@ def getTreeToolBarData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
 \x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
-\x00\x00\x7fIDATx\x9c\xed\x93\xb1\r\xc30\x0c\x04\x8f\xb6\n\x8f\xc2\xc2\x05G\
+\x00\x00\x7fIDAT8\x8d\xed\x93\xb1\r\xc30\x0c\x04\x8f\xb6\n\x8f\xc2\xc2\x05G\
 \xd0\x88.Rp\x1c\x8d\xa1QT\x04\xb0+\xdbR\x02\xc4\x88\xd5\xa4\xc8W:<\xfe!\x89\
 \xa0\xc80\xd2\xa3\xa1+\xfd\x13\x05R\x9ee\xbd\x1b\x9e\xc2D\x00\xc89\x7f\x1dN)\
 \x01\xd5\x13t6t\xb6\xc3P5TO65\xac\xe2]\xdd\x7f\x10\xf6\x83?\x96\xc6poyy\xe1\
 \xb7\x82\x18cc\\\xf1Q\xe0\xee\x97\xd7\xfc$\x01n\x8f\x11@\xfe\xbb\xc0\x06\xdd\
-\xdc\x1d\x0b\xaa\xed\xd2\xa5\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xdc\x1d\x0ba6\x83o\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getTreeToolBarBitmap():
     return BitmapFromImage(getTreeToolBarImage())
@@ -1714,14 +1768,14 @@ def getUndoData():
     return \
 '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x17\x00\x00\x00\x16\x08\x06\
 \x00\x00\x00+v\x07\x05\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\
-\x00\xb0IDATx\x9c\xed\x94\xb1\r\xc20\x14D\x9f\xed\x14\xd0Q2\x02\x030\x00s\
+\x00\xb0IDAT8\x8d\xed\x94\xb1\r\xc20\x14D\x9f\xed\x14\xd0Q2\x02\x030\x00s\
 \xb0\x06\xa2\xcc\x04(;QPf\x10\x97t\xb8H\xf2)P"\x04&\xb6\x1c,\xa5\xc8InN\xf6;\
 \xe9\xfbl\xa5\xb4!\x97t6\xf2\x02O\x86K\xd7J\x16\xf8\x140@1\x06\xbe\x1c\xb6\
 \xb8\x06\xca\x9b\x1dB\x946*\x16\xae|=\xef\xc1\xebb\xc5\xa3q\x00\xb8\x06\xee\
 \x0e\xaa\xdaF\x87x\xe1\xef\x01\x00\xe7\xab\x1d\xfc\xd3\xfe\xe5U\xb5\r\x07(m~\
 .@\x00\xf9\xf4\x8e\xbb\xcd\x97\xef=\x1f\xdc\xe0\x81D\x07\xa4\xfe-}\x93\xc6F3\
-\xdf\x17\x1a\xba\xd0$\xb8t\xadL\xaa\xe2?4\xdf\x99/\xf0$=\x01\xf3\xa3=5\xd2\
-\xe4\xd5\x92\x00\x00\x00\x00IEND\xaeB`\x82' 
+\xdf\x17\x1a\xba\xd0$\xb8t\xadL\xaa\xe2?4\xdf\x99/\xf0$=\x01\xf3\xa3=5\x1b-\
+\xa8R\x00\x00\x00\x00IEND\xaeB`\x82' 
 
 def getUndoBitmap():
     return BitmapFromImage(getUndoImage())
index ef153502b41bfec39fa75780d7070da9626282af..bb88297efb710d791e81628852796778fd84f6a9 100644 (file)
@@ -11,19 +11,24 @@ from types import *
 from wxPython.xrc import *
 
 genericStyles = [
-    'wxCLIP_CHILDREN',
-    'wxSIMPLE_BORDER',
-    'wxSUNKEN_BORDER',
-    'wxDOUBLE_BORDER',
-    'wxRAISED_BORDER',
-    'wxSTATIC_BORDER',
-    'wxNO_BORDER',
-    'wxTRANSPARENT_WINDOW',
+    'wxSIMPLE_BORDER', 'wxDOUBLE_BORDER', 'wxSUNKEN_BORDER',
+    'wxRAISED_BORDER', 'wxSTATIC_BORDER', 'wxNO_BORDER',
+    'wxTRANSPARENT_WINDOW', 'wxTAB_TRAVERSAL', 
     'wxWANTS_CHARS',
     'wxNO_FULL_REPAINT_ON_RESIZE',
-    'wxFULL_REPAINT_ON_RESIZE',
+    'wxVSCROLL', 'wxHSCROLL', 'wxALWAYS_SHOW_SB',
+    'wxCLIP_CHILDREN',
+    'wxFULL_REPAINT_ON_RESIZE'
+    ]
+
+genericExStyles = [
+    'wxWS_EX_VALIDATE_RECURSIVELY',
     'wxWS_EX_BLOCK_EVENTS',
-]
+    'wxWS_EX_TRANSIENT',
+    'wxFRAME_EX_CONTEXTHELP',
+    'wxWS_EX_PROCESS_IDLE',
+    'wxWS_EX_PROCESS_UI_UPDATES'
+    ]
 
 buttonSize = (35,-1)    # in dialog units, transformed to pixels in panel ctor
 
@@ -127,7 +132,7 @@ class ParamNonGenericStyle(ParamBinaryOr):
 class ParamExStyle(ParamBinaryOr):
     def __init__(self, parent, name):
         if g.currentXXX:
-            self.values = g.currentXXX.exStyles # constant at the moment
+            self.values = g.currentXXX.exStyles + genericExStyles
         else:
             self.values = []
         ParamBinaryOr.__init__(self, parent, name)
diff --git a/wxPython/wx/tools/XRCed/src-images/Locate.png b/wxPython/wx/tools/XRCed/src-images/Locate.png
new file mode 100644 (file)
index 0000000..0686506
Binary files /dev/null and b/wxPython/wx/tools/XRCed/src-images/Locate.png differ
diff --git a/wxPython/wx/tools/XRCed/src-images/LocateArmed.png b/wxPython/wx/tools/XRCed/src-images/LocateArmed.png
new file mode 100644 (file)
index 0000000..71379a7
Binary files /dev/null and b/wxPython/wx/tools/XRCed/src-images/LocateArmed.png differ
index 2b313966683a9cdcc71bfcf4981a0bc35c1c8673..cb68fa49a64c5abf66c71d4616a432595b928786 100644 (file)
@@ -81,13 +81,19 @@ class ID_NEW:
     GENERIC_DIR_CTRL = wxNewId()
     SPIN_CTRL = wxNewId()
     UNKNOWN = wxNewId()
+    WIZARD = wxNewId()
+    WIZARD_PAGE = wxNewId()
+    WIZARD_PAGE_SIMPLE = wxNewId()
+    STATUS_BAR = wxNewId()
 
     BOX_SIZER = wxNewId()
     STATIC_BOX_SIZER = wxNewId()
     GRID_SIZER = wxNewId()
     FLEX_GRID_SIZER = wxNewId()
     GRID_BAG_SIZER = wxNewId()
+    STD_DIALOG_BUTTON_SIZER = wxNewId()
     SPACER = wxNewId()
+    
     TOOL_BAR = wxNewId()
     TOOL = wxNewId()
     MENU = wxNewId()
@@ -117,6 +123,9 @@ class PullDownMenu:
             ID_NEW.PANEL: 'wxPanel',
             ID_NEW.DIALOG: 'wxDialog',
             ID_NEW.FRAME: 'wxFrame',
+            ID_NEW.WIZARD: 'wxWizard',
+            ID_NEW.WIZARD_PAGE: 'wxWizardPage',
+            ID_NEW.WIZARD_PAGE_SIMPLE: 'wxWizardPageSimple',
             ID_NEW.TOOL_BAR: 'wxToolBar',
             ID_NEW.TOOL: 'tool',
             ID_NEW.MENU_BAR: 'wxMenuBar',
@@ -161,6 +170,7 @@ class PullDownMenu:
             ID_NEW.GRID_SIZER: 'wxGridSizer',
             ID_NEW.FLEX_GRID_SIZER: 'wxFlexGridSizer',
             ID_NEW.GRID_BAG_SIZER: 'wxGridBagSizer',
+            ID_NEW.STD_DIALOG_BUTTON_SIZER: 'wxStdDialogButtonSizer',
             ID_NEW.SPACER: 'spacer',
             ID_NEW.UNKNOWN: 'unknown',
             }
@@ -168,6 +178,7 @@ class PullDownMenu:
             (ID_NEW.PANEL, 'Panel', 'Create panel'),
             (ID_NEW.DIALOG, 'Dialog', 'Create dialog'),
             (ID_NEW.FRAME, 'Frame', 'Create frame'),
+            (ID_NEW.WIZARD, 'Wizard', 'Create wizard'),
             None,
             (ID_NEW.TOOL_BAR, 'ToolBar', 'Create toolbar'),
             (ID_NEW.MENU_BAR, 'MenuBar', 'Create menubar'),
@@ -178,6 +189,8 @@ class PullDownMenu:
              (ID_NEW.NOTEBOOK, 'Notebook', 'Create notebook control'),
              (ID_NEW.SPLITTER_WINDOW, 'SplitterWindow', 'Create splitter window'),
              (ID_NEW.TOOL_BAR, 'ToolBar', 'Create toolbar'),
+#             (ID_NEW.WIZARD_PAGE, 'WizardPage', 'Create wizard page'),
+             (ID_NEW.WIZARD_PAGE_SIMPLE, 'WizardPageSimple', 'Create simple wizard page'),
             ]
         self.sizers = [
              (ID_NEW.BOX_SIZER, 'BoxSizer', 'Create box sizer'),
@@ -188,6 +201,8 @@ class PullDownMenu:
               'Create flexgrid sizer'),
              (ID_NEW.GRID_BAG_SIZER, 'GridBagSizer',
               'Create gridbag sizer'),
+#             (ID_NEW.STD_DIALOG_BUTTON_SIZER, 'StdDialogButtonSizer',
+#              'Create standard button sizer'),
              (ID_NEW.SPACER, 'Spacer', 'Create spacer'),
              ]
         self.controls = [
@@ -229,6 +244,8 @@ class PullDownMenu:
              (ID_NEW.NOTEBOOK, 'Notebook', 'Create notebook control'),
              (ID_NEW.SPLITTER_WINDOW, 'SplitterWindow', 'Create splitter window'),
              (ID_NEW.TOOL_BAR, 'ToolBar', 'Create toolbar'),
+#             (ID_NEW.WIZARD_PAGE, 'Wizard Page', 'Create wizard page'),
+             (ID_NEW.WIZARD_PAGE_SIMPLE, 'WizardPageSimple', 'Create simple wizard page'),
              ],
             ['sizer', 'Sizers',
              (ID_NEW.BOX_SIZER, 'BoxSizer', 'Create box sizer'),
@@ -240,6 +257,8 @@ class PullDownMenu:
              (ID_NEW.GRID_BAG_SIZER, 'GridBagSizer',
               'Create gridbag sizer'),
              (ID_NEW.SPACER, 'Spacer', 'Create spacer'),
+             (ID_NEW.STD_DIALOG_BUTTON_SIZER, 'StdDialogButtonSizer',
+              'Create standard button sizer'),
              ]
             ]
         self.menuControls = [
@@ -636,7 +655,8 @@ class XML_Tree(wxTreeCtrl):
             self.Apply(xxx, item)       # apply changes
         treeObj = xxx.treeObject()
         if treeObj.className not in ['wxFrame', 'wxPanel', 'wxDialog',
-                                     'wxMenuBar', 'wxToolBar']:
+                                     'wxMenuBar', 'wxToolBar', 'wxWizard',
+                                     'wxWizardPageSimple']:
             wxLogMessage('No view for this element (yet)')
             return
         # Show item in bold
@@ -724,6 +744,10 @@ class XML_Tree(wxTreeCtrl):
         else:
             name = xxx.name
         elem.setAttribute('name', STD_NAME)
+        # Replace wizard page class temporarily
+        if xxx.__class__ in [xxxWizardPage, xxxWizardPageSimple]:
+            oldCl = elem.getAttribute('class')
+            elem.setAttribute('class', 'wxPanel')
         parent = elem.parentNode
         next = elem.nextSibling
         parent.replaceChild(self.dummyNode, elem)
@@ -739,6 +763,8 @@ class XML_Tree(wxTreeCtrl):
             elem.removeAttribute('name')
         else:
             elem.setAttribute('name', xxx.name)
+        if xxx.__class__ in [xxxWizardPage, xxxWizardPageSimple]:
+            elem.setAttribute('class', oldCl)            
         memFile.close()                 # write to wxMemoryFS
         xmlFlags = wxXRC_NO_SUBCLASSING
         # Use translations if encoding is not specified
@@ -783,6 +809,32 @@ class XML_Tree(wxTreeCtrl):
                 # Dialog's default code does not produce EVT_CLOSE
                 EVT_BUTTON(testWin, wxID_OK, self.OnCloseTestWin)
                 EVT_BUTTON(testWin, wxID_CANCEL, self.OnCloseTestWin)
+            elif xxx.__class__ == xxxWizard:
+                wiz = wxPreWizard()
+                res.LoadOnObject(wiz, None, STD_NAME, 'wxWizard')
+                # Find first page (don't know better way)
+                firstPage = None
+                for w in wiz.GetChildren():
+                    if isinstance(w, wxWizardPage):
+                        firstPage = w
+                        break
+                if not firstPage:
+                    wxLogError('Wizard is empty')
+                else:
+                    # Wizard should be modal
+                    self.SetItemBold(item)
+                    wiz.RunWizard(w)
+                    self.SetItemBold(item, False)
+                    wiz.Destroy()
+            elif xxx.__class__ in [xxxWizardPage, xxxWizardPageSimple]:
+                # Create new frame
+                if not testWin:
+                    testWin = g.testWin = wxFrame(g.frame, -1, 'Wizard page: ' + name,
+                                                  pos=pos, name=STD_NAME)
+                testWin.panel = wxPrePanel()
+                res.LoadOnObject(testWin.panel, testWin, STD_NAME, 'wxPanel')
+                testWin.SetClientSize(testWin.GetBestSize())
+                testWin.Show(True)
             elif xxx.__class__ == xxxMenuBar:
                 testWin = g.testWin = wxFrame(g.frame, -1, 'MenuBar: ' + name,
                                               pos=pos, name=STD_NAME)
@@ -801,11 +853,12 @@ class XML_Tree(wxTreeCtrl):
                 testWin.toolBar = res.LoadToolBar(testWin, STD_NAME)
                 testWin.SetToolBar(testWin.toolBar)
                 testWin.Show(True)
-            testWin.item = item
-            EVT_CLOSE(testWin, self.OnCloseTestWin)
-            testWin.highLight = None
-            if highLight and not self.pendingHighLight:
-                self.HighLight(highLight)
+            if testWin:
+                testWin.item = item
+                EVT_CLOSE(testWin, self.OnCloseTestWin)
+                testWin.highLight = None
+                if highLight and not self.pendingHighLight:
+                    self.HighLight(highLight)
         except:
             if g.testWin:
                 self.SetItemBold(item, False)
@@ -818,12 +871,17 @@ class XML_Tree(wxTreeCtrl):
         wxMemoryFSHandler_RemoveFile('xxx.xrc')
         wxEndBusyCursor()
 
-    def OnCloseTestWin(self, evt):
+    def CloseTestWindow(self):
+        if not g.testWin: return
         self.SetItemBold(g.testWin.item, False)
+        g.frame.tb.ToggleTool(g.frame.ID_LOCATE_TOOL, False)
         g.testWinPos = g.testWin.GetPosition()
         g.testWin.Destroy()
         g.testWin = None
 
+    def OnCloseTestWin(self, evt):
+        self.CloseTestWindow()
+
     # Return item index in parent
     def ItemIndex(self, item):
         n = 0                           # index of sibling
index d9ffccd342c838cdaea7b78d6d66bfd29078aabf..be58feb3b56da034819f15c54882fea6e921effa 100644 (file)
@@ -54,7 +54,8 @@ Consult README file for the details.</HTML>
 """
 
 defaultIDs = {xxxPanel:'PANEL', xxxDialog:'DIALOG', xxxFrame:'FRAME',
-              xxxMenuBar:'MENUBAR', xxxMenu:'MENU', xxxToolBar:'TOOLBAR'}
+              xxxMenuBar:'MENUBAR', xxxMenu:'MENU', xxxToolBar:'TOOLBAR',
+              xxxWizard:'WIZARD'}
 
 ################################################################################
 
@@ -97,6 +98,14 @@ class Frame(wxFrame):
         # Idle flag
         self.inIdle = False
 
+        # Load our own resources
+        self.res = wxXmlResource('')
+        # !!! Blocking of assert failure occuring in older unicode builds
+        try:
+            self.res.Load(os.path.join(basePath, 'xrced.xrc'))
+        except wx._core.PyAssertionError:
+            print 'PyAssertionError was ignored'
+
         # Make menus
         menuBar = wxMenuBar()
 
@@ -124,8 +133,9 @@ class Frame(wxFrame):
         menu.Append(wxID_PASTE, '&Paste\tCtrl-V', 'Paste from the clipboard')
         self.ID_DELETE = wxNewId()
         menu.Append(self.ID_DELETE, '&Delete\tCtrl-D', 'Delete object')
-#        menu.AppendSeparator()
+        menu.AppendSeparator()
         self.ID_LOCATE = wxNewId()
+        self.ID_LOCATE_TOOL = wxNewId()
         menu.Append(self.ID_LOCATE, '&Locate\tCtrl-L', 'Locate control in test window and select it')
         menuBar.Append(menu, '&Edit')
 
@@ -146,6 +156,8 @@ class Frame(wxFrame):
         menu.Append(self.ID_AUTO_REFRESH, '&Auto-refresh\tCtrl-A',
                     'Toggle auto-refresh mode', True)
         menu.Check(self.ID_AUTO_REFRESH, conf.autoRefresh)
+        self.ID_TEST_HIDE = wxNewId()
+        menu.Append(self.ID_TEST_HIDE, '&Hide\tCtrl-H', 'Close test window')
         menuBar.Append(menu, '&View')
 
         menu = wxMenu()
@@ -175,6 +187,10 @@ class Frame(wxFrame):
         tb.AddSimpleTool(wxID_COPY, images.getCopyBitmap(), 'Copy', 'Copy')
         tb.AddSimpleTool(wxID_PASTE, images.getPasteBitmap(), 'Paste', 'Paste')
         tb.AddControl(wxStaticLine(tb, -1, size=(-1,23), style=wxLI_VERTICAL))
+        tb.AddCheckTool(self.ID_LOCATE_TOOL,
+                        images.getLocateBitmap(), images.getLocateArmedBitmap(),
+                        'Locate', 'Locate control in test window and select it')
+        tb.AddControl(wxStaticLine(tb, -1, size=(-1,23), style=wxLI_VERTICAL))
         tb.AddSimpleTool(self.ID_TEST, images.getTestBitmap(), 'Test', 'Test window')
         tb.AddSimpleTool(self.ID_REFRESH, images.getRefreshBitmap(),
                          'Refresh', 'Refresh view')
@@ -184,6 +200,7 @@ class Frame(wxFrame):
             tb.AddSeparator()   # otherwise auto-refresh sticks in status line
         tb.ToggleTool(self.ID_AUTO_REFRESH, conf.autoRefresh)
         tb.Realize()
         self.tb = tb
         self.minWidth = tb.GetSize()[0] # minimal width is the size of toolbar
 
@@ -201,12 +218,14 @@ class Frame(wxFrame):
         EVT_MENU(self, wxID_PASTE, self.OnPaste)
         EVT_MENU(self, self.ID_DELETE, self.OnCutDelete)
         EVT_MENU(self, self.ID_LOCATE, self.OnLocate)
+        EVT_MENU(self, self.ID_LOCATE_TOOL, self.OnLocate)
         # View
         EVT_MENU(self, self.ID_EMBED_PANEL, self.OnEmbedPanel)
         EVT_MENU(self, self.ID_SHOW_TOOLS, self.OnShowTools)
         EVT_MENU(self, self.ID_TEST, self.OnTest)
         EVT_MENU(self, self.ID_REFRESH, self.OnRefresh)
         EVT_MENU(self, self.ID_AUTO_REFRESH, self.OnAutoRefresh)
+        EVT_MENU(self, self.ID_TEST_HIDE, self.OnTestHide)
         # Help
         EVT_MENU(self, wxID_ABOUT, self.OnAbout)
         EVT_MENU(self, self.ID_README, self.OnReadme)
@@ -215,6 +234,8 @@ class Frame(wxFrame):
         EVT_UPDATE_UI(self, wxID_CUT, self.OnUpdateUI)
         EVT_UPDATE_UI(self, wxID_COPY, self.OnUpdateUI)
         EVT_UPDATE_UI(self, wxID_PASTE, self.OnUpdateUI)
+        EVT_UPDATE_UI(self, self.ID_LOCATE, self.OnUpdateUI)
+        EVT_UPDATE_UI(self, self.ID_LOCATE_TOOL, self.OnUpdateUI)
         EVT_UPDATE_UI(self, wxID_UNDO, self.OnUpdateUI)
         EVT_UPDATE_UI(self, wxID_REDO, self.OnUpdateUI)
         EVT_UPDATE_UI(self, self.ID_DELETE, self.OnUpdateUI)
@@ -407,7 +428,7 @@ class Frame(wxFrame):
         error = False
         # Top-level
         x = xxx.treeObject()
-        if x.__class__ in [xxxDialog, xxxFrame, xxxMenuBar]:
+        if x.__class__ in [xxxDialog, xxxFrame, xxxMenuBar, xxxWizard]:
             # Top-level classes
             if parent.__class__ != xxxMainNode: error = True
         elif x.__class__ == xxxToolBar:
@@ -581,6 +602,9 @@ class Frame(wxFrame):
         if not tree.selection: return   # key pressed event
         tree.ShowTestWindow(tree.selection)
 
+    def OnTestHide(self, evt):
+        tree.CloseTestWindow()
+
     # Find object by relative position
     def FindObject(self, item, obj):
         # We simply perform depth-first traversal, sinse it's too much
@@ -603,6 +627,11 @@ class Frame(wxFrame):
         item = self.FindObject(g.testWin.item, evt.GetEventObject())
         if item:
             tree.SelectItem(item)
+        self.tb.ToggleTool(self.ID_LOCATE_TOOL, False)
+        if item:
+            self.SetStatusText('Selected %s' % tree.GetItemText(item))
+        else:
+            self.SetStatusText('Locate failed!')
 
     def SetHandler(self, w, h=None):
         if h:
@@ -616,8 +645,16 @@ class Frame(wxFrame):
 
     def OnLocate(self, evt):
         if g.testWin:
-            self.SetHandler(g.testWin, g.testWin)
-            g.testWin.Connect(wxID_ANY, wxID_ANY, wxEVT_LEFT_DOWN, self.OnTestWinLeftDown)
+            if evt.GetId() == self.ID_LOCATE or \
+               evt.GetId() == self.ID_LOCATE_TOOL and evt.IsChecked():
+                self.SetHandler(g.testWin, g.testWin)
+                g.testWin.Connect(wxID_ANY, wxID_ANY, wxEVT_LEFT_DOWN, self.OnTestWinLeftDown)
+                if evt.GetId() == self.ID_LOCATE:
+                    self.tb.ToggleTool(self.ID_LOCATE_TOOL, True)
+            elif evt.GetId() == self.ID_LOCATE_TOOL and not evt.IsChecked():
+                self.SetHandler(g.testWin, None)
+                g.testWin.Disconnect(wxID_ANY, wxID_ANY, wxEVT_LEFT_DOWN)
+            self.SetStatusText('Click somewhere in your test window now')
 
     def OnRefresh(self, evt):
         # If modified, apply first
@@ -744,6 +781,7 @@ Homepage: http://xrced.sourceforge.net\
         nodes = elem.childNodes[:]
         tags = []
         for node in nodes:
+            if node.nodeType != minidom.Node.ELEMENT_NODE: continue
             remove = False
             tag = node.tagName
             if tag == 'object':
@@ -766,6 +804,8 @@ Homepage: http://xrced.sourceforge.net\
         dummy.unlink()
         # Change class name
         elem.setAttribute('class', className)        
+        if elem.hasAttribute('subclass'):
+            elem.removeAttribute('subclass') # clear subclassing
         # Re-create xxx element
         xxx = MakeXXXFromDOM(parentXXX, elem)
         # Update parent in child objects
@@ -835,6 +875,8 @@ Homepage: http://xrced.sourceforge.net\
             evt.Enable((self.clipboard and tree.selection) != None)
         elif evt.GetId() == self.ID_TEST:
             evt.Enable(tree.selection is not None and tree.selection != tree.root)
+        elif evt.GetId() in [self.ID_LOCATE, self.ID_LOCATE_TOOL]:
+            evt.Enable(g.testWin is not None)
         elif evt.GetId() == wxID_UNDO:  evt.Enable(undoMan.CanUndo())
         elif evt.GetId() == wxID_REDO:  evt.Enable(undoMan.CanRedo())
 
@@ -894,7 +936,8 @@ Homepage: http://xrced.sourceforge.net\
         # Numbers for new controls
         self.maxIDs = {}
         self.maxIDs[xxxPanel] = self.maxIDs[xxxDialog] = self.maxIDs[xxxFrame] = \
-        self.maxIDs[xxxMenuBar] = self.maxIDs[xxxMenu] = self.maxIDs[xxxToolBar] = 0
+        self.maxIDs[xxxMenuBar] = self.maxIDs[xxxMenu] = self.maxIDs[xxxToolBar] = \
+        self.maxIDs[xxxWizard] = 0
 
     def Open(self, path):
         if not os.path.exists(path):
@@ -1040,13 +1083,6 @@ class App(wxApp):
         # Create main frame
         frame = Frame(pos, size)
         frame.Show(True)
-        # Load resources from XRC file (!!! should be transformed to .py later?)
-        frame.res = wxXmlResource('')
-        # !!! Temporary blocking of assert failure occuring in unicode build
-        try:
-            frame.res.Load(os.path.join(basePath, 'xrced.xrc'))
-        except wx._core.PyAssertionError:
-            pass
 
         # Load file after showing
         if args:
index 54a6e8b617bd024c185e3d6b3cbbb3d4cf8bbe78..7af376ede41a8de799c6c3303e7588c0f7a092c2 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" ?>
+<?xml version="1.0" encoding="ascii"?>
 <resource>
   <object class="wxDialog" name="DIALOG_TEXT">
     <title>Text Dialog</title>
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxTextCtrl" name="TEXT">
+              
+              
               <size>250,100</size>
+              
+              
               <style>wxTE_MULTILINE</style>
             </object>
+            
+            
             <option>1</option>
+            
+            
             <flag>wxALL|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
         </object>
+        
+        
         <option>1</option>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
         <object class="wxStaticLine"/>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_OK">
+              
+              
               <label>OK</label>
+              
+              
               <default>1</default>
             </object>
+            
+            
             <flag>wxRIGHT</flag>
+            
+            
             <border>10</border>
           </object>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_CANCEL">
+              
+              
               <label>Cancel</label>
             </object>
           </object>
         </object>
+        
+        
         <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+        
+        
         <border>10</border>
       </object>
     </object>
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxListBox" name="LIST">
+              
+              
               <content/>
             </object>
+            
+            
             <option>1</option>
+            
+            
             <flag>wxTOP|wxBOTTOM|wxLEFT|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
           <object class="sizeritem">
               <orient>wxVERTICAL</orient>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_UP">
+                  
+                  
                   <label>Move Up</label>
                 </object>
+                
+                
                 <flag>wxBOTTOM|wxEXPAND</flag>
+                
+                
                 <border>5</border>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_DOWN">
+                  
+                  
                   <label>Move Down</label>
                 </object>
+                
+                
                 <flag>wxEXPAND</flag>
               </object>
               <object class="spacer">
+                
+                
                 <size>10,20</size>
+                
+                
                 <option>1</option>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_APPEND">
+                  
+                  
                   <label>Append...</label>
                 </object>
+                
+                
                 <flag>wxBOTTOM|wxEXPAND</flag>
+                
+                
                 <border>5</border>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_REMOVE">
+                  
+                  
                   <label>Remove</label>
                 </object>
+                
+                
                 <flag>wxEXPAND</flag>
               </object>
             </object>
+            
+            
             <flag>wxALL|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
         </object>
+        
+        
         <option>1</option>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
         <object class="wxStaticLine"/>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_OK">
+              
+              
               <label>OK</label>
+              
+              
               <default>1</default>
             </object>
+            
+            
             <flag>wxRIGHT</flag>
+            
+            
             <border>10</border>
           </object>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_CANCEL">
+              
+              
               <label>Cancel</label>
             </object>
           </object>
         </object>
+        
+        
         <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+        
+        
         <border>10</border>
       </object>
     </object>
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxCheckListBox" name="CHECK_LIST">
+              
+              
               <content/>
             </object>
+            
+            
             <option>1</option>
+            
+            
             <flag>wxTOP|wxBOTTOM|wxLEFT|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
           <object class="sizeritem">
               <orient>wxVERTICAL</orient>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_UP">
+                  
+                  
                   <label>Move Up</label>
                 </object>
+                
+                
                 <flag>wxBOTTOM|wxEXPAND</flag>
+                
+                
                 <border>5</border>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_DOWN">
+                  
+                  
                   <label>Move Down</label>
                 </object>
+                
+                
                 <flag>wxEXPAND</flag>
               </object>
               <object class="spacer">
+                
+                
                 <size>10,20</size>
+                
+                
                 <option>1</option>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_APPEND">
+                  
+                  
                   <label>Append...</label>
                 </object>
+                
+                
                 <flag>wxBOTTOM|wxEXPAND</flag>
+                
+                
                 <border>5</border>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_REMOVE">
+                  
+                  
                   <label>Remove</label>
                 </object>
+                
+                
                 <flag>wxEXPAND</flag>
               </object>
             </object>
+            
+            
             <flag>wxALL|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
         </object>
+        
+        
         <option>1</option>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
         <object class="wxStaticLine"/>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_OK">
+              
+              
               <label>OK</label>
+              
+              
               <default>1</default>
             </object>
+            
+            
             <flag>wxRIGHT</flag>
+            
+            
             <border>10</border>
           </object>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_CANCEL">
+              
+              
               <label>Cancel</label>
             </object>
           </object>
         </object>
+        
+        
         <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+        
+        
         <border>10</border>
       </object>
     </object>
       <orient>wxVERTICAL</orient>
       <object class="sizeritem">
         <object class="wxCheckListBox" name="CHECK_LIST">
+          
+          
           <content/>
+          
+          
           <size>250,250</size>
+          
+          
           <style></style>
         </object>
+        
+        
         <option>1</option>
+        
+        
         <flag>wxALL|wxEXPAND</flag>
+        
+        
         <border>5</border>
       </object>
       <object class="sizeritem">
         <object class="wxStaticLine"/>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
           <orient>wxHORIZONTAL</orient>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_OK">
+              
+              
               <label>OK</label>
+              
+              
               <default>1</default>
             </object>
+            
+            
             <flag>wxRIGHT</flag>
+            
+            
             <border>10</border>
           </object>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_CANCEL">
+              
+              
               <label>Cancel</label>
             </object>
           </object>
         </object>
+        
+        
         <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+        
+        
         <border>10</border>
       </object>
     </object>
           <orient>wxVERTICAL</orient>
           <object class="sizeritem">
             <object class="wxListBox" name="LIST">
+              
+              
               <content/>
+              
+              
               <size>80,100</size>
+              
+              
               <style>wxLB_SORT</style>
             </object>
+            
+            
             <option>1</option>
+            
+            
             <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+            
+            
             <border>10</border>
           </object>
           <object class="sizeritem">
               <orient>wxVERTICAL</orient>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_ADD">
+                  
+                  
                   <label>Add...</label>
                 </object>
+                
+                
                 <flag>wxBOTTOM</flag>
+                
+                
                 <border>3</border>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_REMOVE">
+                  
+                  
                   <label>Remove</label>
                 </object>
               </object>
             </object>
+            
+            
             <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+            
+            
             <border>5</border>
           </object>
         </object>
+        
+        
         <option>1</option>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
         <object class="wxStaticLine"/>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
       <object class="sizeritem">
           <orient>wxVERTICAL</orient>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_OK">
+              
+              
               <label>OK</label>
+              
+              
               <default>1</default>
             </object>
+            
+            
             <flag>wxBOTTOM</flag>
+            
+            
             <border>5</border>
           </object>
           <object class="sizeritem">
             <object class="wxButton" name="wxID_CANCEL">
+              
+              
               <label>Cancel</label>
             </object>
           </object>
         </object>
+        
+        
         <flag>wxALL|wxALIGN_CENTRE_HORIZONTAL</flag>
+        
+        
         <border>10</border>
       </object>
     </object>
           <rows>2</rows>
           <object class="sizeritem">
             <object class="wxRadioButton" name="RADIO_STD">
+              
+              
               <label>art:</label>
             </object>
+            
+            
             <flag>wxALIGN_CENTRE_VERTICAL</flag>
           </object>
           <object class="sizeritem">
             <object class="wxComboBox" name="COMBO_STD">
+              
+              
               <content>
                 <item>wxART_ADD_BOOKMARK</item>
                 <item>wxART_DEL_BOOKMARK</item>
                 <item>wxART_GO_TO_PARENT</item>
                 <item>wxART_GO_HOME</item>
                 <item>wxART_FILE_OPEN</item>
+                <item>wxART_FILE_SAVE</item>
+                <item>wxART_FILE_SAVE_AS</item>
                 <item>wxART_PRINT</item>
                 <item>wxART_HELP</item>
                 <item>wxART_TIP</item>
                 <item>wxART_REPORT_VIEW</item>
                 <item>wxART_LIST_VIEW</item>
                 <item>wxART_NEW_DIR</item>
+                <item>wxART_HARDDISK</item>
+                <item>wxART_FLOPPY</item>
+                <item>wxART_CDROM</item>
+                <item>wxART_REMOVABLE</item>
                 <item>wxART_FOLDER</item>
+                <item>wxART_FOLDER_OPEN</item>
                 <item>wxART_GO_DIR_UP</item>
                 <item>wxART_EXECUTABLE_FILE</item>
                 <item>wxART_NORMAL_FILE</item>
                 <item>wxART_WARNING</item>
                 <item>wxART_INFORMATION</item>
                 <item>wxART_MISSING_IMAGE</item>
+                <item>wxART_COPY</item>
+                <item>wxART_CUT</item>
+                <item>wxART_PASTE</item>
+                <item>wxART_DELETE</item>
+                <item>wxART_UNDO</item>
+                <item>wxART_REDO</item>
+                <item>wxART_QUIT</item>
+                <item>wxART_FIND</item>
+                <item>wxART_FIND</item>
               </content>
             </object>
+            
+            
             <flag>wxRIGHT|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
           <object class="sizeritem">
             <object class="wxRadioButton" name="RADIO_FILE">
+              
+              
               <label>file:</label>
             </object>
+            
+            
             <flag>wxALIGN_CENTRE_VERTICAL</flag>
           </object>
           <object class="sizeritem">
               <orient>wxHORIZONTAL</orient>
               <object class="sizeritem">
                 <object class="wxTextCtrl" name="TEXT_FILE"/>
+                
+                
                 <option>1</option>
+                
+                
                 <flag>wxRIGHT|wxEXPAND</flag>
+                
+                
                 <border>5</border>
               </object>
               <object class="sizeritem">
                 <object class="wxButton" name="BUTTON_BROWSE">
+                  
+                  
                   <label>Browse...</label>
+                  
+                  
                   <size>40,-1d</size>
                 </object>
               </object>
             </object>
+            
+            
             <flag>wxRIGHT|wxEXPAND</flag>
+            
+            
             <border>5</border>
           </object>
           <vgap>2</vgap>
           <growablecols>1</growablecols>
         </object>
+        
+        
         <flag>wxEXPAND</flag>
       </object>
     </object>
index 29809fdfdfcc060cdc031c6c2e9b44bb0a36bccb..bd0c72a08d24aff9fb68ecdedf896a66d37f4418 100644 (file)
@@ -335,6 +335,7 @@ class xxxParamFont(xxxObject, xxxNode):
 
 class xxxContainer(xxxObject):
     hasChildren = True
+    exStyles = []
 
 # Simulate normal parameter for encoding
 class xxxEncoding:
@@ -362,37 +363,34 @@ class xxxPanel(xxxContainer):
     allParams = ['pos', 'size', 'style']
     styles = ['fg', 'bg', 'font', 'enabled', 'focused', 'hidden', 'exstyle',
               'tooltip']
-    winStyles = ['wxNO_3D', 'wxTAB_TRAVERSAL', 'wxCLIP_CHILDREN']
-    exStyles = ['wxWS_EX_VALIDATE_RECURSIVELY']
 
 class xxxDialog(xxxContainer):
     allParams = ['title', 'centered', 'pos', 'size', 'style']
     paramDict = {'centered': ParamBool}
     required = ['title']
     default = {'title': ''}
-    winStyles = ['wxDEFAULT_DIALOG_STYLE', 'wxSTAY_ON_TOP',
-##                 'wxDIALOG_MODAL', 'wxDIALOG_MODELESS',
-                 'wxCAPTION', 'wxSYSTEM_MENU', 'wxRESIZE_BORDER', 'wxRESIZE_BOX',
+    winStyles = ['wxDEFAULT_DIALOG_STYLE', 
+                 'wxCAPTION', 'wxMINIMIZE_BOX', 'wxMAXIMIZE_BOX', 'wxCLOSE_BOX',
+                 'wxSTAY_ON_TOP',
                  'wxTHICK_FRAME',
-                 'wxNO_3D', 'wxTAB_TRAVERSAL', 'wxCLIP_CHILDREN']
+                 'wxNO_3D', 'wxDIALOG_NO_PARENT']
     styles = ['fg', 'bg', 'font', 'enabled', 'focused', 'hidden', 'exstyle',
               'tooltip']
-    exStyles = ['wxWS_EX_VALIDATE_RECURSIVELY']
 
 class xxxFrame(xxxContainer):
     allParams = ['title', 'centered', 'pos', 'size', 'style']
     paramDict = {'centered': ParamBool}
     required = ['title']
     default = {'title': ''}
-    winStyles = ['wxDEFAULT_FRAME_STYLE', 'wxDEFAULT_DIALOG_STYLE',
+    winStyles = ['wxDEFAULT_FRAME_STYLE',
+                 'wxCAPTION', 'wxMINIMIZE_BOX', 'wxMAXIMIZE_BOX', 'wxCLOSE_BOX',
                  'wxSTAY_ON_TOP',
-                 'wxCAPTION', 'wxSYSTEM_MENU', 'wxRESIZE_BORDER',
-                 'wxRESIZE_BOX', 'wxMINIMIZE_BOX', 'wxMAXIMIZE_BOX',
-                 'wxFRAME_FLOAT_ON_PARENT', 'wxFRAME_TOOL_WINDOW',
-                 'wxNO_3D', 'wxTAB_TRAVERSAL', 'wxCLIP_CHILDREN']
+                 'wxSYSTEM_MENU', 'wxRESIZE_BORDER',
+                 'wxFRAME_TOOL_WINDOW', 'wxFRAME_NO_TASKBAR',
+                 'wxFRAME_FLOAT_ON_PARENT', 'wxFRAME_SHAPED'
+                 ]
     styles = ['fg', 'bg', 'font', 'enabled', 'focused', 'hidden', 'exstyle',
               'tooltip']
-    exStyles = ['wxWS_EX_VALIDATE_RECURSIVELY']
 
 class xxxTool(xxxObject):
     allParams = ['bitmap', 'bitmap2', 'toggle', 'tooltip', 'longhelp', 'label']
@@ -409,6 +407,23 @@ class xxxToolBar(xxxContainer):
                  'style': ParamNonGenericStyle}
     winStyles = ['wxTB_FLAT', 'wxTB_DOCKABLE', 'wxTB_VERTICAL', 'wxTB_HORIZONTAL', 'wxTB_TEXT']
 
+class xxxWizard(xxxContainer):
+    allParams = ['title', 'bitmap', 'pos']
+    required = ['title']
+    default = {'title': ''}
+    winStyles = []
+    exStyles = ['wxWIZARD_EX_HELPBUTTON']
+
+class xxxWizardPage(xxxContainer):
+    allParams = ['bitmap']
+    winStyles = []
+    exStyles = []
+
+class xxxWizardPageSimple(xxxContainer):
+    allParams = ['bitmap']
+    winStyles = []
+    exStyles = []
+
 ################################################################################
 # Bitmap, Icon
 
@@ -622,6 +637,9 @@ class xxxGridSizer(xxxSizer):
     required = ['cols']
     default = {'cols': '2', 'rows': '2'}
 
+class xxxStdDialogButtonSizer(xxxSizer):
+    allParams = []
+
 # For repeated parameters
 class xxxParamMulti:
     def __init__(self, node):
@@ -774,6 +792,9 @@ xxxDict = {
     'wxFrame': xxxFrame,
     'tool': xxxTool,
     'wxToolBar': xxxToolBar,
+    'wxWizard': xxxWizard,
+    'wxWizardPage': xxxWizardPage,
+    'wxWizardPageSimple': xxxWizardPageSimple,
 
     'wxBitmap': xxxBitmap,
     'wxIcon': xxxIcon,
@@ -815,6 +836,7 @@ xxxDict = {
     'wxGridSizer': xxxGridSizer,
     'wxFlexGridSizer': xxxFlexGridSizer,
     'wxGridBagSizer': xxxGridBagSizer,
+    'wxStdDialogButtonSizer': xxxStdDialogButtonSizer,
     'sizeritem': xxxSizerItem,
     'spacer': xxxSpacer,