]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/gtk/windows2.cpp
some dist helpers for wxPython
[wxWidgets.git] / utils / wxPython / src / gtk / windows2.cpp
index a7e72d2212d203a064d6e0ea954975b5b1d9edb9..fc355cf067a18a93b82e0935ceb6e28851eb553d 100644 (file)
@@ -57,6 +57,9 @@ extern PyObject *SWIG_newvarlink(void);
 #include <wx/grid.h>
 #include <wx/notebook.h>
 #include <wx/splitter.h>
+#ifdef __WXMSW__
+#include <wx/msw/taskbar.h>
+#endif
 
 static PyObject* l_output_helper(PyObject* target, PyObject* o) {
     PyObject*   o2;
@@ -106,6 +109,7 @@ 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);
@@ -116,6 +120,50 @@ extern wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
 
 
 static char* wxStringErrorMsg = "string type is required for parameter";
+#define new_wxGridCell() (new wxGridCell())
+static PyObject *_wrap_new_wxGridCell(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGridCell * _result;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,":new_wxGridCell")) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)new_wxGridCell();
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define delete_wxGridCell(_swigobj) (delete _swigobj)
+static PyObject *_wrap_delete_wxGridCell(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGridCell * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:delete_wxGridCell",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridCell_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxGridCell. Expected _wxGridCell_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        delete_wxGridCell(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 #define wxGridCell_GetTextValue(_swigobj)  (_swigobj->GetTextValue())
 static PyObject *_wrap_wxGridCell_GetTextValue(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
@@ -132,9 +180,13 @@ static PyObject *_wrap_wxGridCell_GetTextValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxString & _result_ref = wxGridCell_GetTextValue(_arg0);
-    _result = (wxString *) &_result_ref;
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxString & _result_ref = wxGridCell_GetTextValue(_arg0);
+    _result = (wxString *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -162,10 +214,14 @@ static PyObject *_wrap_wxGridCell_SetTextValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxGridCell_SetTextValue(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetTextValue(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -191,8 +247,13 @@ static PyObject *_wrap_wxGridCell_GetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxFont *)wxGridCell_GetFont(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGridCell_GetFont(_arg0);
+    _result = (wxFont *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -220,8 +281,12 @@ static PyObject *_wrap_wxGridCell_SetFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGridCell_SetFont(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -243,9 +308,13 @@ static PyObject *_wrap_wxGridCell_GetTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGridCell_GetTextColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGridCell_GetTextColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -273,8 +342,12 @@ static PyObject *_wrap_wxGridCell_SetTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGridCell_SetTextColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetTextColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -296,9 +369,13 @@ static PyObject *_wrap_wxGridCell_GetBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGridCell_GetBackgroundColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGridCell_GetBackgroundColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -326,8 +403,12 @@ static PyObject *_wrap_wxGridCell_SetBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxGridCell_SetBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -349,8 +430,13 @@ static PyObject *_wrap_wxGridCell_GetBackgroundBrush(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (wxBrush *)wxGridCell_GetBackgroundBrush(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBrush & _result_ref = wxGridCell_GetBackgroundBrush(_arg0);
+    _result = (wxBrush *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBrush_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -371,8 +457,12 @@ static PyObject *_wrap_wxGridCell_GetAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGridCell_GetAlignment(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridCell_GetAlignment(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -392,8 +482,12 @@ static PyObject *_wrap_wxGridCell_SetAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGridCell_SetAlignment(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -415,8 +509,12 @@ static PyObject *_wrap_wxGridCell_GetCellBitmap(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxBitmap *)wxGridCell_GetCellBitmap(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxBitmap *)wxGridCell_GetCellBitmap(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -444,8 +542,12 @@ static PyObject *_wrap_wxGridCell_SetCellBitmap(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGridCell_SetCellBitmap(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridCell_SetCellBitmap(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -510,8 +612,12 @@ static PyObject *_wrap_new_wxGrid(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGrid *)new_wxGrid(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGrid_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGrid *)new_wxGrid(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGrid_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -531,8 +637,12 @@ static PyObject *_wrap_wxGrid_AdjustScrollbars(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_AdjustScrollbars(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_AdjustScrollbars(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -557,8 +667,12 @@ static PyObject *_wrap_wxGrid_AppendCols(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    _result = (bool )wxGrid_AppendCols(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_AppendCols(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -582,8 +696,12 @@ static PyObject *_wrap_wxGrid_AppendRows(PyObject *self, PyObject *args) {
         }
     }
     _arg2 = (bool ) tempbool2;
-    _result = (bool )wxGrid_AppendRows(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_AppendRows(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -602,8 +720,12 @@ static PyObject *_wrap_wxGrid_BeginBatch(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_BeginBatch(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_BeginBatch(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -636,8 +758,12 @@ static PyObject *_wrap_wxGrid_CellHitTest(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGrid_CellHitTest(_arg0,_arg1,_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_CellHitTest(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     PyObject *o;
     o = PyInt_FromLong((long) (*_arg3));
@@ -674,8 +800,12 @@ static PyObject *_wrap_wxGrid_CreateGrid(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGrid_CreateGrid(_arg0,_arg1,_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_CreateGrid(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -695,8 +825,12 @@ static PyObject *_wrap_wxGrid_CurrentCellVisible(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxGrid_CurrentCellVisible(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_CurrentCellVisible(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -721,8 +855,12 @@ static PyObject *_wrap_wxGrid_DeleteCols(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_DeleteCols(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_DeleteCols(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -747,8 +885,12 @@ static PyObject *_wrap_wxGrid_DeleteRows(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_DeleteRows(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_DeleteRows(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -767,8 +909,12 @@ static PyObject *_wrap_wxGrid_EndBatch(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_EndBatch(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_EndBatch(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -789,8 +935,12 @@ static PyObject *_wrap_wxGrid_GetBatchCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetBatchCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetBatchCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -813,8 +963,12 @@ static PyObject *_wrap_wxGrid_GetCell(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxGridCell *)wxGrid_GetCell(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)wxGrid_GetCell(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -837,8 +991,12 @@ static PyObject *_wrap_wxGrid_GetCellAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCellAlignment(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCellAlignment(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -858,8 +1016,12 @@ static PyObject *_wrap_wxGrid_GetDefCellAlignment(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetDefCellAlignment(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetDefCellAlignment(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -882,9 +1044,13 @@ static PyObject *_wrap_wxGrid_GetCellBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetCellBackgroundColour(_arg0,_arg1,_arg2);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetCellBackgroundColour(_arg0,_arg1,_arg2);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -906,9 +1072,13 @@ static PyObject *_wrap_wxGrid_GetDefCellBackgroundColour(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetDefCellBackgroundColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetDefCellBackgroundColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -932,9 +1102,13 @@ static PyObject *_wrap_wxGrid_GetCellTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetCellTextColour(_arg0,_arg1,_arg2);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetCellTextColour(_arg0,_arg1,_arg2);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -956,9 +1130,13 @@ static PyObject *_wrap_wxGrid_GetDefCellTextColour(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetDefCellTextColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetDefCellTextColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -982,8 +1160,13 @@ static PyObject *_wrap_wxGrid_GetCellTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxFont *)wxGrid_GetCellTextFont(_arg0,_arg1,_arg2);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGrid_GetCellTextFont(_arg0,_arg1,_arg2);
+    _result = (wxFont *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1005,8 +1188,13 @@ static PyObject *_wrap_wxGrid_GetDefCellTextFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxFont *)wxGrid_GetDefCellTextFont(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGrid_GetDefCellTextFont(_arg0);
+    _result = (wxFont *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1029,9 +1217,13 @@ static PyObject *_wrap_wxGrid_GetCellValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxString & _result_ref = wxGrid_GetCellValue(_arg0,_arg1,_arg2);
-    _result = (wxString *) &_result_ref;
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxString & _result_ref = wxGrid_GetCellValue(_arg0,_arg1,_arg2);
+    _result = (wxString *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -1053,8 +1245,12 @@ static PyObject *_wrap_wxGrid_GetCols(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCols(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCols(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1075,8 +1271,12 @@ static PyObject *_wrap_wxGrid_GetColumnWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetColumnWidth(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetColumnWidth(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1097,9 +1297,12 @@ static PyObject *_wrap_wxGrid_GetCurrentRect(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxRect & _result_ref = wxGrid_GetCurrentRect(_arg0);
-    _result = (wxRect *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxRect_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxRect (wxGrid_GetCurrentRect(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1120,8 +1323,12 @@ static PyObject *_wrap_wxGrid_GetCursorColumn(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCursorColumn(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCursorColumn(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1141,8 +1348,12 @@ static PyObject *_wrap_wxGrid_GetCursorRow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetCursorRow(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetCursorRow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1162,8 +1373,12 @@ static PyObject *_wrap_wxGrid_GetEditable(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxGrid_GetEditable(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_GetEditable(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1184,8 +1399,12 @@ static PyObject *_wrap_wxGrid_GetHorizScrollBar(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (wxScrollBar *)wxGrid_GetHorizScrollBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScrollBar *)wxGrid_GetHorizScrollBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1207,8 +1426,12 @@ static PyObject *_wrap_wxGrid_GetLabelAlignment(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetLabelAlignment(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetLabelAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1229,9 +1452,13 @@ static PyObject *_wrap_wxGrid_GetLabelBackgroundColour(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetLabelBackgroundColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetLabelBackgroundColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1253,8 +1480,12 @@ static PyObject *_wrap_wxGrid_GetLabelSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetLabelSize(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetLabelSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1275,9 +1506,13 @@ static PyObject *_wrap_wxGrid_GetLabelTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxColour & _result_ref = wxGrid_GetLabelTextColour(_arg0);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxColour & _result_ref = wxGrid_GetLabelTextColour(_arg0);
     _result = (wxColour *) &_result_ref;
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1299,8 +1534,13 @@ static PyObject *_wrap_wxGrid_GetLabelTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxFont *)wxGrid_GetLabelTextFont(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxFont & _result_ref = wxGrid_GetLabelTextFont(_arg0);
+    _result = (wxFont *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxFont_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1323,9 +1563,13 @@ static PyObject *_wrap_wxGrid_GetLabelValue(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxString & _result_ref = wxGrid_GetLabelValue(_arg0,_arg1,_arg2);
-    _result = (wxString *) &_result_ref;
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxString & _result_ref = wxGrid_GetLabelValue(_arg0,_arg1,_arg2);
+    _result = (wxString *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
 }
     return _resultobj;
@@ -1348,8 +1592,12 @@ static PyObject *_wrap_wxGrid_GetRowHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetRowHeight(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetRowHeight(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1369,8 +1617,12 @@ static PyObject *_wrap_wxGrid_GetRows(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetRows(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetRows(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1390,8 +1642,12 @@ static PyObject *_wrap_wxGrid_GetScrollPosX(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetScrollPosX(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetScrollPosX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1411,8 +1667,12 @@ static PyObject *_wrap_wxGrid_GetScrollPosY(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxGrid_GetScrollPosY(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGrid_GetScrollPosY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1433,8 +1693,12 @@ static PyObject *_wrap_wxGrid_GetTextItem(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxTextCtrl *)wxGrid_GetTextItem(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxTextCtrl *)wxGrid_GetTextItem(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxTextCtrl_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1456,8 +1720,12 @@ static PyObject *_wrap_wxGrid_GetVertScrollBar(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxScrollBar *)wxGrid_GetVertScrollBar(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxScrollBar *)wxGrid_GetVertScrollBar(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxScrollBar_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -1483,8 +1751,12 @@ static PyObject *_wrap_wxGrid_InsertCols(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_InsertCols(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_InsertCols(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -1509,8 +1781,40 @@ static PyObject *_wrap_wxGrid_InsertRows(PyObject *self, PyObject *args) {
         }
     }
     _arg3 = (bool ) tempbool3;
-    _result = (bool )wxGrid_InsertRows(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGrid_InsertRows(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGrid_OnActivate(_swigobj,_swigarg0)  (_swigobj->OnActivate(_swigarg0))
+static PyObject *_wrap_wxGrid_OnActivate(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGrid * _arg0;
+    bool  _arg1;
+    char * _argc0 = 0;
+    int tempbool1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxGrid_OnActivate",&_argc0,&tempbool1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGrid_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGrid_OnActivate. Expected _wxGrid_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_OnActivate(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
     return _resultobj;
 }
 
@@ -1532,8 +1836,12 @@ static PyObject *_wrap_wxGrid_SetCellAlignment(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetCellAlignment(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellAlignment(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1554,8 +1862,12 @@ static PyObject *_wrap_wxGrid_SetDefCellAlignment(PyObject *self, PyObject *args
         return NULL;
         }
     }
-    wxGrid_SetDefCellAlignment(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellAlignment(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1585,8 +1897,12 @@ static PyObject *_wrap_wxGrid_SetCellBackgroundColour(PyObject *self, PyObject *
         return NULL;
         }
     }
-    wxGrid_SetCellBackgroundColour(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellBackgroundColour(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1614,8 +1930,12 @@ static PyObject *_wrap_wxGrid_SetDefCellBackgroundColour(PyObject *self, PyObjec
         return NULL;
         }
     }
-    wxGrid_SetDefCellBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1645,8 +1965,12 @@ static PyObject *_wrap_wxGrid_SetCellTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetCellTextColour(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellTextColour(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1674,8 +1998,12 @@ static PyObject *_wrap_wxGrid_SetDefCellTextColour(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxGrid_SetDefCellTextColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellTextColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1705,8 +2033,12 @@ static PyObject *_wrap_wxGrid_SetCellTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetCellTextFont(_arg0,_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellTextFont(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1734,8 +2066,12 @@ static PyObject *_wrap_wxGrid_SetDefCellTextFont(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetDefCellTextFont(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDefCellTextFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1764,10 +2100,14 @@ static PyObject *_wrap_wxGrid_SetCellValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg1 = new wxString(PyString_AsString(_obj1));
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    wxGrid_SetCellValue(_arg0,*_arg1,_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetCellValue(_arg0,*_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj1)
@@ -1793,8 +2133,12 @@ static PyObject *_wrap_wxGrid_SetColumnWidth(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetColumnWidth(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetColumnWidth(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1822,8 +2166,12 @@ static PyObject *_wrap_wxGrid_SetDividerPen(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetDividerPen(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetDividerPen(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1846,8 +2194,12 @@ static PyObject *_wrap_wxGrid_SetEditable(PyObject *self, PyObject *args) {
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxGrid_SetEditable(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetEditable(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1869,8 +2221,12 @@ static PyObject *_wrap_wxGrid_SetGridCursor(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetGridCursor(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetGridCursor(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1892,8 +2248,12 @@ static PyObject *_wrap_wxGrid_SetLabelAlignment(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetLabelAlignment(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelAlignment(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1921,8 +2281,12 @@ static PyObject *_wrap_wxGrid_SetLabelBackgroundColour(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxGrid_SetLabelBackgroundColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelBackgroundColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1944,8 +2308,12 @@ static PyObject *_wrap_wxGrid_SetLabelSize(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetLabelSize(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -1973,8 +2341,12 @@ static PyObject *_wrap_wxGrid_SetLabelTextColour(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    wxGrid_SetLabelTextColour(_arg0,*_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelTextColour(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2002,8 +2374,12 @@ static PyObject *_wrap_wxGrid_SetLabelTextFont(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetLabelTextFont(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelTextFont(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2032,10 +2408,14 @@ static PyObject *_wrap_wxGrid_SetLabelValue(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    wxGrid_SetLabelValue(_arg0,_arg1,*_arg2,_arg3);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetLabelValue(_arg0,_arg1,*_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
 {
     if (_obj2)
@@ -2061,8 +2441,12 @@ static PyObject *_wrap_wxGrid_SetRowHeight(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_SetRowHeight(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_SetRowHeight(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2082,79 +2466,531 @@ static PyObject *_wrap_wxGrid_UpdateDimensions(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxGrid_UpdateDimensions(_arg0);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGrid_UpdateDimensions(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-static void *SwigwxNotebookEventTowxCommandEvent(void *ptr) {
-    wxNotebookEvent *src;
-    wxCommandEvent *dest;
-    src = (wxNotebookEvent *) ptr;
-    dest = (wxCommandEvent *) src;
-    return (void *) dest;
-}
-
-static void *SwigwxNotebookEventTowxEvent(void *ptr) {
-    wxNotebookEvent *src;
+static void *SwigwxGridEventTowxEvent(void *ptr) {
+    wxGridEvent *src;
     wxEvent *dest;
-    src = (wxNotebookEvent *) ptr;
+    src = (wxGridEvent *) ptr;
     dest = (wxEvent *) src;
     return (void *) dest;
 }
 
-#define wxNotebookEvent_GetSelection(_swigobj)  (_swigobj->GetSelection())
-static PyObject *_wrap_wxNotebookEvent_GetSelection(PyObject *self, PyObject *args) {
+#define wxGridEvent_m_row_set(_swigobj,_swigval) (_swigobj->m_row = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_row_set(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxNotebookEvent * _arg0;
+    wxGridEvent * _arg0;
+    int  _arg1;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebookEvent_GetSelection",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_row_set",&_argc0,&_arg1)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetSelection. Expected _wxNotebookEvent_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_row_set. Expected _wxGridEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxNotebookEvent_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_row_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-#define wxNotebookEvent_GetOldSelection(_swigobj)  (_swigobj->GetOldSelection())
-static PyObject *_wrap_wxNotebookEvent_GetOldSelection(PyObject *self, PyObject *args) {
+#define wxGridEvent_m_row_get(_swigobj) ((int ) _swigobj->m_row)
+static PyObject *_wrap_wxGridEvent_m_row_get(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
     int  _result;
-    wxNotebookEvent * _arg0;
+    wxGridEvent * _arg0;
     char * _argc0 = 0;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"s:wxNotebookEvent_GetOldSelection",&_argc0)) 
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_row_get",&_argc0)) 
         return NULL;
     if (_argc0) {
-        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetOldSelection. Expected _wxNotebookEvent_p.");
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_row_get. Expected _wxGridEvent_p.");
         return NULL;
         }
     }
-    _result = (int )wxNotebookEvent_GetOldSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_row_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
-static void *SwigwxNotebookTowxControl(void *ptr) {
-    wxNotebook *src;
-    wxControl *dest;
-    src = (wxNotebook *) ptr;
-    dest = (wxControl *) src;
-    return (void *) dest;
+#define wxGridEvent_m_col_set(_swigobj,_swigval) (_swigobj->m_col = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_col_set(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_col_set",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_col_set. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_col_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
 }
 
-static void *SwigwxNotebookTowxWindow(void *ptr) {
+#define wxGridEvent_m_col_get(_swigobj) ((int ) _swigobj->m_col)
+static PyObject *_wrap_wxGridEvent_m_col_get(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_col_get",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_col_get. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_col_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_x_set(_swigobj,_swigval) (_swigobj->m_x = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_x_set(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_x_set",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_x_set. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_x_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_x_get(_swigobj) ((int ) _swigobj->m_x)
+static PyObject *_wrap_wxGridEvent_m_x_get(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_x_get",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_x_get. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_x_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_y_set(_swigobj,_swigval) (_swigobj->m_y = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_y_set(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_y_set",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_y_set. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_y_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_y_get(_swigobj) ((int ) _swigobj->m_y)
+static PyObject *_wrap_wxGridEvent_m_y_get(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_y_get",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_y_get. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEvent_m_y_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_control_set(_swigobj,_swigval) (_swigobj->m_control = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_control_set(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxGridEvent * _arg0;
+    bool  _arg1;
+    char * _argc0 = 0;
+    int tempbool1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_control_set",&_argc0,&tempbool1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_control_set. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_control_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_control_get(_swigobj) ((bool ) _swigobj->m_control)
+static PyObject *_wrap_wxGridEvent_m_control_get(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxGridEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_control_get",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_control_get. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_control_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_shift_set(_swigobj,_swigval) (_swigobj->m_shift = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_shift_set(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxGridEvent * _arg0;
+    bool  _arg1;
+    char * _argc0 = 0;
+    int tempbool1;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxGridEvent_m_shift_set",&_argc0,&tempbool1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_shift_set. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_shift_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_shift_get(_swigobj) ((bool ) _swigobj->m_shift)
+static PyObject *_wrap_wxGridEvent_m_shift_get(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxGridEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_shift_get",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_shift_get. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxGridEvent_m_shift_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_cell_set(_swigobj,_swigval) (_swigobj->m_cell = _swigval,_swigval)
+static PyObject *_wrap_wxGridEvent_m_cell_set(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGridCell * _result;
+    wxGridEvent * _arg0;
+    wxGridCell * _arg1;
+    char * _argc0 = 0;
+    char * _argc1 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"ss:wxGridEvent_m_cell_set",&_argc0,&_argc1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_cell_set. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+    if (_argc1) {
+        if (SWIG_GetPtr(_argc1,(void **) &_arg1,"_wxGridCell_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridEvent_m_cell_set. Expected _wxGridCell_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)wxGridEvent_m_cell_set(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxGridEvent_m_cell_get(_swigobj) ((wxGridCell *) _swigobj->m_cell)
+static PyObject *_wrap_wxGridEvent_m_cell_get(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxGridCell * _result;
+    wxGridEvent * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxGridEvent_m_cell_get",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxGridEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEvent_m_cell_get. Expected _wxGridEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridCell *)wxGridEvent_m_cell_get(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridCell_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void *SwigwxNotebookEventTowxNotifyEvent(void *ptr) {
+    wxNotebookEvent *src;
+    wxNotifyEvent *dest;
+    src = (wxNotebookEvent *) ptr;
+    dest = (wxNotifyEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxNotebookEventTowxCommandEvent(void *ptr) {
+    wxNotebookEvent *src;
+    wxCommandEvent *dest;
+    src = (wxNotebookEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxNotebookEventTowxEvent(void *ptr) {
+    wxNotebookEvent *src;
+    wxEvent *dest;
+    src = (wxNotebookEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxNotebookEvent_GetSelection(_swigobj)  (_swigobj->GetSelection())
+static PyObject *_wrap_wxNotebookEvent_GetSelection(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxNotebookEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxNotebookEvent_GetSelection",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetSelection. Expected _wxNotebookEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebookEvent_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxNotebookEvent_GetOldSelection(_swigobj)  (_swigobj->GetOldSelection())
+static PyObject *_wrap_wxNotebookEvent_GetOldSelection(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxNotebookEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxNotebookEvent_GetOldSelection",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_GetOldSelection. Expected _wxNotebookEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebookEvent_GetOldSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxNotebookEvent_SetOldSelection(_swigobj,_swigarg0)  (_swigobj->SetOldSelection(_swigarg0))
+static PyObject *_wrap_wxNotebookEvent_SetOldSelection(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxNotebookEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxNotebookEvent_SetOldSelection",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_SetOldSelection. Expected _wxNotebookEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebookEvent_SetOldSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxNotebookEvent_SetSelection(_swigobj,_swigarg0)  (_swigobj->SetSelection(_swigarg0))
+static PyObject *_wrap_wxNotebookEvent_SetSelection(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxNotebookEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxNotebookEvent_SetSelection",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebookEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebookEvent_SetSelection. Expected _wxNotebookEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebookEvent_SetSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static void *SwigwxNotebookTowxControl(void *ptr) {
+    wxNotebook *src;
+    wxControl *dest;
+    src = (wxNotebook *) ptr;
+    dest = (wxControl *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxNotebookTowxWindow(void *ptr) {
     wxNotebook *src;
     wxWindow *dest;
     src = (wxNotebook *) ptr;
@@ -2206,8 +3042,12 @@ static PyObject *_wrap_new_wxNotebook(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxNotebook *)new_wxNotebook(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebook_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxNotebook *)new_wxNotebook(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebook_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2228,8 +3068,12 @@ static PyObject *_wrap_wxNotebook_GetPageCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetPageCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetPageCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2250,8 +3094,12 @@ static PyObject *_wrap_wxNotebook_SetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_SetSelection(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_SetSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2273,8 +3121,12 @@ static PyObject *_wrap_wxNotebook_AdvanceSelection(PyObject *self, PyObject *arg
         }
     }
     _arg1 = (bool ) tempbool1;
-    wxNotebook_AdvanceSelection(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebook_AdvanceSelection(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2295,8 +3147,12 @@ static PyObject *_wrap_wxNotebook_GetSelection(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetSelection(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetSelection(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2324,10 +3180,14 @@ static PyObject *_wrap_wxNotebook_SetPageText(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _result = (bool )wxNotebook_SetPageText(_arg0,_arg1,*_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_SetPageText(_arg0,_arg1,*_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -2352,8 +3212,12 @@ static PyObject *_wrap_wxNotebook_GetPageText(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = new wxString (wxNotebook_GetPageText(_arg0,_arg1));
 {
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxNotebook_GetPageText(_arg0,_arg1));
+
+    wxPy_END_ALLOW_THREADS;
+}{
     _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
 }
 {
@@ -2385,8 +3249,12 @@ static PyObject *_wrap_wxNotebook_SetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    wxNotebook_SetImageList(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebook_SetImageList(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2408,8 +3276,12 @@ static PyObject *_wrap_wxNotebook_GetImageList(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxImageList *)wxNotebook_GetImageList(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxImageList *)wxNotebook_GetImageList(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxImageList_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2431,8 +3303,12 @@ static PyObject *_wrap_wxNotebook_GetPageImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetPageImage(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetPageImage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2454,8 +3330,12 @@ static PyObject *_wrap_wxNotebook_SetPageImage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxNotebook_SetPageImage(_arg0,_arg1,_arg2);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_SetPageImage(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2475,8 +3355,12 @@ static PyObject *_wrap_wxNotebook_GetRowCount(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (int )wxNotebook_GetRowCount(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxNotebook_GetRowCount(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2497,8 +3381,38 @@ static PyObject *_wrap_wxNotebook_DeletePage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (bool )wxNotebook_DeletePage(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_DeletePage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxNotebook_RemovePage(_swigobj,_swigarg0)  (_swigobj->RemovePage(_swigarg0))
+static PyObject *_wrap_wxNotebook_RemovePage(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxNotebook * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxNotebook_RemovePage",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_RemovePage. Expected _wxNotebook_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_RemovePage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2518,8 +3432,12 @@ static PyObject *_wrap_wxNotebook_DeleteAllPages(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxNotebook_DeleteAllPages(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_DeleteAllPages(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2530,15 +3448,14 @@ static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
     wxNotebook * _arg0;
     wxWindow * _arg1;
     wxString * _arg2;
-    bool  _arg3 = (0);
+    int  _arg3 = (0);
     int  _arg4 = -1;
     char * _argc0 = 0;
     char * _argc1 = 0;
     PyObject * _obj2 = 0;
-    int tempbool3;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ssO|ii:wxNotebook_AddPage",&_argc0,&_argc1,&_obj2,&tempbool3,&_arg4)) 
+    if(!PyArg_ParseTuple(args,"ssO|ii:wxNotebook_AddPage",&_argc0,&_argc1,&_obj2,&_arg3,&_arg4)) 
         return NULL;
     if (_argc0) {
         if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
@@ -2557,11 +3474,14 @@ static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
         PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
         return NULL;
     }
-    _arg2 = new wxString(PyString_AsString(_obj2));
+    _arg2 = new wxString(PyString_AsString(_obj2), PyString_Size(_obj2));
 }
-    _arg3 = (bool ) tempbool3;
-    _result = (bool )wxNotebook_AddPage(_arg0,_arg1,*_arg2,_arg3,_arg4);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxNotebook_AddPage(_arg0,_arg1,*_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
 {
     if (_obj2)
         delete _arg2;
@@ -2572,7 +3492,7 @@ static PyObject *_wrap_wxNotebook_AddPage(PyObject *self, PyObject *args) {
 #define wxNotebook_GetPage(_swigobj,_swigarg0)  (_swigobj->GetPage(_swigarg0))
 static PyObject *_wrap_wxNotebook_GetPage(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
-    wxNotebookPage * _result;
+    wxWindow * _result;
     wxNotebook * _arg0;
     int  _arg1;
     char * _argc0 = 0;
@@ -2587,12 +3507,188 @@ static PyObject *_wrap_wxNotebook_GetPage(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxNotebookPage *)wxNotebook_GetPage(_arg0,_arg1);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxNotebookPage_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxNotebook_GetPage(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+static void  wxNotebook_ResizeChildren(wxNotebook *self) {
+            wxSizeEvent evt(self->GetClientSize());
+            self->GetEventHandler()->ProcessEvent(evt);
+        }
+static PyObject *_wrap_wxNotebook_ResizeChildren(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxNotebook * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxNotebook_ResizeChildren",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxNotebook_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxNotebook_ResizeChildren. Expected _wxNotebook_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxNotebook_ResizeChildren(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static void *SwigwxSplitterEventTowxCommandEvent(void *ptr) {
+    wxSplitterEvent *src;
+    wxCommandEvent *dest;
+    src = (wxSplitterEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxSplitterEventTowxEvent(void *ptr) {
+    wxSplitterEvent *src;
+    wxEvent *dest;
+    src = (wxSplitterEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+#define wxSplitterEvent_GetSashPosition(_swigobj)  (_swigobj->GetSashPosition())
+static PyObject *_wrap_wxSplitterEvent_GetSashPosition(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSplitterEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetSashPosition",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetSashPosition. Expected _wxSplitterEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterEvent_GetSashPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSplitterEvent_GetX(_swigobj)  (_swigobj->GetX())
+static PyObject *_wrap_wxSplitterEvent_GetX(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSplitterEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetX",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetX. Expected _wxSplitterEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterEvent_GetX(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSplitterEvent_GetY(_swigobj)  (_swigobj->GetY())
+static PyObject *_wrap_wxSplitterEvent_GetY(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSplitterEvent * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetY",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetY. Expected _wxSplitterEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterEvent_GetY(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSplitterEvent_GetWindowBeingRemoved(_swigobj)  (_swigobj->GetWindowBeingRemoved())
+static PyObject *_wrap_wxSplitterEvent_GetWindowBeingRemoved(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxWindow * _result;
+    wxSplitterEvent * _arg0;
+    char * _argc0 = 0;
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSplitterEvent_GetWindowBeingRemoved",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_GetWindowBeingRemoved. Expected _wxSplitterEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxSplitterEvent_GetWindowBeingRemoved(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
+#define wxSplitterEvent_SetSashPosition(_swigobj,_swigarg0)  (_swigobj->SetSashPosition(_swigarg0))
+static PyObject *_wrap_wxSplitterEvent_SetSashPosition(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSplitterEvent * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSplitterEvent_SetSashPosition",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterEvent_SetSashPosition. Expected _wxSplitterEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterEvent_SetSashPosition(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 static void *SwigwxSplitterWindowTowxWindow(void *ptr) {
     wxSplitterWindow *src;
     wxWindow *dest;
@@ -2617,7 +3713,7 @@ static PyObject *_wrap_new_wxSplitterWindow(PyObject *self, PyObject *args) {
     wxWindowID  _arg1;
     wxPoint * _arg2 = &wxPyDefaultPosition;
     wxSize * _arg3 = &wxPyDefaultSize;
-    long  _arg4 = (wxSP_3D);
+    long  _arg4 = (wxSP_3D)|(wxCLIP_CHILDREN);
     char * _arg5 = "splitterWindow";
     char * _argc0 = 0;
     char * _argc2 = 0;
@@ -2645,12 +3741,41 @@ static PyObject *_wrap_new_wxSplitterWindow(PyObject *self, PyObject *args) {
         return NULL;
         }
     }
-    _result = (wxSplitterWindow *)new_wxSplitterWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSplitterWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxSplitterWindow *)new_wxSplitterWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxSplitterWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
 
+#define wxSplitterWindow_GetBorderSize(_swigobj)  (_swigobj->GetBorderSize())
+static PyObject *_wrap_wxSplitterWindow_GetBorderSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSplitterWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetBorderSize",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetBorderSize. Expected _wxSplitterWindow_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetBorderSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
 #define wxSplitterWindow_GetMinimumPaneSize(_swigobj)  (_swigobj->GetMinimumPaneSize())
 static PyObject *_wrap_wxSplitterWindow_GetMinimumPaneSize(PyObject *self, PyObject *args) {
     PyObject * _resultobj;
@@ -2667,8 +3792,12 @@ static PyObject *_wrap_wxSplitterWindow_GetMinimumPaneSize(PyObject *self, PyObj
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetMinimumPaneSize(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetMinimumPaneSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2688,8 +3817,37 @@ static PyObject *_wrap_wxSplitterWindow_GetSashPosition(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetSashPosition(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetSashPosition(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSplitterWindow_GetSashSize(_swigobj)  (_swigobj->GetSashSize())
+static PyObject *_wrap_wxSplitterWindow_GetSashSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    int  _result;
+    wxSplitterWindow * _arg0;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"s:wxSplitterWindow_GetSashSize",&_argc0)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_GetSashSize. Expected _wxSplitterWindow_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetSashSize(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2709,8 +3867,12 @@ static PyObject *_wrap_wxSplitterWindow_GetSplitMode(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    _result = (int )wxSplitterWindow_GetSplitMode(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxSplitterWindow_GetSplitMode(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2731,8 +3893,12 @@ static PyObject *_wrap_wxSplitterWindow_GetWindow1(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxWindow *)wxSplitterWindow_GetWindow1(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxSplitterWindow_GetWindow1(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2754,8 +3920,12 @@ static PyObject *_wrap_wxSplitterWindow_GetWindow2(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    _result = (wxWindow *)wxSplitterWindow_GetWindow2(_arg0);
-    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxWindow *)wxSplitterWindow_GetWindow2(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    SWIG_MakePtr(_ptemp, (char *) _result,"_wxWindow_p");
     _resultobj = Py_BuildValue("s",_ptemp);
     return _resultobj;
 }
@@ -2783,8 +3953,12 @@ static PyObject *_wrap_wxSplitterWindow_Initialize(PyObject *self, PyObject *arg
         return NULL;
         }
     }
-    wxSplitterWindow_Initialize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_Initialize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2805,8 +3979,38 @@ static PyObject *_wrap_wxSplitterWindow_IsSplit(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_IsSplit(_arg0);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_IsSplit(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxSplitterWindow_SetBorderSize(_swigobj,_swigarg0)  (_swigobj->SetBorderSize(_swigarg0))
+static PyObject *_wrap_wxSplitterWindow_SetBorderSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSplitterWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSplitterWindow_SetBorderSize",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetBorderSize. Expected _wxSplitterWindow_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetBorderSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
     return _resultobj;
 }
 
@@ -2827,8 +4031,38 @@ static PyObject *_wrap_wxSplitterWindow_SetSashPosition(PyObject *self, PyObject
         return NULL;
         }
     }
-    wxSplitterWindow_SetSashPosition(_arg0,_arg1,_arg2);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetSashPosition(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxSplitterWindow_SetSashSize(_swigobj,_swigarg0)  (_swigobj->SetSashSize(_swigarg0))
+static PyObject *_wrap_wxSplitterWindow_SetSashSize(PyObject *self, PyObject *args) {
+    PyObject * _resultobj;
+    wxSplitterWindow * _arg0;
+    int  _arg1;
+    char * _argc0 = 0;
+
+    self = self;
+    if(!PyArg_ParseTuple(args,"si:wxSplitterWindow_SetSashSize",&_argc0,&_arg1)) 
+        return NULL;
+    if (_argc0) {
+        if (SWIG_GetPtr(_argc0,(void **) &_arg0,"_wxSplitterWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxSplitterWindow_SetSashSize. Expected _wxSplitterWindow_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetSashSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2849,8 +4083,12 @@ static PyObject *_wrap_wxSplitterWindow_SetMinimumPaneSize(PyObject *self, PyObj
         return NULL;
         }
     }
-    wxSplitterWindow_SetMinimumPaneSize(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetMinimumPaneSize(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2871,8 +4109,12 @@ static PyObject *_wrap_wxSplitterWindow_SetSplitMode(PyObject *self, PyObject *a
         return NULL;
         }
     }
-    wxSplitterWindow_SetSplitMode(_arg0,_arg1);
-    Py_INCREF(Py_None);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxSplitterWindow_SetSplitMode(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
@@ -2910,8 +4152,12 @@ static PyObject *_wrap_wxSplitterWindow_SplitHorizontally(PyObject *self, PyObje
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_SplitHorizontally(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_SplitHorizontally(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2948,8 +4194,12 @@ static PyObject *_wrap_wxSplitterWindow_SplitVertically(PyObject *self, PyObject
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_SplitVertically(_arg0,_arg1,_arg2,_arg3);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_SplitVertically(_arg0,_arg1,_arg2,_arg3);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2977,8 +4227,12 @@ static PyObject *_wrap_wxSplitterWindow_Unsplit(PyObject *self, PyObject *args)
         return NULL;
         }
     }
-    _result = (bool )wxSplitterWindow_Unsplit(_arg0,_arg1);
-    _resultobj = Py_BuildValue("i",_result);
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxSplitterWindow_Unsplit(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
 }
 
@@ -2988,18 +4242,29 @@ static PyMethodDef windows2cMethods[] = {
         { "wxSplitterWindow_SplitHorizontally", _wrap_wxSplitterWindow_SplitHorizontally, 1 },
         { "wxSplitterWindow_SetSplitMode", _wrap_wxSplitterWindow_SetSplitMode, 1 },
         { "wxSplitterWindow_SetMinimumPaneSize", _wrap_wxSplitterWindow_SetMinimumPaneSize, 1 },
+        { "wxSplitterWindow_SetSashSize", _wrap_wxSplitterWindow_SetSashSize, 1 },
         { "wxSplitterWindow_SetSashPosition", _wrap_wxSplitterWindow_SetSashPosition, 1 },
+        { "wxSplitterWindow_SetBorderSize", _wrap_wxSplitterWindow_SetBorderSize, 1 },
         { "wxSplitterWindow_IsSplit", _wrap_wxSplitterWindow_IsSplit, 1 },
         { "wxSplitterWindow_Initialize", _wrap_wxSplitterWindow_Initialize, 1 },
         { "wxSplitterWindow_GetWindow2", _wrap_wxSplitterWindow_GetWindow2, 1 },
         { "wxSplitterWindow_GetWindow1", _wrap_wxSplitterWindow_GetWindow1, 1 },
         { "wxSplitterWindow_GetSplitMode", _wrap_wxSplitterWindow_GetSplitMode, 1 },
+        { "wxSplitterWindow_GetSashSize", _wrap_wxSplitterWindow_GetSashSize, 1 },
         { "wxSplitterWindow_GetSashPosition", _wrap_wxSplitterWindow_GetSashPosition, 1 },
         { "wxSplitterWindow_GetMinimumPaneSize", _wrap_wxSplitterWindow_GetMinimumPaneSize, 1 },
+        { "wxSplitterWindow_GetBorderSize", _wrap_wxSplitterWindow_GetBorderSize, 1 },
         { "new_wxSplitterWindow", _wrap_new_wxSplitterWindow, 1 },
+        { "wxSplitterEvent_SetSashPosition", _wrap_wxSplitterEvent_SetSashPosition, 1 },
+        { "wxSplitterEvent_GetWindowBeingRemoved", _wrap_wxSplitterEvent_GetWindowBeingRemoved, 1 },
+        { "wxSplitterEvent_GetY", _wrap_wxSplitterEvent_GetY, 1 },
+        { "wxSplitterEvent_GetX", _wrap_wxSplitterEvent_GetX, 1 },
+        { "wxSplitterEvent_GetSashPosition", _wrap_wxSplitterEvent_GetSashPosition, 1 },
+        { "wxNotebook_ResizeChildren", _wrap_wxNotebook_ResizeChildren, 1 },
         { "wxNotebook_GetPage", _wrap_wxNotebook_GetPage, 1 },
         { "wxNotebook_AddPage", _wrap_wxNotebook_AddPage, 1 },
         { "wxNotebook_DeleteAllPages", _wrap_wxNotebook_DeleteAllPages, 1 },
+        { "wxNotebook_RemovePage", _wrap_wxNotebook_RemovePage, 1 },
         { "wxNotebook_DeletePage", _wrap_wxNotebook_DeletePage, 1 },
         { "wxNotebook_GetRowCount", _wrap_wxNotebook_GetRowCount, 1 },
         { "wxNotebook_SetPageImage", _wrap_wxNotebook_SetPageImage, 1 },
@@ -3013,8 +4278,24 @@ static PyMethodDef windows2cMethods[] = {
         { "wxNotebook_SetSelection", _wrap_wxNotebook_SetSelection, 1 },
         { "wxNotebook_GetPageCount", _wrap_wxNotebook_GetPageCount, 1 },
         { "new_wxNotebook", _wrap_new_wxNotebook, 1 },
+        { "wxNotebookEvent_SetSelection", _wrap_wxNotebookEvent_SetSelection, 1 },
+        { "wxNotebookEvent_SetOldSelection", _wrap_wxNotebookEvent_SetOldSelection, 1 },
         { "wxNotebookEvent_GetOldSelection", _wrap_wxNotebookEvent_GetOldSelection, 1 },
         { "wxNotebookEvent_GetSelection", _wrap_wxNotebookEvent_GetSelection, 1 },
+        { "wxGridEvent_m_cell_get", _wrap_wxGridEvent_m_cell_get, 1 },
+        { "wxGridEvent_m_cell_set", _wrap_wxGridEvent_m_cell_set, 1 },
+        { "wxGridEvent_m_shift_get", _wrap_wxGridEvent_m_shift_get, 1 },
+        { "wxGridEvent_m_shift_set", _wrap_wxGridEvent_m_shift_set, 1 },
+        { "wxGridEvent_m_control_get", _wrap_wxGridEvent_m_control_get, 1 },
+        { "wxGridEvent_m_control_set", _wrap_wxGridEvent_m_control_set, 1 },
+        { "wxGridEvent_m_y_get", _wrap_wxGridEvent_m_y_get, 1 },
+        { "wxGridEvent_m_y_set", _wrap_wxGridEvent_m_y_set, 1 },
+        { "wxGridEvent_m_x_get", _wrap_wxGridEvent_m_x_get, 1 },
+        { "wxGridEvent_m_x_set", _wrap_wxGridEvent_m_x_set, 1 },
+        { "wxGridEvent_m_col_get", _wrap_wxGridEvent_m_col_get, 1 },
+        { "wxGridEvent_m_col_set", _wrap_wxGridEvent_m_col_set, 1 },
+        { "wxGridEvent_m_row_get", _wrap_wxGridEvent_m_row_get, 1 },
+        { "wxGridEvent_m_row_set", _wrap_wxGridEvent_m_row_set, 1 },
         { "wxGrid_UpdateDimensions", _wrap_wxGrid_UpdateDimensions, 1 },
         { "wxGrid_SetRowHeight", _wrap_wxGrid_SetRowHeight, 1 },
         { "wxGrid_SetLabelValue", _wrap_wxGrid_SetLabelValue, 1 },
@@ -3036,6 +4317,7 @@ static PyMethodDef windows2cMethods[] = {
         { "wxGrid_SetCellBackgroundColour", _wrap_wxGrid_SetCellBackgroundColour, 1 },
         { "wxGrid_SetDefCellAlignment", _wrap_wxGrid_SetDefCellAlignment, 1 },
         { "wxGrid_SetCellAlignment", _wrap_wxGrid_SetCellAlignment, 1 },
+        { "wxGrid_OnActivate", _wrap_wxGrid_OnActivate, 1 },
         { "wxGrid_InsertRows", _wrap_wxGrid_InsertRows, 1 },
         { "wxGrid_InsertCols", _wrap_wxGrid_InsertCols, 1 },
         { "wxGrid_GetVertScrollBar", _wrap_wxGrid_GetVertScrollBar, 1 },
@@ -3092,6 +4374,8 @@ static PyMethodDef windows2cMethods[] = {
         { "wxGridCell_GetFont", _wrap_wxGridCell_GetFont, 1 },
         { "wxGridCell_SetTextValue", _wrap_wxGridCell_SetTextValue, 1 },
         { "wxGridCell_GetTextValue", _wrap_wxGridCell_GetTextValue, 1 },
+        { "delete_wxGridCell", _wrap_delete_wxGridCell, 1 },
+        { "new_wxGridCell", _wrap_new_wxGridCell, 1 },
         { NULL, NULL }
 };
 static PyObject *SWIG_globals;
@@ -3106,17 +4390,38 @@ SWIGEXPORT(void,initwindows2c)() {
         PyDict_SetItemString(d,"wxGRID_TEXT_CTRL", PyInt_FromLong((long) wxGRID_TEXT_CTRL));
         PyDict_SetItemString(d,"wxGRID_HSCROLL", PyInt_FromLong((long) wxGRID_HSCROLL));
         PyDict_SetItemString(d,"wxGRID_VSCROLL", PyInt_FromLong((long) wxGRID_VSCROLL));
+        PyDict_SetItemString(d,"wxEVT_GRID_SELECT_CELL", PyInt_FromLong((long) wxEVT_GRID_SELECT_CELL));
+        PyDict_SetItemString(d,"wxEVT_GRID_CREATE_CELL", PyInt_FromLong((long) wxEVT_GRID_CREATE_CELL));
+        PyDict_SetItemString(d,"wxEVT_GRID_CHANGE_LABELS", PyInt_FromLong((long) wxEVT_GRID_CHANGE_LABELS));
+        PyDict_SetItemString(d,"wxEVT_GRID_CHANGE_SEL_LABEL", PyInt_FromLong((long) wxEVT_GRID_CHANGE_SEL_LABEL));
+        PyDict_SetItemString(d,"wxEVT_GRID_CELL_CHANGE", PyInt_FromLong((long) wxEVT_GRID_CELL_CHANGE));
+        PyDict_SetItemString(d,"wxEVT_GRID_CELL_LCLICK", PyInt_FromLong((long) wxEVT_GRID_CELL_LCLICK));
+        PyDict_SetItemString(d,"wxEVT_GRID_CELL_RCLICK", PyInt_FromLong((long) wxEVT_GRID_CELL_RCLICK));
+        PyDict_SetItemString(d,"wxEVT_GRID_LABEL_LCLICK", PyInt_FromLong((long) wxEVT_GRID_LABEL_LCLICK));
+        PyDict_SetItemString(d,"wxEVT_GRID_LABEL_RCLICK", PyInt_FromLong((long) wxEVT_GRID_LABEL_RCLICK));
 /*
  * These are the pointer type-equivalency mappings. 
  * (Used by the SWIG pointer type-checker).
  */
         SWIG_RegisterMapping("_wxAcceleratorTable","_class_wxAcceleratorTable",0);
+        SWIG_RegisterMapping("_wxEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
         SWIG_RegisterMapping("_wxEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
         SWIG_RegisterMapping("_wxEvent","_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_class_wxGridEvent",SwigwxGridEventTowxEvent);
+        SWIG_RegisterMapping("_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent);
         SWIG_RegisterMapping("_wxEvent","_class_wxEvent",0);
         SWIG_RegisterMapping("_class_wxActivateEvent","_wxActivateEvent",0);
         SWIG_RegisterMapping("_signed_long","_long",0);
         SWIG_RegisterMapping("_wxMenuEvent","_class_wxMenuEvent",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_int",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_signed_int",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_unsigned_int",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_wxWindowID",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_uint",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_EBool",0);
+        SWIG_RegisterMapping("_wxPrintQuality","_size_t",0);
+        SWIG_RegisterMapping("_class_wxRegionIterator","_wxRegionIterator",0);
         SWIG_RegisterMapping("_class_wxMenuBar","_wxMenuBar",0);
         SWIG_RegisterMapping("_class_wxEvtHandler","_class_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler);
         SWIG_RegisterMapping("_class_wxEvtHandler","_wxSplitterWindow",SwigwxSplitterWindowTowxEvtHandler);
@@ -3128,6 +4433,9 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxPaintEvent","_class_wxPaintEvent",0);
         SWIG_RegisterMapping("_wxIndividualLayoutConstraint","_class_wxIndividualLayoutConstraint",0);
         SWIG_RegisterMapping("_wxCursor","_class_wxCursor",0);
+        SWIG_RegisterMapping("_wxNotifyEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
+        SWIG_RegisterMapping("_wxNotifyEvent","_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
+        SWIG_RegisterMapping("_wxNotifyEvent","_class_wxNotifyEvent",0);
         SWIG_RegisterMapping("_wxMask","_class_wxMask",0);
         SWIG_RegisterMapping("_wxGrid","_class_wxGrid",0);
         SWIG_RegisterMapping("_wxPyMenu","_class_wxPyMenu",0);
@@ -3141,12 +4449,18 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_long","_wxDash",0);
         SWIG_RegisterMapping("_long","_unsigned_long",0);
         SWIG_RegisterMapping("_long","_signed_long",0);
+        SWIG_RegisterMapping("_wxImageList","_class_wxImageList",0);
         SWIG_RegisterMapping("_wxDropFilesEvent","_class_wxDropFilesEvent",0);
         SWIG_RegisterMapping("_wxBitmapButton","_class_wxBitmapButton",0);
         SWIG_RegisterMapping("_class_wxAcceleratorTable","_wxAcceleratorTable",0);
         SWIG_RegisterMapping("_class_wxGauge","_wxGauge",0);
         SWIG_RegisterMapping("_wxDC","_class_wxDC",0);
         SWIG_RegisterMapping("_wxSpinEvent","_class_wxSpinEvent",0);
+        SWIG_RegisterMapping("_size_t","_wxPrintQuality",0);
+        SWIG_RegisterMapping("_size_t","_unsigned_int",0);
+        SWIG_RegisterMapping("_size_t","_int",0);
+        SWIG_RegisterMapping("_size_t","_wxWindowID",0);
+        SWIG_RegisterMapping("_size_t","_uint",0);
         SWIG_RegisterMapping("_class_wxRealPoint","_wxRealPoint",0);
         SWIG_RegisterMapping("_class_wxMenuItem","_wxMenuItem",0);
         SWIG_RegisterMapping("_class_wxPaintEvent","_wxPaintEvent",0);
@@ -3157,6 +4471,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxPanel","_class_wxPanel",0);
         SWIG_RegisterMapping("_wxInitDialogEvent","_class_wxInitDialogEvent",0);
         SWIG_RegisterMapping("_wxCheckBox","_class_wxCheckBox",0);
+        SWIG_RegisterMapping("_wxPyEvent","_class_wxPyEvent",0);
         SWIG_RegisterMapping("_wxTextCtrl","_class_wxTextCtrl",0);
         SWIG_RegisterMapping("_class_wxMask","_wxMask",0);
         SWIG_RegisterMapping("_class_wxKeyEvent","_wxKeyEvent",0);
@@ -3165,16 +4480,28 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_class_wxDialog","_wxDialog",0);
         SWIG_RegisterMapping("_wxIdleEvent","_class_wxIdleEvent",0);
         SWIG_RegisterMapping("_class_wxUpdateUIEvent","_wxUpdateUIEvent",0);
+        SWIG_RegisterMapping("_wxStaticLine","_class_wxStaticLine",0);
         SWIG_RegisterMapping("_wxBrush","_class_wxBrush",0);
         SWIG_RegisterMapping("_class_wxNotebookEvent","_wxNotebookEvent",0);
         SWIG_RegisterMapping("_wxShowEvent","_class_wxShowEvent",0);
+        SWIG_RegisterMapping("_uint","_wxPrintQuality",0);
+        SWIG_RegisterMapping("_uint","_size_t",0);
         SWIG_RegisterMapping("_uint","_unsigned_int",0);
         SWIG_RegisterMapping("_uint","_int",0);
         SWIG_RegisterMapping("_uint","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxSplitterEvent",SwigwxSplitterEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_wxNotebookEvent",SwigwxNotebookEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_class_wxGridEvent",SwigwxGridEventTowxEvent);
+        SWIG_RegisterMapping("_class_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent);
         SWIG_RegisterMapping("_class_wxEvent","_wxEvent",0);
+        SWIG_RegisterMapping("_wxCheckListBox","_class_wxCheckListBox",0);
+        SWIG_RegisterMapping("_wxSplitterEvent","_class_wxSplitterEvent",0);
+        SWIG_RegisterMapping("_wxGridEvent","_class_wxGridEvent",0);
         SWIG_RegisterMapping("_wxRect","_class_wxRect",0);
+        SWIG_RegisterMapping("_wxCommandEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
+        SWIG_RegisterMapping("_wxCommandEvent","_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
         SWIG_RegisterMapping("_wxCommandEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
         SWIG_RegisterMapping("_wxCommandEvent","_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
         SWIG_RegisterMapping("_wxCommandEvent","_class_wxCommandEvent",0);
@@ -3184,19 +4511,28 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxRadioBox","_class_wxRadioBox",0);
         SWIG_RegisterMapping("_wxBitmap","_class_wxBitmap",0);
         SWIG_RegisterMapping("_wxPyTimer","_class_wxPyTimer",0);
+        SWIG_RegisterMapping("_wxWindowDC","_class_wxWindowDC",0);
         SWIG_RegisterMapping("_wxScrollBar","_class_wxScrollBar",0);
         SWIG_RegisterMapping("_wxSpinButton","_class_wxSpinButton",0);
         SWIG_RegisterMapping("_class_wxIndividualLayoutConstraint","_wxIndividualLayoutConstraint",0);
+        SWIG_RegisterMapping("_class_wxNotifyEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
+        SWIG_RegisterMapping("_class_wxNotifyEvent","_wxNotebookEvent",SwigwxNotebookEventTowxNotifyEvent);
+        SWIG_RegisterMapping("_class_wxNotifyEvent","_wxNotifyEvent",0);
+        SWIG_RegisterMapping("_class_wxPyEvent","_wxPyEvent",0);
         SWIG_RegisterMapping("_class_wxIconizeEvent","_wxIconizeEvent",0);
         SWIG_RegisterMapping("_class_wxStaticBitmap","_wxStaticBitmap",0);
+        SWIG_RegisterMapping("_class_wxStaticLine","_wxStaticLine",0);
         SWIG_RegisterMapping("_wxScrollEvent","_class_wxScrollEvent",0);
+        SWIG_RegisterMapping("_EBool","_wxPrintQuality",0);
         SWIG_RegisterMapping("_EBool","_signed_int",0);
         SWIG_RegisterMapping("_EBool","_int",0);
         SWIG_RegisterMapping("_EBool","_wxWindowID",0);
+        SWIG_RegisterMapping("_class_wxRegion","_wxRegion",0);
         SWIG_RegisterMapping("_class_wxDropFilesEvent","_wxDropFilesEvent",0);
         SWIG_RegisterMapping("_wxStaticText","_class_wxStaticText",0);
         SWIG_RegisterMapping("_wxFont","_class_wxFont",0);
         SWIG_RegisterMapping("_wxCloseEvent","_class_wxCloseEvent",0);
+        SWIG_RegisterMapping("_class_wxSplitterEvent","_wxSplitterEvent",0);
         SWIG_RegisterMapping("_wxNotebook","_class_wxNotebook",0);
         SWIG_RegisterMapping("_unsigned_long","_wxDash",0);
         SWIG_RegisterMapping("_unsigned_long","_long",0);
@@ -3213,6 +4549,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_class_wxCheckBox","_wxCheckBox",0);
         SWIG_RegisterMapping("_wxComboBox","_class_wxComboBox",0);
         SWIG_RegisterMapping("_wxRadioButton","_class_wxRadioButton",0);
+        SWIG_RegisterMapping("_signed_int","_wxPrintQuality",0);
         SWIG_RegisterMapping("_signed_int","_EBool",0);
         SWIG_RegisterMapping("_signed_int","_wxWindowID",0);
         SWIG_RegisterMapping("_signed_int","_int",0);
@@ -3250,6 +4587,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_signed_short","_short",0);
         SWIG_RegisterMapping("_wxMemoryDC","_class_wxMemoryDC",0);
         SWIG_RegisterMapping("_wxPaintDC","_class_wxPaintDC",0);
+        SWIG_RegisterMapping("_class_wxWindowDC","_wxWindowDC",0);
         SWIG_RegisterMapping("_class_wxFocusEvent","_wxFocusEvent",0);
         SWIG_RegisterMapping("_class_wxMaximizeEvent","_wxMaximizeEvent",0);
         SWIG_RegisterMapping("_class_wxAcceleratorEntry","_wxAcceleratorEntry",0);
@@ -3262,6 +4600,8 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxControl","_wxNotebook",SwigwxNotebookTowxControl);
         SWIG_RegisterMapping("_wxControl","_class_wxControl",0);
         SWIG_RegisterMapping("_class_wxListBox","_wxListBox",0);
+        SWIG_RegisterMapping("_unsigned_int","_wxPrintQuality",0);
+        SWIG_RegisterMapping("_unsigned_int","_size_t",0);
         SWIG_RegisterMapping("_unsigned_int","_uint",0);
         SWIG_RegisterMapping("_unsigned_int","_wxWindowID",0);
         SWIG_RegisterMapping("_unsigned_int","_int",0);
@@ -3277,13 +4617,18 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_wxJoystickEvent","_class_wxJoystickEvent",0);
         SWIG_RegisterMapping("_class_wxChoice","_wxChoice",0);
         SWIG_RegisterMapping("_class_wxSlider","_wxSlider",0);
+        SWIG_RegisterMapping("_class_wxImageList","_wxImageList",0);
         SWIG_RegisterMapping("_class_wxBitmapButton","_wxBitmapButton",0);
         SWIG_RegisterMapping("_class_wxNotebook","_wxNotebook",0);
+        SWIG_RegisterMapping("_wxWindowID","_wxPrintQuality",0);
+        SWIG_RegisterMapping("_wxWindowID","_size_t",0);
         SWIG_RegisterMapping("_wxWindowID","_EBool",0);
         SWIG_RegisterMapping("_wxWindowID","_uint",0);
         SWIG_RegisterMapping("_wxWindowID","_int",0);
         SWIG_RegisterMapping("_wxWindowID","_signed_int",0);
         SWIG_RegisterMapping("_wxWindowID","_unsigned_int",0);
+        SWIG_RegisterMapping("_int","_wxPrintQuality",0);
+        SWIG_RegisterMapping("_int","_size_t",0);
         SWIG_RegisterMapping("_int","_EBool",0);
         SWIG_RegisterMapping("_int","_uint",0);
         SWIG_RegisterMapping("_int","_wxWindowID",0);
@@ -3293,6 +4638,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_class_wxSpinEvent","_wxSpinEvent",0);
         SWIG_RegisterMapping("_wxButton","_class_wxButton",0);
         SWIG_RegisterMapping("_wxSize","_class_wxSize",0);
+        SWIG_RegisterMapping("_wxRegionIterator","_class_wxRegionIterator",0);
         SWIG_RegisterMapping("_class_wxPaintDC","_wxPaintDC",0);
         SWIG_RegisterMapping("_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0);
         SWIG_RegisterMapping("_class_wxInitDialogEvent","_wxInitDialogEvent",0);
@@ -3307,13 +4653,19 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_class_wxIcon","_wxIcon",0);
         SWIG_RegisterMapping("_class_wxColour","_wxColour",0);
         SWIG_RegisterMapping("_class_wxScreenDC","_wxScreenDC",0);
+        SWIG_RegisterMapping("_wxPalette","_class_wxPalette",0);
         SWIG_RegisterMapping("_class_wxIdleEvent","_wxIdleEvent",0);
         SWIG_RegisterMapping("_wxEraseEvent","_class_wxEraseEvent",0);
         SWIG_RegisterMapping("_class_wxJoystickEvent","_wxJoystickEvent",0);
+        SWIG_RegisterMapping("_wxRegion","_class_wxRegion",0);
         SWIG_RegisterMapping("_class_wxSplitterWindow","_wxSplitterWindow",0);
         SWIG_RegisterMapping("_class_wxShowEvent","_wxShowEvent",0);
         SWIG_RegisterMapping("_wxActivateEvent","_class_wxActivateEvent",0);
         SWIG_RegisterMapping("_wxGauge","_class_wxGauge",0);
+        SWIG_RegisterMapping("_class_wxCheckListBox","_wxCheckListBox",0);
+        SWIG_RegisterMapping("_class_wxGridEvent","_wxGridEvent",0);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
+        SWIG_RegisterMapping("_class_wxCommandEvent","_wxSplitterEvent",SwigwxSplitterEventTowxCommandEvent);
         SWIG_RegisterMapping("_class_wxCommandEvent","_class_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
         SWIG_RegisterMapping("_class_wxCommandEvent","_wxNotebookEvent",SwigwxNotebookEventTowxCommandEvent);
         SWIG_RegisterMapping("_class_wxCommandEvent","_wxCommandEvent",0);
@@ -3338,6 +4690,7 @@ SWIGEXPORT(void,initwindows2c)() {
         SWIG_RegisterMapping("_class_wxScrolledWindow","_wxScrolledWindow",0);
         SWIG_RegisterMapping("_wxKeyEvent","_class_wxKeyEvent",0);
         SWIG_RegisterMapping("_wxMoveEvent","_class_wxMoveEvent",0);
+        SWIG_RegisterMapping("_class_wxPalette","_wxPalette",0);
         SWIG_RegisterMapping("_class_wxEraseEvent","_wxEraseEvent",0);
         SWIG_RegisterMapping("_wxWindow","_class_wxSplitterWindow",SwigwxSplitterWindowTowxWindow);
         SWIG_RegisterMapping("_wxWindow","_wxSplitterWindow",SwigwxSplitterWindowTowxWindow);