]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/msw/glcanvas.cpp
Fixed "Bound pointer address" error under GCC-2.95
[wxWidgets.git] / utils / wxPython / src / msw / glcanvas.cpp
index 927ddcac750c97cadf34bcbcac80f129de79ba33..5a6e137741cc2ac3e434809d5e6cefb447caef2b 100644 (file)
@@ -3,7 +3,7 @@
  * 
  * This file was automatically generated by :
  * Simplified Wrapper and Interface Generator (SWIG)
- * Version 1.1 (Patch 5)
+ * Version 1.1 (Patch 6)
  * 
  * Portions Copyright (c) 1995-1998
  * The University of Utah and The Regents of the University of California.
 /* Definitions for Windows/Unix exporting */
 #if defined(__WIN32__)
 #   if defined(_MSC_VER)
-#      define SWIGEXPORT(a,b) __declspec(dllexport) a b
+#      define SWIGEXPORT(a) __declspec(dllexport) a
 #   else
 #      if defined(__BORLANDC__)
-#          define SWIGEXPORT(a,b) a _export b
+#          define SWIGEXPORT(a) a _export 
 #      else
-#          define SWIGEXPORT(a,b) a b
+#          define SWIGEXPORT(a) a 
 #      endif
 #   endif
 #else
-#   define SWIGEXPORT(a,b) a b
+#   define SWIGEXPORT(a) a 
 #endif
 
 #ifdef __cplusplus
