]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/gtk/events.cpp
version string is now quoted properly
[wxWidgets.git] / utils / wxPython / src / gtk / events.cpp
index 4145b36f2fe6a5db7a8941ecc5c513da0b7f1b78..feeb36d8f715ca4d52367f2cf090e4a41488bafe 100644 (file)
@@ -3,7 +3,7 @@
  * 
  * This file was automatically generated by :
  * Simplified Wrapper and Interface Generator (SWIG)
- * Version 1.1 (Patch 5)
+ * Version 1.1 (Build 810)
  * 
  * Portions Copyright (c) 1995-1998
  * The University of Utah and The Regents of the University of California.
 /* Definitions for Windows/Unix exporting */
 #if defined(__WIN32__)
 #   if defined(_MSC_VER)
-#      define SWIGEXPORT(a,b) __declspec(dllexport) a b
+#      define SWIGEXPORT(a) __declspec(dllexport) a
 #   else
 #      if defined(__BORLANDC__)
-#          define SWIGEXPORT(a,b) a _export b
+#          define SWIGEXPORT(a) a _export 
 #      else
-#          define SWIGEXPORT(a,b) a b
+#          define SWIGEXPORT(a) a 
 #      endif
 #   endif
 #else
-#   define SWIGEXPORT(a,b) a b
+#   define SWIGEXPORT(a) a 
 #endif
 
 #ifdef __cplusplus
@@ -43,12 +43,12 @@ extern "C" {
 extern void SWIG_MakePtr(char *, void *, char *);
 extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
 extern char *SWIG_GetPtr(char *, void **, char *);
+extern char *SWIG_GetPtrObj(PyObject *, void **, char *);
 extern void SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
 extern PyObject *SWIG_newvarlink(void);
 #ifdef __cplusplus
 }
 #endif
-
 #define SWIG_init    initeventsc
 
 #define SWIG_name    "eventsc"
@@ -104,239 +104,308 @@ static PyObject* t_output_helper(PyObject* target, PyObject* o) {
 }
 
 
-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);
+HELPEREXPORT byte* byte_LIST_helper(PyObject* source);
+HELPEREXPORT int* int_LIST_helper(PyObject* source);
+HELPEREXPORT long* long_LIST_helper(PyObject* source);
+HELPEREXPORT char** string_LIST_helper(PyObject* source);
+HELPEREXPORT wxPoint* wxPoint_LIST_helper(PyObject* source);
+HELPEREXPORT wxBitmap** wxBitmap_LIST_helper(PyObject* source);
+HELPEREXPORT wxString* wxString_LIST_helper(PyObject* source);
+HELPEREXPORT wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
 
 
 static char* wxStringErrorMsg = "string type is required for parameter";
