]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/_core_wrap.cpp
Use SetMinSize instead of SetSizeHints
[wxWidgets.git] / wxPython / src / msw / _core_wrap.cpp
index aa1fa209ce6304a2b86012331a15bce204e8dc7e..4b14398963fc186218d7c6fb950f63b9e3cede0a 100644 (file)
@@ -213,118 +213,119 @@ SWIGIMPORT(void)              SWIG_Python_InstallConstants(PyObject *d, swig_con
 #define  SWIGTYPE_p_wxSizerItem swig_types[2] 
 #define  SWIGTYPE_p_wxGBSizerItem swig_types[3] 
 #define  SWIGTYPE_p_wxScrollEvent swig_types[4] 
-#define  SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[5] 
-#define  SWIGTYPE_p_wxSizer swig_types[6] 
-#define  SWIGTYPE_p_wxBoxSizer swig_types[7] 
-#define  SWIGTYPE_p_wxStaticBoxSizer swig_types[8] 
-#define  SWIGTYPE_p_wxGridBagSizer swig_types[9] 
-#define  SWIGTYPE_p_wxAcceleratorEntry swig_types[10] 
-#define  SWIGTYPE_p_wxUpdateUIEvent swig_types[11] 
-#define  SWIGTYPE_p_wxMenu swig_types[12] 
-#define  SWIGTYPE_p_wxEvent swig_types[13] 
-#define  SWIGTYPE_p_wxGridSizer swig_types[14] 
-#define  SWIGTYPE_p_wxFlexGridSizer swig_types[15] 
-#define  SWIGTYPE_p_wxInitDialogEvent swig_types[16] 
-#define  SWIGTYPE_p_wxItemContainer swig_types[17] 
-#define  SWIGTYPE_p_wxNcPaintEvent swig_types[18] 
-#define  SWIGTYPE_p_wxPaintEvent swig_types[19] 
-#define  SWIGTYPE_p_wxSysColourChangedEvent swig_types[20] 
-#define  SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[21] 
-#define  SWIGTYPE_p_wxDisplayChangedEvent swig_types[22] 
-#define  SWIGTYPE_p_wxPaletteChangedEvent swig_types[23] 
-#define  SWIGTYPE_p_wxControl swig_types[24] 
-#define  SWIGTYPE_p_wxFont swig_types[25] 
-#define  SWIGTYPE_p_wxMenuBarBase swig_types[26] 
-#define  SWIGTYPE_p_wxSetCursorEvent swig_types[27] 
-#define  SWIGTYPE_p_wxFSFile swig_types[28] 
-#define  SWIGTYPE_p_wxCaret swig_types[29] 
-#define  SWIGTYPE_p_wxRegion swig_types[30] 
-#define  SWIGTYPE_p_wxPoint2D swig_types[31] 
-#define  SWIGTYPE_p_int swig_types[32] 
-#define  SWIGTYPE_p_wxSize swig_types[33] 
-#define  SWIGTYPE_p_wxDC swig_types[34] 
-#define  SWIGTYPE_p_wxPySizer swig_types[35] 
-#define  SWIGTYPE_p_wxVisualAttributes swig_types[36] 
-#define  SWIGTYPE_p_wxNotifyEvent swig_types[37] 
-#define  SWIGTYPE_p_wxPyEvent swig_types[38] 
-#define  SWIGTYPE_p_wxPropagationDisabler swig_types[39] 
-#define  SWIGTYPE_p_wxAppTraits swig_types[40] 
-#define  SWIGTYPE_p_wxArrayString swig_types[41] 
-#define  SWIGTYPE_p_wxShowEvent swig_types[42] 
-#define  SWIGTYPE_p_wxToolTip swig_types[43] 
-#define  SWIGTYPE_p_wxIconizeEvent swig_types[44] 
-#define  SWIGTYPE_p_wxActivateEvent swig_types[45] 
-#define  SWIGTYPE_p_wxMoveEvent swig_types[46] 
-#define  SWIGTYPE_p_wxSizeEvent swig_types[47] 
-#define  SWIGTYPE_p_wxMaximizeEvent swig_types[48] 
-#define  SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[49] 
-#define  SWIGTYPE_p_wxWindowCreateEvent swig_types[50] 
-#define  SWIGTYPE_p_wxIdleEvent swig_types[51] 
-#define  SWIGTYPE_p_wxMenuItem swig_types[52] 
-#define  SWIGTYPE_p_wxStaticBox swig_types[53] 
-#define  SWIGTYPE_p_long swig_types[54] 
-#define  SWIGTYPE_p_wxTIFFHandler swig_types[55] 
-#define  SWIGTYPE_p_wxXPMHandler swig_types[56] 
-#define  SWIGTYPE_p_wxPNMHandler swig_types[57] 
-#define  SWIGTYPE_p_wxJPEGHandler swig_types[58] 
-#define  SWIGTYPE_p_wxPCXHandler swig_types[59] 
-#define  SWIGTYPE_p_wxGIFHandler swig_types[60] 
-#define  SWIGTYPE_p_wxPNGHandler swig_types[61] 
-#define  SWIGTYPE_p_wxANIHandler swig_types[62] 
-#define  SWIGTYPE_p_wxMemoryFSHandler swig_types[63] 
-#define  SWIGTYPE_p_wxEvtHandler swig_types[64] 
-#define  SWIGTYPE_p_wxCURHandler swig_types[65] 
-#define  SWIGTYPE_p_wxICOHandler swig_types[66] 
-#define  SWIGTYPE_p_wxBMPHandler swig_types[67] 
-#define  SWIGTYPE_p_wxImageHandler swig_types[68] 
-#define  SWIGTYPE_p_wxFileSystemHandler swig_types[69] 
-#define  SWIGTYPE_p_wxPyFileSystemHandler swig_types[70] 
-#define  SWIGTYPE_p_wxInternetFSHandler swig_types[71] 
-#define  SWIGTYPE_p_wxZipFSHandler swig_types[72] 
-#define  SWIGTYPE_p_wxRect swig_types[73] 
-#define  SWIGTYPE_p_wxGBSpan swig_types[74] 
-#define  SWIGTYPE_p_wxPropagateOnce swig_types[75] 
-#define  SWIGTYPE_p_wxAcceleratorTable swig_types[76] 
-#define  SWIGTYPE_p_char swig_types[77] 
-#define  SWIGTYPE_p_wxGBPosition swig_types[78] 
-#define  SWIGTYPE_p_wxImage swig_types[79] 
-#define  SWIGTYPE_p_wxFrame swig_types[80] 
-#define  SWIGTYPE_p_wxScrollWinEvent swig_types[81] 
-#define  SWIGTYPE_p_wxImageHistogram swig_types[82] 
-#define  SWIGTYPE_p_byte swig_types[83] 
-#define  SWIGTYPE_p_wxPoint swig_types[84] 
-#define  SWIGTYPE_p_wxCursor swig_types[85] 
-#define  SWIGTYPE_p_wxObject swig_types[86] 
-#define  SWIGTYPE_p_wxPyInputStream swig_types[87] 
-#define  SWIGTYPE_p_wxOutputStream swig_types[88] 
-#define  SWIGTYPE_p_wxInputStream swig_types[89] 
-#define  SWIGTYPE_p_wxDateTime swig_types[90] 
-#define  SWIGTYPE_p_wxKeyEvent swig_types[91] 
-#define  SWIGTYPE_p_wxNavigationKeyEvent swig_types[92] 
-#define  SWIGTYPE_p_wxWindowDestroyEvent swig_types[93] 
-#define  SWIGTYPE_p_wxWindow swig_types[94] 
-#define  SWIGTYPE_p_wxMenuBar swig_types[95] 
-#define  SWIGTYPE_p_wxFileSystem swig_types[96] 
-#define  SWIGTYPE_p_wxBitmap swig_types[97] 
-#define  SWIGTYPE_p_wxMenuEvent swig_types[98] 
-#define  SWIGTYPE_p_wxContextMenuEvent swig_types[99] 
-#define  SWIGTYPE_p_unsigned_char swig_types[100] 
-#define  SWIGTYPE_p_wxCloseEvent swig_types[101] 
-#define  SWIGTYPE_p_wxEraseEvent swig_types[102] 
-#define  SWIGTYPE_p_wxMouseEvent swig_types[103] 
-#define  SWIGTYPE_p_wxPyApp swig_types[104] 
-#define  SWIGTYPE_p_wxCommandEvent swig_types[105] 
-#define  SWIGTYPE_p_wxPyCommandEvent swig_types[106] 
-#define  SWIGTYPE_p_wxPyDropTarget swig_types[107] 
-#define  SWIGTYPE_p_wxQuantize swig_types[108] 
-#define  SWIGTYPE_p_wxChildFocusEvent swig_types[109] 
-#define  SWIGTYPE_p_wxFocusEvent swig_types[110] 
-#define  SWIGTYPE_p_wxDropFilesEvent swig_types[111] 
-#define  SWIGTYPE_p_wxControlWithItems swig_types[112] 
-#define  SWIGTYPE_p_wxColour swig_types[113] 
-#define  SWIGTYPE_p_wxValidator swig_types[114] 
-#define  SWIGTYPE_p_wxPyValidator swig_types[115] 
-static swig_type_info *swig_types[117];
+#define  SWIGTYPE_p_wxEventLoop swig_types[5] 
+#define  SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[6] 
+#define  SWIGTYPE_p_wxSizer swig_types[7] 
+#define  SWIGTYPE_p_wxBoxSizer swig_types[8] 
+#define  SWIGTYPE_p_wxStaticBoxSizer swig_types[9] 
+#define  SWIGTYPE_p_wxGridBagSizer swig_types[10] 
+#define  SWIGTYPE_p_wxAcceleratorEntry swig_types[11] 
+#define  SWIGTYPE_p_wxUpdateUIEvent swig_types[12] 
+#define  SWIGTYPE_p_wxMenu swig_types[13] 
+#define  SWIGTYPE_p_wxEvent swig_types[14] 
+#define  SWIGTYPE_p_wxGridSizer swig_types[15] 
+#define  SWIGTYPE_p_wxFlexGridSizer swig_types[16] 
+#define  SWIGTYPE_p_wxInitDialogEvent swig_types[17] 
+#define  SWIGTYPE_p_wxItemContainer swig_types[18] 
+#define  SWIGTYPE_p_wxNcPaintEvent swig_types[19] 
+#define  SWIGTYPE_p_wxPaintEvent swig_types[20] 
+#define  SWIGTYPE_p_wxSysColourChangedEvent swig_types[21] 
+#define  SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[22] 
+#define  SWIGTYPE_p_wxDisplayChangedEvent swig_types[23] 
+#define  SWIGTYPE_p_wxPaletteChangedEvent swig_types[24] 
+#define  SWIGTYPE_p_wxControl swig_types[25] 
+#define  SWIGTYPE_p_wxFont swig_types[26] 
+#define  SWIGTYPE_p_wxMenuBarBase swig_types[27] 
+#define  SWIGTYPE_p_wxSetCursorEvent swig_types[28] 
+#define  SWIGTYPE_p_wxFSFile swig_types[29] 
+#define  SWIGTYPE_p_wxCaret swig_types[30] 
+#define  SWIGTYPE_p_wxRegion swig_types[31] 
+#define  SWIGTYPE_p_wxPoint2D swig_types[32] 
+#define  SWIGTYPE_p_int swig_types[33] 
+#define  SWIGTYPE_p_wxSize swig_types[34] 
+#define  SWIGTYPE_p_wxDC swig_types[35] 
+#define  SWIGTYPE_p_wxPySizer swig_types[36] 
+#define  SWIGTYPE_p_wxVisualAttributes swig_types[37] 
+#define  SWIGTYPE_p_wxNotifyEvent swig_types[38] 
+#define  SWIGTYPE_p_wxPyEvent swig_types[39] 
+#define  SWIGTYPE_p_wxPropagationDisabler swig_types[40] 
+#define  SWIGTYPE_p_wxAppTraits swig_types[41] 
+#define  SWIGTYPE_p_wxArrayString swig_types[42] 
+#define  SWIGTYPE_p_wxShowEvent swig_types[43] 
+#define  SWIGTYPE_p_wxToolTip swig_types[44] 
+#define  SWIGTYPE_p_wxIconizeEvent swig_types[45] 
+#define  SWIGTYPE_p_wxActivateEvent swig_types[46] 
+#define  SWIGTYPE_p_wxMoveEvent swig_types[47] 
+#define  SWIGTYPE_p_wxSizeEvent swig_types[48] 
+#define  SWIGTYPE_p_wxMaximizeEvent swig_types[49] 
+#define  SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[50] 
+#define  SWIGTYPE_p_wxWindowCreateEvent swig_types[51] 
+#define  SWIGTYPE_p_wxIdleEvent swig_types[52] 
+#define  SWIGTYPE_p_wxMenuItem swig_types[53] 
+#define  SWIGTYPE_p_wxStaticBox swig_types[54] 
+#define  SWIGTYPE_p_long swig_types[55] 
+#define  SWIGTYPE_p_wxTIFFHandler swig_types[56] 
+#define  SWIGTYPE_p_wxXPMHandler swig_types[57] 
+#define  SWIGTYPE_p_wxPNMHandler swig_types[58] 
+#define  SWIGTYPE_p_wxJPEGHandler swig_types[59] 
+#define  SWIGTYPE_p_wxPCXHandler swig_types[60] 
+#define  SWIGTYPE_p_wxGIFHandler swig_types[61] 
+#define  SWIGTYPE_p_wxPNGHandler swig_types[62] 
+#define  SWIGTYPE_p_wxANIHandler swig_types[63] 
+#define  SWIGTYPE_p_wxMemoryFSHandler swig_types[64] 
+#define  SWIGTYPE_p_wxEvtHandler swig_types[65] 
+#define  SWIGTYPE_p_wxCURHandler swig_types[66] 
+#define  SWIGTYPE_p_wxICOHandler swig_types[67] 
+#define  SWIGTYPE_p_wxBMPHandler swig_types[68] 
+#define  SWIGTYPE_p_wxImageHandler swig_types[69] 
+#define  SWIGTYPE_p_wxFileSystemHandler swig_types[70] 
+#define  SWIGTYPE_p_wxPyFileSystemHandler swig_types[71] 
+#define  SWIGTYPE_p_wxInternetFSHandler swig_types[72] 
+#define  SWIGTYPE_p_wxZipFSHandler swig_types[73] 
+#define  SWIGTYPE_p_wxRect swig_types[74] 
+#define  SWIGTYPE_p_wxGBSpan swig_types[75] 
+#define  SWIGTYPE_p_wxPropagateOnce swig_types[76] 
+#define  SWIGTYPE_p_wxAcceleratorTable swig_types[77] 
+#define  SWIGTYPE_p_char swig_types[78] 
+#define  SWIGTYPE_p_wxGBPosition swig_types[79] 
+#define  SWIGTYPE_p_wxImage swig_types[80] 
+#define  SWIGTYPE_p_wxFrame swig_types[81] 
+#define  SWIGTYPE_p_wxScrollWinEvent swig_types[82] 
+#define  SWIGTYPE_p_wxImageHistogram swig_types[83] 
+#define  SWIGTYPE_p_byte swig_types[84] 
+#define  SWIGTYPE_p_wxPoint swig_types[85] 
+#define  SWIGTYPE_p_wxCursor swig_types[86] 
+#define  SWIGTYPE_p_wxObject swig_types[87] 
+#define  SWIGTYPE_p_wxPyInputStream swig_types[88] 
+#define  SWIGTYPE_p_wxOutputStream swig_types[89] 
+#define  SWIGTYPE_p_wxInputStream swig_types[90] 
+#define  SWIGTYPE_p_wxDateTime swig_types[91] 
+#define  SWIGTYPE_p_wxKeyEvent swig_types[92] 
+#define  SWIGTYPE_p_wxNavigationKeyEvent swig_types[93] 
+#define  SWIGTYPE_p_wxWindowDestroyEvent swig_types[94] 
+#define  SWIGTYPE_p_wxWindow swig_types[95] 
+#define  SWIGTYPE_p_wxMenuBar swig_types[96] 
+#define  SWIGTYPE_p_wxFileSystem swig_types[97] 
+#define  SWIGTYPE_p_wxBitmap swig_types[98] 
+#define  SWIGTYPE_p_wxMenuEvent swig_types[99] 
+#define  SWIGTYPE_p_wxContextMenuEvent swig_types[100] 
+#define  SWIGTYPE_p_unsigned_char swig_types[101] 
+#define  SWIGTYPE_p_wxCloseEvent swig_types[102] 
+#define  SWIGTYPE_p_wxEraseEvent swig_types[103] 
+#define  SWIGTYPE_p_wxMouseEvent swig_types[104] 
+#define  SWIGTYPE_p_wxPyApp swig_types[105] 
+#define  SWIGTYPE_p_wxCommandEvent swig_types[106] 
+#define  SWIGTYPE_p_wxPyCommandEvent swig_types[107] 
+#define  SWIGTYPE_p_wxPyDropTarget swig_types[108] 
+#define  SWIGTYPE_p_wxQuantize swig_types[109] 
+#define  SWIGTYPE_p_wxChildFocusEvent swig_types[110] 
+#define  SWIGTYPE_p_wxFocusEvent swig_types[111] 
+#define  SWIGTYPE_p_wxDropFilesEvent swig_types[112] 
+#define  SWIGTYPE_p_wxControlWithItems swig_types[113] 
+#define  SWIGTYPE_p_wxColour swig_types[114] 
+#define  SWIGTYPE_p_wxValidator swig_types[115] 
+#define  SWIGTYPE_p_wxPyValidator swig_types[116] 
+static swig_type_info *swig_types[118];
 
 /* -------- TYPES TABLE (END) -------- */
 
@@ -479,7 +480,7 @@ bool wxPyConvertSwigPtr(PyObject* obj, void **ptr,
                         const wxChar* className) {
 
     swig_type_info* swigType = wxPyFindSwigType(className);
-    wxCHECK_MSG(swigType != NULL, False, wxT("Unknown type in wxPyConvertSwigPtr"));
+    wxCHECK_MSG(swigType != NULL, false, wxT("Unknown type in wxPyConvertSwigPtr"));
 
     return SWIG_Python_ConvertPtr(obj, ptr, swigType, SWIG_POINTER_EXCEPTION) != -1;
 }
@@ -847,7 +848,7 @@ PyObject *wxRect_Get(wxRect *self){
         if (dest != wxRect(0,0,0,0)) {
             bool blocked = wxPyBeginBlockThreads();
             wxRect* newRect = new wxRect(dest);
-            obj = wxPyConstructObject((void*)newRect, wxT("wxRect"), True);
+            obj = wxPyConstructObject((void*)newRect, wxT("wxRect"), true);
             wxPyEndBlockThreads(blocked);
             return obj;
         }
@@ -865,11 +866,12 @@ PyObject *wxRect_Get(wxRect *self){
     } else if (target == Py_None) {  
         Py_DECREF(Py_None);
         target = o;
-    } else {                         
-        o2 = target;
-        target = PyTuple_New(1);
-        PyTuple_SetItem(target, 0, o2);
-
+    } else {
+        if (!PyTuple_Check(target)) {
+            o2 = target;
+            target = PyTuple_New(1);
+            PyTuple_SetItem(target, 0, o2);
+        }            
         o3 = PyTuple_New(1);            
         PyTuple_SetItem(o3, 0, o);      
 
@@ -879,7 +881,7 @@ PyObject *wxRect_Get(wxRect *self){
         Py_DECREF(o3);
     }
     return target;
-}
+  }
 
 
 void wxPoint2D_Set(wxPoint2D *self,double x,double y){
@@ -1121,12 +1123,10 @@ SWIG_Check_bool(PyObject* obj)
   return SWIG_AsVal_bool(obj, (bool*)0);
 }
 
-
-    wxString wxFileSystem_URLToFileName(const wxString& url) {
-        wxFileName fname = wxFileSystem::URLToFileName(url);
-        return fname.GetFullPath();
-    }
-
+wxString FileSystem_URLToFileName(wxString const &url){
+            wxFileName fname = wxFileSystem::URLToFileName(url);
+            return fname.GetFullPath();
+        }
 
     void __wxMemoryFSHandler_AddFile_wxImage(const wxString& filename,
                                              wxImage& image,
@@ -1142,10 +1142,18 @@ SWIG_Check_bool(PyObject* obj)
 
     void __wxMemoryFSHandler_AddFile_Data(const wxString& filename,
                                           PyObject* data) {
-        wxMemoryFSHandler::AddFile(filename,
-                                   // TODO:  Verify data type
-                                   (void*)PyString_AsString(data),
-                                   (size_t)PyString_Size(data));
+        if (! PyString_Check(data)) {
+            wxPyBLOCK_THREADS(PyErr_SetString(PyExc_TypeError,
+                                              "Expected string object"));
+            return;
+        }
+
+        bool blocked = wxPyBeginBlockThreads();
+        void*  ptr = (void*)PyString_AsString(data);
+        size_t size = PyString_Size(data);
+        wxPyEndBlockThreads(blocked);
+
+        wxMemoryFSHandler::AddFile(filename, ptr, size);
     }
 
 
@@ -1246,7 +1254,24 @@ wxImage *new_wxImage(int width,int height,unsigned char *data){
                 return NULL;
             }
             memcpy(copy, data, width*height*3);
-            return new wxImage(width, height, copy, False);
+            return new wxImage(width, height, copy, false);
+        }
+wxImage *new_wxImage(int width,int height,unsigned char *data,unsigned char *alpha){
+            // Copy the source data so the wxImage can clean it up later
+            unsigned char* dcopy = (unsigned char*)malloc(width*height*3);
+            if (dcopy == NULL) {
+                PyErr_NoMemory();
+                return NULL;
+            }
+            memcpy(dcopy, data, width*height*3);
+            unsigned char* acopy = (unsigned char*)malloc(width*height);
+            if (acopy == NULL) {
+                PyErr_NoMemory();
+                return NULL;
+            }
+            memcpy(acopy, alpha, width*height);
+            
+            return new wxImage(width, height, dcopy, acopy, false);
         }
 wxSize wxImage_GetSize(wxImage *self){
             wxSize size(self->GetWidth(), self->GetHeight());
@@ -1263,7 +1288,8 @@ void wxImage_SetData(wxImage *self,PyObject *data){
             unsigned char* dataPtr;
 
             if (! PyString_Check(data)) {
-                PyErr_SetString(PyExc_TypeError, "Expected string object");
+                wxPyBLOCK_THREADS(PyErr_SetString(PyExc_TypeError,
+                                                  "Expected string object"));
                 return /* NULL */ ;
             }
 
@@ -1529,6 +1555,29 @@ wxPyApp *new_wxPyApp(){
     wxPyApp* wxPyGetApp() { return (wxPyApp*)wxTheApp; }
 
 
+#ifdef __WXMAC__
+
+// A dummy class that raises an exception if used...    
+class wxEventLoop
+{
+public:
+    wxEventLoop() { wxPyRaiseNotImplemented(); }
+    int Run() { return 0; }
+    void Exit(int rc = 0) {}
+    bool Pending() const { return false; }
+    bool Dispatch() { return false; }
+    bool IsRunning() const { return false; }
+    static wxEventLoop *GetActive() { wxPyRaiseNotImplemented(); return NULL; }
+    static void SetActive(wxEventLoop* loop) { wxPyRaiseNotImplemented(); }
+};
+
+#else
+#include <wx/evtloop.h>
+
+#endif
+
+
 
  static const wxString wxPyPanelNameStr(wxPanelNameStr); 
 wxVisualAttributes *new_wxVisualAttributes(){ return new wxVisualAttributes; }
@@ -1541,19 +1590,22 @@ bool wxWindow_RegisterHotKey(wxWindow *self,int hotkeyId,int modifiers,int keyco
         #if wxUSE_HOTKEY
             return self->RegisterHotKey(hotkeyId, modifiers, keycode);
         #else
-            return False;
+            return false;
         #endif
         }
 bool wxWindow_UnregisterHotKey(wxWindow *self,int hotkeyId){
         
 
 
-            return False;
+            return false;
         
         }
 long wxWindow_GetHandle(wxWindow *self){
             return wxPyGetWinHandle(self);
         }
+void wxWindow_AssociateHandle(wxWindow *self,long handle){
+            self->AssociateHandle((WXWidget)handle);
+        }
 
 wxWindow* wxFindWindowById( long id, const wxWindow *parent = NULL ) {
     return wxWindow::FindWindowById(id, parent);
@@ -1748,8 +1800,8 @@ PyObject *wxSizerItem_GetUserData(wxSizerItem *self){
 
 struct wxPySizerItemInfo {
     wxPySizerItemInfo()
-        : window(NULL), sizer(NULL), gotSize(False),
-          size(wxDefaultSize), gotPos(False), pos(-1)
+        : window(NULL), sizer(NULL), gotSize(false),
+          size(wxDefaultSize), gotPos(false), pos(-1)
     {}
     
     wxWindow* window;
@@ -1780,13 +1832,13 @@ static wxPySizerItemInfo wxPySizerItemTypeHelper(PyObject* item, bool checkSize,
             // try wxSize or (w,h)
             if ( checkSize && wxSize_helper(item, &sizePtr)) {
                 info.size = *sizePtr;
-                info.gotSize = True;
+                info.gotSize = true;
             }
 
             // or a single int
             if (checkIdx && PyInt_Check(item)) {
                 info.pos = PyInt_AsLong(item);
-                info.gotPos = True;
+                info.gotPos = true;
             }
         }
     }
@@ -1811,63 +1863,69 @@ void wxSizer__setOORInfo(wxSizer *self,PyObject *_self){
             if (!self->GetClientObject())
                 self->SetClientObject(new wxPyOORClientData(_self));
         }
-void wxSizer_Add(wxSizer *self,PyObject *item,int proportion,int flag,int border,PyObject *userData){
+wxSizerItem *wxSizer_Add(wxSizer *self,PyObject *item,int proportion,int flag,int border,PyObject *userData){
             
             wxPyUserData* data = NULL;
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, True, False);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, true, false);
             if ( userData && (info.window || info.sizer || info.gotSize) )
                 data = new wxPyUserData(userData);
             wxPyEndBlockThreads(blocked);
             
             // Now call the real Add method if a valid item type was found
             if ( info.window )
-                self->Add(info.window, proportion, flag, border, data);
+                return self->Add(info.window, proportion, flag, border, data);
             else if ( info.sizer )
-                self->Add(info.sizer, proportion, flag, border, data);
+                return self->Add(info.sizer, proportion, flag, border, data);
             else if (info.gotSize)
-                self->Add(info.size.GetWidth(), info.size.GetHeight(),
-                          proportion, flag, border, data);
+                return self->Add(info.size.GetWidth(), info.size.GetHeight(),
+                                 proportion, flag, border, data);
+            else
+                return NULL;
         }
-void wxSizer_Insert(wxSizer *self,int before,PyObject *item,int proportion,int flag,int border,PyObject *userData){
+wxSizerItem *wxSizer_Insert(wxSizer *self,int before,PyObject *item,int proportion,int flag,int border,PyObject *userData){
 
             wxPyUserData* data = NULL;
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, True, False);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, true, false);
             if ( userData && (info.window || info.sizer || info.gotSize) )
                 data = new wxPyUserData(userData);
             wxPyEndBlockThreads(blocked);
             
             // Now call the real Insert method if a valid item type was found
             if ( info.window )
-                self->Insert(before, info.window, proportion, flag, border, data);
+                return self->Insert(before, info.window, proportion, flag, border, data);
             else if ( info.sizer )
-                self->Insert(before, info.sizer, proportion, flag, border, data);
+                return self->Insert(before, info.sizer, proportion, flag, border, data);
             else if (info.gotSize)
-                self->Insert(before, info.size.GetWidth(), info.size.GetHeight(),
-                             proportion, flag, border, data);
+                return self->Insert(before, info.size.GetWidth(), info.size.GetHeight(),
+                                    proportion, flag, border, data);
+            else
+                return NULL;
         }
-void wxSizer_Prepend(wxSizer *self,PyObject *item,int proportion,int flag,int border,PyObject *userData){
+wxSizerItem *wxSizer_Prepend(wxSizer *self,PyObject *item,int proportion,int flag,int border,PyObject *userData){
 
             wxPyUserData* data = NULL;
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, True, False);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, true, false);
             if ( userData && (info.window || info.sizer || info.gotSize) )
                 data = new wxPyUserData(userData);
             wxPyEndBlockThreads(blocked);
             
             // Now call the real Prepend method if a valid item type was found
             if ( info.window )
-                self->Prepend(info.window, proportion, flag, border, data);
+                return self->Prepend(info.window, proportion, flag, border, data);
             else if ( info.sizer )
-                self->Prepend(info.sizer, proportion, flag, border, data);
+                return self->Prepend(info.sizer, proportion, flag, border, data);
             else if (info.gotSize)
-                self->Prepend(info.size.GetWidth(), info.size.GetHeight(),
-                              proportion, flag, border, data);
+                return self->Prepend(info.size.GetWidth(), info.size.GetHeight(),
+                                     proportion, flag, border, data);
+            else
+                return NULL;
         }
 bool wxSizer_Remove(wxSizer *self,PyObject *item){
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, False, True);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
             wxPyEndBlockThreads(blocked);
             if ( info.window )
                 return self->Remove(info.window);
@@ -1876,11 +1934,11 @@ bool wxSizer_Remove(wxSizer *self,PyObject *item){
             else if ( info.gotPos )
                 return self->Remove(info.pos);
             else 
-                return False;
+                return false;
         }
 bool wxSizer_Detach(wxSizer *self,PyObject *item){
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, False, True);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
             wxPyEndBlockThreads(blocked);
             if ( info.window )
                 return self->Detach(info.window);
@@ -1889,11 +1947,24 @@ bool wxSizer_Detach(wxSizer *self,PyObject *item){
             else if ( info.gotPos )
                 return self->Detach(info.pos);
             else 
-                return False;
+                return false;
+        }
+wxSizerItem *wxSizer_GetItem(wxSizer *self,PyObject *item){
+            bool blocked = wxPyBeginBlockThreads();
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
+            wxPyEndBlockThreads(blocked);
+            if ( info.window )
+                return self->GetItem(info.window);
+            else if ( info.sizer )
+                return self->GetItem(info.sizer);
+            else if ( info.gotPos )
+                return self->GetItem(info.pos);
+            else
+                return NULL;
         }
 void wxSizer__SetItemMinSize(wxSizer *self,PyObject *item,wxSize const &size){
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, False, True);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
             wxPyEndBlockThreads(blocked);
             if ( info.window )
                 self->SetItemMinSize(info.window, size);
@@ -1906,20 +1977,22 @@ PyObject *wxSizer_GetChildren(wxSizer *self){
             wxSizerItemList& list = self->GetChildren();
             return wxPy_ConvertList(&list);
         }
-void wxSizer_Show(wxSizer *self,PyObject *item,bool show){
+bool wxSizer_Show(wxSizer *self,PyObject *item,bool show,bool recursive){
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, False, True);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
             wxPyEndBlockThreads(blocked);
             if ( info.window )
-                self->Show(info.window, show);
+                return self->Show(info.window, show, recursive);
             else if ( info.sizer )
-                self->Show(info.sizer, show);
+                return self->Show(info.sizer, show, recursive);
             else if ( info.gotPos )
-                self->Show(info.pos, show);
+                return self->Show(info.pos, show);
+            else
+                return false;
         }
 bool wxSizer_IsShown(wxSizer *self,PyObject *item){
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, False, False);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, false);
             wxPyEndBlockThreads(blocked);
             if ( info.window ) 
                 return self->IsShown(info.window);
@@ -1928,7 +2001,7 @@ bool wxSizer_IsShown(wxSizer *self,PyObject *item){
             else if ( info.gotPos )
                 return self->IsShown(info.pos);
             else
-                return False;
+                return false;
         }
 
 // See pyclasses.h    
@@ -1943,7 +2016,7 @@ bool wxGBPosition_helper(PyObject* source, wxGBPosition** obj)
 {
     if (source == Py_None) {
         **obj = wxGBPosition(-1,-1);
-        return True;
+        return true;
     }
     return wxPyTwoIntItem_helper(source, obj, wxT("wxGBPosition"));
 }
@@ -1952,7 +2025,7 @@ bool wxGBSpan_helper(PyObject* source, wxGBSpan** obj)
 {
     if (source == Py_None) {
         **obj = wxGBSpan(-1,-1);
-        return True;
+        return true;
     }
     return wxPyTwoIntItem_helper(source, obj, wxT("wxGBSpan"));
 }
@@ -2014,24 +2087,24 @@ wxGBPosition wxGBSizerItem_GetEndPos(wxGBSizerItem *self){
             self->GetEndPos(row, col);
             return wxGBPosition(row, col);
         }
-bool wxGridBagSizer_Add(wxGridBagSizer *self,PyObject *item,wxGBPosition const &pos,wxGBSpan const &span,int flag,int border,PyObject *userData){
+wxGBSizerItem *wxGridBagSizer_Add(wxGridBagSizer *self,PyObject *item,wxGBPosition const &pos,wxGBSpan const &span,int flag,int border,PyObject *userData){
 
             wxPyUserData* data = NULL;
             bool blocked = wxPyBeginBlockThreads();
-            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, True, False);
+            wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, true, false);
             if ( userData && (info.window || info.sizer || info.gotSize) )
                 data = new wxPyUserData(userData);
             wxPyEndBlockThreads(blocked);
             
             // Now call the real Add method if a valid item type was found
             if ( info.window )
-                return self->Add(info.window, pos, span, flag, border, data);
+                return (wxGBSizerItem*)self->Add(info.window, pos, span, flag, border, data);
             else if ( info.sizer )
-                return self->Add(info.sizer, pos, span, flag, border, data);
+                return (wxGBSizerItem*)self->Add(info.sizer, pos, span, flag, border, data);
             else if (info.gotSize)
-                return self->Add(info.size.GetWidth(), info.size.GetHeight(),
-                                 pos, span, flag, border, data);
-            return False;
+                return (wxGBSizerItem*)self->Add(info.size.GetWidth(), info.size.GetHeight(),
+                                                 pos, span, flag, border, data);
+            return NULL;
         }
 
 
@@ -3623,6 +3696,35 @@ static PyObject *_wrap_new_RectPS(PyObject *, PyObject *args, PyObject *kwargs)
 }
 
 