@@ -43,12 +43,12 @@ extern "C" {
 extern void SWIG_MakePtr(char *, void *, char *);
 extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
 extern char *SWIG_GetPtr(char *, void **, char *);
+extern char *SWIG_GetPtrObj(PyObject *, 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"
@@ -58,12 +58,13 @@ extern PyObject *SWIG_newvarlink(void);
 
 static PyObject* l_output_helper(PyObject* target, PyObject* o) {
     PyObject*   o2;
-    if (!target) {
+    PyObject*   o3;
+    if (!target) {                   
         target = o;
-    } else if (target == Py_None) {
+    } else if (target == Py_None) {  
         Py_DECREF(Py_None);
         target = o;
-    } else {
+    } else {                         
         if (!PyList_Check(target)) {
             o2 = target;
             target = PyList_New(0);
@@ -80,23 +81,23 @@ static PyObject* t_output_helper(PyObject* target, PyObject* o) {
     PyObject*   o2;
     PyObject*   o3;
 
-    if (!target) {
+    if (!target) {                   
         target = o;
-    } else if (target == Py_None) {
+    } else if (target == Py_None) {  
         Py_DECREF(Py_None);
         target = o;
-    } else {
+    } 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);
+        o3 = PyTuple_New(1);            
+        PyTuple_SetItem(o3, 0, o);      
 
         o2 = target;
-        target = PySequence_Concat(o2, o3);
-        Py_DECREF(o2);
+        target = PySequence_Concat(o2, o3); 
+        Py_DECREF(o2);                      
         Py_DECREF(o3);
     }
     return target;
@@ -115,11 +116,14 @@ extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
 
 static char* wxStringErrorMsg = "string type is required for parameter";
 
-#ifdef SEPARATE
+#if defined(SEPARATE) && defined(__WXMSW__)
     static wxString wxPyEmptyStr("");
     static wxPoint  wxPyDefaultPosition(-1, -1);
     static wxSize   wxPyDefaultSize(-1, -1);
 #endif
+#ifdef __cplusplus
+extern "C" {
+#endif
 static PyObject *_wrap_glArrayElementEXT(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint  _arg0;
@@ -144,13 +148,14 @@ static PyObject *_wrap_glColorPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg2;
     GLsizei  _arg3;
     GLvoid * _arg4;
-    char * _argc4 = 0;
+    PyObject * _argo4 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiis:glColorPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+    if(!PyArg_ParseTuple(args,"iiiiO:glColorPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
-    if (_argc4) {
-        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+    if (_argo4) {
+        if (_argo4 == Py_None) { _arg4 = NULL; }
+        else if (SWIG_GetPtrObj(_argo4,(void **) &_arg4,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glColorPointerEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -189,13 +194,14 @@ static PyObject *_wrap_glEdgeFlagPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg0;
     GLsizei  _arg1;
     GLboolean * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glEdgeFlagPointerEXT",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glEdgeFlagPointerEXT",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLboolean_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLboolean_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glEdgeFlagPointerEXT. Expected _GLboolean_p.");
         return NULL;
         }
@@ -214,13 +220,14 @@ static PyObject *_wrap_glGetPointervEXT(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLvoid ** _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetPointervEXT",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetPointervEXT",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,(char *) 0 )) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPointervEXT. Expected _GLvoid_pp.");
         return NULL;
         }
@@ -241,13 +248,14 @@ static PyObject *_wrap_glIndexPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glIndexPointerEXT",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glIndexPointerEXT",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glIndexPointerEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -268,13 +276,14 @@ static PyObject *_wrap_glNormalPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glNormalPointerEXT",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glNormalPointerEXT",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glNormalPointerEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -296,13 +305,14 @@ static PyObject *_wrap_glTexCoordPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg2;
     GLsizei  _arg3;
     GLvoid * _arg4;
-    char * _argc4 = 0;
+    PyObject * _argo4 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiis:glTexCoordPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+    if(!PyArg_ParseTuple(args,"iiiiO:glTexCoordPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
-    if (_argc4) {
-        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+    if (_argo4) {
+        if (_argo4 == Py_None) { _arg4 = NULL; }
+        else if (SWIG_GetPtrObj(_argo4,(void **) &_arg4,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glTexCoordPointerEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -324,13 +334,14 @@ static PyObject *_wrap_glVertexPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg2;
     GLsizei  _arg3;
     GLvoid * _arg4;
-    char * _argc4 = 0;
+    PyObject * _argo4 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiis:glVertexPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+    if(!PyArg_ParseTuple(args,"iiiiO:glVertexPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
-    if (_argc4) {
-        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+    if (_argo4) {
+        if (_argo4 == Py_None) { _arg4 = NULL; }
+        else if (SWIG_GetPtrObj(_argo4,(void **) &_arg4,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glVertexPointerEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -353,13 +364,14 @@ static PyObject *_wrap_glColorSubtableEXT(PyObject *self, PyObject *args) {
     GLenum  _arg3;
     GLenum  _arg4;
     GLvoid * _arg5;
-    char * _argc5 = 0;
+    PyObject * _argo5 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiis:glColorSubtableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+    if(!PyArg_ParseTuple(args,"iiiiiO:glColorSubtableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
-    if (_argc5) {
-        if (SWIG_GetPtr(_argc5,(void **) &_arg5,(char *) 0 )) {
+    if (_argo5) {
+        if (_argo5 == Py_None) { _arg5 = NULL; }
+        else if (SWIG_GetPtrObj(_argo5,(void **) &_arg5,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glColorSubtableEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -382,13 +394,14 @@ static PyObject *_wrap_glColorTableEXT(PyObject *self, PyObject *args) {
     GLenum  _arg3;
     GLenum  _arg4;
     GLvoid * _arg5;
-    char * _argc5 = 0;
+    PyObject * _argo5 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiis:glColorTableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+    if(!PyArg_ParseTuple(args,"iiiiiO:glColorTableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
-    if (_argc5) {
-        if (SWIG_GetPtr(_argc5,(void **) &_arg5,(char *) 0 )) {
+    if (_argo5) {
+        if (_argo5 == Py_None) { _arg5 = NULL; }
+        else if (SWIG_GetPtrObj(_argo5,(void **) &_arg5,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glColorTableEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -430,13 +443,14 @@ static PyObject *_wrap_glGetColorTableEXT(PyObject *self, PyObject *args) {
     GLenum  _arg1;
     GLenum  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glGetColorTableEXT",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glGetColorTableEXT",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glGetColorTableEXT. Expected _GLvoid_p.");
         return NULL;
         }
@@ -456,13 +470,14 @@ static PyObject *_wrap_glGetColorTableParamaterfvEXT(PyObject *self, PyObject *a
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetColorTableParamaterfvEXT",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetColorTableParamaterfvEXT",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetColorTableParamaterfvEXT. Expected _GLfloat_p.");
         return NULL;
         }
@@ -482,13 +497,14 @@ static PyObject *_wrap_glGetColorTavleParameterivEXT(PyObject *self, PyObject *a
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetColorTavleParameterivEXT",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetColorTavleParameterivEXT",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetColorTavleParameterivEXT. Expected _GLint_p.");
         return NULL;
         }
@@ -541,13 +557,14 @@ static PyObject *_wrap_glCullParameterdvSGI(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glCullParameterdvSGI",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glCullParameterdvSGI",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glCullParameterdvSGI. Expected _GLdouble_p.");
         return NULL;
         }
@@ -566,13 +583,14 @@ static PyObject *_wrap_glCullParameterfvSGI(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glCullParameterfvSGI",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glCullParameterfvSGI",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glCullParameterfvSGI. Expected _GLfloat_p.");
         return NULL;
         }
@@ -685,20 +703,22 @@ static PyObject *_wrap_glAreTexturesResident(PyObject *self, PyObject *args) {
     GLsizei  _arg0;
     GLuint * _arg1;
     GLboolean * _arg2;
-    char * _argc1 = 0;
-    char * _argc2 = 0;
+    PyObject * _argo1 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iss:glAreTexturesResident",&_arg0,&_argc1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iOO:glAreTexturesResident",&_arg0,&_argo1,&_argo2)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(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")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLboolean_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glAreTexturesResident. Expected _GLboolean_p.");
         return NULL;
         }
@@ -773,13 +793,14 @@ static PyObject *_wrap_glBitmap(PyObject *self, PyObject *args) {
     GLfloat  _arg4;
     GLfloat  _arg5;
     GLubyte * _arg6;
-    char * _argc6 = 0;
+    PyObject * _argo6 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiffffs:glBitmap",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argc6)) 
+    if(!PyArg_ParseTuple(args,"iiffffO:glBitmap",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
         return NULL;
-    if (_argc6) {
-        if (SWIG_GetPtr(_argc6,(void **) &_arg6,"_GLubyte_p")) {
+    if (_argo6) {
+        if (_argo6 == Py_None) { _arg6 = NULL; }
+        else if (SWIG_GetPtrObj(_argo6,(void **) &_arg6,"_GLubyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of glBitmap. Expected _GLubyte_p.");
         return NULL;
         }
@@ -834,13 +855,14 @@ static PyObject *_wrap_glCallLists(PyObject *self, PyObject *args) {
     GLsizei  _arg0;
     GLenum  _arg1;
     GLvoid * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glCallLists",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glCallLists",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glCallLists. Expected _GLvoid_p.");
         return NULL;
         }
@@ -967,13 +989,14 @@ static PyObject *_wrap_glClipPlane(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glClipPlane",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glClipPlane",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glClipPlane. Expected _GLdouble_p.");
         return NULL;
         }
@@ -1010,13 +1033,14 @@ static PyObject *_wrap_glColor3b(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3bv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLbyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3bv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3bv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLbyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLbyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3bv. Expected _GLbyte_p.");
         return NULL;
         }
@@ -1053,13 +1077,14 @@ static PyObject *_wrap_glColor3d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -1096,13 +1121,14 @@ static PyObject *_wrap_glColor3f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -1139,13 +1165,14 @@ static PyObject *_wrap_glColor3i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3iv. Expected _GLint_p.");
         return NULL;
         }
@@ -1182,13 +1209,14 @@ static PyObject *_wrap_glColor3s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -1225,13 +1253,14 @@ static PyObject *_wrap_glColor3ub(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3ubv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLubyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3ubv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3ubv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLubyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3ubv. Expected _GLubyte_p.");
         return NULL;
         }
@@ -1268,13 +1297,14 @@ static PyObject *_wrap_glColor3ui(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3uiv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLuint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3uiv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3uiv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLuint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3uiv. Expected _GLuint_p.");
         return NULL;
         }
@@ -1311,13 +1341,14 @@ static PyObject *_wrap_glColor3us(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor3usv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLushort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor3usv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor3usv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLushort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLushort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor3usv. Expected _GLushort_p.");
         return NULL;
         }
@@ -1355,13 +1386,14 @@ static PyObject *_wrap_glColor4b(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4bv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLbyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4bv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4bv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLbyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLbyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4bv. Expected _GLbyte_p.");
         return NULL;
         }
@@ -1399,13 +1431,14 @@ static PyObject *_wrap_glColor4d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -1443,13 +1476,14 @@ static PyObject *_wrap_glColor4f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -1487,13 +1521,14 @@ static PyObject *_wrap_glColor4i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4iv. Expected _GLint_p.");
         return NULL;
         }
@@ -1531,13 +1566,14 @@ static PyObject *_wrap_glColor4s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -1575,13 +1611,14 @@ static PyObject *_wrap_glColor4ub(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4ubv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLubyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4ubv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4ubv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLubyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4ubv. Expected _GLubyte_p.");
         return NULL;
         }
@@ -1619,13 +1656,14 @@ static PyObject *_wrap_glColor4ui(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4uiv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLuint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4uiv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4uiv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLuint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4uiv. Expected _GLuint_p.");
         return NULL;
         }
@@ -1663,13 +1701,14 @@ static PyObject *_wrap_glColor4us(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glColor4usv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLushort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glColor4usv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glColor4usv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLushort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLushort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glColor4usv. Expected _GLushort_p.");
         return NULL;
         }
@@ -1728,13 +1767,14 @@ static PyObject *_wrap_glColorPointer(PyObject *self, PyObject *args) {
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glColorPointer",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glColorPointer",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glColorPointer. Expected _GLvoid_p.");
         return NULL;
         }
@@ -1902,13 +1942,14 @@ static PyObject *_wrap_glDeleteTextures(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glDeleteTextures",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glDeleteTextures",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glDeleteTextures. Expected _GLuint_p.");
         return NULL;
         }
@@ -2051,13 +2092,14 @@ static PyObject *_wrap_glDrawElements(PyObject *self, PyObject *args) {
     GLsizei  _arg1;
     GLenum  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glDrawElements",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glDrawElements",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glDrawElements. Expected _GLvoid_p.");
         return NULL;
         }
@@ -2079,13 +2121,14 @@ static PyObject *_wrap_glDrawPixels(PyObject *self, PyObject *args) {
     GLenum  _arg2;
     GLenum  _arg3;
     GLvoid * _arg4;
-    char * _argc4 = 0;
+    PyObject * _argo4 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiis:glDrawPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+    if(!PyArg_ParseTuple(args,"iiiiO:glDrawPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
-    if (_argc4) {
-        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+    if (_argo4) {
+        if (_argo4 == Py_None) { _arg4 = NULL; }
+        else if (SWIG_GetPtrObj(_argo4,(void **) &_arg4,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glDrawPixels. Expected _GLvoid_p.");
         return NULL;
         }
@@ -2121,13 +2164,14 @@ static PyObject *_wrap_glEdgeFlagPointer(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLvoid * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glEdgeFlagPointer",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glEdgeFlagPointer",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,(char *) 0 )) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glEdgeFlagPointer. Expected _GLvoid_p.");
         return NULL;
         }
@@ -2145,13 +2189,14 @@ static PyObject *_wrap_glEdgeFlagPointer(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glEdgeFlagv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLboolean * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glEdgeFlagv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glEdgeFlagv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLboolean_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLboolean_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEdgeFlagv. Expected _GLboolean_p.");
         return NULL;
         }
@@ -2252,13 +2297,14 @@ static PyObject *_wrap_glEvalCoord1d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glEvalCoord1dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glEvalCoord1dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glEvalCoord1dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord1dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -2293,13 +2339,14 @@ static PyObject *_wrap_glEvalCoord1f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glEvalCoord1fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glEvalCoord1fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glEvalCoord1fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord1fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2335,13 +2382,14 @@ static PyObject *_wrap_glEvalCoord2d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glEvalCoord2dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glEvalCoord2dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glEvalCoord2dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord2dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -2377,13 +2425,14 @@ static PyObject *_wrap_glEvalCoord2f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glEvalCoord2fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glEvalCoord2fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glEvalCoord2fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glEvalCoord2fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2478,13 +2527,14 @@ static PyObject *_wrap_glFeedbackBuffer(PyObject *self, PyObject *args) {
     GLsizei  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glFeedbackBuffer",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glFeedbackBuffer",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glFeedbackBuffer. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2553,13 +2603,14 @@ static PyObject *_wrap_glFogfv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glFogfv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glFogfv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glFogfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2596,13 +2647,14 @@ static PyObject *_wrap_glFogiv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glFogiv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glFogiv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glFogiv. Expected _GLint_p.");
         return NULL;
         }
@@ -2677,13 +2729,14 @@ static PyObject *_wrap_glGenTextures(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGenTextures",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGenTextures",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGenTextures. Expected _GLuint_p.");
         return NULL;
         }
@@ -2702,13 +2755,14 @@ static PyObject *_wrap_glGetBooleanv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLboolean * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetBooleanv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetBooleanv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLboolean_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLboolean_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetBooleanv. Expected _GLboolean_p.");
         return NULL;
         }
@@ -2727,13 +2781,14 @@ static PyObject *_wrap_glGetClipPlane(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetClipPlane",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetClipPlane",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetClipPlane. Expected _GLdouble_p.");
         return NULL;
         }
@@ -2752,13 +2807,14 @@ static PyObject *_wrap_glGetDoublev(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetDoublev",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetDoublev",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLdouble_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetDoublev. Expected _GLdouble_p.");
         return NULL;
         }
@@ -2793,13 +2849,14 @@ static PyObject *_wrap_glGetFloatv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetFloatv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetFloatv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetFloatv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2818,13 +2875,14 @@ static PyObject *_wrap_glGetIntegerv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetIntegerv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetIntegerv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetIntegerv. Expected _GLint_p.");
         return NULL;
         }
@@ -2844,13 +2902,14 @@ static PyObject *_wrap_glGetLightfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetLightfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetLightfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetLightfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2870,13 +2929,14 @@ static PyObject *_wrap_glGetLightiv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetLightiv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetLightiv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetLightiv. Expected _GLint_p.");
         return NULL;
         }
@@ -2896,13 +2956,14 @@ static PyObject *_wrap_glGetMapdv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetMapdv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetMapdv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLdouble_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMapdv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -2922,13 +2983,14 @@ static PyObject *_wrap_glGetMapfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetMapfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetMapfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMapfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -2948,13 +3010,14 @@ static PyObject *_wrap_glGetMapiv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetMapiv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetMapiv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMapiv. Expected _GLint_p.");
         return NULL;
         }
@@ -2974,13 +3037,14 @@ static PyObject *_wrap_glGetMaterialfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetMaterialfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetMaterialfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMaterialfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3000,13 +3064,14 @@ static PyObject *_wrap_glGetMaterialiv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetMaterialiv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetMaterialiv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetMaterialiv. Expected _GLint_p.");
         return NULL;
         }
@@ -3025,13 +3090,14 @@ static PyObject *_wrap_glGetPixelMapfv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetPixelMapfv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetPixelMapfv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPixelMapfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3050,13 +3116,14 @@ static PyObject *_wrap_glGetPixelMapuiv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLuint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetPixelMapuiv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetPixelMapuiv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPixelMapuiv. Expected _GLuint_p.");
         return NULL;
         }
@@ -3075,13 +3142,14 @@ static PyObject *_wrap_glGetPixelMapusv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLushort * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetPixelMapusv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetPixelMapusv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLushort_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLushort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPixelMapusv. Expected _GLushort_p.");
         return NULL;
         }
@@ -3100,13 +3168,14 @@ static PyObject *_wrap_glGetPointerv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLvoid ** _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glGetPointerv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glGetPointerv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,(char *) 0 )) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glGetPointerv. Expected _GLvoid_pp.");
         return NULL;
         }
@@ -3124,13 +3193,14 @@ static PyObject *_wrap_glGetPointerv(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glGetPolygonStipple(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLubyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glGetPolygonStipple",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glGetPolygonStipple",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLubyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glGetPolygonStipple. Expected _GLubyte_p.");
         return NULL;
         }
@@ -3159,8 +3229,13 @@ static PyObject *_wrap_glGetString(PyObject *self, PyObject *args) {
         _result = (GLubyte *)glGetString(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_GLubyte_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_GLubyte_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
@@ -3169,13 +3244,14 @@ static PyObject *_wrap_glGetTexEnvfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexEnvfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexEnvfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexEnvfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3195,13 +3271,14 @@ static PyObject *_wrap_glGetTexEnviv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexEnviv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexEnviv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexEnviv. Expected _GLint_p.");
         return NULL;
         }
@@ -3221,13 +3298,14 @@ static PyObject *_wrap_glGetTexGendv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexGendv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexGendv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLdouble_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexGendv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -3247,13 +3325,14 @@ static PyObject *_wrap_glGetTexGenfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexGenfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexGenfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexGenfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3273,13 +3352,14 @@ static PyObject *_wrap_glGetTexGeniv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexGeniv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexGeniv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexGeniv. Expected _GLint_p.");
         return NULL;
         }
@@ -3301,13 +3381,14 @@ static PyObject *_wrap_glGetTexImage(PyObject *self, PyObject *args) {
     GLenum  _arg2;
     GLenum  _arg3;
     GLvoid * _arg4;
-    char * _argc4 = 0;
+    PyObject * _argo4 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiis:glGetTexImage",&_arg0,&_arg1,&_arg2,&_arg3,&_argc4)) 
+    if(!PyArg_ParseTuple(args,"iiiiO:glGetTexImage",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
-    if (_argc4) {
-        if (SWIG_GetPtr(_argc4,(void **) &_arg4,(char *) 0 )) {
+    if (_argo4) {
+        if (_argo4 == Py_None) { _arg4 = NULL; }
+        else if (SWIG_GetPtrObj(_argo4,(void **) &_arg4,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 5 of glGetTexImage. Expected _GLvoid_p.");
         return NULL;
         }
@@ -3328,13 +3409,14 @@ static PyObject *_wrap_glGetTexLevelParameterfv(PyObject *self, PyObject *args)
     GLint  _arg1;
     GLenum  _arg2;
     GLfloat * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glGetTexLevelParameterfv",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glGetTexLevelParameterfv",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_GLfloat_p")) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glGetTexLevelParameterfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3355,13 +3437,14 @@ static PyObject *_wrap_glGetTexLevelParameteriv(PyObject *self, PyObject *args)
     GLint  _arg1;
     GLenum  _arg2;
     GLint * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glGetTexLevelParameteriv",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glGetTexLevelParameteriv",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_GLint_p")) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glGetTexLevelParameteriv. Expected _GLint_p.");
         return NULL;
         }
@@ -3381,13 +3464,14 @@ static PyObject *_wrap_glGetTexParameterfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexParameterfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexParameterfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexParameterfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3407,13 +3491,14 @@ static PyObject *_wrap_glGetTexParameteriv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glGetTexParameteriv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glGetTexParameteriv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glGetTexParameteriv. Expected _GLint_p.");
         return NULL;
         }
@@ -3468,13 +3553,14 @@ static PyObject *_wrap_glIndexPointer(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glIndexPointer",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glIndexPointer",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glIndexPointer. Expected _GLvoid_p.");
         return NULL;
         }
@@ -3509,13 +3595,14 @@ static PyObject *_wrap_glIndexd(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glIndexdv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glIndexdv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glIndexdv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexdv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -3550,13 +3637,14 @@ static PyObject *_wrap_glIndexf(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glIndexfv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glIndexfv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glIndexfv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3591,13 +3679,14 @@ static PyObject *_wrap_glIndexi(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glIndexiv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glIndexiv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glIndexiv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexiv. Expected _GLint_p.");
         return NULL;
         }
@@ -3632,13 +3721,14 @@ static PyObject *_wrap_glIndexs(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glIndexsv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glIndexsv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glIndexsv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexsv. Expected _GLshort_p.");
         return NULL;
         }
@@ -3673,13 +3763,14 @@ static PyObject *_wrap_glIndexub(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glIndexubv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLubyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glIndexubv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glIndexubv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLubyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glIndexubv. Expected _GLubyte_p.");
         return NULL;
         }
@@ -3715,13 +3806,14 @@ static PyObject *_wrap_glInterleavedArrays(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glInterleavedArrays",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glInterleavedArrays",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glInterleavedArrays. Expected _GLvoid_p.");
         return NULL;
         }
@@ -3809,13 +3901,14 @@ static PyObject *_wrap_glLightModelfv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glLightModelfv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glLightModelfv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLfloat_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glLightModelfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3852,13 +3945,14 @@ static PyObject *_wrap_glLightModeliv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glLightModeliv",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glLightModeliv",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glLightModeliv. Expected _GLint_p.");
         return NULL;
         }
@@ -3897,13 +3991,14 @@ static PyObject *_wrap_glLightfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glLightfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glLightfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glLightfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -3942,13 +4037,14 @@ static PyObject *_wrap_glLightiv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glLightiv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glLightiv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glLightiv. Expected _GLint_p.");
         return NULL;
         }
@@ -4034,13 +4130,14 @@ static PyObject *_wrap_glLoadIdentity(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glLoadMatrixd(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glLoadMatrixd",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glLoadMatrixd",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glLoadMatrixd. Expected _GLdouble_p.");
         return NULL;
         }
@@ -4058,13 +4155,14 @@ static PyObject *_wrap_glLoadMatrixd(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glLoadMatrixf(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glLoadMatrixf",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glLoadMatrixf",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glLoadMatrixf. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4121,13 +4219,14 @@ static PyObject *_wrap_glMap1d(PyObject *self, PyObject *args) {
     GLint  _arg3;
     GLint  _arg4;
     GLdouble * _arg5;
-    char * _argc5 = 0;
+    PyObject * _argo5 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iddiis:glMap1d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+    if(!PyArg_ParseTuple(args,"iddiiO:glMap1d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
-    if (_argc5) {
-        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_GLdouble_p")) {
+    if (_argo5) {
+        if (_argo5 == Py_None) { _arg5 = NULL; }
+        else if (SWIG_GetPtrObj(_argo5,(void **) &_arg5,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glMap1d. Expected _GLdouble_p.");
         return NULL;
         }
@@ -4150,13 +4249,14 @@ static PyObject *_wrap_glMap1f(PyObject *self, PyObject *args) {
     GLint  _arg3;
     GLint  _arg4;
     GLfloat * _arg5;
-    char * _argc5 = 0;
+    PyObject * _argo5 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iffiis:glMap1f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argc5)) 
+    if(!PyArg_ParseTuple(args,"iffiiO:glMap1f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
-    if (_argc5) {
-        if (SWIG_GetPtr(_argc5,(void **) &_arg5,"_GLfloat_p")) {
+    if (_argo5) {
+        if (_argo5 == Py_None) { _arg5 = NULL; }
+        else if (SWIG_GetPtrObj(_argo5,(void **) &_arg5,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of glMap1f. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4183,13 +4283,14 @@ static PyObject *_wrap_glMap2d(PyObject *self, PyObject *args) {
     GLint  _arg7;
     GLint  _arg8;
     GLdouble * _arg9;
-    char * _argc9 = 0;
+    PyObject * _argo9 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iddiiddiis:glMap2d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argc9)) 
+    if(!PyArg_ParseTuple(args,"iddiiddiiO:glMap2d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argo9)) 
         return NULL;
-    if (_argc9) {
-        if (SWIG_GetPtr(_argc9,(void **) &_arg9,"_GLdouble_p")) {
+    if (_argo9) {
+        if (_argo9 == Py_None) { _arg9 = NULL; }
+        else if (SWIG_GetPtrObj(_argo9,(void **) &_arg9,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 10 of glMap2d. Expected _GLdouble_p.");
         return NULL;
         }
@@ -4216,13 +4317,14 @@ static PyObject *_wrap_glMap2f(PyObject *self, PyObject *args) {
     GLint  _arg7;
     GLint  _arg8;
     GLfloat * _arg9;
-    char * _argc9 = 0;
+    PyObject * _argo9 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iffiiffiis:glMap2f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argc9)) 
+    if(!PyArg_ParseTuple(args,"iffiiffiiO:glMap2f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argo9)) 
         return NULL;
-    if (_argc9) {
-        if (SWIG_GetPtr(_argc9,(void **) &_arg9,"_GLfloat_p")) {
+    if (_argo9) {
+        if (_argo9 == Py_None) { _arg9 = NULL; }
+        else if (SWIG_GetPtrObj(_argo9,(void **) &_arg9,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 10 of glMap2f. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4343,13 +4445,14 @@ static PyObject *_wrap_glMaterialfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glMaterialfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glMaterialfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glMaterialfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4388,13 +4491,14 @@ static PyObject *_wrap_glMaterialiv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glMaterialiv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glMaterialiv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glMaterialiv. Expected _GLint_p.");
         return NULL;
         }
@@ -4429,13 +4533,14 @@ static PyObject *_wrap_glMatrixMode(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glMultMatrixd(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glMultMatrixd",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glMultMatrixd",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glMultMatrixd. Expected _GLdouble_p.");
         return NULL;
         }
@@ -4453,13 +4558,14 @@ static PyObject *_wrap_glMultMatrixd(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glMultMatrixf(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glMultMatrixf",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glMultMatrixf",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glMultMatrixf. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4514,13 +4620,14 @@ static PyObject *_wrap_glNormal3b(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glNormal3bv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLbyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glNormal3bv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glNormal3bv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLbyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLbyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3bv. Expected _GLbyte_p.");
         return NULL;
         }
@@ -4557,13 +4664,14 @@ static PyObject *_wrap_glNormal3d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glNormal3dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glNormal3dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glNormal3dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -4600,13 +4708,14 @@ static PyObject *_wrap_glNormal3f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glNormal3fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glNormal3fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glNormal3fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4643,13 +4752,14 @@ static PyObject *_wrap_glNormal3i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glNormal3iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glNormal3iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glNormal3iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3iv. Expected _GLint_p.");
         return NULL;
         }
@@ -4686,13 +4796,14 @@ static PyObject *_wrap_glNormal3s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glNormal3sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glNormal3sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glNormal3sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glNormal3sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -4712,13 +4823,14 @@ static PyObject *_wrap_glNormalPointer(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glNormalPointer",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glNormalPointer",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,(char *) 0 )) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glNormalPointer. Expected _GLvoid_p.");
         return NULL;
         }
@@ -4777,13 +4889,14 @@ static PyObject *_wrap_glPixelMapfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLsizei  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glPixelMapfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glPixelMapfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPixelMapfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -4803,13 +4916,14 @@ static PyObject *_wrap_glPixelMapuiv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLsizei  _arg1;
     GLuint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glPixelMapuiv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glPixelMapuiv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLuint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPixelMapuiv. Expected _GLuint_p.");
         return NULL;
         }
@@ -4829,13 +4943,14 @@ static PyObject *_wrap_glPixelMapusv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLsizei  _arg1;
     GLushort * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glPixelMapusv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glPixelMapusv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLushort_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLushort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPixelMapusv. Expected _GLushort_p.");
         return NULL;
         }
@@ -4996,13 +5111,14 @@ static PyObject *_wrap_glPolygonOffset(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glPolygonStipple(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLubyte * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glPolygonStipple",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glPolygonStipple",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLubyte_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLubyte_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glPolygonStipple. Expected _GLubyte_p.");
         return NULL;
         }
@@ -5086,20 +5202,22 @@ static PyObject *_wrap_glPrioritizeTextures(PyObject *self, PyObject *args) {
     GLsizei  _arg0;
     GLuint * _arg1;
     GLclampf * _arg2;
-    char * _argc1 = 0;
-    char * _argc2 = 0;
+    PyObject * _argo1 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iss:glPrioritizeTextures",&_arg0,&_argc1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iOO:glPrioritizeTextures",&_arg0,&_argo1,&_argo2)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(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")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLclampf_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glPrioritizeTextures. Expected _GLclampf_p.");
         return NULL;
         }
@@ -5202,13 +5320,14 @@ static PyObject *_wrap_glRasterPos2d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos2dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos2dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos2dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -5244,13 +5363,14 @@ static PyObject *_wrap_glRasterPos2f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos2fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos2fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos2fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -5286,13 +5406,14 @@ static PyObject *_wrap_glRasterPos2i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos2iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos2iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos2iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2iv. Expected _GLint_p.");
         return NULL;
         }
@@ -5328,13 +5449,14 @@ static PyObject *_wrap_glRasterPos2s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos2sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos2sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos2sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos2sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -5371,13 +5493,14 @@ static PyObject *_wrap_glRasterPos3d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos3dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos3dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos3dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -5414,13 +5537,14 @@ static PyObject *_wrap_glRasterPos3f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos3fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos3fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos3fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -5457,13 +5581,14 @@ static PyObject *_wrap_glRasterPos3i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos3iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos3iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos3iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3iv. Expected _GLint_p.");
         return NULL;
         }
@@ -5500,13 +5625,14 @@ static PyObject *_wrap_glRasterPos3s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos3sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos3sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos3sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos3sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -5544,13 +5670,14 @@ static PyObject *_wrap_glRasterPos4d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos4dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos4dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos4dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -5588,13 +5715,14 @@ static PyObject *_wrap_glRasterPos4f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos4fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos4fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos4fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -5632,13 +5760,14 @@ static PyObject *_wrap_glRasterPos4i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos4iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos4iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos4iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4iv. Expected _GLint_p.");
         return NULL;
         }
@@ -5676,13 +5805,14 @@ static PyObject *_wrap_glRasterPos4s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glRasterPos4sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glRasterPos4sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glRasterPos4sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glRasterPos4sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -5723,13 +5853,14 @@ static PyObject *_wrap_glReadPixels(PyObject *self, PyObject *args) {
     GLenum  _arg4;
     GLenum  _arg5;
     GLvoid * _arg6;
-    char * _argc6 = 0;
+    PyObject * _argo6 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiis:glReadPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argc6)) 
+    if(!PyArg_ParseTuple(args,"iiiiiiO:glReadPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
         return NULL;
-    if (_argc6) {
-        if (SWIG_GetPtr(_argc6,(void **) &_arg6,(char *) 0 )) {
+    if (_argo6) {
+        if (_argo6 == Py_None) { _arg6 = NULL; }
+        else if (SWIG_GetPtrObj(_argo6,(void **) &_arg6,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of glReadPixels. Expected _GLvoid_p.");
         return NULL;
         }
@@ -5768,20 +5899,22 @@ static PyObject *_wrap_glRectdv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     GLdouble * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:glRectdv",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"OO:glRectdv",&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(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")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectdv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -5820,20 +5953,22 @@ static PyObject *_wrap_glRectfv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     GLfloat * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:glRectfv",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"OO:glRectfv",&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(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")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -5872,20 +6007,22 @@ static PyObject *_wrap_glRectiv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
     GLint * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:glRectiv",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"OO:glRectiv",&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(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")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectiv. Expected _GLint_p.");
         return NULL;
         }
@@ -5924,20 +6061,22 @@ static PyObject *_wrap_glRectsv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
     GLshort * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:glRectsv",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"OO:glRectsv",&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(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")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glRectsv. Expected _GLshort_p.");
         return NULL;
         }
@@ -6071,13 +6210,14 @@ static PyObject *_wrap_glSelectBuffer(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
-    char * _argc1 = 0;
+    PyObject * _argo1 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is:glSelectBuffer",&_arg0,&_argc1)) 
+    if(!PyArg_ParseTuple(args,"iO:glSelectBuffer",&_arg0,&_argo1)) 
         return NULL;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_GLuint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_GLuint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of glSelectBuffer. Expected _GLuint_p.");
         return NULL;
         }
@@ -6184,13 +6324,14 @@ static PyObject *_wrap_glTexCoord1d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord1dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord1dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord1dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -6225,13 +6366,14 @@ static PyObject *_wrap_glTexCoord1f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord1fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord1fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord1fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -6266,13 +6408,14 @@ static PyObject *_wrap_glTexCoord1i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord1iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord1iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord1iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1iv. Expected _GLint_p.");
         return NULL;
         }
@@ -6307,13 +6450,14 @@ static PyObject *_wrap_glTexCoord1s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord1sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord1sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord1sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord1sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -6349,13 +6493,14 @@ static PyObject *_wrap_glTexCoord2d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord2dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord2dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord2dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -6391,13 +6536,14 @@ static PyObject *_wrap_glTexCoord2f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord2fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord2fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord2fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -6433,13 +6579,14 @@ static PyObject *_wrap_glTexCoord2i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord2iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord2iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord2iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2iv. Expected _GLint_p.");
         return NULL;
         }
@@ -6475,13 +6622,14 @@ static PyObject *_wrap_glTexCoord2s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord2sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord2sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord2sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord2sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -6518,13 +6666,14 @@ static PyObject *_wrap_glTexCoord3d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord3dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord3dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord3dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -6561,13 +6710,14 @@ static PyObject *_wrap_glTexCoord3f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord3fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord3fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord3fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -6604,13 +6754,14 @@ static PyObject *_wrap_glTexCoord3i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord3iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord3iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord3iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3iv. Expected _GLint_p.");
         return NULL;
         }
@@ -6647,13 +6798,14 @@ static PyObject *_wrap_glTexCoord3s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord3sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord3sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord3sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord3sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -6691,13 +6843,14 @@ static PyObject *_wrap_glTexCoord4d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord4dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord4dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord4dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -6735,13 +6888,14 @@ static PyObject *_wrap_glTexCoord4f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord4fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord4fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord4fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -6779,13 +6933,14 @@ static PyObject *_wrap_glTexCoord4i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord4iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord4iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord4iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4iv. Expected _GLint_p.");
         return NULL;
         }
@@ -6823,13 +6978,14 @@ static PyObject *_wrap_glTexCoord4s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glTexCoord4sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glTexCoord4sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glTexCoord4sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glTexCoord4sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -6850,13 +7006,14 @@ static PyObject *_wrap_glTexCoordPointer(PyObject *self, PyObject *args) {
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glTexCoordPointer",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glTexCoordPointer",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glTexCoordPointer. Expected _GLvoid_p.");
         return NULL;
         }
@@ -6895,13 +7052,14 @@ static PyObject *_wrap_glTexEnvfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexEnvfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexEnvfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexEnvfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -6940,13 +7098,14 @@ static PyObject *_wrap_glTexEnviv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexEnviv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexEnviv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexEnviv. Expected _GLint_p.");
         return NULL;
         }
@@ -6985,13 +7144,14 @@ static PyObject *_wrap_glTexGendv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexGendv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexGendv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLdouble_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexGendv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -7030,13 +7190,14 @@ static PyObject *_wrap_glTexGenfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexGenfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexGenfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexGenfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -7075,13 +7236,14 @@ static PyObject *_wrap_glTexGeniv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexGeniv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexGeniv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexGeniv. Expected _GLint_p.");
         return NULL;
         }
@@ -7106,13 +7268,14 @@ static PyObject *_wrap_glTexImage1D(PyObject *self, PyObject *args) {
     GLenum  _arg5;
     GLenum  _arg6;
     GLvoid * _arg7;
-    char * _argc7 = 0;
+    PyObject * _argo7 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiis:glTexImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_argc7)) 
+    if(!PyArg_ParseTuple(args,"iiiiiiiO:glTexImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_argo7)) 
         return NULL;
-    if (_argc7) {
-        if (SWIG_GetPtr(_argc7,(void **) &_arg7,(char *) 0 )) {
+    if (_argo7) {
+        if (_argo7 == Py_None) { _arg7 = NULL; }
+        else if (SWIG_GetPtrObj(_argo7,(void **) &_arg7,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 8 of glTexImage1D. Expected _GLvoid_p.");
         return NULL;
         }
@@ -7138,13 +7301,14 @@ static PyObject *_wrap_glTexImage2D(PyObject *self, PyObject *args) {
     GLenum  _arg6;
     GLenum  _arg7;
     GLvoid * _arg8;
-    char * _argc8 = 0;
+    PyObject * _argo8 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiiis:glTexImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argc8)) 
+    if(!PyArg_ParseTuple(args,"iiiiiiiiO:glTexImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argo8)) 
         return NULL;
-    if (_argc8) {
-        if (SWIG_GetPtr(_argc8,(void **) &_arg8,(char *) 0 )) {
+    if (_argo8) {
+        if (_argo8 == Py_None) { _arg8 = NULL; }
+        else if (SWIG_GetPtrObj(_argo8,(void **) &_arg8,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 9 of glTexImage2D. Expected _GLvoid_p.");
         return NULL;
         }
@@ -7183,13 +7347,14 @@ static PyObject *_wrap_glTexParameterfv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexParameterfv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexParameterfv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLfloat_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexParameterfv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -7228,13 +7393,14 @@ static PyObject *_wrap_glTexParameteriv(PyObject *self, PyObject *args) {
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
-    char * _argc2 = 0;
+    PyObject * _argo2 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iis:glTexParameteriv",&_arg0,&_arg1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iiO:glTexParameteriv",&_arg0,&_arg1,&_argo2)) 
         return NULL;
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_GLint_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of glTexParameteriv. Expected _GLint_p.");
         return NULL;
         }
@@ -7258,13 +7424,14 @@ static PyObject *_wrap_glTexSubImage1D(PyObject *self, PyObject *args) {
     GLenum  _arg4;
     GLenum  _arg5;
     GLvoid * _arg6;
-    char * _argc6 = 0;
+    PyObject * _argo6 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiis:glTexSubImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argc6)) 
+    if(!PyArg_ParseTuple(args,"iiiiiiO:glTexSubImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
         return NULL;
-    if (_argc6) {
-        if (SWIG_GetPtr(_argc6,(void **) &_arg6,(char *) 0 )) {
+    if (_argo6) {
+        if (_argo6 == Py_None) { _arg6 = NULL; }
+        else if (SWIG_GetPtrObj(_argo6,(void **) &_arg6,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of glTexSubImage1D. Expected _GLvoid_p.");
         return NULL;
         }
@@ -7290,13 +7457,14 @@ static PyObject *_wrap_glTexSubImage2D(PyObject *self, PyObject *args) {
     GLenum  _arg6;
     GLenum  _arg7;
     GLvoid * _arg8;
-    char * _argc8 = 0;
+    PyObject * _argo8 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiiis:glTexSubImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argc8)) 
+    if(!PyArg_ParseTuple(args,"iiiiiiiiO:glTexSubImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argo8)) 
         return NULL;
-    if (_argc8) {
-        if (SWIG_GetPtr(_argc8,(void **) &_arg8,(char *) 0 )) {
+    if (_argo8) {
+        if (_argo8 == Py_None) { _arg8 = NULL; }
+        else if (SWIG_GetPtrObj(_argo8,(void **) &_arg8,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 9 of glTexSubImage2D. Expected _GLvoid_p.");
         return NULL;
         }
@@ -7370,13 +7538,14 @@ static PyObject *_wrap_glVertex2d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex2dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex2dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex2dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -7412,13 +7581,14 @@ static PyObject *_wrap_glVertex2f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex2fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex2fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex2fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -7454,13 +7624,14 @@ static PyObject *_wrap_glVertex2i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex2iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex2iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex2iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2iv. Expected _GLint_p.");
         return NULL;
         }
@@ -7496,13 +7667,14 @@ static PyObject *_wrap_glVertex2s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex2sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex2sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex2sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex2sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -7539,13 +7711,14 @@ static PyObject *_wrap_glVertex3d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex3dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex3dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex3dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -7582,13 +7755,14 @@ static PyObject *_wrap_glVertex3f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex3fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex3fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex3fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -7625,13 +7799,14 @@ static PyObject *_wrap_glVertex3i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex3iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex3iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex3iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3iv. Expected _GLint_p.");
         return NULL;
         }
@@ -7668,13 +7843,14 @@ static PyObject *_wrap_glVertex3s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex3sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex3sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex3sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex3sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -7712,13 +7888,14 @@ static PyObject *_wrap_glVertex4d(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex4dv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLdouble * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex4dv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex4dv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLdouble_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLdouble_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4dv. Expected _GLdouble_p.");
         return NULL;
         }
@@ -7756,13 +7933,14 @@ static PyObject *_wrap_glVertex4f(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex4fv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLfloat * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex4fv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex4fv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLfloat_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLfloat_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4fv. Expected _GLfloat_p.");
         return NULL;
         }
@@ -7800,13 +7978,14 @@ static PyObject *_wrap_glVertex4i(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex4iv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLint * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex4iv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex4iv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLint_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4iv. Expected _GLint_p.");
         return NULL;
         }
@@ -7844,13 +8023,14 @@ static PyObject *_wrap_glVertex4s(PyObject *self, PyObject *args) {
 static PyObject *_wrap_glVertex4sv(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     GLshort * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:glVertex4sv",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:glVertex4sv",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_GLshort_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_GLshort_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of glVertex4sv. Expected _GLshort_p.");
         return NULL;
         }
@@ -7871,13 +8051,14 @@ static PyObject *_wrap_glVertexPointer(PyObject *self, PyObject *args) {
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
-    char * _argc3 = 0;
+    PyObject * _argo3 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiis:glVertexPointer",&_arg0,&_arg1,&_arg2,&_argc3)) 
+    if(!PyArg_ParseTuple(args,"iiiO:glVertexPointer",&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,(char *) 0 )) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,(char *) 0 )) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of glVertexPointer. Expected _GLvoid_p.");
         return NULL;
         }
@@ -7918,24 +8099,26 @@ static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
     wxGLContext * _result;
     bool  _arg0;
     wxGLCanvas * _arg1;
-    wxPalette * _arg2 = &wxNullPalette;
+    wxPalette * _arg2 = (wxPalette *) &wxNullPalette;
     int tempbool0;
-    char * _argc1 = 0;
-    char * _argc2 = 0;
+    PyObject * _argo1 = 0;
+    PyObject * _argo2 = 0;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"is|s:new_wxGLContext",&tempbool0,&_argc1,&_argc2)) 
+    if(!PyArg_ParseTuple(args,"iO|O:new_wxGLContext",&tempbool0,&_argo1,&_argo2)) 
         return NULL;
     _arg0 = (bool ) tempbool0;
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxGLCanvas_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxGLCanvas_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxGLContext. Expected _wxGLCanvas_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPalette_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPalette_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxGLContext. Expected _wxPalette_p.");
         return NULL;
         }
@@ -7945,8 +8128,13 @@ static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
         _result = (wxGLContext *)new_wxGLContext(_arg0,_arg1,*_arg2);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLContext_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLContext_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
@@ -7954,13 +8142,14 @@ static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
 static PyObject *_wrap_delete_wxGLContext(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:delete_wxGLContext",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:delete_wxGLContext",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLContext_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxGLContext. Expected _wxGLContext_p.");
         return NULL;
         }
@@ -7979,13 +8168,14 @@ static PyObject *_wrap_delete_wxGLContext(PyObject *self, PyObject *args) {
 static PyObject *_wrap_wxGLContext_SetCurrent(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGLContext_SetCurrent",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:wxGLContext_SetCurrent",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLContext_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SetCurrent. Expected _wxGLContext_p.");
         return NULL;
         }
@@ -8005,13 +8195,14 @@ static PyObject *_wrap_wxGLContext_SetColour(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
     char * _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGLContext_SetColour",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"Os:wxGLContext_SetColour",&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLContext_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SetColour. Expected _wxGLContext_p.");
         return NULL;
         }
@@ -8030,13 +8221,14 @@ static PyObject *_wrap_wxGLContext_SetColour(PyObject *self, PyObject *args) {
 static PyObject *_wrap_wxGLContext_SwapBuffers(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGLContext_SwapBuffers",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:wxGLContext_SwapBuffers",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLContext_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_SwapBuffers. Expected _wxGLContext_p.");
         return NULL;
         }
@@ -8056,14 +8248,15 @@ static PyObject *_wrap_wxGLContext_GetWindow(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxWindow * _result;
     wxGLContext * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGLContext_GetWindow",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:wxGLContext_GetWindow",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLContext_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLContext_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLContext_GetWindow. Expected _wxGLContext_p.");
         return NULL;
         }
@@ -8073,8 +8266,13 @@ static PyObject *_wrap_wxGLContext_GetWindow(PyObject *self, PyObject *args) {
         _result = (wxWindow *)wxGLContext_GetWindow(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
@@ -8086,6 +8284,14 @@ static void *SwigwxGLCanvasTowxScrolledWindow(void *ptr) {
     return (void *) dest;
 }
 
+static void *SwigwxGLCanvasTowxPanel(void *ptr) {
+    wxGLCanvas *src;
+    wxPanel *dest;
+    src = (wxGLCanvas *) ptr;
+    dest = (wxPanel *) src;
+    return (void *) dest;
+}
+
 static void *SwigwxGLCanvasTowxWindow(void *ptr) {
     wxGLCanvas *src;
     wxWindow *dest;
@@ -8107,49 +8313,54 @@ 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;
+    wxWindowID  _arg1 = (wxWindowID ) -1;
+    wxPoint * _arg2 = (wxPoint *) &wxPyDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxPyDefaultSize;
+    long  _arg4 = (long ) 0;
+    char * _arg5 = (char *) "GLCanvas";
+    int * _arg6 = (int *) 0;
+    wxPalette * _arg7 = (wxPalette *) &wxNullPalette;
+    PyObject * _argo0 = 0;
+    PyObject * _argo2 = 0;
+    PyObject * _argo3 = 0;
+    PyObject * _argo6 = 0;
+    PyObject * _argo7 = 0;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|isslsss:new_wxGLCanvas",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5,&_argc6,&_argc7)) 
+    if(!PyArg_ParseTuple(args,"O|iOOlsOO:new_wxGLCanvas",&_argo0,&_arg1,&_argo2,&_argo3,&_arg4,&_arg5,&_argo6,&_argo7)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(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")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(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")) {
+    if (_argo3) {
+        if (_argo3 == Py_None) { _arg3 = NULL; }
+        else if (SWIG_GetPtrObj(_argo3,(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")) {
+    if (_argo6) {
+        if (_argo6 == Py_None) { _arg6 = NULL; }
+        else if (SWIG_GetPtrObj(_argo6,(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")) {
+    if (_argo7) {
+        if (_argo7 == Py_None) { _arg7 = NULL; }
+        else if (SWIG_GetPtrObj(_argo7,(void **) &_arg7,"_wxPalette_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 8 of new_wxGLCanvas. Expected _wxPalette_p.");
         return NULL;
         }
@@ -8159,8 +8370,13 @@ static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args) {
         _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);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLCanvas_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
@@ -8168,13 +8384,14 @@ static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args) {
 static PyObject *_wrap_wxGLCanvas_SetCurrent(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGLCanvas_SetCurrent",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:wxGLCanvas_SetCurrent",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLCanvas_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_SetCurrent. Expected _wxGLCanvas_p.");
         return NULL;
         }
@@ -8194,13 +8411,14 @@ static PyObject *_wrap_wxGLCanvas_SetColour(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     char * _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGLCanvas_SetColour",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTuple(args,"Os:wxGLCanvas_SetColour",&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLCanvas_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_SetColour. Expected _wxGLCanvas_p.");
         return NULL;
         }
@@ -8219,13 +8437,14 @@ static PyObject *_wrap_wxGLCanvas_SetColour(PyObject *self, PyObject *args) {
 static PyObject *_wrap_wxGLCanvas_SwapBuffers(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGLCanvas_SwapBuffers",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:wxGLCanvas_SwapBuffers",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLCanvas_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_SwapBuffers. Expected _wxGLCanvas_p.");
         return NULL;
         }
@@ -8245,14 +8464,15 @@ static PyObject *_wrap_wxGLCanvas_GetContext(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     wxGLContext * _result;
     wxGLCanvas * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGLCanvas_GetContext",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"O:wxGLCanvas_GetContext",&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGLCanvas_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGLCanvas_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGLCanvas_GetContext. Expected _wxGLCanvas_p.");
         return NULL;
         }
@@ -8262,388 +8482,890 @@ static PyObject *_wrap_wxGLCanvas_GetContext(PyObject *self, PyObject *args) {
         _result = (wxGLContext *)wxGLCanvas_GetContext(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLContext_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGLContext_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     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_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 },
-        { "glAddSwapHintRectWin", _wrap_glAddSwapHintRectWin, 1 },
-        { "glIndexMaterialSGI", _wrap_glIndexMaterialSGI, 1 },
-        { "glIndexFuncSGI", _wrap_glIndexFuncSGI, 1 },
-        { "glCullParameterfvSGI", _wrap_glCullParameterfvSGI, 1 },
-        { "glCullParameterdvSGI", _wrap_glCullParameterdvSGI, 1 },
-        { "glUnlockArraysSGI", _wrap_glUnlockArraysSGI, 1 },
-        { "glLockArraysSGI", _wrap_glLockArraysSGI, 1 },
-        { "glGetColorTavleParameterivEXT", _wrap_glGetColorTavleParameterivEXT, 1 },
-        { "glGetColorTableParamaterfvEXT", _wrap_glGetColorTableParamaterfvEXT, 1 },
-        { "glGetColorTableEXT", _wrap_glGetColorTableEXT, 1 },
-        { "glCopyColorTableEXT", _wrap_glCopyColorTableEXT, 1 },
-        { "glColorTableEXT", _wrap_glColorTableEXT, 1 },
-        { "glColorSubtableEXT", _wrap_glColorSubtableEXT, 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 },
+        { "wxGLCanvas_GetContext", _wrap_wxGLCanvas_GetContext, METH_VARARGS },
+        { "wxGLCanvas_SwapBuffers", _wrap_wxGLCanvas_SwapBuffers, METH_VARARGS },
+        { "wxGLCanvas_SetColour", _wrap_wxGLCanvas_SetColour, METH_VARARGS },
+        { "wxGLCanvas_SetCurrent", _wrap_wxGLCanvas_SetCurrent, METH_VARARGS },
+        { "new_wxGLCanvas", _wrap_new_wxGLCanvas, METH_VARARGS },
+        { "wxGLContext_GetWindow", _wrap_wxGLContext_GetWindow, METH_VARARGS },
+        { "wxGLContext_SwapBuffers", _wrap_wxGLContext_SwapBuffers, METH_VARARGS },
+        { "wxGLContext_SetColour", _wrap_wxGLContext_SetColour, METH_VARARGS },
+        { "wxGLContext_SetCurrent", _wrap_wxGLContext_SetCurrent, METH_VARARGS },
+        { "delete_wxGLContext", _wrap_delete_wxGLContext, METH_VARARGS },
+        { "new_wxGLContext", _wrap_new_wxGLContext, METH_VARARGS },
+        { "glViewport", _wrap_glViewport, METH_VARARGS },
+        { "glVertexPointer", _wrap_glVertexPointer, METH_VARARGS },
+        { "glVertex4sv", _wrap_glVertex4sv, METH_VARARGS },
+        { "glVertex4s", _wrap_glVertex4s, METH_VARARGS },
+        { "glVertex4iv", _wrap_glVertex4iv, METH_VARARGS },
+        { "glVertex4i", _wrap_glVertex4i, METH_VARARGS },
+        { "glVertex4fv", _wrap_glVertex4fv, METH_VARARGS },
+        { "glVertex4f", _wrap_glVertex4f, METH_VARARGS },
+        { "glVertex4dv", _wrap_glVertex4dv, METH_VARARGS },
+        { "glVertex4d", _wrap_glVertex4d, METH_VARARGS },
+        { "glVertex3sv", _wrap_glVertex3sv, METH_VARARGS },
+        { "glVertex3s", _wrap_glVertex3s, METH_VARARGS },
+        { "glVertex3iv", _wrap_glVertex3iv, METH_VARARGS },
+        { "glVertex3i", _wrap_glVertex3i, METH_VARARGS },
+        { "glVertex3fv", _wrap_glVertex3fv, METH_VARARGS },
+        { "glVertex3f", _wrap_glVertex3f, METH_VARARGS },
+        { "glVertex3dv", _wrap_glVertex3dv, METH_VARARGS },
+        { "glVertex3d", _wrap_glVertex3d, METH_VARARGS },
+        { "glVertex2sv", _wrap_glVertex2sv, METH_VARARGS },
+        { "glVertex2s", _wrap_glVertex2s, METH_VARARGS },
+        { "glVertex2iv", _wrap_glVertex2iv, METH_VARARGS },
+        { "glVertex2i", _wrap_glVertex2i, METH_VARARGS },
+        { "glVertex2fv", _wrap_glVertex2fv, METH_VARARGS },
+        { "glVertex2f", _wrap_glVertex2f, METH_VARARGS },
+        { "glVertex2dv", _wrap_glVertex2dv, METH_VARARGS },
+        { "glVertex2d", _wrap_glVertex2d, METH_VARARGS },
+        { "glTranslatef", _wrap_glTranslatef, METH_VARARGS },
+        { "glTranslated", _wrap_glTranslated, METH_VARARGS },
+        { "glTexSubImage2D", _wrap_glTexSubImage2D, METH_VARARGS },
+        { "glTexSubImage1D", _wrap_glTexSubImage1D, METH_VARARGS },
+        { "glTexParameteriv", _wrap_glTexParameteriv, METH_VARARGS },
+        { "glTexParameteri", _wrap_glTexParameteri, METH_VARARGS },
+        { "glTexParameterfv", _wrap_glTexParameterfv, METH_VARARGS },
+        { "glTexParameterf", _wrap_glTexParameterf, METH_VARARGS },
+        { "glTexImage2D", _wrap_glTexImage2D, METH_VARARGS },
+        { "glTexImage1D", _wrap_glTexImage1D, METH_VARARGS },
+        { "glTexGeniv", _wrap_glTexGeniv, METH_VARARGS },
+        { "glTexGeni", _wrap_glTexGeni, METH_VARARGS },
+        { "glTexGenfv", _wrap_glTexGenfv, METH_VARARGS },
+        { "glTexGenf", _wrap_glTexGenf, METH_VARARGS },
+        { "glTexGendv", _wrap_glTexGendv, METH_VARARGS },
+        { "glTexGend", _wrap_glTexGend, METH_VARARGS },
+        { "glTexEnviv", _wrap_glTexEnviv, METH_VARARGS },
+        { "glTexEnvi", _wrap_glTexEnvi, METH_VARARGS },
+        { "glTexEnvfv", _wrap_glTexEnvfv, METH_VARARGS },
+        { "glTexEnvf", _wrap_glTexEnvf, METH_VARARGS },
+        { "glTexCoordPointer", _wrap_glTexCoordPointer, METH_VARARGS },
+        { "glTexCoord4sv", _wrap_glTexCoord4sv, METH_VARARGS },
+        { "glTexCoord4s", _wrap_glTexCoord4s, METH_VARARGS },
+        { "glTexCoord4iv", _wrap_glTexCoord4iv, METH_VARARGS },
+        { "glTexCoord4i", _wrap_glTexCoord4i, METH_VARARGS },
+        { "glTexCoord4fv", _wrap_glTexCoord4fv, METH_VARARGS },
+        { "glTexCoord4f", _wrap_glTexCoord4f, METH_VARARGS },
+        { "glTexCoord4dv", _wrap_glTexCoord4dv, METH_VARARGS },
+        { "glTexCoord4d", _wrap_glTexCoord4d, METH_VARARGS },
+        { "glTexCoord3sv", _wrap_glTexCoord3sv, METH_VARARGS },
+        { "glTexCoord3s", _wrap_glTexCoord3s, METH_VARARGS },
+        { "glTexCoord3iv", _wrap_glTexCoord3iv, METH_VARARGS },
+        { "glTexCoord3i", _wrap_glTexCoord3i, METH_VARARGS },
+        { "glTexCoord3fv", _wrap_glTexCoord3fv, METH_VARARGS },
+        { "glTexCoord3f", _wrap_glTexCoord3f, METH_VARARGS },
+        { "glTexCoord3dv", _wrap_glTexCoord3dv, METH_VARARGS },
+        { "glTexCoord3d", _wrap_glTexCoord3d, METH_VARARGS },
+        { "glTexCoord2sv", _wrap_glTexCoord2sv, METH_VARARGS },
+        { "glTexCoord2s", _wrap_glTexCoord2s, METH_VARARGS },
+        { "glTexCoord2iv", _wrap_glTexCoord2iv, METH_VARARGS },
+        { "glTexCoord2i", _wrap_glTexCoord2i, METH_VARARGS },
+        { "glTexCoord2fv", _wrap_glTexCoord2fv, METH_VARARGS },
+        { "glTexCoord2f", _wrap_glTexCoord2f, METH_VARARGS },
+        { "glTexCoord2dv", _wrap_glTexCoord2dv, METH_VARARGS },
+        { "glTexCoord2d", _wrap_glTexCoord2d, METH_VARARGS },
+        { "glTexCoord1sv", _wrap_glTexCoord1sv, METH_VARARGS },
+        { "glTexCoord1s", _wrap_glTexCoord1s, METH_VARARGS },
+        { "glTexCoord1iv", _wrap_glTexCoord1iv, METH_VARARGS },
+        { "glTexCoord1i", _wrap_glTexCoord1i, METH_VARARGS },
+        { "glTexCoord1fv", _wrap_glTexCoord1fv, METH_VARARGS },
+        { "glTexCoord1f", _wrap_glTexCoord1f, METH_VARARGS },
+        { "glTexCoord1dv", _wrap_glTexCoord1dv, METH_VARARGS },
+        { "glTexCoord1d", _wrap_glTexCoord1d, METH_VARARGS },
+        { "glStencilOp", _wrap_glStencilOp, METH_VARARGS },
+        { "glStencilMask", _wrap_glStencilMask, METH_VARARGS },
+        { "glStencilFunc", _wrap_glStencilFunc, METH_VARARGS },
+        { "glShadeModel", _wrap_glShadeModel, METH_VARARGS },
+        { "glSelectBuffer", _wrap_glSelectBuffer, METH_VARARGS },
+        { "glScissor", _wrap_glScissor, METH_VARARGS },
+        { "glScalef", _wrap_glScalef, METH_VARARGS },
+        { "glScaled", _wrap_glScaled, METH_VARARGS },
+        { "glRotatef", _wrap_glRotatef, METH_VARARGS },
+        { "glRotated", _wrap_glRotated, METH_VARARGS },
+        { "glRenderMode", _wrap_glRenderMode, METH_VARARGS },
+        { "glRectsv", _wrap_glRectsv, METH_VARARGS },
+        { "glRects", _wrap_glRects, METH_VARARGS },
+        { "glRectiv", _wrap_glRectiv, METH_VARARGS },
+        { "glRecti", _wrap_glRecti, METH_VARARGS },
+        { "glRectfv", _wrap_glRectfv, METH_VARARGS },
+        { "glRectf", _wrap_glRectf, METH_VARARGS },
+        { "glRectdv", _wrap_glRectdv, METH_VARARGS },
+        { "glRectd", _wrap_glRectd, METH_VARARGS },
+        { "glReadPixels", _wrap_glReadPixels, METH_VARARGS },
+        { "glReadBuffer", _wrap_glReadBuffer, METH_VARARGS },
+        { "glRasterPos4sv", _wrap_glRasterPos4sv, METH_VARARGS },
+        { "glRasterPos4s", _wrap_glRasterPos4s, METH_VARARGS },
+        { "glRasterPos4iv", _wrap_glRasterPos4iv, METH_VARARGS },
+        { "glRasterPos4i", _wrap_glRasterPos4i, METH_VARARGS },
+        { "glRasterPos4fv", _wrap_glRasterPos4fv, METH_VARARGS },
+        { "glRasterPos4f", _wrap_glRasterPos4f, METH_VARARGS },
+        { "glRasterPos4dv", _wrap_glRasterPos4dv, METH_VARARGS },
+        { "glRasterPos4d", _wrap_glRasterPos4d, METH_VARARGS },
+        { "glRasterPos3sv", _wrap_glRasterPos3sv, METH_VARARGS },
+        { "glRasterPos3s", _wrap_glRasterPos3s, METH_VARARGS },
+        { "glRasterPos3iv", _wrap_glRasterPos3iv, METH_VARARGS },
+        { "glRasterPos3i", _wrap_glRasterPos3i, METH_VARARGS },
+        { "glRasterPos3fv", _wrap_glRasterPos3fv, METH_VARARGS },
+        { "glRasterPos3f", _wrap_glRasterPos3f, METH_VARARGS },
+        { "glRasterPos3dv", _wrap_glRasterPos3dv, METH_VARARGS },
+        { "glRasterPos3d", _wrap_glRasterPos3d, METH_VARARGS },
+        { "glRasterPos2sv", _wrap_glRasterPos2sv, METH_VARARGS },
+        { "glRasterPos2s", _wrap_glRasterPos2s, METH_VARARGS },
+        { "glRasterPos2iv", _wrap_glRasterPos2iv, METH_VARARGS },
+        { "glRasterPos2i", _wrap_glRasterPos2i, METH_VARARGS },
+        { "glRasterPos2fv", _wrap_glRasterPos2fv, METH_VARARGS },
+        { "glRasterPos2f", _wrap_glRasterPos2f, METH_VARARGS },
+        { "glRasterPos2dv", _wrap_glRasterPos2dv, METH_VARARGS },
+        { "glRasterPos2d", _wrap_glRasterPos2d, METH_VARARGS },
+        { "glPushName", _wrap_glPushName, METH_VARARGS },
+        { "glPushMatrix", _wrap_glPushMatrix, METH_VARARGS },
+        { "glPushClientAttrib", _wrap_glPushClientAttrib, METH_VARARGS },
+        { "glPushAttrib", _wrap_glPushAttrib, METH_VARARGS },
+        { "glPrioritizeTextures", _wrap_glPrioritizeTextures, METH_VARARGS },
+        { "glPopName", _wrap_glPopName, METH_VARARGS },
+        { "glPopMatrix", _wrap_glPopMatrix, METH_VARARGS },
+        { "glPopClientAttrib", _wrap_glPopClientAttrib, METH_VARARGS },
+        { "glPopAttrib", _wrap_glPopAttrib, METH_VARARGS },
+        { "glPolygonStipple", _wrap_glPolygonStipple, METH_VARARGS },
+        { "glPolygonOffset", _wrap_glPolygonOffset, METH_VARARGS },
+        { "glPolygonMode", _wrap_glPolygonMode, METH_VARARGS },
+        { "glPointSize", _wrap_glPointSize, METH_VARARGS },
+        { "glPixelZoom", _wrap_glPixelZoom, METH_VARARGS },
+        { "glPixelTransferi", _wrap_glPixelTransferi, METH_VARARGS },
+        { "glPixelTransferf", _wrap_glPixelTransferf, METH_VARARGS },
+        { "glPixelStorei", _wrap_glPixelStorei, METH_VARARGS },
+        { "glPixelStoref", _wrap_glPixelStoref, METH_VARARGS },
+        { "glPixelMapusv", _wrap_glPixelMapusv, METH_VARARGS },
+        { "glPixelMapuiv", _wrap_glPixelMapuiv, METH_VARARGS },
+        { "glPixelMapfv", _wrap_glPixelMapfv, METH_VARARGS },
+        { "glPassThrough", _wrap_glPassThrough, METH_VARARGS },
+        { "glOrtho", _wrap_glOrtho, METH_VARARGS },
+        { "glNormalPointer", _wrap_glNormalPointer, METH_VARARGS },
+        { "glNormal3sv", _wrap_glNormal3sv, METH_VARARGS },
+        { "glNormal3s", _wrap_glNormal3s, METH_VARARGS },
+        { "glNormal3iv", _wrap_glNormal3iv, METH_VARARGS },
+        { "glNormal3i", _wrap_glNormal3i, METH_VARARGS },
+        { "glNormal3fv", _wrap_glNormal3fv, METH_VARARGS },
+        { "glNormal3f", _wrap_glNormal3f, METH_VARARGS },
+        { "glNormal3dv", _wrap_glNormal3dv, METH_VARARGS },
+        { "glNormal3d", _wrap_glNormal3d, METH_VARARGS },
+        { "glNormal3bv", _wrap_glNormal3bv, METH_VARARGS },
+        { "glNormal3b", _wrap_glNormal3b, METH_VARARGS },
+        { "glNewList", _wrap_glNewList, METH_VARARGS },
+        { "glMultMatrixf", _wrap_glMultMatrixf, METH_VARARGS },
+        { "glMultMatrixd", _wrap_glMultMatrixd, METH_VARARGS },
+        { "glMatrixMode", _wrap_glMatrixMode, METH_VARARGS },
+        { "glMaterialiv", _wrap_glMaterialiv, METH_VARARGS },
+        { "glMateriali", _wrap_glMateriali, METH_VARARGS },
+        { "glMaterialfv", _wrap_glMaterialfv, METH_VARARGS },
+        { "glMaterialf", _wrap_glMaterialf, METH_VARARGS },
+        { "glMapGrid2f", _wrap_glMapGrid2f, METH_VARARGS },
+        { "glMapGrid2d", _wrap_glMapGrid2d, METH_VARARGS },
+        { "glMapGrid1f", _wrap_glMapGrid1f, METH_VARARGS },
+        { "glMapGrid1d", _wrap_glMapGrid1d, METH_VARARGS },
+        { "glMap2f", _wrap_glMap2f, METH_VARARGS },
+        { "glMap2d", _wrap_glMap2d, METH_VARARGS },
+        { "glMap1f", _wrap_glMap1f, METH_VARARGS },
+        { "glMap1d", _wrap_glMap1d, METH_VARARGS },
+        { "glLogicOp", _wrap_glLogicOp, METH_VARARGS },
+        { "glLoadName", _wrap_glLoadName, METH_VARARGS },
+        { "glLoadMatrixf", _wrap_glLoadMatrixf, METH_VARARGS },
+        { "glLoadMatrixd", _wrap_glLoadMatrixd, METH_VARARGS },
+        { "glLoadIdentity", _wrap_glLoadIdentity, METH_VARARGS },
+        { "glListBase", _wrap_glListBase, METH_VARARGS },
+        { "glLineWidth", _wrap_glLineWidth, METH_VARARGS },
+        { "glLineStipple", _wrap_glLineStipple, METH_VARARGS },
+        { "glLightiv", _wrap_glLightiv, METH_VARARGS },
+        { "glLighti", _wrap_glLighti, METH_VARARGS },
+        { "glLightfv", _wrap_glLightfv, METH_VARARGS },
+        { "glLightf", _wrap_glLightf, METH_VARARGS },
+        { "glLightModeliv", _wrap_glLightModeliv, METH_VARARGS },
+        { "glLightModeli", _wrap_glLightModeli, METH_VARARGS },
+        { "glLightModelfv", _wrap_glLightModelfv, METH_VARARGS },
+        { "glLightModelf", _wrap_glLightModelf, METH_VARARGS },
+        { "glIsTexture", _wrap_glIsTexture, METH_VARARGS },
+        { "glIsList", _wrap_glIsList, METH_VARARGS },
+        { "glIsEnabled", _wrap_glIsEnabled, METH_VARARGS },
+        { "glInterleavedArrays", _wrap_glInterleavedArrays, METH_VARARGS },
+        { "glInitNames", _wrap_glInitNames, METH_VARARGS },
+        { "glIndexubv", _wrap_glIndexubv, METH_VARARGS },
+        { "glIndexub", _wrap_glIndexub, METH_VARARGS },
+        { "glIndexsv", _wrap_glIndexsv, METH_VARARGS },
+        { "glIndexs", _wrap_glIndexs, METH_VARARGS },
+        { "glIndexiv", _wrap_glIndexiv, METH_VARARGS },
+        { "glIndexi", _wrap_glIndexi, METH_VARARGS },
+        { "glIndexfv", _wrap_glIndexfv, METH_VARARGS },
+        { "glIndexf", _wrap_glIndexf, METH_VARARGS },
+        { "glIndexdv", _wrap_glIndexdv, METH_VARARGS },
+        { "glIndexd", _wrap_glIndexd, METH_VARARGS },
+        { "glIndexPointer", _wrap_glIndexPointer, METH_VARARGS },
+        { "glIndexMask", _wrap_glIndexMask, METH_VARARGS },
+        { "glHint", _wrap_glHint, METH_VARARGS },
+        { "glGetTexParameteriv", _wrap_glGetTexParameteriv, METH_VARARGS },
+        { "glGetTexParameterfv", _wrap_glGetTexParameterfv, METH_VARARGS },
+        { "glGetTexLevelParameteriv", _wrap_glGetTexLevelParameteriv, METH_VARARGS },
+        { "glGetTexLevelParameterfv", _wrap_glGetTexLevelParameterfv, METH_VARARGS },
+        { "glGetTexImage", _wrap_glGetTexImage, METH_VARARGS },
+        { "glGetTexGeniv", _wrap_glGetTexGeniv, METH_VARARGS },
+        { "glGetTexGenfv", _wrap_glGetTexGenfv, METH_VARARGS },
+        { "glGetTexGendv", _wrap_glGetTexGendv, METH_VARARGS },
+        { "glGetTexEnviv", _wrap_glGetTexEnviv, METH_VARARGS },
+        { "glGetTexEnvfv", _wrap_glGetTexEnvfv, METH_VARARGS },
+        { "glGetString", _wrap_glGetString, METH_VARARGS },
+        { "glGetPolygonStipple", _wrap_glGetPolygonStipple, METH_VARARGS },
+        { "glGetPointerv", _wrap_glGetPointerv, METH_VARARGS },
+        { "glGetPixelMapusv", _wrap_glGetPixelMapusv, METH_VARARGS },
+        { "glGetPixelMapuiv", _wrap_glGetPixelMapuiv, METH_VARARGS },
+        { "glGetPixelMapfv", _wrap_glGetPixelMapfv, METH_VARARGS },
+        { "glGetMaterialiv", _wrap_glGetMaterialiv, METH_VARARGS },
+        { "glGetMaterialfv", _wrap_glGetMaterialfv, METH_VARARGS },
+        { "glGetMapiv", _wrap_glGetMapiv, METH_VARARGS },
+        { "glGetMapfv", _wrap_glGetMapfv, METH_VARARGS },
+        { "glGetMapdv", _wrap_glGetMapdv, METH_VARARGS },
+        { "glGetLightiv", _wrap_glGetLightiv, METH_VARARGS },
+        { "glGetLightfv", _wrap_glGetLightfv, METH_VARARGS },
+        { "glGetIntegerv", _wrap_glGetIntegerv, METH_VARARGS },
+        { "glGetFloatv", _wrap_glGetFloatv, METH_VARARGS },
+        { "glGetError", _wrap_glGetError, METH_VARARGS },
+        { "glGetDoublev", _wrap_glGetDoublev, METH_VARARGS },
+        { "glGetClipPlane", _wrap_glGetClipPlane, METH_VARARGS },
+        { "glGetBooleanv", _wrap_glGetBooleanv, METH_VARARGS },
+        { "glGenTextures", _wrap_glGenTextures, METH_VARARGS },
+        { "glGenLists", _wrap_glGenLists, METH_VARARGS },
+        { "glFrustum", _wrap_glFrustum, METH_VARARGS },
+        { "glFrontFace", _wrap_glFrontFace, METH_VARARGS },
+        { "glFogiv", _wrap_glFogiv, METH_VARARGS },
+        { "glFogi", _wrap_glFogi, METH_VARARGS },
+        { "glFogfv", _wrap_glFogfv, METH_VARARGS },
+        { "glFogf", _wrap_glFogf, METH_VARARGS },
+        { "glFlush", _wrap_glFlush, METH_VARARGS },
+        { "glFinish", _wrap_glFinish, METH_VARARGS },
+        { "glFeedbackBuffer", _wrap_glFeedbackBuffer, METH_VARARGS },
+        { "glEvalPoint2", _wrap_glEvalPoint2, METH_VARARGS },
+        { "glEvalPoint1", _wrap_glEvalPoint1, METH_VARARGS },
+        { "glEvalMesh2", _wrap_glEvalMesh2, METH_VARARGS },
+        { "glEvalMesh1", _wrap_glEvalMesh1, METH_VARARGS },
+        { "glEvalCoord2fv", _wrap_glEvalCoord2fv, METH_VARARGS },
+        { "glEvalCoord2f", _wrap_glEvalCoord2f, METH_VARARGS },
+        { "glEvalCoord2dv", _wrap_glEvalCoord2dv, METH_VARARGS },
+        { "glEvalCoord2d", _wrap_glEvalCoord2d, METH_VARARGS },
+        { "glEvalCoord1fv", _wrap_glEvalCoord1fv, METH_VARARGS },
+        { "glEvalCoord1f", _wrap_glEvalCoord1f, METH_VARARGS },
+        { "glEvalCoord1dv", _wrap_glEvalCoord1dv, METH_VARARGS },
+        { "glEvalCoord1d", _wrap_glEvalCoord1d, METH_VARARGS },
+        { "glEndList", _wrap_glEndList, METH_VARARGS },
+        { "glEnd", _wrap_glEnd, METH_VARARGS },
+        { "glEnableClientState", _wrap_glEnableClientState, METH_VARARGS },
+        { "glEnable", _wrap_glEnable, METH_VARARGS },
+        { "glEdgeFlagv", _wrap_glEdgeFlagv, METH_VARARGS },
+        { "glEdgeFlagPointer", _wrap_glEdgeFlagPointer, METH_VARARGS },
+        { "glEdgeFlag", _wrap_glEdgeFlag, METH_VARARGS },
+        { "glDrawPixels", _wrap_glDrawPixels, METH_VARARGS },
+        { "glDrawElements", _wrap_glDrawElements, METH_VARARGS },
+        { "glDrawBuffer", _wrap_glDrawBuffer, METH_VARARGS },
+        { "glDrawArrays", _wrap_glDrawArrays, METH_VARARGS },
+        { "glDisableClientState", _wrap_glDisableClientState, METH_VARARGS },
+        { "glDisable", _wrap_glDisable, METH_VARARGS },
+        { "glDepthRange", _wrap_glDepthRange, METH_VARARGS },
+        { "glDepthMask", _wrap_glDepthMask, METH_VARARGS },
+        { "glDepthFunc", _wrap_glDepthFunc, METH_VARARGS },
+        { "glDeleteTextures", _wrap_glDeleteTextures, METH_VARARGS },
+        { "glDeleteLists", _wrap_glDeleteLists, METH_VARARGS },
+        { "glCullFace", _wrap_glCullFace, METH_VARARGS },
+        { "glCopyTexSubImage2D", _wrap_glCopyTexSubImage2D, METH_VARARGS },
+        { "glCopyTexSubImage1D", _wrap_glCopyTexSubImage1D, METH_VARARGS },
+        { "glCopyTexImage2D", _wrap_glCopyTexImage2D, METH_VARARGS },
+        { "glCopyTexImage1D", _wrap_glCopyTexImage1D, METH_VARARGS },
+        { "glCopyPixels", _wrap_glCopyPixels, METH_VARARGS },
+        { "glColorPointer", _wrap_glColorPointer, METH_VARARGS },
+        { "glColorMaterial", _wrap_glColorMaterial, METH_VARARGS },
+        { "glColorMask", _wrap_glColorMask, METH_VARARGS },
+        { "glColor4usv", _wrap_glColor4usv, METH_VARARGS },
+        { "glColor4us", _wrap_glColor4us, METH_VARARGS },
+        { "glColor4uiv", _wrap_glColor4uiv, METH_VARARGS },
+        { "glColor4ui", _wrap_glColor4ui, METH_VARARGS },
+        { "glColor4ubv", _wrap_glColor4ubv, METH_VARARGS },
+        { "glColor4ub", _wrap_glColor4ub, METH_VARARGS },
+        { "glColor4sv", _wrap_glColor4sv, METH_VARARGS },
+        { "glColor4s", _wrap_glColor4s, METH_VARARGS },
+        { "glColor4iv", _wrap_glColor4iv, METH_VARARGS },
+        { "glColor4i", _wrap_glColor4i, METH_VARARGS },
+        { "glColor4fv", _wrap_glColor4fv, METH_VARARGS },
+        { "glColor4f", _wrap_glColor4f, METH_VARARGS },
+        { "glColor4dv", _wrap_glColor4dv, METH_VARARGS },
+        { "glColor4d", _wrap_glColor4d, METH_VARARGS },
+        { "glColor4bv", _wrap_glColor4bv, METH_VARARGS },
+        { "glColor4b", _wrap_glColor4b, METH_VARARGS },
+        { "glColor3usv", _wrap_glColor3usv, METH_VARARGS },
+        { "glColor3us", _wrap_glColor3us, METH_VARARGS },
+        { "glColor3uiv", _wrap_glColor3uiv, METH_VARARGS },
+        { "glColor3ui", _wrap_glColor3ui, METH_VARARGS },
+        { "glColor3ubv", _wrap_glColor3ubv, METH_VARARGS },
+        { "glColor3ub", _wrap_glColor3ub, METH_VARARGS },
+        { "glColor3sv", _wrap_glColor3sv, METH_VARARGS },
+        { "glColor3s", _wrap_glColor3s, METH_VARARGS },
+        { "glColor3iv", _wrap_glColor3iv, METH_VARARGS },
+        { "glColor3i", _wrap_glColor3i, METH_VARARGS },
+        { "glColor3fv", _wrap_glColor3fv, METH_VARARGS },
+        { "glColor3f", _wrap_glColor3f, METH_VARARGS },
+        { "glColor3dv", _wrap_glColor3dv, METH_VARARGS },
+        { "glColor3d", _wrap_glColor3d, METH_VARARGS },
+        { "glColor3bv", _wrap_glColor3bv, METH_VARARGS },
+        { "glColor3b", _wrap_glColor3b, METH_VARARGS },
+        { "glClipPlane", _wrap_glClipPlane, METH_VARARGS },
+        { "glClearStencil", _wrap_glClearStencil, METH_VARARGS },
+        { "glClearIndex", _wrap_glClearIndex, METH_VARARGS },
+        { "glClearDepth", _wrap_glClearDepth, METH_VARARGS },
+        { "glClearColor", _wrap_glClearColor, METH_VARARGS },
+        { "glClearAccum", _wrap_glClearAccum, METH_VARARGS },
+        { "glClear", _wrap_glClear, METH_VARARGS },
+        { "glCallLists", _wrap_glCallLists, METH_VARARGS },
+        { "glCallList", _wrap_glCallList, METH_VARARGS },
+        { "glBlendFunc", _wrap_glBlendFunc, METH_VARARGS },
+        { "glBitmap", _wrap_glBitmap, METH_VARARGS },
+        { "glBindTexture", _wrap_glBindTexture, METH_VARARGS },
+        { "glBegin", _wrap_glBegin, METH_VARARGS },
+        { "glArrayElement", _wrap_glArrayElement, METH_VARARGS },
+        { "glAreTexturesResident", _wrap_glAreTexturesResident, METH_VARARGS },
+        { "glAlphaFunc", _wrap_glAlphaFunc, METH_VARARGS },
+        { "glAccum", _wrap_glAccum, METH_VARARGS },
+        { "glAddSwapHintRectWin", _wrap_glAddSwapHintRectWin, METH_VARARGS },
+        { "glIndexMaterialSGI", _wrap_glIndexMaterialSGI, METH_VARARGS },
+        { "glIndexFuncSGI", _wrap_glIndexFuncSGI, METH_VARARGS },
+        { "glCullParameterfvSGI", _wrap_glCullParameterfvSGI, METH_VARARGS },
+        { "glCullParameterdvSGI", _wrap_glCullParameterdvSGI, METH_VARARGS },
+        { "glUnlockArraysSGI", _wrap_glUnlockArraysSGI, METH_VARARGS },
+        { "glLockArraysSGI", _wrap_glLockArraysSGI, METH_VARARGS },
+        { "glGetColorTavleParameterivEXT", _wrap_glGetColorTavleParameterivEXT, METH_VARARGS },
+        { "glGetColorTableParamaterfvEXT", _wrap_glGetColorTableParamaterfvEXT, METH_VARARGS },
+        { "glGetColorTableEXT", _wrap_glGetColorTableEXT, METH_VARARGS },
+        { "glCopyColorTableEXT", _wrap_glCopyColorTableEXT, METH_VARARGS },
+        { "glColorTableEXT", _wrap_glColorTableEXT, METH_VARARGS },
+        { "glColorSubtableEXT", _wrap_glColorSubtableEXT, METH_VARARGS },
+        { "glVertexPointerEXT", _wrap_glVertexPointerEXT, METH_VARARGS },
+        { "glTexCoordPointerEXT", _wrap_glTexCoordPointerEXT, METH_VARARGS },
+        { "glNormalPointerEXT", _wrap_glNormalPointerEXT, METH_VARARGS },
+        { "glIndexPointerEXT", _wrap_glIndexPointerEXT, METH_VARARGS },
+        { "glGetPointervEXT", _wrap_glGetPointervEXT, METH_VARARGS },
+        { "glEdgeFlagPointerEXT", _wrap_glEdgeFlagPointerEXT, METH_VARARGS },
+        { "glDrawArraysEXT", _wrap_glDrawArraysEXT, METH_VARARGS },
+        { "glColorPointerEXT", _wrap_glColorPointerEXT, METH_VARARGS },
+        { "glArrayElementEXT", _wrap_glArrayElementEXT, METH_VARARGS },
         { NULL, NULL }
 };
+#ifdef __cplusplus
+}
+#endif
+/*
+ * This table is used by the pointer type-checker
+ */
+static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
+    { "_wxAcceleratorTable","_class_wxAcceleratorTable",0},
+    { "_wxEvent","_class_wxEvent",0},
+    { "_class_wxActivateEvent","_wxActivateEvent",0},
+    { "_GLfloat","_GLclampf",0},
+    { "_GLfloat","_float",0},
+    { "_signed_long","_long",0},
+    { "_wxMenuEvent","_class_wxMenuEvent",0},
+    { "_class_wxJPEGHandler","_wxJPEGHandler",0},
+    { "_wxBMPHandler","_class_wxBMPHandler",0},
+    { "_wxImage","_class_wxImage",0},
+    { "_double","_GLclampd",0},
+    { "_double","_GLdouble",0},
+    { "_wxPrintQuality","_GLuint",0},
+    { "_wxPrintQuality","_GLsizei",0},
+    { "_wxPrintQuality","_GLint",0},
+    { "_wxPrintQuality","_GLbitfield",0},
+    { "_wxPrintQuality","_GLenum",0},
+    { "_wxPrintQuality","_int",0},
+    { "_wxPrintQuality","_signed_int",0},
+    { "_wxPrintQuality","_unsigned_int",0},
+    { "_wxPrintQuality","_wxWindowID",0},
+    { "_wxPrintQuality","_uint",0},
+    { "_wxPrintQuality","_EBool",0},
+    { "_wxPrintQuality","_size_t",0},
+    { "_wxFontData","_class_wxFontData",0},
+    { "___wxPyCleanup","_class___wxPyCleanup",0},
+    { "_class_wxRegionIterator","_wxRegionIterator",0},
+    { "_class_wxMenuBar","_wxMenuBar",0},
+    { "_class_wxPyTreeItemData","_wxPyTreeItemData",0},
+    { "_class_wxEvtHandler","_class_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxEvtHandler",0},
+    { "_wxPaintEvent","_class_wxPaintEvent",0},
+    { "_wxGIFHandler","_class_wxGIFHandler",0},
+    { "_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0},
+    { "_wxCursor","_class_wxCursor",0},
+    { "_wxNotifyEvent","_class_wxNotifyEvent",0},
+    { "_wxImageHandler","_class_wxImageHandler",0},
+    { "_GLsizei","_GLuint",0},
+    { "_GLsizei","_int",0},
+    { "_GLsizei","_signed_int",0},
+    { "_GLsizei","_unsigned_int",0},
+    { "_GLsizei","_wxWindowID",0},
+    { "_GLsizei","_uint",0},
+    { "_GLsizei","_EBool",0},
+    { "_GLsizei","_size_t",0},
+    { "_GLsizei","_wxPrintQuality",0},
+    { "_GLsizei","_GLenum",0},
+    { "_GLsizei","_GLbitfield",0},
+    { "_GLsizei","_GLint",0},
+    { "_class_wxTreeCtrl","_wxTreeCtrl",0},
+    { "_wxMask","_class_wxMask",0},
+    { "_wxToolTip","_class_wxToolTip",0},
+    { "_wxGrid","_class_wxGrid",0},
+    { "_wxPNGHandler","_class_wxPNGHandler",0},
+    { "_class_wxColourData","_wxColourData",0},
+    { "_class_wxPageSetupDialogData","_wxPageSetupDialogData",0},
+    { "_wxPrinter","_class_wxPrinter",0},
+    { "_GLbyte","_signed_char",0},
+    { "_wxPen","_class_wxPen",0},
+    { "_wxUpdateUIEvent","_class_wxUpdateUIEvent",0},
+    { "_byte","_GLubyte",0},
+    { "_byte","_GLboolean",0},
+    { "_byte","_unsigned_char",0},
+    { "_wxStaticBox","_class_wxStaticBox",0},
+    { "_wxChoice","_class_wxChoice",0},
+    { "_wxSlider","_class_wxSlider",0},
+    { "_wxNotebookEvent","_class_wxNotebookEvent",0},
+    { "_wxPyPrintout","_class_wxPyPrintout",0},
+    { "_long","_wxDash",0},
+    { "_long","_unsigned_long",0},
+    { "_long","_signed_long",0},
+    { "_wxImageList","_class_wxImageList",0},
+    { "_wxDropFilesEvent","_class_wxDropFilesEvent",0},
+    { "_wxBitmapButton","_class_wxBitmapButton",0},
+    { "_wxSashWindow","_class_wxSashWindow",0},
+    { "_GLenum","_GLuint",0},
+    { "_GLenum","_GLsizei",0},
+    { "_GLenum","_GLint",0},
+    { "_GLenum","_GLbitfield",0},
+    { "_GLenum","_unsigned_int",0},
+    { "_GLenum","_int",0},
+    { "_GLenum","_wxWindowID",0},
+    { "_GLenum","_uint",0},
+    { "_GLenum","_size_t",0},
+    { "_GLenum","_wxPrintQuality",0},
+    { "_class_wxPrintDialogData","_wxPrintDialogData",0},
+    { "_wxGLContext","_class_wxGLContext",0},
+    { "_class_wxAcceleratorTable","_wxAcceleratorTable",0},
+    { "_class_wxGauge","_wxGauge",0},
+    { "_class_wxSashEvent","_wxSashEvent",0},
+    { "_float","_GLclampf",0},
+    { "_float","_GLfloat",0},
+    { "_wxDC","_class_wxDC",0},
+    { "_wxListEvent","_class_wxListEvent",0},
+    { "_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0},
+    { "_wxProgressDialog","_class_wxProgressDialog",0},
+    { "_class_wxBMPHandler","_wxBMPHandler",0},
+    { "_wxPrintPreview","_class_wxPrintPreview",0},
+    { "_wxSpinEvent","_class_wxSpinEvent",0},
+    { "_wxSashLayoutWindow","_class_wxSashLayoutWindow",0},
+    { "_size_t","_GLuint",0},
+    { "_size_t","_GLsizei",0},
+    { "_size_t","_GLint",0},
+    { "_size_t","_GLbitfield",0},
+    { "_size_t","_GLenum",0},
+    { "_size_t","_wxPrintQuality",0},
+    { "_size_t","_unsigned_int",0},
+    { "_size_t","_int",0},
+    { "_size_t","_wxWindowID",0},
+    { "_size_t","_uint",0},
+    { "_class_wxRealPoint","_wxRealPoint",0},
+    { "_wxPrinterDC","_class_wxPrinterDC",0},
+    { "_class_wxMenuItem","_wxMenuItem",0},
+    { "_class_wxPaintEvent","_wxPaintEvent",0},
+    { "_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0},
+    { "_class_wxStatusBar","_wxStatusBar",0},
+    { "_class_wxGIFHandler","_wxGIFHandler",0},
+    { "_wxPanel","_class_wxGLCanvas",SwigwxGLCanvasTowxPanel},
+    { "_wxPanel","_wxGLCanvas",SwigwxGLCanvasTowxPanel},
+    { "_wxPanel","_class_wxPanel",0},
+    { "_wxInitDialogEvent","_class_wxInitDialogEvent",0},
+    { "_wxCheckBox","_class_wxCheckBox",0},
+    { "_wxPyEvent","_class_wxPyEvent",0},
+    { "_wxTextCtrl","_class_wxTextCtrl",0},
+    { "_signed_char","_GLbyte",0},
+    { "_class_wxMask","_wxMask",0},
+    { "_class_wxToolTip","_wxToolTip",0},
+    { "_class_wxKeyEvent","_wxKeyEvent",0},
+    { "_class_wxGrid","_wxGrid",0},
+    { "_class_wxPNGHandler","_wxPNGHandler",0},
+    { "_wxColour","_class_wxColour",0},
+    { "_class_wxDialog","_wxDialog",0},
+    { "_wxPageSetupDialog","_class_wxPageSetupDialog",0},
+    { "_class_wxPrinter","_wxPrinter",0},
+    { "_wxIdleEvent","_class_wxIdleEvent",0},
+    { "_class_wxUpdateUIEvent","_wxUpdateUIEvent",0},
+    { "_wxToolBar","_class_wxToolBar",0},
+    { "_wxStaticLine","_class_wxStaticLine",0},
+    { "_class_wxLayoutAlgorithm","_wxLayoutAlgorithm",0},
+    { "_wxBrush","_class_wxBrush",0},
+    { "_wxMiniFrame","_class_wxMiniFrame",0},
+    { "_class_wxNotebookEvent","_wxNotebookEvent",0},
+    { "_class_wxPyPrintout","_wxPyPrintout",0},
+    { "_class_wxSashWindow","_wxSashWindow",0},
+    { "_GLuint","_unsigned_int",0},
+    { "_GLuint","_int",0},
+    { "_GLuint","_wxWindowID",0},
+    { "_GLuint","_uint",0},
+    { "_GLuint","_size_t",0},
+    { "_GLuint","_wxPrintQuality",0},
+    { "_GLuint","_GLenum",0},
+    { "_GLuint","_GLbitfield",0},
+    { "_GLuint","_GLint",0},
+    { "_GLuint","_GLsizei",0},
+    { "_wxShowEvent","_class_wxShowEvent",0},
+    { "_uint","_GLuint",0},
+    { "_uint","_GLsizei",0},
+    { "_uint","_GLint",0},
+    { "_uint","_GLbitfield",0},
+    { "_uint","_GLenum",0},
+    { "_uint","_wxPrintQuality",0},
+    { "_uint","_size_t",0},
+    { "_uint","_unsigned_int",0},
+    { "_uint","_int",0},
+    { "_uint","_wxWindowID",0},
+    { "_class_wxEvent","_wxEvent",0},
+    { "_wxCheckListBox","_class_wxCheckListBox",0},
+    { "_wxSplitterEvent","_class_wxSplitterEvent",0},
+    { "_wxGridEvent","_class_wxGridEvent",0},
+    { "_wxRect","_class_wxRect",0},
+    { "_wxCommandEvent","_class_wxCommandEvent",0},
+    { "_wxSizeEvent","_class_wxSizeEvent",0},
+    { "_class_wxImage","_wxImage",0},
+    { "_GLclampd","_double",0},
+    { "_GLclampd","_GLdouble",0},
+    { "_wxPoint","_class_wxPoint",0},
+    { "_class_wxSashLayoutWindow","_wxSashLayoutWindow",0},
+    { "_class_wxButton","_wxButton",0},
+    { "_wxRadioBox","_class_wxRadioBox",0},
+    { "_class_wxFontData","_wxFontData",0},
+    { "_class___wxPyCleanup","___wxPyCleanup",0},
+    { "_GLclampf","_float",0},
+    { "_GLclampf","_GLfloat",0},
+    { "_wxBitmap","_class_wxBitmap",0},
+    { "_wxTaskBarIcon","_class_wxTaskBarIcon",0},
+    { "_wxPrintDialog","_class_wxPrintDialog",0},
+    { "_wxPyTimer","_class_wxPyTimer",0},
+    { "_wxWindowDC","_class_wxWindowDC",0},
+    { "_wxScrollBar","_class_wxScrollBar",0},
+    { "_wxSpinButton","_class_wxSpinButton",0},
+    { "_wxToolBarTool","_class_wxToolBarTool",0},
+    { "_wxColourDialog","_class_wxColourDialog",0},
+    { "_wxPrintData","_class_wxPrintData",0},
+    { "_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0},
+    { "_class_wxNotifyEvent","_wxNotifyEvent",0},
+    { "_wxMessageDialog","_class_wxMessageDialog",0},
+    { "_GLbitfield","_GLuint",0},
+    { "_GLbitfield","_GLsizei",0},
+    { "_GLbitfield","_GLint",0},
+    { "_GLbitfield","_unsigned_int",0},
+    { "_GLbitfield","_int",0},
+    { "_GLbitfield","_wxWindowID",0},
+    { "_GLbitfield","_uint",0},
+    { "_GLbitfield","_size_t",0},
+    { "_GLbitfield","_wxPrintQuality",0},
+    { "_GLbitfield","_GLenum",0},
+    { "_class_wxPyEvent","_wxPyEvent",0},
+    { "_wxTextEntryDialog","_class_wxTextEntryDialog",0},
+    { "_class_wxIconizeEvent","_wxIconizeEvent",0},
+    { "_class_wxStaticBitmap","_wxStaticBitmap",0},
+    { "_wxMDIChildFrame","_class_wxMDIChildFrame",0},
+    { "_wxListItem","_class_wxListItem",0},
+    { "_class_wxToolBar","_wxToolBar",0},
+    { "_class_wxStaticLine","_wxStaticLine",0},
+    { "_wxScrollEvent","_class_wxScrollEvent",0},
+    { "_wxCalculateLayoutEvent","_class_wxCalculateLayoutEvent",0},
+    { "_EBool","_GLsizei",0},
+    { "_EBool","_GLint",0},
+    { "_EBool","_wxPrintQuality",0},
+    { "_EBool","_signed_int",0},
+    { "_EBool","_int",0},
+    { "_EBool","_wxWindowID",0},
+    { "_class_wxRegion","_wxRegion",0},
+    { "_class_wxDropFilesEvent","_wxDropFilesEvent",0},
+    { "_class_wxPreviewFrame","_wxPreviewFrame",0},
+    { "_wxStaticText","_class_wxStaticText",0},
+    { "_wxFont","_class_wxFont",0},
+    { "_wxCloseEvent","_class_wxCloseEvent",0},
+    { "_class_wxSplitterEvent","_wxSplitterEvent",0},
+    { "_wxNotebook","_class_wxNotebook",0},
+    { "_unsigned_long","_wxDash",0},
+    { "_unsigned_long","_long",0},
+    { "_class_wxRect","_wxRect",0},
+    { "_class_wxDC","_wxDC",0},
+    { "_class_wxProgressDialog","_wxProgressDialog",0},
+    { "_wxPyApp","_class_wxPyApp",0},
+    { "_wxMDIParentFrame","_class_wxMDIParentFrame",0},
+    { "_class_wxTreeEvent","_wxTreeEvent",0},
+    { "_class_wxDirDialog","_wxDirDialog",0},
+    { "_class_wxPyTimer","_wxPyTimer",0},
+    { "_wxFocusEvent","_class_wxFocusEvent",0},
+    { "_wxMaximizeEvent","_class_wxMaximizeEvent",0},
+    { "_class_wxSpinButton","_wxSpinButton",0},
+    { "_wxAcceleratorEntry","_class_wxAcceleratorEntry",0},
+    { "_class_wxPanel","_class_wxGLCanvas",SwigwxGLCanvasTowxPanel},
+    { "_class_wxPanel","_wxGLCanvas",SwigwxGLCanvasTowxPanel},
+    { "_class_wxPanel","_wxPanel",0},
+    { "_class_wxCheckBox","_wxCheckBox",0},
+    { "_wxComboBox","_class_wxComboBox",0},
+    { "_wxRadioButton","_class_wxRadioButton",0},
+    { "_class_wxMessageDialog","_wxMessageDialog",0},
+    { "_signed_int","_GLsizei",0},
+    { "_signed_int","_GLint",0},
+    { "_signed_int","_wxPrintQuality",0},
+    { "_signed_int","_EBool",0},
+    { "_signed_int","_wxWindowID",0},
+    { "_signed_int","_int",0},
+    { "_class_wxTextCtrl","_wxTextCtrl",0},
+    { "_GLboolean","_GLubyte",0},
+    { "_GLboolean","_unsigned_char",0},
+    { "_GLboolean","_byte",0},
+    { "_wxLayoutConstraints","_class_wxLayoutConstraints",0},
+    { "_wxMetaFileDC","_class_wxMetaFileDC",0},
+    { "_wxMenu","_class_wxMenu",0},
+    { "_class_wxMoveEvent","_wxMoveEvent",0},
+    { "_wxListBox","_class_wxListBox",0},
+    { "_wxScreenDC","_class_wxScreenDC",0},
+    { "_class_wxMDIChildFrame","_wxMDIChildFrame",0},
+    { "_WXTYPE","_GLushort",0},
+    { "_WXTYPE","_GLshort",0},
+    { "_WXTYPE","_short",0},
+    { "_WXTYPE","_signed_short",0},
+    { "_WXTYPE","_unsigned_short",0},
+    { "_wxFileDialog","_class_wxFileDialog",0},
+    { "_GLshort","_GLushort",0},
+    { "_GLshort","_short",0},
+    { "_GLshort","_signed_short",0},
+    { "_GLshort","_unsigned_short",0},
+    { "_GLshort","_WXTYPE",0},
+    { "_class_wxMDIClientWindow","_wxMDIClientWindow",0},
+    { "_class_wxBrush","_wxBrush",0},
+    { "_unsigned_short","_GLushort",0},
+    { "_unsigned_short","_GLshort",0},
+    { "_unsigned_short","_WXTYPE",0},
+    { "_unsigned_short","_short",0},
+    { "_class_wxWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxWindow},
+    { "_class_wxWindow","_wxGLCanvas",SwigwxGLCanvasTowxWindow},
+    { "_class_wxWindow","_wxWindow",0},
+    { "_wxSplitterWindow","_class_wxSplitterWindow",0},
+    { "_class_wxStaticText","_wxStaticText",0},
+    { "_wxPrintDialogData","_class_wxPrintDialogData",0},
+    { "_GLushort","_unsigned_short",0},
+    { "_GLushort","_short",0},
+    { "_GLushort","_WXTYPE",0},
+    { "_GLushort","_GLshort",0},
+    { "_class_wxFont","_wxFont",0},
+    { "_class_wxCloseEvent","_wxCloseEvent",0},
+    { "_wxSashEvent","_class_wxSashEvent",0},
+    { "_class_wxMenuEvent","_wxMenuEvent",0},
+    { "_wxClientDC","_class_wxClientDC",0},
+    { "_wxMouseEvent","_class_wxMouseEvent",0},
+    { "_wxListCtrl","_class_wxListCtrl",0},
+    { "_wxSingleChoiceDialog","_class_wxSingleChoiceDialog",0},
+    { "_wxGLCanvas","_class_wxGLCanvas",0},
+    { "_class_wxPoint","_wxPoint",0},
+    { "_wxRealPoint","_class_wxRealPoint",0},
+    { "_class_wxRadioBox","_wxRadioBox",0},
+    { "_wxGridCell","_class_wxGridCell",0},
+    { "_signed_short","_GLshort",0},
+    { "_signed_short","_WXTYPE",0},
+    { "_signed_short","_short",0},
+    { "_wxMemoryDC","_class_wxMemoryDC",0},
+    { "_class_wxTaskBarIcon","_wxTaskBarIcon",0},
+    { "_class_wxPrintDialog","_wxPrintDialog",0},
+    { "_wxPaintDC","_class_wxPaintDC",0},
+    { "_class_wxWindowDC","_wxWindowDC",0},
+    { "_class_wxFocusEvent","_wxFocusEvent",0},
+    { "_class_wxMaximizeEvent","_wxMaximizeEvent",0},
+    { "_wxStatusBar","_class_wxStatusBar",0},
+    { "_class_wxToolBarTool","_wxToolBarTool",0},
+    { "_class_wxAcceleratorEntry","_wxAcceleratorEntry",0},
+    { "_class_wxCursor","_wxCursor",0},
+    { "_class_wxImageHandler","_wxImageHandler",0},
+    { "_wxScrolledWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow},
+    { "_wxScrolledWindow","_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow},
+    { "_wxScrolledWindow","_class_wxScrolledWindow",0},
+    { "_wxTreeItemId","_class_wxTreeItemId",0},
+    { "_unsigned_char","_GLubyte",0},
+    { "_unsigned_char","_GLboolean",0},
+    { "_unsigned_char","_byte",0},
+    { "_class_wxMetaFileDC","_wxMetaFileDC",0},
+    { "_class_wxMenu","_wxMenu",0},
+    { "_wxControl","_class_wxControl",0},
+    { "_class_wxListBox","_wxListBox",0},
+    { "_unsigned_int","_GLuint",0},
+    { "_unsigned_int","_GLsizei",0},
+    { "_unsigned_int","_GLint",0},
+    { "_unsigned_int","_GLbitfield",0},
+    { "_unsigned_int","_GLenum",0},
+    { "_unsigned_int","_wxPrintQuality",0},
+    { "_unsigned_int","_size_t",0},
+    { "_unsigned_int","_uint",0},
+    { "_unsigned_int","_wxWindowID",0},
+    { "_unsigned_int","_int",0},
+    { "_wxIcon","_class_wxIcon",0},
+    { "_wxDialog","_class_wxDialog",0},
+    { "_class_wxListItem","_wxListItem",0},
+    { "_GLdouble","_GLclampd",0},
+    { "_GLdouble","_double",0},
+    { "_class_wxPen","_wxPen",0},
+    { "_class_wxFileDialog","_wxFileDialog",0},
+    { "_wxQueryLayoutInfoEvent","_class_wxQueryLayoutInfoEvent",0},
+    { "_short","_GLushort",0},
+    { "_short","_GLshort",0},
+    { "_short","_WXTYPE",0},
+    { "_short","_unsigned_short",0},
+    { "_short","_signed_short",0},
+    { "_class_wxStaticBox","_wxStaticBox",0},
+    { "_wxLayoutAlgorithm","_class_wxLayoutAlgorithm",0},
+    { "_class_wxScrollEvent","_wxScrollEvent",0},
+    { "_wxJoystickEvent","_class_wxJoystickEvent",0},
+    { "_class_wxChoice","_wxChoice",0},
+    { "_class_wxSlider","_wxSlider",0},
+    { "_class_wxCalculateLayoutEvent","_wxCalculateLayoutEvent",0},
+    { "_class_wxImageList","_wxImageList",0},
+    { "_class_wxBitmapButton","_wxBitmapButton",0},
+    { "_wxFrame","_class_wxFrame",0},
+    { "_class_wxGLContext","_wxGLContext",0},
+    { "_class_wxNotebook","_wxNotebook",0},
+    { "_wxJPEGHandler","_class_wxJPEGHandler",0},
+    { "_wxWindowID","_GLuint",0},
+    { "_wxWindowID","_GLsizei",0},
+    { "_wxWindowID","_GLint",0},
+    { "_wxWindowID","_GLbitfield",0},
+    { "_wxWindowID","_GLenum",0},
+    { "_wxWindowID","_wxPrintQuality",0},
+    { "_wxWindowID","_size_t",0},
+    { "_wxWindowID","_EBool",0},
+    { "_wxWindowID","_uint",0},
+    { "_wxWindowID","_int",0},
+    { "_wxWindowID","_signed_int",0},
+    { "_wxWindowID","_unsigned_int",0},
+    { "_int","_GLuint",0},
+    { "_int","_GLsizei",0},
+    { "_int","_GLint",0},
+    { "_int","_GLbitfield",0},
+    { "_int","_GLenum",0},
+    { "_int","_wxPrintQuality",0},
+    { "_int","_size_t",0},
+    { "_int","_EBool",0},
+    { "_int","_uint",0},
+    { "_int","_wxWindowID",0},
+    { "_int","_unsigned_int",0},
+    { "_int","_signed_int",0},
+    { "_class_wxMouseEvent","_wxMouseEvent",0},
+    { "_class_wxListEvent","_wxListEvent",0},
+    { "_class_wxPrintPreview","_wxPrintPreview",0},
+    { "_class_wxSpinEvent","_wxSpinEvent",0},
+    { "_wxButton","_class_wxButton",0},
+    { "_class_wxPyApp","_wxPyApp",0},
+    { "_wxSize","_class_wxSize",0},
+    { "_wxRegionIterator","_class_wxRegionIterator",0},
+    { "_class_wxPrinterDC","_wxPrinterDC",0},
+    { "_class_wxMDIParentFrame","_wxMDIParentFrame",0},
+    { "_wxPyTreeItemData","_class_wxPyTreeItemData",0},
+    { "_class_wxPaintDC","_wxPaintDC",0},
+    { "_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0},
+    { "_class_wxInitDialogEvent","_wxInitDialogEvent",0},
+    { "_class_wxComboBox","_wxComboBox",0},
+    { "_class_wxRadioButton","_wxRadioButton",0},
+    { "_class_wxTreeItemId","_wxTreeItemId",0},
+    { "_wxTreeCtrl","_class_wxTreeCtrl",0},
+    { "_class_wxLayoutConstraints","_wxLayoutConstraints",0},
+    { "_wxIconizeEvent","_class_wxIconizeEvent",0},
+    { "_class_wxControl","_wxControl",0},
+    { "_wxStaticBitmap","_class_wxStaticBitmap",0},
+    { "_class_wxIcon","_wxIcon",0},
+    { "_class_wxColour","_wxColour",0},
+    { "_class_wxScreenDC","_wxScreenDC",0},
+    { "_class_wxPageSetupDialog","_wxPageSetupDialog",0},
+    { "_wxPalette","_class_wxPalette",0},
+    { "_class_wxIdleEvent","_wxIdleEvent",0},
+    { "_wxEraseEvent","_class_wxEraseEvent",0},
+    { "_class_wxJoystickEvent","_wxJoystickEvent",0},
+    { "_class_wxMiniFrame","_wxMiniFrame",0},
+    { "_wxFontDialog","_class_wxFontDialog",0},
+    { "_wxRegion","_class_wxRegion",0},
+    { "_class_wxSplitterWindow","_wxSplitterWindow",0},
+    { "_wxPreviewFrame","_class_wxPreviewFrame",0},
+    { "_class_wxShowEvent","_wxShowEvent",0},
+    { "_GLint","_GLuint",0},
+    { "_GLint","_GLsizei",0},
+    { "_GLint","_int",0},
+    { "_GLint","_signed_int",0},
+    { "_GLint","_unsigned_int",0},
+    { "_GLint","_wxWindowID",0},
+    { "_GLint","_uint",0},
+    { "_GLint","_EBool",0},
+    { "_GLint","_size_t",0},
+    { "_GLint","_wxPrintQuality",0},
+    { "_GLint","_GLenum",0},
+    { "_GLint","_GLbitfield",0},
+    { "_wxActivateEvent","_class_wxActivateEvent",0},
+    { "_wxGauge","_class_wxGauge",0},
+    { "_class_wxCheckListBox","_wxCheckListBox",0},
+    { "_class_wxGridEvent","_wxGridEvent",0},
+    { "_class_wxCommandEvent","_wxCommandEvent",0},
+    { "_GLubyte","_unsigned_char",0},
+    { "_GLubyte","_byte",0},
+    { "_GLubyte","_GLboolean",0},
+    { "_class_wxClientDC","_wxClientDC",0},
+    { "_class_wxSizeEvent","_wxSizeEvent",0},
+    { "_class_wxListCtrl","_wxListCtrl",0},
+    { "_class_wxGLCanvas","_wxGLCanvas",0},
+    { "_class_wxGridCell","_wxGridCell",0},
+    { "_class_wxSize","_wxSize",0},
+    { "_class_wxBitmap","_wxBitmap",0},
+    { "_class_wxMemoryDC","_wxMemoryDC",0},
+    { "_wxMenuBar","_class_wxMenuBar",0},
+    { "_wxTreeEvent","_class_wxTreeEvent",0},
+    { "_wxDirDialog","_class_wxDirDialog",0},
+    { "_wxEvtHandler","_class_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler},
+    { "_wxEvtHandler","_wxGLCanvas",SwigwxGLCanvasTowxEvtHandler},
+    { "_wxEvtHandler","_class_wxEvtHandler",0},
+    { "_wxMenuItem","_class_wxMenuItem",0},
+    { "_class_wxScrollBar","_wxScrollBar",0},
+    { "_class_wxColourDialog","_wxColourDialog",0},
+    { "_class_wxPrintData","_wxPrintData",0},
+    { "_wxDash","_unsigned_long",0},
+    { "_wxDash","_long",0},
+    { "_class_wxScrolledWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow},
+    { "_class_wxScrolledWindow","_wxGLCanvas",SwigwxGLCanvasTowxScrolledWindow},
+    { "_class_wxScrolledWindow","_wxScrolledWindow",0},
+    { "_class_wxTextEntryDialog","_wxTextEntryDialog",0},
+    { "_wxKeyEvent","_class_wxKeyEvent",0},
+    { "_wxMoveEvent","_class_wxMoveEvent",0},
+    { "_wxColourData","_class_wxColourData",0},
+    { "_wxPageSetupDialogData","_class_wxPageSetupDialogData",0},
+    { "_class_wxPalette","_wxPalette",0},
+    { "_class_wxQueryLayoutInfoEvent","_wxQueryLayoutInfoEvent",0},
+    { "_class_wxEraseEvent","_wxEraseEvent",0},
+    { "_wxMDIClientWindow","_class_wxMDIClientWindow",0},
+    { "_class_wxFontDialog","_wxFontDialog",0},
+    { "_wxWindow","_class_wxGLCanvas",SwigwxGLCanvasTowxWindow},
+    { "_wxWindow","_wxGLCanvas",SwigwxGLCanvasTowxWindow},
+    { "_wxWindow","_class_wxWindow",0},
+    { "_class_wxFrame","_wxFrame",0},
+{0,0,0}};
+
 static PyObject *SWIG_globals;
 #ifdef __cplusplus
 extern "C" 
 #endif
-SWIGEXPORT(void,initglcanvasc)() {
+SWIGEXPORT(void) initglcanvasc() {
         PyObject *m, *d;
         SWIG_globals = SWIG_newvarlink();
         m = Py_InitModule("glcanvasc", glcanvascMethods);
@@ -9233,450 +9955,9 @@ SWIGEXPORT(void,initglcanvasc)() {
     wxClassInfo::CleanUpClasses();
     wxClassInfo::InitializeClasses();
 
-/*
- * 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","_size_t",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("_GLenum","_size_t",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("_size_t","_GLuint",0);
-        SWIG_RegisterMapping("_size_t","_GLsizei",0);
-        SWIG_RegisterMapping("_size_t","_GLint",0);
-        SWIG_RegisterMapping("_size_t","_GLbitfield",0);
-        SWIG_RegisterMapping("_size_t","_GLenum",0);
-        SWIG_RegisterMapping("_size_t","_unsigned_int",0);
-        SWIG_RegisterMapping("_size_t","_int",0);
-        SWIG_RegisterMapping("_size_t","_wxWindowID",0);
-        SWIG_RegisterMapping("_size_t","_uint",0);
-        SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
-        SWIG_RegisterMapping("_wxPrinterDC","_class_wxPrinterDC",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("_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","_size_t",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","_size_t",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("_wxTaskBarIcon","_class_wxTaskBarIcon",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","_size_t",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("_wxMetaFileDC","_class_wxMetaFileDC",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_wxTaskBarIcon","_wxTaskBarIcon",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("_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_wxMetaFileDC","_wxMetaFileDC",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","_size_t",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","_size_t",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","_size_t",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_wxPrinterDC","_wxPrinterDC",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","_size_t",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);
+{
+   int i;
+   for (i = 0; _swig_mapping[i].n1; i++)
+        SWIG_RegisterMapping(_swig_mapping[i].n1,_swig_mapping[i].n2,_swig_mapping[i].pcnv);
+}
 }