+#ifdef __cplusplus
+extern "C" {
+#endif
 #define wxEvent_GetEventObject(_swigobj)  (_swigobj->GetEventObject())
-static PyObject *_wrap_wxEvent_GetEventObject(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_GetEventObject(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxObject * _result;
     wxEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxEvent_GetEventObject",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxEvent_GetEventObject",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_GetEventObject. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    _result = (wxObject *)wxEvent_GetEventObject(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxObject *)wxEvent_GetEventObject(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxObject_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
 #define wxEvent_GetEventType(_swigobj)  (_swigobj->GetEventType())
-static PyObject *_wrap_wxEvent_GetEventType(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_GetEventType(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxEventType  _result;
     wxEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxEvent_GetEventType",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxEvent_GetEventType",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_GetEventType. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    _result = (wxEventType )wxEvent_GetEventType(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxEventType )wxEvent_GetEventType(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxEvent_GetId(_swigobj)  (_swigobj->GetId())
-static PyObject *_wrap_wxEvent_GetId(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_GetId(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxEvent_GetId",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxEvent_GetId",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_GetId. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxEvent_GetId(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxEvent_GetId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxEvent_GetSkipped(_swigobj)  (_swigobj->GetSkipped())
-static PyObject *_wrap_wxEvent_GetSkipped(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_GetSkipped(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxEvent_GetSkipped",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxEvent_GetSkipped",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_GetSkipped. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxEvent_GetSkipped(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxEvent_GetSkipped(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxEvent_GetTimestamp(_swigobj)  (_swigobj->GetTimestamp())
-static PyObject *_wrap_wxEvent_GetTimestamp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_GetTimestamp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     long  _result;
     wxEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxEvent_GetTimestamp",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxEvent_GetTimestamp",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_GetTimestamp. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    _result = (long )wxEvent_GetTimestamp(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxEvent_GetTimestamp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
 #define wxEvent_SetEventObject(_swigobj,_swigarg0)  (_swigobj->SetEventObject(_swigarg0))
-static PyObject *_wrap_wxEvent_SetEventObject(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_SetEventObject(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxEvent * _arg0;
     wxObject * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","object", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxEvent_SetEventObject",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxEvent_SetEventObject",_kwnames,&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_SetEventObject. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxObject_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxObject_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxEvent_SetEventObject. Expected _wxObject_p.");
         return NULL;
         }
     }
-    wxEvent_SetEventObject(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetEventObject(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxEvent_SetEventType(_swigobj,_swigarg0)  (_swigobj->SetEventType(_swigarg0))
-static PyObject *_wrap_wxEvent_SetEventType(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_SetEventType(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxEvent * _arg0;
     wxEventType  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","typ", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxEvent_SetEventType",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxEvent_SetEventType",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_SetEventType. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    wxEvent_SetEventType(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetEventType(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxEvent_SetId(_swigobj,_swigarg0)  (_swigobj->SetId(_swigarg0))
-static PyObject *_wrap_wxEvent_SetId(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_SetId(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","id", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxEvent_SetId",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxEvent_SetId",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_SetId. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    wxEvent_SetId(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetId(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxEvent_SetTimestamp(_swigobj,_swigarg0)  (_swigobj->SetTimestamp(_swigarg0))
-static PyObject *_wrap_wxEvent_SetTimestamp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_SetTimestamp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxEvent * _arg0;
     long  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","timeStamp", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sl:wxEvent_SetTimestamp",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Ol:wxEvent_SetTimestamp",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_SetTimestamp. Expected _wxEvent_p.");
         return NULL;
         }
     }
-    wxEvent_SetTimestamp(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_SetTimestamp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxEvent_Skip(_swigobj,_swigarg0)  (_swigobj->Skip(_swigarg0))
-static PyObject *_wrap_wxEvent_Skip(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEvent_Skip(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxEvent * _arg0;
-    bool  _arg1 = (1);
-    char * _argc0 = 0;
-    int tempbool1;
+    bool  _arg1 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool1 = (int) TRUE;
+    char *_kwnames[] = { "self","skip", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxEvent_Skip",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxEvent_Skip",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEvent_Skip. Expected _wxEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxEvent_Skip(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxEvent_Skip(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -350,24 +419,30 @@ static void *SwigwxSizeEventTowxEvent(void *ptr) {
 }
 
 #define wxSizeEvent_GetSize(_swigobj)  (_swigobj->GetSize())
-static PyObject *_wrap_wxSizeEvent_GetSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxSizeEvent_GetSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxSize * _result;
     wxSizeEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxSizeEvent_GetSize",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxSizeEvent_GetSize",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSizeEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxSizeEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSizeEvent_GetSize. Expected _wxSizeEvent_p.");
         return NULL;
         }
     }
-    _result = new wxSize (wxSizeEvent_GetSize(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxSize (wxSizeEvent_GetSize(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -380,186 +455,177 @@ static void *SwigwxCloseEventTowxEvent(void *ptr) {
     return (void *) dest;
 }
 
-#define wxCloseEvent_CanVeto(_swigobj)  (_swigobj->CanVeto())
-static PyObject *_wrap_wxCloseEvent_CanVeto(PyObject *self, PyObject *args) {
+#define wxCloseEvent_SetLoggingOff(_swigobj,_swigarg0)  (_swigobj->SetLoggingOff(_swigarg0))
+static PyObject *_wrap_wxCloseEvent_SetLoggingOff(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
-    bool  _result;
     wxCloseEvent * _arg0;
-    char * _argc0 = 0;
+    bool  _arg1;
+    PyObject * _argo0 = 0;
+    int tempbool1;
+    char *_kwnames[] = { "self","loggingOff", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCloseEvent_CanVeto",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxCloseEvent_SetLoggingOff",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_CanVeto. Expected _wxCloseEvent_p.");
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCloseEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_SetLoggingOff. Expected _wxCloseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxCloseEvent_CanVeto(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCloseEvent_SetLoggingOff(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxCloseEvent_GetLoggingOff(_swigobj)  (_swigobj->GetLoggingOff())
-static PyObject *_wrap_wxCloseEvent_GetLoggingOff(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCloseEvent_GetLoggingOff(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxCloseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCloseEvent_GetLoggingOff",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCloseEvent_GetLoggingOff",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCloseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_GetLoggingOff. Expected _wxCloseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxCloseEvent_GetLoggingOff(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCloseEvent_GetLoggingOff(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxCloseEvent_Veto(_swigobj,_swigarg0)  (_swigobj->Veto(_swigarg0))
-static PyObject *_wrap_wxCloseEvent_Veto(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCloseEvent_Veto(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxCloseEvent * _arg0;
-    bool  _arg1 = (1);
-    char * _argc0 = 0;
-    int tempbool1;
+    bool  _arg1 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool1 = (int) TRUE;
+    char *_kwnames[] = { "self","veto", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxCloseEvent_Veto",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxCloseEvent_Veto",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCloseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_Veto. Expected _wxCloseEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxCloseEvent_Veto(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCloseEvent_Veto(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxCloseEvent_GetVeto(_swigobj)  (_swigobj->GetVeto())
-static PyObject *_wrap_wxCloseEvent_GetVeto(PyObject *self, PyObject *args) {
+#define wxCloseEvent_CanVeto(_swigobj)  (_swigobj->CanVeto())
+static PyObject *_wrap_wxCloseEvent_CanVeto(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxCloseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCloseEvent_GetVeto",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCloseEvent_CanVeto",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_GetVeto. Expected _wxCloseEvent_p.");
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCloseEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_CanVeto. Expected _wxCloseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxCloseEvent_GetVeto(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCloseEvent_CanVeto(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxCloseEvent_SetForce(_swigobj,_swigarg0)  (_swigobj->SetForce(_swigarg0))
-static PyObject *_wrap_wxCloseEvent_SetForce(PyObject *self, PyObject *args) {
+#define wxCloseEvent_GetVeto(_swigobj)  (_swigobj->GetVeto())
+static PyObject *_wrap_wxCloseEvent_GetVeto(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
+    bool  _result;
     wxCloseEvent * _arg0;
-    bool  _arg1;
-    char * _argc0 = 0;
-    int tempbool1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxCloseEvent_SetForce",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCloseEvent_GetVeto",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_SetForce. Expected _wxCloseEvent_p.");
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCloseEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_GetVeto. Expected _wxCloseEvent_p.");
         return NULL;
         }
     }
-    _arg1 = (bool ) tempbool1;
-    wxCloseEvent_SetForce(_arg0,_arg1);
-    Py_INCREF(Py_None);
-    _resultobj = Py_None;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCloseEvent_GetVeto(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxCloseEvent_SetCanVeto(_swigobj,_swigarg0)  (_swigobj->SetCanVeto(_swigarg0))
-static PyObject *_wrap_wxCloseEvent_SetCanVeto(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCloseEvent_SetCanVeto(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxCloseEvent * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
+    char *_kwnames[] = { "self","canVeto", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxCloseEvent_SetCanVeto",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxCloseEvent_SetCanVeto",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCloseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_SetCanVeto. Expected _wxCloseEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxCloseEvent_SetCanVeto(_arg0,_arg1);
-    Py_INCREF(Py_None);
-    _resultobj = Py_None;
-    return _resultobj;
-}
-
-#define wxCloseEvent_SetLoggingOff(_swigobj,_swigarg0)  (_swigobj->SetLoggingOff(_swigarg0))
-static PyObject *_wrap_wxCloseEvent_SetLoggingOff(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    wxCloseEvent * _arg0;
-    bool  _arg1;
-    char * _argc0 = 0;
-    int tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxCloseEvent_SetCanVeto(_arg0,_arg1);
 
-    self = self;
-    if(!PyArg_ParseTuple(args,"si:wxCloseEvent_SetLoggingOff",&_argc0,&tempbool1)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_SetLoggingOff. Expected _wxCloseEvent_p.");
-        return NULL;
-        }
-    }
-    _arg1 = (bool ) tempbool1;
-    wxCloseEvent_SetLoggingOff(_arg0,_arg1);
-    Py_INCREF(Py_None);
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-#define wxCloseEvent_GetForce(_swigobj)  (!_swigobj->CanVeto())
-static PyObject *_wrap_wxCloseEvent_GetForce(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    bool  _result;
-    wxCloseEvent * _arg0;
-    char * _argc0 = 0;
-
-    self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCloseEvent_GetForce",&_argc0)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCloseEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCloseEvent_GetForce. Expected _wxCloseEvent_p.");
-        return NULL;
-        }
-    }
-    _result = (bool )wxCloseEvent_GetForce(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
-    return _resultobj;
-}
-
 static void *SwigwxCommandEventTowxEvent(void *ptr) {
     wxCommandEvent *src;
     wxEvent *dest;
@@ -569,128 +635,169 @@ static void *SwigwxCommandEventTowxEvent(void *ptr) {
 }
 
 #define wxCommandEvent_Checked(_swigobj)  (_swigobj->Checked())
-static PyObject *_wrap_wxCommandEvent_Checked(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCommandEvent_Checked(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxCommandEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCommandEvent_Checked",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCommandEvent_Checked",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCommandEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCommandEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCommandEvent_Checked. Expected _wxCommandEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxCommandEvent_Checked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCommandEvent_Checked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxCommandEvent_GetExtraLong(_swigobj)  (_swigobj->GetExtraLong())
-static PyObject *_wrap_wxCommandEvent_GetExtraLong(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCommandEvent_GetExtraLong(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     long  _result;
     wxCommandEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCommandEvent_GetExtraLong",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCommandEvent_GetExtraLong",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCommandEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCommandEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCommandEvent_GetExtraLong. Expected _wxCommandEvent_p.");
         return NULL;
         }
     }
-    _result = (long )wxCommandEvent_GetExtraLong(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxCommandEvent_GetExtraLong(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
 #define wxCommandEvent_GetInt(_swigobj)  (_swigobj->GetInt())
-static PyObject *_wrap_wxCommandEvent_GetInt(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCommandEvent_GetInt(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxCommandEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCommandEvent_GetInt",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCommandEvent_GetInt",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCommandEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCommandEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCommandEvent_GetInt. Expected _wxCommandEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxCommandEvent_GetInt(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxCommandEvent_GetInt(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxCommandEvent_GetSelection(_swigobj)  (_swigobj->GetSelection())
-static PyObject *_wrap_wxCommandEvent_GetSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCommandEvent_GetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxCommandEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCommandEvent_GetSelection",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCommandEvent_GetSelection",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCommandEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCommandEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCommandEvent_GetSelection. Expected _wxCommandEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxCommandEvent_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxCommandEvent_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxCommandEvent_GetString(_swigobj)  (_swigobj->GetString())
-static PyObject *_wrap_wxCommandEvent_GetString(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCommandEvent_GetString(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
-    char * _result;
+    wxString * _result;
     wxCommandEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCommandEvent_GetString",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCommandEvent_GetString",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCommandEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCommandEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCommandEvent_GetString. Expected _wxCommandEvent_p.");
         return NULL;
         }
     }
-    _result = (char *)wxCommandEvent_GetString(_arg0);
-    _resultobj = Py_BuildValue("s", _result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxCommandEvent_GetString(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
     return _resultobj;
 }
 
 #define wxCommandEvent_IsSelection(_swigobj)  (_swigobj->IsSelection())
-static PyObject *_wrap_wxCommandEvent_IsSelection(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxCommandEvent_IsSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxCommandEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxCommandEvent_IsSelection",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxCommandEvent_IsSelection",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxCommandEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxCommandEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxCommandEvent_IsSelection. Expected _wxCommandEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxCommandEvent_IsSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxCommandEvent_IsSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -711,44 +818,118 @@ static void *SwigwxScrollEventTowxEvent(void *ptr) {
 }
 
 #define wxScrollEvent_GetOrientation(_swigobj)  (_swigobj->GetOrientation())
-static PyObject *_wrap_wxScrollEvent_GetOrientation(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxScrollEvent_GetOrientation(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxScrollEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxScrollEvent_GetOrientation",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxScrollEvent_GetOrientation",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxScrollEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxScrollEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxScrollEvent_GetOrientation. Expected _wxScrollEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxScrollEvent_GetOrientation(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollEvent_GetOrientation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxScrollEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
-static PyObject *_wrap_wxScrollEvent_GetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxScrollEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxScrollEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxScrollEvent_GetPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxScrollEvent_GetPosition",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxScrollEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxScrollEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxScrollEvent_GetPosition. Expected _wxScrollEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxScrollEvent_GetPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollEvent_GetPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static void *SwigwxScrollWinEventTowxEvent(void *ptr) {
+    wxScrollWinEvent *src;
+    wxEvent *dest;
+    src = (wxScrollWinEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxScrollWinEvent_GetOrientation(_swigobj)  (_swigobj->GetOrientation())
+static PyObject *_wrap_wxScrollWinEvent_GetOrientation(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxScrollWinEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxScrollWinEvent_GetOrientation",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxScrollWinEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxScrollWinEvent_GetOrientation. Expected _wxScrollWinEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollWinEvent_GetOrientation(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxScrollWinEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
+static PyObject *_wrap_wxScrollWinEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxScrollWinEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxScrollWinEvent_GetPosition",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxScrollWinEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxScrollWinEvent_GetPosition. Expected _wxScrollWinEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxScrollWinEvent_GetPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -785,565 +966,722 @@ static void *SwigwxMouseEventTowxEvent(void *ptr) {
 }
 
 #define wxMouseEvent_IsButton(_swigobj)  (_swigobj->IsButton())
-static PyObject *_wrap_wxMouseEvent_IsButton(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_IsButton(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_IsButton",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_IsButton",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_IsButton. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_IsButton(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_IsButton(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_ButtonDown(_swigobj,_swigarg0)  (_swigobj->ButtonDown(_swigarg0))
-static PyObject *_wrap_wxMouseEvent_ButtonDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_ButtonDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    int  _arg1 = -1;
-    char * _argc0 = 0;
+    int  _arg1 = (int ) -1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxMouseEvent_ButtonDown",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxMouseEvent_ButtonDown",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_ButtonDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_ButtonDClick(_swigobj,_swigarg0)  (_swigobj->ButtonDClick(_swigarg0))
-static PyObject *_wrap_wxMouseEvent_ButtonDClick(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_ButtonDClick(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    int  _arg1 = -1;
-    char * _argc0 = 0;
+    int  _arg1 = (int ) -1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxMouseEvent_ButtonDClick",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxMouseEvent_ButtonDClick",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_ButtonDClick. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonDClick(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonDClick(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_ButtonUp(_swigobj,_swigarg0)  (_swigobj->ButtonUp(_swigarg0))
-static PyObject *_wrap_wxMouseEvent_ButtonUp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_ButtonUp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    int  _arg1 = -1;
-    char * _argc0 = 0;
+    int  _arg1 = (int ) -1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxMouseEvent_ButtonUp",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxMouseEvent_ButtonUp",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_ButtonUp. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonUp(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonUp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_Button(_swigobj,_swigarg0)  (_swigobj->Button(_swigarg0))
-static PyObject *_wrap_wxMouseEvent_Button(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_Button(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxMouseEvent_Button",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxMouseEvent_Button",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_Button. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Button(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Button(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_ButtonIsDown(_swigobj,_swigarg0)  (_swigobj->ButtonIsDown(_swigarg0))
-static PyObject *_wrap_wxMouseEvent_ButtonIsDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_ButtonIsDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxMouseEvent_ButtonIsDown",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxMouseEvent_ButtonIsDown",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_ButtonIsDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ButtonIsDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ButtonIsDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_ControlDown(_swigobj)  (_swigobj->ControlDown())
-static PyObject *_wrap_wxMouseEvent_ControlDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_ControlDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_ControlDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_ControlDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_ControlDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ControlDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ControlDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_MetaDown(_swigobj)  (_swigobj->MetaDown())
-static PyObject *_wrap_wxMouseEvent_MetaDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_MetaDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_MetaDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_MetaDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_MetaDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MetaDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MetaDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_AltDown(_swigobj)  (_swigobj->AltDown())
-static PyObject *_wrap_wxMouseEvent_AltDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_AltDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_AltDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_AltDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_AltDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_AltDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_AltDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_ShiftDown(_swigobj)  (_swigobj->ShiftDown())
-static PyObject *_wrap_wxMouseEvent_ShiftDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_ShiftDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_ShiftDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_ShiftDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_ShiftDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_ShiftDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_ShiftDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_LeftDown(_swigobj)  (_swigobj->LeftDown())
-static PyObject *_wrap_wxMouseEvent_LeftDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_LeftDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_LeftDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_LeftDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_LeftDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_MiddleDown(_swigobj)  (_swigobj->MiddleDown())
-static PyObject *_wrap_wxMouseEvent_MiddleDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_MiddleDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_MiddleDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_MiddleDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_MiddleDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_RightDown(_swigobj)  (_swigobj->RightDown())
-static PyObject *_wrap_wxMouseEvent_RightDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_RightDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_RightDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_RightDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_RightDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_LeftUp(_swigobj)  (_swigobj->LeftUp())
-static PyObject *_wrap_wxMouseEvent_LeftUp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_LeftUp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_LeftUp",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_LeftUp",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_LeftUp. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftUp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftUp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_MiddleUp(_swigobj)  (_swigobj->MiddleUp())
-static PyObject *_wrap_wxMouseEvent_MiddleUp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_MiddleUp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_MiddleUp",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_MiddleUp",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_MiddleUp. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleUp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleUp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_RightUp(_swigobj)  (_swigobj->RightUp())
-static PyObject *_wrap_wxMouseEvent_RightUp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_RightUp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_RightUp",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_RightUp",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_RightUp. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightUp(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightUp(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_LeftDClick(_swigobj)  (_swigobj->LeftDClick())
-static PyObject *_wrap_wxMouseEvent_LeftDClick(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_LeftDClick(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_LeftDClick",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_LeftDClick",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_LeftDClick. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftDClick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftDClick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_MiddleDClick(_swigobj)  (_swigobj->MiddleDClick())
-static PyObject *_wrap_wxMouseEvent_MiddleDClick(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_MiddleDClick(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_MiddleDClick",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_MiddleDClick",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_MiddleDClick. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleDClick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleDClick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_RightDClick(_swigobj)  (_swigobj->RightDClick())
-static PyObject *_wrap_wxMouseEvent_RightDClick(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_RightDClick(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_RightDClick",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_RightDClick",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_RightDClick. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightDClick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightDClick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_LeftIsDown(_swigobj)  (_swigobj->LeftIsDown())
-static PyObject *_wrap_wxMouseEvent_LeftIsDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_LeftIsDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_LeftIsDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_LeftIsDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_LeftIsDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_LeftIsDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_LeftIsDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_MiddleIsDown(_swigobj)  (_swigobj->MiddleIsDown())
-static PyObject *_wrap_wxMouseEvent_MiddleIsDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_MiddleIsDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_MiddleIsDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_MiddleIsDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_MiddleIsDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_MiddleIsDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_MiddleIsDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_RightIsDown(_swigobj)  (_swigobj->RightIsDown())
-static PyObject *_wrap_wxMouseEvent_RightIsDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_RightIsDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_RightIsDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_RightIsDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_RightIsDown. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_RightIsDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_RightIsDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_Dragging(_swigobj)  (_swigobj->Dragging())
-static PyObject *_wrap_wxMouseEvent_Dragging(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_Dragging(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_Dragging",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_Dragging",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_Dragging. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Dragging(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Dragging(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_Moving(_swigobj)  (_swigobj->Moving())
-static PyObject *_wrap_wxMouseEvent_Moving(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_Moving(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_Moving",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_Moving",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_Moving. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Moving(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Moving(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_Entering(_swigobj)  (_swigobj->Entering())
-static PyObject *_wrap_wxMouseEvent_Entering(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_Entering(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_Entering",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_Entering",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_Entering. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Entering(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Entering(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_Leaving(_swigobj)  (_swigobj->Leaving())
-static PyObject *_wrap_wxMouseEvent_Leaving(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_Leaving(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_Leaving",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_Leaving",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_Leaving. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxMouseEvent_Leaving(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxMouseEvent_Leaving(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_Position(_swigobj,_swigarg0,_swigarg1)  (_swigobj->Position(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxMouseEvent_Position(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_Position(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxMouseEvent * _arg0;
     long * _arg1;
     long  temp;
     long * _arg2;
     long  temp0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 {
@@ -1352,16 +1690,21 @@ static PyObject *_wrap_wxMouseEvent_Position(PyObject *self, PyObject *args) {
 {
   _arg2 = &temp0;
 }
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_Position",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_Position",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_Position. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    wxMouseEvent_Position(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxMouseEvent_Position(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     PyObject *o;
@@ -1377,98 +1720,123 @@ static PyObject *_wrap_wxMouseEvent_Position(PyObject *self, PyObject *args) {
 }
 
 #define wxMouseEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
-static PyObject *_wrap_wxMouseEvent_GetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPoint * _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_GetPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_GetPosition",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_GetPosition. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxMouseEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxMouseEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
 #define wxMouseEvent_GetLogicalPosition(_swigobj,_swigarg0)  (_swigobj->GetLogicalPosition(_swigarg0))
-static PyObject *_wrap_wxMouseEvent_GetLogicalPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_GetLogicalPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPoint * _result;
     wxMouseEvent * _arg0;
     wxDC * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxMouseEvent_GetLogicalPosition",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxMouseEvent_GetLogicalPosition",_kwnames,&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_GetLogicalPosition. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxDC_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxMouseEvent_GetLogicalPosition. Expected _wxDC_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxMouseEvent_GetLogicalPosition(_arg0,*_arg1));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxMouseEvent_GetLogicalPosition(_arg0,*_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
 #define wxMouseEvent_GetX(_swigobj)  (_swigobj->GetX())
-static PyObject *_wrap_wxMouseEvent_GetX(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_GetX(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     long  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_GetX",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_GetX",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_GetX. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (long )wxMouseEvent_GetX(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxMouseEvent_GetX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
 #define wxMouseEvent_GetY(_swigobj)  (_swigobj->GetY())
-static PyObject *_wrap_wxMouseEvent_GetY(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMouseEvent_GetY(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     long  _result;
     wxMouseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMouseEvent_GetY",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMouseEvent_GetY",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMouseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMouseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMouseEvent_GetY. Expected _wxMouseEvent_p.");
         return NULL;
         }
     }
-    _result = (long )wxMouseEvent_GetY(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxMouseEvent_GetY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1481,190 +1849,137 @@ static void *SwigwxKeyEventTowxEvent(void *ptr) {
 }
 
 #define wxKeyEvent_ControlDown(_swigobj)  (_swigobj->ControlDown())
-static PyObject *_wrap_wxKeyEvent_ControlDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxKeyEvent_ControlDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxKeyEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_ControlDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxKeyEvent_ControlDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxKeyEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_ControlDown. Expected _wxKeyEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_ControlDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_ControlDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxKeyEvent_MetaDown(_swigobj)  (_swigobj->MetaDown())
-static PyObject *_wrap_wxKeyEvent_MetaDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxKeyEvent_MetaDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxKeyEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_MetaDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxKeyEvent_MetaDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxKeyEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_MetaDown. Expected _wxKeyEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_MetaDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_MetaDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxKeyEvent_AltDown(_swigobj)  (_swigobj->AltDown())
-static PyObject *_wrap_wxKeyEvent_AltDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxKeyEvent_AltDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxKeyEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_AltDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxKeyEvent_AltDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxKeyEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_AltDown. Expected _wxKeyEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_AltDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_AltDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxKeyEvent_ShiftDown(_swigobj)  (_swigobj->ShiftDown())
-static PyObject *_wrap_wxKeyEvent_ShiftDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxKeyEvent_ShiftDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxKeyEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_ShiftDown",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxKeyEvent_ShiftDown",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxKeyEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_ShiftDown. Expected _wxKeyEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxKeyEvent_ShiftDown(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxKeyEvent_ShiftDown(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxKeyEvent_KeyCode(_swigobj)  (_swigobj->KeyCode())
-static PyObject *_wrap_wxKeyEvent_KeyCode(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxKeyEvent_KeyCode(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     long  _result;
     wxKeyEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_KeyCode",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxKeyEvent_KeyCode",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxKeyEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_KeyCode. Expected _wxKeyEvent_p.");
         return NULL;
         }
     }
-    _result = (long )wxKeyEvent_KeyCode(_arg0);
-    _resultobj = Py_BuildValue("l",_result);
-    return _resultobj;
-}
-
-#define wxKeyEvent_Position(_swigobj,_swigarg0,_swigarg1)  (_swigobj->Position(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxKeyEvent_Position(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    wxKeyEvent * _arg0;
-    float * _arg1;
-    float  temp;
-    float * _arg2;
-    float  temp0;
-    char * _argc0 = 0;
-
-    self = self;
-{
-  _arg1 = &temp;
-}
-{
-  _arg2 = &temp0;
-}
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_Position",&_argc0)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_Position. Expected _wxKeyEvent_p.");
-        return NULL;
-        }
-    }
-    wxKeyEvent_Position(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
-    _resultobj = Py_None;
 {
-    PyObject *o;
-    o = PyFloat_FromDouble((double) (*_arg1));
-    _resultobj = t_output_helper(_resultobj, o);
-}
-{
-    PyObject *o;
-    o = PyFloat_FromDouble((double) (*_arg2));
-    _resultobj = t_output_helper(_resultobj, o);
-}
-    return _resultobj;
-}
-
-#define wxKeyEvent_GetX(_swigobj)  (_swigobj->GetX())
-static PyObject *_wrap_wxKeyEvent_GetX(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    float  _result;
-    wxKeyEvent * _arg0;
-    char * _argc0 = 0;
-
-    self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_GetX",&_argc0)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_GetX. Expected _wxKeyEvent_p.");
-        return NULL;
-        }
-    }
-    _result = (float )wxKeyEvent_GetX(_arg0);
-    _resultobj = Py_BuildValue("f",_result);
-    return _resultobj;
-}
-
-#define wxKeyEvent_GetY(_swigobj)  (_swigobj->GetY())
-static PyObject *_wrap_wxKeyEvent_GetY(PyObject *self, PyObject *args) {
-    PyObject * _resultobj;
-    float  _result;
-    wxKeyEvent * _arg0;
-    char * _argc0 = 0;
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (long )wxKeyEvent_KeyCode(_arg0);
 
-    self = self;
-    if(!PyArg_ParseTuple(args,"s:wxKeyEvent_GetY",&_argc0)) 
-        return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxKeyEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxKeyEvent_GetY. Expected _wxKeyEvent_p.");
-        return NULL;
-        }
-    }
-    _result = (float )wxKeyEvent_GetY(_arg0);
-    _resultobj = Py_BuildValue("f",_result);
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("l",_result);
     return _resultobj;
 }
 
@@ -1677,24 +1992,30 @@ static void *SwigwxMoveEventTowxEvent(void *ptr) {
 }
 
 #define wxMoveEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
-static PyObject *_wrap_wxMoveEvent_GetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMoveEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPoint * _result;
     wxMoveEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMoveEvent_GetPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMoveEvent_GetPosition",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMoveEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMoveEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMoveEvent_GetPosition. Expected _wxMoveEvent_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxMoveEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxMoveEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1716,25 +2037,36 @@ static void *SwigwxEraseEventTowxEvent(void *ptr) {
 }
 
 #define wxEraseEvent_GetDC(_swigobj)  (_swigobj->GetDC())
-static PyObject *_wrap_wxEraseEvent_GetDC(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxEraseEvent_GetDC(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxDC * _result;
     wxEraseEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxEraseEvent_GetDC",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxEraseEvent_GetDC",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxEraseEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxEraseEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxEraseEvent_GetDC. Expected _wxEraseEvent_p.");
         return NULL;
         }
     }
-    _result = (wxDC *)wxEraseEvent_GetDC(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxDC_p");
-    _resultobj = Py_BuildValue("s",_ptemp);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxDC *)wxEraseEvent_GetDC(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxDC_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
     return _resultobj;
 }
 
@@ -1755,23 +2087,29 @@ static void *SwigwxActivateEventTowxEvent(void *ptr) {
 }
 
 #define wxActivateEvent_GetActive(_swigobj)  (_swigobj->GetActive())
-static PyObject *_wrap_wxActivateEvent_GetActive(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxActivateEvent_GetActive(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxActivateEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxActivateEvent_GetActive",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxActivateEvent_GetActive",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxActivateEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxActivateEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxActivateEvent_GetActive. Expected _wxActivateEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxActivateEvent_GetActive(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxActivateEvent_GetActive(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1792,23 +2130,29 @@ static void *SwigwxMenuEventTowxEvent(void *ptr) {
 }
 
 #define wxMenuEvent_GetMenuId(_swigobj)  (_swigobj->GetMenuId())
-static PyObject *_wrap_wxMenuEvent_GetMenuId(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxMenuEvent_GetMenuId(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxMenuEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxMenuEvent_GetMenuId",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMenuEvent_GetMenuId",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxMenuEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMenuEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMenuEvent_GetMenuId. Expected _wxMenuEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxMenuEvent_GetMenuId(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxMenuEvent_GetMenuId(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1821,47 +2165,59 @@ static void *SwigwxShowEventTowxEvent(void *ptr) {
 }
 
 #define wxShowEvent_SetShow(_swigobj,_swigarg0)  (_swigobj->SetShow(_swigarg0))
-static PyObject *_wrap_wxShowEvent_SetShow(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxShowEvent_SetShow(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxShowEvent * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
+    char *_kwnames[] = { "self","show", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxShowEvent_SetShow",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxShowEvent_SetShow",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxShowEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxShowEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxShowEvent_SetShow. Expected _wxShowEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxShowEvent_SetShow(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxShowEvent_SetShow(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxShowEvent_GetShow(_swigobj)  (_swigobj->GetShow())
-static PyObject *_wrap_wxShowEvent_GetShow(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxShowEvent_GetShow(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxShowEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxShowEvent_GetShow",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxShowEvent_GetShow",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxShowEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxShowEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxShowEvent_GetShow. Expected _wxShowEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxShowEvent_GetShow(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxShowEvent_GetShow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1890,355 +2246,452 @@ static void *SwigwxJoystickEventTowxEvent(void *ptr) {
 }
 
 #define wxJoystickEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
-static PyObject *_wrap_wxJoystickEvent_GetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPoint * _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_GetPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_GetPosition",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_GetPosition. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxJoystickEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxJoystickEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
 #define wxJoystickEvent_GetZPosition(_swigobj)  (_swigobj->GetZPosition())
-static PyObject *_wrap_wxJoystickEvent_GetZPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_GetZPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_GetZPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_GetZPosition",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_GetZPosition. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetZPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetZPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_GetButtonState(_swigobj)  (_swigobj->GetButtonState())
-static PyObject *_wrap_wxJoystickEvent_GetButtonState(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_GetButtonState(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_GetButtonState",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_GetButtonState",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_GetButtonState. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetButtonState(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetButtonState(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_GetButtonChange(_swigobj)  (_swigobj->GetButtonChange())
-static PyObject *_wrap_wxJoystickEvent_GetButtonChange(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_GetButtonChange(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_GetButtonChange",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_GetButtonChange",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_GetButtonChange. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetButtonChange(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetButtonChange(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_GetJoystick(_swigobj)  (_swigobj->GetJoystick())
-static PyObject *_wrap_wxJoystickEvent_GetJoystick(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_GetJoystick(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_GetJoystick",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_GetJoystick",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_GetJoystick. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxJoystickEvent_GetJoystick(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxJoystickEvent_GetJoystick(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_SetJoystick(_swigobj,_swigarg0)  (_swigobj->SetJoystick(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_SetJoystick(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_SetJoystick(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxJoystickEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","stick", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxJoystickEvent_SetJoystick",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxJoystickEvent_SetJoystick",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_SetJoystick. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    wxJoystickEvent_SetJoystick(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetJoystick(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxJoystickEvent_SetButtonState(_swigobj,_swigarg0)  (_swigobj->SetButtonState(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_SetButtonState(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_SetButtonState(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxJoystickEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","state", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxJoystickEvent_SetButtonState",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxJoystickEvent_SetButtonState",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_SetButtonState. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    wxJoystickEvent_SetButtonState(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetButtonState(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxJoystickEvent_SetButtonChange(_swigobj,_swigarg0)  (_swigobj->SetButtonChange(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_SetButtonChange(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_SetButtonChange(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxJoystickEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","change", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxJoystickEvent_SetButtonChange",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxJoystickEvent_SetButtonChange",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_SetButtonChange. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    wxJoystickEvent_SetButtonChange(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetButtonChange(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxJoystickEvent_SetPosition(_swigobj,_swigarg0)  (_swigobj->SetPosition(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_SetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_SetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxJoystickEvent * _arg0;
     wxPoint * _arg1;
-    char * _argc0 = 0;
-    char * _argc1 = 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","pos", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ss:wxJoystickEvent_SetPosition",&_argc0,&_argc1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxJoystickEvent_SetPosition",_kwnames,&_argo0,&_argo1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_SetPosition. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    if (_argc1) {
-        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxPoint_p")) {
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxJoystickEvent_SetPosition. Expected _wxPoint_p.");
         return NULL;
         }
     }
-    wxJoystickEvent_SetPosition(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetPosition(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxJoystickEvent_SetZPosition(_swigobj,_swigarg0)  (_swigobj->SetZPosition(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_SetZPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_SetZPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxJoystickEvent * _arg0;
     int  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","zPos", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxJoystickEvent_SetZPosition",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxJoystickEvent_SetZPosition",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_SetZPosition. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    wxJoystickEvent_SetZPosition(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxJoystickEvent_SetZPosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxJoystickEvent_IsButton(_swigobj)  (_swigobj->IsButton())
-static PyObject *_wrap_wxJoystickEvent_IsButton(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_IsButton(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_IsButton",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_IsButton",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_IsButton. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_IsButton(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_IsButton(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_IsMove(_swigobj)  (_swigobj->IsMove())
-static PyObject *_wrap_wxJoystickEvent_IsMove(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_IsMove(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_IsMove",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_IsMove",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_IsMove. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_IsMove(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_IsMove(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_IsZMove(_swigobj)  (_swigobj->IsZMove())
-static PyObject *_wrap_wxJoystickEvent_IsZMove(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_IsZMove(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxJoystickEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxJoystickEvent_IsZMove",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxJoystickEvent_IsZMove",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_IsZMove. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_IsZMove(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_IsZMove(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_ButtonDown(_swigobj,_swigarg0)  (_swigobj->ButtonDown(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_ButtonDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_ButtonDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxJoystickEvent * _arg0;
-    int  _arg1 = wxJOY_BUTTON_ANY;
-    char * _argc0 = 0;
+    int  _arg1 = (int ) wxJOY_BUTTON_ANY;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxJoystickEvent_ButtonDown",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxJoystickEvent_ButtonDown",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_ButtonDown. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_ButtonDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_ButtonDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_ButtonUp(_swigobj,_swigarg0)  (_swigobj->ButtonUp(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_ButtonUp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_ButtonUp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxJoystickEvent * _arg0;
-    int  _arg1 = wxJOY_BUTTON_ANY;
-    char * _argc0 = 0;
+    int  _arg1 = (int ) wxJOY_BUTTON_ANY;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxJoystickEvent_ButtonUp",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxJoystickEvent_ButtonUp",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_ButtonUp. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_ButtonUp(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_ButtonUp(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxJoystickEvent_ButtonIsDown(_swigobj,_swigarg0)  (_swigobj->ButtonIsDown(_swigarg0))
-static PyObject *_wrap_wxJoystickEvent_ButtonIsDown(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxJoystickEvent_ButtonIsDown(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxJoystickEvent * _arg0;
-    int  _arg1 = wxJOY_BUTTON_ANY;
-    char * _argc0 = 0;
+    int  _arg1 = (int ) wxJOY_BUTTON_ANY;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","but", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxJoystickEvent_ButtonIsDown",&_argc0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxJoystickEvent_ButtonIsDown",_kwnames,&_argo0,&_arg1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxJoystickEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxJoystickEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxJoystickEvent_ButtonIsDown. Expected _wxJoystickEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxJoystickEvent_ButtonIsDown(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxJoystickEvent_ButtonIsDown(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2251,46 +2704,58 @@ static void *SwigwxDropFilesEventTowxEvent(void *ptr) {
 }
 
 #define wxDropFilesEvent_GetPosition(_swigobj)  (_swigobj->GetPosition())
-static PyObject *_wrap_wxDropFilesEvent_GetPosition(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxDropFilesEvent_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPoint * _result;
     wxDropFilesEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxDropFilesEvent_GetPosition",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxDropFilesEvent_GetPosition",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxDropFilesEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxDropFilesEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxDropFilesEvent_GetPosition. Expected _wxDropFilesEvent_p.");
         return NULL;
         }
     }
-    _result = new wxPoint (wxDropFilesEvent_GetPosition(_arg0));
-    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxPoint (wxDropFilesEvent_GetPosition(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
 #define wxDropFilesEvent_GetNumberOfFiles(_swigobj)  (_swigobj->GetNumberOfFiles())
-static PyObject *_wrap_wxDropFilesEvent_GetNumberOfFiles(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxDropFilesEvent_GetNumberOfFiles(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     int  _result;
     wxDropFilesEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxDropFilesEvent_GetNumberOfFiles",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxDropFilesEvent_GetNumberOfFiles",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxDropFilesEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxDropFilesEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxDropFilesEvent_GetNumberOfFiles. Expected _wxDropFilesEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxDropFilesEvent_GetNumberOfFiles(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxDropFilesEvent_GetNumberOfFiles(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2309,23 +2774,29 @@ static PyObject * wxDropFilesEvent_GetFiles(wxDropFilesEvent *self) {
             }
             return list;
         }
-static PyObject *_wrap_wxDropFilesEvent_GetFiles(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxDropFilesEvent_GetFiles(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _result;
     wxDropFilesEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxDropFilesEvent_GetFiles",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxDropFilesEvent_GetFiles",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxDropFilesEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxDropFilesEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxDropFilesEvent_GetFiles. Expected _wxDropFilesEvent_p.");
         return NULL;
         }
     }
-    _result = (PyObject *)wxDropFilesEvent_GetFiles(_arg0);
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxDropFilesEvent_GetFiles(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
   _resultobj = _result;
 }
     return _resultobj;
@@ -2340,47 +2811,59 @@ static void *SwigwxIdleEventTowxEvent(void *ptr) {
 }
 
 #define wxIdleEvent_RequestMore(_swigobj,_swigarg0)  (_swigobj->RequestMore(_swigarg0))
-static PyObject *_wrap_wxIdleEvent_RequestMore(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxIdleEvent_RequestMore(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxIdleEvent * _arg0;
-    bool  _arg1 = (1);
-    char * _argc0 = 0;
-    int tempbool1;
+    bool  _arg1 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    int tempbool1 = (int) TRUE;
+    char *_kwnames[] = { "self","needMore", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s|i:wxIdleEvent_RequestMore",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxIdleEvent_RequestMore",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxIdleEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxIdleEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxIdleEvent_RequestMore. Expected _wxIdleEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxIdleEvent_RequestMore(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxIdleEvent_RequestMore(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxIdleEvent_MoreRequested(_swigobj)  (_swigobj->MoreRequested())
-static PyObject *_wrap_wxIdleEvent_MoreRequested(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxIdleEvent_MoreRequested(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxIdleEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxIdleEvent_MoreRequested",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxIdleEvent_MoreRequested",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxIdleEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxIdleEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxIdleEvent_MoreRequested. Expected _wxIdleEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxIdleEvent_MoreRequested(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxIdleEvent_MoreRequested(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2393,65 +2876,83 @@ static void *SwigwxUpdateUIEventTowxEvent(void *ptr) {
 }
 
 #define wxUpdateUIEvent_GetChecked(_swigobj)  (_swigobj->GetChecked())
-static PyObject *_wrap_wxUpdateUIEvent_GetChecked(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_GetChecked(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxUpdateUIEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxUpdateUIEvent_GetChecked",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxUpdateUIEvent_GetChecked",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_GetChecked. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetChecked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetChecked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_GetEnabled(_swigobj)  (_swigobj->GetEnabled())
-static PyObject *_wrap_wxUpdateUIEvent_GetEnabled(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_GetEnabled(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxUpdateUIEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxUpdateUIEvent_GetEnabled",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxUpdateUIEvent_GetEnabled",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_GetEnabled. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetEnabled(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_GetText(_swigobj)  (_swigobj->GetText())
-static PyObject *_wrap_wxUpdateUIEvent_GetText(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_GetText(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxString * _result;
     wxUpdateUIEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxUpdateUIEvent_GetText",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxUpdateUIEvent_GetText",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_GetText. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
-    _result = new wxString (wxUpdateUIEvent_GetText(_arg0));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxUpdateUIEvent_GetText(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2461,129 +2962,161 @@ static PyObject *_wrap_wxUpdateUIEvent_GetText(PyObject *self, PyObject *args) {
 }
 
 #define wxUpdateUIEvent_GetSetText(_swigobj)  (_swigobj->GetSetText())
-static PyObject *_wrap_wxUpdateUIEvent_GetSetText(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_GetSetText(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxUpdateUIEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxUpdateUIEvent_GetSetText",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxUpdateUIEvent_GetSetText",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_GetSetText. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetSetText(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetSetText(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_GetSetChecked(_swigobj)  (_swigobj->GetSetChecked())
-static PyObject *_wrap_wxUpdateUIEvent_GetSetChecked(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_GetSetChecked(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxUpdateUIEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxUpdateUIEvent_GetSetChecked",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxUpdateUIEvent_GetSetChecked",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_GetSetChecked. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetSetChecked(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetSetChecked(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_GetSetEnabled(_swigobj)  (_swigobj->GetSetEnabled())
-static PyObject *_wrap_wxUpdateUIEvent_GetSetEnabled(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_GetSetEnabled(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     bool  _result;
     wxUpdateUIEvent * _arg0;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxUpdateUIEvent_GetSetEnabled",&_argc0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxUpdateUIEvent_GetSetEnabled",_kwnames,&_argo0)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_GetSetEnabled. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
-    _result = (bool )wxUpdateUIEvent_GetSetEnabled(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxUpdateUIEvent_GetSetEnabled(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_Check(_swigobj,_swigarg0)  (_swigobj->Check(_swigarg0))
-static PyObject *_wrap_wxUpdateUIEvent_Check(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_Check(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxUpdateUIEvent * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
+    char *_kwnames[] = { "self","check", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxUpdateUIEvent_Check",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxUpdateUIEvent_Check",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_Check. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxUpdateUIEvent_Check(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxUpdateUIEvent_Check(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_Enable(_swigobj,_swigarg0)  (_swigobj->Enable(_swigarg0))
-static PyObject *_wrap_wxUpdateUIEvent_Enable(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_Enable(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxUpdateUIEvent * _arg0;
     bool  _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     int tempbool1;
+    char *_kwnames[] = { "self","enable", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"si:wxUpdateUIEvent_Enable",&_argc0,&tempbool1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxUpdateUIEvent_Enable",_kwnames,&_argo0,&tempbool1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_Enable. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxUpdateUIEvent_Enable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxUpdateUIEvent_Enable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
 #define wxUpdateUIEvent_SetText(_swigobj,_swigarg0)  (_swigobj->SetText(_swigarg0))
-static PyObject *_wrap_wxUpdateUIEvent_SetText(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxUpdateUIEvent_SetText(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxUpdateUIEvent * _arg0;
     wxString * _arg1;
-    char * _argc0 = 0;
+    PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","text", NULL };
 
     self = self;
-    if(!PyArg_ParseTuple(args,"sO:wxUpdateUIEvent_SetText",&_argc0,&_obj1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxUpdateUIEvent_SetText",_kwnames,&_argo0,&_obj1)) 
         return NULL;
-    if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxUpdateUIEvent_p")) {
             PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxUpdateUIEvent_SetText. Expected _wxUpdateUIEvent_p.");
         return NULL;
         }
@@ -2593,10 +3126,14 @@ static PyObject *_wrap_wxUpdateUIEvent_SetText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxUpdateUIEvent_SetText(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxUpdateUIEvent_SetText(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -2613,328 +3150,595 @@ static void *SwigwxSysColourChangedEventTowxEvent(void *ptr) {
     return (void *) dest;
 }
 
+static void *SwigwxPyEventTowxCommandEvent(void *ptr) {
+    wxPyEvent *src;
+    wxCommandEvent *dest;
+    src = (wxPyEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyEventTowxEvent(void *ptr) {
+    wxPyEvent *src;
+    wxEvent *dest;
+    src = (wxPyEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define new_wxPyEvent(_swigarg0,_swigarg1) (new wxPyEvent(_swigarg0,_swigarg1))
+static PyObject *_wrap_new_wxPyEvent(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyEvent * _result;
+    wxEventType  _arg0 = (wxEventType ) wxEVT_NULL;
+    PyObject * _arg1 = (PyObject *) Py_None;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "commandType","userData", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|iO:new_wxPyEvent",_kwnames,&_arg0,&_obj1)) 
+        return NULL;
+    if (_obj1)
+{
+  _arg1 = _obj1;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyEvent *)new_wxPyEvent(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyEvent_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define delete_wxPyEvent(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxPyEvent(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:delete_wxPyEvent",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxPyEvent. Expected _wxPyEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxPyEvent(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyEvent_SetUserData(_swigobj,_swigarg0)  (_swigobj->SetUserData(_swigarg0))
+static PyObject *_wrap_wxPyEvent_SetUserData(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyEvent * _arg0;
+    PyObject * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","userData", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEvent_SetUserData",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEvent_SetUserData. Expected _wxPyEvent_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyEvent_SetUserData(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyEvent_GetUserData(_swigobj)  (_swigobj->GetUserData())
+static PyObject *_wrap_wxPyEvent_GetUserData(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    PyObject * _result;
+    wxPyEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyEvent_GetUserData",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEvent_GetUserData. Expected _wxPyEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (PyObject *)wxPyEvent_GetUserData(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}{
+  _resultobj = _result;
+}
+    return _resultobj;
+}
+
+static void *SwigwxNotifyEventTowxCommandEvent(void *ptr) {
+    wxNotifyEvent *src;
+    wxCommandEvent *dest;
+    src = (wxNotifyEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxNotifyEventTowxEvent(void *ptr) {
+    wxNotifyEvent *src;
+    wxEvent *dest;
+    src = (wxNotifyEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxNotifyEvent_IsAllowed(_swigobj)  (_swigobj->IsAllowed())
+static PyObject *_wrap_wxNotifyEvent_IsAllowed(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxNotifyEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotifyEvent_IsAllowed",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotifyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotifyEvent_IsAllowed. Expected _wxNotifyEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotifyEvent_IsAllowed(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxNotifyEvent_Veto(_swigobj)  (_swigobj->Veto())
+static PyObject *_wrap_wxNotifyEvent_Veto(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxNotifyEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxNotifyEvent_Veto",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxNotifyEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotifyEvent_Veto. Expected _wxNotifyEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotifyEvent_Veto(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 static PyMethodDef eventscMethods[] = {
-        { "wxUpdateUIEvent_SetText", _wrap_wxUpdateUIEvent_SetText, 1 },
-        { "wxUpdateUIEvent_Enable", _wrap_wxUpdateUIEvent_Enable, 1 },
-        { "wxUpdateUIEvent_Check", _wrap_wxUpdateUIEvent_Check, 1 },
-        { "wxUpdateUIEvent_GetSetEnabled", _wrap_wxUpdateUIEvent_GetSetEnabled, 1 },
-        { "wxUpdateUIEvent_GetSetChecked", _wrap_wxUpdateUIEvent_GetSetChecked, 1 },
-        { "wxUpdateUIEvent_GetSetText", _wrap_wxUpdateUIEvent_GetSetText, 1 },
-        { "wxUpdateUIEvent_GetText", _wrap_wxUpdateUIEvent_GetText, 1 },
-        { "wxUpdateUIEvent_GetEnabled", _wrap_wxUpdateUIEvent_GetEnabled, 1 },
-        { "wxUpdateUIEvent_GetChecked", _wrap_wxUpdateUIEvent_GetChecked, 1 },
-        { "wxIdleEvent_MoreRequested", _wrap_wxIdleEvent_MoreRequested, 1 },
-        { "wxIdleEvent_RequestMore", _wrap_wxIdleEvent_RequestMore, 1 },
-        { "wxDropFilesEvent_GetFiles", _wrap_wxDropFilesEvent_GetFiles, 1 },
-        { "wxDropFilesEvent_GetNumberOfFiles", _wrap_wxDropFilesEvent_GetNumberOfFiles, 1 },
-        { "wxDropFilesEvent_GetPosition", _wrap_wxDropFilesEvent_GetPosition, 1 },
-        { "wxJoystickEvent_ButtonIsDown", _wrap_wxJoystickEvent_ButtonIsDown, 1 },
-        { "wxJoystickEvent_ButtonUp", _wrap_wxJoystickEvent_ButtonUp, 1 },
-        { "wxJoystickEvent_ButtonDown", _wrap_wxJoystickEvent_ButtonDown, 1 },
-        { "wxJoystickEvent_IsZMove", _wrap_wxJoystickEvent_IsZMove, 1 },
-        { "wxJoystickEvent_IsMove", _wrap_wxJoystickEvent_IsMove, 1 },
-        { "wxJoystickEvent_IsButton", _wrap_wxJoystickEvent_IsButton, 1 },
-        { "wxJoystickEvent_SetZPosition", _wrap_wxJoystickEvent_SetZPosition, 1 },
-        { "wxJoystickEvent_SetPosition", _wrap_wxJoystickEvent_SetPosition, 1 },
-        { "wxJoystickEvent_SetButtonChange", _wrap_wxJoystickEvent_SetButtonChange, 1 },
-        { "wxJoystickEvent_SetButtonState", _wrap_wxJoystickEvent_SetButtonState, 1 },
-        { "wxJoystickEvent_SetJoystick", _wrap_wxJoystickEvent_SetJoystick, 1 },
-        { "wxJoystickEvent_GetJoystick", _wrap_wxJoystickEvent_GetJoystick, 1 },
-        { "wxJoystickEvent_GetButtonChange", _wrap_wxJoystickEvent_GetButtonChange, 1 },
-        { "wxJoystickEvent_GetButtonState", _wrap_wxJoystickEvent_GetButtonState, 1 },
-        { "wxJoystickEvent_GetZPosition", _wrap_wxJoystickEvent_GetZPosition, 1 },
-        { "wxJoystickEvent_GetPosition", _wrap_wxJoystickEvent_GetPosition, 1 },
-        { "wxShowEvent_GetShow", _wrap_wxShowEvent_GetShow, 1 },
-        { "wxShowEvent_SetShow", _wrap_wxShowEvent_SetShow, 1 },
-        { "wxMenuEvent_GetMenuId", _wrap_wxMenuEvent_GetMenuId, 1 },
-        { "wxActivateEvent_GetActive", _wrap_wxActivateEvent_GetActive, 1 },
-        { "wxEraseEvent_GetDC", _wrap_wxEraseEvent_GetDC, 1 },
-        { "wxMoveEvent_GetPosition", _wrap_wxMoveEvent_GetPosition, 1 },
-        { "wxKeyEvent_GetY", _wrap_wxKeyEvent_GetY, 1 },
-        { "wxKeyEvent_GetX", _wrap_wxKeyEvent_GetX, 1 },
-        { "wxKeyEvent_Position", _wrap_wxKeyEvent_Position, 1 },
-        { "wxKeyEvent_KeyCode", _wrap_wxKeyEvent_KeyCode, 1 },
-        { "wxKeyEvent_ShiftDown", _wrap_wxKeyEvent_ShiftDown, 1 },
-        { "wxKeyEvent_AltDown", _wrap_wxKeyEvent_AltDown, 1 },
-        { "wxKeyEvent_MetaDown", _wrap_wxKeyEvent_MetaDown, 1 },
-        { "wxKeyEvent_ControlDown", _wrap_wxKeyEvent_ControlDown, 1 },
-        { "wxMouseEvent_GetY", _wrap_wxMouseEvent_GetY, 1 },
-        { "wxMouseEvent_GetX", _wrap_wxMouseEvent_GetX, 1 },
-        { "wxMouseEvent_GetLogicalPosition", _wrap_wxMouseEvent_GetLogicalPosition, 1 },
-        { "wxMouseEvent_GetPosition", _wrap_wxMouseEvent_GetPosition, 1 },
-        { "wxMouseEvent_Position", _wrap_wxMouseEvent_Position, 1 },
-        { "wxMouseEvent_Leaving", _wrap_wxMouseEvent_Leaving, 1 },
-        { "wxMouseEvent_Entering", _wrap_wxMouseEvent_Entering, 1 },
-        { "wxMouseEvent_Moving", _wrap_wxMouseEvent_Moving, 1 },
-        { "wxMouseEvent_Dragging", _wrap_wxMouseEvent_Dragging, 1 },
-        { "wxMouseEvent_RightIsDown", _wrap_wxMouseEvent_RightIsDown, 1 },
-        { "wxMouseEvent_MiddleIsDown", _wrap_wxMouseEvent_MiddleIsDown, 1 },
-        { "wxMouseEvent_LeftIsDown", _wrap_wxMouseEvent_LeftIsDown, 1 },
-        { "wxMouseEvent_RightDClick", _wrap_wxMouseEvent_RightDClick, 1 },
-        { "wxMouseEvent_MiddleDClick", _wrap_wxMouseEvent_MiddleDClick, 1 },
-        { "wxMouseEvent_LeftDClick", _wrap_wxMouseEvent_LeftDClick, 1 },
-        { "wxMouseEvent_RightUp", _wrap_wxMouseEvent_RightUp, 1 },
-        { "wxMouseEvent_MiddleUp", _wrap_wxMouseEvent_MiddleUp, 1 },
-        { "wxMouseEvent_LeftUp", _wrap_wxMouseEvent_LeftUp, 1 },
-        { "wxMouseEvent_RightDown", _wrap_wxMouseEvent_RightDown, 1 },
-        { "wxMouseEvent_MiddleDown", _wrap_wxMouseEvent_MiddleDown, 1 },
-        { "wxMouseEvent_LeftDown", _wrap_wxMouseEvent_LeftDown, 1 },
-        { "wxMouseEvent_ShiftDown", _wrap_wxMouseEvent_ShiftDown, 1 },
-        { "wxMouseEvent_AltDown", _wrap_wxMouseEvent_AltDown, 1 },
-        { "wxMouseEvent_MetaDown", _wrap_wxMouseEvent_MetaDown, 1 },
-        { "wxMouseEvent_ControlDown", _wrap_wxMouseEvent_ControlDown, 1 },
-        { "wxMouseEvent_ButtonIsDown", _wrap_wxMouseEvent_ButtonIsDown, 1 },
-        { "wxMouseEvent_Button", _wrap_wxMouseEvent_Button, 1 },
-        { "wxMouseEvent_ButtonUp", _wrap_wxMouseEvent_ButtonUp, 1 },
-        { "wxMouseEvent_ButtonDClick", _wrap_wxMouseEvent_ButtonDClick, 1 },
-        { "wxMouseEvent_ButtonDown", _wrap_wxMouseEvent_ButtonDown, 1 },
-        { "wxMouseEvent_IsButton", _wrap_wxMouseEvent_IsButton, 1 },
-        { "wxScrollEvent_GetPosition", _wrap_wxScrollEvent_GetPosition, 1 },
-        { "wxScrollEvent_GetOrientation", _wrap_wxScrollEvent_GetOrientation, 1 },
-        { "wxCommandEvent_IsSelection", _wrap_wxCommandEvent_IsSelection, 1 },
-        { "wxCommandEvent_GetString", _wrap_wxCommandEvent_GetString, 1 },
-        { "wxCommandEvent_GetSelection", _wrap_wxCommandEvent_GetSelection, 1 },
-        { "wxCommandEvent_GetInt", _wrap_wxCommandEvent_GetInt, 1 },
-        { "wxCommandEvent_GetExtraLong", _wrap_wxCommandEvent_GetExtraLong, 1 },
-        { "wxCommandEvent_Checked", _wrap_wxCommandEvent_Checked, 1 },
-        { "wxCloseEvent_GetForce", _wrap_wxCloseEvent_GetForce, 1 },
-        { "wxCloseEvent_SetLoggingOff", _wrap_wxCloseEvent_SetLoggingOff, 1 },
-        { "wxCloseEvent_SetCanVeto", _wrap_wxCloseEvent_SetCanVeto, 1 },
-        { "wxCloseEvent_SetForce", _wrap_wxCloseEvent_SetForce, 1 },
-        { "wxCloseEvent_GetVeto", _wrap_wxCloseEvent_GetVeto, 1 },
-        { "wxCloseEvent_Veto", _wrap_wxCloseEvent_Veto, 1 },
-        { "wxCloseEvent_GetLoggingOff", _wrap_wxCloseEvent_GetLoggingOff, 1 },
-        { "wxCloseEvent_CanVeto", _wrap_wxCloseEvent_CanVeto, 1 },
-        { "wxSizeEvent_GetSize", _wrap_wxSizeEvent_GetSize, 1 },
-        { "wxEvent_Skip", _wrap_wxEvent_Skip, 1 },
-        { "wxEvent_SetTimestamp", _wrap_wxEvent_SetTimestamp, 1 },
-        { "wxEvent_SetId", _wrap_wxEvent_SetId, 1 },
-        { "wxEvent_SetEventType", _wrap_wxEvent_SetEventType, 1 },
-        { "wxEvent_SetEventObject", _wrap_wxEvent_SetEventObject, 1 },
-        { "wxEvent_GetTimestamp", _wrap_wxEvent_GetTimestamp, 1 },
-        { "wxEvent_GetSkipped", _wrap_wxEvent_GetSkipped, 1 },
-        { "wxEvent_GetId", _wrap_wxEvent_GetId, 1 },
-        { "wxEvent_GetEventType", _wrap_wxEvent_GetEventType, 1 },
-        { "wxEvent_GetEventObject", _wrap_wxEvent_GetEventObject, 1 },
+        { "wxNotifyEvent_Veto", (PyCFunction) _wrap_wxNotifyEvent_Veto, METH_VARARGS | METH_KEYWORDS },
+        { "wxNotifyEvent_IsAllowed", (PyCFunction) _wrap_wxNotifyEvent_IsAllowed, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyEvent_GetUserData", (PyCFunction) _wrap_wxPyEvent_GetUserData, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyEvent_SetUserData", (PyCFunction) _wrap_wxPyEvent_SetUserData, METH_VARARGS | METH_KEYWORDS },
+        { "delete_wxPyEvent", (PyCFunction) _wrap_delete_wxPyEvent, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPyEvent", (PyCFunction) _wrap_new_wxPyEvent, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_SetText", (PyCFunction) _wrap_wxUpdateUIEvent_SetText, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_Enable", (PyCFunction) _wrap_wxUpdateUIEvent_Enable, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_Check", (PyCFunction) _wrap_wxUpdateUIEvent_Check, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_GetSetEnabled", (PyCFunction) _wrap_wxUpdateUIEvent_GetSetEnabled, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_GetSetChecked", (PyCFunction) _wrap_wxUpdateUIEvent_GetSetChecked, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_GetSetText", (PyCFunction) _wrap_wxUpdateUIEvent_GetSetText, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_GetText", (PyCFunction) _wrap_wxUpdateUIEvent_GetText, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_GetEnabled", (PyCFunction) _wrap_wxUpdateUIEvent_GetEnabled, METH_VARARGS | METH_KEYWORDS },
+        { "wxUpdateUIEvent_GetChecked", (PyCFunction) _wrap_wxUpdateUIEvent_GetChecked, METH_VARARGS | METH_KEYWORDS },
+        { "wxIdleEvent_MoreRequested", (PyCFunction) _wrap_wxIdleEvent_MoreRequested, METH_VARARGS | METH_KEYWORDS },
+        { "wxIdleEvent_RequestMore", (PyCFunction) _wrap_wxIdleEvent_RequestMore, METH_VARARGS | METH_KEYWORDS },
+        { "wxDropFilesEvent_GetFiles", (PyCFunction) _wrap_wxDropFilesEvent_GetFiles, METH_VARARGS | METH_KEYWORDS },
+        { "wxDropFilesEvent_GetNumberOfFiles", (PyCFunction) _wrap_wxDropFilesEvent_GetNumberOfFiles, METH_VARARGS | METH_KEYWORDS },
+        { "wxDropFilesEvent_GetPosition", (PyCFunction) _wrap_wxDropFilesEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_ButtonIsDown", (PyCFunction) _wrap_wxJoystickEvent_ButtonIsDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_ButtonUp", (PyCFunction) _wrap_wxJoystickEvent_ButtonUp, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_ButtonDown", (PyCFunction) _wrap_wxJoystickEvent_ButtonDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_IsZMove", (PyCFunction) _wrap_wxJoystickEvent_IsZMove, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_IsMove", (PyCFunction) _wrap_wxJoystickEvent_IsMove, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_IsButton", (PyCFunction) _wrap_wxJoystickEvent_IsButton, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_SetZPosition", (PyCFunction) _wrap_wxJoystickEvent_SetZPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_SetPosition", (PyCFunction) _wrap_wxJoystickEvent_SetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_SetButtonChange", (PyCFunction) _wrap_wxJoystickEvent_SetButtonChange, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_SetButtonState", (PyCFunction) _wrap_wxJoystickEvent_SetButtonState, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_SetJoystick", (PyCFunction) _wrap_wxJoystickEvent_SetJoystick, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_GetJoystick", (PyCFunction) _wrap_wxJoystickEvent_GetJoystick, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_GetButtonChange", (PyCFunction) _wrap_wxJoystickEvent_GetButtonChange, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_GetButtonState", (PyCFunction) _wrap_wxJoystickEvent_GetButtonState, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_GetZPosition", (PyCFunction) _wrap_wxJoystickEvent_GetZPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxJoystickEvent_GetPosition", (PyCFunction) _wrap_wxJoystickEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxShowEvent_GetShow", (PyCFunction) _wrap_wxShowEvent_GetShow, METH_VARARGS | METH_KEYWORDS },
+        { "wxShowEvent_SetShow", (PyCFunction) _wrap_wxShowEvent_SetShow, METH_VARARGS | METH_KEYWORDS },
+        { "wxMenuEvent_GetMenuId", (PyCFunction) _wrap_wxMenuEvent_GetMenuId, METH_VARARGS | METH_KEYWORDS },
+        { "wxActivateEvent_GetActive", (PyCFunction) _wrap_wxActivateEvent_GetActive, METH_VARARGS | METH_KEYWORDS },
+        { "wxEraseEvent_GetDC", (PyCFunction) _wrap_wxEraseEvent_GetDC, METH_VARARGS | METH_KEYWORDS },
+        { "wxMoveEvent_GetPosition", (PyCFunction) _wrap_wxMoveEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxKeyEvent_KeyCode", (PyCFunction) _wrap_wxKeyEvent_KeyCode, METH_VARARGS | METH_KEYWORDS },
+        { "wxKeyEvent_ShiftDown", (PyCFunction) _wrap_wxKeyEvent_ShiftDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxKeyEvent_AltDown", (PyCFunction) _wrap_wxKeyEvent_AltDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxKeyEvent_MetaDown", (PyCFunction) _wrap_wxKeyEvent_MetaDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxKeyEvent_ControlDown", (PyCFunction) _wrap_wxKeyEvent_ControlDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_GetY", (PyCFunction) _wrap_wxMouseEvent_GetY, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_GetX", (PyCFunction) _wrap_wxMouseEvent_GetX, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_GetLogicalPosition", (PyCFunction) _wrap_wxMouseEvent_GetLogicalPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_GetPosition", (PyCFunction) _wrap_wxMouseEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_Position", (PyCFunction) _wrap_wxMouseEvent_Position, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_Leaving", (PyCFunction) _wrap_wxMouseEvent_Leaving, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_Entering", (PyCFunction) _wrap_wxMouseEvent_Entering, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_Moving", (PyCFunction) _wrap_wxMouseEvent_Moving, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_Dragging", (PyCFunction) _wrap_wxMouseEvent_Dragging, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_RightIsDown", (PyCFunction) _wrap_wxMouseEvent_RightIsDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_MiddleIsDown", (PyCFunction) _wrap_wxMouseEvent_MiddleIsDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_LeftIsDown", (PyCFunction) _wrap_wxMouseEvent_LeftIsDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_RightDClick", (PyCFunction) _wrap_wxMouseEvent_RightDClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_MiddleDClick", (PyCFunction) _wrap_wxMouseEvent_MiddleDClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_LeftDClick", (PyCFunction) _wrap_wxMouseEvent_LeftDClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_RightUp", (PyCFunction) _wrap_wxMouseEvent_RightUp, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_MiddleUp", (PyCFunction) _wrap_wxMouseEvent_MiddleUp, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_LeftUp", (PyCFunction) _wrap_wxMouseEvent_LeftUp, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_RightDown", (PyCFunction) _wrap_wxMouseEvent_RightDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_MiddleDown", (PyCFunction) _wrap_wxMouseEvent_MiddleDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_LeftDown", (PyCFunction) _wrap_wxMouseEvent_LeftDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_ShiftDown", (PyCFunction) _wrap_wxMouseEvent_ShiftDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_AltDown", (PyCFunction) _wrap_wxMouseEvent_AltDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_MetaDown", (PyCFunction) _wrap_wxMouseEvent_MetaDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_ControlDown", (PyCFunction) _wrap_wxMouseEvent_ControlDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_ButtonIsDown", (PyCFunction) _wrap_wxMouseEvent_ButtonIsDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_Button", (PyCFunction) _wrap_wxMouseEvent_Button, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_ButtonUp", (PyCFunction) _wrap_wxMouseEvent_ButtonUp, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_ButtonDClick", (PyCFunction) _wrap_wxMouseEvent_ButtonDClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_ButtonDown", (PyCFunction) _wrap_wxMouseEvent_ButtonDown, METH_VARARGS | METH_KEYWORDS },
+        { "wxMouseEvent_IsButton", (PyCFunction) _wrap_wxMouseEvent_IsButton, METH_VARARGS | METH_KEYWORDS },
+        { "wxScrollWinEvent_GetPosition", (PyCFunction) _wrap_wxScrollWinEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxScrollWinEvent_GetOrientation", (PyCFunction) _wrap_wxScrollWinEvent_GetOrientation, METH_VARARGS | METH_KEYWORDS },
+        { "wxScrollEvent_GetPosition", (PyCFunction) _wrap_wxScrollEvent_GetPosition, METH_VARARGS | METH_KEYWORDS },
+        { "wxScrollEvent_GetOrientation", (PyCFunction) _wrap_wxScrollEvent_GetOrientation, METH_VARARGS | METH_KEYWORDS },
+        { "wxCommandEvent_IsSelection", (PyCFunction) _wrap_wxCommandEvent_IsSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxCommandEvent_GetString", (PyCFunction) _wrap_wxCommandEvent_GetString, METH_VARARGS | METH_KEYWORDS },
+        { "wxCommandEvent_GetSelection", (PyCFunction) _wrap_wxCommandEvent_GetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxCommandEvent_GetInt", (PyCFunction) _wrap_wxCommandEvent_GetInt, METH_VARARGS | METH_KEYWORDS },
+        { "wxCommandEvent_GetExtraLong", (PyCFunction) _wrap_wxCommandEvent_GetExtraLong, METH_VARARGS | METH_KEYWORDS },
+        { "wxCommandEvent_Checked", (PyCFunction) _wrap_wxCommandEvent_Checked, METH_VARARGS | METH_KEYWORDS },
+        { "wxCloseEvent_SetCanVeto", (PyCFunction) _wrap_wxCloseEvent_SetCanVeto, METH_VARARGS | METH_KEYWORDS },
+        { "wxCloseEvent_GetVeto", (PyCFunction) _wrap_wxCloseEvent_GetVeto, METH_VARARGS | METH_KEYWORDS },
+        { "wxCloseEvent_CanVeto", (PyCFunction) _wrap_wxCloseEvent_CanVeto, METH_VARARGS | METH_KEYWORDS },
+        { "wxCloseEvent_Veto", (PyCFunction) _wrap_wxCloseEvent_Veto, METH_VARARGS | METH_KEYWORDS },
+        { "wxCloseEvent_GetLoggingOff", (PyCFunction) _wrap_wxCloseEvent_GetLoggingOff, METH_VARARGS | METH_KEYWORDS },
+        { "wxCloseEvent_SetLoggingOff", (PyCFunction) _wrap_wxCloseEvent_SetLoggingOff, METH_VARARGS | METH_KEYWORDS },
+        { "wxSizeEvent_GetSize", (PyCFunction) _wrap_wxSizeEvent_GetSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_Skip", (PyCFunction) _wrap_wxEvent_Skip, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_SetTimestamp", (PyCFunction) _wrap_wxEvent_SetTimestamp, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_SetId", (PyCFunction) _wrap_wxEvent_SetId, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_SetEventType", (PyCFunction) _wrap_wxEvent_SetEventType, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_SetEventObject", (PyCFunction) _wrap_wxEvent_SetEventObject, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_GetTimestamp", (PyCFunction) _wrap_wxEvent_GetTimestamp, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_GetSkipped", (PyCFunction) _wrap_wxEvent_GetSkipped, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_GetId", (PyCFunction) _wrap_wxEvent_GetId, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_GetEventType", (PyCFunction) _wrap_wxEvent_GetEventType, METH_VARARGS | METH_KEYWORDS },
+        { "wxEvent_GetEventObject", (PyCFunction) _wrap_wxEvent_GetEventObject, METH_VARARGS | METH_KEYWORDS },
         { 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_wxNotifyEvent",SwigwxNotifyEventTowxEvent},
+    { "_wxEvent","_wxNotifyEvent",SwigwxNotifyEventTowxEvent},
+    { "_wxEvent","_class_wxPyEvent",SwigwxPyEventTowxEvent},
+    { "_wxEvent","_wxPyEvent",SwigwxPyEventTowxEvent},
+    { "_wxEvent","_class_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent},
+    { "_wxEvent","_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent},
+    { "_wxEvent","_class_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent},
+    { "_wxEvent","_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent},
+    { "_wxEvent","_class_wxIdleEvent",SwigwxIdleEventTowxEvent},
+    { "_wxEvent","_wxIdleEvent",SwigwxIdleEventTowxEvent},
+    { "_wxEvent","_class_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent},
+    { "_wxEvent","_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent},
+    { "_wxEvent","_class_wxJoystickEvent",SwigwxJoystickEventTowxEvent},
+    { "_wxEvent","_wxJoystickEvent",SwigwxJoystickEventTowxEvent},
+    { "_wxEvent","_class_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent},
+    { "_wxEvent","_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent},
+    { "_wxEvent","_class_wxIconizeEvent",SwigwxIconizeEventTowxEvent},
+    { "_wxEvent","_wxIconizeEvent",SwigwxIconizeEventTowxEvent},
+    { "_wxEvent","_class_wxShowEvent",SwigwxShowEventTowxEvent},
+    { "_wxEvent","_wxShowEvent",SwigwxShowEventTowxEvent},
+    { "_wxEvent","_class_wxMenuEvent",SwigwxMenuEventTowxEvent},
+    { "_wxEvent","_wxMenuEvent",SwigwxMenuEventTowxEvent},
+    { "_wxEvent","_class_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent},
+    { "_wxEvent","_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent},
+    { "_wxEvent","_class_wxActivateEvent",SwigwxActivateEventTowxEvent},
+    { "_wxEvent","_wxActivateEvent",SwigwxActivateEventTowxEvent},
+    { "_wxEvent","_class_wxFocusEvent",SwigwxFocusEventTowxEvent},
+    { "_wxEvent","_wxFocusEvent",SwigwxFocusEventTowxEvent},
+    { "_wxEvent","_class_wxEraseEvent",SwigwxEraseEventTowxEvent},
+    { "_wxEvent","_wxEraseEvent",SwigwxEraseEventTowxEvent},
+    { "_wxEvent","_class_wxPaintEvent",SwigwxPaintEventTowxEvent},
+    { "_wxEvent","_wxPaintEvent",SwigwxPaintEventTowxEvent},
+    { "_wxEvent","_class_wxMoveEvent",SwigwxMoveEventTowxEvent},
+    { "_wxEvent","_wxMoveEvent",SwigwxMoveEventTowxEvent},
+    { "_wxEvent","_class_wxKeyEvent",SwigwxKeyEventTowxEvent},
+    { "_wxEvent","_wxKeyEvent",SwigwxKeyEventTowxEvent},
+    { "_wxEvent","_class_wxMouseEvent",SwigwxMouseEventTowxEvent},
+    { "_wxEvent","_wxMouseEvent",SwigwxMouseEventTowxEvent},
+    { "_wxEvent","_class_wxSpinEvent",SwigwxSpinEventTowxEvent},
+    { "_wxEvent","_wxSpinEvent",SwigwxSpinEventTowxEvent},
+    { "_wxEvent","_class_wxScrollWinEvent",SwigwxScrollWinEventTowxEvent},
+    { "_wxEvent","_wxScrollWinEvent",SwigwxScrollWinEventTowxEvent},
+    { "_wxEvent","_class_wxScrollEvent",SwigwxScrollEventTowxEvent},
+    { "_wxEvent","_wxScrollEvent",SwigwxScrollEventTowxEvent},
+    { "_wxEvent","_class_wxCommandEvent",SwigwxCommandEventTowxEvent},
+    { "_wxEvent","_wxCommandEvent",SwigwxCommandEventTowxEvent},
+    { "_wxEvent","_class_wxCloseEvent",SwigwxCloseEventTowxEvent},
+    { "_wxEvent","_wxCloseEvent",SwigwxCloseEventTowxEvent},
+    { "_wxEvent","_class_wxSizeEvent",SwigwxSizeEventTowxEvent},
+    { "_wxEvent","_wxSizeEvent",SwigwxSizeEventTowxEvent},
+    { "_wxEvent","_class_wxEvent",0},
+    { "_class_wxActivateEvent","_wxActivateEvent",0},
+    { "_signed_long","_long",0},
+    { "_wxMenuEvent","_class_wxMenuEvent",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_wxRegionIterator","_wxRegionIterator",0},
+    { "_wxPaintEvent","_class_wxPaintEvent",0},
+    { "_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0},
+    { "_wxNotifyEvent","_class_wxNotifyEvent",0},
+    { "_wxUpdateUIEvent","_class_wxUpdateUIEvent",0},
+    { "_byte","_unsigned_char",0},
+    { "_long","_unsigned_long",0},
+    { "_long","_signed_long",0},
+    { "_wxDropFilesEvent","_class_wxDropFilesEvent",0},
+    { "_class_wxAcceleratorTable","_wxAcceleratorTable",0},
+    { "_wxSpinEvent","_class_wxSpinEvent",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},
+    { "_class_wxPaintEvent","_wxPaintEvent",0},
+    { "_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0},
+    { "_wxInitDialogEvent","_class_wxInitDialogEvent",0},
+    { "_wxPyEvent","_class_wxPyEvent",0},
+    { "_class_wxKeyEvent","_wxKeyEvent",0},
+    { "_wxIdleEvent","_class_wxIdleEvent",0},
+    { "_class_wxUpdateUIEvent","_wxUpdateUIEvent",0},
+    { "_wxShowEvent","_class_wxShowEvent",0},
+    { "_uint","_wxPrintQuality",0},
+    { "_uint","_size_t",0},
+    { "_uint","_unsigned_int",0},
+    { "_uint","_int",0},
+    { "_uint","_wxWindowID",0},
+    { "_class_wxEvent","_class_wxNotifyEvent",SwigwxNotifyEventTowxEvent},
+    { "_class_wxEvent","_wxNotifyEvent",SwigwxNotifyEventTowxEvent},
+    { "_class_wxEvent","_class_wxPyEvent",SwigwxPyEventTowxEvent},
+    { "_class_wxEvent","_wxPyEvent",SwigwxPyEventTowxEvent},
+    { "_class_wxEvent","_class_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent},
+    { "_class_wxEvent","_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent},
+    { "_class_wxEvent","_class_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent},
+    { "_class_wxEvent","_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent},
+    { "_class_wxEvent","_class_wxIdleEvent",SwigwxIdleEventTowxEvent},
+    { "_class_wxEvent","_wxIdleEvent",SwigwxIdleEventTowxEvent},
+    { "_class_wxEvent","_class_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent},
+    { "_class_wxEvent","_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent},
+    { "_class_wxEvent","_class_wxJoystickEvent",SwigwxJoystickEventTowxEvent},
+    { "_class_wxEvent","_wxJoystickEvent",SwigwxJoystickEventTowxEvent},
+    { "_class_wxEvent","_class_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent},
+    { "_class_wxEvent","_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent},
+    { "_class_wxEvent","_class_wxIconizeEvent",SwigwxIconizeEventTowxEvent},
+    { "_class_wxEvent","_wxIconizeEvent",SwigwxIconizeEventTowxEvent},
+    { "_class_wxEvent","_class_wxShowEvent",SwigwxShowEventTowxEvent},
+    { "_class_wxEvent","_wxShowEvent",SwigwxShowEventTowxEvent},
+    { "_class_wxEvent","_class_wxMenuEvent",SwigwxMenuEventTowxEvent},
+    { "_class_wxEvent","_wxMenuEvent",SwigwxMenuEventTowxEvent},
+    { "_class_wxEvent","_class_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent},
+    { "_class_wxEvent","_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent},
+    { "_class_wxEvent","_class_wxActivateEvent",SwigwxActivateEventTowxEvent},
+    { "_class_wxEvent","_wxActivateEvent",SwigwxActivateEventTowxEvent},
+    { "_class_wxEvent","_class_wxFocusEvent",SwigwxFocusEventTowxEvent},
+    { "_class_wxEvent","_wxFocusEvent",SwigwxFocusEventTowxEvent},
+    { "_class_wxEvent","_class_wxEraseEvent",SwigwxEraseEventTowxEvent},
+    { "_class_wxEvent","_wxEraseEvent",SwigwxEraseEventTowxEvent},
+    { "_class_wxEvent","_class_wxPaintEvent",SwigwxPaintEventTowxEvent},
+    { "_class_wxEvent","_wxPaintEvent",SwigwxPaintEventTowxEvent},
+    { "_class_wxEvent","_class_wxMoveEvent",SwigwxMoveEventTowxEvent},
+    { "_class_wxEvent","_wxMoveEvent",SwigwxMoveEventTowxEvent},
+    { "_class_wxEvent","_class_wxKeyEvent",SwigwxKeyEventTowxEvent},
+    { "_class_wxEvent","_wxKeyEvent",SwigwxKeyEventTowxEvent},
+    { "_class_wxEvent","_class_wxMouseEvent",SwigwxMouseEventTowxEvent},
+    { "_class_wxEvent","_wxMouseEvent",SwigwxMouseEventTowxEvent},
+    { "_class_wxEvent","_class_wxSpinEvent",SwigwxSpinEventTowxEvent},
+    { "_class_wxEvent","_wxSpinEvent",SwigwxSpinEventTowxEvent},
+    { "_class_wxEvent","_class_wxScrollWinEvent",SwigwxScrollWinEventTowxEvent},
+    { "_class_wxEvent","_wxScrollWinEvent",SwigwxScrollWinEventTowxEvent},
+    { "_class_wxEvent","_class_wxScrollEvent",SwigwxScrollEventTowxEvent},
+    { "_class_wxEvent","_wxScrollEvent",SwigwxScrollEventTowxEvent},
+    { "_class_wxEvent","_class_wxCommandEvent",SwigwxCommandEventTowxEvent},
+    { "_class_wxEvent","_wxCommandEvent",SwigwxCommandEventTowxEvent},
+    { "_class_wxEvent","_class_wxCloseEvent",SwigwxCloseEventTowxEvent},
+    { "_class_wxEvent","_wxCloseEvent",SwigwxCloseEventTowxEvent},
+    { "_class_wxEvent","_class_wxSizeEvent",SwigwxSizeEventTowxEvent},
+    { "_class_wxEvent","_wxSizeEvent",SwigwxSizeEventTowxEvent},
+    { "_class_wxEvent","_wxEvent",0},
+    { "_wxRect","_class_wxRect",0},
+    { "_wxCommandEvent","_class_wxNotifyEvent",SwigwxNotifyEventTowxCommandEvent},
+    { "_wxCommandEvent","_wxNotifyEvent",SwigwxNotifyEventTowxCommandEvent},
+    { "_wxCommandEvent","_class_wxPyEvent",SwigwxPyEventTowxCommandEvent},
+    { "_wxCommandEvent","_wxPyEvent",SwigwxPyEventTowxCommandEvent},
+    { "_wxCommandEvent","_class_wxSpinEvent",SwigwxSpinEventTowxCommandEvent},
+    { "_wxCommandEvent","_wxSpinEvent",SwigwxSpinEventTowxCommandEvent},
+    { "_wxCommandEvent","_class_wxScrollEvent",SwigwxScrollEventTowxCommandEvent},
+    { "_wxCommandEvent","_wxScrollEvent",SwigwxScrollEventTowxCommandEvent},
+    { "_wxCommandEvent","_class_wxCommandEvent",0},
+    { "_wxSizeEvent","_class_wxSizeEvent",0},
+    { "_wxPoint","_class_wxPoint",0},
+    { "_wxPyTimer","_class_wxPyTimer",0},
+    { "_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0},
+    { "_class_wxNotifyEvent","_wxNotifyEvent",0},
+    { "_class_wxPyEvent","_wxPyEvent",0},
+    { "_class_wxIconizeEvent","_wxIconizeEvent",0},
+    { "_wxScrollEvent","_class_wxSpinEvent",SwigwxSpinEventTowxScrollEvent},
+    { "_wxScrollEvent","_wxSpinEvent",SwigwxSpinEventTowxScrollEvent},
+    { "_wxScrollEvent","_class_wxScrollEvent",0},
+    { "_EBool","_wxPrintQuality",0},
+    { "_EBool","_signed_int",0},
+    { "_EBool","_int",0},
+    { "_EBool","_wxWindowID",0},
+    { "_class_wxRegion","_wxRegion",0},
+    { "_class_wxDropFilesEvent","_wxDropFilesEvent",0},
+    { "_wxCloseEvent","_class_wxCloseEvent",0},
+    { "_unsigned_long","_long",0},
+    { "_class_wxRect","_wxRect",0},
+    { "_wxScrollWinEvent","_class_wxScrollWinEvent",0},
+    { "_class_wxPyTimer","_wxPyTimer",0},
+    { "_wxFocusEvent","_class_wxFocusEvent",0},
+    { "_wxMaximizeEvent","_class_wxMaximizeEvent",0},
+    { "_wxAcceleratorEntry","_class_wxAcceleratorEntry",0},
+    { "_signed_int","_wxPrintQuality",0},
+    { "_signed_int","_EBool",0},
+    { "_signed_int","_wxWindowID",0},
+    { "_signed_int","_int",0},
+    { "_wxLayoutConstraints","_class_wxLayoutConstraints",0},
+    { "_class_wxMoveEvent","_wxMoveEvent",0},
+    { "_WXTYPE","_short",0},
+    { "_WXTYPE","_signed_short",0},
+    { "_WXTYPE","_unsigned_short",0},
+    { "_unsigned_short","_WXTYPE",0},
+    { "_unsigned_short","_short",0},
+    { "_class_wxCloseEvent","_wxCloseEvent",0},
+    { "_class_wxMenuEvent","_wxMenuEvent",0},
+    { "_wxMouseEvent","_class_wxMouseEvent",0},
+    { "_class_wxPoint","_wxPoint",0},
+    { "_wxRealPoint","_class_wxRealPoint",0},
+    { "_signed_short","_WXTYPE",0},
+    { "_signed_short","_short",0},
+    { "_class_wxFocusEvent","_wxFocusEvent",0},
+    { "_class_wxMaximizeEvent","_wxMaximizeEvent",0},
+    { "_class_wxAcceleratorEntry","_wxAcceleratorEntry",0},
+    { "_unsigned_char","_byte",0},
+    { "_unsigned_int","_wxPrintQuality",0},
+    { "_unsigned_int","_size_t",0},
+    { "_unsigned_int","_uint",0},
+    { "_unsigned_int","_wxWindowID",0},
+    { "_unsigned_int","_int",0},
+    { "_short","_WXTYPE",0},
+    { "_short","_unsigned_short",0},
+    { "_short","_signed_short",0},
+    { "_class_wxScrollEvent","_class_wxSpinEvent",SwigwxSpinEventTowxScrollEvent},
+    { "_class_wxScrollEvent","_wxSpinEvent",SwigwxSpinEventTowxScrollEvent},
+    { "_class_wxScrollEvent","_wxScrollEvent",0},
+    { "_wxJoystickEvent","_class_wxJoystickEvent",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","_wxPrintQuality",0},
+    { "_int","_size_t",0},
+    { "_int","_EBool",0},
+    { "_int","_uint",0},
+    { "_int","_wxWindowID",0},
+    { "_int","_unsigned_int",0},
+    { "_int","_signed_int",0},
+    { "_class_wxMouseEvent","_wxMouseEvent",0},
+    { "_class_wxSpinEvent","_wxSpinEvent",0},
+    { "_wxSize","_class_wxSize",0},
+    { "_wxRegionIterator","_class_wxRegionIterator",0},
+    { "_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0},
+    { "_class_wxInitDialogEvent","_wxInitDialogEvent",0},
+    { "_class_wxLayoutConstraints","_wxLayoutConstraints",0},
+    { "_wxIconizeEvent","_class_wxIconizeEvent",0},
+    { "_class_wxIdleEvent","_wxIdleEvent",0},
+    { "_wxEraseEvent","_class_wxEraseEvent",0},
+    { "_class_wxJoystickEvent","_wxJoystickEvent",0},
+    { "_wxRegion","_class_wxRegion",0},
+    { "_class_wxShowEvent","_wxShowEvent",0},
+    { "_wxActivateEvent","_class_wxActivateEvent",0},
+    { "_class_wxCommandEvent","_class_wxNotifyEvent",SwigwxNotifyEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxNotifyEvent",SwigwxNotifyEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_class_wxPyEvent",SwigwxPyEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxPyEvent",SwigwxPyEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_class_wxSpinEvent",SwigwxSpinEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxSpinEvent",SwigwxSpinEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_class_wxScrollEvent",SwigwxScrollEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxScrollEvent",SwigwxScrollEventTowxCommandEvent},
+    { "_class_wxCommandEvent","_wxCommandEvent",0},
+    { "_class_wxSizeEvent","_wxSizeEvent",0},
+    { "_class_wxSize","_wxSize",0},
+    { "_wxKeyEvent","_class_wxKeyEvent",0},
+    { "_wxMoveEvent","_class_wxMoveEvent",0},
+    { "_class_wxEraseEvent","_wxEraseEvent",0},
+{0,0,0}};
+
 static PyObject *SWIG_globals;
 #ifdef __cplusplus
 extern "C" 
 #endif
-SWIGEXPORT(void,initeventsc)() {
+SWIGEXPORT(void) initeventsc() {
         PyObject *m, *d;
         SWIG_globals = SWIG_newvarlink();
         m = Py_InitModule("eventsc", eventscMethods);
         d = PyModule_GetDict(m);
-/*
- * These are the pointer type-equivalency mappings. 
- * (Used by the SWIG pointer type-checker).
- */
-        SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
-        SWIG_RegisterMapping("_wxEvent","_class_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxIdleEvent",SwigwxIdleEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxIdleEvent",SwigwxIdleEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxJoystickEvent",SwigwxJoystickEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxJoystickEvent",SwigwxJoystickEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxIconizeEvent",SwigwxIconizeEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxIconizeEvent",SwigwxIconizeEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxShowEvent",SwigwxShowEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxShowEvent",SwigwxShowEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxMenuEvent",SwigwxMenuEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxMenuEvent",SwigwxMenuEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxActivateEvent",SwigwxActivateEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxActivateEvent",SwigwxActivateEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxFocusEvent",SwigwxFocusEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxFocusEvent",SwigwxFocusEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxEraseEvent",SwigwxEraseEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxEraseEvent",SwigwxEraseEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxPaintEvent",SwigwxPaintEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxPaintEvent",SwigwxPaintEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxMoveEvent",SwigwxMoveEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxMoveEvent",SwigwxMoveEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxKeyEvent",SwigwxKeyEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxKeyEvent",SwigwxKeyEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxMouseEvent",SwigwxMouseEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxMouseEvent",SwigwxMouseEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxSpinEvent",SwigwxSpinEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxSpinEvent",SwigwxSpinEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxScrollEvent",SwigwxScrollEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxScrollEvent",SwigwxScrollEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxCommandEvent",SwigwxCommandEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxCommandEvent",SwigwxCommandEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxCloseEvent",SwigwxCloseEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxCloseEvent",SwigwxCloseEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_class_wxSizeEvent",SwigwxSizeEventTowxEvent);
-        SWIG_RegisterMapping("_wxEvent","_wxSizeEvent",SwigwxSizeEventTowxEvent);
-        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("_class_wxRegionIterator","_wxRegionIterator",0);
-        SWIG_RegisterMapping("_wxPaintEvent","_class_wxPaintEvent",0);
-        SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
-        SWIG_RegisterMapping("_wxUpdateUIEvent","_class_wxUpdateUIEvent",0);
-        SWIG_RegisterMapping("_byte","_unsigned_char",0);
-        SWIG_RegisterMapping("_long","_unsigned_long",0);
-        SWIG_RegisterMapping("_long","_signed_long",0);
-        SWIG_RegisterMapping("_wxDropFilesEvent","_class_wxDropFilesEvent",0);
-        SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
-        SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
-        SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
-        SWIG_RegisterMapping("_class_wxPaintEvent","_wxPaintEvent",0);
-        SWIG_RegisterMapping("_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0);
-        SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
-        SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
-        SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
-        SWIG_RegisterMapping("_class_wxUpdateUIEvent","_wxUpdateUIEvent",0);
-        SWIG_RegisterMapping("_wxShowEvent","_class_wxShowEvent",0);
-        SWIG_RegisterMapping("_uint","_unsigned_int",0);
-        SWIG_RegisterMapping("_uint","_int",0);
-        SWIG_RegisterMapping("_uint","_wxWindowID",0);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxSysColourChangedEvent",SwigwxSysColourChangedEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxUpdateUIEvent",SwigwxUpdateUIEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxIdleEvent",SwigwxIdleEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxIdleEvent",SwigwxIdleEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxDropFilesEvent",SwigwxDropFilesEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxJoystickEvent",SwigwxJoystickEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxJoystickEvent",SwigwxJoystickEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxMaximizeEvent",SwigwxMaximizeEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxIconizeEvent",SwigwxIconizeEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxIconizeEvent",SwigwxIconizeEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxShowEvent",SwigwxShowEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxShowEvent",SwigwxShowEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxMenuEvent",SwigwxMenuEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxMenuEvent",SwigwxMenuEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxInitDialogEvent",SwigwxInitDialogEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxActivateEvent",SwigwxActivateEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxActivateEvent",SwigwxActivateEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxFocusEvent",SwigwxFocusEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxFocusEvent",SwigwxFocusEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxEraseEvent",SwigwxEraseEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxEraseEvent",SwigwxEraseEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxPaintEvent",SwigwxPaintEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxPaintEvent",SwigwxPaintEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxMoveEvent",SwigwxMoveEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxMoveEvent",SwigwxMoveEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxKeyEvent",SwigwxKeyEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxKeyEvent",SwigwxKeyEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxMouseEvent",SwigwxMouseEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxMouseEvent",SwigwxMouseEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxSpinEvent",SwigwxSpinEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxSpinEvent",SwigwxSpinEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxScrollEvent",SwigwxScrollEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxScrollEvent",SwigwxScrollEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxCommandEvent",SwigwxCommandEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxCommandEvent",SwigwxCommandEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxCloseEvent",SwigwxCloseEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxCloseEvent",SwigwxCloseEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_class_wxSizeEvent",SwigwxSizeEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxSizeEvent",SwigwxSizeEventTowxEvent);
-        SWIG_RegisterMapping("_class_wxEvent","_wxEvent",0);
-        SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
-        SWIG_RegisterMapping("_wxCommandEvent","_class_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_class_wxScrollEvent",SwigwxScrollEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_wxScrollEvent",SwigwxScrollEventTowxCommandEvent);
-        SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
-        SWIG_RegisterMapping("_wxSizeEvent","_class_wxSizeEvent",0);
-        SWIG_RegisterMapping("_wxPoint","_class_wxPoint",0);
-        SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
-        SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
-        SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
-        SWIG_RegisterMapping("_wxScrollEvent","_class_wxSpinEvent",SwigwxSpinEventTowxScrollEvent);
-        SWIG_RegisterMapping("_wxScrollEvent","_wxSpinEvent",SwigwxSpinEventTowxScrollEvent);
-        SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",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("_wxCloseEvent","_class_wxCloseEvent",0);
-        SWIG_RegisterMapping("_unsigned_long","_long",0);
-        SWIG_RegisterMapping("_class_wxRect","_wxRect",0);
-        SWIG_RegisterMapping("_class_wxPyTimer","_wxPyTimer",0);
-        SWIG_RegisterMapping("_wxFocusEvent","_class_wxFocusEvent",0);
-        SWIG_RegisterMapping("_wxMaximizeEvent","_class_wxMaximizeEvent",0);
-        SWIG_RegisterMapping("_wxAcceleratorEntry","_class_wxAcceleratorEntry",0);
-        SWIG_RegisterMapping("_signed_int","_EBool",0);
-        SWIG_RegisterMapping("_signed_int","_wxWindowID",0);
-        SWIG_RegisterMapping("_signed_int","_int",0);
-        SWIG_RegisterMapping("_wxLayoutConstraints","_class_wxLayoutConstraints",0);
-        SWIG_RegisterMapping("_class_wxMoveEvent","_wxMoveEvent",0);
-        SWIG_RegisterMapping("_WXTYPE","_short",0);
-        SWIG_RegisterMapping("_WXTYPE","_signed_short",0);
-        SWIG_RegisterMapping("_WXTYPE","_unsigned_short",0);
-        SWIG_RegisterMapping("_unsigned_short","_WXTYPE",0);
-        SWIG_RegisterMapping("_unsigned_short","_short",0);
-        SWIG_RegisterMapping("_class_wxCloseEvent","_wxCloseEvent",0);
-        SWIG_RegisterMapping("_class_wxMenuEvent","_wxMenuEvent",0);
-        SWIG_RegisterMapping("_wxMouseEvent","_class_wxMouseEvent",0);
-        SWIG_RegisterMapping("_class_wxPoint","_wxPoint",0);
-        SWIG_RegisterMapping("_wxRealPoint","_class_wxRealPoint",0);
-        SWIG_RegisterMapping("_signed_short","_WXTYPE",0);
-        SWIG_RegisterMapping("_signed_short","_short",0);
-        SWIG_RegisterMapping("_class_wxFocusEvent","_wxFocusEvent",0);
-        SWIG_RegisterMapping("_class_wxMaximizeEvent","_wxMaximizeEvent",0);
-        SWIG_RegisterMapping("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
-        SWIG_RegisterMapping("_unsigned_char","_byte",0);
-        SWIG_RegisterMapping("_unsigned_int","_uint",0);
-        SWIG_RegisterMapping("_unsigned_int","_wxWindowID",0);
-        SWIG_RegisterMapping("_unsigned_int","_int",0);
-        SWIG_RegisterMapping("_short","_WXTYPE",0);
-        SWIG_RegisterMapping("_short","_unsigned_short",0);
-        SWIG_RegisterMapping("_short","_signed_short",0);
-        SWIG_RegisterMapping("_class_wxScrollEvent","_class_wxSpinEvent",SwigwxSpinEventTowxScrollEvent);
-        SWIG_RegisterMapping("_class_wxScrollEvent","_wxSpinEvent",SwigwxSpinEventTowxScrollEvent);
-        SWIG_RegisterMapping("_class_wxScrollEvent","_wxScrollEvent",0);
-        SWIG_RegisterMapping("_wxJoystickEvent","_class_wxJoystickEvent",0);
-        SWIG_RegisterMapping("_wxWindowID","_EBool",0);
-        SWIG_RegisterMapping("_wxWindowID","_uint",0);
-        SWIG_RegisterMapping("_wxWindowID","_int",0);
-        SWIG_RegisterMapping("_wxWindowID","_signed_int",0);
-        SWIG_RegisterMapping("_wxWindowID","_unsigned_int",0);
-        SWIG_RegisterMapping("_int","_EBool",0);
-        SWIG_RegisterMapping("_int","_uint",0);
-        SWIG_RegisterMapping("_int","_wxWindowID",0);
-        SWIG_RegisterMapping("_int","_unsigned_int",0);
-        SWIG_RegisterMapping("_int","_signed_int",0);
-        SWIG_RegisterMapping("_class_wxMouseEvent","_wxMouseEvent",0);
-        SWIG_RegisterMapping("_class_wxSpinEvent","_wxSpinEvent",0);
-        SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
-        SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
-        SWIG_RegisterMapping("_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0);
-        SWIG_RegisterMapping("_class_wxInitDialogEvent","_wxInitDialogEvent",0);
-        SWIG_RegisterMapping("_class_wxLayoutConstraints","_wxLayoutConstraints",0);
-        SWIG_RegisterMapping("_wxIconizeEvent","_class_wxIconizeEvent",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_wxShowEvent","_wxShowEvent",0);
-        SWIG_RegisterMapping("_wxActivateEvent","_class_wxActivateEvent",0);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_wxSpinEvent",SwigwxSpinEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxScrollEvent",SwigwxScrollEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_wxScrollEvent",SwigwxScrollEventTowxCommandEvent);
-        SWIG_RegisterMapping("_class_wxCommandEvent","_wxCommandEvent",0);
-        SWIG_RegisterMapping("_class_wxSizeEvent","_wxSizeEvent",0);
-        SWIG_RegisterMapping("_class_wxSize","_wxSize",0);
-        SWIG_RegisterMapping("_wxKeyEvent","_class_wxKeyEvent",0);
-        SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
-        SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",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);
+}
 }