]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/msw/windows2.cpp
small change to avoid floating point exception in wxScrolledWindow::Scroll
[wxWidgets.git] / utils / wxPython / src / msw / windows2.cpp
index f0428b3070fef0cf7952f341b7fecdf48aadd3b7..bd8e343b025b256a3a4a21452859dcb9027f6fbb 100644 (file)
@@ -3,7 +3,7 @@
  * 
  * This file was automatically generated by :
  * Simplified Wrapper and Interface Generator (SWIG)
  * 
  * This file was automatically generated by :
  * Simplified Wrapper and Interface Generator (SWIG)
- * Version 1.1 (Patch 5)
+ * Version 1.1 (Build 810)
  * 
  * Portions Copyright (c) 1995-1998
  * The University of Utah and The Regents of the University of California.
  * 
  * 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)
 /* 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__)
 #   else
 #      if defined(__BORLANDC__)
-#          define SWIGEXPORT(a,b) a _export b
+#          define SWIGEXPORT(a) a _export 
 #      else
 #      else
-#          define SWIGEXPORT(a,b) a b
+#          define SWIGEXPORT(a) a 
 #      endif
 #   endif
 #else
 #      endif
 #   endif
 #else
-#   define SWIGEXPORT(a,b) a b
+#   define SWIGEXPORT(a) a 
 #endif
 
 #ifdef __cplusplus
 #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 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
 extern void SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
 extern PyObject *SWIG_newvarlink(void);
 #ifdef __cplusplus
 }
 #endif
-
 #define SWIG_init    initwindows2c
 
 #define SWIG_name    "windows2c"
 #define SWIG_init    initwindows2c
 
 #define SWIG_name    "windows2c"
@@ -63,12 +63,13 @@ extern PyObject *SWIG_newvarlink(void);
 
 static PyObject* l_output_helper(PyObject* target, PyObject* o) {
     PyObject*   o2;
 
 static PyObject* l_output_helper(PyObject* target, PyObject* o) {
     PyObject*   o2;
-    if (!target) {
+    PyObject*   o3;
+    if (!target) {                   
         target = o;
         target = o;
-    } else if (target == Py_None) {
+    } else if (target == Py_None) {  
         Py_DECREF(Py_None);
         target = o;
         Py_DECREF(Py_None);
         target = o;
-    } else {
+    } else {                         
         if (!PyList_Check(target)) {
             o2 = target;
             target = PyList_New(0);
         if (!PyList_Check(target)) {
             o2 = target;
             target = PyList_New(0);
@@ -85,70 +86,70 @@ static PyObject* t_output_helper(PyObject* target, PyObject* o) {
     PyObject*   o2;
     PyObject*   o3;
 
     PyObject*   o2;
     PyObject*   o3;
 
-    if (!target) {
+    if (!target) {                   
         target = o;
         target = o;
-    } else if (target == Py_None) {
+    } else if (target == Py_None) {  
         Py_DECREF(Py_None);
         target = o;
         Py_DECREF(Py_None);
         target = o;
-    } else {
+    } else {                         
         if (!PyTuple_Check(target)) {
             o2 = target;
             target = PyTuple_New(1);
             PyTuple_SetItem(target, 0, o2);
         }
         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;
 
         o2 = target;
-        target = PySequence_Concat(o2, o3);
-        Py_DECREF(o2);
+        target = PySequence_Concat(o2, o3); 
+        Py_DECREF(o2);                      
         Py_DECREF(o3);
     }
     return target;
 }
 
         Py_DECREF(o3);
     }
     return target;
 }
 
-
-extern byte* byte_LIST_helper(PyObject* source);
-extern int* int_LIST_helper(PyObject* source);
-extern long* long_LIST_helper(PyObject* source);
-extern char** string_LIST_helper(PyObject* source);
-extern wxPoint* wxPoint_LIST_helper(PyObject* source);
-extern wxBitmap** wxBitmap_LIST_helper(PyObject* source);
-extern wxString* wxString_LIST_helper(PyObject* source);
-extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
-
-
 static char* wxStringErrorMsg = "string type is required for parameter";
 static char* wxStringErrorMsg = "string type is required for parameter";
+#ifdef __cplusplus
+extern "C" {
+#endif
 #define new_wxGridCell() (new wxGridCell())
 #define new_wxGridCell() (new wxGridCell())
-static PyObject *_wrap_new_wxGridCell(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxGridCell(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _result;
     PyObject * _resultobj;
     wxGridCell * _result;
+    char *_kwnames[] = {  NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,":new_wxGridCell")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxGridCell",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxGridCell *)new_wxGridCell();
 
     wxPy_END_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxGridCell *)new_wxGridCell();
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define delete_wxGridCell(_swigobj) (delete _swigobj)
     return _resultobj;
 }
 
 #define delete_wxGridCell(_swigobj) (delete _swigobj)
-static PyObject *_wrap_delete_wxGridCell(PyObject *self, PyObject *args) {
+static PyObject *_wrap_delete_wxGridCell(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:delete_wxGridCell",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:delete_wxGridCell",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxGridCell. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxGridCell. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -164,17 +165,19 @@ static PyObject *_wrap_delete_wxGridCell(PyObject *self, PyObject *args) {
 }
 
 #define wxGridCell_GetTextValue(_swigobj)  (_swigobj->GetTextValue())
 }
 
 #define wxGridCell_GetTextValue(_swigobj)  (_swigobj->GetTextValue())
-static PyObject *_wrap_wxGridCell_GetTextValue(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetTextValue(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxString * _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxString * _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetTextValue",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetTextValue",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetTextValue. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetTextValue. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -186,24 +189,26 @@ static PyObject *_wrap_wxGridCell_GetTextValue(PyObject *self, PyObject *args) {
 
     wxPy_END_ALLOW_THREADS;
 }{
 
     wxPy_END_ALLOW_THREADS;
 }{
-    _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+    _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
 }
     return _resultobj;
 }
 
 #define wxGridCell_SetTextValue(_swigobj,_swigarg0)  (_swigobj->SetTextValue(_swigarg0))
 }
     return _resultobj;
 }
 
 #define wxGridCell_SetTextValue(_swigobj,_swigarg0)  (_swigobj->SetTextValue(_swigarg0))
-static PyObject *_wrap_wxGridCell_SetTextValue(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_SetTextValue(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxString * _arg1;
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxString * _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
     PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","str", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sO:wxGridCell_SetTextValue",&_argc0,&_obj1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridCell_SetTextValue",_kwnames,&_argo0,&_obj1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetTextValue. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetTextValue. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -230,18 +235,20 @@ static PyObject *_wrap_wxGridCell_SetTextValue(PyObject *self, PyObject *args) {
 }
 
 #define wxGridCell_GetFont(_swigobj)  (_swigobj->GetFont())
 }
 
 #define wxGridCell_GetFont(_swigobj)  (_swigobj->GetFont())
-static PyObject *_wrap_wxGridCell_GetFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxFont * _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxFont * _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetFont",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetFont",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetFont. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetFont. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -252,30 +259,38 @@ static PyObject *_wrap_wxGridCell_GetFont(PyObject *self, PyObject *args) {
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridCell_SetFont(_swigobj,_swigarg0)  (_swigobj->SetFont(_swigarg0))
     return _resultobj;
 }
 
 #define wxGridCell_SetFont(_swigobj,_swigarg0)  (_swigobj->SetFont(_swigarg0))
-static PyObject *_wrap_wxGridCell_SetFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_SetFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxFont * _arg1;
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxFont * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","f", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGridCell_SetFont",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridCell_SetFont",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetFont. Expected _wxGridCell_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetFont. Expected _wxGridCell_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxFont_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxFont_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetFont. Expected _wxFont_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetFont. Expected _wxFont_p.");
         return NULL;
         }
@@ -291,18 +306,20 @@ static PyObject *_wrap_wxGridCell_SetFont(PyObject *self, PyObject *args) {
 }
 
 #define wxGridCell_GetTextColour(_swigobj)  (_swigobj->GetTextColour())
 }
 
 #define wxGridCell_GetTextColour(_swigobj)  (_swigobj->GetTextColour())
-static PyObject *_wrap_wxGridCell_GetTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxColour * _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetTextColour",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetTextColour",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetTextColour. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetTextColour. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -313,30 +330,38 @@ static PyObject *_wrap_wxGridCell_GetTextColour(PyObject *self, PyObject *args)
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridCell_SetTextColour(_swigobj,_swigarg0)  (_swigobj->SetTextColour(_swigarg0))
     return _resultobj;
 }
 
 #define wxGridCell_SetTextColour(_swigobj,_swigarg0)  (_swigobj->SetTextColour(_swigarg0))
-static PyObject *_wrap_wxGridCell_SetTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_SetTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxColour * _arg1;
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxColour * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","colour", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGridCell_SetTextColour",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridCell_SetTextColour",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetTextColour. Expected _wxGridCell_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetTextColour. Expected _wxGridCell_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetTextColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetTextColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -352,18 +377,20 @@ static PyObject *_wrap_wxGridCell_SetTextColour(PyObject *self, PyObject *args)
 }
 
 #define wxGridCell_GetBackgroundColour(_swigobj)  (_swigobj->GetBackgroundColour())
 }
 
 #define wxGridCell_GetBackgroundColour(_swigobj)  (_swigobj->GetBackgroundColour())
-static PyObject *_wrap_wxGridCell_GetBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxColour * _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetBackgroundColour",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetBackgroundColour",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetBackgroundColour. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetBackgroundColour. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -374,30 +401,38 @@ static PyObject *_wrap_wxGridCell_GetBackgroundColour(PyObject *self, PyObject *
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridCell_SetBackgroundColour(_swigobj,_swigarg0)  (_swigobj->SetBackgroundColour(_swigarg0))
     return _resultobj;
 }
 
 #define wxGridCell_SetBackgroundColour(_swigobj,_swigarg0)  (_swigobj->SetBackgroundColour(_swigarg0))
-static PyObject *_wrap_wxGridCell_SetBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_SetBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxColour * _arg1;
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxColour * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","colour", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGridCell_SetBackgroundColour",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridCell_SetBackgroundColour",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetBackgroundColour. Expected _wxGridCell_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetBackgroundColour. Expected _wxGridCell_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -413,18 +448,20 @@ static PyObject *_wrap_wxGridCell_SetBackgroundColour(PyObject *self, PyObject *
 }
 
 #define wxGridCell_GetBackgroundBrush(_swigobj)  (_swigobj->GetBackgroundBrush())
 }
 
 #define wxGridCell_GetBackgroundBrush(_swigobj)  (_swigobj->GetBackgroundBrush())
-static PyObject *_wrap_wxGridCell_GetBackgroundBrush(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetBackgroundBrush(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxBrush * _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxBrush * _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetBackgroundBrush",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetBackgroundBrush",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetBackgroundBrush. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetBackgroundBrush. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -435,23 +472,30 @@ static PyObject *_wrap_wxGridCell_GetBackgroundBrush(PyObject *self, PyObject *a
     _result = (wxBrush *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxBrush *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridCell_GetAlignment(_swigobj)  (_swigobj->GetAlignment())
     return _resultobj;
 }
 
 #define wxGridCell_GetAlignment(_swigobj)  (_swigobj->GetAlignment())
-static PyObject *_wrap_wxGridCell_GetAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetAlignment",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetAlignment",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetAlignment. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetAlignment. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -466,17 +510,19 @@ static PyObject *_wrap_wxGridCell_GetAlignment(PyObject *self, PyObject *args) {
 }
 
 #define wxGridCell_SetAlignment(_swigobj,_swigarg0)  (_swigobj->SetAlignment(_swigarg0))
 }
 
 #define wxGridCell_SetAlignment(_swigobj,_swigarg0)  (_swigobj->SetAlignment(_swigarg0))
-static PyObject *_wrap_wxGridCell_SetAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_SetAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxGridCell * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","align", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridCell_SetAlignment",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridCell_SetAlignment",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetAlignment. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetAlignment. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -492,18 +538,20 @@ static PyObject *_wrap_wxGridCell_SetAlignment(PyObject *self, PyObject *args) {
 }
 
 #define wxGridCell_GetCellBitmap(_swigobj)  (_swigobj->GetCellBitmap())
 }
 
 #define wxGridCell_GetCellBitmap(_swigobj)  (_swigobj->GetCellBitmap())
-static PyObject *_wrap_wxGridCell_GetCellBitmap(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_GetCellBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxBitmap * _result;
     wxGridCell * _arg0;
     PyObject * _resultobj;
     wxBitmap * _result;
     wxGridCell * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridCell_GetCellBitmap",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridCell_GetCellBitmap",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetCellBitmap. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_GetCellBitmap. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -513,30 +561,38 @@ static PyObject *_wrap_wxGridCell_GetCellBitmap(PyObject *self, PyObject *args)
         _result = (wxBitmap *)wxGridCell_GetCellBitmap(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxBitmap *)wxGridCell_GetCellBitmap(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridCell_SetCellBitmap(_swigobj,_swigarg0)  (_swigobj->SetCellBitmap(_swigarg0))
     return _resultobj;
 }
 
 #define wxGridCell_SetCellBitmap(_swigobj,_swigarg0)  (_swigobj->SetCellBitmap(_swigarg0))
-static PyObject *_wrap_wxGridCell_SetCellBitmap(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridCell_SetCellBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxBitmap * _arg1;
     PyObject * _resultobj;
     wxGridCell * _arg0;
     wxBitmap * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","bitmap", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGridCell_SetCellBitmap",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridCell_SetCellBitmap",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetCellBitmap. Expected _wxGridCell_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridCell_SetCellBitmap. Expected _wxGridCell_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxBitmap_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxBitmap_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetCellBitmap. Expected _wxBitmap_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridCell_SetCellBitmap. Expected _wxBitmap_p.");
         return NULL;
         }
@@ -576,62 +632,73 @@ static void *SwigwxGridTowxEvtHandler(void *ptr) {
 }
 
 #define new_wxGrid(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxGrid(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
 }
 
 #define new_wxGrid(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxGrid(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
-static PyObject *_wrap_new_wxGrid(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxGrid(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _result;
     wxWindow * _arg0;
     wxWindowID  _arg1;
     PyObject * _resultobj;
     wxGrid * _result;
     wxWindow * _arg0;
     wxWindowID  _arg1;
-    wxPoint * _arg2 = &wxPyDefaultPosition;
-    wxSize * _arg3 = &wxPyDefaultSize;
-    long  _arg4 = 0;
-    char * _arg5 = "grid";
-    char * _argc0 = 0;
-    char * _argc2 = 0;
-    char * _argc3 = 0;
+    wxPoint * _arg2 = (wxPoint *) &wxPyDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxPyDefaultSize;
+    long  _arg4 = (long ) 0;
+    char * _arg5 = (char *) "grid";
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
+    wxSize  temp0;
+    PyObject * _obj3 = 0;
+    char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si|ssls:new_wxGrid",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOls:new_wxGrid",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_arg5)) 
         return NULL;
         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_wxGrid. Expected _wxWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxGrid. Expected _wxWindow_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxGrid. Expected _wxPoint_p.");
+    if (_obj2)
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxSize_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of new_wxGrid. Expected _wxSize_p.");
+}
+    if (_obj3)
+{
+    _arg3 = &temp0;
+    if (! wxSize_helper(_obj3, &_arg3))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxGrid *)new_wxGrid(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxGrid *)new_wxGrid(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGrid_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGrid_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_AdjustScrollbars(_swigobj)  (_swigobj->AdjustScrollbars())
     return _resultobj;
 }
 
 #define wxGrid_AdjustScrollbars(_swigobj)  (_swigobj->AdjustScrollbars())
-static PyObject *_wrap_wxGrid_AdjustScrollbars(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_AdjustScrollbars(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_AdjustScrollbars",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_AdjustScrollbars",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_AdjustScrollbars. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_AdjustScrollbars. Expected _wxGrid_p.");
         return NULL;
         }
@@ -647,25 +714,25 @@ static PyObject *_wrap_wxGrid_AdjustScrollbars(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_AppendCols(_swigobj,_swigarg0,_swigarg1)  (_swigobj->AppendCols(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_AppendCols(_swigobj,_swigarg0,_swigarg1)  (_swigobj->AppendCols(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_AppendCols(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_AppendCols(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    int  _arg1 = 1;
-    bool  _arg2 = (1);
-    char * _argc0 = 0;
-    int tempbool2;
+    int  _arg1 = (int ) 1;
+    int  _arg2 = (int ) TRUE;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","n","updateLabels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|ii:wxGrid_AppendCols",&_argc0,&_arg1,&tempbool2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|ii:wxGrid_AppendCols",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_AppendCols. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_AppendCols. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    _arg2 = (bool ) tempbool2;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (bool )wxGrid_AppendCols(_arg0,_arg1,_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (bool )wxGrid_AppendCols(_arg0,_arg1,_arg2);
@@ -676,25 +743,25 @@ static PyObject *_wrap_wxGrid_AppendCols(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_AppendRows(_swigobj,_swigarg0,_swigarg1)  (_swigobj->AppendRows(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_AppendRows(_swigobj,_swigarg0,_swigarg1)  (_swigobj->AppendRows(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_AppendRows(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_AppendRows(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    int  _arg1 = 1;
-    bool  _arg2 = (1);
-    char * _argc0 = 0;
-    int tempbool2;
+    int  _arg1 = (int ) 1;
+    int  _arg2 = (int ) TRUE;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","n","updateLabels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|ii:wxGrid_AppendRows",&_argc0,&_arg1,&tempbool2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|ii:wxGrid_AppendRows",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_AppendRows. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_AppendRows. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    _arg2 = (bool ) tempbool2;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (bool )wxGrid_AppendRows(_arg0,_arg1,_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (bool )wxGrid_AppendRows(_arg0,_arg1,_arg2);
@@ -705,16 +772,18 @@ static PyObject *_wrap_wxGrid_AppendRows(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_BeginBatch(_swigobj)  (_swigobj->BeginBatch())
 }
 
 #define wxGrid_BeginBatch(_swigobj)  (_swigobj->BeginBatch())
-static PyObject *_wrap_wxGrid_BeginBatch(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_BeginBatch(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_BeginBatch",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_BeginBatch",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_BeginBatch. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_BeginBatch. Expected _wxGrid_p.");
         return NULL;
         }
@@ -730,7 +799,7 @@ static PyObject *_wrap_wxGrid_BeginBatch(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_CellHitTest(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->CellHitTest(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
 }
 
 #define wxGrid_CellHitTest(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->CellHitTest(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
-static PyObject *_wrap_wxGrid_CellHitTest(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_CellHitTest(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
@@ -740,7 +809,8 @@ static PyObject *_wrap_wxGrid_CellHitTest(PyObject *self, PyObject *args) {
     int  temp;
     int * _arg4;
     int  temp0;
     int  temp;
     int * _arg4;
     int  temp0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y", NULL };
 
     self = self;
 {
 
     self = self;
 {
@@ -749,10 +819,11 @@ static PyObject *_wrap_wxGrid_CellHitTest(PyObject *self, PyObject *args) {
 {
   _arg4 = &temp0;
 }
 {
   _arg4 = &temp0;
 }
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_CellHitTest",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_CellHitTest",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_CellHitTest. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_CellHitTest. Expected _wxGrid_p.");
         return NULL;
         }
@@ -780,21 +851,23 @@ static bool  wxGrid_CreateGrid(wxGrid *self,int  rows,int  cols,short  defaultWi
             return self->CreateGrid(rows, cols, NULL, NULL,
                                     defaultWidth, defaultHeight);
         }
             return self->CreateGrid(rows, cols, NULL, NULL,
                                     defaultWidth, defaultHeight);
         }
-static PyObject *_wrap_wxGrid_CreateGrid(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_CreateGrid(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    short  _arg3 = wxGRID_DEFAULT_CELL_WIDTH;
-    short  _arg4 = wxGRID_DEFAULT_CELL_HEIGHT;
-    char * _argc0 = 0;
+    short  _arg3 = (short ) wxGRID_DEFAULT_CELL_WIDTH;
+    short  _arg4 = (short ) wxGRID_DEFAULT_CELL_HEIGHT;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","rows","cols","defaultWidth","defaultHeight", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii|hh:wxGrid_CreateGrid",&_argc0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii|hh:wxGrid_CreateGrid",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_CreateGrid. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_CreateGrid. Expected _wxGrid_p.");
         return NULL;
         }
@@ -809,17 +882,19 @@ static PyObject *_wrap_wxGrid_CreateGrid(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_CurrentCellVisible(_swigobj)  (_swigobj->CurrentCellVisible())
 }
 
 #define wxGrid_CurrentCellVisible(_swigobj)  (_swigobj->CurrentCellVisible())
-static PyObject *_wrap_wxGrid_CurrentCellVisible(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_CurrentCellVisible(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_CurrentCellVisible",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_CurrentCellVisible",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_CurrentCellVisible. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_CurrentCellVisible. Expected _wxGrid_p.");
         return NULL;
         }
@@ -834,21 +909,23 @@ static PyObject *_wrap_wxGrid_CurrentCellVisible(PyObject *self, PyObject *args)
 }
 
 #define wxGrid_DeleteCols(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->DeleteCols(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_DeleteCols(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->DeleteCols(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_DeleteCols(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_DeleteCols(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    int  _arg1 = 0;
-    int  _arg2 = 1;
-    bool  _arg3 = (1);
-    char * _argc0 = 0;
-    int tempbool3;
+    int  _arg1 = (int ) 0;
+    int  _arg2 = (int ) 1;
+    bool  _arg3 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool3 = (int) TRUE;
+    char *_kwnames[] = { "self","pos","n","updateLabels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|iii:wxGrid_DeleteCols",&_argc0,&_arg1,&_arg2,&tempbool3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iii:wxGrid_DeleteCols",_kwnames,&_argo0,&_arg1,&_arg2,&tempbool3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_DeleteCols. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_DeleteCols. Expected _wxGrid_p.");
         return NULL;
         }
@@ -864,21 +941,23 @@ static PyObject *_wrap_wxGrid_DeleteCols(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_DeleteRows(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->DeleteRows(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_DeleteRows(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->DeleteRows(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_DeleteRows(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_DeleteRows(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    int  _arg1 = 0;
-    int  _arg2 = 1;
-    bool  _arg3 = (1);
-    char * _argc0 = 0;
-    int tempbool3;
+    int  _arg1 = (int ) 0;
+    int  _arg2 = (int ) 1;
+    bool  _arg3 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool3 = (int) TRUE;
+    char *_kwnames[] = { "self","pos","n","updateLabels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|iii:wxGrid_DeleteRows",&_argc0,&_arg1,&_arg2,&tempbool3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iii:wxGrid_DeleteRows",_kwnames,&_argo0,&_arg1,&_arg2,&tempbool3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_DeleteRows. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_DeleteRows. Expected _wxGrid_p.");
         return NULL;
         }
@@ -894,16 +973,18 @@ static PyObject *_wrap_wxGrid_DeleteRows(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_EndBatch(_swigobj)  (_swigobj->EndBatch())
 }
 
 #define wxGrid_EndBatch(_swigobj)  (_swigobj->EndBatch())
-static PyObject *_wrap_wxGrid_EndBatch(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_EndBatch(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_EndBatch",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_EndBatch",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_EndBatch. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_EndBatch. Expected _wxGrid_p.");
         return NULL;
         }
@@ -919,17 +1000,19 @@ static PyObject *_wrap_wxGrid_EndBatch(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetBatchCount(_swigobj)  (_swigobj->GetBatchCount())
 }
 
 #define wxGrid_GetBatchCount(_swigobj)  (_swigobj->GetBatchCount())
-static PyObject *_wrap_wxGrid_GetBatchCount(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetBatchCount(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetBatchCount",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetBatchCount",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetBatchCount. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetBatchCount. Expected _wxGrid_p.");
         return NULL;
         }
@@ -944,20 +1027,22 @@ static PyObject *_wrap_wxGrid_GetBatchCount(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetCell(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCell(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_GetCell(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCell(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetCell(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCell(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetCell",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetCell",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCell. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCell. Expected _wxGrid_p.");
         return NULL;
         }
@@ -967,25 +1052,32 @@ static PyObject *_wrap_wxGrid_GetCell(PyObject *self, PyObject *args) {
         _result = (wxGridCell *)wxGrid_GetCell(_arg0,_arg1,_arg2);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxGridCell *)wxGrid_GetCell(_arg0,_arg1,_arg2);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetCellAlignment(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellAlignment(_swigarg0,_swigarg1))
     return _resultobj;
 }
 
 #define wxGrid_GetCellAlignment(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellAlignment(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetCellAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCellAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetCellAlignment",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetCellAlignment",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1000,17 +1092,19 @@ static PyObject *_wrap_wxGrid_GetCellAlignment(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetDefCellAlignment(_swigobj)  (_swigobj->GetCellAlignment())
 }
 
 #define wxGrid_GetDefCellAlignment(_swigobj)  (_swigobj->GetCellAlignment())
-static PyObject *_wrap_wxGrid_GetDefCellAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetDefCellAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetDefCellAlignment",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetDefCellAlignment",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1025,20 +1119,22 @@ static PyObject *_wrap_wxGrid_GetDefCellAlignment(PyObject *self, PyObject *args
 }
 
 #define wxGrid_GetCellBackgroundColour(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellBackgroundColour(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_GetCellBackgroundColour(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellBackgroundColour(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetCellBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCellBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetCellBackgroundColour",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetCellBackgroundColour",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1049,24 +1145,31 @@ static PyObject *_wrap_wxGrid_GetCellBackgroundColour(PyObject *self, PyObject *
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetDefCellBackgroundColour(_swigobj)  (_swigobj->GetCellBackgroundColour())
     return _resultobj;
 }
 
 #define wxGrid_GetDefCellBackgroundColour(_swigobj)  (_swigobj->GetCellBackgroundColour())
-static PyObject *_wrap_wxGrid_GetDefCellBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetDefCellBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetDefCellBackgroundColour",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetDefCellBackgroundColour",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1077,8 +1180,13 @@ static PyObject *_wrap_wxGrid_GetDefCellBackgroundColour(PyObject *self, PyObjec
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
     return _resultobj;
 }
 
@@ -1090,15 +1198,9 @@ static PyObject * wxGrid_GetCells(wxGrid *self) {
                 for (col=0; col < self->GetCols(); col++) {
                     wxGridCell* cell = self->GetCell(row, col);
 
                 for (col=0; col < self->GetCols(); col++) {
                     wxGridCell* cell = self->GetCell(row, col);
 
-#ifdef WXP_WITH_THREAD
-                    PyEval_RestoreThread(wxPyEventThreadState);
-                    wxPyInEvent = true;
-#endif
+                    bool doSave = wxPyRestoreThread();
                     PyObject* pyCell = wxPyConstructObject(cell, "wxGridCell");
                     PyObject* pyCell = wxPyConstructObject(cell, "wxGridCell");
-#ifdef WXP_WITH_THREAD
-                    PyEval_SaveThread();
-                    wxPyInEvent = false;
-#endif
+                    wxPySaveThread(doSave);
 
                     if (PyList_Append(rowList, pyCell) == -1)
                         return NULL;
 
                     if (PyList_Append(rowList, pyCell) == -1)
                         return NULL;
@@ -1108,17 +1210,19 @@ static PyObject * wxGrid_GetCells(wxGrid *self) {
             }
             return rows;
         }
             }
             return rows;
         }
-static PyObject *_wrap_wxGrid_GetCells(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCells(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     PyObject * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetCells",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetCells",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCells. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCells. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1135,20 +1239,22 @@ static PyObject *_wrap_wxGrid_GetCells(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetCellTextColour(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellTextColour(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_GetCellTextColour(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellTextColour(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetCellTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCellTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetCellTextColour",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetCellTextColour",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1159,24 +1265,31 @@ static PyObject *_wrap_wxGrid_GetCellTextColour(PyObject *self, PyObject *args)
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetDefCellTextColour(_swigobj)  (_swigobj->GetCellTextColour())
     return _resultobj;
 }
 
 #define wxGrid_GetDefCellTextColour(_swigobj)  (_swigobj->GetCellTextColour())
-static PyObject *_wrap_wxGrid_GetDefCellTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetDefCellTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetDefCellTextColour",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetDefCellTextColour",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1187,26 +1300,33 @@ static PyObject *_wrap_wxGrid_GetDefCellTextColour(PyObject *self, PyObject *arg
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetCellTextFont(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellTextFont(_swigarg0,_swigarg1))
     return _resultobj;
 }
 
 #define wxGrid_GetCellTextFont(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellTextFont(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetCellTextFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCellTextFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxFont * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxFont * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetCellTextFont",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetCellTextFont",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1217,24 +1337,31 @@ static PyObject *_wrap_wxGrid_GetCellTextFont(PyObject *self, PyObject *args) {
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetDefCellTextFont(_swigobj)  (_swigobj->GetCellTextFont())
     return _resultobj;
 }
 
 #define wxGrid_GetDefCellTextFont(_swigobj)  (_swigobj->GetCellTextFont())
-static PyObject *_wrap_wxGrid_GetDefCellTextFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetDefCellTextFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxFont * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxFont * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetDefCellTextFont",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetDefCellTextFont",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetDefCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1245,25 +1372,32 @@ static PyObject *_wrap_wxGrid_GetDefCellTextFont(PyObject *self, PyObject *args)
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetCellValue(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellValue(_swigarg0,_swigarg1))
     return _resultobj;
 }
 
 #define wxGrid_GetCellValue(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetCellValue(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetCellValue(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCellValue(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxString * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxString * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetCellValue",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetCellValue",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellValue. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCellValue. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1275,23 +1409,25 @@ static PyObject *_wrap_wxGrid_GetCellValue(PyObject *self, PyObject *args) {
 
     wxPy_END_ALLOW_THREADS;
 }{
 
     wxPy_END_ALLOW_THREADS;
 }{
-    _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+    _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
 }
     return _resultobj;
 }
 
 #define wxGrid_GetCols(_swigobj)  (_swigobj->GetCols())
 }
     return _resultobj;
 }
 
 #define wxGrid_GetCols(_swigobj)  (_swigobj->GetCols())
-static PyObject *_wrap_wxGrid_GetCols(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCols(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetCols",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetCols",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCols. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCols. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1306,18 +1442,20 @@ static PyObject *_wrap_wxGrid_GetCols(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetColumnWidth(_swigobj,_swigarg0)  (_swigobj->GetColumnWidth(_swigarg0))
 }
 
 #define wxGrid_GetColumnWidth(_swigobj,_swigarg0)  (_swigobj->GetColumnWidth(_swigarg0))
-static PyObject *_wrap_wxGrid_GetColumnWidth(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetColumnWidth(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_GetColumnWidth",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_GetColumnWidth",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetColumnWidth. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetColumnWidth. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1332,18 +1470,20 @@ static PyObject *_wrap_wxGrid_GetColumnWidth(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetCurrentRect(_swigobj)  (_swigobj->GetCurrentRect())
 }
 
 #define wxGrid_GetCurrentRect(_swigobj)  (_swigobj->GetCurrentRect())
-static PyObject *_wrap_wxGrid_GetCurrentRect(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCurrentRect(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxRect * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxRect * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetCurrentRect",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetCurrentRect",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCurrentRect. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCurrentRect. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1359,17 +1499,19 @@ static PyObject *_wrap_wxGrid_GetCurrentRect(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetCursorColumn(_swigobj)  (_swigobj->GetCursorColumn())
 }
 
 #define wxGrid_GetCursorColumn(_swigobj)  (_swigobj->GetCursorColumn())
-static PyObject *_wrap_wxGrid_GetCursorColumn(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCursorColumn(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetCursorColumn",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetCursorColumn",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCursorColumn. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCursorColumn. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1384,17 +1526,19 @@ static PyObject *_wrap_wxGrid_GetCursorColumn(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetCursorRow(_swigobj)  (_swigobj->GetCursorRow())
 }
 
 #define wxGrid_GetCursorRow(_swigobj)  (_swigobj->GetCursorRow())
-static PyObject *_wrap_wxGrid_GetCursorRow(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetCursorRow(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetCursorRow",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetCursorRow",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCursorRow. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetCursorRow. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1409,17 +1553,19 @@ static PyObject *_wrap_wxGrid_GetCursorRow(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetEditable(_swigobj)  (_swigobj->GetEditable())
 }
 
 #define wxGrid_GetEditable(_swigobj)  (_swigobj->GetEditable())
-static PyObject *_wrap_wxGrid_GetEditable(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetEditable(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetEditable",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetEditable",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetEditable. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetEditable. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1434,18 +1580,20 @@ static PyObject *_wrap_wxGrid_GetEditable(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetHorizScrollBar(_swigobj)  (_swigobj->GetHorizScrollBar())
 }
 
 #define wxGrid_GetHorizScrollBar(_swigobj)  (_swigobj->GetHorizScrollBar())
-static PyObject *_wrap_wxGrid_GetHorizScrollBar(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetHorizScrollBar(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxScrollBar * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxScrollBar * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetHorizScrollBar",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetHorizScrollBar",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetHorizScrollBar. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetHorizScrollBar. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1455,24 +1603,31 @@ static PyObject *_wrap_wxGrid_GetHorizScrollBar(PyObject *self, PyObject *args)
         _result = (wxScrollBar *)wxGrid_GetHorizScrollBar(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxScrollBar *)wxGrid_GetHorizScrollBar(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetLabelAlignment(_swigobj,_swigarg0)  (_swigobj->GetLabelAlignment(_swigarg0))
     return _resultobj;
 }
 
 #define wxGrid_GetLabelAlignment(_swigobj,_swigarg0)  (_swigobj->GetLabelAlignment(_swigarg0))
-static PyObject *_wrap_wxGrid_GetLabelAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetLabelAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","orientation", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_GetLabelAlignment",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_GetLabelAlignment",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelAlignment. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelAlignment. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1487,18 +1642,20 @@ static PyObject *_wrap_wxGrid_GetLabelAlignment(PyObject *self, PyObject *args)
 }
 
 #define wxGrid_GetLabelBackgroundColour(_swigobj)  (_swigobj->GetLabelBackgroundColour())
 }
 
 #define wxGrid_GetLabelBackgroundColour(_swigobj)  (_swigobj->GetLabelBackgroundColour())
-static PyObject *_wrap_wxGrid_GetLabelBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetLabelBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetLabelBackgroundColour",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetLabelBackgroundColour",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1509,24 +1666,31 @@ static PyObject *_wrap_wxGrid_GetLabelBackgroundColour(PyObject *self, PyObject
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetLabelSize(_swigobj,_swigarg0)  (_swigobj->GetLabelSize(_swigarg0))
     return _resultobj;
 }
 
 #define wxGrid_GetLabelSize(_swigobj,_swigarg0)  (_swigobj->GetLabelSize(_swigarg0))
-static PyObject *_wrap_wxGrid_GetLabelSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetLabelSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","orientation", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_GetLabelSize",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_GetLabelSize",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelSize. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelSize. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1541,18 +1705,20 @@ static PyObject *_wrap_wxGrid_GetLabelSize(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetLabelTextColour(_swigobj)  (_swigobj->GetLabelTextColour())
 }
 
 #define wxGrid_GetLabelTextColour(_swigobj)  (_swigobj->GetLabelTextColour())
-static PyObject *_wrap_wxGrid_GetLabelTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetLabelTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxColour * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetLabelTextColour",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetLabelTextColour",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelTextColour. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelTextColour. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1563,24 +1729,31 @@ static PyObject *_wrap_wxGrid_GetLabelTextColour(PyObject *self, PyObject *args)
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxColour *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetLabelTextFont(_swigobj)  (_swigobj->GetLabelTextFont())
     return _resultobj;
 }
 
 #define wxGrid_GetLabelTextFont(_swigobj)  (_swigobj->GetLabelTextFont())
-static PyObject *_wrap_wxGrid_GetLabelTextFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetLabelTextFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxFont * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxFont * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetLabelTextFont",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetLabelTextFont",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelTextFont. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelTextFont. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1591,25 +1764,32 @@ static PyObject *_wrap_wxGrid_GetLabelTextFont(PyObject *self, PyObject *args) {
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
     _result = (wxFont *) &_result_ref;
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetLabelValue(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetLabelValue(_swigarg0,_swigarg1))
     return _resultobj;
 }
 
 #define wxGrid_GetLabelValue(_swigobj,_swigarg0,_swigarg1)  (_swigobj->GetLabelValue(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_GetLabelValue(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetLabelValue(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxString * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxString * _result;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","orientation","pos", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_GetLabelValue",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_GetLabelValue",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelValue. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetLabelValue. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1621,24 +1801,26 @@ static PyObject *_wrap_wxGrid_GetLabelValue(PyObject *self, PyObject *args) {
 
     wxPy_END_ALLOW_THREADS;
 }{
 
     wxPy_END_ALLOW_THREADS;
 }{
-    _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+    _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
 }
     return _resultobj;
 }
 
 #define wxGrid_GetRowHeight(_swigobj,_swigarg0)  (_swigobj->GetRowHeight(_swigarg0))
 }
     return _resultobj;
 }
 
 #define wxGrid_GetRowHeight(_swigobj,_swigarg0)  (_swigobj->GetRowHeight(_swigarg0))
-static PyObject *_wrap_wxGrid_GetRowHeight(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetRowHeight(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_GetRowHeight",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_GetRowHeight",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetRowHeight. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetRowHeight. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1653,17 +1835,19 @@ static PyObject *_wrap_wxGrid_GetRowHeight(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetRows(_swigobj)  (_swigobj->GetRows())
 }
 
 #define wxGrid_GetRows(_swigobj)  (_swigobj->GetRows())
-static PyObject *_wrap_wxGrid_GetRows(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetRows(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetRows",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetRows",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetRows. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetRows. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1678,17 +1862,19 @@ static PyObject *_wrap_wxGrid_GetRows(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetScrollPosX(_swigobj)  (_swigobj->GetScrollPosX())
 }
 
 #define wxGrid_GetScrollPosX(_swigobj)  (_swigobj->GetScrollPosX())
-static PyObject *_wrap_wxGrid_GetScrollPosX(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetScrollPosX(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetScrollPosX",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetScrollPosX",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetScrollPosX. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetScrollPosX. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1703,17 +1889,19 @@ static PyObject *_wrap_wxGrid_GetScrollPosX(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetScrollPosY(_swigobj)  (_swigobj->GetScrollPosY())
 }
 
 #define wxGrid_GetScrollPosY(_swigobj)  (_swigobj->GetScrollPosY())
-static PyObject *_wrap_wxGrid_GetScrollPosY(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetScrollPosY(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetScrollPosY",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetScrollPosY",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetScrollPosY. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetScrollPosY. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1728,18 +1916,20 @@ static PyObject *_wrap_wxGrid_GetScrollPosY(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetTextItem(_swigobj)  (_swigobj->GetTextItem())
 }
 
 #define wxGrid_GetTextItem(_swigobj)  (_swigobj->GetTextItem())
-static PyObject *_wrap_wxGrid_GetTextItem(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetTextItem(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxTextCtrl * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxTextCtrl * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetTextItem",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetTextItem",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetTextItem. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetTextItem. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1749,24 +1939,31 @@ static PyObject *_wrap_wxGrid_GetTextItem(PyObject *self, PyObject *args) {
         _result = (wxTextCtrl *)wxGrid_GetTextItem(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxTextCtrl *)wxGrid_GetTextItem(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_GetVertScrollBar(_swigobj)  (_swigobj->GetVertScrollBar())
     return _resultobj;
 }
 
 #define wxGrid_GetVertScrollBar(_swigobj)  (_swigobj->GetVertScrollBar())
-static PyObject *_wrap_wxGrid_GetVertScrollBar(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetVertScrollBar(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxScrollBar * _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxScrollBar * _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetVertScrollBar",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetVertScrollBar",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetVertScrollBar. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetVertScrollBar. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1776,27 +1973,34 @@ static PyObject *_wrap_wxGrid_GetVertScrollBar(PyObject *self, PyObject *args) {
         _result = (wxScrollBar *)wxGrid_GetVertScrollBar(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxScrollBar *)wxGrid_GetVertScrollBar(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGrid_InsertCols(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->InsertCols(_swigarg0,_swigarg1,_swigarg2))
     return _resultobj;
 }
 
 #define wxGrid_InsertCols(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->InsertCols(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_InsertCols(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_InsertCols(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    int  _arg1 = 0;
-    int  _arg2 = 1;
-    bool  _arg3 = (1);
-    char * _argc0 = 0;
-    int tempbool3;
+    int  _arg1 = (int ) 0;
+    int  _arg2 = (int ) 1;
+    bool  _arg3 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool3 = (int) TRUE;
+    char *_kwnames[] = { "self","pos","n","updateLabels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|iii:wxGrid_InsertCols",&_argc0,&_arg1,&_arg2,&tempbool3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iii:wxGrid_InsertCols",_kwnames,&_argo0,&_arg1,&_arg2,&tempbool3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_InsertCols. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_InsertCols. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1812,21 +2016,23 @@ static PyObject *_wrap_wxGrid_InsertCols(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_InsertRows(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->InsertRows(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_InsertRows(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->InsertRows(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_InsertRows(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_InsertRows(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    int  _arg1 = 0;
-    int  _arg2 = 1;
-    bool  _arg3 = (1);
-    char * _argc0 = 0;
-    int tempbool3;
+    int  _arg1 = (int ) 0;
+    int  _arg2 = (int ) 1;
+    bool  _arg3 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool3 = (int) TRUE;
+    char *_kwnames[] = { "self","pos","n","updateLabels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|iii:wxGrid_InsertRows",&_argc0,&_arg1,&_arg2,&tempbool3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iii:wxGrid_InsertRows",_kwnames,&_argo0,&_arg1,&_arg2,&tempbool3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_InsertRows. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_InsertRows. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1842,18 +2048,20 @@ static PyObject *_wrap_wxGrid_InsertRows(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_OnActivate(_swigobj,_swigarg0)  (_swigobj->OnActivate(_swigarg0))
 }
 
 #define wxGrid_OnActivate(_swigobj,_swigarg0)  (_swigobj->OnActivate(_swigarg0))
-static PyObject *_wrap_wxGrid_OnActivate(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_OnActivate(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     bool  _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
     int tempbool1;
+    char *_kwnames[] = { "self","active", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_OnActivate",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_OnActivate",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_OnActivate. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_OnActivate. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1870,19 +2078,21 @@ static PyObject *_wrap_wxGrid_OnActivate(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetCellAlignment(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellAlignment(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_SetCellAlignment(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellAlignment(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_SetCellAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetCellAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     int  _arg3;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     int  _arg3;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","alignment","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"siii:wxGrid_SetCellAlignment",&_argc0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oiii:wxGrid_SetCellAlignment",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1898,17 +2108,19 @@ static PyObject *_wrap_wxGrid_SetCellAlignment(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetDefCellAlignment(_swigobj,_swigarg0)  (_swigobj->SetCellAlignment(_swigarg0))
 }
 
 #define wxGrid_SetDefCellAlignment(_swigobj,_swigarg0)  (_swigobj->SetCellAlignment(_swigarg0))
-static PyObject *_wrap_wxGrid_SetDefCellAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetDefCellAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","alignment", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_SetDefCellAlignment",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_SetDefCellAlignment",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellAlignment. Expected _wxGrid_p.");
         return NULL;
         }
@@ -1924,26 +2136,29 @@ static PyObject *_wrap_wxGrid_SetDefCellAlignment(PyObject *self, PyObject *args
 }
 
 #define wxGrid_SetCellBackgroundColour(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellBackgroundColour(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_SetCellBackgroundColour(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellBackgroundColour(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_SetCellBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetCellBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     int  _arg2;
     int  _arg3;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     int  _arg2;
     int  _arg3;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","colour","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ssii:wxGrid_SetCellBackgroundColour",&_argc0,&_argc1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOii:wxGrid_SetCellBackgroundColour",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetCellBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetCellBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -1959,24 +2174,27 @@ static PyObject *_wrap_wxGrid_SetCellBackgroundColour(PyObject *self, PyObject *
 }
 
 #define wxGrid_SetDefCellBackgroundColour(_swigobj,_swigarg0)  (_swigobj->SetCellBackgroundColour(_swigarg0))
 }
 
 #define wxGrid_SetDefCellBackgroundColour(_swigobj,_swigarg0)  (_swigobj->SetCellBackgroundColour(_swigarg0))
-static PyObject *_wrap_wxGrid_SetDefCellBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetDefCellBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","colour", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetDefCellBackgroundColour",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetDefCellBackgroundColour",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDefCellBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDefCellBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -1992,26 +2210,29 @@ static PyObject *_wrap_wxGrid_SetDefCellBackgroundColour(PyObject *self, PyObjec
 }
 
 #define wxGrid_SetCellTextColour(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellTextColour(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_SetCellTextColour(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellTextColour(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_SetCellTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetCellTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     int  _arg2;
     int  _arg3;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     int  _arg2;
     int  _arg3;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","colour","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ssii:wxGrid_SetCellTextColour",&_argc0,&_argc1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOii:wxGrid_SetCellTextColour",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetCellTextColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetCellTextColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -2027,24 +2248,27 @@ static PyObject *_wrap_wxGrid_SetCellTextColour(PyObject *self, PyObject *args)
 }
 
 #define wxGrid_SetDefCellTextColour(_swigobj,_swigarg0)  (_swigobj->SetCellTextColour(_swigarg0))
 }
 
 #define wxGrid_SetDefCellTextColour(_swigobj,_swigarg0)  (_swigobj->SetCellTextColour(_swigarg0))
-static PyObject *_wrap_wxGrid_SetDefCellTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetDefCellTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","colour", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetDefCellTextColour",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetDefCellTextColour",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellTextColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDefCellTextColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDefCellTextColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -2060,26 +2284,29 @@ static PyObject *_wrap_wxGrid_SetDefCellTextColour(PyObject *self, PyObject *arg
 }
 
 #define wxGrid_SetCellTextFont(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellTextFont(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_SetCellTextFont(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellTextFont(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_SetCellTextFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetCellTextFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxFont * _arg1;
     int  _arg2;
     int  _arg3;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxFont * _arg1;
     int  _arg2;
     int  _arg3;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","font","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ssii:wxGrid_SetCellTextFont",&_argc0,&_argc1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOii:wxGrid_SetCellTextFont",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxFont_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxFont_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetCellTextFont. Expected _wxFont_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetCellTextFont. Expected _wxFont_p.");
         return NULL;
         }
@@ -2095,24 +2322,27 @@ static PyObject *_wrap_wxGrid_SetCellTextFont(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetDefCellTextFont(_swigobj,_swigarg0)  (_swigobj->SetCellTextFont(_swigarg0))
 }
 
 #define wxGrid_SetDefCellTextFont(_swigobj,_swigarg0)  (_swigobj->SetCellTextFont(_swigarg0))
-static PyObject *_wrap_wxGrid_SetDefCellTextFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetDefCellTextFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxFont * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxFont * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","font", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetDefCellTextFont",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetDefCellTextFont",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDefCellTextFont. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxFont_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxFont_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDefCellTextFont. Expected _wxFont_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDefCellTextFont. Expected _wxFont_p.");
         return NULL;
         }
@@ -2128,20 +2358,22 @@ static PyObject *_wrap_wxGrid_SetDefCellTextFont(PyObject *self, PyObject *args)
 }
 
 #define wxGrid_SetCellValue(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellValue(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_SetCellValue(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetCellValue(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_SetCellValue(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetCellValue(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxString * _arg1;
     int  _arg2;
     int  _arg3;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxString * _arg1;
     int  _arg2;
     int  _arg3;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
     PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","val","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sOii:wxGrid_SetCellValue",&_argc0,&_obj1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOii:wxGrid_SetCellValue",_kwnames,&_argo0,&_obj1,&_arg2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellValue. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetCellValue. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2168,18 +2400,20 @@ static PyObject *_wrap_wxGrid_SetCellValue(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetColumnWidth(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetColumnWidth(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_SetColumnWidth(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetColumnWidth(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_SetColumnWidth(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetColumnWidth(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","col","width", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_SetColumnWidth",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_SetColumnWidth",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetColumnWidth. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetColumnWidth. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2195,24 +2429,27 @@ static PyObject *_wrap_wxGrid_SetColumnWidth(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetDividerPen(_swigobj,_swigarg0)  (_swigobj->SetDividerPen(_swigarg0))
 }
 
 #define wxGrid_SetDividerPen(_swigobj,_swigarg0)  (_swigobj->SetDividerPen(_swigarg0))
-static PyObject *_wrap_wxGrid_SetDividerPen(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetDividerPen(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxPen * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxPen * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","pen", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetDividerPen",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetDividerPen",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDividerPen. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetDividerPen. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPen_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPen_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDividerPen. Expected _wxPen_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetDividerPen. Expected _wxPen_p.");
         return NULL;
         }
@@ -2228,18 +2465,20 @@ static PyObject *_wrap_wxGrid_SetDividerPen(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetEditable(_swigobj,_swigarg0)  (_swigobj->SetEditable(_swigarg0))
 }
 
 #define wxGrid_SetEditable(_swigobj,_swigarg0)  (_swigobj->SetEditable(_swigarg0))
-static PyObject *_wrap_wxGrid_SetEditable(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetEditable(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     bool  _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
     int tempbool1;
+    char *_kwnames[] = { "self","editable", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGrid_SetEditable",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGrid_SetEditable",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetEditable. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetEditable. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2256,18 +2495,20 @@ static PyObject *_wrap_wxGrid_SetEditable(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetGridCursor(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetGridCursor(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_SetGridCursor(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetGridCursor(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_SetGridCursor(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetGridCursor(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_SetGridCursor",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_SetGridCursor",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetGridCursor. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetGridCursor. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2283,18 +2524,20 @@ static PyObject *_wrap_wxGrid_SetGridCursor(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetLabelAlignment(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetLabelAlignment(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_SetLabelAlignment(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetLabelAlignment(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_SetLabelAlignment(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetLabelAlignment(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","orientation","alignment", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_SetLabelAlignment",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_SetLabelAlignment",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelAlignment. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelAlignment. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2310,24 +2553,27 @@ static PyObject *_wrap_wxGrid_SetLabelAlignment(PyObject *self, PyObject *args)
 }
 
 #define wxGrid_SetLabelBackgroundColour(_swigobj,_swigarg0)  (_swigobj->SetLabelBackgroundColour(_swigarg0))
 }
 
 #define wxGrid_SetLabelBackgroundColour(_swigobj,_swigarg0)  (_swigobj->SetLabelBackgroundColour(_swigarg0))
-static PyObject *_wrap_wxGrid_SetLabelBackgroundColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetLabelBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","value", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetLabelBackgroundColour",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetLabelBackgroundColour",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelBackgroundColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetLabelBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetLabelBackgroundColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -2343,18 +2589,20 @@ static PyObject *_wrap_wxGrid_SetLabelBackgroundColour(PyObject *self, PyObject
 }
 
 #define wxGrid_SetLabelSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetLabelSize(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_SetLabelSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetLabelSize(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_SetLabelSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetLabelSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","orientation","size", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_SetLabelSize",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_SetLabelSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelSize. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelSize. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2370,24 +2618,27 @@ static PyObject *_wrap_wxGrid_SetLabelSize(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetLabelTextColour(_swigobj,_swigarg0)  (_swigobj->SetLabelTextColour(_swigarg0))
 }
 
 #define wxGrid_SetLabelTextColour(_swigobj,_swigarg0)  (_swigobj->SetLabelTextColour(_swigarg0))
-static PyObject *_wrap_wxGrid_SetLabelTextColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetLabelTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxColour * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","value", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetLabelTextColour",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetLabelTextColour",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelTextColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelTextColour. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxColour_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxColour_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetLabelTextColour. Expected _wxColour_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetLabelTextColour. Expected _wxColour_p.");
         return NULL;
         }
@@ -2403,24 +2654,27 @@ static PyObject *_wrap_wxGrid_SetLabelTextColour(PyObject *self, PyObject *args)
 }
 
 #define wxGrid_SetLabelTextFont(_swigobj,_swigarg0)  (_swigobj->SetLabelTextFont(_swigarg0))
 }
 
 #define wxGrid_SetLabelTextFont(_swigobj,_swigarg0)  (_swigobj->SetLabelTextFont(_swigarg0))
-static PyObject *_wrap_wxGrid_SetLabelTextFont(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetLabelTextFont(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxFont * _arg1;
     PyObject * _resultobj;
     wxGrid * _arg0;
     wxFont * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","font", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGrid_SetLabelTextFont",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGrid_SetLabelTextFont",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelTextFont. Expected _wxGrid_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelTextFont. Expected _wxGrid_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxFont_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxFont_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetLabelTextFont. Expected _wxFont_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGrid_SetLabelTextFont. Expected _wxFont_p.");
         return NULL;
         }
@@ -2436,20 +2690,22 @@ static PyObject *_wrap_wxGrid_SetLabelTextFont(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetLabelValue(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetLabelValue(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxGrid_SetLabelValue(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SetLabelValue(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxGrid_SetLabelValue(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetLabelValue(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     wxString * _arg2;
     int  _arg3;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     wxString * _arg2;
     int  _arg3;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     PyObject * _obj2 = 0;
     PyObject * _obj2 = 0;
+    char *_kwnames[] = { "self","orientation","value","pos", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"siOi:wxGrid_SetLabelValue",&_argc0,&_arg1,&_obj2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OiOi:wxGrid_SetLabelValue",_kwnames,&_argo0,&_arg1,&_obj2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelValue. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetLabelValue. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2476,18 +2732,20 @@ static PyObject *_wrap_wxGrid_SetLabelValue(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetRowHeight(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetRowHeight(_swigarg0,_swigarg1))
 }
 
 #define wxGrid_SetRowHeight(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetRowHeight(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxGrid_SetRowHeight(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetRowHeight(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     wxGrid * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row","height", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxGrid_SetRowHeight",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxGrid_SetRowHeight",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetRowHeight. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetRowHeight. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2503,16 +2761,18 @@ static PyObject *_wrap_wxGrid_SetRowHeight(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_UpdateDimensions(_swigobj)  (_swigobj->UpdateDimensions())
 }
 
 #define wxGrid_UpdateDimensions(_swigobj)  (_swigobj->UpdateDimensions())
-static PyObject *_wrap_wxGrid_UpdateDimensions(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_UpdateDimensions(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_UpdateDimensions",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_UpdateDimensions",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_UpdateDimensions. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_UpdateDimensions. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2528,17 +2788,19 @@ static PyObject *_wrap_wxGrid_UpdateDimensions(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_GetEditInPlace(_swigobj)  (_swigobj->GetEditInPlace())
 }
 
 #define wxGrid_GetEditInPlace(_swigobj)  (_swigobj->GetEditInPlace())
-static PyObject *_wrap_wxGrid_GetEditInPlace(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_GetEditInPlace(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGrid * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGrid_GetEditInPlace",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGrid_GetEditInPlace",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetEditInPlace. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_GetEditInPlace. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2553,17 +2815,19 @@ static PyObject *_wrap_wxGrid_GetEditInPlace(PyObject *self, PyObject *args) {
 }
 
 #define wxGrid_SetEditInPlace(_swigobj,_swigarg0)  (_swigobj->SetEditInPlace(_swigarg0))
 }
 
 #define wxGrid_SetEditInPlace(_swigobj,_swigarg0)  (_swigobj->SetEditInPlace(_swigarg0))
-static PyObject *_wrap_wxGrid_SetEditInPlace(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGrid_SetEditInPlace(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGrid * _arg0;
     PyObject * _resultobj;
     wxGrid * _arg0;
-    int  _arg1 = (1);
-    char * _argc0 = 0;
+    int  _arg1 = (int ) TRUE;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","edit", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxGrid_SetEditInPlace",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxGrid_SetEditInPlace",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGrid_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetEditInPlace. Expected _wxGrid_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_SetEditInPlace. Expected _wxGrid_p.");
         return NULL;
         }
@@ -2587,18 +2851,20 @@ static void *SwigwxGridEventTowxEvent(void *ptr) {
 }
 
 #define wxGridEvent_m_row_set(_swigobj,_swigval) (_swigobj->m_row = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_row_set(_swigobj,_swigval) (_swigobj->m_row = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_row_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_row_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","m_row", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_row_set",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEvent_m_row_set",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_row_set. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_row_set. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2613,17 +2879,19 @@ static PyObject *_wrap_wxGridEvent_m_row_set(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_row_get(_swigobj) ((int ) _swigobj->m_row)
 }
 
 #define wxGridEvent_m_row_get(_swigobj) ((int ) _swigobj->m_row)
-static PyObject *_wrap_wxGridEvent_m_row_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_row_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_row_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_row_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_row_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_row_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2638,18 +2906,20 @@ static PyObject *_wrap_wxGridEvent_m_row_get(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_col_set(_swigobj,_swigval) (_swigobj->m_col = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_col_set(_swigobj,_swigval) (_swigobj->m_col = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_col_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_col_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","m_col", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_col_set",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEvent_m_col_set",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_col_set. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_col_set. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2664,17 +2934,19 @@ static PyObject *_wrap_wxGridEvent_m_col_set(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_col_get(_swigobj) ((int ) _swigobj->m_col)
 }
 
 #define wxGridEvent_m_col_get(_swigobj) ((int ) _swigobj->m_col)
-static PyObject *_wrap_wxGridEvent_m_col_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_col_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_col_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_col_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_col_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_col_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2689,18 +2961,20 @@ static PyObject *_wrap_wxGridEvent_m_col_get(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_x_set(_swigobj,_swigval) (_swigobj->m_x = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_x_set(_swigobj,_swigval) (_swigobj->m_x = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_x_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_x_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","m_x", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_x_set",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEvent_m_x_set",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_x_set. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_x_set. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2715,17 +2989,19 @@ static PyObject *_wrap_wxGridEvent_m_x_set(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_x_get(_swigobj) ((int ) _swigobj->m_x)
 }
 
 #define wxGridEvent_m_x_get(_swigobj) ((int ) _swigobj->m_x)
-static PyObject *_wrap_wxGridEvent_m_x_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_x_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_x_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_x_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_x_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_x_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2740,18 +3016,20 @@ static PyObject *_wrap_wxGridEvent_m_x_get(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_y_set(_swigobj,_swigval) (_swigobj->m_y = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_y_set(_swigobj,_swigval) (_swigobj->m_y = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_y_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_y_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","m_y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_y_set",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEvent_m_y_set",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_y_set. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_y_set. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2766,17 +3044,19 @@ static PyObject *_wrap_wxGridEvent_m_y_set(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_y_get(_swigobj) ((int ) _swigobj->m_y)
 }
 
 #define wxGridEvent_m_y_get(_swigobj) ((int ) _swigobj->m_y)
-static PyObject *_wrap_wxGridEvent_m_y_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_y_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_y_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_y_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_y_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_y_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2791,19 +3071,21 @@ static PyObject *_wrap_wxGridEvent_m_y_get(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_control_set(_swigobj,_swigval) (_swigobj->m_control = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_control_set(_swigobj,_swigval) (_swigobj->m_control = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_control_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_control_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     bool  _arg1;
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
     int tempbool1;
+    char *_kwnames[] = { "self","m_control", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_control_set",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEvent_m_control_set",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_control_set. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_control_set. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2819,17 +3101,19 @@ static PyObject *_wrap_wxGridEvent_m_control_set(PyObject *self, PyObject *args)
 }
 
 #define wxGridEvent_m_control_get(_swigobj) ((bool ) _swigobj->m_control)
 }
 
 #define wxGridEvent_m_control_get(_swigobj) ((bool ) _swigobj->m_control)
-static PyObject *_wrap_wxGridEvent_m_control_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_control_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_control_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_control_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_control_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_control_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2844,19 +3128,21 @@ static PyObject *_wrap_wxGridEvent_m_control_get(PyObject *self, PyObject *args)
 }
 
 #define wxGridEvent_m_shift_set(_swigobj,_swigval) (_swigobj->m_shift = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_shift_set(_swigobj,_swigval) (_swigobj->m_shift = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_shift_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_shift_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     bool  _arg1;
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
     int tempbool1;
+    char *_kwnames[] = { "self","m_shift", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_shift_set",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEvent_m_shift_set",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_shift_set. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_shift_set. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2872,17 +3158,19 @@ static PyObject *_wrap_wxGridEvent_m_shift_set(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_shift_get(_swigobj) ((bool ) _swigobj->m_shift)
 }
 
 #define wxGridEvent_m_shift_get(_swigobj) ((bool ) _swigobj->m_shift)
-static PyObject *_wrap_wxGridEvent_m_shift_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_shift_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_shift_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_shift_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_shift_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_shift_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2897,26 +3185,29 @@ static PyObject *_wrap_wxGridEvent_m_shift_get(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_m_cell_set(_swigobj,_swigval) (_swigobj->m_cell = _swigval,_swigval)
 }
 
 #define wxGridEvent_m_cell_set(_swigobj,_swigval) (_swigobj->m_cell = _swigval,_swigval)
-static PyObject *_wrap_wxGridEvent_m_cell_set(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_cell_set(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGridEvent * _arg0;
     wxGridCell * _arg1;
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGridEvent * _arg0;
     wxGridCell * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","m_cell", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxGridEvent_m_cell_set",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridEvent_m_cell_set",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_cell_set. Expected _wxGridEvent_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_cell_set. Expected _wxGridEvent_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxGridCell_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxGridCell_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridEvent_m_cell_set. Expected _wxGridCell_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridEvent_m_cell_set. Expected _wxGridCell_p.");
         return NULL;
         }
@@ -2926,24 +3217,31 @@ static PyObject *_wrap_wxGridEvent_m_cell_set(PyObject *self, PyObject *args) {
         _result = (wxGridCell *)wxGridEvent_m_cell_set(_arg0,_arg1);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxGridCell *)wxGridEvent_m_cell_set(_arg0,_arg1);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridEvent_m_cell_get(_swigobj) ((wxGridCell *) _swigobj->m_cell)
     return _resultobj;
 }
 
 #define wxGridEvent_m_cell_get(_swigobj) ((wxGridCell *) _swigobj->m_cell)
-static PyObject *_wrap_wxGridEvent_m_cell_get(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_m_cell_get(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_cell_get",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_m_cell_get",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_cell_get. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_cell_get. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2953,23 +3251,30 @@ static PyObject *_wrap_wxGridEvent_m_cell_get(PyObject *self, PyObject *args) {
         _result = (wxGridCell *)wxGridEvent_m_cell_get(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxGridCell *)wxGridEvent_m_cell_get(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxGridEvent_GetRow(_swigobj)  (_swigobj->GetRow())
     return _resultobj;
 }
 
 #define wxGridEvent_GetRow(_swigobj)  (_swigobj->GetRow())
-static PyObject *_wrap_wxGridEvent_GetRow(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_GetRow(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_GetRow",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_GetRow",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetRow. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetRow. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -2984,17 +3289,19 @@ static PyObject *_wrap_wxGridEvent_GetRow(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_GetCol(_swigobj)  (_swigobj->GetCol())
 }
 
 #define wxGridEvent_GetCol(_swigobj)  (_swigobj->GetCol())
-static PyObject *_wrap_wxGridEvent_GetCol(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_GetCol(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_GetCol",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_GetCol",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetCol. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetCol. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -3009,18 +3316,20 @@ static PyObject *_wrap_wxGridEvent_GetCol(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
 }
 
 #define wxGridEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
-static PyObject *_wrap_wxGridEvent_GetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPoint * _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     wxPoint * _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_GetPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_GetPosition",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetPosition. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetPosition. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -3036,17 +3345,19 @@ static PyObject *_wrap_wxGridEvent_GetPosition(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_ControlDown(_swigobj)  (_swigobj->ControlDown())
 }
 
 #define wxGridEvent_ControlDown(_swigobj)  (_swigobj->ControlDown())
-static PyObject *_wrap_wxGridEvent_ControlDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_ControlDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_ControlDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_ControlDown",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_ControlDown. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_ControlDown. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -3061,17 +3372,19 @@ static PyObject *_wrap_wxGridEvent_ControlDown(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_ShiftDown(_swigobj)  (_swigobj->ShiftDown())
 }
 
 #define wxGridEvent_ShiftDown(_swigobj)  (_swigobj->ShiftDown())
-static PyObject *_wrap_wxGridEvent_ShiftDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_ShiftDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_ShiftDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_ShiftDown",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_ShiftDown. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_ShiftDown. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -3086,18 +3399,20 @@ static PyObject *_wrap_wxGridEvent_ShiftDown(PyObject *self, PyObject *args) {
 }
 
 #define wxGridEvent_GetCell(_swigobj)  (_swigobj->GetCell())
 }
 
 #define wxGridEvent_GetCell(_swigobj)  (_swigobj->GetCell())
-static PyObject *_wrap_wxGridEvent_GetCell(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGridEvent_GetCell(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGridEvent * _arg0;
     PyObject * _resultobj;
     wxGridCell * _result;
     wxGridEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxGridEvent_GetCell",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEvent_GetCell",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetCell. Expected _wxGridEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_GetCell. Expected _wxGridEvent_p.");
         return NULL;
         }
@@ -3107,8 +3422,13 @@ static PyObject *_wrap_wxGridEvent_GetCell(PyObject *self, PyObject *args) {
         _result = (wxGridCell *)wxGridEvent_GetCell(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxGridCell *)wxGridEvent_GetCell(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
     return _resultobj;
 }
 
@@ -3137,17 +3457,19 @@ static void *SwigwxNotebookEventTowxEvent(void *ptr) {
 }
 
 #define wxNotebookEvent_GetSelection(_swigobj)  (_swigobj->GetSelection())
 }
 
 #define wxNotebookEvent_GetSelection(_swigobj)  (_swigobj->GetSelection())
-static PyObject *_wrap_wxNotebookEvent_GetSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebookEvent_GetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebookEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxNotebookEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebookEvent_GetSelection",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebookEvent_GetSelection",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebookEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
@@ -3162,17 +3484,19 @@ static PyObject *_wrap_wxNotebookEvent_GetSelection(PyObject *self, PyObject *ar
 }
 
 #define wxNotebookEvent_GetOldSelection(_swigobj)  (_swigobj->GetOldSelection())
 }
 
 #define wxNotebookEvent_GetOldSelection(_swigobj)  (_swigobj->GetOldSelection())
-static PyObject *_wrap_wxNotebookEvent_GetOldSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebookEvent_GetOldSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebookEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxNotebookEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebookEvent_GetOldSelection",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebookEvent_GetOldSelection",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebookEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetOldSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetOldSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
@@ -3187,17 +3511,19 @@ static PyObject *_wrap_wxNotebookEvent_GetOldSelection(PyObject *self, PyObject
 }
 
 #define wxNotebookEvent_SetOldSelection(_swigobj,_swigarg0)  (_swigobj->SetOldSelection(_swigarg0))
 }
 
 #define wxNotebookEvent_SetOldSelection(_swigobj,_swigarg0)  (_swigobj->SetOldSelection(_swigarg0))
-static PyObject *_wrap_wxNotebookEvent_SetOldSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebookEvent_SetOldSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxNotebookEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxNotebookEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","page", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebookEvent_SetOldSelection",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebookEvent_SetOldSelection",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebookEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_SetOldSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_SetOldSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
@@ -3213,17 +3539,19 @@ static PyObject *_wrap_wxNotebookEvent_SetOldSelection(PyObject *self, PyObject
 }
 
 #define wxNotebookEvent_SetSelection(_swigobj,_swigarg0)  (_swigobj->SetSelection(_swigarg0))
 }
 
 #define wxNotebookEvent_SetSelection(_swigobj,_swigarg0)  (_swigobj->SetSelection(_swigarg0))
-static PyObject *_wrap_wxNotebookEvent_SetSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebookEvent_SetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxNotebookEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxNotebookEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","page", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebookEvent_SetSelection",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebookEvent_SetSelection",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebookEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_SetSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_SetSelection. Expected _wxNotebookEvent_p.");
         return NULL;
         }
@@ -3263,63 +3591,74 @@ static void *SwigwxNotebookTowxEvtHandler(void *ptr) {
 }
 
 #define new_wxNotebook(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxNotebook(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
 }
 
 #define new_wxNotebook(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxNotebook(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
-static PyObject *_wrap_new_wxNotebook(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxNotebook(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxNotebook * _result;
     wxWindow * _arg0;
     wxWindowID  _arg1;
     PyObject * _resultobj;
     wxNotebook * _result;
     wxWindow * _arg0;
     wxWindowID  _arg1;
-    wxPoint * _arg2 = &wxPyDefaultPosition;
-    wxSize * _arg3 = &wxPyDefaultSize;
-    long  _arg4 = 0;
-    char * _arg5 = "notebook";
-    char * _argc0 = 0;
-    char * _argc2 = 0;
-    char * _argc3 = 0;
+    wxPoint * _arg2 = (wxPoint *) &wxPyDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxPyDefaultSize;
+    long  _arg4 = (long ) 0;
+    char * _arg5 = (char *) "notebook";
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
+    wxSize  temp0;
+    PyObject * _obj3 = 0;
+    char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si|ssls:new_wxNotebook",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOls:new_wxNotebook",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_arg5)) 
         return NULL;
         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_wxNotebook. Expected _wxWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxNotebook. Expected _wxWindow_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxNotebook. Expected _wxPoint_p.");
+    if (_obj2)
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxSize_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of new_wxNotebook. Expected _wxSize_p.");
+}
+    if (_obj3)
+{
+    _arg3 = &temp0;
+    if (! wxSize_helper(_obj3, &_arg3))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxNotebook *)new_wxNotebook(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxNotebook *)new_wxNotebook(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebook_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebook_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxNotebook_GetPageCount(_swigobj)  (_swigobj->GetPageCount())
     return _resultobj;
 }
 
 #define wxNotebook_GetPageCount(_swigobj)  (_swigobj->GetPageCount())
-static PyObject *_wrap_wxNotebook_GetPageCount(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetPageCount(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebook_GetPageCount",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebook_GetPageCount",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPageCount. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPageCount. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3334,18 +3673,20 @@ static PyObject *_wrap_wxNotebook_GetPageCount(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_SetSelection(_swigobj,_swigarg0)  (_swigobj->SetSelection(_swigarg0))
 }
 
 #define wxNotebook_SetSelection(_swigobj,_swigarg0)  (_swigobj->SetSelection(_swigarg0))
-static PyObject *_wrap_wxNotebook_SetSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_SetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebook_SetSelection",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebook_SetSelection",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetSelection. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetSelection. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3360,18 +3701,20 @@ static PyObject *_wrap_wxNotebook_SetSelection(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_AdvanceSelection(_swigobj,_swigarg0)  (_swigobj->AdvanceSelection(_swigarg0))
 }
 
 #define wxNotebook_AdvanceSelection(_swigobj,_swigarg0)  (_swigobj->AdvanceSelection(_swigarg0))
-static PyObject *_wrap_wxNotebook_AdvanceSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_AdvanceSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     wxNotebook * _arg0;
-    bool  _arg1 = (1);
-    char * _argc0 = 0;
-    int tempbool1;
+    bool  _arg1 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool1 = (int) TRUE;
+    char *_kwnames[] = { "self","bForward", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxNotebook_AdvanceSelection",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxNotebook_AdvanceSelection",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_AdvanceSelection. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_AdvanceSelection. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3388,17 +3731,19 @@ static PyObject *_wrap_wxNotebook_AdvanceSelection(PyObject *self, PyObject *arg
 }
 
 #define wxNotebook_GetSelection(_swigobj)  (_swigobj->GetSelection())
 }
 
 #define wxNotebook_GetSelection(_swigobj)  (_swigobj->GetSelection())
-static PyObject *_wrap_wxNotebook_GetSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebook_GetSelection",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebook_GetSelection",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetSelection. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetSelection. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3413,20 +3758,22 @@ static PyObject *_wrap_wxNotebook_GetSelection(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_SetPageText(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetPageText(_swigarg0,_swigarg1))
 }
 
 #define wxNotebook_SetPageText(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetPageText(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxNotebook_SetPageText(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_SetPageText(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     wxString * _arg2;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     wxString * _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     PyObject * _obj2 = 0;
     PyObject * _obj2 = 0;
+    char *_kwnames[] = { "self","nPage","strText", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"siO:wxNotebook_SetPageText",&_argc0,&_arg1,&_obj2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OiO:wxNotebook_SetPageText",_kwnames,&_argo0,&_arg1,&_obj2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetPageText. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetPageText. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3452,18 +3799,20 @@ static PyObject *_wrap_wxNotebook_SetPageText(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_GetPageText(_swigobj,_swigarg0)  (_swigobj->GetPageText(_swigarg0))
 }
 
 #define wxNotebook_GetPageText(_swigobj,_swigarg0)  (_swigobj->GetPageText(_swigarg0))
-static PyObject *_wrap_wxNotebook_GetPageText(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetPageText(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxString * _result;
     wxNotebook * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxString * _result;
     wxNotebook * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebook_GetPageText",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebook_GetPageText",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPageText. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPageText. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3474,7 +3823,7 @@ static PyObject *_wrap_wxNotebook_GetPageText(PyObject *self, PyObject *args) {
 
     wxPy_END_ALLOW_THREADS;
 }{
 
     wxPy_END_ALLOW_THREADS;
 }{
-    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+    _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
 }
 {
     delete _result;
 }
 {
     delete _result;
@@ -3483,24 +3832,27 @@ static PyObject *_wrap_wxNotebook_GetPageText(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_SetImageList(_swigobj,_swigarg0)  (_swigobj->SetImageList(_swigarg0))
 }
 
 #define wxNotebook_SetImageList(_swigobj,_swigarg0)  (_swigobj->SetImageList(_swigarg0))
-static PyObject *_wrap_wxNotebook_SetImageList(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_SetImageList(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxNotebook * _arg0;
     wxImageList * _arg1;
     PyObject * _resultobj;
     wxNotebook * _arg0;
     wxImageList * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","imageList", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxNotebook_SetImageList",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxNotebook_SetImageList",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetImageList. Expected _wxNotebook_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetImageList. Expected _wxNotebook_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxImageList_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxImageList_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxNotebook_SetImageList. Expected _wxImageList_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxNotebook_SetImageList. Expected _wxImageList_p.");
         return NULL;
         }
@@ -3516,18 +3868,20 @@ static PyObject *_wrap_wxNotebook_SetImageList(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_GetImageList(_swigobj)  (_swigobj->GetImageList())
 }
 
 #define wxNotebook_GetImageList(_swigobj)  (_swigobj->GetImageList())
-static PyObject *_wrap_wxNotebook_GetImageList(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetImageList(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxImageList * _result;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     wxImageList * _result;
     wxNotebook * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebook_GetImageList",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebook_GetImageList",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetImageList. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetImageList. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3537,24 +3891,31 @@ static PyObject *_wrap_wxNotebook_GetImageList(PyObject *self, PyObject *args) {
         _result = (wxImageList *)wxNotebook_GetImageList(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxImageList *)wxNotebook_GetImageList(_arg0);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxNotebook_GetPageImage(_swigobj,_swigarg0)  (_swigobj->GetPageImage(_swigarg0))
     return _resultobj;
 }
 
 #define wxNotebook_GetPageImage(_swigobj,_swigarg0)  (_swigobj->GetPageImage(_swigarg0))
-static PyObject *_wrap_wxNotebook_GetPageImage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetPageImage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebook_GetPageImage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebook_GetPageImage",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPageImage. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPageImage. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3569,19 +3930,21 @@ static PyObject *_wrap_wxNotebook_GetPageImage(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_SetPageImage(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetPageImage(_swigarg0,_swigarg1))
 }
 
 #define wxNotebook_SetPageImage(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetPageImage(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxNotebook_SetPageImage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_SetPageImage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     int  _arg2;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     int  _arg2;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage","nImage", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sii:wxNotebook_SetPageImage",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxNotebook_SetPageImage",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetPageImage. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_SetPageImage. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3596,17 +3959,19 @@ static PyObject *_wrap_wxNotebook_SetPageImage(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_GetRowCount(_swigobj)  (_swigobj->GetRowCount())
 }
 
 #define wxNotebook_GetRowCount(_swigobj)  (_swigobj->GetRowCount())
-static PyObject *_wrap_wxNotebook_GetRowCount(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetRowCount(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxNotebook * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebook_GetRowCount",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebook_GetRowCount",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetRowCount. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetRowCount. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3621,18 +3986,20 @@ static PyObject *_wrap_wxNotebook_GetRowCount(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_DeletePage(_swigobj,_swigarg0)  (_swigobj->DeletePage(_swigarg0))
 }
 
 #define wxNotebook_DeletePage(_swigobj,_swigarg0)  (_swigobj->DeletePage(_swigarg0))
-static PyObject *_wrap_wxNotebook_DeletePage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_DeletePage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebook_DeletePage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebook_DeletePage",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_DeletePage. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_DeletePage. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3647,18 +4014,20 @@ static PyObject *_wrap_wxNotebook_DeletePage(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_RemovePage(_swigobj,_swigarg0)  (_swigobj->RemovePage(_swigarg0))
 }
 
 #define wxNotebook_RemovePage(_swigobj,_swigarg0)  (_swigobj->RemovePage(_swigarg0))
-static PyObject *_wrap_wxNotebook_RemovePage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_RemovePage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebook_RemovePage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebook_RemovePage",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_RemovePage. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_RemovePage. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3673,17 +4042,19 @@ static PyObject *_wrap_wxNotebook_RemovePage(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_DeleteAllPages(_swigobj)  (_swigobj->DeleteAllPages())
 }
 
 #define wxNotebook_DeleteAllPages(_swigobj)  (_swigobj->DeleteAllPages())
-static PyObject *_wrap_wxNotebook_DeleteAllPages(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_DeleteAllPages(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebook_DeleteAllPages",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebook_DeleteAllPages",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_DeleteAllPages. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_DeleteAllPages. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3698,29 +4069,32 @@ static PyObject *_wrap_wxNotebook_DeleteAllPages(PyObject *self, PyObject *args)
 }
 
 #define wxNotebook_AddPage(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->AddPage(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
 }
 
 #define wxNotebook_AddPage(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->AddPage(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
-static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     wxWindow * _arg1;
     wxString * _arg2;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     wxWindow * _arg1;
     wxString * _arg2;
-    int  _arg3 = (0);
-    int  _arg4 = -1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    int  _arg3 = (int ) FALSE;
+    int  _arg4 = (int ) -1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
     PyObject * _obj2 = 0;
     PyObject * _obj2 = 0;
+    char *_kwnames[] = { "self","pPage","strText","bSelect","imageId", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ssO|ii:wxNotebook_AddPage",&_argc0,&_argc1,&_obj2,&_arg3,&_arg4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO|ii:wxNotebook_AddPage",_kwnames,&_argo0,&_argo1,&_obj2,&_arg3,&_arg4)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_AddPage. Expected _wxNotebook_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_AddPage. Expected _wxNotebook_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxNotebook_AddPage. Expected _wxWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxNotebook_AddPage. Expected _wxWindow_p.");
         return NULL;
         }
@@ -3746,31 +4120,34 @@ static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_InsertPage(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->InsertPage(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
 }
 
 #define wxNotebook_InsertPage(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->InsertPage(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
-static PyObject *_wrap_wxNotebook_InsertPage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_InsertPage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     wxWindow * _arg2;
     wxString * _arg3;
     PyObject * _resultobj;
     bool  _result;
     wxNotebook * _arg0;
     int  _arg1;
     wxWindow * _arg2;
     wxString * _arg3;
-    bool  _arg4 = (0);
-    int  _arg5 = -1;
-    char * _argc0 = 0;
-    char * _argc2 = 0;
+    bool  _arg4 = (bool ) FALSE;
+    int  _arg5 = (int ) -1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo2 = 0;
     PyObject * _obj3 = 0;
     PyObject * _obj3 = 0;
-    int tempbool4;
+    int tempbool4 = (int) FALSE;
+    char *_kwnames[] = { "self","nPage","pPage","strText","bSelect","imageId", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sisO|ii:wxNotebook_InsertPage",&_argc0,&_arg1,&_argc2,&_obj3,&tempbool4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OiOO|ii:wxNotebook_InsertPage",_kwnames,&_argo0,&_arg1,&_argo2,&_obj3,&tempbool4,&_arg5)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_InsertPage. Expected _wxNotebook_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_InsertPage. Expected _wxNotebook_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxWindow_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxNotebook_InsertPage. Expected _wxWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxNotebook_InsertPage. Expected _wxWindow_p.");
         return NULL;
         }
@@ -3797,19 +4174,21 @@ static PyObject *_wrap_wxNotebook_InsertPage(PyObject *self, PyObject *args) {
 }
 
 #define wxNotebook_GetPage(_swigobj,_swigarg0)  (_swigobj->GetPage(_swigarg0))
 }
 
 #define wxNotebook_GetPage(_swigobj,_swigarg0)  (_swigobj->GetPage(_swigarg0))
-static PyObject *_wrap_wxNotebook_GetPage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_GetPage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxWindow * _result;
     wxNotebook * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxWindow * _result;
     wxNotebook * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","nPage", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxNotebook_GetPage",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxNotebook_GetPage",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPage. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_GetPage. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3819,8 +4198,13 @@ static PyObject *_wrap_wxNotebook_GetPage(PyObject *self, PyObject *args) {
         _result = (wxWindow *)wxNotebook_GetPage(_arg0,_arg1);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxWindow *)wxNotebook_GetPage(_arg0,_arg1);
 
     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;
 }
 
     return _resultobj;
 }
 
@@ -3828,16 +4212,18 @@ static void  wxNotebook_ResizeChildren(wxNotebook *self) {
             wxSizeEvent evt(self->GetClientSize());
             self->GetEventHandler()->ProcessEvent(evt);
         }
             wxSizeEvent evt(self->GetClientSize());
             self->GetEventHandler()->ProcessEvent(evt);
         }
-static PyObject *_wrap_wxNotebook_ResizeChildren(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxNotebook_ResizeChildren(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxNotebook * _arg0;
     PyObject * _resultobj;
     wxNotebook * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebook_ResizeChildren",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotebook_ResizeChildren",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotebook_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_ResizeChildren. Expected _wxNotebook_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_ResizeChildren. Expected _wxNotebook_p.");
         return NULL;
         }
@@ -3869,17 +4255,19 @@ static void *SwigwxSplitterEventTowxEvent(void *ptr) {
 }
 
 #define wxSplitterEvent_GetSashPosition(_swigobj)  (_swigobj->GetSashPosition())
 }
 
 #define wxSplitterEvent_GetSashPosition(_swigobj)  (_swigobj->GetSashPosition())
-static PyObject *_wrap_wxSplitterEvent_GetSashPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterEvent_GetSashPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetSashPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterEvent_GetSashPosition",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetSashPosition. Expected _wxSplitterEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetSashPosition. Expected _wxSplitterEvent_p.");
         return NULL;
         }
@@ -3894,17 +4282,19 @@ static PyObject *_wrap_wxSplitterEvent_GetSashPosition(PyObject *self, PyObject
 }
 
 #define wxSplitterEvent_GetX(_swigobj)  (_swigobj->GetX())
 }
 
 #define wxSplitterEvent_GetX(_swigobj)  (_swigobj->GetX())
-static PyObject *_wrap_wxSplitterEvent_GetX(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterEvent_GetX(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetX",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterEvent_GetX",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetX. Expected _wxSplitterEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetX. Expected _wxSplitterEvent_p.");
         return NULL;
         }
@@ -3919,17 +4309,19 @@ static PyObject *_wrap_wxSplitterEvent_GetX(PyObject *self, PyObject *args) {
 }
 
 #define wxSplitterEvent_GetY(_swigobj)  (_swigobj->GetY())
 }
 
 #define wxSplitterEvent_GetY(_swigobj)  (_swigobj->GetY())
-static PyObject *_wrap_wxSplitterEvent_GetY(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterEvent_GetY(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterEvent * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetY",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterEvent_GetY",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetY. Expected _wxSplitterEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetY. Expected _wxSplitterEvent_p.");
         return NULL;
         }
@@ -3944,18 +4336,20 @@ static PyObject *_wrap_wxSplitterEvent_GetY(PyObject *self, PyObject *args) {
 }
 
 #define wxSplitterEvent_GetWindowBeingRemoved(_swigobj)  (_swigobj->GetWindowBeingRemoved())
 }
 
 #define wxSplitterEvent_GetWindowBeingRemoved(_swigobj)  (_swigobj->GetWindowBeingRemoved())
-static PyObject *_wrap_wxSplitterEvent_GetWindowBeingRemoved(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterEvent_GetWindowBeingRemoved(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxWindow * _result;
     wxSplitterEvent * _arg0;
     PyObject * _resultobj;
     wxWindow * _result;
     wxSplitterEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetWindowBeingRemoved",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterEvent_GetWindowBeingRemoved",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetWindowBeingRemoved. Expected _wxSplitterEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetWindowBeingRemoved. Expected _wxSplitterEvent_p.");
         return NULL;
         }
@@ -3965,23 +4359,30 @@ static PyObject *_wrap_wxSplitterEvent_GetWindowBeingRemoved(PyObject *self, PyO
         _result = (wxWindow *)wxSplitterEvent_GetWindowBeingRemoved(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxWindow *)wxSplitterEvent_GetWindowBeingRemoved(_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;
 }
 
 #define wxSplitterEvent_SetSashPosition(_swigobj,_swigarg0)  (_swigobj->SetSashPosition(_swigarg0))
     return _resultobj;
 }
 
 #define wxSplitterEvent_SetSashPosition(_swigobj,_swigarg0)  (_swigobj->SetSashPosition(_swigarg0))
-static PyObject *_wrap_wxSplitterEvent_SetSashPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterEvent_SetSashPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterEvent * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxSplitterEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","pos", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxSplitterEvent_SetSashPosition",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxSplitterEvent_SetSashPosition",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_SetSashPosition. Expected _wxSplitterEvent_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_SetSashPosition. Expected _wxSplitterEvent_p.");
         return NULL;
         }
@@ -4013,63 +4414,74 @@ static void *SwigwxSplitterWindowTowxEvtHandler(void *ptr) {
 }
 
 #define new_wxSplitterWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxSplitterWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
 }
 
 #define new_wxSplitterWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxSplitterWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
-static PyObject *_wrap_new_wxSplitterWindow(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxSplitterWindow(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _result;
     wxWindow * _arg0;
     wxWindowID  _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _result;
     wxWindow * _arg0;
     wxWindowID  _arg1;
-    wxPoint * _arg2 = &wxPyDefaultPosition;
-    wxSize * _arg3 = &wxPyDefaultSize;
-    long  _arg4 = (wxSP_3D)|(wxCLIP_CHILDREN);
-    char * _arg5 = "splitterWindow";
-    char * _argc0 = 0;
-    char * _argc2 = 0;
-    char * _argc3 = 0;
+    wxPoint * _arg2 = (wxPoint *) &wxPyDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxPyDefaultSize;
+    long  _arg4 = (long ) wxSP_3D|wxCLIP_CHILDREN;
+    char * _arg5 = (char *) "splitterWindow";
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
+    wxSize  temp0;
+    PyObject * _obj3 = 0;
+    char *_kwnames[] = { "parent","id","point","size","style","name", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si|ssls:new_wxSplitterWindow",&_argc0,&_arg1,&_argc2,&_argc3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOls:new_wxSplitterWindow",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_arg5)) 
         return NULL;
         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_wxSplitterWindow. Expected _wxWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxSplitterWindow. Expected _wxWindow_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxSplitterWindow. Expected _wxPoint_p.");
+    if (_obj2)
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argc3) {
-        if (SWIG_GetPtr(_argc3,(void **) &_arg3,"_wxSize_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of new_wxSplitterWindow. Expected _wxSize_p.");
+}
+    if (_obj3)
+{
+    _arg3 = &temp0;
+    if (! wxSize_helper(_obj3, &_arg3))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxSplitterWindow *)new_wxSplitterWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxSplitterWindow *)new_wxSplitterWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSplitterWindow_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxSplitterWindow_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxSplitterWindow_GetBorderSize(_swigobj)  (_swigobj->GetBorderSize())
     return _resultobj;
 }
 
 #define wxSplitterWindow_GetBorderSize(_swigobj)  (_swigobj->GetBorderSize())
-static PyObject *_wrap_wxSplitterWindow_GetBorderSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetBorderSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetBorderSize",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetBorderSize",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetBorderSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetBorderSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4084,17 +4496,19 @@ static PyObject *_wrap_wxSplitterWindow_GetBorderSize(PyObject *self, PyObject *
 }
 
 #define wxSplitterWindow_GetMinimumPaneSize(_swigobj)  (_swigobj->GetMinimumPaneSize())
 }
 
 #define wxSplitterWindow_GetMinimumPaneSize(_swigobj)  (_swigobj->GetMinimumPaneSize())
-static PyObject *_wrap_wxSplitterWindow_GetMinimumPaneSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetMinimumPaneSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetMinimumPaneSize",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetMinimumPaneSize",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetMinimumPaneSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetMinimumPaneSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4109,17 +4523,19 @@ static PyObject *_wrap_wxSplitterWindow_GetMinimumPaneSize(PyObject *self, PyObj
 }
 
 #define wxSplitterWindow_GetSashPosition(_swigobj)  (_swigobj->GetSashPosition())
 }
 
 #define wxSplitterWindow_GetSashPosition(_swigobj)  (_swigobj->GetSashPosition())
-static PyObject *_wrap_wxSplitterWindow_GetSashPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetSashPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetSashPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetSashPosition",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSashPosition. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSashPosition. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4134,17 +4550,19 @@ static PyObject *_wrap_wxSplitterWindow_GetSashPosition(PyObject *self, PyObject
 }
 
 #define wxSplitterWindow_GetSashSize(_swigobj)  (_swigobj->GetSashSize())
 }
 
 #define wxSplitterWindow_GetSashSize(_swigobj)  (_swigobj->GetSashSize())
-static PyObject *_wrap_wxSplitterWindow_GetSashSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetSashSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetSashSize",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetSashSize",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSashSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSashSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4159,17 +4577,19 @@ static PyObject *_wrap_wxSplitterWindow_GetSashSize(PyObject *self, PyObject *ar
 }
 
 #define wxSplitterWindow_GetSplitMode(_swigobj)  (_swigobj->GetSplitMode())
 }
 
 #define wxSplitterWindow_GetSplitMode(_swigobj)  (_swigobj->GetSplitMode())
-static PyObject *_wrap_wxSplitterWindow_GetSplitMode(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetSplitMode(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     int  _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetSplitMode",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetSplitMode",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSplitMode. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSplitMode. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4184,18 +4604,20 @@ static PyObject *_wrap_wxSplitterWindow_GetSplitMode(PyObject *self, PyObject *a
 }
 
 #define wxSplitterWindow_GetWindow1(_swigobj)  (_swigobj->GetWindow1())
 }
 
 #define wxSplitterWindow_GetWindow1(_swigobj)  (_swigobj->GetWindow1())
-static PyObject *_wrap_wxSplitterWindow_GetWindow1(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetWindow1(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxWindow * _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     wxWindow * _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetWindow1",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetWindow1",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetWindow1. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetWindow1. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4205,24 +4627,31 @@ static PyObject *_wrap_wxSplitterWindow_GetWindow1(PyObject *self, PyObject *arg
         _result = (wxWindow *)wxSplitterWindow_GetWindow1(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxWindow *)wxSplitterWindow_GetWindow1(_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;
 }
 
 #define wxSplitterWindow_GetWindow2(_swigobj)  (_swigobj->GetWindow2())
     return _resultobj;
 }
 
 #define wxSplitterWindow_GetWindow2(_swigobj)  (_swigobj->GetWindow2())
-static PyObject *_wrap_wxSplitterWindow_GetWindow2(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_GetWindow2(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxWindow * _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     wxWindow * _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetWindow2",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_GetWindow2",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetWindow2. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetWindow2. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4232,30 +4661,38 @@ static PyObject *_wrap_wxSplitterWindow_GetWindow2(PyObject *self, PyObject *arg
         _result = (wxWindow *)wxSplitterWindow_GetWindow2(_arg0);
 
     wxPy_END_ALLOW_THREADS;
         _result = (wxWindow *)wxSplitterWindow_GetWindow2(_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;
 }
 
 #define wxSplitterWindow_Initialize(_swigobj,_swigarg0)  (_swigobj->Initialize(_swigarg0))
     return _resultobj;
 }
 
 #define wxSplitterWindow_Initialize(_swigobj,_swigarg0)  (_swigobj->Initialize(_swigarg0))
-static PyObject *_wrap_wxSplitterWindow_Initialize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_Initialize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     wxWindow * _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     wxWindow * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","window", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxSplitterWindow_Initialize",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxSplitterWindow_Initialize",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_Initialize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_Initialize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_Initialize. Expected _wxWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_Initialize. Expected _wxWindow_p.");
         return NULL;
         }
@@ -4271,17 +4708,19 @@ static PyObject *_wrap_wxSplitterWindow_Initialize(PyObject *self, PyObject *arg
 }
 
 #define wxSplitterWindow_IsSplit(_swigobj)  (_swigobj->IsSplit())
 }
 
 #define wxSplitterWindow_IsSplit(_swigobj)  (_swigobj->IsSplit())
-static PyObject *_wrap_wxSplitterWindow_IsSplit(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_IsSplit(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_IsSplit",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSplitterWindow_IsSplit",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_IsSplit. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_IsSplit. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4295,18 +4734,65 @@ static PyObject *_wrap_wxSplitterWindow_IsSplit(PyObject *self, PyObject *args)
     return _resultobj;
 }
 
     return _resultobj;
 }
 
+#define wxSplitterWindow_ReplaceWindow(_swigobj,_swigarg0,_swigarg1)  (_swigobj->ReplaceWindow(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxSplitterWindow_ReplaceWindow(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxSplitterWindow * _arg0;
+    wxWindow * _arg1;
+    wxWindow * _arg2;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    PyObject * _argo2 = 0;
+    char *_kwnames[] = { "self","winOld","winNew", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxSplitterWindow_ReplaceWindow",_kwnames,&_argo0,&_argo1,&_argo2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_ReplaceWindow. Expected _wxSplitterWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_ReplaceWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxSplitterWindow_ReplaceWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_ReplaceWindow(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
 #define wxSplitterWindow_SetBorderSize(_swigobj,_swigarg0)  (_swigobj->SetBorderSize(_swigarg0))
 #define wxSplitterWindow_SetBorderSize(_swigobj,_swigarg0)  (_swigobj->SetBorderSize(_swigarg0))
-static PyObject *_wrap_wxSplitterWindow_SetBorderSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SetBorderSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","width", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxSplitterWindow_SetBorderSize",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxSplitterWindow_SetBorderSize",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetBorderSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetBorderSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4322,18 +4808,20 @@ static PyObject *_wrap_wxSplitterWindow_SetBorderSize(PyObject *self, PyObject *
 }
 
 #define wxSplitterWindow_SetSashPosition(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetSashPosition(_swigarg0,_swigarg1))
 }
 
 #define wxSplitterWindow_SetSashPosition(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetSashPosition(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxSplitterWindow_SetSashPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SetSashPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
-    int  _arg2 = (1);
-    char * _argc0 = 0;
+    int  _arg2 = (int ) TRUE;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","position","redraw", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si|i:wxSplitterWindow_SetSashPosition",&_argc0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|i:wxSplitterWindow_SetSashPosition",_kwnames,&_argo0,&_arg1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSashPosition. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSashPosition. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4349,17 +4837,19 @@ static PyObject *_wrap_wxSplitterWindow_SetSashPosition(PyObject *self, PyObject
 }
 
 #define wxSplitterWindow_SetSashSize(_swigobj,_swigarg0)  (_swigobj->SetSashSize(_swigarg0))
 }
 
 #define wxSplitterWindow_SetSashSize(_swigobj,_swigarg0)  (_swigobj->SetSashSize(_swigarg0))
-static PyObject *_wrap_wxSplitterWindow_SetSashSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SetSashSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","width", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxSplitterWindow_SetSashSize",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxSplitterWindow_SetSashSize",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSashSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSashSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4375,17 +4865,19 @@ static PyObject *_wrap_wxSplitterWindow_SetSashSize(PyObject *self, PyObject *ar
 }
 
 #define wxSplitterWindow_SetMinimumPaneSize(_swigobj,_swigarg0)  (_swigobj->SetMinimumPaneSize(_swigarg0))
 }
 
 #define wxSplitterWindow_SetMinimumPaneSize(_swigobj,_swigarg0)  (_swigobj->SetMinimumPaneSize(_swigarg0))
-static PyObject *_wrap_wxSplitterWindow_SetMinimumPaneSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SetMinimumPaneSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","paneSize", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxSplitterWindow_SetMinimumPaneSize",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxSplitterWindow_SetMinimumPaneSize",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetMinimumPaneSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetMinimumPaneSize. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4401,17 +4893,19 @@ static PyObject *_wrap_wxSplitterWindow_SetMinimumPaneSize(PyObject *self, PyObj
 }
 
 #define wxSplitterWindow_SetSplitMode(_swigobj,_swigarg0)  (_swigobj->SetSplitMode(_swigarg0))
 }
 
 #define wxSplitterWindow_SetSplitMode(_swigobj,_swigarg0)  (_swigobj->SetSplitMode(_swigarg0))
-static PyObject *_wrap_wxSplitterWindow_SetSplitMode(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SetSplitMode(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
     PyObject * _resultobj;
     wxSplitterWindow * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxSplitterWindow_SetSplitMode",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxSplitterWindow_SetSplitMode",_kwnames,&_argo0,&_arg1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSplitMode. Expected _wxSplitterWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSplitMode. Expected _wxSplitterWindow_p.");
         return NULL;
         }
@@ -4427,34 +4921,38 @@ static PyObject *_wrap_wxSplitterWindow_SetSplitMode(PyObject *self, PyObject *a
 }
 
 #define wxSplitterWindow_SplitHorizontally(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SplitHorizontally(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxSplitterWindow_SplitHorizontally(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SplitHorizontally(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxSplitterWindow_SplitHorizontally(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SplitHorizontally(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
     wxWindow * _arg1;
     wxWindow * _arg2;
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
     wxWindow * _arg1;
     wxWindow * _arg2;
-    int  _arg3 = 0;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
-    char * _argc2 = 0;
+    int  _arg3 = (int ) 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    PyObject * _argo2 = 0;
+    char *_kwnames[] = { "self","window1","window2","sashPosition", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sss|i:wxSplitterWindow_SplitHorizontally",&_argc0,&_argc1,&_argc2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO|i:wxSplitterWindow_SplitHorizontally",_kwnames,&_argo0,&_argo1,&_argo2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SplitHorizontally. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SplitHorizontally. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_SplitHorizontally. Expected _wxWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_SplitHorizontally. Expected _wxWindow_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxWindow_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxSplitterWindow_SplitHorizontally. Expected _wxWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxSplitterWindow_SplitHorizontally. Expected _wxWindow_p.");
         return NULL;
         }
@@ -4469,34 +4967,38 @@ static PyObject *_wrap_wxSplitterWindow_SplitHorizontally(PyObject *self, PyObje
 }
 
 #define wxSplitterWindow_SplitVertically(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SplitVertically(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define wxSplitterWindow_SplitVertically(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->SplitVertically(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_wxSplitterWindow_SplitVertically(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_SplitVertically(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
     wxWindow * _arg1;
     wxWindow * _arg2;
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
     wxWindow * _arg1;
     wxWindow * _arg2;
-    int  _arg3 = 0;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
-    char * _argc2 = 0;
+    int  _arg3 = (int ) 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    PyObject * _argo2 = 0;
+    char *_kwnames[] = { "self","window1","window2","sashPosition", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sss|i:wxSplitterWindow_SplitVertically",&_argc0,&_argc1,&_argc2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO|i:wxSplitterWindow_SplitVertically",_kwnames,&_argo0,&_argo1,&_argo2,&_arg3)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SplitVertically. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SplitVertically. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_SplitVertically. Expected _wxWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_SplitVertically. Expected _wxWindow_p.");
         return NULL;
         }
     }
-    if (_argc2) {
-        if (SWIG_GetPtr(_argc2,(void **) &_arg2,"_wxWindow_p")) {
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxSplitterWindow_SplitVertically. Expected _wxWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxSplitterWindow_SplitVertically. Expected _wxWindow_p.");
         return NULL;
         }
@@ -4511,25 +5013,28 @@ static PyObject *_wrap_wxSplitterWindow_SplitVertically(PyObject *self, PyObject
 }
 
 #define wxSplitterWindow_Unsplit(_swigobj,_swigarg0)  (_swigobj->Unsplit(_swigarg0))
 }
 
 #define wxSplitterWindow_Unsplit(_swigobj,_swigarg0)  (_swigobj->Unsplit(_swigarg0))
-static PyObject *_wrap_wxSplitterWindow_Unsplit(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSplitterWindow_Unsplit(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxSplitterWindow * _arg0;
-    wxWindow * _arg1 = NULL;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    wxWindow * _arg1 = (wxWindow *) NULL;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","toRemove", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|s:wxSplitterWindow_Unsplit",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|O:wxSplitterWindow_Unsplit",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSplitterWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_Unsplit. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_Unsplit. Expected _wxSplitterWindow_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxWindow_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_Unsplit. Expected _wxWindow_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxSplitterWindow_Unsplit. Expected _wxWindow_p.");
         return NULL;
         }
@@ -4552,35 +5057,43 @@ static void *SwigwxTaskBarIconTowxEvtHandler(void *ptr) {
 }
 
 #define new_wxTaskBarIcon() (new wxTaskBarIcon())
 }
 
 #define new_wxTaskBarIcon() (new wxTaskBarIcon())
-static PyObject *_wrap_new_wxTaskBarIcon(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxTaskBarIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxTaskBarIcon * _result;
     PyObject * _resultobj;
     wxTaskBarIcon * _result;
+    char *_kwnames[] = {  NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,":new_wxTaskBarIcon")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxTaskBarIcon",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxTaskBarIcon *)new_wxTaskBarIcon();
 
     wxPy_END_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         _result = (wxTaskBarIcon *)new_wxTaskBarIcon();
 
     wxPy_END_ALLOW_THREADS;
-}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTaskBarIcon_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxTaskBarIcon_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define delete_wxTaskBarIcon(_swigobj) (delete _swigobj)
     return _resultobj;
 }
 
 #define delete_wxTaskBarIcon(_swigobj) (delete _swigobj)
-static PyObject *_wrap_delete_wxTaskBarIcon(PyObject *self, PyObject *args) {
+static PyObject *_wrap_delete_wxTaskBarIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxTaskBarIcon * _arg0;
     PyObject * _resultobj;
     wxTaskBarIcon * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:delete_wxTaskBarIcon",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:delete_wxTaskBarIcon",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxTaskBarIcon. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxTaskBarIcon. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
@@ -4596,26 +5109,29 @@ static PyObject *_wrap_delete_wxTaskBarIcon(PyObject *self, PyObject *args) {
 }
 
 #define wxTaskBarIcon_SetIcon(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetIcon(_swigarg0,_swigarg1))
 }
 
 #define wxTaskBarIcon_SetIcon(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetIcon(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxTaskBarIcon_SetIcon(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxTaskBarIcon_SetIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxTaskBarIcon * _arg0;
     wxIcon * _arg1;
     PyObject * _resultobj;
     bool  _result;
     wxTaskBarIcon * _arg0;
     wxIcon * _arg1;
-    char * _arg2 = "";
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    char * _arg2 = (char *) "";
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","icon","tooltip", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss|s:wxTaskBarIcon_SetIcon",&_argc0,&_argc1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|s:wxTaskBarIcon_SetIcon",_kwnames,&_argo0,&_argo1,&_arg2)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTaskBarIcon_SetIcon. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTaskBarIcon_SetIcon. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxIcon_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxIcon_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTaskBarIcon_SetIcon. Expected _wxIcon_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTaskBarIcon_SetIcon. Expected _wxIcon_p.");
         return NULL;
         }
@@ -4630,17 +5146,19 @@ static PyObject *_wrap_wxTaskBarIcon_SetIcon(PyObject *self, PyObject *args) {
 }
 
 #define wxTaskBarIcon_RemoveIcon(_swigobj)  (_swigobj->RemoveIcon())
 }
 
 #define wxTaskBarIcon_RemoveIcon(_swigobj)  (_swigobj->RemoveIcon())
-static PyObject *_wrap_wxTaskBarIcon_RemoveIcon(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxTaskBarIcon_RemoveIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxTaskBarIcon * _arg0;
     PyObject * _resultobj;
     bool  _result;
     wxTaskBarIcon * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxTaskBarIcon_RemoveIcon",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxTaskBarIcon_RemoveIcon",_kwnames,&_argo0)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTaskBarIcon_RemoveIcon. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTaskBarIcon_RemoveIcon. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
@@ -4655,25 +5173,28 @@ static PyObject *_wrap_wxTaskBarIcon_RemoveIcon(PyObject *self, PyObject *args)
 }
 
 #define wxTaskBarIcon_PopupMenu(_swigobj,_swigarg0)  (_swigobj->PopupMenu(_swigarg0))
 }
 
 #define wxTaskBarIcon_PopupMenu(_swigobj,_swigarg0)  (_swigobj->PopupMenu(_swigarg0))
-static PyObject *_wrap_wxTaskBarIcon_PopupMenu(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxTaskBarIcon_PopupMenu(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxTaskBarIcon * _arg0;
     wxMenu * _arg1;
     PyObject * _resultobj;
     bool  _result;
     wxTaskBarIcon * _arg0;
     wxMenu * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","menu", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxTaskBarIcon_PopupMenu",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxTaskBarIcon_PopupMenu",_kwnames,&_argo0,&_argo1)) 
         return NULL;
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTaskBarIcon_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTaskBarIcon_PopupMenu. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
     }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTaskBarIcon_PopupMenu. Expected _wxTaskBarIcon_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxMenu_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxMenu_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTaskBarIcon_PopupMenu. Expected _wxMenu_p.");
         return NULL;
         }
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTaskBarIcon_PopupMenu. Expected _wxMenu_p.");
         return NULL;
         }
@@ -4688,167 +5209,549 @@ static PyObject *_wrap_wxTaskBarIcon_PopupMenu(PyObject *self, PyObject *args) {
 }
 
 static PyMethodDef windows2cMethods[] = {
 }
 
 static PyMethodDef windows2cMethods[] = {
-        { "wxTaskBarIcon_PopupMenu", _wrap_wxTaskBarIcon_PopupMenu, 1 },
-        { "wxTaskBarIcon_RemoveIcon", _wrap_wxTaskBarIcon_RemoveIcon, 1 },
-        { "wxTaskBarIcon_SetIcon", _wrap_wxTaskBarIcon_SetIcon, 1 },
-        { "delete_wxTaskBarIcon", _wrap_delete_wxTaskBarIcon, 1 },
-        { "new_wxTaskBarIcon", _wrap_new_wxTaskBarIcon, 1 },
-        { "wxSplitterWindow_Unsplit", _wrap_wxSplitterWindow_Unsplit, 1 },
-        { "wxSplitterWindow_SplitVertically", _wrap_wxSplitterWindow_SplitVertically, 1 },
-        { "wxSplitterWindow_SplitHorizontally", _wrap_wxSplitterWindow_SplitHorizontally, 1 },
-        { "wxSplitterWindow_SetSplitMode", _wrap_wxSplitterWindow_SetSplitMode, 1 },
-        { "wxSplitterWindow_SetMinimumPaneSize", _wrap_wxSplitterWindow_SetMinimumPaneSize, 1 },
-        { "wxSplitterWindow_SetSashSize", _wrap_wxSplitterWindow_SetSashSize, 1 },
-        { "wxSplitterWindow_SetSashPosition", _wrap_wxSplitterWindow_SetSashPosition, 1 },
-        { "wxSplitterWindow_SetBorderSize", _wrap_wxSplitterWindow_SetBorderSize, 1 },
-        { "wxSplitterWindow_IsSplit", _wrap_wxSplitterWindow_IsSplit, 1 },
-        { "wxSplitterWindow_Initialize", _wrap_wxSplitterWindow_Initialize, 1 },
-        { "wxSplitterWindow_GetWindow2", _wrap_wxSplitterWindow_GetWindow2, 1 },
-        { "wxSplitterWindow_GetWindow1", _wrap_wxSplitterWindow_GetWindow1, 1 },
-        { "wxSplitterWindow_GetSplitMode", _wrap_wxSplitterWindow_GetSplitMode, 1 },
-        { "wxSplitterWindow_GetSashSize", _wrap_wxSplitterWindow_GetSashSize, 1 },
-        { "wxSplitterWindow_GetSashPosition", _wrap_wxSplitterWindow_GetSashPosition, 1 },
-        { "wxSplitterWindow_GetMinimumPaneSize", _wrap_wxSplitterWindow_GetMinimumPaneSize, 1 },
-        { "wxSplitterWindow_GetBorderSize", _wrap_wxSplitterWindow_GetBorderSize, 1 },
-        { "new_wxSplitterWindow", _wrap_new_wxSplitterWindow, 1 },
-        { "wxSplitterEvent_SetSashPosition", _wrap_wxSplitterEvent_SetSashPosition, 1 },
-        { "wxSplitterEvent_GetWindowBeingRemoved", _wrap_wxSplitterEvent_GetWindowBeingRemoved, 1 },
-        { "wxSplitterEvent_GetY", _wrap_wxSplitterEvent_GetY, 1 },
-        { "wxSplitterEvent_GetX", _wrap_wxSplitterEvent_GetX, 1 },
-        { "wxSplitterEvent_GetSashPosition", _wrap_wxSplitterEvent_GetSashPosition, 1 },
-        { "wxNotebook_ResizeChildren", _wrap_wxNotebook_ResizeChildren, 1 },
-        { "wxNotebook_GetPage", _wrap_wxNotebook_GetPage, 1 },
-        { "wxNotebook_InsertPage", _wrap_wxNotebook_InsertPage, 1 },
-        { "wxNotebook_AddPage", _wrap_wxNotebook_AddPage, 1 },
-        { "wxNotebook_DeleteAllPages", _wrap_wxNotebook_DeleteAllPages, 1 },
-        { "wxNotebook_RemovePage", _wrap_wxNotebook_RemovePage, 1 },
-        { "wxNotebook_DeletePage", _wrap_wxNotebook_DeletePage, 1 },
-        { "wxNotebook_GetRowCount", _wrap_wxNotebook_GetRowCount, 1 },
-        { "wxNotebook_SetPageImage", _wrap_wxNotebook_SetPageImage, 1 },
-        { "wxNotebook_GetPageImage", _wrap_wxNotebook_GetPageImage, 1 },
-        { "wxNotebook_GetImageList", _wrap_wxNotebook_GetImageList, 1 },
-        { "wxNotebook_SetImageList", _wrap_wxNotebook_SetImageList, 1 },
-        { "wxNotebook_GetPageText", _wrap_wxNotebook_GetPageText, 1 },
-        { "wxNotebook_SetPageText", _wrap_wxNotebook_SetPageText, 1 },
-        { "wxNotebook_GetSelection", _wrap_wxNotebook_GetSelection, 1 },
-        { "wxNotebook_AdvanceSelection", _wrap_wxNotebook_AdvanceSelection, 1 },
-        { "wxNotebook_SetSelection", _wrap_wxNotebook_SetSelection, 1 },
-        { "wxNotebook_GetPageCount", _wrap_wxNotebook_GetPageCount, 1 },
-        { "new_wxNotebook", _wrap_new_wxNotebook, 1 },
-        { "wxNotebookEvent_SetSelection", _wrap_wxNotebookEvent_SetSelection, 1 },
-        { "wxNotebookEvent_SetOldSelection", _wrap_wxNotebookEvent_SetOldSelection, 1 },
-        { "wxNotebookEvent_GetOldSelection", _wrap_wxNotebookEvent_GetOldSelection, 1 },
-        { "wxNotebookEvent_GetSelection", _wrap_wxNotebookEvent_GetSelection, 1 },
-        { "wxGridEvent_GetCell", _wrap_wxGridEvent_GetCell, 1 },
-        { "wxGridEvent_ShiftDown", _wrap_wxGridEvent_ShiftDown, 1 },
-        { "wxGridEvent_ControlDown", _wrap_wxGridEvent_ControlDown, 1 },
-        { "wxGridEvent_GetPosition", _wrap_wxGridEvent_GetPosition, 1 },
-        { "wxGridEvent_GetCol", _wrap_wxGridEvent_GetCol, 1 },
-        { "wxGridEvent_GetRow", _wrap_wxGridEvent_GetRow, 1 },
-        { "wxGridEvent_m_cell_get", _wrap_wxGridEvent_m_cell_get, 1 },
-        { "wxGridEvent_m_cell_set", _wrap_wxGridEvent_m_cell_set, 1 },
-        { "wxGridEvent_m_shift_get", _wrap_wxGridEvent_m_shift_get, 1 },
-        { "wxGridEvent_m_shift_set", _wrap_wxGridEvent_m_shift_set, 1 },
-        { "wxGridEvent_m_control_get", _wrap_wxGridEvent_m_control_get, 1 },
-        { "wxGridEvent_m_control_set", _wrap_wxGridEvent_m_control_set, 1 },
-        { "wxGridEvent_m_y_get", _wrap_wxGridEvent_m_y_get, 1 },
-        { "wxGridEvent_m_y_set", _wrap_wxGridEvent_m_y_set, 1 },
-        { "wxGridEvent_m_x_get", _wrap_wxGridEvent_m_x_get, 1 },
-        { "wxGridEvent_m_x_set", _wrap_wxGridEvent_m_x_set, 1 },
-        { "wxGridEvent_m_col_get", _wrap_wxGridEvent_m_col_get, 1 },
-        { "wxGridEvent_m_col_set", _wrap_wxGridEvent_m_col_set, 1 },
-        { "wxGridEvent_m_row_get", _wrap_wxGridEvent_m_row_get, 1 },
-        { "wxGridEvent_m_row_set", _wrap_wxGridEvent_m_row_set, 1 },
-        { "wxGrid_SetEditInPlace", _wrap_wxGrid_SetEditInPlace, 1 },
-        { "wxGrid_GetEditInPlace", _wrap_wxGrid_GetEditInPlace, 1 },
-        { "wxGrid_UpdateDimensions", _wrap_wxGrid_UpdateDimensions, 1 },
-        { "wxGrid_SetRowHeight", _wrap_wxGrid_SetRowHeight, 1 },
-        { "wxGrid_SetLabelValue", _wrap_wxGrid_SetLabelValue, 1 },
-        { "wxGrid_SetLabelTextFont", _wrap_wxGrid_SetLabelTextFont, 1 },
-        { "wxGrid_SetLabelTextColour", _wrap_wxGrid_SetLabelTextColour, 1 },
-        { "wxGrid_SetLabelSize", _wrap_wxGrid_SetLabelSize, 1 },
-        { "wxGrid_SetLabelBackgroundColour", _wrap_wxGrid_SetLabelBackgroundColour, 1 },
-        { "wxGrid_SetLabelAlignment", _wrap_wxGrid_SetLabelAlignment, 1 },
-        { "wxGrid_SetGridCursor", _wrap_wxGrid_SetGridCursor, 1 },
-        { "wxGrid_SetEditable", _wrap_wxGrid_SetEditable, 1 },
-        { "wxGrid_SetDividerPen", _wrap_wxGrid_SetDividerPen, 1 },
-        { "wxGrid_SetColumnWidth", _wrap_wxGrid_SetColumnWidth, 1 },
-        { "wxGrid_SetCellValue", _wrap_wxGrid_SetCellValue, 1 },
-        { "wxGrid_SetDefCellTextFont", _wrap_wxGrid_SetDefCellTextFont, 1 },
-        { "wxGrid_SetCellTextFont", _wrap_wxGrid_SetCellTextFont, 1 },
-        { "wxGrid_SetDefCellTextColour", _wrap_wxGrid_SetDefCellTextColour, 1 },
-        { "wxGrid_SetCellTextColour", _wrap_wxGrid_SetCellTextColour, 1 },
-        { "wxGrid_SetDefCellBackgroundColour", _wrap_wxGrid_SetDefCellBackgroundColour, 1 },
-        { "wxGrid_SetCellBackgroundColour", _wrap_wxGrid_SetCellBackgroundColour, 1 },
-        { "wxGrid_SetDefCellAlignment", _wrap_wxGrid_SetDefCellAlignment, 1 },
-        { "wxGrid_SetCellAlignment", _wrap_wxGrid_SetCellAlignment, 1 },
-        { "wxGrid_OnActivate", _wrap_wxGrid_OnActivate, 1 },
-        { "wxGrid_InsertRows", _wrap_wxGrid_InsertRows, 1 },
-        { "wxGrid_InsertCols", _wrap_wxGrid_InsertCols, 1 },
-        { "wxGrid_GetVertScrollBar", _wrap_wxGrid_GetVertScrollBar, 1 },
-        { "wxGrid_GetTextItem", _wrap_wxGrid_GetTextItem, 1 },
-        { "wxGrid_GetScrollPosY", _wrap_wxGrid_GetScrollPosY, 1 },
-        { "wxGrid_GetScrollPosX", _wrap_wxGrid_GetScrollPosX, 1 },
-        { "wxGrid_GetRows", _wrap_wxGrid_GetRows, 1 },
-        { "wxGrid_GetRowHeight", _wrap_wxGrid_GetRowHeight, 1 },
-        { "wxGrid_GetLabelValue", _wrap_wxGrid_GetLabelValue, 1 },
-        { "wxGrid_GetLabelTextFont", _wrap_wxGrid_GetLabelTextFont, 1 },
-        { "wxGrid_GetLabelTextColour", _wrap_wxGrid_GetLabelTextColour, 1 },
-        { "wxGrid_GetLabelSize", _wrap_wxGrid_GetLabelSize, 1 },
-        { "wxGrid_GetLabelBackgroundColour", _wrap_wxGrid_GetLabelBackgroundColour, 1 },
-        { "wxGrid_GetLabelAlignment", _wrap_wxGrid_GetLabelAlignment, 1 },
-        { "wxGrid_GetHorizScrollBar", _wrap_wxGrid_GetHorizScrollBar, 1 },
-        { "wxGrid_GetEditable", _wrap_wxGrid_GetEditable, 1 },
-        { "wxGrid_GetCursorRow", _wrap_wxGrid_GetCursorRow, 1 },
-        { "wxGrid_GetCursorColumn", _wrap_wxGrid_GetCursorColumn, 1 },
-        { "wxGrid_GetCurrentRect", _wrap_wxGrid_GetCurrentRect, 1 },
-        { "wxGrid_GetColumnWidth", _wrap_wxGrid_GetColumnWidth, 1 },
-        { "wxGrid_GetCols", _wrap_wxGrid_GetCols, 1 },
-        { "wxGrid_GetCellValue", _wrap_wxGrid_GetCellValue, 1 },
-        { "wxGrid_GetDefCellTextFont", _wrap_wxGrid_GetDefCellTextFont, 1 },
-        { "wxGrid_GetCellTextFont", _wrap_wxGrid_GetCellTextFont, 1 },
-        { "wxGrid_GetDefCellTextColour", _wrap_wxGrid_GetDefCellTextColour, 1 },
-        { "wxGrid_GetCellTextColour", _wrap_wxGrid_GetCellTextColour, 1 },
-        { "wxGrid_GetCells", _wrap_wxGrid_GetCells, 1 },
-        { "wxGrid_GetDefCellBackgroundColour", _wrap_wxGrid_GetDefCellBackgroundColour, 1 },
-        { "wxGrid_GetCellBackgroundColour", _wrap_wxGrid_GetCellBackgroundColour, 1 },
-        { "wxGrid_GetDefCellAlignment", _wrap_wxGrid_GetDefCellAlignment, 1 },
-        { "wxGrid_GetCellAlignment", _wrap_wxGrid_GetCellAlignment, 1 },
-        { "wxGrid_GetCell", _wrap_wxGrid_GetCell, 1 },
-        { "wxGrid_GetBatchCount", _wrap_wxGrid_GetBatchCount, 1 },
-        { "wxGrid_EndBatch", _wrap_wxGrid_EndBatch, 1 },
-        { "wxGrid_DeleteRows", _wrap_wxGrid_DeleteRows, 1 },
-        { "wxGrid_DeleteCols", _wrap_wxGrid_DeleteCols, 1 },
-        { "wxGrid_CurrentCellVisible", _wrap_wxGrid_CurrentCellVisible, 1 },
-        { "wxGrid_CreateGrid", _wrap_wxGrid_CreateGrid, 1 },
-        { "wxGrid_CellHitTest", _wrap_wxGrid_CellHitTest, 1 },
-        { "wxGrid_BeginBatch", _wrap_wxGrid_BeginBatch, 1 },
-        { "wxGrid_AppendRows", _wrap_wxGrid_AppendRows, 1 },
-        { "wxGrid_AppendCols", _wrap_wxGrid_AppendCols, 1 },
-        { "wxGrid_AdjustScrollbars", _wrap_wxGrid_AdjustScrollbars, 1 },
-        { "new_wxGrid", _wrap_new_wxGrid, 1 },
-        { "wxGridCell_SetCellBitmap", _wrap_wxGridCell_SetCellBitmap, 1 },
-        { "wxGridCell_GetCellBitmap", _wrap_wxGridCell_GetCellBitmap, 1 },
-        { "wxGridCell_SetAlignment", _wrap_wxGridCell_SetAlignment, 1 },
-        { "wxGridCell_GetAlignment", _wrap_wxGridCell_GetAlignment, 1 },
-        { "wxGridCell_GetBackgroundBrush", _wrap_wxGridCell_GetBackgroundBrush, 1 },
-        { "wxGridCell_SetBackgroundColour", _wrap_wxGridCell_SetBackgroundColour, 1 },
-        { "wxGridCell_GetBackgroundColour", _wrap_wxGridCell_GetBackgroundColour, 1 },
-        { "wxGridCell_SetTextColour", _wrap_wxGridCell_SetTextColour, 1 },
-        { "wxGridCell_GetTextColour", _wrap_wxGridCell_GetTextColour, 1 },
-        { "wxGridCell_SetFont", _wrap_wxGridCell_SetFont, 1 },
-        { "wxGridCell_GetFont", _wrap_wxGridCell_GetFont, 1 },
-        { "wxGridCell_SetTextValue", _wrap_wxGridCell_SetTextValue, 1 },
-        { "wxGridCell_GetTextValue", _wrap_wxGridCell_GetTextValue, 1 },
-        { "delete_wxGridCell", _wrap_delete_wxGridCell, 1 },
-        { "new_wxGridCell", _wrap_new_wxGridCell, 1 },
+        { "wxTaskBarIcon_PopupMenu", (PyCFunction) _wrap_wxTaskBarIcon_PopupMenu, METH_VARARGS | METH_KEYWORDS },
+        { "wxTaskBarIcon_RemoveIcon", (PyCFunction) _wrap_wxTaskBarIcon_RemoveIcon, METH_VARARGS | METH_KEYWORDS },
+        { "wxTaskBarIcon_SetIcon", (PyCFunction) _wrap_wxTaskBarIcon_SetIcon, METH_VARARGS | METH_KEYWORDS },
+        { "delete_wxTaskBarIcon", (PyCFunction) _wrap_delete_wxTaskBarIcon, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxTaskBarIcon", (PyCFunction) _wrap_new_wxTaskBarIcon, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_Unsplit", (PyCFunction) _wrap_wxSplitterWindow_Unsplit, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SplitVertically", (PyCFunction) _wrap_wxSplitterWindow_SplitVertically, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SplitHorizontally", (PyCFunction) _wrap_wxSplitterWindow_SplitHorizontally, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SetSplitMode", (PyCFunction) _wrap_wxSplitterWindow_SetSplitMode, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SetMinimumPaneSize", (PyCFunction) _wrap_wxSplitterWindow_SetMinimumPaneSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SetSashSize", (PyCFunction) _wrap_wxSplitterWindow_SetSashSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SetSashPosition", (PyCFunction) _wrap_wxSplitterWindow_SetSashPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_SetBorderSize", (PyCFunction) _wrap_wxSplitterWindow_SetBorderSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_ReplaceWindow", (PyCFunction) _wrap_wxSplitterWindow_ReplaceWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_IsSplit", (PyCFunction) _wrap_wxSplitterWindow_IsSplit, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_Initialize", (PyCFunction) _wrap_wxSplitterWindow_Initialize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetWindow2", (PyCFunction) _wrap_wxSplitterWindow_GetWindow2, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetWindow1", (PyCFunction) _wrap_wxSplitterWindow_GetWindow1, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetSplitMode", (PyCFunction) _wrap_wxSplitterWindow_GetSplitMode, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetSashSize", (PyCFunction) _wrap_wxSplitterWindow_GetSashSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetSashPosition", (PyCFunction) _wrap_wxSplitterWindow_GetSashPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetMinimumPaneSize", (PyCFunction) _wrap_wxSplitterWindow_GetMinimumPaneSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterWindow_GetBorderSize", (PyCFunction) _wrap_wxSplitterWindow_GetBorderSize, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxSplitterWindow", (PyCFunction) _wrap_new_wxSplitterWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterEvent_SetSashPosition", (PyCFunction) _wrap_wxSplitterEvent_SetSashPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterEvent_GetWindowBeingRemoved", (PyCFunction) _wrap_wxSplitterEvent_GetWindowBeingRemoved, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterEvent_GetY", (PyCFunction) _wrap_wxSplitterEvent_GetY, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterEvent_GetX", (PyCFunction) _wrap_wxSplitterEvent_GetX, METH_VARARGS | METH_KEYWORDS },
+        { "wxSplitterEvent_GetSashPosition", (PyCFunction) _wrap_wxSplitterEvent_GetSashPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_ResizeChildren", (PyCFunction) _wrap_wxNotebook_ResizeChildren, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetPage", (PyCFunction) _wrap_wxNotebook_GetPage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_InsertPage", (PyCFunction) _wrap_wxNotebook_InsertPage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_AddPage", (PyCFunction) _wrap_wxNotebook_AddPage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_DeleteAllPages", (PyCFunction) _wrap_wxNotebook_DeleteAllPages, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_RemovePage", (PyCFunction) _wrap_wxNotebook_RemovePage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_DeletePage", (PyCFunction) _wrap_wxNotebook_DeletePage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetRowCount", (PyCFunction) _wrap_wxNotebook_GetRowCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_SetPageImage", (PyCFunction) _wrap_wxNotebook_SetPageImage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetPageImage", (PyCFunction) _wrap_wxNotebook_GetPageImage, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetImageList", (PyCFunction) _wrap_wxNotebook_GetImageList, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_SetImageList", (PyCFunction) _wrap_wxNotebook_SetImageList, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetPageText", (PyCFunction) _wrap_wxNotebook_GetPageText, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_SetPageText", (PyCFunction) _wrap_wxNotebook_SetPageText, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetSelection", (PyCFunction) _wrap_wxNotebook_GetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_AdvanceSelection", (PyCFunction) _wrap_wxNotebook_AdvanceSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_SetSelection", (PyCFunction) _wrap_wxNotebook_SetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebook_GetPageCount", (PyCFunction) _wrap_wxNotebook_GetPageCount, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxNotebook", (PyCFunction) _wrap_new_wxNotebook, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebookEvent_SetSelection", (PyCFunction) _wrap_wxNotebookEvent_SetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebookEvent_SetOldSelection", (PyCFunction) _wrap_wxNotebookEvent_SetOldSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebookEvent_GetOldSelection", (PyCFunction) _wrap_wxNotebookEvent_GetOldSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotebookEvent_GetSelection", (PyCFunction) _wrap_wxNotebookEvent_GetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_GetCell", (PyCFunction) _wrap_wxGridEvent_GetCell, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_ShiftDown", (PyCFunction) _wrap_wxGridEvent_ShiftDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_ControlDown", (PyCFunction) _wrap_wxGridEvent_ControlDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_GetPosition", (PyCFunction) _wrap_wxGridEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_GetCol", (PyCFunction) _wrap_wxGridEvent_GetCol, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_GetRow", (PyCFunction) _wrap_wxGridEvent_GetRow, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_cell_get", (PyCFunction) _wrap_wxGridEvent_m_cell_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_cell_set", (PyCFunction) _wrap_wxGridEvent_m_cell_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_shift_get", (PyCFunction) _wrap_wxGridEvent_m_shift_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_shift_set", (PyCFunction) _wrap_wxGridEvent_m_shift_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_control_get", (PyCFunction) _wrap_wxGridEvent_m_control_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_control_set", (PyCFunction) _wrap_wxGridEvent_m_control_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_y_get", (PyCFunction) _wrap_wxGridEvent_m_y_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_y_set", (PyCFunction) _wrap_wxGridEvent_m_y_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_x_get", (PyCFunction) _wrap_wxGridEvent_m_x_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_x_set", (PyCFunction) _wrap_wxGridEvent_m_x_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_col_get", (PyCFunction) _wrap_wxGridEvent_m_col_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_col_set", (PyCFunction) _wrap_wxGridEvent_m_col_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_row_get", (PyCFunction) _wrap_wxGridEvent_m_row_get, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEvent_m_row_set", (PyCFunction) _wrap_wxGridEvent_m_row_set, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetEditInPlace", (PyCFunction) _wrap_wxGrid_SetEditInPlace, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetEditInPlace", (PyCFunction) _wrap_wxGrid_GetEditInPlace, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_UpdateDimensions", (PyCFunction) _wrap_wxGrid_UpdateDimensions, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetRowHeight", (PyCFunction) _wrap_wxGrid_SetRowHeight, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetLabelValue", (PyCFunction) _wrap_wxGrid_SetLabelValue, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetLabelTextFont", (PyCFunction) _wrap_wxGrid_SetLabelTextFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetLabelTextColour", (PyCFunction) _wrap_wxGrid_SetLabelTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetLabelSize", (PyCFunction) _wrap_wxGrid_SetLabelSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetLabelBackgroundColour", (PyCFunction) _wrap_wxGrid_SetLabelBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetLabelAlignment", (PyCFunction) _wrap_wxGrid_SetLabelAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetGridCursor", (PyCFunction) _wrap_wxGrid_SetGridCursor, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetEditable", (PyCFunction) _wrap_wxGrid_SetEditable, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetDividerPen", (PyCFunction) _wrap_wxGrid_SetDividerPen, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetColumnWidth", (PyCFunction) _wrap_wxGrid_SetColumnWidth, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetCellValue", (PyCFunction) _wrap_wxGrid_SetCellValue, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetDefCellTextFont", (PyCFunction) _wrap_wxGrid_SetDefCellTextFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetCellTextFont", (PyCFunction) _wrap_wxGrid_SetCellTextFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetDefCellTextColour", (PyCFunction) _wrap_wxGrid_SetDefCellTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetCellTextColour", (PyCFunction) _wrap_wxGrid_SetCellTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetDefCellBackgroundColour", (PyCFunction) _wrap_wxGrid_SetDefCellBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetCellBackgroundColour", (PyCFunction) _wrap_wxGrid_SetCellBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetDefCellAlignment", (PyCFunction) _wrap_wxGrid_SetDefCellAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_SetCellAlignment", (PyCFunction) _wrap_wxGrid_SetCellAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_OnActivate", (PyCFunction) _wrap_wxGrid_OnActivate, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_InsertRows", (PyCFunction) _wrap_wxGrid_InsertRows, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_InsertCols", (PyCFunction) _wrap_wxGrid_InsertCols, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetVertScrollBar", (PyCFunction) _wrap_wxGrid_GetVertScrollBar, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetTextItem", (PyCFunction) _wrap_wxGrid_GetTextItem, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetScrollPosY", (PyCFunction) _wrap_wxGrid_GetScrollPosY, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetScrollPosX", (PyCFunction) _wrap_wxGrid_GetScrollPosX, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetRows", (PyCFunction) _wrap_wxGrid_GetRows, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetRowHeight", (PyCFunction) _wrap_wxGrid_GetRowHeight, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetLabelValue", (PyCFunction) _wrap_wxGrid_GetLabelValue, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetLabelTextFont", (PyCFunction) _wrap_wxGrid_GetLabelTextFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetLabelTextColour", (PyCFunction) _wrap_wxGrid_GetLabelTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetLabelSize", (PyCFunction) _wrap_wxGrid_GetLabelSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetLabelBackgroundColour", (PyCFunction) _wrap_wxGrid_GetLabelBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetLabelAlignment", (PyCFunction) _wrap_wxGrid_GetLabelAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetHorizScrollBar", (PyCFunction) _wrap_wxGrid_GetHorizScrollBar, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetEditable", (PyCFunction) _wrap_wxGrid_GetEditable, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCursorRow", (PyCFunction) _wrap_wxGrid_GetCursorRow, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCursorColumn", (PyCFunction) _wrap_wxGrid_GetCursorColumn, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCurrentRect", (PyCFunction) _wrap_wxGrid_GetCurrentRect, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetColumnWidth", (PyCFunction) _wrap_wxGrid_GetColumnWidth, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCols", (PyCFunction) _wrap_wxGrid_GetCols, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCellValue", (PyCFunction) _wrap_wxGrid_GetCellValue, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetDefCellTextFont", (PyCFunction) _wrap_wxGrid_GetDefCellTextFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCellTextFont", (PyCFunction) _wrap_wxGrid_GetCellTextFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetDefCellTextColour", (PyCFunction) _wrap_wxGrid_GetDefCellTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCellTextColour", (PyCFunction) _wrap_wxGrid_GetCellTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCells", (PyCFunction) _wrap_wxGrid_GetCells, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetDefCellBackgroundColour", (PyCFunction) _wrap_wxGrid_GetDefCellBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCellBackgroundColour", (PyCFunction) _wrap_wxGrid_GetCellBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetDefCellAlignment", (PyCFunction) _wrap_wxGrid_GetDefCellAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCellAlignment", (PyCFunction) _wrap_wxGrid_GetCellAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetCell", (PyCFunction) _wrap_wxGrid_GetCell, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_GetBatchCount", (PyCFunction) _wrap_wxGrid_GetBatchCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_EndBatch", (PyCFunction) _wrap_wxGrid_EndBatch, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_DeleteRows", (PyCFunction) _wrap_wxGrid_DeleteRows, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_DeleteCols", (PyCFunction) _wrap_wxGrid_DeleteCols, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_CurrentCellVisible", (PyCFunction) _wrap_wxGrid_CurrentCellVisible, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_CreateGrid", (PyCFunction) _wrap_wxGrid_CreateGrid, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_CellHitTest", (PyCFunction) _wrap_wxGrid_CellHitTest, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_BeginBatch", (PyCFunction) _wrap_wxGrid_BeginBatch, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_AppendRows", (PyCFunction) _wrap_wxGrid_AppendRows, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_AppendCols", (PyCFunction) _wrap_wxGrid_AppendCols, METH_VARARGS | METH_KEYWORDS },
+        { "wxGrid_AdjustScrollbars", (PyCFunction) _wrap_wxGrid_AdjustScrollbars, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxGrid", (PyCFunction) _wrap_new_wxGrid, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_SetCellBitmap", (PyCFunction) _wrap_wxGridCell_SetCellBitmap, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetCellBitmap", (PyCFunction) _wrap_wxGridCell_GetCellBitmap, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_SetAlignment", (PyCFunction) _wrap_wxGridCell_SetAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetAlignment", (PyCFunction) _wrap_wxGridCell_GetAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetBackgroundBrush", (PyCFunction) _wrap_wxGridCell_GetBackgroundBrush, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_SetBackgroundColour", (PyCFunction) _wrap_wxGridCell_SetBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetBackgroundColour", (PyCFunction) _wrap_wxGridCell_GetBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_SetTextColour", (PyCFunction) _wrap_wxGridCell_SetTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetTextColour", (PyCFunction) _wrap_wxGridCell_GetTextColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_SetFont", (PyCFunction) _wrap_wxGridCell_SetFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetFont", (PyCFunction) _wrap_wxGridCell_GetFont, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_SetTextValue", (PyCFunction) _wrap_wxGridCell_SetTextValue, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridCell_GetTextValue", (PyCFunction) _wrap_wxGridCell_GetTextValue, METH_VARARGS | METH_KEYWORDS },
+        { "delete_wxGridCell", (PyCFunction) _wrap_delete_wxGridCell, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxGridCell", (PyCFunction) _wrap_new_wxGridCell, METH_VARARGS | METH_KEYWORDS },
         { NULL, NULL }
 };
         { 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_wxSplitterEvent",SwigwxSplitterEventTowxEvent},
+    { "_wxEvent","_wxSplitterEvent",SwigwxSplitterEventTowxEvent},
+    { "_wxEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxEvent},
+    { "_wxEvent","_wxNotebookEvent",SwigwxNotebookEventTowxEvent},
+    { "_wxEvent","_class_wxGridEvent",SwigwxGridEventTowxEvent},
+    { "_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent},
+    { "_wxEvent","_class_wxEvent",0},
+    { "_class_wxActivateEvent","_wxActivateEvent",0},
+    { "_signed_long","_long",0},
+    { "_wxMenuEvent","_class_wxMenuEvent",0},
+    { "_wxPyBitmapDataObject","_class_wxPyBitmapDataObject",0},
+    { "_wxBitmapDataObject","_class_wxBitmapDataObject",0},
+    { "_class_wxPyCommandEvent","_wxPyCommandEvent",0},
+    { "_wxPrintQuality","_wxCoord",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},
+    { "_class_wxCustomDataObject","_wxCustomDataObject",0},
+    { "_class_wxRegionIterator","_wxRegionIterator",0},
+    { "_class_wxPyTextDropTarget","_wxPyTextDropTarget",0},
+    { "_class_wxMenuBar","_wxMenuBar",0},
+    { "_class_wxEvtHandler","_class_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler},
+    { "_class_wxEvtHandler","_class_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler},
+    { "_class_wxEvtHandler","_class_wxNotebook",SwigwxNotebookTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxNotebook",SwigwxNotebookTowxEvtHandler},
+    { "_class_wxEvtHandler","_class_wxGrid",SwigwxGridTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxGrid",SwigwxGridTowxEvtHandler},
+    { "_class_wxEvtHandler","_wxEvtHandler",0},
+    { "_wxPaintEvent","_class_wxPaintEvent",0},
+    { "_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0},
+    { "_wxCursor","_class_wxCursor",0},
+    { "_wxNotifyEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent},
+    { "_wxNotifyEvent","_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent},
+    { "_wxNotifyEvent","_class_wxNotifyEvent",0},
+    { "_wxMask","_class_wxMask",0},
+    { "_wxGrid","_class_wxGrid",0},
+    { "_wxPen","_class_wxPen",0},
+    { "_wxUpdateUIEvent","_class_wxUpdateUIEvent",0},
+    { "_byte","_unsigned_char",0},
+    { "_wxDataObject","_class_wxDataObject",0},
+    { "_wxStaticBox","_class_wxStaticBox",0},
+    { "_wxPyDataObjectSimple","_class_wxPyDataObjectSimple",0},
+    { "_wxPyDropSource","_class_wxPyDropSource",0},
+    { "_wxChoice","_class_wxChoice",0},
+    { "_wxSlider","_class_wxSlider",0},
+    { "_wxNotebookEvent","_class_wxNotebookEvent",0},
+    { "_long","_wxDash",0},
+    { "_long","_unsigned_long",0},
+    { "_long","_signed_long",0},
+    { "_wxImageList","_class_wxImageList",0},
+    { "_wxDataObjectSimple","_class_wxDataObjectSimple",0},
+    { "_wxDropFilesEvent","_class_wxDropFilesEvent",0},
+    { "_wxBitmapButton","_class_wxBitmapButton",0},
+    { "_class_wxAcceleratorTable","_wxAcceleratorTable",0},
+    { "_class_wxClipboard","_wxClipboard",0},
+    { "_class_wxGauge","_wxGauge",0},
+    { "_wxDC","_class_wxDC",0},
+    { "_class_wxBitmapDataObject","_wxBitmapDataObject",0},
+    { "_wxSpinEvent","_class_wxSpinEvent",0},
+    { "_size_t","_wxCoord",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},
+    { "_wxNavigationKeyEvent","_class_wxNavigationKeyEvent",0},
+    { "_wxPrinterDC","_class_wxPrinterDC",0},
+    { "_wxWindowCreateEvent","_class_wxWindowCreateEvent",0},
+    { "_class_wxMenuItem","_wxMenuItem",0},
+    { "_class_wxPaintEvent","_wxPaintEvent",0},
+    { "_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0},
+    { "_wxPanel","_class_wxGrid",SwigwxGridTowxPanel},
+    { "_wxPanel","_wxGrid",SwigwxGridTowxPanel},
+    { "_wxPanel","_class_wxPanel",0},
+    { "_wxInitDialogEvent","_class_wxInitDialogEvent",0},
+    { "_wxCheckBox","_class_wxCheckBox",0},
+    { "_wxPyEvent","_class_wxPyEvent",0},
+    { "_wxTextCtrl","_class_wxTextCtrl",0},
+    { "_class_wxMask","_wxMask",0},
+    { "_wxTextDataObject","_class_wxTextDataObject",0},
+    { "_class_wxKeyEvent","_wxKeyEvent",0},
+    { "_class_wxGrid","_wxGrid",0},
+    { "_wxColour","_class_wxColour",0},
+    { "_class_wxDialog","_wxDialog",0},
+    { "_class_wxFileDataObject","_wxFileDataObject",0},
+    { "_wxIdleEvent","_class_wxIdleEvent",0},
+    { "_class_wxUpdateUIEvent","_wxUpdateUIEvent",0},
+    { "_class_wxDataObject","_wxDataObject",0},
+    { "_wxStaticLine","_class_wxStaticLine",0},
+    { "_wxBrush","_class_wxBrush",0},
+    { "_class_wxNotebookEvent","_wxNotebookEvent",0},
+    { "_wxDataFormat","_class_wxDataFormat",0},
+    { "_class_wxDataObjectSimple","_wxDataObjectSimple",0},
+    { "_wxShowEvent","_class_wxShowEvent",0},
+    { "_uint","_wxCoord",0},
+    { "_uint","_wxPrintQuality",0},
+    { "_uint","_size_t",0},
+    { "_uint","_unsigned_int",0},
+    { "_uint","_int",0},
+    { "_uint","_wxWindowID",0},
+    { "_wxPyValidator","_class_wxPyValidator",0},
+    { "_class_wxEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxEvent},
+    { "_class_wxEvent","_wxSplitterEvent",SwigwxSplitterEventTowxEvent},
+    { "_class_wxEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxEvent},
+    { "_class_wxEvent","_wxNotebookEvent",SwigwxNotebookEventTowxEvent},
+    { "_class_wxEvent","_class_wxGridEvent",SwigwxGridEventTowxEvent},
+    { "_class_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent},
+    { "_class_wxEvent","_wxEvent",0},
+    { "_wxCheckListBox","_class_wxCheckListBox",0},
+    { "_wxSplitterEvent","_class_wxSplitterEvent",0},
+    { "_wxGridEvent","_class_wxGridEvent",0},
+    { "_wxRect","_class_wxRect",0},
+    { "_wxCommandEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent},
+    { "_wxCommandEvent","_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent},
+    { "_wxCommandEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent},
+    { "_wxCommandEvent","_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent},
+    { "_wxCommandEvent","_class_wxCommandEvent",0},
+    { "_wxSizeEvent","_class_wxSizeEvent",0},
+    { "_wxPoint","_class_wxPoint",0},
+    { "_class_wxButton","_wxButton",0},
+    { "_wxRadioBox","_class_wxRadioBox",0},
+    { "_wxBitmap","_class_wxBitmap",0},
+    { "_wxTaskBarIcon","_class_wxTaskBarIcon",0},
+    { "_wxPyTimer","_class_wxPyTimer",0},
+    { "_wxWindowDC","_class_wxWindowDC",0},
+    { "_wxScrollBar","_class_wxScrollBar",0},
+    { "_wxSpinButton","_class_wxSpinButton",0},
+    { "_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0},
+    { "_class_wxNotifyEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent},
+    { "_class_wxNotifyEvent","_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent},
+    { "_class_wxNotifyEvent","_wxNotifyEvent",0},
+    { "_class_wxValidator","_wxValidator",0},
+    { "_class_wxPyEvent","_wxPyEvent",0},
+    { "_class_wxIconizeEvent","_wxIconizeEvent",0},
+    { "_class_wxStaticBitmap","_wxStaticBitmap",0},
+    { "_wxDropTarget","_class_wxDropTarget",0},
+    { "_class_wxStaticLine","_wxStaticLine",0},
+    { "_wxScrollEvent","_class_wxScrollEvent",0},
+    { "_EBool","_wxCoord",0},
+    { "_EBool","_wxPrintQuality",0},
+    { "_EBool","_signed_int",0},
+    { "_EBool","_int",0},
+    { "_EBool","_wxWindowID",0},
+    { "_class_wxRegion","_wxRegion",0},
+    { "_class_wxDataFormat","_wxDataFormat",0},
+    { "_class_wxDropFilesEvent","_wxDropFilesEvent",0},
+    { "_wxWindowDestroyEvent","_class_wxWindowDestroyEvent",0},
+    { "_wxStaticText","_class_wxStaticText",0},
+    { "_wxFont","_class_wxFont",0},
+    { "_class_wxPyDropTarget","_wxPyDropTarget",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},
+    { "_wxScrollWinEvent","_class_wxScrollWinEvent",0},
+    { "_wxQueryNewPaletteEvent","_class_wxQueryNewPaletteEvent",0},
+    { "_class_wxWindowCreateEvent","_wxWindowCreateEvent",0},
+    { "_class_wxPyTimer","_wxPyTimer",0},
+    { "_wxFocusEvent","_class_wxFocusEvent",0},
+    { "_wxMaximizeEvent","_class_wxMaximizeEvent",0},
+    { "_class_wxSpinButton","_wxSpinButton",0},
+    { "_wxAcceleratorEntry","_class_wxAcceleratorEntry",0},
+    { "_class_wxPanel","_class_wxGrid",SwigwxGridTowxPanel},
+    { "_class_wxPanel","_wxGrid",SwigwxGridTowxPanel},
+    { "_class_wxPanel","_wxPanel",0},
+    { "_class_wxCheckBox","_wxCheckBox",0},
+    { "_wxComboBox","_class_wxComboBox",0},
+    { "_wxRadioButton","_class_wxRadioButton",0},
+    { "_signed_int","_wxCoord",0},
+    { "_signed_int","_wxPrintQuality",0},
+    { "_signed_int","_EBool",0},
+    { "_signed_int","_wxWindowID",0},
+    { "_signed_int","_int",0},
+    { "_class_wxTextCtrl","_wxTextCtrl",0},
+    { "_wxLayoutConstraints","_class_wxLayoutConstraints",0},
+    { "_wxMetaFileDC","_class_wxMetaFileDC",0},
+    { "_class_wxTextDataObject","_wxTextDataObject",0},
+    { "_wxMenu","_class_wxMenu",0},
+    { "_class_wxMoveEvent","_wxMoveEvent",0},
+    { "_wxListBox","_class_wxListBox",0},
+    { "_wxScreenDC","_class_wxScreenDC",0},
+    { "_WXTYPE","_short",0},
+    { "_WXTYPE","_signed_short",0},
+    { "_WXTYPE","_unsigned_short",0},
+    { "_class_wxDropTarget","_wxDropTarget",0},
+    { "_class_wxBrush","_wxBrush",0},
+    { "_unsigned_short","_WXTYPE",0},
+    { "_unsigned_short","_short",0},
+    { "_class_wxWindow","_class_wxSplitterWindow",SwigwxSplitterWindowTowxWindow},
+    { "_class_wxWindow","_wxSplitterWindow",SwigwxSplitterWindowTowxWindow},
+    { "_class_wxWindow","_class_wxNotebook",SwigwxNotebookTowxWindow},
+    { "_class_wxWindow","_wxNotebook",SwigwxNotebookTowxWindow},
+    { "_class_wxWindow","_class_wxGrid",SwigwxGridTowxWindow},
+    { "_class_wxWindow","_wxGrid",SwigwxGridTowxWindow},
+    { "_class_wxWindow","_wxWindow",0},
+    { "_wxSplitterWindow","_class_wxSplitterWindow",0},
+    { "_class_wxStaticText","_wxStaticText",0},
+    { "_class_wxFont","_wxFont",0},
+    { "_wxClipboard","_class_wxClipboard",0},
+    { "_class_wxPyValidator","_wxPyValidator",0},
+    { "_class_wxCloseEvent","_wxCloseEvent",0},
+    { "_wxBusyInfo","_class_wxBusyInfo",0},
+    { "_class_wxMenuEvent","_wxMenuEvent",0},
+    { "_wxPaletteChangedEvent","_class_wxPaletteChangedEvent",0},
+    { "_class_wxPyBitmapDataObject","_wxPyBitmapDataObject",0},
+    { "_wxClientDC","_class_wxClientDC",0},
+    { "_wxMouseEvent","_class_wxMouseEvent",0},
+    { "_class_wxPoint","_wxPoint",0},
+    { "_wxRealPoint","_class_wxRealPoint",0},
+    { "_class_wxRadioBox","_wxRadioBox",0},
+    { "_wxGridCell","_class_wxGridCell",0},
+    { "_signed_short","_WXTYPE",0},
+    { "_signed_short","_short",0},
+    { "_wxMemoryDC","_class_wxMemoryDC",0},
+    { "_wxPyTextDataObject","_class_wxPyTextDataObject",0},
+    { "_class_wxTaskBarIcon","_wxTaskBarIcon",0},
+    { "_wxPaintDC","_class_wxPaintDC",0},
+    { "_class_wxWindowDC","_wxWindowDC",0},
+    { "_class_wxFocusEvent","_wxFocusEvent",0},
+    { "_class_wxMaximizeEvent","_wxMaximizeEvent",0},
+    { "_class_wxAcceleratorEntry","_wxAcceleratorEntry",0},
+    { "_class_wxCursor","_wxCursor",0},
+    { "_wxPyFileDropTarget","_class_wxPyFileDropTarget",0},
+    { "_wxScrolledWindow","_class_wxScrolledWindow",0},
+    { "_unsigned_char","_byte",0},
+    { "_class_wxMetaFileDC","_wxMetaFileDC",0},
+    { "_class_wxMenu","_wxMenu",0},
+    { "_wxControl","_class_wxNotebook",SwigwxNotebookTowxControl},
+    { "_wxControl","_wxNotebook",SwigwxNotebookTowxControl},
+    { "_wxControl","_class_wxControl",0},
+    { "_class_wxListBox","_wxListBox",0},
+    { "_unsigned_int","_wxCoord",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_wxPen","_wxPen",0},
+    { "_short","_WXTYPE",0},
+    { "_short","_unsigned_short",0},
+    { "_short","_signed_short",0},
+    { "_class_wxStaticBox","_wxStaticBox",0},
+    { "_class_wxPyDataObjectSimple","_wxPyDataObjectSimple",0},
+    { "_class_wxPyDropSource","_wxPyDropSource",0},
+    { "_class_wxScrollEvent","_wxScrollEvent",0},
+    { "_wxJoystickEvent","_class_wxJoystickEvent",0},
+    { "_class_wxChoice","_wxChoice",0},
+    { "_class_wxSlider","_wxSlider",0},
+    { "_class_wxImageList","_wxImageList",0},
+    { "_class_wxBitmapButton","_wxBitmapButton",0},
+    { "_class_wxPaletteChangedEvent","_wxPaletteChangedEvent",0},
+    { "_class_wxNotebook","_wxNotebook",0},
+    { "_wxWindowID","_wxCoord",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},
+    { "_class_wxScrollWinEvent","_wxScrollWinEvent",0},
+    { "_int","_wxCoord",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},
+    { "_wxPyCommandEvent","_class_wxPyCommandEvent",0},
+    { "_class_wxSpinEvent","_wxSpinEvent",0},
+    { "_class_wxQueryNewPaletteEvent","_wxQueryNewPaletteEvent",0},
+    { "_class_wxNavigationKeyEvent","_wxNavigationKeyEvent",0},
+    { "_wxButton","_class_wxButton",0},
+    { "_wxSize","_class_wxSize",0},
+    { "_wxRegionIterator","_class_wxRegionIterator",0},
+    { "_class_wxPrinterDC","_wxPrinterDC",0},
+    { "_class_wxPyTextDataObject","_wxPyTextDataObject",0},
+    { "_class_wxPaintDC","_wxPaintDC",0},
+    { "_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0},
+    { "_class_wxPyFileDropTarget","_wxPyFileDropTarget",0},
+    { "_class_wxInitDialogEvent","_wxInitDialogEvent",0},
+    { "_class_wxComboBox","_wxComboBox",0},
+    { "_class_wxRadioButton","_wxRadioButton",0},
+    { "_wxValidator","_class_wxValidator",0},
+    { "_class_wxLayoutConstraints","_wxLayoutConstraints",0},
+    { "_wxIconizeEvent","_class_wxIconizeEvent",0},
+    { "_class_wxControl","_class_wxNotebook",SwigwxNotebookTowxControl},
+    { "_class_wxControl","_wxNotebook",SwigwxNotebookTowxControl},
+    { "_class_wxControl","_wxControl",0},
+    { "_wxStaticBitmap","_class_wxStaticBitmap",0},
+    { "_class_wxIcon","_wxIcon",0},
+    { "_class_wxColour","_wxColour",0},
+    { "_class_wxScreenDC","_wxScreenDC",0},
+    { "_wxPalette","_class_wxPalette",0},
+    { "_class_wxIdleEvent","_wxIdleEvent",0},
+    { "_wxCoord","_int",0},
+    { "_wxCoord","_signed_int",0},
+    { "_wxCoord","_unsigned_int",0},
+    { "_wxCoord","_wxWindowID",0},
+    { "_wxCoord","_uint",0},
+    { "_wxCoord","_EBool",0},
+    { "_wxCoord","_size_t",0},
+    { "_wxCoord","_wxPrintQuality",0},
+    { "_wxEraseEvent","_class_wxEraseEvent",0},
+    { "_wxDataObjectComposite","_class_wxDataObjectComposite",0},
+    { "_class_wxJoystickEvent","_wxJoystickEvent",0},
+    { "_wxRegion","_class_wxRegion",0},
+    { "_class_wxSplitterWindow","_wxSplitterWindow",0},
+    { "_class_wxShowEvent","_wxShowEvent",0},
+    { "_wxPyDropTarget","_class_wxPyDropTarget",0},
+    { "_wxActivateEvent","_class_wxActivateEvent",0},
+    { "_wxGauge","_class_wxGauge",0},
+    { "_class_wxCheckListBox","_wxCheckListBox",0},
+    { "_class_wxBusyInfo","_wxBusyInfo",0},
+    { "_class_wxGridEvent","_wxGridEvent",0},
+    { "_class_wxCommandEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxCommandEvent",0},
+    { "_class_wxClientDC","_wxClientDC",0},
+    { "_class_wxSizeEvent","_wxSizeEvent",0},
+    { "_wxCustomDataObject","_class_wxCustomDataObject",0},
+    { "_class_wxGridCell","_wxGridCell",0},
+    { "_class_wxSize","_wxSize",0},
+    { "_class_wxBitmap","_wxBitmap",0},
+    { "_class_wxMemoryDC","_wxMemoryDC",0},
+    { "_wxPyTextDropTarget","_class_wxPyTextDropTarget",0},
+    { "_wxMenuBar","_class_wxMenuBar",0},
+    { "_wxEvtHandler","_class_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler},
+    { "_wxEvtHandler","_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler},
+    { "_wxEvtHandler","_class_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler},
+    { "_wxEvtHandler","_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler},
+    { "_wxEvtHandler","_class_wxNotebook",SwigwxNotebookTowxEvtHandler},
+    { "_wxEvtHandler","_wxNotebook",SwigwxNotebookTowxEvtHandler},
+    { "_wxEvtHandler","_class_wxGrid",SwigwxGridTowxEvtHandler},
+    { "_wxEvtHandler","_wxGrid",SwigwxGridTowxEvtHandler},
+    { "_wxEvtHandler","_class_wxEvtHandler",0},
+    { "_wxMenuItem","_class_wxMenuItem",0},
+    { "_class_wxScrollBar","_wxScrollBar",0},
+    { "_wxDash","_unsigned_long",0},
+    { "_wxDash","_long",0},
+    { "_class_wxScrolledWindow","_wxScrolledWindow",0},
+    { "_wxKeyEvent","_class_wxKeyEvent",0},
+    { "_wxMoveEvent","_class_wxMoveEvent",0},
+    { "_class_wxPalette","_wxPalette",0},
+    { "_wxFileDataObject","_class_wxFileDataObject",0},
+    { "_class_wxEraseEvent","_wxEraseEvent",0},
+    { "_class_wxDataObjectComposite","_wxDataObjectComposite",0},
+    { "_wxWindow","_class_wxSplitterWindow",SwigwxSplitterWindowTowxWindow},
+    { "_wxWindow","_wxSplitterWindow",SwigwxSplitterWindowTowxWindow},
+    { "_wxWindow","_class_wxNotebook",SwigwxNotebookTowxWindow},
+    { "_wxWindow","_wxNotebook",SwigwxNotebookTowxWindow},
+    { "_wxWindow","_class_wxGrid",SwigwxGridTowxWindow},
+    { "_wxWindow","_wxGrid",SwigwxGridTowxWindow},
+    { "_wxWindow","_class_wxWindow",0},
+    { "_class_wxWindowDestroyEvent","_wxWindowDestroyEvent",0},
+{0,0,0}};
+
 static PyObject *SWIG_globals;
 #ifdef __cplusplus
 extern "C" 
 #endif
 static PyObject *SWIG_globals;
 #ifdef __cplusplus
 extern "C" 
 #endif
-SWIGEXPORT(void,initwindows2c)() {
+SWIGEXPORT(void) initwindows2c() {
         PyObject *m, *d;
         SWIG_globals = SWIG_newvarlink();
         m = Py_InitModule("windows2c", windows2cMethods);
         PyObject *m, *d;
         SWIG_globals = SWIG_newvarlink();
         m = Py_InitModule("windows2c", windows2cMethods);
@@ -4872,310 +5775,9 @@ SWIGEXPORT(void,initwindows2c)() {
         PyDict_SetItemString(d,"wxEVT_TASKBAR_RIGHT_UP", PyInt_FromLong((long) wxEVT_TASKBAR_RIGHT_UP));
         PyDict_SetItemString(d,"wxEVT_TASKBAR_LEFT_DCLICK", PyInt_FromLong((long) wxEVT_TASKBAR_LEFT_DCLICK));
         PyDict_SetItemString(d,"wxEVT_TASKBAR_RIGHT_DCLICK", PyInt_FromLong((long) wxEVT_TASKBAR_RIGHT_DCLICK));
         PyDict_SetItemString(d,"wxEVT_TASKBAR_RIGHT_UP", PyInt_FromLong((long) wxEVT_TASKBAR_RIGHT_UP));
         PyDict_SetItemString(d,"wxEVT_TASKBAR_LEFT_DCLICK", PyInt_FromLong((long) wxEVT_TASKBAR_LEFT_DCLICK));
         PyDict_SetItemString(d,"wxEVT_TASKBAR_RIGHT_DCLICK", PyInt_FromLong((long) wxEVT_TASKBAR_RIGHT_DCLICK));
-/*
- * These are the pointer type-equivalency mappings. 
- * (Used by the SWIG pointer type-checker).
- */
-        SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
-        SWIG_RegisterMapping("_wxEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxGridEvent",SwigwxGridEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxEvent",0);
-        SWIG_RegisterMapping("_class_wxActivateEvent","_wxActivateEvent",0);
-        SWIG_RegisterMapping("_signed_long","_long",0);
-        SWIG_RegisterMapping("_wxMenuEvent","_class_wxMenuEvent",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_int",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_signed_int",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_unsigned_int",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_wxWindowID",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_uint",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_EBool",0);
-        SWIG_RegisterMapping("_wxPrintQuality","_size_t",0);
-        SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
-        SWIG_RegisterMapping("_class_wxMenuBar","_wxMenuBar",0);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxNotebook",SwigwxNotebookTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_wxNotebook",SwigwxNotebookTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxGrid",SwigwxGridTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_wxGrid",SwigwxGridTowxEvtHandler);
-        SWIG_RegisterMapping("_class_wxEvtHandler","_wxEvtHandler",0);
-        SWIG_RegisterMapping("_wxPaintEvent","_class_wxPaintEvent",0);
-        SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
-        SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
-        SWIG_RegisterMapping("_wxNotifyEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
-        SWIG_RegisterMapping("_wxNotifyEvent","_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
-        SWIG_RegisterMapping("_wxNotifyEvent","_class_wxNotifyEvent",0);
-        SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
-        SWIG_RegisterMapping("_wxGrid","_class_wxGrid",0);
-        SWIG_RegisterMapping("_wxPen","_class_wxPen",0);
-        SWIG_RegisterMapping("_wxUpdateUIEvent","_class_wxUpdateUIEvent",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("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
-        SWIG_RegisterMapping("_class_wxGauge","_wxGauge",0);
-        SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
-        SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
-        SWIG_RegisterMapping("_size_t","_wxPrintQuality",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("_wxPanel","_class_wxGrid",SwigwxGridTowxPanel);
-        SWIG_RegisterMapping("_wxPanel","_wxGrid",SwigwxGridTowxPanel);
-        SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
-        SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
-        SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
-        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
-        SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
-        SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
-        SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
-        SWIG_RegisterMapping("_class_wxGrid","_wxGrid",0);
-        SWIG_RegisterMapping("_wxColour","_class_wxColour",0);
-        SWIG_RegisterMapping("_class_wxDialog","_wxDialog",0);
-        SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
-        SWIG_RegisterMapping("_class_wxUpdateUIEvent","_wxUpdateUIEvent",0);
-        SWIG_RegisterMapping("_wxStaticLine","_class_wxStaticLine",0);
-        SWIG_RegisterMapping("_wxBrush","_class_wxBrush",0);
-        SWIG_RegisterMapping("_class_wxNotebookEvent","_wxNotebookEvent",0);
-        SWIG_RegisterMapping("_wxShowEvent","_class_wxShowEvent",0);
-        SWIG_RegisterMapping("_uint","_wxPrintQuality",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","_class_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxGridEvent",SwigwxGridEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxEvent",0);
-        SWIG_RegisterMapping("_wxCheckListBox","_class_wxCheckListBox",0);
-        SWIG_RegisterMapping("_wxSplitterEvent","_class_wxSplitterEvent",0);
-        SWIG_RegisterMapping("_wxGridEvent","_class_wxGridEvent",0);
-        SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
-        SWIG_RegisterMapping("_wxCommandEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
-        SWIG_RegisterMapping("_wxSizeEvent","_class_wxSizeEvent",0);
-        SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
-        SWIG_RegisterMapping("_class_wxButton","_wxButton",0);
-        SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
-        SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
-        SWIG_RegisterMapping("_wxTaskBarIcon","_class_wxTaskBarIcon",0);
-        SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
-        SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
-        SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
-        SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
-        SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
-        SWIG_RegisterMapping("_class_wxNotifyEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
-        SWIG_RegisterMapping("_class_wxNotifyEvent","_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
-        SWIG_RegisterMapping("_class_wxNotifyEvent","_wxNotifyEvent",0);
-        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
-        SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
-        SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
-        SWIG_RegisterMapping("_class_wxStaticLine","_wxStaticLine",0);
-        SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
-        SWIG_RegisterMapping("_EBool","_wxPrintQuality",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("_class_wxSplitterEvent","_wxSplitterEvent",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("_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","_class_wxGrid",SwigwxGridTowxPanel);
-        SWIG_RegisterMapping("_class_wxPanel","_wxGrid",SwigwxGridTowxPanel);
-        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("_signed_int","_wxPrintQuality",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("_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("_WXTYPE","_short",0);
-        SWIG_RegisterMapping("_WXTYPE","_signed_short",0);
-        SWIG_RegisterMapping("_WXTYPE","_unsigned_short",0);
-        SWIG_RegisterMapping("_class_wxBrush","_wxBrush",0);
-        SWIG_RegisterMapping("_unsigned_short","_WXTYPE",0);
-        SWIG_RegisterMapping("_unsigned_short","_short",0);
-        SWIG_RegisterMapping("_class_wxWindow","_class_wxSplitterWindow",SwigwxSplitterWindowTowxWindow);
-        SWIG_RegisterMapping("_class_wxWindow","_wxSplitterWindow",SwigwxSplitterWindowTowxWindow);
-        SWIG_RegisterMapping("_class_wxWindow","_class_wxNotebook",SwigwxNotebookTowxWindow);
-        SWIG_RegisterMapping("_class_wxWindow","_wxNotebook",SwigwxNotebookTowxWindow);
-        SWIG_RegisterMapping("_class_wxWindow","_class_wxGrid",SwigwxGridTowxWindow);
-        SWIG_RegisterMapping("_class_wxWindow","_wxGrid",SwigwxGridTowxWindow);
-        SWIG_RegisterMapping("_class_wxWindow","_wxWindow",0);
-        SWIG_RegisterMapping("_wxSplitterWindow","_class_wxSplitterWindow",0);
-        SWIG_RegisterMapping("_class_wxStaticText","_wxStaticText",0);
-        SWIG_RegisterMapping("_class_wxFont","_wxFont",0);
-        SWIG_RegisterMapping("_class_wxCloseEvent","_wxCloseEvent",0);
-        SWIG_RegisterMapping("_class_wxMenuEvent","_wxMenuEvent",0);
-        SWIG_RegisterMapping("_wxClientDC","_class_wxClientDC",0);
-        SWIG_RegisterMapping("_wxMouseEvent","_class_wxMouseEvent",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","_WXTYPE",0);
-        SWIG_RegisterMapping("_signed_short","_short",0);
-        SWIG_RegisterMapping("_wxMemoryDC","_class_wxMemoryDC",0);
-        SWIG_RegisterMapping("_class_wxTaskBarIcon","_wxTaskBarIcon",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("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
-        SWIG_RegisterMapping("_class_wxCursor","_wxCursor",0);
-        SWIG_RegisterMapping("_wxScrolledWindow","_class_wxScrolledWindow",0);
-        SWIG_RegisterMapping("_unsigned_char","_byte",0);
-        SWIG_RegisterMapping("_class_wxMetaFileDC","_wxMetaFileDC",0);
-        SWIG_RegisterMapping("_class_wxMenu","_wxMenu",0);
-        SWIG_RegisterMapping("_wxControl","_class_wxNotebook",SwigwxNotebookTowxControl);
-        SWIG_RegisterMapping("_wxControl","_wxNotebook",SwigwxNotebookTowxControl);
-        SWIG_RegisterMapping("_wxControl","_class_wxControl",0);
-        SWIG_RegisterMapping("_class_wxListBox","_wxListBox",0);
-        SWIG_RegisterMapping("_unsigned_int","_wxPrintQuality",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_wxPen","_wxPen",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("_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_wxImageList","_wxImageList",0);
-        SWIG_RegisterMapping("_class_wxBitmapButton","_wxBitmapButton",0);
-        SWIG_RegisterMapping("_class_wxNotebook","_wxNotebook",0);
-        SWIG_RegisterMapping("_wxWindowID","_wxPrintQuality",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","_wxPrintQuality",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_wxSpinEvent","_wxSpinEvent",0);
-        SWIG_RegisterMapping("_wxButton","_class_wxButton",0);
-        SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
-        SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
-        SWIG_RegisterMapping("_class_wxPrinterDC","_wxPrinterDC",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_wxLayoutConstraints","_wxLayoutConstraints",0);
-        SWIG_RegisterMapping("_wxIconizeEvent","_class_wxIconizeEvent",0);
-        SWIG_RegisterMapping("_class_wxControl","_class_wxNotebook",SwigwxNotebookTowxControl);
-        SWIG_RegisterMapping("_class_wxControl","_wxNotebook",SwigwxNotebookTowxControl);
-        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("_wxPalette","_class_wxPalette",0);
-        SWIG_RegisterMapping("_class_wxIdleEvent","_wxIdleEvent",0);
-        SWIG_RegisterMapping("_wxEraseEvent","_class_wxEraseEvent",0);
-        SWIG_RegisterMapping("_class_wxJoystickEvent","_wxJoystickEvent",0);
-        SWIG_RegisterMapping("_wxRegion","_class_wxRegion",0);
-        SWIG_RegisterMapping("_class_wxSplitterWindow","_wxSplitterWindow",0);
-        SWIG_RegisterMapping("_class_wxShowEvent","_wxShowEvent",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","_class_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_wxCommandEvent",0);
-        SWIG_RegisterMapping("_class_wxClientDC","_wxClientDC",0);
-        SWIG_RegisterMapping("_class_wxSizeEvent","_wxSizeEvent",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("_wxEvtHandler","_class_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_wxTaskBarIcon",SwigwxTaskBarIconTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_class_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_class_wxNotebook",SwigwxNotebookTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_wxNotebook",SwigwxNotebookTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_class_wxGrid",SwigwxGridTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_wxGrid",SwigwxGridTowxEvtHandler);
-        SWIG_RegisterMapping("_wxEvtHandler","_class_wxEvtHandler",0);
-        SWIG_RegisterMapping("_wxMenuItem","_class_wxMenuItem",0);
-        SWIG_RegisterMapping("_class_wxScrollBar","_wxScrollBar",0);
-        SWIG_RegisterMapping("_wxDash","_unsigned_long",0);
-        SWIG_RegisterMapping("_wxDash","_long",0);
-        SWIG_RegisterMapping("_class_wxScrolledWindow","_wxScrolledWindow",0);
-        SWIG_RegisterMapping("_wxKeyEvent","_class_wxKeyEvent",0);
-        SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
-        SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
-        SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",0);
-        SWIG_RegisterMapping("_wxWindow","_class_wxSplitterWindow",SwigwxSplitterWindowTowxWindow);
-        SWIG_RegisterMapping("_wxWindow","_wxSplitterWindow",SwigwxSplitterWindowTowxWindow);
-        SWIG_RegisterMapping("_wxWindow","_class_wxNotebook",SwigwxNotebookTowxWindow);
-        SWIG_RegisterMapping("_wxWindow","_wxNotebook",SwigwxNotebookTowxWindow);
-        SWIG_RegisterMapping("_wxWindow","_class_wxGrid",SwigwxGridTowxWindow);
-        SWIG_RegisterMapping("_wxWindow","_wxGrid",SwigwxGridTowxWindow);
-        SWIG_RegisterMapping("_wxWindow","_class_wxWindow",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);
+}
 }
 }