]> git.saurik.com Git - wxWidgets.git/commitdiff
wxPython 2.0b9, second phase (gtk)
authorRobin Dunn <robin@alldunn.com>
Sat, 1 May 1999 04:41:52 +0000 (04:41 +0000)
committerRobin Dunn <robin@alldunn.com>
Sat, 1 May 1999 04:41:52 +0000 (04:41 +0000)
Added gobs of stuff, see wxPython/README.txt for details

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

40 files changed:
utils/wxPython/.cvsignore
utils/wxPython/distrib/wxPython.rsp
utils/wxPython/lib/wxPlotCanvas.py
utils/wxPython/src/.cvsignore
utils/wxPython/src/Makefile.pre.in
utils/wxPython/src/Setup.in
utils/wxPython/src/glcanvas.i
utils/wxPython/src/gtk/.cvsignore [new file with mode: 0644]
utils/wxPython/src/gtk/cmndlgs.cpp
utils/wxPython/src/gtk/cmndlgs.py
utils/wxPython/src/gtk/controls.cpp
utils/wxPython/src/gtk/controls.py
utils/wxPython/src/gtk/controls2.cpp
utils/wxPython/src/gtk/controls2.py
utils/wxPython/src/gtk/events.cpp
utils/wxPython/src/gtk/events.py
utils/wxPython/src/gtk/frames.cpp
utils/wxPython/src/gtk/gdi.cpp
utils/wxPython/src/gtk/glcanvas.cpp [new file with mode: 0644]
utils/wxPython/src/gtk/glcanvas.py [new file with mode: 0644]
utils/wxPython/src/gtk/image.cpp [new file with mode: 0644]
utils/wxPython/src/gtk/image.py [new file with mode: 0644]
utils/wxPython/src/gtk/mdi.cpp
utils/wxPython/src/gtk/mdi.py
utils/wxPython/src/gtk/misc.cpp
utils/wxPython/src/gtk/misc.py
utils/wxPython/src/gtk/stattool.cpp
utils/wxPython/src/gtk/utils.cpp
utils/wxPython/src/gtk/utils.py
utils/wxPython/src/gtk/windows.cpp
utils/wxPython/src/gtk/windows.py
utils/wxPython/src/gtk/windows2.cpp
utils/wxPython/src/gtk/windows2.py
utils/wxPython/src/gtk/windows3.cpp
utils/wxPython/src/gtk/windows3.py
utils/wxPython/src/gtk/wx.cpp
utils/wxPython/src/gtk/wx.py
utils/wxPython/src/mdi.i
utils/wxPython/src/utils.i
utils/wxPython/tests/.cvsignore [new file with mode: 0644]

index 0c4536c4eaf3e845c43eeccef418118ed2dda9f8..d1d02e60fbaad29b9b48405889c31d7cdebfb349 100644 (file)
@@ -1,4 +1,6 @@
 *.zip
+*.pyc
+*.pyo
 .cvsignore
 .emacs.desktop
 __init__.py
index e452e6aa7747c94717189556bea75e8af0ccc53f..6656292fa7703cc2e047cb9f15afa19b6237033e 100644 (file)
@@ -3,7 +3,7 @@ wxPython\*.txt
 wxPython\demo\*.py
 wxPython\demo\bitmaps\*.bmp
 wxPython\demo\bitmaps\*.ico
-
+wxPython\demo\README.txt
 
 
 wxPython\src\*.i
index 58d522252b4c957b047dff69d5badb57a3077cd0..569473ef2259f177099656b2964fdfd94c130131 100644 (file)
@@ -36,8 +36,7 @@ information on downloading source or binaries.""",
     if d.ShowModal() == wx.wxID_CANCEL:
        d = wx.wxMessageDialog(wx.NULL, "I kid you not! Pressing Cancel won't help you!", "Not a joke", wx.wxOK)
        d.ShowModal()
-    import sys
-    sys.exit()
+    raise ImportError
 
 #
 # Plotting classes...
index 7cbf6f754f263352483068fd631216371752b769..58b63ff7584f8b6d39124b54d98ab3d57e81db2a 100644 (file)
@@ -2,9 +2,11 @@
 Makefile
 Makefile.pre
 Setup
+Setup.in.new
 Setup.save
 Setup.save
 config.c
+glcanvas.h
 glcanvasc.exp
 make.bat
 sedscript
index 670eeccd9efe42f199484c5f984620b7f02c3fa1..c68cfe7aabea3d5cab87dacbcc1ba2ef9527b952 100644 (file)
@@ -335,6 +335,7 @@ PYMODULES = $(GENCODEDIR)/wx.py        $(GENCODEDIR)/events.py    \
             $(GENCODEDIR)/windows2.py  $(GENCODEDIR)/cmndlgs.py   \
             $(GENCODEDIR)/frames.py    $(GENCODEDIR)/stattool.py   \
            $(GENCODEDIR)/utils.py     $(GENCODEDIR)/windows3.py  \
+           $(GENCODEDIR)/image.py     $(GENCODEDIR)/glcanvas.py  \
            __init__.py
 
 
@@ -350,12 +351,6 @@ $(GENCODEDIR)/%.py : %.i
 $(GENCODEDIR)/wx.cpp $(GENCODEDIR)/wx.py : wx.i my_typemaps.i _defs.i _extras.py
        swig $(SWIGFLAGS) -o $(GENCODEDIR)/wx.cpp wx.i
 
-ifdef SEPARATE
-$(GENCODEDIR)/utils.cpp $(GENCODEDIR)/utils.py : utils.i my_typemaps.i
-       swig $(SWIGFLAGS) -o $(GENCODEDIR)/utils.cpp utils.i
-else
-$(GENCODEDIR)/utils.cpp     $(GENCODEDIR)/utils.py     : utils.i      my_typemaps.i _defs.i
-endif
 
 # define some dependencies
 $(GENCODEDIR)/windows.cpp   $(GENCODEDIR)/windows.py   : windows.i    my_typemaps.i _defs.i
@@ -370,11 +365,17 @@ $(GENCODEDIR)/controls2.cpp $(GENCODEDIR)/controls2.py : controls2.i  my_typemap
 $(GENCODEDIR)/cmndlgs.cpp   $(GENCODEDIR)/cmndlgs.py   : cmndlgs.i    my_typemaps.i _defs.i
 $(GENCODEDIR)/frames.cpp    $(GENCODEDIR)/frames.py    : frames.i     my_typemaps.i _defs.i
 $(GENCODEDIR)/stattool.cpp  $(GENCODEDIR)/stattool.py  : stattool.i   my_typemaps.i _defs.i
+$(GENCODEDIR)/image.cpp     $(GENCODEDIR)/image.py     : image.i      my_typemaps.i _defs.i
 $(GENCODEDIR)/utils.cpp     $(GENCODEDIR)/utils.py     : utils.i      my_typemaps.i _defs.i
+$(GENCODEDIR)/glcanvas.cpp  $(GENCODEDIR)/glcanvas.py  : glcanvas.i   my_typemaps.i _defs.i
 
 $(GENCODEDIR)/helpers.cpp:
        ln -s `pwd`/helpers.cpp $@
 
+$(GENCODEDIR)/_glcanvas.cpp:
+       -cp $(WXWIN)/utils/glcanvas/$(GENCODEDIR)/glcanvas.cpp $@
+       -cp $(WXWIN)/utils/glcanvas/$(GENCODEDIR)/glcanvas.h ./glcanvas.h
+
 
 wxInstall :    sharedmods $(PYMODULES)
        if test ! -d $(TARGETDIR) ; then \
index e45d828601c7458b8ea7e65e7c6ad58b63eb932b..aa35542577138f15a7e948e2ae82e386012e9c5e 100644 (file)
@@ -7,6 +7,7 @@
 *shared*
 
 CCC=c++
+WXWIN=../../..
 GENCODEDIR=gtk
 srcdir=$(GENCODEDIR)
 WX_CONFIG_CFLAGS=`wx-config --cflags`
@@ -27,21 +28,19 @@ MY_LINKCC=$(CCC)
 
 
 ## Pick one of these, or set your own.  This is where the wxPython module
-## should be installed.  It should be a  subdirectory named wxPython.
+## should be installed.  It should be a subdirectory named wxPython.
 TARGETDIR=..
 #TARGETDIR=$(BINLIBDEST)/site-packages/wxPython
 #TARGETDIR=$(BINLIBDEST)/wxPython
 
-SEPARATE=-DSEPARATE
-
-utilsc  utils.cpp \
-       -I. $(WX_CONFIG_CFLAGS) \
-       -DSWIG_GLOBAL -DWXP_WITH_THREAD $(SEPARATE) -Xlinker $(WX_CONFIG_LIBS)
 
 wxc    wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
        mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
-       frames.cpp stattool.cpp windows3.cpp \
+       frames.cpp stattool.cpp windows3.cpp image.cpp \
+       utils.cpp \
+       ## comment out the next line to disable wxGLCanvas
+       _glcanvas.cpp glcanvas.cpp -DWITH_GLCANVAS -lGL -lGLU \
        -I. $(WX_CONFIG_CFLAGS) -I/usr/local/lib/glib/include \
        -DSWIG_GLOBAL -DWXP_WITH_THREAD $(SEPARATE) -Xlinker $(WX_CONFIG_LIBS)
 
-
+##-Xlinker -Bstatic
index d032165800b31780c9cb08de88689e2dff6eab6b..6d112b1e1569cf2bb1ff547725c1180627942bd8 100644 (file)
@@ -123,16 +123,23 @@ void glNormalPointerEXT(GLenum type, GLsizei stride, GLsizei count, const GLvoid
 void glTexCoordPointerEXT(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 void glVertexPointerEXT(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 
+#ifndef __WXGTK__
 /* EXT_color_subtable */
 void glColorSubtableEXT(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *table);
+#endif
 
 /* EXT_color_table */
 void glColorTableEXT(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+#ifndef __WXGTK__
 void glCopyColorTableEXT(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+#endif
 void glGetColorTableEXT(GLenum target, GLenum format, GLenum type, GLvoid *table);
+#ifndef __WXGTK__
 void glGetColorTableParamaterfvEXT(GLenum target, GLenum pname, GLfloat *params);
 void glGetColorTavleParameterivEXT(GLenum target, GLenum pname, GLint *params);
+#endif
 
+#ifndef __WXGTK__
 /* SGI_compiled_vertex_array */
 void glLockArraysSGI(GLint first, GLsizei count);
 void glUnlockArraysSGI();
@@ -149,7 +156,7 @@ void glIndexMaterialSGI(GLenum face, GLenum mode);
 
 /* WIN_swap_hint */
 void glAddSwapHintRectWin(GLint x, GLint y, GLsizei width, GLsizei height);
-
+#endif
 
 //----------------------------------------------------------------------
 // From GL.H
@@ -199,8 +206,10 @@ enum {
     GL_BACK,
     GL_BACK_LEFT,
     GL_BACK_RIGHT,
+#ifndef __WXGTK__
     GL_BGRA_EXT,
     GL_BGR_EXT,
+#endif
     GL_BITMAP,
     GL_BITMAP_TOKEN,
     GL_BLEND,
@@ -303,7 +312,9 @@ enum {
     GL_DONT_CARE,
     GL_DOUBLE,
     GL_DOUBLEBUFFER,
+#ifndef __WXGTK__
     GL_DOUBLE_EXT,
+#endif
     GL_DRAW_BUFFER,
     GL_DRAW_PIXEL_TOKEN,
     GL_DST_ALPHA,
@@ -324,7 +335,9 @@ enum {
     GL_EXP,
     GL_EXP2,
     GL_EXTENSIONS,
+#ifndef __WXGTK__
     GL_EXT_bgra,
+#endif
     GL_EXT_paletted_texture,
     GL_EXT_vertex_array,
     GL_EYE_LINEAR,
@@ -346,7 +359,6 @@ enum {
     GL_FOG_HINT,
     GL_FOG_INDEX,
     GL_FOG_MODE,
-    GL_FOG_SPECULAR_TEXTURE_WIN,
     GL_FOG_START,
     GL_FRONT,
     GL_FRONT_AND_BACK,
@@ -470,8 +482,6 @@ enum {
     GL_MAX_ATTRIB_STACK_DEPTH,
     GL_MAX_CLIENT_ATTRIB_STACK_DEPTH,
     GL_MAX_CLIP_PLANES,
-    GL_MAX_ELEMENTS_INDICES_WIN,
-    GL_MAX_ELEMENTS_VERTICES_WIN,
     GL_MAX_EVAL_ORDER,
     GL_MAX_LIGHTS,
     GL_MAX_LIST_NESTING,
@@ -530,8 +540,6 @@ enum {
     GL_PACK_SWAP_BYTES,
     GL_PASS_THROUGH_TOKEN,
     GL_PERSPECTIVE_CORRECTION_HINT,
-    GL_PHONG_HINT_WIN,
-    GL_PHONG_WIN,
     GL_PIXEL_MAP_A_TO_A,
     GL_PIXEL_MAP_A_TO_A_SIZE,
     GL_PIXEL_MAP_B_TO_B,
@@ -736,8 +744,6 @@ enum {
     GL_VERTEX_ARRAY_TYPE_EXT,
     GL_VIEWPORT,
     GL_VIEWPORT_BIT,
-    GL_WIN_draw_range_elements,
-    GL_WIN_swap_hint,
     GL_XOR,
     GL_ZERO,
     GL_ZOOM_X,
@@ -1086,7 +1092,12 @@ void glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.2  1999/05/01 04:40:57  RD
+// wxPython 2.0b9, second phase (gtk)
+// Added gobs of stuff, see wxPython/README.txt for details
+//
 // Revision 1.1  1999/04/30 03:29:18  RD
+//
 // wxPython 2.0b9, first phase (win32)
 // Added gobs of stuff, see wxPython/README.txt for details
 //
diff --git a/utils/wxPython/src/gtk/.cvsignore b/utils/wxPython/src/gtk/.cvsignore
new file mode 100644 (file)
index 0000000..3112d91
--- /dev/null
@@ -0,0 +1 @@
+_glcanvas.cpp
index a31c21456deb2bfeb87073ba381fe3ee36cfc48e..8f52607768d2a456b7ca023a2e25057df8866f7b 100644 (file)
@@ -127,8 +127,12 @@ static PyObject *_wrap_new_wxColourData(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxColourData")) 
         return NULL;
-    _result = (wxColourData *)new_wxColourData();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColourData_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxColourData *)new_wxColourData();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColourData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -148,8 +152,12 @@ static PyObject *_wrap_delete_wxColourData(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxColourData(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxColourData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -170,8 +178,12 @@ static PyObject *_wrap_wxColourData_GetChooseFull(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxColourData_GetChooseFull(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxColourData_GetChooseFull(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -192,9 +204,13 @@ static PyObject *_wrap_wxColourData_GetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour & _result_ref = wxColourData_GetColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxColourData_GetColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -217,8 +233,12 @@ static PyObject *_wrap_wxColourData_GetCustomColour(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = new wxColour (wxColourData_GetCustomColour(_arg0,_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxColour_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxColour (wxColourData_GetCustomColour(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -239,8 +259,12 @@ static PyObject *_wrap_wxColourData_SetChooseFull(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxColourData_SetChooseFull(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColourData_SetChooseFull(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -268,8 +292,12 @@ static PyObject *_wrap_wxColourData_SetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColourData_SetColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColourData_SetColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -298,8 +326,12 @@ static PyObject *_wrap_wxColourData_SetCustomColour(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxColourData_SetCustomColour(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColourData_SetCustomColour(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -361,8 +393,12 @@ static PyObject *_wrap_new_wxColourDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxColourDialog *)new_wxColourDialog(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColourDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxColourDialog *)new_wxColourDialog(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColourDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -384,9 +420,13 @@ static PyObject *_wrap_wxColourDialog_GetColourData(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxColourData & _result_ref = wxColourDialog_GetColourData(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColourData & _result_ref = wxColourDialog_GetColourData(_arg0);
     _result = (wxColourData *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColourData_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColourData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -407,8 +447,12 @@ static PyObject *_wrap_wxColourDialog_ShowModal(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxColourDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxColourDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -472,8 +516,12 @@ static PyObject *_wrap_new_wxDirDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxDirDialog *)new_wxDirDialog(_arg0,_arg1,_arg2,_arg3,*_arg4);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDirDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxDirDialog *)new_wxDirDialog(_arg0,_arg1,_arg2,_arg3,*_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDirDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -494,8 +542,12 @@ static PyObject *_wrap_wxDirDialog_GetPath(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxDirDialog_GetPath(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxDirDialog_GetPath(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -520,8 +572,12 @@ static PyObject *_wrap_wxDirDialog_GetMessage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxDirDialog_GetMessage(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxDirDialog_GetMessage(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -546,8 +602,12 @@ static PyObject *_wrap_wxDirDialog_GetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDirDialog_GetStyle(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDirDialog_GetStyle(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -573,10 +633,14 @@ static PyObject *_wrap_wxDirDialog_SetMessage(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxDirDialog_SetMessage(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDirDialog_SetMessage(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -607,10 +671,14 @@ static PyObject *_wrap_wxDirDialog_SetPath(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxDirDialog_SetPath(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDirDialog_SetPath(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -635,8 +703,12 @@ static PyObject *_wrap_wxDirDialog_ShowModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxDirDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDirDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -702,8 +774,12 @@ static PyObject *_wrap_new_wxFileDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxFileDialog *)new_wxFileDialog(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,*_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFileDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxFileDialog *)new_wxFileDialog(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,*_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFileDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -724,8 +800,12 @@ static PyObject *_wrap_wxFileDialog_GetDirectory(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxString (wxFileDialog_GetDirectory(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFileDialog_GetDirectory(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -750,8 +830,12 @@ static PyObject *_wrap_wxFileDialog_GetFilename(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxString (wxFileDialog_GetFilename(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFileDialog_GetFilename(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -776,8 +860,12 @@ static PyObject *_wrap_wxFileDialog_GetFilterIndex(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxFileDialog_GetFilterIndex(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFileDialog_GetFilterIndex(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -797,8 +885,12 @@ static PyObject *_wrap_wxFileDialog_GetMessage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxFileDialog_GetMessage(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFileDialog_GetMessage(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -823,8 +915,12 @@ static PyObject *_wrap_wxFileDialog_GetPath(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxFileDialog_GetPath(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFileDialog_GetPath(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -849,8 +945,12 @@ static PyObject *_wrap_wxFileDialog_GetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxFileDialog_GetStyle(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxFileDialog_GetStyle(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -870,8 +970,12 @@ static PyObject *_wrap_wxFileDialog_GetWildcard(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxString (wxFileDialog_GetWildcard(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFileDialog_GetWildcard(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -902,10 +1006,14 @@ static PyObject *_wrap_wxFileDialog_SetDirectory(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFileDialog_SetDirectory(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetDirectory(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -936,10 +1044,14 @@ static PyObject *_wrap_wxFileDialog_SetFilename(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFileDialog_SetFilename(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetFilename(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -964,8 +1076,12 @@ static PyObject *_wrap_wxFileDialog_SetFilterIndex(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxFileDialog_SetFilterIndex(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetFilterIndex(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -992,10 +1108,14 @@ static PyObject *_wrap_wxFileDialog_SetMessage(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFileDialog_SetMessage(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetMessage(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1026,10 +1146,14 @@ static PyObject *_wrap_wxFileDialog_SetPath(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFileDialog_SetPath(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetPath(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1054,8 +1178,12 @@ static PyObject *_wrap_wxFileDialog_SetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFileDialog_SetStyle(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetStyle(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1082,10 +1210,14 @@ static PyObject *_wrap_wxFileDialog_SetWildcard(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFileDialog_SetWildcard(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFileDialog_SetWildcard(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1110,8 +1242,12 @@ static PyObject *_wrap_wxFileDialog_ShowModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxFileDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFileDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1183,14 +1319,14 @@ static PyObject *_wrap_new_wxSingleChoiceDialog(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
 {
     if (!PyString_Check(_obj2)) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_obj4)
 {
@@ -1206,10 +1342,19 @@ static PyObject *_wrap_new_wxSingleChoiceDialog(PyObject *self, PyObject *args)
         }
     }
 {
-    _arg3 = PyList_Size(_obj4);
+    if (_obj4) {
+        _arg3 = PyList_Size(_obj4);
+    }
+    else {
+        _arg3 = 0;
+    }
 }
-    _result = (wxSingleChoiceDialog *)new_wxSingleChoiceDialog(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSingleChoiceDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSingleChoiceDialog *)new_wxSingleChoiceDialog(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSingleChoiceDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj1)
@@ -1241,8 +1386,12 @@ static PyObject *_wrap_wxSingleChoiceDialog_GetSelection(PyObject *self, PyObjec
         return NULL;
         }
     }
-    _result = (int )wxSingleChoiceDialog_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSingleChoiceDialog_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1262,8 +1411,12 @@ static PyObject *_wrap_wxSingleChoiceDialog_GetStringSelection(PyObject *self, P
         return NULL;
         }
     }
-    _result = new wxString (wxSingleChoiceDialog_GetStringSelection(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxSingleChoiceDialog_GetStringSelection(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1288,8 +1441,12 @@ static PyObject *_wrap_wxSingleChoiceDialog_SetSelection(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxSingleChoiceDialog_SetSelection(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSingleChoiceDialog_SetSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1310,8 +1467,12 @@ static PyObject *_wrap_wxSingleChoiceDialog_ShowModal(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (int )wxSingleChoiceDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSingleChoiceDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1376,8 +1537,12 @@ static PyObject *_wrap_new_wxTextEntryDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxTextEntryDialog *)new_wxTextEntryDialog(_arg0,_arg1,_arg2,_arg3,_arg4,*_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextEntryDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTextEntryDialog *)new_wxTextEntryDialog(_arg0,_arg1,_arg2,_arg3,_arg4,*_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextEntryDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1398,8 +1563,12 @@ static PyObject *_wrap_wxTextEntryDialog_GetValue(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = new wxString (wxTextEntryDialog_GetValue(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxTextEntryDialog_GetValue(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1430,10 +1599,14 @@ static PyObject *_wrap_wxTextEntryDialog_SetValue(PyObject *self, PyObject *args
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxTextEntryDialog_SetValue(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextEntryDialog_SetValue(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1458,8 +1631,12 @@ static PyObject *_wrap_wxTextEntryDialog_ShowModal(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxTextEntryDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxTextEntryDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1472,8 +1649,12 @@ static PyObject *_wrap_new_wxFontData(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxFontData")) 
         return NULL;
-    _result = (wxFontData *)new_wxFontData();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFontData_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxFontData *)new_wxFontData();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFontData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1493,8 +1674,12 @@ static PyObject *_wrap_delete_wxFontData(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxFontData(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxFontData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1517,8 +1702,12 @@ static PyObject *_wrap_wxFontData_EnableEffects(PyObject *self, PyObject *args)
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxFontData_EnableEffects(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_EnableEffects(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1539,8 +1728,12 @@ static PyObject *_wrap_wxFontData_GetAllowSymbols(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxFontData_GetAllowSymbols(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxFontData_GetAllowSymbols(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1561,9 +1754,13 @@ static PyObject *_wrap_wxFontData_GetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour & _result_ref = wxFontData_GetColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxFontData_GetColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1585,8 +1782,12 @@ static PyObject *_wrap_wxFontData_GetChosenFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxFont (wxFontData_GetChosenFont(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxFont (wxFontData_GetChosenFont(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1607,8 +1808,12 @@ static PyObject *_wrap_wxFontData_GetEnableEffects(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxFontData_GetEnableEffects(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxFontData_GetEnableEffects(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1629,8 +1834,12 @@ static PyObject *_wrap_wxFontData_GetInitialFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxFont (wxFontData_GetInitialFont(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxFont (wxFontData_GetInitialFont(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1651,8 +1860,12 @@ static PyObject *_wrap_wxFontData_GetShowHelp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxFontData_GetShowHelp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxFontData_GetShowHelp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1674,8 +1887,12 @@ static PyObject *_wrap_wxFontData_SetAllowSymbols(PyObject *self, PyObject *args
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxFontData_SetAllowSymbols(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_SetAllowSymbols(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1703,8 +1920,12 @@ static PyObject *_wrap_wxFontData_SetChosenFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxFontData_SetChosenFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_SetChosenFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1732,8 +1953,12 @@ static PyObject *_wrap_wxFontData_SetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFontData_SetColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_SetColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1761,8 +1986,12 @@ static PyObject *_wrap_wxFontData_SetInitialFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxFontData_SetInitialFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_SetInitialFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1784,8 +2013,12 @@ static PyObject *_wrap_wxFontData_SetRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFontData_SetRange(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_SetRange(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1808,8 +2041,12 @@ static PyObject *_wrap_wxFontData_SetShowHelp(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxFontData_SetShowHelp(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData_SetShowHelp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1871,8 +2108,12 @@ static PyObject *_wrap_new_wxFontDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxFontDialog *)new_wxFontDialog(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFontDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxFontDialog *)new_wxFontDialog(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFontDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1894,9 +2135,13 @@ static PyObject *_wrap_wxFontDialog_GetFontData(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxFontData & _result_ref = wxFontDialog_GetFontData(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFontData & _result_ref = wxFontDialog_GetFontData(_arg0);
     _result = (wxFontData *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFontData_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFontData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1917,661 +2162,845 @@ static PyObject *_wrap_wxFontDialog_ShowModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxFontDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFontDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define new_wxPageSetupData() (new wxPageSetupData())
-static PyObject *_wrap_new_wxPageSetupData(PyObject *self, PyObject *args) {
+#define new_wxPageSetupDialogData() (new wxPageSetupDialogData())
+static PyObject *_wrap_new_wxPageSetupDialogData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _result;
+    wxPageSetupDialogData * _result;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,":new_wxPageSetupData")) 
+    if(!PyArg_ParseTuple(args,":new_wxPageSetupDialogData")) 
         return NULL;
-    _result = (wxPageSetupData *)new_wxPageSetupData();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPageSetupData_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPageSetupDialogData *)new_wxPageSetupDialogData();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPageSetupDialogData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define delete_wxPageSetupData(_swigobj) (delete _swigobj)
-static PyObject *_wrap_delete_wxPageSetupData(PyObject *self, PyObject *args) {
+#define delete_wxPageSetupDialogData(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxPageSetupDialogData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:delete_wxPageSetupData",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:delete_wxPageSetupDialogData",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxPageSetupData. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxPageSetupDialogData. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    delete_wxPageSetupData(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPageSetupDialogData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_EnableHelp(_swigobj,_swigarg0)  (_swigobj->EnableHelp(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_EnableHelp(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_EnableHelp(_swigobj,_swigarg0)  (_swigobj->EnableHelp(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_EnableHelp(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_EnableHelp",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_EnableHelp",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_EnableHelp. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_EnableHelp. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPageSetupData_EnableHelp(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_EnableHelp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_EnableMargins(_swigobj,_swigarg0)  (_swigobj->EnableMargins(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_EnableMargins(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_EnableMargins(_swigobj,_swigarg0)  (_swigobj->EnableMargins(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_EnableMargins(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_EnableMargins",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_EnableMargins",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_EnableMargins. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_EnableMargins. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPageSetupData_EnableMargins(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_EnableMargins(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_EnableOrientation(_swigobj,_swigarg0)  (_swigobj->EnableOrientation(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_EnableOrientation(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_EnableOrientation(_swigobj,_swigarg0)  (_swigobj->EnableOrientation(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_EnableOrientation(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_EnableOrientation",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_EnableOrientation",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_EnableOrientation. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_EnableOrientation. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPageSetupData_EnableOrientation(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_EnableOrientation(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_EnablePaper(_swigobj,_swigarg0)  (_swigobj->EnablePaper(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_EnablePaper(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_EnablePaper(_swigobj,_swigarg0)  (_swigobj->EnablePaper(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_EnablePaper(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_EnablePaper",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_EnablePaper",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_EnablePaper. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_EnablePaper. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPageSetupData_EnablePaper(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_EnablePaper(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_EnablePrinter(_swigobj,_swigarg0)  (_swigobj->EnablePrinter(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_EnablePrinter(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_EnablePrinter(_swigobj,_swigarg0)  (_swigobj->EnablePrinter(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_EnablePrinter(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_EnablePrinter",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_EnablePrinter",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_EnablePrinter. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_EnablePrinter. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPageSetupData_EnablePrinter(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_EnablePrinter(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_GetPaperSize(_swigobj)  (_swigobj->GetPaperSize())
-static PyObject *_wrap_wxPageSetupData_GetPaperSize(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetDefaultMinMargins(_swigobj)  (_swigobj->GetDefaultMinMargins())
+static PyObject *_wrap_wxPageSetupDialogData_GetDefaultMinMargins(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPoint * _result;
-    wxPageSetupData * _arg0;
+    bool  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
-    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetPaperSize",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetDefaultMinMargins",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetPaperSize. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetDefaultMinMargins. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxPageSetupData_GetPaperSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetDefaultMinMargins(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetMarginTopLeft(_swigobj)  (_swigobj->GetMarginTopLeft())
-static PyObject *_wrap_wxPageSetupData_GetMarginTopLeft(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetEnableMargins(_swigobj)  (_swigobj->GetEnableMargins())
+static PyObject *_wrap_wxPageSetupDialogData_GetEnableMargins(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPoint * _result;
-    wxPageSetupData * _arg0;
+    bool  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
-    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetMarginTopLeft",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetEnableMargins",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetMarginTopLeft. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetEnableMargins. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxPageSetupData_GetMarginTopLeft(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetEnableMargins(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetMarginBottomRight(_swigobj)  (_swigobj->GetMarginBottomRight())
-static PyObject *_wrap_wxPageSetupData_GetMarginBottomRight(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetEnableOrientation(_swigobj)  (_swigobj->GetEnableOrientation())
+static PyObject *_wrap_wxPageSetupDialogData_GetEnableOrientation(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPoint * _result;
-    wxPageSetupData * _arg0;
+    bool  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
-    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetMarginBottomRight",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetEnableOrientation",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetMarginBottomRight. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetEnableOrientation. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxPageSetupData_GetMarginBottomRight(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetEnableOrientation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetMinMarginTopLeft(_swigobj)  (_swigobj->GetMinMarginTopLeft())
-static PyObject *_wrap_wxPageSetupData_GetMinMarginTopLeft(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetEnablePaper(_swigobj)  (_swigobj->GetEnablePaper())
+static PyObject *_wrap_wxPageSetupDialogData_GetEnablePaper(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPoint * _result;
-    wxPageSetupData * _arg0;
+    bool  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
-    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetMinMarginTopLeft",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetEnablePaper",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetMinMarginTopLeft. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetEnablePaper. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxPageSetupData_GetMinMarginTopLeft(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetEnablePaper(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetMinMarginBottomRight(_swigobj)  (_swigobj->GetMinMarginBottomRight())
-static PyObject *_wrap_wxPageSetupData_GetMinMarginBottomRight(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetEnablePrinter(_swigobj)  (_swigobj->GetEnablePrinter())
+static PyObject *_wrap_wxPageSetupDialogData_GetEnablePrinter(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPoint * _result;
-    wxPageSetupData * _arg0;
+    bool  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
-    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetMinMarginBottomRight",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetEnablePrinter",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetMinMarginBottomRight. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetEnablePrinter. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxPageSetupData_GetMinMarginBottomRight(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetEnablePrinter(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetOrientation(_swigobj)  (_swigobj->GetOrientation())
-static PyObject *_wrap_wxPageSetupData_GetOrientation(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetEnableHelp(_swigobj)  (_swigobj->GetEnableHelp())
+static PyObject *_wrap_wxPageSetupDialogData_GetEnableHelp(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    int  _result;
-    wxPageSetupData * _arg0;
+    bool  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetOrientation",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetEnableHelp",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetOrientation. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetEnableHelp. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPageSetupData_GetOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetEnableHelp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetDefaultMinMargins(_swigobj)  (_swigobj->GetDefaultMinMargins())
-static PyObject *_wrap_wxPageSetupData_GetDefaultMinMargins(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetDefaultInfo(_swigobj)  (_swigobj->GetDefaultInfo())
+static PyObject *_wrap_wxPageSetupDialogData_GetDefaultInfo(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     bool  _result;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetDefaultMinMargins",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetDefaultInfo",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetDefaultMinMargins. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetDefaultInfo. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetDefaultMinMargins(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPageSetupDialogData_GetDefaultInfo(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetEnableMargins(_swigobj)  (_swigobj->GetEnableMargins())
-static PyObject *_wrap_wxPageSetupData_GetEnableMargins(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetMarginTopLeft(_swigobj)  (_swigobj->GetMarginTopLeft())
+static PyObject *_wrap_wxPageSetupDialogData_GetMarginTopLeft(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    bool  _result;
-    wxPageSetupData * _arg0;
+    wxPoint * _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
+    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetEnableMargins",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetMarginTopLeft",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetEnableMargins. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetMarginTopLeft. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetEnableMargins(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxPageSetupDialogData_GetMarginTopLeft(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetEnableOrientation(_swigobj)  (_swigobj->GetEnableOrientation())
-static PyObject *_wrap_wxPageSetupData_GetEnableOrientation(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetMarginBottomRight(_swigobj)  (_swigobj->GetMarginBottomRight())
+static PyObject *_wrap_wxPageSetupDialogData_GetMarginBottomRight(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    bool  _result;
-    wxPageSetupData * _arg0;
+    wxPoint * _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
+    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetEnableOrientation",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetMarginBottomRight",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetEnableOrientation. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetMarginBottomRight. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetEnableOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxPageSetupDialogData_GetMarginBottomRight(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetEnablePaper(_swigobj)  (_swigobj->GetEnablePaper())
-static PyObject *_wrap_wxPageSetupData_GetEnablePaper(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetMinMarginTopLeft(_swigobj)  (_swigobj->GetMinMarginTopLeft())
+static PyObject *_wrap_wxPageSetupDialogData_GetMinMarginTopLeft(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    bool  _result;
-    wxPageSetupData * _arg0;
+    wxPoint * _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
+    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetEnablePaper",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetMinMarginTopLeft",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetEnablePaper. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetMinMarginTopLeft. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetEnablePaper(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxPageSetupDialogData_GetMinMarginTopLeft(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetEnablePrinter(_swigobj)  (_swigobj->GetEnablePrinter())
-static PyObject *_wrap_wxPageSetupData_GetEnablePrinter(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetMinMarginBottomRight(_swigobj)  (_swigobj->GetMinMarginBottomRight())
+static PyObject *_wrap_wxPageSetupDialogData_GetMinMarginBottomRight(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    bool  _result;
-    wxPageSetupData * _arg0;
+    wxPoint * _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
+    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetEnablePrinter",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetMinMarginBottomRight",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetEnablePrinter. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetMinMarginBottomRight. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetEnablePrinter(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxPageSetupDialogData_GetMinMarginBottomRight(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetEnableHelp(_swigobj)  (_swigobj->GetEnableHelp())
-static PyObject *_wrap_wxPageSetupData_GetEnableHelp(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetPaperId(_swigobj)  (_swigobj->GetPaperId())
+static PyObject *_wrap_wxPageSetupDialogData_GetPaperId(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    bool  _result;
-    wxPageSetupData * _arg0;
+    wxPaperSize  _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetEnableHelp",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetPaperId",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetEnableHelp. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetPaperId. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetEnableHelp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPaperSize )wxPageSetupDialogData_GetPaperId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPageSetupData_GetDefaultInfo(_swigobj)  (_swigobj->GetDefaultInfo())
-static PyObject *_wrap_wxPageSetupData_GetDefaultInfo(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetPaperSize(_swigobj)  (_swigobj->GetPaperSize())
+static PyObject *_wrap_wxPageSetupDialogData_GetPaperSize(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    bool  _result;
-    wxPageSetupData * _arg0;
+    wxSize * _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
+    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPageSetupData_GetDefaultInfo",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetPaperSize",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_GetDefaultInfo. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetPaperSize. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPageSetupData_GetDefaultInfo(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxPageSetupDialogData_GetPaperSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define wxPageSetupData_SetPaperSize(_swigobj,_swigarg0)  (_swigobj->SetPaperSize(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetPaperSize(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_GetPrintData(_swigobj)  (_swigobj->GetPrintData())
+static PyObject *_wrap_wxPageSetupDialogData_GetPrintData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
-    wxPoint * _arg1;
+    wxPrintData * _result;
+    wxPageSetupDialogData * _arg0;
     char * _argc0 = 0;
-    char * _argc1 = 0;
+    char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxPageSetupData_SetPaperSize",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"s:wxPageSetupDialogData_GetPrintData",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetPaperSize. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_GetPrintData. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupData_SetPaperSize. Expected _wxPoint_p.");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintData & _result_ref = wxPageSetupDialogData_GetPrintData(_arg0);
+    _result = (wxPrintData *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintData_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxPageSetupDialogData_SetDefaultInfo(_swigobj,_swigarg0)  (_swigobj->SetDefaultInfo(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetDefaultInfo(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPageSetupDialogData * _arg0;
+    bool  _arg1;
+    char * _argc0 = 0;
+    int tempbool1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_SetDefaultInfo",&_argc0,&tempbool1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetDefaultInfo. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    wxPageSetupData_SetPaperSize(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetDefaultInfo(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetMarginTopLeft(_swigobj,_swigarg0)  (_swigobj->SetMarginTopLeft(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetMarginTopLeft(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetDefaultMinMargins(_swigobj,_swigarg0)  (_swigobj->SetDefaultMinMargins(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetDefaultMinMargins(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
+    bool  _arg1;
+    char * _argc0 = 0;
+    int tempbool1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxPageSetupDialogData_SetDefaultMinMargins",&_argc0,&tempbool1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetDefaultMinMargins. Expected _wxPageSetupDialogData_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetDefaultMinMargins(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPageSetupDialogData_SetMarginTopLeft(_swigobj,_swigarg0)  (_swigobj->SetMarginTopLeft(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetMarginTopLeft(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPageSetupDialogData * _arg0;
     wxPoint * _arg1;
     char * _argc0 = 0;
     char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxPageSetupData_SetMarginTopLeft",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetMarginTopLeft",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetMarginTopLeft. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetMarginTopLeft. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupData_SetMarginTopLeft. Expected _wxPoint_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetMarginTopLeft. Expected _wxPoint_p.");
         return NULL;
         }
     }
-    wxPageSetupData_SetMarginTopLeft(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetMarginTopLeft(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetMarginBottomRight(_swigobj,_swigarg0)  (_swigobj->SetMarginBottomRight(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetMarginBottomRight(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetMarginBottomRight(_swigobj,_swigarg0)  (_swigobj->SetMarginBottomRight(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetMarginBottomRight(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     wxPoint * _arg1;
     char * _argc0 = 0;
     char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxPageSetupData_SetMarginBottomRight",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetMarginBottomRight",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetMarginBottomRight. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetMarginBottomRight. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupData_SetMarginBottomRight. Expected _wxPoint_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetMarginBottomRight. Expected _wxPoint_p.");
         return NULL;
         }
     }
-    wxPageSetupData_SetMarginBottomRight(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetMarginBottomRight(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetMinMarginTopLeft(_swigobj,_swigarg0)  (_swigobj->SetMinMarginTopLeft(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetMinMarginTopLeft(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetMinMarginTopLeft(_swigobj,_swigarg0)  (_swigobj->SetMinMarginTopLeft(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetMinMarginTopLeft(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     wxPoint * _arg1;
     char * _argc0 = 0;
     char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxPageSetupData_SetMinMarginTopLeft",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetMinMarginTopLeft",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetMinMarginTopLeft. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetMinMarginTopLeft. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupData_SetMinMarginTopLeft. Expected _wxPoint_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetMinMarginTopLeft. Expected _wxPoint_p.");
         return NULL;
         }
     }
-    wxPageSetupData_SetMinMarginTopLeft(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetMinMarginTopLeft(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetMinMarginBottomRight(_swigobj,_swigarg0)  (_swigobj->SetMinMarginBottomRight(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetMinMarginBottomRight(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetMinMarginBottomRight(_swigobj,_swigarg0)  (_swigobj->SetMinMarginBottomRight(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetMinMarginBottomRight(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
+    wxPageSetupDialogData * _arg0;
     wxPoint * _arg1;
     char * _argc0 = 0;
     char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxPageSetupData_SetMinMarginBottomRight",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetMinMarginBottomRight",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetMinMarginBottomRight. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetMinMarginBottomRight. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupData_SetMinMarginBottomRight. Expected _wxPoint_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetMinMarginBottomRight. Expected _wxPoint_p.");
         return NULL;
         }
     }
-    wxPageSetupData_SetMinMarginBottomRight(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetMinMarginBottomRight(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetOrientation(_swigobj,_swigarg0)  (_swigobj->SetOrientation(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetOrientation(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetPaperId(_swigobj,_swigarg0)  (_swigobj->SetPaperId(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetPaperId(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
-    int  _arg1;
+    wxPageSetupDialogData * _arg0;
+    wxPaperSize * _arg1;
     char * _argc0 = 0;
+    char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_SetOrientation",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetPaperId",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetOrientation. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetPaperId. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    wxPageSetupData_SetOrientation(_arg0,_arg1);
-    Py_INCREF(Py_None);
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPaperSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetPaperId. Expected _wxPaperSize_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetPaperId(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetDefaultMinMargins(_swigobj,_swigarg0)  (_swigobj->SetDefaultMinMargins(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetDefaultMinMargins(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetPaperSize(_swigobj,_swigarg0)  (_swigobj->SetPaperSize(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetPaperSize(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
-    bool  _arg1;
+    wxPageSetupDialogData * _arg0;
+    wxSize * _arg1;
     char * _argc0 = 0;
-    int tempbool1;
+    char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_SetDefaultMinMargins",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetPaperSize",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetDefaultMinMargins. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetPaperSize. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _arg1 = (bool ) tempbool1;
-    wxPageSetupData_SetDefaultMinMargins(_arg0,_arg1);
-    Py_INCREF(Py_None);
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetPaperSize. Expected _wxSize_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetPaperSize(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPageSetupData_SetDefaultInfo(_swigobj,_swigarg0)  (_swigobj->SetDefaultInfo(_swigarg0))
-static PyObject *_wrap_wxPageSetupData_SetDefaultInfo(PyObject *self, PyObject *args) {
+#define wxPageSetupDialogData_SetPrintData(_swigobj,_swigarg0)  (_swigobj->SetPrintData(_swigarg0))
+static PyObject *_wrap_wxPageSetupDialogData_SetPrintData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _arg0;
-    bool  _arg1;
+    wxPageSetupDialogData * _arg0;
+    wxPrintData * _arg1;
     char * _argc0 = 0;
-    int tempbool1;
+    char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPageSetupData_SetDefaultInfo",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPageSetupDialogData_SetPrintData",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupData_SetDefaultInfo. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPageSetupDialogData_SetPrintData. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _arg1 = (bool ) tempbool1;
-    wxPageSetupData_SetDefaultInfo(_arg0,_arg1);
-    Py_INCREF(Py_None);
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPrintData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPageSetupDialogData_SetPrintData. Expected _wxPrintData_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData_SetPrintData(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2613,7 +3042,7 @@ static PyObject *_wrap_new_wxPageSetupDialog(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxPageSetupDialog * _result;
     wxWindow * _arg0;
-    wxPageSetupData * _arg1 = NULL;
+    wxPageSetupDialogData * _arg1 = NULL;
     char * _argc0 = 0;
     char * _argc1 = 0;
     char _ptemp[128];
@@ -2628,13 +3057,17 @@ static PyObject *_wrap_new_wxPageSetupDialog(PyObject *self, PyObject *args) {
         }
     }
     if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPageSetupData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxPageSetupDialog. Expected _wxPageSetupData_p.");
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPageSetupDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxPageSetupDialog. Expected _wxPageSetupDialogData_p.");
         return NULL;
         }
     }
-    _result = (wxPageSetupDialog *)new_wxPageSetupDialog(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPageSetupDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPageSetupDialog *)new_wxPageSetupDialog(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPageSetupDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2642,7 +3075,7 @@ static PyObject *_wrap_new_wxPageSetupDialog(PyObject *self, PyObject *args) {
 #define wxPageSetupDialog_GetPageSetupData(_swigobj)  (_swigobj->GetPageSetupData())
 static PyObject *_wrap_wxPageSetupDialog_GetPageSetupData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPageSetupData * _result;
+    wxPageSetupDialogData * _result;
     wxPageSetupDialog * _arg0;
     char * _argc0 = 0;
     char _ptemp[128];
@@ -2656,9 +3089,13 @@ static PyObject *_wrap_wxPageSetupDialog_GetPageSetupData(PyObject *self, PyObje
         return NULL;
         }
     }
-    wxPageSetupData & _result_ref = wxPageSetupDialog_GetPageSetupData(_arg0);
-    _result = (wxPageSetupData *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPageSetupData_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPageSetupDialogData & _result_ref = wxPageSetupDialog_GetPageSetupData(_arg0);
+    _result = (wxPageSetupDialogData *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPageSetupDialogData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2679,511 +3116,642 @@ static PyObject *_wrap_wxPageSetupDialog_ShowModal(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxPageSetupDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPageSetupDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define new_wxPrintData() (new wxPrintData())
-static PyObject *_wrap_new_wxPrintData(PyObject *self, PyObject *args) {
+#define new_wxPrintDialogData() (new wxPrintDialogData())
+static PyObject *_wrap_new_wxPrintDialogData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _result;
+    wxPrintDialogData * _result;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,":new_wxPrintData")) 
+    if(!PyArg_ParseTuple(args,":new_wxPrintDialogData")) 
         return NULL;
-    _result = (wxPrintData *)new_wxPrintData();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintData_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPrintDialogData *)new_wxPrintDialogData();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintDialogData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define delete_wxPrintData(_swigobj) (delete _swigobj)
-static PyObject *_wrap_delete_wxPrintData(PyObject *self, PyObject *args) {
+#define delete_wxPrintDialogData(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxPrintDialogData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:delete_wxPrintData",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:delete_wxPrintDialogData",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxPrintData. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxPrintDialogData. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    delete_wxPrintData(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPrintDialogData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_EnableHelp(_swigobj,_swigarg0)  (_swigobj->EnableHelp(_swigarg0))
-static PyObject *_wrap_wxPrintData_EnableHelp(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_EnableHelp(_swigobj,_swigarg0)  (_swigobj->EnableHelp(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_EnableHelp(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_EnableHelp",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_EnableHelp",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_EnableHelp. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_EnableHelp. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_EnableHelp(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_EnableHelp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_EnablePageNumbers(_swigobj,_swigarg0)  (_swigobj->EnablePageNumbers(_swigarg0))
-static PyObject *_wrap_wxPrintData_EnablePageNumbers(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_EnablePageNumbers(_swigobj,_swigarg0)  (_swigobj->EnablePageNumbers(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_EnablePageNumbers(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_EnablePageNumbers",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_EnablePageNumbers",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_EnablePageNumbers. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_EnablePageNumbers. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_EnablePageNumbers(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_EnablePageNumbers(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_EnablePrintToFile(_swigobj,_swigarg0)  (_swigobj->EnablePrintToFile(_swigarg0))
-static PyObject *_wrap_wxPrintData_EnablePrintToFile(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_EnablePrintToFile(_swigobj,_swigarg0)  (_swigobj->EnablePrintToFile(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_EnablePrintToFile(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_EnablePrintToFile",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_EnablePrintToFile",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_EnablePrintToFile. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_EnablePrintToFile. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_EnablePrintToFile(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_EnablePrintToFile(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_EnableSelection(_swigobj,_swigarg0)  (_swigobj->EnableSelection(_swigarg0))
-static PyObject *_wrap_wxPrintData_EnableSelection(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_EnableSelection(_swigobj,_swigarg0)  (_swigobj->EnableSelection(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_EnableSelection(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_EnableSelection",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_EnableSelection",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_EnableSelection. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_EnableSelection. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_EnableSelection(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_EnableSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_GetAllPages(_swigobj)  (_swigobj->GetAllPages())
-static PyObject *_wrap_wxPrintData_GetAllPages(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetAllPages(_swigobj)  (_swigobj->GetAllPages())
+static PyObject *_wrap_wxPrintDialogData_GetAllPages(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     bool  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetAllPages",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetAllPages",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetAllPages. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetAllPages. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPrintData_GetAllPages(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPrintDialogData_GetAllPages(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetCollate(_swigobj)  (_swigobj->GetCollate())
-static PyObject *_wrap_wxPrintData_GetCollate(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetCollate(_swigobj)  (_swigobj->GetCollate())
+static PyObject *_wrap_wxPrintDialogData_GetCollate(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     bool  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetCollate",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetCollate",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetCollate. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetCollate. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (bool )wxPrintData_GetCollate(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPrintDialogData_GetCollate(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetFromPage(_swigobj)  (_swigobj->GetFromPage())
-static PyObject *_wrap_wxPrintData_GetFromPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetFromPage(_swigobj)  (_swigobj->GetFromPage())
+static PyObject *_wrap_wxPrintDialogData_GetFromPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetFromPage",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetFromPage",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetFromPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetFromPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPrintData_GetFromPage(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPrintDialogData_GetFromPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetMaxPage(_swigobj)  (_swigobj->GetMaxPage())
-static PyObject *_wrap_wxPrintData_GetMaxPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetMaxPage(_swigobj)  (_swigobj->GetMaxPage())
+static PyObject *_wrap_wxPrintDialogData_GetMaxPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetMaxPage",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetMaxPage",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetMaxPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetMaxPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPrintData_GetMaxPage(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPrintDialogData_GetMaxPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetMinPage(_swigobj)  (_swigobj->GetMinPage())
-static PyObject *_wrap_wxPrintData_GetMinPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetMinPage(_swigobj)  (_swigobj->GetMinPage())
+static PyObject *_wrap_wxPrintDialogData_GetMinPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetMinPage",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetMinPage",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetMinPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetMinPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPrintData_GetMinPage(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPrintDialogData_GetMinPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetNoCopies(_swigobj)  (_swigobj->GetNoCopies())
-static PyObject *_wrap_wxPrintData_GetNoCopies(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetNoCopies(_swigobj)  (_swigobj->GetNoCopies())
+static PyObject *_wrap_wxPrintDialogData_GetNoCopies(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetNoCopies",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetNoCopies",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetNoCopies. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetNoCopies. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPrintData_GetNoCopies(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPrintDialogData_GetNoCopies(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetOrientation(_swigobj)  (_swigobj->GetOrientation())
-static PyObject *_wrap_wxPrintData_GetOrientation(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetPrintData(_swigobj)  (_swigobj->GetPrintData())
+static PyObject *_wrap_wxPrintDialogData_GetPrintData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    int  _result;
-    wxPrintData * _arg0;
+    wxPrintData * _result;
+    wxPrintDialogData * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetPrintData",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetPrintData. Expected _wxPrintDialogData_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintData & _result_ref = wxPrintDialogData_GetPrintData(_arg0);
+    _result = (wxPrintData *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintData_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxPrintDialogData_GetPrintToFile(_swigobj)  (_swigobj->GetPrintToFile())
+static PyObject *_wrap_wxPrintDialogData_GetPrintToFile(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetOrientation",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetPrintToFile",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetOrientation. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetPrintToFile. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPrintData_GetOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPrintDialogData_GetPrintToFile(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_GetToPage(_swigobj)  (_swigobj->GetToPage())
-static PyObject *_wrap_wxPrintData_GetToPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_GetToPage(_swigobj)  (_swigobj->GetToPage())
+static PyObject *_wrap_wxPrintDialogData_GetToPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintData_GetToPage",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialogData_GetToPage",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_GetToPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_GetToPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (int )wxPrintData_GetToPage(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPrintDialogData_GetToPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxPrintData_SetCollate(_swigobj,_swigarg0)  (_swigobj->SetCollate(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetCollate(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetCollate(_swigobj,_swigarg0)  (_swigobj->SetCollate(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetCollate(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetCollate",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetCollate",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetCollate. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetCollate. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_SetCollate(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetCollate(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetFromPage(_swigobj,_swigarg0)  (_swigobj->SetFromPage(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetFromPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetFromPage(_swigobj,_swigarg0)  (_swigobj->SetFromPage(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetFromPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     int  _arg1;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetFromPage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetFromPage",&_argc0,&_arg1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetFromPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetFromPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    wxPrintData_SetFromPage(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetFromPage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetMaxPage(_swigobj,_swigarg0)  (_swigobj->SetMaxPage(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetMaxPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetMaxPage(_swigobj,_swigarg0)  (_swigobj->SetMaxPage(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetMaxPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     int  _arg1;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetMaxPage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetMaxPage",&_argc0,&_arg1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetMaxPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetMaxPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    wxPrintData_SetMaxPage(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetMaxPage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetMinPage(_swigobj,_swigarg0)  (_swigobj->SetMinPage(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetMinPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetMinPage(_swigobj,_swigarg0)  (_swigobj->SetMinPage(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetMinPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     int  _arg1;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetMinPage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetMinPage",&_argc0,&_arg1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetMinPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetMinPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    wxPrintData_SetMinPage(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetMinPage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetOrientation(_swigobj,_swigarg0)  (_swigobj->SetOrientation(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetOrientation(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetNoCopies(_swigobj,_swigarg0)  (_swigobj->SetNoCopies(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetNoCopies(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     int  _arg1;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetOrientation",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetNoCopies",&_argc0,&_arg1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetOrientation. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetNoCopies. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    wxPrintData_SetOrientation(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetNoCopies(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetNoCopies(_swigobj,_swigarg0)  (_swigobj->SetNoCopies(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetNoCopies(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetPrintData(_swigobj,_swigarg0)  (_swigobj->SetPrintData(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetPrintData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
-    int  _arg1;
+    wxPrintDialogData * _arg0;
+    wxPrintData * _arg1;
     char * _argc0 = 0;
+    char * _argc1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetNoCopies",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"ss:wxPrintDialogData_SetPrintData",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetNoCopies. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetPrintData. Expected _wxPrintDialogData_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPrintData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPrintDialogData_SetPrintData. Expected _wxPrintData_p.");
         return NULL;
         }
     }
-    wxPrintData_SetNoCopies(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetPrintData(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetPrintToFile(_swigobj,_swigarg0)  (_swigobj->SetPrintToFile(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetPrintToFile(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetPrintToFile(_swigobj,_swigarg0)  (_swigobj->SetPrintToFile(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetPrintToFile(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetPrintToFile",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetPrintToFile",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetPrintToFile. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetPrintToFile. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_SetPrintToFile(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetPrintToFile(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetSetupDialog(_swigobj,_swigarg0)  (_swigobj->SetSetupDialog(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetSetupDialog(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetSetupDialog(_swigobj,_swigarg0)  (_swigobj->SetSetupDialog(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetSetupDialog(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     bool  _arg1;
     char * _argc0 = 0;
     int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetSetupDialog",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetSetupDialog",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetSetupDialog. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetSetupDialog. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPrintData_SetSetupDialog(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetSetupDialog(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxPrintData_SetToPage(_swigobj,_swigarg0)  (_swigobj->SetToPage(_swigarg0))
-static PyObject *_wrap_wxPrintData_SetToPage(PyObject *self, PyObject *args) {
+#define wxPrintDialogData_SetToPage(_swigobj,_swigarg0)  (_swigobj->SetToPage(_swigarg0))
+static PyObject *_wrap_wxPrintDialogData_SetToPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _arg0;
+    wxPrintDialogData * _arg0;
     int  _arg1;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxPrintData_SetToPage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"si:wxPrintDialogData_SetToPage",&_argc0,&_arg1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintData_SetToPage. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialogData_SetToPage. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    wxPrintData_SetToPage(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData_SetToPage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3225,7 +3793,7 @@ static PyObject *_wrap_new_wxPrintDialog(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxPrintDialog * _result;
     wxWindow * _arg0;
-    wxPrintData * _arg1 = NULL;
+    wxPrintDialogData * _arg1 = NULL;
     char * _argc0 = 0;
     char * _argc1 = 0;
     char _ptemp[128];
@@ -3240,37 +3808,45 @@ static PyObject *_wrap_new_wxPrintDialog(PyObject *self, PyObject *args) {
         }
     }
     if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPrintData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxPrintDialog. Expected _wxPrintData_p.");
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPrintDialogData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxPrintDialog. Expected _wxPrintDialogData_p.");
         return NULL;
         }
     }
-    _result = (wxPrintDialog *)new_wxPrintDialog(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPrintDialog *)new_wxPrintDialog(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define wxPrintDialog_GetPrintData(_swigobj)  (_swigobj->GetPrintData())
-static PyObject *_wrap_wxPrintDialog_GetPrintData(PyObject *self, PyObject *args) {
+#define wxPrintDialog_GetPrintDialogData(_swigobj)  (_swigobj->GetPrintDialogData())
+static PyObject *_wrap_wxPrintDialog_GetPrintDialogData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxPrintData * _result;
+    wxPrintDialogData * _result;
     wxPrintDialog * _arg0;
     char * _argc0 = 0;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxPrintDialog_GetPrintData",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxPrintDialog_GetPrintDialogData",&_argc0)) 
         return NULL;
     if (_argc0) {
         if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPrintDialog_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialog_GetPrintData. Expected _wxPrintDialog_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPrintDialog_GetPrintDialogData. Expected _wxPrintDialog_p.");
         return NULL;
         }
     }
-    wxPrintData & _result_ref = wxPrintDialog_GetPrintData(_arg0);
-    _result = (wxPrintData *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintData_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPrintDialogData & _result_ref = wxPrintDialog_GetPrintDialogData(_arg0);
+    _result = (wxPrintDialogData *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPrintDialogData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3292,8 +3868,12 @@ static PyObject *_wrap_wxPrintDialog_GetPrintDC(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxDC *)wxPrintDialog_GetPrintDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxDC *)wxPrintDialog_GetPrintDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3314,8 +3894,12 @@ static PyObject *_wrap_wxPrintDialog_ShowModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPrintDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPrintDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3379,8 +3963,12 @@ static PyObject *_wrap_new_wxMessageDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMessageDialog *)new_wxMessageDialog(_arg0,_arg1,_arg2,_arg3,*_arg4);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMessageDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMessageDialog *)new_wxMessageDialog(_arg0,_arg1,_arg2,_arg3,*_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMessageDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3401,8 +3989,12 @@ static PyObject *_wrap_wxMessageDialog_ShowModal(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxMessageDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMessageDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3411,62 +4003,65 @@ static PyMethodDef cmndlgscMethods[] = {
         { "new_wxMessageDialog", _wrap_new_wxMessageDialog, 1 },
         { "wxPrintDialog_ShowModal", _wrap_wxPrintDialog_ShowModal, 1 },
         { "wxPrintDialog_GetPrintDC", _wrap_wxPrintDialog_GetPrintDC, 1 },
-        { "wxPrintDialog_GetPrintData", _wrap_wxPrintDialog_GetPrintData, 1 },
+        { "wxPrintDialog_GetPrintDialogData", _wrap_wxPrintDialog_GetPrintDialogData, 1 },
         { "new_wxPrintDialog", _wrap_new_wxPrintDialog, 1 },
-        { "wxPrintData_SetToPage", _wrap_wxPrintData_SetToPage, 1 },
-        { "wxPrintData_SetSetupDialog", _wrap_wxPrintData_SetSetupDialog, 1 },
-        { "wxPrintData_SetPrintToFile", _wrap_wxPrintData_SetPrintToFile, 1 },
-        { "wxPrintData_SetNoCopies", _wrap_wxPrintData_SetNoCopies, 1 },
-        { "wxPrintData_SetOrientation", _wrap_wxPrintData_SetOrientation, 1 },
-        { "wxPrintData_SetMinPage", _wrap_wxPrintData_SetMinPage, 1 },
-        { "wxPrintData_SetMaxPage", _wrap_wxPrintData_SetMaxPage, 1 },
-        { "wxPrintData_SetFromPage", _wrap_wxPrintData_SetFromPage, 1 },
-        { "wxPrintData_SetCollate", _wrap_wxPrintData_SetCollate, 1 },
-        { "wxPrintData_GetToPage", _wrap_wxPrintData_GetToPage, 1 },
-        { "wxPrintData_GetOrientation", _wrap_wxPrintData_GetOrientation, 1 },
-        { "wxPrintData_GetNoCopies", _wrap_wxPrintData_GetNoCopies, 1 },
-        { "wxPrintData_GetMinPage", _wrap_wxPrintData_GetMinPage, 1 },
-        { "wxPrintData_GetMaxPage", _wrap_wxPrintData_GetMaxPage, 1 },
-        { "wxPrintData_GetFromPage", _wrap_wxPrintData_GetFromPage, 1 },
-        { "wxPrintData_GetCollate", _wrap_wxPrintData_GetCollate, 1 },
-        { "wxPrintData_GetAllPages", _wrap_wxPrintData_GetAllPages, 1 },
-        { "wxPrintData_EnableSelection", _wrap_wxPrintData_EnableSelection, 1 },
-        { "wxPrintData_EnablePrintToFile", _wrap_wxPrintData_EnablePrintToFile, 1 },
-        { "wxPrintData_EnablePageNumbers", _wrap_wxPrintData_EnablePageNumbers, 1 },
-        { "wxPrintData_EnableHelp", _wrap_wxPrintData_EnableHelp, 1 },
-        { "delete_wxPrintData", _wrap_delete_wxPrintData, 1 },
-        { "new_wxPrintData", _wrap_new_wxPrintData, 1 },
+        { "wxPrintDialogData_SetToPage", _wrap_wxPrintDialogData_SetToPage, 1 },
+        { "wxPrintDialogData_SetSetupDialog", _wrap_wxPrintDialogData_SetSetupDialog, 1 },
+        { "wxPrintDialogData_SetPrintToFile", _wrap_wxPrintDialogData_SetPrintToFile, 1 },
+        { "wxPrintDialogData_SetPrintData", _wrap_wxPrintDialogData_SetPrintData, 1 },
+        { "wxPrintDialogData_SetNoCopies", _wrap_wxPrintDialogData_SetNoCopies, 1 },
+        { "wxPrintDialogData_SetMinPage", _wrap_wxPrintDialogData_SetMinPage, 1 },
+        { "wxPrintDialogData_SetMaxPage", _wrap_wxPrintDialogData_SetMaxPage, 1 },
+        { "wxPrintDialogData_SetFromPage", _wrap_wxPrintDialogData_SetFromPage, 1 },
+        { "wxPrintDialogData_SetCollate", _wrap_wxPrintDialogData_SetCollate, 1 },
+        { "wxPrintDialogData_GetToPage", _wrap_wxPrintDialogData_GetToPage, 1 },
+        { "wxPrintDialogData_GetPrintToFile", _wrap_wxPrintDialogData_GetPrintToFile, 1 },
+        { "wxPrintDialogData_GetPrintData", _wrap_wxPrintDialogData_GetPrintData, 1 },
+        { "wxPrintDialogData_GetNoCopies", _wrap_wxPrintDialogData_GetNoCopies, 1 },
+        { "wxPrintDialogData_GetMinPage", _wrap_wxPrintDialogData_GetMinPage, 1 },
+        { "wxPrintDialogData_GetMaxPage", _wrap_wxPrintDialogData_GetMaxPage, 1 },
+        { "wxPrintDialogData_GetFromPage", _wrap_wxPrintDialogData_GetFromPage, 1 },
+        { "wxPrintDialogData_GetCollate", _wrap_wxPrintDialogData_GetCollate, 1 },
+        { "wxPrintDialogData_GetAllPages", _wrap_wxPrintDialogData_GetAllPages, 1 },
+        { "wxPrintDialogData_EnableSelection", _wrap_wxPrintDialogData_EnableSelection, 1 },
+        { "wxPrintDialogData_EnablePrintToFile", _wrap_wxPrintDialogData_EnablePrintToFile, 1 },
+        { "wxPrintDialogData_EnablePageNumbers", _wrap_wxPrintDialogData_EnablePageNumbers, 1 },
+        { "wxPrintDialogData_EnableHelp", _wrap_wxPrintDialogData_EnableHelp, 1 },
+        { "delete_wxPrintDialogData", _wrap_delete_wxPrintDialogData, 1 },
+        { "new_wxPrintDialogData", _wrap_new_wxPrintDialogData, 1 },
         { "wxPageSetupDialog_ShowModal", _wrap_wxPageSetupDialog_ShowModal, 1 },
         { "wxPageSetupDialog_GetPageSetupData", _wrap_wxPageSetupDialog_GetPageSetupData, 1 },
         { "new_wxPageSetupDialog", _wrap_new_wxPageSetupDialog, 1 },
-        { "wxPageSetupData_SetDefaultInfo", _wrap_wxPageSetupData_SetDefaultInfo, 1 },
-        { "wxPageSetupData_SetDefaultMinMargins", _wrap_wxPageSetupData_SetDefaultMinMargins, 1 },
-        { "wxPageSetupData_SetOrientation", _wrap_wxPageSetupData_SetOrientation, 1 },
-        { "wxPageSetupData_SetMinMarginBottomRight", _wrap_wxPageSetupData_SetMinMarginBottomRight, 1 },
-        { "wxPageSetupData_SetMinMarginTopLeft", _wrap_wxPageSetupData_SetMinMarginTopLeft, 1 },
-        { "wxPageSetupData_SetMarginBottomRight", _wrap_wxPageSetupData_SetMarginBottomRight, 1 },
-        { "wxPageSetupData_SetMarginTopLeft", _wrap_wxPageSetupData_SetMarginTopLeft, 1 },
-        { "wxPageSetupData_SetPaperSize", _wrap_wxPageSetupData_SetPaperSize, 1 },
-        { "wxPageSetupData_GetDefaultInfo", _wrap_wxPageSetupData_GetDefaultInfo, 1 },
-        { "wxPageSetupData_GetEnableHelp", _wrap_wxPageSetupData_GetEnableHelp, 1 },
-        { "wxPageSetupData_GetEnablePrinter", _wrap_wxPageSetupData_GetEnablePrinter, 1 },
-        { "wxPageSetupData_GetEnablePaper", _wrap_wxPageSetupData_GetEnablePaper, 1 },
-        { "wxPageSetupData_GetEnableOrientation", _wrap_wxPageSetupData_GetEnableOrientation, 1 },
-        { "wxPageSetupData_GetEnableMargins", _wrap_wxPageSetupData_GetEnableMargins, 1 },
-        { "wxPageSetupData_GetDefaultMinMargins", _wrap_wxPageSetupData_GetDefaultMinMargins, 1 },
-        { "wxPageSetupData_GetOrientation", _wrap_wxPageSetupData_GetOrientation, 1 },
-        { "wxPageSetupData_GetMinMarginBottomRight", _wrap_wxPageSetupData_GetMinMarginBottomRight, 1 },
-        { "wxPageSetupData_GetMinMarginTopLeft", _wrap_wxPageSetupData_GetMinMarginTopLeft, 1 },
-        { "wxPageSetupData_GetMarginBottomRight", _wrap_wxPageSetupData_GetMarginBottomRight, 1 },
-        { "wxPageSetupData_GetMarginTopLeft", _wrap_wxPageSetupData_GetMarginTopLeft, 1 },
-        { "wxPageSetupData_GetPaperSize", _wrap_wxPageSetupData_GetPaperSize, 1 },
-        { "wxPageSetupData_EnablePrinter", _wrap_wxPageSetupData_EnablePrinter, 1 },
-        { "wxPageSetupData_EnablePaper", _wrap_wxPageSetupData_EnablePaper, 1 },
-        { "wxPageSetupData_EnableOrientation", _wrap_wxPageSetupData_EnableOrientation, 1 },
-        { "wxPageSetupData_EnableMargins", _wrap_wxPageSetupData_EnableMargins, 1 },
-        { "wxPageSetupData_EnableHelp", _wrap_wxPageSetupData_EnableHelp, 1 },
-        { "delete_wxPageSetupData", _wrap_delete_wxPageSetupData, 1 },
-        { "new_wxPageSetupData", _wrap_new_wxPageSetupData, 1 },
+        { "wxPageSetupDialogData_SetPrintData", _wrap_wxPageSetupDialogData_SetPrintData, 1 },
+        { "wxPageSetupDialogData_SetPaperSize", _wrap_wxPageSetupDialogData_SetPaperSize, 1 },
+        { "wxPageSetupDialogData_SetPaperId", _wrap_wxPageSetupDialogData_SetPaperId, 1 },
+        { "wxPageSetupDialogData_SetMinMarginBottomRight", _wrap_wxPageSetupDialogData_SetMinMarginBottomRight, 1 },
+        { "wxPageSetupDialogData_SetMinMarginTopLeft", _wrap_wxPageSetupDialogData_SetMinMarginTopLeft, 1 },
+        { "wxPageSetupDialogData_SetMarginBottomRight", _wrap_wxPageSetupDialogData_SetMarginBottomRight, 1 },
+        { "wxPageSetupDialogData_SetMarginTopLeft", _wrap_wxPageSetupDialogData_SetMarginTopLeft, 1 },
+        { "wxPageSetupDialogData_SetDefaultMinMargins", _wrap_wxPageSetupDialogData_SetDefaultMinMargins, 1 },
+        { "wxPageSetupDialogData_SetDefaultInfo", _wrap_wxPageSetupDialogData_SetDefaultInfo, 1 },
+        { "wxPageSetupDialogData_GetPrintData", _wrap_wxPageSetupDialogData_GetPrintData, 1 },
+        { "wxPageSetupDialogData_GetPaperSize", _wrap_wxPageSetupDialogData_GetPaperSize, 1 },
+        { "wxPageSetupDialogData_GetPaperId", _wrap_wxPageSetupDialogData_GetPaperId, 1 },
+        { "wxPageSetupDialogData_GetMinMarginBottomRight", _wrap_wxPageSetupDialogData_GetMinMarginBottomRight, 1 },
+        { "wxPageSetupDialogData_GetMinMarginTopLeft", _wrap_wxPageSetupDialogData_GetMinMarginTopLeft, 1 },
+        { "wxPageSetupDialogData_GetMarginBottomRight", _wrap_wxPageSetupDialogData_GetMarginBottomRight, 1 },
+        { "wxPageSetupDialogData_GetMarginTopLeft", _wrap_wxPageSetupDialogData_GetMarginTopLeft, 1 },
+        { "wxPageSetupDialogData_GetDefaultInfo", _wrap_wxPageSetupDialogData_GetDefaultInfo, 1 },
+        { "wxPageSetupDialogData_GetEnableHelp", _wrap_wxPageSetupDialogData_GetEnableHelp, 1 },
+        { "wxPageSetupDialogData_GetEnablePrinter", _wrap_wxPageSetupDialogData_GetEnablePrinter, 1 },
+        { "wxPageSetupDialogData_GetEnablePaper", _wrap_wxPageSetupDialogData_GetEnablePaper, 1 },
+        { "wxPageSetupDialogData_GetEnableOrientation", _wrap_wxPageSetupDialogData_GetEnableOrientation, 1 },
+        { "wxPageSetupDialogData_GetEnableMargins", _wrap_wxPageSetupDialogData_GetEnableMargins, 1 },
+        { "wxPageSetupDialogData_GetDefaultMinMargins", _wrap_wxPageSetupDialogData_GetDefaultMinMargins, 1 },
+        { "wxPageSetupDialogData_EnablePrinter", _wrap_wxPageSetupDialogData_EnablePrinter, 1 },
+        { "wxPageSetupDialogData_EnablePaper", _wrap_wxPageSetupDialogData_EnablePaper, 1 },
+        { "wxPageSetupDialogData_EnableOrientation", _wrap_wxPageSetupDialogData_EnableOrientation, 1 },
+        { "wxPageSetupDialogData_EnableMargins", _wrap_wxPageSetupDialogData_EnableMargins, 1 },
+        { "wxPageSetupDialogData_EnableHelp", _wrap_wxPageSetupDialogData_EnableHelp, 1 },
+        { "delete_wxPageSetupDialogData", _wrap_delete_wxPageSetupDialogData, 1 },
+        { "new_wxPageSetupDialogData", _wrap_new_wxPageSetupDialogData, 1 },
         { "wxFontDialog_ShowModal", _wrap_wxFontDialog_ShowModal, 1 },
         { "wxFontDialog_GetFontData", _wrap_wxFontDialog_GetFontData, 1 },
         { "new_wxFontDialog", _wrap_new_wxFontDialog, 1 },
@@ -3571,15 +4166,16 @@ SWIGEXPORT(void,initcmndlgsc)() {
         SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
         SWIG_RegisterMapping("_wxToolTip","_class_wxToolTip",0);
         SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
-        SWIG_RegisterMapping("_wxPageSetupData","_class_wxPageSetupData",0);
         SWIG_RegisterMapping("_wxPyMenu","_class_wxPyMenu",0);
         SWIG_RegisterMapping("_class_wxColourData","_wxColourData",0);
+        SWIG_RegisterMapping("_class_wxPageSetupDialogData","_wxPageSetupDialogData",0);
         SWIG_RegisterMapping("_wxPen","_class_wxPen",0);
         SWIG_RegisterMapping("_byte","_unsigned_char",0);
         SWIG_RegisterMapping("_long","_wxDash",0);
         SWIG_RegisterMapping("_long","_unsigned_long",0);
         SWIG_RegisterMapping("_long","_signed_long",0);
         SWIG_RegisterMapping("_wxImageList","_class_wxImageList",0);
+        SWIG_RegisterMapping("_class_wxPrintDialogData","_wxPrintDialogData",0);
         SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
         SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
         SWIG_RegisterMapping("_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0);
@@ -3607,7 +4203,6 @@ SWIGEXPORT(void,initcmndlgsc)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
-        SWIG_RegisterMapping("_class_wxPageSetupData","_wxPageSetupData",0);
         SWIG_RegisterMapping("_wxColour","_class_wxColour",0);
         SWIG_RegisterMapping("_class_wxDialog","_class_wxMessageDialog",SwigwxMessageDialogTowxDialog);
         SWIG_RegisterMapping("_class_wxDialog","_wxMessageDialog",SwigwxMessageDialogTowxDialog);
@@ -3641,7 +4236,6 @@ SWIGEXPORT(void,initcmndlgsc)() {
         SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
         SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
         SWIG_RegisterMapping("_wxColourDialog","_class_wxColourDialog",0);
-        SWIG_RegisterMapping("_wxPrintData","_class_wxPrintData",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
         SWIG_RegisterMapping("_wxMessageDialog","_class_wxMessageDialog",0);
         SWIG_RegisterMapping("_wxTextEntryDialog","_class_wxTextEntryDialog",0);
@@ -3709,6 +4303,7 @@ SWIGEXPORT(void,initcmndlgsc)() {
         SWIG_RegisterMapping("_class_wxWindow","_class_wxColourDialog",SwigwxColourDialogTowxWindow);
         SWIG_RegisterMapping("_class_wxWindow","_wxColourDialog",SwigwxColourDialogTowxWindow);
         SWIG_RegisterMapping("_class_wxWindow","_wxWindow",0);
+        SWIG_RegisterMapping("_wxPrintDialogData","_class_wxPrintDialogData",0);
         SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
         SWIG_RegisterMapping("_wxClientDC","_class_wxClientDC",0);
         SWIG_RegisterMapping("_wxSingleChoiceDialog","_class_wxSingleChoiceDialog",0);
@@ -3804,12 +4399,12 @@ SWIGEXPORT(void,initcmndlgsc)() {
         SWIG_RegisterMapping("_wxEvtHandler","_class_wxEvtHandler",0);
         SWIG_RegisterMapping("_wxMenuItem","_class_wxMenuItem",0);
         SWIG_RegisterMapping("_class_wxColourDialog","_wxColourDialog",0);
-        SWIG_RegisterMapping("_class_wxPrintData","_wxPrintData",0);
         SWIG_RegisterMapping("_wxDash","_unsigned_long",0);
         SWIG_RegisterMapping("_wxDash","_long",0);
         SWIG_RegisterMapping("_class_wxScrolledWindow","_wxScrolledWindow",0);
         SWIG_RegisterMapping("_class_wxTextEntryDialog","_wxTextEntryDialog",0);
         SWIG_RegisterMapping("_wxColourData","_class_wxColourData",0);
+        SWIG_RegisterMapping("_wxPageSetupDialogData","_class_wxPageSetupDialogData",0);
         SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
         SWIG_RegisterMapping("_class_wxFontDialog","_wxFontDialog",0);
         SWIG_RegisterMapping("_wxWindow","_class_wxMessageDialog",SwigwxMessageDialogTowxWindow);
index 39dd99819e86588fb38ec8d9d399f3e11ecd44a1..ec9137a4977fcf241aa6a2c89c7d2c398c863cd8 100644 (file)
@@ -318,106 +318,113 @@ class wxFontDialog(wxFontDialogPtr):
 
 
 
-class wxPageSetupDataPtr :
+class wxPageSetupDialogDataPtr :
     def __init__(self,this):
         self.this = this
         self.thisown = 0
     def __del__(self):
         if self.thisown == 1 :
-            cmndlgsc.delete_wxPageSetupData(self.this)
+            cmndlgsc.delete_wxPageSetupDialogData(self.this)
     def EnableHelp(self,arg0):
-        val = cmndlgsc.wxPageSetupData_EnableHelp(self.this,arg0)
+        val = cmndlgsc.wxPageSetupDialogData_EnableHelp(self.this,arg0)
         return val
     def EnableMargins(self,arg0):
-        val = cmndlgsc.wxPageSetupData_EnableMargins(self.this,arg0)
+        val = cmndlgsc.wxPageSetupDialogData_EnableMargins(self.this,arg0)
         return val
     def EnableOrientation(self,arg0):
-        val = cmndlgsc.wxPageSetupData_EnableOrientation(self.this,arg0)
+        val = cmndlgsc.wxPageSetupDialogData_EnableOrientation(self.this,arg0)
         return val
     def EnablePaper(self,arg0):
-        val = cmndlgsc.wxPageSetupData_EnablePaper(self.this,arg0)
+        val = cmndlgsc.wxPageSetupDialogData_EnablePaper(self.this,arg0)
         return val
     def EnablePrinter(self,arg0):
-        val = cmndlgsc.wxPageSetupData_EnablePrinter(self.this,arg0)
+        val = cmndlgsc.wxPageSetupDialogData_EnablePrinter(self.this,arg0)
         return val
-    def GetPaperSize(self):
-        val = cmndlgsc.wxPageSetupData_GetPaperSize(self.this)
-        val = wxPointPtr(val)
-        val.thisown = 1
+    def GetDefaultMinMargins(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetDefaultMinMargins(self.this)
+        return val
+    def GetEnableMargins(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetEnableMargins(self.this)
+        return val
+    def GetEnableOrientation(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetEnableOrientation(self.this)
+        return val
+    def GetEnablePaper(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetEnablePaper(self.this)
+        return val
+    def GetEnablePrinter(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetEnablePrinter(self.this)
+        return val
+    def GetEnableHelp(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetEnableHelp(self.this)
+        return val
+    def GetDefaultInfo(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetDefaultInfo(self.this)
         return val
     def GetMarginTopLeft(self):
-        val = cmndlgsc.wxPageSetupData_GetMarginTopLeft(self.this)
+        val = cmndlgsc.wxPageSetupDialogData_GetMarginTopLeft(self.this)
         val = wxPointPtr(val)
         val.thisown = 1
         return val
     def GetMarginBottomRight(self):
-        val = cmndlgsc.wxPageSetupData_GetMarginBottomRight(self.this)
+        val = cmndlgsc.wxPageSetupDialogData_GetMarginBottomRight(self.this)
         val = wxPointPtr(val)
         val.thisown = 1
         return val
     def GetMinMarginTopLeft(self):
-        val = cmndlgsc.wxPageSetupData_GetMinMarginTopLeft(self.this)
+        val = cmndlgsc.wxPageSetupDialogData_GetMinMarginTopLeft(self.this)
         val = wxPointPtr(val)
         val.thisown = 1
         return val
     def GetMinMarginBottomRight(self):
-        val = cmndlgsc.wxPageSetupData_GetMinMarginBottomRight(self.this)
+        val = cmndlgsc.wxPageSetupDialogData_GetMinMarginBottomRight(self.this)
         val = wxPointPtr(val)
         val.thisown = 1
         return val
-    def GetOrientation(self):
-        val = cmndlgsc.wxPageSetupData_GetOrientation(self.this)
-        return val
-    def GetDefaultMinMargins(self):
-        val = cmndlgsc.wxPageSetupData_GetDefaultMinMargins(self.this)
-        return val
-    def GetEnableMargins(self):
-        val = cmndlgsc.wxPageSetupData_GetEnableMargins(self.this)
-        return val
-    def GetEnableOrientation(self):
-        val = cmndlgsc.wxPageSetupData_GetEnableOrientation(self.this)
-        return val
-    def GetEnablePaper(self):
-        val = cmndlgsc.wxPageSetupData_GetEnablePaper(self.this)
+    def GetPaperId(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetPaperId(self.this)
         return val
-    def GetEnablePrinter(self):
-        val = cmndlgsc.wxPageSetupData_GetEnablePrinter(self.this)
+    def GetPaperSize(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetPaperSize(self.this)
+        val = wxSizePtr(val)
+        val.thisown = 1
         return val
-    def GetEnableHelp(self):
-        val = cmndlgsc.wxPageSetupData_GetEnableHelp(self.this)
+    def GetPrintData(self):
+        val = cmndlgsc.wxPageSetupDialogData_GetPrintData(self.this)
+        val = wxPrintDataPtr(val)
         return val
-    def GetDefaultInfo(self):
-        val = cmndlgsc.wxPageSetupData_GetDefaultInfo(self.this)
+    def SetDefaultInfo(self,arg0):
+        val = cmndlgsc.wxPageSetupDialogData_SetDefaultInfo(self.this,arg0)
         return val
-    def SetPaperSize(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetPaperSize(self.this,arg0.this)
+    def SetDefaultMinMargins(self,arg0):
+        val = cmndlgsc.wxPageSetupDialogData_SetDefaultMinMargins(self.this,arg0)
         return val
     def SetMarginTopLeft(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetMarginTopLeft(self.this,arg0.this)
+        val = cmndlgsc.wxPageSetupDialogData_SetMarginTopLeft(self.this,arg0.this)
         return val
     def SetMarginBottomRight(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetMarginBottomRight(self.this,arg0.this)
+        val = cmndlgsc.wxPageSetupDialogData_SetMarginBottomRight(self.this,arg0.this)
         return val
     def SetMinMarginTopLeft(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetMinMarginTopLeft(self.this,arg0.this)
+        val = cmndlgsc.wxPageSetupDialogData_SetMinMarginTopLeft(self.this,arg0.this)
         return val
     def SetMinMarginBottomRight(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetMinMarginBottomRight(self.this,arg0.this)
+        val = cmndlgsc.wxPageSetupDialogData_SetMinMarginBottomRight(self.this,arg0.this)
         return val
-    def SetOrientation(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetOrientation(self.this,arg0)
+    def SetPaperId(self,arg0):
+        val = cmndlgsc.wxPageSetupDialogData_SetPaperId(self.this,arg0)
         return val
-    def SetDefaultMinMargins(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetDefaultMinMargins(self.this,arg0)
+    def SetPaperSize(self,arg0):
+        val = cmndlgsc.wxPageSetupDialogData_SetPaperSize(self.this,arg0.this)
         return val
-    def SetDefaultInfo(self,arg0):
-        val = cmndlgsc.wxPageSetupData_SetDefaultInfo(self.this,arg0)
+    def SetPrintData(self,arg0):
+        val = cmndlgsc.wxPageSetupDialogData_SetPrintData(self.this,arg0.this)
         return val
     def __repr__(self):
-        return "<C wxPageSetupData instance>"
-class wxPageSetupData(wxPageSetupDataPtr):
+        return "<C wxPageSetupDialogData instance>"
+class wxPageSetupDialogData(wxPageSetupDialogDataPtr):
     def __init__(self) :
-        self.this = cmndlgsc.new_wxPageSetupData()
+        self.this = cmndlgsc.new_wxPageSetupDialogData()
         self.thisown = 1
 
 
@@ -429,7 +436,7 @@ class wxPageSetupDialogPtr(wxDialogPtr):
         self.thisown = 0
     def GetPageSetupData(self):
         val = cmndlgsc.wxPageSetupDialog_GetPageSetupData(self.this)
-        val = wxPageSetupDataPtr(val)
+        val = wxPageSetupDialogDataPtr(val)
         return val
     def ShowModal(self):
         val = cmndlgsc.wxPageSetupDialog_ShowModal(self.this)
@@ -449,81 +456,85 @@ class wxPageSetupDialog(wxPageSetupDialogPtr):
 
 
 
-class wxPrintDataPtr :
+class wxPrintDialogDataPtr :
     def __init__(self,this):
         self.this = this
         self.thisown = 0
     def __del__(self):
         if self.thisown == 1 :
-            cmndlgsc.delete_wxPrintData(self.this)
+            cmndlgsc.delete_wxPrintDialogData(self.this)
     def EnableHelp(self,arg0):
-        val = cmndlgsc.wxPrintData_EnableHelp(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_EnableHelp(self.this,arg0)
         return val
     def EnablePageNumbers(self,arg0):
-        val = cmndlgsc.wxPrintData_EnablePageNumbers(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_EnablePageNumbers(self.this,arg0)
         return val
     def EnablePrintToFile(self,arg0):
-        val = cmndlgsc.wxPrintData_EnablePrintToFile(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_EnablePrintToFile(self.this,arg0)
         return val
     def EnableSelection(self,arg0):
-        val = cmndlgsc.wxPrintData_EnableSelection(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_EnableSelection(self.this,arg0)
         return val
     def GetAllPages(self):
-        val = cmndlgsc.wxPrintData_GetAllPages(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetAllPages(self.this)
         return val
     def GetCollate(self):
-        val = cmndlgsc.wxPrintData_GetCollate(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetCollate(self.this)
         return val
     def GetFromPage(self):
-        val = cmndlgsc.wxPrintData_GetFromPage(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetFromPage(self.this)
         return val
     def GetMaxPage(self):
-        val = cmndlgsc.wxPrintData_GetMaxPage(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetMaxPage(self.this)
         return val
     def GetMinPage(self):
-        val = cmndlgsc.wxPrintData_GetMinPage(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetMinPage(self.this)
         return val
     def GetNoCopies(self):
-        val = cmndlgsc.wxPrintData_GetNoCopies(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetNoCopies(self.this)
         return val
-    def GetOrientation(self):
-        val = cmndlgsc.wxPrintData_GetOrientation(self.this)
+    def GetPrintData(self):
+        val = cmndlgsc.wxPrintDialogData_GetPrintData(self.this)
+        val = wxPrintDataPtr(val)
+        return val
+    def GetPrintToFile(self):
+        val = cmndlgsc.wxPrintDialogData_GetPrintToFile(self.this)
         return val
     def GetToPage(self):
-        val = cmndlgsc.wxPrintData_GetToPage(self.this)
+        val = cmndlgsc.wxPrintDialogData_GetToPage(self.this)
         return val
     def SetCollate(self,arg0):
-        val = cmndlgsc.wxPrintData_SetCollate(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetCollate(self.this,arg0)
         return val
     def SetFromPage(self,arg0):
-        val = cmndlgsc.wxPrintData_SetFromPage(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetFromPage(self.this,arg0)
         return val
     def SetMaxPage(self,arg0):
-        val = cmndlgsc.wxPrintData_SetMaxPage(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetMaxPage(self.this,arg0)
         return val
     def SetMinPage(self,arg0):
-        val = cmndlgsc.wxPrintData_SetMinPage(self.this,arg0)
-        return val
-    def SetOrientation(self,arg0):
-        val = cmndlgsc.wxPrintData_SetOrientation(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetMinPage(self.this,arg0)
         return val
     def SetNoCopies(self,arg0):
-        val = cmndlgsc.wxPrintData_SetNoCopies(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetNoCopies(self.this,arg0)
+        return val
+    def SetPrintData(self,arg0):
+        val = cmndlgsc.wxPrintDialogData_SetPrintData(self.this,arg0.this)
         return val
     def SetPrintToFile(self,arg0):
-        val = cmndlgsc.wxPrintData_SetPrintToFile(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetPrintToFile(self.this,arg0)
         return val
     def SetSetupDialog(self,arg0):
-        val = cmndlgsc.wxPrintData_SetSetupDialog(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetSetupDialog(self.this,arg0)
         return val
     def SetToPage(self,arg0):
-        val = cmndlgsc.wxPrintData_SetToPage(self.this,arg0)
+        val = cmndlgsc.wxPrintDialogData_SetToPage(self.this,arg0)
         return val
     def __repr__(self):
-        return "<C wxPrintData instance>"
-class wxPrintData(wxPrintDataPtr):
+        return "<C wxPrintDialogData instance>"
+class wxPrintDialogData(wxPrintDialogDataPtr):
     def __init__(self) :
-        self.this = cmndlgsc.new_wxPrintData()
+        self.this = cmndlgsc.new_wxPrintDialogData()
         self.thisown = 1
 
 
@@ -533,9 +544,9 @@ class wxPrintDialogPtr(wxDialogPtr):
     def __init__(self,this):
         self.this = this
         self.thisown = 0
-    def GetPrintData(self):
-        val = cmndlgsc.wxPrintDialog_GetPrintData(self.this)
-        val = wxPrintDataPtr(val)
+    def GetPrintDialogData(self):
+        val = cmndlgsc.wxPrintDialog_GetPrintDialogData(self.this)
+        val = wxPrintDialogDataPtr(val)
         return val
     def GetPrintDC(self):
         val = cmndlgsc.wxPrintDialog_GetPrintDC(self.this)
index ae2363048dbdb0a7b1b0aae4e48d5838e6180f9a..a01c2808018f0a41717aeafefd3a7182b4bd19a8 100644 (file)
@@ -56,6 +56,7 @@ extern PyObject *SWIG_newvarlink(void);
 #include "helpers.h"
 #include <wx/slider.h>
 #include <wx/spinbutt.h>
+#include <wx/dynarray.h>
 
 #ifdef __WXMSW__
 #if wxUSE_OWNER_DRAWN
@@ -167,8 +168,12 @@ static PyObject *_wrap_wxControl_Command(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxControl_Command(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxControl_Command(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -189,8 +194,12 @@ static PyObject *_wrap_wxControl_GetLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxControl_GetLabel(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxControl_GetLabel(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -221,10 +230,14 @@ static PyObject *_wrap_wxControl_SetLabel(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxControl_SetLabel(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxControl_SetLabel(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -290,7 +303,7 @@ static PyObject *_wrap_new_wxButton(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -310,8 +323,12 @@ static PyObject *_wrap_new_wxButton(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxButton *)new_wxButton(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxButton_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxButton *)new_wxButton(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxButton_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -335,8 +352,12 @@ static PyObject *_wrap_wxButton_SetDefault(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxButton_SetDefault(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxButton_SetDefault(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -425,8 +446,12 @@ static PyObject *_wrap_new_wxBitmapButton(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxBitmapButton *)new_wxBitmapButton(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmapButton_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmapButton *)new_wxBitmapButton(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmapButton_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -448,9 +473,13 @@ static PyObject *_wrap_wxBitmapButton_GetBitmapLabel(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxBitmap & _result_ref = wxBitmapButton_GetBitmapLabel(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap & _result_ref = wxBitmapButton_GetBitmapLabel(_arg0);
     _result = (wxBitmap *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -472,9 +501,13 @@ static PyObject *_wrap_wxBitmapButton_GetBitmapDisabled(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxBitmap & _result_ref = wxBitmapButton_GetBitmapDisabled(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap & _result_ref = wxBitmapButton_GetBitmapDisabled(_arg0);
     _result = (wxBitmap *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -496,9 +529,13 @@ static PyObject *_wrap_wxBitmapButton_GetBitmapFocus(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxBitmap & _result_ref = wxBitmapButton_GetBitmapFocus(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap & _result_ref = wxBitmapButton_GetBitmapFocus(_arg0);
     _result = (wxBitmap *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -520,9 +557,13 @@ static PyObject *_wrap_wxBitmapButton_GetBitmapSelected(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxBitmap & _result_ref = wxBitmapButton_GetBitmapSelected(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap & _result_ref = wxBitmapButton_GetBitmapSelected(_arg0);
     _result = (wxBitmap *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -550,8 +591,12 @@ static PyObject *_wrap_wxBitmapButton_SetBitmapDisabled(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxBitmapButton_SetBitmapDisabled(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmapButton_SetBitmapDisabled(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -579,8 +624,12 @@ static PyObject *_wrap_wxBitmapButton_SetBitmapFocus(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxBitmapButton_SetBitmapFocus(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmapButton_SetBitmapFocus(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -608,8 +657,12 @@ static PyObject *_wrap_wxBitmapButton_SetBitmapSelected(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxBitmapButton_SetBitmapSelected(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmapButton_SetBitmapSelected(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -637,8 +690,12 @@ static PyObject *_wrap_wxBitmapButton_SetBitmapLabel(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxBitmapButton_SetBitmapLabel(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmapButton_SetBitmapLabel(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -700,7 +757,7 @@ static PyObject *_wrap_new_wxCheckBox(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -720,8 +777,12 @@ static PyObject *_wrap_new_wxCheckBox(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxCheckBox *)new_wxCheckBox(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxCheckBox_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxCheckBox *)new_wxCheckBox(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxCheckBox_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -746,8 +807,12 @@ static PyObject *_wrap_wxCheckBox_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxCheckBox_GetValue(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCheckBox_GetValue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -769,8 +834,12 @@ static PyObject *_wrap_wxCheckBox_SetValue(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxCheckBox_SetValue(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCheckBox_SetValue(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -854,10 +923,19 @@ static PyObject *_wrap_new_wxChoice(PyObject *self, PyObject *args) {
         }
     }
 {
-    _arg4 = PyList_Size(_obj5);
+    if (_obj5) {
+        _arg4 = PyList_Size(_obj5);
+    }
+    else {
+        _arg4 = 0;
+    }
 }
-    _result = (wxChoice *)new_wxChoice(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,_arg8);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxChoice_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxChoice *)new_wxChoice(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxChoice_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     delete [] _arg5;
@@ -887,10 +965,14 @@ static PyObject *_wrap_wxChoice_Append(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxChoice_Append(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxChoice_Append(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -914,8 +996,12 @@ static PyObject *_wrap_wxChoice_Clear(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxChoice_Clear(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxChoice_Clear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -943,10 +1029,14 @@ static PyObject *_wrap_wxChoice_FindString(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (int )wxChoice_FindString(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxChoice_FindString(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -970,8 +1060,12 @@ static PyObject *_wrap_wxChoice_GetColumns(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxChoice_GetColumns(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxChoice_GetColumns(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -991,8 +1085,12 @@ static PyObject *_wrap_wxChoice_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxChoice_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxChoice_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1013,8 +1111,12 @@ static PyObject *_wrap_wxChoice_GetString(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxChoice_GetString(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxChoice_GetString(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1039,8 +1141,12 @@ static PyObject *_wrap_wxChoice_GetStringSelection(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = new wxString (wxChoice_GetStringSelection(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxChoice_GetStringSelection(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1065,8 +1171,12 @@ static PyObject *_wrap_wxChoice_Number(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxChoice_Number(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxChoice_Number(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1086,8 +1196,12 @@ static PyObject *_wrap_wxChoice_SetColumns(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxChoice_SetColumns(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxChoice_SetColumns(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1108,8 +1222,12 @@ static PyObject *_wrap_wxChoice_SetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxChoice_SetSelection(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxChoice_SetSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1136,10 +1254,14 @@ static PyObject *_wrap_wxChoice_SetStringSelection(PyObject *self, PyObject *arg
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxChoice_SetStringSelection(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxChoice_SetStringSelection(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1228,10 +1350,19 @@ static PyObject *_wrap_new_wxComboBox(PyObject *self, PyObject *args) {
         }
     }
 {
-    _arg5 = PyList_Size(_obj6);
+    if (_obj6) {
+        _arg5 = PyList_Size(_obj6);
+    }
+    else {
+        _arg5 = 0;
+    }
 }
-    _result = (wxComboBox *)new_wxComboBox(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,_arg6,_arg7,*_arg8,_arg9);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxComboBox_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxComboBox *)new_wxComboBox(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,_arg6,_arg7,*_arg8,_arg9);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxComboBox_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     delete [] _arg6;
@@ -1261,10 +1392,14 @@ static PyObject *_wrap_wxComboBox_Append(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxComboBox_Append(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Append(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1288,8 +1423,12 @@ static PyObject *_wrap_wxComboBox_Clear(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_Clear(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Clear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1309,8 +1448,12 @@ static PyObject *_wrap_wxComboBox_Copy(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_Copy(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Copy(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1330,8 +1473,12 @@ static PyObject *_wrap_wxComboBox_Cut(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_Cut(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Cut(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1352,8 +1499,12 @@ static PyObject *_wrap_wxComboBox_Delete(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_Delete(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Delete(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1381,10 +1532,14 @@ static PyObject *_wrap_wxComboBox_FindString(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (int )wxComboBox_FindString(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxComboBox_FindString(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1408,8 +1563,12 @@ static PyObject *_wrap_wxComboBox_GetInsertionPoint(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (long )wxComboBox_GetInsertionPoint(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxComboBox_GetInsertionPoint(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1429,8 +1588,12 @@ static PyObject *_wrap_wxComboBox_GetLastPosition(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (long )wxComboBox_GetLastPosition(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxComboBox_GetLastPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1450,8 +1613,12 @@ static PyObject *_wrap_wxComboBox_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxComboBox_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxComboBox_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1472,8 +1639,12 @@ static PyObject *_wrap_wxComboBox_GetString(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxComboBox_GetString(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxComboBox_GetString(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1498,8 +1669,12 @@ static PyObject *_wrap_wxComboBox_GetStringSelection(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = new wxString (wxComboBox_GetStringSelection(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxComboBox_GetStringSelection(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1524,8 +1699,12 @@ static PyObject *_wrap_wxComboBox_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxComboBox_GetValue(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxComboBox_GetValue(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1550,8 +1729,12 @@ static PyObject *_wrap_wxComboBox_Number(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxComboBox_Number(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxComboBox_Number(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1570,8 +1753,12 @@ static PyObject *_wrap_wxComboBox_Paste(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_Paste(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Paste(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1600,10 +1787,14 @@ static PyObject *_wrap_wxComboBox_Replace(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
-    wxComboBox_Replace(_arg0,_arg1,_arg2,*_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Replace(_arg0,_arg1,_arg2,*_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj3)
@@ -1629,8 +1820,12 @@ static PyObject *_wrap_wxComboBox_Remove(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_Remove(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_Remove(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1651,8 +1846,12 @@ static PyObject *_wrap_wxComboBox_SetInsertionPoint(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxComboBox_SetInsertionPoint(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_SetInsertionPoint(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1672,8 +1871,12 @@ static PyObject *_wrap_wxComboBox_SetInsertionPointEnd(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxComboBox_SetInsertionPointEnd(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_SetInsertionPointEnd(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1697,8 +1900,12 @@ static PyObject *_wrap_wxComboBox_SetSelection(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxComboBox_SetSelection(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_SetSelection(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1720,8 +1927,12 @@ static PyObject *_wrap_wxComboBox_SetMark(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxComboBox_SetMark(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_SetMark(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1748,10 +1959,14 @@ static PyObject *_wrap_wxComboBox_SetValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxComboBox_SetValue(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxComboBox_SetValue(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1829,8 +2044,12 @@ static PyObject *_wrap_new_wxGauge(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGauge *)new_wxGauge(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGauge_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGauge *)new_wxGauge(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGauge_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1851,8 +2070,12 @@ static PyObject *_wrap_wxGauge_GetBezelFace(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGauge_GetBezelFace(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGauge_GetBezelFace(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1872,8 +2095,12 @@ static PyObject *_wrap_wxGauge_GetRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGauge_GetRange(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGauge_GetRange(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1893,8 +2120,12 @@ static PyObject *_wrap_wxGauge_GetShadowWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGauge_GetShadowWidth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGauge_GetShadowWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1914,8 +2145,12 @@ static PyObject *_wrap_wxGauge_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGauge_GetValue(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGauge_GetValue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1935,8 +2170,12 @@ static PyObject *_wrap_wxGauge_SetBezelFace(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGauge_SetBezelFace(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGauge_SetBezelFace(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1957,8 +2196,12 @@ static PyObject *_wrap_wxGauge_SetRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGauge_SetRange(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGauge_SetRange(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1979,8 +2222,12 @@ static PyObject *_wrap_wxGauge_SetShadowWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGauge_SetShadowWidth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGauge_SetShadowWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2001,8 +2248,12 @@ static PyObject *_wrap_wxGauge_SetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGauge_SetValue(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGauge_SetValue(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2062,7 +2313,7 @@ static PyObject *_wrap_new_wxStaticBox(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -2076,8 +2327,12 @@ static PyObject *_wrap_new_wxStaticBox(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxStaticBox *)new_wxStaticBox(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStaticBox_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxStaticBox *)new_wxStaticBox(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStaticBox_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -2141,7 +2396,7 @@ static PyObject *_wrap_new_wxStaticText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -2155,8 +2410,12 @@ static PyObject *_wrap_new_wxStaticText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxStaticText *)new_wxStaticText(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStaticText_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxStaticText *)new_wxStaticText(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStaticText_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -2181,8 +2440,12 @@ static PyObject *_wrap_wxStaticText_GetLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxStaticText_GetLabel(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxStaticText_GetLabel(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2213,10 +2476,14 @@ static PyObject *_wrap_wxStaticText_SetLabel(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxStaticText_SetLabel(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStaticText_SetLabel(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2304,10 +2571,19 @@ static PyObject *_wrap_new_wxListBox(PyObject *self, PyObject *args) {
         }
     }
 {
-    _arg4 = PyList_Size(_obj5);
+    if (_obj5) {
+        _arg4 = PyList_Size(_obj5);
+    }
+    else {
+        _arg4 = 0;
+    }
 }
-    _result = (wxListBox *)new_wxListBox(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,_arg8);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListBox_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxListBox *)new_wxListBox(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListBox_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     delete [] _arg5;
@@ -2337,10 +2613,14 @@ static PyObject *_wrap_wxListBox_Append(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxListBox_Append(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_Append(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2364,8 +2644,12 @@ static PyObject *_wrap_wxListBox_Clear(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxListBox_Clear(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_Clear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2386,8 +2670,12 @@ static PyObject *_wrap_wxListBox_Delete(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxListBox_Delete(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_Delete(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2408,8 +2696,12 @@ static PyObject *_wrap_wxListBox_Deselect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxListBox_Deselect(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_Deselect(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2437,10 +2729,14 @@ static PyObject *_wrap_wxListBox_FindString(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (int )wxListBox_FindString(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListBox_FindString(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -2464,8 +2760,47 @@ static PyObject *_wrap_wxListBox_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListBox_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListBox_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyObject * wxListBox_GetSelections(wxListBox *self) {
+          wxArrayInt lst;
+          self->GetSelections(lst);
+          PyObject *tup = PyTuple_New(lst.GetCount());
+          for(int i=0; i<lst.GetCount(); i++) {
+              PyTuple_SetItem(tup, i, PyInt_FromLong(lst[i]));
+          }
+          return tup;
+      }
+static PyObject *_wrap_wxListBox_GetSelections(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    PyObject * _result;
+    wxListBox * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxListBox_GetSelections",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxListBox_GetSelections. Expected _wxListBox_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxListBox_GetSelections(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
+  _resultobj = _result;
+}
     return _resultobj;
 }
 
@@ -2486,8 +2821,12 @@ static PyObject *_wrap_wxListBox_GetString(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxListBox_GetString(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxListBox_GetString(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2512,8 +2851,12 @@ static PyObject *_wrap_wxListBox_GetStringSelection(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = new wxString (wxListBox_GetStringSelection(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxListBox_GetStringSelection(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2538,8 +2881,12 @@ static PyObject *_wrap_wxListBox_Number(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListBox_Number(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListBox_Number(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2560,8 +2907,12 @@ static PyObject *_wrap_wxListBox_Selected(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListBox_Selected(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListBox_Selected(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2591,10 +2942,19 @@ static PyObject *_wrap_wxListBox_Set(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg1 = PyList_Size(_obj2);
+    if (_obj2) {
+        _arg1 = PyList_Size(_obj2);
+    }
+    else {
+        _arg1 = 0;
+    }
 }
-    wxListBox_Set(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_Set(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     delete [] _arg2;
@@ -2618,8 +2978,12 @@ static PyObject *_wrap_wxListBox_SetFirstItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxListBox_SetFirstItem(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_SetFirstItem(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2646,10 +3010,14 @@ static PyObject *_wrap_wxListBox_SetFirstItemStr(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxListBox_SetFirstItemStr(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_SetFirstItemStr(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2677,8 +3045,12 @@ static PyObject *_wrap_wxListBox_SetSelection(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxListBox_SetSelection(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_SetSelection(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2706,10 +3078,14 @@ static PyObject *_wrap_wxListBox_SetString(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxListBox_SetString(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_SetString(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -2742,11 +3118,15 @@ static PyObject *_wrap_wxListBox_SetStringSelection(PyObject *self, PyObject *ar
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     _arg2 = (bool ) tempbool2;
-    wxListBox_SetStringSelection(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListBox_SetStringSelection(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2842,10 +3222,19 @@ static PyObject *_wrap_new_wxCheckListBox(PyObject *self, PyObject *args) {
         }
     }
 {
-    _arg4 = PyList_Size(_obj5);
+    if (_obj5) {
+        _arg4 = PyList_Size(_obj5);
+    }
+    else {
+        _arg4 = 0;
+    }
 }
-    _result = (wxCheckListBox *)new_wxCheckListBox(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,_arg8);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxCheckListBox_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxCheckListBox *)new_wxCheckListBox(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxCheckListBox_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     delete [] _arg5;
@@ -2870,8 +3259,12 @@ static PyObject *_wrap_wxCheckListBox_IsChecked(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxCheckListBox_IsChecked(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCheckListBox_IsChecked(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2894,8 +3287,12 @@ static PyObject *_wrap_wxCheckListBox_Check(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxCheckListBox_Check(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCheckListBox_Check(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2916,8 +3313,12 @@ static PyObject *_wrap_wxCheckListBox_GetItemHeight(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxCheckListBox_GetItemHeight(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxCheckListBox_GetItemHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2990,8 +3391,12 @@ static PyObject *_wrap_new_wxTextCtrl(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxTextCtrl *)new_wxTextCtrl(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTextCtrl *)new_wxTextCtrl(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3011,8 +3416,12 @@ static PyObject *_wrap_wxTextCtrl_Clear(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_Clear(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_Clear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3032,8 +3441,12 @@ static PyObject *_wrap_wxTextCtrl_Copy(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_Copy(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_Copy(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3053,8 +3466,12 @@ static PyObject *_wrap_wxTextCtrl_Cut(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_Cut(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_Cut(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3074,8 +3491,12 @@ static PyObject *_wrap_wxTextCtrl_DiscardEdits(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_DiscardEdits(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_DiscardEdits(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3096,8 +3517,12 @@ static PyObject *_wrap_wxTextCtrl_GetInsertionPoint(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (long )wxTextCtrl_GetInsertionPoint(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxTextCtrl_GetInsertionPoint(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3117,8 +3542,12 @@ static PyObject *_wrap_wxTextCtrl_GetLastPosition(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (long )wxTextCtrl_GetLastPosition(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxTextCtrl_GetLastPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3139,8 +3568,12 @@ static PyObject *_wrap_wxTextCtrl_GetLineLength(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxTextCtrl_GetLineLength(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxTextCtrl_GetLineLength(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3161,8 +3594,12 @@ static PyObject *_wrap_wxTextCtrl_GetLineText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxTextCtrl_GetLineText(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxTextCtrl_GetLineText(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -3187,8 +3624,12 @@ static PyObject *_wrap_wxTextCtrl_GetNumberOfLines(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxTextCtrl_GetNumberOfLines(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxTextCtrl_GetNumberOfLines(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3208,8 +3649,12 @@ static PyObject *_wrap_wxTextCtrl_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxTextCtrl_GetValue(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxTextCtrl_GetValue(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -3234,8 +3679,12 @@ static PyObject *_wrap_wxTextCtrl_IsModified(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxTextCtrl_IsModified(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTextCtrl_IsModified(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3262,10 +3711,14 @@ static PyObject *_wrap_wxTextCtrl_LoadFile(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxTextCtrl_LoadFile(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTextCtrl_LoadFile(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -3288,8 +3741,12 @@ static PyObject *_wrap_wxTextCtrl_Paste(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_Paste(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_Paste(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3320,8 +3777,12 @@ static PyObject *_wrap_wxTextCtrl_PositionToXY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_PositionToXY(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_PositionToXY(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3353,8 +3814,12 @@ static PyObject *_wrap_wxTextCtrl_Remove(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_Remove(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_Remove(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3383,10 +3848,14 @@ static PyObject *_wrap_wxTextCtrl_Replace(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
-    wxTextCtrl_Replace(_arg0,_arg1,_arg2,*_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_Replace(_arg0,_arg1,_arg2,*_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj3)
@@ -3418,10 +3887,14 @@ static PyObject *_wrap_wxTextCtrl_SaveFile(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxTextCtrl_SaveFile(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTextCtrl_SaveFile(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -3447,8 +3920,12 @@ static PyObject *_wrap_wxTextCtrl_SetEditable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxTextCtrl_SetEditable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_SetEditable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3469,8 +3946,12 @@ static PyObject *_wrap_wxTextCtrl_SetInsertionPoint(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxTextCtrl_SetInsertionPoint(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_SetInsertionPoint(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3490,8 +3971,12 @@ static PyObject *_wrap_wxTextCtrl_SetInsertionPointEnd(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxTextCtrl_SetInsertionPointEnd(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_SetInsertionPointEnd(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3513,8 +3998,12 @@ static PyObject *_wrap_wxTextCtrl_SetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_SetSelection(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_SetSelection(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3541,10 +4030,14 @@ static PyObject *_wrap_wxTextCtrl_SetValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxTextCtrl_SetValue(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_SetValue(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -3569,8 +4062,12 @@ static PyObject *_wrap_wxTextCtrl_ShowPosition(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTextCtrl_ShowPosition(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_ShowPosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3597,10 +4094,52 @@ static PyObject *_wrap_wxTextCtrl_WriteText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxTextCtrl_WriteText(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_WriteText(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxTextCtrl_AppendText(_swigobj,_swigarg0)  (_swigobj->AppendText(_swigarg0))
+static PyObject *_wrap_wxTextCtrl_AppendText(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxTextCtrl * _arg0;
+    wxString * _arg1;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO:wxTextCtrl_AppendText",&_argc0,&_obj1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTextCtrl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTextCtrl_AppendText. Expected _wxTextCtrl_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTextCtrl_AppendText(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -3627,8 +4166,12 @@ static PyObject *_wrap_wxTextCtrl_XYToPosition(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxTextCtrl_XYToPosition(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxTextCtrl_XYToPosition(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3700,8 +4243,12 @@ static PyObject *_wrap_new_wxScrollBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxScrollBar *)new_wxScrollBar(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScrollBar *)new_wxScrollBar(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3722,8 +4269,12 @@ static PyObject *_wrap_wxScrollBar_GetRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxScrollBar_GetRange(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollBar_GetRange(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3743,8 +4294,12 @@ static PyObject *_wrap_wxScrollBar_GetPageSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxScrollBar_GetPageSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollBar_GetPageSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3764,8 +4319,12 @@ static PyObject *_wrap_wxScrollBar_GetThumbPosition(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxScrollBar_GetThumbPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollBar_GetThumbPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3785,8 +4344,12 @@ static PyObject *_wrap_wxScrollBar_GetThumbSize(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxScrollBar_GetThumbSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollBar_GetThumbSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3806,8 +4369,12 @@ static PyObject *_wrap_wxScrollBar_SetThumbPosition(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxScrollBar_SetThumbPosition(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrollBar_SetThumbPosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3834,8 +4401,12 @@ static PyObject *_wrap_wxScrollBar_SetScrollbar(PyObject *self, PyObject *args)
         }
     }
     _arg5 = (bool ) tempbool5;
-    wxScrollBar_SetScrollbar(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrollBar_SetScrollbar(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3900,8 +4471,12 @@ static PyObject *_wrap_new_wxSpinButton(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSpinButton *)new_wxSpinButton(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSpinButton_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSpinButton *)new_wxSpinButton(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSpinButton_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3922,8 +4497,12 @@ static PyObject *_wrap_wxSpinButton_GetMax(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSpinButton_GetMax(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSpinButton_GetMax(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3943,8 +4522,12 @@ static PyObject *_wrap_wxSpinButton_GetMin(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSpinButton_GetMin(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSpinButton_GetMin(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3964,8 +4547,12 @@ static PyObject *_wrap_wxSpinButton_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSpinButton_GetValue(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSpinButton_GetValue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3986,8 +4573,12 @@ static PyObject *_wrap_wxSpinButton_SetRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSpinButton_SetRange(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSpinButton_SetRange(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4008,8 +4599,12 @@ static PyObject *_wrap_wxSpinButton_SetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSpinButton_SetValue(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSpinButton_SetValue(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4082,8 +4677,12 @@ static PyObject *_wrap_new_wxStaticBitmap(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxStaticBitmap *)new_wxStaticBitmap(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStaticBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxStaticBitmap *)new_wxStaticBitmap(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStaticBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4105,9 +4704,13 @@ static PyObject *_wrap_wxStaticBitmap_GetBitmap(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxBitmap & _result_ref = wxStaticBitmap_GetBitmap(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        const wxBitmap & _result_ref = wxStaticBitmap_GetBitmap(_arg0);
     _result = (wxBitmap *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4135,8 +4738,12 @@ static PyObject *_wrap_wxStaticBitmap_SetBitmap(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxStaticBitmap_SetBitmap(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStaticBitmap_SetBitmap(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4202,7 +4809,7 @@ static PyObject *_wrap_new_wxRadioBox(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -4230,10 +4837,19 @@ static PyObject *_wrap_new_wxRadioBox(PyObject *self, PyObject *args) {
         }
     }
 {
-    _arg5 = PyList_Size(_obj6);
+    if (_obj6) {
+        _arg5 = PyList_Size(_obj6);
+    }
+    else {
+        _arg5 = 0;
+    }
 }
-    _result = (wxRadioBox *)new_wxRadioBox(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6,_arg7,_arg8,*_arg9,_arg10);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRadioBox_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRadioBox *)new_wxRadioBox(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6,_arg7,_arg8,*_arg9,_arg10);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRadioBox_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -4263,8 +4879,12 @@ static PyObject *_wrap_wxRadioBox_Enable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxRadioBox_Enable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_Enable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4288,8 +4908,12 @@ static PyObject *_wrap_wxRadioBox_EnableItem(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxRadioBox_EnableItem(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_EnableItem(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4317,10 +4941,14 @@ static PyObject *_wrap_wxRadioBox_FindString(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (int )wxRadioBox_FindString(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxRadioBox_FindString(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -4345,8 +4973,12 @@ static PyObject *_wrap_wxRadioBox_GetItemLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxRadioBox_GetItemLabel(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxRadioBox_GetItemLabel(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -4371,8 +5003,12 @@ static PyObject *_wrap_wxRadioBox_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxRadioBox_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxRadioBox_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4393,8 +5029,12 @@ static PyObject *_wrap_wxRadioBox_GetString(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxRadioBox_GetString(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxRadioBox_GetString(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -4419,8 +5059,12 @@ static PyObject *_wrap_wxRadioBox_GetStringSelection(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = new wxString (wxRadioBox_GetStringSelection(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxRadioBox_GetStringSelection(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -4445,8 +5089,12 @@ static PyObject *_wrap_wxRadioBox_Number(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxRadioBox_Number(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxRadioBox_Number(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4472,10 +5120,14 @@ static PyObject *_wrap_wxRadioBox_SetLabel(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxRadioBox_SetLabel(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_SetLabel(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -4507,10 +5159,14 @@ static PyObject *_wrap_wxRadioBox_SetItemLabel(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxRadioBox_SetItemLabel(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_SetItemLabel(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -4535,8 +5191,12 @@ static PyObject *_wrap_wxRadioBox_SetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRadioBox_SetSelection(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_SetSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4563,10 +5223,14 @@ static PyObject *_wrap_wxRadioBox_SetStringSelection(PyObject *self, PyObject *a
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxRadioBox_SetStringSelection(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_SetStringSelection(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -4593,8 +5257,12 @@ static PyObject *_wrap_wxRadioBox_Show(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxRadioBox_Show(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_Show(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4618,8 +5286,12 @@ static PyObject *_wrap_wxRadioBox_ShowItem(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxRadioBox_ShowItem(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioBox_ShowItem(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4681,7 +5353,7 @@ static PyObject *_wrap_new_wxRadioButton(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -4701,8 +5373,12 @@ static PyObject *_wrap_new_wxRadioButton(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxRadioButton *)new_wxRadioButton(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRadioButton_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRadioButton *)new_wxRadioButton(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,*_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRadioButton_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -4727,8 +5403,12 @@ static PyObject *_wrap_wxRadioButton_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxRadioButton_GetValue(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxRadioButton_GetValue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4750,8 +5430,12 @@ static PyObject *_wrap_wxRadioButton_SetValue(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxRadioButton_SetValue(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRadioButton_SetValue(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4827,8 +5511,12 @@ static PyObject *_wrap_new_wxSlider(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSlider *)new_wxSlider(_arg0,_arg1,_arg2,_arg3,_arg4,*_arg5,*_arg6,_arg7,*_arg8,_arg9);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSlider_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSlider *)new_wxSlider(_arg0,_arg1,_arg2,_arg3,_arg4,*_arg5,*_arg6,_arg7,*_arg8,_arg9);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSlider_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4848,8 +5536,12 @@ static PyObject *_wrap_wxSlider_ClearSel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_ClearSel(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_ClearSel(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4869,8 +5561,12 @@ static PyObject *_wrap_wxSlider_ClearTicks(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_ClearTicks(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_ClearTicks(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4891,8 +5587,12 @@ static PyObject *_wrap_wxSlider_GetLineSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetLineSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetLineSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4912,8 +5612,12 @@ static PyObject *_wrap_wxSlider_GetMax(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetMax(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetMax(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4933,8 +5637,12 @@ static PyObject *_wrap_wxSlider_GetMin(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetMin(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetMin(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4954,8 +5662,12 @@ static PyObject *_wrap_wxSlider_GetPageSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetPageSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetPageSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4975,8 +5687,12 @@ static PyObject *_wrap_wxSlider_GetSelEnd(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetSelEnd(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetSelEnd(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4996,8 +5712,12 @@ static PyObject *_wrap_wxSlider_GetSelStart(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetSelStart(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetSelStart(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5017,8 +5737,12 @@ static PyObject *_wrap_wxSlider_GetThumbLength(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetThumbLength(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetThumbLength(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5038,8 +5762,12 @@ static PyObject *_wrap_wxSlider_GetTickFreq(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetTickFreq(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetTickFreq(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5059,8 +5787,12 @@ static PyObject *_wrap_wxSlider_GetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxSlider_GetValue(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSlider_GetValue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5081,8 +5813,12 @@ static PyObject *_wrap_wxSlider_SetRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetRange(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetRange(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5104,8 +5840,12 @@ static PyObject *_wrap_wxSlider_SetTickFreq(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetTickFreq(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetTickFreq(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5126,8 +5866,12 @@ static PyObject *_wrap_wxSlider_SetLineSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetLineSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetLineSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5148,8 +5892,12 @@ static PyObject *_wrap_wxSlider_SetPageSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetPageSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetPageSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5171,8 +5919,12 @@ static PyObject *_wrap_wxSlider_SetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetSelection(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetSelection(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5193,8 +5945,12 @@ static PyObject *_wrap_wxSlider_SetThumbLength(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetThumbLength(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetThumbLength(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5215,8 +5971,12 @@ static PyObject *_wrap_wxSlider_SetTick(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetTick(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetTick(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5237,8 +5997,12 @@ static PyObject *_wrap_wxSlider_SetValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSlider_SetValue(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSlider_SetValue(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -5299,6 +6063,7 @@ static PyMethodDef controlscMethods[] = {
         { "wxScrollBar_GetRange", _wrap_wxScrollBar_GetRange, 1 },
         { "new_wxScrollBar", _wrap_new_wxScrollBar, 1 },
         { "wxTextCtrl_XYToPosition", _wrap_wxTextCtrl_XYToPosition, 1 },
+        { "wxTextCtrl_AppendText", _wrap_wxTextCtrl_AppendText, 1 },
         { "wxTextCtrl_WriteText", _wrap_wxTextCtrl_WriteText, 1 },
         { "wxTextCtrl_ShowPosition", _wrap_wxTextCtrl_ShowPosition, 1 },
         { "wxTextCtrl_SetValue", _wrap_wxTextCtrl_SetValue, 1 },
@@ -5338,6 +6103,7 @@ static PyMethodDef controlscMethods[] = {
         { "wxListBox_Number", _wrap_wxListBox_Number, 1 },
         { "wxListBox_GetStringSelection", _wrap_wxListBox_GetStringSelection, 1 },
         { "wxListBox_GetString", _wrap_wxListBox_GetString, 1 },
+        { "wxListBox_GetSelections", _wrap_wxListBox_GetSelections, 1 },
         { "wxListBox_GetSelection", _wrap_wxListBox_GetSelection, 1 },
         { "wxListBox_FindString", _wrap_wxListBox_FindString, 1 },
         { "wxListBox_Deselect", _wrap_wxListBox_Deselect, 1 },
@@ -5498,6 +6264,7 @@ SWIGEXPORT(void,initcontrolsc)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -5527,6 +6294,7 @@ SWIGEXPORT(void,initcontrolsc)() {
         SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
index 5b1b0c78bb8e5b03c472a5e5179f072594e7ee1a..3e437cc9e976729a8cc03a35f4342c34d303de8c 100644 (file)
@@ -383,6 +383,9 @@ class wxListBoxPtr(wxControlPtr):
     def GetSelection(self):
         val = controlsc.wxListBox_GetSelection(self.this)
         return val
+    def GetSelections(self):
+        val = controlsc.wxListBox_GetSelections(self.this)
+        return val
     def GetString(self,arg0):
         val = controlsc.wxListBox_GetString(self.this,arg0)
         return val
@@ -536,6 +539,9 @@ class wxTextCtrlPtr(wxControlPtr):
     def WriteText(self,arg0):
         val = controlsc.wxTextCtrl_WriteText(self.this,arg0)
         return val
+    def AppendText(self,arg0):
+        val = controlsc.wxTextCtrl_AppendText(self.this,arg0)
+        return val
     def XYToPosition(self,arg0,arg1):
         val = controlsc.wxTextCtrl_XYToPosition(self.this,arg0,arg1)
         return val
index 1fc9d22c64e716b91f68b7938618fa25c20606fb..471fea9e4b938f4e87a2d385f9ca496b8959f024 100644 (file)
@@ -118,6 +118,33 @@ extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
 static char* wxStringErrorMsg = "string type is required for parameter";
 
 extern wxValidator wxPyDefaultValidator;
+
+class wxPyTreeItemData : public wxTreeItemData {
+public:
+    wxPyTreeItemData(PyObject* obj = NULL) {
+       if (obj == NULL)
+            obj = Py_None;
+       Py_INCREF(obj);
+       m_obj = obj;
+    }
+
+    ~wxPyTreeItemData() {
+       Py_DECREF(m_obj);
+    }
+
+    PyObject* GetData() {
+        Py_INCREF(m_obj);
+        return m_obj;
+    }
+
+    void SetData(PyObject* obj) {
+        Py_DECREF(m_obj);
+        m_obj = obj;
+        Py_INCREF(obj);
+    }
+
+    PyObject* m_obj;
+};
 #define wxListItem_m_mask_set(_swigobj,_swigval) (_swigobj->m_mask = _swigval,_swigval)
 static PyObject *_wrap_wxListItem_m_mask_set(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
@@ -135,8 +162,12 @@ static PyObject *_wrap_wxListItem_m_mask_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_mask_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_mask_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -156,8 +187,12 @@ static PyObject *_wrap_wxListItem_m_mask_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_mask_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_mask_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -178,8 +213,12 @@ static PyObject *_wrap_wxListItem_m_itemId_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_itemId_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_itemId_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -199,8 +238,12 @@ static PyObject *_wrap_wxListItem_m_itemId_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_itemId_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_itemId_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -221,8 +264,12 @@ static PyObject *_wrap_wxListItem_m_col_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_col_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_col_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -242,8 +289,12 @@ static PyObject *_wrap_wxListItem_m_col_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_col_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_col_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -264,8 +315,12 @@ static PyObject *_wrap_wxListItem_m_state_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_state_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_state_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -285,8 +340,12 @@ static PyObject *_wrap_wxListItem_m_state_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_state_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_state_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -307,8 +366,12 @@ static PyObject *_wrap_wxListItem_m_stateMask_set(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_stateMask_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_stateMask_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -328,8 +391,12 @@ static PyObject *_wrap_wxListItem_m_stateMask_get(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_stateMask_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_stateMask_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -356,10 +423,14 @@ static PyObject *_wrap_wxListItem_m_text_set(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (wxString *)wxListItem_m_text_set(_arg0,_arg1);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxString *)wxListItem_m_text_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
 {
@@ -385,8 +456,12 @@ static PyObject *_wrap_wxListItem_m_text_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxString *)wxListItem_m_text_get(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxString *)wxListItem_m_text_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -409,8 +484,12 @@ static PyObject *_wrap_wxListItem_m_image_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_image_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_image_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -430,8 +509,12 @@ static PyObject *_wrap_wxListItem_m_image_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_image_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_image_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -452,8 +535,12 @@ static PyObject *_wrap_wxListItem_m_data_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_data_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_data_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -473,8 +560,12 @@ static PyObject *_wrap_wxListItem_m_data_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListItem_m_data_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListItem_m_data_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -495,8 +586,12 @@ static PyObject *_wrap_wxListItem_m_format_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_format_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_format_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -516,8 +611,12 @@ static PyObject *_wrap_wxListItem_m_format_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_format_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_format_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -538,8 +637,12 @@ static PyObject *_wrap_wxListItem_m_width_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_width_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_width_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -559,8 +662,12 @@ static PyObject *_wrap_wxListItem_m_width_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListItem_m_width_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListItem_m_width_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -573,8 +680,12 @@ static PyObject *_wrap_new_wxListItem(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxListItem")) 
         return NULL;
-    _result = (wxListItem *)new_wxListItem();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxListItem *)new_wxListItem();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -594,8 +705,12 @@ static PyObject *_wrap_delete_wxListItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxListItem(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxListItem(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -633,8 +748,12 @@ static PyObject *_wrap_wxListEvent_m_code_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListEvent_m_code_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListEvent_m_code_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -654,8 +773,12 @@ static PyObject *_wrap_wxListEvent_m_code_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListEvent_m_code_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListEvent_m_code_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -676,8 +799,12 @@ static PyObject *_wrap_wxListEvent_m_itemIndex_set(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (long )wxListEvent_m_itemIndex_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListEvent_m_itemIndex_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -697,8 +824,12 @@ static PyObject *_wrap_wxListEvent_m_itemIndex_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (long )wxListEvent_m_itemIndex_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListEvent_m_itemIndex_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -719,8 +850,12 @@ static PyObject *_wrap_wxListEvent_m_oldItemIndex_set(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (long )wxListEvent_m_oldItemIndex_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListEvent_m_oldItemIndex_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -740,8 +875,12 @@ static PyObject *_wrap_wxListEvent_m_oldItemIndex_get(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (long )wxListEvent_m_oldItemIndex_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListEvent_m_oldItemIndex_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -762,8 +901,12 @@ static PyObject *_wrap_wxListEvent_m_col_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListEvent_m_col_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListEvent_m_col_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -783,8 +926,12 @@ static PyObject *_wrap_wxListEvent_m_col_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListEvent_m_col_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListEvent_m_col_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -807,8 +954,12 @@ static PyObject *_wrap_wxListEvent_m_cancelled_set(PyObject *self, PyObject *arg
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxListEvent_m_cancelled_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListEvent_m_cancelled_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -828,8 +979,12 @@ static PyObject *_wrap_wxListEvent_m_cancelled_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxListEvent_m_cancelled_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListEvent_m_cancelled_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -858,8 +1013,12 @@ static PyObject *_wrap_wxListEvent_m_pointDrag_set(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxPoint *)wxListEvent_m_pointDrag_set(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPoint *)wxListEvent_m_pointDrag_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -881,8 +1040,12 @@ static PyObject *_wrap_wxListEvent_m_pointDrag_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxPoint *)wxListEvent_m_pointDrag_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPoint *)wxListEvent_m_pointDrag_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -912,8 +1075,12 @@ static PyObject *_wrap_wxListEvent_m_item_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxListItem *)wxListEvent_m_item_set(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxListItem *)wxListEvent_m_item_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -935,8 +1102,12 @@ static PyObject *_wrap_wxListEvent_m_item_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxListItem *)wxListEvent_m_item_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxListItem *)wxListEvent_m_item_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1009,8 +1180,12 @@ static PyObject *_wrap_new_wxListCtrl(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxListCtrl *)new_wxListCtrl(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxListCtrl *)new_wxListCtrl(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1032,8 +1207,12 @@ static PyObject *_wrap_wxListCtrl_Arrange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_Arrange(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_Arrange(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1054,8 +1233,12 @@ static PyObject *_wrap_wxListCtrl_DeleteItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_DeleteItem(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_DeleteItem(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1075,8 +1258,12 @@ static PyObject *_wrap_wxListCtrl_DeleteAllItems(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_DeleteAllItems(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_DeleteAllItems(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1097,8 +1284,12 @@ static PyObject *_wrap_wxListCtrl_DeleteColumn(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_DeleteColumn(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_DeleteColumn(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1118,8 +1309,12 @@ static PyObject *_wrap_wxListCtrl_DeleteAllColumns(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_DeleteAllColumns(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_DeleteAllColumns(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1138,8 +1333,12 @@ static PyObject *_wrap_wxListCtrl_ClearAll(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxListCtrl_ClearAll(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListCtrl_ClearAll(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1161,8 +1360,12 @@ static PyObject *_wrap_wxListCtrl_EnsureVisible(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_EnsureVisible(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_EnsureVisible(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1192,11 +1395,15 @@ static PyObject *_wrap_wxListCtrl_FindItem(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     _arg3 = (bool ) tempbool3;
-    _result = (long )wxListCtrl_FindItem(_arg0,_arg1,*_arg2,_arg3);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_FindItem(_arg0,_arg1,*_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -1222,8 +1429,12 @@ static PyObject *_wrap_wxListCtrl_FindItemData(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_FindItemData(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_FindItemData(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1253,8 +1464,12 @@ static PyObject *_wrap_wxListCtrl_FindItemAtPos(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_FindItemAtPos(_arg0,_arg1,*_arg2,_arg3);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_FindItemAtPos(_arg0,_arg1,*_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1283,8 +1498,12 @@ static PyObject *_wrap_wxListCtrl_GetColumn(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_GetColumn(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_GetColumn(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1305,8 +1524,12 @@ static PyObject *_wrap_wxListCtrl_GetColumnWidth(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxListCtrl_GetColumnWidth(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListCtrl_GetColumnWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1326,8 +1549,12 @@ static PyObject *_wrap_wxListCtrl_GetCountPerPage(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (int )wxListCtrl_GetCountPerPage(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListCtrl_GetCountPerPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1349,8 +1576,12 @@ static PyObject *_wrap_wxListCtrl_GetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxImageList *)wxListCtrl_GetImageList(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageList *)wxListCtrl_GetImageList(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1372,8 +1603,12 @@ static PyObject *_wrap_wxListCtrl_GetItemData(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_GetItemData(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_GetItemData(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1400,8 +1635,12 @@ static PyObject *_wrap_wxListCtrl_GetItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxListItem *)wxListCtrl_GetItem(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxListItem *)wxListCtrl_GetItem(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxListItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1428,8 +1667,12 @@ static PyObject *_wrap_wxListCtrl_GetItemPosition(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (wxPoint *)wxListCtrl_GetItemPosition(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPoint *)wxListCtrl_GetItemPosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1457,8 +1700,12 @@ static PyObject *_wrap_wxListCtrl_GetItemRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxRect *)wxListCtrl_GetItemRect(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRect *)wxListCtrl_GetItemRect(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1481,8 +1728,12 @@ static PyObject *_wrap_wxListCtrl_GetItemState(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListCtrl_GetItemState(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListCtrl_GetItemState(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1502,8 +1753,12 @@ static PyObject *_wrap_wxListCtrl_GetItemCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxListCtrl_GetItemCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListCtrl_GetItemCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1526,8 +1781,12 @@ static PyObject *_wrap_wxListCtrl_GetItemSpacing(PyObject *self, PyObject *args)
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (int )wxListCtrl_GetItemSpacing(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListCtrl_GetItemSpacing(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1548,8 +1807,12 @@ static PyObject *_wrap_wxListCtrl_GetItemText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxListCtrl_GetItemText(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxListCtrl_GetItemText(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1577,8 +1840,12 @@ static PyObject *_wrap_wxListCtrl_GetNextItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_GetNextItem(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_GetNextItem(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1598,8 +1865,12 @@ static PyObject *_wrap_wxListCtrl_GetSelectedItemCount(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxListCtrl_GetSelectedItemCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxListCtrl_GetSelectedItemCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1619,8 +1890,12 @@ static PyObject *_wrap_wxListCtrl_GetTopItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_GetTopItem(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_GetTopItem(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1653,8 +1928,12 @@ static PyObject *_wrap_wxListCtrl_HitTest(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_HitTest(_arg0,*_arg1,*_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_HitTest(_arg0,*_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     PyObject *o;
     o = PyInt_FromLong((long) (*_arg2));
@@ -1688,8 +1967,12 @@ static PyObject *_wrap_wxListCtrl_InsertColumnWith(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_InsertColumnWith(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_InsertColumnWith(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1719,10 +2002,14 @@ static PyObject *_wrap_wxListCtrl_InsertColumn(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (long )wxListCtrl_InsertColumn(_arg0,_arg1,*_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_InsertColumn(_arg0,_arg1,*_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -1754,8 +2041,12 @@ static PyObject *_wrap_wxListCtrl_InsertItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_InsertItem(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_InsertItem(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1783,10 +2074,14 @@ static PyObject *_wrap_wxListCtrl_InsertStringItem(PyObject *self, PyObject *arg
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (long )wxListCtrl_InsertStringItem(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_InsertStringItem(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -1812,8 +2107,12 @@ static PyObject *_wrap_wxListCtrl_InsertImageItem(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (long )wxListCtrl_InsertImageItem(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_InsertImageItem(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1842,10 +2141,14 @@ static PyObject *_wrap_wxListCtrl_InsertImageStringItem(PyObject *self, PyObject
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (long )wxListCtrl_InsertImageStringItem(_arg0,_arg1,*_arg2,_arg3);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_InsertImageStringItem(_arg0,_arg1,*_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -1871,8 +2174,12 @@ static PyObject *_wrap_wxListCtrl_ScrollList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_ScrollList(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_ScrollList(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1899,8 +2206,12 @@ static PyObject *_wrap_wxListCtrl_SetBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxListCtrl_SetBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListCtrl_SetBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1930,8 +2241,12 @@ static PyObject *_wrap_wxListCtrl_SetColumn(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetColumn(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetColumn(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1953,8 +2268,12 @@ static PyObject *_wrap_wxListCtrl_SetColumnWidth(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetColumnWidth(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetColumnWidth(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1982,8 +2301,12 @@ static PyObject *_wrap_wxListCtrl_SetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxListCtrl_SetImageList(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListCtrl_SetImageList(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2012,8 +2335,12 @@ static PyObject *_wrap_wxListCtrl_SetItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetItem(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetItem(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2043,10 +2370,14 @@ static PyObject *_wrap_wxListCtrl_SetStringItem(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
-    _result = (long )wxListCtrl_SetStringItem(_arg0,_arg1,_arg2,*_arg3,_arg4);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxListCtrl_SetStringItem(_arg0,_arg1,_arg2,*_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj3)
         delete _arg3;
@@ -2072,8 +2403,12 @@ static PyObject *_wrap_wxListCtrl_SetItemData(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetItemData(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetItemData(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2096,8 +2431,12 @@ static PyObject *_wrap_wxListCtrl_SetItemImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetItemImage(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetItemImage(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2126,8 +2465,12 @@ static PyObject *_wrap_wxListCtrl_SetItemPosition(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetItemPosition(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetItemPosition(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2150,8 +2493,12 @@ static PyObject *_wrap_wxListCtrl_SetItemState(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxListCtrl_SetItemState(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxListCtrl_SetItemState(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2178,10 +2525,14 @@ static PyObject *_wrap_wxListCtrl_SetItemText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxListCtrl_SetItemText(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListCtrl_SetItemText(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -2209,8 +2560,12 @@ static PyObject *_wrap_wxListCtrl_SetSingleStyle(PyObject *self, PyObject *args)
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxListCtrl_SetSingleStyle(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListCtrl_SetSingleStyle(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2231,8 +2586,12 @@ static PyObject *_wrap_wxListCtrl_SetWindowStyleFlag(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxListCtrl_SetWindowStyleFlag(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxListCtrl_SetWindowStyleFlag(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2246,8 +2605,12 @@ static PyObject *_wrap_new_wxTreeItemId(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxTreeItemId")) 
         return NULL;
-    _result = (wxTreeItemId *)new_wxTreeItemId();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTreeItemId *)new_wxTreeItemId();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2267,8 +2630,12 @@ static PyObject *_wrap_delete_wxTreeItemId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxTreeItemId(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxTreeItemId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2289,43 +2656,93 @@ static PyObject *_wrap_wxTreeItemId_IsOk(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxTreeItemId_IsOk(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTreeItemId_IsOk(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define new_wxTreeItemData() (new wxTreeItemData())
+#define new_wxTreeItemData(_swigarg0) (new wxPyTreeItemData(_swigarg0))
 static PyObject *_wrap_new_wxTreeItemData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxTreeItemData * _result;
+    wxPyTreeItemData * _result;
+    PyObject * _arg0 = NULL;
+    PyObject * _obj0 = 0;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,":new_wxTreeItemData")) 
+    if(!PyArg_ParseTuple(args,"|O:new_wxTreeItemData",&_obj0)) 
         return NULL;
-    _result = (wxTreeItemData *)new_wxTreeItemData();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeItemData_p");
+    if (_obj0)
+{
+  _arg0 = _obj0;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyTreeItemData *)new_wxTreeItemData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyTreeItemData_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
-#define delete_wxTreeItemData(_swigobj) (delete _swigobj)
-static PyObject *_wrap_delete_wxTreeItemData(PyObject *self, PyObject *args) {
+#define wxTreeItemData_GetData(_swigobj)  (_swigobj->GetData())
+static PyObject *_wrap_wxTreeItemData_GetData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxTreeItemData * _arg0;
+    PyObject * _result;
+    wxPyTreeItemData * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:delete_wxTreeItemData",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxTreeItemData_GetData",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxTreeItemData. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeItemData_GetData. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    delete_wxTreeItemData(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxTreeItemData_GetData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
+  _resultobj = _result;
+}
+    return _resultobj;
+}
+
+#define wxTreeItemData_SetData(_swigobj,_swigarg0)  (_swigobj->SetData(_swigarg0))
+static PyObject *_wrap_wxTreeItemData_SetData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPyTreeItemData * _arg0;
+    PyObject * _arg1;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO:wxTreeItemData_SetData",&_argc0,&_obj1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeItemData_SetData. Expected _wxPyTreeItemData_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeItemData_SetData(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2334,7 +2751,7 @@ static PyObject *_wrap_delete_wxTreeItemData(PyObject *self, PyObject *args) {
 static PyObject *_wrap_wxTreeItemData_GetId(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxTreeItemId * _result;
-    wxTreeItemData * _arg0;
+    wxPyTreeItemData * _arg0;
     char * _argc0 = 0;
     char _ptemp[128];
 
@@ -2342,14 +2759,18 @@ static PyObject *_wrap_wxTreeItemData_GetId(PyObject *self, PyObject *args) {
     if(!PyArg_ParseTuple(args,"s:wxTreeItemData_GetId",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeItemData_GetId. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeItemData_GetId. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    const wxTreeItemId & _result_ref = wxTreeItemData_GetId(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        const wxTreeItemId & _result_ref = wxTreeItemData_GetId(_arg0);
     _result = (wxTreeItemId *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeItemId_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2357,7 +2778,7 @@ static PyObject *_wrap_wxTreeItemData_GetId(PyObject *self, PyObject *args) {
 #define wxTreeItemData_SetId(_swigobj,_swigarg0)  (_swigobj->SetId(_swigarg0))
 static PyObject *_wrap_wxTreeItemData_SetId(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxTreeItemData * _arg0;
+    wxPyTreeItemData * _arg0;
     wxTreeItemId * _arg1;
     char * _argc0 = 0;
     char * _argc1 = 0;
@@ -2366,8 +2787,8 @@ static PyObject *_wrap_wxTreeItemData_SetId(PyObject *self, PyObject *args) {
     if(!PyArg_ParseTuple(args,"ss:wxTreeItemData_SetId",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeItemData_SetId. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeItemData_SetId. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
@@ -2377,8 +2798,12 @@ static PyObject *_wrap_wxTreeItemData_SetId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeItemData_SetId(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeItemData_SetId(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2416,8 +2841,12 @@ static PyObject *_wrap_wxTreeEvent_GetItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeEvent_GetItem(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeEvent_GetItem(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2439,8 +2868,12 @@ static PyObject *_wrap_wxTreeEvent_GetOldItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeEvent_GetOldItem(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeEvent_GetOldItem(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2462,8 +2895,12 @@ static PyObject *_wrap_wxTreeEvent_GetPoint(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxPoint (wxTreeEvent_GetPoint(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxTreeEvent_GetPoint(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2484,8 +2921,12 @@ static PyObject *_wrap_wxTreeEvent_GetCode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxTreeEvent_GetCode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxTreeEvent_GetCode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2504,8 +2945,12 @@ static PyObject *_wrap_wxTreeEvent_Veto(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeEvent_Veto(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeEvent_Veto(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2578,8 +3023,12 @@ static PyObject *_wrap_new_wxTreeCtrl(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxTreeCtrl *)new_wxTreeCtrl(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTreeCtrl *)new_wxTreeCtrl(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2601,8 +3050,12 @@ static PyObject *_wrap_wxTreeCtrl_GetCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new size_t (wxTreeCtrl_GetCount(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_size_t_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new size_t (wxTreeCtrl_GetCount(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_size_t_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2623,8 +3076,12 @@ static PyObject *_wrap_wxTreeCtrl_GetIndent(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (unsigned int )wxTreeCtrl_GetIndent(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned int )wxTreeCtrl_GetIndent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2644,8 +3101,12 @@ static PyObject *_wrap_wxTreeCtrl_SetIndent(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_SetIndent(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetIndent(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2667,8 +3128,12 @@ static PyObject *_wrap_wxTreeCtrl_GetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxImageList *)wxTreeCtrl_GetImageList(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageList *)wxTreeCtrl_GetImageList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2690,8 +3155,12 @@ static PyObject *_wrap_wxTreeCtrl_GetStateImageList(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (wxImageList *)wxTreeCtrl_GetStateImageList(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageList *)wxTreeCtrl_GetStateImageList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2719,8 +3188,12 @@ static PyObject *_wrap_wxTreeCtrl_SetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_SetImageList(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetImageList(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2748,8 +3221,12 @@ static PyObject *_wrap_wxTreeCtrl_SetStateImageList(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxTreeCtrl_SetStateImageList(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetStateImageList(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2778,8 +3255,12 @@ static PyObject *_wrap_wxTreeCtrl_GetItemText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxTreeCtrl_GetItemText(_arg0,*_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxTreeCtrl_GetItemText(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2812,8 +3293,12 @@ static PyObject *_wrap_wxTreeCtrl_GetItemImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxTreeCtrl_GetItemImage(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxTreeCtrl_GetItemImage(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2841,39 +3326,12 @@ static PyObject *_wrap_wxTreeCtrl_GetItemSelectedImage(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxTreeCtrl_GetItemSelectedImage(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
-    return _resultobj;
-}
-
-#define wxTreeCtrl_GetItemData(_swigobj,_swigarg0)  (_swigobj->GetItemData(_swigarg0))
-static PyObject *_wrap_wxTreeCtrl_GetItemData(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    wxTreeItemData * _result;
-    wxTreeCtrl * _arg0;
-    wxTreeItemId * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
-    char _ptemp[128];
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxTreeCtrl_GetItemSelectedImage(_arg0,*_arg1);
 
-    self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxTreeCtrl_GetItemData",&_argc0,&_argc1)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_GetItemData. Expected _wxTreeCtrl_p.");
-        return NULL;
-        }
-    }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_GetItemData. Expected _wxTreeItemId_p.");
-        return NULL;
-        }
-    }
-    _result = (wxTreeItemData *)wxTreeCtrl_GetItemData(_arg0,*_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTreeItemData_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2907,10 +3365,14 @@ static PyObject *_wrap_wxTreeCtrl_SetItemText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxTreeCtrl_SetItemText(_arg0,*_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetItemText(_arg0,*_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -2943,8 +3405,12 @@ static PyObject *_wrap_wxTreeCtrl_SetItemImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_SetItemImage(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetItemImage(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2973,18 +3439,102 @@ static PyObject *_wrap_wxTreeCtrl_SetItemSelectedImage(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxTreeCtrl_SetItemSelectedImage(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetItemSelectedImage(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxTreeCtrl_SetItemData(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetItemData(_swigarg0,_swigarg1))
+#define wxTreeCtrl_SetItemHasChildren(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetItemHasChildren(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxTreeCtrl_SetItemHasChildren(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxTreeCtrl * _arg0;
+    wxTreeItemId * _arg1;
+    bool  _arg2 = (1);
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    int tempbool2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss|i:wxTreeCtrl_SetItemHasChildren",&_argc0,&_argc1,&tempbool2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetItemHasChildren. Expected _wxTreeCtrl_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetItemHasChildren. Expected _wxTreeItemId_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetItemHasChildren(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static wxPyTreeItemData * wxTreeCtrl_GetItemData(wxTreeCtrl *self,const wxTreeItemId & item) {
+            wxPyTreeItemData* data = (wxPyTreeItemData*)self->GetItemData(item);
+            if (data == NULL) {
+                data = new wxPyTreeItemData();
+                self->SetItemData(item, data);
+            }
+            return data;
+        }
+static PyObject *_wrap_wxTreeCtrl_GetItemData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPyTreeItemData * _result;
+    wxTreeCtrl * _arg0;
+    wxTreeItemId * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxTreeCtrl_GetItemData",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_GetItemData. Expected _wxTreeCtrl_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_GetItemData. Expected _wxTreeItemId_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyTreeItemData *)wxTreeCtrl_GetItemData(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyTreeItemData_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void  wxTreeCtrl_SetItemData(wxTreeCtrl *self,const wxTreeItemId & item,wxPyTreeItemData * data) {
+         self->SetItemData(item, data);
+       }
 static PyObject *_wrap_wxTreeCtrl_SetItemData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxTreeCtrl * _arg0;
     wxTreeItemId * _arg1;
-    wxTreeItemData * _arg2;
+    wxPyTreeItemData * _arg2;
     char * _argc0 = 0;
     char * _argc1 = 0;
     char * _argc2 = 0;
@@ -3005,45 +3555,104 @@ static PyObject *_wrap_wxTreeCtrl_SetItemData(PyObject *self, PyObject *args) {
         }
     }
     if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxTreeCtrl_SetItemData. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxTreeCtrl_SetItemData. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    wxTreeCtrl_SetItemData(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetItemData(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxTreeCtrl_SetItemHasChildren(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetItemHasChildren(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxTreeCtrl_SetItemHasChildren(PyObject *self, PyObject *args) {
+static PyObject * wxTreeCtrl_GetPyData(wxTreeCtrl *self,const wxTreeItemId & item) {
+            wxPyTreeItemData* data = (wxPyTreeItemData*)self->GetItemData(item);
+            if (data == NULL) {
+                data = new wxPyTreeItemData();
+                self->SetItemData(item, data);
+            }
+            return data->GetData();
+       }
+static PyObject *_wrap_wxTreeCtrl_GetPyData(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
+    PyObject * _result;
     wxTreeCtrl * _arg0;
     wxTreeItemId * _arg1;
-    bool  _arg2 = (1);
     char * _argc0 = 0;
     char * _argc1 = 0;
-    int tempbool2;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss|i:wxTreeCtrl_SetItemHasChildren",&_argc0,&_argc1,&tempbool2)) 
+    if(!PyArg_ParseTuple(args,"ss:wxTreeCtrl_GetPyData",&_argc0,&_argc1)) 
         return NULL;
     if (_argc0) {
         if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetItemHasChildren. Expected _wxTreeCtrl_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_GetPyData. Expected _wxTreeCtrl_p.");
         return NULL;
         }
     }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetItemHasChildren. Expected _wxTreeItemId_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_GetPyData. Expected _wxTreeItemId_p.");
         return NULL;
         }
     }
-    _arg2 = (bool ) tempbool2;
-    wxTreeCtrl_SetItemHasChildren(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxTreeCtrl_GetPyData(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}{
+  _resultobj = _result;
+}
+    return _resultobj;
+}
+
+static void  wxTreeCtrl_SetPyData(wxTreeCtrl *self,const wxTreeItemId & item,PyObject * obj) {
+            wxPyTreeItemData* data = (wxPyTreeItemData*)self->GetItemData(item);
+            if (data == NULL) {
+                data = new wxPyTreeItemData(obj);
+                self->SetItemData(item, data);
+            } else
+                data->SetData(obj);
+       }
+static PyObject *_wrap_wxTreeCtrl_SetPyData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxTreeCtrl * _arg0;
+    wxTreeItemId * _arg1;
+    PyObject * _arg2;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    PyObject * _obj2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ssO:wxTreeCtrl_SetPyData",&_argc0,&_argc1,&_obj2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetPyData. Expected _wxTreeCtrl_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxTreeItemId_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetPyData. Expected _wxTreeItemId_p.");
+        return NULL;
+        }
+    }
+{
+  _arg2 = _obj2;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetPyData(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3072,8 +3681,12 @@ static PyObject *_wrap_wxTreeCtrl_IsVisible(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxTreeCtrl_IsVisible(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTreeCtrl_IsVisible(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3101,8 +3714,12 @@ static PyObject *_wrap_wxTreeCtrl_ItemHasChildren(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxTreeCtrl_ItemHasChildren(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTreeCtrl_ItemHasChildren(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3130,8 +3747,12 @@ static PyObject *_wrap_wxTreeCtrl_IsExpanded(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxTreeCtrl_IsExpanded(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTreeCtrl_IsExpanded(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3159,8 +3780,12 @@ static PyObject *_wrap_wxTreeCtrl_IsSelected(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxTreeCtrl_IsSelected(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTreeCtrl_IsSelected(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3181,8 +3806,12 @@ static PyObject *_wrap_wxTreeCtrl_GetRootItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetRootItem(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetRootItem(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3204,8 +3833,12 @@ static PyObject *_wrap_wxTreeCtrl_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetSelection(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetSelection(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3235,8 +3868,12 @@ static PyObject *_wrap_wxTreeCtrl_GetParent(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetParent(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetParent(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3273,8 +3910,12 @@ static PyObject *_wrap_wxTreeCtrl_GetFirstChild(PyObject *self, PyObject *args)
   temp = (long) PyInt_AsLong(_obj2);
   _arg2 = &temp;
 }
-    _result = new wxTreeItemId (wxTreeCtrl_GetFirstChild(_arg0,*_arg1,*_arg2));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetFirstChild(_arg0,*_arg1,*_arg2));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     PyObject *o;
@@ -3316,8 +3957,12 @@ static PyObject *_wrap_wxTreeCtrl_GetNextChild(PyObject *self, PyObject *args) {
   temp = (long) PyInt_AsLong(_obj2);
   _arg2 = &temp;
 }
-    _result = new wxTreeItemId (wxTreeCtrl_GetNextChild(_arg0,*_arg1,*_arg2));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetNextChild(_arg0,*_arg1,*_arg2));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     PyObject *o;
@@ -3352,8 +3997,12 @@ static PyObject *_wrap_wxTreeCtrl_GetNextSibling(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetNextSibling(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetNextSibling(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3383,8 +4032,12 @@ static PyObject *_wrap_wxTreeCtrl_GetPrevSibling(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetPrevSibling(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetPrevSibling(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3406,8 +4059,12 @@ static PyObject *_wrap_wxTreeCtrl_GetFirstVisibleItem(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetFirstVisibleItem(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetFirstVisibleItem(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3437,8 +4094,12 @@ static PyObject *_wrap_wxTreeCtrl_GetNextVisible(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetNextVisible(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetNextVisible(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3468,8 +4129,12 @@ static PyObject *_wrap_wxTreeCtrl_GetPrevVisible(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_GetPrevVisible(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_GetPrevVisible(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3482,7 +4147,7 @@ static PyObject *_wrap_wxTreeCtrl_AddRoot(PyObject *self, PyObject *args) {
     wxString * _arg1;
     int  _arg2 = -1;
     int  _arg3 = -1;
-    wxTreeItemData * _arg4 = NULL;
+    wxPyTreeItemData * _arg4 = NULL;
     char * _argc0 = 0;
     PyObject * _obj1 = 0;
     char * _argc4 = 0;
@@ -3502,16 +4167,20 @@ static PyObject *_wrap_wxTreeCtrl_AddRoot(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_argc4) {
-        if (SWIG_GetPtr(_argc4,(void **) &_arg4,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of wxTreeCtrl_AddRoot. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc4,(void **) &_arg4,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of wxTreeCtrl_AddRoot. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_AddRoot(_arg0,*_arg1,_arg2,_arg3,_arg4));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_AddRoot(_arg0,*_arg1,_arg2,_arg3,_arg4));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj1)
@@ -3529,7 +4198,7 @@ static PyObject *_wrap_wxTreeCtrl_PrependItem(PyObject *self, PyObject *args) {
     wxString * _arg2;
     int  _arg3 = -1;
     int  _arg4 = -1;
-    wxTreeItemData * _arg5 = NULL;
+    wxPyTreeItemData * _arg5 = NULL;
     char * _argc0 = 0;
     char * _argc1 = 0;
     PyObject * _obj2 = 0;
@@ -3556,16 +4225,20 @@ static PyObject *_wrap_wxTreeCtrl_PrependItem(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc5) {
-        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of wxTreeCtrl_PrependItem. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of wxTreeCtrl_PrependItem. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_PrependItem(_arg0,*_arg1,*_arg2,_arg3,_arg4,_arg5));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_PrependItem(_arg0,*_arg1,*_arg2,_arg3,_arg4,_arg5));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -3584,7 +4257,7 @@ static PyObject *_wrap_wxTreeCtrl_InsertItem(PyObject *self, PyObject *args) {
     wxString * _arg3;
     int  _arg4 = -1;
     int  _arg5 = -1;
-    wxTreeItemData * _arg6 = NULL;
+    wxPyTreeItemData * _arg6 = NULL;
     char * _argc0 = 0;
     char * _argc1 = 0;
     char * _argc2 = 0;
@@ -3618,16 +4291,20 @@ static PyObject *_wrap_wxTreeCtrl_InsertItem(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
     if (_argc6) {
-        if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of wxTreeCtrl_InsertItem. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of wxTreeCtrl_InsertItem. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_InsertItem(_arg0,*_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_InsertItem(_arg0,*_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj3)
@@ -3645,7 +4322,7 @@ static PyObject *_wrap_wxTreeCtrl_AppendItem(PyObject *self, PyObject *args) {
     wxString * _arg2;
     int  _arg3 = -1;
     int  _arg4 = -1;
-    wxTreeItemData * _arg5 = NULL;
+    wxPyTreeItemData * _arg5 = NULL;
     char * _argc0 = 0;
     char * _argc1 = 0;
     PyObject * _obj2 = 0;
@@ -3672,16 +4349,20 @@ static PyObject *_wrap_wxTreeCtrl_AppendItem(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc5) {
-        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_wxTreeItemData_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of wxTreeCtrl_AppendItem. Expected _wxTreeItemData_p.");
+        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_wxPyTreeItemData_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of wxTreeCtrl_AppendItem. Expected _wxPyTreeItemData_p.");
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_AppendItem(_arg0,*_arg1,*_arg2,_arg3,_arg4,_arg5));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_AppendItem(_arg0,*_arg1,*_arg2,_arg3,_arg4,_arg5));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -3713,8 +4394,12 @@ static PyObject *_wrap_wxTreeCtrl_Delete(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_Delete(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_Delete(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3742,8 +4427,12 @@ static PyObject *_wrap_wxTreeCtrl_DeleteChildren(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxTreeCtrl_DeleteChildren(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_DeleteChildren(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3763,8 +4452,12 @@ static PyObject *_wrap_wxTreeCtrl_DeleteAllItems(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxTreeCtrl_DeleteAllItems(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_DeleteAllItems(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3792,8 +4485,12 @@ static PyObject *_wrap_wxTreeCtrl_Expand(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_Expand(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_Expand(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3821,8 +4518,12 @@ static PyObject *_wrap_wxTreeCtrl_Collapse(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_Collapse(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_Collapse(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3850,8 +4551,12 @@ static PyObject *_wrap_wxTreeCtrl_CollapseAndReset(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxTreeCtrl_CollapseAndReset(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_CollapseAndReset(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3879,8 +4584,12 @@ static PyObject *_wrap_wxTreeCtrl_Toggle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_Toggle(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_Toggle(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3900,8 +4609,12 @@ static PyObject *_wrap_wxTreeCtrl_Unselect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_Unselect(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_Unselect(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3929,8 +4642,12 @@ static PyObject *_wrap_wxTreeCtrl_SelectItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_SelectItem(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SelectItem(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3958,8 +4675,12 @@ static PyObject *_wrap_wxTreeCtrl_EnsureVisible(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxTreeCtrl_EnsureVisible(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_EnsureVisible(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3987,8 +4708,12 @@ static PyObject *_wrap_wxTreeCtrl_ScrollTo(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxTreeCtrl_ScrollTo(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_ScrollTo(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4018,8 +4743,12 @@ static PyObject *_wrap_wxTreeCtrl_EditLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxTextCtrl *)wxTreeCtrl_EditLabel(_arg0,*_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTextCtrl *)wxTreeCtrl_EditLabel(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4041,8 +4770,12 @@ static PyObject *_wrap_wxTreeCtrl_GetEditControl(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxTextCtrl *)wxTreeCtrl_GetEditControl(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTextCtrl *)wxTreeCtrl_GetEditControl(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4073,8 +4806,12 @@ static PyObject *_wrap_wxTreeCtrl_EndEditLabel(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxTreeCtrl_EndEditLabel(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_EndEditLabel(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4105,8 +4842,12 @@ static PyObject *_wrap_wxTreeCtrl_SetItemBold(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxTreeCtrl_SetItemBold(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxTreeCtrl_SetItemBold(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4135,8 +4876,12 @@ static PyObject *_wrap_wxTreeCtrl_IsBold(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxTreeCtrl_IsBold(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxTreeCtrl_IsBold(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4165,8 +4910,12 @@ static PyObject *_wrap_wxTreeCtrl_HitTest(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxTreeItemId (wxTreeCtrl_HitTest(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxTreeItemId (wxTreeCtrl_HitTest(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4207,12 +4956,14 @@ static PyMethodDef controls2cMethods[] = {
         { "wxTreeCtrl_IsExpanded", _wrap_wxTreeCtrl_IsExpanded, 1 },
         { "wxTreeCtrl_ItemHasChildren", _wrap_wxTreeCtrl_ItemHasChildren, 1 },
         { "wxTreeCtrl_IsVisible", _wrap_wxTreeCtrl_IsVisible, 1 },
-        { "wxTreeCtrl_SetItemHasChildren", _wrap_wxTreeCtrl_SetItemHasChildren, 1 },
+        { "wxTreeCtrl_SetPyData", _wrap_wxTreeCtrl_SetPyData, 1 },
+        { "wxTreeCtrl_GetPyData", _wrap_wxTreeCtrl_GetPyData, 1 },
         { "wxTreeCtrl_SetItemData", _wrap_wxTreeCtrl_SetItemData, 1 },
+        { "wxTreeCtrl_GetItemData", _wrap_wxTreeCtrl_GetItemData, 1 },
+        { "wxTreeCtrl_SetItemHasChildren", _wrap_wxTreeCtrl_SetItemHasChildren, 1 },
         { "wxTreeCtrl_SetItemSelectedImage", _wrap_wxTreeCtrl_SetItemSelectedImage, 1 },
         { "wxTreeCtrl_SetItemImage", _wrap_wxTreeCtrl_SetItemImage, 1 },
         { "wxTreeCtrl_SetItemText", _wrap_wxTreeCtrl_SetItemText, 1 },
-        { "wxTreeCtrl_GetItemData", _wrap_wxTreeCtrl_GetItemData, 1 },
         { "wxTreeCtrl_GetItemSelectedImage", _wrap_wxTreeCtrl_GetItemSelectedImage, 1 },
         { "wxTreeCtrl_GetItemImage", _wrap_wxTreeCtrl_GetItemImage, 1 },
         { "wxTreeCtrl_GetItemText", _wrap_wxTreeCtrl_GetItemText, 1 },
@@ -4231,7 +4982,8 @@ static PyMethodDef controls2cMethods[] = {
         { "wxTreeEvent_GetItem", _wrap_wxTreeEvent_GetItem, 1 },
         { "wxTreeItemData_SetId", _wrap_wxTreeItemData_SetId, 1 },
         { "wxTreeItemData_GetId", _wrap_wxTreeItemData_GetId, 1 },
-        { "delete_wxTreeItemData", _wrap_delete_wxTreeItemData, 1 },
+        { "wxTreeItemData_SetData", _wrap_wxTreeItemData_SetData, 1 },
+        { "wxTreeItemData_GetData", _wrap_wxTreeItemData_GetData, 1 },
         { "new_wxTreeItemData", _wrap_new_wxTreeItemData, 1 },
         { "wxTreeItemId_IsOk", _wrap_wxTreeItemId_IsOk, 1 },
         { "delete_wxTreeItemId", _wrap_delete_wxTreeItemId, 1 },
@@ -4387,6 +5139,7 @@ SWIGEXPORT(void,initcontrols2c)() {
         SWIG_RegisterMapping("_wxMenuEvent","_class_wxMenuEvent",0);
         SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
         SWIG_RegisterMapping("_class_wxMenuBar","_wxMenuBar",0);
+        SWIG_RegisterMapping("_class_wxPyTreeItemData","_wxPyTreeItemData",0);
         SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxTreeCtrl",SwigwxTreeCtrlTowxEvtHandler);
         SWIG_RegisterMapping("_class_wxEvtHandler","_wxTreeCtrl",SwigwxTreeCtrlTowxEvtHandler);
         SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxListCtrl",SwigwxListCtrlTowxEvtHandler);
@@ -4424,6 +5177,7 @@ SWIGEXPORT(void,initcontrols2c)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -4453,13 +5207,13 @@ SWIGEXPORT(void,initcontrols2c)() {
         SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
         SWIG_RegisterMapping("_class_wxButton","_wxButton",0);
         SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
-        SWIG_RegisterMapping("_wxTreeItemData","_class_wxTreeItemData",0);
         SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
         SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
         SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
         SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_wxListItem","_class_wxListItem",0);
@@ -4570,6 +5324,7 @@ SWIGEXPORT(void,initcontrols2c)() {
         SWIG_RegisterMapping("_wxButton","_class_wxButton",0);
         SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
         SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
+        SWIG_RegisterMapping("_wxPyTreeItemData","_class_wxPyTreeItemData",0);
         SWIG_RegisterMapping("_class_wxPaintDC","_wxPaintDC",0);
         SWIG_RegisterMapping("_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0);
         SWIG_RegisterMapping("_class_wxInitDialogEvent","_wxInitDialogEvent",0);
@@ -4605,7 +5360,6 @@ SWIGEXPORT(void,initcontrols2c)() {
         SWIG_RegisterMapping("_class_wxClientDC","_wxClientDC",0);
         SWIG_RegisterMapping("_class_wxSizeEvent","_wxSizeEvent",0);
         SWIG_RegisterMapping("_class_wxListCtrl","_wxListCtrl",0);
-        SWIG_RegisterMapping("_class_wxTreeItemData","_wxTreeItemData",0);
         SWIG_RegisterMapping("_class_wxSize","_wxSize",0);
         SWIG_RegisterMapping("_class_wxBitmap","_wxBitmap",0);
         SWIG_RegisterMapping("_class_wxMemoryDC","_wxMemoryDC",0);
index 80435d518fc1199a5563cd1a91f4420d5e16b2d7..8c1ecc84605f8e52a47640f5089e783c8a6f0e09 100644 (file)
@@ -324,9 +324,12 @@ class wxTreeItemDataPtr :
     def __init__(self,this):
         self.this = this
         self.thisown = 0
-    def __del__(self):
-        if self.thisown == 1 :
-            controls2c.delete_wxTreeItemData(self.this)
+    def GetData(self):
+        val = controls2c.wxTreeItemData_GetData(self.this)
+        return val
+    def SetData(self,arg0):
+        val = controls2c.wxTreeItemData_SetData(self.this,arg0)
+        return val
     def GetId(self):
         val = controls2c.wxTreeItemData_GetId(self.this)
         val = wxTreeItemIdPtr(val)
@@ -337,8 +340,8 @@ class wxTreeItemDataPtr :
     def __repr__(self):
         return "<C wxTreeItemData instance>"
 class wxTreeItemData(wxTreeItemDataPtr):
-    def __init__(self) :
-        self.this = controls2c.new_wxTreeItemData()
+    def __init__(self,*args) :
+        self.this = apply(controls2c.new_wxTreeItemData,()+args)
         self.thisown = 1
 
 
@@ -414,10 +417,6 @@ class wxTreeCtrlPtr(wxControlPtr):
     def GetItemSelectedImage(self,arg0):
         val = controls2c.wxTreeCtrl_GetItemSelectedImage(self.this,arg0.this)
         return val
-    def GetItemData(self,arg0):
-        val = controls2c.wxTreeCtrl_GetItemData(self.this,arg0.this)
-        val = wxTreeItemDataPtr(val)
-        return val
     def SetItemText(self,arg0,arg1):
         val = controls2c.wxTreeCtrl_SetItemText(self.this,arg0.this,arg1)
         return val
@@ -427,11 +426,21 @@ class wxTreeCtrlPtr(wxControlPtr):
     def SetItemSelectedImage(self,arg0,arg1):
         val = controls2c.wxTreeCtrl_SetItemSelectedImage(self.this,arg0.this,arg1)
         return val
+    def SetItemHasChildren(self,arg0,*args):
+        val = apply(controls2c.wxTreeCtrl_SetItemHasChildren,(self.this,arg0.this,)+args)
+        return val
+    def GetItemData(self,arg0):
+        val = controls2c.wxTreeCtrl_GetItemData(self.this,arg0.this)
+        val = wxTreeItemDataPtr(val)
+        return val
     def SetItemData(self,arg0,arg1):
         val = controls2c.wxTreeCtrl_SetItemData(self.this,arg0.this,arg1.this)
         return val
-    def SetItemHasChildren(self,arg0,*args):
-        val = apply(controls2c.wxTreeCtrl_SetItemHasChildren,(self.this,arg0.this,)+args)
+    def GetPyData(self,arg0):
+        val = controls2c.wxTreeCtrl_GetPyData(self.this,arg0.this)
+        return val
+    def SetPyData(self,arg0,arg1):
+        val = controls2c.wxTreeCtrl_SetPyData(self.this,arg0.this,arg1)
         return val
     def IsVisible(self,arg0):
         val = controls2c.wxTreeCtrl_IsVisible(self.this,arg0.this)
index 0085917f8240506c67081fa7e8ea8abe91662f35..8347000787d8fc9df5c69742fce77b42183e3e6d 100644 (file)
@@ -132,8 +132,12 @@ static PyObject *_wrap_wxEvent_GetEventObject(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxObject *)wxEvent_GetEventObject(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxObject *)wxEvent_GetEventObject(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -154,8 +158,12 @@ static PyObject *_wrap_wxEvent_GetEventType(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxEventType )wxEvent_GetEventType(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxEventType )wxEvent_GetEventType(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -175,8 +183,12 @@ static PyObject *_wrap_wxEvent_GetId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxEvent_GetId(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxEvent_GetId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -196,8 +208,12 @@ static PyObject *_wrap_wxEvent_GetSkipped(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxEvent_GetSkipped(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxEvent_GetSkipped(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -217,8 +233,12 @@ static PyObject *_wrap_wxEvent_GetTimestamp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxEvent_GetTimestamp(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxEvent_GetTimestamp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -245,8 +265,12 @@ static PyObject *_wrap_wxEvent_SetEventObject(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxEvent_SetEventObject(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetEventObject(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -267,8 +291,12 @@ static PyObject *_wrap_wxEvent_SetEventType(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxEvent_SetEventType(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetEventType(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -289,8 +317,12 @@ static PyObject *_wrap_wxEvent_SetId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxEvent_SetId(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetId(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -311,8 +343,12 @@ static PyObject *_wrap_wxEvent_SetTimestamp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxEvent_SetTimestamp(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetTimestamp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -335,8 +371,12 @@ static PyObject *_wrap_wxEvent_Skip(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxEvent_Skip(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_Skip(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -366,8 +406,12 @@ static PyObject *_wrap_wxSizeEvent_GetSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxSize (wxSizeEvent_GetSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxSizeEvent_GetSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -398,8 +442,12 @@ static PyObject *_wrap_wxCloseEvent_SetLoggingOff(PyObject *self, PyObject *args
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxCloseEvent_SetLoggingOff(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCloseEvent_SetLoggingOff(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -420,8 +468,12 @@ static PyObject *_wrap_wxCloseEvent_GetLoggingOff(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxCloseEvent_GetLoggingOff(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCloseEvent_GetLoggingOff(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -443,8 +495,12 @@ static PyObject *_wrap_wxCloseEvent_Veto(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxCloseEvent_Veto(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCloseEvent_Veto(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -465,8 +521,12 @@ static PyObject *_wrap_wxCloseEvent_CanVeto(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxCloseEvent_CanVeto(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCloseEvent_CanVeto(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -486,8 +546,12 @@ static PyObject *_wrap_wxCloseEvent_GetVeto(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxCloseEvent_GetVeto(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCloseEvent_GetVeto(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -509,8 +573,12 @@ static PyObject *_wrap_wxCloseEvent_SetCanVeto(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxCloseEvent_SetCanVeto(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCloseEvent_SetCanVeto(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -539,8 +607,12 @@ static PyObject *_wrap_wxCommandEvent_Checked(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxCommandEvent_Checked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCommandEvent_Checked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -560,8 +632,12 @@ static PyObject *_wrap_wxCommandEvent_GetExtraLong(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (long )wxCommandEvent_GetExtraLong(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxCommandEvent_GetExtraLong(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -581,8 +657,12 @@ static PyObject *_wrap_wxCommandEvent_GetInt(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxCommandEvent_GetInt(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxCommandEvent_GetInt(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -602,15 +682,19 @@ static PyObject *_wrap_wxCommandEvent_GetSelection(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxCommandEvent_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxCommandEvent_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxCommandEvent_GetString(_swigobj)  (_swigobj->GetString())
 static PyObject *_wrap_wxCommandEvent_GetString(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    char * _result;
+    wxString * _result;
     wxCommandEvent * _arg0;
     char * _argc0 = 0;
 
@@ -623,8 +707,17 @@ static PyObject *_wrap_wxCommandEvent_GetString(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (char *)wxCommandEvent_GetString(_arg0);
-    _resultobj = Py_BuildValue("s", _result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxCommandEvent_GetString(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
     return _resultobj;
 }
 
@@ -644,8 +737,12 @@ static PyObject *_wrap_wxCommandEvent_IsSelection(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxCommandEvent_IsSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCommandEvent_IsSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -681,8 +778,12 @@ static PyObject *_wrap_wxScrollEvent_GetOrientation(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxScrollEvent_GetOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollEvent_GetOrientation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -702,8 +803,12 @@ static PyObject *_wrap_wxScrollEvent_GetPosition(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxScrollEvent_GetPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollEvent_GetPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -755,8 +860,12 @@ static PyObject *_wrap_wxMouseEvent_IsButton(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_IsButton(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_IsButton(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -777,8 +886,12 @@ static PyObject *_wrap_wxMouseEvent_ButtonDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -799,8 +912,12 @@ static PyObject *_wrap_wxMouseEvent_ButtonDClick(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonDClick(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonDClick(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -821,8 +938,12 @@ static PyObject *_wrap_wxMouseEvent_ButtonUp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonUp(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonUp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -843,8 +964,12 @@ static PyObject *_wrap_wxMouseEvent_Button(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Button(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Button(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -865,8 +990,12 @@ static PyObject *_wrap_wxMouseEvent_ButtonIsDown(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonIsDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonIsDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -886,8 +1015,12 @@ static PyObject *_wrap_wxMouseEvent_ControlDown(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ControlDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ControlDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -907,8 +1040,12 @@ static PyObject *_wrap_wxMouseEvent_MetaDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MetaDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MetaDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -928,8 +1065,12 @@ static PyObject *_wrap_wxMouseEvent_AltDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_AltDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_AltDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -949,8 +1090,12 @@ static PyObject *_wrap_wxMouseEvent_ShiftDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ShiftDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ShiftDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -970,8 +1115,12 @@ static PyObject *_wrap_wxMouseEvent_LeftDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -991,8 +1140,12 @@ static PyObject *_wrap_wxMouseEvent_MiddleDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1012,8 +1165,12 @@ static PyObject *_wrap_wxMouseEvent_RightDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1033,8 +1190,12 @@ static PyObject *_wrap_wxMouseEvent_LeftUp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftUp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftUp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1054,8 +1215,12 @@ static PyObject *_wrap_wxMouseEvent_MiddleUp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleUp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleUp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1075,8 +1240,12 @@ static PyObject *_wrap_wxMouseEvent_RightUp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightUp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightUp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1096,8 +1265,12 @@ static PyObject *_wrap_wxMouseEvent_LeftDClick(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftDClick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftDClick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1117,8 +1290,12 @@ static PyObject *_wrap_wxMouseEvent_MiddleDClick(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleDClick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleDClick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1138,8 +1315,12 @@ static PyObject *_wrap_wxMouseEvent_RightDClick(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightDClick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightDClick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1159,8 +1340,12 @@ static PyObject *_wrap_wxMouseEvent_LeftIsDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftIsDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftIsDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1180,8 +1365,12 @@ static PyObject *_wrap_wxMouseEvent_MiddleIsDown(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleIsDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleIsDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1201,8 +1390,12 @@ static PyObject *_wrap_wxMouseEvent_RightIsDown(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightIsDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightIsDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1222,8 +1415,12 @@ static PyObject *_wrap_wxMouseEvent_Dragging(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Dragging(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Dragging(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1243,8 +1440,12 @@ static PyObject *_wrap_wxMouseEvent_Moving(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Moving(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Moving(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1264,8 +1465,12 @@ static PyObject *_wrap_wxMouseEvent_Entering(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Entering(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Entering(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1285,8 +1490,12 @@ static PyObject *_wrap_wxMouseEvent_Leaving(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Leaving(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Leaving(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1315,8 +1524,12 @@ static PyObject *_wrap_wxMouseEvent_Position(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxMouseEvent_Position(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMouseEvent_Position(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -1348,8 +1561,12 @@ static PyObject *_wrap_wxMouseEvent_GetPosition(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxPoint (wxMouseEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxMouseEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1379,8 +1596,12 @@ static PyObject *_wrap_wxMouseEvent_GetLogicalPosition(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = new wxPoint (wxMouseEvent_GetLogicalPosition(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxMouseEvent_GetLogicalPosition(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1401,8 +1622,12 @@ static PyObject *_wrap_wxMouseEvent_GetX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxMouseEvent_GetX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxMouseEvent_GetX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1422,8 +1647,12 @@ static PyObject *_wrap_wxMouseEvent_GetY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxMouseEvent_GetY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxMouseEvent_GetY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1451,8 +1680,12 @@ static PyObject *_wrap_wxKeyEvent_ControlDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_ControlDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_ControlDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1472,8 +1705,12 @@ static PyObject *_wrap_wxKeyEvent_MetaDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_MetaDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_MetaDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1493,8 +1730,12 @@ static PyObject *_wrap_wxKeyEvent_AltDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_AltDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_AltDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1514,8 +1755,12 @@ static PyObject *_wrap_wxKeyEvent_ShiftDown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_ShiftDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_ShiftDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1535,8 +1780,12 @@ static PyObject *_wrap_wxKeyEvent_KeyCode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxKeyEvent_KeyCode(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxKeyEvent_KeyCode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1565,8 +1814,12 @@ static PyObject *_wrap_wxMoveEvent_GetPosition(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxPoint (wxMoveEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxMoveEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1604,8 +1857,12 @@ static PyObject *_wrap_wxEraseEvent_GetDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxDC *)wxEraseEvent_GetDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxDC *)wxEraseEvent_GetDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1642,8 +1899,12 @@ static PyObject *_wrap_wxActivateEvent_GetActive(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxActivateEvent_GetActive(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxActivateEvent_GetActive(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1679,8 +1940,12 @@ static PyObject *_wrap_wxMenuEvent_GetMenuId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxMenuEvent_GetMenuId(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMenuEvent_GetMenuId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1710,8 +1975,12 @@ static PyObject *_wrap_wxShowEvent_SetShow(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxShowEvent_SetShow(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxShowEvent_SetShow(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1732,8 +2001,12 @@ static PyObject *_wrap_wxShowEvent_GetShow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxShowEvent_GetShow(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxShowEvent_GetShow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1778,8 +2051,12 @@ static PyObject *_wrap_wxJoystickEvent_GetPosition(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = new wxPoint (wxJoystickEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxJoystickEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1800,8 +2077,12 @@ static PyObject *_wrap_wxJoystickEvent_GetZPosition(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetZPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetZPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1821,8 +2102,12 @@ static PyObject *_wrap_wxJoystickEvent_GetButtonState(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetButtonState(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetButtonState(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1842,8 +2127,12 @@ static PyObject *_wrap_wxJoystickEvent_GetButtonChange(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetButtonChange(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetButtonChange(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1863,8 +2152,12 @@ static PyObject *_wrap_wxJoystickEvent_GetJoystick(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetJoystick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetJoystick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1884,8 +2177,12 @@ static PyObject *_wrap_wxJoystickEvent_SetJoystick(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxJoystickEvent_SetJoystick(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetJoystick(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1906,8 +2203,12 @@ static PyObject *_wrap_wxJoystickEvent_SetButtonState(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxJoystickEvent_SetButtonState(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetButtonState(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1928,8 +2229,12 @@ static PyObject *_wrap_wxJoystickEvent_SetButtonChange(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxJoystickEvent_SetButtonChange(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetButtonChange(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1957,8 +2262,12 @@ static PyObject *_wrap_wxJoystickEvent_SetPosition(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxJoystickEvent_SetPosition(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetPosition(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1979,8 +2288,12 @@ static PyObject *_wrap_wxJoystickEvent_SetZPosition(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxJoystickEvent_SetZPosition(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetZPosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2001,8 +2314,12 @@ static PyObject *_wrap_wxJoystickEvent_IsButton(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_IsButton(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_IsButton(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2022,8 +2339,12 @@ static PyObject *_wrap_wxJoystickEvent_IsMove(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_IsMove(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_IsMove(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2043,8 +2364,12 @@ static PyObject *_wrap_wxJoystickEvent_IsZMove(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_IsZMove(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_IsZMove(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2065,8 +2390,12 @@ static PyObject *_wrap_wxJoystickEvent_ButtonDown(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_ButtonDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_ButtonDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2087,8 +2416,12 @@ static PyObject *_wrap_wxJoystickEvent_ButtonUp(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_ButtonUp(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_ButtonUp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2109,8 +2442,12 @@ static PyObject *_wrap_wxJoystickEvent_ButtonIsDown(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_ButtonIsDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_ButtonIsDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2139,8 +2476,12 @@ static PyObject *_wrap_wxDropFilesEvent_GetPosition(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = new wxPoint (wxDropFilesEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxDropFilesEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2161,8 +2502,12 @@ static PyObject *_wrap_wxDropFilesEvent_GetNumberOfFiles(PyObject *self, PyObjec
         return NULL;
         }
     }
-    _result = (int )wxDropFilesEvent_GetNumberOfFiles(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDropFilesEvent_GetNumberOfFiles(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2196,8 +2541,12 @@ static PyObject *_wrap_wxDropFilesEvent_GetFiles(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (PyObject *)wxDropFilesEvent_GetFiles(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxDropFilesEvent_GetFiles(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -2229,8 +2578,12 @@ static PyObject *_wrap_wxIdleEvent_RequestMore(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxIdleEvent_RequestMore(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIdleEvent_RequestMore(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2251,8 +2604,12 @@ static PyObject *_wrap_wxIdleEvent_MoreRequested(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxIdleEvent_MoreRequested(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxIdleEvent_MoreRequested(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2280,8 +2637,12 @@ static PyObject *_wrap_wxUpdateUIEvent_GetChecked(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetChecked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetChecked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2301,8 +2662,12 @@ static PyObject *_wrap_wxUpdateUIEvent_GetEnabled(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetEnabled(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2322,8 +2687,12 @@ static PyObject *_wrap_wxUpdateUIEvent_GetText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxUpdateUIEvent_GetText(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxUpdateUIEvent_GetText(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2348,8 +2717,12 @@ static PyObject *_wrap_wxUpdateUIEvent_GetSetText(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetSetText(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetSetText(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2369,8 +2742,12 @@ static PyObject *_wrap_wxUpdateUIEvent_GetSetChecked(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetSetChecked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetSetChecked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2390,8 +2767,12 @@ static PyObject *_wrap_wxUpdateUIEvent_GetSetEnabled(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetSetEnabled(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetSetEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2413,8 +2794,12 @@ static PyObject *_wrap_wxUpdateUIEvent_Check(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxUpdateUIEvent_Check(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxUpdateUIEvent_Check(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2437,8 +2822,12 @@ static PyObject *_wrap_wxUpdateUIEvent_Enable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxUpdateUIEvent_Enable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxUpdateUIEvent_Enable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2465,10 +2854,14 @@ static PyObject *_wrap_wxUpdateUIEvent_SetText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxUpdateUIEvent_SetText(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxUpdateUIEvent_SetText(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2485,7 +2878,135 @@ static void *SwigwxSysColourChangedEventTowxEvent(void *ptr) {
     return (void *) dest;
 }
 
+static void *SwigwxPyEventTowxCommandEvent(void *ptr) {
+    wxPyEvent *src;
+    wxCommandEvent *dest;
+    src = (wxPyEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyEventTowxEvent(void *ptr) {
+    wxPyEvent *src;
+    wxEvent *dest;
+    src = (wxPyEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define new_wxPyEvent(_swigarg0,_swigarg1) (new wxPyEvent(_swigarg0,_swigarg1))
+static PyObject *_wrap_new_wxPyEvent(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPyEvent * _result;
+    wxEventType  _arg0 = (wxEVT_NULL);
+    PyObject * _arg1 = Py_None;
+    PyObject * _obj1 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"|iO:new_wxPyEvent",&_arg0,&_obj1)) 
+        return NULL;
+    if (_obj1)
+{
+  _arg1 = _obj1;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyEvent *)new_wxPyEvent(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyEvent_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define delete_wxPyEvent(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxPyEvent(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPyEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:delete_wxPyEvent",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxPyEvent. Expected _wxPyEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPyEvent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyEvent_SetUserData(_swigobj,_swigarg0)  (_swigobj->SetUserData(_swigarg0))
+static PyObject *_wrap_wxPyEvent_SetUserData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPyEvent * _arg0;
+    PyObject * _arg1;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO:wxPyEvent_SetUserData",&_argc0,&_obj1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEvent_SetUserData. Expected _wxPyEvent_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyEvent_SetUserData(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyEvent_GetUserData(_swigobj)  (_swigobj->GetUserData())
+static PyObject *_wrap_wxPyEvent_GetUserData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    PyObject * _result;
+    wxPyEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxPyEvent_GetUserData",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxPyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEvent_GetUserData. Expected _wxPyEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxPyEvent_GetUserData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
+  _resultobj = _result;
+}
+    return _resultobj;
+}
+
 static PyMethodDef eventscMethods[] = {
+        { "wxPyEvent_GetUserData", _wrap_wxPyEvent_GetUserData, 1 },
+        { "wxPyEvent_SetUserData", _wrap_wxPyEvent_SetUserData, 1 },
+        { "delete_wxPyEvent", _wrap_delete_wxPyEvent, 1 },
+        { "new_wxPyEvent", _wrap_new_wxPyEvent, 1 },
         { "wxUpdateUIEvent_SetText", _wrap_wxUpdateUIEvent_SetText, 1 },
         { "wxUpdateUIEvent_Enable", _wrap_wxUpdateUIEvent_Enable, 1 },
         { "wxUpdateUIEvent_Check", _wrap_wxUpdateUIEvent_Check, 1 },
@@ -2599,6 +3120,8 @@ SWIGEXPORT(void,initeventsc)() {
  * (Used by the SWIG pointer type-checker).
  */
         SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_wxEvent","_class_wxPyEvent",SwigwxPyEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_wxPyEvent",SwigwxPyEventTowxEvent);
         SWIG_RegisterMapping("_wxEvent","_class_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
         SWIG_RegisterMapping("_wxEvent","_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
         SWIG_RegisterMapping("_wxEvent","_class_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent);
@@ -2662,6 +3185,7 @@ SWIGEXPORT(void,initeventsc)() {
         SWIG_RegisterMapping("_class_wxPaintEvent","_wxPaintEvent",0);
         SWIG_RegisterMapping("_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
         SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
@@ -2670,6 +3194,8 @@ SWIGEXPORT(void,initeventsc)() {
         SWIG_RegisterMapping("_uint","_unsigned_int",0);
         SWIG_RegisterMapping("_uint","_int",0);
         SWIG_RegisterMapping("_uint","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxEvent","_class_wxPyEvent",SwigwxPyEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxPyEvent",SwigwxPyEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_class_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_class_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent);
@@ -2716,6 +3242,8 @@ SWIGEXPORT(void,initeventsc)() {
         SWIG_RegisterMapping("_class_wxEvent","_wxSizeEvent",SwigwxSizeEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_wxEvent",0);
         SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
+        SWIG_RegisterMapping("_wxCommandEvent","_class_wxPyEvent",SwigwxPyEventTowxCommandEvent);
+        SWIG_RegisterMapping("_wxCommandEvent","_wxPyEvent",SwigwxPyEventTowxCommandEvent);
         SWIG_RegisterMapping("_wxCommandEvent","_class_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
         SWIG_RegisterMapping("_wxCommandEvent","_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
         SWIG_RegisterMapping("_wxCommandEvent","_class_wxScrollEvent",SwigwxScrollEventTowxCommandEvent);
@@ -2725,6 +3253,7 @@ SWIGEXPORT(void,initeventsc)() {
         SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
         SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_wxScrollEvent","_class_wxSpinEvent",SwigwxSpinEventTowxScrollEvent);
         SWIG_RegisterMapping("_wxScrollEvent","_wxSpinEvent",SwigwxSpinEventTowxScrollEvent);
@@ -2796,6 +3325,8 @@ SWIGEXPORT(void,initeventsc)() {
         SWIG_RegisterMapping("_wxRegion","_class_wxRegion",0);
         SWIG_RegisterMapping("_class_wxShowEvent","_wxShowEvent",0);
         SWIG_RegisterMapping("_wxActivateEvent","_class_wxActivateEvent",0);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxPyEvent",SwigwxPyEventTowxCommandEvent);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_wxPyEvent",SwigwxPyEventTowxCommandEvent);
         SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
         SWIG_RegisterMapping("_class_wxCommandEvent","_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
         SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxScrollEvent",SwigwxScrollEventTowxCommandEvent);
index d773d463d67838d365e6939d1099a12403a3d9a5..40699659ba59511984ddc2d88e1b01e48787952d 100644 (file)
@@ -605,6 +605,29 @@ class wxSysColourChangedEvent(wxSysColourChangedEventPtr):
 
 
 
+class wxPyEventPtr(wxCommandEventPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __del__(self):
+        if self.thisown == 1 :
+            eventsc.delete_wxPyEvent(self.this)
+    def SetUserData(self,arg0):
+        val = eventsc.wxPyEvent_SetUserData(self.this,arg0)
+        return val
+    def GetUserData(self):
+        val = eventsc.wxPyEvent_GetUserData(self.this)
+        return val
+    def __repr__(self):
+        return "<C wxPyEvent instance>"
+class wxPyEvent(wxPyEventPtr):
+    def __init__(self,*args) :
+        self.this = apply(eventsc.new_wxPyEvent,()+args)
+        self.thisown = 1
+
+
+
+
 
 
 #-------------- FUNCTION WRAPPERS ------------------
index 0d67ab33b368bdc0dc5b295a545725f1a68d5800..ed67e96c6d7e261040e3e7ff43da7069f4956315 100644 (file)
@@ -162,7 +162,7 @@ static PyObject *_wrap_new_wxFrame(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -176,8 +176,12 @@ static PyObject *_wrap_new_wxFrame(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxFrame *)new_wxFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFrame_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxFrame *)new_wxFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFrame_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -202,8 +206,12 @@ static PyObject *_wrap_wxFrame_Centre(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFrame_Centre(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_Centre(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -214,7 +222,7 @@ static PyObject *_wrap_wxFrame_CreateStatusBar(PyObject *self, PyObject *args) {
     wxStatusBar * _result;
     wxFrame * _arg0;
     int  _arg1 = 1;
-    long  _arg2 = wxST_SIZEGRIP;
+    long  _arg2 = (wxST_SIZEGRIP);
     wxWindowID  _arg3 = -1;
     char * _arg4 = "statusBar";
     char * _argc0 = 0;
@@ -229,8 +237,12 @@ static PyObject *_wrap_wxFrame_CreateStatusBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxStatusBar *)wxFrame_CreateStatusBar(_arg0,_arg1,_arg2,_arg3,_arg4);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStatusBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxStatusBar *)wxFrame_CreateStatusBar(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStatusBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -255,8 +267,12 @@ static PyObject *_wrap_wxFrame_CreateToolBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxToolBar *)wxFrame_CreateToolBar(_arg0,_arg1,_arg2,_arg3);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolBar *)wxFrame_CreateToolBar(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -278,8 +294,12 @@ static PyObject *_wrap_wxFrame_GetMenuBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMenuBar *)wxFrame_GetMenuBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenuBar *)wxFrame_GetMenuBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -301,8 +321,12 @@ static PyObject *_wrap_wxFrame_GetStatusBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxStatusBar *)wxFrame_GetStatusBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStatusBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxStatusBar *)wxFrame_GetStatusBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStatusBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -323,8 +347,12 @@ static PyObject *_wrap_wxFrame_GetTitle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxFrame_GetTitle(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFrame_GetTitle(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -350,8 +378,12 @@ static PyObject *_wrap_wxFrame_GetToolBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxToolBar *)wxFrame_GetToolBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolBar *)wxFrame_GetToolBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -374,8 +406,12 @@ static PyObject *_wrap_wxFrame_Iconize(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxFrame_Iconize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_Iconize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -396,8 +432,12 @@ static PyObject *_wrap_wxFrame_IsIconized(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxFrame_IsIconized(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxFrame_IsIconized(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -419,8 +459,12 @@ static PyObject *_wrap_wxFrame_Maximize(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxFrame_Maximize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_Maximize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -448,8 +492,12 @@ static PyObject *_wrap_wxFrame_SetAcceleratorTable(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxFrame_SetAcceleratorTable(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetAcceleratorTable(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -477,8 +525,12 @@ static PyObject *_wrap_wxFrame_SetIcon(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFrame_SetIcon(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetIcon(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -506,8 +558,12 @@ static PyObject *_wrap_wxFrame_SetMenuBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFrame_SetMenuBar(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetMenuBar(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -535,8 +591,12 @@ static PyObject *_wrap_wxFrame_SetStatusBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFrame_SetStatusBar(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetStatusBar(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -564,10 +624,14 @@ static PyObject *_wrap_wxFrame_SetStatusText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFrame_SetStatusText(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetStatusText(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -602,10 +666,19 @@ static PyObject *_wrap_wxFrame_SetStatusWidths(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg1 = PyList_Size(_obj2);
+    if (_obj2) {
+        _arg1 = PyList_Size(_obj2);
+    }
+    else {
+        _arg1 = 0;
+    }
 }
-    wxFrame_SetStatusWidths(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetStatusWidths(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     delete [] _arg2;
@@ -635,10 +708,14 @@ static PyObject *_wrap_wxFrame_SetTitle(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFrame_SetTitle(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetTitle(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -670,8 +747,12 @@ static PyObject *_wrap_wxFrame_SetToolBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFrame_SetToolBar(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFrame_SetToolBar(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -731,7 +812,7 @@ static PyObject *_wrap_new_wxMiniFrame(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -745,8 +826,12 @@ static PyObject *_wrap_new_wxMiniFrame(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMiniFrame *)new_wxMiniFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMiniFrame_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMiniFrame *)new_wxMiniFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMiniFrame_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -834,6 +919,7 @@ SWIGEXPORT(void,initframesc)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -864,6 +950,7 @@ SWIGEXPORT(void,initframesc)() {
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_class_wxToolBar","_wxToolBar",0);
index a677cdb08046e73e363a917a42c85e82ee7313f1..3bb0531df3b51c14144fa235cd69fb8e251766b0 100644 (file)
@@ -124,9 +124,10 @@ static char* wxStringErrorMsg = "string type is required for parameter";
         return new wxBitmap(width, height, depth);
     }
 
-                                // This one won't own the reference, so Python won't call
-                                // the dtor, this is good for toolbars and such where
-                                // the parent will manage the bitmap.
+                                // This one won't own the reference, so Python
+                                // won't call the dtor, this is good for
+                                // toolbars and such where the parent will
+                                // manage the bitmap.
     wxBitmap* wxNoRefBitmap(char* name, long flags) {
         return new wxBitmap(name, flags);
     }
@@ -203,8 +204,12 @@ static PyObject *_wrap_wxEmptyBitmap(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"ii|i:wxEmptyBitmap",&_arg0,&_arg1,&_arg2)) 
         return NULL;
-    _result = (wxBitmap *)wxEmptyBitmap(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxEmptyBitmap(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -219,8 +224,12 @@ static PyObject *_wrap_wxNoRefBitmap(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"sl:wxNoRefBitmap",&_arg0,&_arg1)) 
         return NULL;
-    _result = (wxBitmap *)wxNoRefBitmap(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxNoRefBitmap(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -249,8 +258,12 @@ static PyObject *_wrap_wxMaskColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMask *)wxMaskColour(*_arg0,*_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMask_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMask *)wxMaskColour(*_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMask_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -264,8 +277,12 @@ static PyObject *_wrap_wxStockCursor(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"i:wxStockCursor",&_arg0)) 
         return NULL;
-    _result = (wxCursor *)wxPyStockCursor(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxCursor_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxCursor *)wxPyStockCursor(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxCursor_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -285,10 +302,14 @@ static PyObject *_wrap_wxNamedColour(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
-    _result = (wxColour *)wxNamedColour(*_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxColour *)wxNamedColour(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -313,8 +334,12 @@ static PyObject *_wrap_wxMemoryDCFromDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMemoryDC *)wxMemoryDCFromDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMemoryDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMemoryDC *)wxMemoryDCFromDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMemoryDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -966,10 +991,14 @@ static PyObject *_wrap_new_wxBitmap(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
-    _result = (wxBitmap *)new_wxBitmap(*_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)new_wxBitmap(*_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -993,8 +1022,12 @@ static PyObject *_wrap_delete_wxBitmap(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxBitmap(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxBitmap(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1015,8 +1048,12 @@ static PyObject *_wrap_wxBitmap_GetDepth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxBitmap_GetDepth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxBitmap_GetDepth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1036,8 +1073,12 @@ static PyObject *_wrap_wxBitmap_GetHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxBitmap_GetHeight(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxBitmap_GetHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1058,8 +1099,12 @@ static PyObject *_wrap_wxBitmap_GetPalette(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxPalette *)wxBitmap_GetPalette(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPalette_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPalette *)wxBitmap_GetPalette(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPalette_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1081,8 +1126,12 @@ static PyObject *_wrap_wxBitmap_GetMask(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMask *)wxBitmap_GetMask(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMask_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMask *)wxBitmap_GetMask(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMask_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1103,8 +1152,12 @@ static PyObject *_wrap_wxBitmap_GetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxBitmap_GetWidth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxBitmap_GetWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1132,10 +1185,14 @@ static PyObject *_wrap_wxBitmap_LoadFile(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxBitmap_LoadFile(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxBitmap_LoadFile(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1159,8 +1216,12 @@ static PyObject *_wrap_wxBitmap_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxBitmap_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxBitmap_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1190,7 +1251,7 @@ static PyObject *_wrap_wxBitmap_SaveFile(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPalette_p")) {
@@ -1198,8 +1259,12 @@ static PyObject *_wrap_wxBitmap_SaveFile(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxBitmap_SaveFile(_arg0,*_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxBitmap_SaveFile(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1223,8 +1288,12 @@ static PyObject *_wrap_wxBitmap_SetDepth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBitmap_SetDepth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap_SetDepth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1245,8 +1314,12 @@ static PyObject *_wrap_wxBitmap_SetHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBitmap_SetHeight(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap_SetHeight(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1274,8 +1347,12 @@ static PyObject *_wrap_wxBitmap_SetMask(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBitmap_SetMask(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap_SetMask(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1296,8 +1373,12 @@ static PyObject *_wrap_wxBitmap_SetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBitmap_SetWidth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap_SetWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1319,8 +1400,12 @@ static PyObject *_wrap_new_wxMask(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMask *)new_wxMask(*_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMask_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMask *)new_wxMask(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMask_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1340,8 +1425,12 @@ static PyObject *_wrap_delete_wxMask(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxMask(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxMask(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1369,8 +1458,12 @@ static PyObject *_wrap_delete_wxIcon(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxIcon(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxIcon(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1391,8 +1484,12 @@ static PyObject *_wrap_wxIcon_GetDepth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxIcon_GetDepth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxIcon_GetDepth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1412,8 +1509,12 @@ static PyObject *_wrap_wxIcon_GetHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxIcon_GetHeight(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxIcon_GetHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1433,8 +1534,12 @@ static PyObject *_wrap_wxIcon_GetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxIcon_GetWidth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxIcon_GetWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1462,10 +1567,14 @@ static PyObject *_wrap_wxIcon_LoadFile(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxIcon_LoadFile(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxIcon_LoadFile(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1489,8 +1598,12 @@ static PyObject *_wrap_wxIcon_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxIcon_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxIcon_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1510,8 +1623,12 @@ static PyObject *_wrap_wxIcon_SetDepth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxIcon_SetDepth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIcon_SetDepth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1532,8 +1649,12 @@ static PyObject *_wrap_wxIcon_SetHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxIcon_SetHeight(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIcon_SetHeight(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1554,8 +1675,12 @@ static PyObject *_wrap_wxIcon_SetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxIcon_SetWidth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIcon_SetWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1583,8 +1708,12 @@ static PyObject *_wrap_delete_wxCursor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxCursor(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxCursor(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1605,8 +1734,12 @@ static PyObject *_wrap_wxCursor_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxCursor_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCursor_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1630,8 +1763,12 @@ static PyObject *_wrap_new_wxFont(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"iiii|is:new_wxFont",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
         return NULL;
-    _result = (wxFont *)new_wxFont(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxFont *)new_wxFont(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1652,8 +1789,12 @@ static PyObject *_wrap_wxFont_GetFaceName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxFont_GetFaceName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFont_GetFaceName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1678,8 +1819,12 @@ static PyObject *_wrap_wxFont_GetFamily(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxFont_GetFamily(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFont_GetFamily(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1699,8 +1844,12 @@ static PyObject *_wrap_wxFont_GetPointSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxFont_GetPointSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFont_GetPointSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1720,8 +1869,12 @@ static PyObject *_wrap_wxFont_GetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxFont_GetStyle(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFont_GetStyle(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1741,8 +1894,12 @@ static PyObject *_wrap_wxFont_GetUnderlined(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxFont_GetUnderlined(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxFont_GetUnderlined(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1762,8 +1919,12 @@ static PyObject *_wrap_wxFont_GetWeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxFont_GetWeight(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxFont_GetWeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1789,10 +1950,14 @@ static PyObject *_wrap_wxFont_SetFaceName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxFont_SetFaceName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont_SetFaceName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1817,8 +1982,12 @@ static PyObject *_wrap_wxFont_SetFamily(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont_SetFamily(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont_SetFamily(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1839,8 +2008,12 @@ static PyObject *_wrap_wxFont_SetPointSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont_SetPointSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont_SetPointSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1861,8 +2034,12 @@ static PyObject *_wrap_wxFont_SetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont_SetStyle(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont_SetStyle(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1885,8 +2062,12 @@ static PyObject *_wrap_wxFont_SetUnderlined(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxFont_SetUnderlined(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont_SetUnderlined(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1907,8 +2088,12 @@ static PyObject *_wrap_wxFont_SetWeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont_SetWeight(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont_SetWeight(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1925,8 +2110,12 @@ static PyObject *_wrap_new_wxColour(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"|bbb:new_wxColour",&_arg0,&_arg1,&_arg2)) 
         return NULL;
-    _result = (wxColour *)new_wxColour(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxColour *)new_wxColour(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1946,8 +2135,12 @@ static PyObject *_wrap_delete_wxColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxColour(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxColour(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1968,8 +2161,12 @@ static PyObject *_wrap_wxColour_Red(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (unsigned char )wxColour_Red(_arg0);
-    _resultobj = Py_BuildValue("b",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxColour_Red(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
     return _resultobj;
 }
 
@@ -1989,8 +2186,12 @@ static PyObject *_wrap_wxColour_Green(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (unsigned char )wxColour_Green(_arg0);
-    _resultobj = Py_BuildValue("b",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxColour_Green(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
     return _resultobj;
 }
 
@@ -2010,8 +2211,12 @@ static PyObject *_wrap_wxColour_Blue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (unsigned char )wxColour_Blue(_arg0);
-    _resultobj = Py_BuildValue("b",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxColour_Blue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
     return _resultobj;
 }
 
@@ -2031,8 +2236,12 @@ static PyObject *_wrap_wxColour_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxColour_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxColour_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2054,8 +2263,12 @@ static PyObject *_wrap_wxColour_Set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour_Set(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour_Set(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2082,8 +2295,12 @@ static PyObject *_wrap_wxColour_Get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxColour_Get(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxColour_Get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -2111,8 +2328,12 @@ static PyObject *_wrap_new_wxPen(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxPen *)new_wxPen(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPen_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPen *)new_wxPen(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPen_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2133,8 +2354,12 @@ static PyObject *_wrap_wxPen_GetCap(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPen_GetCap(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPen_GetCap(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2155,9 +2380,13 @@ static PyObject *_wrap_wxPen_GetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour & _result_ref = wxPen_GetColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxPen_GetColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2178,8 +2407,12 @@ static PyObject *_wrap_wxPen_GetJoin(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPen_GetJoin(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPen_GetJoin(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2199,8 +2432,12 @@ static PyObject *_wrap_wxPen_GetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPen_GetStyle(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPen_GetStyle(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2220,8 +2457,12 @@ static PyObject *_wrap_wxPen_GetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPen_GetWidth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPen_GetWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2241,8 +2482,12 @@ static PyObject *_wrap_wxPen_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxPen_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPen_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2262,8 +2507,12 @@ static PyObject *_wrap_wxPen_SetCap(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPen_SetCap(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPen_SetCap(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2291,8 +2540,12 @@ static PyObject *_wrap_wxPen_SetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPen_SetColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPen_SetColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2313,8 +2566,12 @@ static PyObject *_wrap_wxPen_SetJoin(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPen_SetJoin(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPen_SetJoin(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2335,8 +2592,12 @@ static PyObject *_wrap_wxPen_SetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPen_SetStyle(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPen_SetStyle(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2357,8 +2618,12 @@ static PyObject *_wrap_wxPen_SetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPen_SetWidth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPen_SetWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2384,8 +2649,12 @@ static PyObject *_wrap_new_wxBrush(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxBrush *)new_wxBrush(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBrush *)new_wxBrush(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2407,9 +2676,13 @@ static PyObject *_wrap_wxBrush_GetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour & _result_ref = wxBrush_GetColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxBrush_GetColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2431,8 +2704,12 @@ static PyObject *_wrap_wxBrush_GetStipple(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxBrush_GetStipple(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxBrush_GetStipple(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2453,8 +2730,12 @@ static PyObject *_wrap_wxBrush_GetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxBrush_GetStyle(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxBrush_GetStyle(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2474,8 +2755,12 @@ static PyObject *_wrap_wxBrush_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxBrush_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxBrush_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2502,8 +2787,12 @@ static PyObject *_wrap_wxBrush_SetColour(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBrush_SetColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush_SetColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2531,8 +2820,12 @@ static PyObject *_wrap_wxBrush_SetStipple(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBrush_SetStipple(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush_SetStipple(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2553,8 +2846,12 @@ static PyObject *_wrap_wxBrush_SetStyle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBrush_SetStyle(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush_SetStyle(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2574,8 +2871,12 @@ static PyObject *_wrap_delete_wxDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxDC(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2595,8 +2896,12 @@ static PyObject *_wrap_wxDC_BeginDrawing(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_BeginDrawing(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_BeginDrawing(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2632,8 +2937,12 @@ static PyObject *_wrap_wxDC_Blit(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxDC_Blit(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDC_Blit(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2652,8 +2961,12 @@ static PyObject *_wrap_wxDC_Clear(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_Clear(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_Clear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2675,8 +2988,12 @@ static PyObject *_wrap_wxDC_CrossHair(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_CrossHair(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_CrossHair(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2696,8 +3013,12 @@ static PyObject *_wrap_wxDC_DestroyClippingRegion(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxDC_DestroyClippingRegion(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DestroyClippingRegion(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2719,8 +3040,12 @@ static PyObject *_wrap_wxDC_DeviceToLogicalX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_DeviceToLogicalX(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_DeviceToLogicalX(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2741,8 +3066,12 @@ static PyObject *_wrap_wxDC_DeviceToLogicalXRel(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (long )wxDC_DeviceToLogicalXRel(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_DeviceToLogicalXRel(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2763,8 +3092,12 @@ static PyObject *_wrap_wxDC_DeviceToLogicalY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_DeviceToLogicalY(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_DeviceToLogicalY(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2785,8 +3118,12 @@ static PyObject *_wrap_wxDC_DeviceToLogicalYRel(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (long )wxDC_DeviceToLogicalYRel(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_DeviceToLogicalYRel(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2811,8 +3148,12 @@ static PyObject *_wrap_wxDC_DrawArc(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawArc(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawArc(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2836,8 +3177,12 @@ static PyObject *_wrap_wxDC_DrawEllipse(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawEllipse(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawEllipse(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2863,8 +3208,12 @@ static PyObject *_wrap_wxDC_DrawEllipticArc(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawEllipticArc(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawEllipticArc(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2894,8 +3243,12 @@ static PyObject *_wrap_wxDC_DrawIcon(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawIcon(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawIcon(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2919,8 +3272,12 @@ static PyObject *_wrap_wxDC_DrawLine(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawLine(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawLine(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2953,10 +3310,19 @@ static PyObject *_wrap_wxDC_DrawLines(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg1 = PyList_Size(_obj2);
+    if (_obj2) {
+        _arg1 = PyList_Size(_obj2);
+    }
+    else {
+        _arg1 = 0;
+    }
 }
-    wxDC_DrawLines(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawLines(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     delete [] _arg2;
@@ -2993,10 +3359,19 @@ static PyObject *_wrap_wxDC_DrawPolygon(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg1 = PyList_Size(_obj2);
+    if (_obj2) {
+        _arg1 = PyList_Size(_obj2);
+    }
+    else {
+        _arg1 = 0;
+    }
 }
-    wxDC_DrawPolygon(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawPolygon(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     delete [] _arg2;
@@ -3021,8 +3396,12 @@ static PyObject *_wrap_wxDC_DrawPoint(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawPoint(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawPoint(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3046,8 +3425,12 @@ static PyObject *_wrap_wxDC_DrawRectangle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_DrawRectangle(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawRectangle(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3072,8 +3455,12 @@ static PyObject *_wrap_wxDC_DrawRoundedRectangle(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxDC_DrawRoundedRectangle(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawRoundedRectangle(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3104,10 +3491,19 @@ static PyObject *_wrap_wxDC_DrawSpline(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg1 = PyList_Size(_obj2);
+    if (_obj2) {
+        _arg1 = PyList_Size(_obj2);
+    }
+    else {
+        _arg1 = 0;
+    }
 }
-    wxDC_DrawSpline(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawSpline(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     delete [] _arg2;
@@ -3139,10 +3535,14 @@ static PyObject *_wrap_wxDC_DrawText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxDC_DrawText(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawText(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -3166,8 +3566,12 @@ static PyObject *_wrap_wxDC_EndDoc(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_EndDoc(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_EndDoc(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3187,8 +3591,12 @@ static PyObject *_wrap_wxDC_EndDrawing(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_EndDrawing(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_EndDrawing(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3208,8 +3616,12 @@ static PyObject *_wrap_wxDC_EndPage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_EndPage(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_EndPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3240,8 +3652,12 @@ static PyObject *_wrap_wxDC_FloodFill(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_FloodFill(_arg0,_arg1,_arg2,*_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_FloodFill(_arg0,_arg1,_arg2,*_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3263,9 +3679,13 @@ static PyObject *_wrap_wxDC_GetBackground(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBrush & _result_ref = wxDC_GetBackground(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush & _result_ref = wxDC_GetBackground(_arg0);
     _result = (wxBrush *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3287,9 +3707,13 @@ static PyObject *_wrap_wxDC_GetBrush(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBrush & _result_ref = wxDC_GetBrush(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush & _result_ref = wxDC_GetBrush(_arg0);
     _result = (wxBrush *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3310,8 +3734,12 @@ static PyObject *_wrap_wxDC_GetCharHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_GetCharHeight(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_GetCharHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3331,8 +3759,12 @@ static PyObject *_wrap_wxDC_GetCharWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_GetCharWidth(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_GetCharWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3371,8 +3803,12 @@ static PyObject *_wrap_wxDC_GetClippingBox(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_GetClippingBox(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_GetClippingBox(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3414,9 +3850,13 @@ static PyObject *_wrap_wxDC_GetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont & _result_ref = wxDC_GetFont(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxDC_GetFont(_arg0);
     _result = (wxFont *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3437,8 +3877,12 @@ static PyObject *_wrap_wxDC_GetLogicalFunction(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxDC_GetLogicalFunction(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDC_GetLogicalFunction(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3458,8 +3902,12 @@ static PyObject *_wrap_wxDC_GetMapMode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxDC_GetMapMode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDC_GetMapMode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3479,8 +3927,12 @@ static PyObject *_wrap_wxDC_GetOptimization(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxDC_GetOptimization(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDC_GetOptimization(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3501,9 +3953,13 @@ static PyObject *_wrap_wxDC_GetPen(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPen & _result_ref = wxDC_GetPen(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPen & _result_ref = wxDC_GetPen(_arg0);
     _result = (wxPen *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPen_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPen_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3531,8 +3987,12 @@ static PyObject *_wrap_wxDC_GetPixel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxColour *)wxDC_GetPixel(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxColour *)wxDC_GetPixel(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3562,8 +4022,12 @@ static PyObject *_wrap_wxDC_GetSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_GetSize(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_GetSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3595,9 +4059,13 @@ static PyObject *_wrap_wxDC_GetTextBackground(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour & _result_ref = wxDC_GetTextBackground(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxDC_GetTextBackground(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3634,10 +4102,14 @@ static PyObject *_wrap_wxDC_GetTextExtent(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxDC_GetTextExtent(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_GetTextExtent(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3700,7 +4172,7 @@ static PyObject *_wrap_wxDC_GetFullTextExtent(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_argc6) {
         if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_wxFont_p")) {
@@ -3708,8 +4180,12 @@ static PyObject *_wrap_wxDC_GetFullTextExtent(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_GetFullTextExtent(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_GetFullTextExtent(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3755,9 +4231,13 @@ static PyObject *_wrap_wxDC_GetTextForeground(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxColour & _result_ref = wxDC_GetTextForeground(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxDC_GetTextForeground(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3779,8 +4259,12 @@ static PyObject *_wrap_wxDC_LogicalToDeviceX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_LogicalToDeviceX(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_LogicalToDeviceX(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3801,8 +4285,12 @@ static PyObject *_wrap_wxDC_LogicalToDeviceXRel(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (long )wxDC_LogicalToDeviceXRel(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_LogicalToDeviceXRel(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3823,8 +4311,12 @@ static PyObject *_wrap_wxDC_LogicalToDeviceY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_LogicalToDeviceY(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_LogicalToDeviceY(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3845,8 +4337,12 @@ static PyObject *_wrap_wxDC_LogicalToDeviceYRel(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (long )wxDC_LogicalToDeviceYRel(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_LogicalToDeviceYRel(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3866,8 +4362,12 @@ static PyObject *_wrap_wxDC_MaxX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_MaxX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_MaxX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3887,8 +4387,12 @@ static PyObject *_wrap_wxDC_MaxY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_MaxY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_MaxY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3908,8 +4412,12 @@ static PyObject *_wrap_wxDC_MinX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_MinX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_MinX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3929,8 +4437,12 @@ static PyObject *_wrap_wxDC_MinY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxDC_MinY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxDC_MinY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3950,8 +4462,12 @@ static PyObject *_wrap_wxDC_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxDC_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDC_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3972,8 +4488,12 @@ static PyObject *_wrap_wxDC_SetDeviceOrigin(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetDeviceOrigin(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetDeviceOrigin(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4001,8 +4521,12 @@ static PyObject *_wrap_wxDC_SetBackground(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetBackground(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetBackground(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4023,8 +4547,12 @@ static PyObject *_wrap_wxDC_SetBackgroundMode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetBackgroundMode(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetBackgroundMode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4048,8 +4576,12 @@ static PyObject *_wrap_wxDC_SetClippingRegion(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetClippingRegion(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetClippingRegion(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4077,8 +4609,12 @@ static PyObject *_wrap_wxDC_SetPalette(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetPalette(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetPalette(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4106,8 +4642,12 @@ static PyObject *_wrap_wxDC_SetBrush(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetBrush(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetBrush(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4135,8 +4675,12 @@ static PyObject *_wrap_wxDC_SetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4157,8 +4701,12 @@ static PyObject *_wrap_wxDC_SetLogicalFunction(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetLogicalFunction(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetLogicalFunction(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4179,8 +4727,12 @@ static PyObject *_wrap_wxDC_SetMapMode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetMapMode(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetMapMode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4203,8 +4755,12 @@ static PyObject *_wrap_wxDC_SetOptimization(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxDC_SetOptimization(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetOptimization(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4232,8 +4788,12 @@ static PyObject *_wrap_wxDC_SetPen(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetPen(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetPen(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4261,8 +4821,12 @@ static PyObject *_wrap_wxDC_SetTextBackground(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetTextBackground(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetTextBackground(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4290,8 +4854,12 @@ static PyObject *_wrap_wxDC_SetTextForeground(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetTextForeground(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetTextForeground(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4313,8 +4881,12 @@ static PyObject *_wrap_wxDC_SetUserScale(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_SetUserScale(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_SetUserScale(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4342,10 +4914,14 @@ static PyObject *_wrap_wxDC_StartDoc(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxDC_StartDoc(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDC_StartDoc(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -4368,8 +4944,12 @@ static PyObject *_wrap_wxDC_StartPage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDC_StartPage(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_StartPage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4411,8 +4991,12 @@ static PyObject *_wrap_wxDC_DrawBitmap(PyObject *self, PyObject *args) {
         }
     }
     _arg4 = (bool ) tempbool4;
-    wxDC_DrawBitmap(_arg0,*_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDC_DrawBitmap(_arg0,*_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4434,8 +5018,12 @@ static PyObject *_wrap_new_wxMemoryDC(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxMemoryDC")) 
         return NULL;
-    _result = (wxMemoryDC *)new_wxMemoryDC();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMemoryDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMemoryDC *)new_wxMemoryDC();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMemoryDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4463,8 +5051,12 @@ static PyObject *_wrap_wxMemoryDC_SelectObject(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxMemoryDC_SelectObject(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMemoryDC_SelectObject(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4486,8 +5078,12 @@ static PyObject *_wrap_new_wxScreenDC(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxScreenDC")) 
         return NULL;
-    _result = (wxScreenDC *)new_wxScreenDC();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScreenDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScreenDC *)new_wxScreenDC();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScreenDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4516,8 +5112,12 @@ static PyObject *_wrap_wxScreenDC_StartDrawingOnTop(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (bool )wxScreenDC_StartDrawingOnTop(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxScreenDC_StartDrawingOnTop(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4545,8 +5145,12 @@ static PyObject *_wrap_wxScreenDC_StartDrawingOnTopRect(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (bool )wxScreenDC_StartDrawingOnTopRect(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxScreenDC_StartDrawingOnTopRect(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4566,8 +5170,12 @@ static PyObject *_wrap_wxScreenDC_EndDrawingOnTop(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxScreenDC_EndDrawingOnTop(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxScreenDC_EndDrawingOnTop(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4596,8 +5204,12 @@ static PyObject *_wrap_new_wxClientDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxClientDC *)new_wxClientDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxClientDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxClientDC *)new_wxClientDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxClientDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4627,8 +5239,12 @@ static PyObject *_wrap_new_wxPaintDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxPaintDC *)new_wxPaintDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPaintDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPaintDC *)new_wxPaintDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPaintDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4658,8 +5274,12 @@ static PyObject *_wrap_new_wxWindowDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindowDC *)new_wxWindowDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindowDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindowDC *)new_wxWindowDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindowDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4692,7 +5312,7 @@ static PyObject *_wrap_new_wxPostScriptDC(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     _arg1 = (bool ) tempbool1;
     if (_argc2) {
@@ -4701,8 +5321,12 @@ static PyObject *_wrap_new_wxPostScriptDC(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxPostScriptDC *)new_wxPostScriptDC(*_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPostScriptDC_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPostScriptDC *)new_wxPostScriptDC(*_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPostScriptDC_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -4747,10 +5371,19 @@ static PyObject *_wrap_new_wxPalette(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg0 = PyList_Size(_obj1);
+    if (_obj1) {
+        _arg0 = PyList_Size(_obj1);
+    }
+    else {
+        _arg0 = 0;
+    }
 }
-    _result = (wxPalette *)new_wxPalette(_arg0,_arg1,_arg2,_arg3);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPalette_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPalette *)new_wxPalette(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPalette_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     delete [] _arg1;
@@ -4779,8 +5412,12 @@ static PyObject *_wrap_delete_wxPalette(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxPalette(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPalette(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4804,8 +5441,12 @@ static PyObject *_wrap_wxPalette_GetPixel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPalette_GetPixel(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPalette_GetPixel(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4850,8 +5491,12 @@ static PyObject *_wrap_wxPalette_GetRGB(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxPalette_GetRGB(_arg0,_arg1,_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPalette_GetRGB(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4871,8 +5516,12 @@ static PyObject *_wrap_wxPalette_Ok(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxPalette_Ok(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPalette_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4891,8 +5540,12 @@ static PyObject *_wrap_new_wxImageList(PyObject *self, PyObject *args) {
     if(!PyArg_ParseTuple(args,"ii|ii:new_wxImageList",&_arg0,&_arg1,&tempbool2,&_arg3)) 
         return NULL;
     _arg2 = (bool ) tempbool2;
-    _result = (wxImageList *)new_wxImageList(_arg0,_arg1,_arg2,_arg3);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageList *)new_wxImageList(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4912,8 +5565,12 @@ static PyObject *_wrap_delete_wxImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxImageList(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxImageList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4942,8 +5599,12 @@ static PyObject *_wrap_wxImageList_Add(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxImageList_Add(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxImageList_Add(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4972,8 +5633,12 @@ static PyObject *_wrap_wxImageList_Replace(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxImageList_Replace(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImageList_Replace(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5008,8 +5673,12 @@ static PyObject *_wrap_wxImageList_Draw(PyObject *self, PyObject *args) {
         }
     }
     _arg6 = (bool ) tempbool6;
-    _result = (bool )wxImageList_Draw(_arg0,_arg1,*_arg2,_arg3,_arg4,_arg5,_arg6);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImageList_Draw(_arg0,_arg1,*_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5029,8 +5698,12 @@ static PyObject *_wrap_wxImageList_GetImageCount(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxImageList_GetImageCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxImageList_GetImageCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5051,8 +5724,12 @@ static PyObject *_wrap_wxImageList_Remove(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxImageList_Remove(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImageList_Remove(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -5072,8 +5749,12 @@ static PyObject *_wrap_wxImageList_RemoveAll(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxImageList_RemoveAll(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImageList_RemoveAll(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
diff --git a/utils/wxPython/src/gtk/glcanvas.cpp b/utils/wxPython/src/gtk/glcanvas.cpp
new file mode 100644 (file)
index 0000000..66e3402
--- /dev/null
@@ -0,0 +1,9515 @@
+/*
+ * FILE : gtk/glcanvas.cpp
+ * 
+ * This file was automatically generated by :
+ * Simplified Wrapper and Interface Generator (SWIG)
+ * Version 1.1 (Patch 5)
+ * 
+ * Portions Copyright (c) 1995-1998
+ * The University of Utah and The Regents of the University of California.
+ * Permission is granted to distribute this file in any manner provided
+ * this notice remains intact.
+ * 
+ * Do not make changes to this file--changes will be lost!
+ *
+ */
+
+
+#define SWIGCODE
+/* Implementation : PYTHON */
+
+#define SWIGPYTHON
+#include <string.h>
+#include <stdlib.h>
+/* Definitions for Windows/Unix exporting */
+#if defined(__WIN32__)
+#   if defined(_MSC_VER)
+#      define SWIGEXPORT(a,b) __declspec(dllexport) a b
+#   else
+#      if defined(__BORLANDC__)
+#          define SWIGEXPORT(a,b) a _export b
+#      else
+#          define SWIGEXPORT(a,b) a b
+#      endif
+#   endif
+#else
+#   define SWIGEXPORT(a,b) a b
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#include "Python.h"
+extern void SWIG_MakePtr(char *, void *, char *);
+extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
+extern char *SWIG_GetPtr(char *, void **, char *);
+extern void SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
+extern PyObject *SWIG_newvarlink(void);
+#ifdef __cplusplus
+}
+#endif
+
+#define SWIG_init    initglcanvasc
+
+#define SWIG_name    "glcanvasc"
+
+#include "helpers.h"
+#include <glcanvas.h>
+
+static PyObject* l_output_helper(PyObject* target, PyObject* o) {
+    PyObject*   o2;
+    PyObject*   o3;
+    if (!target) {                   
+        target = o;
+    } else if (target == Py_None) {  
+        Py_DECREF(Py_None);
+        target = o;
+    } else {                         
+        if (!PyList_Check(target)) {
+            o2 = target;
+            target = PyList_New(0);
+            PyList_Append(target, o2);
+           Py_XDECREF(o2);
+        }
+        PyList_Append(target,o);
+       Py_XDECREF(o);
+    }
+    return target;
+}
+
+static PyObject* t_output_helper(PyObject* target, PyObject* o) {
+    PyObject*   o2;
+    PyObject*   o3;
+
+    if (!target) {                   
+        target = o;
+    } else if (target == Py_None) {  
+        Py_DECREF(Py_None);
+        target = o;
+    } 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);      
+
+        o2 = target;
+        target = PySequence_Concat(o2, o3); 
+        Py_DECREF(o2);                      
+        Py_DECREF(o3);
+    }
+    return target;
+}
+
+
+extern byte* byte_LIST_helper(PyObject* source);
+extern int* int_LIST_helper(PyObject* source);
+extern long* long_LIST_helper(PyObject* source);
+extern char** string_LIST_helper(PyObject* source);
+extern wxPoint* wxPoint_LIST_helper(PyObject* source);
+extern wxBitmap** wxBitmap_LIST_helper(PyObject* source);
+extern wxString* wxString_LIST_helper(PyObject* source);
+extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
+
+
+static char* wxStringErrorMsg = "string type is required for parameter";
+
+#ifdef SEPARATE
+    static wxString wxPyEmptyStr("");
+    static wxPoint  wxPyDefaultPosition(-1, -1);
+    static wxSize   wxPyDefaultSize(-1, -1);
+#endif
+static PyObject *_wrap_glArrayElementEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glArrayElementEXT",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glArrayElementEXT(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColorPointerEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+    GLvoid * _arg4;
+    char * _argc4 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiis:glColorPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+        return NULL;
+    if (_argc4) {
+        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glColorPointerEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColorPointerEXT(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDrawArraysEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLsizei  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glDrawArraysEXT",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDrawArraysEXT(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEdgeFlagPointerEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLsizei  _arg1;
+    GLboolean * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glEdgeFlagPointerEXT",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLboolean_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glEdgeFlagPointerEXT. Expected _GLboolean_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEdgeFlagPointerEXT(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetPointervEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLvoid ** _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetPointervEXT",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPointervEXT. Expected _GLvoid_pp.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetPointervEXT(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexPointerEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLsizei  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glIndexPointerEXT",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glIndexPointerEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexPointerEXT(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormalPointerEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLsizei  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glNormalPointerEXT",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glNormalPointerEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormalPointerEXT(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoordPointerEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+    GLvoid * _arg4;
+    char * _argc4 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiis:glTexCoordPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+        return NULL;
+    if (_argc4) {
+        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glTexCoordPointerEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoordPointerEXT(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertexPointerEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+    GLvoid * _arg4;
+    char * _argc4 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiis:glVertexPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+        return NULL;
+    if (_argc4) {
+        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glVertexPointerEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertexPointerEXT(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColorTableEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLenum  _arg3;
+    GLenum  _arg4;
+    GLvoid * _arg5;
+    char * _argc5 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiis:glColorTableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+        return NULL;
+    if (_argc5) {
+        if (SWIG_GetPtr(_argc5,(void **) &_arg5,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glColorTableEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColorTableEXT(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetColorTableEXT(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLenum  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glGetColorTableEXT",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glGetColorTableEXT. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetColorTableEXT(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glAccum(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"if:glAccum",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glAccum(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glAlphaFunc(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLclampf  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"if:glAlphaFunc",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glAlphaFunc(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glAreTexturesResident(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _result;
+    GLsizei  _arg0;
+    GLuint * _arg1;
+    GLboolean * _arg2;
+    char * _argc1 = 0;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iss:glAreTexturesResident",&_arg0,&_argc1,&_argc2)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glAreTexturesResident. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLboolean_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glAreTexturesResident. Expected _GLboolean_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLboolean )glAreTexturesResident(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glArrayElement(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glArrayElement",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glArrayElement(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glBegin(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glBegin",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glBegin(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glBindTexture(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLuint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glBindTexture",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glBindTexture(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glBitmap(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLsizei  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+    GLfloat  _arg4;
+    GLfloat  _arg5;
+    GLubyte * _arg6;
+    char * _argc6 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiffffs:glBitmap",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argc6)) 
+        return NULL;
+    if (_argc6) {
+        if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_GLubyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of glBitmap. Expected _GLubyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glBitmap(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glBlendFunc(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glBlendFunc",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glBlendFunc(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCallList(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glCallList",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCallList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCallLists(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLenum  _arg1;
+    GLvoid * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glCallLists",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glCallLists. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCallLists(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClear(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbitfield  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glClear",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClearAccum(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glClearAccum",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClearAccum(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClearColor(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLclampf  _arg0;
+    GLclampf  _arg1;
+    GLclampf  _arg2;
+    GLclampf  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glClearColor",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClearColor(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClearDepth(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLclampd  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"d:glClearDepth",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClearDepth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClearIndex(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glClearIndex",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClearIndex(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClearStencil(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glClearStencil",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClearStencil(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glClipPlane(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLdouble * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glClipPlane",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glClipPlane. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glClipPlane(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3b(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbyte  _arg0;
+    GLbyte  _arg1;
+    GLbyte  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"bbb:glColor3b",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3b(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3bv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3bv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLbyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3bv. Expected _GLbyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3bv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glColor3d",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3d(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glColor3f",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3f(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glColor3i",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3i(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhh:glColor3s",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3s(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3ub(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte  _arg0;
+    GLubyte  _arg1;
+    GLubyte  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"bbb:glColor3ub",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3ub(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3ubv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3ubv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3ubv. Expected _GLubyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3ubv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3ui(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+    GLuint  _arg1;
+    GLuint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glColor3ui",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3ui(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3uiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3uiv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3uiv. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3uiv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3us(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLushort  _arg0;
+    GLushort  _arg1;
+    GLushort  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhh:glColor3us",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3us(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor3usv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLushort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor3usv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLushort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3usv. Expected _GLushort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor3usv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4b(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbyte  _arg0;
+    GLbyte  _arg1;
+    GLbyte  _arg2;
+    GLbyte  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"bbbb:glColor4b",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4b(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4bv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4bv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLbyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4bv. Expected _GLbyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4bv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddd:glColor4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4d(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glColor4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4f(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glColor4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4i(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+    GLshort  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhhh:glColor4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4s(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4ub(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte  _arg0;
+    GLubyte  _arg1;
+    GLubyte  _arg2;
+    GLubyte  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"bbbb:glColor4ub",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4ub(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4ubv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4ubv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4ubv. Expected _GLubyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4ubv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4ui(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+    GLuint  _arg1;
+    GLuint  _arg2;
+    GLuint  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glColor4ui",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4ui(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4uiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4uiv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4uiv. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4uiv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4us(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLushort  _arg0;
+    GLushort  _arg1;
+    GLushort  _arg2;
+    GLushort  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhhh:glColor4us",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4us(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColor4usv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLushort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glColor4usv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLushort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4usv. Expected _GLushort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColor4usv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColorMask(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _arg0;
+    GLboolean  _arg1;
+    GLboolean  _arg2;
+    GLboolean  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"bbbb:glColorMask",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColorMask(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColorMaterial(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glColorMaterial",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColorMaterial(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glColorPointer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glColorPointer",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glColorPointer. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glColorPointer(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCopyPixels(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+    GLenum  _arg4;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiii:glCopyPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCopyPixels(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCopyTexImage1D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLenum  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLsizei  _arg5;
+    GLint  _arg6;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiii:glCopyTexImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCopyTexImage1D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCopyTexImage2D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLenum  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLsizei  _arg5;
+    GLsizei  _arg6;
+    GLint  _arg7;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiiii:glCopyTexImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCopyTexImage2D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCopyTexSubImage1D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLsizei  _arg5;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiii:glCopyTexSubImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCopyTexSubImage1D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCopyTexSubImage2D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLint  _arg5;
+    GLsizei  _arg6;
+    GLsizei  _arg7;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiiii:glCopyTexSubImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCopyTexSubImage2D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glCullFace(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glCullFace",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glCullFace(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDeleteLists(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+    GLsizei  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glDeleteLists",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDeleteLists(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDeleteTextures(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLuint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glDeleteTextures",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glDeleteTextures. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDeleteTextures(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDepthFunc(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glDepthFunc",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDepthFunc(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDepthMask(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"b:glDepthMask",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDepthMask(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDepthRange(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLclampd  _arg0;
+    GLclampd  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dd:glDepthRange",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDepthRange(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDisable(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glDisable",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDisable(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDisableClientState(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glDisableClientState",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDisableClientState(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDrawArrays(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLsizei  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glDrawArrays",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDrawArrays(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDrawBuffer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glDrawBuffer",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDrawBuffer(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDrawElements(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLenum  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glDrawElements",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glDrawElements. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDrawElements(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glDrawPixels(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLsizei  _arg1;
+    GLenum  _arg2;
+    GLenum  _arg3;
+    GLvoid * _arg4;
+    char * _argc4 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiis:glDrawPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+        return NULL;
+    if (_argc4) {
+        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glDrawPixels. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glDrawPixels(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEdgeFlag(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"b:glEdgeFlag",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEdgeFlag(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEdgeFlagPointer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLvoid * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glEdgeFlagPointer",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glEdgeFlagPointer. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEdgeFlagPointer(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEdgeFlagv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glEdgeFlagv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLboolean_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEdgeFlagv. Expected _GLboolean_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEdgeFlagv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEnable(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glEnable",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEnable(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEnableClientState(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glEnableClientState",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEnableClientState(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEnd(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glEnd")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEnd();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEndList(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glEndList")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEndList();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord1d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"d:glEvalCoord1d",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord1d(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord1dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glEvalCoord1dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord1dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord1dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord1f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glEvalCoord1f",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord1f(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord1fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glEvalCoord1fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord1fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord1fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord2d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dd:glEvalCoord2d",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord2d(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord2dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glEvalCoord2dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord2dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord2dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord2f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ff:glEvalCoord2f",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord2f(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalCoord2fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glEvalCoord2fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord2fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalCoord2fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalMesh1(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glEvalMesh1",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalMesh1(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalMesh2(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiii:glEvalMesh2",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalMesh2(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalPoint1(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glEvalPoint1",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalPoint1(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glEvalPoint2(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glEvalPoint2",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glEvalPoint2(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFeedbackBuffer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glFeedbackBuffer",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glFeedbackBuffer. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFeedbackBuffer(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFinish(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glFinish")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFinish();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFlush(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glFlush")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFlush();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFogf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"if:glFogf",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFogf(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFogfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glFogfv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glFogfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFogfv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFogi(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glFogi",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFogi(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFogiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glFogiv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glFogiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFogiv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFrontFace(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glFrontFace",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFrontFace(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glFrustum(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+    GLdouble  _arg4;
+    GLdouble  _arg5;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddddd:glFrustum",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glFrustum(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGenLists(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _result;
+    GLsizei  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glGenLists",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLuint )glGenLists(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGenTextures(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLuint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGenTextures",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGenTextures. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGenTextures(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetBooleanv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLboolean * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetBooleanv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLboolean_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetBooleanv. Expected _GLboolean_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetBooleanv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetClipPlane(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLdouble * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetClipPlane",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetClipPlane. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetClipPlane(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetDoublev(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLdouble * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetDoublev",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetDoublev. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetDoublev(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetError(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _result;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glGetError")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLenum )glGetError();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetFloatv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetFloatv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetFloatv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetFloatv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetIntegerv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetIntegerv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetIntegerv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetIntegerv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetLightfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetLightfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetLightfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetLightfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetLightiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetLightiv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetLightiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetLightiv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetMapdv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLdouble * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetMapdv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMapdv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetMapdv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetMapfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetMapfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMapfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetMapfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetMapiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetMapiv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMapiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetMapiv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetMaterialfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetMaterialfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMaterialfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetMaterialfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetMaterialiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetMaterialiv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMaterialiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetMaterialiv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetPixelMapfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetPixelMapfv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPixelMapfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetPixelMapfv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetPixelMapuiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLuint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetPixelMapuiv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPixelMapuiv. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetPixelMapuiv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetPixelMapusv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLushort * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetPixelMapusv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLushort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPixelMapusv. Expected _GLushort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetPixelMapusv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetPointerv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLvoid ** _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glGetPointerv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPointerv. Expected _GLvoid_pp.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetPointerv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetPolygonStipple(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glGetPolygonStipple",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glGetPolygonStipple. Expected _GLubyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetPolygonStipple(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetString(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte * _result;
+    GLenum  _arg0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glGetString",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLubyte *)glGetString(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_GLubyte_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexEnvfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexEnvfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexEnvfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexEnvfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexEnviv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexEnviv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexEnviv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexEnviv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexGendv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLdouble * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexGendv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexGendv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexGendv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexGenfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexGenfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexGenfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexGenfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexGeniv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexGeniv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexGeniv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexGeniv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexImage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLenum  _arg2;
+    GLenum  _arg3;
+    GLvoid * _arg4;
+    char * _argc4 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiis:glGetTexImage",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+        return NULL;
+    if (_argc4) {
+        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glGetTexImage. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexImage(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexLevelParameterfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLenum  _arg2;
+    GLfloat * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glGetTexLevelParameterfv",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glGetTexLevelParameterfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexLevelParameterfv(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexLevelParameteriv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLenum  _arg2;
+    GLint * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glGetTexLevelParameteriv",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glGetTexLevelParameteriv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexLevelParameteriv(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexParameterfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexParameterfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexParameterfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexParameterfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glGetTexParameteriv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glGetTexParameteriv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexParameteriv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glGetTexParameteriv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glHint(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glHint",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glHint(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexMask(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glIndexMask",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexMask(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexPointer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLvoid * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glIndexPointer",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glIndexPointer. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexPointer(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexd(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"d:glIndexd",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexd(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexdv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glIndexdv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexdv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexdv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glIndexf",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexf(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glIndexfv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexfv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexi(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glIndexi",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexi(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glIndexiv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexiv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexs(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"h:glIndexs",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexs(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexsv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glIndexsv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexsv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexsv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexub(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"b:glIndexub",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexub(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIndexubv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glIndexubv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexubv. Expected _GLubyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glIndexubv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glInitNames(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glInitNames")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glInitNames();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glInterleavedArrays(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLvoid * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glInterleavedArrays",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glInterleavedArrays. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glInterleavedArrays(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIsEnabled(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _result;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glIsEnabled",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLboolean )glIsEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIsList(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _result;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glIsList",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLboolean )glIsList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glIsTexture(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLboolean  _result;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glIsTexture",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLboolean )glIsTexture(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightModelf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"if:glLightModelf",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightModelf(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightModelfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glLightModelfv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glLightModelfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightModelfv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightModeli(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glLightModeli",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightModeli(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightModeliv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glLightModeliv",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glLightModeliv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightModeliv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iif:glLightf",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glLightfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glLightfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLighti(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glLighti",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLighti(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLightiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glLightiv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glLightiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLightiv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLineStipple(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLushort  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ih:glLineStipple",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLineStipple(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLineWidth(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glLineWidth",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLineWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glListBase(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glListBase",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glListBase(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLoadIdentity(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glLoadIdentity")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLoadIdentity();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLoadMatrixd(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glLoadMatrixd",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glLoadMatrixd. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLoadMatrixd(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLoadMatrixf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glLoadMatrixf",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glLoadMatrixf. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLoadMatrixf(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLoadName(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glLoadName",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLoadName(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glLogicOp(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glLogicOp",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glLogicOp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMap1d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLdouble * _arg5;
+    char * _argc5 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iddiis:glMap1d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+        return NULL;
+    if (_argc5) {
+        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glMap1d. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMap1d(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMap1f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLfloat * _arg5;
+    char * _argc5 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iffiis:glMap1f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+        return NULL;
+    if (_argc5) {
+        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glMap1f. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMap1f(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMap2d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLdouble  _arg5;
+    GLdouble  _arg6;
+    GLint  _arg7;
+    GLint  _arg8;
+    GLdouble * _arg9;
+    char * _argc9 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iddiiddiis:glMap2d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argc9)) 
+        return NULL;
+    if (_argc9) {
+        if (SWIG_GetPtr(_argc9,(void **) &_arg9,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 10 of glMap2d. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMap2d(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8,_arg9);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMap2f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLint  _arg3;
+    GLint  _arg4;
+    GLfloat  _arg5;
+    GLfloat  _arg6;
+    GLint  _arg7;
+    GLint  _arg8;
+    GLfloat * _arg9;
+    char * _argc9 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iffiiffiis:glMap2f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argc9)) 
+        return NULL;
+    if (_argc9) {
+        if (SWIG_GetPtr(_argc9,(void **) &_arg9,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 10 of glMap2f. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMap2f(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8,_arg9);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMapGrid1d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"idd:glMapGrid1d",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMapGrid1d(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMapGrid1f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iff:glMapGrid1f",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMapGrid1f(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMapGrid2d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLint  _arg3;
+    GLdouble  _arg4;
+    GLdouble  _arg5;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iddidd:glMapGrid2d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMapGrid2d(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMapGrid2f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLint  _arg3;
+    GLfloat  _arg4;
+    GLfloat  _arg5;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iffiff:glMapGrid2f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMapGrid2f(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMaterialf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iif:glMaterialf",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMaterialf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMaterialfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glMaterialfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glMaterialfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMaterialfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMateriali(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glMateriali",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMateriali(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMaterialiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glMaterialiv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glMaterialiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMaterialiv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMatrixMode(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glMatrixMode",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMatrixMode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMultMatrixd(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glMultMatrixd",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glMultMatrixd. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMultMatrixd(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glMultMatrixf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glMultMatrixf",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glMultMatrixf. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glMultMatrixf(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNewList(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+    GLenum  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glNewList",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNewList(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3b(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbyte  _arg0;
+    GLbyte  _arg1;
+    GLbyte  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"bbb:glNormal3b",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3b(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3bv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glNormal3bv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLbyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3bv. Expected _GLbyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3bv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glNormal3d",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3d(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glNormal3dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glNormal3f",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3f(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glNormal3fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glNormal3i",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3i(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glNormal3iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhh:glNormal3s",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3s(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormal3sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glNormal3sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormal3sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glNormalPointer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLvoid * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glNormalPointer",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glNormalPointer. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glNormalPointer(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glOrtho(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+    GLdouble  _arg4;
+    GLdouble  _arg5;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddddd:glOrtho",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glOrtho(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPassThrough(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glPassThrough",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPassThrough(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelMapfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glPixelMapfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPixelMapfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelMapfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelMapuiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLuint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glPixelMapuiv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPixelMapuiv. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelMapuiv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelMapusv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLsizei  _arg1;
+    GLushort * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glPixelMapusv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLushort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPixelMapusv. Expected _GLushort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelMapusv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelStoref(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"if:glPixelStoref",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelStoref(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelStorei(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glPixelStorei",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelStorei(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelTransferf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"if:glPixelTransferf",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelTransferf(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelTransferi(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glPixelTransferi",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelTransferi(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPixelZoom(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ff:glPixelZoom",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPixelZoom(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPointSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glPointSize",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPointSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPolygonMode(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glPolygonMode",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPolygonMode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPolygonOffset(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ff:glPolygonOffset",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPolygonOffset(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPolygonStipple(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLubyte * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glPolygonStipple",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glPolygonStipple. Expected _GLubyte_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPolygonStipple(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPopAttrib(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glPopAttrib")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPopAttrib();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPopClientAttrib(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glPopClientAttrib")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPopClientAttrib();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPopMatrix(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glPopMatrix")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPopMatrix();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPopName(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glPopName")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPopName();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPrioritizeTextures(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLuint * _arg1;
+    GLclampf * _arg2;
+    char * _argc1 = 0;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iss:glPrioritizeTextures",&_arg0,&_argc1,&_argc2)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glPrioritizeTextures. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLclampf_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPrioritizeTextures. Expected _GLclampf_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPrioritizeTextures(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPushAttrib(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbitfield  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glPushAttrib",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPushAttrib(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPushClientAttrib(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLbitfield  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glPushClientAttrib",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPushClientAttrib(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPushMatrix(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":glPushMatrix")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPushMatrix();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glPushName(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glPushName",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glPushName(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dd:glRasterPos2d",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2d(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos2dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ff:glRasterPos2f",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2f(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos2fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glRasterPos2i",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2i(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos2iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hh:glRasterPos2s",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2s(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos2sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos2sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos2sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glRasterPos3d",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3d(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos3dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glRasterPos3f",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3f(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos3fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glRasterPos3i",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3i(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos3iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhh:glRasterPos3s",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3s(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos3sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos3sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos3sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddd:glRasterPos4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4d(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos4dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glRasterPos4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4f(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos4fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glRasterPos4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4i(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos4iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+    GLshort  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhhh:glRasterPos4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4s(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRasterPos4sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glRasterPos4sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRasterPos4sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glReadBuffer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glReadBuffer",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glReadBuffer(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glReadPixels(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+    GLenum  _arg4;
+    GLenum  _arg5;
+    GLvoid * _arg6;
+    char * _argc6 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiis:glReadPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argc6)) 
+        return NULL;
+    if (_argc6) {
+        if (SWIG_GetPtr(_argc6,(void **) &_arg6,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of glReadPixels. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glReadPixels(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRectd(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddd:glRectd",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRectd(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRectdv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    GLdouble * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:glRectdv",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRectdv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectdv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRectdv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRectf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glRectf",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRectf(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRectfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    GLfloat * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:glRectfv",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRectfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRectfv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRecti(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glRecti",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRecti(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRectiv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    GLint * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:glRectiv",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRectiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectiv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRectiv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRects(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+    GLshort  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhhh:glRects",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRects(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRectsv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    GLshort * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:glRectsv",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRectsv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectsv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRectsv(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRenderMode(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _result;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glRenderMode",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (GLint )glRenderMode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRotated(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddd:glRotated",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRotated(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glRotatef(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glRotatef",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glRotatef(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glScaled(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glScaled",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glScaled(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glScalef(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glScalef",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glScalef(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glScissor(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glScissor",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glScissor(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glSelectBuffer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLsizei  _arg0;
+    GLuint * _arg1;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is:glSelectBuffer",&_arg0,&_argc1)) 
+        return NULL;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glSelectBuffer. Expected _GLuint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glSelectBuffer(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glShadeModel(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glShadeModel",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glShadeModel(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glStencilFunc(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLuint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glStencilFunc",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glStencilFunc(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glStencilMask(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLuint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glStencilMask",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glStencilMask(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glStencilOp(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLenum  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glStencilOp",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glStencilOp(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"d:glTexCoord1d",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1d(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord1dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"f:glTexCoord1f",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1f(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord1fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"i:glTexCoord1i",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1i(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord1iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"h:glTexCoord1s",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1s(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord1sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord1sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord1sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dd:glTexCoord2d",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2d(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord2dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ff:glTexCoord2f",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2f(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord2fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glTexCoord2i",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2i(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord2iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hh:glTexCoord2s",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2s(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord2sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord2sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord2sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glTexCoord3d",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3d(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord3dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glTexCoord3f",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3f(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord3fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glTexCoord3i",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3i(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord3iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhh:glTexCoord3s",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3s(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord3sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord3sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord3sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddd:glTexCoord4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4d(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord4dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glTexCoord4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4f(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord4fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glTexCoord4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4i(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord4iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+    GLshort  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhhh:glTexCoord4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4s(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoord4sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glTexCoord4sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoord4sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexCoordPointer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glTexCoordPointer",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glTexCoordPointer. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexCoordPointer(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexEnvf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iif:glTexEnvf",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexEnvf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexEnvfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexEnvfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexEnvfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexEnvfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexEnvi(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glTexEnvi",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexEnvi(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexEnviv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexEnviv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexEnviv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexEnviv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexGend(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iid:glTexGend",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexGend(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexGendv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLdouble * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexGendv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexGendv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexGendv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexGenf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iif:glTexGenf",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexGenf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexGenfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexGenfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexGenfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexGenfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexGeni(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glTexGeni",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexGeni(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexGeniv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexGeniv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexGeniv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexGeniv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexImage1D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLsizei  _arg3;
+    GLint  _arg4;
+    GLenum  _arg5;
+    GLenum  _arg6;
+    GLvoid * _arg7;
+    char * _argc7 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiiis:glTexImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_argc7)) 
+        return NULL;
+    if (_argc7) {
+        if (SWIG_GetPtr(_argc7,(void **) &_arg7,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 8 of glTexImage1D. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexImage1D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexImage2D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLsizei  _arg3;
+    GLsizei  _arg4;
+    GLint  _arg5;
+    GLenum  _arg6;
+    GLenum  _arg7;
+    GLvoid * _arg8;
+    char * _argc8 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiiiis:glTexImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argc8)) 
+        return NULL;
+    if (_argc8) {
+        if (SWIG_GetPtr(_argc8,(void **) &_arg8,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 9 of glTexImage2D. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexImage2D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexParameterf(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iif:glTexParameterf",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexParameterf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexParameterfv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLfloat * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexParameterfv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexParameterfv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexParameterfv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexParameteri(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glTexParameteri",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexParameteri(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexParameteriv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLenum  _arg1;
+    GLint * _arg2;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iis:glTexParameteriv",&_arg0,&_arg1,&_argc2)) 
+        return NULL;
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexParameteriv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexParameteriv(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexSubImage1D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLsizei  _arg3;
+    GLenum  _arg4;
+    GLenum  _arg5;
+    GLvoid * _arg6;
+    char * _argc6 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiis:glTexSubImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argc6)) 
+        return NULL;
+    if (_argc6) {
+        if (SWIG_GetPtr(_argc6,(void **) &_arg6,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of glTexSubImage1D. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexSubImage1D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTexSubImage2D(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLenum  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+    GLsizei  _arg4;
+    GLsizei  _arg5;
+    GLenum  _arg6;
+    GLenum  _arg7;
+    GLvoid * _arg8;
+    char * _argc8 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiiiiiiis:glTexSubImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argc8)) 
+        return NULL;
+    if (_argc8) {
+        if (SWIG_GetPtr(_argc8,(void **) &_arg8,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 9 of glTexSubImage2D. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTexSubImage2D(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTranslated(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glTranslated",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTranslated(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glTranslatef(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glTranslatef",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glTranslatef(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dd:glVertex2d",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2d(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex2dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ff:glVertex2f",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2f(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex2fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:glVertex2i",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2i(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex2iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hh:glVertex2s",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2s(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex2sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex2sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex2sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ddd:glVertex3d",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3d(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex3dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"fff:glVertex3f",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3f(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex3fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iii:glVertex3i",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3i(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex3iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhh:glVertex3s",&_arg0,&_arg1,&_arg2)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3s(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex3sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex3sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex3sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4d(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble  _arg0;
+    GLdouble  _arg1;
+    GLdouble  _arg2;
+    GLdouble  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"dddd:glVertex4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4d(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4dv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLdouble * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex4dv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4dv. Expected _GLdouble_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4dv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4f(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat  _arg0;
+    GLfloat  _arg1;
+    GLfloat  _arg2;
+    GLfloat  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ffff:glVertex4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4f(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4fv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLfloat * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex4fv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4fv. Expected _GLfloat_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4fv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4i(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLint  _arg2;
+    GLint  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glVertex4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4i(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4iv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex4iv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4iv. Expected _GLint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4iv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4s(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort  _arg0;
+    GLshort  _arg1;
+    GLshort  _arg2;
+    GLshort  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"hhhh:glVertex4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4s(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertex4sv(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLshort * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:glVertex4sv",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4sv. Expected _GLshort_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertex4sv(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glVertexPointer(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLenum  _arg1;
+    GLsizei  _arg2;
+    GLvoid * _arg3;
+    char * _argc3 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiis:glVertexPointer",&_arg0,&_arg1,&_arg2,&_argc3)) 
+        return NULL;
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glVertexPointer. Expected _GLvoid_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glVertexPointer(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_glViewport(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    GLint  _arg0;
+    GLint  _arg1;
+    GLsizei  _arg2;
+    GLsizei  _arg3;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"iiii:glViewport",&_arg0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        glViewport(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define new_wxGLContext(_swigarg0,_swigarg1,_swigarg2) (new wxGLContext(_swigarg0,_swigarg1,_swigarg2))
+static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _result;
+    bool  _arg0;
+    wxWindow * _arg1;
+    wxPalette * _arg2 = &wxNullPalette;
+    int tempbool0;
+    char * _argc1 = 0;
+    char * _argc2 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"is|s:new_wxGLContext",&tempbool0,&_argc1,&_argc2)) 
+        return NULL;
+    _arg0 = (bool ) tempbool0;
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxGLContext. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPalette_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxGLContext. Expected _wxPalette_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGLContext *)new_wxGLContext(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLContext_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define delete_wxGLContext(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxGLContext(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:delete_wxGLContext",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxGLContext. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxGLContext(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLContext_SetCurrent(_swigobj)  (_swigobj->SetCurrent())
+static PyObject *_wrap_wxGLContext_SetCurrent(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLContext_SetCurrent",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SetCurrent. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLContext_SetCurrent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLContext_SetColour(_swigobj,_swigarg0)  (_swigobj->SetColour(_swigarg0))
+static PyObject *_wrap_wxGLContext_SetColour(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _arg0;
+    char * _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxGLContext_SetColour",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SetColour. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLContext_SetColour(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLContext_SwapBuffers(_swigobj)  (_swigobj->SwapBuffers())
+static PyObject *_wrap_wxGLContext_SwapBuffers(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLContext_SwapBuffers",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SwapBuffers. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLContext_SwapBuffers(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLContext_SetupPixelFormat(_swigobj)  (_swigobj->SetupPixelFormat())
+static PyObject *_wrap_wxGLContext_SetupPixelFormat(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLContext_SetupPixelFormat",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SetupPixelFormat. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLContext_SetupPixelFormat(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLContext_SetupPalette(_swigobj,_swigarg0)  (_swigobj->SetupPalette(_swigarg0))
+static PyObject *_wrap_wxGLContext_SetupPalette(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _arg0;
+    wxPalette * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxGLContext_SetupPalette",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SetupPalette. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPalette_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGLContext_SetupPalette. Expected _wxPalette_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLContext_SetupPalette(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLContext_CreateDefaultPalette(_swigobj)  (_swigobj->CreateDefaultPalette())
+static PyObject *_wrap_wxGLContext_CreateDefaultPalette(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPalette * _result;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLContext_CreateDefaultPalette",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_CreateDefaultPalette. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPalette (wxGLContext_CreateDefaultPalette(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPalette_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxGLContext_GetPalette(_swigobj)  (_swigobj->GetPalette())
+static PyObject *_wrap_wxGLContext_GetPalette(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPalette * _result;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLContext_GetPalette",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_GetPalette. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPalette *)wxGLContext_GetPalette(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPalette_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxGLContext_GetWindow(_swigobj)  (_swigobj->GetWindow())
+static PyObject *_wrap_wxGLContext_GetWindow(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxWindow * _result;
+    wxGLContext * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLContext_GetWindow",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_GetWindow. Expected _wxGLContext_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxGLContext_GetWindow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void *SwigwxGLCanvasTowxScrolledWindow(void *ptr) {
+    wxGLCanvas *src;
+    wxScrolledWindow *dest;
+    src = (wxGLCanvas *) ptr;
+    dest = (wxScrolledWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxGLCanvasTowxWindow(void *ptr) {
+    wxGLCanvas *src;
+    wxWindow *dest;
+    src = (wxGLCanvas *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxGLCanvasTowxEvtHandler(void *ptr) {
+    wxGLCanvas *src;
+    wxEvtHandler *dest;
+    src = (wxGLCanvas *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxGLCanvas(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6,_swigarg7) (new wxGLCanvas(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6,_swigarg7))
+static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLCanvas * _result;
+    wxWindow * _arg0;
+    wxWindowID  _arg1 = -1;
+    wxPoint * _arg2 = &wxPyDefaultPosition;
+    wxSize * _arg3 = &wxPyDefaultSize;
+    long  _arg4 = 0;
+    char * _arg5 = "GLCanvas";
+    int * _arg6 = 0;
+    wxPalette * _arg7 = &wxNullPalette;
+    char * _argc0 = 0;
+    char * _argc2 = 0;
+    char * _argc3 = 0;
+    char * _argc6 = 0;
+    char * _argc7 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s|isslsss:new_wxGLCanvas",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5,&_argc6,&_argc7)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxGLCanvas. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxGLCanvas. Expected _wxPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argc3) {
+        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxSize_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of new_wxGLCanvas. Expected _wxSize_p.");
+        return NULL;
+        }
+    }
+    if (_argc6) {
+        if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_int_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of new_wxGLCanvas. Expected _int_p.");
+        return NULL;
+        }
+    }
+    if (_argc7) {
+        if (SWIG_GetPtr(_argc7,(void **) &_arg7,"_wxPalette_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 8 of new_wxGLCanvas. Expected _wxPalette_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGLCanvas *)new_wxGLCanvas(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLCanvas_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxGLCanvas_SetCurrent(_swigobj)  (_swigobj->SetCurrent())
+static PyObject *_wrap_wxGLCanvas_SetCurrent(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLCanvas * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLCanvas_SetCurrent",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_SetCurrent. Expected _wxGLCanvas_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLCanvas_SetCurrent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLCanvas_SetColour(_swigobj,_swigarg0)  (_swigobj->SetColour(_swigarg0))
+static PyObject *_wrap_wxGLCanvas_SetColour(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLCanvas * _arg0;
+    char * _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxGLCanvas_SetColour",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_SetColour. Expected _wxGLCanvas_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLCanvas_SetColour(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLCanvas_SwapBuffers(_swigobj)  (_swigobj->SwapBuffers())
+static PyObject *_wrap_wxGLCanvas_SwapBuffers(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLCanvas * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLCanvas_SwapBuffers",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_SwapBuffers. Expected _wxGLCanvas_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGLCanvas_SwapBuffers(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGLCanvas_GetContext(_swigobj)  (_swigobj->GetContext())
+static PyObject *_wrap_wxGLCanvas_GetContext(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGLContext * _result;
+    wxGLCanvas * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGLCanvas_GetContext",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_GetContext. Expected _wxGLCanvas_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGLContext *)wxGLCanvas_GetContext(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLContext_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static PyMethodDef glcanvascMethods[] = {
+        { "wxGLCanvas_GetContext", _wrap_wxGLCanvas_GetContext, 1 },
+        { "wxGLCanvas_SwapBuffers", _wrap_wxGLCanvas_SwapBuffers, 1 },
+        { "wxGLCanvas_SetColour", _wrap_wxGLCanvas_SetColour, 1 },
+        { "wxGLCanvas_SetCurrent", _wrap_wxGLCanvas_SetCurrent, 1 },
+        { "new_wxGLCanvas", _wrap_new_wxGLCanvas, 1 },
+        { "wxGLContext_GetWindow", _wrap_wxGLContext_GetWindow, 1 },
+        { "wxGLContext_GetPalette", _wrap_wxGLContext_GetPalette, 1 },
+        { "wxGLContext_CreateDefaultPalette", _wrap_wxGLContext_CreateDefaultPalette, 1 },
+        { "wxGLContext_SetupPalette", _wrap_wxGLContext_SetupPalette, 1 },
+        { "wxGLContext_SetupPixelFormat", _wrap_wxGLContext_SetupPixelFormat, 1 },
+        { "wxGLContext_SwapBuffers", _wrap_wxGLContext_SwapBuffers, 1 },
+        { "wxGLContext_SetColour", _wrap_wxGLContext_SetColour, 1 },
+        { "wxGLContext_SetCurrent", _wrap_wxGLContext_SetCurrent, 1 },
+        { "delete_wxGLContext", _wrap_delete_wxGLContext, 1 },
+        { "new_wxGLContext", _wrap_new_wxGLContext, 1 },
+        { "glViewport", _wrap_glViewport, 1 },
+        { "glVertexPointer", _wrap_glVertexPointer, 1 },
+        { "glVertex4sv", _wrap_glVertex4sv, 1 },
+        { "glVertex4s", _wrap_glVertex4s, 1 },
+        { "glVertex4iv", _wrap_glVertex4iv, 1 },
+        { "glVertex4i", _wrap_glVertex4i, 1 },
+        { "glVertex4fv", _wrap_glVertex4fv, 1 },
+        { "glVertex4f", _wrap_glVertex4f, 1 },
+        { "glVertex4dv", _wrap_glVertex4dv, 1 },
+        { "glVertex4d", _wrap_glVertex4d, 1 },
+        { "glVertex3sv", _wrap_glVertex3sv, 1 },
+        { "glVertex3s", _wrap_glVertex3s, 1 },
+        { "glVertex3iv", _wrap_glVertex3iv, 1 },
+        { "glVertex3i", _wrap_glVertex3i, 1 },
+        { "glVertex3fv", _wrap_glVertex3fv, 1 },
+        { "glVertex3f", _wrap_glVertex3f, 1 },
+        { "glVertex3dv", _wrap_glVertex3dv, 1 },
+        { "glVertex3d", _wrap_glVertex3d, 1 },
+        { "glVertex2sv", _wrap_glVertex2sv, 1 },
+        { "glVertex2s", _wrap_glVertex2s, 1 },
+        { "glVertex2iv", _wrap_glVertex2iv, 1 },
+        { "glVertex2i", _wrap_glVertex2i, 1 },
+        { "glVertex2fv", _wrap_glVertex2fv, 1 },
+        { "glVertex2f", _wrap_glVertex2f, 1 },
+        { "glVertex2dv", _wrap_glVertex2dv, 1 },
+        { "glVertex2d", _wrap_glVertex2d, 1 },
+        { "glTranslatef", _wrap_glTranslatef, 1 },
+        { "glTranslated", _wrap_glTranslated, 1 },
+        { "glTexSubImage2D", _wrap_glTexSubImage2D, 1 },
+        { "glTexSubImage1D", _wrap_glTexSubImage1D, 1 },
+        { "glTexParameteriv", _wrap_glTexParameteriv, 1 },
+        { "glTexParameteri", _wrap_glTexParameteri, 1 },
+        { "glTexParameterfv", _wrap_glTexParameterfv, 1 },
+        { "glTexParameterf", _wrap_glTexParameterf, 1 },
+        { "glTexImage2D", _wrap_glTexImage2D, 1 },
+        { "glTexImage1D", _wrap_glTexImage1D, 1 },
+        { "glTexGeniv", _wrap_glTexGeniv, 1 },
+        { "glTexGeni", _wrap_glTexGeni, 1 },
+        { "glTexGenfv", _wrap_glTexGenfv, 1 },
+        { "glTexGenf", _wrap_glTexGenf, 1 },
+        { "glTexGendv", _wrap_glTexGendv, 1 },
+        { "glTexGend", _wrap_glTexGend, 1 },
+        { "glTexEnviv", _wrap_glTexEnviv, 1 },
+        { "glTexEnvi", _wrap_glTexEnvi, 1 },
+        { "glTexEnvfv", _wrap_glTexEnvfv, 1 },
+        { "glTexEnvf", _wrap_glTexEnvf, 1 },
+        { "glTexCoordPointer", _wrap_glTexCoordPointer, 1 },
+        { "glTexCoord4sv", _wrap_glTexCoord4sv, 1 },
+        { "glTexCoord4s", _wrap_glTexCoord4s, 1 },
+        { "glTexCoord4iv", _wrap_glTexCoord4iv, 1 },
+        { "glTexCoord4i", _wrap_glTexCoord4i, 1 },
+        { "glTexCoord4fv", _wrap_glTexCoord4fv, 1 },
+        { "glTexCoord4f", _wrap_glTexCoord4f, 1 },
+        { "glTexCoord4dv", _wrap_glTexCoord4dv, 1 },
+        { "glTexCoord4d", _wrap_glTexCoord4d, 1 },
+        { "glTexCoord3sv", _wrap_glTexCoord3sv, 1 },
+        { "glTexCoord3s", _wrap_glTexCoord3s, 1 },
+        { "glTexCoord3iv", _wrap_glTexCoord3iv, 1 },
+        { "glTexCoord3i", _wrap_glTexCoord3i, 1 },
+        { "glTexCoord3fv", _wrap_glTexCoord3fv, 1 },
+        { "glTexCoord3f", _wrap_glTexCoord3f, 1 },
+        { "glTexCoord3dv", _wrap_glTexCoord3dv, 1 },
+        { "glTexCoord3d", _wrap_glTexCoord3d, 1 },
+        { "glTexCoord2sv", _wrap_glTexCoord2sv, 1 },
+        { "glTexCoord2s", _wrap_glTexCoord2s, 1 },
+        { "glTexCoord2iv", _wrap_glTexCoord2iv, 1 },
+        { "glTexCoord2i", _wrap_glTexCoord2i, 1 },
+        { "glTexCoord2fv", _wrap_glTexCoord2fv, 1 },
+        { "glTexCoord2f", _wrap_glTexCoord2f, 1 },
+        { "glTexCoord2dv", _wrap_glTexCoord2dv, 1 },
+        { "glTexCoord2d", _wrap_glTexCoord2d, 1 },
+        { "glTexCoord1sv", _wrap_glTexCoord1sv, 1 },
+        { "glTexCoord1s", _wrap_glTexCoord1s, 1 },
+        { "glTexCoord1iv", _wrap_glTexCoord1iv, 1 },
+        { "glTexCoord1i", _wrap_glTexCoord1i, 1 },
+        { "glTexCoord1fv", _wrap_glTexCoord1fv, 1 },
+        { "glTexCoord1f", _wrap_glTexCoord1f, 1 },
+        { "glTexCoord1dv", _wrap_glTexCoord1dv, 1 },
+        { "glTexCoord1d", _wrap_glTexCoord1d, 1 },
+        { "glStencilOp", _wrap_glStencilOp, 1 },
+        { "glStencilMask", _wrap_glStencilMask, 1 },
+        { "glStencilFunc", _wrap_glStencilFunc, 1 },
+        { "glShadeModel", _wrap_glShadeModel, 1 },
+        { "glSelectBuffer", _wrap_glSelectBuffer, 1 },
+        { "glScissor", _wrap_glScissor, 1 },
+        { "glScalef", _wrap_glScalef, 1 },
+        { "glScaled", _wrap_glScaled, 1 },
+        { "glRotatef", _wrap_glRotatef, 1 },
+        { "glRotated", _wrap_glRotated, 1 },
+        { "glRenderMode", _wrap_glRenderMode, 1 },
+        { "glRectsv", _wrap_glRectsv, 1 },
+        { "glRects", _wrap_glRects, 1 },
+        { "glRectiv", _wrap_glRectiv, 1 },
+        { "glRecti", _wrap_glRecti, 1 },
+        { "glRectfv", _wrap_glRectfv, 1 },
+        { "glRectf", _wrap_glRectf, 1 },
+        { "glRectdv", _wrap_glRectdv, 1 },
+        { "glRectd", _wrap_glRectd, 1 },
+        { "glReadPixels", _wrap_glReadPixels, 1 },
+        { "glReadBuffer", _wrap_glReadBuffer, 1 },
+        { "glRasterPos4sv", _wrap_glRasterPos4sv, 1 },
+        { "glRasterPos4s", _wrap_glRasterPos4s, 1 },
+        { "glRasterPos4iv", _wrap_glRasterPos4iv, 1 },
+        { "glRasterPos4i", _wrap_glRasterPos4i, 1 },
+        { "glRasterPos4fv", _wrap_glRasterPos4fv, 1 },
+        { "glRasterPos4f", _wrap_glRasterPos4f, 1 },
+        { "glRasterPos4dv", _wrap_glRasterPos4dv, 1 },
+        { "glRasterPos4d", _wrap_glRasterPos4d, 1 },
+        { "glRasterPos3sv", _wrap_glRasterPos3sv, 1 },
+        { "glRasterPos3s", _wrap_glRasterPos3s, 1 },
+        { "glRasterPos3iv", _wrap_glRasterPos3iv, 1 },
+        { "glRasterPos3i", _wrap_glRasterPos3i, 1 },
+        { "glRasterPos3fv", _wrap_glRasterPos3fv, 1 },
+        { "glRasterPos3f", _wrap_glRasterPos3f, 1 },
+        { "glRasterPos3dv", _wrap_glRasterPos3dv, 1 },
+        { "glRasterPos3d", _wrap_glRasterPos3d, 1 },
+        { "glRasterPos2sv", _wrap_glRasterPos2sv, 1 },
+        { "glRasterPos2s", _wrap_glRasterPos2s, 1 },
+        { "glRasterPos2iv", _wrap_glRasterPos2iv, 1 },
+        { "glRasterPos2i", _wrap_glRasterPos2i, 1 },
+        { "glRasterPos2fv", _wrap_glRasterPos2fv, 1 },
+        { "glRasterPos2f", _wrap_glRasterPos2f, 1 },
+        { "glRasterPos2dv", _wrap_glRasterPos2dv, 1 },
+        { "glRasterPos2d", _wrap_glRasterPos2d, 1 },
+        { "glPushName", _wrap_glPushName, 1 },
+        { "glPushMatrix", _wrap_glPushMatrix, 1 },
+        { "glPushClientAttrib", _wrap_glPushClientAttrib, 1 },
+        { "glPushAttrib", _wrap_glPushAttrib, 1 },
+        { "glPrioritizeTextures", _wrap_glPrioritizeTextures, 1 },
+        { "glPopName", _wrap_glPopName, 1 },
+        { "glPopMatrix", _wrap_glPopMatrix, 1 },
+        { "glPopClientAttrib", _wrap_glPopClientAttrib, 1 },
+        { "glPopAttrib", _wrap_glPopAttrib, 1 },
+        { "glPolygonStipple", _wrap_glPolygonStipple, 1 },
+        { "glPolygonOffset", _wrap_glPolygonOffset, 1 },
+        { "glPolygonMode", _wrap_glPolygonMode, 1 },
+        { "glPointSize", _wrap_glPointSize, 1 },
+        { "glPixelZoom", _wrap_glPixelZoom, 1 },
+        { "glPixelTransferi", _wrap_glPixelTransferi, 1 },
+        { "glPixelTransferf", _wrap_glPixelTransferf, 1 },
+        { "glPixelStorei", _wrap_glPixelStorei, 1 },
+        { "glPixelStoref", _wrap_glPixelStoref, 1 },
+        { "glPixelMapusv", _wrap_glPixelMapusv, 1 },
+        { "glPixelMapuiv", _wrap_glPixelMapuiv, 1 },
+        { "glPixelMapfv", _wrap_glPixelMapfv, 1 },
+        { "glPassThrough", _wrap_glPassThrough, 1 },
+        { "glOrtho", _wrap_glOrtho, 1 },
+        { "glNormalPointer", _wrap_glNormalPointer, 1 },
+        { "glNormal3sv", _wrap_glNormal3sv, 1 },
+        { "glNormal3s", _wrap_glNormal3s, 1 },
+        { "glNormal3iv", _wrap_glNormal3iv, 1 },
+        { "glNormal3i", _wrap_glNormal3i, 1 },
+        { "glNormal3fv", _wrap_glNormal3fv, 1 },
+        { "glNormal3f", _wrap_glNormal3f, 1 },
+        { "glNormal3dv", _wrap_glNormal3dv, 1 },
+        { "glNormal3d", _wrap_glNormal3d, 1 },
+        { "glNormal3bv", _wrap_glNormal3bv, 1 },
+        { "glNormal3b", _wrap_glNormal3b, 1 },
+        { "glNewList", _wrap_glNewList, 1 },
+        { "glMultMatrixf", _wrap_glMultMatrixf, 1 },
+        { "glMultMatrixd", _wrap_glMultMatrixd, 1 },
+        { "glMatrixMode", _wrap_glMatrixMode, 1 },
+        { "glMaterialiv", _wrap_glMaterialiv, 1 },
+        { "glMateriali", _wrap_glMateriali, 1 },
+        { "glMaterialfv", _wrap_glMaterialfv, 1 },
+        { "glMaterialf", _wrap_glMaterialf, 1 },
+        { "glMapGrid2f", _wrap_glMapGrid2f, 1 },
+        { "glMapGrid2d", _wrap_glMapGrid2d, 1 },
+        { "glMapGrid1f", _wrap_glMapGrid1f, 1 },
+        { "glMapGrid1d", _wrap_glMapGrid1d, 1 },
+        { "glMap2f", _wrap_glMap2f, 1 },
+        { "glMap2d", _wrap_glMap2d, 1 },
+        { "glMap1f", _wrap_glMap1f, 1 },
+        { "glMap1d", _wrap_glMap1d, 1 },
+        { "glLogicOp", _wrap_glLogicOp, 1 },
+        { "glLoadName", _wrap_glLoadName, 1 },
+        { "glLoadMatrixf", _wrap_glLoadMatrixf, 1 },
+        { "glLoadMatrixd", _wrap_glLoadMatrixd, 1 },
+        { "glLoadIdentity", _wrap_glLoadIdentity, 1 },
+        { "glListBase", _wrap_glListBase, 1 },
+        { "glLineWidth", _wrap_glLineWidth, 1 },
+        { "glLineStipple", _wrap_glLineStipple, 1 },
+        { "glLightiv", _wrap_glLightiv, 1 },
+        { "glLighti", _wrap_glLighti, 1 },
+        { "glLightfv", _wrap_glLightfv, 1 },
+        { "glLightf", _wrap_glLightf, 1 },
+        { "glLightModeliv", _wrap_glLightModeliv, 1 },
+        { "glLightModeli", _wrap_glLightModeli, 1 },
+        { "glLightModelfv", _wrap_glLightModelfv, 1 },
+        { "glLightModelf", _wrap_glLightModelf, 1 },
+        { "glIsTexture", _wrap_glIsTexture, 1 },
+        { "glIsList", _wrap_glIsList, 1 },
+        { "glIsEnabled", _wrap_glIsEnabled, 1 },
+        { "glInterleavedArrays", _wrap_glInterleavedArrays, 1 },
+        { "glInitNames", _wrap_glInitNames, 1 },
+        { "glIndexubv", _wrap_glIndexubv, 1 },
+        { "glIndexub", _wrap_glIndexub, 1 },
+        { "glIndexsv", _wrap_glIndexsv, 1 },
+        { "glIndexs", _wrap_glIndexs, 1 },
+        { "glIndexiv", _wrap_glIndexiv, 1 },
+        { "glIndexi", _wrap_glIndexi, 1 },
+        { "glIndexfv", _wrap_glIndexfv, 1 },
+        { "glIndexf", _wrap_glIndexf, 1 },
+        { "glIndexdv", _wrap_glIndexdv, 1 },
+        { "glIndexd", _wrap_glIndexd, 1 },
+        { "glIndexPointer", _wrap_glIndexPointer, 1 },
+        { "glIndexMask", _wrap_glIndexMask, 1 },
+        { "glHint", _wrap_glHint, 1 },
+        { "glGetTexParameteriv", _wrap_glGetTexParameteriv, 1 },
+        { "glGetTexParameterfv", _wrap_glGetTexParameterfv, 1 },
+        { "glGetTexLevelParameteriv", _wrap_glGetTexLevelParameteriv, 1 },
+        { "glGetTexLevelParameterfv", _wrap_glGetTexLevelParameterfv, 1 },
+        { "glGetTexImage", _wrap_glGetTexImage, 1 },
+        { "glGetTexGeniv", _wrap_glGetTexGeniv, 1 },
+        { "glGetTexGenfv", _wrap_glGetTexGenfv, 1 },
+        { "glGetTexGendv", _wrap_glGetTexGendv, 1 },
+        { "glGetTexEnviv", _wrap_glGetTexEnviv, 1 },
+        { "glGetTexEnvfv", _wrap_glGetTexEnvfv, 1 },
+        { "glGetString", _wrap_glGetString, 1 },
+        { "glGetPolygonStipple", _wrap_glGetPolygonStipple, 1 },
+        { "glGetPointerv", _wrap_glGetPointerv, 1 },
+        { "glGetPixelMapusv", _wrap_glGetPixelMapusv, 1 },
+        { "glGetPixelMapuiv", _wrap_glGetPixelMapuiv, 1 },
+        { "glGetPixelMapfv", _wrap_glGetPixelMapfv, 1 },
+        { "glGetMaterialiv", _wrap_glGetMaterialiv, 1 },
+        { "glGetMaterialfv", _wrap_glGetMaterialfv, 1 },
+        { "glGetMapiv", _wrap_glGetMapiv, 1 },
+        { "glGetMapfv", _wrap_glGetMapfv, 1 },
+        { "glGetMapdv", _wrap_glGetMapdv, 1 },
+        { "glGetLightiv", _wrap_glGetLightiv, 1 },
+        { "glGetLightfv", _wrap_glGetLightfv, 1 },
+        { "glGetIntegerv", _wrap_glGetIntegerv, 1 },
+        { "glGetFloatv", _wrap_glGetFloatv, 1 },
+        { "glGetError", _wrap_glGetError, 1 },
+        { "glGetDoublev", _wrap_glGetDoublev, 1 },
+        { "glGetClipPlane", _wrap_glGetClipPlane, 1 },
+        { "glGetBooleanv", _wrap_glGetBooleanv, 1 },
+        { "glGenTextures", _wrap_glGenTextures, 1 },
+        { "glGenLists", _wrap_glGenLists, 1 },
+        { "glFrustum", _wrap_glFrustum, 1 },
+        { "glFrontFace", _wrap_glFrontFace, 1 },
+        { "glFogiv", _wrap_glFogiv, 1 },
+        { "glFogi", _wrap_glFogi, 1 },
+        { "glFogfv", _wrap_glFogfv, 1 },
+        { "glFogf", _wrap_glFogf, 1 },
+        { "glFlush", _wrap_glFlush, 1 },
+        { "glFinish", _wrap_glFinish, 1 },
+        { "glFeedbackBuffer", _wrap_glFeedbackBuffer, 1 },
+        { "glEvalPoint2", _wrap_glEvalPoint2, 1 },
+        { "glEvalPoint1", _wrap_glEvalPoint1, 1 },
+        { "glEvalMesh2", _wrap_glEvalMesh2, 1 },
+        { "glEvalMesh1", _wrap_glEvalMesh1, 1 },
+        { "glEvalCoord2fv", _wrap_glEvalCoord2fv, 1 },
+        { "glEvalCoord2f", _wrap_glEvalCoord2f, 1 },
+        { "glEvalCoord2dv", _wrap_glEvalCoord2dv, 1 },
+        { "glEvalCoord2d", _wrap_glEvalCoord2d, 1 },
+        { "glEvalCoord1fv", _wrap_glEvalCoord1fv, 1 },
+        { "glEvalCoord1f", _wrap_glEvalCoord1f, 1 },
+        { "glEvalCoord1dv", _wrap_glEvalCoord1dv, 1 },
+        { "glEvalCoord1d", _wrap_glEvalCoord1d, 1 },
+        { "glEndList", _wrap_glEndList, 1 },
+        { "glEnd", _wrap_glEnd, 1 },
+        { "glEnableClientState", _wrap_glEnableClientState, 1 },
+        { "glEnable", _wrap_glEnable, 1 },
+        { "glEdgeFlagv", _wrap_glEdgeFlagv, 1 },
+        { "glEdgeFlagPointer", _wrap_glEdgeFlagPointer, 1 },
+        { "glEdgeFlag", _wrap_glEdgeFlag, 1 },
+        { "glDrawPixels", _wrap_glDrawPixels, 1 },
+        { "glDrawElements", _wrap_glDrawElements, 1 },
+        { "glDrawBuffer", _wrap_glDrawBuffer, 1 },
+        { "glDrawArrays", _wrap_glDrawArrays, 1 },
+        { "glDisableClientState", _wrap_glDisableClientState, 1 },
+        { "glDisable", _wrap_glDisable, 1 },
+        { "glDepthRange", _wrap_glDepthRange, 1 },
+        { "glDepthMask", _wrap_glDepthMask, 1 },
+        { "glDepthFunc", _wrap_glDepthFunc, 1 },
+        { "glDeleteTextures", _wrap_glDeleteTextures, 1 },
+        { "glDeleteLists", _wrap_glDeleteLists, 1 },
+        { "glCullFace", _wrap_glCullFace, 1 },
+        { "glCopyTexSubImage2D", _wrap_glCopyTexSubImage2D, 1 },
+        { "glCopyTexSubImage1D", _wrap_glCopyTexSubImage1D, 1 },
+        { "glCopyTexImage2D", _wrap_glCopyTexImage2D, 1 },
+        { "glCopyTexImage1D", _wrap_glCopyTexImage1D, 1 },
+        { "glCopyPixels", _wrap_glCopyPixels, 1 },
+        { "glColorPointer", _wrap_glColorPointer, 1 },
+        { "glColorMaterial", _wrap_glColorMaterial, 1 },
+        { "glColorMask", _wrap_glColorMask, 1 },
+        { "glColor4usv", _wrap_glColor4usv, 1 },
+        { "glColor4us", _wrap_glColor4us, 1 },
+        { "glColor4uiv", _wrap_glColor4uiv, 1 },
+        { "glColor4ui", _wrap_glColor4ui, 1 },
+        { "glColor4ubv", _wrap_glColor4ubv, 1 },
+        { "glColor4ub", _wrap_glColor4ub, 1 },
+        { "glColor4sv", _wrap_glColor4sv, 1 },
+        { "glColor4s", _wrap_glColor4s, 1 },
+        { "glColor4iv", _wrap_glColor4iv, 1 },
+        { "glColor4i", _wrap_glColor4i, 1 },
+        { "glColor4fv", _wrap_glColor4fv, 1 },
+        { "glColor4f", _wrap_glColor4f, 1 },
+        { "glColor4dv", _wrap_glColor4dv, 1 },
+        { "glColor4d", _wrap_glColor4d, 1 },
+        { "glColor4bv", _wrap_glColor4bv, 1 },
+        { "glColor4b", _wrap_glColor4b, 1 },
+        { "glColor3usv", _wrap_glColor3usv, 1 },
+        { "glColor3us", _wrap_glColor3us, 1 },
+        { "glColor3uiv", _wrap_glColor3uiv, 1 },
+        { "glColor3ui", _wrap_glColor3ui, 1 },
+        { "glColor3ubv", _wrap_glColor3ubv, 1 },
+        { "glColor3ub", _wrap_glColor3ub, 1 },
+        { "glColor3sv", _wrap_glColor3sv, 1 },
+        { "glColor3s", _wrap_glColor3s, 1 },
+        { "glColor3iv", _wrap_glColor3iv, 1 },
+        { "glColor3i", _wrap_glColor3i, 1 },
+        { "glColor3fv", _wrap_glColor3fv, 1 },
+        { "glColor3f", _wrap_glColor3f, 1 },
+        { "glColor3dv", _wrap_glColor3dv, 1 },
+        { "glColor3d", _wrap_glColor3d, 1 },
+        { "glColor3bv", _wrap_glColor3bv, 1 },
+        { "glColor3b", _wrap_glColor3b, 1 },
+        { "glClipPlane", _wrap_glClipPlane, 1 },
+        { "glClearStencil", _wrap_glClearStencil, 1 },
+        { "glClearIndex", _wrap_glClearIndex, 1 },
+        { "glClearDepth", _wrap_glClearDepth, 1 },
+        { "glClearColor", _wrap_glClearColor, 1 },
+        { "glClearAccum", _wrap_glClearAccum, 1 },
+        { "glClear", _wrap_glClear, 1 },
+        { "glCallLists", _wrap_glCallLists, 1 },
+        { "glCallList", _wrap_glCallList, 1 },
+        { "glBlendFunc", _wrap_glBlendFunc, 1 },
+        { "glBitmap", _wrap_glBitmap, 1 },
+        { "glBindTexture", _wrap_glBindTexture, 1 },
+        { "glBegin", _wrap_glBegin, 1 },
+        { "glArrayElement", _wrap_glArrayElement, 1 },
+        { "glAreTexturesResident", _wrap_glAreTexturesResident, 1 },
+        { "glAlphaFunc", _wrap_glAlphaFunc, 1 },
+        { "glAccum", _wrap_glAccum, 1 },
+        { "glGetColorTableEXT", _wrap_glGetColorTableEXT, 1 },
+        { "glColorTableEXT", _wrap_glColorTableEXT, 1 },
+        { "glVertexPointerEXT", _wrap_glVertexPointerEXT, 1 },
+        { "glTexCoordPointerEXT", _wrap_glTexCoordPointerEXT, 1 },
+        { "glNormalPointerEXT", _wrap_glNormalPointerEXT, 1 },
+        { "glIndexPointerEXT", _wrap_glIndexPointerEXT, 1 },
+        { "glGetPointervEXT", _wrap_glGetPointervEXT, 1 },
+        { "glEdgeFlagPointerEXT", _wrap_glEdgeFlagPointerEXT, 1 },
+        { "glDrawArraysEXT", _wrap_glDrawArraysEXT, 1 },
+        { "glColorPointerEXT", _wrap_glColorPointerEXT, 1 },
+        { "glArrayElementEXT", _wrap_glArrayElementEXT, 1 },
+        { NULL, NULL }
+};
+static PyObject *SWIG_globals;
+#ifdef __cplusplus
+extern "C" 
+#endif
+SWIGEXPORT(void,initglcanvasc)() {
+        PyObject *m, *d;
+        SWIG_globals = SWIG_newvarlink();
+        m = Py_InitModule("glcanvasc", glcanvascMethods);
+        d = PyModule_GetDict(m);
+        PyDict_SetItemString(d,"GL_2D", PyInt_FromLong((long) GL_2D));
+        PyDict_SetItemString(d,"GL_2_BYTES", PyInt_FromLong((long) GL_2_BYTES));
+        PyDict_SetItemString(d,"GL_3D", PyInt_FromLong((long) GL_3D));
+        PyDict_SetItemString(d,"GL_3D_COLOR", PyInt_FromLong((long) GL_3D_COLOR));
+        PyDict_SetItemString(d,"GL_3D_COLOR_TEXTURE", PyInt_FromLong((long) GL_3D_COLOR_TEXTURE));
+        PyDict_SetItemString(d,"GL_3_BYTES", PyInt_FromLong((long) GL_3_BYTES));
+        PyDict_SetItemString(d,"GL_4D_COLOR_TEXTURE", PyInt_FromLong((long) GL_4D_COLOR_TEXTURE));
+        PyDict_SetItemString(d,"GL_4_BYTES", PyInt_FromLong((long) GL_4_BYTES));
+        PyDict_SetItemString(d,"GL_ACCUM", PyInt_FromLong((long) GL_ACCUM));
+        PyDict_SetItemString(d,"GL_ACCUM_ALPHA_BITS", PyInt_FromLong((long) GL_ACCUM_ALPHA_BITS));
+        PyDict_SetItemString(d,"GL_ACCUM_BLUE_BITS", PyInt_FromLong((long) GL_ACCUM_BLUE_BITS));
+        PyDict_SetItemString(d,"GL_ACCUM_BUFFER_BIT", PyInt_FromLong((long) GL_ACCUM_BUFFER_BIT));
+        PyDict_SetItemString(d,"GL_ACCUM_CLEAR_VALUE", PyInt_FromLong((long) GL_ACCUM_CLEAR_VALUE));
+        PyDict_SetItemString(d,"GL_ACCUM_GREEN_BITS", PyInt_FromLong((long) GL_ACCUM_GREEN_BITS));
+        PyDict_SetItemString(d,"GL_ACCUM_RED_BITS", PyInt_FromLong((long) GL_ACCUM_RED_BITS));
+        PyDict_SetItemString(d,"GL_ADD", PyInt_FromLong((long) GL_ADD));
+        PyDict_SetItemString(d,"GL_ALL_ATTRIB_BITS", PyInt_FromLong((long) GL_ALL_ATTRIB_BITS));
+        PyDict_SetItemString(d,"GL_ALPHA", PyInt_FromLong((long) GL_ALPHA));
+        PyDict_SetItemString(d,"GL_ALPHA12", PyInt_FromLong((long) GL_ALPHA12));
+        PyDict_SetItemString(d,"GL_ALPHA16", PyInt_FromLong((long) GL_ALPHA16));
+        PyDict_SetItemString(d,"GL_ALPHA4", PyInt_FromLong((long) GL_ALPHA4));
+        PyDict_SetItemString(d,"GL_ALPHA8", PyInt_FromLong((long) GL_ALPHA8));
+        PyDict_SetItemString(d,"GL_ALPHA_BIAS", PyInt_FromLong((long) GL_ALPHA_BIAS));
+        PyDict_SetItemString(d,"GL_ALPHA_BITS", PyInt_FromLong((long) GL_ALPHA_BITS));
+        PyDict_SetItemString(d,"GL_ALPHA_SCALE", PyInt_FromLong((long) GL_ALPHA_SCALE));
+        PyDict_SetItemString(d,"GL_ALPHA_TEST", PyInt_FromLong((long) GL_ALPHA_TEST));
+        PyDict_SetItemString(d,"GL_ALPHA_TEST_FUNC", PyInt_FromLong((long) GL_ALPHA_TEST_FUNC));
+        PyDict_SetItemString(d,"GL_ALPHA_TEST_REF", PyInt_FromLong((long) GL_ALPHA_TEST_REF));
+        PyDict_SetItemString(d,"GL_ALWAYS", PyInt_FromLong((long) GL_ALWAYS));
+        PyDict_SetItemString(d,"GL_AMBIENT", PyInt_FromLong((long) GL_AMBIENT));
+        PyDict_SetItemString(d,"GL_AMBIENT_AND_DIFFUSE", PyInt_FromLong((long) GL_AMBIENT_AND_DIFFUSE));
+        PyDict_SetItemString(d,"GL_AND", PyInt_FromLong((long) GL_AND));
+        PyDict_SetItemString(d,"GL_AND_INVERTED", PyInt_FromLong((long) GL_AND_INVERTED));
+        PyDict_SetItemString(d,"GL_AND_REVERSE", PyInt_FromLong((long) GL_AND_REVERSE));
+        PyDict_SetItemString(d,"GL_ATTRIB_STACK_DEPTH", PyInt_FromLong((long) GL_ATTRIB_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_AUTO_NORMAL", PyInt_FromLong((long) GL_AUTO_NORMAL));
+        PyDict_SetItemString(d,"GL_AUX0", PyInt_FromLong((long) GL_AUX0));
+        PyDict_SetItemString(d,"GL_AUX1", PyInt_FromLong((long) GL_AUX1));
+        PyDict_SetItemString(d,"GL_AUX2", PyInt_FromLong((long) GL_AUX2));
+        PyDict_SetItemString(d,"GL_AUX3", PyInt_FromLong((long) GL_AUX3));
+        PyDict_SetItemString(d,"GL_AUX_BUFFERS", PyInt_FromLong((long) GL_AUX_BUFFERS));
+        PyDict_SetItemString(d,"GL_BACK", PyInt_FromLong((long) GL_BACK));
+        PyDict_SetItemString(d,"GL_BACK_LEFT", PyInt_FromLong((long) GL_BACK_LEFT));
+        PyDict_SetItemString(d,"GL_BACK_RIGHT", PyInt_FromLong((long) GL_BACK_RIGHT));
+        PyDict_SetItemString(d,"GL_BITMAP", PyInt_FromLong((long) GL_BITMAP));
+        PyDict_SetItemString(d,"GL_BITMAP_TOKEN", PyInt_FromLong((long) GL_BITMAP_TOKEN));
+        PyDict_SetItemString(d,"GL_BLEND", PyInt_FromLong((long) GL_BLEND));
+        PyDict_SetItemString(d,"GL_BLEND_DST", PyInt_FromLong((long) GL_BLEND_DST));
+        PyDict_SetItemString(d,"GL_BLEND_SRC", PyInt_FromLong((long) GL_BLEND_SRC));
+        PyDict_SetItemString(d,"GL_BLUE", PyInt_FromLong((long) GL_BLUE));
+        PyDict_SetItemString(d,"GL_BLUE_BIAS", PyInt_FromLong((long) GL_BLUE_BIAS));
+        PyDict_SetItemString(d,"GL_BLUE_BITS", PyInt_FromLong((long) GL_BLUE_BITS));
+        PyDict_SetItemString(d,"GL_BLUE_SCALE", PyInt_FromLong((long) GL_BLUE_SCALE));
+        PyDict_SetItemString(d,"GL_BYTE", PyInt_FromLong((long) GL_BYTE));
+        PyDict_SetItemString(d,"GL_C3F_V3F", PyInt_FromLong((long) GL_C3F_V3F));
+        PyDict_SetItemString(d,"GL_C4F_N3F_V3F", PyInt_FromLong((long) GL_C4F_N3F_V3F));
+        PyDict_SetItemString(d,"GL_C4UB_V2F", PyInt_FromLong((long) GL_C4UB_V2F));
+        PyDict_SetItemString(d,"GL_C4UB_V3F", PyInt_FromLong((long) GL_C4UB_V3F));
+        PyDict_SetItemString(d,"GL_CCW", PyInt_FromLong((long) GL_CCW));
+        PyDict_SetItemString(d,"GL_CLAMP", PyInt_FromLong((long) GL_CLAMP));
+        PyDict_SetItemString(d,"GL_CLEAR", PyInt_FromLong((long) GL_CLEAR));
+        PyDict_SetItemString(d,"GL_CLIENT_ALL_ATTRIB_BITS", PyInt_FromLong((long) GL_CLIENT_ALL_ATTRIB_BITS));
+        PyDict_SetItemString(d,"GL_CLIENT_ATTRIB_STACK_DEPTH", PyInt_FromLong((long) GL_CLIENT_ATTRIB_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_CLIENT_PIXEL_STORE_BIT", PyInt_FromLong((long) GL_CLIENT_PIXEL_STORE_BIT));
+        PyDict_SetItemString(d,"GL_CLIENT_VERTEX_ARRAY_BIT", PyInt_FromLong((long) GL_CLIENT_VERTEX_ARRAY_BIT));
+        PyDict_SetItemString(d,"GL_CLIP_PLANE0", PyInt_FromLong((long) GL_CLIP_PLANE0));
+        PyDict_SetItemString(d,"GL_CLIP_PLANE1", PyInt_FromLong((long) GL_CLIP_PLANE1));
+        PyDict_SetItemString(d,"GL_CLIP_PLANE2", PyInt_FromLong((long) GL_CLIP_PLANE2));
+        PyDict_SetItemString(d,"GL_CLIP_PLANE3", PyInt_FromLong((long) GL_CLIP_PLANE3));
+        PyDict_SetItemString(d,"GL_CLIP_PLANE4", PyInt_FromLong((long) GL_CLIP_PLANE4));
+        PyDict_SetItemString(d,"GL_CLIP_PLANE5", PyInt_FromLong((long) GL_CLIP_PLANE5));
+        PyDict_SetItemString(d,"GL_COEFF", PyInt_FromLong((long) GL_COEFF));
+        PyDict_SetItemString(d,"GL_COLOR", PyInt_FromLong((long) GL_COLOR));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY", PyInt_FromLong((long) GL_COLOR_ARRAY));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_COUNT_EXT", PyInt_FromLong((long) GL_COLOR_ARRAY_COUNT_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_EXT", PyInt_FromLong((long) GL_COLOR_ARRAY_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_POINTER", PyInt_FromLong((long) GL_COLOR_ARRAY_POINTER));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_POINTER_EXT", PyInt_FromLong((long) GL_COLOR_ARRAY_POINTER_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_SIZE", PyInt_FromLong((long) GL_COLOR_ARRAY_SIZE));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_ARRAY_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_STRIDE", PyInt_FromLong((long) GL_COLOR_ARRAY_STRIDE));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_STRIDE_EXT", PyInt_FromLong((long) GL_COLOR_ARRAY_STRIDE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_TYPE", PyInt_FromLong((long) GL_COLOR_ARRAY_TYPE));
+        PyDict_SetItemString(d,"GL_COLOR_ARRAY_TYPE_EXT", PyInt_FromLong((long) GL_COLOR_ARRAY_TYPE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_BUFFER_BIT", PyInt_FromLong((long) GL_COLOR_BUFFER_BIT));
+        PyDict_SetItemString(d,"GL_COLOR_CLEAR_VALUE", PyInt_FromLong((long) GL_COLOR_CLEAR_VALUE));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX", PyInt_FromLong((long) GL_COLOR_INDEX));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX12_EXT", PyInt_FromLong((long) GL_COLOR_INDEX12_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX16_EXT", PyInt_FromLong((long) GL_COLOR_INDEX16_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX1_EXT", PyInt_FromLong((long) GL_COLOR_INDEX1_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX2_EXT", PyInt_FromLong((long) GL_COLOR_INDEX2_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX4_EXT", PyInt_FromLong((long) GL_COLOR_INDEX4_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_INDEX8_EXT", PyInt_FromLong((long) GL_COLOR_INDEX8_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_INDEXES", PyInt_FromLong((long) GL_COLOR_INDEXES));
+        PyDict_SetItemString(d,"GL_COLOR_LOGIC_OP", PyInt_FromLong((long) GL_COLOR_LOGIC_OP));
+        PyDict_SetItemString(d,"GL_COLOR_MATERIAL", PyInt_FromLong((long) GL_COLOR_MATERIAL));
+        PyDict_SetItemString(d,"GL_COLOR_MATERIAL_FACE", PyInt_FromLong((long) GL_COLOR_MATERIAL_FACE));
+        PyDict_SetItemString(d,"GL_COLOR_MATERIAL_PARAMETER", PyInt_FromLong((long) GL_COLOR_MATERIAL_PARAMETER));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_ALPHA_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_ALPHA_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_BLUE_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_BLUE_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_FORMAT_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_FORMAT_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_GREEN_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_GREEN_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_INTENSITY_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_INTENSITY_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_LUMINANCE_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_LUMINANCE_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_RED_SIZE_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_RED_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_TABLE_WIDTH_EXT", PyInt_FromLong((long) GL_COLOR_TABLE_WIDTH_EXT));
+        PyDict_SetItemString(d,"GL_COLOR_WRITEMASK", PyInt_FromLong((long) GL_COLOR_WRITEMASK));
+        PyDict_SetItemString(d,"GL_COMPILE", PyInt_FromLong((long) GL_COMPILE));
+        PyDict_SetItemString(d,"GL_COMPILE_AND_EXECUTE", PyInt_FromLong((long) GL_COMPILE_AND_EXECUTE));
+        PyDict_SetItemString(d,"GL_CONSTANT_ATTENUATION", PyInt_FromLong((long) GL_CONSTANT_ATTENUATION));
+        PyDict_SetItemString(d,"GL_COPY", PyInt_FromLong((long) GL_COPY));
+        PyDict_SetItemString(d,"GL_COPY_INVERTED", PyInt_FromLong((long) GL_COPY_INVERTED));
+        PyDict_SetItemString(d,"GL_COPY_PIXEL_TOKEN", PyInt_FromLong((long) GL_COPY_PIXEL_TOKEN));
+        PyDict_SetItemString(d,"GL_CULL_FACE", PyInt_FromLong((long) GL_CULL_FACE));
+        PyDict_SetItemString(d,"GL_CULL_FACE_MODE", PyInt_FromLong((long) GL_CULL_FACE_MODE));
+        PyDict_SetItemString(d,"GL_CURRENT_BIT", PyInt_FromLong((long) GL_CURRENT_BIT));
+        PyDict_SetItemString(d,"GL_CURRENT_COLOR", PyInt_FromLong((long) GL_CURRENT_COLOR));
+        PyDict_SetItemString(d,"GL_CURRENT_INDEX", PyInt_FromLong((long) GL_CURRENT_INDEX));
+        PyDict_SetItemString(d,"GL_CURRENT_NORMAL", PyInt_FromLong((long) GL_CURRENT_NORMAL));
+        PyDict_SetItemString(d,"GL_CURRENT_RASTER_COLOR", PyInt_FromLong((long) GL_CURRENT_RASTER_COLOR));
+        PyDict_SetItemString(d,"GL_CURRENT_RASTER_DISTANCE", PyInt_FromLong((long) GL_CURRENT_RASTER_DISTANCE));
+        PyDict_SetItemString(d,"GL_CURRENT_RASTER_INDEX", PyInt_FromLong((long) GL_CURRENT_RASTER_INDEX));
+        PyDict_SetItemString(d,"GL_CURRENT_RASTER_POSITION", PyInt_FromLong((long) GL_CURRENT_RASTER_POSITION));
+        PyDict_SetItemString(d,"GL_CURRENT_RASTER_POSITION_VALID", PyInt_FromLong((long) GL_CURRENT_RASTER_POSITION_VALID));
+        PyDict_SetItemString(d,"GL_CURRENT_RASTER_TEXTURE_COORDS", PyInt_FromLong((long) GL_CURRENT_RASTER_TEXTURE_COORDS));
+        PyDict_SetItemString(d,"GL_CURRENT_TEXTURE_COORDS", PyInt_FromLong((long) GL_CURRENT_TEXTURE_COORDS));
+        PyDict_SetItemString(d,"GL_CW", PyInt_FromLong((long) GL_CW));
+        PyDict_SetItemString(d,"GL_DECAL", PyInt_FromLong((long) GL_DECAL));
+        PyDict_SetItemString(d,"GL_DECR", PyInt_FromLong((long) GL_DECR));
+        PyDict_SetItemString(d,"GL_DEPTH", PyInt_FromLong((long) GL_DEPTH));
+        PyDict_SetItemString(d,"GL_DEPTH_BIAS", PyInt_FromLong((long) GL_DEPTH_BIAS));
+        PyDict_SetItemString(d,"GL_DEPTH_BITS", PyInt_FromLong((long) GL_DEPTH_BITS));
+        PyDict_SetItemString(d,"GL_DEPTH_BUFFER_BIT", PyInt_FromLong((long) GL_DEPTH_BUFFER_BIT));
+        PyDict_SetItemString(d,"GL_DEPTH_CLEAR_VALUE", PyInt_FromLong((long) GL_DEPTH_CLEAR_VALUE));
+        PyDict_SetItemString(d,"GL_DEPTH_COMPONENT", PyInt_FromLong((long) GL_DEPTH_COMPONENT));
+        PyDict_SetItemString(d,"GL_DEPTH_FUNC", PyInt_FromLong((long) GL_DEPTH_FUNC));
+        PyDict_SetItemString(d,"GL_DEPTH_RANGE", PyInt_FromLong((long) GL_DEPTH_RANGE));
+        PyDict_SetItemString(d,"GL_DEPTH_SCALE", PyInt_FromLong((long) GL_DEPTH_SCALE));
+        PyDict_SetItemString(d,"GL_DEPTH_TEST", PyInt_FromLong((long) GL_DEPTH_TEST));
+        PyDict_SetItemString(d,"GL_DEPTH_WRITEMASK", PyInt_FromLong((long) GL_DEPTH_WRITEMASK));
+        PyDict_SetItemString(d,"GL_DIFFUSE", PyInt_FromLong((long) GL_DIFFUSE));
+        PyDict_SetItemString(d,"GL_DITHER", PyInt_FromLong((long) GL_DITHER));
+        PyDict_SetItemString(d,"GL_DOMAIN", PyInt_FromLong((long) GL_DOMAIN));
+        PyDict_SetItemString(d,"GL_DONT_CARE", PyInt_FromLong((long) GL_DONT_CARE));
+        PyDict_SetItemString(d,"GL_DOUBLE", PyInt_FromLong((long) GL_DOUBLE));
+        PyDict_SetItemString(d,"GL_DOUBLEBUFFER", PyInt_FromLong((long) GL_DOUBLEBUFFER));
+        PyDict_SetItemString(d,"GL_DRAW_BUFFER", PyInt_FromLong((long) GL_DRAW_BUFFER));
+        PyDict_SetItemString(d,"GL_DRAW_PIXEL_TOKEN", PyInt_FromLong((long) GL_DRAW_PIXEL_TOKEN));
+        PyDict_SetItemString(d,"GL_DST_ALPHA", PyInt_FromLong((long) GL_DST_ALPHA));
+        PyDict_SetItemString(d,"GL_DST_COLOR", PyInt_FromLong((long) GL_DST_COLOR));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG", PyInt_FromLong((long) GL_EDGE_FLAG));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY_COUNT_EXT", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY_COUNT_EXT));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY_EXT", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY_EXT));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY_POINTER", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY_POINTER));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY_POINTER_EXT", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY_POINTER_EXT));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY_STRIDE", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY_STRIDE));
+        PyDict_SetItemString(d,"GL_EDGE_FLAG_ARRAY_STRIDE_EXT", PyInt_FromLong((long) GL_EDGE_FLAG_ARRAY_STRIDE_EXT));
+        PyDict_SetItemString(d,"GL_EMISSION", PyInt_FromLong((long) GL_EMISSION));
+        PyDict_SetItemString(d,"GL_ENABLE_BIT", PyInt_FromLong((long) GL_ENABLE_BIT));
+        PyDict_SetItemString(d,"GL_EQUAL", PyInt_FromLong((long) GL_EQUAL));
+        PyDict_SetItemString(d,"GL_EQUIV", PyInt_FromLong((long) GL_EQUIV));
+        PyDict_SetItemString(d,"GL_EVAL_BIT", PyInt_FromLong((long) GL_EVAL_BIT));
+        PyDict_SetItemString(d,"GL_EXP", PyInt_FromLong((long) GL_EXP));
+        PyDict_SetItemString(d,"GL_EXP2", PyInt_FromLong((long) GL_EXP2));
+        PyDict_SetItemString(d,"GL_EXTENSIONS", PyInt_FromLong((long) GL_EXTENSIONS));
+        PyDict_SetItemString(d,"GL_EXT_paletted_texture", PyInt_FromLong((long) GL_EXT_paletted_texture));
+        PyDict_SetItemString(d,"GL_EXT_vertex_array", PyInt_FromLong((long) GL_EXT_vertex_array));
+        PyDict_SetItemString(d,"GL_EYE_LINEAR", PyInt_FromLong((long) GL_EYE_LINEAR));
+        PyDict_SetItemString(d,"GL_EYE_PLANE", PyInt_FromLong((long) GL_EYE_PLANE));
+        PyDict_SetItemString(d,"GL_FALSE", PyInt_FromLong((long) GL_FALSE));
+        PyDict_SetItemString(d,"GL_FASTEST", PyInt_FromLong((long) GL_FASTEST));
+        PyDict_SetItemString(d,"GL_FEEDBACK", PyInt_FromLong((long) GL_FEEDBACK));
+        PyDict_SetItemString(d,"GL_FEEDBACK_BUFFER_POINTER", PyInt_FromLong((long) GL_FEEDBACK_BUFFER_POINTER));
+        PyDict_SetItemString(d,"GL_FEEDBACK_BUFFER_SIZE", PyInt_FromLong((long) GL_FEEDBACK_BUFFER_SIZE));
+        PyDict_SetItemString(d,"GL_FEEDBACK_BUFFER_TYPE", PyInt_FromLong((long) GL_FEEDBACK_BUFFER_TYPE));
+        PyDict_SetItemString(d,"GL_FILL", PyInt_FromLong((long) GL_FILL));
+        PyDict_SetItemString(d,"GL_FLAT", PyInt_FromLong((long) GL_FLAT));
+        PyDict_SetItemString(d,"GL_FLOAT", PyInt_FromLong((long) GL_FLOAT));
+        PyDict_SetItemString(d,"GL_FOG", PyInt_FromLong((long) GL_FOG));
+        PyDict_SetItemString(d,"GL_FOG_BIT", PyInt_FromLong((long) GL_FOG_BIT));
+        PyDict_SetItemString(d,"GL_FOG_COLOR", PyInt_FromLong((long) GL_FOG_COLOR));
+        PyDict_SetItemString(d,"GL_FOG_DENSITY", PyInt_FromLong((long) GL_FOG_DENSITY));
+        PyDict_SetItemString(d,"GL_FOG_END", PyInt_FromLong((long) GL_FOG_END));
+        PyDict_SetItemString(d,"GL_FOG_HINT", PyInt_FromLong((long) GL_FOG_HINT));
+        PyDict_SetItemString(d,"GL_FOG_INDEX", PyInt_FromLong((long) GL_FOG_INDEX));
+        PyDict_SetItemString(d,"GL_FOG_MODE", PyInt_FromLong((long) GL_FOG_MODE));
+        PyDict_SetItemString(d,"GL_FOG_START", PyInt_FromLong((long) GL_FOG_START));
+        PyDict_SetItemString(d,"GL_FRONT", PyInt_FromLong((long) GL_FRONT));
+        PyDict_SetItemString(d,"GL_FRONT_AND_BACK", PyInt_FromLong((long) GL_FRONT_AND_BACK));
+        PyDict_SetItemString(d,"GL_FRONT_FACE", PyInt_FromLong((long) GL_FRONT_FACE));
+        PyDict_SetItemString(d,"GL_FRONT_LEFT", PyInt_FromLong((long) GL_FRONT_LEFT));
+        PyDict_SetItemString(d,"GL_FRONT_RIGHT", PyInt_FromLong((long) GL_FRONT_RIGHT));
+        PyDict_SetItemString(d,"GL_GEQUAL", PyInt_FromLong((long) GL_GEQUAL));
+        PyDict_SetItemString(d,"GL_GREATER", PyInt_FromLong((long) GL_GREATER));
+        PyDict_SetItemString(d,"GL_GREEN", PyInt_FromLong((long) GL_GREEN));
+        PyDict_SetItemString(d,"GL_GREEN_BIAS", PyInt_FromLong((long) GL_GREEN_BIAS));
+        PyDict_SetItemString(d,"GL_GREEN_BITS", PyInt_FromLong((long) GL_GREEN_BITS));
+        PyDict_SetItemString(d,"GL_GREEN_SCALE", PyInt_FromLong((long) GL_GREEN_SCALE));
+        PyDict_SetItemString(d,"GL_HINT_BIT", PyInt_FromLong((long) GL_HINT_BIT));
+        PyDict_SetItemString(d,"GL_INCR", PyInt_FromLong((long) GL_INCR));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY", PyInt_FromLong((long) GL_INDEX_ARRAY));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_COUNT_EXT", PyInt_FromLong((long) GL_INDEX_ARRAY_COUNT_EXT));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_EXT", PyInt_FromLong((long) GL_INDEX_ARRAY_EXT));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_POINTER", PyInt_FromLong((long) GL_INDEX_ARRAY_POINTER));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_POINTER_EXT", PyInt_FromLong((long) GL_INDEX_ARRAY_POINTER_EXT));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_STRIDE", PyInt_FromLong((long) GL_INDEX_ARRAY_STRIDE));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_STRIDE_EXT", PyInt_FromLong((long) GL_INDEX_ARRAY_STRIDE_EXT));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_TYPE", PyInt_FromLong((long) GL_INDEX_ARRAY_TYPE));
+        PyDict_SetItemString(d,"GL_INDEX_ARRAY_TYPE_EXT", PyInt_FromLong((long) GL_INDEX_ARRAY_TYPE_EXT));
+        PyDict_SetItemString(d,"GL_INDEX_BITS", PyInt_FromLong((long) GL_INDEX_BITS));
+        PyDict_SetItemString(d,"GL_INDEX_CLEAR_VALUE", PyInt_FromLong((long) GL_INDEX_CLEAR_VALUE));
+        PyDict_SetItemString(d,"GL_INDEX_LOGIC_OP", PyInt_FromLong((long) GL_INDEX_LOGIC_OP));
+        PyDict_SetItemString(d,"GL_INDEX_MODE", PyInt_FromLong((long) GL_INDEX_MODE));
+        PyDict_SetItemString(d,"GL_INDEX_OFFSET", PyInt_FromLong((long) GL_INDEX_OFFSET));
+        PyDict_SetItemString(d,"GL_INDEX_SHIFT", PyInt_FromLong((long) GL_INDEX_SHIFT));
+        PyDict_SetItemString(d,"GL_INDEX_WRITEMASK", PyInt_FromLong((long) GL_INDEX_WRITEMASK));
+        PyDict_SetItemString(d,"GL_INT", PyInt_FromLong((long) GL_INT));
+        PyDict_SetItemString(d,"GL_INTENSITY", PyInt_FromLong((long) GL_INTENSITY));
+        PyDict_SetItemString(d,"GL_INTENSITY12", PyInt_FromLong((long) GL_INTENSITY12));
+        PyDict_SetItemString(d,"GL_INTENSITY16", PyInt_FromLong((long) GL_INTENSITY16));
+        PyDict_SetItemString(d,"GL_INTENSITY4", PyInt_FromLong((long) GL_INTENSITY4));
+        PyDict_SetItemString(d,"GL_INTENSITY8", PyInt_FromLong((long) GL_INTENSITY8));
+        PyDict_SetItemString(d,"GL_INVALID_ENUM", PyInt_FromLong((long) GL_INVALID_ENUM));
+        PyDict_SetItemString(d,"GL_INVALID_OPERATION", PyInt_FromLong((long) GL_INVALID_OPERATION));
+        PyDict_SetItemString(d,"GL_INVALID_VALUE", PyInt_FromLong((long) GL_INVALID_VALUE));
+        PyDict_SetItemString(d,"GL_INVERT", PyInt_FromLong((long) GL_INVERT));
+        PyDict_SetItemString(d,"GL_KEEP", PyInt_FromLong((long) GL_KEEP));
+        PyDict_SetItemString(d,"GL_LEFT", PyInt_FromLong((long) GL_LEFT));
+        PyDict_SetItemString(d,"GL_LEQUAL", PyInt_FromLong((long) GL_LEQUAL));
+        PyDict_SetItemString(d,"GL_LESS", PyInt_FromLong((long) GL_LESS));
+        PyDict_SetItemString(d,"GL_LIGHT0", PyInt_FromLong((long) GL_LIGHT0));
+        PyDict_SetItemString(d,"GL_LIGHT1", PyInt_FromLong((long) GL_LIGHT1));
+        PyDict_SetItemString(d,"GL_LIGHT2", PyInt_FromLong((long) GL_LIGHT2));
+        PyDict_SetItemString(d,"GL_LIGHT3", PyInt_FromLong((long) GL_LIGHT3));
+        PyDict_SetItemString(d,"GL_LIGHT4", PyInt_FromLong((long) GL_LIGHT4));
+        PyDict_SetItemString(d,"GL_LIGHT5", PyInt_FromLong((long) GL_LIGHT5));
+        PyDict_SetItemString(d,"GL_LIGHT6", PyInt_FromLong((long) GL_LIGHT6));
+        PyDict_SetItemString(d,"GL_LIGHT7", PyInt_FromLong((long) GL_LIGHT7));
+        PyDict_SetItemString(d,"GL_LIGHTING", PyInt_FromLong((long) GL_LIGHTING));
+        PyDict_SetItemString(d,"GL_LIGHTING_BIT", PyInt_FromLong((long) GL_LIGHTING_BIT));
+        PyDict_SetItemString(d,"GL_LIGHT_MODEL_AMBIENT", PyInt_FromLong((long) GL_LIGHT_MODEL_AMBIENT));
+        PyDict_SetItemString(d,"GL_LIGHT_MODEL_LOCAL_VIEWER", PyInt_FromLong((long) GL_LIGHT_MODEL_LOCAL_VIEWER));
+        PyDict_SetItemString(d,"GL_LIGHT_MODEL_TWO_SIDE", PyInt_FromLong((long) GL_LIGHT_MODEL_TWO_SIDE));
+        PyDict_SetItemString(d,"GL_LINE", PyInt_FromLong((long) GL_LINE));
+        PyDict_SetItemString(d,"GL_LINEAR", PyInt_FromLong((long) GL_LINEAR));
+        PyDict_SetItemString(d,"GL_LINEAR_ATTENUATION", PyInt_FromLong((long) GL_LINEAR_ATTENUATION));
+        PyDict_SetItemString(d,"GL_LINEAR_MIPMAP_LINEAR", PyInt_FromLong((long) GL_LINEAR_MIPMAP_LINEAR));
+        PyDict_SetItemString(d,"GL_LINEAR_MIPMAP_NEAREST", PyInt_FromLong((long) GL_LINEAR_MIPMAP_NEAREST));
+        PyDict_SetItemString(d,"GL_LINES", PyInt_FromLong((long) GL_LINES));
+        PyDict_SetItemString(d,"GL_LINE_BIT", PyInt_FromLong((long) GL_LINE_BIT));
+        PyDict_SetItemString(d,"GL_LINE_LOOP", PyInt_FromLong((long) GL_LINE_LOOP));
+        PyDict_SetItemString(d,"GL_LINE_RESET_TOKEN", PyInt_FromLong((long) GL_LINE_RESET_TOKEN));
+        PyDict_SetItemString(d,"GL_LINE_SMOOTH", PyInt_FromLong((long) GL_LINE_SMOOTH));
+        PyDict_SetItemString(d,"GL_LINE_SMOOTH_HINT", PyInt_FromLong((long) GL_LINE_SMOOTH_HINT));
+        PyDict_SetItemString(d,"GL_LINE_STIPPLE", PyInt_FromLong((long) GL_LINE_STIPPLE));
+        PyDict_SetItemString(d,"GL_LINE_STIPPLE_PATTERN", PyInt_FromLong((long) GL_LINE_STIPPLE_PATTERN));
+        PyDict_SetItemString(d,"GL_LINE_STIPPLE_REPEAT", PyInt_FromLong((long) GL_LINE_STIPPLE_REPEAT));
+        PyDict_SetItemString(d,"GL_LINE_STRIP", PyInt_FromLong((long) GL_LINE_STRIP));
+        PyDict_SetItemString(d,"GL_LINE_TOKEN", PyInt_FromLong((long) GL_LINE_TOKEN));
+        PyDict_SetItemString(d,"GL_LINE_WIDTH", PyInt_FromLong((long) GL_LINE_WIDTH));
+        PyDict_SetItemString(d,"GL_LINE_WIDTH_GRANULARITY", PyInt_FromLong((long) GL_LINE_WIDTH_GRANULARITY));
+        PyDict_SetItemString(d,"GL_LINE_WIDTH_RANGE", PyInt_FromLong((long) GL_LINE_WIDTH_RANGE));
+        PyDict_SetItemString(d,"GL_LIST_BASE", PyInt_FromLong((long) GL_LIST_BASE));
+        PyDict_SetItemString(d,"GL_LIST_BIT", PyInt_FromLong((long) GL_LIST_BIT));
+        PyDict_SetItemString(d,"GL_LIST_INDEX", PyInt_FromLong((long) GL_LIST_INDEX));
+        PyDict_SetItemString(d,"GL_LIST_MODE", PyInt_FromLong((long) GL_LIST_MODE));
+        PyDict_SetItemString(d,"GL_LOAD", PyInt_FromLong((long) GL_LOAD));
+        PyDict_SetItemString(d,"GL_LOGIC_OP", PyInt_FromLong((long) GL_LOGIC_OP));
+        PyDict_SetItemString(d,"GL_LOGIC_OP_MODE", PyInt_FromLong((long) GL_LOGIC_OP_MODE));
+        PyDict_SetItemString(d,"GL_LUMINANCE", PyInt_FromLong((long) GL_LUMINANCE));
+        PyDict_SetItemString(d,"GL_LUMINANCE12", PyInt_FromLong((long) GL_LUMINANCE12));
+        PyDict_SetItemString(d,"GL_LUMINANCE12_ALPHA12", PyInt_FromLong((long) GL_LUMINANCE12_ALPHA12));
+        PyDict_SetItemString(d,"GL_LUMINANCE12_ALPHA4", PyInt_FromLong((long) GL_LUMINANCE12_ALPHA4));
+        PyDict_SetItemString(d,"GL_LUMINANCE16", PyInt_FromLong((long) GL_LUMINANCE16));
+        PyDict_SetItemString(d,"GL_LUMINANCE16_ALPHA16", PyInt_FromLong((long) GL_LUMINANCE16_ALPHA16));
+        PyDict_SetItemString(d,"GL_LUMINANCE4", PyInt_FromLong((long) GL_LUMINANCE4));
+        PyDict_SetItemString(d,"GL_LUMINANCE4_ALPHA4", PyInt_FromLong((long) GL_LUMINANCE4_ALPHA4));
+        PyDict_SetItemString(d,"GL_LUMINANCE6_ALPHA2", PyInt_FromLong((long) GL_LUMINANCE6_ALPHA2));
+        PyDict_SetItemString(d,"GL_LUMINANCE8", PyInt_FromLong((long) GL_LUMINANCE8));
+        PyDict_SetItemString(d,"GL_LUMINANCE8_ALPHA8", PyInt_FromLong((long) GL_LUMINANCE8_ALPHA8));
+        PyDict_SetItemString(d,"GL_LUMINANCE_ALPHA", PyInt_FromLong((long) GL_LUMINANCE_ALPHA));
+        PyDict_SetItemString(d,"GL_MAP1_COLOR_4", PyInt_FromLong((long) GL_MAP1_COLOR_4));
+        PyDict_SetItemString(d,"GL_MAP1_GRID_DOMAIN", PyInt_FromLong((long) GL_MAP1_GRID_DOMAIN));
+        PyDict_SetItemString(d,"GL_MAP1_GRID_SEGMENTS", PyInt_FromLong((long) GL_MAP1_GRID_SEGMENTS));
+        PyDict_SetItemString(d,"GL_MAP1_INDEX", PyInt_FromLong((long) GL_MAP1_INDEX));
+        PyDict_SetItemString(d,"GL_MAP1_NORMAL", PyInt_FromLong((long) GL_MAP1_NORMAL));
+        PyDict_SetItemString(d,"GL_MAP1_TEXTURE_COORD_1", PyInt_FromLong((long) GL_MAP1_TEXTURE_COORD_1));
+        PyDict_SetItemString(d,"GL_MAP1_TEXTURE_COORD_2", PyInt_FromLong((long) GL_MAP1_TEXTURE_COORD_2));
+        PyDict_SetItemString(d,"GL_MAP1_TEXTURE_COORD_3", PyInt_FromLong((long) GL_MAP1_TEXTURE_COORD_3));
+        PyDict_SetItemString(d,"GL_MAP1_TEXTURE_COORD_4", PyInt_FromLong((long) GL_MAP1_TEXTURE_COORD_4));
+        PyDict_SetItemString(d,"GL_MAP1_VERTEX_3", PyInt_FromLong((long) GL_MAP1_VERTEX_3));
+        PyDict_SetItemString(d,"GL_MAP1_VERTEX_4", PyInt_FromLong((long) GL_MAP1_VERTEX_4));
+        PyDict_SetItemString(d,"GL_MAP2_COLOR_4", PyInt_FromLong((long) GL_MAP2_COLOR_4));
+        PyDict_SetItemString(d,"GL_MAP2_GRID_DOMAIN", PyInt_FromLong((long) GL_MAP2_GRID_DOMAIN));
+        PyDict_SetItemString(d,"GL_MAP2_GRID_SEGMENTS", PyInt_FromLong((long) GL_MAP2_GRID_SEGMENTS));
+        PyDict_SetItemString(d,"GL_MAP2_INDEX", PyInt_FromLong((long) GL_MAP2_INDEX));
+        PyDict_SetItemString(d,"GL_MAP2_NORMAL", PyInt_FromLong((long) GL_MAP2_NORMAL));
+        PyDict_SetItemString(d,"GL_MAP2_TEXTURE_COORD_1", PyInt_FromLong((long) GL_MAP2_TEXTURE_COORD_1));
+        PyDict_SetItemString(d,"GL_MAP2_TEXTURE_COORD_2", PyInt_FromLong((long) GL_MAP2_TEXTURE_COORD_2));
+        PyDict_SetItemString(d,"GL_MAP2_TEXTURE_COORD_3", PyInt_FromLong((long) GL_MAP2_TEXTURE_COORD_3));
+        PyDict_SetItemString(d,"GL_MAP2_TEXTURE_COORD_4", PyInt_FromLong((long) GL_MAP2_TEXTURE_COORD_4));
+        PyDict_SetItemString(d,"GL_MAP2_VERTEX_3", PyInt_FromLong((long) GL_MAP2_VERTEX_3));
+        PyDict_SetItemString(d,"GL_MAP2_VERTEX_4", PyInt_FromLong((long) GL_MAP2_VERTEX_4));
+        PyDict_SetItemString(d,"GL_MAP_COLOR", PyInt_FromLong((long) GL_MAP_COLOR));
+        PyDict_SetItemString(d,"GL_MAP_STENCIL", PyInt_FromLong((long) GL_MAP_STENCIL));
+        PyDict_SetItemString(d,"GL_MATRIX_MODE", PyInt_FromLong((long) GL_MATRIX_MODE));
+        PyDict_SetItemString(d,"GL_MAX_ATTRIB_STACK_DEPTH", PyInt_FromLong((long) GL_MAX_ATTRIB_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MAX_CLIENT_ATTRIB_STACK_DEPTH", PyInt_FromLong((long) GL_MAX_CLIENT_ATTRIB_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MAX_CLIP_PLANES", PyInt_FromLong((long) GL_MAX_CLIP_PLANES));
+        PyDict_SetItemString(d,"GL_MAX_EVAL_ORDER", PyInt_FromLong((long) GL_MAX_EVAL_ORDER));
+        PyDict_SetItemString(d,"GL_MAX_LIGHTS", PyInt_FromLong((long) GL_MAX_LIGHTS));
+        PyDict_SetItemString(d,"GL_MAX_LIST_NESTING", PyInt_FromLong((long) GL_MAX_LIST_NESTING));
+        PyDict_SetItemString(d,"GL_MAX_MODELVIEW_STACK_DEPTH", PyInt_FromLong((long) GL_MAX_MODELVIEW_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MAX_NAME_STACK_DEPTH", PyInt_FromLong((long) GL_MAX_NAME_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MAX_PIXEL_MAP_TABLE", PyInt_FromLong((long) GL_MAX_PIXEL_MAP_TABLE));
+        PyDict_SetItemString(d,"GL_MAX_PROJECTION_STACK_DEPTH", PyInt_FromLong((long) GL_MAX_PROJECTION_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MAX_TEXTURE_SIZE", PyInt_FromLong((long) GL_MAX_TEXTURE_SIZE));
+        PyDict_SetItemString(d,"GL_MAX_TEXTURE_STACK_DEPTH", PyInt_FromLong((long) GL_MAX_TEXTURE_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MAX_VIEWPORT_DIMS", PyInt_FromLong((long) GL_MAX_VIEWPORT_DIMS));
+        PyDict_SetItemString(d,"GL_MODELVIEW", PyInt_FromLong((long) GL_MODELVIEW));
+        PyDict_SetItemString(d,"GL_MODELVIEW_MATRIX", PyInt_FromLong((long) GL_MODELVIEW_MATRIX));
+        PyDict_SetItemString(d,"GL_MODELVIEW_STACK_DEPTH", PyInt_FromLong((long) GL_MODELVIEW_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_MODULATE", PyInt_FromLong((long) GL_MODULATE));
+        PyDict_SetItemString(d,"GL_MULT", PyInt_FromLong((long) GL_MULT));
+        PyDict_SetItemString(d,"GL_N3F_V3F", PyInt_FromLong((long) GL_N3F_V3F));
+        PyDict_SetItemString(d,"GL_NAME_STACK_DEPTH", PyInt_FromLong((long) GL_NAME_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_NAND", PyInt_FromLong((long) GL_NAND));
+        PyDict_SetItemString(d,"GL_NEAREST", PyInt_FromLong((long) GL_NEAREST));
+        PyDict_SetItemString(d,"GL_NEAREST_MIPMAP_LINEAR", PyInt_FromLong((long) GL_NEAREST_MIPMAP_LINEAR));
+        PyDict_SetItemString(d,"GL_NEAREST_MIPMAP_NEAREST", PyInt_FromLong((long) GL_NEAREST_MIPMAP_NEAREST));
+        PyDict_SetItemString(d,"GL_NEVER", PyInt_FromLong((long) GL_NEVER));
+        PyDict_SetItemString(d,"GL_NICEST", PyInt_FromLong((long) GL_NICEST));
+        PyDict_SetItemString(d,"GL_NONE", PyInt_FromLong((long) GL_NONE));
+        PyDict_SetItemString(d,"GL_NOOP", PyInt_FromLong((long) GL_NOOP));
+        PyDict_SetItemString(d,"GL_NOR", PyInt_FromLong((long) GL_NOR));
+        PyDict_SetItemString(d,"GL_NORMALIZE", PyInt_FromLong((long) GL_NORMALIZE));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY", PyInt_FromLong((long) GL_NORMAL_ARRAY));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_COUNT_EXT", PyInt_FromLong((long) GL_NORMAL_ARRAY_COUNT_EXT));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_EXT", PyInt_FromLong((long) GL_NORMAL_ARRAY_EXT));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_POINTER", PyInt_FromLong((long) GL_NORMAL_ARRAY_POINTER));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_POINTER_EXT", PyInt_FromLong((long) GL_NORMAL_ARRAY_POINTER_EXT));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_STRIDE", PyInt_FromLong((long) GL_NORMAL_ARRAY_STRIDE));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_STRIDE_EXT", PyInt_FromLong((long) GL_NORMAL_ARRAY_STRIDE_EXT));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_TYPE", PyInt_FromLong((long) GL_NORMAL_ARRAY_TYPE));
+        PyDict_SetItemString(d,"GL_NORMAL_ARRAY_TYPE_EXT", PyInt_FromLong((long) GL_NORMAL_ARRAY_TYPE_EXT));
+        PyDict_SetItemString(d,"GL_NOTEQUAL", PyInt_FromLong((long) GL_NOTEQUAL));
+        PyDict_SetItemString(d,"GL_NO_ERROR", PyInt_FromLong((long) GL_NO_ERROR));
+        PyDict_SetItemString(d,"GL_OBJECT_LINEAR", PyInt_FromLong((long) GL_OBJECT_LINEAR));
+        PyDict_SetItemString(d,"GL_OBJECT_PLANE", PyInt_FromLong((long) GL_OBJECT_PLANE));
+        PyDict_SetItemString(d,"GL_ONE", PyInt_FromLong((long) GL_ONE));
+        PyDict_SetItemString(d,"GL_ONE_MINUS_DST_ALPHA", PyInt_FromLong((long) GL_ONE_MINUS_DST_ALPHA));
+        PyDict_SetItemString(d,"GL_ONE_MINUS_DST_COLOR", PyInt_FromLong((long) GL_ONE_MINUS_DST_COLOR));
+        PyDict_SetItemString(d,"GL_ONE_MINUS_SRC_ALPHA", PyInt_FromLong((long) GL_ONE_MINUS_SRC_ALPHA));
+        PyDict_SetItemString(d,"GL_ONE_MINUS_SRC_COLOR", PyInt_FromLong((long) GL_ONE_MINUS_SRC_COLOR));
+        PyDict_SetItemString(d,"GL_OR", PyInt_FromLong((long) GL_OR));
+        PyDict_SetItemString(d,"GL_ORDER", PyInt_FromLong((long) GL_ORDER));
+        PyDict_SetItemString(d,"GL_OR_INVERTED", PyInt_FromLong((long) GL_OR_INVERTED));
+        PyDict_SetItemString(d,"GL_OR_REVERSE", PyInt_FromLong((long) GL_OR_REVERSE));
+        PyDict_SetItemString(d,"GL_OUT_OF_MEMORY", PyInt_FromLong((long) GL_OUT_OF_MEMORY));
+        PyDict_SetItemString(d,"GL_PACK_ALIGNMENT", PyInt_FromLong((long) GL_PACK_ALIGNMENT));
+        PyDict_SetItemString(d,"GL_PACK_LSB_FIRST", PyInt_FromLong((long) GL_PACK_LSB_FIRST));
+        PyDict_SetItemString(d,"GL_PACK_ROW_LENGTH", PyInt_FromLong((long) GL_PACK_ROW_LENGTH));
+        PyDict_SetItemString(d,"GL_PACK_SKIP_PIXELS", PyInt_FromLong((long) GL_PACK_SKIP_PIXELS));
+        PyDict_SetItemString(d,"GL_PACK_SKIP_ROWS", PyInt_FromLong((long) GL_PACK_SKIP_ROWS));
+        PyDict_SetItemString(d,"GL_PACK_SWAP_BYTES", PyInt_FromLong((long) GL_PACK_SWAP_BYTES));
+        PyDict_SetItemString(d,"GL_PASS_THROUGH_TOKEN", PyInt_FromLong((long) GL_PASS_THROUGH_TOKEN));
+        PyDict_SetItemString(d,"GL_PERSPECTIVE_CORRECTION_HINT", PyInt_FromLong((long) GL_PERSPECTIVE_CORRECTION_HINT));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_A_TO_A", PyInt_FromLong((long) GL_PIXEL_MAP_A_TO_A));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_A_TO_A_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_A_TO_A_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_B_TO_B", PyInt_FromLong((long) GL_PIXEL_MAP_B_TO_B));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_B_TO_B_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_B_TO_B_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_G_TO_G", PyInt_FromLong((long) GL_PIXEL_MAP_G_TO_G));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_G_TO_G_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_G_TO_G_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_A", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_A));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_A_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_A_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_B", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_B));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_B_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_B_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_G", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_G));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_G_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_G_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_I", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_I));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_I_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_I_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_R", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_R));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_I_TO_R_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_I_TO_R_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_R_TO_R", PyInt_FromLong((long) GL_PIXEL_MAP_R_TO_R));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_R_TO_R_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_R_TO_R_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_S_TO_S", PyInt_FromLong((long) GL_PIXEL_MAP_S_TO_S));
+        PyDict_SetItemString(d,"GL_PIXEL_MAP_S_TO_S_SIZE", PyInt_FromLong((long) GL_PIXEL_MAP_S_TO_S_SIZE));
+        PyDict_SetItemString(d,"GL_PIXEL_MODE_BIT", PyInt_FromLong((long) GL_PIXEL_MODE_BIT));
+        PyDict_SetItemString(d,"GL_POINT", PyInt_FromLong((long) GL_POINT));
+        PyDict_SetItemString(d,"GL_POINTS", PyInt_FromLong((long) GL_POINTS));
+        PyDict_SetItemString(d,"GL_POINT_BIT", PyInt_FromLong((long) GL_POINT_BIT));
+        PyDict_SetItemString(d,"GL_POINT_SIZE", PyInt_FromLong((long) GL_POINT_SIZE));
+        PyDict_SetItemString(d,"GL_POINT_SIZE_GRANULARITY", PyInt_FromLong((long) GL_POINT_SIZE_GRANULARITY));
+        PyDict_SetItemString(d,"GL_POINT_SIZE_RANGE", PyInt_FromLong((long) GL_POINT_SIZE_RANGE));
+        PyDict_SetItemString(d,"GL_POINT_SMOOTH", PyInt_FromLong((long) GL_POINT_SMOOTH));
+        PyDict_SetItemString(d,"GL_POINT_SMOOTH_HINT", PyInt_FromLong((long) GL_POINT_SMOOTH_HINT));
+        PyDict_SetItemString(d,"GL_POINT_TOKEN", PyInt_FromLong((long) GL_POINT_TOKEN));
+        PyDict_SetItemString(d,"GL_POLYGON", PyInt_FromLong((long) GL_POLYGON));
+        PyDict_SetItemString(d,"GL_POLYGON_BIT", PyInt_FromLong((long) GL_POLYGON_BIT));
+        PyDict_SetItemString(d,"GL_POLYGON_MODE", PyInt_FromLong((long) GL_POLYGON_MODE));
+        PyDict_SetItemString(d,"GL_POLYGON_OFFSET_FACTOR", PyInt_FromLong((long) GL_POLYGON_OFFSET_FACTOR));
+        PyDict_SetItemString(d,"GL_POLYGON_OFFSET_FILL", PyInt_FromLong((long) GL_POLYGON_OFFSET_FILL));
+        PyDict_SetItemString(d,"GL_POLYGON_OFFSET_LINE", PyInt_FromLong((long) GL_POLYGON_OFFSET_LINE));
+        PyDict_SetItemString(d,"GL_POLYGON_OFFSET_POINT", PyInt_FromLong((long) GL_POLYGON_OFFSET_POINT));
+        PyDict_SetItemString(d,"GL_POLYGON_OFFSET_UNITS", PyInt_FromLong((long) GL_POLYGON_OFFSET_UNITS));
+        PyDict_SetItemString(d,"GL_POLYGON_SMOOTH", PyInt_FromLong((long) GL_POLYGON_SMOOTH));
+        PyDict_SetItemString(d,"GL_POLYGON_SMOOTH_HINT", PyInt_FromLong((long) GL_POLYGON_SMOOTH_HINT));
+        PyDict_SetItemString(d,"GL_POLYGON_STIPPLE", PyInt_FromLong((long) GL_POLYGON_STIPPLE));
+        PyDict_SetItemString(d,"GL_POLYGON_STIPPLE_BIT", PyInt_FromLong((long) GL_POLYGON_STIPPLE_BIT));
+        PyDict_SetItemString(d,"GL_POLYGON_TOKEN", PyInt_FromLong((long) GL_POLYGON_TOKEN));
+        PyDict_SetItemString(d,"GL_POSITION", PyInt_FromLong((long) GL_POSITION));
+        PyDict_SetItemString(d,"GL_PROJECTION", PyInt_FromLong((long) GL_PROJECTION));
+        PyDict_SetItemString(d,"GL_PROJECTION_MATRIX", PyInt_FromLong((long) GL_PROJECTION_MATRIX));
+        PyDict_SetItemString(d,"GL_PROJECTION_STACK_DEPTH", PyInt_FromLong((long) GL_PROJECTION_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_PROXY_TEXTURE_1D", PyInt_FromLong((long) GL_PROXY_TEXTURE_1D));
+        PyDict_SetItemString(d,"GL_PROXY_TEXTURE_2D", PyInt_FromLong((long) GL_PROXY_TEXTURE_2D));
+        PyDict_SetItemString(d,"GL_Q", PyInt_FromLong((long) GL_Q));
+        PyDict_SetItemString(d,"GL_QUADRATIC_ATTENUATION", PyInt_FromLong((long) GL_QUADRATIC_ATTENUATION));
+        PyDict_SetItemString(d,"GL_QUADS", PyInt_FromLong((long) GL_QUADS));
+        PyDict_SetItemString(d,"GL_QUAD_STRIP", PyInt_FromLong((long) GL_QUAD_STRIP));
+        PyDict_SetItemString(d,"GL_R", PyInt_FromLong((long) GL_R));
+        PyDict_SetItemString(d,"GL_R3_G3_B2", PyInt_FromLong((long) GL_R3_G3_B2));
+        PyDict_SetItemString(d,"GL_READ_BUFFER", PyInt_FromLong((long) GL_READ_BUFFER));
+        PyDict_SetItemString(d,"GL_RED", PyInt_FromLong((long) GL_RED));
+        PyDict_SetItemString(d,"GL_RED_BIAS", PyInt_FromLong((long) GL_RED_BIAS));
+        PyDict_SetItemString(d,"GL_RED_BITS", PyInt_FromLong((long) GL_RED_BITS));
+        PyDict_SetItemString(d,"GL_RED_SCALE", PyInt_FromLong((long) GL_RED_SCALE));
+        PyDict_SetItemString(d,"GL_RENDER", PyInt_FromLong((long) GL_RENDER));
+        PyDict_SetItemString(d,"GL_RENDERER", PyInt_FromLong((long) GL_RENDERER));
+        PyDict_SetItemString(d,"GL_RENDER_MODE", PyInt_FromLong((long) GL_RENDER_MODE));
+        PyDict_SetItemString(d,"GL_REPEAT", PyInt_FromLong((long) GL_REPEAT));
+        PyDict_SetItemString(d,"GL_REPLACE", PyInt_FromLong((long) GL_REPLACE));
+        PyDict_SetItemString(d,"GL_RETURN", PyInt_FromLong((long) GL_RETURN));
+        PyDict_SetItemString(d,"GL_RGB", PyInt_FromLong((long) GL_RGB));
+        PyDict_SetItemString(d,"GL_RGB10", PyInt_FromLong((long) GL_RGB10));
+        PyDict_SetItemString(d,"GL_RGB10_A2", PyInt_FromLong((long) GL_RGB10_A2));
+        PyDict_SetItemString(d,"GL_RGB12", PyInt_FromLong((long) GL_RGB12));
+        PyDict_SetItemString(d,"GL_RGB16", PyInt_FromLong((long) GL_RGB16));
+        PyDict_SetItemString(d,"GL_RGB4", PyInt_FromLong((long) GL_RGB4));
+        PyDict_SetItemString(d,"GL_RGB5", PyInt_FromLong((long) GL_RGB5));
+        PyDict_SetItemString(d,"GL_RGB5_A1", PyInt_FromLong((long) GL_RGB5_A1));
+        PyDict_SetItemString(d,"GL_RGB8", PyInt_FromLong((long) GL_RGB8));
+        PyDict_SetItemString(d,"GL_RGBA", PyInt_FromLong((long) GL_RGBA));
+        PyDict_SetItemString(d,"GL_RGBA12", PyInt_FromLong((long) GL_RGBA12));
+        PyDict_SetItemString(d,"GL_RGBA16", PyInt_FromLong((long) GL_RGBA16));
+        PyDict_SetItemString(d,"GL_RGBA2", PyInt_FromLong((long) GL_RGBA2));
+        PyDict_SetItemString(d,"GL_RGBA4", PyInt_FromLong((long) GL_RGBA4));
+        PyDict_SetItemString(d,"GL_RGBA8", PyInt_FromLong((long) GL_RGBA8));
+        PyDict_SetItemString(d,"GL_RGBA_MODE", PyInt_FromLong((long) GL_RGBA_MODE));
+        PyDict_SetItemString(d,"GL_RIGHT", PyInt_FromLong((long) GL_RIGHT));
+        PyDict_SetItemString(d,"GL_S", PyInt_FromLong((long) GL_S));
+        PyDict_SetItemString(d,"GL_SCISSOR_BIT", PyInt_FromLong((long) GL_SCISSOR_BIT));
+        PyDict_SetItemString(d,"GL_SCISSOR_BOX", PyInt_FromLong((long) GL_SCISSOR_BOX));
+        PyDict_SetItemString(d,"GL_SCISSOR_TEST", PyInt_FromLong((long) GL_SCISSOR_TEST));
+        PyDict_SetItemString(d,"GL_SELECT", PyInt_FromLong((long) GL_SELECT));
+        PyDict_SetItemString(d,"GL_SELECTION_BUFFER_POINTER", PyInt_FromLong((long) GL_SELECTION_BUFFER_POINTER));
+        PyDict_SetItemString(d,"GL_SELECTION_BUFFER_SIZE", PyInt_FromLong((long) GL_SELECTION_BUFFER_SIZE));
+        PyDict_SetItemString(d,"GL_SET", PyInt_FromLong((long) GL_SET));
+        PyDict_SetItemString(d,"GL_SHADE_MODEL", PyInt_FromLong((long) GL_SHADE_MODEL));
+        PyDict_SetItemString(d,"GL_SHININESS", PyInt_FromLong((long) GL_SHININESS));
+        PyDict_SetItemString(d,"GL_SHORT", PyInt_FromLong((long) GL_SHORT));
+        PyDict_SetItemString(d,"GL_SMOOTH", PyInt_FromLong((long) GL_SMOOTH));
+        PyDict_SetItemString(d,"GL_SPECULAR", PyInt_FromLong((long) GL_SPECULAR));
+        PyDict_SetItemString(d,"GL_SPHERE_MAP", PyInt_FromLong((long) GL_SPHERE_MAP));
+        PyDict_SetItemString(d,"GL_SPOT_CUTOFF", PyInt_FromLong((long) GL_SPOT_CUTOFF));
+        PyDict_SetItemString(d,"GL_SPOT_DIRECTION", PyInt_FromLong((long) GL_SPOT_DIRECTION));
+        PyDict_SetItemString(d,"GL_SPOT_EXPONENT", PyInt_FromLong((long) GL_SPOT_EXPONENT));
+        PyDict_SetItemString(d,"GL_SRC_ALPHA", PyInt_FromLong((long) GL_SRC_ALPHA));
+        PyDict_SetItemString(d,"GL_SRC_ALPHA_SATURATE", PyInt_FromLong((long) GL_SRC_ALPHA_SATURATE));
+        PyDict_SetItemString(d,"GL_SRC_COLOR", PyInt_FromLong((long) GL_SRC_COLOR));
+        PyDict_SetItemString(d,"GL_STACK_OVERFLOW", PyInt_FromLong((long) GL_STACK_OVERFLOW));
+        PyDict_SetItemString(d,"GL_STACK_UNDERFLOW", PyInt_FromLong((long) GL_STACK_UNDERFLOW));
+        PyDict_SetItemString(d,"GL_STENCIL", PyInt_FromLong((long) GL_STENCIL));
+        PyDict_SetItemString(d,"GL_STENCIL_BITS", PyInt_FromLong((long) GL_STENCIL_BITS));
+        PyDict_SetItemString(d,"GL_STENCIL_BUFFER_BIT", PyInt_FromLong((long) GL_STENCIL_BUFFER_BIT));
+        PyDict_SetItemString(d,"GL_STENCIL_CLEAR_VALUE", PyInt_FromLong((long) GL_STENCIL_CLEAR_VALUE));
+        PyDict_SetItemString(d,"GL_STENCIL_FAIL", PyInt_FromLong((long) GL_STENCIL_FAIL));
+        PyDict_SetItemString(d,"GL_STENCIL_FUNC", PyInt_FromLong((long) GL_STENCIL_FUNC));
+        PyDict_SetItemString(d,"GL_STENCIL_INDEX", PyInt_FromLong((long) GL_STENCIL_INDEX));
+        PyDict_SetItemString(d,"GL_STENCIL_PASS_DEPTH_FAIL", PyInt_FromLong((long) GL_STENCIL_PASS_DEPTH_FAIL));
+        PyDict_SetItemString(d,"GL_STENCIL_PASS_DEPTH_PASS", PyInt_FromLong((long) GL_STENCIL_PASS_DEPTH_PASS));
+        PyDict_SetItemString(d,"GL_STENCIL_REF", PyInt_FromLong((long) GL_STENCIL_REF));
+        PyDict_SetItemString(d,"GL_STENCIL_TEST", PyInt_FromLong((long) GL_STENCIL_TEST));
+        PyDict_SetItemString(d,"GL_STENCIL_VALUE_MASK", PyInt_FromLong((long) GL_STENCIL_VALUE_MASK));
+        PyDict_SetItemString(d,"GL_STENCIL_WRITEMASK", PyInt_FromLong((long) GL_STENCIL_WRITEMASK));
+        PyDict_SetItemString(d,"GL_STEREO", PyInt_FromLong((long) GL_STEREO));
+        PyDict_SetItemString(d,"GL_SUBPIXEL_BITS", PyInt_FromLong((long) GL_SUBPIXEL_BITS));
+        PyDict_SetItemString(d,"GL_T", PyInt_FromLong((long) GL_T));
+        PyDict_SetItemString(d,"GL_T2F_C3F_V3F", PyInt_FromLong((long) GL_T2F_C3F_V3F));
+        PyDict_SetItemString(d,"GL_T2F_C4F_N3F_V3F", PyInt_FromLong((long) GL_T2F_C4F_N3F_V3F));
+        PyDict_SetItemString(d,"GL_T2F_C4UB_V3F", PyInt_FromLong((long) GL_T2F_C4UB_V3F));
+        PyDict_SetItemString(d,"GL_T2F_N3F_V3F", PyInt_FromLong((long) GL_T2F_N3F_V3F));
+        PyDict_SetItemString(d,"GL_T2F_V3F", PyInt_FromLong((long) GL_T2F_V3F));
+        PyDict_SetItemString(d,"GL_T4F_C4F_N3F_V4F", PyInt_FromLong((long) GL_T4F_C4F_N3F_V4F));
+        PyDict_SetItemString(d,"GL_T4F_V4F", PyInt_FromLong((long) GL_T4F_V4F));
+        PyDict_SetItemString(d,"GL_TEXTURE", PyInt_FromLong((long) GL_TEXTURE));
+        PyDict_SetItemString(d,"GL_TEXTURE_1D", PyInt_FromLong((long) GL_TEXTURE_1D));
+        PyDict_SetItemString(d,"GL_TEXTURE_2D", PyInt_FromLong((long) GL_TEXTURE_2D));
+        PyDict_SetItemString(d,"GL_TEXTURE_ALPHA_SIZE", PyInt_FromLong((long) GL_TEXTURE_ALPHA_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_BINDING_1D", PyInt_FromLong((long) GL_TEXTURE_BINDING_1D));
+        PyDict_SetItemString(d,"GL_TEXTURE_BINDING_2D", PyInt_FromLong((long) GL_TEXTURE_BINDING_2D));
+        PyDict_SetItemString(d,"GL_TEXTURE_BIT", PyInt_FromLong((long) GL_TEXTURE_BIT));
+        PyDict_SetItemString(d,"GL_TEXTURE_BLUE_SIZE", PyInt_FromLong((long) GL_TEXTURE_BLUE_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_BORDER", PyInt_FromLong((long) GL_TEXTURE_BORDER));
+        PyDict_SetItemString(d,"GL_TEXTURE_BORDER_COLOR", PyInt_FromLong((long) GL_TEXTURE_BORDER_COLOR));
+        PyDict_SetItemString(d,"GL_TEXTURE_COMPONENTS", PyInt_FromLong((long) GL_TEXTURE_COMPONENTS));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_COUNT_EXT", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_COUNT_EXT));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_EXT", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_EXT));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_POINTER", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_POINTER));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_POINTER_EXT", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_POINTER_EXT));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_SIZE", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_SIZE_EXT", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_STRIDE", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_STRIDE));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_STRIDE_EXT", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_STRIDE_EXT));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_TYPE", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_TYPE));
+        PyDict_SetItemString(d,"GL_TEXTURE_COORD_ARRAY_TYPE_EXT", PyInt_FromLong((long) GL_TEXTURE_COORD_ARRAY_TYPE_EXT));
+        PyDict_SetItemString(d,"GL_TEXTURE_ENV", PyInt_FromLong((long) GL_TEXTURE_ENV));
+        PyDict_SetItemString(d,"GL_TEXTURE_ENV_COLOR", PyInt_FromLong((long) GL_TEXTURE_ENV_COLOR));
+        PyDict_SetItemString(d,"GL_TEXTURE_ENV_MODE", PyInt_FromLong((long) GL_TEXTURE_ENV_MODE));
+        PyDict_SetItemString(d,"GL_TEXTURE_GEN_MODE", PyInt_FromLong((long) GL_TEXTURE_GEN_MODE));
+        PyDict_SetItemString(d,"GL_TEXTURE_GEN_Q", PyInt_FromLong((long) GL_TEXTURE_GEN_Q));
+        PyDict_SetItemString(d,"GL_TEXTURE_GEN_R", PyInt_FromLong((long) GL_TEXTURE_GEN_R));
+        PyDict_SetItemString(d,"GL_TEXTURE_GEN_S", PyInt_FromLong((long) GL_TEXTURE_GEN_S));
+        PyDict_SetItemString(d,"GL_TEXTURE_GEN_T", PyInt_FromLong((long) GL_TEXTURE_GEN_T));
+        PyDict_SetItemString(d,"GL_TEXTURE_GREEN_SIZE", PyInt_FromLong((long) GL_TEXTURE_GREEN_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_HEIGHT", PyInt_FromLong((long) GL_TEXTURE_HEIGHT));
+        PyDict_SetItemString(d,"GL_TEXTURE_INTENSITY_SIZE", PyInt_FromLong((long) GL_TEXTURE_INTENSITY_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_INTERNAL_FORMAT", PyInt_FromLong((long) GL_TEXTURE_INTERNAL_FORMAT));
+        PyDict_SetItemString(d,"GL_TEXTURE_LUMINANCE_SIZE", PyInt_FromLong((long) GL_TEXTURE_LUMINANCE_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_MAG_FILTER", PyInt_FromLong((long) GL_TEXTURE_MAG_FILTER));
+        PyDict_SetItemString(d,"GL_TEXTURE_MATRIX", PyInt_FromLong((long) GL_TEXTURE_MATRIX));
+        PyDict_SetItemString(d,"GL_TEXTURE_MIN_FILTER", PyInt_FromLong((long) GL_TEXTURE_MIN_FILTER));
+        PyDict_SetItemString(d,"GL_TEXTURE_PRIORITY", PyInt_FromLong((long) GL_TEXTURE_PRIORITY));
+        PyDict_SetItemString(d,"GL_TEXTURE_RED_SIZE", PyInt_FromLong((long) GL_TEXTURE_RED_SIZE));
+        PyDict_SetItemString(d,"GL_TEXTURE_RESIDENT", PyInt_FromLong((long) GL_TEXTURE_RESIDENT));
+        PyDict_SetItemString(d,"GL_TEXTURE_STACK_DEPTH", PyInt_FromLong((long) GL_TEXTURE_STACK_DEPTH));
+        PyDict_SetItemString(d,"GL_TEXTURE_WIDTH", PyInt_FromLong((long) GL_TEXTURE_WIDTH));
+        PyDict_SetItemString(d,"GL_TEXTURE_WRAP_S", PyInt_FromLong((long) GL_TEXTURE_WRAP_S));
+        PyDict_SetItemString(d,"GL_TEXTURE_WRAP_T", PyInt_FromLong((long) GL_TEXTURE_WRAP_T));
+        PyDict_SetItemString(d,"GL_TRANSFORM_BIT", PyInt_FromLong((long) GL_TRANSFORM_BIT));
+        PyDict_SetItemString(d,"GL_TRIANGLES", PyInt_FromLong((long) GL_TRIANGLES));
+        PyDict_SetItemString(d,"GL_TRIANGLE_FAN", PyInt_FromLong((long) GL_TRIANGLE_FAN));
+        PyDict_SetItemString(d,"GL_TRIANGLE_STRIP", PyInt_FromLong((long) GL_TRIANGLE_STRIP));
+        PyDict_SetItemString(d,"GL_TRUE", PyInt_FromLong((long) GL_TRUE));
+        PyDict_SetItemString(d,"GL_UNPACK_ALIGNMENT", PyInt_FromLong((long) GL_UNPACK_ALIGNMENT));
+        PyDict_SetItemString(d,"GL_UNPACK_LSB_FIRST", PyInt_FromLong((long) GL_UNPACK_LSB_FIRST));
+        PyDict_SetItemString(d,"GL_UNPACK_ROW_LENGTH", PyInt_FromLong((long) GL_UNPACK_ROW_LENGTH));
+        PyDict_SetItemString(d,"GL_UNPACK_SKIP_PIXELS", PyInt_FromLong((long) GL_UNPACK_SKIP_PIXELS));
+        PyDict_SetItemString(d,"GL_UNPACK_SKIP_ROWS", PyInt_FromLong((long) GL_UNPACK_SKIP_ROWS));
+        PyDict_SetItemString(d,"GL_UNPACK_SWAP_BYTES", PyInt_FromLong((long) GL_UNPACK_SWAP_BYTES));
+        PyDict_SetItemString(d,"GL_UNSIGNED_BYTE", PyInt_FromLong((long) GL_UNSIGNED_BYTE));
+        PyDict_SetItemString(d,"GL_UNSIGNED_INT", PyInt_FromLong((long) GL_UNSIGNED_INT));
+        PyDict_SetItemString(d,"GL_UNSIGNED_SHORT", PyInt_FromLong((long) GL_UNSIGNED_SHORT));
+        PyDict_SetItemString(d,"GL_V2F", PyInt_FromLong((long) GL_V2F));
+        PyDict_SetItemString(d,"GL_V3F", PyInt_FromLong((long) GL_V3F));
+        PyDict_SetItemString(d,"GL_VENDOR", PyInt_FromLong((long) GL_VENDOR));
+        PyDict_SetItemString(d,"GL_VERSION", PyInt_FromLong((long) GL_VERSION));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY", PyInt_FromLong((long) GL_VERTEX_ARRAY));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_COUNT_EXT", PyInt_FromLong((long) GL_VERTEX_ARRAY_COUNT_EXT));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_EXT", PyInt_FromLong((long) GL_VERTEX_ARRAY_EXT));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_POINTER", PyInt_FromLong((long) GL_VERTEX_ARRAY_POINTER));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_POINTER_EXT", PyInt_FromLong((long) GL_VERTEX_ARRAY_POINTER_EXT));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_SIZE", PyInt_FromLong((long) GL_VERTEX_ARRAY_SIZE));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_SIZE_EXT", PyInt_FromLong((long) GL_VERTEX_ARRAY_SIZE_EXT));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_STRIDE", PyInt_FromLong((long) GL_VERTEX_ARRAY_STRIDE));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_STRIDE_EXT", PyInt_FromLong((long) GL_VERTEX_ARRAY_STRIDE_EXT));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_TYPE", PyInt_FromLong((long) GL_VERTEX_ARRAY_TYPE));
+        PyDict_SetItemString(d,"GL_VERTEX_ARRAY_TYPE_EXT", PyInt_FromLong((long) GL_VERTEX_ARRAY_TYPE_EXT));
+        PyDict_SetItemString(d,"GL_VIEWPORT", PyInt_FromLong((long) GL_VIEWPORT));
+        PyDict_SetItemString(d,"GL_VIEWPORT_BIT", PyInt_FromLong((long) GL_VIEWPORT_BIT));
+        PyDict_SetItemString(d,"GL_XOR", PyInt_FromLong((long) GL_XOR));
+        PyDict_SetItemString(d,"GL_ZERO", PyInt_FromLong((long) GL_ZERO));
+        PyDict_SetItemString(d,"GL_ZOOM_X", PyInt_FromLong((long) GL_ZOOM_X));
+        PyDict_SetItemString(d,"GL_ZOOM_Y", PyInt_FromLong((long) GL_ZOOM_Y));
+/*
+ * These are the pointer type-equivalency mappings. 
+ * (Used by the SWIG pointer type-checker).
+ */
+        SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_wxEvent","_class_wxEvent",0);
+        SWIG_RegisterMapping("_class_wxActivateEvent","_wxActivateEvent",0);
+        SWIG_RegisterMapping("_GLfloat","_GLclampf",0);
+        SWIG_RegisterMapping("_GLfloat","_float",0);
+        SWIG_RegisterMapping("_signed_long","_long",0);
+        SWIG_RegisterMapping("_wxMenuEvent","_class_wxMenuEvent",0);
+        SWIG_RegisterMapping("_class_wxJPEGHandler","_wxJPEGHandler",0);
+        SWIG_RegisterMapping("_wxBMPHandler","_class_wxBMPHandler",0);
+        SWIG_RegisterMapping("_wxImage","_class_wxImage",0);
+        SWIG_RegisterMapping("_double","_GLclampd",0);
+        SWIG_RegisterMapping("_double","_GLdouble",0);
+        SWIG_RegisterMapping("_wxFontData","_class_wxFontData",0);
+        SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
+        SWIG_RegisterMapping("_class_wxMenuBar","_wxMenuBar",0);
+        SWIG_RegisterMapping("_class_wxPyTreeItemData","_wxPyTreeItemData",0);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler);
+        SWIG_RegisterMapping("_class_wxEvtHandler","_wxEvtHandler",0);
+        SWIG_RegisterMapping("_wxPaintEvent","_class_wxPaintEvent",0);
+        SWIG_RegisterMapping("_wxGIFHandler","_class_wxGIFHandler",0);
+        SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxImageHandler",0);
+        SWIG_RegisterMapping("_GLsizei","_GLuint",0);
+        SWIG_RegisterMapping("_GLsizei","_int",0);
+        SWIG_RegisterMapping("_GLsizei","_signed_int",0);
+        SWIG_RegisterMapping("_GLsizei","_unsigned_int",0);
+        SWIG_RegisterMapping("_GLsizei","_wxWindowID",0);
+        SWIG_RegisterMapping("_GLsizei","_uint",0);
+        SWIG_RegisterMapping("_GLsizei","_EBool",0);
+        SWIG_RegisterMapping("_GLsizei","_GLenum",0);
+        SWIG_RegisterMapping("_GLsizei","_GLbitfield",0);
+        SWIG_RegisterMapping("_GLsizei","_GLint",0);
+        SWIG_RegisterMapping("_class_wxTreeCtrl","_wxTreeCtrl",0);
+        SWIG_RegisterMapping("_wxToolTip","_class_wxToolTip",0);
+        SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
+        SWIG_RegisterMapping("_wxGrid","_class_wxGrid",0);
+        SWIG_RegisterMapping("_wxPNGHandler","_class_wxPNGHandler",0);
+        SWIG_RegisterMapping("_wxPyMenu","_class_wxPyMenu",0);
+        SWIG_RegisterMapping("_class_wxColourData","_wxColourData",0);
+        SWIG_RegisterMapping("_class_wxPageSetupDialogData","_wxPageSetupDialogData",0);
+        SWIG_RegisterMapping("_GLbyte","_signed_char",0);
+        SWIG_RegisterMapping("_wxPen","_class_wxPen",0);
+        SWIG_RegisterMapping("_wxUpdateUIEvent","_class_wxUpdateUIEvent",0);
+        SWIG_RegisterMapping("_byte","_GLubyte",0);
+        SWIG_RegisterMapping("_byte","_GLboolean",0);
+        SWIG_RegisterMapping("_byte","_unsigned_char",0);
+        SWIG_RegisterMapping("_wxStaticBox","_class_wxStaticBox",0);
+        SWIG_RegisterMapping("_wxChoice","_class_wxChoice",0);
+        SWIG_RegisterMapping("_wxSlider","_class_wxSlider",0);
+        SWIG_RegisterMapping("_wxNotebookEvent","_class_wxNotebookEvent",0);
+        SWIG_RegisterMapping("_long","_wxDash",0);
+        SWIG_RegisterMapping("_long","_unsigned_long",0);
+        SWIG_RegisterMapping("_long","_signed_long",0);
+        SWIG_RegisterMapping("_wxImageList","_class_wxImageList",0);
+        SWIG_RegisterMapping("_wxDropFilesEvent","_class_wxDropFilesEvent",0);
+        SWIG_RegisterMapping("_wxBitmapButton","_class_wxBitmapButton",0);
+        SWIG_RegisterMapping("_wxSashWindow","_class_wxSashWindow",0);
+        SWIG_RegisterMapping("_GLenum","_GLuint",0);
+        SWIG_RegisterMapping("_GLenum","_GLsizei",0);
+        SWIG_RegisterMapping("_GLenum","_GLint",0);
+        SWIG_RegisterMapping("_GLenum","_GLbitfield",0);
+        SWIG_RegisterMapping("_GLenum","_unsigned_int",0);
+        SWIG_RegisterMapping("_GLenum","_int",0);
+        SWIG_RegisterMapping("_GLenum","_wxWindowID",0);
+        SWIG_RegisterMapping("_GLenum","_uint",0);
+        SWIG_RegisterMapping("_class_wxPrintDialogData","_wxPrintDialogData",0);
+        SWIG_RegisterMapping("_wxGLContext","_class_wxGLContext",0);
+        SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_class_wxGauge","_wxGauge",0);
+        SWIG_RegisterMapping("_class_wxSashEvent","_wxSashEvent",0);
+        SWIG_RegisterMapping("_float","_GLclampf",0);
+        SWIG_RegisterMapping("_float","_GLfloat",0);
+        SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
+        SWIG_RegisterMapping("_wxListEvent","_class_wxListEvent",0);
+        SWIG_RegisterMapping("_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0);
+        SWIG_RegisterMapping("_class_wxBMPHandler","_wxBMPHandler",0);
+        SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
+        SWIG_RegisterMapping("_wxSashLayoutWindow","_class_wxSashLayoutWindow",0);
+        SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
+        SWIG_RegisterMapping("_class_wxMenuItem","_wxMenuItem",0);
+        SWIG_RegisterMapping("_class_wxPaintEvent","_wxPaintEvent",0);
+        SWIG_RegisterMapping("_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0);
+        SWIG_RegisterMapping("_class_wxStatusBar","_wxStatusBar",0);
+        SWIG_RegisterMapping("_class_wxGIFHandler","_wxGIFHandler",0);
+        SWIG_RegisterMapping("_class_wxPostScriptDC","_wxPostScriptDC",0);
+        SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
+        SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
+        SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
+        SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
+        SWIG_RegisterMapping("_signed_char","_GLbyte",0);
+        SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
+        SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
+        SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
+        SWIG_RegisterMapping("_class_wxGrid","_wxGrid",0);
+        SWIG_RegisterMapping("_class_wxPNGHandler","_wxPNGHandler",0);
+        SWIG_RegisterMapping("_wxColour","_class_wxColour",0);
+        SWIG_RegisterMapping("_class_wxDialog","_wxDialog",0);
+        SWIG_RegisterMapping("_wxPageSetupDialog","_class_wxPageSetupDialog",0);
+        SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
+        SWIG_RegisterMapping("_class_wxUpdateUIEvent","_wxUpdateUIEvent",0);
+        SWIG_RegisterMapping("_wxToolBar","_class_wxToolBar",0);
+        SWIG_RegisterMapping("_class_wxLayoutAlgorithm","_wxLayoutAlgorithm",0);
+        SWIG_RegisterMapping("_wxBrush","_class_wxBrush",0);
+        SWIG_RegisterMapping("_wxMiniFrame","_class_wxMiniFrame",0);
+        SWIG_RegisterMapping("_class_wxNotebookEvent","_wxNotebookEvent",0);
+        SWIG_RegisterMapping("_class_wxSashWindow","_wxSashWindow",0);
+        SWIG_RegisterMapping("_GLuint","_unsigned_int",0);
+        SWIG_RegisterMapping("_GLuint","_int",0);
+        SWIG_RegisterMapping("_GLuint","_wxWindowID",0);
+        SWIG_RegisterMapping("_GLuint","_uint",0);
+        SWIG_RegisterMapping("_GLuint","_GLenum",0);
+        SWIG_RegisterMapping("_GLuint","_GLbitfield",0);
+        SWIG_RegisterMapping("_GLuint","_GLint",0);
+        SWIG_RegisterMapping("_GLuint","_GLsizei",0);
+        SWIG_RegisterMapping("_wxShowEvent","_class_wxShowEvent",0);
+        SWIG_RegisterMapping("_uint","_GLuint",0);
+        SWIG_RegisterMapping("_uint","_GLsizei",0);
+        SWIG_RegisterMapping("_uint","_GLint",0);
+        SWIG_RegisterMapping("_uint","_GLbitfield",0);
+        SWIG_RegisterMapping("_uint","_GLenum",0);
+        SWIG_RegisterMapping("_uint","_unsigned_int",0);
+        SWIG_RegisterMapping("_uint","_int",0);
+        SWIG_RegisterMapping("_uint","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxEvent","_wxEvent",0);
+        SWIG_RegisterMapping("_wxCheckListBox","_class_wxCheckListBox",0);
+        SWIG_RegisterMapping("_wxGridEvent","_class_wxGridEvent",0);
+        SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
+        SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
+        SWIG_RegisterMapping("_wxSizeEvent","_class_wxSizeEvent",0);
+        SWIG_RegisterMapping("_class_wxImage","_wxImage",0);
+        SWIG_RegisterMapping("_GLclampd","_double",0);
+        SWIG_RegisterMapping("_GLclampd","_GLdouble",0);
+        SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
+        SWIG_RegisterMapping("_class_wxSashLayoutWindow","_wxSashLayoutWindow",0);
+        SWIG_RegisterMapping("_class_wxButton","_wxButton",0);
+        SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
+        SWIG_RegisterMapping("_class_wxFontData","_wxFontData",0);
+        SWIG_RegisterMapping("_GLclampf","_float",0);
+        SWIG_RegisterMapping("_GLclampf","_GLfloat",0);
+        SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
+        SWIG_RegisterMapping("_wxPrintDialog","_class_wxPrintDialog",0);
+        SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
+        SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
+        SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
+        SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
+        SWIG_RegisterMapping("_wxColourDialog","_class_wxColourDialog",0);
+        SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_wxMessageDialog","_class_wxMessageDialog",0);
+        SWIG_RegisterMapping("_GLbitfield","_GLuint",0);
+        SWIG_RegisterMapping("_GLbitfield","_GLsizei",0);
+        SWIG_RegisterMapping("_GLbitfield","_GLint",0);
+        SWIG_RegisterMapping("_GLbitfield","_unsigned_int",0);
+        SWIG_RegisterMapping("_GLbitfield","_int",0);
+        SWIG_RegisterMapping("_GLbitfield","_wxWindowID",0);
+        SWIG_RegisterMapping("_GLbitfield","_uint",0);
+        SWIG_RegisterMapping("_GLbitfield","_GLenum",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
+        SWIG_RegisterMapping("_wxTextEntryDialog","_class_wxTextEntryDialog",0);
+        SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
+        SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
+        SWIG_RegisterMapping("_wxMDIChildFrame","_class_wxMDIChildFrame",0);
+        SWIG_RegisterMapping("_wxListItem","_class_wxListItem",0);
+        SWIG_RegisterMapping("_class_wxToolBar","_wxToolBar",0);
+        SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
+        SWIG_RegisterMapping("_wxCalculateLayoutEvent","_class_wxCalculateLayoutEvent",0);
+        SWIG_RegisterMapping("_EBool","_GLsizei",0);
+        SWIG_RegisterMapping("_EBool","_GLint",0);
+        SWIG_RegisterMapping("_EBool","_signed_int",0);
+        SWIG_RegisterMapping("_EBool","_int",0);
+        SWIG_RegisterMapping("_EBool","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxRegion","_wxRegion",0);
+        SWIG_RegisterMapping("_class_wxDropFilesEvent","_wxDropFilesEvent",0);
+        SWIG_RegisterMapping("_wxStaticText","_class_wxStaticText",0);
+        SWIG_RegisterMapping("_wxFont","_class_wxFont",0);
+        SWIG_RegisterMapping("_wxCloseEvent","_class_wxCloseEvent",0);
+        SWIG_RegisterMapping("_wxNotebook","_class_wxNotebook",0);
+        SWIG_RegisterMapping("_unsigned_long","_wxDash",0);
+        SWIG_RegisterMapping("_unsigned_long","_long",0);
+        SWIG_RegisterMapping("_class_wxRect","_wxRect",0);
+        SWIG_RegisterMapping("_class_wxDC","_wxDC",0);
+        SWIG_RegisterMapping("_wxPyApp","_class_wxPyApp",0);
+        SWIG_RegisterMapping("_wxMDIParentFrame","_class_wxMDIParentFrame",0);
+        SWIG_RegisterMapping("_class_wxTreeEvent","_wxTreeEvent",0);
+        SWIG_RegisterMapping("_class_wxDirDialog","_wxDirDialog",0);
+        SWIG_RegisterMapping("_class_wxPyTimer","_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxFocusEvent","_class_wxFocusEvent",0);
+        SWIG_RegisterMapping("_wxMaximizeEvent","_class_wxMaximizeEvent",0);
+        SWIG_RegisterMapping("_class_wxSpinButton","_wxSpinButton",0);
+        SWIG_RegisterMapping("_wxAcceleratorEntry","_class_wxAcceleratorEntry",0);
+        SWIG_RegisterMapping("_class_wxPanel","_wxPanel",0);
+        SWIG_RegisterMapping("_class_wxCheckBox","_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxComboBox","_class_wxComboBox",0);
+        SWIG_RegisterMapping("_wxRadioButton","_class_wxRadioButton",0);
+        SWIG_RegisterMapping("_class_wxMessageDialog","_wxMessageDialog",0);
+        SWIG_RegisterMapping("_signed_int","_GLsizei",0);
+        SWIG_RegisterMapping("_signed_int","_GLint",0);
+        SWIG_RegisterMapping("_signed_int","_EBool",0);
+        SWIG_RegisterMapping("_signed_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_signed_int","_int",0);
+        SWIG_RegisterMapping("_class_wxTextCtrl","_wxTextCtrl",0);
+        SWIG_RegisterMapping("_GLboolean","_GLubyte",0);
+        SWIG_RegisterMapping("_GLboolean","_unsigned_char",0);
+        SWIG_RegisterMapping("_GLboolean","_byte",0);
+        SWIG_RegisterMapping("_wxLayoutConstraints","_class_wxLayoutConstraints",0);
+        SWIG_RegisterMapping("_wxMenu","_class_wxMenu",0);
+        SWIG_RegisterMapping("_class_wxMoveEvent","_wxMoveEvent",0);
+        SWIG_RegisterMapping("_wxListBox","_class_wxListBox",0);
+        SWIG_RegisterMapping("_wxScreenDC","_class_wxScreenDC",0);
+        SWIG_RegisterMapping("_class_wxMDIChildFrame","_wxMDIChildFrame",0);
+        SWIG_RegisterMapping("_WXTYPE","_GLushort",0);
+        SWIG_RegisterMapping("_WXTYPE","_GLshort",0);
+        SWIG_RegisterMapping("_WXTYPE","_short",0);
+        SWIG_RegisterMapping("_WXTYPE","_signed_short",0);
+        SWIG_RegisterMapping("_WXTYPE","_unsigned_short",0);
+        SWIG_RegisterMapping("_wxFileDialog","_class_wxFileDialog",0);
+        SWIG_RegisterMapping("_GLshort","_GLushort",0);
+        SWIG_RegisterMapping("_GLshort","_short",0);
+        SWIG_RegisterMapping("_GLshort","_signed_short",0);
+        SWIG_RegisterMapping("_GLshort","_unsigned_short",0);
+        SWIG_RegisterMapping("_GLshort","_WXTYPE",0);
+        SWIG_RegisterMapping("_class_wxMDIClientWindow","_wxMDIClientWindow",0);
+        SWIG_RegisterMapping("_class_wxBrush","_wxBrush",0);
+        SWIG_RegisterMapping("_unsigned_short","_GLushort",0);
+        SWIG_RegisterMapping("_unsigned_short","_GLshort",0);
+        SWIG_RegisterMapping("_unsigned_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_unsigned_short","_short",0);
+        SWIG_RegisterMapping("_class_wxWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxWindow);
+        SWIG_RegisterMapping("_class_wxWindow","_wxGLCanvas",SwigwxGLCanvasTowxWindow);
+        SWIG_RegisterMapping("_class_wxWindow","_wxWindow",0);
+        SWIG_RegisterMapping("_wxSplitterWindow","_class_wxSplitterWindow",0);
+        SWIG_RegisterMapping("_class_wxStaticText","_wxStaticText",0);
+        SWIG_RegisterMapping("_wxPrintDialogData","_class_wxPrintDialogData",0);
+        SWIG_RegisterMapping("_GLushort","_unsigned_short",0);
+        SWIG_RegisterMapping("_GLushort","_short",0);
+        SWIG_RegisterMapping("_GLushort","_WXTYPE",0);
+        SWIG_RegisterMapping("_GLushort","_GLshort",0);
+        SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
+        SWIG_RegisterMapping("_class_wxCloseEvent","_wxCloseEvent",0);
+        SWIG_RegisterMapping("_wxSashEvent","_class_wxSashEvent",0);
+        SWIG_RegisterMapping("_class_wxMenuEvent","_wxMenuEvent",0);
+        SWIG_RegisterMapping("_wxClientDC","_class_wxClientDC",0);
+        SWIG_RegisterMapping("_wxMouseEvent","_class_wxMouseEvent",0);
+        SWIG_RegisterMapping("_wxListCtrl","_class_wxListCtrl",0);
+        SWIG_RegisterMapping("_wxSingleChoiceDialog","_class_wxSingleChoiceDialog",0);
+        SWIG_RegisterMapping("_wxGLCanvas","_class_wxGLCanvas",0);
+        SWIG_RegisterMapping("_class_wxPoint","_wxPoint",0);
+        SWIG_RegisterMapping("_wxRealPoint","_class_wxRealPoint",0);
+        SWIG_RegisterMapping("_class_wxRadioBox","_wxRadioBox",0);
+        SWIG_RegisterMapping("_wxGridCell","_class_wxGridCell",0);
+        SWIG_RegisterMapping("_signed_short","_GLshort",0);
+        SWIG_RegisterMapping("_signed_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_signed_short","_short",0);
+        SWIG_RegisterMapping("_wxMemoryDC","_class_wxMemoryDC",0);
+        SWIG_RegisterMapping("_class_wxPrintDialog","_wxPrintDialog",0);
+        SWIG_RegisterMapping("_wxPaintDC","_class_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxWindowDC","_wxWindowDC",0);
+        SWIG_RegisterMapping("_class_wxFocusEvent","_wxFocusEvent",0);
+        SWIG_RegisterMapping("_class_wxMaximizeEvent","_wxMaximizeEvent",0);
+        SWIG_RegisterMapping("_wxStatusBar","_class_wxStatusBar",0);
+        SWIG_RegisterMapping("_class_wxToolBarTool","_wxToolBarTool",0);
+        SWIG_RegisterMapping("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
+        SWIG_RegisterMapping("_class_wxCursor","_wxCursor",0);
+        SWIG_RegisterMapping("_wxPostScriptDC","_class_wxPostScriptDC",0);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxImageHandler",0);
+        SWIG_RegisterMapping("_wxScrolledWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow);
+        SWIG_RegisterMapping("_wxScrolledWindow","_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow);
+        SWIG_RegisterMapping("_wxScrolledWindow","_class_wxScrolledWindow",0);
+        SWIG_RegisterMapping("_wxTreeItemId","_class_wxTreeItemId",0);
+        SWIG_RegisterMapping("_unsigned_char","_GLubyte",0);
+        SWIG_RegisterMapping("_unsigned_char","_GLboolean",0);
+        SWIG_RegisterMapping("_unsigned_char","_byte",0);
+        SWIG_RegisterMapping("_class_wxMenu","_wxMenu",0);
+        SWIG_RegisterMapping("_wxControl","_class_wxControl",0);
+        SWIG_RegisterMapping("_class_wxListBox","_wxListBox",0);
+        SWIG_RegisterMapping("_unsigned_int","_GLuint",0);
+        SWIG_RegisterMapping("_unsigned_int","_GLsizei",0);
+        SWIG_RegisterMapping("_unsigned_int","_GLint",0);
+        SWIG_RegisterMapping("_unsigned_int","_GLbitfield",0);
+        SWIG_RegisterMapping("_unsigned_int","_GLenum",0);
+        SWIG_RegisterMapping("_unsigned_int","_uint",0);
+        SWIG_RegisterMapping("_unsigned_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_unsigned_int","_int",0);
+        SWIG_RegisterMapping("_wxIcon","_class_wxIcon",0);
+        SWIG_RegisterMapping("_wxDialog","_class_wxDialog",0);
+        SWIG_RegisterMapping("_class_wxPyMenu","_wxPyMenu",0);
+        SWIG_RegisterMapping("_class_wxListItem","_wxListItem",0);
+        SWIG_RegisterMapping("_GLdouble","_GLclampd",0);
+        SWIG_RegisterMapping("_GLdouble","_double",0);
+        SWIG_RegisterMapping("_class_wxPen","_wxPen",0);
+        SWIG_RegisterMapping("_class_wxFileDialog","_wxFileDialog",0);
+        SWIG_RegisterMapping("_wxQueryLayoutInfoEvent","_class_wxQueryLayoutInfoEvent",0);
+        SWIG_RegisterMapping("_short","_GLushort",0);
+        SWIG_RegisterMapping("_short","_GLshort",0);
+        SWIG_RegisterMapping("_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_short","_unsigned_short",0);
+        SWIG_RegisterMapping("_short","_signed_short",0);
+        SWIG_RegisterMapping("_class_wxStaticBox","_wxStaticBox",0);
+        SWIG_RegisterMapping("_wxLayoutAlgorithm","_class_wxLayoutAlgorithm",0);
+        SWIG_RegisterMapping("_class_wxScrollEvent","_wxScrollEvent",0);
+        SWIG_RegisterMapping("_wxJoystickEvent","_class_wxJoystickEvent",0);
+        SWIG_RegisterMapping("_class_wxChoice","_wxChoice",0);
+        SWIG_RegisterMapping("_class_wxSlider","_wxSlider",0);
+        SWIG_RegisterMapping("_class_wxCalculateLayoutEvent","_wxCalculateLayoutEvent",0);
+        SWIG_RegisterMapping("_class_wxImageList","_wxImageList",0);
+        SWIG_RegisterMapping("_class_wxBitmapButton","_wxBitmapButton",0);
+        SWIG_RegisterMapping("_wxFrame","_class_wxFrame",0);
+        SWIG_RegisterMapping("_class_wxGLContext","_wxGLContext",0);
+        SWIG_RegisterMapping("_class_wxNotebook","_wxNotebook",0);
+        SWIG_RegisterMapping("_wxJPEGHandler","_class_wxJPEGHandler",0);
+        SWIG_RegisterMapping("_wxWindowID","_GLuint",0);
+        SWIG_RegisterMapping("_wxWindowID","_GLsizei",0);
+        SWIG_RegisterMapping("_wxWindowID","_GLint",0);
+        SWIG_RegisterMapping("_wxWindowID","_GLbitfield",0);
+        SWIG_RegisterMapping("_wxWindowID","_GLenum",0);
+        SWIG_RegisterMapping("_wxWindowID","_EBool",0);
+        SWIG_RegisterMapping("_wxWindowID","_uint",0);
+        SWIG_RegisterMapping("_wxWindowID","_int",0);
+        SWIG_RegisterMapping("_wxWindowID","_signed_int",0);
+        SWIG_RegisterMapping("_wxWindowID","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_GLuint",0);
+        SWIG_RegisterMapping("_int","_GLsizei",0);
+        SWIG_RegisterMapping("_int","_GLint",0);
+        SWIG_RegisterMapping("_int","_GLbitfield",0);
+        SWIG_RegisterMapping("_int","_GLenum",0);
+        SWIG_RegisterMapping("_int","_EBool",0);
+        SWIG_RegisterMapping("_int","_uint",0);
+        SWIG_RegisterMapping("_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_int","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_signed_int",0);
+        SWIG_RegisterMapping("_class_wxMouseEvent","_wxMouseEvent",0);
+        SWIG_RegisterMapping("_class_wxListEvent","_wxListEvent",0);
+        SWIG_RegisterMapping("_class_wxSpinEvent","_wxSpinEvent",0);
+        SWIG_RegisterMapping("_wxButton","_class_wxButton",0);
+        SWIG_RegisterMapping("_class_wxPyApp","_wxPyApp",0);
+        SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
+        SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
+        SWIG_RegisterMapping("_class_wxMDIParentFrame","_wxMDIParentFrame",0);
+        SWIG_RegisterMapping("_wxPyTreeItemData","_class_wxPyTreeItemData",0);
+        SWIG_RegisterMapping("_class_wxPaintDC","_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0);
+        SWIG_RegisterMapping("_class_wxInitDialogEvent","_wxInitDialogEvent",0);
+        SWIG_RegisterMapping("_class_wxComboBox","_wxComboBox",0);
+        SWIG_RegisterMapping("_class_wxRadioButton","_wxRadioButton",0);
+        SWIG_RegisterMapping("_class_wxTreeItemId","_wxTreeItemId",0);
+        SWIG_RegisterMapping("_wxTreeCtrl","_class_wxTreeCtrl",0);
+        SWIG_RegisterMapping("_class_wxLayoutConstraints","_wxLayoutConstraints",0);
+        SWIG_RegisterMapping("_wxIconizeEvent","_class_wxIconizeEvent",0);
+        SWIG_RegisterMapping("_class_wxControl","_wxControl",0);
+        SWIG_RegisterMapping("_wxStaticBitmap","_class_wxStaticBitmap",0);
+        SWIG_RegisterMapping("_class_wxIcon","_wxIcon",0);
+        SWIG_RegisterMapping("_class_wxColour","_wxColour",0);
+        SWIG_RegisterMapping("_class_wxScreenDC","_wxScreenDC",0);
+        SWIG_RegisterMapping("_class_wxPageSetupDialog","_wxPageSetupDialog",0);
+        SWIG_RegisterMapping("_wxPalette","_class_wxPalette",0);
+        SWIG_RegisterMapping("_class_wxIdleEvent","_wxIdleEvent",0);
+        SWIG_RegisterMapping("_wxEraseEvent","_class_wxEraseEvent",0);
+        SWIG_RegisterMapping("_class_wxJoystickEvent","_wxJoystickEvent",0);
+        SWIG_RegisterMapping("_class_wxMiniFrame","_wxMiniFrame",0);
+        SWIG_RegisterMapping("_wxFontDialog","_class_wxFontDialog",0);
+        SWIG_RegisterMapping("_wxRegion","_class_wxRegion",0);
+        SWIG_RegisterMapping("_class_wxSplitterWindow","_wxSplitterWindow",0);
+        SWIG_RegisterMapping("_class_wxShowEvent","_wxShowEvent",0);
+        SWIG_RegisterMapping("_GLint","_GLuint",0);
+        SWIG_RegisterMapping("_GLint","_GLsizei",0);
+        SWIG_RegisterMapping("_GLint","_int",0);
+        SWIG_RegisterMapping("_GLint","_signed_int",0);
+        SWIG_RegisterMapping("_GLint","_unsigned_int",0);
+        SWIG_RegisterMapping("_GLint","_wxWindowID",0);
+        SWIG_RegisterMapping("_GLint","_uint",0);
+        SWIG_RegisterMapping("_GLint","_EBool",0);
+        SWIG_RegisterMapping("_GLint","_GLenum",0);
+        SWIG_RegisterMapping("_GLint","_GLbitfield",0);
+        SWIG_RegisterMapping("_wxActivateEvent","_class_wxActivateEvent",0);
+        SWIG_RegisterMapping("_wxGauge","_class_wxGauge",0);
+        SWIG_RegisterMapping("_class_wxCheckListBox","_wxCheckListBox",0);
+        SWIG_RegisterMapping("_class_wxGridEvent","_wxGridEvent",0);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_wxCommandEvent",0);
+        SWIG_RegisterMapping("_GLubyte","_unsigned_char",0);
+        SWIG_RegisterMapping("_GLubyte","_byte",0);
+        SWIG_RegisterMapping("_GLubyte","_GLboolean",0);
+        SWIG_RegisterMapping("_class_wxClientDC","_wxClientDC",0);
+        SWIG_RegisterMapping("_class_wxSizeEvent","_wxSizeEvent",0);
+        SWIG_RegisterMapping("_class_wxListCtrl","_wxListCtrl",0);
+        SWIG_RegisterMapping("_class_wxGLCanvas","_wxGLCanvas",0);
+        SWIG_RegisterMapping("_class_wxGridCell","_wxGridCell",0);
+        SWIG_RegisterMapping("_class_wxSize","_wxSize",0);
+        SWIG_RegisterMapping("_class_wxBitmap","_wxBitmap",0);
+        SWIG_RegisterMapping("_class_wxMemoryDC","_wxMemoryDC",0);
+        SWIG_RegisterMapping("_wxMenuBar","_class_wxMenuBar",0);
+        SWIG_RegisterMapping("_wxTreeEvent","_class_wxTreeEvent",0);
+        SWIG_RegisterMapping("_wxDirDialog","_class_wxDirDialog",0);
+        SWIG_RegisterMapping("_wxEvtHandler","_class_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler);
+        SWIG_RegisterMapping("_wxEvtHandler","_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler);
+        SWIG_RegisterMapping("_wxEvtHandler","_class_wxEvtHandler",0);
+        SWIG_RegisterMapping("_wxMenuItem","_class_wxMenuItem",0);
+        SWIG_RegisterMapping("_class_wxScrollBar","_wxScrollBar",0);
+        SWIG_RegisterMapping("_class_wxColourDialog","_wxColourDialog",0);
+        SWIG_RegisterMapping("_wxDash","_unsigned_long",0);
+        SWIG_RegisterMapping("_wxDash","_long",0);
+        SWIG_RegisterMapping("_class_wxScrolledWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow);
+        SWIG_RegisterMapping("_class_wxScrolledWindow","_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow);
+        SWIG_RegisterMapping("_class_wxScrolledWindow","_wxScrolledWindow",0);
+        SWIG_RegisterMapping("_class_wxTextEntryDialog","_wxTextEntryDialog",0);
+        SWIG_RegisterMapping("_wxKeyEvent","_class_wxKeyEvent",0);
+        SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
+        SWIG_RegisterMapping("_wxColourData","_class_wxColourData",0);
+        SWIG_RegisterMapping("_wxPageSetupDialogData","_class_wxPageSetupDialogData",0);
+        SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
+        SWIG_RegisterMapping("_class_wxQueryLayoutInfoEvent","_wxQueryLayoutInfoEvent",0);
+        SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",0);
+        SWIG_RegisterMapping("_wxMDIClientWindow","_class_wxMDIClientWindow",0);
+        SWIG_RegisterMapping("_class_wxFontDialog","_wxFontDialog",0);
+        SWIG_RegisterMapping("_wxWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxWindow);
+        SWIG_RegisterMapping("_wxWindow","_wxGLCanvas",SwigwxGLCanvasTowxWindow);
+        SWIG_RegisterMapping("_wxWindow","_class_wxWindow",0);
+        SWIG_RegisterMapping("_class_wxFrame","_wxFrame",0);
+}
diff --git a/utils/wxPython/src/gtk/glcanvas.py b/utils/wxPython/src/gtk/glcanvas.py
new file mode 100644 (file)
index 0000000..6af25bd
--- /dev/null
@@ -0,0 +1,1392 @@
+# This file was created automatically by SWIG.
+import glcanvasc
+
+from misc import *
+
+from windows import *
+
+from gdi import *
+
+from events import *
+
+from mdi import *
+
+from frames import *
+
+from stattool import *
+
+from controls import *
+
+from controls2 import *
+
+from windows2 import *
+
+from cmndlgs import *
+
+from windows3 import *
+
+from image import *
+import wx
+class wxGLContextPtr :
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __del__(self):
+        if self.thisown == 1 :
+            glcanvasc.delete_wxGLContext(self.this)
+    def SetCurrent(self):
+        val = glcanvasc.wxGLContext_SetCurrent(self.this)
+        return val
+    def SetColour(self,arg0):
+        val = glcanvasc.wxGLContext_SetColour(self.this,arg0)
+        return val
+    def SwapBuffers(self):
+        val = glcanvasc.wxGLContext_SwapBuffers(self.this)
+        return val
+    def SetupPixelFormat(self):
+        val = glcanvasc.wxGLContext_SetupPixelFormat(self.this)
+        return val
+    def SetupPalette(self,arg0):
+        val = glcanvasc.wxGLContext_SetupPalette(self.this,arg0.this)
+        return val
+    def CreateDefaultPalette(self):
+        val = glcanvasc.wxGLContext_CreateDefaultPalette(self.this)
+        val = wxPalettePtr(val)
+        val.thisown = 1
+        return val
+    def GetPalette(self):
+        val = glcanvasc.wxGLContext_GetPalette(self.this)
+        val = wxPalettePtr(val)
+        return val
+    def GetWindow(self):
+        val = glcanvasc.wxGLContext_GetWindow(self.this)
+        val = wxWindowPtr(val)
+        return val
+    def __repr__(self):
+        return "<C wxGLContext instance>"
+class wxGLContext(wxGLContextPtr):
+    def __init__(self,arg0,arg1,*args) :
+        argl = map(None,args)
+        try: argl[0] = argl[0].this
+        except: pass
+        args = tuple(argl)
+        self.this = apply(glcanvasc.new_wxGLContext,(arg0,arg1.this,)+args)
+        self.thisown = 1
+
+
+
+
+class wxGLCanvasPtr(wxScrolledWindowPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def SetCurrent(self):
+        val = glcanvasc.wxGLCanvas_SetCurrent(self.this)
+        return val
+    def SetColour(self,arg0):
+        val = glcanvasc.wxGLCanvas_SetColour(self.this,arg0)
+        return val
+    def SwapBuffers(self):
+        val = glcanvasc.wxGLCanvas_SwapBuffers(self.this)
+        return val
+    def GetContext(self):
+        val = glcanvasc.wxGLCanvas_GetContext(self.this)
+        val = wxGLContextPtr(val)
+        return val
+    def __repr__(self):
+        return "<C wxGLCanvas instance>"
+class wxGLCanvas(wxGLCanvasPtr):
+    def __init__(self,arg0,*args) :
+        argl = map(None,args)
+        try: argl[1] = argl[1].this
+        except: pass
+        try: argl[2] = argl[2].this
+        except: pass
+        try: argl[6] = argl[6].this
+        except: pass
+        args = tuple(argl)
+        self.this = apply(glcanvasc.new_wxGLCanvas,(arg0.this,)+args)
+        self.thisown = 1
+        wx._StdWindowCallbacks(self)
+
+
+
+
+
+
+#-------------- FUNCTION WRAPPERS ------------------
+
+glArrayElementEXT = glcanvasc.glArrayElementEXT
+
+glColorPointerEXT = glcanvasc.glColorPointerEXT
+
+glDrawArraysEXT = glcanvasc.glDrawArraysEXT
+
+glEdgeFlagPointerEXT = glcanvasc.glEdgeFlagPointerEXT
+
+glGetPointervEXT = glcanvasc.glGetPointervEXT
+
+glIndexPointerEXT = glcanvasc.glIndexPointerEXT
+
+glNormalPointerEXT = glcanvasc.glNormalPointerEXT
+
+glTexCoordPointerEXT = glcanvasc.glTexCoordPointerEXT
+
+glVertexPointerEXT = glcanvasc.glVertexPointerEXT
+
+glColorTableEXT = glcanvasc.glColorTableEXT
+
+glGetColorTableEXT = glcanvasc.glGetColorTableEXT
+
+glAccum = glcanvasc.glAccum
+
+glAlphaFunc = glcanvasc.glAlphaFunc
+
+glAreTexturesResident = glcanvasc.glAreTexturesResident
+
+glArrayElement = glcanvasc.glArrayElement
+
+glBegin = glcanvasc.glBegin
+
+glBindTexture = glcanvasc.glBindTexture
+
+glBitmap = glcanvasc.glBitmap
+
+glBlendFunc = glcanvasc.glBlendFunc
+
+glCallList = glcanvasc.glCallList
+
+glCallLists = glcanvasc.glCallLists
+
+glClear = glcanvasc.glClear
+
+glClearAccum = glcanvasc.glClearAccum
+
+glClearColor = glcanvasc.glClearColor
+
+glClearDepth = glcanvasc.glClearDepth
+
+glClearIndex = glcanvasc.glClearIndex
+
+glClearStencil = glcanvasc.glClearStencil
+
+glClipPlane = glcanvasc.glClipPlane
+
+glColor3b = glcanvasc.glColor3b
+
+glColor3bv = glcanvasc.glColor3bv
+
+glColor3d = glcanvasc.glColor3d
+
+glColor3dv = glcanvasc.glColor3dv
+
+glColor3f = glcanvasc.glColor3f
+
+glColor3fv = glcanvasc.glColor3fv
+
+glColor3i = glcanvasc.glColor3i
+
+glColor3iv = glcanvasc.glColor3iv
+
+glColor3s = glcanvasc.glColor3s
+
+glColor3sv = glcanvasc.glColor3sv
+
+glColor3ub = glcanvasc.glColor3ub
+
+glColor3ubv = glcanvasc.glColor3ubv
+
+glColor3ui = glcanvasc.glColor3ui
+
+glColor3uiv = glcanvasc.glColor3uiv
+
+glColor3us = glcanvasc.glColor3us
+
+glColor3usv = glcanvasc.glColor3usv
+
+glColor4b = glcanvasc.glColor4b
+
+glColor4bv = glcanvasc.glColor4bv
+
+glColor4d = glcanvasc.glColor4d
+
+glColor4dv = glcanvasc.glColor4dv
+
+glColor4f = glcanvasc.glColor4f
+
+glColor4fv = glcanvasc.glColor4fv
+
+glColor4i = glcanvasc.glColor4i
+
+glColor4iv = glcanvasc.glColor4iv
+
+glColor4s = glcanvasc.glColor4s
+
+glColor4sv = glcanvasc.glColor4sv
+
+glColor4ub = glcanvasc.glColor4ub
+
+glColor4ubv = glcanvasc.glColor4ubv
+
+glColor4ui = glcanvasc.glColor4ui
+
+glColor4uiv = glcanvasc.glColor4uiv
+
+glColor4us = glcanvasc.glColor4us
+
+glColor4usv = glcanvasc.glColor4usv
+
+glColorMask = glcanvasc.glColorMask
+
+glColorMaterial = glcanvasc.glColorMaterial
+
+glColorPointer = glcanvasc.glColorPointer
+
+glCopyPixels = glcanvasc.glCopyPixels
+
+glCopyTexImage1D = glcanvasc.glCopyTexImage1D
+
+glCopyTexImage2D = glcanvasc.glCopyTexImage2D
+
+glCopyTexSubImage1D = glcanvasc.glCopyTexSubImage1D
+
+glCopyTexSubImage2D = glcanvasc.glCopyTexSubImage2D
+
+glCullFace = glcanvasc.glCullFace
+
+glDeleteLists = glcanvasc.glDeleteLists
+
+glDeleteTextures = glcanvasc.glDeleteTextures
+
+glDepthFunc = glcanvasc.glDepthFunc
+
+glDepthMask = glcanvasc.glDepthMask
+
+glDepthRange = glcanvasc.glDepthRange
+
+glDisable = glcanvasc.glDisable
+
+glDisableClientState = glcanvasc.glDisableClientState
+
+glDrawArrays = glcanvasc.glDrawArrays
+
+glDrawBuffer = glcanvasc.glDrawBuffer
+
+glDrawElements = glcanvasc.glDrawElements
+
+glDrawPixels = glcanvasc.glDrawPixels
+
+glEdgeFlag = glcanvasc.glEdgeFlag
+
+glEdgeFlagPointer = glcanvasc.glEdgeFlagPointer
+
+glEdgeFlagv = glcanvasc.glEdgeFlagv
+
+glEnable = glcanvasc.glEnable
+
+glEnableClientState = glcanvasc.glEnableClientState
+
+glEnd = glcanvasc.glEnd
+
+glEndList = glcanvasc.glEndList
+
+glEvalCoord1d = glcanvasc.glEvalCoord1d
+
+glEvalCoord1dv = glcanvasc.glEvalCoord1dv
+
+glEvalCoord1f = glcanvasc.glEvalCoord1f
+
+glEvalCoord1fv = glcanvasc.glEvalCoord1fv
+
+glEvalCoord2d = glcanvasc.glEvalCoord2d
+
+glEvalCoord2dv = glcanvasc.glEvalCoord2dv
+
+glEvalCoord2f = glcanvasc.glEvalCoord2f
+
+glEvalCoord2fv = glcanvasc.glEvalCoord2fv
+
+glEvalMesh1 = glcanvasc.glEvalMesh1
+
+glEvalMesh2 = glcanvasc.glEvalMesh2
+
+glEvalPoint1 = glcanvasc.glEvalPoint1
+
+glEvalPoint2 = glcanvasc.glEvalPoint2
+
+glFeedbackBuffer = glcanvasc.glFeedbackBuffer
+
+glFinish = glcanvasc.glFinish
+
+glFlush = glcanvasc.glFlush
+
+glFogf = glcanvasc.glFogf
+
+glFogfv = glcanvasc.glFogfv
+
+glFogi = glcanvasc.glFogi
+
+glFogiv = glcanvasc.glFogiv
+
+glFrontFace = glcanvasc.glFrontFace
+
+glFrustum = glcanvasc.glFrustum
+
+glGenLists = glcanvasc.glGenLists
+
+glGenTextures = glcanvasc.glGenTextures
+
+glGetBooleanv = glcanvasc.glGetBooleanv
+
+glGetClipPlane = glcanvasc.glGetClipPlane
+
+glGetDoublev = glcanvasc.glGetDoublev
+
+glGetError = glcanvasc.glGetError
+
+glGetFloatv = glcanvasc.glGetFloatv
+
+glGetIntegerv = glcanvasc.glGetIntegerv
+
+glGetLightfv = glcanvasc.glGetLightfv
+
+glGetLightiv = glcanvasc.glGetLightiv
+
+glGetMapdv = glcanvasc.glGetMapdv
+
+glGetMapfv = glcanvasc.glGetMapfv
+
+glGetMapiv = glcanvasc.glGetMapiv
+
+glGetMaterialfv = glcanvasc.glGetMaterialfv
+
+glGetMaterialiv = glcanvasc.glGetMaterialiv
+
+glGetPixelMapfv = glcanvasc.glGetPixelMapfv
+
+glGetPixelMapuiv = glcanvasc.glGetPixelMapuiv
+
+glGetPixelMapusv = glcanvasc.glGetPixelMapusv
+
+glGetPointerv = glcanvasc.glGetPointerv
+
+glGetPolygonStipple = glcanvasc.glGetPolygonStipple
+
+glGetString = glcanvasc.glGetString
+
+glGetTexEnvfv = glcanvasc.glGetTexEnvfv
+
+glGetTexEnviv = glcanvasc.glGetTexEnviv
+
+glGetTexGendv = glcanvasc.glGetTexGendv
+
+glGetTexGenfv = glcanvasc.glGetTexGenfv
+
+glGetTexGeniv = glcanvasc.glGetTexGeniv
+
+glGetTexImage = glcanvasc.glGetTexImage
+
+glGetTexLevelParameterfv = glcanvasc.glGetTexLevelParameterfv
+
+glGetTexLevelParameteriv = glcanvasc.glGetTexLevelParameteriv
+
+glGetTexParameterfv = glcanvasc.glGetTexParameterfv
+
+glGetTexParameteriv = glcanvasc.glGetTexParameteriv
+
+glHint = glcanvasc.glHint
+
+glIndexMask = glcanvasc.glIndexMask
+
+glIndexPointer = glcanvasc.glIndexPointer
+
+glIndexd = glcanvasc.glIndexd
+
+glIndexdv = glcanvasc.glIndexdv
+
+glIndexf = glcanvasc.glIndexf
+
+glIndexfv = glcanvasc.glIndexfv
+
+glIndexi = glcanvasc.glIndexi
+
+glIndexiv = glcanvasc.glIndexiv
+
+glIndexs = glcanvasc.glIndexs
+
+glIndexsv = glcanvasc.glIndexsv
+
+glIndexub = glcanvasc.glIndexub
+
+glIndexubv = glcanvasc.glIndexubv
+
+glInitNames = glcanvasc.glInitNames
+
+glInterleavedArrays = glcanvasc.glInterleavedArrays
+
+glIsEnabled = glcanvasc.glIsEnabled
+
+glIsList = glcanvasc.glIsList
+
+glIsTexture = glcanvasc.glIsTexture
+
+glLightModelf = glcanvasc.glLightModelf
+
+glLightModelfv = glcanvasc.glLightModelfv
+
+glLightModeli = glcanvasc.glLightModeli
+
+glLightModeliv = glcanvasc.glLightModeliv
+
+glLightf = glcanvasc.glLightf
+
+glLightfv = glcanvasc.glLightfv
+
+glLighti = glcanvasc.glLighti
+
+glLightiv = glcanvasc.glLightiv
+
+glLineStipple = glcanvasc.glLineStipple
+
+glLineWidth = glcanvasc.glLineWidth
+
+glListBase = glcanvasc.glListBase
+
+glLoadIdentity = glcanvasc.glLoadIdentity
+
+glLoadMatrixd = glcanvasc.glLoadMatrixd
+
+glLoadMatrixf = glcanvasc.glLoadMatrixf
+
+glLoadName = glcanvasc.glLoadName
+
+glLogicOp = glcanvasc.glLogicOp
+
+glMap1d = glcanvasc.glMap1d
+
+glMap1f = glcanvasc.glMap1f
+
+glMap2d = glcanvasc.glMap2d
+
+glMap2f = glcanvasc.glMap2f
+
+glMapGrid1d = glcanvasc.glMapGrid1d
+
+glMapGrid1f = glcanvasc.glMapGrid1f
+
+glMapGrid2d = glcanvasc.glMapGrid2d
+
+glMapGrid2f = glcanvasc.glMapGrid2f
+
+glMaterialf = glcanvasc.glMaterialf
+
+glMaterialfv = glcanvasc.glMaterialfv
+
+glMateriali = glcanvasc.glMateriali
+
+glMaterialiv = glcanvasc.glMaterialiv
+
+glMatrixMode = glcanvasc.glMatrixMode
+
+glMultMatrixd = glcanvasc.glMultMatrixd
+
+glMultMatrixf = glcanvasc.glMultMatrixf
+
+glNewList = glcanvasc.glNewList
+
+glNormal3b = glcanvasc.glNormal3b
+
+glNormal3bv = glcanvasc.glNormal3bv
+
+glNormal3d = glcanvasc.glNormal3d
+
+glNormal3dv = glcanvasc.glNormal3dv
+
+glNormal3f = glcanvasc.glNormal3f
+
+glNormal3fv = glcanvasc.glNormal3fv
+
+glNormal3i = glcanvasc.glNormal3i
+
+glNormal3iv = glcanvasc.glNormal3iv
+
+glNormal3s = glcanvasc.glNormal3s
+
+glNormal3sv = glcanvasc.glNormal3sv
+
+glNormalPointer = glcanvasc.glNormalPointer
+
+glOrtho = glcanvasc.glOrtho
+
+glPassThrough = glcanvasc.glPassThrough
+
+glPixelMapfv = glcanvasc.glPixelMapfv
+
+glPixelMapuiv = glcanvasc.glPixelMapuiv
+
+glPixelMapusv = glcanvasc.glPixelMapusv
+
+glPixelStoref = glcanvasc.glPixelStoref
+
+glPixelStorei = glcanvasc.glPixelStorei
+
+glPixelTransferf = glcanvasc.glPixelTransferf
+
+glPixelTransferi = glcanvasc.glPixelTransferi
+
+glPixelZoom = glcanvasc.glPixelZoom
+
+glPointSize = glcanvasc.glPointSize
+
+glPolygonMode = glcanvasc.glPolygonMode
+
+glPolygonOffset = glcanvasc.glPolygonOffset
+
+glPolygonStipple = glcanvasc.glPolygonStipple
+
+glPopAttrib = glcanvasc.glPopAttrib
+
+glPopClientAttrib = glcanvasc.glPopClientAttrib
+
+glPopMatrix = glcanvasc.glPopMatrix
+
+glPopName = glcanvasc.glPopName
+
+glPrioritizeTextures = glcanvasc.glPrioritizeTextures
+
+glPushAttrib = glcanvasc.glPushAttrib
+
+glPushClientAttrib = glcanvasc.glPushClientAttrib
+
+glPushMatrix = glcanvasc.glPushMatrix
+
+glPushName = glcanvasc.glPushName
+
+glRasterPos2d = glcanvasc.glRasterPos2d
+
+glRasterPos2dv = glcanvasc.glRasterPos2dv
+
+glRasterPos2f = glcanvasc.glRasterPos2f
+
+glRasterPos2fv = glcanvasc.glRasterPos2fv
+
+glRasterPos2i = glcanvasc.glRasterPos2i
+
+glRasterPos2iv = glcanvasc.glRasterPos2iv
+
+glRasterPos2s = glcanvasc.glRasterPos2s
+
+glRasterPos2sv = glcanvasc.glRasterPos2sv
+
+glRasterPos3d = glcanvasc.glRasterPos3d
+
+glRasterPos3dv = glcanvasc.glRasterPos3dv
+
+glRasterPos3f = glcanvasc.glRasterPos3f
+
+glRasterPos3fv = glcanvasc.glRasterPos3fv
+
+glRasterPos3i = glcanvasc.glRasterPos3i
+
+glRasterPos3iv = glcanvasc.glRasterPos3iv
+
+glRasterPos3s = glcanvasc.glRasterPos3s
+
+glRasterPos3sv = glcanvasc.glRasterPos3sv
+
+glRasterPos4d = glcanvasc.glRasterPos4d
+
+glRasterPos4dv = glcanvasc.glRasterPos4dv
+
+glRasterPos4f = glcanvasc.glRasterPos4f
+
+glRasterPos4fv = glcanvasc.glRasterPos4fv
+
+glRasterPos4i = glcanvasc.glRasterPos4i
+
+glRasterPos4iv = glcanvasc.glRasterPos4iv
+
+glRasterPos4s = glcanvasc.glRasterPos4s
+
+glRasterPos4sv = glcanvasc.glRasterPos4sv
+
+glReadBuffer = glcanvasc.glReadBuffer
+
+glReadPixels = glcanvasc.glReadPixels
+
+glRectd = glcanvasc.glRectd
+
+glRectdv = glcanvasc.glRectdv
+
+glRectf = glcanvasc.glRectf
+
+glRectfv = glcanvasc.glRectfv
+
+glRecti = glcanvasc.glRecti
+
+glRectiv = glcanvasc.glRectiv
+
+glRects = glcanvasc.glRects
+
+glRectsv = glcanvasc.glRectsv
+
+glRenderMode = glcanvasc.glRenderMode
+
+glRotated = glcanvasc.glRotated
+
+glRotatef = glcanvasc.glRotatef
+
+glScaled = glcanvasc.glScaled
+
+glScalef = glcanvasc.glScalef
+
+glScissor = glcanvasc.glScissor
+
+glSelectBuffer = glcanvasc.glSelectBuffer
+
+glShadeModel = glcanvasc.glShadeModel
+
+glStencilFunc = glcanvasc.glStencilFunc
+
+glStencilMask = glcanvasc.glStencilMask
+
+glStencilOp = glcanvasc.glStencilOp
+
+glTexCoord1d = glcanvasc.glTexCoord1d
+
+glTexCoord1dv = glcanvasc.glTexCoord1dv
+
+glTexCoord1f = glcanvasc.glTexCoord1f
+
+glTexCoord1fv = glcanvasc.glTexCoord1fv
+
+glTexCoord1i = glcanvasc.glTexCoord1i
+
+glTexCoord1iv = glcanvasc.glTexCoord1iv
+
+glTexCoord1s = glcanvasc.glTexCoord1s
+
+glTexCoord1sv = glcanvasc.glTexCoord1sv
+
+glTexCoord2d = glcanvasc.glTexCoord2d
+
+glTexCoord2dv = glcanvasc.glTexCoord2dv
+
+glTexCoord2f = glcanvasc.glTexCoord2f
+
+glTexCoord2fv = glcanvasc.glTexCoord2fv
+
+glTexCoord2i = glcanvasc.glTexCoord2i
+
+glTexCoord2iv = glcanvasc.glTexCoord2iv
+
+glTexCoord2s = glcanvasc.glTexCoord2s
+
+glTexCoord2sv = glcanvasc.glTexCoord2sv
+
+glTexCoord3d = glcanvasc.glTexCoord3d
+
+glTexCoord3dv = glcanvasc.glTexCoord3dv
+
+glTexCoord3f = glcanvasc.glTexCoord3f
+
+glTexCoord3fv = glcanvasc.glTexCoord3fv
+
+glTexCoord3i = glcanvasc.glTexCoord3i
+
+glTexCoord3iv = glcanvasc.glTexCoord3iv
+
+glTexCoord3s = glcanvasc.glTexCoord3s
+
+glTexCoord3sv = glcanvasc.glTexCoord3sv
+
+glTexCoord4d = glcanvasc.glTexCoord4d
+
+glTexCoord4dv = glcanvasc.glTexCoord4dv
+
+glTexCoord4f = glcanvasc.glTexCoord4f
+
+glTexCoord4fv = glcanvasc.glTexCoord4fv
+
+glTexCoord4i = glcanvasc.glTexCoord4i
+
+glTexCoord4iv = glcanvasc.glTexCoord4iv
+
+glTexCoord4s = glcanvasc.glTexCoord4s
+
+glTexCoord4sv = glcanvasc.glTexCoord4sv
+
+glTexCoordPointer = glcanvasc.glTexCoordPointer
+
+glTexEnvf = glcanvasc.glTexEnvf
+
+glTexEnvfv = glcanvasc.glTexEnvfv
+
+glTexEnvi = glcanvasc.glTexEnvi
+
+glTexEnviv = glcanvasc.glTexEnviv
+
+glTexGend = glcanvasc.glTexGend
+
+glTexGendv = glcanvasc.glTexGendv
+
+glTexGenf = glcanvasc.glTexGenf
+
+glTexGenfv = glcanvasc.glTexGenfv
+
+glTexGeni = glcanvasc.glTexGeni
+
+glTexGeniv = glcanvasc.glTexGeniv
+
+glTexImage1D = glcanvasc.glTexImage1D
+
+glTexImage2D = glcanvasc.glTexImage2D
+
+glTexParameterf = glcanvasc.glTexParameterf
+
+glTexParameterfv = glcanvasc.glTexParameterfv
+
+glTexParameteri = glcanvasc.glTexParameteri
+
+glTexParameteriv = glcanvasc.glTexParameteriv
+
+glTexSubImage1D = glcanvasc.glTexSubImage1D
+
+glTexSubImage2D = glcanvasc.glTexSubImage2D
+
+glTranslated = glcanvasc.glTranslated
+
+glTranslatef = glcanvasc.glTranslatef
+
+glVertex2d = glcanvasc.glVertex2d
+
+glVertex2dv = glcanvasc.glVertex2dv
+
+glVertex2f = glcanvasc.glVertex2f
+
+glVertex2fv = glcanvasc.glVertex2fv
+
+glVertex2i = glcanvasc.glVertex2i
+
+glVertex2iv = glcanvasc.glVertex2iv
+
+glVertex2s = glcanvasc.glVertex2s
+
+glVertex2sv = glcanvasc.glVertex2sv
+
+glVertex3d = glcanvasc.glVertex3d
+
+glVertex3dv = glcanvasc.glVertex3dv
+
+glVertex3f = glcanvasc.glVertex3f
+
+glVertex3fv = glcanvasc.glVertex3fv
+
+glVertex3i = glcanvasc.glVertex3i
+
+glVertex3iv = glcanvasc.glVertex3iv
+
+glVertex3s = glcanvasc.glVertex3s
+
+glVertex3sv = glcanvasc.glVertex3sv
+
+glVertex4d = glcanvasc.glVertex4d
+
+glVertex4dv = glcanvasc.glVertex4dv
+
+glVertex4f = glcanvasc.glVertex4f
+
+glVertex4fv = glcanvasc.glVertex4fv
+
+glVertex4i = glcanvasc.glVertex4i
+
+glVertex4iv = glcanvasc.glVertex4iv
+
+glVertex4s = glcanvasc.glVertex4s
+
+glVertex4sv = glcanvasc.glVertex4sv
+
+glVertexPointer = glcanvasc.glVertexPointer
+
+glViewport = glcanvasc.glViewport
+
+
+
+#-------------- VARIABLE WRAPPERS ------------------
+
+GL_2D = glcanvasc.GL_2D
+GL_2_BYTES = glcanvasc.GL_2_BYTES
+GL_3D = glcanvasc.GL_3D
+GL_3D_COLOR = glcanvasc.GL_3D_COLOR
+GL_3D_COLOR_TEXTURE = glcanvasc.GL_3D_COLOR_TEXTURE
+GL_3_BYTES = glcanvasc.GL_3_BYTES
+GL_4D_COLOR_TEXTURE = glcanvasc.GL_4D_COLOR_TEXTURE
+GL_4_BYTES = glcanvasc.GL_4_BYTES
+GL_ACCUM = glcanvasc.GL_ACCUM
+GL_ACCUM_ALPHA_BITS = glcanvasc.GL_ACCUM_ALPHA_BITS
+GL_ACCUM_BLUE_BITS = glcanvasc.GL_ACCUM_BLUE_BITS
+GL_ACCUM_BUFFER_BIT = glcanvasc.GL_ACCUM_BUFFER_BIT
+GL_ACCUM_CLEAR_VALUE = glcanvasc.GL_ACCUM_CLEAR_VALUE
+GL_ACCUM_GREEN_BITS = glcanvasc.GL_ACCUM_GREEN_BITS
+GL_ACCUM_RED_BITS = glcanvasc.GL_ACCUM_RED_BITS
+GL_ADD = glcanvasc.GL_ADD
+GL_ALL_ATTRIB_BITS = glcanvasc.GL_ALL_ATTRIB_BITS
+GL_ALPHA = glcanvasc.GL_ALPHA
+GL_ALPHA12 = glcanvasc.GL_ALPHA12
+GL_ALPHA16 = glcanvasc.GL_ALPHA16
+GL_ALPHA4 = glcanvasc.GL_ALPHA4
+GL_ALPHA8 = glcanvasc.GL_ALPHA8
+GL_ALPHA_BIAS = glcanvasc.GL_ALPHA_BIAS
+GL_ALPHA_BITS = glcanvasc.GL_ALPHA_BITS
+GL_ALPHA_SCALE = glcanvasc.GL_ALPHA_SCALE
+GL_ALPHA_TEST = glcanvasc.GL_ALPHA_TEST
+GL_ALPHA_TEST_FUNC = glcanvasc.GL_ALPHA_TEST_FUNC
+GL_ALPHA_TEST_REF = glcanvasc.GL_ALPHA_TEST_REF
+GL_ALWAYS = glcanvasc.GL_ALWAYS
+GL_AMBIENT = glcanvasc.GL_AMBIENT
+GL_AMBIENT_AND_DIFFUSE = glcanvasc.GL_AMBIENT_AND_DIFFUSE
+GL_AND = glcanvasc.GL_AND
+GL_AND_INVERTED = glcanvasc.GL_AND_INVERTED
+GL_AND_REVERSE = glcanvasc.GL_AND_REVERSE
+GL_ATTRIB_STACK_DEPTH = glcanvasc.GL_ATTRIB_STACK_DEPTH
+GL_AUTO_NORMAL = glcanvasc.GL_AUTO_NORMAL
+GL_AUX0 = glcanvasc.GL_AUX0
+GL_AUX1 = glcanvasc.GL_AUX1
+GL_AUX2 = glcanvasc.GL_AUX2
+GL_AUX3 = glcanvasc.GL_AUX3
+GL_AUX_BUFFERS = glcanvasc.GL_AUX_BUFFERS
+GL_BACK = glcanvasc.GL_BACK
+GL_BACK_LEFT = glcanvasc.GL_BACK_LEFT
+GL_BACK_RIGHT = glcanvasc.GL_BACK_RIGHT
+GL_BITMAP = glcanvasc.GL_BITMAP
+GL_BITMAP_TOKEN = glcanvasc.GL_BITMAP_TOKEN
+GL_BLEND = glcanvasc.GL_BLEND
+GL_BLEND_DST = glcanvasc.GL_BLEND_DST
+GL_BLEND_SRC = glcanvasc.GL_BLEND_SRC
+GL_BLUE = glcanvasc.GL_BLUE
+GL_BLUE_BIAS = glcanvasc.GL_BLUE_BIAS
+GL_BLUE_BITS = glcanvasc.GL_BLUE_BITS
+GL_BLUE_SCALE = glcanvasc.GL_BLUE_SCALE
+GL_BYTE = glcanvasc.GL_BYTE
+GL_C3F_V3F = glcanvasc.GL_C3F_V3F
+GL_C4F_N3F_V3F = glcanvasc.GL_C4F_N3F_V3F
+GL_C4UB_V2F = glcanvasc.GL_C4UB_V2F
+GL_C4UB_V3F = glcanvasc.GL_C4UB_V3F
+GL_CCW = glcanvasc.GL_CCW
+GL_CLAMP = glcanvasc.GL_CLAMP
+GL_CLEAR = glcanvasc.GL_CLEAR
+GL_CLIENT_ALL_ATTRIB_BITS = glcanvasc.GL_CLIENT_ALL_ATTRIB_BITS
+GL_CLIENT_ATTRIB_STACK_DEPTH = glcanvasc.GL_CLIENT_ATTRIB_STACK_DEPTH
+GL_CLIENT_PIXEL_STORE_BIT = glcanvasc.GL_CLIENT_PIXEL_STORE_BIT
+GL_CLIENT_VERTEX_ARRAY_BIT = glcanvasc.GL_CLIENT_VERTEX_ARRAY_BIT
+GL_CLIP_PLANE0 = glcanvasc.GL_CLIP_PLANE0
+GL_CLIP_PLANE1 = glcanvasc.GL_CLIP_PLANE1
+GL_CLIP_PLANE2 = glcanvasc.GL_CLIP_PLANE2
+GL_CLIP_PLANE3 = glcanvasc.GL_CLIP_PLANE3
+GL_CLIP_PLANE4 = glcanvasc.GL_CLIP_PLANE4
+GL_CLIP_PLANE5 = glcanvasc.GL_CLIP_PLANE5
+GL_COEFF = glcanvasc.GL_COEFF
+GL_COLOR = glcanvasc.GL_COLOR
+GL_COLOR_ARRAY = glcanvasc.GL_COLOR_ARRAY
+GL_COLOR_ARRAY_COUNT_EXT = glcanvasc.GL_COLOR_ARRAY_COUNT_EXT
+GL_COLOR_ARRAY_EXT = glcanvasc.GL_COLOR_ARRAY_EXT
+GL_COLOR_ARRAY_POINTER = glcanvasc.GL_COLOR_ARRAY_POINTER
+GL_COLOR_ARRAY_POINTER_EXT = glcanvasc.GL_COLOR_ARRAY_POINTER_EXT
+GL_COLOR_ARRAY_SIZE = glcanvasc.GL_COLOR_ARRAY_SIZE
+GL_COLOR_ARRAY_SIZE_EXT = glcanvasc.GL_COLOR_ARRAY_SIZE_EXT
+GL_COLOR_ARRAY_STRIDE = glcanvasc.GL_COLOR_ARRAY_STRIDE
+GL_COLOR_ARRAY_STRIDE_EXT = glcanvasc.GL_COLOR_ARRAY_STRIDE_EXT
+GL_COLOR_ARRAY_TYPE = glcanvasc.GL_COLOR_ARRAY_TYPE
+GL_COLOR_ARRAY_TYPE_EXT = glcanvasc.GL_COLOR_ARRAY_TYPE_EXT
+GL_COLOR_BUFFER_BIT = glcanvasc.GL_COLOR_BUFFER_BIT
+GL_COLOR_CLEAR_VALUE = glcanvasc.GL_COLOR_CLEAR_VALUE
+GL_COLOR_INDEX = glcanvasc.GL_COLOR_INDEX
+GL_COLOR_INDEX12_EXT = glcanvasc.GL_COLOR_INDEX12_EXT
+GL_COLOR_INDEX16_EXT = glcanvasc.GL_COLOR_INDEX16_EXT
+GL_COLOR_INDEX1_EXT = glcanvasc.GL_COLOR_INDEX1_EXT
+GL_COLOR_INDEX2_EXT = glcanvasc.GL_COLOR_INDEX2_EXT
+GL_COLOR_INDEX4_EXT = glcanvasc.GL_COLOR_INDEX4_EXT
+GL_COLOR_INDEX8_EXT = glcanvasc.GL_COLOR_INDEX8_EXT
+GL_COLOR_INDEXES = glcanvasc.GL_COLOR_INDEXES
+GL_COLOR_LOGIC_OP = glcanvasc.GL_COLOR_LOGIC_OP
+GL_COLOR_MATERIAL = glcanvasc.GL_COLOR_MATERIAL
+GL_COLOR_MATERIAL_FACE = glcanvasc.GL_COLOR_MATERIAL_FACE
+GL_COLOR_MATERIAL_PARAMETER = glcanvasc.GL_COLOR_MATERIAL_PARAMETER
+GL_COLOR_TABLE_ALPHA_SIZE_EXT = glcanvasc.GL_COLOR_TABLE_ALPHA_SIZE_EXT
+GL_COLOR_TABLE_BLUE_SIZE_EXT = glcanvasc.GL_COLOR_TABLE_BLUE_SIZE_EXT
+GL_COLOR_TABLE_FORMAT_EXT = glcanvasc.GL_COLOR_TABLE_FORMAT_EXT
+GL_COLOR_TABLE_GREEN_SIZE_EXT = glcanvasc.GL_COLOR_TABLE_GREEN_SIZE_EXT
+GL_COLOR_TABLE_INTENSITY_SIZE_EXT = glcanvasc.GL_COLOR_TABLE_INTENSITY_SIZE_EXT
+GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = glcanvasc.GL_COLOR_TABLE_LUMINANCE_SIZE_EXT
+GL_COLOR_TABLE_RED_SIZE_EXT = glcanvasc.GL_COLOR_TABLE_RED_SIZE_EXT
+GL_COLOR_TABLE_WIDTH_EXT = glcanvasc.GL_COLOR_TABLE_WIDTH_EXT
+GL_COLOR_WRITEMASK = glcanvasc.GL_COLOR_WRITEMASK
+GL_COMPILE = glcanvasc.GL_COMPILE
+GL_COMPILE_AND_EXECUTE = glcanvasc.GL_COMPILE_AND_EXECUTE
+GL_CONSTANT_ATTENUATION = glcanvasc.GL_CONSTANT_ATTENUATION
+GL_COPY = glcanvasc.GL_COPY
+GL_COPY_INVERTED = glcanvasc.GL_COPY_INVERTED
+GL_COPY_PIXEL_TOKEN = glcanvasc.GL_COPY_PIXEL_TOKEN
+GL_CULL_FACE = glcanvasc.GL_CULL_FACE
+GL_CULL_FACE_MODE = glcanvasc.GL_CULL_FACE_MODE
+GL_CURRENT_BIT = glcanvasc.GL_CURRENT_BIT
+GL_CURRENT_COLOR = glcanvasc.GL_CURRENT_COLOR
+GL_CURRENT_INDEX = glcanvasc.GL_CURRENT_INDEX
+GL_CURRENT_NORMAL = glcanvasc.GL_CURRENT_NORMAL
+GL_CURRENT_RASTER_COLOR = glcanvasc.GL_CURRENT_RASTER_COLOR
+GL_CURRENT_RASTER_DISTANCE = glcanvasc.GL_CURRENT_RASTER_DISTANCE
+GL_CURRENT_RASTER_INDEX = glcanvasc.GL_CURRENT_RASTER_INDEX
+GL_CURRENT_RASTER_POSITION = glcanvasc.GL_CURRENT_RASTER_POSITION
+GL_CURRENT_RASTER_POSITION_VALID = glcanvasc.GL_CURRENT_RASTER_POSITION_VALID
+GL_CURRENT_RASTER_TEXTURE_COORDS = glcanvasc.GL_CURRENT_RASTER_TEXTURE_COORDS
+GL_CURRENT_TEXTURE_COORDS = glcanvasc.GL_CURRENT_TEXTURE_COORDS
+GL_CW = glcanvasc.GL_CW
+GL_DECAL = glcanvasc.GL_DECAL
+GL_DECR = glcanvasc.GL_DECR
+GL_DEPTH = glcanvasc.GL_DEPTH
+GL_DEPTH_BIAS = glcanvasc.GL_DEPTH_BIAS
+GL_DEPTH_BITS = glcanvasc.GL_DEPTH_BITS
+GL_DEPTH_BUFFER_BIT = glcanvasc.GL_DEPTH_BUFFER_BIT
+GL_DEPTH_CLEAR_VALUE = glcanvasc.GL_DEPTH_CLEAR_VALUE
+GL_DEPTH_COMPONENT = glcanvasc.GL_DEPTH_COMPONENT
+GL_DEPTH_FUNC = glcanvasc.GL_DEPTH_FUNC
+GL_DEPTH_RANGE = glcanvasc.GL_DEPTH_RANGE
+GL_DEPTH_SCALE = glcanvasc.GL_DEPTH_SCALE
+GL_DEPTH_TEST = glcanvasc.GL_DEPTH_TEST
+GL_DEPTH_WRITEMASK = glcanvasc.GL_DEPTH_WRITEMASK
+GL_DIFFUSE = glcanvasc.GL_DIFFUSE
+GL_DITHER = glcanvasc.GL_DITHER
+GL_DOMAIN = glcanvasc.GL_DOMAIN
+GL_DONT_CARE = glcanvasc.GL_DONT_CARE
+GL_DOUBLE = glcanvasc.GL_DOUBLE
+GL_DOUBLEBUFFER = glcanvasc.GL_DOUBLEBUFFER
+GL_DRAW_BUFFER = glcanvasc.GL_DRAW_BUFFER
+GL_DRAW_PIXEL_TOKEN = glcanvasc.GL_DRAW_PIXEL_TOKEN
+GL_DST_ALPHA = glcanvasc.GL_DST_ALPHA
+GL_DST_COLOR = glcanvasc.GL_DST_COLOR
+GL_EDGE_FLAG = glcanvasc.GL_EDGE_FLAG
+GL_EDGE_FLAG_ARRAY = glcanvasc.GL_EDGE_FLAG_ARRAY
+GL_EDGE_FLAG_ARRAY_COUNT_EXT = glcanvasc.GL_EDGE_FLAG_ARRAY_COUNT_EXT
+GL_EDGE_FLAG_ARRAY_EXT = glcanvasc.GL_EDGE_FLAG_ARRAY_EXT
+GL_EDGE_FLAG_ARRAY_POINTER = glcanvasc.GL_EDGE_FLAG_ARRAY_POINTER
+GL_EDGE_FLAG_ARRAY_POINTER_EXT = glcanvasc.GL_EDGE_FLAG_ARRAY_POINTER_EXT
+GL_EDGE_FLAG_ARRAY_STRIDE = glcanvasc.GL_EDGE_FLAG_ARRAY_STRIDE
+GL_EDGE_FLAG_ARRAY_STRIDE_EXT = glcanvasc.GL_EDGE_FLAG_ARRAY_STRIDE_EXT
+GL_EMISSION = glcanvasc.GL_EMISSION
+GL_ENABLE_BIT = glcanvasc.GL_ENABLE_BIT
+GL_EQUAL = glcanvasc.GL_EQUAL
+GL_EQUIV = glcanvasc.GL_EQUIV
+GL_EVAL_BIT = glcanvasc.GL_EVAL_BIT
+GL_EXP = glcanvasc.GL_EXP
+GL_EXP2 = glcanvasc.GL_EXP2
+GL_EXTENSIONS = glcanvasc.GL_EXTENSIONS
+GL_EXT_paletted_texture = glcanvasc.GL_EXT_paletted_texture
+GL_EXT_vertex_array = glcanvasc.GL_EXT_vertex_array
+GL_EYE_LINEAR = glcanvasc.GL_EYE_LINEAR
+GL_EYE_PLANE = glcanvasc.GL_EYE_PLANE
+GL_FALSE = glcanvasc.GL_FALSE
+GL_FASTEST = glcanvasc.GL_FASTEST
+GL_FEEDBACK = glcanvasc.GL_FEEDBACK
+GL_FEEDBACK_BUFFER_POINTER = glcanvasc.GL_FEEDBACK_BUFFER_POINTER
+GL_FEEDBACK_BUFFER_SIZE = glcanvasc.GL_FEEDBACK_BUFFER_SIZE
+GL_FEEDBACK_BUFFER_TYPE = glcanvasc.GL_FEEDBACK_BUFFER_TYPE
+GL_FILL = glcanvasc.GL_FILL
+GL_FLAT = glcanvasc.GL_FLAT
+GL_FLOAT = glcanvasc.GL_FLOAT
+GL_FOG = glcanvasc.GL_FOG
+GL_FOG_BIT = glcanvasc.GL_FOG_BIT
+GL_FOG_COLOR = glcanvasc.GL_FOG_COLOR
+GL_FOG_DENSITY = glcanvasc.GL_FOG_DENSITY
+GL_FOG_END = glcanvasc.GL_FOG_END
+GL_FOG_HINT = glcanvasc.GL_FOG_HINT
+GL_FOG_INDEX = glcanvasc.GL_FOG_INDEX
+GL_FOG_MODE = glcanvasc.GL_FOG_MODE
+GL_FOG_START = glcanvasc.GL_FOG_START
+GL_FRONT = glcanvasc.GL_FRONT
+GL_FRONT_AND_BACK = glcanvasc.GL_FRONT_AND_BACK
+GL_FRONT_FACE = glcanvasc.GL_FRONT_FACE
+GL_FRONT_LEFT = glcanvasc.GL_FRONT_LEFT
+GL_FRONT_RIGHT = glcanvasc.GL_FRONT_RIGHT
+GL_GEQUAL = glcanvasc.GL_GEQUAL
+GL_GREATER = glcanvasc.GL_GREATER
+GL_GREEN = glcanvasc.GL_GREEN
+GL_GREEN_BIAS = glcanvasc.GL_GREEN_BIAS
+GL_GREEN_BITS = glcanvasc.GL_GREEN_BITS
+GL_GREEN_SCALE = glcanvasc.GL_GREEN_SCALE
+GL_HINT_BIT = glcanvasc.GL_HINT_BIT
+GL_INCR = glcanvasc.GL_INCR
+GL_INDEX_ARRAY = glcanvasc.GL_INDEX_ARRAY
+GL_INDEX_ARRAY_COUNT_EXT = glcanvasc.GL_INDEX_ARRAY_COUNT_EXT
+GL_INDEX_ARRAY_EXT = glcanvasc.GL_INDEX_ARRAY_EXT
+GL_INDEX_ARRAY_POINTER = glcanvasc.GL_INDEX_ARRAY_POINTER
+GL_INDEX_ARRAY_POINTER_EXT = glcanvasc.GL_INDEX_ARRAY_POINTER_EXT
+GL_INDEX_ARRAY_STRIDE = glcanvasc.GL_INDEX_ARRAY_STRIDE
+GL_INDEX_ARRAY_STRIDE_EXT = glcanvasc.GL_INDEX_ARRAY_STRIDE_EXT
+GL_INDEX_ARRAY_TYPE = glcanvasc.GL_INDEX_ARRAY_TYPE
+GL_INDEX_ARRAY_TYPE_EXT = glcanvasc.GL_INDEX_ARRAY_TYPE_EXT
+GL_INDEX_BITS = glcanvasc.GL_INDEX_BITS
+GL_INDEX_CLEAR_VALUE = glcanvasc.GL_INDEX_CLEAR_VALUE
+GL_INDEX_LOGIC_OP = glcanvasc.GL_INDEX_LOGIC_OP
+GL_INDEX_MODE = glcanvasc.GL_INDEX_MODE
+GL_INDEX_OFFSET = glcanvasc.GL_INDEX_OFFSET
+GL_INDEX_SHIFT = glcanvasc.GL_INDEX_SHIFT
+GL_INDEX_WRITEMASK = glcanvasc.GL_INDEX_WRITEMASK
+GL_INT = glcanvasc.GL_INT
+GL_INTENSITY = glcanvasc.GL_INTENSITY
+GL_INTENSITY12 = glcanvasc.GL_INTENSITY12
+GL_INTENSITY16 = glcanvasc.GL_INTENSITY16
+GL_INTENSITY4 = glcanvasc.GL_INTENSITY4
+GL_INTENSITY8 = glcanvasc.GL_INTENSITY8
+GL_INVALID_ENUM = glcanvasc.GL_INVALID_ENUM
+GL_INVALID_OPERATION = glcanvasc.GL_INVALID_OPERATION
+GL_INVALID_VALUE = glcanvasc.GL_INVALID_VALUE
+GL_INVERT = glcanvasc.GL_INVERT
+GL_KEEP = glcanvasc.GL_KEEP
+GL_LEFT = glcanvasc.GL_LEFT
+GL_LEQUAL = glcanvasc.GL_LEQUAL
+GL_LESS = glcanvasc.GL_LESS
+GL_LIGHT0 = glcanvasc.GL_LIGHT0
+GL_LIGHT1 = glcanvasc.GL_LIGHT1
+GL_LIGHT2 = glcanvasc.GL_LIGHT2
+GL_LIGHT3 = glcanvasc.GL_LIGHT3
+GL_LIGHT4 = glcanvasc.GL_LIGHT4
+GL_LIGHT5 = glcanvasc.GL_LIGHT5
+GL_LIGHT6 = glcanvasc.GL_LIGHT6
+GL_LIGHT7 = glcanvasc.GL_LIGHT7
+GL_LIGHTING = glcanvasc.GL_LIGHTING
+GL_LIGHTING_BIT = glcanvasc.GL_LIGHTING_BIT
+GL_LIGHT_MODEL_AMBIENT = glcanvasc.GL_LIGHT_MODEL_AMBIENT
+GL_LIGHT_MODEL_LOCAL_VIEWER = glcanvasc.GL_LIGHT_MODEL_LOCAL_VIEWER
+GL_LIGHT_MODEL_TWO_SIDE = glcanvasc.GL_LIGHT_MODEL_TWO_SIDE
+GL_LINE = glcanvasc.GL_LINE
+GL_LINEAR = glcanvasc.GL_LINEAR
+GL_LINEAR_ATTENUATION = glcanvasc.GL_LINEAR_ATTENUATION
+GL_LINEAR_MIPMAP_LINEAR = glcanvasc.GL_LINEAR_MIPMAP_LINEAR
+GL_LINEAR_MIPMAP_NEAREST = glcanvasc.GL_LINEAR_MIPMAP_NEAREST
+GL_LINES = glcanvasc.GL_LINES
+GL_LINE_BIT = glcanvasc.GL_LINE_BIT
+GL_LINE_LOOP = glcanvasc.GL_LINE_LOOP
+GL_LINE_RESET_TOKEN = glcanvasc.GL_LINE_RESET_TOKEN
+GL_LINE_SMOOTH = glcanvasc.GL_LINE_SMOOTH
+GL_LINE_SMOOTH_HINT = glcanvasc.GL_LINE_SMOOTH_HINT
+GL_LINE_STIPPLE = glcanvasc.GL_LINE_STIPPLE
+GL_LINE_STIPPLE_PATTERN = glcanvasc.GL_LINE_STIPPLE_PATTERN
+GL_LINE_STIPPLE_REPEAT = glcanvasc.GL_LINE_STIPPLE_REPEAT
+GL_LINE_STRIP = glcanvasc.GL_LINE_STRIP
+GL_LINE_TOKEN = glcanvasc.GL_LINE_TOKEN
+GL_LINE_WIDTH = glcanvasc.GL_LINE_WIDTH
+GL_LINE_WIDTH_GRANULARITY = glcanvasc.GL_LINE_WIDTH_GRANULARITY
+GL_LINE_WIDTH_RANGE = glcanvasc.GL_LINE_WIDTH_RANGE
+GL_LIST_BASE = glcanvasc.GL_LIST_BASE
+GL_LIST_BIT = glcanvasc.GL_LIST_BIT
+GL_LIST_INDEX = glcanvasc.GL_LIST_INDEX
+GL_LIST_MODE = glcanvasc.GL_LIST_MODE
+GL_LOAD = glcanvasc.GL_LOAD
+GL_LOGIC_OP = glcanvasc.GL_LOGIC_OP
+GL_LOGIC_OP_MODE = glcanvasc.GL_LOGIC_OP_MODE
+GL_LUMINANCE = glcanvasc.GL_LUMINANCE
+GL_LUMINANCE12 = glcanvasc.GL_LUMINANCE12
+GL_LUMINANCE12_ALPHA12 = glcanvasc.GL_LUMINANCE12_ALPHA12
+GL_LUMINANCE12_ALPHA4 = glcanvasc.GL_LUMINANCE12_ALPHA4
+GL_LUMINANCE16 = glcanvasc.GL_LUMINANCE16
+GL_LUMINANCE16_ALPHA16 = glcanvasc.GL_LUMINANCE16_ALPHA16
+GL_LUMINANCE4 = glcanvasc.GL_LUMINANCE4
+GL_LUMINANCE4_ALPHA4 = glcanvasc.GL_LUMINANCE4_ALPHA4
+GL_LUMINANCE6_ALPHA2 = glcanvasc.GL_LUMINANCE6_ALPHA2
+GL_LUMINANCE8 = glcanvasc.GL_LUMINANCE8
+GL_LUMINANCE8_ALPHA8 = glcanvasc.GL_LUMINANCE8_ALPHA8
+GL_LUMINANCE_ALPHA = glcanvasc.GL_LUMINANCE_ALPHA
+GL_MAP1_COLOR_4 = glcanvasc.GL_MAP1_COLOR_4
+GL_MAP1_GRID_DOMAIN = glcanvasc.GL_MAP1_GRID_DOMAIN
+GL_MAP1_GRID_SEGMENTS = glcanvasc.GL_MAP1_GRID_SEGMENTS
+GL_MAP1_INDEX = glcanvasc.GL_MAP1_INDEX
+GL_MAP1_NORMAL = glcanvasc.GL_MAP1_NORMAL
+GL_MAP1_TEXTURE_COORD_1 = glcanvasc.GL_MAP1_TEXTURE_COORD_1
+GL_MAP1_TEXTURE_COORD_2 = glcanvasc.GL_MAP1_TEXTURE_COORD_2
+GL_MAP1_TEXTURE_COORD_3 = glcanvasc.GL_MAP1_TEXTURE_COORD_3
+GL_MAP1_TEXTURE_COORD_4 = glcanvasc.GL_MAP1_TEXTURE_COORD_4
+GL_MAP1_VERTEX_3 = glcanvasc.GL_MAP1_VERTEX_3
+GL_MAP1_VERTEX_4 = glcanvasc.GL_MAP1_VERTEX_4
+GL_MAP2_COLOR_4 = glcanvasc.GL_MAP2_COLOR_4
+GL_MAP2_GRID_DOMAIN = glcanvasc.GL_MAP2_GRID_DOMAIN
+GL_MAP2_GRID_SEGMENTS = glcanvasc.GL_MAP2_GRID_SEGMENTS
+GL_MAP2_INDEX = glcanvasc.GL_MAP2_INDEX
+GL_MAP2_NORMAL = glcanvasc.GL_MAP2_NORMAL
+GL_MAP2_TEXTURE_COORD_1 = glcanvasc.GL_MAP2_TEXTURE_COORD_1
+GL_MAP2_TEXTURE_COORD_2 = glcanvasc.GL_MAP2_TEXTURE_COORD_2
+GL_MAP2_TEXTURE_COORD_3 = glcanvasc.GL_MAP2_TEXTURE_COORD_3
+GL_MAP2_TEXTURE_COORD_4 = glcanvasc.GL_MAP2_TEXTURE_COORD_4
+GL_MAP2_VERTEX_3 = glcanvasc.GL_MAP2_VERTEX_3
+GL_MAP2_VERTEX_4 = glcanvasc.GL_MAP2_VERTEX_4
+GL_MAP_COLOR = glcanvasc.GL_MAP_COLOR
+GL_MAP_STENCIL = glcanvasc.GL_MAP_STENCIL
+GL_MATRIX_MODE = glcanvasc.GL_MATRIX_MODE
+GL_MAX_ATTRIB_STACK_DEPTH = glcanvasc.GL_MAX_ATTRIB_STACK_DEPTH
+GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = glcanvasc.GL_MAX_CLIENT_ATTRIB_STACK_DEPTH
+GL_MAX_CLIP_PLANES = glcanvasc.GL_MAX_CLIP_PLANES
+GL_MAX_EVAL_ORDER = glcanvasc.GL_MAX_EVAL_ORDER
+GL_MAX_LIGHTS = glcanvasc.GL_MAX_LIGHTS
+GL_MAX_LIST_NESTING = glcanvasc.GL_MAX_LIST_NESTING
+GL_MAX_MODELVIEW_STACK_DEPTH = glcanvasc.GL_MAX_MODELVIEW_STACK_DEPTH
+GL_MAX_NAME_STACK_DEPTH = glcanvasc.GL_MAX_NAME_STACK_DEPTH
+GL_MAX_PIXEL_MAP_TABLE = glcanvasc.GL_MAX_PIXEL_MAP_TABLE
+GL_MAX_PROJECTION_STACK_DEPTH = glcanvasc.GL_MAX_PROJECTION_STACK_DEPTH
+GL_MAX_TEXTURE_SIZE = glcanvasc.GL_MAX_TEXTURE_SIZE
+GL_MAX_TEXTURE_STACK_DEPTH = glcanvasc.GL_MAX_TEXTURE_STACK_DEPTH
+GL_MAX_VIEWPORT_DIMS = glcanvasc.GL_MAX_VIEWPORT_DIMS
+GL_MODELVIEW = glcanvasc.GL_MODELVIEW
+GL_MODELVIEW_MATRIX = glcanvasc.GL_MODELVIEW_MATRIX
+GL_MODELVIEW_STACK_DEPTH = glcanvasc.GL_MODELVIEW_STACK_DEPTH
+GL_MODULATE = glcanvasc.GL_MODULATE
+GL_MULT = glcanvasc.GL_MULT
+GL_N3F_V3F = glcanvasc.GL_N3F_V3F
+GL_NAME_STACK_DEPTH = glcanvasc.GL_NAME_STACK_DEPTH
+GL_NAND = glcanvasc.GL_NAND
+GL_NEAREST = glcanvasc.GL_NEAREST
+GL_NEAREST_MIPMAP_LINEAR = glcanvasc.GL_NEAREST_MIPMAP_LINEAR
+GL_NEAREST_MIPMAP_NEAREST = glcanvasc.GL_NEAREST_MIPMAP_NEAREST
+GL_NEVER = glcanvasc.GL_NEVER
+GL_NICEST = glcanvasc.GL_NICEST
+GL_NONE = glcanvasc.GL_NONE
+GL_NOOP = glcanvasc.GL_NOOP
+GL_NOR = glcanvasc.GL_NOR
+GL_NORMALIZE = glcanvasc.GL_NORMALIZE
+GL_NORMAL_ARRAY = glcanvasc.GL_NORMAL_ARRAY
+GL_NORMAL_ARRAY_COUNT_EXT = glcanvasc.GL_NORMAL_ARRAY_COUNT_EXT
+GL_NORMAL_ARRAY_EXT = glcanvasc.GL_NORMAL_ARRAY_EXT
+GL_NORMAL_ARRAY_POINTER = glcanvasc.GL_NORMAL_ARRAY_POINTER
+GL_NORMAL_ARRAY_POINTER_EXT = glcanvasc.GL_NORMAL_ARRAY_POINTER_EXT
+GL_NORMAL_ARRAY_STRIDE = glcanvasc.GL_NORMAL_ARRAY_STRIDE
+GL_NORMAL_ARRAY_STRIDE_EXT = glcanvasc.GL_NORMAL_ARRAY_STRIDE_EXT
+GL_NORMAL_ARRAY_TYPE = glcanvasc.GL_NORMAL_ARRAY_TYPE
+GL_NORMAL_ARRAY_TYPE_EXT = glcanvasc.GL_NORMAL_ARRAY_TYPE_EXT
+GL_NOTEQUAL = glcanvasc.GL_NOTEQUAL
+GL_NO_ERROR = glcanvasc.GL_NO_ERROR
+GL_OBJECT_LINEAR = glcanvasc.GL_OBJECT_LINEAR
+GL_OBJECT_PLANE = glcanvasc.GL_OBJECT_PLANE
+GL_ONE = glcanvasc.GL_ONE
+GL_ONE_MINUS_DST_ALPHA = glcanvasc.GL_ONE_MINUS_DST_ALPHA
+GL_ONE_MINUS_DST_COLOR = glcanvasc.GL_ONE_MINUS_DST_COLOR
+GL_ONE_MINUS_SRC_ALPHA = glcanvasc.GL_ONE_MINUS_SRC_ALPHA
+GL_ONE_MINUS_SRC_COLOR = glcanvasc.GL_ONE_MINUS_SRC_COLOR
+GL_OR = glcanvasc.GL_OR
+GL_ORDER = glcanvasc.GL_ORDER
+GL_OR_INVERTED = glcanvasc.GL_OR_INVERTED
+GL_OR_REVERSE = glcanvasc.GL_OR_REVERSE
+GL_OUT_OF_MEMORY = glcanvasc.GL_OUT_OF_MEMORY
+GL_PACK_ALIGNMENT = glcanvasc.GL_PACK_ALIGNMENT
+GL_PACK_LSB_FIRST = glcanvasc.GL_PACK_LSB_FIRST
+GL_PACK_ROW_LENGTH = glcanvasc.GL_PACK_ROW_LENGTH
+GL_PACK_SKIP_PIXELS = glcanvasc.GL_PACK_SKIP_PIXELS
+GL_PACK_SKIP_ROWS = glcanvasc.GL_PACK_SKIP_ROWS
+GL_PACK_SWAP_BYTES = glcanvasc.GL_PACK_SWAP_BYTES
+GL_PASS_THROUGH_TOKEN = glcanvasc.GL_PASS_THROUGH_TOKEN
+GL_PERSPECTIVE_CORRECTION_HINT = glcanvasc.GL_PERSPECTIVE_CORRECTION_HINT
+GL_PIXEL_MAP_A_TO_A = glcanvasc.GL_PIXEL_MAP_A_TO_A
+GL_PIXEL_MAP_A_TO_A_SIZE = glcanvasc.GL_PIXEL_MAP_A_TO_A_SIZE
+GL_PIXEL_MAP_B_TO_B = glcanvasc.GL_PIXEL_MAP_B_TO_B
+GL_PIXEL_MAP_B_TO_B_SIZE = glcanvasc.GL_PIXEL_MAP_B_TO_B_SIZE
+GL_PIXEL_MAP_G_TO_G = glcanvasc.GL_PIXEL_MAP_G_TO_G
+GL_PIXEL_MAP_G_TO_G_SIZE = glcanvasc.GL_PIXEL_MAP_G_TO_G_SIZE
+GL_PIXEL_MAP_I_TO_A = glcanvasc.GL_PIXEL_MAP_I_TO_A
+GL_PIXEL_MAP_I_TO_A_SIZE = glcanvasc.GL_PIXEL_MAP_I_TO_A_SIZE
+GL_PIXEL_MAP_I_TO_B = glcanvasc.GL_PIXEL_MAP_I_TO_B
+GL_PIXEL_MAP_I_TO_B_SIZE = glcanvasc.GL_PIXEL_MAP_I_TO_B_SIZE
+GL_PIXEL_MAP_I_TO_G = glcanvasc.GL_PIXEL_MAP_I_TO_G
+GL_PIXEL_MAP_I_TO_G_SIZE = glcanvasc.GL_PIXEL_MAP_I_TO_G_SIZE
+GL_PIXEL_MAP_I_TO_I = glcanvasc.GL_PIXEL_MAP_I_TO_I
+GL_PIXEL_MAP_I_TO_I_SIZE = glcanvasc.GL_PIXEL_MAP_I_TO_I_SIZE
+GL_PIXEL_MAP_I_TO_R = glcanvasc.GL_PIXEL_MAP_I_TO_R
+GL_PIXEL_MAP_I_TO_R_SIZE = glcanvasc.GL_PIXEL_MAP_I_TO_R_SIZE
+GL_PIXEL_MAP_R_TO_R = glcanvasc.GL_PIXEL_MAP_R_TO_R
+GL_PIXEL_MAP_R_TO_R_SIZE = glcanvasc.GL_PIXEL_MAP_R_TO_R_SIZE
+GL_PIXEL_MAP_S_TO_S = glcanvasc.GL_PIXEL_MAP_S_TO_S
+GL_PIXEL_MAP_S_TO_S_SIZE = glcanvasc.GL_PIXEL_MAP_S_TO_S_SIZE
+GL_PIXEL_MODE_BIT = glcanvasc.GL_PIXEL_MODE_BIT
+GL_POINT = glcanvasc.GL_POINT
+GL_POINTS = glcanvasc.GL_POINTS
+GL_POINT_BIT = glcanvasc.GL_POINT_BIT
+GL_POINT_SIZE = glcanvasc.GL_POINT_SIZE
+GL_POINT_SIZE_GRANULARITY = glcanvasc.GL_POINT_SIZE_GRANULARITY
+GL_POINT_SIZE_RANGE = glcanvasc.GL_POINT_SIZE_RANGE
+GL_POINT_SMOOTH = glcanvasc.GL_POINT_SMOOTH
+GL_POINT_SMOOTH_HINT = glcanvasc.GL_POINT_SMOOTH_HINT
+GL_POINT_TOKEN = glcanvasc.GL_POINT_TOKEN
+GL_POLYGON = glcanvasc.GL_POLYGON
+GL_POLYGON_BIT = glcanvasc.GL_POLYGON_BIT
+GL_POLYGON_MODE = glcanvasc.GL_POLYGON_MODE
+GL_POLYGON_OFFSET_FACTOR = glcanvasc.GL_POLYGON_OFFSET_FACTOR
+GL_POLYGON_OFFSET_FILL = glcanvasc.GL_POLYGON_OFFSET_FILL
+GL_POLYGON_OFFSET_LINE = glcanvasc.GL_POLYGON_OFFSET_LINE
+GL_POLYGON_OFFSET_POINT = glcanvasc.GL_POLYGON_OFFSET_POINT
+GL_POLYGON_OFFSET_UNITS = glcanvasc.GL_POLYGON_OFFSET_UNITS
+GL_POLYGON_SMOOTH = glcanvasc.GL_POLYGON_SMOOTH
+GL_POLYGON_SMOOTH_HINT = glcanvasc.GL_POLYGON_SMOOTH_HINT
+GL_POLYGON_STIPPLE = glcanvasc.GL_POLYGON_STIPPLE
+GL_POLYGON_STIPPLE_BIT = glcanvasc.GL_POLYGON_STIPPLE_BIT
+GL_POLYGON_TOKEN = glcanvasc.GL_POLYGON_TOKEN
+GL_POSITION = glcanvasc.GL_POSITION
+GL_PROJECTION = glcanvasc.GL_PROJECTION
+GL_PROJECTION_MATRIX = glcanvasc.GL_PROJECTION_MATRIX
+GL_PROJECTION_STACK_DEPTH = glcanvasc.GL_PROJECTION_STACK_DEPTH
+GL_PROXY_TEXTURE_1D = glcanvasc.GL_PROXY_TEXTURE_1D
+GL_PROXY_TEXTURE_2D = glcanvasc.GL_PROXY_TEXTURE_2D
+GL_Q = glcanvasc.GL_Q
+GL_QUADRATIC_ATTENUATION = glcanvasc.GL_QUADRATIC_ATTENUATION
+GL_QUADS = glcanvasc.GL_QUADS
+GL_QUAD_STRIP = glcanvasc.GL_QUAD_STRIP
+GL_R = glcanvasc.GL_R
+GL_R3_G3_B2 = glcanvasc.GL_R3_G3_B2
+GL_READ_BUFFER = glcanvasc.GL_READ_BUFFER
+GL_RED = glcanvasc.GL_RED
+GL_RED_BIAS = glcanvasc.GL_RED_BIAS
+GL_RED_BITS = glcanvasc.GL_RED_BITS
+GL_RED_SCALE = glcanvasc.GL_RED_SCALE
+GL_RENDER = glcanvasc.GL_RENDER
+GL_RENDERER = glcanvasc.GL_RENDERER
+GL_RENDER_MODE = glcanvasc.GL_RENDER_MODE
+GL_REPEAT = glcanvasc.GL_REPEAT
+GL_REPLACE = glcanvasc.GL_REPLACE
+GL_RETURN = glcanvasc.GL_RETURN
+GL_RGB = glcanvasc.GL_RGB
+GL_RGB10 = glcanvasc.GL_RGB10
+GL_RGB10_A2 = glcanvasc.GL_RGB10_A2
+GL_RGB12 = glcanvasc.GL_RGB12
+GL_RGB16 = glcanvasc.GL_RGB16
+GL_RGB4 = glcanvasc.GL_RGB4
+GL_RGB5 = glcanvasc.GL_RGB5
+GL_RGB5_A1 = glcanvasc.GL_RGB5_A1
+GL_RGB8 = glcanvasc.GL_RGB8
+GL_RGBA = glcanvasc.GL_RGBA
+GL_RGBA12 = glcanvasc.GL_RGBA12
+GL_RGBA16 = glcanvasc.GL_RGBA16
+GL_RGBA2 = glcanvasc.GL_RGBA2
+GL_RGBA4 = glcanvasc.GL_RGBA4
+GL_RGBA8 = glcanvasc.GL_RGBA8
+GL_RGBA_MODE = glcanvasc.GL_RGBA_MODE
+GL_RIGHT = glcanvasc.GL_RIGHT
+GL_S = glcanvasc.GL_S
+GL_SCISSOR_BIT = glcanvasc.GL_SCISSOR_BIT
+GL_SCISSOR_BOX = glcanvasc.GL_SCISSOR_BOX
+GL_SCISSOR_TEST = glcanvasc.GL_SCISSOR_TEST
+GL_SELECT = glcanvasc.GL_SELECT
+GL_SELECTION_BUFFER_POINTER = glcanvasc.GL_SELECTION_BUFFER_POINTER
+GL_SELECTION_BUFFER_SIZE = glcanvasc.GL_SELECTION_BUFFER_SIZE
+GL_SET = glcanvasc.GL_SET
+GL_SHADE_MODEL = glcanvasc.GL_SHADE_MODEL
+GL_SHININESS = glcanvasc.GL_SHININESS
+GL_SHORT = glcanvasc.GL_SHORT
+GL_SMOOTH = glcanvasc.GL_SMOOTH
+GL_SPECULAR = glcanvasc.GL_SPECULAR
+GL_SPHERE_MAP = glcanvasc.GL_SPHERE_MAP
+GL_SPOT_CUTOFF = glcanvasc.GL_SPOT_CUTOFF
+GL_SPOT_DIRECTION = glcanvasc.GL_SPOT_DIRECTION
+GL_SPOT_EXPONENT = glcanvasc.GL_SPOT_EXPONENT
+GL_SRC_ALPHA = glcanvasc.GL_SRC_ALPHA
+GL_SRC_ALPHA_SATURATE = glcanvasc.GL_SRC_ALPHA_SATURATE
+GL_SRC_COLOR = glcanvasc.GL_SRC_COLOR
+GL_STACK_OVERFLOW = glcanvasc.GL_STACK_OVERFLOW
+GL_STACK_UNDERFLOW = glcanvasc.GL_STACK_UNDERFLOW
+GL_STENCIL = glcanvasc.GL_STENCIL
+GL_STENCIL_BITS = glcanvasc.GL_STENCIL_BITS
+GL_STENCIL_BUFFER_BIT = glcanvasc.GL_STENCIL_BUFFER_BIT
+GL_STENCIL_CLEAR_VALUE = glcanvasc.GL_STENCIL_CLEAR_VALUE
+GL_STENCIL_FAIL = glcanvasc.GL_STENCIL_FAIL
+GL_STENCIL_FUNC = glcanvasc.GL_STENCIL_FUNC
+GL_STENCIL_INDEX = glcanvasc.GL_STENCIL_INDEX
+GL_STENCIL_PASS_DEPTH_FAIL = glcanvasc.GL_STENCIL_PASS_DEPTH_FAIL
+GL_STENCIL_PASS_DEPTH_PASS = glcanvasc.GL_STENCIL_PASS_DEPTH_PASS
+GL_STENCIL_REF = glcanvasc.GL_STENCIL_REF
+GL_STENCIL_TEST = glcanvasc.GL_STENCIL_TEST
+GL_STENCIL_VALUE_MASK = glcanvasc.GL_STENCIL_VALUE_MASK
+GL_STENCIL_WRITEMASK = glcanvasc.GL_STENCIL_WRITEMASK
+GL_STEREO = glcanvasc.GL_STEREO
+GL_SUBPIXEL_BITS = glcanvasc.GL_SUBPIXEL_BITS
+GL_T = glcanvasc.GL_T
+GL_T2F_C3F_V3F = glcanvasc.GL_T2F_C3F_V3F
+GL_T2F_C4F_N3F_V3F = glcanvasc.GL_T2F_C4F_N3F_V3F
+GL_T2F_C4UB_V3F = glcanvasc.GL_T2F_C4UB_V3F
+GL_T2F_N3F_V3F = glcanvasc.GL_T2F_N3F_V3F
+GL_T2F_V3F = glcanvasc.GL_T2F_V3F
+GL_T4F_C4F_N3F_V4F = glcanvasc.GL_T4F_C4F_N3F_V4F
+GL_T4F_V4F = glcanvasc.GL_T4F_V4F
+GL_TEXTURE = glcanvasc.GL_TEXTURE
+GL_TEXTURE_1D = glcanvasc.GL_TEXTURE_1D
+GL_TEXTURE_2D = glcanvasc.GL_TEXTURE_2D
+GL_TEXTURE_ALPHA_SIZE = glcanvasc.GL_TEXTURE_ALPHA_SIZE
+GL_TEXTURE_BINDING_1D = glcanvasc.GL_TEXTURE_BINDING_1D
+GL_TEXTURE_BINDING_2D = glcanvasc.GL_TEXTURE_BINDING_2D
+GL_TEXTURE_BIT = glcanvasc.GL_TEXTURE_BIT
+GL_TEXTURE_BLUE_SIZE = glcanvasc.GL_TEXTURE_BLUE_SIZE
+GL_TEXTURE_BORDER = glcanvasc.GL_TEXTURE_BORDER
+GL_TEXTURE_BORDER_COLOR = glcanvasc.GL_TEXTURE_BORDER_COLOR
+GL_TEXTURE_COMPONENTS = glcanvasc.GL_TEXTURE_COMPONENTS
+GL_TEXTURE_COORD_ARRAY = glcanvasc.GL_TEXTURE_COORD_ARRAY
+GL_TEXTURE_COORD_ARRAY_COUNT_EXT = glcanvasc.GL_TEXTURE_COORD_ARRAY_COUNT_EXT
+GL_TEXTURE_COORD_ARRAY_EXT = glcanvasc.GL_TEXTURE_COORD_ARRAY_EXT
+GL_TEXTURE_COORD_ARRAY_POINTER = glcanvasc.GL_TEXTURE_COORD_ARRAY_POINTER
+GL_TEXTURE_COORD_ARRAY_POINTER_EXT = glcanvasc.GL_TEXTURE_COORD_ARRAY_POINTER_EXT
+GL_TEXTURE_COORD_ARRAY_SIZE = glcanvasc.GL_TEXTURE_COORD_ARRAY_SIZE
+GL_TEXTURE_COORD_ARRAY_SIZE_EXT = glcanvasc.GL_TEXTURE_COORD_ARRAY_SIZE_EXT
+GL_TEXTURE_COORD_ARRAY_STRIDE = glcanvasc.GL_TEXTURE_COORD_ARRAY_STRIDE
+GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = glcanvasc.GL_TEXTURE_COORD_ARRAY_STRIDE_EXT
+GL_TEXTURE_COORD_ARRAY_TYPE = glcanvasc.GL_TEXTURE_COORD_ARRAY_TYPE
+GL_TEXTURE_COORD_ARRAY_TYPE_EXT = glcanvasc.GL_TEXTURE_COORD_ARRAY_TYPE_EXT
+GL_TEXTURE_ENV = glcanvasc.GL_TEXTURE_ENV
+GL_TEXTURE_ENV_COLOR = glcanvasc.GL_TEXTURE_ENV_COLOR
+GL_TEXTURE_ENV_MODE = glcanvasc.GL_TEXTURE_ENV_MODE
+GL_TEXTURE_GEN_MODE = glcanvasc.GL_TEXTURE_GEN_MODE
+GL_TEXTURE_GEN_Q = glcanvasc.GL_TEXTURE_GEN_Q
+GL_TEXTURE_GEN_R = glcanvasc.GL_TEXTURE_GEN_R
+GL_TEXTURE_GEN_S = glcanvasc.GL_TEXTURE_GEN_S
+GL_TEXTURE_GEN_T = glcanvasc.GL_TEXTURE_GEN_T
+GL_TEXTURE_GREEN_SIZE = glcanvasc.GL_TEXTURE_GREEN_SIZE
+GL_TEXTURE_HEIGHT = glcanvasc.GL_TEXTURE_HEIGHT
+GL_TEXTURE_INTENSITY_SIZE = glcanvasc.GL_TEXTURE_INTENSITY_SIZE
+GL_TEXTURE_INTERNAL_FORMAT = glcanvasc.GL_TEXTURE_INTERNAL_FORMAT
+GL_TEXTURE_LUMINANCE_SIZE = glcanvasc.GL_TEXTURE_LUMINANCE_SIZE
+GL_TEXTURE_MAG_FILTER = glcanvasc.GL_TEXTURE_MAG_FILTER
+GL_TEXTURE_MATRIX = glcanvasc.GL_TEXTURE_MATRIX
+GL_TEXTURE_MIN_FILTER = glcanvasc.GL_TEXTURE_MIN_FILTER
+GL_TEXTURE_PRIORITY = glcanvasc.GL_TEXTURE_PRIORITY
+GL_TEXTURE_RED_SIZE = glcanvasc.GL_TEXTURE_RED_SIZE
+GL_TEXTURE_RESIDENT = glcanvasc.GL_TEXTURE_RESIDENT
+GL_TEXTURE_STACK_DEPTH = glcanvasc.GL_TEXTURE_STACK_DEPTH
+GL_TEXTURE_WIDTH = glcanvasc.GL_TEXTURE_WIDTH
+GL_TEXTURE_WRAP_S = glcanvasc.GL_TEXTURE_WRAP_S
+GL_TEXTURE_WRAP_T = glcanvasc.GL_TEXTURE_WRAP_T
+GL_TRANSFORM_BIT = glcanvasc.GL_TRANSFORM_BIT
+GL_TRIANGLES = glcanvasc.GL_TRIANGLES
+GL_TRIANGLE_FAN = glcanvasc.GL_TRIANGLE_FAN
+GL_TRIANGLE_STRIP = glcanvasc.GL_TRIANGLE_STRIP
+GL_TRUE = glcanvasc.GL_TRUE
+GL_UNPACK_ALIGNMENT = glcanvasc.GL_UNPACK_ALIGNMENT
+GL_UNPACK_LSB_FIRST = glcanvasc.GL_UNPACK_LSB_FIRST
+GL_UNPACK_ROW_LENGTH = glcanvasc.GL_UNPACK_ROW_LENGTH
+GL_UNPACK_SKIP_PIXELS = glcanvasc.GL_UNPACK_SKIP_PIXELS
+GL_UNPACK_SKIP_ROWS = glcanvasc.GL_UNPACK_SKIP_ROWS
+GL_UNPACK_SWAP_BYTES = glcanvasc.GL_UNPACK_SWAP_BYTES
+GL_UNSIGNED_BYTE = glcanvasc.GL_UNSIGNED_BYTE
+GL_UNSIGNED_INT = glcanvasc.GL_UNSIGNED_INT
+GL_UNSIGNED_SHORT = glcanvasc.GL_UNSIGNED_SHORT
+GL_V2F = glcanvasc.GL_V2F
+GL_V3F = glcanvasc.GL_V3F
+GL_VENDOR = glcanvasc.GL_VENDOR
+GL_VERSION = glcanvasc.GL_VERSION
+GL_VERTEX_ARRAY = glcanvasc.GL_VERTEX_ARRAY
+GL_VERTEX_ARRAY_COUNT_EXT = glcanvasc.GL_VERTEX_ARRAY_COUNT_EXT
+GL_VERTEX_ARRAY_EXT = glcanvasc.GL_VERTEX_ARRAY_EXT
+GL_VERTEX_ARRAY_POINTER = glcanvasc.GL_VERTEX_ARRAY_POINTER
+GL_VERTEX_ARRAY_POINTER_EXT = glcanvasc.GL_VERTEX_ARRAY_POINTER_EXT
+GL_VERTEX_ARRAY_SIZE = glcanvasc.GL_VERTEX_ARRAY_SIZE
+GL_VERTEX_ARRAY_SIZE_EXT = glcanvasc.GL_VERTEX_ARRAY_SIZE_EXT
+GL_VERTEX_ARRAY_STRIDE = glcanvasc.GL_VERTEX_ARRAY_STRIDE
+GL_VERTEX_ARRAY_STRIDE_EXT = glcanvasc.GL_VERTEX_ARRAY_STRIDE_EXT
+GL_VERTEX_ARRAY_TYPE = glcanvasc.GL_VERTEX_ARRAY_TYPE
+GL_VERTEX_ARRAY_TYPE_EXT = glcanvasc.GL_VERTEX_ARRAY_TYPE_EXT
+GL_VIEWPORT = glcanvasc.GL_VIEWPORT
+GL_VIEWPORT_BIT = glcanvasc.GL_VIEWPORT_BIT
+GL_XOR = glcanvasc.GL_XOR
+GL_ZERO = glcanvasc.GL_ZERO
+GL_ZOOM_X = glcanvasc.GL_ZOOM_X
+GL_ZOOM_Y = glcanvasc.GL_ZOOM_Y
diff --git a/utils/wxPython/src/gtk/image.cpp b/utils/wxPython/src/gtk/image.cpp
new file mode 100644 (file)
index 0000000..6b70a68
--- /dev/null
@@ -0,0 +1,1587 @@
+/*
+ * FILE : gtk/image.cpp
+ * 
+ * This file was automatically generated by :
+ * Simplified Wrapper and Interface Generator (SWIG)
+ * Version 1.1 (Patch 5)
+ * 
+ * Portions Copyright (c) 1995-1998
+ * The University of Utah and The Regents of the University of California.
+ * Permission is granted to distribute this file in any manner provided
+ * this notice remains intact.
+ * 
+ * Do not make changes to this file--changes will be lost!
+ *
+ */
+
+
+#define SWIGCODE
+/* Implementation : PYTHON */
+
+#define SWIGPYTHON
+#include <string.h>
+#include <stdlib.h>
+/* Definitions for Windows/Unix exporting */
+#if defined(__WIN32__)
+#   if defined(_MSC_VER)
+#      define SWIGEXPORT(a,b) __declspec(dllexport) a b
+#   else
+#      if defined(__BORLANDC__)
+#          define SWIGEXPORT(a,b) a _export b
+#      else
+#          define SWIGEXPORT(a,b) a b
+#      endif
+#   endif
+#else
+#   define SWIGEXPORT(a,b) a b
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#include "Python.h"
+extern void SWIG_MakePtr(char *, void *, char *);
+extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
+extern char *SWIG_GetPtr(char *, void **, char *);
+extern void SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
+extern PyObject *SWIG_newvarlink(void);
+#ifdef __cplusplus
+}
+#endif
+
+#define SWIG_init    initimagec
+
+#define SWIG_name    "imagec"
+
+#include "helpers.h"
+#include <wx/image.h>
+
+static PyObject* l_output_helper(PyObject* target, PyObject* o) {
+    PyObject*   o2;
+    PyObject*   o3;
+    if (!target) {                   
+        target = o;
+    } else if (target == Py_None) {  
+        Py_DECREF(Py_None);
+        target = o;
+    } else {                         
+        if (!PyList_Check(target)) {
+            o2 = target;
+            target = PyList_New(0);
+            PyList_Append(target, o2);
+           Py_XDECREF(o2);
+        }
+        PyList_Append(target,o);
+       Py_XDECREF(o);
+    }
+    return target;
+}
+
+static PyObject* t_output_helper(PyObject* target, PyObject* o) {
+    PyObject*   o2;
+    PyObject*   o3;
+
+    if (!target) {                   
+        target = o;
+    } else if (target == Py_None) {  
+        Py_DECREF(Py_None);
+        target = o;
+    } 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);      
+
+        o2 = target;
+        target = PySequence_Concat(o2, o3); 
+        Py_DECREF(o2);                      
+        Py_DECREF(o3);
+    }
+    return target;
+}
+
+
+extern byte* byte_LIST_helper(PyObject* source);
+extern int* int_LIST_helper(PyObject* source);
+extern long* long_LIST_helper(PyObject* source);
+extern char** string_LIST_helper(PyObject* source);
+extern wxPoint* wxPoint_LIST_helper(PyObject* source);
+extern wxBitmap** wxBitmap_LIST_helper(PyObject* source);
+extern wxString* wxString_LIST_helper(PyObject* source);
+extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
+
+
+static char* wxStringErrorMsg = "string type is required for parameter";
+
+    wxImage* wxNullImage() {
+        return new wxImage;
+    }
+
+    wxImage* wxEmptyImage(int width, int height) {
+        return new wxImage(width, height);
+    }
+
+    wxImage* wxImageFromMime(const wxString& name, const wxString& mimetype) {
+        return new wxImage(name, mimetype);
+    }
+
+    wxImage* wxImageFromBitmap(const wxBitmap &bitmap) {
+        return new wxImage(bitmap);
+    }
+
+    void wxImage_AddHandler(wxImageHandler *handler) {
+        wxImage::AddHandler(handler);
+    }
+static PyObject *_wrap_wxNullImage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":wxNullImage")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImage *)wxNullImage();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImage_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxEmptyImage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _result;
+    int  _arg0;
+    int  _arg1;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ii:wxEmptyImage",&_arg0,&_arg1)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImage *)wxEmptyImage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImage_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxImageFromMime(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _result;
+    wxString * _arg0;
+    wxString * _arg1;
+    PyObject * _obj0 = 0;
+    PyObject * _obj1 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"OO:wxImageFromMime",&_obj0,&_obj1)) 
+        return NULL;
+{
+    if (!PyString_Check(_obj0)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
+}
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImage *)wxImageFromMime(*_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImage_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    if (_obj0)
+        delete _arg0;
+}
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxImageFromBitmap(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _result;
+    wxBitmap * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImageFromBitmap",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxBitmap_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageFromBitmap. Expected _wxBitmap_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImage *)wxImageFromBitmap(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImage_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxImage_AddHandler(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImageHandler * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_AddHandler",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_AddHandler. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_AddHandler(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define new_wxImageHandler() (new wxImageHandler())
+static PyObject *_wrap_new_wxImageHandler(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImageHandler * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxImageHandler")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageHandler *)new_wxImageHandler();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageHandler_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxImageHandler_GetName(_swigobj)  (_swigobj->GetName())
+static PyObject *_wrap_wxImageHandler_GetName(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxString * _result;
+    wxImageHandler * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImageHandler_GetName",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_GetName. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxImageHandler_GetName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
+    return _resultobj;
+}
+
+#define wxImageHandler_GetExtension(_swigobj)  (_swigobj->GetExtension())
+static PyObject *_wrap_wxImageHandler_GetExtension(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxString * _result;
+    wxImageHandler * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImageHandler_GetExtension",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_GetExtension. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxImageHandler_GetExtension(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
+    return _resultobj;
+}
+
+#define wxImageHandler_GetType(_swigobj)  (_swigobj->GetType())
+static PyObject *_wrap_wxImageHandler_GetType(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    long  _result;
+    wxImageHandler * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImageHandler_GetType",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_GetType. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxImageHandler_GetType(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
+    return _resultobj;
+}
+
+#define wxImageHandler_GetMimeType(_swigobj)  (_swigobj->GetMimeType())
+static PyObject *_wrap_wxImageHandler_GetMimeType(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxString * _result;
+    wxImageHandler * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImageHandler_GetMimeType",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_GetMimeType. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxImageHandler_GetMimeType(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
+    return _resultobj;
+}
+
+#define wxImageHandler_SetName(_swigobj,_swigarg0)  (_swigobj->SetName(_swigarg0))
+static PyObject *_wrap_wxImageHandler_SetName(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImageHandler * _arg0;
+    wxString * _arg1;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO:wxImageHandler_SetName",&_argc0,&_obj1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_SetName. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImageHandler_SetName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxImageHandler_SetExtension(_swigobj,_swigarg0)  (_swigobj->SetExtension(_swigarg0))
+static PyObject *_wrap_wxImageHandler_SetExtension(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImageHandler * _arg0;
+    wxString * _arg1;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO:wxImageHandler_SetExtension",&_argc0,&_obj1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_SetExtension. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImageHandler_SetExtension(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxImageHandler_SetType(_swigobj,_swigarg0)  (_swigobj->SetType(_swigarg0))
+static PyObject *_wrap_wxImageHandler_SetType(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImageHandler * _arg0;
+    long  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sl:wxImageHandler_SetType",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_SetType. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImageHandler_SetType(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImageHandler_SetMimeType(_swigobj,_swigarg0)  (_swigobj->SetMimeType(_swigarg0))
+static PyObject *_wrap_wxImageHandler_SetMimeType(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImageHandler * _arg0;
+    wxString * _arg1;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO:wxImageHandler_SetMimeType",&_argc0,&_obj1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImageHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImageHandler_SetMimeType. Expected _wxImageHandler_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImageHandler_SetMimeType(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+static void *SwigwxPNGHandlerTowxImageHandler(void *ptr) {
+    wxPNGHandler *src;
+    wxImageHandler *dest;
+    src = (wxPNGHandler *) ptr;
+    dest = (wxImageHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxPNGHandler() (new wxPNGHandler())
+static PyObject *_wrap_new_wxPNGHandler(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxPNGHandler * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxPNGHandler")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPNGHandler *)new_wxPNGHandler();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPNGHandler_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void *SwigwxJPEGHandlerTowxImageHandler(void *ptr) {
+    wxJPEGHandler *src;
+    wxImageHandler *dest;
+    src = (wxJPEGHandler *) ptr;
+    dest = (wxImageHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxJPEGHandler() (new wxJPEGHandler())
+static PyObject *_wrap_new_wxJPEGHandler(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxJPEGHandler * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxJPEGHandler")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxJPEGHandler *)new_wxJPEGHandler();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxJPEGHandler_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void *SwigwxBMPHandlerTowxImageHandler(void *ptr) {
+    wxBMPHandler *src;
+    wxImageHandler *dest;
+    src = (wxBMPHandler *) ptr;
+    dest = (wxImageHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxBMPHandler() (new wxBMPHandler())
+static PyObject *_wrap_new_wxBMPHandler(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxBMPHandler * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxBMPHandler")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBMPHandler *)new_wxBMPHandler();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBMPHandler_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void *SwigwxGIFHandlerTowxImageHandler(void *ptr) {
+    wxGIFHandler *src;
+    wxImageHandler *dest;
+    src = (wxGIFHandler *) ptr;
+    dest = (wxImageHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxGIFHandler() (new wxGIFHandler())
+static PyObject *_wrap_new_wxGIFHandler(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGIFHandler * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxGIFHandler")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGIFHandler *)new_wxGIFHandler();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGIFHandler_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define new_wxImage(_swigarg0,_swigarg1) (new wxImage(_swigarg0,_swigarg1))
+static PyObject *_wrap_new_wxImage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _result;
+    wxString * _arg0;
+    long  _arg1 = (wxBITMAP_TYPE_PNG);
+    PyObject * _obj0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"O|l:new_wxImage",&_obj0,&_arg1)) 
+        return NULL;
+{
+    if (!PyString_Check(_obj0)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImage *)new_wxImage(*_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImage_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    if (_obj0)
+        delete _arg0;
+}
+    return _resultobj;
+}
+
+#define delete_wxImage(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxImage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:delete_wxImage",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxImage. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxImage(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_ConvertToBitmap(_swigobj)  (_swigobj->ConvertToBitmap())
+static PyObject *_wrap_wxImage_ConvertToBitmap(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxBitmap * _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_ConvertToBitmap",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_ConvertToBitmap. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxBitmap (wxImage_ConvertToBitmap(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxBitmap_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxImage_Create(_swigobj,_swigarg0,_swigarg1)  (_swigobj->Create(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_Create(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    int  _arg1;
+    int  _arg2;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxImage_Create",&_argc0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_Create. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_Create(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_Destroy(_swigobj)  (_swigobj->Destroy())
+static PyObject *_wrap_wxImage_Destroy(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_Destroy",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_Destroy. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_Destroy(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_Scale(_swigobj,_swigarg0,_swigarg1)  (_swigobj->Scale(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_Scale(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _result;
+    wxImage * _arg0;
+    int  _arg1;
+    int  _arg2;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxImage_Scale",&_argc0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_Scale. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxImage (wxImage_Scale(_arg0,_arg1,_arg2));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxImage_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxImage_SetRGB(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->SetRGB(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
+static PyObject *_wrap_wxImage_SetRGB(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    int  _arg1;
+    int  _arg2;
+    unsigned char  _arg3;
+    unsigned char  _arg4;
+    unsigned char  _arg5;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"siibbb:wxImage_SetRGB",&_argc0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_SetRGB. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_SetRGB(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_GetRed(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetRed(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_GetRed(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char  _result;
+    wxImage * _arg0;
+    int  _arg1;
+    int  _arg2;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxImage_GetRed",&_argc0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetRed. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxImage_GetRed(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetGreen(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetGreen(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_GetGreen(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char  _result;
+    wxImage * _arg0;
+    int  _arg1;
+    int  _arg2;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxImage_GetGreen",&_argc0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetGreen. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxImage_GetGreen(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetBlue(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetBlue(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_GetBlue(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char  _result;
+    wxImage * _arg0;
+    int  _arg1;
+    int  _arg2;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sii:wxImage_GetBlue",&_argc0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetBlue. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxImage_GetBlue(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+#define wxImage_LoadFile(_swigobj,_swigarg0,_swigarg1)  (_swigobj->LoadFile(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_LoadFile(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxImage * _arg0;
+    wxString * _arg1;
+    long  _arg2 = (wxBITMAP_TYPE_PNG);
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sO|l:wxImage_LoadFile",&_argc0,&_obj1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_LoadFile. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImage_LoadFile(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxImage_LoadMimeFile(_swigobj,_swigarg0,_swigarg1)  (_swigobj->LoadFile(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_LoadMimeFile(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxImage * _arg0;
+    wxString * _arg1;
+    wxString * _arg2;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+    PyObject * _obj2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sOO:wxImage_LoadMimeFile",&_argc0,&_obj1,&_obj2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_LoadMimeFile. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    if (!PyString_Check(_obj2)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImage_LoadMimeFile(_arg0,*_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj1)
+        delete _arg1;
+}
+{
+    if (_obj2)
+        delete _arg2;
+}
+    return _resultobj;
+}
+
+#define wxImage_SaveFile(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SaveFile(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_SaveFile(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxImage * _arg0;
+    wxString * _arg1;
+    int  _arg2;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sOi:wxImage_SaveFile",&_argc0,&_obj1,&_arg2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_SaveFile. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImage_SaveFile(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxImage_SaveMimeFile(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SaveFile(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxImage_SaveMimeFile(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxImage * _arg0;
+    wxString * _arg1;
+    wxString * _arg2;
+    char * _argc0 = 0;
+    PyObject * _obj1 = 0;
+    PyObject * _obj2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sOO:wxImage_SaveMimeFile",&_argc0,&_obj1,&_obj2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_SaveMimeFile. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    if (!PyString_Check(_obj2)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImage_SaveMimeFile(_arg0,*_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj1)
+        delete _arg1;
+}
+{
+    if (_obj2)
+        delete _arg2;
+}
+    return _resultobj;
+}
+
+#define wxImage_Ok(_swigobj)  (_swigobj->Ok())
+static PyObject *_wrap_wxImage_Ok(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_Ok",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_Ok. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImage_Ok(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetWidth(_swigobj)  (_swigobj->GetWidth())
+static PyObject *_wrap_wxImage_GetWidth(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_GetWidth",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetWidth. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxImage_GetWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetHeight(_swigobj)  (_swigobj->GetHeight())
+static PyObject *_wrap_wxImage_GetHeight(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_GetHeight",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetHeight. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxImage_GetHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetData(_swigobj)  (_swigobj->GetData())
+static PyObject *_wrap_wxImage_GetData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char * _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_GetData",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetData. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char *)wxImage_GetData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_unsigned_char_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxImage_SetData(_swigobj,_swigarg0)  (_swigobj->SetData(_swigarg0))
+static PyObject *_wrap_wxImage_SetData(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    unsigned char * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxImage_SetData",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_SetData. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_unsigned_char_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxImage_SetData. Expected _unsigned_char_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_SetData(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_SetMaskColour(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetMaskColour(_swigarg0,_swigarg1,_swigarg2))
+static PyObject *_wrap_wxImage_SetMaskColour(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    unsigned char  _arg1;
+    unsigned char  _arg2;
+    unsigned char  _arg3;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"sbbb:wxImage_SetMaskColour",&_argc0,&_arg1,&_arg2,&_arg3)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_SetMaskColour. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_SetMaskColour(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_GetMaskRed(_swigobj)  (_swigobj->GetMaskRed())
+static PyObject *_wrap_wxImage_GetMaskRed(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_GetMaskRed",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetMaskRed. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxImage_GetMaskRed(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetMaskGreen(_swigobj)  (_swigobj->GetMaskGreen())
+static PyObject *_wrap_wxImage_GetMaskGreen(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_GetMaskGreen",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetMaskGreen. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxImage_GetMaskGreen(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+#define wxImage_GetMaskBlue(_swigobj)  (_swigobj->GetMaskBlue())
+static PyObject *_wrap_wxImage_GetMaskBlue(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    unsigned char  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_GetMaskBlue",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_GetMaskBlue. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (unsigned char )wxImage_GetMaskBlue(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("b",_result);
+    return _resultobj;
+}
+
+#define wxImage_SetMask(_swigobj,_swigarg0)  (_swigobj->SetMask(_swigarg0))
+static PyObject *_wrap_wxImage_SetMask(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxImage * _arg0;
+    bool  _arg1 = (1);
+    char * _argc0 = 0;
+    int tempbool1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s|i:wxImage_SetMask",&_argc0,&tempbool1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_SetMask. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxImage_SetMask(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxImage_HasMask(_swigobj)  (_swigobj->HasMask())
+static PyObject *_wrap_wxImage_HasMask(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxImage * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxImage_HasMask",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxImage_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_HasMask. Expected _wxImage_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxImage_HasMask(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyMethodDef imagecMethods[] = {
+        { "wxImage_HasMask", _wrap_wxImage_HasMask, 1 },
+        { "wxImage_SetMask", _wrap_wxImage_SetMask, 1 },
+        { "wxImage_GetMaskBlue", _wrap_wxImage_GetMaskBlue, 1 },
+        { "wxImage_GetMaskGreen", _wrap_wxImage_GetMaskGreen, 1 },
+        { "wxImage_GetMaskRed", _wrap_wxImage_GetMaskRed, 1 },
+        { "wxImage_SetMaskColour", _wrap_wxImage_SetMaskColour, 1 },
+        { "wxImage_SetData", _wrap_wxImage_SetData, 1 },
+        { "wxImage_GetData", _wrap_wxImage_GetData, 1 },
+        { "wxImage_GetHeight", _wrap_wxImage_GetHeight, 1 },
+        { "wxImage_GetWidth", _wrap_wxImage_GetWidth, 1 },
+        { "wxImage_Ok", _wrap_wxImage_Ok, 1 },
+        { "wxImage_SaveMimeFile", _wrap_wxImage_SaveMimeFile, 1 },
+        { "wxImage_SaveFile", _wrap_wxImage_SaveFile, 1 },
+        { "wxImage_LoadMimeFile", _wrap_wxImage_LoadMimeFile, 1 },
+        { "wxImage_LoadFile", _wrap_wxImage_LoadFile, 1 },
+        { "wxImage_GetBlue", _wrap_wxImage_GetBlue, 1 },
+        { "wxImage_GetGreen", _wrap_wxImage_GetGreen, 1 },
+        { "wxImage_GetRed", _wrap_wxImage_GetRed, 1 },
+        { "wxImage_SetRGB", _wrap_wxImage_SetRGB, 1 },
+        { "wxImage_Scale", _wrap_wxImage_Scale, 1 },
+        { "wxImage_Destroy", _wrap_wxImage_Destroy, 1 },
+        { "wxImage_Create", _wrap_wxImage_Create, 1 },
+        { "wxImage_ConvertToBitmap", _wrap_wxImage_ConvertToBitmap, 1 },
+        { "delete_wxImage", _wrap_delete_wxImage, 1 },
+        { "new_wxImage", _wrap_new_wxImage, 1 },
+        { "new_wxGIFHandler", _wrap_new_wxGIFHandler, 1 },
+        { "new_wxBMPHandler", _wrap_new_wxBMPHandler, 1 },
+        { "new_wxJPEGHandler", _wrap_new_wxJPEGHandler, 1 },
+        { "new_wxPNGHandler", _wrap_new_wxPNGHandler, 1 },
+        { "wxImageHandler_SetMimeType", _wrap_wxImageHandler_SetMimeType, 1 },
+        { "wxImageHandler_SetType", _wrap_wxImageHandler_SetType, 1 },
+        { "wxImageHandler_SetExtension", _wrap_wxImageHandler_SetExtension, 1 },
+        { "wxImageHandler_SetName", _wrap_wxImageHandler_SetName, 1 },
+        { "wxImageHandler_GetMimeType", _wrap_wxImageHandler_GetMimeType, 1 },
+        { "wxImageHandler_GetType", _wrap_wxImageHandler_GetType, 1 },
+        { "wxImageHandler_GetExtension", _wrap_wxImageHandler_GetExtension, 1 },
+        { "wxImageHandler_GetName", _wrap_wxImageHandler_GetName, 1 },
+        { "new_wxImageHandler", _wrap_new_wxImageHandler, 1 },
+        { "wxImage_AddHandler", _wrap_wxImage_AddHandler, 1 },
+        { "wxImageFromBitmap", _wrap_wxImageFromBitmap, 1 },
+        { "wxImageFromMime", _wrap_wxImageFromMime, 1 },
+        { "wxEmptyImage", _wrap_wxEmptyImage, 1 },
+        { "wxNullImage", _wrap_wxNullImage, 1 },
+        { NULL, NULL }
+};
+static PyObject *SWIG_globals;
+#ifdef __cplusplus
+extern "C" 
+#endif
+SWIGEXPORT(void,initimagec)() {
+        PyObject *m, *d;
+        SWIG_globals = SWIG_newvarlink();
+        m = Py_InitModule("imagec", imagecMethods);
+        d = PyModule_GetDict(m);
+/*
+ * These are the pointer type-equivalency mappings. 
+ * (Used by the SWIG pointer type-checker).
+ */
+        SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_signed_long","_long",0);
+        SWIG_RegisterMapping("_class_wxJPEGHandler","_wxJPEGHandler",0);
+        SWIG_RegisterMapping("_wxBMPHandler","_class_wxBMPHandler",0);
+        SWIG_RegisterMapping("_wxImage","_class_wxImage",0);
+        SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
+        SWIG_RegisterMapping("_wxGIFHandler","_class_wxGIFHandler",0);
+        SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxGIFHandler",SwigwxGIFHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_wxGIFHandler",SwigwxGIFHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxBMPHandler",SwigwxBMPHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_wxBMPHandler",SwigwxBMPHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxJPEGHandler",SwigwxJPEGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_wxJPEGHandler",SwigwxJPEGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxPNGHandler",SwigwxPNGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_wxPNGHandler",SwigwxPNGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxImageHandler",0);
+        SWIG_RegisterMapping("_wxToolTip","_class_wxToolTip",0);
+        SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
+        SWIG_RegisterMapping("_wxPNGHandler","_class_wxPNGHandler",0);
+        SWIG_RegisterMapping("_wxPen","_class_wxPen",0);
+        SWIG_RegisterMapping("_byte","_unsigned_char",0);
+        SWIG_RegisterMapping("_long","_wxDash",0);
+        SWIG_RegisterMapping("_long","_unsigned_long",0);
+        SWIG_RegisterMapping("_long","_signed_long",0);
+        SWIG_RegisterMapping("_wxImageList","_class_wxImageList",0);
+        SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
+        SWIG_RegisterMapping("_class_wxBMPHandler","_wxBMPHandler",0);
+        SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
+        SWIG_RegisterMapping("_class_wxGIFHandler","_wxGIFHandler",0);
+        SWIG_RegisterMapping("_class_wxPostScriptDC","_wxPostScriptDC",0);
+        SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
+        SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
+        SWIG_RegisterMapping("_class_wxPNGHandler","_wxPNGHandler",0);
+        SWIG_RegisterMapping("_wxColour","_class_wxColour",0);
+        SWIG_RegisterMapping("_wxBrush","_class_wxBrush",0);
+        SWIG_RegisterMapping("_uint","_unsigned_int",0);
+        SWIG_RegisterMapping("_uint","_int",0);
+        SWIG_RegisterMapping("_uint","_wxWindowID",0);
+        SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
+        SWIG_RegisterMapping("_class_wxImage","_wxImage",0);
+        SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
+        SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
+        SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
+        SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_EBool","_signed_int",0);
+        SWIG_RegisterMapping("_EBool","_int",0);
+        SWIG_RegisterMapping("_EBool","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxRegion","_wxRegion",0);
+        SWIG_RegisterMapping("_wxFont","_class_wxFont",0);
+        SWIG_RegisterMapping("_unsigned_long","_wxDash",0);
+        SWIG_RegisterMapping("_unsigned_long","_long",0);
+        SWIG_RegisterMapping("_class_wxRect","_wxRect",0);
+        SWIG_RegisterMapping("_class_wxDC","_wxDC",0);
+        SWIG_RegisterMapping("_class_wxPyTimer","_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxAcceleratorEntry","_class_wxAcceleratorEntry",0);
+        SWIG_RegisterMapping("_signed_int","_EBool",0);
+        SWIG_RegisterMapping("_signed_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_signed_int","_int",0);
+        SWIG_RegisterMapping("_wxLayoutConstraints","_class_wxLayoutConstraints",0);
+        SWIG_RegisterMapping("_wxScreenDC","_class_wxScreenDC",0);
+        SWIG_RegisterMapping("_WXTYPE","_short",0);
+        SWIG_RegisterMapping("_WXTYPE","_signed_short",0);
+        SWIG_RegisterMapping("_WXTYPE","_unsigned_short",0);
+        SWIG_RegisterMapping("_class_wxBrush","_wxBrush",0);
+        SWIG_RegisterMapping("_unsigned_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_unsigned_short","_short",0);
+        SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
+        SWIG_RegisterMapping("_wxClientDC","_class_wxClientDC",0);
+        SWIG_RegisterMapping("_class_wxPoint","_wxPoint",0);
+        SWIG_RegisterMapping("_wxRealPoint","_class_wxRealPoint",0);
+        SWIG_RegisterMapping("_signed_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_signed_short","_short",0);
+        SWIG_RegisterMapping("_wxMemoryDC","_class_wxMemoryDC",0);
+        SWIG_RegisterMapping("_wxPaintDC","_class_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxWindowDC","_wxWindowDC",0);
+        SWIG_RegisterMapping("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
+        SWIG_RegisterMapping("_class_wxCursor","_wxCursor",0);
+        SWIG_RegisterMapping("_wxPostScriptDC","_class_wxPostScriptDC",0);
+        SWIG_RegisterMapping("_class_wxImageHandler","_class_wxGIFHandler",SwigwxGIFHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxGIFHandler",SwigwxGIFHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_class_wxBMPHandler",SwigwxBMPHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxBMPHandler",SwigwxBMPHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_class_wxJPEGHandler",SwigwxJPEGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxJPEGHandler",SwigwxJPEGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_class_wxPNGHandler",SwigwxPNGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxPNGHandler",SwigwxPNGHandlerTowxImageHandler);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxImageHandler",0);
+        SWIG_RegisterMapping("_unsigned_char","_byte",0);
+        SWIG_RegisterMapping("_unsigned_int","_uint",0);
+        SWIG_RegisterMapping("_unsigned_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_unsigned_int","_int",0);
+        SWIG_RegisterMapping("_wxIcon","_class_wxIcon",0);
+        SWIG_RegisterMapping("_class_wxPen","_wxPen",0);
+        SWIG_RegisterMapping("_short","_WXTYPE",0);
+        SWIG_RegisterMapping("_short","_unsigned_short",0);
+        SWIG_RegisterMapping("_short","_signed_short",0);
+        SWIG_RegisterMapping("_class_wxImageList","_wxImageList",0);
+        SWIG_RegisterMapping("_wxJPEGHandler","_class_wxJPEGHandler",0);
+        SWIG_RegisterMapping("_wxWindowID","_EBool",0);
+        SWIG_RegisterMapping("_wxWindowID","_uint",0);
+        SWIG_RegisterMapping("_wxWindowID","_int",0);
+        SWIG_RegisterMapping("_wxWindowID","_signed_int",0);
+        SWIG_RegisterMapping("_wxWindowID","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_EBool",0);
+        SWIG_RegisterMapping("_int","_uint",0);
+        SWIG_RegisterMapping("_int","_wxWindowID",0);
+        SWIG_RegisterMapping("_int","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_signed_int",0);
+        SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
+        SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
+        SWIG_RegisterMapping("_class_wxPaintDC","_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxLayoutConstraints","_wxLayoutConstraints",0);
+        SWIG_RegisterMapping("_class_wxIcon","_wxIcon",0);
+        SWIG_RegisterMapping("_class_wxColour","_wxColour",0);
+        SWIG_RegisterMapping("_class_wxScreenDC","_wxScreenDC",0);
+        SWIG_RegisterMapping("_wxPalette","_class_wxPalette",0);
+        SWIG_RegisterMapping("_wxRegion","_class_wxRegion",0);
+        SWIG_RegisterMapping("_class_wxClientDC","_wxClientDC",0);
+        SWIG_RegisterMapping("_class_wxSize","_wxSize",0);
+        SWIG_RegisterMapping("_class_wxBitmap","_wxBitmap",0);
+        SWIG_RegisterMapping("_class_wxMemoryDC","_wxMemoryDC",0);
+        SWIG_RegisterMapping("_wxDash","_unsigned_long",0);
+        SWIG_RegisterMapping("_wxDash","_long",0);
+        SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
+}
diff --git a/utils/wxPython/src/gtk/image.py b/utils/wxPython/src/gtk/image.py
new file mode 100644 (file)
index 0000000..6743bf9
--- /dev/null
@@ -0,0 +1,226 @@
+# This file was created automatically by SWIG.
+import imagec
+
+from misc import *
+
+from gdi import *
+class wxImageHandlerPtr :
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def GetName(self):
+        val = imagec.wxImageHandler_GetName(self.this)
+        return val
+    def GetExtension(self):
+        val = imagec.wxImageHandler_GetExtension(self.this)
+        return val
+    def GetType(self):
+        val = imagec.wxImageHandler_GetType(self.this)
+        return val
+    def GetMimeType(self):
+        val = imagec.wxImageHandler_GetMimeType(self.this)
+        return val
+    def SetName(self,arg0):
+        val = imagec.wxImageHandler_SetName(self.this,arg0)
+        return val
+    def SetExtension(self,arg0):
+        val = imagec.wxImageHandler_SetExtension(self.this,arg0)
+        return val
+    def SetType(self,arg0):
+        val = imagec.wxImageHandler_SetType(self.this,arg0)
+        return val
+    def SetMimeType(self,arg0):
+        val = imagec.wxImageHandler_SetMimeType(self.this,arg0)
+        return val
+    def __repr__(self):
+        return "<C wxImageHandler instance>"
+class wxImageHandler(wxImageHandlerPtr):
+    def __init__(self) :
+        self.this = imagec.new_wxImageHandler()
+        self.thisown = 1
+
+
+
+
+class wxPNGHandlerPtr(wxImageHandlerPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxPNGHandler instance>"
+class wxPNGHandler(wxPNGHandlerPtr):
+    def __init__(self) :
+        self.this = imagec.new_wxPNGHandler()
+        self.thisown = 1
+
+
+
+
+class wxJPEGHandlerPtr(wxImageHandlerPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxJPEGHandler instance>"
+class wxJPEGHandler(wxJPEGHandlerPtr):
+    def __init__(self) :
+        self.this = imagec.new_wxJPEGHandler()
+        self.thisown = 1
+
+
+
+
+class wxBMPHandlerPtr(wxImageHandlerPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxBMPHandler instance>"
+class wxBMPHandler(wxBMPHandlerPtr):
+    def __init__(self) :
+        self.this = imagec.new_wxBMPHandler()
+        self.thisown = 1
+
+
+
+
+class wxGIFHandlerPtr(wxImageHandlerPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxGIFHandler instance>"
+class wxGIFHandler(wxGIFHandlerPtr):
+    def __init__(self) :
+        self.this = imagec.new_wxGIFHandler()
+        self.thisown = 1
+
+
+
+
+class wxImagePtr :
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __del__(self):
+        if self.thisown == 1 :
+            imagec.delete_wxImage(self.this)
+    def ConvertToBitmap(self):
+        val = imagec.wxImage_ConvertToBitmap(self.this)
+        val = wxBitmapPtr(val)
+        val.thisown = 1
+        return val
+    def Create(self,arg0,arg1):
+        val = imagec.wxImage_Create(self.this,arg0,arg1)
+        return val
+    def Destroy(self):
+        val = imagec.wxImage_Destroy(self.this)
+        return val
+    def Scale(self,arg0,arg1):
+        val = imagec.wxImage_Scale(self.this,arg0,arg1)
+        val = wxImagePtr(val)
+        val.thisown = 1
+        return val
+    def SetRGB(self,arg0,arg1,arg2,arg3,arg4):
+        val = imagec.wxImage_SetRGB(self.this,arg0,arg1,arg2,arg3,arg4)
+        return val
+    def GetRed(self,arg0,arg1):
+        val = imagec.wxImage_GetRed(self.this,arg0,arg1)
+        return val
+    def GetGreen(self,arg0,arg1):
+        val = imagec.wxImage_GetGreen(self.this,arg0,arg1)
+        return val
+    def GetBlue(self,arg0,arg1):
+        val = imagec.wxImage_GetBlue(self.this,arg0,arg1)
+        return val
+    def LoadFile(self,arg0,*args):
+        val = apply(imagec.wxImage_LoadFile,(self.this,arg0,)+args)
+        return val
+    def LoadMimeFile(self,arg0,arg1):
+        val = imagec.wxImage_LoadMimeFile(self.this,arg0,arg1)
+        return val
+    def SaveFile(self,arg0,arg1):
+        val = imagec.wxImage_SaveFile(self.this,arg0,arg1)
+        return val
+    def SaveMimeFile(self,arg0,arg1):
+        val = imagec.wxImage_SaveMimeFile(self.this,arg0,arg1)
+        return val
+    def Ok(self):
+        val = imagec.wxImage_Ok(self.this)
+        return val
+    def GetWidth(self):
+        val = imagec.wxImage_GetWidth(self.this)
+        return val
+    def GetHeight(self):
+        val = imagec.wxImage_GetHeight(self.this)
+        return val
+    def GetData(self):
+        val = imagec.wxImage_GetData(self.this)
+        return val
+    def SetData(self,arg0):
+        val = imagec.wxImage_SetData(self.this,arg0)
+        return val
+    def SetMaskColour(self,arg0,arg1,arg2):
+        val = imagec.wxImage_SetMaskColour(self.this,arg0,arg1,arg2)
+        return val
+    def GetMaskRed(self):
+        val = imagec.wxImage_GetMaskRed(self.this)
+        return val
+    def GetMaskGreen(self):
+        val = imagec.wxImage_GetMaskGreen(self.this)
+        return val
+    def GetMaskBlue(self):
+        val = imagec.wxImage_GetMaskBlue(self.this)
+        return val
+    def SetMask(self,*args):
+        val = apply(imagec.wxImage_SetMask,(self.this,)+args)
+        return val
+    def HasMask(self):
+        val = imagec.wxImage_HasMask(self.this)
+        return val
+    def __repr__(self):
+        return "<C wxImage instance>"
+class wxImage(wxImagePtr):
+    def __init__(self,arg0,*args) :
+        self.this = apply(imagec.new_wxImage,(arg0,)+args)
+        self.thisown = 1
+
+
+
+
+
+
+#-------------- FUNCTION WRAPPERS ------------------
+
+def wxNullImage():
+    val = imagec.wxNullImage()
+    val = wxImagePtr(val)
+    val.thisown = 1
+    return val
+
+def wxEmptyImage(arg0,arg1):
+    val = imagec.wxEmptyImage(arg0,arg1)
+    val = wxImagePtr(val)
+    val.thisown = 1
+    return val
+
+def wxImageFromMime(arg0,arg1):
+    val = imagec.wxImageFromMime(arg0,arg1)
+    val = wxImagePtr(val)
+    val.thisown = 1
+    return val
+
+def wxImageFromBitmap(arg0):
+    val = imagec.wxImageFromBitmap(arg0.this)
+    val = wxImagePtr(val)
+    val.thisown = 1
+    return val
+
+def wxImage_AddHandler(arg0):
+    val = imagec.wxImage_AddHandler(arg0.this)
+    return val
+
+
+
+#-------------- VARIABLE WRAPPERS ------------------
+
index 3ccfd726e08bb7d7cc682c880bdf32b4d0496121..9f6cc05dea1370812db54024f5cb84feaea50c67 100644 (file)
@@ -169,7 +169,7 @@ static PyObject *_wrap_new_wxMDIParentFrame(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -183,8 +183,12 @@ static PyObject *_wrap_new_wxMDIParentFrame(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMDIParentFrame *)new_wxMDIParentFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIParentFrame_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMDIParentFrame *)new_wxMDIParentFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIParentFrame_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -208,8 +212,12 @@ static PyObject *_wrap_wxMDIParentFrame_ActivateNext(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxMDIParentFrame_ActivateNext(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIParentFrame_ActivateNext(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -229,8 +237,12 @@ static PyObject *_wrap_wxMDIParentFrame_ActivatePrevious(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxMDIParentFrame_ActivatePrevious(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIParentFrame_ActivatePrevious(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -250,8 +262,12 @@ static PyObject *_wrap_wxMDIParentFrame_ArrangeIcons(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxMDIParentFrame_ArrangeIcons(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIParentFrame_ArrangeIcons(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -271,8 +287,12 @@ static PyObject *_wrap_wxMDIParentFrame_Cascade(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxMDIParentFrame_Cascade(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIParentFrame_Cascade(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -294,8 +314,12 @@ static PyObject *_wrap_wxMDIParentFrame_GetActiveChild(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (wxMDIChildFrame *)wxMDIParentFrame_GetActiveChild(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIChildFrame_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMDIChildFrame *)wxMDIParentFrame_GetActiveChild(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIChildFrame_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -317,8 +341,12 @@ static PyObject *_wrap_wxMDIParentFrame_GetClientWindow(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (wxMDIClientWindow *)wxMDIParentFrame_GetClientWindow(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIClientWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMDIClientWindow *)wxMDIParentFrame_GetClientWindow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIClientWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -340,8 +368,12 @@ static PyObject *_wrap_wxMDIParentFrame_GetToolBar(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxWindow *)wxMDIParentFrame_GetToolBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxMDIParentFrame_GetToolBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -361,8 +393,12 @@ static PyObject *_wrap_wxMDIParentFrame_Tile(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxMDIParentFrame_Tile(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIParentFrame_Tile(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -422,7 +458,7 @@ static PyObject *_wrap_new_wxMDIChildFrame(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -436,8 +472,12 @@ static PyObject *_wrap_new_wxMDIChildFrame(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMDIChildFrame *)new_wxMDIChildFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIChildFrame_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMDIChildFrame *)new_wxMDIChildFrame(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIChildFrame_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -461,20 +501,26 @@ static PyObject *_wrap_wxMDIChildFrame_Activate(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxMDIChildFrame_Activate(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIChildFrame_Activate(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxMDIChildFrame_Maximize(_swigobj)  (_swigobj->Maximize())
+#define wxMDIChildFrame_Maximize(_swigobj,_swigarg0)  (_swigobj->Maximize(_swigarg0))
 static PyObject *_wrap_wxMDIChildFrame_Maximize(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxMDIChildFrame * _arg0;
+    bool  _arg1;
     char * _argc0 = 0;
+    int tempbool1;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMDIChildFrame_Maximize",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"si:wxMDIChildFrame_Maximize",&_argc0,&tempbool1)) 
         return NULL;
     if (_argc0) {
         if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMDIChildFrame_p")) {
@@ -482,8 +528,13 @@ static PyObject *_wrap_wxMDIChildFrame_Maximize(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxMDIChildFrame_Maximize(_arg0);
-    Py_INCREF(Py_None);
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIChildFrame_Maximize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -503,8 +554,12 @@ static PyObject *_wrap_wxMDIChildFrame_Restore(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxMDIChildFrame_Restore(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMDIChildFrame_Restore(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -543,8 +598,12 @@ static PyObject *_wrap_new_wxMDIClientWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMDIClientWindow *)new_wxMDIClientWindow(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIClientWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMDIClientWindow *)new_wxMDIClientWindow(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMDIClientWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -624,6 +683,7 @@ SWIGEXPORT(void,initmdic)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -654,6 +714,7 @@ SWIGEXPORT(void,initmdic)() {
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_wxMDIChildFrame","_class_wxMDIChildFrame",0);
index b878c8dc130835bebd5bc6d950c34e6176b6abf9..89f8f30eea24b5349badb2417af89642da02b451 100644 (file)
@@ -70,8 +70,8 @@ class wxMDIChildFramePtr(wxFramePtr):
     def Activate(self):
         val = mdic.wxMDIChildFrame_Activate(self.this)
         return val
-    def Maximize(self):
-        val = mdic.wxMDIChildFrame_Maximize(self.this)
+    def Maximize(self,arg0):
+        val = mdic.wxMDIChildFrame_Maximize(self.this,arg0)
         return val
     def Restore(self):
         val = mdic.wxMDIChildFrame_Restore(self.this)
index 98b0862220d4bb1d620f73145e7b53bf0aaf7204..1cbc459b8cc357b4e724a940901db86033a06aeb 100644 (file)
@@ -153,8 +153,12 @@ static PyObject *_wrap_wxFileSelector(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxFileSelector(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxFileSelector(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -187,7 +191,7 @@ static PyObject *_wrap_wxGetTextFromUser(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     if (_obj1)
 {
@@ -195,7 +199,7 @@ static PyObject *_wrap_wxGetTextFromUser(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_obj2)
 {
@@ -203,7 +207,7 @@ static PyObject *_wrap_wxGetTextFromUser(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxWindow_p")) {
@@ -212,8 +216,12 @@ static PyObject *_wrap_wxGetTextFromUser(PyObject *self, PyObject *args) {
         }
     }
     _arg6 = (bool ) tempbool6;
-    _result = new wxString (wxGetTextFromUser(*_arg0,*_arg1,*_arg2,_arg3,_arg4,_arg5,_arg6));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxGetTextFromUser(*_arg0,*_arg1,*_arg2,_arg3,_arg4,_arg5,_arg6));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -261,14 +269,14 @@ static PyObject *_wrap_wxGetSingleChoice(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
 {
     if (!PyString_Check(_obj1)) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_obj3)
 {
@@ -285,10 +293,19 @@ static PyObject *_wrap_wxGetSingleChoice(PyObject *self, PyObject *args) {
     }
     _arg7 = (bool ) tempbool7;
 {
-    _arg2 = PyList_Size(_obj3);
+    if (_obj3) {
+        _arg2 = PyList_Size(_obj3);
+    }
+    else {
+        _arg2 = 0;
+    }
 }
-    _result = new wxString (wxGetSingleChoice(*_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8,_arg9));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxGetSingleChoice(*_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8,_arg9));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -335,14 +352,14 @@ static PyObject *_wrap_wxGetSingleChoiceIndex(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
 {
     if (!PyString_Check(_obj1)) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_obj3)
 {
@@ -359,10 +376,19 @@ static PyObject *_wrap_wxGetSingleChoiceIndex(PyObject *self, PyObject *args) {
     }
     _arg7 = (bool ) tempbool7;
 {
-    _arg2 = PyList_Size(_obj3);
+    if (_obj3) {
+        _arg2 = PyList_Size(_obj3);
+    }
+    else {
+        _arg2 = 0;
+    }
 }
-    _result = (int )wxGetSingleChoiceIndex(*_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8,_arg9);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGetSingleChoiceIndex(*_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6,_arg7,_arg8,_arg9);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj0)
         delete _arg0;
@@ -398,7 +424,7 @@ static PyObject *_wrap_wxMessageBox(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     if (_obj1)
 {
@@ -406,7 +432,7 @@ static PyObject *_wrap_wxMessageBox(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxWindow_p")) {
@@ -414,8 +440,12 @@ static PyObject *_wrap_wxMessageBox(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxMessageBox(*_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMessageBox(*_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj0)
         delete _arg0;
@@ -434,8 +464,12 @@ static PyObject *_wrap_wxColourDisplay(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxColourDisplay")) 
         return NULL;
-    _result = (bool )wxColourDisplay();
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxColourDisplay();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -446,8 +480,12 @@ static PyObject *_wrap_wxDisplayDepth(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxDisplayDepth")) 
         return NULL;
-    _result = (int )wxDisplayDepth();
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDisplayDepth();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -465,8 +503,45 @@ static PyObject *_wrap_wxSetCursor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSetCursor(*_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSetCursor(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxNewId(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    long  _result;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":wxNewId")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxNewId();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxRegisterId(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    long  _arg0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"l:wxRegisterId",&_arg0)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRegisterId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -478,8 +553,12 @@ static PyObject *_wrap_NewId(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":NewId")) 
         return NULL;
-    _result = (long )NewId();
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxNewId();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -490,8 +569,12 @@ static PyObject *_wrap_RegisterId(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"l:RegisterId",&_arg0)) 
         return NULL;
-    RegisterId(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRegisterId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -510,8 +593,12 @@ static PyObject *_wrap_wxBeginBusyCursor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxBeginBusyCursor(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBeginBusyCursor(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -522,8 +609,12 @@ static PyObject *_wrap_wxBell(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxBell")) 
         return NULL;
-    wxBell();
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBell();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -544,8 +635,12 @@ static PyObject *_wrap_wxDisplaySize(PyObject *self, PyObject *args) {
 }
     if(!PyArg_ParseTuple(args,":wxDisplaySize")) 
         return NULL;
-    wxDisplaySize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDisplaySize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -566,8 +661,12 @@ static PyObject *_wrap_wxEndBusyCursor(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxEndBusyCursor")) 
         return NULL;
-    wxEndBusyCursor();
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEndBusyCursor();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -588,11 +687,15 @@ static PyObject *_wrap_wxExecute(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     _arg1 = (bool ) tempbool1;
-    _result = (long )wxExecute(*_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxExecute(*_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj0)
         delete _arg0;
@@ -617,7 +720,7 @@ static PyObject *_wrap_wxFindWindowByLabel(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
@@ -625,8 +728,12 @@ static PyObject *_wrap_wxFindWindowByLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxFindWindowByLabel(*_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxFindWindowByLabel(*_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -652,7 +759,7 @@ static PyObject *_wrap_wxFindWindowByName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     if (_argc1) {
         if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
@@ -660,8 +767,12 @@ static PyObject *_wrap_wxFindWindowByName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxFindWindowByName(*_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxFindWindowByName(*_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -686,8 +797,12 @@ static PyObject *_wrap_wxGetMousePosition(PyObject *self, PyObject *args) {
 }
     if(!PyArg_ParseTuple(args,":wxGetMousePosition")) 
         return NULL;
-    wxGetMousePosition(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGetMousePosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -709,8 +824,12 @@ static PyObject *_wrap_wxIsBusy(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxIsBusy")) 
         return NULL;
-    _result = (bool )wxIsBusy();
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxIsBusy();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -721,8 +840,12 @@ static PyObject *_wrap_wxNow(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxNow")) 
         return NULL;
-    _result = new wxString (wxNow());
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxNow());
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -738,8 +861,28 @@ static PyObject *_wrap_wxYield(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxYield")) 
         return NULL;
-    _result = (bool )wxYield();
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxYield();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static PyObject *_wrap_wxSafeYield(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":wxSafeYield")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSafeYield();
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -753,8 +896,12 @@ static PyObject *_wrap_wxGetResource(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"ss|s:wxGetResource",&_arg0,&_arg1,&_arg2)) 
         return NULL;
-    _result = (char *)wxGetResource(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("s", _result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (char *)wxGetResource(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("s", _result);
     return _resultobj;
 }
 
@@ -767,8 +914,12 @@ static PyObject *_wrap_wxResourceAddIdentifier(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"si:wxResourceAddIdentifier",&_arg0,&_arg1)) 
         return NULL;
-    _result = (bool )wxResourceAddIdentifier(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxResourceAddIdentifier(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -778,8 +929,12 @@ static PyObject *_wrap_wxResourceClear(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":wxResourceClear")) 
         return NULL;
-    wxResourceClear();
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxResourceClear();
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -793,8 +948,12 @@ static PyObject *_wrap_wxResourceCreateBitmap(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"s:wxResourceCreateBitmap",&_arg0)) 
         return NULL;
-    _result = new wxBitmap (wxResourceCreateBitmap(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxBitmap (wxResourceCreateBitmap(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -808,8 +967,12 @@ static PyObject *_wrap_wxResourceCreateIcon(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"s:wxResourceCreateIcon",&_arg0)) 
         return NULL;
-    _result = new wxIcon (wxResourceCreateIcon(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxIcon_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxIcon (wxResourceCreateIcon(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxIcon_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -823,8 +986,12 @@ static PyObject *_wrap_wxResourceCreateMenuBar(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"s:wxResourceCreateMenuBar",&_arg0)) 
         return NULL;
-    _result = (wxMenuBar *)wxResourceCreateMenuBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenuBar *)wxResourceCreateMenuBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -837,8 +1004,12 @@ static PyObject *_wrap_wxResourceGetIdentifier(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"s:wxResourceGetIdentifier",&_arg0)) 
         return NULL;
-    _result = (int )wxResourceGetIdentifier(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxResourceGetIdentifier(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -858,8 +1029,12 @@ static PyObject *_wrap_wxResourceParseData(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxResourceParseData(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxResourceParseData(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -879,8 +1054,12 @@ static PyObject *_wrap_wxResourceParseFile(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxResourceParseFile(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxResourceParseFile(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -900,8 +1079,12 @@ static PyObject *_wrap_wxResourceParseString(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxResourceParseString(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxResourceParseString(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -914,8 +1097,12 @@ static PyObject *_wrap_wxToolTip_Enable(PyObject *self, PyObject *args) {
     if(!PyArg_ParseTuple(args,"i:wxToolTip_Enable",&tempbool0)) 
         return NULL;
     _arg0 = (bool ) tempbool0;
-    wxToolTip_Enable(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolTip_Enable(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -927,8 +1114,12 @@ static PyObject *_wrap_wxToolTip_SetDelay(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"l:wxToolTip_SetDelay",&_arg0)) 
         return NULL;
-    wxToolTip_SetDelay(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolTip_SetDelay(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -950,8 +1141,12 @@ static PyObject *_wrap_wxSize_x_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxSize_x_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxSize_x_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -971,8 +1166,12 @@ static PyObject *_wrap_wxSize_x_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxSize_x_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxSize_x_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -993,8 +1192,12 @@ static PyObject *_wrap_wxSize_y_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxSize_y_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxSize_y_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1014,8 +1217,12 @@ static PyObject *_wrap_wxSize_y_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxSize_y_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxSize_y_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1030,8 +1237,12 @@ static PyObject *_wrap_new_wxSize(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"|ll:new_wxSize",&_arg0,&_arg1)) 
         return NULL;
-    _result = (wxSize *)new_wxSize(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSize *)new_wxSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1051,8 +1262,12 @@ static PyObject *_wrap_delete_wxSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxSize(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1074,8 +1289,12 @@ static PyObject *_wrap_wxSize_Set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSize_Set(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSize_Set(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1096,8 +1315,12 @@ static PyObject *_wrap_wxSize_GetX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxSize_GetX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxSize_GetX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1117,8 +1340,12 @@ static PyObject *_wrap_wxSize_GetY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxSize_GetY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxSize_GetY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1143,8 +1370,12 @@ static PyObject *_wrap_wxSize_asTuple(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxSize_asTuple(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxSize_asTuple(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -1167,8 +1398,12 @@ static PyObject *_wrap_wxRealPoint_x_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (double )wxRealPoint_x_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("d",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (double )wxRealPoint_x_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("d",_result);
     return _resultobj;
 }
 
@@ -1188,8 +1423,12 @@ static PyObject *_wrap_wxRealPoint_x_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (double )wxRealPoint_x_get(_arg0);
-    _resultobj = Py_BuildValue("d",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (double )wxRealPoint_x_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("d",_result);
     return _resultobj;
 }
 
@@ -1210,8 +1449,12 @@ static PyObject *_wrap_wxRealPoint_y_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (double )wxRealPoint_y_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("d",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (double )wxRealPoint_y_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("d",_result);
     return _resultobj;
 }
 
@@ -1231,8 +1474,12 @@ static PyObject *_wrap_wxRealPoint_y_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (double )wxRealPoint_y_get(_arg0);
-    _resultobj = Py_BuildValue("d",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (double )wxRealPoint_y_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("d",_result);
     return _resultobj;
 }
 
@@ -1247,8 +1494,12 @@ static PyObject *_wrap_new_wxRealPoint(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"|dd:new_wxRealPoint",&_arg0,&_arg1)) 
         return NULL;
-    _result = (wxRealPoint *)new_wxRealPoint(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRealPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRealPoint *)new_wxRealPoint(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRealPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1268,8 +1519,12 @@ static PyObject *_wrap_delete_wxRealPoint(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxRealPoint(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxRealPoint(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1291,8 +1546,12 @@ static PyObject *_wrap_wxPoint_x_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxPoint_x_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxPoint_x_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1312,8 +1571,12 @@ static PyObject *_wrap_wxPoint_x_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxPoint_x_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxPoint_x_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1334,8 +1597,12 @@ static PyObject *_wrap_wxPoint_y_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxPoint_y_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxPoint_y_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1355,8 +1622,12 @@ static PyObject *_wrap_wxPoint_y_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxPoint_y_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxPoint_y_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1371,8 +1642,12 @@ static PyObject *_wrap_new_wxPoint(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"|ll:new_wxPoint",&_arg0,&_arg1)) 
         return NULL;
-    _result = (wxPoint *)new_wxPoint(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPoint *)new_wxPoint(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1392,8 +1667,12 @@ static PyObject *_wrap_delete_wxPoint(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxPoint(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPoint(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1418,8 +1697,12 @@ static PyObject *_wrap_wxPoint_Set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPoint_Set(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPoint_Set(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1445,8 +1728,12 @@ static PyObject *_wrap_wxPoint_asTuple(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxPoint_asTuple(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxPoint_asTuple(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -1465,8 +1752,12 @@ static PyObject *_wrap_new_wxRect(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"|llll:new_wxRect",&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
-    _result = (wxRect *)new_wxRect(_arg0,_arg1,_arg2,_arg3);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRect *)new_wxRect(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1486,8 +1777,12 @@ static PyObject *_wrap_delete_wxRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxRect(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxRect(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1508,8 +1803,12 @@ static PyObject *_wrap_wxRect_GetX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1529,8 +1828,12 @@ static PyObject *_wrap_wxRect_SetX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRect_SetX(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRect_SetX(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1551,8 +1854,12 @@ static PyObject *_wrap_wxRect_GetY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1572,8 +1879,12 @@ static PyObject *_wrap_wxRect_SetY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRect_SetY(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRect_SetY(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1594,8 +1905,12 @@ static PyObject *_wrap_wxRect_GetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetWidth(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1615,8 +1930,12 @@ static PyObject *_wrap_wxRect_SetWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRect_SetWidth(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRect_SetWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1637,8 +1956,12 @@ static PyObject *_wrap_wxRect_GetHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetHeight(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1658,8 +1981,12 @@ static PyObject *_wrap_wxRect_SetHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRect_SetHeight(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRect_SetHeight(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1681,8 +2008,12 @@ static PyObject *_wrap_wxRect_GetPosition(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxPoint (wxRect_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxRect_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1704,8 +2035,12 @@ static PyObject *_wrap_wxRect_GetSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxSize (wxRect_GetSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxRect_GetSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1726,8 +2061,12 @@ static PyObject *_wrap_wxRect_GetLeft(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetLeft(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetLeft(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1747,8 +2086,12 @@ static PyObject *_wrap_wxRect_GetTop(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetTop(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetTop(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1768,8 +2111,12 @@ static PyObject *_wrap_wxRect_GetBottom(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetBottom(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetBottom(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1789,8 +2136,12 @@ static PyObject *_wrap_wxRect_GetRight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_GetRight(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_GetRight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1811,8 +2162,12 @@ static PyObject *_wrap_wxRect_x_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_x_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_x_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1832,8 +2187,12 @@ static PyObject *_wrap_wxRect_x_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_x_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_x_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1854,8 +2213,12 @@ static PyObject *_wrap_wxRect_y_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_y_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_y_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1875,8 +2238,12 @@ static PyObject *_wrap_wxRect_y_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_y_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_y_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1897,8 +2264,12 @@ static PyObject *_wrap_wxRect_width_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_width_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_width_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1918,8 +2289,12 @@ static PyObject *_wrap_wxRect_width_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_width_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_width_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1940,8 +2315,12 @@ static PyObject *_wrap_wxRect_height_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_height_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_height_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1961,8 +2340,12 @@ static PyObject *_wrap_wxRect_height_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRect_height_get(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRect_height_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1989,8 +2372,12 @@ static PyObject *_wrap_wxRect_asTuple(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxRect_asTuple(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxRect_asTuple(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -2010,8 +2397,12 @@ static PyObject *_wrap_new_wxPyTimer(PyObject *self, PyObject *args) {
 {
   _arg0 = _obj0;
 }
-    _result = (wxPyTimer *)new_wxPyTimer(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyTimer_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyTimer *)new_wxPyTimer(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyTimer_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2031,8 +2422,12 @@ static PyObject *_wrap_delete_wxPyTimer(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxPyTimer(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPyTimer(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2053,8 +2448,12 @@ static PyObject *_wrap_wxPyTimer_Interval(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPyTimer_Interval(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPyTimer_Interval(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2075,8 +2474,12 @@ static PyObject *_wrap_wxPyTimer_Start(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyTimer_Start(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyTimer_Start(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2096,8 +2499,12 @@ static PyObject *_wrap_wxPyTimer_Stop(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyTimer_Stop(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyTimer_Stop(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2126,8 +2533,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_Above(PyObject *self, PyObje
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_Above(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_Above(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2148,8 +2559,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_Absolute(PyObject *self, PyO
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_Absolute(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_Absolute(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2169,8 +2584,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_AsIs(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_AsIs(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_AsIs(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2199,8 +2618,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_Below(PyObject *self, PyObje
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_Below(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_Below(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2220,8 +2643,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_Unconstrained(PyObject *self
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_Unconstrained(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_Unconstrained(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2250,8 +2677,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_LeftOf(PyObject *self, PyObj
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_LeftOf(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_LeftOf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2281,8 +2712,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_PercentOf(PyObject *self, Py
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_PercentOf(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_PercentOf(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2311,8 +2746,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_RightOf(PyObject *self, PyOb
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_RightOf(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_RightOf(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2342,8 +2781,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_SameAs(PyObject *self, PyObj
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_SameAs(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_SameAs(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2375,8 +2818,12 @@ static PyObject *_wrap_wxIndividualLayoutConstraint_Set(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxIndividualLayoutConstraint_Set(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIndividualLayoutConstraint_Set(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2390,8 +2837,12 @@ static PyObject *_wrap_new_wxLayoutConstraints(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxLayoutConstraints")) 
         return NULL;
-    _result = (wxLayoutConstraints *)new_wxLayoutConstraints();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutConstraints_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutConstraints *)new_wxLayoutConstraints();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutConstraints_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2413,8 +2864,12 @@ static PyObject *_wrap_wxLayoutConstraints_bottom_get(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_bottom_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_bottom_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2436,8 +2891,12 @@ static PyObject *_wrap_wxLayoutConstraints_centreX_get(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_centreX_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_centreX_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2459,8 +2918,12 @@ static PyObject *_wrap_wxLayoutConstraints_centreY_get(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_centreY_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_centreY_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2482,8 +2945,12 @@ static PyObject *_wrap_wxLayoutConstraints_height_get(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_height_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_height_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2505,8 +2972,12 @@ static PyObject *_wrap_wxLayoutConstraints_left_get(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_left_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_left_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2528,8 +2999,12 @@ static PyObject *_wrap_wxLayoutConstraints_right_get(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_right_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_right_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2551,8 +3026,12 @@ static PyObject *_wrap_wxLayoutConstraints_top_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_top_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_top_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2574,8 +3053,12 @@ static PyObject *_wrap_wxLayoutConstraints_width_get(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_width_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxIndividualLayoutConstraint *)wxLayoutConstraints_width_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxIndividualLayoutConstraint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2589,8 +3072,12 @@ static PyObject *_wrap_new_wxRegion(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxRegion")) 
         return NULL;
-    _result = (wxRegion *)new_wxRegion();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRegion_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRegion *)new_wxRegion();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRegion_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2610,8 +3097,12 @@ static PyObject *_wrap_delete_wxRegion(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxRegion(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxRegion(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2631,8 +3122,12 @@ static PyObject *_wrap_wxRegion_Clear(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRegion_Clear(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRegion_Clear(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2655,8 +3150,12 @@ static PyObject *_wrap_wxRegion_Contains(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxRegionContain )wxRegion_Contains(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRegionContain )wxRegion_Contains(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2684,8 +3183,12 @@ static PyObject *_wrap_wxRegion_ContainsPoint(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxRegionContain )wxRegion_ContainsPoint(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRegionContain )wxRegion_ContainsPoint(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2713,8 +3216,12 @@ static PyObject *_wrap_wxRegion_ContainsRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxRegionContain )wxRegion_ContainsRect(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRegionContain )wxRegion_ContainsRect(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2735,8 +3242,12 @@ static PyObject *_wrap_wxRegion_GetBox(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxRect (wxRegion_GetBox(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxRegion_GetBox(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2765,8 +3276,12 @@ static PyObject *_wrap_wxRegion_Intersect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxRegion_Intersect(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxRegion_Intersect(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2794,8 +3309,12 @@ static PyObject *_wrap_wxRegion_Subtract(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxRegion_Subtract(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxRegion_Subtract(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2823,8 +3342,12 @@ static PyObject *_wrap_wxRegion_Union(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxRegion_Union(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxRegion_Union(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2852,8 +3375,12 @@ static PyObject *_wrap_wxRegion_Xor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxRegion_Xor(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxRegion_Xor(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2874,8 +3401,12 @@ static PyObject *_wrap_new_wxRegionIterator(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxRegionIterator *)new_wxRegionIterator(*_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRegionIterator_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRegionIterator *)new_wxRegionIterator(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRegionIterator_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2895,8 +3426,12 @@ static PyObject *_wrap_delete_wxRegionIterator(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxRegionIterator(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxRegionIterator(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2917,8 +3452,12 @@ static PyObject *_wrap_wxRegionIterator_GetX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRegionIterator_GetX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRegionIterator_GetX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2938,8 +3477,12 @@ static PyObject *_wrap_wxRegionIterator_GetY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRegionIterator_GetY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRegionIterator_GetY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2959,8 +3502,12 @@ static PyObject *_wrap_wxRegionIterator_GetW(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRegionIterator_GetW(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRegionIterator_GetW(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -2980,8 +3527,12 @@ static PyObject *_wrap_wxRegionIterator_GetWidth(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (long )wxRegionIterator_GetWidth(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRegionIterator_GetWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3001,8 +3552,12 @@ static PyObject *_wrap_wxRegionIterator_GetH(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (long )wxRegionIterator_GetH(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRegionIterator_GetH(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3022,8 +3577,12 @@ static PyObject *_wrap_wxRegionIterator_GetHeight(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (long )wxRegionIterator_GetHeight(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxRegionIterator_GetHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -3044,8 +3603,12 @@ static PyObject *_wrap_wxRegionIterator_GetRect(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxRect (wxRegionIterator_GetRect(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxRegionIterator_GetRect(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3066,8 +3629,12 @@ static PyObject *_wrap_wxRegionIterator_HaveRects(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (bool )wxRegionIterator_HaveRects(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxRegionIterator_HaveRects(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3086,8 +3653,12 @@ static PyObject *_wrap_wxRegionIterator_Reset(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRegionIterator_Reset(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRegionIterator_Reset(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3109,8 +3680,12 @@ static PyObject *_wrap_wxRegionIterator_Next(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRegionIterator_Next(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxRegionIterator_Next(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3127,8 +3702,12 @@ static PyObject *_wrap_new_wxAcceleratorEntry(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,"|iii:new_wxAcceleratorEntry",&_arg0,&_arg1,&_arg2)) 
         return NULL;
-    _result = (wxAcceleratorEntry *)new_wxAcceleratorEntry(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxAcceleratorEntry_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxAcceleratorEntry *)new_wxAcceleratorEntry(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxAcceleratorEntry_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3151,8 +3730,12 @@ static PyObject *_wrap_wxAcceleratorEntry_Set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxAcceleratorEntry_Set(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxAcceleratorEntry_Set(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3173,8 +3756,12 @@ static PyObject *_wrap_wxAcceleratorEntry_GetFlags(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxAcceleratorEntry_GetFlags(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxAcceleratorEntry_GetFlags(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3194,8 +3781,12 @@ static PyObject *_wrap_wxAcceleratorEntry_GetKeyCode(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (int )wxAcceleratorEntry_GetKeyCode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxAcceleratorEntry_GetKeyCode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3215,8 +3806,12 @@ static PyObject *_wrap_wxAcceleratorEntry_GetCommand(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (int )wxAcceleratorEntry_GetCommand(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxAcceleratorEntry_GetCommand(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3240,10 +3835,19 @@ static PyObject *_wrap_new_wxAcceleratorTable(PyObject *self, PyObject *args) {
     }
 }
 {
-    _arg0 = PyList_Size(_obj1);
+    if (_obj1) {
+        _arg0 = PyList_Size(_obj1);
+    }
+    else {
+        _arg0 = 0;
+    }
 }
-    _result = (wxAcceleratorTable *)new_wxAcceleratorTable(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxAcceleratorTable_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxAcceleratorTable *)new_wxAcceleratorTable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxAcceleratorTable_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     delete [] _arg1;
@@ -3267,10 +3871,14 @@ static PyObject *_wrap_new_wxToolTip(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
-    _result = (wxToolTip *)new_wxToolTip(*_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolTip_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolTip *)new_wxToolTip(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolTip_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -3301,10 +3909,14 @@ static PyObject *_wrap_wxToolTip_SetTip(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxToolTip_SetTip(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolTip_SetTip(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -3329,8 +3941,12 @@ static PyObject *_wrap_wxToolTip_GetTip(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxToolTip_GetTip(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxToolTip_GetTip(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -3356,8 +3972,12 @@ static PyObject *_wrap_wxToolTip_GetWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxToolTip_GetWindow(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxToolTip_GetWindow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3487,6 +4107,7 @@ static PyMethodDef misccMethods[] = {
         { "wxResourceClear", _wrap_wxResourceClear, 1 },
         { "wxResourceAddIdentifier", _wrap_wxResourceAddIdentifier, 1 },
         { "wxGetResource", _wrap_wxGetResource, 1 },
+        { "wxSafeYield", _wrap_wxSafeYield, 1 },
         { "wxYield", _wrap_wxYield, 1 },
         { "wxNow", _wrap_wxNow, 1 },
         { "wxIsBusy", _wrap_wxIsBusy, 1 },
@@ -3500,6 +4121,8 @@ static PyMethodDef misccMethods[] = {
         { "wxBeginBusyCursor", _wrap_wxBeginBusyCursor, 1 },
         { "RegisterId", _wrap_RegisterId, 1 },
         { "NewId", _wrap_NewId, 1 },
+        { "wxRegisterId", _wrap_wxRegisterId, 1 },
+        { "wxNewId", _wrap_wxNewId, 1 },
         { "wxSetCursor", _wrap_wxSetCursor, 1 },
         { "wxDisplayDepth", _wrap_wxDisplayDepth, 1 },
         { "wxColourDisplay", _wrap_wxColourDisplay, 1 },
index 18324ea8a20dfdc78087f2fcbe6f15d2ec9b739f..701ba1ebec0ac7b15e75341ef45edd577524c55e 100644 (file)
@@ -561,6 +561,10 @@ def wxSetCursor(arg0):
     val = miscc.wxSetCursor(arg0.this)
     return val
 
+wxNewId = miscc.wxNewId
+
+wxRegisterId = miscc.wxRegisterId
+
 NewId = miscc.NewId
 
 RegisterId = miscc.RegisterId
@@ -607,6 +611,8 @@ wxNow = miscc.wxNow
 
 wxYield = miscc.wxYield
 
+wxSafeYield = miscc.wxSafeYield
+
 wxGetResource = miscc.wxGetResource
 
 wxResourceAddIdentifier = miscc.wxResourceAddIdentifier
index 3f1e5e517da5b3a0d139642789961200f507b1b2..74d1285d359886545e6db68dcae68f4c25c71679 100644 (file)
@@ -140,7 +140,7 @@ static PyObject *_wrap_new_wxStatusBar(PyObject *self, PyObject *args) {
     wxWindowID  _arg1;
     wxPoint * _arg2 = &wxPyDefaultPosition;
     wxSize * _arg3 = &wxPyDefaultSize;
-    long  _arg4 = wxST_SIZEGRIP;
+    long  _arg4 = (wxST_SIZEGRIP);
     char * _arg5 = "statusBar";
     char * _argc0 = 0;
     char * _argc2 = 0;
@@ -168,8 +168,12 @@ static PyObject *_wrap_new_wxStatusBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxStatusBar *)new_wxStatusBar(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStatusBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxStatusBar *)new_wxStatusBar(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxStatusBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -196,8 +200,12 @@ static PyObject *_wrap_wxStatusBar_GetFieldRect(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxRect *)wxStatusBar_GetFieldRect(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxRect *)wxStatusBar_GetFieldRect(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -218,8 +226,12 @@ static PyObject *_wrap_wxStatusBar_GetFieldsCount(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (int )wxStatusBar_GetFieldsCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxStatusBar_GetFieldsCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -240,8 +252,12 @@ static PyObject *_wrap_wxStatusBar_GetStatusText(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxString (wxStatusBar_GetStatusText(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxStatusBar_GetStatusText(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -274,8 +290,12 @@ static PyObject *_wrap_wxStatusBar_DrawField(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxStatusBar_DrawField(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStatusBar_DrawField(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -304,8 +324,12 @@ static PyObject *_wrap_wxStatusBar_DrawFieldText(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxStatusBar_DrawFieldText(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStatusBar_DrawFieldText(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -325,8 +349,12 @@ static PyObject *_wrap_wxStatusBar_InitColours(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxStatusBar_InitColours(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStatusBar_InitColours(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -347,8 +375,12 @@ static PyObject *_wrap_wxStatusBar_SetFieldsCount(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxStatusBar_SetFieldsCount(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStatusBar_SetFieldsCount(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -376,10 +408,14 @@ static PyObject *_wrap_wxStatusBar_SetStatusText(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxStatusBar_SetStatusText(_arg0,*_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStatusBar_SetStatusText(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -414,10 +450,19 @@ static PyObject *_wrap_wxStatusBar_SetStatusWidths(PyObject *self, PyObject *arg
     }
 }
 {
-    _arg1 = PyList_Size(_obj2);
+    if (_obj2) {
+        _arg1 = PyList_Size(_obj2);
+    }
+    else {
+        _arg1 = 0;
+    }
 }
-    wxStatusBar_SetStatusWidths(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxStatusBar_SetStatusWidths(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     delete [] _arg2;
@@ -434,8 +479,12 @@ static PyObject *_wrap_new_wxToolBarTool(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxToolBarTool")) 
         return NULL;
-    _result = (wxToolBarTool *)new_wxToolBarTool();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolBarTool *)new_wxToolBarTool();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -455,8 +504,12 @@ static PyObject *_wrap_delete_wxToolBarTool(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxToolBarTool(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxToolBarTool(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -478,8 +531,12 @@ static PyObject *_wrap_wxToolBarTool_m_toolStyle_set(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (int )wxToolBarTool_m_toolStyle_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxToolBarTool_m_toolStyle_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -499,8 +556,12 @@ static PyObject *_wrap_wxToolBarTool_m_toolStyle_get(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (int )wxToolBarTool_m_toolStyle_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxToolBarTool_m_toolStyle_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -529,8 +590,12 @@ static PyObject *_wrap_wxToolBarTool_m_clientData_set(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (wxObject *)wxToolBarTool_m_clientData_set(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxObject *)wxToolBarTool_m_clientData_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -552,8 +617,12 @@ static PyObject *_wrap_wxToolBarTool_m_clientData_get(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (wxObject *)wxToolBarTool_m_clientData_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxObject *)wxToolBarTool_m_clientData_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -575,8 +644,12 @@ static PyObject *_wrap_wxToolBarTool_m_index_set(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxToolBarTool_m_index_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxToolBarTool_m_index_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -596,8 +669,12 @@ static PyObject *_wrap_wxToolBarTool_m_index_get(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxToolBarTool_m_index_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxToolBarTool_m_index_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -620,8 +697,12 @@ static PyObject *_wrap_wxToolBarTool_m_toggleState_set(PyObject *self, PyObject
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxToolBarTool_m_toggleState_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_toggleState_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -641,8 +722,12 @@ static PyObject *_wrap_wxToolBarTool_m_toggleState_get(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (bool )wxToolBarTool_m_toggleState_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_toggleState_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -665,8 +750,12 @@ static PyObject *_wrap_wxToolBarTool_m_isToggle_set(PyObject *self, PyObject *ar
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxToolBarTool_m_isToggle_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_isToggle_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -686,8 +775,12 @@ static PyObject *_wrap_wxToolBarTool_m_isToggle_get(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (bool )wxToolBarTool_m_isToggle_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_isToggle_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -710,8 +803,12 @@ static PyObject *_wrap_wxToolBarTool_m_deleteSecondBitmap_set(PyObject *self, Py
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxToolBarTool_m_deleteSecondBitmap_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_deleteSecondBitmap_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -731,8 +828,12 @@ static PyObject *_wrap_wxToolBarTool_m_deleteSecondBitmap_get(PyObject *self, Py
         return NULL;
         }
     }
-    _result = (bool )wxToolBarTool_m_deleteSecondBitmap_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_deleteSecondBitmap_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -755,8 +856,12 @@ static PyObject *_wrap_wxToolBarTool_m_enabled_set(PyObject *self, PyObject *arg
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxToolBarTool_m_enabled_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_enabled_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -776,8 +881,12 @@ static PyObject *_wrap_wxToolBarTool_m_enabled_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxToolBarTool_m_enabled_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_enabled_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -806,8 +915,12 @@ static PyObject *_wrap_wxToolBarTool_m_bitmap1_set(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxToolBarTool_m_bitmap1_set(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxToolBarTool_m_bitmap1_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -829,8 +942,12 @@ static PyObject *_wrap_wxToolBarTool_m_bitmap1_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxToolBarTool_m_bitmap1_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxToolBarTool_m_bitmap1_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -860,8 +977,12 @@ static PyObject *_wrap_wxToolBarTool_m_bitmap2_set(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxToolBarTool_m_bitmap2_set(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxToolBarTool_m_bitmap2_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -883,8 +1004,12 @@ static PyObject *_wrap_wxToolBarTool_m_bitmap2_get(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxToolBarTool_m_bitmap2_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxToolBarTool_m_bitmap2_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -908,8 +1033,12 @@ static PyObject *_wrap_wxToolBarTool_m_isMenuCommand_set(PyObject *self, PyObjec
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxToolBarTool_m_isMenuCommand_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_isMenuCommand_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -929,8 +1058,12 @@ static PyObject *_wrap_wxToolBarTool_m_isMenuCommand_get(PyObject *self, PyObjec
         return NULL;
         }
     }
-    _result = (bool )wxToolBarTool_m_isMenuCommand_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBarTool_m_isMenuCommand_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -957,10 +1090,14 @@ static PyObject *_wrap_wxToolBarTool_m_shortHelpString_set(PyObject *self, PyObj
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (wxString *)wxToolBarTool_m_shortHelpString_set(_arg0,_arg1);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxString *)wxToolBarTool_m_shortHelpString_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
 {
@@ -986,8 +1123,12 @@ static PyObject *_wrap_wxToolBarTool_m_shortHelpString_get(PyObject *self, PyObj
         return NULL;
         }
     }
-    _result = (wxString *)wxToolBarTool_m_shortHelpString_get(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxString *)wxToolBarTool_m_shortHelpString_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -1016,10 +1157,14 @@ static PyObject *_wrap_wxToolBarTool_m_longHelpString_set(PyObject *self, PyObje
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (wxString *)wxToolBarTool_m_longHelpString_set(_arg0,_arg1);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxString *)wxToolBarTool_m_longHelpString_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
 {
@@ -1045,8 +1190,12 @@ static PyObject *_wrap_wxToolBarTool_m_longHelpString_get(PyObject *self, PyObje
         return NULL;
         }
     }
-    _result = (wxString *)wxToolBarTool_m_longHelpString_get(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxString *)wxToolBarTool_m_longHelpString_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -1112,8 +1261,12 @@ static PyObject *_wrap_new_wxToolBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxToolBar *)new_wxToolBar(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolBar *)new_wxToolBar(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1133,8 +1286,12 @@ static PyObject *_wrap_wxToolBar_AddSeparator(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxToolBar_AddSeparator(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_AddSeparator(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1190,7 +1347,7 @@ static PyObject *_wrap_wxToolBar_AddTool(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg7 = new wxString(PyString_AsString(_obj7));
+    _arg7 = new wxString(PyString_AsString(_obj7), PyString_Size(_obj7));
 }
     if (_obj8)
 {
@@ -1198,10 +1355,14 @@ static PyObject *_wrap_wxToolBar_AddTool(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg8 = new wxString(PyString_AsString(_obj8));
+    _arg8 = new wxString(PyString_AsString(_obj8), PyString_Size(_obj8));
 }
-    _result = (wxToolBarTool *)wxToolBar_AddTool(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,*_arg8);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolBarTool *)wxToolBar_AddTool(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5,_arg6,*_arg7,*_arg8);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj7)
@@ -1254,7 +1415,7 @@ static PyObject *_wrap_wxToolBar_AddSimpleTool(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
     if (_obj4)
 {
@@ -1262,10 +1423,14 @@ static PyObject *_wrap_wxToolBar_AddSimpleTool(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg4 = new wxString(PyString_AsString(_obj4));
+    _arg4 = new wxString(PyString_AsString(_obj4), PyString_Size(_obj4));
 }
-    _result = (wxToolBarTool *)wxToolBar_AddSimpleTool(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolBarTool *)wxToolBar_AddSimpleTool(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolBarTool_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj3)
@@ -1297,8 +1462,12 @@ static PyObject *_wrap_wxToolBar_EnableTool(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxToolBar_EnableTool(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_EnableTool(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1320,8 +1489,12 @@ static PyObject *_wrap_wxToolBar_GetToolEnabled(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxToolBar_GetToolEnabled(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBar_GetToolEnabled(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1342,8 +1515,12 @@ static PyObject *_wrap_wxToolBar_GetToolLongHelp(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = new wxString (wxToolBar_GetToolLongHelp(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxToolBar_GetToolLongHelp(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1368,8 +1545,12 @@ static PyObject *_wrap_wxToolBar_GetToolPacking(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxToolBar_GetToolPacking(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxToolBar_GetToolPacking(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1389,8 +1570,12 @@ static PyObject *_wrap_wxToolBar_GetToolSeparation(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (int )wxToolBar_GetToolSeparation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxToolBar_GetToolSeparation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1411,8 +1596,12 @@ static PyObject *_wrap_wxToolBar_GetToolShortHelp(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = new wxString (wxToolBar_GetToolShortHelp(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxToolBar_GetToolShortHelp(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1438,8 +1627,12 @@ static PyObject *_wrap_wxToolBar_GetToolState(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxToolBar_GetToolState(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBar_GetToolState(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1459,8 +1652,12 @@ static PyObject *_wrap_wxToolBar_Realize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxToolBar_Realize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxToolBar_Realize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1487,10 +1684,14 @@ static PyObject *_wrap_wxToolBar_SetToolLongHelp(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxToolBar_SetToolLongHelp(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_SetToolLongHelp(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -1522,10 +1723,14 @@ static PyObject *_wrap_wxToolBar_SetToolShortHelp(PyObject *self, PyObject *args
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxToolBar_SetToolShortHelp(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_SetToolShortHelp(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -1557,8 +1762,12 @@ static PyObject *_wrap_wxToolBar_SetMargins(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxToolBar_SetMargins(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_SetMargins(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1579,8 +1788,12 @@ static PyObject *_wrap_wxToolBar_SetToolPacking(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxToolBar_SetToolPacking(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_SetToolPacking(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1601,8 +1814,12 @@ static PyObject *_wrap_wxToolBar_SetToolSeparation(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxToolBar_SetToolSeparation(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_SetToolSeparation(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1626,8 +1843,12 @@ static PyObject *_wrap_wxToolBar_ToggleTool(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxToolBar_ToggleTool(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxToolBar_ToggleTool(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1745,6 +1966,7 @@ SWIGEXPORT(void,initstattoolc)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -1774,6 +1996,7 @@ SWIGEXPORT(void,initstattoolc)() {
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_class_wxToolBar","_wxToolBar",0);
index 6511963db4dc6298172936a7971601c517ad0313..c81965e0c8a5198e845dde0de6e8bdae2c0adb77 100644 (file)
@@ -117,7 +117,7 @@ extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
 static char* wxStringErrorMsg = "string type is required for parameter";
 
 #ifdef SEPARATE
-    static wxString wxPyEmptyStr("");
+    wxString wxPyEmptyStr("");
 #endif
 
     static PyObject* __EnumerationHelper(bool flag, wxString& str, long index) {
@@ -153,7 +153,7 @@ static PyObject *_wrap_new_wxConfig(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     if (_obj1)
 {
@@ -161,7 +161,7 @@ static PyObject *_wrap_new_wxConfig(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_obj2)
 {
@@ -169,7 +169,7 @@ static PyObject *_wrap_new_wxConfig(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_obj3)
 {
@@ -177,10 +177,14 @@ static PyObject *_wrap_new_wxConfig(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
-    _result = (wxConfig *)new_wxConfig(*_arg0,*_arg1,*_arg2,*_arg3,_arg4);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxConfig_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxConfig *)new_wxConfig(*_arg0,*_arg1,*_arg2,*_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxConfig_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -216,8 +220,12 @@ static PyObject *_wrap_delete_wxConfig(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxConfig(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxConfig(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -237,8 +245,12 @@ static PyObject *_wrap_wxConfig_DontCreateOnDemand(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxConfig_DontCreateOnDemand(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxConfig_DontCreateOnDemand(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -259,8 +271,12 @@ static PyObject *_wrap_wxConfig_DeleteAll(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxConfig_DeleteAll(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_DeleteAll(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -289,11 +305,15 @@ static PyObject *_wrap_wxConfig_DeleteEntry(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     _arg2 = (bool ) tempbool2;
-    _result = (bool )wxConfig_DeleteEntry(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_DeleteEntry(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -324,10 +344,14 @@ static PyObject *_wrap_wxConfig_DeleteGroup(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxConfig_DeleteGroup(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_DeleteGroup(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -358,10 +382,14 @@ static PyObject *_wrap_wxConfig_Exists(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxConfig_Exists(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_Exists(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -388,8 +416,12 @@ static PyObject *_wrap_wxConfig_Flush(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxConfig_Flush(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_Flush(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -409,8 +441,12 @@ static PyObject *_wrap_wxConfig_GetAppName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxConfig_GetAppName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxConfig_GetAppName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -442,8 +478,12 @@ static PyObject *_wrap_wxConfig_GetFirstGroup(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxConfig_GetFirstGroup(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxConfig_GetFirstGroup(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -472,8 +512,12 @@ static PyObject *_wrap_wxConfig_GetFirstEntry(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxConfig_GetFirstEntry(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxConfig_GetFirstEntry(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -502,8 +546,12 @@ static PyObject *_wrap_wxConfig_GetNextGroup(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxConfig_GetNextGroup(_arg0,_arg1);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxConfig_GetNextGroup(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -532,8 +580,12 @@ static PyObject *_wrap_wxConfig_GetNextEntry(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (PyObject *)wxConfig_GetNextEntry(_arg0,_arg1);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxConfig_GetNextEntry(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -558,8 +610,12 @@ static PyObject *_wrap_wxConfig_GetNumberOfEntries(PyObject *self, PyObject *arg
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (int )wxConfig_GetNumberOfEntries(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxConfig_GetNumberOfEntries(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -582,8 +638,12 @@ static PyObject *_wrap_wxConfig_GetNumberOfGroups(PyObject *self, PyObject *args
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (int )wxConfig_GetNumberOfGroups(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxConfig_GetNumberOfGroups(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -603,8 +663,12 @@ static PyObject *_wrap_wxConfig_GetPath(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxConfig_GetPath(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxConfig_GetPath(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -629,8 +693,12 @@ static PyObject *_wrap_wxConfig_GetVendorName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxConfig_GetVendorName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxConfig_GetVendorName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -662,10 +730,14 @@ static PyObject *_wrap_wxConfig_HasEntry(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxConfig_HasEntry(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_HasEntry(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -696,10 +768,14 @@ static PyObject *_wrap_wxConfig_HasGroup(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxConfig_HasGroup(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_HasGroup(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -723,8 +799,12 @@ static PyObject *_wrap_wxConfig_IsExpandingEnvVars(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxConfig_IsExpandingEnvVars(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_IsExpandingEnvVars(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -744,8 +824,12 @@ static PyObject *_wrap_wxConfig_IsRecordingDefaults(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (bool )wxConfig_IsRecordingDefaults(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_IsRecordingDefaults(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -774,7 +858,7 @@ static PyObject *_wrap_wxConfig_Read(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_obj2)
 {
@@ -782,10 +866,14 @@ static PyObject *_wrap_wxConfig_Read(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = new wxString (wxConfig_Read(_arg0,*_arg1,*_arg2));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxConfig_Read(_arg0,*_arg1,*_arg2));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -826,10 +914,14 @@ static PyObject *_wrap_wxConfig_ReadInt(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (long )wxConfig_ReadInt(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxConfig_ReadInt(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -861,44 +953,14 @@ static PyObject *_wrap_wxConfig_ReadFloat(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (double )wxConfig_ReadFloat(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("d",_result);
 {
-    if (_obj1)
-        delete _arg1;
-}
-    return _resultobj;
-}
-
-#define wxConfig_SetAppName(_swigobj,_swigarg0)  (_swigobj->SetAppName(_swigarg0))
-static PyObject *_wrap_wxConfig_SetAppName(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    wxConfig * _arg0;
-    wxString * _arg1;
-    char * _argc0 = 0;
-    PyObject * _obj1 = 0;
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (double )wxConfig_ReadFloat(_arg0,*_arg1,_arg2);
 
-    self = self;
-    if(!PyArg_ParseTuple(args,"sO:wxConfig_SetAppName",&_argc0,&_obj1)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxConfig_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxConfig_SetAppName. Expected _wxConfig_p.");
-        return NULL;
-        }
-    }
-{
-    if (!PyString_Check(_obj1)) {
-        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
-        return NULL;
-    }
-    _arg1 = new wxString(PyString_AsString(_obj1));
-}
-    wxConfig_SetAppName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
-    _resultobj = Py_None;
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("d",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -924,8 +986,12 @@ static PyObject *_wrap_wxConfig_SetExpandEnvVars(PyObject *self, PyObject *args)
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxConfig_SetExpandEnvVars(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxConfig_SetExpandEnvVars(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -952,10 +1018,14 @@ static PyObject *_wrap_wxConfig_SetPath(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxConfig_SetPath(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxConfig_SetPath(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -982,43 +1052,13 @@ static PyObject *_wrap_wxConfig_SetRecordDefaults(PyObject *self, PyObject *args
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxConfig_SetRecordDefaults(_arg0,_arg1);
-    Py_INCREF(Py_None);
-    _resultobj = Py_None;
-    return _resultobj;
-}
-
-#define wxConfig_SetVendorName(_swigobj,_swigarg0)  (_swigobj->SetVendorName(_swigarg0))
-static PyObject *_wrap_wxConfig_SetVendorName(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    wxConfig * _arg0;
-    wxString * _arg1;
-    char * _argc0 = 0;
-    PyObject * _obj1 = 0;
-
-    self = self;
-    if(!PyArg_ParseTuple(args,"sO:wxConfig_SetVendorName",&_argc0,&_obj1)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxConfig_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxConfig_SetVendorName. Expected _wxConfig_p.");
-        return NULL;
-        }
-    }
 {
-    if (!PyString_Check(_obj1)) {
-        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
-        return NULL;
-    }
-    _arg1 = new wxString(PyString_AsString(_obj1));
-}
-    wxConfig_SetVendorName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxConfig_SetRecordDefaults(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
-{
-    if (_obj1)
-        delete _arg1;
-}
     return _resultobj;
 }
 
@@ -1047,17 +1087,21 @@ static PyObject *_wrap_wxConfig_Write(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
 {
     if (!PyString_Check(_obj2)) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (bool )wxConfig_Write(_arg0,*_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_Write(_arg0,*_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1093,10 +1137,14 @@ static PyObject *_wrap_wxConfig_WriteInt(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxConfig_WriteInt(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_WriteInt(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1128,10 +1176,14 @@ static PyObject *_wrap_wxConfig_WriteFloat(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (bool )wxConfig_WriteFloat(_arg0,*_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxConfig_WriteFloat(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -1143,11 +1195,9 @@ static PyMethodDef utilscMethods[] = {
         { "wxConfig_WriteFloat", _wrap_wxConfig_WriteFloat, 1 },
         { "wxConfig_WriteInt", _wrap_wxConfig_WriteInt, 1 },
         { "wxConfig_Write", _wrap_wxConfig_Write, 1 },
-        { "wxConfig_SetVendorName", _wrap_wxConfig_SetVendorName, 1 },
         { "wxConfig_SetRecordDefaults", _wrap_wxConfig_SetRecordDefaults, 1 },
         { "wxConfig_SetPath", _wrap_wxConfig_SetPath, 1 },
         { "wxConfig_SetExpandEnvVars", _wrap_wxConfig_SetExpandEnvVars, 1 },
-        { "wxConfig_SetAppName", _wrap_wxConfig_SetAppName, 1 },
         { "wxConfig_ReadFloat", _wrap_wxConfig_ReadFloat, 1 },
         { "wxConfig_ReadInt", _wrap_wxConfig_ReadInt, 1 },
         { "wxConfig_Read", _wrap_wxConfig_Read, 1 },
index c37f637d95b786d206d1adfce397363fc1ab388b..321e6ed0691c08c74c4edbd214cc4b3d36eb45ab 100644 (file)
@@ -73,9 +73,6 @@ class wxConfigPtr :
     def ReadFloat(self,arg0,*args):
         val = apply(utilsc.wxConfig_ReadFloat,(self.this,arg0,)+args)
         return val
-    def SetAppName(self,arg0):
-        val = utilsc.wxConfig_SetAppName(self.this,arg0)
-        return val
     def SetExpandEnvVars(self,*args):
         val = apply(utilsc.wxConfig_SetExpandEnvVars,(self.this,)+args)
         return val
@@ -85,9 +82,6 @@ class wxConfigPtr :
     def SetRecordDefaults(self,*args):
         val = apply(utilsc.wxConfig_SetRecordDefaults,(self.this,)+args)
         return val
-    def SetVendorName(self,arg0):
-        val = utilsc.wxConfig_SetVendorName(self.this,arg0)
-        return val
     def Write(self,arg0,arg1):
         val = utilsc.wxConfig_Write(self.this,arg0,arg1)
         return val
index 55955da9fe7f66885dce4277c5d32fea7b44c7b2..ce5b45d9aa15435e58521f26d450d01dc0b1103d 100644 (file)
@@ -115,6 +115,39 @@ extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
 
 
 static char* wxStringErrorMsg = "string type is required for parameter";
+#define wxEvtHandler_ProcessEvent(_swigobj,_swigarg0)  (_swigobj->ProcessEvent(_swigarg0))
+static PyObject *_wrap_wxEvtHandler_ProcessEvent(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxEvtHandler * _arg0;
+    wxEvent * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxEvtHandler_ProcessEvent",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvtHandler_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvtHandler_ProcessEvent. Expected _wxEvtHandler_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxEvtHandler_ProcessEvent. Expected _wxEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxEvtHandler_ProcessEvent(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
 static void  wxEvtHandler_Connect(wxEvtHandler *self,int  id,int  lastId,int  eventType,PyObject * func) {
             if (PyCallable_Check(func)) {
                 self->Connect(id, lastId, eventType,
@@ -144,8 +177,12 @@ static PyObject *_wrap_wxEvtHandler_Connect(PyObject *self, PyObject *args) {
 {
   _arg4 = _obj4;
 }
-    wxEvtHandler_Connect(_arg0,_arg1,_arg2,_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvtHandler_Connect(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -194,8 +231,12 @@ static PyObject *_wrap_new_wxWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)new_wxWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)new_wxWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -215,8 +256,12 @@ static PyObject *_wrap_wxWindow_CaptureMouse(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_CaptureMouse(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_CaptureMouse(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -237,8 +282,12 @@ static PyObject *_wrap_wxWindow_Center(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Center(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Center(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -259,8 +308,12 @@ static PyObject *_wrap_wxWindow_Centre(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Centre(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Centre(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -294,8 +347,12 @@ static PyObject *_wrap_wxWindow_ClientToScreenXY(PyObject *self, PyObject *args)
   temp0 = (int) PyInt_AsLong(_obj2);
   _arg2 = &temp0;
 }
-    wxWindow_ClientToScreenXY(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_ClientToScreenXY(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -327,8 +384,12 @@ static PyObject *_wrap_wxWindow_Close(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_Close(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_Close(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -348,8 +409,12 @@ static PyObject *_wrap_wxWindow_Destroy(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_Destroy(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_Destroy(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -368,8 +433,12 @@ static PyObject *_wrap_wxWindow_DestroyChildren(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxWindow_DestroyChildren(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_DestroyChildren(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -392,8 +461,12 @@ static PyObject *_wrap_wxWindow_Enable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxWindow_Enable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Enable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -416,8 +489,12 @@ static PyObject *_wrap_wxWindow_FindWindowById(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxWindow_FindWindowById(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxWindow_FindWindowById(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -446,10 +523,14 @@ static PyObject *_wrap_wxWindow_FindWindowByName(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (wxWindow *)wxWindow_FindWindowByName(_arg0,*_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxWindow_FindWindowByName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj1)
@@ -473,8 +554,12 @@ static PyObject *_wrap_wxWindow_Fit(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Fit(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Fit(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -496,8 +581,12 @@ static PyObject *_wrap_wxWindow_GetBackgroundColour(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = new wxColour (wxWindow_GetBackgroundColour(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxColour_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxColour (wxWindow_GetBackgroundColour(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -518,8 +607,12 @@ static PyObject *_wrap_wxWindow_GetCharHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetCharHeight(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetCharHeight(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -539,8 +632,12 @@ static PyObject *_wrap_wxWindow_GetCharWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetCharWidth(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetCharWidth(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -569,8 +666,12 @@ static PyObject *_wrap_wxWindow_GetClientSizeTuple(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxWindow_GetClientSizeTuple(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_GetClientSizeTuple(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -602,8 +703,12 @@ static PyObject *_wrap_wxWindow_GetClientSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxSize (wxWindow_GetClientSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxWindow_GetClientSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -625,8 +730,12 @@ static PyObject *_wrap_wxWindow_GetConstraints(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxLayoutConstraints *)wxWindow_GetConstraints(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutConstraints_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutConstraints *)wxWindow_GetConstraints(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutConstraints_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -648,9 +757,13 @@ static PyObject *_wrap_wxWindow_GetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont & _result_ref = wxWindow_GetFont(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxWindow_GetFont(_arg0);
     _result = (wxFont *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -672,8 +785,12 @@ static PyObject *_wrap_wxWindow_GetForegroundColour(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = new wxColour (wxWindow_GetForegroundColour(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxColour_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxColour (wxWindow_GetForegroundColour(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -695,8 +812,12 @@ static PyObject *_wrap_wxWindow_GetGrandParent(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxWindow_GetGrandParent(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxWindow_GetGrandParent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -717,8 +838,12 @@ static PyObject *_wrap_wxWindow_GetId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetId(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -738,8 +863,12 @@ static PyObject *_wrap_wxWindow_GetLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxWindow_GetLabel(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxWindow_GetLabel(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -764,8 +893,12 @@ static PyObject *_wrap_wxWindow_GetName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxWindow_GetName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxWindow_GetName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -791,8 +924,12 @@ static PyObject *_wrap_wxWindow_GetParent(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxWindow_GetParent(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxWindow_GetParent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -822,8 +959,12 @@ static PyObject *_wrap_wxWindow_GetPositionTuple(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxWindow_GetPositionTuple(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_GetPositionTuple(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -855,8 +996,12 @@ static PyObject *_wrap_wxWindow_GetPosition(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxPoint (wxWindow_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxWindow_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -878,8 +1023,12 @@ static PyObject *_wrap_wxWindow_GetRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxRect (wxWindow_GetRect(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxWindow_GetRect(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -900,8 +1049,12 @@ static PyObject *_wrap_wxWindow_GetReturnCode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetReturnCode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetReturnCode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -922,8 +1075,12 @@ static PyObject *_wrap_wxWindow_GetScrollThumb(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetScrollThumb(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetScrollThumb(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -944,8 +1101,12 @@ static PyObject *_wrap_wxWindow_GetScrollPos(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetScrollPos(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetScrollPos(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -966,8 +1127,12 @@ static PyObject *_wrap_wxWindow_GetScrollRange(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxWindow_GetScrollRange(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxWindow_GetScrollRange(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -996,8 +1161,12 @@ static PyObject *_wrap_wxWindow_GetSizeTuple(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_GetSizeTuple(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_GetSizeTuple(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -1029,8 +1198,12 @@ static PyObject *_wrap_wxWindow_GetSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxSize (wxWindow_GetSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxWindow_GetSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1067,10 +1240,14 @@ static PyObject *_wrap_wxWindow_GetTextExtent(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxWindow_GetTextExtent(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_GetTextExtent(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -1133,7 +1310,7 @@ static PyObject *_wrap_wxWindow_GetFullTextExtent(PyObject *self, PyObject *args
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     if (_argc6) {
         if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_wxFont_p")) {
@@ -1141,8 +1318,12 @@ static PyObject *_wrap_wxWindow_GetFullTextExtent(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxWindow_GetFullTextExtent(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_GetFullTextExtent(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -1187,8 +1368,12 @@ static PyObject *_wrap_wxWindow_GetTitle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxWindow_GetTitle(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxWindow_GetTitle(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -1213,8 +1398,12 @@ static PyObject *_wrap_wxWindow_GetWindowStyleFlag(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (long )wxWindow_GetWindowStyleFlag(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxWindow_GetWindowStyleFlag(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1233,8 +1422,12 @@ static PyObject *_wrap_wxWindow_InitDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_InitDialog(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_InitDialog(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1255,8 +1448,12 @@ static PyObject *_wrap_wxWindow_IsEnabled(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_IsEnabled(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_IsEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1276,8 +1473,12 @@ static PyObject *_wrap_wxWindow_IsRetained(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_IsRetained(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_IsRetained(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1297,8 +1498,12 @@ static PyObject *_wrap_wxWindow_IsShown(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_IsShown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_IsShown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1317,8 +1522,12 @@ static PyObject *_wrap_wxWindow_Layout(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Layout(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Layout(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1356,7 +1565,7 @@ static PyObject *_wrap_wxWindow_LoadFromResource(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxResourceTable_p")) {
@@ -1364,8 +1573,12 @@ static PyObject *_wrap_wxWindow_LoadFromResource(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxWindow_LoadFromResource(_arg0,_arg1,*_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_LoadFromResource(_arg0,_arg1,*_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -1388,8 +1601,12 @@ static PyObject *_wrap_wxWindow_Lower(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Lower(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Lower(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1412,8 +1629,12 @@ static PyObject *_wrap_wxWindow_MakeModal(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxWindow_MakeModal(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_MakeModal(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1435,8 +1656,12 @@ static PyObject *_wrap_wxWindow_MoveXY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_MoveXY(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_MoveXY(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1464,8 +1689,12 @@ static PyObject *_wrap_wxWindow_Move(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Move(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Move(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1496,8 +1725,12 @@ static PyObject *_wrap_wxWindow_PopupMenu(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_PopupMenu(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_PopupMenu(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1516,8 +1749,12 @@ static PyObject *_wrap_wxWindow_Raise(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Raise(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Raise(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1548,8 +1785,12 @@ static PyObject *_wrap_wxWindow_Refresh(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_Refresh(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_Refresh(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1569,8 +1810,12 @@ static PyObject *_wrap_wxWindow_ReleaseMouse(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_ReleaseMouse(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_ReleaseMouse(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1604,8 +1849,12 @@ static PyObject *_wrap_wxWindow_ScreenToClientXY(PyObject *self, PyObject *args)
   temp0 = (int) PyInt_AsLong(_obj2);
   _arg2 = &temp0;
 }
-    wxWindow_ScreenToClientXY(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_ScreenToClientXY(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -1645,8 +1894,12 @@ static PyObject *_wrap_wxWindow_ScrollWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_ScrollWindow(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_ScrollWindow(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1674,8 +1927,12 @@ static PyObject *_wrap_wxWindow_SetAcceleratorTable(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxWindow_SetAcceleratorTable(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetAcceleratorTable(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1698,8 +1955,12 @@ static PyObject *_wrap_wxWindow_SetAutoLayout(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxWindow_SetAutoLayout(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetAutoLayout(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1727,8 +1988,12 @@ static PyObject *_wrap_wxWindow_SetBackgroundColour(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxWindow_SetBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1756,8 +2021,12 @@ static PyObject *_wrap_wxWindow_SetConstraints(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetConstraints(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetConstraints(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1780,8 +2049,12 @@ static PyObject *_wrap_wxWindow_SetDoubleClick(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxWindow_SetDoubleClick(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetDoubleClick(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1801,8 +2074,12 @@ static PyObject *_wrap_wxWindow_SetFocus(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetFocus(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetFocus(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1830,8 +2107,12 @@ static PyObject *_wrap_wxWindow_SetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1859,8 +2140,12 @@ static PyObject *_wrap_wxWindow_SetForegroundColour(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxWindow_SetForegroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetForegroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1881,8 +2166,12 @@ static PyObject *_wrap_wxWindow_SetId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetId(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetId(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1909,10 +2198,14 @@ static PyObject *_wrap_wxWindow_SetName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxWindow_SetName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1937,8 +2230,12 @@ static PyObject *_wrap_wxWindow_SetReturnCode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetReturnCode(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetReturnCode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1965,8 +2262,12 @@ static PyObject *_wrap_wxWindow_SetScrollbar(PyObject *self, PyObject *args) {
         }
     }
     _arg5 = (bool ) tempbool5;
-    wxWindow_SetScrollbar(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetScrollbar(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1991,8 +2292,12 @@ static PyObject *_wrap_wxWindow_SetScrollPos(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    wxWindow_SetScrollPos(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetScrollPos(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2017,8 +2322,12 @@ static PyObject *_wrap_wxWindow_SetDimensions(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetDimensions(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetDimensions(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2048,8 +2357,12 @@ static PyObject *_wrap_wxWindow_SetSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetSize(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetSize(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2079,8 +2392,12 @@ static PyObject *_wrap_wxWindow_SetPosition(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetPosition(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetPosition(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2106,8 +2423,12 @@ static PyObject *_wrap_wxWindow_SetSizeHints(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetSizeHints(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetSizeHints(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2129,8 +2450,12 @@ static PyObject *_wrap_wxWindow_SetClientSizeWH(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxWindow_SetClientSizeWH(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetClientSizeWH(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2158,8 +2483,12 @@ static PyObject *_wrap_wxWindow_SetClientSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetClientSize(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetClientSize(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2187,8 +2516,12 @@ static PyObject *_wrap_wxWindow_SetCursor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetCursor(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetCursor(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2215,10 +2548,14 @@ static PyObject *_wrap_wxWindow_SetTitle(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxWindow_SetTitle(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetTitle(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2246,8 +2583,12 @@ static PyObject *_wrap_wxWindow_Show(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxWindow_Show(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_Show(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2267,8 +2608,12 @@ static PyObject *_wrap_wxWindow_TransferDataFromWindow(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (bool )wxWindow_TransferDataFromWindow(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_TransferDataFromWindow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2288,8 +2633,12 @@ static PyObject *_wrap_wxWindow_TransferDataToWindow(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (bool )wxWindow_TransferDataToWindow(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_TransferDataToWindow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2309,8 +2658,12 @@ static PyObject *_wrap_wxWindow_Validate(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxWindow_Validate(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxWindow_Validate(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2331,8 +2684,12 @@ static PyObject *_wrap_wxWindow_WarpPointer(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_WarpPointer(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_WarpPointer(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2362,8 +2719,12 @@ static PyObject *_wrap_wxWindow_ConvertDialogPointToPixels(PyObject *self, PyObj
         return NULL;
         }
     }
-    _result = new wxPoint (wxWindow_ConvertDialogPointToPixels(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxWindow_ConvertDialogPointToPixels(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2393,8 +2754,12 @@ static PyObject *_wrap_wxWindow_ConvertDialogSizeToPixels(PyObject *self, PyObje
         return NULL;
         }
     }
-    _result = new wxSize (wxWindow_ConvertDialogSizeToPixels(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxWindow_ConvertDialogSizeToPixels(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2424,8 +2789,12 @@ static PyObject *_wrap_wxWindow_ConvertPixelPointToDialog(PyObject *self, PyObje
         return NULL;
         }
     }
-    _result = new wxPoint (wxWindow_ConvertPixelPointToDialog(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxWindow_ConvertPixelPointToDialog(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2455,8 +2824,12 @@ static PyObject *_wrap_wxWindow_ConvertPixelSizeToDialog(PyObject *self, PyObjec
         return NULL;
         }
     }
-    _result = new wxSize (wxWindow_ConvertPixelSizeToDialog(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxWindow_ConvertPixelSizeToDialog(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2483,10 +2856,14 @@ static PyObject *_wrap_wxWindow_SetToolTipString(PyObject *self, PyObject *args)
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxWindow_SetToolTipString(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetToolTipString(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2518,8 +2895,12 @@ static PyObject *_wrap_wxWindow_SetToolTip(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxWindow_SetToolTip(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxWindow_SetToolTip(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2541,8 +2922,12 @@ static PyObject *_wrap_wxWindow_GetToolTip(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxToolTip *)wxWindow_GetToolTip(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolTip_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxToolTip *)wxWindow_GetToolTip(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxToolTip_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2599,8 +2984,12 @@ static PyObject *_wrap_new_wxPanel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxPanel *)new_wxPanel(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPanel_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPanel *)new_wxPanel(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPanel_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2620,8 +3009,12 @@ static PyObject *_wrap_wxPanel_InitDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPanel_InitDialog(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPanel_InitDialog(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2681,7 +3074,7 @@ static PyObject *_wrap_new_wxDialog(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxPoint_p")) {
@@ -2695,8 +3088,12 @@ static PyObject *_wrap_new_wxDialog(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxDialog *)new_wxDialog(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDialog_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxDialog *)new_wxDialog(_arg0,_arg1,*_arg2,*_arg3,*_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDialog_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj2)
@@ -2721,8 +3118,12 @@ static PyObject *_wrap_wxDialog_Centre(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDialog_Centre(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDialog_Centre(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2743,8 +3144,12 @@ static PyObject *_wrap_wxDialog_EndModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxDialog_EndModal(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDialog_EndModal(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2765,8 +3170,12 @@ static PyObject *_wrap_wxDialog_GetTitle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxDialog_GetTitle(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxDialog_GetTitle(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2793,8 +3202,12 @@ static PyObject *_wrap_wxDialog_Iconize(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxDialog_Iconize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDialog_Iconize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2815,8 +3228,12 @@ static PyObject *_wrap_wxDialog_IsIconized(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxDialog_IsIconized(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDialog_IsIconized(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2838,8 +3255,12 @@ static PyObject *_wrap_wxDialog_SetModal(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxDialog_SetModal(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDialog_SetModal(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2860,8 +3281,12 @@ static PyObject *_wrap_wxDialog_IsModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxDialog_IsModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDialog_IsModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2887,10 +3312,14 @@ static PyObject *_wrap_wxDialog_SetTitle(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxDialog_SetTitle(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxDialog_SetTitle(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2918,8 +3347,12 @@ static PyObject *_wrap_wxDialog_Show(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxDialog_Show(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxDialog_Show(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2939,8 +3372,12 @@ static PyObject *_wrap_wxDialog_ShowModal(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxDialog_ShowModal(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDialog_ShowModal(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2996,8 +3433,12 @@ static PyObject *_wrap_new_wxScrolledWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxScrolledWindow *)new_wxScrolledWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrolledWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScrolledWindow *)new_wxScrolledWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrolledWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3023,8 +3464,12 @@ static PyObject *_wrap_wxScrolledWindow_EnableScrolling(PyObject *self, PyObject
     }
     _arg1 = (bool ) tempbool1;
     _arg2 = (bool ) tempbool2;
-    wxScrolledWindow_EnableScrolling(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_EnableScrolling(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3054,8 +3499,12 @@ static PyObject *_wrap_wxScrolledWindow_GetScrollPixelsPerUnit(PyObject *self, P
         return NULL;
         }
     }
-    wxScrolledWindow_GetScrollPixelsPerUnit(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_GetScrollPixelsPerUnit(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3095,8 +3544,12 @@ static PyObject *_wrap_wxScrolledWindow_GetVirtualSize(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxScrolledWindow_GetVirtualSize(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_GetVirtualSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3127,8 +3580,12 @@ static PyObject *_wrap_wxScrolledWindow_IsRetained(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxScrolledWindow_IsRetained(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxScrolledWindow_IsRetained(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3155,8 +3612,12 @@ static PyObject *_wrap_wxScrolledWindow_PrepareDC(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxScrolledWindow_PrepareDC(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_PrepareDC(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3178,8 +3639,12 @@ static PyObject *_wrap_wxScrolledWindow_Scroll(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxScrolledWindow_Scroll(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_Scroll(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3205,8 +3670,12 @@ static PyObject *_wrap_wxScrolledWindow_SetScrollbars(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxScrolledWindow_SetScrollbars(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_SetScrollbars(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3236,8 +3705,12 @@ static PyObject *_wrap_wxScrolledWindow_ViewStart(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxScrolledWindow_ViewStart(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxScrolledWindow_ViewStart(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -3277,10 +3750,14 @@ static PyObject *_wrap_new_wxMenu(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
-    _result = (wxMenu *)new_wxMenu(*_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenu_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenu *)new_wxMenu(*_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenu_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -3315,7 +3792,7 @@ static PyObject *_wrap_wxMenu_Append(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_obj3)
 {
@@ -3323,10 +3800,14 @@ static PyObject *_wrap_wxMenu_Append(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg3 = new wxString(PyString_AsString(_obj3));
+    _arg3 = new wxString(PyString_AsString(_obj3), PyString_Size(_obj3));
 }
-    wxMenu_Append(_arg0,_arg1,*_arg2,*_arg3,_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_Append(_arg0,_arg1,*_arg2,*_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -3366,7 +3847,7 @@ static PyObject *_wrap_wxMenu_AppendMenu(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
     if (_argc3) {
         if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxMenu_p")) {
@@ -3380,10 +3861,14 @@ static PyObject *_wrap_wxMenu_AppendMenu(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg4 = new wxString(PyString_AsString(_obj4));
+    _arg4 = new wxString(PyString_AsString(_obj4), PyString_Size(_obj4));
 }
-    wxMenu_AppendMenu(_arg0,_arg1,*_arg2,_arg3,*_arg4);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_AppendMenu(_arg0,_arg1,*_arg2,_arg3,*_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -3411,8 +3896,12 @@ static PyObject *_wrap_wxMenu_AppendSeparator(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxMenu_AppendSeparator(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_AppendSeparator(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3432,8 +3921,12 @@ static PyObject *_wrap_wxMenu_Break(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxMenu_Break(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_Break(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3457,8 +3950,12 @@ static PyObject *_wrap_wxMenu_Check(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxMenu_Check(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_Check(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3482,8 +3979,12 @@ static PyObject *_wrap_wxMenu_Enable(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxMenu_Enable(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_Enable(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3511,10 +4012,14 @@ static PyObject *_wrap_wxMenu_FindItem(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    _result = (int )wxMenu_FindItem(_arg0,*_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMenu_FindItem(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -3538,8 +4043,12 @@ static PyObject *_wrap_wxMenu_GetTitle(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxMenu_GetTitle(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxMenu_GetTitle(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -3570,10 +4079,14 @@ static PyObject *_wrap_wxMenu_SetTitle(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxMenu_SetTitle(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_SetTitle(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -3600,8 +4113,12 @@ static PyObject *_wrap_wxMenu_FindItemForId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMenuItem *)wxMenu_FindItemForId(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuItem_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenuItem *)wxMenu_FindItemForId(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3623,8 +4140,12 @@ static PyObject *_wrap_wxMenu_GetHelpString(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxMenu_GetHelpString(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxMenu_GetHelpString(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -3650,8 +4171,12 @@ static PyObject *_wrap_wxMenu_GetLabel(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxMenu_GetLabel(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxMenu_GetLabel(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -3683,10 +4208,14 @@ static PyObject *_wrap_wxMenu_SetHelpString(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxMenu_SetHelpString(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_SetHelpString(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -3712,8 +4241,12 @@ static PyObject *_wrap_wxMenu_IsChecked(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenu_IsChecked(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenu_IsChecked(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3734,8 +4267,12 @@ static PyObject *_wrap_wxMenu_IsEnabled(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenu_IsEnabled(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenu_IsEnabled(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3762,10 +4299,14 @@ static PyObject *_wrap_wxMenu_SetLabel(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxMenu_SetLabel(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenu_SetLabel(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -3809,14 +4350,18 @@ static PyObject *_wrap_new_wxPyMenu(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg0 = new wxString(PyString_AsString(_obj0));
+    _arg0 = new wxString(PyString_AsString(_obj0), PyString_Size(_obj0));
 }
     if (_obj1)
 {
   _arg1 = _obj1;
 }
-    _result = (wxPyMenu *)new_wxPyMenu(*_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyMenu_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyMenu *)new_wxPyMenu(*_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyMenu_p");
     _resultobj = Py_BuildValue("s",_ptemp);
 {
     if (_obj0)
@@ -3840,8 +4385,12 @@ static PyObject *_wrap_delete_wxPyMenu(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxPyMenu(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPyMenu(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3863,8 +4412,12 @@ static PyObject *_wrap_new_wxMenuBar(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxMenuBar")) 
         return NULL;
-    _result = (wxMenuBar *)new_wxMenuBar();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenuBar *)new_wxMenuBar();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3899,10 +4452,14 @@ static PyObject *_wrap_wxMenuBar_Append(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxMenuBar_Append(_arg0,_arg1,*_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuBar_Append(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -3930,8 +4487,12 @@ static PyObject *_wrap_wxMenuBar_Check(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxMenuBar_Check(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuBar_Check(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3953,8 +4514,12 @@ static PyObject *_wrap_wxMenuBar_Checked(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenuBar_Checked(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenuBar_Checked(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3977,8 +4542,12 @@ static PyObject *_wrap_wxMenuBar_Enable(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxMenuBar_Enable(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuBar_Enable(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4000,8 +4569,12 @@ static PyObject *_wrap_wxMenuBar_Enabled(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenuBar_Enabled(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenuBar_Enabled(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4030,17 +4603,21 @@ static PyObject *_wrap_wxMenuBar_FindMenuItem(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
 {
     if (!PyString_Check(_obj2)) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (int )wxMenuBar_FindMenuItem(_arg0,*_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMenuBar_FindMenuItem(_arg0,*_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj1)
         delete _arg1;
@@ -4070,8 +4647,12 @@ static PyObject *_wrap_wxMenuBar_FindItemForId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMenuItem *)wxMenuBar_FindItemForId(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuItem_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenuItem *)wxMenuBar_FindItemForId(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4092,8 +4673,12 @@ static PyObject *_wrap_wxMenuBar_GetMenuCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxMenuBar_GetMenuCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMenuBar_GetMenuCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4115,8 +4700,31 @@ static PyObject *_wrap_wxMenuBar_GetMenu(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMenu *)wxMenuBar_GetMenu(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenu_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenu *)wxMenuBar_GetMenu(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenu_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define new_wxMenuItem() (new wxMenuItem())
+static PyObject *_wrap_new_wxMenuItem(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxMenuItem * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxMenuItem")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenuItem *)new_wxMenuItem();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenuItem_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4137,8 +4745,12 @@ static PyObject *_wrap_wxMenuItem_IsSeparator(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenuItem_IsSeparator(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenuItem_IsSeparator(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4158,8 +4770,12 @@ static PyObject *_wrap_wxMenuItem_IsEnabled(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenuItem_IsEnabled(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenuItem_IsEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4179,8 +4795,12 @@ static PyObject *_wrap_wxMenuItem_IsChecked(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenuItem_IsChecked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenuItem_IsChecked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4200,8 +4820,12 @@ static PyObject *_wrap_wxMenuItem_IsCheckable(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxMenuItem_IsCheckable(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMenuItem_IsCheckable(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4221,8 +4845,12 @@ static PyObject *_wrap_wxMenuItem_GetId(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxMenuItem_GetId(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMenuItem_GetId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -4243,8 +4871,12 @@ static PyObject *_wrap_wxMenuItem_GetSubMenu(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxMenu *)wxMenuItem_GetSubMenu(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenu_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxMenu *)wxMenuItem_GetSubMenu(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxMenu_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -4271,10 +4903,14 @@ static PyObject *_wrap_wxMenuItem_SetName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxMenuItem_SetName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuItem_SetName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -4299,10 +4935,16 @@ static PyObject *_wrap_wxMenuItem_GetName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    const wxString & _result_ref = wxMenuItem_GetName(_arg0);
-    _result = (wxString *) &_result_ref;
 {
-    _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxMenuItem_GetName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
 }
     return _resultobj;
 }
@@ -4323,10 +4965,16 @@ static PyObject *_wrap_wxMenuItem_GetHelp(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    const wxString & _result_ref = wxMenuItem_GetHelp(_arg0);
-    _result = (wxString *) &_result_ref;
 {
-    _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxMenuItem_GetHelp(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
 }
     return _resultobj;
 }
@@ -4353,10 +5001,14 @@ static PyObject *_wrap_wxMenuItem_SetHelp(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxMenuItem_SetHelp(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuItem_SetHelp(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -4383,8 +5035,12 @@ static PyObject *_wrap_wxMenuItem_Enable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxMenuItem_Enable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuItem_Enable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4407,8 +5063,12 @@ static PyObject *_wrap_wxMenuItem_Check(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxMenuItem_Check(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMenuItem_Check(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -4426,6 +5086,7 @@ static PyMethodDef windowscMethods[] = {
         { "wxMenuItem_IsChecked", _wrap_wxMenuItem_IsChecked, 1 },
         { "wxMenuItem_IsEnabled", _wrap_wxMenuItem_IsEnabled, 1 },
         { "wxMenuItem_IsSeparator", _wrap_wxMenuItem_IsSeparator, 1 },
+        { "new_wxMenuItem", _wrap_new_wxMenuItem, 1 },
         { "wxMenuBar_GetMenu", _wrap_wxMenuBar_GetMenu, 1 },
         { "wxMenuBar_GetMenuCount", _wrap_wxMenuBar_GetMenuCount, 1 },
         { "wxMenuBar_FindItemForId", _wrap_wxMenuBar_FindItemForId, 1 },
@@ -4482,6 +5143,8 @@ static PyMethodDef windowscMethods[] = {
         { "wxWindow_SetToolTipString", _wrap_wxWindow_SetToolTipString, 1 },
         { "wxWindow_ConvertPixelSizeToDialog", _wrap_wxWindow_ConvertPixelSizeToDialog, 1 },
         { "wxWindow_ConvertPixelPointToDialog", _wrap_wxWindow_ConvertPixelPointToDialog, 1 },
+        { "wxWindow_DLG_SZE", _wrap_wxWindow_ConvertDialogSizeToPixels, 1 },
+        { "wxWindow_DLG_PNT", _wrap_wxWindow_ConvertDialogPointToPixels, 1 },
         { "wxWindow_ConvertDialogSizeToPixels", _wrap_wxWindow_ConvertDialogSizeToPixels, 1 },
         { "wxWindow_ConvertDialogPointToPixels", _wrap_wxWindow_ConvertDialogPointToPixels, 1 },
         { "wxWindow_WarpPointer", _wrap_wxWindow_WarpPointer, 1 },
@@ -4565,6 +5228,7 @@ static PyMethodDef windowscMethods[] = {
         { "wxWindow_CaptureMouse", _wrap_wxWindow_CaptureMouse, 1 },
         { "new_wxWindow", _wrap_new_wxWindow, 1 },
         { "wxEvtHandler_Connect", _wrap_wxEvtHandler_Connect, 1 },
+        { "wxEvtHandler_ProcessEvent", _wrap_wxEvtHandler_ProcessEvent, 1 },
         { NULL, NULL }
 };
 static PyObject *SWIG_globals;
index 1a1e4a3bb2314041d32f22db56011492e2df547f..5cc27a8e2d95fd051ac6b12b8166b8abca91bf98 100644 (file)
@@ -16,6 +16,9 @@ class wxEvtHandlerPtr :
     def __init__(self,this):
         self.this = this
         self.thisown = 0
+    def ProcessEvent(self,arg0):
+        val = windowsc.wxEvtHandler_ProcessEvent(self.this,arg0.this)
+        return val
     def Connect(self,arg0,arg1,arg2,arg3):
         val = windowsc.wxEvtHandler_Connect(self.this,arg0,arg1,arg2,arg3)
         return val
@@ -309,6 +312,16 @@ class wxWindowPtr(wxEvtHandlerPtr):
         val = wxSizePtr(val)
         val.thisown = 1
         return val
+    def DLG_PNT(self,arg0):
+        val = windowsc.wxWindow_DLG_PNT(self.this,arg0.this)
+        val = wxPointPtr(val)
+        val.thisown = 1
+        return val
+    def DLG_SZE(self,arg0):
+        val = windowsc.wxWindow_DLG_SZE(self.this,arg0.this)
+        val = wxSizePtr(val)
+        val.thisown = 1
+        return val
     def ConvertPixelPointToDialog(self,arg0):
         val = windowsc.wxWindow_ConvertPixelPointToDialog(self.this,arg0.this)
         val = wxPointPtr(val)
@@ -634,8 +647,9 @@ class wxMenuItemPtr :
     def __repr__(self):
         return "<C wxMenuItem instance>"
 class wxMenuItem(wxMenuItemPtr):
-    def __init__(self,this):
-        self.this = this
+    def __init__(self) :
+        self.this = windowsc.new_wxMenuItem()
+        self.thisown = 1
 
 
 
index a97c35e70000264f73ce20f556529e03635b9384..8a02b4aa565471ffd217c54efce1a7202dcc4178 100644 (file)
@@ -129,8 +129,12 @@ static PyObject *_wrap_new_wxGridCell(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxGridCell")) 
         return NULL;
-    _result = (wxGridCell *)new_wxGridCell();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)new_wxGridCell();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -150,8 +154,12 @@ static PyObject *_wrap_delete_wxGridCell(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    delete_wxGridCell(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxGridCell(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -172,9 +180,13 @@ static PyObject *_wrap_wxGridCell_GetTextValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxString & _result_ref = wxGridCell_GetTextValue(_arg0);
-    _result = (wxString *) &_result_ref;
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxString & _result_ref = wxGridCell_GetTextValue(_arg0);
+    _result = (wxString *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -202,10 +214,14 @@ static PyObject *_wrap_wxGridCell_SetTextValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxGridCell_SetTextValue(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetTextValue(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -231,9 +247,13 @@ static PyObject *_wrap_wxGridCell_GetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont & _result_ref = wxGridCell_GetFont(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGridCell_GetFont(_arg0);
     _result = (wxFont *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -261,8 +281,12 @@ static PyObject *_wrap_wxGridCell_SetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGridCell_SetFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -284,9 +308,13 @@ static PyObject *_wrap_wxGridCell_GetTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGridCell_GetTextColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGridCell_GetTextColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -314,8 +342,12 @@ static PyObject *_wrap_wxGridCell_SetTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGridCell_SetTextColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetTextColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -337,9 +369,13 @@ static PyObject *_wrap_wxGridCell_GetBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGridCell_GetBackgroundColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGridCell_GetBackgroundColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -367,8 +403,12 @@ static PyObject *_wrap_wxGridCell_SetBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxGridCell_SetBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -390,9 +430,13 @@ static PyObject *_wrap_wxGridCell_GetBackgroundBrush(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxBrush & _result_ref = wxGridCell_GetBackgroundBrush(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush & _result_ref = wxGridCell_GetBackgroundBrush(_arg0);
     _result = (wxBrush *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -413,8 +457,12 @@ static PyObject *_wrap_wxGridCell_GetAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridCell_GetAlignment(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridCell_GetAlignment(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -434,8 +482,12 @@ static PyObject *_wrap_wxGridCell_SetAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGridCell_SetAlignment(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -457,8 +509,12 @@ static PyObject *_wrap_wxGridCell_GetCellBitmap(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxGridCell_GetCellBitmap(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxGridCell_GetCellBitmap(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -486,8 +542,12 @@ static PyObject *_wrap_wxGridCell_SetCellBitmap(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGridCell_SetCellBitmap(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetCellBitmap(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -552,8 +612,12 @@ static PyObject *_wrap_new_wxGrid(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGrid *)new_wxGrid(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGrid_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGrid *)new_wxGrid(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGrid_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -573,8 +637,12 @@ static PyObject *_wrap_wxGrid_AdjustScrollbars(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_AdjustScrollbars(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_AdjustScrollbars(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -599,8 +667,12 @@ static PyObject *_wrap_wxGrid_AppendCols(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    _result = (bool )wxGrid_AppendCols(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_AppendCols(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -624,8 +696,12 @@ static PyObject *_wrap_wxGrid_AppendRows(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    _result = (bool )wxGrid_AppendRows(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_AppendRows(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -644,8 +720,12 @@ static PyObject *_wrap_wxGrid_BeginBatch(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_BeginBatch(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_BeginBatch(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -678,8 +758,12 @@ static PyObject *_wrap_wxGrid_CellHitTest(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGrid_CellHitTest(_arg0,_arg1,_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_CellHitTest(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     PyObject *o;
     o = PyInt_FromLong((long) (*_arg3));
@@ -716,8 +800,12 @@ static PyObject *_wrap_wxGrid_CreateGrid(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGrid_CreateGrid(_arg0,_arg1,_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_CreateGrid(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -737,8 +825,12 @@ static PyObject *_wrap_wxGrid_CurrentCellVisible(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxGrid_CurrentCellVisible(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_CurrentCellVisible(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -763,8 +855,12 @@ static PyObject *_wrap_wxGrid_DeleteCols(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_DeleteCols(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_DeleteCols(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -789,8 +885,12 @@ static PyObject *_wrap_wxGrid_DeleteRows(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_DeleteRows(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_DeleteRows(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -809,8 +909,12 @@ static PyObject *_wrap_wxGrid_EndBatch(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_EndBatch(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_EndBatch(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -831,8 +935,12 @@ static PyObject *_wrap_wxGrid_GetBatchCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetBatchCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetBatchCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -855,8 +963,12 @@ static PyObject *_wrap_wxGrid_GetCell(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGridCell *)wxGrid_GetCell(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)wxGrid_GetCell(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -879,8 +991,12 @@ static PyObject *_wrap_wxGrid_GetCellAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCellAlignment(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCellAlignment(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -900,8 +1016,12 @@ static PyObject *_wrap_wxGrid_GetDefCellAlignment(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetDefCellAlignment(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetDefCellAlignment(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -924,9 +1044,13 @@ static PyObject *_wrap_wxGrid_GetCellBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetCellBackgroundColour(_arg0,_arg1,_arg2);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetCellBackgroundColour(_arg0,_arg1,_arg2);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -948,9 +1072,13 @@ static PyObject *_wrap_wxGrid_GetDefCellBackgroundColour(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetDefCellBackgroundColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetDefCellBackgroundColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -974,9 +1102,13 @@ static PyObject *_wrap_wxGrid_GetCellTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetCellTextColour(_arg0,_arg1,_arg2);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetCellTextColour(_arg0,_arg1,_arg2);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -998,9 +1130,13 @@ static PyObject *_wrap_wxGrid_GetDefCellTextColour(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetDefCellTextColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetDefCellTextColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1024,9 +1160,13 @@ static PyObject *_wrap_wxGrid_GetCellTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont & _result_ref = wxGrid_GetCellTextFont(_arg0,_arg1,_arg2);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGrid_GetCellTextFont(_arg0,_arg1,_arg2);
     _result = (wxFont *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1048,9 +1188,13 @@ static PyObject *_wrap_wxGrid_GetDefCellTextFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxFont & _result_ref = wxGrid_GetDefCellTextFont(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGrid_GetDefCellTextFont(_arg0);
     _result = (wxFont *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1073,9 +1217,13 @@ static PyObject *_wrap_wxGrid_GetCellValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxString & _result_ref = wxGrid_GetCellValue(_arg0,_arg1,_arg2);
-    _result = (wxString *) &_result_ref;
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxString & _result_ref = wxGrid_GetCellValue(_arg0,_arg1,_arg2);
+    _result = (wxString *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -1097,8 +1245,12 @@ static PyObject *_wrap_wxGrid_GetCols(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCols(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCols(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1119,8 +1271,12 @@ static PyObject *_wrap_wxGrid_GetColumnWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetColumnWidth(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetColumnWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1141,9 +1297,12 @@ static PyObject *_wrap_wxGrid_GetCurrentRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRect & _result_ref = wxGrid_GetCurrentRect(_arg0);
-    _result = (wxRect *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxGrid_GetCurrentRect(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1164,8 +1323,12 @@ static PyObject *_wrap_wxGrid_GetCursorColumn(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCursorColumn(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCursorColumn(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1185,8 +1348,12 @@ static PyObject *_wrap_wxGrid_GetCursorRow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCursorRow(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCursorRow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1206,8 +1373,12 @@ static PyObject *_wrap_wxGrid_GetEditable(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGrid_GetEditable(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_GetEditable(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1228,8 +1399,12 @@ static PyObject *_wrap_wxGrid_GetHorizScrollBar(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxScrollBar *)wxGrid_GetHorizScrollBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScrollBar *)wxGrid_GetHorizScrollBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1251,8 +1426,12 @@ static PyObject *_wrap_wxGrid_GetLabelAlignment(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetLabelAlignment(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetLabelAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1273,9 +1452,13 @@ static PyObject *_wrap_wxGrid_GetLabelBackgroundColour(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetLabelBackgroundColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetLabelBackgroundColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1297,8 +1480,12 @@ static PyObject *_wrap_wxGrid_GetLabelSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetLabelSize(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetLabelSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1319,9 +1506,13 @@ static PyObject *_wrap_wxGrid_GetLabelTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetLabelTextColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetLabelTextColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1343,9 +1534,13 @@ static PyObject *_wrap_wxGrid_GetLabelTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxFont & _result_ref = wxGrid_GetLabelTextFont(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGrid_GetLabelTextFont(_arg0);
     _result = (wxFont *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1368,9 +1563,13 @@ static PyObject *_wrap_wxGrid_GetLabelValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxString & _result_ref = wxGrid_GetLabelValue(_arg0,_arg1,_arg2);
-    _result = (wxString *) &_result_ref;
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxString & _result_ref = wxGrid_GetLabelValue(_arg0,_arg1,_arg2);
+    _result = (wxString *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -1393,8 +1592,12 @@ static PyObject *_wrap_wxGrid_GetRowHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetRowHeight(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetRowHeight(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1414,8 +1617,12 @@ static PyObject *_wrap_wxGrid_GetRows(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetRows(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetRows(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1435,8 +1642,12 @@ static PyObject *_wrap_wxGrid_GetScrollPosX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetScrollPosX(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetScrollPosX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1456,8 +1667,12 @@ static PyObject *_wrap_wxGrid_GetScrollPosY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetScrollPosY(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetScrollPosY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1478,8 +1693,12 @@ static PyObject *_wrap_wxGrid_GetTextItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxTextCtrl *)wxGrid_GetTextItem(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTextCtrl *)wxGrid_GetTextItem(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1501,8 +1720,12 @@ static PyObject *_wrap_wxGrid_GetVertScrollBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxScrollBar *)wxGrid_GetVertScrollBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScrollBar *)wxGrid_GetVertScrollBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1528,8 +1751,12 @@ static PyObject *_wrap_wxGrid_InsertCols(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_InsertCols(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_InsertCols(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1554,8 +1781,12 @@ static PyObject *_wrap_wxGrid_InsertRows(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_InsertRows(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_InsertRows(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1577,8 +1808,12 @@ static PyObject *_wrap_wxGrid_OnActivate(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxGrid_OnActivate(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_OnActivate(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1601,8 +1836,12 @@ static PyObject *_wrap_wxGrid_SetCellAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetCellAlignment(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellAlignment(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1623,8 +1862,12 @@ static PyObject *_wrap_wxGrid_SetDefCellAlignment(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxGrid_SetDefCellAlignment(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1654,8 +1897,12 @@ static PyObject *_wrap_wxGrid_SetCellBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxGrid_SetCellBackgroundColour(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellBackgroundColour(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1683,8 +1930,12 @@ static PyObject *_wrap_wxGrid_SetDefCellBackgroundColour(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxGrid_SetDefCellBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1714,8 +1965,12 @@ static PyObject *_wrap_wxGrid_SetCellTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetCellTextColour(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellTextColour(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1743,8 +1998,12 @@ static PyObject *_wrap_wxGrid_SetDefCellTextColour(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxGrid_SetDefCellTextColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellTextColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1774,8 +2033,12 @@ static PyObject *_wrap_wxGrid_SetCellTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetCellTextFont(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellTextFont(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1803,8 +2066,12 @@ static PyObject *_wrap_wxGrid_SetDefCellTextFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetDefCellTextFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellTextFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1833,10 +2100,14 @@ static PyObject *_wrap_wxGrid_SetCellValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxGrid_SetCellValue(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellValue(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1862,8 +2133,12 @@ static PyObject *_wrap_wxGrid_SetColumnWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetColumnWidth(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetColumnWidth(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1891,8 +2166,12 @@ static PyObject *_wrap_wxGrid_SetDividerPen(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetDividerPen(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDividerPen(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1915,8 +2194,12 @@ static PyObject *_wrap_wxGrid_SetEditable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxGrid_SetEditable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetEditable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1938,8 +2221,12 @@ static PyObject *_wrap_wxGrid_SetGridCursor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetGridCursor(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetGridCursor(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1961,8 +2248,12 @@ static PyObject *_wrap_wxGrid_SetLabelAlignment(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetLabelAlignment(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelAlignment(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1990,8 +2281,12 @@ static PyObject *_wrap_wxGrid_SetLabelBackgroundColour(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxGrid_SetLabelBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2013,8 +2308,12 @@ static PyObject *_wrap_wxGrid_SetLabelSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetLabelSize(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2042,8 +2341,12 @@ static PyObject *_wrap_wxGrid_SetLabelTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetLabelTextColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelTextColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2071,8 +2374,12 @@ static PyObject *_wrap_wxGrid_SetLabelTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetLabelTextFont(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelTextFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2101,10 +2408,14 @@ static PyObject *_wrap_wxGrid_SetLabelValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxGrid_SetLabelValue(_arg0,_arg1,*_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelValue(_arg0,_arg1,*_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -2130,8 +2441,12 @@ static PyObject *_wrap_wxGrid_SetRowHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetRowHeight(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetRowHeight(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2151,8 +2466,12 @@ static PyObject *_wrap_wxGrid_UpdateDimensions(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_UpdateDimensions(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_UpdateDimensions(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2182,8 +2501,12 @@ static PyObject *_wrap_wxGridEvent_m_row_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_row_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_row_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2203,8 +2526,12 @@ static PyObject *_wrap_wxGridEvent_m_row_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_row_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_row_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2225,8 +2552,12 @@ static PyObject *_wrap_wxGridEvent_m_col_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_col_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_col_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2246,8 +2577,12 @@ static PyObject *_wrap_wxGridEvent_m_col_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_col_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_col_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2268,8 +2603,12 @@ static PyObject *_wrap_wxGridEvent_m_x_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_x_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_x_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2289,8 +2628,12 @@ static PyObject *_wrap_wxGridEvent_m_x_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_x_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_x_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2311,8 +2654,12 @@ static PyObject *_wrap_wxGridEvent_m_y_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_y_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_y_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2332,8 +2679,12 @@ static PyObject *_wrap_wxGridEvent_m_y_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridEvent_m_y_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_y_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2356,8 +2707,12 @@ static PyObject *_wrap_wxGridEvent_m_control_set(PyObject *self, PyObject *args)
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxGridEvent_m_control_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_control_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2377,8 +2732,12 @@ static PyObject *_wrap_wxGridEvent_m_control_get(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxGridEvent_m_control_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_control_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2401,8 +2760,12 @@ static PyObject *_wrap_wxGridEvent_m_shift_set(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    _result = (bool )wxGridEvent_m_shift_set(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_shift_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2422,8 +2785,12 @@ static PyObject *_wrap_wxGridEvent_m_shift_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGridEvent_m_shift_get(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_shift_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2452,8 +2819,12 @@ static PyObject *_wrap_wxGridEvent_m_cell_set(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGridCell *)wxGridEvent_m_cell_set(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)wxGridEvent_m_cell_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2475,8 +2846,12 @@ static PyObject *_wrap_wxGridEvent_m_cell_get(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGridCell *)wxGridEvent_m_cell_get(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)wxGridEvent_m_cell_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2513,8 +2888,12 @@ static PyObject *_wrap_wxNotebookEvent_GetSelection(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxNotebookEvent_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebookEvent_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2534,8 +2913,12 @@ static PyObject *_wrap_wxNotebookEvent_GetOldSelection(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxNotebookEvent_GetOldSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebookEvent_GetOldSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2599,8 +2982,12 @@ static PyObject *_wrap_new_wxNotebook(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxNotebook *)new_wxNotebook(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebook_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxNotebook *)new_wxNotebook(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebook_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2621,8 +3008,12 @@ static PyObject *_wrap_wxNotebook_GetPageCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetPageCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetPageCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2643,8 +3034,12 @@ static PyObject *_wrap_wxNotebook_SetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_SetSelection(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_SetSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2666,8 +3061,12 @@ static PyObject *_wrap_wxNotebook_AdvanceSelection(PyObject *self, PyObject *arg
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxNotebook_AdvanceSelection(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebook_AdvanceSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2688,8 +3087,12 @@ static PyObject *_wrap_wxNotebook_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2717,10 +3120,14 @@ static PyObject *_wrap_wxNotebook_SetPageText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (bool )wxNotebook_SetPageText(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_SetPageText(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -2745,8 +3152,12 @@ static PyObject *_wrap_wxNotebook_GetPageText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxNotebook_GetPageText(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxNotebook_GetPageText(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2778,8 +3189,12 @@ static PyObject *_wrap_wxNotebook_SetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxNotebook_SetImageList(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebook_SetImageList(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2801,8 +3216,12 @@ static PyObject *_wrap_wxNotebook_GetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxImageList *)wxNotebook_GetImageList(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageList *)wxNotebook_GetImageList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2824,8 +3243,12 @@ static PyObject *_wrap_wxNotebook_GetPageImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetPageImage(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetPageImage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2847,8 +3270,12 @@ static PyObject *_wrap_wxNotebook_SetPageImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxNotebook_SetPageImage(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_SetPageImage(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2868,8 +3295,12 @@ static PyObject *_wrap_wxNotebook_GetRowCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetRowCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetRowCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2890,8 +3321,38 @@ static PyObject *_wrap_wxNotebook_DeletePage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxNotebook_DeletePage(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_DeletePage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxNotebook_RemovePage(_swigobj,_swigarg0)  (_swigobj->RemovePage(_swigarg0))
+static PyObject *_wrap_wxNotebook_RemovePage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxNotebook * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxNotebook_RemovePage",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_RemovePage. Expected _wxNotebook_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_RemovePage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2911,8 +3372,12 @@ static PyObject *_wrap_wxNotebook_DeleteAllPages(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxNotebook_DeleteAllPages(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_DeleteAllPages(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2923,15 +3388,14 @@ static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
     wxNotebook * _arg0;
     wxWindow * _arg1;
     wxString * _arg2;
-    bool  _arg3 = (0);
+    int  _arg3 = (0);
     int  _arg4 = -1;
     char * _argc0 = 0;
     char * _argc1 = 0;
     PyObject * _obj2 = 0;
-    int tempbool3;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ssO|ii:wxNotebook_AddPage",&_argc0,&_argc1,&_obj2,&tempbool3,&_arg4)) 
+    if(!PyArg_ParseTuple(args,"ssO|ii:wxNotebook_AddPage",&_argc0,&_argc1,&_obj2,&_arg3,&_arg4)) 
         return NULL;
     if (_argc0) {
         if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
@@ -2950,11 +3414,14 @@ static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _arg3 = (bool ) tempbool3;
-    _result = (bool )wxNotebook_AddPage(_arg0,_arg1,*_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_AddPage(_arg0,_arg1,*_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -2980,12 +3447,44 @@ static PyObject *_wrap_wxNotebook_GetPage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxNotebookPage *)wxNotebook_GetPage(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebookPage_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxNotebookPage *)wxNotebook_GetPage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebookPage_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
+static void  wxNotebook_ResizeChildren(wxNotebook *self) {
+            wxSizeEvent evt(self->GetClientSize());
+            self->OnSize(evt);
+        }
+static PyObject *_wrap_wxNotebook_ResizeChildren(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxNotebook * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxNotebook_ResizeChildren",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_ResizeChildren. Expected _wxNotebook_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebook_ResizeChildren(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 static void *SwigwxSplitterWindowTowxWindow(void *ptr) {
     wxSplitterWindow *src;
     wxWindow *dest;
@@ -3038,8 +3537,12 @@ static PyObject *_wrap_new_wxSplitterWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSplitterWindow *)new_wxSplitterWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSplitterWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSplitterWindow *)new_wxSplitterWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSplitterWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3060,8 +3563,12 @@ static PyObject *_wrap_wxSplitterWindow_GetBorderSize(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetBorderSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetBorderSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3081,8 +3588,12 @@ static PyObject *_wrap_wxSplitterWindow_GetMinimumPaneSize(PyObject *self, PyObj
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetMinimumPaneSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetMinimumPaneSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3102,8 +3613,12 @@ static PyObject *_wrap_wxSplitterWindow_GetSashPosition(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetSashPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetSashPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3123,8 +3638,12 @@ static PyObject *_wrap_wxSplitterWindow_GetSashSize(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetSashSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetSashSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3144,8 +3663,12 @@ static PyObject *_wrap_wxSplitterWindow_GetSplitMode(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetSplitMode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetSplitMode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3166,8 +3689,12 @@ static PyObject *_wrap_wxSplitterWindow_GetWindow1(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxWindow *)wxSplitterWindow_GetWindow1(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxSplitterWindow_GetWindow1(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3189,8 +3716,12 @@ static PyObject *_wrap_wxSplitterWindow_GetWindow2(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxWindow *)wxSplitterWindow_GetWindow2(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxSplitterWindow_GetWindow2(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -3218,8 +3749,12 @@ static PyObject *_wrap_wxSplitterWindow_Initialize(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxSplitterWindow_Initialize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_Initialize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3240,8 +3775,12 @@ static PyObject *_wrap_wxSplitterWindow_IsSplit(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_IsSplit(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_IsSplit(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3261,8 +3800,12 @@ static PyObject *_wrap_wxSplitterWindow_SetBorderSize(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxSplitterWindow_SetBorderSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetBorderSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3284,8 +3827,12 @@ static PyObject *_wrap_wxSplitterWindow_SetSashPosition(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxSplitterWindow_SetSashPosition(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetSashPosition(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3306,8 +3853,12 @@ static PyObject *_wrap_wxSplitterWindow_SetSashSize(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxSplitterWindow_SetSashSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetSashSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3328,8 +3879,12 @@ static PyObject *_wrap_wxSplitterWindow_SetMinimumPaneSize(PyObject *self, PyObj
         return NULL;
         }
     }
-    wxSplitterWindow_SetMinimumPaneSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetMinimumPaneSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3350,8 +3905,12 @@ static PyObject *_wrap_wxSplitterWindow_SetSplitMode(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxSplitterWindow_SetSplitMode(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetSplitMode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -3389,8 +3948,12 @@ static PyObject *_wrap_wxSplitterWindow_SplitHorizontally(PyObject *self, PyObje
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_SplitHorizontally(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_SplitHorizontally(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3427,8 +3990,12 @@ static PyObject *_wrap_wxSplitterWindow_SplitVertically(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_SplitVertically(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_SplitVertically(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3456,8 +4023,12 @@ static PyObject *_wrap_wxSplitterWindow_Unsplit(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_Unsplit(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_Unsplit(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -3480,9 +4051,11 @@ static PyMethodDef windows2cMethods[] = {
         { "wxSplitterWindow_GetMinimumPaneSize", _wrap_wxSplitterWindow_GetMinimumPaneSize, 1 },
         { "wxSplitterWindow_GetBorderSize", _wrap_wxSplitterWindow_GetBorderSize, 1 },
         { "new_wxSplitterWindow", _wrap_new_wxSplitterWindow, 1 },
+        { "wxNotebook_ResizeChildren", _wrap_wxNotebook_ResizeChildren, 1 },
         { "wxNotebook_GetPage", _wrap_wxNotebook_GetPage, 1 },
         { "wxNotebook_AddPage", _wrap_wxNotebook_AddPage, 1 },
         { "wxNotebook_DeleteAllPages", _wrap_wxNotebook_DeleteAllPages, 1 },
+        { "wxNotebook_RemovePage", _wrap_wxNotebook_RemovePage, 1 },
         { "wxNotebook_DeletePage", _wrap_wxNotebook_DeletePage, 1 },
         { "wxNotebook_GetRowCount", _wrap_wxNotebook_GetRowCount, 1 },
         { "wxNotebook_SetPageImage", _wrap_wxNotebook_SetPageImage, 1 },
@@ -3671,6 +4244,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -3707,6 +4281,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
index 021802e12c3ee5e7ca8b43243d7c9d9c31f69443..cffcfe18f9bded21f82f42cb64013dfc6e0efad5 100644 (file)
@@ -155,6 +155,7 @@ class wxGridPtr(wxPanelPtr):
     def GetCurrentRect(self):
         val = windows2c.wxGrid_GetCurrentRect(self.this)
         val = wxRectPtr(val)
+        val.thisown = 1
         return val
     def GetCursorColumn(self):
         val = windows2c.wxGrid_GetCursorColumn(self.this)
@@ -420,6 +421,9 @@ class wxNotebookPtr(wxControlPtr):
     def DeletePage(self,arg0):
         val = windows2c.wxNotebook_DeletePage(self.this,arg0)
         return val
+    def RemovePage(self,arg0):
+        val = windows2c.wxNotebook_RemovePage(self.this,arg0)
+        return val
     def DeleteAllPages(self):
         val = windows2c.wxNotebook_DeleteAllPages(self.this)
         return val
@@ -429,6 +433,9 @@ class wxNotebookPtr(wxControlPtr):
     def GetPage(self,arg0):
         val = windows2c.wxNotebook_GetPage(self.this,arg0)
         return val
+    def ResizeChildren(self):
+        val = windows2c.wxNotebook_ResizeChildren(self.this)
+        return val
     def __repr__(self):
         return "<C wxNotebook instance>"
 class wxNotebook(wxNotebookPtr):
index cde7a078767370f5f11232febd62cde30953a866..8cd9312f1757e8217fa26cb7380e579d092d467b 100644 (file)
@@ -148,8 +148,12 @@ static PyObject *_wrap_wxSashEvent_SetEdge(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSashEvent_SetEdge(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashEvent_SetEdge(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -170,8 +174,12 @@ static PyObject *_wrap_wxSashEvent_GetEdge(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSashEdgePosition )wxSashEvent_GetEdge(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSashEdgePosition )wxSashEvent_GetEdge(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -198,8 +206,12 @@ static PyObject *_wrap_wxSashEvent_SetDragRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxSashEvent_SetDragRect(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashEvent_SetDragRect(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -221,8 +233,12 @@ static PyObject *_wrap_wxSashEvent_GetDragRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxRect (wxSashEvent_GetDragRect(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxSashEvent_GetDragRect(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -243,8 +259,12 @@ static PyObject *_wrap_wxSashEvent_SetDragStatus(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxSashEvent_SetDragStatus(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashEvent_SetDragStatus(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -265,8 +285,12 @@ static PyObject *_wrap_wxSashEvent_GetDragStatus(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxSashDragStatus )wxSashEvent_GetDragStatus(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSashDragStatus )wxSashEvent_GetDragStatus(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -322,8 +346,12 @@ static PyObject *_wrap_new_wxSashWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSashWindow *)new_wxSashWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSashWindow *)new_wxSashWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -345,8 +373,12 @@ static PyObject *_wrap_wxSashWindow_GetSashVisible(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (bool )wxSashWindow_GetSashVisible(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSashWindow_GetSashVisible(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -366,8 +398,12 @@ static PyObject *_wrap_wxSashWindow_GetDefaultBorderSize(PyObject *self, PyObjec
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetDefaultBorderSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetDefaultBorderSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -388,8 +424,12 @@ static PyObject *_wrap_wxSashWindow_GetEdgeMargin(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetEdgeMargin(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetEdgeMargin(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -409,8 +449,12 @@ static PyObject *_wrap_wxSashWindow_GetExtraBorderSize(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetExtraBorderSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetExtraBorderSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -430,8 +474,12 @@ static PyObject *_wrap_wxSashWindow_GetMaximumSizeX(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetMaximumSizeX(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetMaximumSizeX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -451,8 +499,12 @@ static PyObject *_wrap_wxSashWindow_GetMaximumSizeY(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetMaximumSizeY(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetMaximumSizeY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -472,8 +524,12 @@ static PyObject *_wrap_wxSashWindow_GetMinimumSizeX(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetMinimumSizeX(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetMinimumSizeX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -493,8 +549,12 @@ static PyObject *_wrap_wxSashWindow_GetMinimumSizeY(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (int )wxSashWindow_GetMinimumSizeY(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSashWindow_GetMinimumSizeY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -515,8 +575,12 @@ static PyObject *_wrap_wxSashWindow_HasBorder(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxSashWindow_HasBorder(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSashWindow_HasBorder(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -536,8 +600,12 @@ static PyObject *_wrap_wxSashWindow_SetDefaultBorderSize(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxSashWindow_SetDefaultBorderSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetDefaultBorderSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -558,8 +626,12 @@ static PyObject *_wrap_wxSashWindow_SetExtraBorderSize(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxSashWindow_SetExtraBorderSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetExtraBorderSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -580,8 +652,12 @@ static PyObject *_wrap_wxSashWindow_SetMaximumSizeX(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxSashWindow_SetMaximumSizeX(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetMaximumSizeX(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -602,8 +678,12 @@ static PyObject *_wrap_wxSashWindow_SetMaximumSizeY(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxSashWindow_SetMaximumSizeY(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetMaximumSizeY(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -624,8 +704,12 @@ static PyObject *_wrap_wxSashWindow_SetMinimumSizeX(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxSashWindow_SetMinimumSizeX(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetMinimumSizeX(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -646,8 +730,12 @@ static PyObject *_wrap_wxSashWindow_SetMinimumSizeY(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    wxSashWindow_SetMinimumSizeY(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetMinimumSizeY(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -671,8 +759,12 @@ static PyObject *_wrap_wxSashWindow_SetSashVisible(PyObject *self, PyObject *arg
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxSashWindow_SetSashVisible(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetSashVisible(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -696,8 +788,12 @@ static PyObject *_wrap_wxSashWindow_SetSashBorder(PyObject *self, PyObject *args
         }
     }
     _arg2 = (bool ) tempbool2;
-    wxSashWindow_SetSashBorder(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashWindow_SetSashBorder(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -726,8 +822,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetRequestedLength(PyObject *self,
         return NULL;
         }
     }
-    wxQueryLayoutInfoEvent_SetRequestedLength(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxQueryLayoutInfoEvent_SetRequestedLength(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -748,8 +848,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetRequestedLength(PyObject *self,
         return NULL;
         }
     }
-    _result = (int )wxQueryLayoutInfoEvent_GetRequestedLength(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxQueryLayoutInfoEvent_GetRequestedLength(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -769,8 +873,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetFlags(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxQueryLayoutInfoEvent_SetFlags(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxQueryLayoutInfoEvent_SetFlags(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -791,8 +899,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetFlags(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxQueryLayoutInfoEvent_GetFlags(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxQueryLayoutInfoEvent_GetFlags(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -819,8 +931,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetSize(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxQueryLayoutInfoEvent_SetSize(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxQueryLayoutInfoEvent_SetSize(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -842,8 +958,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetSize(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = new wxSize (wxQueryLayoutInfoEvent_GetSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxQueryLayoutInfoEvent_GetSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -864,8 +984,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetOrientation(PyObject *self, PyO
         return NULL;
         }
     }
-    wxQueryLayoutInfoEvent_SetOrientation(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxQueryLayoutInfoEvent_SetOrientation(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -886,8 +1010,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetOrientation(PyObject *self, PyO
         return NULL;
         }
     }
-    _result = (wxLayoutOrientation )wxQueryLayoutInfoEvent_GetOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutOrientation )wxQueryLayoutInfoEvent_GetOrientation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -907,8 +1035,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetAlignment(PyObject *self, PyObj
         return NULL;
         }
     }
-    wxQueryLayoutInfoEvent_SetAlignment(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxQueryLayoutInfoEvent_SetAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -929,8 +1061,12 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetAlignment(PyObject *self, PyObj
         return NULL;
         }
     }
-    _result = (wxLayoutAlignment )wxQueryLayoutInfoEvent_GetAlignment(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutAlignment )wxQueryLayoutInfoEvent_GetAlignment(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -958,8 +1094,12 @@ static PyObject *_wrap_wxCalculateLayoutEvent_SetFlags(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxCalculateLayoutEvent_SetFlags(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCalculateLayoutEvent_SetFlags(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -980,8 +1120,12 @@ static PyObject *_wrap_wxCalculateLayoutEvent_GetFlags(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxCalculateLayoutEvent_GetFlags(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxCalculateLayoutEvent_GetFlags(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1008,8 +1152,12 @@ static PyObject *_wrap_wxCalculateLayoutEvent_SetRect(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxCalculateLayoutEvent_SetRect(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCalculateLayoutEvent_SetRect(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1031,8 +1179,12 @@ static PyObject *_wrap_wxCalculateLayoutEvent_GetRect(PyObject *self, PyObject *
         return NULL;
         }
     }
-    _result = new wxRect (wxCalculateLayoutEvent_GetRect(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxCalculateLayoutEvent_GetRect(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1097,8 +1249,12 @@ static PyObject *_wrap_new_wxSashLayoutWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSashLayoutWindow *)new_wxSashLayoutWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashLayoutWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSashLayoutWindow *)new_wxSashLayoutWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashLayoutWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1119,8 +1275,12 @@ static PyObject *_wrap_wxSashLayoutWindow_GetAlignment(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (wxLayoutAlignment )wxSashLayoutWindow_GetAlignment(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutAlignment )wxSashLayoutWindow_GetAlignment(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1140,8 +1300,12 @@ static PyObject *_wrap_wxSashLayoutWindow_GetOrientation(PyObject *self, PyObjec
         return NULL;
         }
     }
-    _result = (wxLayoutOrientation )wxSashLayoutWindow_GetOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutOrientation )wxSashLayoutWindow_GetOrientation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1161,8 +1325,12 @@ static PyObject *_wrap_wxSashLayoutWindow_SetAlignment(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxSashLayoutWindow_SetAlignment(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashLayoutWindow_SetAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1190,8 +1358,12 @@ static PyObject *_wrap_wxSashLayoutWindow_SetDefaultSize(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxSashLayoutWindow_SetDefaultSize(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashLayoutWindow_SetDefaultSize(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1212,8 +1384,12 @@ static PyObject *_wrap_wxSashLayoutWindow_SetOrientation(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxSashLayoutWindow_SetOrientation(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSashLayoutWindow_SetOrientation(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1227,8 +1403,12 @@ static PyObject *_wrap_new_wxLayoutAlgorithm(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxLayoutAlgorithm")) 
         return NULL;
-    _result = (wxLayoutAlgorithm *)new_wxLayoutAlgorithm();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutAlgorithm_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxLayoutAlgorithm *)new_wxLayoutAlgorithm();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutAlgorithm_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1248,8 +1428,12 @@ static PyObject *_wrap_delete_wxLayoutAlgorithm(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    delete_wxLayoutAlgorithm(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxLayoutAlgorithm(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1286,8 +1470,12 @@ static PyObject *_wrap_wxLayoutAlgorithm_LayoutMDIFrame(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (bool )wxLayoutAlgorithm_LayoutMDIFrame(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxLayoutAlgorithm_LayoutMDIFrame(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1323,12 +1511,58 @@ static PyObject *_wrap_wxLayoutAlgorithm_LayoutFrame(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (bool )wxLayoutAlgorithm_LayoutFrame(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxLayoutAlgorithm_LayoutFrame(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxLayoutAlgorithm_LayoutWindow(_swigobj,_swigarg0,_swigarg1)  (_swigobj->LayoutWindow(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxLayoutAlgorithm_LayoutWindow(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxLayoutAlgorithm * _arg0;
+    wxWindow * _arg1;
+    wxWindow * _arg2 = NULL;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    char * _argc2 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss|s:wxLayoutAlgorithm_LayoutWindow",&_argc0,&_argc1,&_argc2)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxLayoutAlgorithm_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxLayoutAlgorithm_LayoutWindow. Expected _wxLayoutAlgorithm_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxLayoutAlgorithm_LayoutWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argc2) {
+        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxLayoutAlgorithm_LayoutWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxLayoutAlgorithm_LayoutWindow(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 static PyMethodDef windows3cMethods[] = {
+        { "wxLayoutAlgorithm_LayoutWindow", _wrap_wxLayoutAlgorithm_LayoutWindow, 1 },
         { "wxLayoutAlgorithm_LayoutFrame", _wrap_wxLayoutAlgorithm_LayoutFrame, 1 },
         { "wxLayoutAlgorithm_LayoutMDIFrame", _wrap_wxLayoutAlgorithm_LayoutMDIFrame, 1 },
         { "delete_wxLayoutAlgorithm", _wrap_delete_wxLayoutAlgorithm, 1 },
@@ -1466,6 +1700,7 @@ SWIGEXPORT(void,initwindows3c)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
@@ -1512,6 +1747,7 @@ SWIGEXPORT(void,initwindows3c)() {
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_wxMDIChildFrame","_class_wxMDIChildFrame",0);
index c1b716e47b786356d3e8e4556e04e14520000c0b..cf20a91997f3c5187df1924ed4855b15530bea06 100644 (file)
@@ -255,6 +255,13 @@ class wxLayoutAlgorithmPtr :
         args = tuple(argl)
         val = apply(windows3c.wxLayoutAlgorithm_LayoutFrame,(self.this,arg0.this,)+args)
         return val
+    def LayoutWindow(self,arg0,*args):
+        argl = map(None,args)
+        try: argl[0] = argl[0].this
+        except: pass
+        args = tuple(argl)
+        val = apply(windows3c.wxLayoutAlgorithm_LayoutWindow,(self.this,arg0.this,)+args)
+        return val
     def __repr__(self):
         return "<C wxLayoutAlgorithm instance>"
 class wxLayoutAlgorithm(wxLayoutAlgorithmPtr):
index 94e8c893d5179c2b32a930c20d974e1c5734ea6c..ec47e248b9a339828a9df0dd4a8f7fbd9fdbe3fd 100644 (file)
@@ -33,8 +33,9 @@
  * and things like that.
  *
  * $Log$
- * Revision 1.9  1999/03/01 23:21:37  RD
- * Changes for allowing wxRA_SPECIFY_ROWS and wxRA_SPECIFY_COLS.
+ * Revision 1.10  1999/05/01 04:41:07  RD
+ * wxPython 2.0b9, second phase (gtk)
+ * Added gobs of stuff, see wxPython/README.txt for details
  *
  ************************************************************************/
 
@@ -630,8 +631,10 @@ extern "C" SWIGEXPORT(void,initcmndlgsc)();
 extern "C" SWIGEXPORT(void,initstattoolc)();
 extern "C" SWIGEXPORT(void,initframesc)();
 extern "C" SWIGEXPORT(void,initwindows3c)();
+extern "C" SWIGEXPORT(void,initimagec)();
 #ifndef SEPARATE
 extern "C" SWIGEXPORT(void,initutilsc)();
+extern "C" SWIGEXPORT(void,initglcanvasc)();
 #endif
 static int _wrap_wxPyDefaultPosition_set(PyObject *val) {
     char * tval;
@@ -710,8 +713,12 @@ static PyObject *_wrap_new_wxPyApp(PyObject *self, PyObject *args) {
     self = self;
     if(!PyArg_ParseTuple(args,":new_wxPyApp")) 
         return NULL;
-    _result = (wxPyApp *)new_wxPyApp();
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyApp_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyApp *)new_wxPyApp();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyApp_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -732,8 +739,12 @@ static PyObject *_wrap_wxPyApp_GetAppName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxPyApp_GetAppName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxPyApp_GetAppName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -758,8 +769,12 @@ static PyObject *_wrap_wxPyApp_GetClassName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxPyApp_GetClassName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxPyApp_GetClassName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -784,8 +799,12 @@ static PyObject *_wrap_wxPyApp_GetExitOnFrameDelete(PyObject *self, PyObject *ar
         return NULL;
         }
     }
-    _result = (bool )wxPyApp_GetExitOnFrameDelete(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPyApp_GetExitOnFrameDelete(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -805,8 +824,12 @@ static PyObject *_wrap_wxPyApp_GetPrintMode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPyApp_GetPrintMode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPyApp_GetPrintMode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -827,8 +850,12 @@ static PyObject *_wrap_wxPyApp_GetTopWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxWindow *)wxPyApp_GetTopWindow(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxPyApp_GetTopWindow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -849,8 +876,12 @@ static PyObject *_wrap_wxPyApp_GetVendorName(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxPyApp_GetVendorName(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxPyApp_GetVendorName(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -874,8 +905,12 @@ static PyObject *_wrap_wxPyApp_Dispatch(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyApp_Dispatch(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_Dispatch(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -895,8 +930,12 @@ static PyObject *_wrap_wxPyApp_ExitMainLoop(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyApp_ExitMainLoop(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_ExitMainLoop(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -917,8 +956,12 @@ static PyObject *_wrap_wxPyApp_Initialized(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxPyApp_Initialized(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPyApp_Initialized(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -938,8 +981,12 @@ static PyObject *_wrap_wxPyApp_MainLoop(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxPyApp_MainLoop(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxPyApp_MainLoop(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -959,8 +1006,12 @@ static PyObject *_wrap_wxPyApp_Pending(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxPyApp_Pending(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPyApp_Pending(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -986,10 +1037,14 @@ static PyObject *_wrap_wxPyApp_SetAppName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxPyApp_SetAppName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_SetAppName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1020,10 +1075,14 @@ static PyObject *_wrap_wxPyApp_SetClassName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxPyApp_SetClassName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_SetClassName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1050,8 +1109,12 @@ static PyObject *_wrap_wxPyApp_SetExitOnFrameDelete(PyObject *self, PyObject *ar
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxPyApp_SetExitOnFrameDelete(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_SetExitOnFrameDelete(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1072,8 +1135,12 @@ static PyObject *_wrap_wxPyApp_SetPrintMode(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyApp_SetPrintMode(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_SetPrintMode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1101,8 +1168,12 @@ static PyObject *_wrap_wxPyApp_SetTopWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyApp_SetTopWindow(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_SetTopWindow(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1129,10 +1200,14 @@ static PyObject *_wrap_wxPyApp_SetVendorName(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxPyApp_SetVendorName(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_SetVendorName(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1156,8 +1231,12 @@ static PyObject *_wrap_wxPyApp_AfterMainLoop(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxPyApp_AfterMainLoop(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyApp_AfterMainLoop(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1285,6 +1364,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxSL_SELRANGE", PyInt_FromLong((long) wxSL_SELRANGE));
         PyDict_SetItemString(d,"wxSB_HORIZONTAL", PyInt_FromLong((long) wxSB_HORIZONTAL));
         PyDict_SetItemString(d,"wxSB_VERTICAL", PyInt_FromLong((long) wxSB_VERTICAL));
+        PyDict_SetItemString(d,"wxST_SIZEGRIP", PyInt_FromLong((long) wxST_SIZEGRIP));
         PyDict_SetItemString(d,"wxBU_AUTODRAW", PyInt_FromLong((long) wxBU_AUTODRAW));
         PyDict_SetItemString(d,"wxBU_NOAUTODRAW", PyInt_FromLong((long) wxBU_NOAUTODRAW));
         PyDict_SetItemString(d,"wxTR_HAS_BUTTONS", PyInt_FromLong((long) wxTR_HAS_BUTTONS));
@@ -1314,10 +1394,6 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxSP_NOBORDER", PyInt_FromLong((long) wxSP_NOBORDER));
         PyDict_SetItemString(d,"wxSP_3D", PyInt_FromLong((long) wxSP_3D));
         PyDict_SetItemString(d,"wxSP_BORDER", PyInt_FromLong((long) wxSP_BORDER));
-        PyDict_SetItemString(d,"wxTAB_MULTILINE", PyInt_FromLong((long) wxTAB_MULTILINE));
-        PyDict_SetItemString(d,"wxTAB_RIGHTJUSTIFY", PyInt_FromLong((long) wxTAB_RIGHTJUSTIFY));
-        PyDict_SetItemString(d,"wxTAB_FIXEDWIDTH", PyInt_FromLong((long) wxTAB_FIXEDWIDTH));
-        PyDict_SetItemString(d,"wxTAB_OWNERDRAW", PyInt_FromLong((long) wxTAB_OWNERDRAW));
         PyDict_SetItemString(d,"wxFLOOD_SURFACE", PyInt_FromLong((long) wxFLOOD_SURFACE));
         PyDict_SetItemString(d,"wxFLOOD_BORDER", PyInt_FromLong((long) wxFLOOD_BORDER));
         PyDict_SetItemString(d,"wxODDEVEN_RULE", PyInt_FromLong((long) wxODDEVEN_RULE));
@@ -1384,6 +1460,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxID_APPLY", PyInt_FromLong((long) wxID_APPLY));
         PyDict_SetItemString(d,"wxID_YES", PyInt_FromLong((long) wxID_YES));
         PyDict_SetItemString(d,"wxID_NO", PyInt_FromLong((long) wxID_NO));
+        PyDict_SetItemString(d,"wxID_STATIC", PyInt_FromLong((long) wxID_STATIC));
         PyDict_SetItemString(d,"wxBITMAP_TYPE_BMP", PyInt_FromLong((long) wxBITMAP_TYPE_BMP));
         PyDict_SetItemString(d,"wxBITMAP_TYPE_BMP_RESOURCE", PyInt_FromLong((long) wxBITMAP_TYPE_BMP_RESOURCE));
         PyDict_SetItemString(d,"wxBITMAP_TYPE_ICO", PyInt_FromLong((long) wxBITMAP_TYPE_ICO));
@@ -1402,6 +1479,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxBITMAP_TYPE_PNG_RESOURCE", PyInt_FromLong((long) wxBITMAP_TYPE_PNG_RESOURCE));
         PyDict_SetItemString(d,"wxBITMAP_TYPE_ANY", PyInt_FromLong((long) wxBITMAP_TYPE_ANY));
         PyDict_SetItemString(d,"wxBITMAP_TYPE_RESOURCE", PyInt_FromLong((long) wxBITMAP_TYPE_RESOURCE));
+        PyDict_SetItemString(d,"wxBITMAP_TYPE_JPEG", PyInt_FromLong((long) wxBITMAP_TYPE_JPEG));
         PyDict_SetItemString(d,"wxOPEN", PyInt_FromLong((long) wxOPEN));
         PyDict_SetItemString(d,"wxSAVE", PyInt_FromLong((long) wxSAVE));
         PyDict_SetItemString(d,"wxHIDE_READONLY", PyInt_FromLong((long) wxHIDE_READONLY));
@@ -1409,10 +1487,6 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxACCEL_ALT", PyInt_FromLong((long) wxACCEL_ALT));
         PyDict_SetItemString(d,"wxACCEL_CTRL", PyInt_FromLong((long) wxACCEL_CTRL));
         PyDict_SetItemString(d,"wxACCEL_SHIFT", PyInt_FromLong((long) wxACCEL_SHIFT));
-        PyDict_SetItemString(d,"ERR_PARAM", PyInt_FromLong((long) ERR_PARAM));
-        PyDict_SetItemString(d,"ERR_NODATA", PyInt_FromLong((long) ERR_NODATA));
-        PyDict_SetItemString(d,"ERR_CANCEL", PyInt_FromLong((long) ERR_CANCEL));
-        PyDict_SetItemString(d,"ERR_SUCCESS", PyInt_FromLong((long) ERR_SUCCESS));
         PyDict_SetItemString(d,"wxDEFAULT", PyInt_FromLong((long) wxDEFAULT));
         PyDict_SetItemString(d,"wxDECORATIVE", PyInt_FromLong((long) wxDECORATIVE));
         PyDict_SetItemString(d,"wxROMAN", PyInt_FromLong((long) wxROMAN));
@@ -1566,6 +1640,73 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxCURSOR_WAIT", PyInt_FromLong((long) wxCURSOR_WAIT));
         PyDict_SetItemString(d,"wxCURSOR_WATCH", PyInt_FromLong((long) wxCURSOR_WATCH));
         PyDict_SetItemString(d,"wxCURSOR_BLANK", PyInt_FromLong((long) wxCURSOR_BLANK));
+        PyDict_SetItemString(d,"wxPAPER_NONE", PyInt_FromLong((long) wxPAPER_NONE));
+        PyDict_SetItemString(d,"wxPAPER_LETTER", PyInt_FromLong((long) wxPAPER_LETTER));
+        PyDict_SetItemString(d,"wxPAPER_LEGAL", PyInt_FromLong((long) wxPAPER_LEGAL));
+        PyDict_SetItemString(d,"wxPAPER_A4", PyInt_FromLong((long) wxPAPER_A4));
+        PyDict_SetItemString(d,"wxPAPER_CSHEET", PyInt_FromLong((long) wxPAPER_CSHEET));
+        PyDict_SetItemString(d,"wxPAPER_DSHEET", PyInt_FromLong((long) wxPAPER_DSHEET));
+        PyDict_SetItemString(d,"wxPAPER_ESHEET", PyInt_FromLong((long) wxPAPER_ESHEET));
+        PyDict_SetItemString(d,"wxPAPER_LETTERSMALL", PyInt_FromLong((long) wxPAPER_LETTERSMALL));
+        PyDict_SetItemString(d,"wxPAPER_TABLOID", PyInt_FromLong((long) wxPAPER_TABLOID));
+        PyDict_SetItemString(d,"wxPAPER_LEDGER", PyInt_FromLong((long) wxPAPER_LEDGER));
+        PyDict_SetItemString(d,"wxPAPER_STATEMENT", PyInt_FromLong((long) wxPAPER_STATEMENT));
+        PyDict_SetItemString(d,"wxPAPER_EXECUTIVE", PyInt_FromLong((long) wxPAPER_EXECUTIVE));
+        PyDict_SetItemString(d,"wxPAPER_A3", PyInt_FromLong((long) wxPAPER_A3));
+        PyDict_SetItemString(d,"wxPAPER_A4SMALL", PyInt_FromLong((long) wxPAPER_A4SMALL));
+        PyDict_SetItemString(d,"wxPAPER_A5", PyInt_FromLong((long) wxPAPER_A5));
+        PyDict_SetItemString(d,"wxPAPER_B4", PyInt_FromLong((long) wxPAPER_B4));
+        PyDict_SetItemString(d,"wxPAPER_B5", PyInt_FromLong((long) wxPAPER_B5));
+        PyDict_SetItemString(d,"wxPAPER_FOLIO", PyInt_FromLong((long) wxPAPER_FOLIO));
+        PyDict_SetItemString(d,"wxPAPER_QUARTO", PyInt_FromLong((long) wxPAPER_QUARTO));
+        PyDict_SetItemString(d,"wxPAPER_10X14", PyInt_FromLong((long) wxPAPER_10X14));
+        PyDict_SetItemString(d,"wxPAPER_11X17", PyInt_FromLong((long) wxPAPER_11X17));
+        PyDict_SetItemString(d,"wxPAPER_NOTE", PyInt_FromLong((long) wxPAPER_NOTE));
+        PyDict_SetItemString(d,"wxPAPER_ENV_9", PyInt_FromLong((long) wxPAPER_ENV_9));
+        PyDict_SetItemString(d,"wxPAPER_ENV_10", PyInt_FromLong((long) wxPAPER_ENV_10));
+        PyDict_SetItemString(d,"wxPAPER_ENV_11", PyInt_FromLong((long) wxPAPER_ENV_11));
+        PyDict_SetItemString(d,"wxPAPER_ENV_12", PyInt_FromLong((long) wxPAPER_ENV_12));
+        PyDict_SetItemString(d,"wxPAPER_ENV_14", PyInt_FromLong((long) wxPAPER_ENV_14));
+        PyDict_SetItemString(d,"wxPAPER_ENV_DL", PyInt_FromLong((long) wxPAPER_ENV_DL));
+        PyDict_SetItemString(d,"wxPAPER_ENV_C5", PyInt_FromLong((long) wxPAPER_ENV_C5));
+        PyDict_SetItemString(d,"wxPAPER_ENV_C3", PyInt_FromLong((long) wxPAPER_ENV_C3));
+        PyDict_SetItemString(d,"wxPAPER_ENV_C4", PyInt_FromLong((long) wxPAPER_ENV_C4));
+        PyDict_SetItemString(d,"wxPAPER_ENV_C6", PyInt_FromLong((long) wxPAPER_ENV_C6));
+        PyDict_SetItemString(d,"wxPAPER_ENV_C65", PyInt_FromLong((long) wxPAPER_ENV_C65));
+        PyDict_SetItemString(d,"wxPAPER_ENV_B4", PyInt_FromLong((long) wxPAPER_ENV_B4));
+        PyDict_SetItemString(d,"wxPAPER_ENV_B5", PyInt_FromLong((long) wxPAPER_ENV_B5));
+        PyDict_SetItemString(d,"wxPAPER_ENV_B6", PyInt_FromLong((long) wxPAPER_ENV_B6));
+        PyDict_SetItemString(d,"wxPAPER_ENV_ITALY", PyInt_FromLong((long) wxPAPER_ENV_ITALY));
+        PyDict_SetItemString(d,"wxPAPER_ENV_MONARCH", PyInt_FromLong((long) wxPAPER_ENV_MONARCH));
+        PyDict_SetItemString(d,"wxPAPER_ENV_PERSONAL", PyInt_FromLong((long) wxPAPER_ENV_PERSONAL));
+        PyDict_SetItemString(d,"wxPAPER_FANFOLD_US", PyInt_FromLong((long) wxPAPER_FANFOLD_US));
+        PyDict_SetItemString(d,"wxPAPER_FANFOLD_STD_GERMAN", PyInt_FromLong((long) wxPAPER_FANFOLD_STD_GERMAN));
+        PyDict_SetItemString(d,"wxPAPER_FANFOLD_LGL_GERMAN", PyInt_FromLong((long) wxPAPER_FANFOLD_LGL_GERMAN));
+        PyDict_SetItemString(d,"wxPAPER_ISO_B4", PyInt_FromLong((long) wxPAPER_ISO_B4));
+        PyDict_SetItemString(d,"wxPAPER_JAPANESE_POSTCARD", PyInt_FromLong((long) wxPAPER_JAPANESE_POSTCARD));
+        PyDict_SetItemString(d,"wxPAPER_9X11", PyInt_FromLong((long) wxPAPER_9X11));
+        PyDict_SetItemString(d,"wxPAPER_10X11", PyInt_FromLong((long) wxPAPER_10X11));
+        PyDict_SetItemString(d,"wxPAPER_15X11", PyInt_FromLong((long) wxPAPER_15X11));
+        PyDict_SetItemString(d,"wxPAPER_ENV_INVITE", PyInt_FromLong((long) wxPAPER_ENV_INVITE));
+        PyDict_SetItemString(d,"wxPAPER_LETTER_EXTRA", PyInt_FromLong((long) wxPAPER_LETTER_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_LEGAL_EXTRA", PyInt_FromLong((long) wxPAPER_LEGAL_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_TABLOID_EXTRA", PyInt_FromLong((long) wxPAPER_TABLOID_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_A4_EXTRA", PyInt_FromLong((long) wxPAPER_A4_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_LETTER_TRANSVERSE", PyInt_FromLong((long) wxPAPER_LETTER_TRANSVERSE));
+        PyDict_SetItemString(d,"wxPAPER_A4_TRANSVERSE", PyInt_FromLong((long) wxPAPER_A4_TRANSVERSE));
+        PyDict_SetItemString(d,"wxPAPER_LETTER_EXTRA_TRANSVERSE", PyInt_FromLong((long) wxPAPER_LETTER_EXTRA_TRANSVERSE));
+        PyDict_SetItemString(d,"wxPAPER_A_PLUS", PyInt_FromLong((long) wxPAPER_A_PLUS));
+        PyDict_SetItemString(d,"wxPAPER_B_PLUS", PyInt_FromLong((long) wxPAPER_B_PLUS));
+        PyDict_SetItemString(d,"wxPAPER_LETTER_PLUS", PyInt_FromLong((long) wxPAPER_LETTER_PLUS));
+        PyDict_SetItemString(d,"wxPAPER_A4_PLUS", PyInt_FromLong((long) wxPAPER_A4_PLUS));
+        PyDict_SetItemString(d,"wxPAPER_A5_TRANSVERSE", PyInt_FromLong((long) wxPAPER_A5_TRANSVERSE));
+        PyDict_SetItemString(d,"wxPAPER_B5_TRANSVERSE", PyInt_FromLong((long) wxPAPER_B5_TRANSVERSE));
+        PyDict_SetItemString(d,"wxPAPER_A3_EXTRA", PyInt_FromLong((long) wxPAPER_A3_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_A5_EXTRA", PyInt_FromLong((long) wxPAPER_A5_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_B5_EXTRA", PyInt_FromLong((long) wxPAPER_B5_EXTRA));
+        PyDict_SetItemString(d,"wxPAPER_A2", PyInt_FromLong((long) wxPAPER_A2));
+        PyDict_SetItemString(d,"wxPAPER_A3_TRANSVERSE", PyInt_FromLong((long) wxPAPER_A3_TRANSVERSE));
+        PyDict_SetItemString(d,"wxPAPER_A3_EXTRA_TRANSVERSE", PyInt_FromLong((long) wxPAPER_A3_EXTRA_TRANSVERSE));
         PyDict_SetItemString(d,"FALSE", PyInt_FromLong((long) 0));
         PyDict_SetItemString(d,"false", PyInt_FromLong((long) 0));
         PyDict_SetItemString(d,"TRUE", PyInt_FromLong((long) 1));
@@ -1703,7 +1844,7 @@ SWIGEXPORT(void,initwxc)() {
         PyDict_SetItemString(d,"wxEVT_COMMAND_TAB_SEL_CHANGING", PyInt_FromLong((long) wxEVT_COMMAND_TAB_SEL_CHANGING));
         PyDict_SetItemString(d,"wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED", PyInt_FromLong((long) wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED));
         PyDict_SetItemString(d,"wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING", PyInt_FromLong((long) wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING));
-        PyDict_SetItemString(d,"__version__", PyString_FromString("2.0b5"));
+        PyDict_SetItemString(d,"__version__", PyString_FromString("2.0b9"));
         PyDict_SetItemString(d,"cvar", SWIG_globals);
         SWIG_addvarlink(SWIG_globals,"wxPyDefaultPosition",_wrap_wxPyDefaultPosition_get, _wrap_wxPyDefaultPosition_set);
         SWIG_addvarlink(SWIG_globals,"wxPyDefaultSize",_wrap_wxPyDefaultSize_get, _wrap_wxPyDefaultSize_set);
@@ -1728,8 +1869,12 @@ SWIGEXPORT(void,initwxc)() {
     initstattoolc();
     initframesc();
     initwindows3c();
+    initimagec();
 #ifndef SEPARATE
     initutilsc();
+#ifdef WITH_GLCANVAS
+    initglcanvasc();
+#endif
 #endif
 /*
  * These are the pointer type-equivalency mappings. 
@@ -1740,22 +1885,29 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxActivateEvent","_wxActivateEvent",0);
         SWIG_RegisterMapping("_signed_long","_long",0);
         SWIG_RegisterMapping("_wxMenuEvent","_class_wxMenuEvent",0);
+        SWIG_RegisterMapping("_class_wxJPEGHandler","_wxJPEGHandler",0);
+        SWIG_RegisterMapping("_wxBMPHandler","_class_wxBMPHandler",0);
+        SWIG_RegisterMapping("_wxImage","_class_wxImage",0);
         SWIG_RegisterMapping("_wxFontData","_class_wxFontData",0);
         SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
         SWIG_RegisterMapping("_class_wxMenuBar","_wxMenuBar",0);
+        SWIG_RegisterMapping("_class_wxPyTreeItemData","_wxPyTreeItemData",0);
         SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxPyApp",SwigwxPyAppTowxEvtHandler);
         SWIG_RegisterMapping("_class_wxEvtHandler","_wxPyApp",SwigwxPyAppTowxEvtHandler);
         SWIG_RegisterMapping("_class_wxEvtHandler","_wxEvtHandler",0);
         SWIG_RegisterMapping("_wxPaintEvent","_class_wxPaintEvent",0);
+        SWIG_RegisterMapping("_wxGIFHandler","_class_wxGIFHandler",0);
         SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
         SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
+        SWIG_RegisterMapping("_wxImageHandler","_class_wxImageHandler",0);
         SWIG_RegisterMapping("_class_wxTreeCtrl","_wxTreeCtrl",0);
         SWIG_RegisterMapping("_wxToolTip","_class_wxToolTip",0);
         SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
         SWIG_RegisterMapping("_wxGrid","_class_wxGrid",0);
-        SWIG_RegisterMapping("_wxPageSetupData","_class_wxPageSetupData",0);
+        SWIG_RegisterMapping("_wxPNGHandler","_class_wxPNGHandler",0);
         SWIG_RegisterMapping("_wxPyMenu","_class_wxPyMenu",0);
         SWIG_RegisterMapping("_class_wxColourData","_wxColourData",0);
+        SWIG_RegisterMapping("_class_wxPageSetupDialogData","_wxPageSetupDialogData",0);
         SWIG_RegisterMapping("_wxPen","_class_wxPen",0);
         SWIG_RegisterMapping("_wxUpdateUIEvent","_class_wxUpdateUIEvent",0);
         SWIG_RegisterMapping("_byte","_unsigned_char",0);
@@ -1770,12 +1922,14 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxDropFilesEvent","_class_wxDropFilesEvent",0);
         SWIG_RegisterMapping("_wxBitmapButton","_class_wxBitmapButton",0);
         SWIG_RegisterMapping("_wxSashWindow","_class_wxSashWindow",0);
+        SWIG_RegisterMapping("_class_wxPrintDialogData","_wxPrintDialogData",0);
         SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
         SWIG_RegisterMapping("_class_wxGauge","_wxGauge",0);
         SWIG_RegisterMapping("_class_wxSashEvent","_wxSashEvent",0);
         SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
         SWIG_RegisterMapping("_wxListEvent","_class_wxListEvent",0);
         SWIG_RegisterMapping("_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0);
+        SWIG_RegisterMapping("_class_wxBMPHandler","_wxBMPHandler",0);
         SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
         SWIG_RegisterMapping("_wxSashLayoutWindow","_class_wxSashLayoutWindow",0);
         SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
@@ -1783,16 +1937,18 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxPaintEvent","_wxPaintEvent",0);
         SWIG_RegisterMapping("_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0);
         SWIG_RegisterMapping("_class_wxStatusBar","_wxStatusBar",0);
+        SWIG_RegisterMapping("_class_wxGIFHandler","_wxGIFHandler",0);
         SWIG_RegisterMapping("_class_wxPostScriptDC","_wxPostScriptDC",0);
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxToolTip","_wxToolTip",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
         SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
         SWIG_RegisterMapping("_class_wxGrid","_wxGrid",0);
-        SWIG_RegisterMapping("_class_wxPageSetupData","_wxPageSetupData",0);
+        SWIG_RegisterMapping("_class_wxPNGHandler","_wxPNGHandler",0);
         SWIG_RegisterMapping("_wxColour","_class_wxColour",0);
         SWIG_RegisterMapping("_class_wxDialog","_wxDialog",0);
         SWIG_RegisterMapping("_wxPageSetupDialog","_class_wxPageSetupDialog",0);
@@ -1814,11 +1970,11 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
         SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
         SWIG_RegisterMapping("_wxSizeEvent","_class_wxSizeEvent",0);
+        SWIG_RegisterMapping("_class_wxImage","_wxImage",0);
         SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
         SWIG_RegisterMapping("_class_wxSashLayoutWindow","_wxSashLayoutWindow",0);
         SWIG_RegisterMapping("_class_wxButton","_wxButton",0);
         SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
-        SWIG_RegisterMapping("_wxTreeItemData","_class_wxTreeItemData",0);
         SWIG_RegisterMapping("_class_wxFontData","_wxFontData",0);
         SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
         SWIG_RegisterMapping("_wxPrintDialog","_class_wxPrintDialog",0);
@@ -1828,11 +1984,10 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_wxToolBarTool","_class_wxToolBarTool",0);
         SWIG_RegisterMapping("_wxColourDialog","_class_wxColourDialog",0);
-        SWIG_RegisterMapping("_wxPrintData","_class_wxPrintData",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
         SWIG_RegisterMapping("_wxMessageDialog","_class_wxMessageDialog",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextEntryDialog","_class_wxTextEntryDialog",0);
-        SWIG_RegisterMapping("_wxConfig","_class_wxConfig",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
         SWIG_RegisterMapping("_wxMDIChildFrame","_class_wxMDIChildFrame",0);
@@ -1888,6 +2043,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxWindow","_wxWindow",0);
         SWIG_RegisterMapping("_wxSplitterWindow","_class_wxSplitterWindow",0);
         SWIG_RegisterMapping("_class_wxStaticText","_wxStaticText",0);
+        SWIG_RegisterMapping("_wxPrintDialogData","_class_wxPrintDialogData",0);
         SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
         SWIG_RegisterMapping("_class_wxCloseEvent","_wxCloseEvent",0);
         SWIG_RegisterMapping("_wxSashEvent","_class_wxSashEvent",0);
@@ -1913,6 +2069,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
         SWIG_RegisterMapping("_class_wxCursor","_wxCursor",0);
         SWIG_RegisterMapping("_wxPostScriptDC","_class_wxPostScriptDC",0);
+        SWIG_RegisterMapping("_class_wxImageHandler","_wxImageHandler",0);
         SWIG_RegisterMapping("_wxScrolledWindow","_class_wxScrolledWindow",0);
         SWIG_RegisterMapping("_wxTreeItemId","_class_wxTreeItemId",0);
         SWIG_RegisterMapping("_unsigned_char","_byte",0);
@@ -1943,6 +2100,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxBitmapButton","_wxBitmapButton",0);
         SWIG_RegisterMapping("_wxFrame","_class_wxFrame",0);
         SWIG_RegisterMapping("_class_wxNotebook","_wxNotebook",0);
+        SWIG_RegisterMapping("_wxJPEGHandler","_class_wxJPEGHandler",0);
         SWIG_RegisterMapping("_wxWindowID","_EBool",0);
         SWIG_RegisterMapping("_wxWindowID","_uint",0);
         SWIG_RegisterMapping("_wxWindowID","_int",0);
@@ -1961,6 +2119,7 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
         SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
         SWIG_RegisterMapping("_class_wxMDIParentFrame","_wxMDIParentFrame",0);
+        SWIG_RegisterMapping("_wxPyTreeItemData","_class_wxPyTreeItemData",0);
         SWIG_RegisterMapping("_class_wxPaintDC","_wxPaintDC",0);
         SWIG_RegisterMapping("_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0);
         SWIG_RegisterMapping("_class_wxInitDialogEvent","_wxInitDialogEvent",0);
@@ -1993,7 +2152,6 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_class_wxClientDC","_wxClientDC",0);
         SWIG_RegisterMapping("_class_wxSizeEvent","_wxSizeEvent",0);
         SWIG_RegisterMapping("_class_wxListCtrl","_wxListCtrl",0);
-        SWIG_RegisterMapping("_class_wxTreeItemData","_wxTreeItemData",0);
         SWIG_RegisterMapping("_class_wxGridCell","_wxGridCell",0);
         SWIG_RegisterMapping("_class_wxSize","_wxSize",0);
         SWIG_RegisterMapping("_class_wxBitmap","_wxBitmap",0);
@@ -2007,15 +2165,14 @@ SWIGEXPORT(void,initwxc)() {
         SWIG_RegisterMapping("_wxMenuItem","_class_wxMenuItem",0);
         SWIG_RegisterMapping("_class_wxScrollBar","_wxScrollBar",0);
         SWIG_RegisterMapping("_class_wxColourDialog","_wxColourDialog",0);
-        SWIG_RegisterMapping("_class_wxPrintData","_wxPrintData",0);
         SWIG_RegisterMapping("_wxDash","_unsigned_long",0);
         SWIG_RegisterMapping("_wxDash","_long",0);
         SWIG_RegisterMapping("_class_wxScrolledWindow","_wxScrolledWindow",0);
         SWIG_RegisterMapping("_class_wxTextEntryDialog","_wxTextEntryDialog",0);
-        SWIG_RegisterMapping("_class_wxConfig","_wxConfig",0);
         SWIG_RegisterMapping("_wxKeyEvent","_class_wxKeyEvent",0);
         SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
         SWIG_RegisterMapping("_wxColourData","_class_wxColourData",0);
+        SWIG_RegisterMapping("_wxPageSetupDialogData","_class_wxPageSetupDialogData",0);
         SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
         SWIG_RegisterMapping("_class_wxQueryLayoutInfoEvent","_wxQueryLayoutInfoEvent",0);
         SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",0);
index fa72d1ddf80b9a023eeaa443313903911b39f729..def69b42cf166aae201cf5e553e632b0213f90e6 100644 (file)
@@ -25,7 +25,7 @@ from cmndlgs import *
 
 from windows3 import *
 
-from utils import *
+from image import *
 class wxPyAppPtr(wxEvtHandlerPtr):
     def __init__(self,this):
         self.this = this
@@ -197,6 +197,7 @@ wxSL_BOTH = wxc.wxSL_BOTH
 wxSL_SELRANGE = wxc.wxSL_SELRANGE
 wxSB_HORIZONTAL = wxc.wxSB_HORIZONTAL
 wxSB_VERTICAL = wxc.wxSB_VERTICAL
+wxST_SIZEGRIP = wxc.wxST_SIZEGRIP
 wxBU_AUTODRAW = wxc.wxBU_AUTODRAW
 wxBU_NOAUTODRAW = wxc.wxBU_NOAUTODRAW
 wxTR_HAS_BUTTONS = wxc.wxTR_HAS_BUTTONS
@@ -226,10 +227,6 @@ wxSP_WRAP = wxc.wxSP_WRAP
 wxSP_NOBORDER = wxc.wxSP_NOBORDER
 wxSP_3D = wxc.wxSP_3D
 wxSP_BORDER = wxc.wxSP_BORDER
-wxTAB_MULTILINE = wxc.wxTAB_MULTILINE
-wxTAB_RIGHTJUSTIFY = wxc.wxTAB_RIGHTJUSTIFY
-wxTAB_FIXEDWIDTH = wxc.wxTAB_FIXEDWIDTH
-wxTAB_OWNERDRAW = wxc.wxTAB_OWNERDRAW
 wxFLOOD_SURFACE = wxc.wxFLOOD_SURFACE
 wxFLOOD_BORDER = wxc.wxFLOOD_BORDER
 wxODDEVEN_RULE = wxc.wxODDEVEN_RULE
@@ -296,6 +293,7 @@ wxID_CANCEL = wxc.wxID_CANCEL
 wxID_APPLY = wxc.wxID_APPLY
 wxID_YES = wxc.wxID_YES
 wxID_NO = wxc.wxID_NO
+wxID_STATIC = wxc.wxID_STATIC
 wxBITMAP_TYPE_BMP = wxc.wxBITMAP_TYPE_BMP
 wxBITMAP_TYPE_BMP_RESOURCE = wxc.wxBITMAP_TYPE_BMP_RESOURCE
 wxBITMAP_TYPE_ICO = wxc.wxBITMAP_TYPE_ICO
@@ -314,6 +312,7 @@ wxBITMAP_TYPE_PNG = wxc.wxBITMAP_TYPE_PNG
 wxBITMAP_TYPE_PNG_RESOURCE = wxc.wxBITMAP_TYPE_PNG_RESOURCE
 wxBITMAP_TYPE_ANY = wxc.wxBITMAP_TYPE_ANY
 wxBITMAP_TYPE_RESOURCE = wxc.wxBITMAP_TYPE_RESOURCE
+wxBITMAP_TYPE_JPEG = wxc.wxBITMAP_TYPE_JPEG
 wxOPEN = wxc.wxOPEN
 wxSAVE = wxc.wxSAVE
 wxHIDE_READONLY = wxc.wxHIDE_READONLY
@@ -321,10 +320,6 @@ wxOVERWRITE_PROMPT = wxc.wxOVERWRITE_PROMPT
 wxACCEL_ALT = wxc.wxACCEL_ALT
 wxACCEL_CTRL = wxc.wxACCEL_CTRL
 wxACCEL_SHIFT = wxc.wxACCEL_SHIFT
-ERR_PARAM = wxc.ERR_PARAM
-ERR_NODATA = wxc.ERR_NODATA
-ERR_CANCEL = wxc.ERR_CANCEL
-ERR_SUCCESS = wxc.ERR_SUCCESS
 wxDEFAULT = wxc.wxDEFAULT
 wxDECORATIVE = wxc.wxDECORATIVE
 wxROMAN = wxc.wxROMAN
@@ -478,6 +473,73 @@ wxCURSOR_SPRAYCAN = wxc.wxCURSOR_SPRAYCAN
 wxCURSOR_WAIT = wxc.wxCURSOR_WAIT
 wxCURSOR_WATCH = wxc.wxCURSOR_WATCH
 wxCURSOR_BLANK = wxc.wxCURSOR_BLANK
+wxPAPER_NONE = wxc.wxPAPER_NONE
+wxPAPER_LETTER = wxc.wxPAPER_LETTER
+wxPAPER_LEGAL = wxc.wxPAPER_LEGAL
+wxPAPER_A4 = wxc.wxPAPER_A4
+wxPAPER_CSHEET = wxc.wxPAPER_CSHEET
+wxPAPER_DSHEET = wxc.wxPAPER_DSHEET
+wxPAPER_ESHEET = wxc.wxPAPER_ESHEET
+wxPAPER_LETTERSMALL = wxc.wxPAPER_LETTERSMALL
+wxPAPER_TABLOID = wxc.wxPAPER_TABLOID
+wxPAPER_LEDGER = wxc.wxPAPER_LEDGER
+wxPAPER_STATEMENT = wxc.wxPAPER_STATEMENT
+wxPAPER_EXECUTIVE = wxc.wxPAPER_EXECUTIVE
+wxPAPER_A3 = wxc.wxPAPER_A3
+wxPAPER_A4SMALL = wxc.wxPAPER_A4SMALL
+wxPAPER_A5 = wxc.wxPAPER_A5
+wxPAPER_B4 = wxc.wxPAPER_B4
+wxPAPER_B5 = wxc.wxPAPER_B5
+wxPAPER_FOLIO = wxc.wxPAPER_FOLIO
+wxPAPER_QUARTO = wxc.wxPAPER_QUARTO
+wxPAPER_10X14 = wxc.wxPAPER_10X14
+wxPAPER_11X17 = wxc.wxPAPER_11X17
+wxPAPER_NOTE = wxc.wxPAPER_NOTE
+wxPAPER_ENV_9 = wxc.wxPAPER_ENV_9
+wxPAPER_ENV_10 = wxc.wxPAPER_ENV_10
+wxPAPER_ENV_11 = wxc.wxPAPER_ENV_11
+wxPAPER_ENV_12 = wxc.wxPAPER_ENV_12
+wxPAPER_ENV_14 = wxc.wxPAPER_ENV_14
+wxPAPER_ENV_DL = wxc.wxPAPER_ENV_DL
+wxPAPER_ENV_C5 = wxc.wxPAPER_ENV_C5
+wxPAPER_ENV_C3 = wxc.wxPAPER_ENV_C3
+wxPAPER_ENV_C4 = wxc.wxPAPER_ENV_C4
+wxPAPER_ENV_C6 = wxc.wxPAPER_ENV_C6
+wxPAPER_ENV_C65 = wxc.wxPAPER_ENV_C65
+wxPAPER_ENV_B4 = wxc.wxPAPER_ENV_B4
+wxPAPER_ENV_B5 = wxc.wxPAPER_ENV_B5
+wxPAPER_ENV_B6 = wxc.wxPAPER_ENV_B6
+wxPAPER_ENV_ITALY = wxc.wxPAPER_ENV_ITALY
+wxPAPER_ENV_MONARCH = wxc.wxPAPER_ENV_MONARCH
+wxPAPER_ENV_PERSONAL = wxc.wxPAPER_ENV_PERSONAL
+wxPAPER_FANFOLD_US = wxc.wxPAPER_FANFOLD_US
+wxPAPER_FANFOLD_STD_GERMAN = wxc.wxPAPER_FANFOLD_STD_GERMAN
+wxPAPER_FANFOLD_LGL_GERMAN = wxc.wxPAPER_FANFOLD_LGL_GERMAN
+wxPAPER_ISO_B4 = wxc.wxPAPER_ISO_B4
+wxPAPER_JAPANESE_POSTCARD = wxc.wxPAPER_JAPANESE_POSTCARD
+wxPAPER_9X11 = wxc.wxPAPER_9X11
+wxPAPER_10X11 = wxc.wxPAPER_10X11
+wxPAPER_15X11 = wxc.wxPAPER_15X11
+wxPAPER_ENV_INVITE = wxc.wxPAPER_ENV_INVITE
+wxPAPER_LETTER_EXTRA = wxc.wxPAPER_LETTER_EXTRA
+wxPAPER_LEGAL_EXTRA = wxc.wxPAPER_LEGAL_EXTRA
+wxPAPER_TABLOID_EXTRA = wxc.wxPAPER_TABLOID_EXTRA
+wxPAPER_A4_EXTRA = wxc.wxPAPER_A4_EXTRA
+wxPAPER_LETTER_TRANSVERSE = wxc.wxPAPER_LETTER_TRANSVERSE
+wxPAPER_A4_TRANSVERSE = wxc.wxPAPER_A4_TRANSVERSE
+wxPAPER_LETTER_EXTRA_TRANSVERSE = wxc.wxPAPER_LETTER_EXTRA_TRANSVERSE
+wxPAPER_A_PLUS = wxc.wxPAPER_A_PLUS
+wxPAPER_B_PLUS = wxc.wxPAPER_B_PLUS
+wxPAPER_LETTER_PLUS = wxc.wxPAPER_LETTER_PLUS
+wxPAPER_A4_PLUS = wxc.wxPAPER_A4_PLUS
+wxPAPER_A5_TRANSVERSE = wxc.wxPAPER_A5_TRANSVERSE
+wxPAPER_B5_TRANSVERSE = wxc.wxPAPER_B5_TRANSVERSE
+wxPAPER_A3_EXTRA = wxc.wxPAPER_A3_EXTRA
+wxPAPER_A5_EXTRA = wxc.wxPAPER_A5_EXTRA
+wxPAPER_B5_EXTRA = wxc.wxPAPER_B5_EXTRA
+wxPAPER_A2 = wxc.wxPAPER_A2
+wxPAPER_A3_TRANSVERSE = wxc.wxPAPER_A3_TRANSVERSE
+wxPAPER_A3_EXTRA_TRANSVERSE = wxc.wxPAPER_A3_EXTRA_TRANSVERSE
 FALSE = wxc.FALSE
 false = wxc.false
 TRUE = wxc.TRUE
@@ -660,8 +722,9 @@ def _StdWindowCallbacks(win):
     _checkForCallback(win, "OnEraseBackground",    wxEVT_ERASE_BACKGROUND)
     _checkForCallback(win, "OnSysColourChanged",   wxEVT_SYS_COLOUR_CHANGED)
     _checkForCallback(win, "OnInitDialog",         wxEVT_INIT_DIALOG)
-    _checkForCallback(win, "OnIdle",               wxEVT_IDLE)
     _checkForCallback(win, "OnPaint",              wxEVT_PAINT)
+    _checkForCallback(win, "OnIdle",               wxEVT_IDLE)
+
 
 def _StdFrameCallbacks(win):
     _StdWindowCallbacks(win)
@@ -679,7 +742,7 @@ def _StdDialogCallbacks(win):
     _checkForCallback(win, "OnCharHook",    wxEVT_CHAR_HOOK)
 
 
-def _StdOnScrollCallback(win):
+def _StdOnScrollCallbacks(win):
     try:    cb = getattr(win, "OnScroll")
     except: pass
     else:   EVT_SCROLL(win, cb)
@@ -758,6 +821,9 @@ def EVT_ICONIZE(win, func):
 def EVT_NAVIGATION_KEY(win, func):
     win.Connect(-1, -1, wxEVT_NAVIGATION_KEY, func)
 
+def EVT_IDLE(win, func):
+    win.Connect(-1, -1, wxEVT_IDLE, func)
+
 
 # Mouse Events
 def EVT_LEFT_DOWN(win, func):
@@ -1184,26 +1250,31 @@ class wxAcceleratorTable(wxAcceleratorTablePtr):
 
 #----------------------------------------------------------------------
 
-## class wxPyStdOutWindow(wxFrame):
-##     def __init__(self, title = "wxPython: stdout/stderr"):
-##         wxFrame.__init__(self, NULL, title)
-##         self.title = title
-##         self.text = wxTextWindow(self)
-##         self.text.SetFont(wxFont(10, wxMODERN, wxNORMAL, wxBOLD))
-##         self.SetSize(-1,-1,400,200)
-##         self.Show(false)
-##         self.isShown = false
+##  class wxPyStdOutWindow:
+##       def __init__(self, title = "wxPython: stdout/stderr"):
+##          self.frame = None
+##          self.title = title
+
+##      def write(self, str):
+##          if not self.frame:
+##              self.frame = wxFrame(NULL, -1, self.title)
+##              self.text  = wxTextCtrl(self.frame, -1, "", wxPoint(0,0), wxDefaultSize,
+##                                      wxTE_MULTILINE|wxTE_READONLY)
+##              self.frame.SetSize(wxSize(450, 300))
+##              self.frame.Show(true)
+##              EVT_CLOSE(self.frame, self.OnCloseWindow)
+##          self.text.AppendText(str)
 
-##     def write(self, str):  # with this method,
-##         if not self.isShown:
-##             self.Show(true)
-##             self.isShown = true
-##         self.text.WriteText(str)
+##      def OnCloseWindow(self, event):
+##          wxBell()
+##          self.frame.Destroy()
+##          self.frame = None
+##          self.text  = None
 
-##     def OnCloseWindow(self, event): # doesn't allow the window to close, just hides it
-##         self.Show(false)
-##         self.isShown = false
 
+##      def close(self):
+##          if self.frame:
+##              self.frame.Close(true)
 
 _defRedirect = (wxPlatform == '__WXMSW__')
 
@@ -1235,22 +1306,40 @@ class wxApp(wxPyApp):
         if filename:
             sys.stdout = sys.stderr = open(filename, 'a')
         else:
-            raise self.error, 'wxPyStdOutWindow not yet implemented.'
-            #self.stdioWin = sys.stdout = sys.stderr = wxPyStdOutWindow()
+            #raise self.error, 'wxPyStdOutWindow not yet implemented.'
+            self.stdioWin = sys.stdout = sys.stderr = wxPyStdOutWindow()
 
     def RestoreStdio(self):
         sys.stdout, sys.stderr = self.saveStdio
         if self.stdioWin != None:
-            self.stdioWin.Show(false)
-            self.stdioWin.Destroy()
-            self.stdioWin = None
+            self.stdioWin.close()
 
 
 #----------------------------------------------------------------------------
 #
 # $Log$
-# Revision 1.8  1999/03/01 23:21:39  RD
-# Changes for allowing wxRA_SPECIFY_ROWS and wxRA_SPECIFY_COLS.
+# Revision 1.9  1999/05/01 04:41:08  RD
+# wxPython 2.0b9, second phase (gtk)
+# Added gobs of stuff, see wxPython/README.txt for details
+#
+# Revision 1.12  1999/04/30 03:29:18  RD
+#
+# wxPython 2.0b9, first phase (win32)
+# Added gobs of stuff, see wxPython/README.txt for details
+#
+# Revision 1.11.4.2  1999/03/28 06:35:01  RD
+#
+# wxPython 2.0b8
+#     Python thread support
+#     various minor additions
+#     various minor fixes
+#
+# Revision 1.11.4.1  1999/03/27 23:29:13  RD
+#
+# wxPython 2.0b8
+#     Python thread support
+#     various minor additions
+#     various minor fixes
 #
 # Revision 1.11  1999/02/20 09:02:55  RD
 # Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
index b5aee3ea74a8ad35d2cede26c6a641558b53419d..8d41b8053c60677f40454bcca82b9f62ed2f022d 100644 (file)
@@ -76,7 +76,7 @@ public:
     %pragma(python) addtomethod = "__init__:wx._StdFrameCallbacks(self)"
 
     void Activate();
-    void Maximize();
+    void Maximize(bool maximize);
     void Restore();
 
 };
@@ -95,7 +95,12 @@ public:
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.7  1999/05/01 04:40:57  RD
+// wxPython 2.0b9, second phase (gtk)
+// Added gobs of stuff, see wxPython/README.txt for details
+//
 // Revision 1.6  1999/02/25 07:08:34  RD
+//
 // wxPython version 2.0b5
 //
 // Revision 1.5  1998/12/15 20:41:21  RD
index f10d2f75066e770e74d4baba33ffab4363d7b009..41d3f99a0b3b4534553771e2070c547079c9b875 100644 (file)
@@ -26,7 +26,7 @@
 
 %{
 #ifdef SEPARATE
-    static wxString wxPyEmptyStr("");
+    wxString wxPyEmptyStr("");
 #endif
 %}
 
@@ -131,7 +131,12 @@ public:
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.5  1999/05/01 04:40:57  RD
+// wxPython 2.0b9, second phase (gtk)
+// Added gobs of stuff, see wxPython/README.txt for details
+//
 // Revision 1.4  1999/04/30 03:29:19  RD
+//
 // wxPython 2.0b9, first phase (win32)
 // Added gobs of stuff, see wxPython/README.txt for details
 //
diff --git a/utils/wxPython/tests/.cvsignore b/utils/wxPython/tests/.cvsignore
new file mode 100644 (file)
index 0000000..d45cdf7
--- /dev/null
@@ -0,0 +1,2 @@
+hh_test.py
+th_test.py