+static PyObject *_wrap_new_RectS(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxSize *arg1 = 0 ;
+    wxRect *result;
+    wxSize temp1 ;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "size", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:new_RectS",kwnames,&obj0)) goto fail;
+    {
+        arg1 = &temp1;
+        if ( ! wxSize_helper(obj0, &arg1)) SWIG_fail;
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (wxRect *)new wxRect((wxSize const &)*arg1);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxRect, 1);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_delete_Rect(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxRect *arg1 = (wxRect *) 0 ;
@@ -5918,6 +6020,31 @@ static PyObject *_wrap_new_InputStream(PyObject *, PyObject *args, PyObject *kwa
 }
 
 
+static PyObject *_wrap_delete_InputStream(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxPyInputStream *arg1 = (wxPyInputStream *) 0 ;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_InputStream",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPyInputStream,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        delete arg1;
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_InputStream_close(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxPyInputStream *arg1 = (wxPyInputStream *) 0 ;
@@ -6433,9 +6560,9 @@ static PyObject *_wrap_new_FSFile(PyObject *, PyObject *args, PyObject *kwargs)
     wxFSFile *result;
     wxPyInputStream *temp1 ;
     bool created1 ;
-    bool temp2 = False ;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp2 = false ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     wxDateTime *argp5 ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -6450,31 +6577,31 @@ static PyObject *_wrap_new_FSFile(PyObject *, PyObject *args, PyObject *kwargs)
     {
         if (wxPyConvertSwigPtr(obj0, (void **)&temp1, wxT("wxPyInputStream"))) {
             arg1 = temp1->m_wxis;
-            created1 = False;
+            created1 = false;
         } else {
             PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg1 = wxPyCBInputStream_create(obj0, False);
+            arg1 = wxPyCBInputStream_create(obj0, false);
             if (arg1 == NULL) {
                 PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
                 SWIG_fail;
             }
-            created1 = True;
+            created1 = true;
         }
     }
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     if ((SWIG_ConvertPtr(obj4,(void **)(&argp5),SWIGTYPE_p_wxDateTime,
     SWIG_POINTER_EXCEPTION) == -1)) SWIG_fail;
@@ -6577,7 +6704,7 @@ static PyObject *_wrap_FSFile_GetStream(PyObject *, PyObject *args, PyObject *kw
         if (result) {
             _ptr = new wxPyInputStream(result);
         }
-        resultobj = wxPyConstructObject(_ptr, wxT("wxPyInputStream"), True);
+        resultobj = wxPyConstructObject(_ptr, wxT("wxPyInputStream"), 0);
     }
     return resultobj;
     fail:
@@ -6792,7 +6919,7 @@ static PyObject *_wrap_FileSystemHandler_CanOpen(PyObject *, PyObject *args, PyO
     wxPyFileSystemHandler *arg1 = (wxPyFileSystemHandler *) 0 ;
     wxString *arg2 = 0 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -6805,7 +6932,7 @@ static PyObject *_wrap_FileSystemHandler_CanOpen(PyObject *, PyObject *args, PyO
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -6837,7 +6964,7 @@ static PyObject *_wrap_FileSystemHandler_OpenFile(PyObject *, PyObject *args, Py
     wxFileSystem *arg2 = 0 ;
     wxString *arg3 = 0 ;
     wxFSFile *result;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -6858,7 +6985,7 @@ static PyObject *_wrap_FileSystemHandler_OpenFile(PyObject *, PyObject *args, Py
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -6890,7 +7017,7 @@ static PyObject *_wrap_FileSystemHandler_FindFirst(PyObject *, PyObject *args, P
     wxString *arg2 = 0 ;
     int arg3 = (int) 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -6904,7 +7031,7 @@ static PyObject *_wrap_FileSystemHandler_FindFirst(PyObject *, PyObject *args, P
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (int)SWIG_As_int(obj2); 
@@ -6975,7 +7102,7 @@ static PyObject *_wrap_FileSystemHandler_GetProtocol(PyObject *, PyObject *args,
     wxPyFileSystemHandler *arg1 = (wxPyFileSystemHandler *) 0 ;
     wxString *arg2 = 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -6988,7 +7115,7 @@ static PyObject *_wrap_FileSystemHandler_GetProtocol(PyObject *, PyObject *args,
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7023,7 +7150,7 @@ static PyObject *_wrap_FileSystemHandler_GetLeftLocation(PyObject *, PyObject *a
     wxPyFileSystemHandler *arg1 = (wxPyFileSystemHandler *) 0 ;
     wxString *arg2 = 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7036,7 +7163,7 @@ static PyObject *_wrap_FileSystemHandler_GetLeftLocation(PyObject *, PyObject *a
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7071,7 +7198,7 @@ static PyObject *_wrap_FileSystemHandler_GetAnchor(PyObject *, PyObject *args, P
     wxPyFileSystemHandler *arg1 = (wxPyFileSystemHandler *) 0 ;
     wxString *arg2 = 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7084,7 +7211,7 @@ static PyObject *_wrap_FileSystemHandler_GetAnchor(PyObject *, PyObject *args, P
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7119,7 +7246,7 @@ static PyObject *_wrap_FileSystemHandler_GetRightLocation(PyObject *, PyObject *
     wxPyFileSystemHandler *arg1 = (wxPyFileSystemHandler *) 0 ;
     wxString *arg2 = 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7132,7 +7259,7 @@ static PyObject *_wrap_FileSystemHandler_GetRightLocation(PyObject *, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7167,7 +7294,7 @@ static PyObject *_wrap_FileSystemHandler_GetMimeTypeFromExt(PyObject *, PyObject
     wxPyFileSystemHandler *arg1 = (wxPyFileSystemHandler *) 0 ;
     wxString *arg2 = 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7180,7 +7307,7 @@ static PyObject *_wrap_FileSystemHandler_GetMimeTypeFromExt(PyObject *, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7270,8 +7397,8 @@ static PyObject *_wrap_FileSystem_ChangePathTo(PyObject *, PyObject *args, PyObj
     PyObject *resultobj;
     wxFileSystem *arg1 = (wxFileSystem *) 0 ;
     wxString *arg2 = 0 ;
-    bool arg3 = (bool) False ;
-    bool temp2 = False ;
+    bool arg3 = (bool) false ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -7285,7 +7412,7 @@ static PyObject *_wrap_FileSystem_ChangePathTo(PyObject *, PyObject *args, PyObj
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (bool)SWIG_As_bool(obj2); 
@@ -7350,7 +7477,7 @@ static PyObject *_wrap_FileSystem_OpenFile(PyObject *, PyObject *args, PyObject
     wxFileSystem *arg1 = (wxFileSystem *) 0 ;
     wxString *arg2 = 0 ;
     wxFSFile *result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7363,7 +7490,7 @@ static PyObject *_wrap_FileSystem_OpenFile(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7395,7 +7522,7 @@ static PyObject *_wrap_FileSystem_FindFirst(PyObject *, PyObject *args, PyObject
     wxString *arg2 = 0 ;
     int arg3 = (int) 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -7409,7 +7536,7 @@ static PyObject *_wrap_FileSystem_FindFirst(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (int)SWIG_As_int(obj2); 
@@ -7525,7 +7652,7 @@ static PyObject *_wrap_FileSystem_FileNameToURL(PyObject *, PyObject *args, PyOb
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     wxString result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "filename", NULL 
@@ -7535,7 +7662,7 @@ static PyObject *_wrap_FileSystem_FileNameToURL(PyObject *, PyObject *args, PyOb
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7565,18 +7692,11 @@ static PyObject *_wrap_FileSystem_FileNameToURL(PyObject *, PyObject *args, PyOb
 }
 
 
-static PyObject * FileSystem_swigregister(PyObject *, PyObject *args) {
-    PyObject *obj;
-    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
-    SWIG_TypeClientData(SWIGTYPE_p_wxFileSystem, obj);
-    Py_INCREF(obj);
-    return Py_BuildValue((char *)"");
-}
 static PyObject *_wrap_FileSystem_URLToFileName(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     wxString result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "url", NULL 
@@ -7586,11 +7706,11 @@ static PyObject *_wrap_FileSystem_URLToFileName(PyObject *, PyObject *args, PyOb
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = wxFileSystem_URLToFileName((wxString const &)*arg1);
+        result = FileSystem_URLToFileName((wxString const &)*arg1);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
@@ -7616,6 +7736,13 @@ static PyObject *_wrap_FileSystem_URLToFileName(PyObject *, PyObject *args, PyOb
 }
 
 
+static PyObject * FileSystem_swigregister(PyObject *, PyObject *args) {
+    PyObject *obj;
+    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
+    SWIG_TypeClientData(SWIGTYPE_p_wxFileSystem, obj);
+    Py_INCREF(obj);
+    return Py_BuildValue((char *)"");
+}
 static PyObject *_wrap_new_InternetFSHandler(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxInternetFSHandler *result;
@@ -7643,7 +7770,7 @@ static PyObject *_wrap_InternetFSHandler_CanOpen(PyObject *, PyObject *args, PyO
     wxInternetFSHandler *arg1 = (wxInternetFSHandler *) 0 ;
     wxString *arg2 = 0 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7656,7 +7783,7 @@ static PyObject *_wrap_InternetFSHandler_CanOpen(PyObject *, PyObject *args, PyO
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7688,7 +7815,7 @@ static PyObject *_wrap_InternetFSHandler_OpenFile(PyObject *, PyObject *args, Py
     wxFileSystem *arg2 = 0 ;
     wxString *arg3 = 0 ;
     wxFSFile *result;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -7709,7 +7836,7 @@ static PyObject *_wrap_InternetFSHandler_OpenFile(PyObject *, PyObject *args, Py
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7769,7 +7896,7 @@ static PyObject *_wrap_ZipFSHandler_CanOpen(PyObject *, PyObject *args, PyObject
     wxZipFSHandler *arg1 = (wxZipFSHandler *) 0 ;
     wxString *arg2 = 0 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -7782,7 +7909,7 @@ static PyObject *_wrap_ZipFSHandler_CanOpen(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7814,7 +7941,7 @@ static PyObject *_wrap_ZipFSHandler_OpenFile(PyObject *, PyObject *args, PyObjec
     wxFileSystem *arg2 = 0 ;
     wxString *arg3 = 0 ;
     wxFSFile *result;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -7835,7 +7962,7 @@ static PyObject *_wrap_ZipFSHandler_OpenFile(PyObject *, PyObject *args, PyObjec
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -7867,7 +7994,7 @@ static PyObject *_wrap_ZipFSHandler_FindFirst(PyObject *, PyObject *args, PyObje
     wxString *arg2 = 0 ;
     int arg3 = (int) 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -7881,7 +8008,7 @@ static PyObject *_wrap_ZipFSHandler_FindFirst(PyObject *, PyObject *args, PyObje
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (int)SWIG_As_int(obj2); 
@@ -7959,7 +8086,7 @@ static PyObject *_wrap___wxMemoryFSHandler_AddFile_wxImage(PyObject *, PyObject
     wxString *arg1 = 0 ;
     wxImage *arg2 = 0 ;
     long arg3 ;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -7971,7 +8098,7 @@ static PyObject *_wrap___wxMemoryFSHandler_AddFile_wxImage(PyObject *, PyObject
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     if ((SWIG_ConvertPtr(obj1,(void **)(&arg2),SWIGTYPE_p_wxImage,
     SWIG_POINTER_EXCEPTION | 0)) == -1)
@@ -8009,7 +8136,7 @@ static PyObject *_wrap___wxMemoryFSHandler_AddFile_wxBitmap(PyObject *, PyObject
     wxString *arg1 = 0 ;
     wxBitmap *arg2 = 0 ;
     long arg3 ;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -8021,7 +8148,7 @@ static PyObject *_wrap___wxMemoryFSHandler_AddFile_wxBitmap(PyObject *, PyObject
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     if ((SWIG_ConvertPtr(obj1,(void **)(&arg2),SWIGTYPE_p_wxBitmap,
     SWIG_POINTER_EXCEPTION | 0)) == -1)
@@ -8058,7 +8185,7 @@ static PyObject *_wrap___wxMemoryFSHandler_AddFile_Data(PyObject *, PyObject *ar
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     PyObject *arg2 = (PyObject *) 0 ;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -8069,7 +8196,7 @@ static PyObject *_wrap___wxMemoryFSHandler_AddFile_Data(PyObject *, PyObject *ar
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     arg2 = obj1;
     {
@@ -8119,7 +8246,7 @@ static PyObject *_wrap_new_MemoryFSHandler(PyObject *, PyObject *args, PyObject
 static PyObject *_wrap_MemoryFSHandler_RemoveFile(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxString *arg1 = 0 ;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "filename", NULL 
@@ -8129,7 +8256,7 @@ static PyObject *_wrap_MemoryFSHandler_RemoveFile(PyObject *, PyObject *args, Py
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8158,7 +8285,7 @@ static PyObject *_wrap_MemoryFSHandler_CanOpen(PyObject *, PyObject *args, PyObj
     wxMemoryFSHandler *arg1 = (wxMemoryFSHandler *) 0 ;
     wxString *arg2 = 0 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -8171,7 +8298,7 @@ static PyObject *_wrap_MemoryFSHandler_CanOpen(PyObject *, PyObject *args, PyObj
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8203,7 +8330,7 @@ static PyObject *_wrap_MemoryFSHandler_OpenFile(PyObject *, PyObject *args, PyOb
     wxFileSystem *arg2 = 0 ;
     wxString *arg3 = 0 ;
     wxFSFile *result;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -8224,7 +8351,7 @@ static PyObject *_wrap_MemoryFSHandler_OpenFile(PyObject *, PyObject *args, PyOb
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8256,7 +8383,7 @@ static PyObject *_wrap_MemoryFSHandler_FindFirst(PyObject *, PyObject *args, PyO
     wxString *arg2 = 0 ;
     int arg3 = (int) 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -8270,7 +8397,7 @@ static PyObject *_wrap_MemoryFSHandler_FindFirst(PyObject *, PyObject *args, PyO
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (int)SWIG_As_int(obj2); 
@@ -8470,7 +8597,7 @@ static PyObject *_wrap_ImageHandler_CanRead(PyObject *, PyObject *args, PyObject
     wxImageHandler *arg1 = (wxImageHandler *) 0 ;
     wxString *arg2 = 0 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -8483,7 +8610,7 @@ static PyObject *_wrap_ImageHandler_CanRead(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8513,7 +8640,7 @@ static PyObject *_wrap_ImageHandler_SetName(PyObject *, PyObject *args, PyObject
     PyObject *resultobj;
     wxImageHandler *arg1 = (wxImageHandler *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -8526,7 +8653,7 @@ static PyObject *_wrap_ImageHandler_SetName(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8554,7 +8681,7 @@ static PyObject *_wrap_ImageHandler_SetExtension(PyObject *, PyObject *args, PyO
     PyObject *resultobj;
     wxImageHandler *arg1 = (wxImageHandler *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -8567,7 +8694,7 @@ static PyObject *_wrap_ImageHandler_SetExtension(PyObject *, PyObject *args, PyO
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8624,7 +8751,7 @@ static PyObject *_wrap_ImageHandler_SetMimeType(PyObject *, PyObject *args, PyOb
     PyObject *resultobj;
     wxImageHandler *arg1 = (wxImageHandler *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -8637,7 +8764,7 @@ static PyObject *_wrap_ImageHandler_SetMimeType(PyObject *, PyObject *args, PyOb
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -8801,7 +8928,7 @@ static PyObject *_wrap_new_Image(PyObject *, PyObject *args, PyObject *kwargs) {
     long arg2 = (long) wxBITMAP_TYPE_ANY ;
     int arg3 = (int) -1 ;
     wxImage *result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -8813,7 +8940,7 @@ static PyObject *_wrap_new_Image(PyObject *, PyObject *args, PyObject *kwargs) {
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     if (obj1) {
         arg2 = (long)SWIG_As_long(obj1); 
@@ -8876,8 +9003,8 @@ static PyObject *_wrap_new_ImageFromMime(PyObject *, PyObject *args, PyObject *k
     wxString *arg2 = 0 ;
     int arg3 = (int) -1 ;
     wxImage *result;
-    bool temp1 = False ;
-    bool temp2 = False ;
+    bool temp1 = false ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -8889,12 +9016,12 @@ static PyObject *_wrap_new_ImageFromMime(PyObject *, PyObject *args, PyObject *k
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (int)SWIG_As_int(obj2); 
@@ -8949,15 +9076,15 @@ static PyObject *_wrap_new_ImageFromStream(PyObject *, PyObject *args, PyObject
     {
         if (wxPyConvertSwigPtr(obj0, (void **)&temp1, wxT("wxPyInputStream"))) {
             arg1 = temp1->m_wxis;
-            created1 = False;
+            created1 = false;
         } else {
             PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg1 = wxPyCBInputStream_create(obj0, False);
+            arg1 = wxPyCBInputStream_create(obj0, false);
             if (arg1 == NULL) {
                 PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
                 SWIG_fail;
             }
-            created1 = True;
+            created1 = true;
         }
     }
     if (obj1) {
@@ -8998,7 +9125,7 @@ static PyObject *_wrap_new_ImageFromStreamMime(PyObject *, PyObject *args, PyObj
     wxImage *result;
     wxPyInputStream *temp1 ;
     bool created1 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -9010,21 +9137,21 @@ static PyObject *_wrap_new_ImageFromStreamMime(PyObject *, PyObject *args, PyObj
     {
         if (wxPyConvertSwigPtr(obj0, (void **)&temp1, wxT("wxPyInputStream"))) {
             arg1 = temp1->m_wxis;
-            created1 = False;
+            created1 = false;
         } else {
             PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg1 = wxPyCBInputStream_create(obj0, False);
+            arg1 = wxPyCBInputStream_create(obj0, false);
             if (arg1 == NULL) {
                 PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
                 SWIG_fail;
             }
-            created1 = True;
+            created1 = true;
         }
     }
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (int)SWIG_As_int(obj2); 
@@ -9064,7 +9191,7 @@ static PyObject *_wrap_new_EmptyImage(PyObject *, PyObject *args, PyObject *kwar
     PyObject *resultobj;
     int arg1 = (int) 0 ;
     int arg2 = (int) 0 ;
-    bool arg3 = (bool) True ;
+    bool arg3 = (bool) true ;
     wxImage *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -9166,6 +9293,44 @@ static PyObject *_wrap_new_ImageFromData(PyObject *, PyObject *args, PyObject *k
 }
 
 
+static PyObject *_wrap_new_ImageFromDataWithAlpha(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    int arg1 ;
+    int arg2 ;
+    unsigned char *arg3 = (unsigned char *) 0 ;
+    unsigned char *arg4 = (unsigned char *) 0 ;
+    wxImage *result;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    PyObject * obj3 = 0 ;
+    char *kwnames[] = {
+        (char *) "width",(char *) "height",(char *) "data",(char *) "alpha", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:new_ImageFromDataWithAlpha",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
+    arg1 = (int)SWIG_As_int(obj0); 
+    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = (int)SWIG_As_int(obj1); 
+    if (PyErr_Occurred()) SWIG_fail;
+    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_unsigned_char,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    if ((SWIG_ConvertPtr(obj3,(void **)(&arg4),SWIGTYPE_p_unsigned_char,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (wxImage *)new_wxImage(arg1,arg2,arg3,arg4);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxImage, 1);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_Image_Create(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxImage *arg1 = (wxImage *) 0 ;
@@ -9681,6 +9846,46 @@ static PyObject *_wrap_Image_ConvertAlphaToMask(PyObject *, PyObject *args, PyOb
 }
 
 
+static PyObject *_wrap_Image_ConvertColourToAlpha(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxImage *arg1 = (wxImage *) 0 ;
+    unsigned char arg2 ;
+    unsigned char arg3 ;
+    unsigned char arg4 ;
+    bool result;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    PyObject * obj3 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "r",(char *) "g",(char *) "b", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:Image_ConvertColourToAlpha",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxImage,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    arg2 = (unsigned char)SWIG_As_unsigned_SS_char(obj1); 
+    if (PyErr_Occurred()) SWIG_fail;
+    arg3 = (unsigned char)SWIG_As_unsigned_SS_char(obj2); 
+    if (PyErr_Occurred()) SWIG_fail;
+    arg4 = (unsigned char)SWIG_As_unsigned_SS_char(obj3); 
+    if (PyErr_Occurred()) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (bool)(arg1)->ConvertColourToAlpha(arg2,arg3,arg4);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    }
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_Image_SetMaskFromImage(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxImage *arg1 = (wxImage *) 0 ;
@@ -9734,7 +9939,7 @@ static PyObject *_wrap_Image_CanRead(PyObject *, PyObject *args, PyObject *kwarg
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     bool result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "name", NULL 
@@ -9744,7 +9949,7 @@ static PyObject *_wrap_Image_CanRead(PyObject *, PyObject *args, PyObject *kwarg
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -9775,7 +9980,7 @@ static PyObject *_wrap_Image_GetImageCount(PyObject *, PyObject *args, PyObject
     wxString *arg1 = 0 ;
     long arg2 = (long) wxBITMAP_TYPE_ANY ;
     int result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -9786,7 +9991,7 @@ static PyObject *_wrap_Image_GetImageCount(PyObject *, PyObject *args, PyObject
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     if (obj1) {
         arg2 = (long)SWIG_As_long(obj1); 
@@ -9821,7 +10026,7 @@ static PyObject *_wrap_Image_LoadFile(PyObject *, PyObject *args, PyObject *kwar
     long arg3 = (long) wxBITMAP_TYPE_ANY ;
     int arg4 = (int) -1 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -9836,7 +10041,7 @@ static PyObject *_wrap_Image_LoadFile(PyObject *, PyObject *args, PyObject *kwar
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = (long)SWIG_As_long(obj2); 
@@ -9877,8 +10082,8 @@ static PyObject *_wrap_Image_LoadMimeFile(PyObject *, PyObject *args, PyObject *
     wxString *arg3 = 0 ;
     int arg4 = (int) -1 ;
     bool result;
-    bool temp2 = False ;
-    bool temp3 = False ;
+    bool temp2 = false ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -9893,12 +10098,12 @@ static PyObject *_wrap_Image_LoadMimeFile(PyObject *, PyObject *args, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         arg4 = (int)SWIG_As_int(obj3); 
@@ -9942,7 +10147,7 @@ static PyObject *_wrap_Image_SaveFile(PyObject *, PyObject *args, PyObject *kwar
     wxString *arg2 = 0 ;
     int arg3 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -9956,7 +10161,7 @@ static PyObject *_wrap_Image_SaveFile(PyObject *, PyObject *args, PyObject *kwar
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     arg3 = (int)SWIG_As_int(obj2); 
     if (PyErr_Occurred()) SWIG_fail;
@@ -9990,8 +10195,8 @@ static PyObject *_wrap_Image_SaveMimeFile(PyObject *, PyObject *args, PyObject *
     wxString *arg2 = 0 ;
     wxString *arg3 = 0 ;
     bool result;
-    bool temp2 = False ;
-    bool temp3 = False ;
+    bool temp2 = false ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -10005,12 +10210,12 @@ static PyObject *_wrap_Image_SaveMimeFile(PyObject *, PyObject *args, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -10059,15 +10264,15 @@ static PyObject *_wrap_Image_CanReadStream(PyObject *, PyObject *args, PyObject
     {
         if (wxPyConvertSwigPtr(obj0, (void **)&temp1, wxT("wxPyInputStream"))) {
             arg1 = temp1->m_wxis;
-            created1 = False;
+            created1 = false;
         } else {
             PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg1 = wxPyCBInputStream_create(obj0, False);
+            arg1 = wxPyCBInputStream_create(obj0, false);
             if (arg1 == NULL) {
                 PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
                 SWIG_fail;
             }
-            created1 = True;
+            created1 = true;
         }
     }
     {
@@ -10117,15 +10322,15 @@ static PyObject *_wrap_Image_LoadStream(PyObject *, PyObject *args, PyObject *kw
     {
         if (wxPyConvertSwigPtr(obj1, (void **)&temp2, wxT("wxPyInputStream"))) {
             arg2 = temp2->m_wxis;
-            created2 = False;
+            created2 = false;
         } else {
             PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg2 = wxPyCBInputStream_create(obj1, False);
+            arg2 = wxPyCBInputStream_create(obj1, false);
             if (arg2 == NULL) {
                 PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
                 SWIG_fail;
             }
-            created2 = True;
+            created2 = true;
         }
     }
     if (obj2) {
@@ -10169,7 +10374,7 @@ static PyObject *_wrap_Image_LoadMimeStream(PyObject *, PyObject *args, PyObject
     bool result;
     wxPyInputStream *temp2 ;
     bool created2 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -10184,21 +10389,21 @@ static PyObject *_wrap_Image_LoadMimeStream(PyObject *, PyObject *args, PyObject
     {
         if (wxPyConvertSwigPtr(obj1, (void **)&temp2, wxT("wxPyInputStream"))) {
             arg2 = temp2->m_wxis;
-            created2 = False;
+            created2 = false;
         } else {
             PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg2 = wxPyCBInputStream_create(obj1, False);
+            arg2 = wxPyCBInputStream_create(obj1, false);
             if (arg2 == NULL) {
                 PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
                 SWIG_fail;
             }
-            created2 = True;
+            created2 = true;
         }
     }
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         arg4 = (int)SWIG_As_int(obj3); 
@@ -10789,7 +10994,7 @@ static PyObject *_wrap_Image_GetMaskBlue(PyObject *, PyObject *args, PyObject *k
 static PyObject *_wrap_Image_SetMask(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxImage *arg1 = (wxImage *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -10850,7 +11055,7 @@ static PyObject *_wrap_Image_Rotate(PyObject *, PyObject *args, PyObject *kwargs
     wxImage *arg1 = (wxImage *) 0 ;
     double arg2 ;
     wxPoint *arg3 = 0 ;
-    bool arg4 = (bool) True ;
+    bool arg4 = (bool) true ;
     wxPoint *arg5 = (wxPoint *) NULL ;
     SwigValueWrapper< wxImage > result;
     wxPoint temp3 ;
@@ -10901,7 +11106,7 @@ static PyObject *_wrap_Image_Rotate(PyObject *, PyObject *args, PyObject *kwargs
 static PyObject *_wrap_Image_Rotate90(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxImage *arg1 = (wxImage *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     SwigValueWrapper< wxImage > result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -10937,7 +11142,7 @@ static PyObject *_wrap_Image_Rotate90(PyObject *, PyObject *args, PyObject *kwar
 static PyObject *_wrap_Image_Mirror(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxImage *arg1 = (wxImage *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     SwigValueWrapper< wxImage > result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -11066,8 +11271,8 @@ static PyObject *_wrap_Image_SetOption(PyObject *, PyObject *args, PyObject *kwa
     wxImage *arg1 = (wxImage *) 0 ;
     wxString *arg2 = 0 ;
     wxString *arg3 = 0 ;
-    bool temp2 = False ;
-    bool temp3 = False ;
+    bool temp2 = false ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -11081,12 +11286,12 @@ static PyObject *_wrap_Image_SetOption(PyObject *, PyObject *args, PyObject *kwa
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -11123,7 +11328,7 @@ static PyObject *_wrap_Image_SetOptionInt(PyObject *, PyObject *args, PyObject *
     wxImage *arg1 = (wxImage *) 0 ;
     wxString *arg2 = 0 ;
     int arg3 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -11137,7 +11342,7 @@ static PyObject *_wrap_Image_SetOptionInt(PyObject *, PyObject *args, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     arg3 = (int)SWIG_As_int(obj2); 
     if (PyErr_Occurred()) SWIG_fail;
@@ -11168,7 +11373,7 @@ static PyObject *_wrap_Image_GetOption(PyObject *, PyObject *args, PyObject *kwa
     wxImage *arg1 = (wxImage *) 0 ;
     wxString *arg2 = 0 ;
     wxString result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -11181,7 +11386,7 @@ static PyObject *_wrap_Image_GetOption(PyObject *, PyObject *args, PyObject *kwa
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -11216,7 +11421,7 @@ static PyObject *_wrap_Image_GetOptionInt(PyObject *, PyObject *args, PyObject *
     wxImage *arg1 = (wxImage *) 0 ;
     wxString *arg2 = 0 ;
     int result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -11229,7 +11434,7 @@ static PyObject *_wrap_Image_GetOptionInt(PyObject *, PyObject *args, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -11258,7 +11463,7 @@ static PyObject *_wrap_Image_HasOption(PyObject *, PyObject *args, PyObject *kwa
     wxImage *arg1 = (wxImage *) 0 ;
     wxString *arg2 = 0 ;
     bool result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -11271,7 +11476,7 @@ static PyObject *_wrap_Image_HasOption(PyObject *, PyObject *args, PyObject *kwa
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -11418,7 +11623,7 @@ static PyObject *_wrap_Image_RemoveHandler(PyObject *, PyObject *args, PyObject
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     bool result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "name", NULL 
@@ -11428,7 +11633,7 @@ static PyObject *_wrap_Image_RemoveHandler(PyObject *, PyObject *args, PyObject
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -12773,7 +12978,7 @@ static PyObject *_wrap_Event_IsCommandEvent(PyObject *, PyObject *args, PyObject
 static PyObject *_wrap_Event_Skip(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxEvent *arg1 = (wxEvent *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -13135,7 +13340,7 @@ static PyObject *_wrap_CommandEvent_SetString(PyObject *, PyObject *args, PyObje
     PyObject *resultobj;
     wxCommandEvent *arg1 = (wxCommandEvent *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -13148,7 +13353,7 @@ static PyObject *_wrap_CommandEvent_SetString(PyObject *, PyObject *args, PyObje
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -17395,7 +17600,7 @@ static PyObject * ChildFocusEvent_swigregister(PyObject *, PyObject *args) {
 static PyObject *_wrap_new_ActivateEvent(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxEventType arg1 = (wxEventType) wxEVT_NULL ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     int arg3 = (int) 0 ;
     wxActivateEvent *result;
     PyObject * obj0 = 0 ;
@@ -17725,7 +17930,7 @@ static PyObject *_wrap_CloseEvent_GetLoggingOff(PyObject *, PyObject *args, PyOb
 static PyObject *_wrap_CloseEvent_Veto(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxCloseEvent *arg1 = (wxCloseEvent *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -17848,7 +18053,7 @@ static PyObject * CloseEvent_swigregister(PyObject *, PyObject *args) {
 static PyObject *_wrap_new_ShowEvent(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     int arg1 = (int) 0 ;
-    bool arg2 = (bool) False ;
+    bool arg2 = (bool) false ;
     wxShowEvent *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -17946,7 +18151,7 @@ static PyObject * ShowEvent_swigregister(PyObject *, PyObject *args) {
 static PyObject *_wrap_new_IconizeEvent(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     int arg1 = (int) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     wxIconizeEvent *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -18398,7 +18603,7 @@ static PyObject *_wrap_UpdateUIEvent_SetText(PyObject *, PyObject *args, PyObjec
     PyObject *resultobj;
     wxUpdateUIEvent *arg1 = (wxUpdateUIEvent *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -18411,7 +18616,7 @@ static PyObject *_wrap_UpdateUIEvent_SetText(PyObject *, PyObject *args, PyObjec
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -19388,7 +19593,7 @@ static PyObject *_wrap_new_IdleEvent(PyObject *, PyObject *args, PyObject *kwarg
 static PyObject *_wrap_IdleEvent_RequestMore(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxIdleEvent *arg1 = (wxIdleEvent *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -19880,7 +20085,7 @@ static PyObject *_wrap_PyApp_SetAppName(PyObject *, PyObject *args, PyObject *kw
     PyObject *resultobj;
     wxPyApp *arg1 = (wxPyApp *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -19893,7 +20098,7 @@ static PyObject *_wrap_PyApp_SetAppName(PyObject *, PyObject *args, PyObject *kw
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -19953,7 +20158,7 @@ static PyObject *_wrap_PyApp_SetClassName(PyObject *, PyObject *args, PyObject *
     PyObject *resultobj;
     wxPyApp *arg1 = (wxPyApp *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -19966,7 +20171,7 @@ static PyObject *_wrap_PyApp_SetClassName(PyObject *, PyObject *args, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -20029,7 +20234,7 @@ static PyObject *_wrap_PyApp_SetVendorName(PyObject *, PyObject *args, PyObject
     PyObject *resultobj;
     wxPyApp *arg1 = (wxPyApp *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -20042,7 +20247,7 @@ static PyObject *_wrap_PyApp_SetVendorName(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -20120,7 +20325,7 @@ static PyObject *_wrap_PyApp_ProcessPendingEvents(PyObject *, PyObject *args, Py
 static PyObject *_wrap_PyApp_Yield(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxPyApp *arg1 = (wxPyApp *) 0 ;
-    bool arg2 = (bool) False ;
+    bool arg2 = (bool) false ;
     bool result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -20176,6 +20381,30 @@ static PyObject *_wrap_PyApp_WakeUpIdle(PyObject *, PyObject *args, PyObject *kw
 }
 
 
+static PyObject *_wrap_PyApp_IsMainLoopRunning(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    bool result;
+    char *kwnames[] = {
+        NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":PyApp_IsMainLoopRunning",kwnames)) goto fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (bool)wxPyApp::IsMainLoopRunning();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    }
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_PyApp_MainLoop(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxPyApp *arg1 = (wxPyApp *) 0 ;
@@ -20907,7 +21136,7 @@ static PyObject *_wrap_PyApp_SetMacExitMenuItemId(PyObject *, PyObject *args, Py
 static PyObject *_wrap_PyApp_SetMacHelpMenuTitleName(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxString *arg1 = 0 ;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "val", NULL 
@@ -20917,7 +21146,7 @@ static PyObject *_wrap_PyApp_SetMacHelpMenuTitleName(PyObject *, PyObject *args,
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -21067,7 +21296,7 @@ static PyObject *_wrap_YieldIfNeeded(PyObject *, PyObject *args, PyObject *kwarg
 static PyObject *_wrap_SafeYield(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) NULL ;
-    bool arg2 = (bool) False ;
+    bool arg2 = (bool) false ;
     bool result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -21200,6 +21429,248 @@ static PyObject *_wrap_GetApp(PyObject *, PyObject *args, PyObject *kwargs) {
 }
 
 
+static PyObject *_wrap_new_EventLoop(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *result;
+    char *kwnames[] = {
+        NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":new_EventLoop",kwnames)) goto fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (wxEventLoop *)new wxEventLoop();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxEventLoop, 1);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_delete_EventLoop(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_EventLoop",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        delete arg1;
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_Run(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    int result;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:EventLoop_Run",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (int)(arg1)->Run();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_From_int((int)result);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_Exit(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    int arg2 = (int) 0 ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "rc", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:EventLoop_Exit",kwnames,&obj0,&obj1)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    if (obj1) {
+        arg2 = (int)SWIG_As_int(obj1); 
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        (arg1)->Exit(arg2);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_Pending(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    bool result;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:EventLoop_Pending",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (bool)((wxEventLoop const *)arg1)->Pending();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    }
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_Dispatch(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    bool result;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:EventLoop_Dispatch",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (bool)(arg1)->Dispatch();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    }
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_IsRunning(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    bool result;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:EventLoop_IsRunning",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (bool)((wxEventLoop const *)arg1)->IsRunning();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    }
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_GetActive(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *result;
+    char *kwnames[] = {
+        NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":EventLoop_GetActive",kwnames)) goto fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (wxEventLoop *)wxEventLoop::GetActive();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxEventLoop, 0);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_EventLoop_SetActive(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxEventLoop *arg1 = (wxEventLoop *) 0 ;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "loop", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:EventLoop_SetActive",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxEventLoop,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        wxEventLoop::SetActive(arg1);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject * EventLoop_swigregister(PyObject *, PyObject *args) {
+    PyObject *obj;
+    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
+    SWIG_TypeClientData(SWIGTYPE_p_wxEventLoop, obj);
+    Py_INCREF(obj);
+    return Py_BuildValue((char *)"");
+}
 static PyObject *_wrap_new_AcceleratorEntry(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     int arg1 = (int) 0 ;
@@ -21501,7 +21972,7 @@ static PyObject *_wrap_GetAccelFromString(PyObject *, PyObject *args, PyObject *
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     wxAcceleratorEntry *result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "label", NULL 
@@ -21511,7 +21982,7 @@ static PyObject *_wrap_GetAccelFromString(PyObject *, PyObject *args, PyObject *
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -21758,7 +22229,7 @@ static PyObject *_wrap_new_Window(PyObject *, PyObject *args, PyObject *kwargs)
     wxWindow *result;
     wxPoint temp3 ;
     wxSize temp4 ;
-    bool temp6 = False ;
+    bool temp6 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -21796,7 +22267,7 @@ static PyObject *_wrap_new_Window(PyObject *, PyObject *args, PyObject *kwargs)
         {
             arg6 = wxString_in_helper(obj5);
             if (arg6 == NULL) SWIG_fail;
-            temp6 = True;
+            temp6 = true;
         }
     }
     {
@@ -21860,7 +22331,7 @@ static PyObject *_wrap_Window_Create(PyObject *, PyObject *args, PyObject *kwarg
     bool result;
     wxPoint temp4 ;
     wxSize temp5 ;
-    bool temp7 = False ;
+    bool temp7 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -21901,7 +22372,7 @@ static PyObject *_wrap_Window_Create(PyObject *, PyObject *args, PyObject *kwarg
         {
             arg7 = wxString_in_helper(obj6);
             if (arg7 == NULL) SWIG_fail;
-            temp7 = True;
+            temp7 = true;
         }
     }
     {
@@ -21931,7 +22402,7 @@ static PyObject *_wrap_Window_Create(PyObject *, PyObject *args, PyObject *kwarg
 static PyObject *_wrap_Window_Close(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
-    bool arg2 = (bool) False ;
+    bool arg2 = (bool) false ;
     bool result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -22050,7 +22521,7 @@ static PyObject *_wrap_Window_SetTitle(PyObject *, PyObject *args, PyObject *kwa
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -22063,7 +22534,7 @@ static PyObject *_wrap_Window_SetTitle(PyObject *, PyObject *args, PyObject *kwa
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -22123,7 +22594,7 @@ static PyObject *_wrap_Window_SetLabel(PyObject *, PyObject *args, PyObject *kwa
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -22136,7 +22607,7 @@ static PyObject *_wrap_Window_SetLabel(PyObject *, PyObject *args, PyObject *kwa
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -22196,7 +22667,7 @@ static PyObject *_wrap_Window_SetName(PyObject *, PyObject *args, PyObject *kwar
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -22209,7 +22680,7 @@ static PyObject *_wrap_Window_SetName(PyObject *, PyObject *args, PyObject *kwar
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -24033,7 +24504,7 @@ static PyObject *_wrap_Window_GetBestVirtualSize(PyObject *, PyObject *args, PyO
 static PyObject *_wrap_Window_Show(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     bool result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -24095,7 +24566,7 @@ static PyObject *_wrap_Window_Hide(PyObject *, PyObject *args, PyObject *kwargs)
 static PyObject *_wrap_Window_Enable(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     bool result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -24383,7 +24854,7 @@ static PyObject *_wrap_Window_GetExtraStyle(PyObject *, PyObject *args, PyObject
 static PyObject *_wrap_Window_MakeModal(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -25017,7 +25488,7 @@ static PyObject *_wrap_Window_FindWindowByName(PyObject *, PyObject *args, PyObj
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
     wxWindow *result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -25030,7 +25501,7 @@ static PyObject *_wrap_Window_FindWindowByName(PyObject *, PyObject *args, PyObj
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -25145,7 +25616,7 @@ static PyObject *_wrap_Window_PushEventHandler(PyObject *, PyObject *args, PyObj
 static PyObject *_wrap_Window_PopEventHandler(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
-    bool arg2 = (bool) False ;
+    bool arg2 = (bool) false ;
     wxEvtHandler *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -25872,7 +26343,7 @@ static PyObject *_wrap_Window_HasCapture(PyObject *, PyObject *args, PyObject *k
 static PyObject *_wrap_Window_Refresh(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     wxRect *arg3 = (wxRect *) NULL ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -26845,7 +27316,7 @@ static PyObject *_wrap_Window_GetTextExtent(PyObject *, PyObject *args, PyObject
     wxString *arg2 = 0 ;
     int *arg3 = (int *) 0 ;
     int *arg4 = (int *) 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     int temp3 ;
     int res3 = 0 ;
     int temp4 ;
@@ -26864,7 +27335,7 @@ static PyObject *_wrap_Window_GetTextExtent(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -26901,7 +27372,7 @@ static PyObject *_wrap_Window_GetFullTextExtent(PyObject *, PyObject *args, PyOb
     int *arg5 = (int *) 0 ;
     int *arg6 = (int *) 0 ;
     wxFont *arg7 = (wxFont *) NULL ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     int temp3 ;
     int res3 = 0 ;
     int temp4 ;
@@ -26927,7 +27398,7 @@ static PyObject *_wrap_Window_GetFullTextExtent(PyObject *, PyObject *args, PyOb
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         if ((SWIG_ConvertPtr(obj2,(void **)(&arg7),SWIGTYPE_p_wxFont,
@@ -27451,6 +27922,60 @@ static PyObject *_wrap_Window_GetHandle(PyObject *, PyObject *args, PyObject *kw
 }
 
 
+static PyObject *_wrap_Window_AssociateHandle(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxWindow *arg1 = (wxWindow *) 0 ;
+    long arg2 ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "handle", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Window_AssociateHandle",kwnames,&obj0,&obj1)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxWindow,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    arg2 = (long)SWIG_As_long(obj1); 
+    if (PyErr_Occurred()) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        wxWindow_AssociateHandle(arg1,arg2);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_Window_DissociateHandle(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxWindow *arg1 = (wxWindow *) 0 ;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:Window_DissociateHandle",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxWindow,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        (arg1)->DissociateHandle();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_Window_OnPaint(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
@@ -27524,7 +28049,7 @@ static PyObject *_wrap_Window_SetScrollbar(PyObject *, PyObject *args, PyObject
     int arg3 ;
     int arg4 ;
     int arg5 ;
-    bool arg6 = (bool) True ;
+    bool arg6 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -27569,7 +28094,7 @@ static PyObject *_wrap_Window_SetScrollPos(PyObject *, PyObject *args, PyObject
     wxWindow *arg1 = (wxWindow *) 0 ;
     int arg2 ;
     int arg3 ;
-    bool arg4 = (bool) True ;
+    bool arg4 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -27912,7 +28437,7 @@ static PyObject *_wrap_Window_SetHelpText(PyObject *, PyObject *args, PyObject *
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -27925,7 +28450,7 @@ static PyObject *_wrap_Window_SetHelpText(PyObject *, PyObject *args, PyObject *
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -27953,7 +28478,7 @@ static PyObject *_wrap_Window_SetHelpTextForId(PyObject *, PyObject *args, PyObj
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -27966,7 +28491,7 @@ static PyObject *_wrap_Window_SetHelpTextForId(PyObject *, PyObject *args, PyObj
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -28026,7 +28551,7 @@ static PyObject *_wrap_Window_SetToolTipString(PyObject *, PyObject *args, PyObj
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -28039,7 +28564,7 @@ static PyObject *_wrap_Window_SetToolTipString(PyObject *, PyObject *args, PyObj
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -28348,7 +28873,7 @@ static PyObject *_wrap_Window_SetSizer(PyObject *, PyObject *args, PyObject *kwa
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxSizer *arg2 = (wxSizer *) 0 ;
-    bool arg3 = (bool) True ;
+    bool arg3 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -28383,7 +28908,7 @@ static PyObject *_wrap_Window_SetSizerAndFit(PyObject *, PyObject *args, PyObjec
     PyObject *resultobj;
     wxWindow *arg1 = (wxWindow *) 0 ;
     wxSizer *arg2 = (wxSizer *) 0 ;
-    bool arg3 = (bool) True ;
+    bool arg3 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -28599,7 +29124,7 @@ static PyObject *_wrap_FindWindowByName(PyObject *, PyObject *args, PyObject *kw
     wxString *arg1 = 0 ;
     wxWindow *arg2 = (wxWindow *) NULL ;
     wxWindow *result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -28610,7 +29135,7 @@ static PyObject *_wrap_FindWindowByName(PyObject *, PyObject *args, PyObject *kw
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     if (obj1) {
         if ((SWIG_ConvertPtr(obj1,(void **)(&arg2),SWIGTYPE_p_wxWindow,
@@ -28646,7 +29171,7 @@ static PyObject *_wrap_FindWindowByLabel(PyObject *, PyObject *args, PyObject *k
     wxString *arg1 = 0 ;
     wxWindow *arg2 = (wxWindow *) NULL ;
     wxWindow *result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -28657,7 +29182,7 @@ static PyObject *_wrap_FindWindowByLabel(PyObject *, PyObject *args, PyObject *k
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     if (obj1) {
         if ((SWIG_ConvertPtr(obj1,(void **)(&arg2),SWIGTYPE_p_wxWindow,
@@ -28941,7 +29466,7 @@ static PyObject *_wrap_Validator_IsSilent(PyObject *, PyObject *args, PyObject *
 
 static PyObject *_wrap_Validator_SetBellOnError(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
-    int arg1 = (int) True ;
+    int arg1 = (int) true ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "doIt", NULL 
@@ -29000,7 +29525,7 @@ static PyObject *_wrap_PyValidator__setCallbackInfo(PyObject *, PyObject *args,
     wxPyValidator *arg1 = (wxPyValidator *) 0 ;
     PyObject *arg2 = (PyObject *) 0 ;
     PyObject *arg3 = (PyObject *) 0 ;
-    int arg4 = (int) True ;
+    int arg4 = (int) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29059,7 +29584,7 @@ static PyObject *_wrap_new_Menu(PyObject *, PyObject *args, PyObject *kwargs) {
     wxString *arg1 = (wxString *) &arg1_defvalue ;
     long arg2 = (long) 0 ;
     wxMenu *result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -29071,7 +29596,7 @@ static PyObject *_wrap_new_Menu(PyObject *, PyObject *args, PyObject *kwargs) {
         {
             arg1 = wxString_in_helper(obj0);
             if (arg1 == NULL) SWIG_fail;
-            temp1 = True;
+            temp1 = true;
         }
     }
     if (obj1) {
@@ -29110,8 +29635,8 @@ static PyObject *_wrap_Menu_Append(PyObject *, PyObject *args, PyObject *kwargs)
     wxString *arg4 = (wxString *) &arg4_defvalue ;
     int arg5 = (int) wxITEM_NORMAL ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29129,13 +29654,13 @@ static PyObject *_wrap_Menu_Append(PyObject *, PyObject *args, PyObject *kwargs)
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     if (obj4) {
@@ -29210,8 +29735,8 @@ static PyObject *_wrap_Menu_AppendCheckItem(PyObject *, PyObject *args, PyObject
     wxString const &arg4_defvalue = wxPyEmptyString ;
     wxString *arg4 = (wxString *) &arg4_defvalue ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29228,13 +29753,13 @@ static PyObject *_wrap_Menu_AppendCheckItem(PyObject *, PyObject *args, PyObject
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     {
@@ -29277,8 +29802,8 @@ static PyObject *_wrap_Menu_AppendRadioItem(PyObject *, PyObject *args, PyObject
     wxString const &arg4_defvalue = wxPyEmptyString ;
     wxString *arg4 = (wxString *) &arg4_defvalue ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29295,13 +29820,13 @@ static PyObject *_wrap_Menu_AppendRadioItem(PyObject *, PyObject *args, PyObject
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     {
@@ -29345,8 +29870,8 @@ static PyObject *_wrap_Menu_AppendMenu(PyObject *, PyObject *args, PyObject *kwa
     wxString const &arg5_defvalue = wxPyEmptyString ;
     wxString *arg5 = (wxString *) &arg5_defvalue ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp5 = False ;
+    bool temp3 = false ;
+    bool temp5 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29364,7 +29889,7 @@ static PyObject *_wrap_Menu_AppendMenu(PyObject *, PyObject *args, PyObject *kwa
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if ((SWIG_ConvertPtr(obj3,(void **)(&arg4),SWIGTYPE_p_wxMenu,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
@@ -29372,7 +29897,7 @@ static PyObject *_wrap_Menu_AppendMenu(PyObject *, PyObject *args, PyObject *kwa
         {
             arg5 = wxString_in_helper(obj4);
             if (arg5 == NULL) SWIG_fail;
-            temp5 = True;
+            temp5 = true;
         }
     }
     {
@@ -29510,8 +30035,8 @@ static PyObject *_wrap_Menu_Insert(PyObject *, PyObject *args, PyObject *kwargs)
     wxString *arg5 = (wxString *) &arg5_defvalue ;
     int arg6 = (int) wxITEM_NORMAL ;
     wxMenuItem *result;
-    bool temp4 = False ;
-    bool temp5 = False ;
+    bool temp4 = false ;
+    bool temp5 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29532,13 +30057,13 @@ static PyObject *_wrap_Menu_Insert(PyObject *, PyObject *args, PyObject *kwargs)
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     if (obj4) {
         {
             arg5 = wxString_in_helper(obj4);
             if (arg5 == NULL) SWIG_fail;
-            temp5 = True;
+            temp5 = true;
         }
     }
     if (obj5) {
@@ -29618,8 +30143,8 @@ static PyObject *_wrap_Menu_InsertCheckItem(PyObject *, PyObject *args, PyObject
     wxString const &arg5_defvalue = wxPyEmptyString ;
     wxString *arg5 = (wxString *) &arg5_defvalue ;
     wxMenuItem *result;
-    bool temp4 = False ;
-    bool temp5 = False ;
+    bool temp4 = false ;
+    bool temp5 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29639,13 +30164,13 @@ static PyObject *_wrap_Menu_InsertCheckItem(PyObject *, PyObject *args, PyObject
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     if (obj4) {
         {
             arg5 = wxString_in_helper(obj4);
             if (arg5 == NULL) SWIG_fail;
-            temp5 = True;
+            temp5 = true;
         }
     }
     {
@@ -29689,8 +30214,8 @@ static PyObject *_wrap_Menu_InsertRadioItem(PyObject *, PyObject *args, PyObject
     wxString const &arg5_defvalue = wxPyEmptyString ;
     wxString *arg5 = (wxString *) &arg5_defvalue ;
     wxMenuItem *result;
-    bool temp4 = False ;
-    bool temp5 = False ;
+    bool temp4 = false ;
+    bool temp5 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29710,13 +30235,13 @@ static PyObject *_wrap_Menu_InsertRadioItem(PyObject *, PyObject *args, PyObject
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     if (obj4) {
         {
             arg5 = wxString_in_helper(obj4);
             if (arg5 == NULL) SWIG_fail;
-            temp5 = True;
+            temp5 = true;
         }
     }
     {
@@ -29761,8 +30286,8 @@ static PyObject *_wrap_Menu_InsertMenu(PyObject *, PyObject *args, PyObject *kwa
     wxString const &arg6_defvalue = wxPyEmptyString ;
     wxString *arg6 = (wxString *) &arg6_defvalue ;
     wxMenuItem *result;
-    bool temp4 = False ;
-    bool temp6 = False ;
+    bool temp4 = false ;
+    bool temp6 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29783,7 +30308,7 @@ static PyObject *_wrap_Menu_InsertMenu(PyObject *, PyObject *args, PyObject *kwa
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     if ((SWIG_ConvertPtr(obj4,(void **)(&arg5),SWIGTYPE_p_wxMenu,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
@@ -29791,7 +30316,7 @@ static PyObject *_wrap_Menu_InsertMenu(PyObject *, PyObject *args, PyObject *kwa
         {
             arg6 = wxString_in_helper(obj5);
             if (arg6 == NULL) SWIG_fail;
-            temp6 = True;
+            temp6 = true;
         }
     }
     {
@@ -29867,8 +30392,8 @@ static PyObject *_wrap_Menu_Prepend(PyObject *, PyObject *args, PyObject *kwargs
     wxString *arg4 = (wxString *) &arg4_defvalue ;
     int arg5 = (int) wxITEM_NORMAL ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29886,13 +30411,13 @@ static PyObject *_wrap_Menu_Prepend(PyObject *, PyObject *args, PyObject *kwargs
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     if (obj4) {
@@ -29967,8 +30492,8 @@ static PyObject *_wrap_Menu_PrependCheckItem(PyObject *, PyObject *args, PyObjec
     wxString const &arg4_defvalue = wxPyEmptyString ;
     wxString *arg4 = (wxString *) &arg4_defvalue ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -29985,13 +30510,13 @@ static PyObject *_wrap_Menu_PrependCheckItem(PyObject *, PyObject *args, PyObjec
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     {
@@ -30034,8 +30559,8 @@ static PyObject *_wrap_Menu_PrependRadioItem(PyObject *, PyObject *args, PyObjec
     wxString const &arg4_defvalue = wxPyEmptyString ;
     wxString *arg4 = (wxString *) &arg4_defvalue ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -30052,13 +30577,13 @@ static PyObject *_wrap_Menu_PrependRadioItem(PyObject *, PyObject *args, PyObjec
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     {
@@ -30102,8 +30627,8 @@ static PyObject *_wrap_Menu_PrependMenu(PyObject *, PyObject *args, PyObject *kw
     wxString const &arg5_defvalue = wxPyEmptyString ;
     wxString *arg5 = (wxString *) &arg5_defvalue ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp5 = False ;
+    bool temp3 = false ;
+    bool temp5 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -30121,7 +30646,7 @@ static PyObject *_wrap_Menu_PrependMenu(PyObject *, PyObject *args, PyObject *kw
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     if ((SWIG_ConvertPtr(obj3,(void **)(&arg4),SWIGTYPE_p_wxMenu,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
@@ -30129,7 +30654,7 @@ static PyObject *_wrap_Menu_PrependMenu(PyObject *, PyObject *args, PyObject *kw
         {
             arg5 = wxString_in_helper(obj4);
             if (arg5 == NULL) SWIG_fail;
-            temp5 = True;
+            temp5 = true;
         }
     }
     {
@@ -30438,7 +30963,7 @@ static PyObject *_wrap_Menu_FindItem(PyObject *, PyObject *args, PyObject *kwarg
     wxMenu *arg1 = (wxMenu *) 0 ;
     wxString *arg2 = 0 ;
     int result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -30451,7 +30976,7 @@ static PyObject *_wrap_Menu_FindItem(PyObject *, PyObject *args, PyObject *kwarg
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -30674,7 +31199,7 @@ static PyObject *_wrap_Menu_SetLabel(PyObject *, PyObject *args, PyObject *kwarg
     wxMenu *arg1 = (wxMenu *) 0 ;
     int arg2 ;
     wxString *arg3 = 0 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -30690,7 +31215,7 @@ static PyObject *_wrap_Menu_SetLabel(PyObject *, PyObject *args, PyObject *kwarg
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -30755,7 +31280,7 @@ static PyObject *_wrap_Menu_SetHelpString(PyObject *, PyObject *args, PyObject *
     wxMenu *arg1 = (wxMenu *) 0 ;
     int arg2 ;
     wxString *arg3 = 0 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -30771,7 +31296,7 @@ static PyObject *_wrap_Menu_SetHelpString(PyObject *, PyObject *args, PyObject *
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -30835,7 +31360,7 @@ static PyObject *_wrap_Menu_SetTitle(PyObject *, PyObject *args, PyObject *kwarg
     PyObject *resultobj;
     wxMenu *arg1 = (wxMenu *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -30848,7 +31373,7 @@ static PyObject *_wrap_Menu_SetTitle(PyObject *, PyObject *args, PyObject *kwarg
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31284,7 +31809,7 @@ static PyObject *_wrap_MenuBar_Append(PyObject *, PyObject *args, PyObject *kwar
     wxMenu *arg2 = (wxMenu *) 0 ;
     wxString *arg3 = 0 ;
     bool result;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -31300,7 +31825,7 @@ static PyObject *_wrap_MenuBar_Append(PyObject *, PyObject *args, PyObject *kwar
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31333,7 +31858,7 @@ static PyObject *_wrap_MenuBar_Insert(PyObject *, PyObject *args, PyObject *kwar
     wxMenu *arg3 = (wxMenu *) 0 ;
     wxString *arg4 = 0 ;
     bool result;
-    bool temp4 = False ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -31352,7 +31877,7 @@ static PyObject *_wrap_MenuBar_Insert(PyObject *, PyObject *args, PyObject *kwar
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31443,7 +31968,7 @@ static PyObject *_wrap_MenuBar_Replace(PyObject *, PyObject *args, PyObject *kwa
     wxMenu *arg3 = (wxMenu *) 0 ;
     wxString *arg4 = 0 ;
     wxMenu *result;
-    bool temp4 = False ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -31462,7 +31987,7 @@ static PyObject *_wrap_MenuBar_Replace(PyObject *, PyObject *args, PyObject *kwa
     {
         arg4 = wxString_in_helper(obj3);
         if (arg4 == NULL) SWIG_fail;
-        temp4 = True;
+        temp4 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31590,7 +32115,7 @@ static PyObject *_wrap_MenuBar_SetLabelTop(PyObject *, PyObject *args, PyObject
     wxMenuBar *arg1 = (wxMenuBar *) 0 ;
     size_t arg2 ;
     wxString *arg3 = 0 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -31606,7 +32131,7 @@ static PyObject *_wrap_MenuBar_SetLabelTop(PyObject *, PyObject *args, PyObject
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31672,8 +32197,8 @@ static PyObject *_wrap_MenuBar_FindMenuItem(PyObject *, PyObject *args, PyObject
     wxString *arg2 = 0 ;
     wxString *arg3 = 0 ;
     int result;
-    bool temp2 = False ;
-    bool temp3 = False ;
+    bool temp2 = false ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -31687,12 +32212,12 @@ static PyObject *_wrap_MenuBar_FindMenuItem(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31761,7 +32286,7 @@ static PyObject *_wrap_MenuBar_FindMenu(PyObject *, PyObject *args, PyObject *kw
     wxMenuBar *arg1 = (wxMenuBar *) 0 ;
     wxString *arg2 = 0 ;
     int result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -31774,7 +32299,7 @@ static PyObject *_wrap_MenuBar_FindMenu(PyObject *, PyObject *args, PyObject *kw
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -31933,7 +32458,7 @@ static PyObject *_wrap_MenuBar_SetLabel(PyObject *, PyObject *args, PyObject *kw
     wxMenuBar *arg1 = (wxMenuBar *) 0 ;
     int arg2 ;
     wxString *arg3 = 0 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -31949,7 +32474,7 @@ static PyObject *_wrap_MenuBar_SetLabel(PyObject *, PyObject *args, PyObject *kw
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -32014,7 +32539,7 @@ static PyObject *_wrap_MenuBar_SetHelpString(PyObject *, PyObject *args, PyObjec
     wxMenuBar *arg1 = (wxMenuBar *) 0 ;
     int arg2 ;
     wxString *arg3 = 0 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -32030,7 +32555,7 @@ static PyObject *_wrap_MenuBar_SetHelpString(PyObject *, PyObject *args, PyObjec
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -32218,8 +32743,8 @@ static PyObject *_wrap_new_MenuItem(PyObject *, PyObject *args, PyObject *kwargs
     int arg5 = (int) wxITEM_NORMAL ;
     wxMenu *arg6 = (wxMenu *) NULL ;
     wxMenuItem *result;
-    bool temp3 = False ;
-    bool temp4 = False ;
+    bool temp3 = false ;
+    bool temp4 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -32243,14 +32768,14 @@ static PyObject *_wrap_new_MenuItem(PyObject *, PyObject *args, PyObject *kwargs
         {
             arg3 = wxString_in_helper(obj2);
             if (arg3 == NULL) SWIG_fail;
-            temp3 = True;
+            temp3 = true;
         }
     }
     if (obj3) {
         {
             arg4 = wxString_in_helper(obj3);
             if (arg4 == NULL) SWIG_fail;
-            temp4 = True;
+            temp4 = true;
         }
     }
     if (obj4) {
@@ -32437,7 +32962,7 @@ static PyObject *_wrap_MenuItem_SetText(PyObject *, PyObject *args, PyObject *kw
     PyObject *resultobj;
     wxMenuItem *arg1 = (wxMenuItem *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -32450,7 +32975,7 @@ static PyObject *_wrap_MenuItem_SetText(PyObject *, PyObject *args, PyObject *kw
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -32545,7 +33070,7 @@ static PyObject *_wrap_MenuItem_GetLabelFromText(PyObject *, PyObject *args, PyO
     PyObject *resultobj;
     wxString *arg1 = 0 ;
     wxString result;
-    bool temp1 = False ;
+    bool temp1 = false ;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "text", NULL 
@@ -32555,7 +33080,7 @@ static PyObject *_wrap_MenuItem_GetLabelFromText(PyObject *, PyObject *args, PyO
     {
         arg1 = wxString_in_helper(obj0);
         if (arg1 == NULL) SWIG_fail;
-        temp1 = True;
+        temp1 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -32785,7 +33310,7 @@ static PyObject *_wrap_MenuItem_GetSubMenu(PyObject *, PyObject *args, PyObject
 static PyObject *_wrap_MenuItem_Enable(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMenuItem *arg1 = (wxMenuItem *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -32844,7 +33369,7 @@ static PyObject *_wrap_MenuItem_IsEnabled(PyObject *, PyObject *args, PyObject *
 static PyObject *_wrap_MenuItem_Check(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMenuItem *arg1 = (wxMenuItem *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -32929,7 +33454,7 @@ static PyObject *_wrap_MenuItem_SetHelp(PyObject *, PyObject *args, PyObject *kw
     PyObject *resultobj;
     wxMenuItem *arg1 = (wxMenuItem *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -32942,7 +33467,7 @@ static PyObject *_wrap_MenuItem_SetHelp(PyObject *, PyObject *args, PyObject *kw
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -33464,7 +33989,7 @@ static PyObject *_wrap_MenuItem_IsOwnerDrawn(PyObject *, PyObject *args, PyObjec
 static PyObject *_wrap_MenuItem_SetOwnerDrawn(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMenuItem *arg1 = (wxMenuItem *) 0 ;
-    bool arg2 = (bool) True ;
+    bool arg2 = (bool) true ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -33626,7 +34151,7 @@ static PyObject *_wrap_new_Control(PyObject *, PyObject *args, PyObject *kwargs)
     wxControl *result;
     wxPoint temp3 ;
     wxSize temp4 ;
-    bool temp7 = False ;
+    bool temp7 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -33674,7 +34199,7 @@ static PyObject *_wrap_new_Control(PyObject *, PyObject *args, PyObject *kwargs)
         {
             arg7 = wxString_in_helper(obj6);
             if (arg7 == NULL) SWIG_fail;
-            temp7 = True;
+            temp7 = true;
         }
     }
     {
@@ -33740,7 +34265,7 @@ static PyObject *_wrap_Control_Create(PyObject *, PyObject *args, PyObject *kwar
     bool result;
     wxPoint temp4 ;
     wxSize temp5 ;
-    bool temp8 = False ;
+    bool temp8 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -33791,7 +34316,7 @@ static PyObject *_wrap_Control_Create(PyObject *, PyObject *args, PyObject *kwar
         {
             arg8 = wxString_in_helper(obj7);
             if (arg8 == NULL) SWIG_fail;
-            temp8 = True;
+            temp8 = true;
         }
     }
     {
@@ -33888,7 +34413,7 @@ static PyObject *_wrap_Control_SetLabel(PyObject *, PyObject *args, PyObject *kw
     PyObject *resultobj;
     wxControl *arg1 = (wxControl *) 0 ;
     wxString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -33901,7 +34426,7 @@ static PyObject *_wrap_Control_SetLabel(PyObject *, PyObject *args, PyObject *kw
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -33971,7 +34496,7 @@ static PyObject *_wrap_ItemContainer_Append(PyObject *, PyObject *args, PyObject
     wxString *arg2 = 0 ;
     PyObject *arg3 = (PyObject *) NULL ;
     int result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -33985,7 +34510,7 @@ static PyObject *_wrap_ItemContainer_Append(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     if (obj2) {
         arg3 = obj2;
@@ -34016,7 +34541,7 @@ static PyObject *_wrap_ItemContainer_AppendItems(PyObject *, PyObject *args, PyO
     PyObject *resultobj;
     wxItemContainer *arg1 = (wxItemContainer *) 0 ;
     wxArrayString *arg2 = 0 ;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -34032,7 +34557,7 @@ static PyObject *_wrap_ItemContainer_AppendItems(PyObject *, PyObject *args, PyO
             SWIG_fail;
         }
         arg2 = new wxArrayString;
-        temp2 = True;
+        temp2 = true;
         int i, len=PySequence_Length(obj1);
         for (i=0; i<len; i++) {
             PyObject* item = PySequence_GetItem(obj1, i);
@@ -34074,7 +34599,7 @@ static PyObject *_wrap_ItemContainer_Insert(PyObject *, PyObject *args, PyObject
     int arg3 ;
     PyObject *arg4 = (PyObject *) NULL ;
     int result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -34089,7 +34614,7 @@ static PyObject *_wrap_ItemContainer_Insert(PyObject *, PyObject *args, PyObject
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     arg3 = (int)SWIG_As_int(obj2); 
     if (PyErr_Occurred()) SWIG_fail;
@@ -34295,7 +34820,7 @@ static PyObject *_wrap_ItemContainer_SetString(PyObject *, PyObject *args, PyObj
     wxItemContainer *arg1 = (wxItemContainer *) 0 ;
     int arg2 ;
     wxString *arg3 = 0 ;
-    bool temp3 = False ;
+    bool temp3 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -34311,7 +34836,7 @@ static PyObject *_wrap_ItemContainer_SetString(PyObject *, PyObject *args, PyObj
     {
         arg3 = wxString_in_helper(obj2);
         if (arg3 == NULL) SWIG_fail;
-        temp3 = True;
+        temp3 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -34340,7 +34865,7 @@ static PyObject *_wrap_ItemContainer_FindString(PyObject *, PyObject *args, PyOb
     wxItemContainer *arg1 = (wxItemContainer *) 0 ;
     wxString *arg2 = 0 ;
     int result;
-    bool temp2 = False ;
+    bool temp2 = false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -34353,7 +34878,7 @@ static PyObject *_wrap_ItemContainer_FindString(PyObject *, PyObject *args, PyOb
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
-        temp2 = True;
+        temp2 = true;
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -35054,6 +35579,36 @@ static PyObject *_wrap_SizerItem_GetRatio(PyObject *, PyObject *args, PyObject *
 }
 
 
+static PyObject *_wrap_SizerItem_GetRect(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxSizerItem *arg1 = (wxSizerItem *) 0 ;
+    wxRect result;
+    PyObject * obj0 = 0 ;
+    char *kwnames[] = {
+        (char *) "self", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:SizerItem_GetRect",kwnames,&obj0)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxSizerItem,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (arg1)->GetRect();
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        wxRect * resultptr;
+        resultptr = new wxRect((wxRect &) result);
+        resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxRect, 1);
+    }
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_SizerItem_IsWindow(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxSizerItem *arg1 = (wxSizerItem *) 0 ;
@@ -35634,6 +36189,7 @@ static PyObject *_wrap_Sizer_Add(PyObject *, PyObject *args, PyObject *kwargs) {
     int arg4 = (int) 0 ;
     int arg5 = (int) 0 ;
     PyObject *arg6 = (PyObject *) NULL ;
+    wxSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -35665,12 +36221,12 @@ static PyObject *_wrap_Sizer_Add(PyObject *, PyObject *args, PyObject *kwargs) {
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        wxSizer_Add(arg1,arg2,arg3,arg4,arg5,arg6);
+        result = (wxSizerItem *)wxSizer_Add(arg1,arg2,arg3,arg4,arg5,arg6);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -35686,6 +36242,7 @@ static PyObject *_wrap_Sizer_Insert(PyObject *, PyObject *args, PyObject *kwargs
     int arg5 = (int) 0 ;
     int arg6 = (int) 0 ;
     PyObject *arg7 = (PyObject *) NULL ;
+    wxSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -35720,12 +36277,12 @@ static PyObject *_wrap_Sizer_Insert(PyObject *, PyObject *args, PyObject *kwargs
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        wxSizer_Insert(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
+        result = (wxSizerItem *)wxSizer_Insert(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -35740,6 +36297,7 @@ static PyObject *_wrap_Sizer_Prepend(PyObject *, PyObject *args, PyObject *kwarg
     int arg4 = (int) 0 ;
     int arg5 = (int) 0 ;
     PyObject *arg6 = (PyObject *) NULL ;
+    wxSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -35771,12 +36329,12 @@ static PyObject *_wrap_Sizer_Prepend(PyObject *, PyObject *args, PyObject *kwarg
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        wxSizer_Prepend(arg1,arg2,arg3,arg4,arg5,arg6);
+        result = (wxSizerItem *)wxSizer_Prepend(arg1,arg2,arg3,arg4,arg5,arg6);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -35845,6 +36403,35 @@ static PyObject *_wrap_Sizer_Detach(PyObject *, PyObject *args, PyObject *kwargs
 }
 
 
+static PyObject *_wrap_Sizer_GetItem(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxSizer *arg1 = (wxSizer *) 0 ;
+    PyObject *arg2 = (PyObject *) 0 ;
+    wxSizerItem *result;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "item", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Sizer_GetItem",kwnames,&obj0,&obj1)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxSizer,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    arg2 = obj1;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = (wxSizerItem *)wxSizer_GetItem(arg1,arg2);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_Sizer__SetItemMinSize(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxSizer *arg1 = (wxSizer *) 0 ;
@@ -35884,6 +36471,7 @@ static PyObject *_wrap_Sizer_AddItem(PyObject *, PyObject *args, PyObject *kwarg
     PyObject *resultobj;
     wxSizer *arg1 = (wxSizer *) 0 ;
     wxSizerItem *arg2 = (wxSizerItem *) 0 ;
+    wxSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -35897,12 +36485,12 @@ static PyObject *_wrap_Sizer_AddItem(PyObject *, PyObject *args, PyObject *kwarg
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->Add(arg2);
+        result = (wxSizerItem *)(arg1)->Add(arg2);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -35914,6 +36502,7 @@ static PyObject *_wrap_Sizer_InsertItem(PyObject *, PyObject *args, PyObject *kw
     wxSizer *arg1 = (wxSizer *) 0 ;
     size_t arg2 ;
     wxSizerItem *arg3 = (wxSizerItem *) 0 ;
+    wxSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -35930,12 +36519,12 @@ static PyObject *_wrap_Sizer_InsertItem(PyObject *, PyObject *args, PyObject *kw
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->Insert(arg2,arg3);
+        result = (wxSizerItem *)(arg1)->Insert(arg2,arg3);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -35946,6 +36535,7 @@ static PyObject *_wrap_Sizer_PrependItem(PyObject *, PyObject *args, PyObject *k
     PyObject *resultobj;
     wxSizer *arg1 = (wxSizer *) 0 ;
     wxSizerItem *arg2 = (wxSizerItem *) 0 ;
+    wxSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -35959,12 +36549,12 @@ static PyObject *_wrap_Sizer_PrependItem(PyObject *, PyObject *args, PyObject *k
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->Prepend(arg2);
+        result = (wxSizerItem *)(arg1)->Prepend(arg2);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -36338,7 +36928,7 @@ static PyObject *_wrap_Sizer_SetVirtualSizeHints(PyObject *, PyObject *args, PyO
 static PyObject *_wrap_Sizer_Clear(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxSizer *arg1 = (wxSizer *) 0 ;
-    bool arg2 = (bool) False ;
+    bool arg2 = (bool) false ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -36421,15 +37011,18 @@ static PyObject *_wrap_Sizer_Show(PyObject *, PyObject *args, PyObject *kwargs)
     PyObject *resultobj;
     wxSizer *arg1 = (wxSizer *) 0 ;
     PyObject *arg2 = (PyObject *) 0 ;
-    bool arg3 = (bool) True ;
+    bool arg3 = (bool) true ;
+    bool arg4 = (bool) false ;
+    bool result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
+    PyObject * obj3 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "item",(char *) "show", NULL 
+        (char *) "self",(char *) "item",(char *) "show",(char *) "recursive", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:Sizer_Show",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:Sizer_Show",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxSizer,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
     arg2 = obj1;
@@ -36437,14 +37030,20 @@ static PyObject *_wrap_Sizer_Show(PyObject *, PyObject *args, PyObject *kwargs)
         arg3 = (bool)SWIG_As_bool(obj2); 
         if (PyErr_Occurred()) SWIG_fail;
     }
+    if (obj3) {
+        arg4 = (bool)SWIG_As_bool(obj3); 
+        if (PyErr_Occurred()) SWIG_fail;
+    }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        wxSizer_Show(arg1,arg2,arg3);
+        result = (bool)wxSizer_Show(arg1,arg2,arg3,arg4);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    }
     return resultobj;
     fail:
     return NULL;
@@ -38485,7 +39084,7 @@ static PyObject *_wrap_GridBagSizer_Add(PyObject *, PyObject *args, PyObject *kw
     int arg5 = (int) 0 ;
     int arg6 = (int) 0 ;
     PyObject *arg7 = (PyObject *) NULL ;
-    bool result;
+    wxGBSizerItem *result;
     wxGBPosition temp3 ;
     wxGBSpan temp4 ;
     PyObject * obj0 = 0 ;
@@ -38526,14 +39125,12 @@ static PyObject *_wrap_GridBagSizer_Add(PyObject *, PyObject *args, PyObject *kw
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)wxGridBagSizer_Add(arg1,arg2,(wxGBPosition const &)*arg3,(wxGBSpan const &)*arg4,arg5,arg6,arg7);
+        result = (wxGBSizerItem *)wxGridBagSizer_Add(arg1,arg2,(wxGBPosition const &)*arg3,(wxGBSpan const &)*arg4,arg5,arg6,arg7);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGBSizerItem, 0);
     return resultobj;
     fail:
     return NULL;
@@ -38544,7 +39141,7 @@ static PyObject *_wrap_GridBagSizer_AddItem(PyObject *, PyObject *args, PyObject
     PyObject *resultobj;
     wxGridBagSizer *arg1 = (wxGridBagSizer *) 0 ;
     wxGBSizerItem *arg2 = (wxGBSizerItem *) 0 ;
-    bool result;
+    wxGBSizerItem *result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -38558,13 +39155,49 @@ static PyObject *_wrap_GridBagSizer_AddItem(PyObject *, PyObject *args, PyObject
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->Add(arg2);
+        result = (wxGBSizerItem *)(arg1)->Add(arg2);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGBSizerItem, 0);
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_GridBagSizer_GetCellSize(PyObject *, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxGridBagSizer *arg1 = (wxGridBagSizer *) 0 ;
+    int arg2 ;
+    int arg3 ;
+    wxSize result;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "row",(char *) "col", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GridBagSizer_GetCellSize",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxGridBagSizer,
+    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    arg2 = (int)SWIG_As_int(obj1); 
+    if (PyErr_Occurred()) SWIG_fail;
+    arg3 = (int)SWIG_As_int(obj2); 
+    if (PyErr_Occurred()) SWIG_fail;
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        result = ((wxGridBagSizer const *)arg1)->GetCellSize(arg2,arg3);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+        wxSize * resultptr;
+        resultptr = new wxSize((wxSize &) result);
+        resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxSize, 1);
     }
     return resultobj;
     fail:
@@ -40821,6 +41454,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"new_Rect", (PyCFunction) _wrap_new_Rect, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"new_RectPP", (PyCFunction) _wrap_new_RectPP, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"new_RectPS", (PyCFunction) _wrap_new_RectPS, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"new_RectS", (PyCFunction) _wrap_new_RectS, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"delete_Rect", (PyCFunction) _wrap_delete_Rect, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Rect_GetX", (PyCFunction) _wrap_Rect_GetX, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Rect_SetX", (PyCFunction) _wrap_Rect_SetX, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -40898,6 +41532,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Point2D_Get", (PyCFunction) _wrap_Point2D_Get, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Point2D_swigregister", Point2D_swigregister, METH_VARARGS, NULL },
         { (char *)"new_InputStream", (PyCFunction) _wrap_new_InputStream, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"delete_InputStream", (PyCFunction) _wrap_delete_InputStream, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"InputStream_close", (PyCFunction) _wrap_InputStream_close, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"InputStream_flush", (PyCFunction) _wrap_InputStream_flush, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"InputStream_eof", (PyCFunction) _wrap_InputStream_eof, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -40948,8 +41583,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"FileSystem_AddHandler", (PyCFunction) _wrap_FileSystem_AddHandler, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"FileSystem_CleanUpHandlers", (PyCFunction) _wrap_FileSystem_CleanUpHandlers, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"FileSystem_FileNameToURL", (PyCFunction) _wrap_FileSystem_FileNameToURL, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"FileSystem_swigregister", FileSystem_swigregister, METH_VARARGS, NULL },
         { (char *)"FileSystem_URLToFileName", (PyCFunction) _wrap_FileSystem_URLToFileName, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"FileSystem_swigregister", FileSystem_swigregister, METH_VARARGS, NULL },
         { (char *)"new_InternetFSHandler", (PyCFunction) _wrap_new_InternetFSHandler, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"InternetFSHandler_CanOpen", (PyCFunction) _wrap_InternetFSHandler_CanOpen, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"InternetFSHandler_OpenFile", (PyCFunction) _wrap_InternetFSHandler_OpenFile, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -40992,6 +41627,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"new_EmptyImage", (PyCFunction) _wrap_new_EmptyImage, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"new_ImageFromBitmap", (PyCFunction) _wrap_new_ImageFromBitmap, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"new_ImageFromData", (PyCFunction) _wrap_new_ImageFromData, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"new_ImageFromDataWithAlpha", (PyCFunction) _wrap_new_ImageFromDataWithAlpha, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_Create", (PyCFunction) _wrap_Image_Create, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_Destroy", (PyCFunction) _wrap_Image_Destroy, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_Scale", (PyCFunction) _wrap_Image_Scale, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41006,6 +41642,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Image_HasAlpha", (PyCFunction) _wrap_Image_HasAlpha, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_FindFirstUnusedColour", (PyCFunction) _wrap_Image_FindFirstUnusedColour, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_ConvertAlphaToMask", (PyCFunction) _wrap_Image_ConvertAlphaToMask, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"Image_ConvertColourToAlpha", (PyCFunction) _wrap_Image_ConvertColourToAlpha, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_SetMaskFromImage", (PyCFunction) _wrap_Image_SetMaskFromImage, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_CanRead", (PyCFunction) _wrap_Image_CanRead, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Image_GetImageCount", (PyCFunction) _wrap_Image_GetImageCount, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41399,6 +42036,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"PyApp_ProcessPendingEvents", (PyCFunction) _wrap_PyApp_ProcessPendingEvents, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"PyApp_Yield", (PyCFunction) _wrap_PyApp_Yield, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"PyApp_WakeUpIdle", (PyCFunction) _wrap_PyApp_WakeUpIdle, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"PyApp_IsMainLoopRunning", (PyCFunction) _wrap_PyApp_IsMainLoopRunning, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"PyApp_MainLoop", (PyCFunction) _wrap_PyApp_MainLoop, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"PyApp_Exit", (PyCFunction) _wrap_PyApp_Exit, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"PyApp_ExitMainLoop", (PyCFunction) _wrap_PyApp_ExitMainLoop, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41438,6 +42076,16 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"PostEvent", (PyCFunction) _wrap_PostEvent, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"App_CleanUp", (PyCFunction) _wrap_App_CleanUp, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"GetApp", (PyCFunction) _wrap_GetApp, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"new_EventLoop", (PyCFunction) _wrap_new_EventLoop, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"delete_EventLoop", (PyCFunction) _wrap_delete_EventLoop, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_Run", (PyCFunction) _wrap_EventLoop_Run, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_Exit", (PyCFunction) _wrap_EventLoop_Exit, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_Pending", (PyCFunction) _wrap_EventLoop_Pending, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_Dispatch", (PyCFunction) _wrap_EventLoop_Dispatch, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_IsRunning", (PyCFunction) _wrap_EventLoop_IsRunning, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_GetActive", (PyCFunction) _wrap_EventLoop_GetActive, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_SetActive", (PyCFunction) _wrap_EventLoop_SetActive, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"EventLoop_swigregister", EventLoop_swigregister, METH_VARARGS, NULL },
         { (char *)"new_AcceleratorEntry", (PyCFunction) _wrap_new_AcceleratorEntry, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"delete_AcceleratorEntry", (PyCFunction) _wrap_delete_AcceleratorEntry, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"AcceleratorEntry_Set", (PyCFunction) _wrap_AcceleratorEntry_Set, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41632,6 +42280,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Window_PopupMenuXY", (PyCFunction) _wrap_Window_PopupMenuXY, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Window_PopupMenu", (PyCFunction) _wrap_Window_PopupMenu, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Window_GetHandle", (PyCFunction) _wrap_Window_GetHandle, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"Window_AssociateHandle", (PyCFunction) _wrap_Window_AssociateHandle, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"Window_DissociateHandle", (PyCFunction) _wrap_Window_DissociateHandle, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Window_OnPaint", (PyCFunction) _wrap_Window_OnPaint, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Window_HasScrollbar", (PyCFunction) _wrap_Window_HasScrollbar, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Window_SetScrollbar", (PyCFunction) _wrap_Window_SetScrollbar, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41853,6 +42503,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"SizerItem_SetRatioSize", (PyCFunction) _wrap_SizerItem_SetRatioSize, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"SizerItem_SetRatio", (PyCFunction) _wrap_SizerItem_SetRatio, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"SizerItem_GetRatio", (PyCFunction) _wrap_SizerItem_GetRatio, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"SizerItem_GetRect", (PyCFunction) _wrap_SizerItem_GetRect, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"SizerItem_IsWindow", (PyCFunction) _wrap_SizerItem_IsWindow, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"SizerItem_IsSizer", (PyCFunction) _wrap_SizerItem_IsSizer, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"SizerItem_IsSpacer", (PyCFunction) _wrap_SizerItem_IsSpacer, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41879,6 +42530,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Sizer_Prepend", (PyCFunction) _wrap_Sizer_Prepend, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Sizer_Remove", (PyCFunction) _wrap_Sizer_Remove, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Sizer_Detach", (PyCFunction) _wrap_Sizer_Detach, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"Sizer_GetItem", (PyCFunction) _wrap_Sizer_GetItem, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Sizer__SetItemMinSize", (PyCFunction) _wrap_Sizer__SetItemMinSize, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Sizer_AddItem", (PyCFunction) _wrap_Sizer_AddItem, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"Sizer_InsertItem", (PyCFunction) _wrap_Sizer_InsertItem, METH_VARARGS | METH_KEYWORDS, NULL },
@@ -41971,6 +42623,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"new_GridBagSizer", (PyCFunction) _wrap_new_GridBagSizer, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"GridBagSizer_Add", (PyCFunction) _wrap_GridBagSizer_Add, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"GridBagSizer_AddItem", (PyCFunction) _wrap_GridBagSizer_AddItem, METH_VARARGS | METH_KEYWORDS, NULL },
+        { (char *)"GridBagSizer_GetCellSize", (PyCFunction) _wrap_GridBagSizer_GetCellSize, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"GridBagSizer_GetEmptyCellSize", (PyCFunction) _wrap_GridBagSizer_GetEmptyCellSize, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"GridBagSizer_SetEmptyCellSize", (PyCFunction) _wrap_GridBagSizer_SetEmptyCellSize, METH_VARARGS | METH_KEYWORDS, NULL },
         { (char *)"GridBagSizer_GetItemPosition", _wrap_GridBagSizer_GetItemPosition, METH_VARARGS, NULL },
@@ -42519,6 +43172,7 @@ static swig_type_info _swigt__p_wxRealPoint[] = {{"_p_wxRealPoint", 0, "wxRealPo
 static swig_type_info _swigt__p_wxSizerItem[] = {{"_p_wxSizerItem", 0, "wxSizerItem *", 0, 0, 0, 0},{"_p_wxSizerItem", 0, 0, 0, 0, 0, 0},{"_p_wxGBSizerItem", _p_wxGBSizerItemTo_p_wxSizerItem, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxGBSizerItem[] = {{"_p_wxGBSizerItem", 0, "wxGBSizerItem *", 0, 0, 0, 0},{"_p_wxGBSizerItem", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxScrollEvent[] = {{"_p_wxScrollEvent", 0, "wxScrollEvent *", 0, 0, 0, 0},{"_p_wxScrollEvent", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxEventLoop[] = {{"_p_wxEventLoop", 0, "wxEventLoop *", 0, 0, 0, 0},{"_p_wxEventLoop", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxIndividualLayoutConstraint[] = {{"_p_wxIndividualLayoutConstraint", 0, "wxIndividualLayoutConstraint *", 0, 0, 0, 0},{"_p_wxIndividualLayoutConstraint", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxSizer[] = {{"_p_wxSizer", 0, "wxSizer *", 0, 0, 0, 0},{"_p_wxSizer", 0, 0, 0, 0, 0, 0},{"_p_wxBoxSizer", _p_wxBoxSizerTo_p_wxSizer, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxSizer, 0, 0, 0, 0, 0},{"_p_wxGridBagSizer", _p_wxGridBagSizerTo_p_wxSizer, 0, 0, 0, 0, 0},{"_p_wxGridSizer", _p_wxGridSizerTo_p_wxSizer, 0, 0, 0, 0, 0},{"_p_wxFlexGridSizer", _p_wxFlexGridSizerTo_p_wxSizer, 0, 0, 0, 0, 0},{"_p_wxPySizer", _p_wxPySizerTo_p_wxSizer, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxBoxSizer[] = {{"_p_wxBoxSizer", 0, "wxBoxSizer *", 0, 0, 0, 0},{"_p_wxBoxSizer", 0, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxBoxSizer, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
@@ -42637,6 +43291,7 @@ _swigt__p_wxRealPoint,
 _swigt__p_wxSizerItem, 
 _swigt__p_wxGBSizerItem, 
 _swigt__p_wxScrollEvent, 
+_swigt__p_wxEventLoop, 
 _swigt__p_wxIndividualLayoutConstraint, 
 _swigt__p_wxSizer, 
 _swigt__p_wxBoxSizer,